/* ============================================================================
   musavir.css — Müşavir Portal (FAZ 1+2 + UI Revizyon 1/2, 2026-09-08)
   ============================================================================
   Bu ekranın (çok-mükellefli müşavir portalı) işletme panelinde (kabuk.js +
   erp-v3.css .shell/.nav) DOĞRUDAN karşılığı yok — CLAUDE.md §2 "Yeni Tasarım
   Üretme Kuralı" gereği YENİ, ÖZGÜN bir düzen. Yeni bir renk/tipografi sistemi
   İCAT EDİLMEDİ: tüm değerler styles.css'in :root token'larından
   (--bg/--surface/--text-*/--brand/--border/--r-*/--s-*/--fs-*/--fw-*/--sh-*/
   .num) gelir.

   UI REVİZYON 2 (2026-09-08) — profesyonel "application shell" (persistent
   sidebar + kompakt header + geniş çalışma alanı) ve belge detayının SAĞDAN
   AÇILAN DRAWER'a dönüştürülmesi. Zirve ekranlarından YALNIZ çalışma
   ergonomisi (yoğunluk, az tıklama, belirgin buton) adapte edildi — renk/
   logo/ikon/isimlendirme HİÇBİR YERDE kopyalanmadı.
   ========================================================================== */

body { background: var(--bg); }

/* ============================================================================
   FAZ 7B — /musavir İKİ ROLLÜ (landing/panel) görünürlük anahtarı.
   HTML'e <head> içinde SENKRON yazılan data-musavir-mod özniteliğine göre
   YALNIZ BİRİ görünür — bkz. musavir.html dosya başı yorumu. ============= */
html:not([data-musavir-mod="panel"]) #panelKabi { display: none; }
html[data-musavir-mod="panel"] #landingKabi { display: none; }

