/* AUTO-SCOPED: تمام سلکتورها با .qb-site پیشوند گرفته‌اند تا با نمای خودشناسی/موتور تداخل نکنند */
/* ===== CSS اصلی سایت قبولی‌یاب (استخراج از سایت_ویرایش_24.html) ===== *//* ============ TOKENS ============ */:root{
  --black: #050806;
  --black-2: #0a0f0c;
  --panel: #0c1a14;
  --panel-2: #0f2419;
  --panel-glass: rgba(16,46,32,0.55);
  --hair: rgba(20,241,149,0.14);
  --hair-strong: rgba(20,241,149,0.32);
  --emerald-deep: #063a26;
  --emerald: #0d7a4a;
  --emerald-bright: #14f195;
  --emerald-glow: #39ffb0;
  --emerald-dim: #0a5c39;
  --gold: #e7c873;
  --text: #eafff3;
  --text-dim: #9ecdb3;
  --text-faint: #5d8571;
  --danger: #ff6b6b;
  --radius: 18px;
  --radius-sm: 12px;
  --shadow-glow: 0 0 40px rgba(20,241,149,0.10);
}*{box-sizing:border-box; margin:0; padding:0;}html{scroll-behavior:smooth;}body{
  font-family:'Vazirmatn', Tahoma, sans-serif;
  background:
    radial-gradient(ellipse 900px 500px at 82% -8%, rgba(20,241,149,0.16), transparent 60%),
    radial-gradient(ellipse 700px 500px at -10% 30%, rgba(13,122,74,0.14), transparent 55%),
    radial-gradient(ellipse 1000px 700px at 50% 120%, rgba(6,58,38,0.35), transparent 60%),
    var(--black);
  color:var(--text);
  min-height:100vh;
  overflow-x:hidden;
  position:relative;
}/* subtle animated sheen grain */body::before{
  content:'';
  position:fixed; inset:0; pointer-events:none; z-index:0;
  background-image:
    repeating-linear-gradient(115deg, rgba(255,255,255,0.015) 0px, rgba(255,255,255,0.015) 1px, transparent 1px, transparent 3px);
  opacity:.5;
}.qb-site .wrap {max-width:1180px; margin:0 auto; padding:0 24px; position:relative; z-index:1;}/* ============ NAV ============ */.qb-site nav {
  position:sticky; top:0; z-index:50;
  backdrop-filter: blur(14px) saturate(140%);
  background:linear-gradient(180deg, rgba(5,8,6,0.92), rgba(5,8,6,0.72));
  border-bottom:1px solid var(--hair);
}.qb-site .nav-inner {
  max-width:1180px; margin:0 auto; padding:16px 24px;
  display:flex; align-items:center; justify-content:space-between;
}.qb-site .brand {display:flex; align-items:center; gap:10px; font-weight:800; font-size:19px; letter-spacing:-.3px;}.qb-site .brand-mark {
  width:34px; height:34px; border-radius:10px;
  background:linear-gradient(145deg, var(--emerald-bright), var(--emerald-deep) 70%);
  box-shadow: 0 0 0 1px rgba(20,241,149,0.35), 0 4px 18px rgba(20,241,149,0.35), inset 0 1px 4px rgba(255,255,255,0.5);
  position:relative;
  display:flex; align-items:center; justify-content:center;
}.qb-site .brand-mark span {color:#031a11; font-weight:900; font-size:16px;}.qb-site .nav-tag {font-size:12.5px; color:var(--text-dim); font-weight:500;}.qb-site .nav-tabs {display:flex; gap:6px; background:rgba(255,255,255,0.055); padding:4px; border-radius:999px; border:1px solid var(--hair-strong);}.qb-site .nav-tab {
  border:none; background:transparent; color:var(--text-dim); font-family:inherit;
  font-size:13px; font-weight:700; padding:9px 18px 9px 14px; border-radius:999px; cursor:pointer;
  transition:all .25s; display:inline-flex; align-items:center; gap:8px;
  text-decoration:none; -webkit-tap-highlight-color:transparent;
}.qb-site .nav-tab:hover {color:var(--text);}.qb-site .nav-tab.active {
  color:#031a11; background:linear-gradient(135deg, var(--emerald-glow), var(--emerald));
  box-shadow:0 4px 14px rgba(20,241,149,0.35);
}.qb-site .tab-lamp {
  width:15px; height:15px; flex:none;
  transition:filter .25s, opacity .25s, transform .25s;
  opacity:.45; filter:none;
}.qb-site .tab-lamp .bulb-body {fill:var(--text-faint); transition:fill .25s;}.qb-site .nav-tab:hover .tab-lamp {opacity:.75; transform:scale(1.05);}.qb-site .nav-tab.active .tab-lamp {
  opacity:1; transform:scale(1.1);
  filter:drop-shadow(0 0 5px rgba(20,241,149,0.9)) drop-shadow(0 0 10px rgba(20,241,149,0.6));
  animation:lamp-flicker 2.6s ease-in-out infinite;
}.qb-site .nav-tab.active .tab-lamp .bulb-body {fill:#fff3c4;}@keyframes lamp-flicker{
  0%,100%{filter:drop-shadow(0 0 5px rgba(20,241,149,0.9)) drop-shadow(0 0 10px rgba(20,241,149,0.6));}
  50%{filter:drop-shadow(0 0 7px rgba(20,241,149,1)) drop-shadow(0 0 14px rgba(20,241,149,0.8));}
}@media(max-width:640px){.qb-site .nav-inner {flex-direction:column; gap:12px; padding:14px 20px;}.qb-site .nav-tabs {width:100%;}.qb-site .nav-tab {flex:1;}}/* ============ HERO ============ */.qb-site .hero {padding:64px 0 30px; position:relative;}.qb-site .eyebrow {
  display:inline-flex; align-items:center; gap:8px;
  font-size:12.5px; color:var(--emerald-glow); font-weight:700;
  letter-spacing:.3px; padding:6px 14px; border-radius:999px;
  background:rgba(20,241,149,0.08); border:1px solid var(--hair-strong);
  margin-bottom:22px;
}.qb-site .eyebrow i {width:6px; height:6px; border-radius:50%; background:var(--emerald-bright); box-shadow:0 0 10px var(--emerald-bright);}.qb-site h1 {
  font-size:clamp(34px, 5.4vw, 58px);
  font-weight:800; line-height:1.18; letter-spacing:-1px;
  max-width:820px;
}.qb-site h1 .hl {
  background:linear-gradient(95deg, var(--emerald-glow), var(--emerald-bright) 45%, #7dffce 70%, var(--emerald-glow));
  -webkit-background-clip:text; background-clip:text; color:transparent;
  background-size:200% auto;
  animation:shine 6s linear infinite;
}@keyframes shine{to{background-position:200% center;}}.qb-site .sub {margin-top:20px; font-size:16.5px; color:var(--text-dim); max-width:600px; line-height:1.9; font-weight:400;}/* ============ PROGRESS ============ */.qb-site .steps-track {display:flex; align-items:center; gap:0; margin:38px 0 6px; max-width:640px;}.qb-site .step-dot-wrap {display:flex; align-items:center; flex:1;}.qb-site .step-dot {
  width:34px; height:34px; border-radius:50%; flex-shrink:0;
  display:flex; align-items:center; justify-content:center;
  font-size:13px; font-weight:800; color:var(--text-faint);
  background:var(--panel); border:1.5px solid rgba(20,241,149,0.18);
  transition:all .4s cubic-bezier(.4,0,.2,1);
}.qb-site .step-dot.active {
  color:#031a11; background:linear-gradient(145deg, var(--emerald-glow), var(--emerald));
  border-color:transparent;
  box-shadow:0 0 0 5px rgba(20,241,149,0.10), 0 4px 16px rgba(20,241,149,0.4);
}.qb-site .step-dot.done {color:var(--emerald-bright); background:var(--emerald-dim); border-color:var(--emerald-bright);}.qb-site .step-line {flex:1; height:2px; background:rgba(20,241,149,0.14); margin:0 6px; position:relative; overflow:hidden;}.qb-site .step-line i {position:absolute; inset:0; background:linear-gradient(90deg, var(--emerald-bright), var(--emerald-glow)); width:0%; transition:width .5s ease;}.qb-site .step-line.done i {width:100%;}.qb-site .step-label {font-size:11.5px; color:var(--text-faint); margin-top:8px; font-weight:600;}/* ============ CARD / PANEL ============ */.qb-site .panel {
  background:linear-gradient(155deg, rgba(15,36,25,0.85), rgba(8,18,13,0.9));
  border:1px solid var(--hair);
  border-radius:var(--radius);
  padding:34px;
  margin:26px 0;
  box-shadow: var(--shadow-glow), inset 0 1px 0 rgba(255,255,255,0.03);
  position:relative;
  overflow:hidden;
}.qb-site .panel::after {
  content:''; position:absolute; top:-60%; left:-20%; width:60%; height:220%;
  background:linear-gradient(100deg, transparent, rgba(20,241,149,0.05), transparent);
  transform:rotate(12deg); pointer-events:none;
}.qb-site .panel-title {font-size:20px; font-weight:800; margin-bottom:6px; display:flex; align-items:center; gap:10px;}.qb-site .panel-title small {font-size:13px; color:var(--text-dim); font-weight:500;}.qb-site .panel-desc {color:var(--text-dim); font-size:14.5px; margin-bottom:26px; line-height:1.8;}/* ============ TRACK CARDS ============ */.qb-site .track-grid {display:grid; grid-template-columns:repeat(4,1fr); gap:18px;}@media(max-width:1080px){.qb-site .track-grid {grid-template-columns:repeat(2,1fr);}}@media(max-width:760px){.qb-site .track-grid {grid-template-columns:1fr;}}.qb-site .track-card {
  position:relative; text-align:right; cursor:pointer;
  padding:26px 22px; border-radius:var(--radius-sm);
  background:linear-gradient(160deg, rgba(20,241,149,0.05), rgba(255,255,255,0.01));
  border:1.5px solid rgba(20,241,149,0.14);
  transition:all .3s cubic-bezier(.4,0,.2,1);
  overflow:hidden;
}.qb-site .track-card:hover {transform:translateY(-4px); border-color:var(--hair-strong); box-shadow:0 12px 34px rgba(20,241,149,0.14);}.qb-site .track-card.selected {
  border-color:var(--emerald-bright);
  background:linear-gradient(160deg, rgba(20,241,149,0.16), rgba(20,241,149,0.02));
  box-shadow:0 0 0 1px var(--emerald-bright), 0 14px 40px rgba(20,241,149,0.25);
}.qb-site .track-icon {
  width:46px; height:46px; border-radius:12px; margin-bottom:16px;
  display:flex; align-items:center; justify-content:center; font-size:22px;
  background:linear-gradient(145deg, rgba(20,241,149,0.22), rgba(20,241,149,0.04));
  border:1px solid rgba(20,241,149,0.25);
}.qb-site .track-name {font-size:17.5px; font-weight:800; margin-bottom:4px;}.qb-site .track-desc {font-size:13px; color:var(--text-dim); line-height:1.7;}.qb-site .track-check {
  position:absolute; top:16px; left:16px; width:22px; height:22px; border-radius:50%;
  border:1.5px solid rgba(20,241,149,0.3); display:flex; align-items:center; justify-content:center;
  font-size:12px; color:transparent; transition:all .25s;
}.qb-site .track-card.selected .track-check {background:var(--emerald-bright); border-color:var(--emerald-bright); color:#031a11;}/* ============ REGION PILLS ============ */.qb-site .region-grid {display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:14px;}/* نوت «رتبه‌ی کشوری ثبت نشده» در نتایج کشوری تجربی/انسانی */.qb-site .cr-miss-note {font-size:12px;line-height:1.9;color:var(--text-dim);background:rgba(231,200,115,0.07);border:1px dashed rgba(231,200,115,0.28);border-radius:12px;padding:9px 14px;margin:0 0 16px;text-align:right}@media(max-width:640px){.qb-site .region-grid {grid-template-columns:1fr;}}.qb-site .region-pill {
  cursor:pointer; text-align:center; padding:20px 12px; border-radius:var(--radius-sm);
  border:1.5px solid rgba(20,241,149,0.14);
  background:rgba(255,255,255,0.015);
  transition:all .25s;
}.qb-site .region-pill:hover {border-color:var(--hair-strong);}.qb-site .region-pill.selected {
  border-color:var(--emerald-bright);
  background:linear-gradient(160deg, rgba(20,241,149,0.18), rgba(20,241,149,0.02));
  box-shadow:0 8px 24px rgba(20,241,149,0.2);
}.qb-site .region-num {font-size:26px; font-weight:900; color:var(--emerald-glow); margin-bottom:4px;}.qb-site .region-num.text {font-size:15px;}.qb-site .region-pill .rbadge {
  display:inline-block; margin-top:6px; font-size:10px; font-weight:700; color:var(--gold);
  background:rgba(231,200,115,0.12); border:1px solid rgba(231,200,115,0.3);
  padding:2px 8px; border-radius:999px;
}.qb-site .region-pill .rlabel {font-size:13px; color:var(--text-dim); font-weight:600;}.qb-site .region-note {
  margin-top:18px; font-size:12.5px; color:var(--text-faint);
  border-right:2px solid var(--emerald-dim); padding-right:12px; line-height:1.9;
}/* ============ RANK FORM ============ */.qb-site .field {margin-bottom:22px;}.qb-site .field label {display:block; font-size:13.5px; font-weight:700; color:var(--text-dim); margin-bottom:10px;}.qb-site .rank-input-wrap {position:relative; max-width:340px;}.qb-site input[type=number] {
  width:100%; padding:16px 54px 16px 18px; border-radius:var(--radius-sm);
  background:rgba(0,0,0,0.35); border:1.5px solid rgba(20,241,149,0.2);
  color:var(--text); font-size:20px; font-weight:800; font-family:inherit;
  outline:none; transition:all .25s;
  -moz-appearance:textfield; appearance:textfield;
}.qb-site input[type=number]:focus {border-color:var(--emerald-bright); box-shadow:0 0 0 4px rgba(20,241,149,0.1);}.qb-site input[type=number]::-webkit-inner-spin-button, .qb-site input[type=number]::-webkit-outer-spin-button {-webkit-appearance:none; margin:0;}.qb-site .rank-steppers {
  position:absolute; left:7px; top:7px; bottom:7px; width:36px;
  display:flex; flex-direction:column; gap:4px;
}.qb-site .rank-step-btn {
  flex:1; border:none; border-radius:8px; cursor:pointer; font-family:inherit;
  font-weight:900; font-size:15px; line-height:1; color:#031a11;
  background:linear-gradient(135deg, var(--emerald-glow), var(--emerald) 85%);
  box-shadow:0 2px 8px rgba(20,241,149,0.35), inset 0 1px 1px rgba(255,255,255,0.4);
  display:flex; align-items:center; justify-content:center;
  transition:all .18s ease;
}.qb-site .rank-step-btn:hover {filter:brightness(1.12); transform:translateY(-1px);}.qb-site .rank-step-btn:active {transform:scale(0.92); filter:brightness(0.95);}.qb-site .search-select {position:relative; max-width:460px;}.qb-site .search-input {
  width:100%; padding:14px 16px; border-radius:var(--radius-sm);
  background:rgba(0,0,0,0.35); border:1.5px solid rgba(20,241,149,0.2);
  color:var(--text); font-size:14.5px; font-family:inherit; outline:none;
}.qb-site .search-input:focus {border-color:var(--emerald-bright);}.qb-site .dropdown-list {
  position:fixed; z-index:500;
  max-height:280px; overflow-y:auto; border-radius:var(--radius-sm);
  background:#081712; border:1px solid var(--hair-strong);
  box-shadow:0 24px 60px rgba(0,0,0,0.65), 0 0 0 1px rgba(20,241,149,0.08);
  display:none;
}.qb-site .dropdown-list.open {display:block;}.qb-site .dropdown-item {padding:11px 16px; font-size:14px; cursor:pointer; border-bottom:1px solid rgba(255,255,255,0.03); color:var(--text-dim);}.qb-site .dropdown-item:hover, .qb-site .dropdown-item.hi {background:rgba(20,241,149,0.1); color:var(--text);}.qb-site .dropdown-item .cnt {float:left; font-size:11px; color:var(--text-faint);}.qb-site .chip {
  display:inline-flex; align-items:center; gap:8px; margin-top:12px;
  background:rgba(20,241,149,0.12); border:1px solid var(--hair-strong);
  padding:8px 14px; border-radius:999px; font-size:13px; font-weight:700; color:var(--emerald-glow);
}.qb-site .chip button {background:none; border:none; color:var(--emerald-glow); cursor:pointer; font-size:15px; line-height:1;}/* ============ BUTTONS ============ */.qb-site .btn {
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  padding:15px 30px; border-radius:999px; font-family:inherit;
  font-size:15px; font-weight:800; cursor:pointer; border:none;
  transition:all .25s cubic-bezier(.4,0,.2,1);
}.qb-site .btn-primary {
  background:linear-gradient(135deg, var(--emerald-glow), var(--emerald) 80%);
  color:#031a11;
  box-shadow:0 8px 24px rgba(20,241,149,0.35), inset 0 1px 1px rgba(255,255,255,0.5);
}.qb-site .btn-primary:hover {transform:translateY(-2px); box-shadow:0 12px 30px rgba(20,241,149,0.5), inset 0 1px 1px rgba(255,255,255,0.6);}.qb-site .btn-primary:disabled {opacity:.35; cursor:not-allowed; transform:none; box-shadow:none;}.qb-site .btn-ghost {
  background:transparent; color:var(--text-dim); border:1.5px solid rgba(20,241,149,0.2);
}.qb-site .btn-ghost:hover {border-color:var(--hair-strong); color:var(--text);}.qb-site .actions-row {display:flex; gap:12px; margin-top:30px; flex-wrap:wrap;}/* ============ RESULTS ============ */.qb-site #results-section {display:none;}.qb-site .results-head {display:flex; align-items:flex-end; justify-content:space-between; flex-wrap:wrap; gap:16px; margin-bottom:8px;}.qb-site .result-summary {
  display:flex; gap:14px; flex-wrap:wrap; margin:22px 0 34px;
}.qb-site .sum-card {
  flex:1; min-width:150px; padding:20px; border-radius:var(--radius-sm);
  background:linear-gradient(160deg, rgba(20,241,149,0.08), rgba(255,255,255,0.01));
  border:1px solid rgba(20,241,149,0.16); text-align:center;
}.qb-site .sum-num {font-size:30px; font-weight:900; color:var(--emerald-glow);}.qb-site .sum-label {font-size:12.5px; color:var(--text-dim); margin-top:4px; font-weight:600;}.qb-site .category-block {margin-bottom:38px;}.qb-site .category-head {display:flex; align-items:center; gap:12px; margin-bottom:18px;}.qb-site .category-title {font-size:17px; font-weight:800;}.qb-site .category-badge {
  font-size:11.5px; padding:4px 12px; border-radius:999px; font-weight:800;
}.qb-site .badge-safe {background:rgba(20,241,149,0.18); color:var(--emerald-glow); border:1px solid rgba(20,241,149,0.4);}.qb-site .badge-mid {background:rgba(231,200,115,0.15); color:var(--gold); border:1px solid rgba(231,200,115,0.35);}.qb-site .badge-reach {background:rgba(255,107,107,0.13); color:var(--danger); border:1px solid rgba(255,107,107,0.3);}.qb-site .card-grid {display:grid; grid-template-columns:repeat(auto-fill, minmax(300px,1fr)); gap:16px;}.qb-site .uni-card {
  position:relative; padding:20px; border-radius:14px;
  background:linear-gradient(150deg, rgba(12,28,20,0.9), rgba(6,12,9,0.9));
  border:1px solid rgba(20,241,149,0.13);
  display:flex; gap:16px; align-items:center;
  transition:all .25s;
}.qb-site .uni-card:hover {border-color:var(--hair-strong); transform:translateY(-3px); box-shadow:0 14px 30px rgba(20,241,149,0.12);}.qb-site .gauge {
  position:relative; width:64px; height:64px; flex-shrink:0; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
}.qb-site .gauge svg {position:absolute; inset:0; transform:rotate(-90deg);}.qb-site .gauge .pct {font-size:13px; font-weight:900; z-index:2;}.qb-site .gauge::after {
  content:''; position:absolute; inset:6px; border-radius:50%;
  background:radial-gradient(circle at 35% 30%, rgba(255,255,255,0.18), transparent 60%);
  pointer-events:none;
}.qb-site .uni-info {flex:1; min-width:0;}.qb-site .uni-name {font-size:14.5px; font-weight:800; line-height:1.5; margin-bottom:4px;}.qb-site .uni-major {font-size:12.5px; color:var(--text-dim); margin-bottom:8px;}.qb-site .uni-meta {display:flex; gap:8px; flex-wrap:wrap; font-size:11px;}.qb-site .meta-tag {
  padding:3px 9px; border-radius:6px; background:rgba(255,255,255,0.04); color:var(--text-faint); font-weight:600;
}
.qb-site .more-btn-wrap {text-align:center; margin-top:6px;}.qb-site .empty-state {text-align:center; padding:60px 20px; color:var(--text-faint);}.qb-site .empty-state .em-icon {font-size:44px; margin-bottom:16px;}/* ============ CAREER CHARTS ============ */.qb-site .career-charts-grid {display:grid; grid-template-columns:1fr 1fr; gap:20px;}.qb-site .career-chart-fig {
  margin:0; border-radius:var(--radius-sm); overflow:hidden;
  border:1px solid var(--hair); background:var(--panel);
}.qb-site .chart-zoom-btn {
  display:block; width:100%; padding:0; margin:0; border:none; background:transparent;
  cursor:zoom-in; position:relative; font-family:inherit;
}.qb-site .chart-zoom-btn img {display:block; width:100%; height:auto; min-height:340px; object-fit:cover; object-position:top center; transition:transform .35s ease, filter .35s ease;}.qb-site .chart-zoom-btn:hover img {transform:scale(1.035); filter:brightness(1.05);}.qb-site .chart-zoom-hint {
  position:absolute; inset:0; display:flex; align-items:center; justify-content:center;
  background:rgba(5,8,6,0.55);
  color:var(--text); font-size:14px; font-weight:800;
  opacity:0; transition:opacity .25s;
}.qb-site .chart-zoom-btn:hover .chart-zoom-hint, .qb-site .chart-zoom-btn:focus-visible .chart-zoom-hint {opacity:1;}.qb-site .career-chart-fig figcaption {
  padding:12px 16px; font-size:13px; font-weight:700; color:var(--text-dim);
  text-align:center; border-top:1px solid var(--hair);
}@media(max-width:760px){.qb-site .career-charts-grid {grid-template-columns:1fr;}.qb-site .chart-zoom-btn img {min-height:0;}}/* ============ CHART LIGHTBOX ============ */.qb-site .chart-lightbox {
  position:fixed; inset:0; z-index:200;
  display:flex; align-items:center; justify-content:center; padding:24px;
  opacity:0; visibility:hidden; transition:opacity .25s ease;
}.qb-site .chart-lightbox.open {opacity:1; visibility:visible;}.qb-site .chart-lightbox-backdrop {
  position:absolute; inset:0; background:rgba(3,6,4,0.88); backdrop-filter:blur(6px);
}.qb-site .chart-lightbox-inner {
  position:relative; z-index:1; max-width:min(1400px,96vw); max-height:92vh;
  display:flex; flex-direction:column; align-items:center; gap:12px;
  transform:scale(.96); transition:transform .25s ease;
}.qb-site .chart-lightbox.open .chart-lightbox-inner {transform:scale(1);}.qb-site .chart-lightbox-img {
  max-width:100%; max-height:80vh; width:auto; height:auto;
  border-radius:var(--radius-sm); border:1px solid var(--hair-strong);
  box-shadow:0 20px 60px rgba(0,0,0,0.5);
}.qb-site .chart-lightbox-caption {color:var(--text-dim); font-size:14px; font-weight:700; text-align:center;}.qb-site .chart-lightbox-close {
  position:absolute; top:-46px; left:0; z-index:2;
  width:38px; height:38px; border-radius:50%; border:1px solid var(--hair-strong);
  background:rgba(255,255,255,0.06); color:var(--text); font-size:16px; cursor:pointer;
  display:flex; align-items:center; justify-content:center; transition:all .2s;
}.qb-site .chart-lightbox-close:hover {background:var(--emerald); color:#031a11; border-color:transparent;}@media(max-width:640px){.qb-site .chart-lightbox-close {top:auto; bottom:calc(80vh + 10px); left:50%; transform:translateX(50%);}}/* ============ INTERACTIVE UNIVERSITY CHART (SALARY x SATISFACTION) ============ */.qb-site .uc-thumb-btn {
  display:block; width:100%; padding:0; margin:0; border:none; background:var(--panel);
  cursor:zoom-in; position:relative; font-family:inherit;
}.qb-site .uc-thumb-btn svg {display:block; width:100%; height:auto; min-height:340px;}.qb-site .uc-thumb-hint {
  position:absolute; inset:0; display:flex; align-items:center; justify-content:center;
  background:rgba(5,8,6,0.55);
  color:var(--text); font-size:14px; font-weight:800;
  opacity:0; transition:opacity .25s; text-align:center; padding:16px;
}.qb-site .uc-thumb-btn:hover .uc-thumb-hint, .qb-site .uc-thumb-btn:focus-visible .uc-thumb-hint {opacity:1;}@media(max-width:760px){.qb-site .uc-thumb-btn svg {min-height:0;}}.qb-site .uc-modal {
  position:fixed; inset:0; z-index:210;
  display:flex; align-items:center; justify-content:center; padding:14px;
  opacity:0; visibility:hidden; transition:opacity .25s ease;
}.qb-site .uc-modal.open {opacity:1; visibility:visible;}.qb-site .uc-modal-backdrop {position:absolute; inset:0; background:rgba(3,6,4,0.9); backdrop-filter:blur(6px);}.qb-site .uc-modal-inner {
  position:relative; z-index:1; width:100%; height:100%; max-width:1400px;
  background:var(--panel); border:1px solid var(--hair-strong); border-radius:var(--radius);
  display:flex; flex-direction:column; overflow:hidden;
  transform:scale(.97); transition:transform .25s ease;
  box-shadow:0 20px 60px rgba(0,0,0,0.5);
}.qb-site .uc-modal.open .uc-modal-inner {transform:scale(1);}.qb-site .uc-modal-header {
  flex:none; padding:12px 18px; background:var(--panel-2);
  display:flex; align-items:center; justify-content:space-between; gap:12px;
  border-bottom:1px solid var(--hair);
}.qb-site .uc-modal-title {font-size:13.5px; font-weight:700; color:var(--text-dim);}.qb-site .uc-close-btn {
  width:36px; height:36px; border-radius:50%; border:1px solid var(--hair-strong); flex:none;
  background:rgba(255,255,255,0.06); color:var(--text); font-size:16px; cursor:pointer;
  display:flex; align-items:center; justify-content:center; transition:all .2s;
}.qb-site .uc-close-btn:hover {background:var(--emerald); color:#031a11; border-color:transparent;}.qb-site .uc-chart-area {
  flex:1; min-height:0; position:relative; overflow:hidden; touch-action:none; background:var(--black-2);
  transform:translateX(0); transition:transform .38s cubic-bezier(.4,0,.2,1);
}.qb-site .uc-modal.uc-split .uc-chart-area {
  transform:translateX(calc(-1 * min(480px, 92vw)));
}.qb-site .uc-zoom-wrapper {width:100%; height:100%; transform-origin:0 0; will-change:transform;}.qb-site .uc-zoom-wrapper svg {width:100%; height:100%; display:block;}.qb-site .uc-zoom-controls {
  position:absolute; left:14px; bottom:14px; z-index:5;
  display:flex; flex-direction:column; gap:6px;
}.qb-site .uc-zoom-btn {
  width:38px; height:38px; border-radius:10px; border:1px solid var(--hair-strong);
  background:rgba(12,26,20,0.92); color:var(--text); font-size:1.15rem; font-weight:700;
  display:flex; align-items:center; justify-content:center; cursor:pointer;
  user-select:none; transition:all .2s;
}.qb-site .uc-zoom-btn:hover {background:var(--emerald); color:#031a11; border-color:transparent;}.qb-site .uc-chart-hint {
  position:absolute; right:14px; bottom:14px; z-index:5;
  color:var(--text-dim); font-size:11.5px; font-weight:700;
  background:rgba(12,26,20,0.85); border:1px solid var(--hair); padding:6px 10px; border-radius:999px;
  pointer-events:none;
}@media(max-width:640px){.qb-site .uc-chart-hint {display:none;}}/* SVG theming */.qb-site .uc-quadrant-label {font-size:22px; font-weight:800; fill:var(--text); font-family:'Vazirmatn',Tahoma;}.qb-site .uc-axis-label {font-size:24px; font-weight:800; fill:var(--text-dim); font-family:'Vazirmatn',Tahoma;}.qb-site .uc-conn-line {stroke:var(--emerald-glow); stroke-width:1.5; opacity:.55;}.qb-site .uc-point {cursor:pointer;}.qb-site .uc-point circle {fill:var(--emerald-bright); stroke:var(--panel); stroke-width:2; transition:all .2s ease;}.qb-site .uc-point text {fill:var(--text-dim); font-size:14px; font-family:'Vazirmatn',Tahoma; transition:all .2s ease;}.qb-site .uc-point:hover circle, .qb-site .uc-point.uc-selected circle {
  fill:var(--emerald-glow); stroke:var(--text); stroke-width:2.5;
  filter:drop-shadow(0 0 7px rgba(57,255,176,.85));
}.qb-site .uc-point:hover text, .qb-site .uc-point.uc-selected text {
  fill:var(--text); font-weight:800;
  filter:drop-shadow(0 0 5px rgba(57,255,176,.6));
}/* ============ UNIVERSITY NAME / INFO BUTTON ============ */.qb-site .career-uni-name {
  flex:1; min-width:140px; font-size:14px; font-weight:700; color:var(--text); line-height:1.7;
  background:transparent; border:none; font-family:inherit; text-align:right; cursor:pointer;
  padding:2px 0; transition:color .2s;
}.qb-site .career-uni-name:hover {color:var(--emerald-glow); text-decoration:underline; text-underline-offset:3px;}.qb-site .uni-info-btn {
  flex:none; display:inline-flex; align-items:center; gap:6px;
  padding:6px 12px 6px 10px; border-radius:999px; border:1px solid var(--hair-strong);
  background:rgba(20,241,149,0.08); color:var(--emerald-glow); font-size:11.5px; font-weight:700;
  font-family:inherit; cursor:pointer; transition:all .2s; white-space:nowrap;
}.qb-site .uni-info-btn .lamp-icon {
  width:15px; height:15px; flex:none; opacity:.7; transition:opacity .25s, filter .25s, transform .25s;
}.qb-site .uni-info-btn .lamp-icon .bulb-body {fill:var(--emerald-glow); transition:fill .25s;}.qb-site .uni-info-btn:hover {
  background:var(--emerald); color:#031a11; border-color:transparent;
  box-shadow:0 0 14px rgba(20,241,149,0.4);
}.qb-site .uni-info-btn:hover .lamp-icon {
  opacity:1; transform:scale(1.12);
  filter:drop-shadow(0 0 4px rgba(255,243,196,0.9));
}.qb-site .uni-info-btn:hover .lamp-icon .bulb-body {fill:#fff3c4;}@media(max-width:640px){.qb-site .uni-info-btn span.btn-label {display:none;}.qb-site .uni-info-btn {padding:7px;}}/* ============ UNIVERSITY DRAWER ============ */.qb-site .uni-drawer {
  position:fixed; inset:0; z-index:230;
  visibility:hidden; opacity:0; transition:opacity .3s ease, visibility .3s ease;
}.qb-site .uni-drawer.open {visibility:visible; opacity:1;}.qb-site .uni-drawer-backdrop {
  position:absolute; inset:0; background:rgba(3,6,4,0.75); backdrop-filter:blur(4px);
  transition:background .25s ease, backdrop-filter .25s ease;
}.qb-site .uni-drawer.uni-drawer--chart .uni-drawer-backdrop {
  background:transparent; backdrop-filter:none;
}.qb-site .uni-drawer-panel {
  position:absolute; top:0; right:0; bottom:0; width:min(480px, 92vw);
  background:linear-gradient(165deg, var(--panel), var(--black-2) 70%);
  border-left:1px solid var(--hair-strong);
  transform:translateX(100%); transition:transform .38s cubic-bezier(.4,0,.2,1);
  overflow-y:auto; -webkit-overflow-scrolling:touch;
  box-shadow:-24px 0 60px rgba(0,0,0,0.45);
}.qb-site .uni-drawer.open .uni-drawer-panel {transform:translateX(0);}.qb-site .uni-drawer-close {
  position:absolute; top:16px; right:16px; z-index:2;
  width:36px; height:36px; border-radius:50%; border:1px solid var(--hair-strong);
  background:rgba(255,255,255,0.06); color:var(--text); font-size:15px; cursor:pointer;
  display:flex; align-items:center; justify-content:center; transition:all .2s;
}.qb-site .uni-drawer-close:hover {background:var(--emerald); color:#031a11; border-color:transparent;}.qb-site .uni-drawer-content {padding:60px 24px 48px;}.qb-site .uni-d-empty {padding:60px 10px; text-align:center; color:var(--text-faint);}.qb-site .uni-d-empty .em-icon {font-size:38px; margin-bottom:14px; display:block;}.qb-site .uni-d-headrow {display:flex; align-items:flex-start; justify-content:space-between; gap:14px; margin-bottom:6px;}.qb-site .uni-d-title-block {flex:1; min-width:0;}.qb-site .uni-d-emblem {
  flex:none; width:88px; height:88px; border-radius:50%;
  background-color:#ece4cf !important;
  background-image:radial-gradient(circle at 35% 30%, #f8f4e8, #ece4cf 75%) !important;
  border:2px solid var(--gold);
  box-shadow:0 0 0 4px rgba(20,241,149,0.08), 0 0 22px rgba(20,241,149,0.28);
  display:flex; align-items:center; justify-content:center;
  position:relative; overflow:hidden;
  color-scheme:light only;
  forced-color-adjust:none;
  isolation:isolate;
}.qb-site .uni-d-emblem img {
  width:100%; height:100%; object-fit:contain; padding:11px; box-sizing:border-box;
  position:relative; z-index:1;
  filter:drop-shadow(0 1px 2px rgba(0,0,0,0.25));
  background-color:#ece4cf !important;
  border-radius:50%;
  color-scheme:light only;
  forced-color-adjust:none;
}.qb-site .uni-d-emblem svg {width:42px; height:42px; position:relative; z-index:1;}.qb-site .uni-d-emblem::after {
  content:''; position:absolute; top:-60%; right:-120%; width:55%; height:220%;
  background:linear-gradient(105deg, transparent, rgba(255,255,255,0.75), transparent);
  transform:rotate(-20deg);
  animation:emblem-shine 3.4s ease-in-out infinite;
  z-index:2; pointer-events:none;
}@keyframes emblem-shine{
  0%{right:-120%;}
  35%{right:145%;}
  100%{right:145%;}
}.qb-site .uni-d-name {font-size:19px; font-weight:900; color:var(--text); line-height:1.5;}.qb-site .uni-d-meta {display:flex; align-items:center; gap:8px; margin-top:8px; flex-wrap:wrap;}.qb-site .uni-d-city {font-size:12.5px; color:var(--text-dim); display:inline-flex; align-items:center; gap:4px;}.qb-site .uni-d-confidence {
  font-size:11px; font-weight:700; padding:3px 10px; border-radius:999px;
  background:rgba(20,241,149,0.10); color:var(--emerald-glow); border:1px solid var(--hair-strong);
}.qb-site .uni-d-rankbadge {
  font-size:11px; font-weight:700; padding:3px 10px; border-radius:999px;
  background:rgba(231,200,115,0.12); color:var(--gold); border:1px solid rgba(231,200,115,0.3);
}.qb-site .uni-d-intake {
  background:rgba(231,200,115,0.12); color:var(--gold); border:1px solid rgba(231,200,115,0.3);
}.qb-site .uni-d-stats-grid {
  display:grid; grid-template-columns:1fr 1fr; gap:10px; margin:22px 0;
}.qb-site .uni-d-stat-card {
  background:rgba(255,255,255,0.03); border:1px solid var(--hair);
  border-radius:var(--radius-sm); padding:14px;
}.qb-site .uni-d-stat-card .l {font-size:11.5px; color:var(--text-faint); font-weight:600; margin-bottom:6px;}.qb-site .uni-d-stat-card .v {font-size:17px; font-weight:900; color:var(--emerald-glow);}.qb-site .uni-d-stat-card .v small {font-size:11px; color:var(--text-dim); font-weight:600;}.qb-site .uni-d-stat-card .sub {font-size:11px; color:var(--text-faint); margin-top:4px;}.qb-site .uni-d-section-title {
  font-size:13.5px; font-weight:800; color:var(--text); margin:26px 0 14px;
  display:flex; align-items:center; gap:6px;
}.qb-site .uni-d-indicator {margin-bottom:14px;}.qb-site .uni-d-indicator-head {display:flex; justify-content:space-between; align-items:baseline; margin-bottom:6px; gap:8px;}.qb-site .uni-d-indicator-label {font-size:12.5px; color:var(--text-dim); font-weight:600;}.qb-site .uni-d-indicator-score {font-size:12.5px; font-weight:800; color:var(--text); flex-shrink:0;}.qb-site .uni-d-indicator-bar {height:6px; border-radius:99px; background:rgba(255,255,255,0.06); overflow:hidden;}.qb-site .uni-d-indicator-bar i {display:block; height:100%; border-radius:99px; background:linear-gradient(90deg, var(--emerald), var(--emerald-glow));}.qb-site .uni-d-indicator-rank {font-size:10.5px; color:var(--text-faint); margin-top:4px;}.qb-site .uni-d-region-box {
  background:rgba(231,200,115,0.06); border:1px solid rgba(231,200,115,0.2);
  border-radius:var(--radius-sm); padding:14px 16px; margin-top:22px;
  display:flex; align-items:center; justify-content:space-between; gap:10px;
}.qb-site .uni-d-region-box .l {font-size:12.5px; color:var(--text-dim); font-weight:700;}.qb-site .uni-d-region-box .v {font-size:15px; font-weight:900; color:var(--gold);}@media(max-width:640px){.qb-site .uni-drawer-panel {width:100%;}.qb-site .uni-d-stats-grid {grid-template-columns:1fr 1fr;}}.qb-site .disclaimer {
  margin-top:40px; padding:18px 22px; border-radius:var(--radius-sm);
  background:rgba(255,107,107,0.05); border:1px solid rgba(255,107,107,0.18);
  font-size:12.5px; color:var(--text-dim); line-height:2;
}.qb-site .promo-box {
  margin-top:18px; padding:22px; border-radius:var(--radius-sm);
  background:linear-gradient(150deg, rgba(20,241,149,0.10), rgba(20,241,149,0.02));
  border:1px solid var(--hair-strong);
  position:relative; overflow:hidden;
}.qb-site .promo-title {font-size:15.5px; font-weight:800; color:var(--emerald-glow); margin-bottom:8px;}.qb-site .promo-text {font-size:13px; color:var(--text-dim); line-height:1.9; margin-bottom:16px;}.qb-site .promo-links {display:flex; gap:10px; flex-wrap:wrap;}.qb-site .promo-link {
  display:inline-flex; align-items:center; gap:8px;
  padding:9px 16px; border-radius:999px; text-decoration:none;
  background:rgba(20,241,149,0.14); border:1px solid rgba(20,241,149,0.35);
  color:var(--emerald-glow); font-size:13px; font-weight:700; direction:ltr;
  transition:all .25s;
}.qb-site .promo-link:hover {background:rgba(20,241,149,0.24); transform:translateY(-2px); box-shadow:0 8px 20px rgba(20,241,149,0.2);}.qb-site footer {margin-top:80px; padding:34px 0 50px; text-align:center; color:var(--text-faint); font-size:12.5px; border-top:1px solid var(--hair);}.qb-site .footer-inner {display:flex; flex-direction:column; align-items:center; gap:14px;}.qb-site .footer-brand {font-size:12.5px; color:var(--text-faint);}.qb-site .footer-version {display:inline-block; margin-inline-start:10px; padding:2px 9px; border-radius:999px; font-size:10.5px; font-weight:700; color:var(--emerald-glow); background:rgba(20,241,149,0.08); border:1px solid rgba(20,241,149,0.25); cursor:help;}.qb-site .footer-team {display:flex; flex-direction:column; align-items:center; gap:8px;}.qb-site .footer-team-label {font-size:12px; font-weight:700; color:var(--text-dim);}.qb-site .footer-contacts {display:flex; align-items:center; gap:10px; flex-wrap:wrap; justify-content:center;}.qb-site .footer-contacts a {color:var(--emerald-glow); text-decoration:none; font-size:12.5px; font-weight:600; direction:ltr;}.qb-site .footer-contacts a:hover {text-decoration:underline;}.qb-site .footer-contacts .dot {color:var(--text-faint);}.qb-site .trust-badges {display:flex; gap:14px; flex-wrap:wrap; justify-content:center; margin-top:10px;}.qb-site .trust-badge {
  display:flex; align-items:center; gap:12px;
  padding:12px 18px; border-radius:14px; text-decoration:none;
  background:linear-gradient(150deg, rgba(20,241,149,0.07), rgba(255,255,255,0.01));
  border:1px dashed rgba(20,241,149,0.3);
  transition:all .25s;
  min-width:210px;
}.qb-site .trust-badge:hover {border-style:solid; border-color:var(--hair-strong); transform:translateY(-2px); box-shadow:0 10px 26px rgba(20,241,149,0.15);}.qb-site .trust-icon {
  width:38px; height:38px; border-radius:10px; flex-shrink:0;
  display:flex; align-items:center; justify-content:center; font-size:18px;
  background:rgba(20,241,149,0.1); border:1px solid rgba(20,241,149,0.2);
}.qb-site .trust-text {display:flex; flex-direction:column; align-items:flex-start; gap:2px;}.qb-site .trust-title {font-size:12.5px; font-weight:700; color:var(--text-dim);}.qb-site .trust-sub {font-size:10.5px; color:var(--text-faint);}@media(max-width:600px){.qb-site .panel {padding:22px;}.qb-site .hero {padding:44px 0 20px;}}.qb-site ::-webkit-scrollbar {width:8px;}.qb-site ::-webkit-scrollbar-track {background:transparent;}.qb-site ::-webkit-scrollbar-thumb {background:rgba(20,241,149,0.25); border-radius:10px;}/* ============ CAREER EXPLORER ============ *//* --- Sort bar --- */.qb-site .career-sort-bar {display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin:26px 0 24px}.qb-site .career-sort-bar .count {font-size:13.5px;color:var(--text-dim);font-weight:600}.qb-site .sort-pills {display:flex;gap:6px;padding:6px;border-radius:999px;background:rgba(255,255,255,0.04);border:1px solid rgba(20,241,149,0.12)}.qb-site .sort-pills button {
  border:0;background:transparent;font-family:inherit;font-size:14px;font-weight:700;
  color:var(--text-dim);padding:9px 20px;border-radius:999px;cursor:pointer;transition:.25s;
}.qb-site .sort-pills button.active {
  background:linear-gradient(135deg,var(--emerald-glow),var(--emerald));color:#031a11;
  box-shadow:0 6px 16px -6px rgba(20,241,149,0.55);
}/* --- Top major cards grid --- */.qb-site .top-major-grid {display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:22px}.qb-site .top-major-card {
  position:relative;background:linear-gradient(150deg, rgba(12,28,20,0.90), rgba(6,12,9,0.92));
  border:1px solid rgba(20,241,149,0.15);border-radius:20px;
  padding:22px 22px 20px;box-shadow:0 1px 2px rgba(0,0,0,0.2), 0 8px 24px -12px rgba(0,0,0,0.4);
  overflow:hidden;transition:transform .3s ease, box-shadow .3s ease, border-color .3s;
}.qb-site .top-major-card::before {
  content:"";position:absolute;inset-inline:0;top:0;height:4px;
  background:linear-gradient(90deg,var(--emerald),var(--emerald-glow));
  opacity:0;transition:opacity .3s;
}.qb-site .top-major-card:hover {transform:translateY(-6px);box-shadow:0 2px 4px rgba(0,0,0,0.25), 0 20px 40px -16px rgba(20,241,149,0.25);border-color:rgba(20,241,149,0.35)}.qb-site .top-major-card:hover::before {opacity:1}/* card top row: rank badge + title */.qb-site .card-top {display:flex;align-items:center;gap:14px;margin-bottom:16px}.qb-site .rank-badge {
  width:54px;height:54px;flex-shrink:0;display:grid;place-items:center;
  border-radius:16px;font-size:21px;font-weight:900;
  background:linear-gradient(145deg, var(--emerald-glow), var(--emerald));
  color:#031a11;border:1px solid transparent;
  box-shadow:0 8px 18px -8px rgba(20,241,149,0.7);
}.qb-site .top-major-card:nth-child(1) .rank-badge {background:linear-gradient(145deg,#ffe9a8,#f5b301);color:#7a5200;border-color:transparent;box-shadow:0 8px 18px -8px rgba(245,179,1,.85)}.qb-site .top-major-card:nth-child(2) .rank-badge {background:linear-gradient(145deg,#e8ecf4,#a8b0c0);color:#3a4258;border-color:transparent;box-shadow:0 8px 18px -8px rgba(148,163,184,.75)}.qb-site .top-major-card:nth-child(3) .rank-badge {background:linear-gradient(145deg,#ffd9b8,#d98a4a);color:#6b3a12;border-color:transparent;box-shadow:0 8px 18px -8px rgba(217,138,74,.75)}.qb-site .field-name {font-size:19px;font-weight:800;color:var(--text)}.qb-site .field-meta {font-size:12.5px;color:var(--text-dim);margin-top:3px;font-weight:500}/* region ranks panel */.qb-site .region-ranks {
  background:rgba(20,241,149,0.04);border:1px dashed rgba(20,241,149,0.18);border-radius:14px;
  padding:12px;margin-bottom:18px;
}.qb-site .region-ranks .cap {font-size:11.5px;font-weight:700;color:var(--text-dim);text-align:center;margin-bottom:9px}.qb-site .region-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.qb-site .region {text-align:center;border-radius:11px;padding:9px 4px 10px;transition:transform .25s;background:rgba(20,241,149,0.07)}.qb-site .region:hover {transform:scale(1.05)}.qb-site .region small {display:block;font-size:11px;font-weight:700;color:var(--text-dim);margin-bottom:5px}.qb-site .region b {font-size:19px;font-weight:900;line-height:1;color:var(--emerald-glow)}.qb-site .region .unit {display:block;font-size:10px;color:var(--text-faint);margin-top:4px;font-weight:600}/* salary panel */.qb-site .card-salary {
  display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:6px;
  padding:13px 15px;border-radius:14px;margin-bottom:16px;
  background:linear-gradient(135deg,rgba(20,241,149,0.08),rgba(6,58,38,0.35));
  border:1px solid rgba(20,241,149,0.15);
}.qb-site .card-salary .label {font-size:12px;color:var(--emerald);font-weight:700}.qb-site .card-salary .value {font-size:23px;font-weight:900;color:var(--emerald-glow)}.qb-site .card-salary .value small {font-size:12px;font-weight:700;color:var(--text-dim);margin-inline-start:4px}.qb-site .card-salary .trend {font-size:11.5px;font-weight:800;color:#16a34a}/* employment bar */.qb-site .card-employ-head {display:flex;justify-content:space-between;align-items:center;font-size:13px;font-weight:700;margin-bottom:8px}.qb-site .card-employ-head span {color:var(--text-dim)}.qb-site .card-employ-head b {color:var(--emerald-glow);font-size:16px;font-weight:900}.qb-site .card-bar {height:10px;background:rgba(255,255,255,0.06);border-radius:999px;overflow:hidden}.qb-site .card-bar i {
  display:block;height:100%;width:var(--p);
  background:linear-gradient(90deg,var(--emerald),var(--emerald-glow));
  border-radius:999px;position:relative;
  box-shadow:0 0 8px rgba(20,241,149,0.5);
}.qb-site .card-bar i::after {
  content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,0.4),transparent);
  transform:translateX(-100%);animation:shimmer 2.6s infinite;
}@keyframes shimmer{to{transform:translateX(100%)}}/* card footer */.qb-site .card-foot {display:flex;align-items:center;justify-content:space-between;margin-top:16px}.qb-site .card-tag {font-size:11.5px;font-weight:800;padding:5px 12px;border-radius:999px;background:rgba(20,241,149,0.15);color:var(--emerald-glow)}.qb-site .card-tag.hot {background:rgba(220,38,38,0.15);color:#f87171}/* --- Career list (expandable rows) --- */.qb-site .sort-chips {display:flex; gap:8px; flex-wrap:wrap;}.qb-site .sort-chip {
  border:1.5px solid rgba(20,241,149,0.18); background:transparent; color:var(--text-dim);
  font-family:inherit; font-size:12.5px; font-weight:700; padding:8px 16px; border-radius:999px;
  cursor:pointer; transition:all .2s;
}.qb-site .sort-chip:hover {border-color:var(--hair-strong); color:var(--text);}.qb-site .sort-chip.active {
  color:#031a11; background:linear-gradient(135deg, var(--emerald-glow), var(--emerald));
  border-color:transparent; box-shadow:0 4px 14px rgba(20,241,149,0.3);
}.qb-site .career-row {
  border-radius:14px; margin-bottom:12px; overflow:hidden;
  background:linear-gradient(150deg, rgba(12,28,20,0.85), rgba(6,12,9,0.85));
  border:1px solid rgba(20,241,149,0.13);
}.qb-site .career-row-head {
  display:flex; align-items:center; gap:16px; padding:18px 20px; cursor:pointer;
  transition:background .2s;
}.qb-site .career-row-head:hover {background:rgba(20,241,149,0.04);}.qb-site .career-row-name {flex:1; min-width:0; font-size:15px; font-weight:800;}.qb-site .career-row-name small {display:block; font-size:11.5px; font-weight:500; color:var(--text-faint); margin-top:3px;}.qb-site .career-metric {text-align:center; min-width:74px;}.qb-site .career-metric .v {font-size:16px; font-weight:900; color:var(--emerald-glow);}.qb-site .career-metric .l {font-size:10.5px; color:var(--text-faint); font-weight:600;}.qb-site .career-bar-wrap {width:90px; height:7px; border-radius:99px; background:rgba(255,255,255,0.06); overflow:hidden; flex-shrink:0;}.qb-site .career-bar-wrap i {display:block; height:100%; border-radius:99px; background:linear-gradient(90deg, var(--emerald), var(--emerald-glow)); box-shadow:0 0 8px rgba(20,241,149,0.5);}.qb-site .career-chevron {font-size:13px; color:var(--text-faint); transition:transform .25s; flex-shrink:0;}.qb-site .career-row.open .career-chevron {transform:rotate(180deg);}.qb-site .career-row-body {max-height:0; overflow:hidden; transition:max-height .35s ease;}.qb-site .career-uni-table {padding:0 20px 18px;}/* --- University item (inside expanded row) --- */.qb-site .career-uni-item {
  display:flex; align-items:center; gap:16px; padding:16px 18px; border-radius:14px;
  background:linear-gradient(155deg, rgba(20,241,149,0.06), rgba(6,58,38,0.30) 60%, rgba(255,255,255,0.01));
  border:1px solid rgba(20,241,149,0.12);
  margin-top:10px;
  transition:all .25s cubic-bezier(.4,0,.2,1);
  position:relative;overflow:hidden;
}.qb-site .career-uni-item::before {
  content:''; position:absolute; top:0; left:0; right:0; height:2px;
  background:linear-gradient(90deg, transparent, rgba(20,241,149,0.3), transparent);
  opacity:0; transition:opacity .3s;
}.qb-site .career-uni-item:hover {
  border-color:rgba(20,241,149,0.3);
  background:linear-gradient(155deg, rgba(20,241,149,0.10), rgba(6,58,38,0.45) 60%, rgba(255,255,255,0.02));
  transform:translateX(-4px);
  box-shadow:0 8px 24px rgba(20,241,149,0.12), -4px 0 0 var(--emerald-glow);
}.qb-site .career-uni-item:hover::before {opacity:1;}.qb-site .career-uni-name-group {display:flex;align-items:center;gap:10px;min-width:180px}.qb-site .career-uni-rank-num {
  font-size:18px;font-weight:900;line-height:1;
  color:var(--emerald-glow);
  text-shadow:0 0 12px rgba(20,241,149,0.4);
}.qb-site .career-uni-ranges {display:flex; gap:8px; flex-wrap:wrap;justify-content:center;flex:1}.qb-site .career-uni-tag {
  font-size:11.5px; padding:5px 12px; border-radius:8px; font-weight:700;
  display:inline-flex; align-items:center; gap:4px;
  transition:all .2s;
  background:rgba(20,241,149,0.10);
  color:var(--emerald-glow); border:1px solid rgba(20,241,149,0.25);
}.qb-site .career-uni-tag:hover {box-shadow:0 0 12px rgba(20,241,149,0.2);}.qb-site .career-uni-stats {display:flex; gap:16px; align-items:center;flex-shrink:0}.qb-site .career-uni-stat {text-align:center; position:relative;}.qb-site .career-uni-stat .v {font-size:15px; font-weight:900; color:var(--emerald-glow);}.qb-site .career-uni-stat.emp .v {color:var(--gold);}.qb-site .career-uni-stat .l {font-size:10px; color:var(--text-faint); font-weight:600; margin-top:2px;}.qb-site .career-uni-sal-bar {
  width:60px; height:4px; border-radius:99px; background:rgba(255,255,255,0.08); overflow:hidden; flex-shrink:0;
}.qb-site .career-uni-sal-bar i {
  display:block; height:100%; border-radius:99px;
  background:linear-gradient(90deg, var(--emerald), var(--emerald-glow));
  box-shadow:0 0 8px rgba(20,241,149,0.5);
}@media(max-width:640px){.qb-site .career-row-head {flex-wrap:wrap;}.qb-site .career-bar-wrap {display:none;}.qb-site .top-major-grid {grid-template-columns:1fr}.qb-site .career-uni-item {flex-wrap:wrap;flex-direction:column;align-items:flex-start}.qb-site .career-uni-ranges {justify-content:flex-start}}/* ============ KANUN SUPPLEMENTARY DATA (قلمچی) ============ */.qb-site .kanun-bar {
  margin-top:10px;
  border:1px solid rgba(231,200,115,0.32);
  background:linear-gradient(150deg, rgba(231,200,115,0.10), rgba(231,200,115,0.04));
  border-radius:10px;
}.qb-site .kanun-bar.is-case2 {
  border-color:rgba(231,200,115,0.55);
  background:linear-gradient(150deg, rgba(231,200,115,0.17), rgba(231,200,115,0.05));
}.qb-site .kanun-head {
  display:flex; align-items:center; gap:7px; flex-wrap:wrap;
  padding:7px 10px; cursor:pointer; user-select:none; font-size:11px;
  border-radius:10px;
}.qb-site .kanun-head:hover { background:rgba(231,200,115,0.07); }.qb-site .kanun-lamp { width:15px; height:15px; flex-shrink:0; filter:drop-shadow(0 0 5px rgba(231,200,115,0.45)); }.qb-site .kanun-title { font-weight:800; color:var(--gold); font-size:11.5px; }.qb-site .kanun-count { color:var(--text-dim); font-weight:700; }.qb-site .cred-chip { padding:2px 8px; border-radius:6px; font-weight:800; font-size:10px; border:1px solid; white-space:nowrap; }.qb-site .cred-low { background:rgba(255,107,107,0.13); color:#ff9b9b; border-color:rgba(255,107,107,0.42); }.qb-site .cred-mid { background:rgba(231,200,115,0.13); color:var(--gold); border-color:rgba(231,200,115,0.42); }.qb-site .cred-high { background:rgba(45,212,191,0.12); color:#2dd4bf; border-color:rgba(45,212,191,0.42); }.qb-site .kanun-warn { color:#ffd98a; font-weight:800; font-size:10.5px; }.qb-site .kanun-inline-note { color:var(--text-faint); font-size:10.5px; font-weight:600; }.qb-site .kanun-chev { width:14px; height:14px; color:var(--text-faint); margin-inline-start:auto; transition:transform .25s; flex-shrink:0; }.qb-site .kanun-bar.open .kanun-chev { transform:rotate(180deg); }.qb-site .kanun-body { display:none; padding:2px 10px 10px; border-top:1px dashed rgba(231,200,115,0.22); }.qb-site .kanun-bar.open .kanun-body { display:block; }.qb-site .kanun-verdict { font-size:11px; color:var(--text); line-height:1.95; padding-top:8px; }.qb-site .kanun-verdict b { color:var(--gold); }.qb-site .kanun-chips { display:flex; flex-wrap:wrap; gap:5px; margin-top:8px; }.qb-site .kanun-chip {
  padding:2px 8px; border-radius:6px; background:rgba(231,200,115,0.10);
  color:var(--text); font-weight:700; font-size:10.5px; border:1px solid rgba(231,200,115,0.22);
  direction:rtl;
}.qb-site .kanun-chip i { font-style:normal; color:var(--text-faint); font-weight:500; font-size:9.5px; margin-inline-start:4px; }.qb-site .kanun-chip.hot { background:rgba(255,107,107,0.14); border-color:rgba(255,107,107,0.45); color:#ffb3b3; }.qb-site .kanun-summary { margin-top:8px; font-size:10.5px; color:var(--text-dim); }.qb-site .kanun-summary b { color:var(--gold); }.qb-site .k-info {
  position:relative; display:inline-flex; align-items:center; justify-content:center;
  width:15px; height:15px; border-radius:50%; flex-shrink:0;
  border:1px solid rgba(231,200,115,0.55); color:var(--gold);
  font-size:9.5px; font-weight:900; font-style:italic; cursor:help; background:rgba(231,200,115,0.07);
}.qb-site .k-tip {
  position:absolute; bottom:calc(100% + 9px); right:-6px;
  width:max-content; max-width:250px; text-align:right;
  background:#20180a; border:1px solid rgba(231,200,115,0.45);
  padding:8px 11px; border-radius:9px; font-size:10.5px; line-height:1.8; font-weight:500; font-style:normal;
  color:var(--text); box-shadow:0 10px 28px rgba(0,0,0,0.55);
  opacity:0; visibility:hidden; transform:translateY(4px);
  transition:opacity .2s, transform .2s, visibility .2s; z-index:60; pointer-events:none;
}.qb-site .k-info:hover .k-tip, .qb-site .k-info:focus .k-tip, .qb-site .k-info.tip-open .k-tip { opacity:1; visibility:visible; transform:translateY(0); }.qb-site .kanun-section { margin-top:26px; }.qb-site .badge-kanun { background:rgba(231,200,115,0.15); color:var(--gold); border:1px solid rgba(231,200,115,0.4); }.qb-site .kanun-note {
  font-size:11px; color:var(--text-dim); line-height:1.9; margin:10px 2px 14px;
  padding:10px 12px; border-radius:10px;
  background:rgba(231,200,115,0.06); border:1px dashed rgba(231,200,115,0.3);
}.qb-site .kanun-card {
  padding:16px; border-radius:14px;
  background:linear-gradient(150deg, rgba(231,200,115,0.09), rgba(10,15,12,0.92));
  border:1px solid rgba(231,200,115,0.38);
  transition:all .25s;
}.qb-site .kanun-card:hover { border-color:rgba(231,200,115,0.6); transform:translateY(-3px); box-shadow:0 14px 30px rgba(231,200,115,0.10); }.qb-site .kc-top { display:flex; align-items:flex-start; gap:9px; }.qb-site .kc-names { flex:1; min-width:0; }.qb-site .kc-name { font-size:13.5px; font-weight:800; line-height:1.55; }.qb-site .kc-major { font-size:11px; color:var(--text-dim); margin-top:2px; }.qb-site .kc-warn { margin-top:10px; font-size:10.5px; font-weight:800; color:#ffd98a; line-height:1.7; }.qb-site .kc-main { margin-top:6px; font-size:12px; color:var(--text); line-height:1.9; }.qb-site .kc-main b { color:var(--gold); font-size:13px; }.qb-site .kc-count { color:var(--text-dim); font-size:10.5px; font-weight:700; }.qb-site .kanun-card .kanun-chips { margin-top:10px; }/* ============ Kanun-only tier cards (داخل بخش‌های شانس) ============ */.qb-site .kt-card {
  background:linear-gradient(150deg, rgba(231,200,115,0.10), rgba(10,15,12,0.94));
  border:1px solid rgba(231,200,115,0.40);
}.qb-site .kt-card:hover {
  border-color:rgba(231,200,115,0.62);
  box-shadow:0 14px 30px rgba(231,200,115,0.10);
}.qb-site .kt-lamp { width:64px; height:64px; flex-shrink:0; display:flex; align-items:center; justify-content:center; }.qb-site .kt-lamp .kanun-lamp { width:32px; height:32px; filter:drop-shadow(0 0 8px rgba(231,200,115,0.5)); }.qb-site .kt-warn { margin-top:7px; font-size:10.8px; font-weight:700; color:#ffd98a; line-height:1.9; }.qb-site .kt-warn b { color:var(--gold); font-size:12.5px; }.qb-site .kt-card .kanun-chips { margin-top:8px; }.qb-site .dropdown-item .cnt.kc { color:var(--gold); font-weight:700; }

/* ============ نحوه نوع گزینش (دوره‌های روزانه) رشته‌ها — st-* ============ */
.qb-site .st-view {padding:0 0 40px;}
.qb-site .st-hero {padding:56px 0 26px;}
.qb-site .st-sub {color:var(--text-dim); font-size:14.5px; line-height:2.1; max-width:820px; margin-top:14px;}
.qb-site .st-sub b {color:var(--emerald-glow); font-weight:800;}
.qb-site .st-type-pills {display:flex; flex-wrap:wrap; gap:8px; margin-top:18px;}
.qb-site .st-type-pill {display:inline-flex; align-items:center; gap:7px; padding:5px 13px; border-radius:999px; font-size:12px; font-weight:800; border:1px solid var(--hair); background:rgba(255,255,255,0.03); color:var(--text-dim);}
.qb-site .st-type-pill i {width:9px; height:9px; border-radius:50%; box-shadow:0 0 8px currentColor;}
.qb-site .st-cols {display:grid; grid-template-columns:minmax(0,1.02fr) minmax(0,0.98fr); gap:22px; align-items:start;}
.qb-site .st-main, .qb-site .st-map-col {min-width:0;}
.qb-site .st-map-col {position:sticky; top:92px;}
/* --- باکس‌های سه‌گانه --- */
.qb-site .st-box {background:var(--panel); border:1px solid var(--hair); border-radius:var(--radius); padding:20px; box-shadow:var(--shadow-glow); margin-bottom:18px; position:relative;}
.qb-site .st-box[data-err="1"] {border-color:rgba(255,107,107,0.55); box-shadow:0 0 0 3px rgba(255,107,107,0.06);}
/* خطای اعتبارسنجی — «کادر مورد نظر را پر کنید» */
.qb-site .st-err {display:flex; align-items:flex-start; gap:7px; margin:-4px 0 12px; padding:9px 12px; border:1px solid rgba(255,107,107,0.5); border-radius:var(--radius-sm); background:rgba(255,107,107,0.08); color:#ffb4b4; font-size:11.5px; font-weight:700; line-height:1.9; overflow-wrap:break-word; animation:st-shake .45s ease;}
@keyframes st-shake {0%,100%{transform:translateX(0)} 20%{transform:translateX(4px)} 40%{transform:translateX(-4px)} 60%{transform:translateX(3px)} 80%{transform:translateX(-3px)}}
.qb-site .st-major-box {scroll-margin-top:96px;}
.qb-site .st-box-head {display:flex; align-items:center; gap:10px; margin-bottom:14px; flex-wrap:wrap;}
.qb-site .st-box-head h2 {font-size:15.5px; font-weight:800; flex:1; min-width:0;}
.qb-site .st-box-num {width:27px; height:27px; border-radius:9px; flex:none; display:flex; align-items:center; justify-content:center; font-weight:900; font-size:13px; background:linear-gradient(135deg,var(--emerald-bright),var(--emerald)); color:#031a11; box-shadow:0 6px 16px rgba(20,241,149,0.25);}
.qb-site .st-box-note {color:var(--text-faint); font-size:12px; line-height:1.9; margin:-6px 0 12px;}
.qb-site .st-box-pad {padding-top:2px;}
.qb-site .st-empty-hint {display:flex; align-items:center; gap:10px; padding:22px 14px; border:1px dashed var(--hair-strong); border-radius:var(--radius-sm); color:var(--text-faint); font-size:13px; line-height:2;}
/* کارت گروه */
.qb-site .st-group-grid {display:grid; grid-template-columns:repeat(3,1fr); gap:12px;}
.qb-site .st-group-card {display:flex; flex-direction:column; gap:7px; text-align:right; padding:16px 14px; border-radius:var(--radius-sm); border:1.5px solid var(--hair); background:rgba(255,255,255,0.02); color:var(--text); cursor:pointer; transition:border-color .22s, background .22s, transform .22s, box-shadow .22s; font-family:inherit;}
.qb-site .st-group-card:hover {border-color:var(--hair-strong); background:rgba(20,241,149,0.05); transform:translateY(-2px);}
.qb-site .st-group-card.selected {border-color:var(--emerald-bright); background:linear-gradient(160deg,rgba(20,241,149,0.14),rgba(20,241,149,0.04)); box-shadow:0 10px 26px rgba(20,241,149,0.16);}
.qb-site .st-group-ic {font-size:22px;}
.qb-site .st-group-name {font-weight:800; font-size:14.5px;}
.qb-site .st-group-card.selected .st-group-name {color:var(--emerald-glow);}
.qb-site .st-group-desc {font-size:11px; color:var(--text-faint); line-height:1.8;}
/* انتخاب استان */
.qb-site .st-prov-select {position:relative; max-width:420px;}
.qb-site .st-prov-btn {display:flex; align-items:center; gap:8px; width:100%; padding:12px 16px; border-radius:var(--radius-sm); border:1.5px solid var(--hair); background:rgba(255,255,255,0.03); color:var(--text); font-family:inherit; font-size:14px; font-weight:700; cursor:pointer; transition:border-color .2s;}
.qb-site .st-prov-select.open .st-prov-btn, .qb-site .st-prov-btn:hover {border-color:var(--hair-strong);}
.qb-site .st-prov-val {flex:1; text-align:right; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.qb-site .st-prov-val.empty {color:var(--text-faint); font-weight:500;}
.qb-site .st-prov-chev {width:15px; height:15px; color:var(--text-faint); transition:transform .25s; flex:none;}
.qb-site .st-prov-select.open .st-prov-chev {transform:rotate(180deg);}
.qb-site .st-prov-clear {width:22px; height:22px; flex:none; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:11px; background:rgba(255,107,107,0.14); color:#ff9b9b; border:1px solid rgba(255,107,107,0.4); cursor:pointer;}
.qb-site .st-prov-drop {position:absolute; z-index:30; top:calc(100% + 8px); inset-inline:0; background:var(--panel-2); border:1px solid var(--hair-strong); border-radius:var(--radius-sm); box-shadow:0 24px 50px rgba(0,0,0,0.5); padding:10px; animation:st-drop .22s ease;}
@keyframes st-drop {from {opacity:0; transform:translateY(-6px);} to {opacity:1; transform:none;}}
.qb-site .st-prov-search {width:100%; padding:10px 12px; border-radius:9px; border:1px solid var(--hair); background:rgba(255,255,255,0.04); color:var(--text); font-family:inherit; font-size:13px; outline:none; margin-bottom:8px;}
.qb-site .st-prov-search:focus {border-color:var(--emerald);}
.qb-site .st-prov-list {max-height:280px; overflow-y:auto;}
.qb-site .st-prov-opt {display:flex; align-items:center; gap:9px; width:100%; padding:9px 10px; border-radius:9px; border:none; background:transparent; color:var(--text); font-family:inherit; font-size:13px; cursor:pointer; text-align:right; transition:background .15s;}
.qb-site .st-prov-opt:hover {background:rgba(20,241,149,0.08);}
.qb-site .st-prov-opt.sel {background:rgba(20,241,149,0.13);}
.qb-site .st-zone-dot {width:10px; height:10px; border-radius:3px; flex:none; box-shadow:0 0 8px currentColor;}
.qb-site .st-prov-name {font-weight:700; flex:none;}
.qb-site .st-prov-tags {font-size:10.5px; color:var(--text-faint); font-weight:600; margin-inline-start:auto; white-space:nowrap;}
.qb-site .st-prov-empty {color:var(--text-faint); font-size:12.5px; padding:10px; text-align:center;}
/* انتخاب رشته — فهرست فشرده‌ی تک‌انتخابی */
.qb-site .st-major-search {width:100%; padding:10px 13px; border-radius:var(--radius-sm); border:1.5px solid var(--hair); background:rgba(255,255,255,0.03); color:var(--text); font-family:inherit; font-size:13px; outline:none; transition:border-color .2s;}
.qb-site .st-major-search:focus {border-color:var(--emerald);}
.qb-site .st-major-list {max-height:440px; overflow-y:auto; margin-top:10px; border:1px solid var(--hair); border-radius:var(--radius-sm); background:rgba(0,0,0,0.22); min-width:0;}
.qb-site .st-major-row {display:flex; align-items:center; gap:8px; width:100%; padding:6px 10px; background:transparent; border:none; border-bottom:1px solid rgba(20,241,149,0.07); color:var(--text); font-family:inherit; font-size:12px; cursor:pointer; text-align:right; transition:background .15s; min-width:0;}
.qb-site .st-major-row:last-child {border-bottom:none;}
.qb-site .st-major-row:hover {background:rgba(20,241,149,0.06);}
.qb-site .st-major-row.on {background:rgba(20,241,149,0.12);}
.qb-site .st-radio {width:14px; height:14px; flex:none; border-radius:50%; border:1.5px solid var(--hair-strong); position:relative; transition:all .18s;}
.qb-site .st-major-row.on .st-radio {border-color:var(--emerald-bright); box-shadow:0 0 10px rgba(20,241,149,0.45);}
.qb-site .st-major-row.on .st-radio::after {content:""; position:absolute; inset:2.5px; border-radius:50%; background:var(--emerald-bright);}
.qb-site .st-major-name {flex:1; min-width:0; font-weight:600; font-size:12px; line-height:1.7; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.qb-site .st-major-note {margin-top:10px; font-size:11px; color:var(--text-faint); line-height:1.9; display:flex; gap:6px; align-items:flex-start;}
/* بج نوع */
.qb-site .st-badge {display:inline-flex; align-items:center; gap:4px; padding:1.5px 7px; border-radius:6px; font-size:9.5px; font-weight:800; border:1px solid; white-space:nowrap; flex:none; background:rgba(0,0,0,0.25);}
.qb-site .st-badge i {width:6px; height:6px; border-radius:50%; flex:none;}
.qb-site .st-badge.tp-کشوری {color:#7ff5df; border-color:rgba(45,212,191,0.5); background:rgba(45,212,191,0.10);}
.qb-site .st-badge.tp-استانی {color:#f5de9e; border-color:rgba(231,200,115,0.5); background:rgba(231,200,115,0.10);}
.qb-site .st-badge.tp-ناحیه‌ای {color:#d3f59a; border-color:rgba(163,230,53,0.5); background:rgba(163,230,53,0.10);}
.qb-site .st-badge.tp-قطبی {color:#ffc79c; border-color:rgba(251,146,60,0.5); background:rgba(251,146,60,0.10);}
.qb-site .st-badge.big {font-size:12px; padding:4px 11px; border-radius:999px;}
/* --- نقشه + قاب نتیجه --- */
.qb-site .st-map-card {background:var(--panel); border:1px solid var(--hair); border-radius:var(--radius); box-shadow:var(--shadow-glow); overflow:hidden; scroll-margin-top:96px; display:flex; flex-direction:column; max-height:calc(100vh - 116px);}.qb-site .st-map-head {display:flex; align-items:baseline; justify-content:space-between; gap:10px; flex-wrap:wrap; padding:16px 18px 10px; flex:none;}
.qb-site .st-map-title {font-size:15px; font-weight:800; color:var(--text);}
.qb-site .st-map-cap {font-size:11px; color:var(--text-faint); font-weight:700;}
.qb-site .st-map-wrap {position:relative; direction:ltr; flex:1 1 auto; min-height:150px; padding:4px 12px 10px; display:flex; overflow:hidden;}
.qb-site .st-map-wrap svg {position:absolute; inset:0; width:100%; height:100%; display:block;}
.qb-site .st-prov {stroke:#03130c; stroke-width:1; cursor:default; transition:opacity .45s ease, filter .45s ease, stroke-width .2s;}
.qb-site .st-prov.hov {stroke:#eafff3; stroke-width:1.8; filter:brightness(1.22) saturate(1.15);}
.qb-site .st-prov.off {opacity:0.22;}
.qb-site .st-prov.home {stroke:var(--emerald-bright); stroke-width:2.4; filter:saturate(1.25) brightness(1.12);}
/* کادر قطب */
.qb-site .st-pole rect {transition:stroke-width .3s;}
.qb-site .st-pole.mine rect {filter:drop-shadow(0 0 9px rgba(234,255,243,0.65)); animation:st-dash 2.6s linear infinite;}
@keyframes st-dash {to {stroke-dashoffset:-30;}}
.qb-site .st-pole-tag-bg {fill:rgba(3,19,11,0.88); stroke:rgba(234,255,243,0.4); stroke-width:1;}
.qb-site .st-pole.mine .st-pole-tag-bg {stroke:var(--emerald-bright); fill:rgba(6,58,38,0.94);}
.qb-site .st-pole-tag {fill:#eafff3; font-size:11px; font-weight:800; font-family:'Vazirmatn', Tahoma, sans-serif;}
.qb-site .st-pole.mine .st-pole-tag {fill:var(--emerald-glow);}
/* بج ناحیه */
.qb-site .st-zbadge {pointer-events:none;}
.qb-site .st-zbadge-bg {fill:#03130c; fill-opacity:0.82; stroke:rgba(234,255,243,0.55); stroke-width:1.2; transition:all .3s;}
.qb-site .st-zbadge-num {fill:#eafff3; font-size:12px; font-weight:900; font-family:'Vazirmatn', Tahoma, sans-serif;}
.qb-site .st-zbadge.mine .st-zbadge-bg {fill:var(--emerald-bright); stroke:var(--emerald-bright);}
.qb-site .st-zbadge.mine .st-zbadge-num {fill:#031a11;}
/* نشان خانه */
.qb-site .st-home {pointer-events:none;}
.qb-site .st-home-pulse {fill:rgba(20,241,149,0.35); animation:st-home-pulse 2.2s ease-out infinite;}
@keyframes st-home-pulse {0% {r:9; opacity:0.85;} 70% {r:20; opacity:0;} 100% {r:20; opacity:0;}}
.qb-site .st-home-diamond {fill:#0b5c39; stroke:var(--emerald-bright); stroke-width:2;}
.qb-site .st-home-label {fill:var(--emerald-glow); font-size:11.5px; font-weight:900; font-family:'Vazirmatn', Tahoma, sans-serif; paint-order:stroke; stroke:#03130c; stroke-width:3px;}
/* تولتیپ */
.qb-site .st-tip {position:absolute; z-index:25; transform:translate(-50%,-130%); background:rgba(3,19,11,0.96); border:1px solid var(--hair-strong); border-radius:10px; padding:7px 12px; pointer-events:none; display:flex; flex-direction:column; gap:2px; direction:rtl; box-shadow:0 12px 30px rgba(0,0,0,0.5); white-space:nowrap;}
.qb-site .st-tip b {font-size:12.5px; color:var(--emerald-glow); font-weight:800;}
.qb-site .st-tip span {font-size:10.5px; color:var(--text-dim); font-weight:600;}
@media (hover:none) { .qb-site .st-tip {display:none;} }
/* نتیجه زیر نقشه — نحوه قبولی رشته‌ی انتخابی؛ بدون اسکرول داخلی:
   ارتفاع طبیعی + متن فشرده؛ نقشه (فِلکس) هرجا لازم شد کوچک می‌شود تا نتیجه کامل دیده شود */
.qb-site .st-result-pane {flex:none; margin:0 12px 8px; border-top:1px dashed var(--hair); padding-top:10px; min-width:0; overflow-wrap:break-word;}
.qb-site .st-result-pane.empty .st-result-empty {display:flex; align-items:center; gap:9px; padding:10px 12px; border:1px dashed var(--hair-strong); border-radius:var(--radius-sm); color:var(--text-faint); font-size:12px; line-height:2; background:rgba(255,255,255,0.015);}
.qb-site .st-detail {border:1px solid var(--hair-strong); border-radius:var(--radius-sm); padding:13px 15px; animation:st-pop .3s ease; background:rgba(0,0,0,0.2); min-width:0;}
@keyframes st-pop {from {opacity:0; transform:scale(.97);} to {opacity:1; transform:none;}}
.qb-site .st-detail.tp-b-کشوری {border-color:rgba(45,212,191,0.55); box-shadow:0 12px 34px rgba(45,212,191,0.10);}
.qb-site .st-detail.tp-b-استانی {border-color:rgba(231,200,115,0.55); box-shadow:0 12px 34px rgba(231,200,115,0.10);}
.qb-site .st-detail.tp-b-ناحیه‌ای {border-color:rgba(163,230,53,0.55); box-shadow:0 12px 34px rgba(163,230,53,0.10);}
.qb-site .st-detail.tp-b-قطبی {border-color:rgba(251,146,60,0.55); box-shadow:0 12px 34px rgba(251,146,60,0.10);}
.qb-site .st-detail-head {display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-bottom:8px;}
.qb-site .st-detail-name {font-size:15px; font-weight:900; flex:1; min-width:0; color:var(--text);}
.qb-site .st-detail-text {font-size:12px; color:var(--text-dim); line-height:2; border-top:1px dashed var(--hair); padding-top:9px; margin:0;}
.qb-site .st-detail-you {display:flex; flex-wrap:wrap; gap:6px; margin-top:9px; font-size:11.5px; color:var(--text-dim); line-height:2; background:rgba(20,241,149,0.06); border:1px dashed var(--hair-strong); border-radius:9px; padding:8px 11px;}
.qb-site .st-detail-you b {color:var(--emerald-glow);}
.qb-site .st-you-title {color:var(--emerald-glow); font-weight:800; flex:none;}
.qb-site .st-you-hint {color:var(--text-faint); background:rgba(231,200,115,0.06); border-color:rgba(231,200,115,0.35);}
/* دکمه‌ی برگشت و انتخاب رشته‌ی دیگر */
.qb-site .st-back-btn {display:flex; align-items:center; justify-content:center; gap:8px; width:100%; margin-top:10px; padding:10px 14px; border-radius:999px; border:1.5px solid rgba(20,241,149,0.45); background:linear-gradient(120deg,rgba(20,241,149,0.14),rgba(20,241,149,0.05)); color:var(--emerald-glow); font-family:inherit; font-size:12.5px; font-weight:800; cursor:pointer; transition:all .2s;}
.qb-site .st-back-btn svg {width:15px; height:15px; flex:none; transition:transform .25s;}
.qb-site .st-back-btn:hover {background:linear-gradient(120deg,var(--emerald-bright),var(--emerald)); color:#031a11; border-color:transparent; box-shadow:0 10px 24px rgba(20,241,149,0.3); transform:translateY(-1px);}
.qb-site .st-back-btn:hover svg {transform:translateY(-2px);}
.qb-site .st-map-foot {font-size:10.5px; color:var(--text-faint); line-height:1.8; padding:0 16px 14px; flex:none; overflow-wrap:break-word;}
/* متن‌های ضد-سرریز: هیچ خطی از بغل قاب بیرون نزند (فونت فالبک عریض‌تر، مرورگرهای فارسی) */
.qb-site h1, .qb-site .st-sub, .qb-site .st-box-note, .qb-site .st-major-note, .qb-site .st-detail-text, .qb-site .st-detail-you, .qb-site .st-result-empty {overflow-wrap:break-word;}
@media(max-width:640px){ .qb-site h1 {font-size:clamp(24px, 7vw, 34px); letter-spacing:-0.4px;} }
/* اسکرول‌بار سفارشی لیست‌ها */
.qb-site .st-scroll::-webkit-scrollbar {width:7px;}
.qb-site .st-scroll::-webkit-scrollbar-track {background:rgba(0,0,0,0.25); border-radius:8px;}
.qb-site .st-scroll::-webkit-scrollbar-thumb {background:rgba(20,241,149,0.35); border-radius:8px;}
.qb-site .st-scroll::-webkit-scrollbar-thumb:hover {background:rgba(20,241,149,0.55);}
/* حالت بارگذاری */
.qb-site .st-loading {display:flex; align-items:center; gap:12px; justify-content:center; color:var(--text-dim); font-size:14px; font-weight:700;}
.qb-site .st-spin {width:22px; height:22px; border-radius:50%; border:2.5px solid var(--hair); border-top-color:var(--emerald-bright); animation:st-spin 0.9s linear infinite;}
@keyframes st-spin {to {transform:rotate(360deg);}}
.qb-site .st-load-err {color:var(--danger); font-weight:700; font-size:14px;}
@media (prefers-reduced-motion: reduce) {
  .qb-site .st-pole.mine rect, .qb-site .st-home-pulse, .qb-site .st-prov {animation:none !important; transition:none !important;}
}
/* موبایل — ستون‌تک + قاب یک‌صفحه‌ایِ نقشه و نتیجه */
@media (max-width:1023px) {
  .qb-site .st-cols {grid-template-columns:minmax(0,1fr);}
  .qb-site .st-map-col {position:static;}
  .qb-site .st-map-card {max-height:none; scroll-margin-top:140px;}
  .qb-site .st-major-box {scroll-margin-top:140px;}
}
/* ناوبار موبایل حالا باکس دو ردیفه است (~۱۵۸px) — حاشیه‌ی اسکرول بیشتر لازم است */
@media (max-width:640px) {
  .qb-site .st-map-card {scroll-margin-top:186px;}
  .qb-site .st-major-box {scroll-margin-top:186px;}
}
@media (max-width:640px) {
  .qb-site .st-hero {padding:40px 0 18px;}
  .qb-site .st-box {padding:14px;}
  .qb-site .st-group-grid {grid-template-columns:1fr; gap:9px;}
  .qb-site .st-group-card {padding:11px 12px; gap:4px;}
  .qb-site .st-group-ic {font-size:18px;}
  .qb-site .st-group-name {font-size:13.5px;}
  .qb-site .st-group-desc {font-size:10.5px;}
  .qb-site .st-box-head {margin-bottom:10px;}
  .qb-site .st-box-head h2 {font-size:13.5px;}
  /* فهرست رشته‌ها: فشرده و بلندتر — رشته‌های بیشتر بدون اسکرول زیاد */
  .qb-site .st-major-list {max-height:min(54vh, 430px);}
  .qb-site .st-major-row {padding:5.5px 9px; gap:7px;}
  .qb-site .st-major-name {font-size:11.5px; line-height:1.6;}
  .qb-site .st-major-search {padding:9px 11px; font-size:12.5px;}
  .qb-site .st-major-note {font-size:10.5px; margin-top:8px;}
  /* قاب یک‌صفحه‌ای: نقشه + نحوه قبولی رشته‌ی انتخابی؛ ارتفاع طبیعی
     (max-height فقط محافظ است) — پنل نتیجه بدون اسکرول داخلی، نقشه فِلکسی کوچک می‌شود
     (ناوبار دو ردیفه ~۱۵۸px + حاشیه‌ها → 195px) */
  .qb-site .st-map-card {height:auto; max-height:calc(100svh - 195px);}
  .qb-site .st-map-head {padding:10px 14px 6px; gap:6px;}
  .qb-site .st-map-title {font-size:13.5px;}
  .qb-site .st-map-cap {font-size:10px;}
  .qb-site .st-map-wrap {flex:1 1 auto; min-height:110px; padding:2px 6px 4px;}
  .qb-site .st-result-pane {margin:0 9px 6px; padding-top:8px;}
  .qb-site .st-result-pane.empty .st-result-empty {font-size:10.5px; line-height:1.85; padding:7px 9px; gap:7px;}
  .qb-site .st-detail {padding:9px 10px;}
  .qb-site .st-detail-name {font-size:13px;}
  .qb-site .st-detail-text {font-size:10.5px; line-height:1.8; padding-top:6px;}
  .qb-site .st-detail-you {font-size:10px; line-height:1.75; padding:6px 8px; gap:5px;}
  .qb-site .st-detail-head {gap:8px; margin-bottom:6px;}
  .qb-site .st-badge {font-size:9px;}
  .qb-site .st-badge.big {font-size:10.5px; padding:3px 8px;}
  .qb-site .st-back-btn {padding:8px 10px; font-size:11.5px; margin-top:7px;}
  .qb-site .st-err {font-size:10.5px; padding:8px 10px; margin:-2px 0 10px;}
  .qb-site .st-map-foot {display:none;}
  .qb-site .st-prov-tags {display:none;}
}

/* ============ مودال تیره «نحوه گزینش» — پیش از نمایش نتیجه‌ی تخمین رتبه ============ */
/* ثابت و تمام‌صفحه؛ خارج از .wrap رندر می‌شود تا روی ناوبار چسبان هم بنشیند */
.qb-site .est-gate {position:fixed; inset:0; z-index:90; display:flex; align-items:center; justify-content:center; padding:20px;}
.qb-site .est-gate-backdrop {position:absolute; inset:0; background:rgba(2,5,4,0.82); backdrop-filter:blur(6px) saturate(120%);}
.qb-site .est-gate-box {
  position:relative; width:min(440px, 100%); max-height:calc(100svh - 48px); overflow-y:auto;
  background:linear-gradient(165deg, #10251b, #0a120d 75%);
  border:1px solid var(--hair-strong); border-radius:18px; padding:26px 22px 20px;
  box-shadow:0 30px 80px rgba(0,0,0,0.6), 0 0 40px rgba(20,241,149,0.10);
  animation:estGateIn .32s cubic-bezier(.34,1.4,.5,1);
}
@keyframes estGateIn {from{opacity:0; transform:translateY(18px) scale(.96);} to{opacity:1; transform:none;}}
.qb-site .est-gate-x {
  position:absolute; top:10px; inset-inline-start:10px; width:32px; height:32px; border-radius:9px;
  border:1px solid var(--hair); background:rgba(255,255,255,0.04); color:var(--text-dim);
  font-family:inherit; font-size:14px; cursor:pointer; transition:all .2s;
}
.qb-site .est-gate-x:hover {color:var(--text); border-color:var(--hair-strong); background:rgba(255,255,255,0.08);}
.qb-site .est-gate-ic {
  width:52px; height:52px; margin:0 auto 12px; border-radius:14px;
  display:flex; align-items:center; justify-content:center; font-size:24px;
  background:linear-gradient(145deg, rgba(20,241,149,0.18), rgba(20,241,149,0.04));
  border:1px solid rgba(20,241,149,0.3);
}
.qb-site .est-gate-title {text-align:center; font-size:17px; font-weight:800; margin-bottom:12px;}
.qb-site .est-gate-txt {font-size:13px; color:var(--text-dim); line-height:2; text-align:center;}
.qb-site .est-gate-txt b {color:var(--emerald-glow); font-weight:800;}
.qb-site .est-gate-reco {
  margin-top:12px; font-size:12.5px; line-height:2; color:var(--text-dim);
  background:rgba(231,200,115,0.07); border:1px dashed rgba(231,200,115,0.35);
  border-radius:12px; padding:10px 14px;
}
.qb-site .est-gate-reco b {color:var(--gold); font-weight:800;}
.qb-site .est-gate-acts {display:flex; flex-direction:column; gap:9px; margin-top:16px;}
.qb-site .est-gate-acts .btn {width:100%;}
/* دکمه‌ی «رد کردن و دیدن نتیجه» — طلایی کم‌رنگ متمایز از دکمه‌ی سبز اصلی */
.qb-site .est-gate-skip {
  background:linear-gradient(135deg, rgba(231,200,115,0.18), rgba(231,200,115,0.07));
  border:1.5px solid rgba(231,200,115,0.55); color:var(--gold);
}
.qb-site .est-gate-skip:hover {
  background:rgba(231,200,115,0.24); border-color:rgba(231,200,115,0.85);
  color:#f5dfa5; box-shadow:0 6px 20px rgba(231,200,115,0.16); transform:translateY(-1px);
}
/* ============ نوار «ترتیب‌بندی نتایج» تخمین رتبه ============ */
.qb-site #est-sort-bar {margin:-8px 0 26px;}
.qb-site .est-sort-label {font-size:11.5px; font-weight:800; color:var(--text-faint); margin-bottom:8px;}
.qb-site .est-sort-chips {display:flex; gap:8px; flex-wrap:wrap;}
.qb-site .est-sort-chip {
  border:1.5px solid rgba(20,241,149,0.18); background:transparent; color:var(--text-dim);
  font-family:inherit; font-size:12px; font-weight:700; padding:8px 14px; border-radius:999px;
  cursor:pointer; transition:all .2s; white-space:nowrap;
}
.qb-site .est-sort-chip:hover {border-color:var(--hair-strong); color:var(--text);}
.qb-site .est-sort-chip.active {
  color:#031a11; background:linear-gradient(135deg, var(--emerald-glow), var(--emerald));
  border-color:transparent; box-shadow:0 4px 14px rgba(20,241,149,0.3);
}
.qb-site .est-sort-hint {font-size:11px; color:var(--text-faint); margin-top:8px; line-height:1.9;}
@media (max-width:480px) {
  .qb-site .est-sort-chip {flex:1 1 calc(50% - 4px); text-align:center; font-size:11.5px; padding:8px 10px;}
}
@media (max-width:480px) {
  .qb-site .est-gate {padding:14px;}
  .qb-site .est-gate-box {padding:20px 16px 16px;}
  .qb-site .est-gate-title {font-size:15.5px;}
  .qb-site .est-gate-txt {font-size:12px; text-align:right;}
  .qb-site .est-gate-reco {font-size:11.5px;}
}

/* ============ پنل سهمیه‌ی جذب بومی/غیربومی — نحوه‌ی گزینش ============ */
.qb-site .st-quota {
  margin-top:22px; border:1.5px solid rgba(20,241,149,0.16); border-radius:var(--radius-md, 14px);
  background:rgba(255,255,255,0.015); padding:20px 22px 18px;
}
.qb-site .st-quota-head {display:flex; gap:14px; align-items:flex-start; margin-bottom:16px;}
.qb-site .st-quota-badge {
  flex:none; width:44px; height:44px; border-radius:12px; display:grid; place-items:center;
  background:linear-gradient(135deg, rgba(20,241,149,0.14), rgba(20,241,149,0.04));
  border:1px solid rgba(20,241,149,0.25); color:var(--emerald-glow);
}
.qb-site .st-quota-badge svg {width:24px; height:24px;}
.qb-site .st-quota-head h2 {font-size:16px; font-weight:800; margin:0 0 6px; color:var(--text);}
.qb-site .st-quota-head p {font-size:12.5px; line-height:2; color:var(--text-dim); margin:0;}
.qb-site .st-quota-grid {display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-bottom:16px;}
.qb-site .st-quota-card {
  position:relative; border-radius:12px; padding:16px 16px 14px; overflow:hidden;
  border:1px solid var(--hair-strong); background:rgba(255,255,255,0.02);
}
.qb-site .st-quota-card.native {border-color:rgba(45,212,191,0.3); background:linear-gradient(160deg, rgba(45,212,191,0.07), transparent 65%);}
.qb-site .st-quota-card.hot {border-color:rgba(231,200,115,0.3); background:linear-gradient(160deg, rgba(231,200,115,0.07), transparent 65%);}
.qb-site .sq-num {font-size:24px; font-weight:900; letter-spacing:1px; direction:rtl;}
.qb-site .native .sq-num {color:#2dd4bf;}
.qb-site .hot .sq-num {color:var(--gold);}
.qb-site .sq-title {font-size:13px; font-weight:800; margin:3px 0 7px; color:var(--text);}
.qb-site .sq-desc {font-size:11.5px; line-height:2; color:var(--text-dim);}
.qb-site .st-quota-t-title {font-size:13.5px; font-weight:800; color:var(--text); margin-bottom:9px;}
.qb-site .st-quota-table-wrap {border:1px solid var(--hair-strong); border-radius:12px; padding:14px 16px 12px; background:rgba(255,255,255,0.015);}
.qb-site .st-quota-table {width:100%; border-collapse:collapse; font-size:12.5px;}
.qb-site .st-quota-table th[scope] {text-align:right; padding:8px 0; font-size:11px; color:var(--text-faint); font-weight:600; border-bottom:1px solid var(--hair); width:150px;}
.qb-site .st-quota-table thead tr th {color:var(--text-faint); font-size:11.5px; font-weight:700; text-align:right; padding:6px 8px; border-bottom:1px solid var(--hair-strong);}
.qb-site .st-quota-table tbody th {display:flex; align-items:center; gap:8px; text-align:right; font-weight:800; color:var(--text); font-size:12.5px; padding:11px 8px; border-bottom:1px dashed var(--hair); white-space:nowrap;}
.qb-site .st-quota-table tbody th svg {width:17px; height:17px; color:var(--emerald-glow); flex:none;}
.qb-site .st-quota-table tbody td {padding:11px 8px; color:var(--text-dim); line-height:2; border-bottom:1px dashed var(--hair); font-size:12px;}
.qb-site .st-quota-table tbody tr:last-child th, .qb-site .st-quota-table tbody tr:last-child td {border-bottom:none;}
.qb-site .st-quota-note {display:flex; gap:8px; align-items:flex-start; font-size:11px; line-height:2; color:var(--text-faint); margin:10px 0 0;}
.qb-site .st-quota-note svg {flex:none; width:15px; height:15px; margin-top:5px; color:var(--gold);}

/* ---- اولویت قبولی (۶۰/۴۰) — باکس زیر نقشه برای رشته‌های پرمتقاضی (خواسته‌ی کاربر) ---- */
.qb-site .st-prio{
  margin-top:9px; border-radius:11px; padding:11px 13px 10px; overflow-wrap:break-word;
  border:1px solid rgba(231,200,115,0.5);
  background:linear-gradient(160deg, rgba(231,200,115,0.14), rgba(231,200,115,0.03) 60%);
}
.qb-site .st-prio-head{display:flex; align-items:center; gap:9px; margin-bottom:7px;}
.qb-site .st-prio-badge{
  flex:none; width:30px; height:30px; border-radius:9px; display:grid; place-items:center;
  border:1px solid rgba(231,200,115,0.55); background:rgba(231,200,115,0.12); color:var(--gold);
}
.qb-site .st-prio-badge svg{width:17px; height:17px;}
.qb-site .st-prio-title{font-size:12.5px; font-weight:800; color:var(--gold); line-height:1.7;}
.qb-site .st-prio-text{font-size:11px; line-height:2.1; color:var(--text-dim); margin:0;}
.qb-site .st-prio-text b{color:var(--gold);}
.qb-site .st-prio-you{
  display:flex; gap:8px; align-items:flex-start; margin-top:8px; font-size:10.5px; line-height:2;
  color:var(--text-dim); background:rgba(0,0,0,0.22); border:1px dashed rgba(231,200,115,0.4);
  border-radius:9px; padding:7px 10px;
}
.qb-site .st-prio-you svg{flex:none; width:14px; height:14px; margin-top:6px; color:var(--gold);}
.qb-site .st-prio-you b{color:var(--gold);}

/* ---- کارت ۶۰/۴۰ پنل سهمیه: حالت برجسته (رشته‌ی انتخابی پرمتقاضی است) ---- */
.qb-site .st-quota-card.hot.lit{
  border-color:rgba(231,200,115,0.85);
  background:linear-gradient(160deg, rgba(231,200,115,0.16), rgba(231,200,115,0.04) 70%);
  box-shadow:0 0 18px rgba(231,200,115,0.16);
}
.qb-site .st-quota-lit{
  display:inline-flex; align-items:center; gap:6px; margin-top:10px;
  font-size:10.5px; font-weight:800; color:var(--gold);
  border:1px solid rgba(231,200,115,0.55); border-radius:999px; padding:4px 10px;
  background:rgba(231,200,115,0.1);
}
.qb-site .st-quota-lit svg{width:13px; height:13px;}
@media (prefers-reduced-motion: no-preference) {
  .qb-site .st-quota-card.hot.lit{animation:st-prio-pulse 2.2s ease-in-out infinite;}
  @keyframes st-prio-pulse{
    0%, 100%{box-shadow:0 0 10px rgba(231,200,115,0.12); border-color:rgba(231,200,115,0.6);}
    50%{box-shadow:0 0 22px rgba(231,200,115,0.28); border-color:rgba(231,200,115,0.95);}
  }
}
@media (max-width:640px) {
  .qb-site .st-prio{padding:9px 10px 8px;}
  .qb-site .st-prio-title{font-size:11.5px;}
  .qb-site .st-prio-text{font-size:10px; line-height:2;}
  .qb-site .st-prio-you{font-size:9.5px; line-height:1.9; padding:6px 8px;}
  .qb-site .st-prio-badge{width:26px; height:26px;}
}

@media (max-width:768px) {
  .qb-site .st-quota {padding:15px 14px 13px; margin-top:16px;}
  .qb-site .st-quota-head {gap:10px;}
  .qb-site .st-quota-head h2 {font-size:14.5px;}
  .qb-site .st-quota-grid {grid-template-columns:1fr; gap:9px;}
  .qb-site .sq-num {font-size:21px;}
  .qb-site .st-quota-table tbody th {white-space:normal;}
}


/* ══════════════════════════════════════════════════════════════════
   FOOTER v2 — فوتر اصلی بازنویسی‌شده (inc/views/footer.php)
   پیشوند qb-f-* — بدون تداخل با کلاس‌های قدیمی فوتر
   ══════════════════════════════════════════════════════════════════ */

/* ریشه — بازنویسی قواعد قدیمی .qb-site footer (سِلِکتور دقیق‌تر برنده‌ی cascade) */
.qb-site footer.qb-footer {
  margin-top: 64px;
  padding: 44px 0 34px;
  text-align: right;                 /* بازگرداندن راست‌چین RTL (قدیمی: center) */
  color: var(--text-dim);
  font-size: 13px;
  border-top: 1px solid var(--hair);
  background:
    radial-gradient(1200px 300px at 85% -40px, rgba(20,241,149,0.05), transparent 70%),
    linear-gradient(180deg, rgba(5,8,6,0.55), rgba(5,8,6,0.9));
}
.qb-site .qb-f-inner {
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 24px;
  display: flex;
  flex-direction: column;
  gap: 30px;
}

/* ─── ۱) شبکه‌ی چهار ستون — همه کنارِ هم در دسکتاپ ─── */
.qb-site .qb-f-grid {
  display: grid;
  grid-template-columns: 0.85fr 1fr 1fr 1.4fr;   /* برند | منابع | ارتباط در تلگرام | تیم توسعه‌دهنده */
  gap: 28px 34px;
  align-items: start;
}

/* عنوان ستون‌ها */
.qb-site .qb-f-col h3 {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 14px;
  font-size: 14.5px;
  font-weight: 800;
  color: var(--text);
}
.qb-site .qb-f-h-ic {
  width: 19px; height: 19px; flex-shrink: 0;
  color: var(--emerald-bright);
  filter: drop-shadow(0 0 6px rgba(20,241,149,0.35));
}
.qb-site .qb-f-h-ic.gold { color: var(--gold); filter: drop-shadow(0 0 6px rgba(231,200,115,0.4)); }

/* ─── ستون برند ─── */
.qb-site .qb-f-brand { display: flex; flex-direction: column; gap: 12px; align-items: flex-start; }
.qb-site .qb-f-brand-row { display: flex; align-items: center; gap: 12px; }
.qb-site .qb-f-brand-mark {
  width: 44px; height: 44px; flex-shrink: 0;
  display: grid; place-items: center;
  border-radius: 13px;
  font-size: 21px; font-weight: 900; color: #031a11;
  background: linear-gradient(145deg, var(--emerald-bright), var(--emerald));
  box-shadow: 0 8px 20px -8px rgba(20,241,149,0.65);
}
.qb-site .qb-f-brand-name { font-size: 19px; font-weight: 900; color: var(--text); line-height: 1.3; }
.qb-site .qb-f-brand-name small {
  display: block; font-size: 10.5px; font-weight: 600; letter-spacing: .4px;
  color: var(--text-faint); direction: ltr; text-align: right;
}

/* ─── ستون منابع ─── */
.qb-site .qb-f-list { margin: 0; padding: 0; display: flex; flex-direction: column; gap: 9px; }
.qb-site .qb-f-list li {
  display: flex; align-items: center; gap: 9px;
  font-size: 12.5px; color: var(--text-dim); line-height: 1.8;
}
.qb-site .qb-f-li-ic {
  width: 15px; height: 15px; flex-shrink: 0;
  color: var(--emerald); opacity: .9;
}

/* ─── ستون تیم توسعه‌دهنده ─── */
.qb-site .qb-f-team-co {
  font-size: 12px; font-weight: 800; color: var(--gold);
  padding: 5px 12px; border-radius: 999px; display: inline-block;
  background: rgba(231,200,115,0.07); border: 1px solid rgba(231,200,115,0.22);
  margin-bottom: 12px;
}
.qb-site .qb-f-devs { margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.qb-site .qb-f-devs li { display: flex; }
.qb-site .qb-f-devs a, .qb-site .qb-f-devs .qb-f-dev-name {
  display: flex; align-items: center; gap: 9px; flex-wrap: wrap;
  font-size: 12.5px; font-weight: 700; color: var(--text-dim);
  text-decoration: none; padding: 4px 0;
}
.qb-site .qb-f-devs a { color: var(--text-dim); transition: color .2s; }
.qb-site .qb-f-devs a:hover, .qb-site .qb-f-devs a:focus-visible { color: var(--emerald-glow); }

/* آیدی تلگرام + آیکون تلگرام (لوگوی رسمی — گرادیان #qb-tg-grad در footer.php)
   فقط کنار اسم اعضای تیم — pill کوچکِ آبی با متن ltr */
.qb-site .qb-f-dev-tg {
  display: inline-flex; align-items: center; gap: 6px;
  direction: ltr; unicode-bidi: embed;
  padding: 3px 10px; border-radius: 999px;
  font-size: 11.5px; font-weight: 800; letter-spacing: .2px;
  color: #8fc9ec;
  background: rgba(42,171,238,0.08);
  border: 1px solid rgba(42,171,238,0.28);
  transition: background .2s, border-color .2s, transform .2s, box-shadow .2s;
}
.qb-site .qb-f-dev-tg svg {
  width: 16px; height: 16px; flex-shrink: 0; display: block; border-radius: 50%;
  filter: drop-shadow(0 2px 5px rgba(34,158,217,0.4));
  transition: transform .24s cubic-bezier(.34,1.56,.64,1);
}
.qb-site .qb-f-dev-tg-id { line-height: 1; }
.qb-site .qb-f-devs a:hover .qb-f-dev-tg,
.qb-site .qb-f-devs a:focus-visible .qb-f-dev-tg {
  background: rgba(42,171,238,0.16); border-color: rgba(42,171,238,0.55);
  transform: translateY(-1px);
  box-shadow: 0 6px 14px -8px rgba(34,158,217,0.55);
}
.qb-site .qb-f-devs a:hover .qb-f-dev-tg svg,
.qb-site .qb-f-devs a:focus-visible .qb-f-dev-tg svg { transform: scale(1.14); }

/* ─── ستون ارتباط در تلگرام ─── */
.qb-site .qb-f-contact-desc {
  margin: 0 0 14px; font-size: 12.5px; line-height: 2.1; color: var(--text-faint);
  max-width: 300px;
}
/* نشان‌های اعتماد — وسطِ پایینِ ستون‌ها (خارج از گرید، گروهِ وسط‌چین) */
.qb-site .qb-f-badges {
  display: flex; justify-content: center; gap: 12px;
  margin: 8px 0 0;   /* فاصله‌ی بیشتر از ستون‌ها — جداکننده‌ی بصری (جمعاً ~۳۸px با gap فوتر) */
}
.qb-site .qb-f-badges .trust-badge {
  flex: 1 1 0; min-width: 0; max-width: 210px; margin: 0;
  flex-direction: column; align-items: center; text-align: center;
  gap: 8px; padding: 13px 10px 11px;
}
.qb-site .qb-f-badges .trust-icon { width: 36px; height: 36px; font-size: 17px; }
.qb-site .qb-f-badges .trust-text { align-items: center; gap: 3px; }
.qb-site .qb-f-badges .trust-title { font-size: 11px; line-height: 1.6; text-align: center; }
.qb-site .qb-f-badges .trust-sub { font-size: 9.5px; text-align: center; }

/* دکمه طلایی «عضویت در کانال تلگرام» — فقط در بنر مشاوره (صفحه‌ی خانه) */
.qb-site .qb-f-tg-btn {
  display: inline-flex; align-items: center; gap: 10px;
  padding: 11px 18px; border-radius: 13px;
  font-size: 13px; font-weight: 800; text-decoration: none;
  color: #031a11;
  background: linear-gradient(135deg, var(--emerald-bright), var(--emerald));
  box-shadow: 0 10px 24px -10px rgba(20,241,149,0.7);
  border: 1px solid transparent;
  transition: transform .22s, box-shadow .22s, filter .22s;
}
.qb-site .qb-f-tg-btn:hover, .qb-site .qb-f-tg-btn:focus-visible {
  transform: translateY(-2px);
  box-shadow: 0 14px 30px -10px rgba(20,241,149,0.8);
  filter: brightness(1.06);
  outline: none;
}
.qb-site .qb-f-tg-btn.gold {
  color: #241a02;
  background: linear-gradient(135deg, #f5dfa5, #c9a44d);
  box-shadow: 0 10px 24px -10px rgba(231,200,115,0.65);
}
.qb-site .qb-f-tg-btn.gold:hover, .qb-site .qb-f-tg-btn.gold:focus-visible {
  box-shadow: 0 14px 30px -10px rgba(231,200,115,0.75);
}
.qb-site .qb-f-tg-ic { width: 17px; height: 17px; flex-shrink: 0; }
.qb-site .qb-f-tg-btn-id {
  direction: ltr; unicode-bidi: embed;
  font-size: 11.5px; font-weight: 800; opacity: .85;
  background: rgba(0,0,0,0.14); padding: 1px 8px; border-radius: 999px;
}

/* ─── ۲) بنر مشاوره تخصصی — فقط در صفحه‌ی خانه (زیر سؤال‌های پرتکرار) ─── */
.qb-site .qb-f-consult {
  display: flex; align-items: center; gap: 26px;
  padding: 22px 26px;
  border-radius: 20px;
  border: 1px solid rgba(231,200,115,0.2);
  background:
    radial-gradient(600px 200px at 12% 0%, rgba(231,200,115,0.06), transparent 65%),
    linear-gradient(160deg, rgba(12,28,20,0.92), rgba(6,12,9,0.94));
  box-shadow: 0 1px 2px rgba(0,0,0,0.2), 0 14px 34px -18px rgba(0,0,0,0.5);
}
.qb-site .qb-f-consult-media {
  flex-shrink: 0;
  display: flex; flex-direction: column; align-items: center; gap: 10px;
}
.qb-site .qb-f-consult-media img {
  width: 220px; height: 220px;      /* مربع ۱:۱ — نسخه‌ی کامل ۶۴۰×۶۴۰ سرو می‌شود */
  object-fit: cover;
  border-radius: 16px;
  border: 1px solid rgba(231,200,115,0.28);
  box-shadow: 0 10px 26px -12px rgba(0,0,0,0.55);
}
/* آیدی کانال تلگرام جواد گلشن‌آبادی — زیر تصویر */
.qb-site .qb-f-consult-handle {
  display: inline-flex; align-items: center; gap: 6px;
  direction: ltr; unicode-bidi: embed;
  font-size: 12px; font-weight: 800; letter-spacing: .2px;
  color: var(--gold);
  background: rgba(231,200,115,0.08); border: 1px solid rgba(231,200,115,0.3);
  padding: 4px 12px; border-radius: 999px;
  text-decoration: none;
  transition: background .2s, border-color .2s, transform .2s;
}
.qb-site .qb-f-consult-handle:hover, .qb-site .qb-f-consult-handle:focus-visible {
  background: rgba(231,200,115,0.16); border-color: rgba(231,200,115,0.55);
  transform: translateY(-1px); outline: none;
}
.qb-site .qb-f-consult-handle .qb-f-tg-ic { width: 13px; height: 13px; }

.qb-site .qb-f-consult-body { flex: 1; min-width: 0; }
.qb-site .qb-f-consult-body h3 {
  display: flex; align-items: center; gap: 9px;
  margin: 0 0 10px; font-size: 16.5px; font-weight: 900; color: var(--text);
}
.qb-site .qb-f-consult-desc { margin: 0 0 14px; font-size: 13px; line-height: 2.15; color: var(--text-dim); max-width: 620px; }
.qb-site .qb-f-consult-desc b { color: var(--gold); font-weight: 800; }
.qb-site .qb-f-consult-services {
  display: flex; flex-wrap: wrap; gap: 9px;
  margin: 0 0 16px; padding: 0;
}
.qb-site .qb-f-consult-services li {
  display: inline-flex; align-items: center; gap: 7px;
  font-size: 12px; font-weight: 700; color: var(--text-dim);
  padding: 6px 13px; border-radius: 999px;
  background: rgba(255,255,255,0.03); border: 1px solid var(--hair);
}
.qb-site .qb-f-consult-services .qb-f-li-ic { color: var(--gold); opacity: .95; }

/* ─── ۳) یادداشت شفاف ─── */
.qb-site .qb-f-disclaimer {
  margin: 0; max-width: 900px;
  font-size: 11.5px; line-height: 2.2; color: var(--text-faint);
  padding: 14px 18px; border-radius: var(--radius-sm);
  background: rgba(255,255,255,0.015); border: 1px solid rgba(255,255,255,0.05);
}
.qb-site .qb-f-disclaimer .gh-ic { color: #f2b25c; }

/* ─── ۴) نوار پایانی ─── */
.qb-site .qb-f-bottom {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: center;
  gap: 8px 10px;
  padding-top: 20px;
  border-top: 1px solid var(--hair);
  font-size: 11.5px; color: var(--text-faint); text-align: center;
}
.qb-site .qb-f-bottom-sep { color: var(--emerald); opacity: .6; }

/* ─── واکنش‌گرایی ─── */
@media (max-width: 1020px) {
  /* ۴ ستون → ۲×۲: ردیف اول برند/منابع، ردیف دوم ارتباط/تیم */
  .qb-site .qb-f-grid { grid-template-columns: 1fr 1fr; gap: 26px 24px; }
}
@media (max-width: 860px) {
  .qb-site .qb-f-consult { flex-direction: row; gap: 18px; padding: 18px; }
  .qb-site .qb-f-consult-media img { width: 152px; height: 152px; }
  .qb-site .qb-f-consult-handle { font-size: 10.5px; padding: 3px 9px; }
}
@media (max-width: 640px) {
  .qb-site footer.qb-footer { padding: 34px 0 26px; margin-top: 48px; }
  .qb-site .qb-f-inner { padding: 0 18px; gap: 24px; }
  .qb-site .qb-f-grid { grid-template-columns: 1fr; gap: 22px; }
  .qb-site .qb-f-contact-desc { max-width: none; }
  /* بنر مشاوره: ستونی — تصویر بالا (وسط‌چین)، متن و دکمه زیرش */
  .qb-site .qb-f-consult { flex-direction: column; text-align: center; padding: 20px 16px; }
  .qb-site .qb-f-consult-media { margin: 0 auto; }
  .qb-site .qb-f-consult-media img { width: 200px; height: 200px; }
  .qb-site .qb-f-consult-body h3 { justify-content: center; }
  .qb-site .qb-f-consult-services { justify-content: center; }
  .qb-site .qb-f-tg-btn { width: 100%; justify-content: center; }
  .qb-site .qb-f-badges { gap: 10px; }
}
@media (max-width: 400px) {
  .qb-site .qb-f-consult-media img { width: 172px; height: 172px; }
  .qb-site .qb-f-bottom { font-size: 10.5px; }
}
