/* فاز ۷۴ — بانک رشته‌های DAAD (پنل مدیر + صفحه‌ی کاربری + مینی‌اپ تلگرام)
   همه‌ی اندازه‌ها و رنگ‌ها از متغیرهای زیر قابل تنظیمن. */
:root {
  --dd-filter-w: 290px;        /* پهنای ستون فیلترها */
  --dd-gap: 14px;              /* فاصله‌ی کلی */
  --dd-radius: 14px;           /* گردی کارت‌ها */
  --dd-radius-sm: 9px;
  --dd-pad: 16px;              /* فاصله‌ی داخلی کارت */
  --dd-kpi-min: 140px;         /* کمترین پهنای کارت آمار */
  --dd-font-title: 16px;       /* نام رشته در نتایج */
  --dd-font-meta: 13px;
  --dd-font-chip: 12px;
  --dd-scroll-max: 220px;      /* ارتفاع بیشینه‌ی لیست‌های بلند فیلتر (شهر، حوزه) */
  --dd-sticky-top: 12px;
  --dd-mobile-bp: 900px;       /* (فقط مستند؛ در media query پایین هم همین عدد) */

  --dd-ink: var(--p-900, #13302f);
  --dd-muted: #5f7677;
  --dd-line: #e3ecea;
  --dd-soft: var(--p-50, #f4f8f7);
  --dd-surface: #ffffff;
  --dd-primary: var(--p-600, #0f7a7d);
  --dd-primary-soft: var(--p-100, #e3f3f2);
  --dd-gold: #c9a227;
  --dd-ba: #1d4ed8;  --dd-ba-bg: #e8efff;    /* Bachelor */
  --dd-ma: #7c3aed;  --dd-ma-bg: #f1eaff;    /* Master */
  --dd-ok: #15803d;  --dd-ok-bg: #e7f6ec;
  --dd-warn: #b45309; --dd-warn-bg: #fff4e0;
  --dd-bad: #b42318; --dd-bad-bg: #fdecea;
}

.dd-wrap { color: var(--dd-ink); }
.dd-head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--dd-gap); margin-bottom: var(--dd-gap); }
.dd-head h2 { margin: 0; font-size: 22px; font-weight: 800; }
.dd-head .dd-sub { color: var(--dd-muted); font-size: var(--dd-font-meta); margin-top: 4px; }
.dd-actions { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }

.dd-btn { display: inline-flex; align-items: center; gap: 6px; padding: 8px 14px; border-radius: var(--dd-radius-sm); border: 1px solid var(--dd-line);
          background: var(--dd-surface); color: var(--dd-ink); font-weight: 700; font-size: 13.5px; text-decoration: none; cursor: pointer; line-height: 1.2; }
.dd-btn:hover { border-color: var(--dd-primary); color: var(--dd-primary); }
.dd-btn.primary { background: var(--dd-primary); color: #fff; border-color: var(--dd-primary); }
.dd-btn.primary:hover { filter: brightness(1.07); color: #fff; }
.dd-btn.danger { color: var(--dd-bad); border-color: #f3c7c2; }
.dd-btn.sm { padding: 5px 10px; font-size: 12.5px; }

.dd-kpis { display: grid; grid-template-columns: repeat(auto-fit, minmax(var(--dd-kpi-min), 1fr)); gap: 10px; margin-bottom: var(--dd-gap); }
.dd-kpi { background: var(--dd-surface); border: 1px solid var(--dd-line); border-radius: var(--dd-radius); padding: 12px 14px; }
.dd-kpi .n { font-size: 22px; font-weight: 900; font-variant-numeric: tabular-nums; }
.dd-kpi .l { font-size: 12px; color: var(--dd-muted); margin-top: 2px; }
.dd-bar { height: 6px; background: var(--dd-line); border-radius: 99px; overflow: hidden; margin-top: 8px; }
.dd-bar > i { display: block; height: 100%; background: var(--dd-primary); border-radius: 99px; }

.dd-layout { display: grid; grid-template-columns: var(--dd-filter-w) minmax(0, 1fr); gap: var(--dd-gap); align-items: start; }
.dd-filters { background: var(--dd-surface); border: 1px solid var(--dd-line); border-radius: var(--dd-radius); padding: 6px var(--dd-pad) var(--dd-pad);
              position: sticky; top: var(--dd-sticky-top); max-height: calc(100vh - 2 * var(--dd-sticky-top)); overflow: auto; }
.dd-filters details { border-bottom: 1px solid var(--dd-line); padding: 10px 0; }
.dd-filters details:last-of-type { border-bottom: none; }
.dd-filters summary { cursor: pointer; font-weight: 800; font-size: 14px; list-style: none; display: flex; justify-content: space-between; align-items: center; }
.dd-filters summary::-webkit-details-marker { display: none; }
.dd-filters summary::after { content: "▾"; color: var(--dd-muted); font-size: 12px; }
.dd-filters details[open] summary::after { content: "▴"; }
.dd-filters input[type=checkbox], .dd-filters input[type=radio] { width: auto; margin: 0 0 0 6px; }
.dd-filters .dd-opts { margin-top: 8px; display: grid; gap: 4px; }
.dd-filters .dd-opts.scroll { max-height: var(--dd-scroll-max); overflow: auto; padding-inline-end: 4px; }
.dd-opt { display: flex; align-items: center; justify-content: space-between; gap: 8px; font-size: 13.5px; padding: 3px 4px; border-radius: 7px; cursor: pointer; }
.dd-opt:hover { background: var(--dd-soft); }
.dd-opt span.c { color: var(--dd-muted); font-size: 12px; font-variant-numeric: tabular-nums; }
.dd-opt input { margin: 0 0 0 6px; accent-color: var(--dd-primary); }
.dd-opt label { display: flex; align-items: center; gap: 4px; cursor: pointer; margin: 0; flex: 1; }
.dd-filters select, .dd-filters input[type=number], .dd-filters input[type=search] { width: 100%; padding: 7px 9px; border: 1px solid var(--dd-line); border-radius: 8px;
              font-size: 13.5px; background: #fff; color: var(--dd-ink); color-scheme: light; }
.dd-range { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; }
.dd-filter-top { display: flex; justify-content: space-between; align-items: center; padding: 8px 0 4px; }
.dd-filter-top b { font-size: 15px; }

.dd-search { display: flex; gap: 8px; flex-wrap: wrap; background: var(--dd-surface); border: 1px solid var(--dd-line); border-radius: var(--dd-radius); padding: 10px; margin-bottom: 10px; }
.dd-search > * { width: auto; margin: 0; }
.dd-search input[type=search] { flex: 1 1 260px; min-width: 0; padding: 10px 12px; border: 1px solid var(--dd-line); border-radius: 10px; font-size: 15px; color-scheme: light; background: #fff; color: var(--dd-ink); }
.dd-search select { flex: 0 0 auto; width: auto; padding: 8px 10px; border: 1px solid var(--dd-line); border-radius: 10px; font-size: 13.5px; background: #fff; color: var(--dd-ink); color-scheme: light; }

.dd-quick { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 10px; }
.dd-quick a { font-size: 12.5px; padding: 5px 11px; border-radius: 99px; border: 1px solid var(--dd-line); background: var(--dd-surface); color: var(--dd-ink); text-decoration: none; }
.dd-quick a:hover, .dd-quick a.on { border-color: var(--dd-primary); background: var(--dd-primary-soft); color: var(--dd-primary); }

.dd-active { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; margin-bottom: 10px; font-size: 13px; }
.dd-active a.x { display: inline-flex; align-items: center; gap: 5px; padding: 4px 10px; border-radius: 99px; background: var(--dd-primary-soft); color: var(--dd-primary);
                 text-decoration: none; font-weight: 700; font-size: var(--dd-font-chip); }
.dd-active a.x::after { content: "✕"; font-size: 10px; }
.dd-count { font-weight: 800; }

.dd-results { display: grid; gap: 10px; }
.dd-card { background: var(--dd-surface); border: 1px solid var(--dd-line); border-radius: var(--dd-radius); padding: 13px var(--dd-pad); display: grid;
           grid-template-columns: minmax(0, 1fr) auto; gap: 6px 12px; }
.dd-card:hover { border-color: #c7dcd9; box-shadow: 0 2px 10px rgba(19,48,47,.05); }
.dd-card .t { font-weight: 800; font-size: var(--dd-font-title); line-height: 1.45; direction: ltr; text-align: left; unicode-bidi: plaintext; }
.dd-card .t a { color: inherit; text-decoration: none; }
.dd-card .t a:hover { color: var(--dd-primary); }
.dd-card .u { font-size: 13.5px; color: var(--dd-muted); direction: ltr; text-align: left; unicode-bidi: plaintext; }
.dd-card .side { display: flex; flex-direction: column; align-items: flex-end; gap: 6px; }
.dd-card .meta { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 6px; }
.dd-card .links { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 8px; font-size: 13px; }
.dd-card .links a { text-decoration: none; }

.dd-chip { display: inline-flex; align-items: center; gap: 4px; font-size: var(--dd-font-chip); padding: 3px 9px; border-radius: 99px; background: var(--dd-soft);
           color: var(--dd-ink); border: 1px solid var(--dd-line); white-space: nowrap; unicode-bidi: plaintext; }
.dd-chip.ba { background: var(--dd-ba-bg); color: var(--dd-ba); border-color: transparent; font-weight: 800; }
.dd-chip.ma { background: var(--dd-ma-bg); color: var(--dd-ma); border-color: transparent; font-weight: 800; }
.dd-chip.ok { background: var(--dd-ok-bg); color: var(--dd-ok); border-color: transparent; }
.dd-chip.warn { background: var(--dd-warn-bg); color: var(--dd-warn); border-color: transparent; }
.dd-chip.bad { background: var(--dd-bad-bg); color: var(--dd-bad); border-color: transparent; }
.dd-chip.gold { background: #fbf4dc; color: #7a5d00; border-color: transparent; }

.dd-pager { display: flex; flex-wrap: wrap; gap: 6px; justify-content: center; margin: 16px 0 6px; }
.dd-pager a, .dd-pager span { min-width: 36px; text-align: center; padding: 6px 10px; border-radius: 9px; border: 1px solid var(--dd-line); background: var(--dd-surface);
                              color: var(--dd-ink); text-decoration: none; font-size: 13.5px; font-variant-numeric: tabular-nums; }
.dd-pager span.on { background: var(--dd-primary); color: #fff; border-color: var(--dd-primary); }
.dd-pager span.gap { border: none; background: none; }

.dd-empty { text-align: center; padding: 40px 16px; background: var(--dd-surface); border: 1px dashed var(--dd-line); border-radius: var(--dd-radius); color: var(--dd-muted); }

/* صفحه‌ی جزئیات */
.dd-detail { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: var(--dd-gap); align-items: start; }
.dd-box { background: var(--dd-surface); border: 1px solid var(--dd-line); border-radius: var(--dd-radius); padding: var(--dd-pad); margin-bottom: var(--dd-gap); }
.dd-box h3 { font-size: 16px; font-weight: 800; margin: 0 0 10px; }
.dd-kv { display: grid; grid-template-columns: 160px minmax(0, 1fr); gap: 7px 12px; font-size: 14px; }
.dd-kv dt { color: var(--dd-muted); font-weight: 600; }
.dd-kv dd { margin: 0; overflow-wrap: anywhere; }
.dd-kv dd.dd-ltr { text-align: right; unicode-bidi: plaintext; }
.dd-dl div.dd-ltr { text-align: right; unicode-bidi: plaintext; }
.dd-ltr { direction: ltr; text-align: left; unicode-bidi: plaintext; }
.dd-title-xl { font-size: 24px; font-weight: 900; line-height: 1.4; margin: 0; }
.dd-dl { display: grid; gap: 8px; }
.dd-dl div { background: var(--dd-soft); border-radius: 10px; padding: 8px 10px; font-size: 13.5px; }
.dd-dl b { display: block; font-size: 12.5px; color: var(--dd-muted); margin-bottom: 2px; }
.dd-copy { unicode-bidi: plaintext; width: 100%; min-height: 150px; font-size: 13px; border: 1px solid var(--dd-line); border-radius: 10px; padding: 8px; color-scheme: light; background: #fff; color: var(--dd-ink); }

/* تنظیمات */
.dd-sw-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 0; border-bottom: 1px solid var(--dd-line); }
.dd-sw-row:last-child { border-bottom: none; }
.dd-sw-row .t { font-weight: 800; } .dd-sw-row .s { font-size: 13px; color: var(--dd-muted); margin-top: 3px; }
.dd-state { display: inline-flex; align-items: center; gap: 6px; font-weight: 800; font-size: 13px; padding: 4px 10px; border-radius: 99px; }
.dd-state::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: currentColor; }
.dd-state.running { color: var(--dd-ok); background: var(--dd-ok-bg); }
.dd-state.idle { color: var(--dd-primary); background: var(--dd-primary-soft); }
.dd-state.stopped, .dd-state.paused, .dd-state.never { color: var(--dd-warn); background: var(--dd-warn-bg); }
.dd-state.error, .dd-state.dead { color: var(--dd-bad); background: var(--dd-bad-bg); }
.dd-code { direction: ltr; text-align: left; background: #0f1f1e; color: #d7f2ee; border-radius: 10px; padding: 10px 12px; font-size: 12.5px; overflow: auto; white-space: pre; }
.dd-grid2 { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: var(--dd-gap); }
.dd-field label { display: block; font-size: 13px; font-weight: 700; margin-bottom: 4px; }
.dd-field input, .dd-field select { width: 100%; padding: 8px 10px; border: 1px solid var(--dd-line); border-radius: 9px; background: #fff; color: var(--dd-ink); color-scheme: light; }
.dd-note { font-size: 12.5px; color: var(--dd-muted); }

.dd-filter-toggle { display: none; }
@media (max-width: 900px) {
  .dd-layout, .dd-detail { grid-template-columns: 1fr; }
  .dd-filters { position: static; max-height: none; display: none; }
  .dd-filters.open { display: block; }
  .dd-filter-toggle { display: inline-flex; }
  .dd-kpis { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
  .dd-kpi { padding: 8px 9px; }
  .dd-kpi .n { font-size: 17px; }
  .dd-kpi .l { font-size: 11px; }
  .dd-kv { grid-template-columns: 1fr; gap: 2px; }
  .dd-kv dd { margin-bottom: 8px; }
  .dd-card { grid-template-columns: 1fr; }
  .dd-card .side { flex-direction: row; flex-wrap: wrap; align-items: center; }
}

/* فاز ۷۵ — ارزیابی هوشمند */
:root {
  --de-ring: 64px;            /* اندازه‌ی دایره‌ی امتیاز */
  --de-bar-h: 12px;           /* ارتفاع نوار نمودارها */
  --de-good: #15803d;
  --de-possible: #b45309;
}
.de-form { display: grid; gap: var(--dd-gap); }
.de-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 12px; }
.de-field label { display: block; font-weight: 700; font-size: 13px; margin-bottom: 4px; }
.de-field input, .de-field select { width: 100%; padding: 8px 10px; border: 1px solid var(--dd-line); border-radius: 9px; background: #fff;
                                    color: var(--dd-ink); color-scheme: light; margin: 0; }
.de-hint { font-size: 12px; color: var(--dd-muted); margin-top: 3px; }
.de-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.de-chips label { display: inline-flex; align-items: center; gap: 5px; padding: 5px 11px; border: 1px solid var(--dd-line); border-radius: 99px;
                  font-size: 13px; cursor: pointer; background: #fff; user-select: none; }
.de-chips input { width: auto; margin: 0; accent-color: var(--dd-primary); }
.de-chips label:has(input:checked) { border-color: var(--dd-primary); background: var(--dd-primary-soft); color: var(--dd-primary); font-weight: 700; }
.de-check { display: inline-flex; align-items: center; gap: 6px; font-size: 13.5px; margin-inline-end: 14px; }
.de-check input { width: auto; margin: 0; accent-color: var(--dd-primary); }
.de-section-title { font-weight: 900; font-size: 15px; margin: 0 0 10px; }

.de-hero { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 16px; align-items: center; }
.de-big { font-size: 44px; font-weight: 900; line-height: 1; color: var(--dd-primary); font-variant-numeric: tabular-nums; }
.de-charts { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: var(--dd-gap); }
.de-bars { display: grid; gap: 7px; }
.de-bar-row { display: grid; grid-template-columns: 130px minmax(0, 1fr) 42px; gap: 8px; align-items: center; font-size: 13px; }
.de-bar-row .lb { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.de-bar-row .tr { height: var(--de-bar-h); background: var(--dd-soft); border-radius: 99px; overflow: hidden; }
.de-bar-row .tr i { display: block; height: 100%; background: var(--dd-primary); border-radius: 99px; }
.de-bar-row .n { text-align: left; font-variant-numeric: tabular-nums; color: var(--dd-muted); }

.de-item { background: var(--dd-surface); border: 1px solid var(--dd-line); border-radius: var(--dd-radius); padding: 14px var(--dd-pad);
           display: grid; grid-template-columns: var(--de-ring) minmax(0, 1fr); gap: 14px; }
.de-ring { width: var(--de-ring); height: var(--de-ring); border-radius: 50%; display: grid; place-items: center; font-weight: 900; font-size: 19px;
           background: conic-gradient(var(--ring-c) calc(var(--v) * 1%), var(--dd-soft) 0); position: relative; }
.de-ring::before { content: ""; position: absolute; inset: 6px; background: var(--dd-surface); border-radius: 50%; }
.de-ring span { position: relative; font-variant-numeric: tabular-nums; }
.de-ring.good { --ring-c: var(--de-good); } .de-ring.possible { --ring-c: var(--de-possible); }
.de-reasons { list-style: none; padding: 0; margin: 8px 0 0; display: grid; gap: 3px; font-size: 13px; }
.de-reasons li { unicode-bidi: plaintext; }
.de-reasons li::before { margin-inline-end: 6px; }
.de-reasons li.ok::before { content: "✅"; } .de-reasons li.warn::before { content: "⚠️"; }
.de-reasons li.bad::before { content: "❌"; } .de-reasons li.info::before { content: "🔹"; }
.de-profile { display: flex; flex-wrap: wrap; gap: 6px; }
.de-disclaimer { font-size: 12.5px; color: var(--dd-muted); background: var(--dd-soft); border-radius: 10px; padding: 10px 12px; }
@media (max-width: 900px) {
  .de-bar-row { grid-template-columns: 96px minmax(0, 1fr) 36px; }
  .de-item { grid-template-columns: 1fr; }
}

/* فاز ۷۶ — نسخه‌ی کاربری ارزیابی */
:root { --sm-blur: 6px; --sm-lock-bg: rgba(255,255,255,.72); }
.sm-hero-num { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px; }
.sm-hero-num .dd-kpi .n { font-size: 30px; color: var(--dd-primary); }
.sm-locked { position: relative; border-radius: var(--dd-radius); overflow: hidden; }
.sm-locked > .sm-blurred { filter: blur(var(--sm-blur)); pointer-events: none; user-select: none; }
.sm-locked > .sm-lock { position: absolute; inset: 0; display: grid; place-items: center; background: var(--sm-lock-bg); text-align: center; padding: 16px; }
.sm-lock .box { max-width: 460px; }
.sm-lock .box b { display: block; font-size: 17px; margin-bottom: 6px; }
.sm-fake-line { height: 11px; border-radius: 6px; background: #dbe7e5; margin: 7px 0; }
.sm-cta { background: linear-gradient(135deg, #16352f 0%, #1f4a41 100%); color: #eaf4f1; border-radius: var(--dd-radius); padding: 18px 20px;
          display: flex; flex-wrap: wrap; gap: 12px; align-items: center; justify-content: space-between; margin: 14px 0; }
.sm-cta b { font-size: 17px; } .sm-cta p { margin: 4px 0 0; color: #bcd6d0; font-size: 13.5px; }
.sm-cta .dd-btn { background: var(--p-300, #2dd4a8); color: #062b22; border-color: transparent; }
.sm-steps { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 8px; margin: 10px 0 14px; }
.sm-steps div { background: var(--dd-soft); border-radius: 12px; padding: 10px 12px; font-size: 13px; }
.sm-steps div.on { background: var(--dd-primary-soft); color: var(--dd-primary); font-weight: 800; }

/* فاز ۸۷ — رشته‌های من (نشان کردن، یادآور ددلاین، خروجی Excel) */
:root { --sl-gold: #b98900; --sl-gold-bg: #fff6d6; --sl-urgent: #b42318; --sl-urgent-bg: #fdecee; --sl-soon-bg: #fff4e0; }
.dd-save { font: inherit; font-size: 13px; font-weight: 800; border: 1px solid var(--dd-line); background: #fff; color: var(--dd-ink);
  border-radius: 999px; padding: 2px 12px; cursor: pointer; text-decoration: none; margin-inline-start: auto; }
.dd-save.on { background: var(--sl-gold-bg); border-color: var(--sl-gold); color: var(--sl-gold); }
.dd-save[disabled] { opacity: .6; cursor: wait; }
/* پله ۲ — ⭐ علاقه‌مندی + ➕ لیست اپلای (همه‌ی مقادیر قابل تنظیم) */
:root { --sl-apply: var(--p-600, #0f7a7d); --sl-apply-bg: #e3f4f2; --sl-apply-on-ink: #ffffff; --sl-actions-gap: 6px; }
.dd-sl-actions { display: inline-flex; flex-wrap: wrap; gap: var(--sl-actions-gap); margin-inline-start: auto; align-items: center; }
.dd-sl-actions .dd-save { margin-inline-start: 0; }
.dd-apply { font: inherit; font-size: 13px; font-weight: 800; border: 1px solid var(--sl-apply); background: var(--sl-apply-bg);
  color: var(--sl-apply); border-radius: 999px; padding: 2px 12px; cursor: pointer; text-decoration: none; }
.dd-apply.on { background: var(--sl-apply); color: var(--sl-apply-on-ink); }
.dd-apply[disabled] { opacity: .6; cursor: wait; }
.dd-sl-bar { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 8px 0 12px; }
.dd-sl-bar .dd-note { margin: 0; }
.sl-toast { position: fixed; bottom: 18px; inset-inline-start: 50%; transform: translateX(50%); background: var(--p-900, #10302b); color: #fff;
  padding: 10px 16px; border-radius: 12px; font-weight: 700; z-index: 2000; max-width: calc(100vw - 32px); box-shadow: 0 8px 24px rgba(0,0,0,.2); }
.sl-list { display: flex; flex-direction: column; gap: 10px; }
.sl-item { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px 14px; background: #fff; border: 1px solid var(--dd-line);
  border-radius: 14px; padding: 14px; }
.sl-item .t a { font-weight: 900; text-decoration: none; color: var(--dd-ink); overflow-wrap: anywhere; }
.sl-item .u { color: var(--dd-muted); font-size: 13.5px; overflow-wrap: anywhere; }
.sl-left { text-align: center; min-width: 92px; border-radius: 12px; padding: 6px 10px; background: var(--dd-soft); font-weight: 900; }
.sl-left small { display: block; font-weight: 700; font-size: 11.5px; color: var(--dd-muted); }
.sl-left.urgent { background: var(--sl-urgent-bg); color: var(--sl-urgent); }
.sl-left.soon { background: var(--sl-soon-bg); }
.sl-tools { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 8px; align-items: center; font-size: 13px; }
.sl-tools input[type=text] { flex: 1 1 220px; min-width: 0; border: 1px solid var(--dd-line); border-radius: 10px; padding: 5px 9px; font: inherit; }
.sl-tools label { display: inline-flex; gap: 5px; align-items: center; font-weight: 700; }
@media (max-width: 560px) { .sl-item { grid-template-columns: 1fr; } .sl-left { justify-self: start; } }

/* ===== فاز ۹۱ — سطح تطابق رشته با لیسانس (هم‌رشته / نام‌برده / بین‌رشته‌ای / هر رشته / نزدیک) ===== */
:root { --tier-s: var(--p-600, #0f7a7d); --tier-s-bg: var(--p-100, #e3f3f2); --tier-n: #15803d; --tier-n-bg: #e7f6ec; --tier-f: #6d28d9; --tier-f-bg: #f1eaff;
        --tier-a: #1d4ed8; --tier-a-bg: #e8efff; --tier-r: #b45309; --tier-r-bg: #fff4e0; }
.dd-chip.tier-s { color: var(--tier-s); background: var(--tier-s-bg); }
.dd-chip.tier-n { color: var(--tier-n); background: var(--tier-n-bg); }
.dd-chip.tier-f { color: var(--tier-f); background: var(--tier-f-bg); }
.dd-chip.tier-a { color: var(--tier-a); background: var(--tier-a-bg); }
.dd-chip.tier-r { color: var(--tier-r); background: var(--tier-r-bg); }
.sm-tiers { display: grid; grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); gap: 8px; margin-top: 10px; }
.sm-tier { border-radius: var(--dd-radius-sm); padding: 8px 10px; display: flex; gap: 8px; align-items: baseline; }
.sm-tier b { font-size: 20px; font-weight: 900; }
.sm-tier span { font-size: 12.5px; font-weight: 700; }
.sm-tier.tier-s { background: var(--tier-s-bg); color: var(--tier-s); } .sm-tier.tier-n { background: var(--tier-n-bg); color: var(--tier-n); }
.sm-tier.tier-f { background: var(--tier-f-bg); color: var(--tier-f); } .sm-tier.tier-a { background: var(--tier-a-bg); color: var(--tier-a); }
.sm-tier.tier-r { background: var(--tier-r-bg); color: var(--tier-r); }
.dd-bg-filter select { width: 100%; }
.dd-bg-filter summary { color: var(--dd-primary); }
.dd-bg-note { background: var(--dd-primary-soft); border-color: transparent; }
.dd-bg-note .dd-tier-row { display: flex; flex-wrap: wrap; gap: 6px; margin: 8px 0 4px; }

/* ===== فاز ۹۱ — پیگیری اپلای در «رشته‌های من» ===== */
.tr-kpis { margin-bottom: 12px; }
.tr-next h3 { margin: 0 0 8px; font-size: 16px; font-weight: 900; }
.tr-next ol { margin: 0; padding-inline-start: 20px; display: flex; flex-direction: column; gap: 6px; }
.tr-next li { overflow-wrap: anywhere; }
.tr-tabs { margin: 12px 0; }
.tr-tabs button { border: 1px solid var(--dd-line); background: var(--dd-surface); border-radius: 999px; padding: 5px 12px; font: inherit;
                  font-size: 13px; font-weight: 700; cursor: pointer; color: var(--dd-ink); }
.tr-tabs button.on { background: var(--dd-primary); border-color: var(--dd-primary); color: #fff; }
.tr-tabs button b { margin-inline-start: 4px; }
.tr-controls { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; font-size: 13px; }
.tr-controls label { display: inline-flex; gap: 6px; align-items: center; font-weight: 700; }
.tr-controls select { border: 1px solid var(--dd-line); border-radius: 10px; padding: 4px 8px; font: inherit; font-size: 13px; max-width: 100%; }
.tr-progress { grid-column: 1 / -1; display: flex; flex-direction: column; gap: 4px; font-size: 13px; }
.tr-progress .bar { height: 8px; border-radius: 99px; background: var(--dd-soft); overflow: hidden; }
.tr-progress .bar i { display: block; height: 100%; background: var(--dd-primary); border-radius: 99px; transition: width .3s; }
.tr-check { grid-column: 1 / -1; border: 1px dashed var(--dd-line); border-radius: var(--dd-radius-sm); padding: 6px 10px; }
.tr-check summary { cursor: pointer; font-weight: 800; font-size: 13.5px; }
.tr-cols { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 6px 18px; margin-top: 6px; }
.tr-cols ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 5px; font-size: 13.5px; }
.tr-cols li.h { font-weight: 900; color: var(--dd-muted); font-size: 12.5px; }
.tr-cols label { display: inline-flex; gap: 6px; align-items: flex-start; }
.tr-cols a { text-decoration: none; margin-inline-start: 4px; }
.sl-tools input[type=url] { flex: 1 1 200px; min-width: 0; border: 1px solid var(--dd-line); border-radius: 10px; padding: 5px 9px; font: inherit; }
.tr-item[data-status="rejected"], .tr-item[data-status="dropped"] { opacity: .65; }
.tr-item[data-status="admitted"] { border-color: var(--dd-ok); }

/* =====================================================================
   پله ۲۴ — دسترسی مرحله‌ای به بانک رشته‌ها (مهمان / پلن رایگان)
   ===================================================================== */
:root { --dd-lock-blur: 4px; --dd-teaser-min: 120px; --dd-lock-accent: var(--a-500, #f47a1f); }
.dd-ghost { filter: blur(var(--dd-lock-blur)); opacity: .55; pointer-events: none; user-select: none; }
.dd-teaser, .dd-lock { border: 2px dashed var(--dd-lock-accent); background: var(--a-50, #fff4ec); text-align: center; }
.dd-teaser h3, .dd-lock h3 { margin-top: 0; }
.dd-teaser-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(var(--dd-teaser-min), 1fr)); gap: 10px; margin: 12px 0; }
.dd-teaser-grid div { background: #fff; border-radius: 14px; padding: 10px 8px; border: 1px solid var(--dd-line); }
.dd-teaser-grid span { display: block; font-size: 20px; }
.dd-teaser-grid b { display: block; font-size: 20px; color: var(--p-700, #12606e); }
.dd-teaser-grid small { color: var(--dd-muted); font-size: 12.5px; }
.dd-lock-list { list-style: none; padding: 0; margin: 8px 0 12px; text-align: start; }
.dd-lock-list li { display: flex; justify-content: space-between; gap: 10px; padding: 7px 0; border-bottom: 1px solid var(--dd-line); font-weight: 700; }
.dd-lock-list i { font-style: normal; filter: blur(var(--dd-lock-blur)); color: var(--dd-muted); user-select: none; }
.dd-lock-note { background: var(--a-50, #fff4ec); border-color: transparent; font-weight: 700; }