/* ---- LANDING — herkese açık tanıtım sayfası (FAZ 7B) ----------------------- */
.musavir-landing { max-width: 1120px; margin: 0 auto; padding: 0 var(--s-24); }
.musavir-landing__header {
  display: flex; align-items: center; justify-content: space-between;
  padding: var(--s-24) 0; gap: var(--s-16); flex-wrap: wrap;
}
.musavir-landing__brand img { height: 28px; display: block; }
.musavir-landing__nav { display: flex; gap: var(--s-8); }
.musavir-landing__hero {
  text-align: center; padding: var(--s-24) 0 var(--s-16); max-width: 760px; margin: 0 auto;
}
.musavir-landing__hero h1 {
  font-size: var(--fs-30); line-height: 1.2; font-weight: var(--fw-strong);
  letter-spacing: -.01em; margin: 0 0 var(--s-16);
}
@media (min-width: 641px) { .musavir-landing__hero h1 { font-size: 40px; } }
.musavir-landing__sub { font-size: var(--fs-16); color: var(--text-2); margin: 0 0 var(--s-24); }
.musavir-landing__cta { display: flex; justify-content: center; gap: var(--s-12); flex-wrap: wrap; margin-bottom: var(--s-24); }
.musavir-landing__cta .musavir-btn { padding: var(--s-10) var(--s-20); font-size: var(--fs-15); }
.musavir-landing__features {
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--s-16);
  padding: var(--s-24) 0;
}
@media (max-width: 900px) { .musavir-landing__features { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .musavir-landing__features { grid-template-columns: 1fr; } }
.musavir-landing__feature {
  background: var(--surface); border: 1px solid var(--border); border-radius: var(--r-lg);
  padding: var(--s-16); box-shadow: var(--sh-1);
}
.musavir-landing__feature h3 { margin: 0 0 var(--s-4); font-size: var(--fs-15); font-weight: var(--fw-strong); }
.musavir-landing__feature p { margin: 0; color: var(--text-2); font-size: var(--fs-13); line-height: 1.5; }
.musavir-landing__footer { text-align: center; padding: var(--s-24) 0 var(--s-48); }

/* ============================================================================
   APPLICATION SHELL
   ============================================================================ */
.musavir-shell { display: flex; min-height: 100vh; }

.musavir-sidebar {
  flex: 0 0 232px; width: 232px; display: flex; flex-direction: column;
  background: var(--surface); border-right: 1px solid var(--border);
  position: sticky; top: 0; height: 100vh; z-index: 20;
}
.musavir-sidebar__brand { display: flex; align-items: center; height: 52px; padding: 0 var(--s-16); border-bottom: 1px solid var(--border); }
.musavir-sidebar__brand img { display: block; height: var(--h-md); width: auto; }
.musavir-sidebar__context {
  padding: var(--s-12) var(--s-16) var(--s-4);
  font-size: var(--fs-12); font-weight: var(--fw-strong); color: var(--text-3);
  text-transform: uppercase; letter-spacing: .04em;
}
.musavir-sidebar__nav { display: flex; flex-direction: column; gap: 1px; padding: var(--s-4) var(--s-8); }
.musavir-sidebar__link {
  display: flex; align-items: center; gap: var(--s-10);
  height: 34px; padding: 0 var(--s-10); border-radius: var(--r-md);
  color: var(--text-2); text-decoration: none; font-size: var(--fs-14); font-weight: var(--fw-medium);
  transition: background-color .12s ease, color .12s ease, box-shadow .12s ease, transform .12s ease;
}
.musavir-sidebar__link svg { width: 16px; height: 16px; flex: none; }
.musavir-sidebar__link:hover { background: var(--surface); color: var(--text-1); box-shadow: var(--sh-3); transform: translateX(1px); }
.musavir-sidebar__link:focus-visible { outline: none; box-shadow: inset 0 0 0 2px var(--brand-ring); }
.musavir-sidebar__link.is-active { background: var(--brand-tint); color: var(--brand-hover); font-weight: var(--fw-strong); }
.musavir-sidebar__section-label {
  padding: var(--s-16) var(--s-10) var(--s-4);
  font-size: var(--fs-12); font-weight: var(--fw-strong); color: var(--text-3);
  text-transform: uppercase; letter-spacing: .06em;
}
.musavir-sidebar__nav:first-of-type + .musavir-sidebar__section-label,
.musavir-sidebar__context + .musavir-sidebar__section-label { padding-top: var(--s-8); }
.musavir-sidebar__link.is-soon { cursor: default; color: var(--text-3); }
.musavir-sidebar__link.is-soon:hover { background: none; color: var(--text-3); }
.musavir-sidebar__link.is-soon svg { opacity: .55; }
.musavir-sidebar__soon {
  margin-left: auto; font-size: 9px; font-weight: var(--fw-strong);
  background: var(--surface-3); color: var(--text-3);
  padding: 1px 6px; border-radius: var(--r-full); letter-spacing: .03em; white-space: nowrap;
}
.musavir-sidebar__spacer { flex: 1; }
.musavir-sidebar__backdrop { display: none; }

.musavir-sidebar__user {
  display: flex; align-items: center; gap: var(--s-10);
  margin: var(--s-8); padding: var(--s-8); border: 1px solid var(--border);
  border-radius: var(--r-md); background: var(--surface-2);
}
.musavir-sidebar__user-avatar {
  width: 32px; height: 32px; border-radius: var(--r-full); flex: none;
  display: flex; align-items: center; justify-content: center;
  background: var(--brand-tint); color: var(--brand-hover);
  font-weight: var(--fw-strong); font-size: var(--fs-12);
}
.musavir-sidebar__user-name {
  font-size: var(--fs-14); font-weight: var(--fw-medium); color: var(--text-1);
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 138px;
}
.musavir-sidebar__user-role { font-size: var(--fs-12); color: var(--text-3); }

.musavir-shell__main { flex: 1; min-width: 0; display: flex; flex-direction: column; }

.musavir-shell__header {
  position: sticky; top: 0; z-index: 10;
  display: flex; align-items: center; justify-content: space-between; gap: var(--s-12);
  height: 52px; padding: 0 var(--s-24);
  background: var(--surface); border-bottom: 1px solid var(--border);
}
.musavir-shell__crumb { display: flex; align-items: center; gap: var(--s-6); font-size: var(--fs-14); min-width: 0; }
.musavir-shell__crumb a { color: var(--text-2); text-decoration: none; }
.musavir-shell__crumb a:hover { color: var(--brand); }
.musavir-shell__crumb span[aria-hidden] { color: var(--text-3); }
.musavir-shell__crumb strong { color: var(--text-1); font-weight: var(--fw-medium); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.musavir-shell__headerright { display: flex; align-items: center; gap: var(--s-12); }
.musavir-hdr__user { font-size: var(--fs-13); color: var(--text-2); }
.musavir-hdr__kbd-hint { display: flex; align-items: center; gap: 3px; color: var(--text-3); font-size: var(--fs-11); }
.musavir-hdr__kbd-hint kbd, .musavir-drawer__head kbd, .musavir-filtreler__kbd, .musavir-hdr__search kbd {
  display: inline-block; padding: 1px var(--s-6); border-radius: var(--r-sm);
  border: 1px solid var(--border-2); background: var(--surface-3); color: var(--text-3);
  font-size: 10px; font-family: var(--font); line-height: 1.4;
}
.musavir-hdr__search {
  display: flex; align-items: center; gap: var(--s-8);
  height: 32px; padding: 0 var(--s-10); min-width: 200px;
  border: 1px solid var(--border-2); border-radius: var(--r-md);
  background: var(--surface-3); color: var(--text-3); font-size: var(--fs-14); font-family: var(--font);
  cursor: pointer; transition: border-color .12s ease, color .12s ease;
}
.musavir-hdr__search:hover, .musavir-hdr__search:focus-visible { border-color: var(--brand-border); color: var(--text-2); outline: none; }
.musavir-hdr__search svg { width: 15px; height: 15px; flex: none; }
.musavir-hdr__search kbd { margin-left: auto; }
.musavir-sidebar-toggle { display: none; }

.musavir-shell__content { flex: 1; min-width: 0; padding: var(--s-20) var(--s-24) var(--s-48); }
/* Geniş masaüstü kullanımı — 1920px'te içerik küçük bir kutuda ortada
   kalmasın diye çalışma alanı GENİŞ bir üst sınırla fluid akar. */
.musavir-shell__content-inner { max-width: 1600px; }

/* ============================================================================
   MÜŞAVİR ANA PANELİ (/musavir)
   ============================================================================ */
.musavir-page-head { margin-bottom: var(--s-16); }
.musavir-page-head h1 { margin: 0; font-size: var(--fs-26); font-weight: var(--fw-strong); letter-spacing: -.01em; }
.musavir-page-head p { margin: 2px 0 0; color: var(--text-2); font-size: var(--fs-14); }

.musavir-kpi-row { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--s-12); margin-bottom: var(--s-24); }
.musavir-kpi-tile {
  background: var(--surface); border: 1px solid var(--border); border-radius: var(--r-lg);
  padding: var(--s-16); box-shadow: var(--sh-1); transition: box-shadow .14s ease, transform .14s ease;
}
.musavir-kpi-tile:hover { box-shadow: var(--sh-3); transform: translateY(-2px); }
.musavir-kpi-tile__icon {
  width: 32px; height: 32px; border-radius: var(--r-md); margin-bottom: var(--s-12);
  display: flex; align-items: center; justify-content: center;
  background: var(--brand-tint); color: var(--brand-hover);
}
.musavir-kpi-tile__icon svg { width: 17px; height: 17px; }
/* Her KPI kartı KENDİ anlamsal rengini taşır (ikon + etiket + değer) —
   styles.css'in MEVCUT anlamsal token'ları (--indigo/--info/--warn),
   yeni renk İCAT EDİLMEDİ. "Muted" artık gri değil, kartın kendi renginin
   daha soluk tonuyla gösterilir — dürüstlük "—" değeri ve Faz 3 notuyla
   zaten korunuyor, renk sadece kategoriyi ayırt eder. */
.musavir-kpi-tile__icon--indigo { background: var(--indigo-soft); color: var(--indigo); }
.musavir-kpi-tile__icon--info { background: var(--info-soft); color: var(--info); }
.musavir-kpi-tile__icon--warn { background: var(--warn-soft); color: var(--warn); }
.musavir-kpi-tile__label { font-size: var(--fs-13); color: var(--text-3); font-weight: var(--fw-medium); margin-bottom: 2px; }
.musavir-kpi-tile__value { font-size: var(--fs-30); font-weight: var(--fw-strong); letter-spacing: -.02em; font-variant-numeric: tabular-nums; }
.musavir-kpi-tile__value--kucuk { font-size: var(--fs-16); }
.musavir-kpi-tile__note { font-size: var(--fs-12); color: var(--text-3); margin-top: 2px; }

.musavir-kpi-tile--brand .musavir-kpi-tile__label,
.musavir-kpi-tile--brand .musavir-kpi-tile__value { color: var(--brand-hover); }
.musavir-kpi-tile--indigo .musavir-kpi-tile__label,
.musavir-kpi-tile--indigo .musavir-kpi-tile__value { color: var(--indigo); }
.musavir-kpi-tile--info .musavir-kpi-tile__label,
.musavir-kpi-tile--info .musavir-kpi-tile__value { color: var(--info); }
.musavir-kpi-tile--warn .musavir-kpi-tile__label,
.musavir-kpi-tile--warn .musavir-kpi-tile__value { color: var(--warn); }
.musavir-kpi-tile--danger .musavir-kpi-tile__label,
.musavir-kpi-tile--danger .musavir-kpi-tile__value { color: var(--danger); }
.musavir-kpi-tile--muted.musavir-kpi-tile--indigo .musavir-kpi-tile__value { color: var(--indigo); opacity: .55; }
.musavir-kpi-tile--muted.musavir-kpi-tile--info .musavir-kpi-tile__value { color: var(--info); opacity: .55; }
.musavir-kpi-tile--muted.musavir-kpi-tile--warn .musavir-kpi-tile__value { color: var(--warn); opacity: .55; }
@media (max-width: 1100px) { .musavir-kpi-row { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .musavir-kpi-row { grid-template-columns: 1fr; } }

.musavir-section-head { display: flex; align-items: center; justify-content: space-between; gap: var(--s-16); flex-wrap: wrap; margin-bottom: var(--s-12); }
.musavir-section-head h2 { margin: 0; font-size: var(--fs-20); font-weight: var(--fw-strong); }
.musavir-section-head__count { font-size: var(--fs-14); color: var(--text-2); }
.musavir-section-head--ustBosluklu { margin-top: var(--s-24); }
.musavir-aciklama-metni { color: var(--text-3); font-size: var(--fs-13); margin: 0 0 var(--s-12); }

/* ---- DEMO (§20 — /musavir/demo) -------------------------------------------- */
.musavir-demo-uyari {
  text-align: left; margin-bottom: var(--s-16); background: var(--warn-soft); color: var(--warn);
  border-radius: var(--r-md); padding: var(--s-12) var(--s-16); font-weight: var(--fw-strong);
}
.musavir-campaign-card--altBosluklu { margin-bottom: var(--s-24); }
.musavir-durum--ortaliUstBosluklu { text-align: center; margin-top: var(--s-32); }
.musavir-btn--ustBosluklu { margin-top: var(--s-12); display: inline-flex; }

/* ---- ARAMA (Ctrl+K — mükellef listesi) ------------------------------------ */
.musavir-arama { position: relative; display: flex; align-items: center; max-width: 480px; margin-bottom: var(--s-16); }
.musavir-arama input {
  width: 100%; height: 38px; padding: 0 calc(var(--s-32) + var(--s-12)) 0 var(--s-32);
  border: 1px solid var(--border-2); border-radius: var(--r-md);
  background: var(--surface); color: var(--text-1); font-size: var(--fs-16); font-family: var(--font);
}
.musavir-arama input:focus { outline: none; border-color: var(--brand); box-shadow: 0 0 0 3px var(--brand-ring); }
.musavir-arama__icon { position: absolute; left: var(--s-10); color: var(--text-3); pointer-events: none; width: 16px; height: 16px; }
.musavir-arama__kbd {
  position: absolute; right: var(--s-10); padding: 1px var(--s-6); border-radius: var(--r-sm);
  border: 1px solid var(--border-2); background: var(--surface-3); color: var(--text-3);
  font-size: 10px; font-weight: var(--fw-medium); pointer-events: none;
}

/* Ana çalışma alanında tablo artık küçük bir karta SIKIŞMAZ — kart çerçevesi
   yalnız tablonun kendisine (border+radius), etrafına gereksiz padding YOK. */
.musavir-worksurface { background: transparent; }

/* ---- TABLO — YOĞUN, sticky header, sağ hizalı sayı kolonları --------------- */
.musavir-tablo-sarici { overflow-x: auto; border: 1px solid var(--border); border-radius: var(--r-md); background: var(--surface); }
.musavir-tablo { width: 100%; border-collapse: separate; border-spacing: 0; font-size: var(--fs-14); }
.musavir-tablo thead th {
  position: sticky; top: 0; z-index: 1;
  text-align: left; padding: var(--s-8) var(--s-10);
  color: var(--text-2); font-weight: var(--fw-strong); font-size: var(--fs-12);
  text-transform: uppercase; letter-spacing: .02em;
  background: var(--surface-3); border-bottom: 1px solid var(--border);
  white-space: nowrap;
}
.musavir-tablo td { padding: var(--s-6) var(--s-10); border-bottom: 1px solid var(--border); vertical-align: middle; line-height: 1.3; }
.musavir-hareket-detay { margin-top: 2px; font-size: var(--fs-12); color: var(--text-3); line-height: 1.4; }
.musavir-tablo tbody tr:last-child td { border-bottom: none; }
.musavir-tablo tbody tr { cursor: pointer; transition: background-color .12s ease; }
/* NOT: box-shadow doğrudan <tr>'de bazı motorlarda güvenilir render
   olmuyor (denendi, neredeyse görünmez kaldı) — bunun yerine HER hücreye
   inset box-shadow uygulanıyor (kenarlık + sol vurgu şeridi), garantili
   render + satır YÜKSEKLİĞİNİ/GENİŞLİĞİNİ değiştirmediği için yatay
   scrollbar'ı YANLIŞLIKLA tetiklemiyor (transform:scale ile denendiğinde
   bu olmuştu). */
.musavir-tablo tbody tr:hover td {
  background: var(--brand-tint);
  box-shadow: inset 0 1px 0 var(--brand-border), inset 0 -1px 0 var(--brand-border);
}
.musavir-tablo tbody tr:hover td:first-child {
  box-shadow: inset 3px 0 0 var(--brand), inset 0 1px 0 var(--brand-border), inset 0 -1px 0 var(--brand-border);
}
.musavir-tablo tbody tr.is-selected { background: var(--brand-tint); }
.musavir-tablo tbody tr:focus-visible { outline: none; box-shadow: inset 0 0 0 2px var(--brand-ring); }
.musavir-tablo td[data-etiket="Firma"] { font-weight: var(--fw-medium); color: var(--text-1); }
.musavir-tablo th.num, .musavir-tablo td.num { text-align: right; font-variant-numeric: tabular-nums; font-family: var(--font-num); }
.musavir-tablo td.islem { text-align: right; }
.musavir-tablo td.islem, .musavir-tablo th.islem { white-space: nowrap; }
.musavir-tablo td.islem .musavir-btn {
  opacity: .8; transition: opacity .12s ease, background-color .12s ease, border-color .12s ease, color .12s ease;
}
.musavir-tablo tbody tr:hover td.islem .musavir-btn,
.musavir-tablo tbody tr:focus-within td.islem .musavir-btn { opacity: 1; }

.musavir-firma-cell { display: flex; align-items: center; gap: var(--s-10); }
.musavir-firma-avatar {
  width: 30px; height: 30px; border-radius: var(--r-md); flex: none;
  display: flex; align-items: center; justify-content: center;
  color: #fff; font-weight: var(--fw-strong); font-size: var(--fs-13);
  background: linear-gradient(135deg, var(--brand), var(--brand-2));
}
.musavir-firma-name { font-weight: var(--fw-medium); color: var(--text-1); }

.musavir-rozet {
  display: inline-flex; align-items: center; gap: var(--s-4);
  padding: 1px var(--s-8); border-radius: var(--r-full);
  font-size: var(--fs-12); font-weight: var(--fw-strong);
  background: var(--ok-soft); color: var(--ok); white-space: nowrap;
}
.musavir-rozet::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: currentColor; flex: none; }

.musavir-durum { padding: var(--s-24); text-align: center; color: var(--text-2); font-size: var(--fs-14); }
.musavir-durum--sm { padding: var(--s-16); }

/* ---- BUTONLAR — belirgin, kompakt, işlevi açık (Zirve ergonomisinden
   adapte: fonksiyonu belli, güçlü hover/focus, masaüstü yazılımı hissi;
   Zirve'nin görsel diliyle/renkleriyle/ikonlarıyla İLİŞKİSİ YOK). ------------ */
.musavir-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: var(--s-6);
  height: 30px; padding: 0 var(--s-12); border-radius: var(--r-md);
  border: 1px solid var(--border-2); background: var(--surface); color: var(--text-1);
  font-size: var(--fs-13); font-weight: var(--fw-strong); font-family: var(--font);
  cursor: pointer; white-space: nowrap; transition: background-color .12s ease, border-color .12s ease, color .12s ease, box-shadow .12s ease, transform .12s ease;
}
.musavir-btn:hover { border-color: var(--brand-border); color: var(--brand-hover); background: var(--brand-tint); box-shadow: var(--sh-3); transform: translateY(-1px); }
.musavir-btn:focus-visible { outline: none; box-shadow: 0 0 0 3px var(--brand-ring); }
.musavir-btn:disabled { opacity: .5; cursor: not-allowed; box-shadow: none; }
.musavir-btn--primary { background: var(--brand); border-color: var(--brand); color: #fff; }
.musavir-btn--primary:hover { background: var(--brand-hover); border-color: var(--brand-hover); color: #fff; box-shadow: 0 8px 20px hsl(236 64% 48% / .45); transform: translateY(-1px); }
.musavir-btn--danger { border-color: var(--danger); color: var(--danger); }
.musavir-btn--danger:hover { background: var(--danger-soft); border-color: var(--danger); color: var(--danger); }
.musavir-btn--icon { width: 30px; padding: 0; }

/* ---- SEKMELER --------------------------------------------------------------- */
.musavir-mukellef-baslik{display:flex;align-items:center;gap:var(--s-10);flex-wrap:wrap}
.musavir-mukellef-meta{display:flex;align-items:center;gap:var(--s-8);color:var(--text-2);font-size:var(--fs-14)}
.musavir-mukellef-aksiyon{margin-left:auto;display:flex;flex-direction:column;align-items:flex-end;gap:var(--s-6)}
@media (max-width:720px){.musavir-mukellef-aksiyon{margin-left:0;width:100%;align-items:stretch}}
.musavir-title-compact{font-size:var(--fs-26);margin:0}
.musavir-genelbakis-kart{padding:var(--s-16);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--sh-1)}
.musavir-belge-alanlar--duz{border-bottom:0;padding-bottom:0;margin-bottom:0}
.musavir-belge-gosterim{margin-top:var(--s-16)}
.musavir-toolbar .main__sub{margin:0}

.musavir-tabs{display:flex;gap:var(--s-4);margin-top:var(--s-12);border-bottom:1px solid var(--border);overflow-x:auto;overflow-y:hidden}
.musavir-tab{
  height:36px;padding:0 var(--s-14);border:0;background:none;color:var(--text-2);
  font-size:var(--fs-14);font-weight:var(--fw-medium);cursor:pointer;white-space:nowrap;
  border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .12s ease,border-color .12s ease;
}
.musavir-tab:hover{color:var(--text-1)}
.musavir-tab:focus-visible{outline:none;color:var(--brand)}
.musavir-tab[aria-selected="true"]{color:var(--brand);border-bottom-color:var(--brand);font-weight:var(--fw-strong)}
.musavir-tabpanel{margin-top:var(--s-12)}

/* ---- KOMPAKT İŞLEM/FİLTRE ÇUBUĞU ------------------------------------------- */
.musavir-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-8);margin-bottom:var(--s-12)}
.musavir-filtreler{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-8);flex:1}
.musavir-filtreler input{
  height:30px;padding:0 var(--s-10);border:1px solid var(--border-2);border-radius:var(--r-md);
  background:var(--surface);color:var(--text-1);font-size:var(--fs-13);font-family:var(--font);
}
.musavir-filtreler input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-ring)}
.musavir-filtreler input[type="search"]{flex:1;min-width:160px}

.musavir-link-btn{
  display:inline-flex;border:0;background:none;color:var(--brand);font-size:var(--fs-13);font-weight:var(--fw-medium);
  cursor:pointer;padding:0;text-decoration:underline;
}
.musavir-link-btn:hover{color:var(--brand-hover)}

/* ============================================================================
   BELGE DETAYI — SAĞDAN AÇILAN DRAWER (UI Revizyon 2, KRİTİK DÜZELTME)
   ============================================================================
   ÖNCEKİ davranış (ortalanmış/alttan modal) TAMAMEN KALDIRILDI. Masaüstünde
   drawer ekranın SAĞ kenarına tam yapışık, top:0/bottom:0/height:100vh,
   width:min(680px,42vw) (min ~520px altına düşmez, küçük desktop viewport'ta
   responsive daralır). Bottom-sheet YOK, ortalanmış modal YOK.
   ========================================================================== */
.musavir-drawer-backdrop {
  position: fixed; inset: 0; z-index: 99; background: rgba(16, 20, 30, .38);
  opacity: 0; transition: opacity .16s ease;
}
.musavir-drawer-backdrop[hidden] { display: none; }
.musavir-drawer-backdrop.is-visible { opacity: 1; }

.musavir-drawer {
  position: fixed; top: 0; right: 0; bottom: 0; z-index: 100;
  width: min(680px, 42vw); min-width: 420px; max-width: 100vw;
  height: 100vh; display: flex; flex-direction: column;
  background: var(--surface); box-shadow: -8px 0 32px rgba(16, 24, 40, .18);
  border-left: 1px solid var(--border);
  transform: translateX(100%); transition: transform .18s ease;
}
.musavir-drawer[hidden] { display: none; }
.musavir-drawer.is-open { transform: translateX(0); }

.musavir-drawer__head {
  position: sticky; top: 0; z-index: 1; flex: none;
  display: flex; align-items: flex-start; justify-content: space-between; gap: var(--s-12);
  padding: var(--s-14) var(--s-20); border-bottom: 1px solid var(--border); background: var(--surface);
}
.musavir-drawer__head-text h3 { margin: 0 0 var(--s-4); font-size: var(--fs-13); font-weight: var(--fw-medium); color: var(--text-2); text-transform: uppercase; letter-spacing: .03em; }
.musavir-drawer__head-meta { display: flex; align-items: center; gap: var(--s-8); }
.musavir-drawer__head-meta strong { font-size: var(--fs-26); font-weight: var(--fw-strong); }

.musavir-drawer__body { flex: 1; min-height: 0; overflow-y: auto; padding: var(--s-16) var(--s-20); }
.musavir-drawer__body iframe { width: 100%; height: 65vh; border: 1px solid var(--border); border-radius: var(--r-md); }

.musavir-drawer__footer {
  flex: none; display: flex; gap: var(--s-8); flex-wrap: wrap;
  padding: var(--s-12) var(--s-20); border-top: 1px solid var(--border); background: var(--surface);
}

.musavir-belge-satir { display: flex; justify-content: space-between; align-items: baseline; gap: var(--s-16); padding: var(--s-6) 0; }
.musavir-belge-satir--ayrac { border-top: 1px solid var(--border); margin-top: var(--s-8); padding-top: var(--s-12); }
.musavir-belge-satir--toplam { font-size: var(--fs-20); font-weight: var(--fw-strong); }
.musavir-belge-alanlar{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s-10) var(--s-20);margin-bottom:var(--s-12);padding-bottom:var(--s-12);border-bottom:1px solid var(--border)}
.musavir-belge-alan strong{display:block;font-size:10px;color:var(--text-3);text-transform:uppercase;letter-spacing:.03em}
.musavir-belge-alan{display:flex;flex-direction:column;align-items:flex-start;gap:1px}
.musavir-belge-deger{display:block;margin-top:1px;font-size:var(--fs-14);color:var(--text-1)}
.musavir-belge-alan .musavir-rozet{margin-top:2px}
.musavir-belge-baslik-grup h4 { margin: var(--s-12) 0 var(--s-6); font-size: var(--fs-12); color: var(--text-3); text-transform: uppercase; letter-spacing: .03em; }

@media (max-width: 1100px) {
  .musavir-drawer { width: min(560px, 60vw); }
}

/* ---- Sidebar/Drawer mobil davranışı ---------------------------------------- */
@media (max-width: 860px) {
  .musavir-sidebar {
    position: fixed; left: 0; top: 0; bottom: 0; z-index: 60;
    transform: translateX(-100%); transition: transform .18s ease;
  }
  .musavir-sidebar.is-open { transform: translateX(0); box-shadow: 8px 0 32px rgba(16,24,40,.18); }
  .musavir-sidebar__backdrop {
    display: block; position: fixed; inset: 0; z-index: 50; background: rgba(16,20,30,.38);
  }
  .musavir-sidebar__backdrop[hidden] { display: none; }
  .musavir-sidebar-toggle {
    display: inline-flex; align-items: center; justify-content: center;
    width: 32px; height: 32px; border: 1px solid var(--border-2); border-radius: var(--r-md);
    background: var(--surface); color: var(--text-2); cursor: pointer;
  }
  .musavir-shell__crumb { min-width: 0; }
}

@media(max-width:900px){
  .musavir-belge-alanlar{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .musavir-shell__content { padding: var(--s-12); }
  .musavir-shell__header { padding: 0 var(--s-12); }
  .musavir-hdr__user, .musavir-hdr__kbd-hint, .musavir-hdr__search { display: none; }
  .musavir-belge-alanlar{grid-template-columns:1fr}

  /* Belge drawer — 375px'te (neredeyse) tam ekran; bottom-sheet DEĞİL, sağ/
     tam-ekran çalışma görünümü korunur. */
  .musavir-drawer { width: 100%; min-width: 0; max-width: 100vw; border-left: 0; }
  .musavir-drawer__body iframe { height: 52vh; }
}

/* Mobil (≤640px): tablo, mali-musavir.js/data-etiket İLE AYNI desen —
   satırlar dikey kart görünümüne döner. */
@media (max-width: 640px) {
  .musavir-tablo thead { display: none; }
  .musavir-tablo, .musavir-tablo tbody, .musavir-tablo tr, .musavir-tablo td { display: block; width: 100%; }
  .musavir-tablo tr { border: 1px solid var(--border); border-radius: var(--r-md); margin-bottom: var(--s-10); padding: var(--s-8) var(--s-12); }
  .musavir-tablo td { border-bottom: none; padding: var(--s-6) 0; display: flex; justify-content: space-between; gap: var(--s-12); text-align: left !important; }
  .musavir-tablo td::before { content: attr(data-etiket); color: var(--text-3); font-weight: var(--fw-medium); }
}

body.musavir-scroll-lock { overflow: hidden; }

/* ============================================================================
   KAZANÇ PROGRAMI — Mükellef Kazandır / Kazançlarım (FAZ 4, 2026-09-08)
   ============================================================================
   Mevcut token/bileşen ailesinden (musavir-kpi-tile/musavir-tablo/musavir-btn/
   musavir-rozet) BESLENIR — yeni bir tasarım dili İCAT EDİLMEDİ. */

/* Dashboard'daki KÜÇÜK kazanç programı widget'ı — musavir-campaign-card'dan
   BİLİNÇLİ olarak daha küçük/sakin (dashboard hiyerarşisi bozulmasın diye,
   bkz. musavir.html yorumu). */
.musavir-kazanc-widget {
  display: flex; align-items: center; gap: var(--s-16); flex-wrap: wrap;
  padding: var(--s-14) var(--s-16); background: var(--surface); border: 1px solid var(--border);
  border-left: 3px solid var(--brand); border-radius: var(--r-md); box-shadow: var(--sh-1);
  margin-bottom: var(--s-24);
}
.musavir-kazanc-widget__icon {
  width: 32px; height: 32px; border-radius: var(--r-md); flex: none;
  display: flex; align-items: center; justify-content: center;
  background: var(--brand-tint); color: var(--brand-hover);
}
.musavir-kazanc-widget__body { flex: 1; min-width: 200px; }
.musavir-kazanc-widget__title { font-size: var(--fs-13); font-weight: var(--fw-strong); color: var(--text-1); margin: 0; }
.musavir-kazanc-widget__desc { font-size: var(--fs-12); color: var(--text-2); margin: 2px 0 0; }

.musavir-campaign-card {
  display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-24);
  padding: var(--s-20); background: linear-gradient(135deg, var(--brand-tint), var(--surface));
  border: 1px solid var(--brand-border); border-radius: var(--r-lg); box-shadow: var(--sh-1);
  margin-bottom: var(--s-24);
}
.musavir-campaign-card__body { flex: 1; min-width: 240px; }
.musavir-campaign-card__title { font-size: var(--fs-20); font-weight: var(--fw-strong); margin: 0 0 var(--s-4); color: var(--brand-hover); }
.musavir-campaign-card__desc { margin: 0 0 var(--s-16); color: var(--text-2); font-size: var(--fs-14); max-width: 60ch; }
.musavir-campaign-card__facts { display: flex; flex-wrap: wrap; gap: var(--s-20); }
.musavir-campaign-fact__label { font-size: var(--fs-11); color: var(--text-3); text-transform: uppercase; letter-spacing: .03em; margin-bottom: 2px; }
.musavir-campaign-fact__value { font-size: var(--fs-16); font-weight: var(--fw-strong); color: var(--text-1); }
.musavir-campaign-card__cta { flex: none; }

.musavir-invite-form {
  display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--s-12);
  padding: var(--s-16); background: var(--surface); border: 1px solid var(--border);
  border-radius: var(--r-lg); box-shadow: var(--sh-1); margin-bottom: var(--s-24);
}
.musavir-invite-form__field { display: flex; flex-direction: column; gap: var(--s-4); }
.musavir-invite-form__field label { font-size: var(--fs-12); font-weight: var(--fw-medium); color: var(--text-2); }
.musavir-invite-form__field input {
  height: 36px; padding: 0 var(--s-12); border: 1px solid var(--border-2); border-radius: var(--r-md);
  background: var(--surface); color: var(--text-1); font-size: var(--fs-14); font-family: var(--font);
}
.musavir-invite-form__field input:focus { outline: none; border-color: var(--brand); box-shadow: 0 0 0 3px var(--brand-ring); }
.musavir-invite-form__actions { grid-column: 1 / -1; display: flex; gap: var(--s-8); align-items: center; }
.musavir-invite-form__hint { grid-column: 1 / -1; font-size: var(--fs-12); color: var(--text-3); }

.musavir-invite-result {
  display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-10);
  padding: var(--s-14) var(--s-16); background: var(--ok-soft); border: 1px solid var(--ok);
  border-radius: var(--r-md); margin-bottom: var(--s-24);
}
.musavir-invite-result__link {
  flex: 1; min-width: 220px; font-family: var(--font-num); font-size: var(--fs-13);
  padding: var(--s-8) var(--s-10); background: var(--surface); border: 1px solid var(--border-2);
  border-radius: var(--r-sm); color: var(--text-1); overflow-x: auto; white-space: nowrap;
}
/* FAZ 7B (§16/§34) — WhatsApp/E-posta/Kopyala ÜÇ AYRI aksiyon, tek genel
   "Davet Et" butonuna toplanmaz (görev talimatı §34 zorunlu kılıyor). */
.musavir-invite-result__actions { display: flex; flex-wrap: wrap; gap: var(--s-8); width: 100%; }
.musavir-invite-result__not { flex: 0 0 100%; margin: 0; font-size: var(--fs-13); color: var(--text-2); }
.musavir-invite-result__not[role="alert"] { color: var(--danger); }

.musavir-rozet--warn { background: var(--warn-soft); color: var(--warn); }
.musavir-rozet--muted { background: var(--surface-3); color: var(--text-3); }
.musavir-rozet--brand { background: var(--brand-tint); color: var(--brand-hover); }
.musavir-rozet--info { background: var(--info-soft); color: var(--info); }
.musavir-rozet--danger { background: var(--danger-soft); color: var(--danger); }

@media (max-width: 640px) {
  .musavir-campaign-card { flex-direction: column; align-items: stretch; }
  .musavir-invite-form { grid-template-columns: 1fr; }
}

/* ============================================================================
   MUHASEBE AKTARIM MERKEZİ — FAZ 6 + FAZ 6 TASARIM (2026-09-08). Tamamı
   MEVCUT token sistemini (--surface/--border/--brand*/--success/--warn/
   --info/--r-*/--s-*/--fs-*/--sh-*) REUSE eder — yeni bir renk/gölge sistemi
   İCAT EDİLMEDİ (CLAUDE.md §"Yeni Tasarım Üretme Kuralı").
   ============================================================================ */

/* ---- Üst çubuk: başlık + Mükellef/Dönem chip'leri ---- */
.mp-topbar { display: flex; justify-content: space-between; align-items: flex-start; gap: var(--s-16); flex-wrap: wrap; margin-bottom: var(--s-20); }
.mp-chips { display: flex; gap: var(--s-10); flex: none; }
.mp-chip {
  display: flex; align-items: center; gap: var(--s-10); padding: var(--s-10) var(--s-14);
  background: var(--brand-tint); border: 1px solid var(--brand-ring); border-radius: var(--r-md);
  min-width: 168px;
}
.mp-chip--btn { cursor: pointer; font: inherit; color: inherit; text-align: left; }
.mp-chip--btn:hover { border-color: var(--brand); }
.mp-chip__icon { color: var(--brand); flex: none; }
.mp-chip__icon svg { width: 18px; height: 18px; display: block; }
.mp-chip__label { font-size: var(--fs-12); color: var(--text-3); }
.mp-chip__value { font-size: var(--fs-14); font-weight: var(--fw-strong); color: var(--brand-hover); }
.mp-chip__chevron { width: 14px; height: 14px; margin-left: auto; color: var(--text-3); }

/* ---- Adım çubuğu (7 adım) ---- */
.mp-stepper { display: flex; align-items: flex-start; list-style: none; margin: 0 0 var(--s-24); padding: var(--s-16); background: var(--surface); border: 1px solid var(--border); border-radius: var(--r-lg); box-shadow: var(--sh-1); overflow-x: auto; }
.mp-step { display: flex; align-items: center; gap: var(--s-10); flex: 1 1 0; min-width: 132px; position: relative; }
.mp-step:not(:last-child)::after { content: ''; flex: 1; height: 2px; background: var(--border-2); margin: 0 var(--s-8); align-self: center; }
.mp-step__circle {
  flex: none; width: 30px; height: 30px; border-radius: 50%; display: flex; align-items: center; justify-content: center;
  font-size: var(--fs-13); font-weight: var(--fw-strong); background: var(--surface-3); color: var(--text-3); border: 2px solid var(--border-2);
}
.mp-step__label { font-size: var(--fs-13); font-weight: var(--fw-medium); color: var(--text-3); line-height: 1.3; }
.mp-step__label small { font-weight: var(--fw-regular); color: var(--text-3); }
.mp-step.is-done .mp-step__circle { background: var(--success); border-color: var(--success); color: #fff; }
.mp-step.is-done .mp-step__circle::before { content: '✓'; }
.mp-step.is-done:not(:last-child)::after { background: var(--success); }
.mp-step.is-active .mp-step__circle { background: var(--brand); border-color: var(--brand); color: #fff; }
.mp-step.is-active .mp-step__label { color: var(--text-1); }
.mp-step[data-clickable="1"] { cursor: pointer; }

/* ---- Adım panelleri ---- */
.mp-panel-title { font-size: var(--fs-18); font-weight: var(--fw-strong); margin: 0 0 4px; }
.mp-panel-sub { font-size: var(--fs-13); color: var(--text-3); margin: 0 0 var(--s-16); }
.mp-step-panel { margin-bottom: var(--s-24); }

/* ---- Adım 1: mükellef arama + listesi (radyo-kart) ---- */
.mp-mukellef-search {
  display: flex; align-items: center; gap: var(--s-10); max-width: 560px;
  height: 44px; padding: 0 var(--s-14); margin-bottom: var(--s-10);
  background: var(--surface); border: 1px solid var(--border-2); border-radius: var(--r-lg);
  transition: border-color .12s ease, box-shadow .12s ease;
}
.mp-mukellef-search:focus-within { border-color: var(--brand); box-shadow: 0 0 0 3px var(--brand-ring); }
.mp-mukellef-search svg { width: 18px; height: 18px; color: var(--text-3); flex: none; }
.mp-mukellef-search input {
  flex: 1; height: 100%; border: 0; background: transparent; color: var(--text-1);
  font-size: var(--fs-14); font-family: inherit; outline: none;
}
.mp-mukellef-search input::placeholder { color: var(--text-3); }
.mp-mukellef-count { max-width: 560px; margin: 0 0 var(--s-10); min-height: 1em; }

.mp-mukellef-list { display: flex; flex-direction: column; gap: var(--s-10); max-width: 560px; }
.mp-mukellef-opt {
  display: flex; align-items: center; gap: var(--s-12); padding: var(--s-14) var(--s-16);
  background: var(--surface); border: 1px solid var(--border-2); border-radius: var(--r-lg);
  cursor: pointer; font: inherit; color: inherit; text-align: left; box-shadow: var(--sh-1);
  transition: border-color .12s ease, box-shadow .12s ease, transform .12s ease;
}
.mp-mukellef-opt:hover { border-color: var(--brand); box-shadow: var(--sh-2); transform: translateY(-1px); }
.mp-mukellef-opt.is-active { border-color: var(--brand); background: var(--brand-tint); box-shadow: 0 0 0 3px var(--brand-ring); }
.mp-mukellef-opt__avatar {
  flex: none; width: 38px; height: 38px; border-radius: var(--r-md); background: var(--brand-tint); color: var(--brand-hover);
  display: flex; align-items: center; justify-content: center; font-size: var(--fs-16); font-weight: var(--fw-strong);
}
.mp-mukellef-opt.is-active .mp-mukellef-opt__avatar { background: var(--brand); color: #fff; }
.mp-mukellef-opt__chevron { width: 16px; height: 16px; margin-left: auto; color: var(--text-3); flex: none; }

/* ---- Adım 2: dönem seçenekleri ---- */
.mp-donem-options { display: flex; gap: var(--s-10); flex-wrap: wrap; }
.mp-donem-opt {
  padding: var(--s-10) var(--s-16); background: var(--surface); border: 1px solid var(--border-2); border-radius: var(--r-md);
  font-size: var(--fs-14); font-weight: var(--fw-medium); color: var(--text-2); cursor: pointer;
}
.mp-donem-opt:hover { border-color: var(--brand); }
.mp-donem-opt.is-active { background: var(--brand); border-color: var(--brand); color: #fff; }
.mp-ozel-tarih { display: flex; gap: var(--s-16); margin-top: var(--s-12); }
.mp-ozel-tarih label { display: flex; flex-direction: column; gap: 4px; font-size: var(--fs-12); color: var(--text-2); }
.mp-ozel-tarih input { height: 36px; padding: 0 var(--s-10); border: 1px solid var(--border-2); border-radius: var(--r-md); }

/* ---- Adım 3: belge türü kartları ---- */
.mp-belge-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: var(--s-12); max-width: 760px; }
.mp-belge-card {
  display: flex; flex-direction: column; gap: 4px; padding: var(--s-14); background: var(--surface);
  border: 1px solid var(--border-2); border-radius: var(--r-md); cursor: pointer;
}
.mp-belge-card:has(input:checked) { border-color: var(--success); background: var(--success-soft); }
.mp-belge-card input { margin-bottom: 4px; }
.mp-belge-card span { font-size: var(--fs-12); color: var(--text-3); }
.mp-belge-ozet { display: block; margin-top: var(--s-8); font-size: var(--fs-13); font-weight: var(--fw-medium); color: var(--text-1); font-variant-numeric: tabular-nums; }
.mp-belge-ozet--zero { color: var(--text-3); font-weight: var(--fw-medium); }

/* ---- Adım 4: program grid + yan panel ---- */
.mp-layout { display: grid; grid-template-columns: 1fr 300px; gap: var(--s-24); align-items: start; }
.mp-program-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--s-12); }
.mp-program-card {
  position: relative; display: flex; flex-direction: column; gap: var(--s-8); align-items: flex-start;
  padding: var(--s-14); background: var(--surface); border: 1px solid var(--border-2);
  border-radius: var(--r-lg); cursor: pointer; text-align: left; font: inherit; color: inherit;
}
.mp-program-card:hover:not(.is-disabled) { border-color: var(--brand); box-shadow: var(--sh-2); }
.mp-program-card.is-active { border-color: var(--brand); box-shadow: 0 0 0 3px var(--brand-ring); }
.mp-program-card.is-disabled { opacity: .5; cursor: not-allowed; }
.mp-program-card__head { display: flex; align-items: center; gap: var(--s-10); width: 100%; }
.mp-program-card__logo { flex: none; width: 34px; height: 34px; border-radius: var(--r-md); background: var(--surface-3); display: flex; align-items: center; justify-content: center; font-size: 15px; font-weight: var(--fw-strong); color: var(--text-2); }
.mp-program-card__name { font-size: var(--fs-14); font-weight: var(--fw-strong); }
.mp-program-card__desc { font-size: var(--fs-12); color: var(--text-3); margin: 0; }
.mp-program-card__badge { position: absolute; top: var(--s-10); right: var(--s-10); font-size: 10px; font-weight: var(--fw-strong); padding: 2px 8px; border-radius: 999px; }
.mp-program-card__badge--brand { background: var(--brand); color: #fff; }
.mp-program-card__badge--warn { background: var(--warn-soft); color: var(--warn); }
.mp-program-card__badge--success { background: var(--success-soft); color: var(--success); }
.mp-program-card__check { position: absolute; top: var(--s-10); right: var(--s-10); width: 18px; height: 18px; border-radius: 50%; background: var(--brand); color: #fff; display: flex; align-items: center; justify-content: center; font-size: 11px; }
.mp-feature-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 3px; }
.mp-feature-list li { font-size: var(--fs-12); color: var(--text-2); display: flex; align-items: center; gap: 6px; }
.mp-feature-list li::before { content: '✓'; color: var(--success); font-weight: var(--fw-strong); flex: none; }

.mp-side-card { padding: var(--s-14); border-radius: var(--r-lg); border: 1px solid var(--border-2); margin-bottom: var(--s-14); }
.mp-side-card__title { font-size: var(--fs-13); font-weight: var(--fw-strong); margin: 0 0 6px; display: flex; align-items: center; gap: 6px; }
.mp-side-card__body { font-size: var(--fs-12); color: var(--text-2); }
.mp-side-card--brand { background: var(--brand-tint); border-color: var(--brand-ring); }
.mp-side-card--brand .mp-side-card__title { color: var(--brand-hover); }
.mp-side-card--warn { background: var(--warn-soft); border-color: var(--warn); }
.mp-side-card--warn .mp-side-card__title { color: var(--warn); }
.mp-side-card--info { background: var(--success-soft); border-color: var(--success); }
.mp-side-card--info .mp-side-card__title { color: var(--success); }
.mp-side-card--danger { background: var(--danger-soft); border-color: var(--danger); }
.mp-side-card--danger .mp-side-card__title { color: var(--danger); }
.mp-side-card--narrow { max-width: 560px; }
.mp-side-card ul { margin: 4px 0 0; padding-left: 18px; }

/* ---- Belge problem listesi (Adım 6) ---- */
.mp-issue-status { display: inline-block; padding: 2px 8px; border-radius: 999px; font-size: var(--fs-12); font-weight: var(--fw-medium); }
.mp-issue-status--ok { background: var(--success-soft); color: var(--success); }
.mp-issue-status--warn { background: var(--warn-soft); color: var(--warn); }
.mp-issue-status--error { background: var(--danger-soft); color: var(--danger); }
.mp-issue-scroll { max-width: 100%; overflow-x: auto; }

/* ---- Alt navigasyon ---- */
.mp-footer-nav { display: flex; justify-content: space-between; gap: var(--s-12); padding-top: var(--s-16); border-top: 1px solid var(--border); }

@media (max-width: 900px) {
  .mp-layout { grid-template-columns: 1fr; }
  .mp-program-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px) {
  .mp-program-grid { grid-template-columns: 1fr; }
  .mp-stepper { display: none; } /* dar ekranda adım metni sığmaz — chip'ler + panel başlığı yeterli bağlam verir */
}

/* ---- Küçük yardımcı sınıflar — CSP (style-src 'self') SATIR-İÇİ style
   İZİN VERMEZ (CC'nin aksine, bkz. bu portalın mevcut sıkı CSP'si) — bu
   yüzden tek-kullanımlık düzeltmeler bile SINIF olarak tanımlanır. ---- */
.mp-head--tight { margin-bottom: 0; }
.mp-head--spaced { margin-top: var(--s-32); }
.mp-h2-inline { font-size: var(--fs-18); margin: 0; }
.mp-field-label { font-size: var(--fs-13); font-weight: var(--fw-strong); color: var(--text-2); display: block; margin-bottom: var(--s-4); }
.mp-select { max-width: 360px; height: 36px; border: 1px solid var(--border-2); border-radius: var(--r-md); padding: 0 var(--s-10); }
.mp-sub-note { font-size: var(--fs-12); color: var(--text-3); }
.mp-mt-12 { margin-top: var(--s-12); }
.mp-mt-16 { margin-top: var(--s-16); }

/* Sayfa .musavir-shell__content-inner'ın GENEL 1600px sınırını (yoğun
   tablo ekranları İÇİN tasarlanmış) MİRASLAMAZ — sihirbaz İÇERİĞİ (özellikle
   1/2/3/5/6/7. adımlar) o genişlikte SPARSE/boş görünüyordu. 1120px, adım 4'ün
   program grid + yan panelini de rahat SIĞDIRIR. */
.mp-content-bound { max-width: 1120px; }

/* ============================================================================
   MUHASEBE AKTARIM MERKEZİ — TOPLU EKRAN (FAZ 6.2, 2026-09-09)
   ============================================================================
   Bu ekran YOĞUN bir tablo görünümüdür — .musavir-shell__content-inner'ın
   GENEL 1600px sınırı (mp-content-bound'un AKSİNE) BİLİNÇLİ OLARAK
   MİRASLANIR (200 mükellefe kadar bir liste İÇİN dar bir sütun ÇALIŞMAZ). */

.mm-topbar { display: flex; gap: var(--s-16); margin-bottom: var(--s-16); flex-wrap: wrap; }
.mm-program-card, .mm-donem-card {
  flex: 1; min-width: 260px; background: var(--surface); border: 1px solid var(--border-2);
  border-radius: var(--r-lg); padding: var(--s-14) var(--s-16); box-shadow: var(--sh-1);
}
.mm-program-card { display: flex; align-items: center; gap: var(--s-12); flex-wrap: wrap; }
.mm-program-card__label { font-size: var(--fs-12); color: var(--text-3); flex-basis: 100%; }
.mm-program-card__value { font-size: var(--fs-16); font-weight: var(--fw-strong); color: var(--text-1); margin-right: auto; }
.mp-donem-options--compact .mp-donem-opt { padding: var(--s-8) var(--s-12); font-size: var(--fs-13); }
.mm-ayarlar-panel { max-width: 560px; margin-bottom: var(--s-16); }
.mm-belge-grid-compact { max-width: none; grid-template-columns: repeat(3, 1fr); }
.mm-belge-grid-compact .mp-belge-card { padding: var(--s-10); }

.mm-belge-run-row { display: flex; align-items: center; gap: var(--s-16); flex-wrap: wrap; margin-bottom: var(--s-16); font-size: var(--fs-13); color: var(--text-2); }
.mm-belge-run-row label { display: flex; align-items: center; gap: 6px; }
.mm-belge-run-label { margin: 0; }

.mm-kpi-row { grid-template-columns: repeat(6, minmax(0, 1fr)); }
@media (max-width: 1100px) { .mm-kpi-row { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 560px) { .mm-kpi-row { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

.mm-toolbar { display: flex; align-items: center; gap: var(--s-10); margin-bottom: var(--s-14); flex-wrap: wrap; }
.mm-search { margin-bottom: 0; flex: 1; min-width: 220px; max-width: 360px; }
.mm-filter { max-width: 200px; height: 38px; }
.mm-secim-sayaci { margin-left: auto; }

/* ---- Liste — masaüstünde tablo, ≤640px'te KART (görev talimatı §16: 200
   satırlık masaüstü tabloyu mobilde YATAY TAŞIRMA). Aynı <table> markup'u
   KORUNUR — yalnız CSS ile hücreler kart satırına DÖNÜŞTÜRÜLÜR (data-label
   ile), İKİ AYRI DOM üretilmez. ---- */
.mm-list-scroll { max-width: 100%; overflow-x: auto; }
.mm-list-table { width: 100%; border-collapse: collapse; }
.mm-list-table th, .mm-list-table td { padding: var(--s-10) var(--s-12); text-align: left; border-bottom: 1px solid var(--border); font-size: var(--fs-13); }
.mm-list-table th { color: var(--text-3); font-weight: var(--fw-medium); font-size: var(--fs-12); text-transform: uppercase; letter-spacing: .03em; }
.mm-list-table tbody tr:hover { background: var(--surface-2); }
.mm-list-table td.num { font-variant-numeric: tabular-nums; }
.mm-row-checkbox { width: 32px; }
.mm-row-action { white-space: nowrap; }
.mm-row-action a { color: var(--brand); text-decoration: none; font-weight: var(--fw-medium); }
.mm-row-action a:hover { text-decoration: underline; }
.mm-currency-cell { font-size: var(--fs-12); line-height: 1.5; }
.mm-row-disabled-select { opacity: .4; cursor: not-allowed; }

.mp-issue-status--muted { background: var(--surface-3); color: var(--text-3); }
.mp-issue-status--done { background: var(--brand-tint); color: var(--brand-hover); }

.mm-bulk-bar {
  position: sticky; bottom: 0; z-index: 5; display: flex; align-items: center; gap: var(--s-16);
  margin-top: var(--s-16); padding: var(--s-14) var(--s-16); background: var(--surface);
  border: 1px solid var(--border-2); border-radius: var(--r-lg); box-shadow: var(--sh-3);
}

@media (max-width: 640px) {
  .mm-list-table thead { display: none; }
  .mm-list-table, .mm-list-table tbody, .mm-list-table tr, .mm-list-table td { display: block; width: 100%; }
  .mm-list-table tr { border: 1px solid var(--border-2); border-radius: var(--r-md); margin-bottom: var(--s-12); padding: var(--s-10); box-shadow: var(--sh-1); }
  .mm-list-table td { border-bottom: none; padding: 4px 0; display: flex; justify-content: space-between; gap: var(--s-12); }
  .mm-list-table td[data-label]::before { content: attr(data-label); color: var(--text-3); font-size: var(--fs-12); flex: none; }
  .mm-row-checkbox { display: flex !important; justify-content: flex-start !important; }
  .mm-row-checkbox::before { content: none !important; }
  .mm-toolbar { flex-direction: column; align-items: stretch; }
  .mm-search, .mm-filter { max-width: none; }
  .mm-bulk-bar { flex-direction: column; align-items: stretch; text-align: center; }
}

/* ---- BAYİ SEVİYEM — kademeli komisyon ilerleme kartı (2026-09-10)
   /bayi/kazanclarim ekranı — MEVCUT token/bileşen ailesinden (--surface,
   --border, --r-xx, --s-xx, --fs-xx, --brand-xx) BESLENIR, yeni bir tasarım dili
   İCAT EDİLMEDİ. Program TIERED değilse veya aktif program yoksa backend
   tierProgress=null döner — kart JS tarafından [hidden] yapılır. ---- */
.bayi-seviye-kart {
  background: var(--surface); border: 1px solid var(--border); border-radius: var(--r-lg);
  padding: var(--s-20); box-shadow: var(--sh-1); margin-bottom: var(--s-24);
}
.bayi-seviye-kart__baslik {
  display: flex; align-items: baseline; justify-content: space-between; gap: var(--s-12);
  flex-wrap: wrap; margin-bottom: var(--s-4);
}
.bayi-seviye-kart__baslik h2 { margin: 0; font-size: var(--fs-16); font-weight: var(--fw-strong); }
.bayi-seviye-kart__oran {
  font-size: var(--fs-26); font-weight: var(--fw-strong); color: var(--brand-hover);
  font-variant-numeric: tabular-nums; letter-spacing: -.01em;
}
.bayi-seviye-kart__mesaj { color: var(--text-2); font-size: var(--fs-14); margin: 0 0 var(--s-16); }

.bayi-seviye-ilerleme { margin-bottom: var(--s-6); }
.bayi-seviye-ilerleme__ust {
  display: flex; align-items: center; justify-content: space-between; gap: var(--s-8);
  font-size: var(--fs-12); color: var(--text-3); margin-bottom: var(--s-6);
}
.bayi-seviye-ilerleme__track {
  height: 10px; border-radius: var(--r-full); background: var(--surface-3);
  overflow: hidden; border: 1px solid var(--border);
}
.bayi-seviye-ilerleme__dolgu {
  height: 100%; border-radius: var(--r-full);
  background: linear-gradient(90deg, var(--brand), var(--brand-2));
  transition: width .3s ease;
}
.bayi-seviye-ilerleme--maks .bayi-seviye-ilerleme__dolgu { background: var(--ok); }
.bayi-seviye-kalan { font-size: var(--fs-13); color: var(--text-2); margin: var(--s-8) 0 var(--s-16); }
.bayi-seviye-kalan strong { color: var(--text-1); font-weight: var(--fw-strong); }

.bayi-seviye-merdiven {
  display: flex; flex-wrap: wrap; gap: var(--s-8); padding-top: var(--s-12);
  border-top: 1px solid var(--border);
}
.bayi-seviye-basamak {
  display: flex; flex-direction: column; align-items: center; gap: 1px;
  padding: var(--s-6) var(--s-10); border-radius: var(--r-md);
  border: 1px solid var(--border-2); background: var(--surface-2);
  font-size: var(--fs-12); color: var(--text-3); min-width: 68px; flex: 1 1 68px; text-align: center;
}
.bayi-seviye-basamak__aralik { font-weight: var(--fw-medium); }
.bayi-seviye-basamak__oran { font-size: var(--fs-14); font-weight: var(--fw-strong); color: var(--text-2); font-variant-numeric: tabular-nums; }
.bayi-seviye-basamak.is-aktif {
  background: var(--brand-tint); border-color: var(--brand-border); color: var(--brand-hover);
}
.bayi-seviye-basamak.is-aktif .bayi-seviye-basamak__oran { color: var(--brand-hover); }
.bayi-seviye-basamak.is-tamamlandi { opacity: .55; }

@media (max-width: 640px) {
  .bayi-seviye-kart { padding: var(--s-16); }
  .bayi-seviye-kart__oran { font-size: var(--fs-20); }
  .bayi-seviye-basamak { min-width: 0; flex: 1 1 30%; }
}

/* ============================================================================
   MÜŞAVİR PANELİ V2 (mp-*) — karşılama bandı, KPI kartları, portföy, yan paneller.
   Mevcut token'lar; yeni renk sistemi YOK.
   ========================================================================== */
.mp-hero {
  display: flex; align-items: center; justify-content: space-between; gap: var(--s-16); flex-wrap: wrap;
  margin-bottom: var(--s-16); padding: var(--s-24);
  border-radius: var(--r-lg); color: var(--on-brand);
  background: linear-gradient(135deg, var(--brand) 0%, var(--brand-hover) 100%);
  box-shadow: var(--sh-1);
}
.mp-hero__donem { margin: 0 0 var(--s-4); font-size: var(--fs-12); letter-spacing: .06em; text-transform: uppercase; opacity: .8; }
.mp-hero h1 { margin: 0; font-size: 26px; font-weight: var(--fw-strong); color: inherit; }
.mp-hero__ozet { margin: var(--s-6) 0 0; font-size: var(--fs-14); opacity: .9; }
.mp-hero__aksiyon { display: flex; gap: var(--s-8); flex-wrap: wrap; }
.mp-hero .musavir-btn { background: rgba(255,255,255,.14); color: inherit; border-color: rgba(255,255,255,.28); }
.mp-hero .musavir-btn:hover { background: rgba(255,255,255,.24); }
.mp-hero .musavir-btn--primary { background: #fff; color: var(--brand); border-color: #fff; }
.mp-hero .musavir-btn--primary:hover { background: rgba(255,255,255,.88); }

.mp-kpi-row { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: var(--s-12); margin-bottom: var(--s-16); }
.mp-kpi { position: relative; padding: var(--s-16); background: var(--surface); border: 1px solid var(--border); border-radius: var(--r-lg); box-shadow: var(--sh-1); }
.mp-kpi__ikon { display: inline-flex; width: 34px; height: 34px; align-items: center; justify-content: center; border-radius: var(--r-md); margin-bottom: var(--s-12); }
.mp-kpi__ikon svg { width: 18px; height: 18px; }
.mp-kpi__ikon--brand, .mp-kpi__ikon--indigo { background: var(--brand-tint); color: var(--brand); }
.mp-kpi__ikon--info { background: var(--surface-3); color: var(--brand); }
.mp-kpi__ikon--ok { background: var(--success-soft); color: var(--success); }
.mp-kpi__ikon--warn { background: var(--warn-soft); color: var(--warn); }
.mp-kpi__etiket { font-size: var(--fs-12); color: var(--text-3); font-weight: var(--fw-medium); }
.mp-kpi__deger { margin-top: var(--s-4); font-size: 26px; font-weight: var(--fw-strong); color: var(--text-1); line-height: 1.1; }
.mp-kpi__deger--kucuk { font-size: var(--fs-16); line-height: 1.4; }
.mp-kpi__not { margin-top: var(--s-4); font-size: var(--fs-12); color: var(--text-2); min-height: 1.2em; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.mp-ana { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: var(--s-16); align-items: start; }
.mp-panel { background: var(--surface); border: 1px solid var(--border); border-radius: var(--r-lg); box-shadow: var(--sh-1); overflow: hidden; }
.mp-panel__ust { display: flex; align-items: center; justify-content: space-between; gap: var(--s-12); flex-wrap: wrap; padding: var(--s-16) var(--s-16) var(--s-12); }
.mp-panel__ust--kucuk { padding-bottom: var(--s-8); }
.mp-panel__ust h2 { margin: 0; font-size: var(--fs-16); font-weight: var(--fw-strong); color: var(--text-1); }
.mp-panel__alt { margin: 2px 0 0; font-size: var(--fs-12); color: var(--text-3); }
.mp-yan { display: grid; gap: var(--s-16); }

.mp-arac { display: flex; align-items: center; gap: var(--s-8); flex-wrap: wrap; }
.mp-ara { position: relative; display: flex; align-items: center; }
.mp-ara svg { position: absolute; left: 10px; width: 16px; height: 16px; color: var(--text-3); }
.mp-ara input { width: 260px; max-width: 100%; padding: 8px 52px 8px 32px; font: inherit; font-size: var(--fs-13); color: var(--text-1); background: var(--surface); border: 1px solid var(--border); border-radius: var(--r-md); }
.mp-ara input:focus { outline: none; border-color: var(--brand); box-shadow: 0 0 0 3px var(--brand-ring); }
.mp-ara kbd { position: absolute; right: 8px; font-size: 10px; color: var(--text-3); border: 1px solid var(--border); border-radius: 4px; padding: 1px 5px; }
.mp-sirala { padding: 8px 10px; font: inherit; font-size: var(--fs-13); color: var(--text-1); background: var(--surface); border: 1px solid var(--border); border-radius: var(--r-md); }

.mp-chipler { display: flex; gap: var(--s-8); flex-wrap: wrap; padding: 0 var(--s-16) var(--s-12); }
.mp-chip-btn { display: inline-flex; align-items: center; gap: var(--s-6); padding: 6px 12px; font: inherit; font-size: var(--fs-12); font-weight: var(--fw-medium); color: var(--text-2); background: var(--surface); border: 1px solid var(--border); border-radius: var(--r-full); cursor: pointer; }
.mp-chip-btn span { color: var(--text-3); font-variant-numeric: tabular-nums; }
.mp-chip-btn:hover { border-color: var(--brand-border); color: var(--text-1); }
.mp-chip-btn.is-active { background: var(--brand-tint); border-color: var(--brand-border); color: var(--brand); }
.mp-chip-btn.is-active span { color: var(--brand); }

.mp-tablo { border-top: 1px solid var(--border-2); }
.mp-satir { display: grid; grid-template-columns: minmax(190px, 2.4fr) minmax(120px, 1.2fr) minmax(120px, 1.2fr) auto; align-items: center; gap: var(--s-16); padding: var(--s-12) var(--s-16); border-bottom: 1px solid var(--border-2); }
.mp-satir:not(.mp-satir--baslik):hover { background: var(--surface-3); }
.mp-satir:last-child { border-bottom: 0; }
.mp-satir--baslik { padding-top: var(--s-8); padding-bottom: var(--s-8); font-size: 11px; color: var(--text-3); text-transform: uppercase; letter-spacing: .05em; font-weight: var(--fw-strong); background: var(--surface-3); }
.mp-firma { display: flex; align-items: center; gap: var(--s-12); min-width: 0; cursor: pointer; }
.mp-avatar { flex: none; display: inline-flex; width: 36px; height: 36px; align-items: center; justify-content: center; border-radius: var(--r-md); background: var(--brand-tint); color: var(--brand); font-size: var(--fs-12); font-weight: var(--fw-strong); }
.mp-firma__metin { min-width: 0; }
.mp-firma__ad { font-size: var(--fs-14); font-weight: var(--fw-strong); color: var(--text-1); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mp-firma__alt { display: flex; align-items: center; gap: var(--s-8); margin-top: 2px; font-size: var(--fs-12); color: var(--text-3); }
.mp-firma__alt .mp-chip { padding: 1px 8px; font-size: 11px; }
.mp-metrik__ust { display: flex; align-items: baseline; gap: var(--s-6); font-size: var(--fs-12); color: var(--text-3); }
.mp-metrik__ust b { font-size: var(--fs-14); color: var(--text-1); font-weight: var(--fw-strong); }
.mp-metrik__ust em { margin-left: auto; font-style: normal; color: var(--text-2); }
.mp-bar { display: block; height: 6px; margin-top: var(--s-6); border-radius: var(--r-full); background: var(--surface-3); overflow: hidden; }
.mp-bar--ince { height: 4px; }
.mp-bar__dolu { display: block; height: 100%; width: 0; border-radius: var(--r-full); transition: width .4s ease; }
.mp-bar__dolu--indigo { background: var(--brand); }
.mp-bar__dolu--info { background: var(--success); }
.mp-chip { display: inline-block; padding: 3px 10px; font-size: var(--fs-12); font-weight: var(--fw-medium); border-radius: var(--r-full); }
.mp-chip--ok { background: var(--success-soft); color: var(--success); }
.mp-chip--sessiz { background: var(--surface-3); color: var(--text-3); }
.mp-islem { display: flex; gap: var(--s-8); justify-content: flex-end; }

.mp-liste { padding: 0 var(--s-8) var(--s-12); }
.mp-liste__satir { display: flex; align-items: center; gap: var(--s-12); width: 100%; padding: var(--s-8); text-align: left; font: inherit; background: none; border: 0; border-radius: var(--r-md); cursor: pointer; color: inherit; }
.mp-liste__satir:hover { background: var(--surface-3); }
.mp-sira { flex: none; display: inline-flex; width: 22px; height: 22px; align-items: center; justify-content: center; border-radius: var(--r-full); background: var(--brand-tint); color: var(--brand); font-size: 11px; font-weight: var(--fw-strong); }
.mp-liste__metin { flex: 1; min-width: 0; display: grid; gap: 2px; }
.mp-liste__metin b { font-size: var(--fs-13); color: var(--text-1); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mp-liste__metin .num { font-size: var(--fs-12); color: var(--text-3); }
.mp-uyari { margin: 0 var(--s-8) var(--s-8); padding: var(--s-12); border-radius: var(--r-md); font-size: var(--fs-13); }
.mp-uyari--warn { background: var(--warn-soft); color: var(--warn); }
.mp-uyari--info { background: var(--brand-tint); color: var(--brand); }
.mp-uyari__liste { display: flex; flex-wrap: wrap; gap: var(--s-6); margin-top: var(--s-8); }
.mp-uyari__liste button { font: inherit; font-size: var(--fs-12); padding: 3px 9px; color: inherit; background: transparent; border: 1px solid currentColor; border-radius: var(--r-full); cursor: pointer; }
.mp-bos { padding: var(--s-24); text-align: center; color: var(--text-2); font-size: var(--fs-14); }
.mp-bos--kucuk { padding: var(--s-12) var(--s-16) var(--s-16); font-size: var(--fs-13); text-align: left; color: var(--text-3); }

@media (max-width: 1280px) { .mp-kpi-row { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 1100px) {
  .mp-ana { grid-template-columns: 1fr; }
  .mp-kpi-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 820px) {
  .mp-satir { grid-template-columns: 1fr 1fr; }
  .mp-satir--baslik { display: none; }
  .mp-firma { grid-column: 1 / -1; }
  .mp-islem { grid-column: 1 / -1; justify-content: stretch; }
  .mp-islem .musavir-btn { flex: 1; }
  .mp-metrik::before { content: attr(data-etiket); display: block; font-size: 11px; color: var(--text-3); text-transform: uppercase; margin-bottom: 2px; }
  .mp-hero { padding: var(--s-16); }
}
@media (max-width: 560px) { .mp-kpi-row { grid-template-columns: 1fr; } .mp-ara input { width: 100%; } }

/* ============================================================================
   MÜŞAVİR KABUĞU V2 — ERP paneliyle (erp-v3.css .nav) AYNI koyu lacivert menü dili.
   Mevcut token/renk değerleri ERP menüsünden alınmıştır; yeni renk sistemi YOK.
   ========================================================================== */
.musavir-sidebar {
  flex: 0 0 248px; width: 248px;
  background: linear-gradient(180deg, hsl(222 74% 16%), hsl(222 84% 11%));
  border-right: 1px solid hsl(222 48% 25%);
  color: hsl(222 20% 91%);
}
.musavir-sidebar__brand { height: 64px; padding: 0 var(--s-20); border-bottom: 1px solid hsl(222 42% 24%); }
.musavir-sidebar__brand img { height: 30px; }
.musavir-sidebar__context { color: hsl(222 18% 62%); }
.musavir-sidebar__nav { padding: var(--s-4) var(--s-12); gap: 2px; }
.musavir-sidebar__link {
  height: 40px; padding: 0 var(--s-12); gap: var(--s-12); border-radius: var(--r-md);
  color: hsl(222 18% 85%); font-size: var(--fs-14); font-weight: var(--fw-medium);
}
.musavir-sidebar__link svg { width: 18px; height: 18px; opacity: .9; }
.musavir-sidebar__link:hover { background: hsl(222 48% 25% / .72); color: #fff; box-shadow: none; transform: none; }
.musavir-sidebar__link:focus-visible { box-shadow: inset 0 0 0 2px hsl(229 88% 72%); }
.musavir-sidebar__link.is-active {
  color: #fff; font-weight: var(--fw-strong);
  background: linear-gradient(135deg, hsl(229 81% 56%), hsl(228 74% 44%));
  box-shadow: 0 4px 12px hsl(229 81% 30% / .45);
}
.musavir-sidebar__section-label { padding: var(--s-20) var(--s-16) var(--s-6); color: hsl(222 18% 58%); font-size: 11px; letter-spacing: .09em; }
.musavir-sidebar__link.is-soon { color: hsl(222 14% 52%); }
.musavir-sidebar__link.is-soon:hover { background: none; color: hsl(222 14% 52%); }
.musavir-sidebar__soon { background: hsl(222 42% 24%); color: hsl(222 18% 72%); }
.musavir-sidebar__user {
  margin: var(--s-12); padding: var(--s-10); border: 1px solid hsl(222 42% 26%);
  background: hsl(222 50% 20% / .6); border-radius: var(--r-lg);
}
.musavir-sidebar__user-avatar { background: linear-gradient(135deg, hsl(229 81% 56%), hsl(228 74% 44%)); color: #fff; }
.musavir-sidebar__user-name { color: #fff; }
.musavir-sidebar__user-role { color: hsl(222 18% 68%); }

.musavir-shell__header { height: 64px; padding: 0 var(--s-24); box-shadow: 0 1px 0 var(--border), 0 4px 16px hsl(222 40% 20% / .04); }
.musavir-shell__crumb { font-size: var(--fs-14); }
.musavir-shell__content { padding: var(--s-24) var(--s-24) var(--s-48); }

@media (max-width: 960px) {
  .musavir-sidebar { box-shadow: 0 0 40px hsl(222 74% 10% / .5); }
}

/* ============================================================================
   MÜŞAVİR ORTAK BİLEŞENLER V2 — başlık bandı, KPI kartları, tablo kartı, düğme, süzgeç çubuğu.
   Tüm müşavir sayfaları aynı sınıfları kullandığından hepsi birden yükselir.
   ========================================================================== */
.musavir-shell__content-inner > .musavir-page-head:first-child {
  display: flex; flex-direction: column; gap: var(--s-4); margin-bottom: var(--s-20);
  padding: var(--s-20) var(--s-24); border-radius: var(--r-lg);
  background: linear-gradient(135deg, var(--brand) 0%, var(--brand-hover) 100%);
  color: var(--on-brand); box-shadow: var(--sh-1);
}
.musavir-shell__content-inner > .musavir-page-head:first-child h1 { color: inherit; font-size: 24px; }
.musavir-shell__content-inner > .musavir-page-head:first-child p { color: inherit; opacity: .88; margin: 0; }

.musavir-kpi-tile {
  border-radius: var(--r-lg); border: 1px solid var(--border); background: var(--surface);
  box-shadow: var(--sh-1); padding: var(--s-16);
}
.musavir-kpi-tile:hover { box-shadow: var(--sh-3); transform: translateY(-2px); }
.musavir-kpi-tile__label { font-size: var(--fs-12); font-weight: var(--fw-medium); }
.musavir-kpi-tile__value { font-weight: var(--fw-strong); }

.musavir-section-head h2 { font-size: var(--fs-18, 18px); }

.musavir-tablo-sarici {
  border: 1px solid var(--border); border-radius: var(--r-lg); background: var(--surface);
  box-shadow: var(--sh-1); overflow: hidden auto;
}
.musavir-tablo thead th {
  background: var(--surface-3); color: var(--text-3); font-size: 11px; letter-spacing: .05em;
  text-transform: uppercase; font-weight: var(--fw-strong); padding-top: var(--s-10); padding-bottom: var(--s-10);
}
.musavir-tablo td { padding-top: var(--s-10); padding-bottom: var(--s-10); }
.musavir-tablo tbody tr:hover td { background: var(--surface-3); }

.musavir-btn { border-radius: var(--r-md); font-weight: var(--fw-medium); }
.musavir-btn--primary { box-shadow: 0 1px 2px hsl(229 81% 30% / .25); }

.musavir-filtreler, .musavir-arama {
  background: var(--surface); border: 1px solid var(--border); border-radius: var(--r-lg);
  padding: var(--s-10) var(--s-12); box-shadow: var(--sh-1);
}
.musavir-rozet { border-radius: var(--r-full); }

/* ---- MÜŞAVİR DESTEK PANELİ (sol menü kartı + modal) — mevcut token'lar ---- */
.musavir-sidebar__brand { justify-content: center; }
.musavir-sidebar__brand img { height: 34px; }
.musavir-destek-kart {
  margin: 0 var(--s-12) var(--s-8); padding: var(--s-16); text-align: center;
  border: 1px solid hsl(222 42% 26%); border-radius: var(--r-lg);
  background: linear-gradient(160deg, hsl(229 70% 30% / .55), hsl(222 50% 20% / .6));
}
.musavir-destek-kart__ikon { display: inline-flex; width: 38px; height: 38px; align-items: center; justify-content: center; border-radius: var(--r-full); background: hsl(229 81% 56% / .28); color: #fff; margin-bottom: var(--s-8); }
.musavir-destek-kart__ikon svg { width: 20px; height: 20px; }
.musavir-destek-kart__baslik { color: #fff; font-size: var(--fs-14); font-weight: var(--fw-strong); }
.musavir-destek-kart__metin { margin: var(--s-4) 0 var(--s-12); color: hsl(222 18% 72%); font-size: var(--fs-12); line-height: 1.45; }
.musavir-destek-kart__btn { width: 100%; padding: 9px 12px; font: inherit; font-size: var(--fs-13); font-weight: var(--fw-medium); color: var(--brand); background: #fff; border: 0; border-radius: var(--r-md); cursor: pointer; }
.musavir-destek-kart__btn:hover { background: hsl(222 40% 94%); }
.musavir-destek-kart__btn:focus-visible { outline: 2px solid hsl(229 88% 72%); outline-offset: 2px; }

.musavir-modal { position: fixed; inset: 0; z-index: 80; display: flex; align-items: center; justify-content: center; padding: var(--s-16); }
.musavir-modal[hidden] { display: none; }
.musavir-modal__perde { position: absolute; inset: 0; background: hsl(222 40% 8% / .55); }
.musavir-modal__panel { position: relative; width: 100%; max-width: 480px; display: grid; gap: var(--s-8); padding: var(--s-24); background: var(--surface); color: var(--text-1); border: 1px solid var(--border); border-radius: var(--r-lg); box-shadow: var(--sh-3); }
.musavir-modal__panel h2 { margin: 0; font-size: var(--fs-18, 18px); }
.musavir-modal__alt { margin: 0 0 var(--s-8); font-size: var(--fs-13); color: var(--text-3); }
.musavir-modal__panel input, .musavir-modal__panel textarea { width: 100%; padding: 9px 12px; font: inherit; font-size: var(--fs-14); color: var(--text-1); background: var(--surface); border: 1px solid var(--border); border-radius: var(--r-md); resize: vertical; box-sizing: border-box; }
.musavir-modal__panel input:focus, .musavir-modal__panel textarea:focus { outline: none; border-color: var(--brand); box-shadow: 0 0 0 3px var(--brand-ring); }
.musavir-modal__durum { min-height: 1.2em; margin: 0; font-size: var(--fs-13); color: var(--text-2); }
.musavir-modal__durum.is-ok { color: var(--success); }
.musavir-modal__durum.is-hata { color: var(--danger, #c0392b); }
.musavir-modal__aksiyon { display: flex; justify-content: flex-end; gap: var(--s-8); }

/* ============================================================================
   MUHASEBE AKTARIM MERKEZİ V2 (mm-*) — hero, iki sütunlu çalışma alanı, KPI, panel kartları.
   Mevcut token'lar; yeni renk sistemi YOK.
   ========================================================================== */
.mm-hero {
  display: flex; align-items: center; justify-content: space-between; gap: var(--s-24); flex-wrap: wrap;
  margin-bottom: var(--s-16); padding: var(--s-24); border-radius: var(--r-lg); color: var(--on-brand);
  background: linear-gradient(135deg, var(--brand) 0%, var(--brand-hover) 100%); box-shadow: var(--sh-1);
}
.mm-hero__ust { margin: 0 0 var(--s-4); font-size: var(--fs-12); letter-spacing: .06em; text-transform: uppercase; opacity: .8; }
.mm-hero h1 { margin: 0; font-size: 26px; font-weight: var(--fw-strong); color: inherit; }
.mm-hero__alt { margin: var(--s-6) 0 0; max-width: 560px; font-size: var(--fs-14); opacity: .9; }
.mm-adimlar { display: flex; flex-wrap: wrap; gap: var(--s-8); margin: 0; padding: 0; list-style: none; }
.mm-adimlar li { display: inline-flex; align-items: center; gap: var(--s-6); padding: 6px 12px 6px 6px; font-size: var(--fs-12); font-weight: var(--fw-medium); border-radius: var(--r-full); background: rgba(255,255,255,.14); border: 1px solid rgba(255,255,255,.22); }
.mm-adimlar li span { display: inline-flex; width: 20px; height: 20px; align-items: center; justify-content: center; border-radius: var(--r-full); background: #fff; color: var(--brand); font-size: 11px; font-weight: var(--fw-strong); }

.mm-duzen { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: var(--s-16); align-items: start; }
.mm-ana { display: grid; gap: var(--s-16); min-width: 0; }
.mm-yan { display: grid; gap: var(--s-16); position: sticky; top: var(--s-16); }

.mm-kpi-row { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--s-12); }
.mm-kpi { padding: var(--s-16); background: var(--surface); border: 1px solid var(--border); border-radius: var(--r-lg); box-shadow: var(--sh-1); }
.mm-kpi__ikon { display: inline-flex; width: 34px; height: 34px; align-items: center; justify-content: center; border-radius: var(--r-md); margin-bottom: var(--s-12); background: var(--brand-tint); color: var(--brand); }
.mm-kpi__ikon svg { width: 18px; height: 18px; }
.mm-kpi--ok .mm-kpi__ikon { background: var(--success-soft); color: var(--success); }
.mm-kpi--warn .mm-kpi__ikon { background: var(--warn-soft); color: var(--warn); }
.mm-kpi--info .mm-kpi__ikon, .mm-kpi--muted .mm-kpi__ikon { background: var(--surface-3); color: var(--brand); }
.mm-kpi--muted .mm-kpi__ikon { color: var(--text-3); }
.mm-kpi__deger { font-size: 26px; font-weight: var(--fw-strong); line-height: 1.1; color: var(--text-1); }
.mm-kpi__etiket { margin-top: var(--s-4); font-size: var(--fs-12); font-weight: var(--fw-medium); color: var(--text-3); }

.mm-panel { background: var(--surface); border: 1px solid var(--border); border-radius: var(--r-lg); box-shadow: var(--sh-1); overflow: hidden; }
.mm-panel__ust { display: flex; align-items: center; justify-content: space-between; gap: var(--s-12); flex-wrap: wrap; padding: var(--s-16); }
.mm-panel__ust--kucuk { padding-bottom: var(--s-8); }
.mm-panel__ust h2 { margin: 0; font-size: var(--fs-16); font-weight: var(--fw-strong); color: var(--text-1); }
.mm-panel__ust p { margin: 2px 0 0; font-size: var(--fs-12); color: var(--text-3); }
.mm-panel > .mm-toolbar { padding: 0 var(--s-16) var(--s-12); margin-bottom: 0; }
.mm-panel .mm-list-scroll { border-top: 1px solid var(--border-2); }
.mm-panel .musavir-tablo-sarici, .mm-panel .musavir-tablo { border: 0; border-radius: 0; box-shadow: none; }
.mm-panel .musavir-durum { margin: var(--s-16); }

.mm-firma { display: flex; align-items: center; gap: var(--s-12); min-width: 0; }
.mm-avatar { flex: none; display: inline-flex; width: 34px; height: 34px; align-items: center; justify-content: center; border-radius: var(--r-md); background: var(--brand-tint); color: var(--brand); font-size: var(--fs-12); font-weight: var(--fw-strong); }
.mm-firma__ad { font-size: var(--fs-14); font-weight: var(--fw-strong); color: var(--text-1); }
.mm-firma__vkn { font-size: var(--fs-12); color: var(--text-3); }
.mm-row-action .musavir-btn { text-decoration: none; }

.mm-yan__kart { padding-bottom: var(--s-16); }
.mm-yan__kart .mm-program-card, .mm-yan__kart .mm-donem-card { margin: 0 var(--s-16) var(--s-12); padding: var(--s-12); background: var(--surface-3); border: 1px solid var(--border-2); border-radius: var(--r-md); }
.mm-yan__kart .mp-donem-options { display: flex; flex-wrap: wrap; gap: var(--s-6); }
.mm-yan__kart .mm-belge-run-row { display: grid; gap: var(--s-8); margin: 0 var(--s-16); }
.mm-yan__kart .mm-belge-run-row .mm-program-card__label { font-size: var(--fs-12); color: var(--text-3); }
.mm-yan .mm-bulk-bar { position: static; display: grid; gap: var(--s-8); margin-top: 0; }
.mm-bulk-bar__baslik { font-size: var(--fs-14); font-weight: var(--fw-strong); color: var(--text-1); }
.mm-yan .mm-ayarlar-panel { max-width: none; margin-bottom: 0; }

@media (max-width: 1440px) {
  .mm-duzen { grid-template-columns: 1fr; }
  .mm-yan { position: static; order: -1; }
}
@media (max-width: 640px) {
  .mm-kpi-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mm-hero { padding: var(--s-16); }
}

/* ============================================================================
   BAYİ PORTALI — profesyonel görünüm (yalnız body.bayi-portal; müşavir sayfalarını etkilemez)
   Mevcut tema token'ları; açık/koyu temada aynı değişkenler okunur.
   ========================================================================== */
.bayi-portal .musavir-shell__content-inner > .bayi-hero:first-child {
  flex-direction: row; align-items: center; justify-content: space-between; flex-wrap: wrap;
  gap: var(--s-16); padding: var(--s-24) var(--s-28, 28px);
  background: linear-gradient(120deg, hsl(222 74% 18%) 0%, hsl(229 78% 36%) 60%, hsl(229 81% 46%) 100%);
  position: relative; overflow: hidden;
}
.bayi-portal .bayi-hero::after {
  content: ''; position: absolute; right: -60px; top: -80px; width: 260px; height: 260px; border-radius: 50%;
  background: radial-gradient(circle, hsl(229 90% 75% / .28), transparent 68%); pointer-events: none;
}
.bayi-portal .bayi-hero__metin { position: relative; z-index: 1; min-width: 240px; }
.bayi-portal .bayi-hero__selam { font-size: var(--fs-13); letter-spacing: .04em; text-transform: uppercase; opacity: .75 !important; margin-bottom: 2px !important; }
.bayi-portal .bayi-hero h1 { font-size: 26px !important; margin: 0 0 4px; }
.bayi-portal .bayi-hero__btn {
  position: relative; z-index: 1; display: inline-flex; align-items: center; gap: var(--s-8);
  height: 42px; padding: 0 var(--s-20); border-radius: var(--r-md); text-decoration: none;
  background: #fff; color: hsl(229 78% 32%); font-weight: var(--fw-strong); font-size: var(--fs-14);
  box-shadow: 0 6px 18px hsl(222 74% 10% / .35); transition: transform .12s ease, box-shadow .12s ease;
}
.bayi-portal .bayi-hero__btn:hover { transform: translateY(-1px); box-shadow: 0 10px 24px hsl(222 74% 10% / .4); }
.bayi-portal .bayi-hero__btn:focus-visible { outline: none; box-shadow: 0 0 0 3px hsl(229 88% 78%); }

.bayi-portal .bayi-kpi-row { grid-template-columns: repeat(4, minmax(0, 1fr)); margin-bottom: var(--s-16); }

.bayi-kart {
  background: var(--surface); border: 1px solid var(--border); border-radius: var(--r-lg);
  box-shadow: var(--sh-1); padding: var(--s-20); margin-bottom: var(--s-16); min-width: 0;
}
.bayi-kart__ust { display: flex; align-items: center; justify-content: space-between; gap: var(--s-12); margin-bottom: var(--s-16); }
.bayi-kart__ust h2 { margin: 0; font-size: var(--fs-16); font-weight: var(--fw-strong); color: var(--text-1); }
.bayi-kart__link { font-size: var(--fs-13); font-weight: var(--fw-medium); color: var(--brand); text-decoration: none; }
.bayi-kart__link:hover { color: var(--brand-hover); text-decoration: underline; }

.bayi-komisyon__bar { display: flex; height: 10px; border-radius: var(--r-full); overflow: hidden; background: var(--surface-3); margin-bottom: var(--s-16); }
.bayi-komisyon__dilim { display: block; height: 100%; transition: width .35s ease; }
.bayi-komisyon__dilim--bekleyen { background: var(--warn); }
.bayi-komisyon__dilim--hazir { background: var(--brand); }
.bayi-komisyon__dilim--odenen { background: var(--ok); }
.bayi-komisyon__liste { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--s-16); margin: 0; }
.bayi-komisyon__liste dt { display: flex; align-items: center; gap: var(--s-8); font-size: var(--fs-13); color: var(--text-2); font-weight: var(--fw-medium); }
.bayi-komisyon__liste dd { margin: 4px 0 2px; font-size: var(--fs-24, 24px); font-weight: var(--fw-strong); color: var(--text-1); letter-spacing: -.01em; }
.bayi-komisyon__liste small { font-size: var(--fs-12); color: var(--text-3); }
.bayi-nokta { width: 9px; height: 9px; border-radius: 50%; display: inline-block; }
.bayi-nokta--bekleyen { background: var(--warn); }
.bayi-nokta--hazir { background: var(--brand); }
.bayi-nokta--odenen { background: var(--ok); }

.bayi-iki-kolon { display: grid; grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); gap: var(--s-16); align-items: start; }

.bayi-son { list-style: none; margin: 0; padding: 0; }
.bayi-son li { display: flex; align-items: center; gap: var(--s-12); padding: var(--s-10) 0; border-bottom: 1px solid var(--border); }
.bayi-son li:last-child { border-bottom: none; padding-bottom: 0; }
.bayi-son__avatar {
  flex: none; width: 36px; height: 36px; border-radius: 50%; display: flex; align-items: center; justify-content: center;
  background: var(--brand-tint); color: var(--brand-hover); font-weight: var(--fw-strong); font-size: var(--fs-14);
}
.bayi-son__ad { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.bayi-son__ad b { font-size: var(--fs-14); color: var(--text-1); font-weight: var(--fw-medium); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.bayi-son__ad small { font-size: var(--fs-12); color: var(--text-3); }
.bayi-bos { text-align: center; padding: var(--s-20) var(--s-8); color: var(--text-2); font-size: var(--fs-14); }
.bayi-bos b { display: block; color: var(--text-1); margin-bottom: 4px; }
.bayi-bos p { margin: 0; }

.bayi-adimlar { list-style: none; margin: 0 0 var(--s-16); padding: 0; display: flex; flex-direction: column; gap: var(--s-16); }
.bayi-adimlar li { display: flex; gap: var(--s-12); }
.bayi-adimlar__no {
  flex: none; width: 28px; height: 28px; border-radius: 50%; display: flex; align-items: center; justify-content: center;
  background: var(--brand); color: var(--on-brand); font-weight: var(--fw-strong); font-size: var(--fs-13);
}
.bayi-adimlar b { display: block; font-size: var(--fs-14); color: var(--text-1); }
.bayi-adimlar p { margin: 2px 0 0; font-size: var(--fs-13); color: var(--text-2); }
.bayi-adimlar__btn { width: 100%; justify-content: center; height: 40px; }

@media (max-width: 980px) {
  .bayi-portal .bayi-kpi-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .bayi-iki-kolon { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
  .bayi-portal .bayi-hero { padding: var(--s-20); }
  .bayi-portal .bayi-hero__btn { width: 100%; justify-content: center; }
  .bayi-komisyon__liste { grid-template-columns: 1fr; gap: var(--s-12); }
}

/* ---- Bayi portalı: form bileşeni (e-İmza talebi vb.) ---- */
.bayi-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--s-14, 14px) var(--s-12); }
.bayi-form__alan { display: flex; flex-direction: column; gap: var(--s-4); min-width: 0; }
.bayi-form__alan--tam { grid-column: 1 / -1; }
.bayi-form label { font-size: var(--fs-13); font-weight: var(--fw-medium); color: var(--text-2); }
.bayi-form__ops { font-weight: 400; color: var(--text-3); }
.bayi-form input, .bayi-form select, .bayi-form textarea {
  padding: 0 var(--s-12); height: 40px; border: 1px solid var(--border-2); border-radius: var(--r-md);
  background: var(--surface); color: var(--text-1); font-size: var(--fs-14); font-family: var(--font);
}
.bayi-form textarea { height: auto; padding: var(--s-10) var(--s-12); resize: vertical; line-height: 1.5; }
.bayi-form input:focus, .bayi-form select:focus, .bayi-form textarea:focus {
  outline: none; border-color: var(--brand); box-shadow: 0 0 0 3px var(--brand-ring);
}
.bayi-form__ipucu { margin: 0; font-size: var(--fs-12); color: var(--text-3); }
.bayi-form__aksiyon { display: flex; align-items: center; gap: var(--s-12); flex-wrap: wrap; }
.bayi-form__aksiyon .musavir-btn { height: 40px; padding: 0 var(--s-20); }
.bayi-durum { font-size: var(--fs-13); color: var(--text-2); }
.bayi-durum--ok { color: var(--ok); font-weight: var(--fw-medium); }
.bayi-durum--hata { color: var(--danger); font-weight: var(--fw-medium); }
.bayi-soluk { color: var(--text-3); }
@media (max-width: 560px) { .bayi-form { grid-template-columns: 1fr; } }

/* ---- Bayi e-İmza ürün şeridi ---- */
.bayi-urunler { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: var(--s-12); margin-bottom: var(--s-16); }
.bayi-urun { background: var(--surface); border: 1px solid var(--border); border-radius: var(--r-lg); box-shadow: var(--sh-1); padding: var(--s-16) var(--s-20); }
.bayi-urun__ad { font-size: var(--fs-13); font-weight: var(--fw-medium); color: var(--text-2); }
.bayi-urun__fiyat { font-size: var(--fs-24, 24px); font-weight: var(--fw-strong); color: var(--text-1); margin: 4px 0 6px; letter-spacing: -.01em; }
.bayi-urun__fiyat small { font-size: var(--fs-12); font-weight: 400; color: var(--text-3); }
.bayi-urun__kom { display: inline-block; font-size: var(--fs-13); color: var(--ok); background: var(--ok-soft); border-radius: var(--r-full); padding: 2px 10px; }
.bayi-urun__kom b { font-weight: var(--fw-strong); }

/* ---- Bayi portalı: program kademeleri ve boş durum ---- */
.bayi-program__acik { margin: 0 0 var(--s-16); font-size: var(--fs-14); color: var(--text-2); max-width: 70ch; }
.bayi-kademe { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: var(--s-12); margin-bottom: var(--s-12); }
.bayi-kademe__kart {
  display: flex; flex-direction: column; gap: 2px; padding: var(--s-16); border-radius: var(--r-lg);
  background: linear-gradient(160deg, var(--brand-tint), var(--surface)); border: 1px solid var(--brand-border);
}
.bayi-kademe__aralik { font-size: var(--fs-12); font-weight: var(--fw-medium); color: var(--text-3); text-transform: uppercase; letter-spacing: .04em; }
.bayi-kademe__oran { font-size: var(--fs-30, 30px); font-weight: var(--fw-strong); color: var(--brand-hover); letter-spacing: -.02em; line-height: 1.1; }
.bayi-kademe__alt { font-size: var(--fs-12); color: var(--text-3); }
.bayi-bos .musavir-btn { margin-top: var(--s-12); display: inline-flex; }
.bayi-portal .musavir-tablo-sarici .bayi-bos { padding: var(--s-32, 32px) var(--s-16); }

.bayi-urun__sure { display: inline-block; margin-left: 6px; padding: 1px 8px; border-radius: var(--r-full); font-size: var(--fs-12); font-weight: var(--fw-strong); color: var(--brand-hover); background: var(--brand-soft, var(--brand-tint)); vertical-align: 1px; }
