/* Turquality — Bootstrap 5.3 köprüsü.
   Eski (Bootstrap) ekranlar yeni token'larla, açık ve koyu temada okunur kalsın diye
   Bootstrap değişkenleri tasarım sistemine bağlanır. tokens.css ve components.css
   elle düzenlenmez; ek kurallar buraya yazılır. Renk için yalnız var(--…) kullanılır.
   Tek istisna, Bootstrap'in rgba() içinde istediği "-rgb" üçlüleridir: bunlar
   tokens.css'teki hex değerlerin aynısıdır ve token değişirse burada da güncellenir. */

/* ---------- Bootstrap değişkenleri ---------- */
html[data-theme] {
  --bs-body-font-family: var(--font-sans);
  --bs-body-font-size: 0.875rem;
  --bs-body-line-height: 1.4286;
  --bs-body-bg: var(--bg);
  --bs-body-color: var(--ink);
  --bs-emphasis-color: var(--ink);
  --bs-secondary-color: var(--ink-muted);
  --bs-tertiary-color: var(--ink-muted);
  --bs-secondary-bg: var(--surface-sunken);
  --bs-tertiary-bg: var(--surface-sunken);
  --bs-heading-color: inherit;
  --bs-border-color: var(--line);
  --bs-border-color-translucent: var(--line);
  --bs-border-radius: var(--radius-md);
  --bs-border-radius-sm: var(--radius-sm);
  --bs-border-radius-lg: var(--radius-lg);
  --bs-link-color: var(--primary-text);
  --bs-link-hover-color: var(--primary-hover);
  --bs-focus-ring-color: var(--focus-ring);
  --bs-font-monospace: var(--font-mono);

  --bs-primary: var(--primary);
  --bs-secondary: var(--secondary);
  --bs-success: var(--success);
  --bs-danger: var(--danger);
  --bs-warning: var(--attention-fill);
  --bs-info: var(--external);
  --bs-light: var(--surface-sunken);
  --bs-dark: var(--ink);

  --bs-primary-text-emphasis: var(--primary-text);
  --bs-primary-bg-subtle: var(--primary-soft);
  --bs-primary-border-subtle: var(--primary-soft);
  --bs-secondary-text-emphasis: var(--neutral);
  --bs-secondary-bg-subtle: var(--neutral-soft);
  --bs-secondary-border-subtle: var(--line);
  --bs-success-text-emphasis: var(--success);
  --bs-success-bg-subtle: var(--success-soft);
  --bs-success-border-subtle: var(--success-soft);
  --bs-danger-text-emphasis: var(--danger);
  --bs-danger-bg-subtle: var(--danger-soft);
  --bs-danger-border-subtle: var(--danger-soft);
  --bs-warning-text-emphasis: var(--attention);
  --bs-warning-bg-subtle: var(--attention-soft);
  --bs-warning-border-subtle: var(--attention-soft);
  --bs-info-text-emphasis: var(--external);
  --bs-info-bg-subtle: var(--external-soft);
  --bs-info-border-subtle: var(--external-soft);
  --bs-light-text-emphasis: var(--ink);
  --bs-light-bg-subtle: var(--surface-sunken);
  --bs-dark-text-emphasis: var(--ink);
  --bs-dark-bg-subtle: var(--surface-sunken);
}
/* rgb üçlüleri (tokens.css ile aynı değerler) */
html[data-theme="light"] {
  --bs-primary-rgb: 13, 110, 253;
  --bs-secondary-rgb: 108, 117, 125;
  --bs-success-rgb: 23, 102, 58;
  --bs-danger-rgb: 180, 35, 24;
  --bs-warning-rgb: 196, 119, 0;
  --bs-info-rgb: 11, 102, 112;
  --bs-light-rgb: 236, 238, 242;
  --bs-dark-rgb: 21, 26, 35;
  --bs-body-color-rgb: 21, 26, 35;
  --bs-body-bg-rgb: 244, 245, 247;
  --bs-emphasis-color-rgb: 21, 26, 35;
  --bs-link-color-rgb: 10, 88, 202;
  --bs-link-hover-color-rgb: 11, 94, 215;
  --bs-white-rgb: 255, 255, 255;
  --bs-black-rgb: 21, 26, 35;
}
html[data-theme="dark"] {
  --bs-primary-rgb: 126, 163, 255;
  --bs-secondary-rgb: 160, 169, 184;
  --bs-success-rgb: 111, 211, 148;
  --bs-danger-rgb: 255, 140, 130;
  --bs-warning-rgb: 245, 180, 83;
  --bs-info-rgb: 95, 207, 214;
  --bs-light-rgb: 11, 13, 18;
  --bs-dark-rgb: 231, 234, 240;
  --bs-body-color-rgb: 231, 234, 240;
  --bs-body-bg-rgb: 14, 17, 23;
  --bs-emphasis-color-rgb: 231, 234, 240;
  --bs-link-color-rgb: 126, 163, 255;
  --bs-link-hover-color-rgb: 162, 189, 255;
  /* Koyu temada .bg-white/.text-white yüzeye ve metne döner */
  --bs-white-rgb: 22, 26, 34;
  --bs-black-rgb: 231, 234, 240;
}

/* ---------- Bileşen köprüleri ---------- */
.card {
  --bs-card-bg: var(--surface);
  --bs-card-border-color: var(--line);
  --bs-card-cap-bg: var(--surface-sunken);
  --bs-card-border-radius: var(--radius-lg);
  --bs-card-inner-border-radius: calc(var(--radius-lg) - 1px);
  box-shadow: var(--shadow-1);
}
.table {
  --bs-table-color: var(--ink);
  --bs-table-bg: transparent;
  --bs-table-border-color: var(--line);
  --bs-table-striped-color: var(--ink);
  --bs-table-striped-bg: var(--surface-hover);
  --bs-table-hover-color: var(--ink);
  --bs-table-hover-bg: var(--surface-hover);
  --bs-table-active-bg: var(--primary-soft);
}
.table > thead > tr > th, .table thead th { color: var(--ink-muted); }
.table-light, .table > thead.table-light > tr > th {
  --bs-table-color: var(--ink-muted);
  --bs-table-bg: var(--surface-sunken);
  --bs-table-border-color: var(--line);
}
.table-dark { --bs-table-color: var(--ink); --bs-table-bg: var(--surface-sunken); }

.form-control, .form-select {
  background-color: var(--surface);
  border-color: var(--line-strong);
  color: var(--ink);
  border-radius: var(--radius-md);
}
.form-control::placeholder { color: var(--ink-muted); }
.form-control:focus, .form-select:focus, .form-check-input:focus {
  border-color: var(--primary);
  box-shadow: none;
  outline: 2px solid var(--focus-ring);
  outline-offset: 1px;
}
.form-control:disabled, .form-select:disabled, .form-control[readonly] {
  background-color: var(--surface-sunken);
  color: var(--ink-muted);
}
.form-check-input { background-color: var(--surface); border-color: var(--line-strong); }
.form-check-input:checked { background-color: var(--primary); border-color: var(--primary); }
.input-group-text { background-color: var(--surface-sunken); border-color: var(--line-strong); color: var(--ink-muted); }
.form-text, .text-muted { color: var(--ink-muted) !important; }

.btn { --bs-btn-border-radius: var(--radius-md); --bs-btn-font-weight: 600; }
.btn-primary {
  --bs-btn-bg: var(--primary); --bs-btn-border-color: var(--primary); --bs-btn-color: var(--on-primary);
  --bs-btn-hover-bg: var(--primary-hover); --bs-btn-hover-border-color: var(--primary-hover); --bs-btn-hover-color: var(--on-primary);
  --bs-btn-active-bg: var(--primary-hover); --bs-btn-active-border-color: var(--primary-hover); --bs-btn-active-color: var(--on-primary);
  --bs-btn-disabled-bg: var(--primary); --bs-btn-disabled-border-color: var(--primary); --bs-btn-disabled-color: var(--on-primary);
}
.btn-outline-primary {
  --bs-btn-color: var(--primary-text); --bs-btn-border-color: var(--primary);
  --bs-btn-hover-bg: var(--primary-soft); --bs-btn-hover-color: var(--primary-text); --bs-btn-hover-border-color: var(--primary);
  --bs-btn-active-bg: var(--primary-soft); --bs-btn-active-color: var(--primary-text); --bs-btn-active-border-color: var(--primary);
}
.btn-secondary, .btn-light {
  --bs-btn-bg: var(--surface); --bs-btn-border-color: var(--line-strong); --bs-btn-color: var(--ink);
  --bs-btn-hover-bg: var(--surface-hover); --bs-btn-hover-border-color: var(--line-strong); --bs-btn-hover-color: var(--ink);
  --bs-btn-active-bg: var(--surface-hover); --bs-btn-active-color: var(--ink);
}
.btn-outline-secondary, .btn-outline-dark, .btn-outline-light {
  --bs-btn-color: var(--ink); --bs-btn-border-color: var(--line-strong);
  --bs-btn-hover-bg: var(--surface-hover); --bs-btn-hover-color: var(--ink); --bs-btn-hover-border-color: var(--line-strong);
  --bs-btn-active-bg: var(--surface-hover); --bs-btn-active-color: var(--ink);
}
.btn-success {
  --bs-btn-bg: var(--success); --bs-btn-border-color: var(--success); --bs-btn-color: var(--on-success);
  --bs-btn-hover-bg: var(--success); --bs-btn-hover-border-color: var(--success); --bs-btn-hover-color: var(--on-success);
}
.btn-danger {
  --bs-btn-bg: var(--danger); --bs-btn-border-color: var(--danger); --bs-btn-color: var(--on-danger);
  --bs-btn-hover-bg: var(--danger); --bs-btn-hover-border-color: var(--danger); --bs-btn-hover-color: var(--on-danger);
}
.btn-warning {
  --bs-btn-bg: var(--attention-fill); --bs-btn-border-color: var(--attention-fill); --bs-btn-color: var(--on-attention-fill);
  --bs-btn-hover-bg: var(--attention-fill); --bs-btn-hover-border-color: var(--attention-fill); --bs-btn-hover-color: var(--on-attention-fill);
}
.btn-info {
  --bs-btn-bg: var(--external); --bs-btn-border-color: var(--external); --bs-btn-color: var(--surface);
  --bs-btn-hover-bg: var(--external); --bs-btn-hover-border-color: var(--external); --bs-btn-hover-color: var(--surface);
}
.btn-outline-success { --bs-btn-color: var(--success); --bs-btn-border-color: var(--success); --bs-btn-hover-bg: var(--success-soft); --bs-btn-hover-color: var(--success); --bs-btn-hover-border-color: var(--success); }
.btn-outline-danger { --bs-btn-color: var(--danger); --bs-btn-border-color: var(--danger); --bs-btn-hover-bg: var(--danger-soft); --bs-btn-hover-color: var(--danger); --bs-btn-hover-border-color: var(--danger); }
.btn-outline-warning { --bs-btn-color: var(--attention); --bs-btn-border-color: var(--attention-fill); --bs-btn-hover-bg: var(--attention-soft); --bs-btn-hover-color: var(--attention); --bs-btn-hover-border-color: var(--attention-fill); }
.btn-outline-info { --bs-btn-color: var(--external); --bs-btn-border-color: var(--external); --bs-btn-hover-bg: var(--external-soft); --bs-btn-hover-color: var(--external); --bs-btn-hover-border-color: var(--external); }
.btn-link { --bs-btn-color: var(--primary-text); --bs-btn-hover-color: var(--primary-hover); }

.alert { --bs-alert-border-radius: var(--radius-lg); }
.alert-primary, .alert-info { --bs-alert-bg: var(--primary-soft); --bs-alert-color: var(--primary-text); --bs-alert-border-color: var(--primary-soft); }
.alert-info { --bs-alert-bg: var(--external-soft); --bs-alert-color: var(--external); --bs-alert-border-color: var(--external-soft); }
.alert-success { --bs-alert-bg: var(--success-soft); --bs-alert-color: var(--success); --bs-alert-border-color: var(--success-soft); }
.alert-warning { --bs-alert-bg: var(--attention-soft); --bs-alert-color: var(--attention); --bs-alert-border-color: var(--attention-soft); }
.alert-danger { --bs-alert-bg: var(--danger-soft); --bs-alert-color: var(--danger); --bs-alert-border-color: var(--danger-soft); }
.alert-secondary, .alert-light { --bs-alert-bg: var(--neutral-soft); --bs-alert-color: var(--neutral); --bs-alert-border-color: var(--neutral-soft); }

/* Rozetler: doluluk düz renk, metin kontrastı token'lardan */
.badge { border-radius: var(--radius-sm); font-weight: 600; }
.badge.bg-warning, .badge.text-bg-warning { color: var(--on-attention-fill) !important; }
.badge.bg-light, .badge.text-bg-light { color: var(--ink) !important; }
.badge.bg-info, .badge.text-bg-info { color: var(--surface) !important; }
.bg-light { background-color: var(--surface-sunken) !important; }
.bg-white { background-color: var(--surface) !important; }
.text-dark { color: var(--ink) !important; }
.text-primary { color: var(--primary-text) !important; }
.border, .border-top, .border-bottom, .border-start, .border-end { border-color: var(--line) !important; }

.dropdown-menu {
  --bs-dropdown-bg: var(--surface); --bs-dropdown-color: var(--ink); --bs-dropdown-border-color: var(--line);
  --bs-dropdown-link-color: var(--ink); --bs-dropdown-link-hover-bg: var(--surface-hover); --bs-dropdown-link-hover-color: var(--ink);
  --bs-dropdown-link-active-bg: var(--primary-soft); --bs-dropdown-link-active-color: var(--primary-text);
  box-shadow: var(--shadow-2);
}
.modal { --bs-modal-bg: var(--surface); --bs-modal-color: var(--ink); --bs-modal-border-color: var(--line); --bs-modal-header-border-color: var(--line); --bs-modal-footer-border-color: var(--line); }
.list-group { --bs-list-group-bg: var(--surface); --bs-list-group-color: var(--ink); --bs-list-group-border-color: var(--line); --bs-list-group-action-hover-bg: var(--surface-hover); --bs-list-group-action-hover-color: var(--ink); --bs-list-group-active-bg: var(--primary); --bs-list-group-active-border-color: var(--primary); --bs-list-group-active-color: var(--on-primary); }
.nav-tabs { --bs-nav-tabs-border-color: var(--line); --bs-nav-tabs-link-active-bg: var(--surface); --bs-nav-tabs-link-active-color: var(--primary-text); --bs-nav-tabs-link-active-border-color: var(--line) var(--line) var(--surface); --bs-nav-tabs-link-hover-border-color: var(--line); }
.nav-pills { --bs-nav-pills-link-active-bg: var(--primary); --bs-nav-pills-link-active-color: var(--on-primary); }
.nav-link { --bs-nav-link-color: var(--primary-text); --bs-nav-link-hover-color: var(--primary-hover); }
.pagination { --bs-pagination-color: var(--primary-text); --bs-pagination-bg: var(--surface); --bs-pagination-border-color: var(--line); --bs-pagination-hover-bg: var(--surface-hover); --bs-pagination-hover-color: var(--primary-text); --bs-pagination-hover-border-color: var(--line); --bs-pagination-active-bg: var(--primary); --bs-pagination-active-border-color: var(--primary); --bs-pagination-active-color: var(--on-primary); --bs-pagination-disabled-bg: var(--surface-sunken); --bs-pagination-disabled-color: var(--ink-muted); --bs-pagination-disabled-border-color: var(--line); }
.progress { --bs-progress-bg: var(--surface-sunken); --bs-progress-bar-bg: var(--primary); }
.accordion { --bs-accordion-bg: var(--surface); --bs-accordion-color: var(--ink); --bs-accordion-border-color: var(--line); --bs-accordion-btn-color: var(--ink); --bs-accordion-btn-bg: var(--surface); --bs-accordion-active-bg: var(--primary-soft); --bs-accordion-active-color: var(--primary-text); }
.popover, .tooltip { --bs-popover-bg: var(--surface); --bs-popover-body-color: var(--ink); --bs-popover-border-color: var(--line); }
.breadcrumb { --bs-breadcrumb-item-active-color: var(--ink-muted); --bs-breadcrumb-divider-color: var(--ink-muted); }
hr { color: var(--line); opacity: 1; }
code, kbd { font-family: var(--font-mono); }

/* crispy_tq: zorunlu alan işareti ve hata metni */
.tq-field .asteriskField { color: var(--danger); margin-left: 2px; }
.tq-field.mb-3 { margin-bottom: var(--space-4) !important; }
.tq-field .invalid-feedback.tq-error { display: block; }

/* ---------- İkon boyları ({% icon %} tag'i) ---------- */
.bi { line-height: 1; vertical-align: -0.125em; }
.tq-i-12 { font-size: 12px; } .tq-i-14 { font-size: 14px; } .tq-i-16 { font-size: 16px; }
.tq-i-18 { font-size: 18px; } .tq-i-20 { font-size: 20px; } .tq-i-22 { font-size: 22px; }

/* ---------- Uygulama iskeleti (gerçek sayfa) ---------- */
html, body { height: 100%; }
body { background: var(--bg); color: var(--ink); }
.tq-shell { height: 100vh; height: 100dvh; min-height: 0; }
.tq-shell [hidden] { display: none !important; }
.tq-main:focus { outline: none; }
.tq-brand { text-decoration: none; }
.tq-brand:hover { color: var(--ink); }
.tq-navitem { color: var(--ink); }
.tq-navitem:hover { color: var(--ink); }
.tq-menu-item { text-decoration: none; }
.tq-menu-item:hover { color: var(--ink); }
.tq-menu form { margin: 0; }
.tq-bottomnav { display: none; }
.tq-bottomitem { text-decoration: none; }
.tq-bottomcta a { width: 44px; height: 44px; border-radius: var(--radius-pill); background: var(--primary); color: var(--on-primary); display: inline-flex; align-items: center; justify-content: center; box-shadow: var(--shadow-1); text-decoration: none; }
.tq-search-mobile { display: none; }
.tq-palette-item { text-decoration: none; }
.tq-palette-item:hover { color: var(--ink); }
.tq-skip { position: absolute; left: var(--space-4); top: -48px; z-index: 70; padding: var(--space-2) var(--space-3); background: var(--surface); color: var(--primary-text); border-radius: var(--radius-md); box-shadow: var(--shadow-2); }
.tq-skip:focus { top: var(--space-2); }
.tq-page > .container, .tq-page > .container-fluid { padding-left: 0; padding-right: 0; max-width: none; }
.tq-toast-stack { max-width: calc(100vw - 2 * var(--space-4)); }
.tq-toast { color: var(--ink); }
.tq-dialog-mark-danger { background: var(--danger-soft); color: var(--danger); }
.tq-dialog-mark-primary { background: var(--primary-soft); color: var(--primary-text); }
.tq-dialog .tq-field { margin-top: 0; }

/* Kimlik doğrulama sayfaları (iskeletsiz, ortada tek kart) */
.tq-auth { min-height: 100vh; min-height: 100dvh; display: flex; align-items: flex-start; justify-content: center; padding: var(--space-8) var(--space-4); }
.tq-auth-inner { width: 100%; max-width: 960px; }
[data-theme="dark"] .tq-auth img[src*="ferre_logo"] { filter: brightness(0) invert(1); }

/* ---------- Mobil iskelet (760 px altı) ---------- */
@media (max-width: 760px) {
  .tq-shell { grid-template-columns: 1fr; grid-template-rows: var(--topbar-height) 1fr var(--bottomnav-height); }
  .tq-shell .tq-sidebar { display: none; }
  .tq-shell .tq-topbar { padding: 0 var(--space-2) 0 var(--space-4); gap: var(--space-2); }
  .tq-shell .tq-brand { width: auto; flex: 1; min-width: 0; }
  .tq-shell .tq-brand-sub, .tq-shell .tq-logo-div { display: none; }
  .tq-shell .tq-search { display: none; }
  .tq-shell .tq-search-mobile { display: inline-flex; }
  .tq-shell .tq-help { display: none; }
  .tq-shell .tq-userbtn-text, .tq-shell .tq-userbtn .bi-chevron-down { display: none; }
  .tq-shell .tq-page { padding: var(--space-4); }
  .tq-shell .tq-pagehead h1 { font-size: 20px; line-height: 28px; }
  .tq-shell .tq-notif { right: var(--space-2); left: var(--space-2); width: auto; }
  .tq-shell .tq-menu { right: var(--space-2); }
  .tq-shell .tq-bottomnav { display: flex; }
  .tq-shell .tq-bottomitem { min-height: 44px; }
  .tq-shell .tq-stat-row { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-3); }
  .tq-toast-stack { right: var(--space-4); left: var(--space-4); bottom: calc(var(--bottomnav-height) + var(--space-3)); }
  .tq-toast { width: auto; }
  /* Eski ekranlar: geniş tablolar sayfayı yatay kaydırmaz, kendi kutusunda kayar */
  .tq-page { overflow-x: hidden; }
  .tq-page .table-responsive, .tq-page .tq-table-wrap { overflow-x: auto; }
  .tq-page table:not(.tq-table) { display: block; overflow-x: auto; max-width: 100%; }
  .tq-page .row { --bs-gutter-x: var(--space-4); }
}

/* ---------- İskelet ayrıntıları ---------- */
.tq-nav { display: flex; flex-direction: column; gap: var(--space-4); }
.tq-userbtn-text { display: block; }
.tq-palette-foot-end { margin-left: auto; }
.tq-toast-text { min-width: 0; }
.tq-notif .tq-empty { padding: var(--space-8) var(--space-6); }

/* Marka: logo genişliği değişken; metin taşmaz, arama kutusu kalan alanı alır */
.tq-topbar .tq-brand { width: auto; min-width: calc(var(--sidebar-width) - var(--space-4)); flex: none; }

/* Grid sütunu içerik genişliğiyle büyümesin (yatay taşma olmasın) */
.tq-shell { grid-template-columns: var(--sidebar-width) minmax(0, 1fr); }
@media (max-width: 760px) {
  .tq-shell { grid-template-columns: minmax(0, 1fr); }
  .tq-topbar .tq-brand { min-width: 0; flex: 1; }
  .tq-topbar-end { gap: var(--space-1); }
}

/* Firma ayarları */
.tq-settings-body { display: flex; flex-direction: column; gap: var(--space-3); max-width: 720px; }
.tq-settings-body .tq-hint { margin: 0 0 var(--space-2); }
.tq-switch { display: flex; align-items: center; gap: var(--space-2); margin: 0; padding-left: 0; }
.tq-switch .form-check-input { width: 2.5em; height: 1.25em; margin: 0; }
.tq-settings-actions { display: flex; gap: var(--space-2); margin-top: var(--space-5); flex-wrap: wrap; }
.tq-settings-body .tq-control { max-width: 240px; }

/* ---------- Yeni talep sihirbazı (mockup 06-yeni-talep) ---------- */
.wz { display: flex; flex-direction: column; gap: var(--space-5); }
.wz .tq-pagehead { margin-bottom: 0; }
.wz-saved { font-size: 12px; color: var(--ink-muted); display: inline-flex; align-items: center; gap: 6px; }
.wz-progress { padding: var(--space-4) var(--space-6); }
.wz-mprogress { display: none; flex-direction: column; gap: 6px; }
.wz-mprogress-head { display: flex; justify-content: space-between; font-size: 12px; font-weight: 600; color: var(--ink-muted); }
.wz-mprogress-bar { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); gap: 4px; }
.wz-mseg { height: 4px; border-radius: var(--radius-pill); background: var(--line); }
.wz-mseg-done { background: var(--success); }
.wz-mseg-active { background: var(--primary); }
.wz-layout { display: flex; flex-wrap: wrap; gap: var(--space-5); align-items: flex-start; }
.wz-main, .wz-main-col { flex: 999 1 560px; min-width: 0; display: flex; flex-direction: column; }
.wz-main-col { gap: var(--space-5); }
.wz-aside { flex: 1 1 320px; min-width: 300px; display: flex; flex-direction: column; gap: var(--space-4); }
.wz-head { padding: var(--space-5) var(--space-6); border-bottom: 1px solid var(--line); display: flex; flex-direction: column; gap: 2px; }
.wz-head h2 { margin: 0; font-size: 18px; line-height: 26px; font-weight: 700; }
.wz-stepno { font-size: 12px; font-weight: 600; color: var(--ink-muted); }
.wz-body { padding: var(--space-5) var(--space-6); display: flex; flex-direction: column; gap: var(--space-5); }
.wz-foot { padding: var(--space-4) var(--space-6); border-top: 1px solid var(--line); display: flex; flex-wrap: wrap; gap: var(--space-3); align-items: center; }
.wz-foot-hint { flex: 1; text-align: right; font-size: 13px; font-weight: 600; color: var(--ink-muted); }
.wz-form { display: flex; flex-direction: column; }
.wz-inline-form { display: inline-flex; gap: var(--space-1); margin: 0; }
.wz-fieldset { border: 0; margin: 0; padding: 0; display: flex; flex-direction: column; gap: var(--space-2); min-width: 0; }
.wz-opt { display: flex; gap: var(--space-3); align-items: flex-start; padding: 14px var(--space-4); border-radius: var(--radius-lg); border: 1px solid var(--line); background: var(--surface); cursor: pointer; }
.wz-opt:hover { border-color: var(--line-strong); }
.wz-opt:has(input:checked) { border-color: var(--primary); box-shadow: 0 0 0 1px var(--primary); background: var(--primary-soft); }
.wz-opt-disabled { opacity: .6; cursor: not-allowed; background: var(--surface-sunken); }
.wz-opt input { width: 18px; height: 18px; margin: 2px 0 0; accent-color: var(--primary); flex: none; }
.wz-opt-text { display: flex; flex-direction: column; gap: 2px; }
.wz-hint { font-size: 13px; line-height: 18px; color: var(--ink-muted); }
.wz-cats { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 10px; margin: 0; }
.wz-cat { font: inherit; text-align: left; display: flex; flex-direction: column; gap: 6px; padding: 14px; border-radius: var(--radius-lg); border: 1px solid var(--line); background: var(--surface); color: var(--ink); cursor: pointer; min-height: 96px; }
.wz-cat:hover { border-color: var(--line-strong); }
.wz-cat[aria-pressed="true"] { border-color: var(--primary); box-shadow: 0 0 0 1px var(--primary); background: var(--primary-soft); }
.wz-cat:focus-visible { outline: 2px solid var(--focus-ring); outline-offset: 2px; }
.wz-cat-meta { font-size: 12px; line-height: 16px; font-weight: 600; color: var(--ink-muted); }
.wz-tone-danger { color: var(--danger); }
.wz-tone-attention { color: var(--attention); }
.wz-note { display: flex; gap: var(--space-3); align-items: flex-start; padding: var(--space-3) 14px; border-radius: var(--radius-md); background: var(--surface-sunken); }
.wz-note > .bi { color: var(--primary-text); padding-top: 2px; }
.wz-alert { display: flex; gap: var(--space-3); align-items: flex-start; padding: var(--space-3) 14px; border-radius: var(--radius-md); }
.wz-alert-attention { background: var(--attention-soft); color: var(--ink); }
.wz-alert-attention > .bi { color: var(--attention); padding-top: 2px; }
.wz-alert-danger { background: var(--danger-soft); color: var(--ink); }
.wz-alert-danger > .bi { color: var(--danger); padding-top: 2px; }
.wz-errlist { margin: var(--space-1) 0 0; padding-left: var(--space-5); }
.wz-warn { color: var(--attention); font-weight: 600; margin: 0; }
.wz-grid2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); }
.wz-grid3 { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) minmax(0, 1fr); gap: var(--space-4); }
.wz-grid-amount { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); gap: var(--space-4); align-items: start; }
.wz-radios { display: flex; gap: var(--space-4); align-items: center; min-height: var(--control-height); }
.wz-radio { display: inline-flex; gap: 6px; align-items: center; cursor: pointer; }
.wz-radio input { width: 18px; height: 18px; accent-color: var(--primary); }
.wz-addquote { margin: 0; padding: var(--space-4); border: 1px dashed var(--line-strong); border-radius: var(--radius-lg); }
.tq-file { padding: 6px var(--space-3); height: auto; }
.wz-review { margin: 0; }
.wz-review > div { display: grid; grid-template-columns: 160px minmax(0, 1fr) auto; gap: var(--space-3); align-items: start; padding: var(--space-3) 0; border-bottom: 1px solid var(--line); }
.wz-review dt { font-size: 12px; line-height: 20px; color: var(--ink-muted); }
.wz-review dd { margin: 0; font-weight: 600; }
.wz-panel-body { display: flex; flex-direction: column; gap: 14px; }
.wz-panel-empty { margin: 0; }
.wz-kv { display: flex; flex-direction: column; gap: 2px; }
.wz-k { font-size: 12px; color: var(--ink-muted); }
.wz-sep { height: 1px; background: var(--line); }
.wz-bar-block { display: flex; flex-direction: column; gap: 6px; }
.wz-bar-head { display: flex; justify-content: space-between; font-size: 12px; font-weight: 600; }
.wz-bar { position: relative; display: flex; height: 10px; border-radius: var(--radius-pill); background: var(--surface-sunken); overflow: hidden; }
.wz-bar-seg { display: block; height: 100%; }
.wz-seg-used { background: var(--ink-muted); }
.wz-seg-committed { background: var(--attention-fill); }
.wz-seg-this { background: var(--primary); }
.wz-seg-over { background: var(--danger); }
.wz-legend { margin: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-2); font-size: 12px; }
.wz-legend dt { color: var(--ink-muted); font-weight: 400; }
.wz-legend dd { margin: 0; font-weight: 600; }
.wz-docs { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 6px; font-size: 13px; line-height: 18px; }
.wz-docs li { display: flex; gap: var(--space-2); align-items: flex-start; }
.wz-doc-skip { color: var(--ink-muted); }
.wz-doc-skip span { text-decoration: line-through; }
.wz-dl { margin: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-3) var(--space-4); }
.wz-dl dt { font-size: 12px; color: var(--ink-muted); }
.wz-dl dd { margin: 0; font-weight: 600; }
.wz-dl-wide { grid-column: 1 / -1; }
.wz-quote-mini { margin: var(--space-3) 0 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 6px; }
.wz-quote-mini li { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.wz-decision-card { margin-bottom: var(--space-5); }
.wz-main-col .wz-decision-card { margin-bottom: 0; }
.wz-crumb { margin: 0 0 var(--space-1); font-size: 13px; }
.wz-next { border-color: var(--primary); background: var(--primary-soft); }
.wz-next-title { margin: 2px 0 var(--space-2); font-size: 18px; line-height: 26px; font-weight: 700; }
.wz-decide { display: flex; flex-direction: column; gap: var(--space-3); margin-top: var(--space-3); }
.wz-decide-actions { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.wz-start { max-width: 640px; }
.wz-done { max-width: 760px; }
.wz-done-body { display: flex; flex-direction: column; gap: var(--space-5); padding: var(--space-8); }
.wz-done-mark { width: 48px; height: 48px; border-radius: var(--radius-pill); display: inline-flex; align-items: center; justify-content: center; }
.wz-done-ref { display: flex; gap: 10px; align-items: center; color: var(--ink-muted); }
.wz-done-title { margin: var(--space-1) 0; font-size: 22px; line-height: 30px; font-weight: 700; }
.wz-done-text p { margin: 0 0 var(--space-1); }
.wz-done-actions { display: flex; flex-wrap: wrap; gap: var(--space-2); }

@media (max-width: 760px) {
  .wz-progress { display: none; }
  .wz-mprogress { display: flex; }
  .wz-aside { min-width: 0; flex-basis: 100%; }
  .wz-main { flex-basis: 100%; }
  .wz-head, .wz-body { padding-left: var(--space-4); padding-right: var(--space-4); }
  .wz-grid2, .wz-grid3 { grid-template-columns: minmax(0, 1fr); }
  .wz-cats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .wz-review > div { grid-template-columns: minmax(0, 1fr) auto; }
  .wz-review dt { grid-column: 1 / -1; }
  /* Mobil: eylem çubuğu ekranın altında sabit (mockup Mobil.dc.html) */
  .wz-foot { position: sticky; bottom: 0; z-index: 2; background: var(--surface); padding: var(--space-3) var(--space-4); }
  .wz-foot-hint { display: none; }
  .wz-foot .tq-btn { flex: 1; }
  .wz-done-body { padding: var(--space-5); }
}

/* ── İş Kutum (komut 06 · templates/dashboard/inbox.html) ───────────────── */
.ik-page { display: flex; flex-direction: column; gap: var(--space-5); }
.ik-head { margin-bottom: 0; align-items: flex-end; }
.ik-head-actions { flex-wrap: wrap; }
.ik-date { font-size: 12px; line-height: 16px; font-weight: 600; color: var(--ink-muted); }
.ik-late-text { color: var(--danger); }
.ik-firm { display: inline-flex; gap: var(--space-2); margin: 0; }
.ik-firm .tq-control { min-width: 200px; }
.ik-cols { display: flex; flex-wrap: wrap; gap: var(--space-6); align-items: flex-start; }
.ik-main { flex: 3 1 640px; min-width: 0; display: flex; flex-direction: column; gap: var(--space-4); }
.ik-side { flex: 1 1 320px; min-width: 0; display: flex; flex-direction: column; gap: var(--space-4); }
.tq-tab[aria-current="page"] { color: var(--primary-text); border-bottom-color: var(--primary); }
a.tq-tab { text-decoration: none; }
.ik-group { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-lg); overflow: hidden; }
.ik-group-head { margin: 0; font-size: inherit; line-height: inherit; }
.ik-group-toggle { display: flex; align-items: center; gap: 10px; padding: var(--space-3) var(--space-4); color: var(--ink); text-decoration: none; background: var(--surface-sunken); }
.ik-group-toggle:hover { background: var(--surface-hover); color: var(--ink); }
.ik-group-toggle:focus-visible { outline: 2px solid var(--focus-ring); outline-offset: -2px; }
.ik-group-toggle[aria-expanded="false"] .ik-chev { transform: rotate(-90deg); }
.ik-chev { display: inline-flex; transition: transform .12s ease; }
.ik-group-title { display: inline-flex; align-items: center; gap: var(--space-2); font-weight: 700; }
.ik-tone-late .ik-group-title { color: var(--danger); }
.ik-tone-soon .ik-group-title { color: var(--attention); }
.ik-group-hint { margin-left: auto; font-size: 12px; font-weight: 400; color: var(--ink-muted); }
.ik-colhead, .ik-row { display: grid; grid-template-columns: minmax(200px, 1.5fr) minmax(170px, 1.2fr) 180px 130px 140px auto; column-gap: var(--space-4); align-items: center; }
.ik-colhead { padding: var(--space-2) var(--space-4); font-size: 12px; line-height: 16px; font-weight: 600; color: var(--ink-muted); border-bottom: 1px solid var(--line); }
.ik-list { list-style: none; margin: 0; padding: 0; }
.ik-item { padding: 14px var(--space-4); border-bottom: 1px solid var(--line); }
.ik-item:last-child { border-bottom: 0; }
.ik-next { background: var(--primary-soft); }
.ik-row { row-gap: var(--space-2); }
.ik-row > div { min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.ik-ref { display: flex; flex-wrap: wrap; gap: var(--space-2); align-items: center; font-size: 12px; color: var(--ink-muted); }
.ik-title { color: var(--ink); text-decoration: none; font-weight: 700; overflow-wrap: anywhere; }
.ik-title:hover { color: var(--primary-text); text-decoration: underline; }
.ik-action { font-weight: 600; }
.ik-c-money, .ik-c-btn { align-items: flex-end; }
.ik-detail { display: flex; flex-direction: column; gap: var(--space-3); margin-top: var(--space-3); padding-top: var(--space-3); border-top: 1px solid var(--line); }
.ik-facts { margin: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-3); }
.ik-facts dt { font-size: 12px; color: var(--ink-muted); font-weight: 400; }
.ik-facts dd { margin: 0; font-weight: 600; }
.ik-note { display: flex; gap: 10px; align-items: flex-start; padding: 10px var(--space-3); border-radius: var(--radius-md); background: var(--attention-soft); }
.ik-note > .bi { color: var(--attention); padding-top: 2px; }
.ik-note p { margin: 2px 0 0; }
.ik-planned { margin-top: var(--space-3); display: flex; flex-direction: column; gap: var(--space-2); }
.ik-planned p { margin: 0; }
.ik-planned-actions { display: flex; flex-wrap: wrap; gap: var(--space-2); align-items: center; }
.ik-planned-actions form { margin: 0; display: inline-flex; gap: var(--space-2); align-items: center; }
.ik-postpone .tq-control { width: auto; height: 32px; }
.ik-decisions .ik-item { background: var(--surface); }
.ik-links, .ik-watch-list, .ik-activity, .ik-limits { list-style: none; margin: 0; padding: 0; }
.ik-links a { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-3) var(--space-5); color: var(--ink); text-decoration: none; border-bottom: 1px solid var(--line); }
.ik-links li:last-child a { border-bottom: 0; }
.ik-links a:hover { background: var(--surface-hover); }
.ik-links a > span:not(.tq-count) { flex: 1; display: flex; flex-direction: column; }
.ik-watch-list li { display: flex; flex-direction: column; gap: 4px; padding: var(--space-3) var(--space-5); border-bottom: 1px solid var(--line); }
.ik-watch-list li:last-child { border-bottom: 0; }
.ik-watch-top, .ik-watch-foot { display: flex; align-items: center; justify-content: space-between; gap: var(--space-2); }
.ik-watch-top .tq-mono { font-size: 12px; color: var(--ink-muted); }
.ik-watch-foot form { margin: 0; }
.ik-activity li { display: flex; gap: var(--space-3); padding: 10px var(--space-5); border-bottom: 1px solid var(--line); font-size: 13px; line-height: 18px; }
.ik-activity li:last-child { border-bottom: 0; }
.ik-activity li > span:last-child { display: flex; flex-direction: column; }
.ik-time { flex: none; width: 40px; color: var(--ink-muted); font-variant-numeric: tabular-nums; }
.ik-act-ref { font-size: 12px; }
.ik-limits { display: flex; flex-direction: column; gap: var(--space-4); }
.ik-limits li { display: flex; flex-direction: column; gap: 6px; }
.ik-limit-head { display: flex; justify-content: space-between; gap: var(--space-2); font-weight: 600; }
.ik-pct-danger { color: var(--danger); }
.ik-pct-attention { color: var(--attention); }
.ik-budget { display: flex; flex-direction: column; gap: var(--space-3); }
.ik-ask { display: flex; gap: var(--space-3); align-items: flex-start; padding: var(--space-4) var(--space-5); background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-lg); }
.ik-ask > .bi { color: var(--primary-text); padding-top: 2px; }
.ik-ask p { margin: var(--space-1) 0 var(--space-2); }
.ik-empty-line { margin: 0; padding: var(--space-4) var(--space-5); }

/* Satır düzeni ana sütunun genişliğine göre (container query) */
.ik-main { container-type: inline-size; }
.ik-c-title { grid-area: t; } .ik-c-action { grid-area: a; } .ik-c-status { grid-area: s; }
.ik-c-sla { grid-area: l; } .ik-c-money { grid-area: m; } .ik-c-btn { grid-area: b; }
.ik-row { grid-template-areas: "t a s l m b"; }
.ik-c-status .tq-badge { white-space: normal; }
@container (max-width: 1000px) {
  .ik-colhead { display: none; }
  .ik-row { grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) auto; grid-template-areas: "t s m" "a l b"; align-items: start; }
  .ik-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@container (max-width: 560px) {
  .ik-row { grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "t t" "a a" "s l" "b b"; }
  .ik-row > .ik-c-money { display: none; }
  .ik-c-sla { align-items: flex-end; }
  .ik-c-btn { align-items: stretch; }
  .ik-c-btn .tq-btn { justify-content: center; }
  .ik-item:not(.ik-next) .ik-c-btn { display: none; }
  .ik-next .ik-c-btn .tq-btn { height: 44px; }
  .ik-facts { grid-template-columns: minmax(0, 1fr); }
}

/* Mobil (390 px): sıradaki iş tek kart ve büyük birincil buton; diğerleri kart listesi */
@media (max-width: 760px) {
  .ik-head { flex-direction: column; align-items: stretch; }
  .ik-head-actions { justify-content: flex-start; }
  .ik-firm, .ik-firm .tq-control { width: 100%; min-width: 0; }
  .ik-cols { gap: var(--space-4); }
  .ik-main, .ik-side { flex-basis: 100%; }
  .ik-group-hint { display: none; }
  .ik-detail .tq-steps { overflow-x: auto; }
  .ik-postpone { flex-wrap: wrap; }
}

/* ── Talep detayı (komut 07 · templates/expenses/detail.html) ───────────── */
.td-page { display: flex; flex-direction: column; gap: var(--space-5); }
.td-narrow { max-width: 720px; display: flex; flex-direction: column; gap: var(--space-4); }
.td-crumb { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; font-size: 13px; color: var(--ink-muted); }
.td-crumb .bi { color: var(--ink-subtle, var(--ink-muted)); }
.td-head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; gap: var(--space-4); }
.td-head-main { min-width: 0; flex: 1 1 480px; display: flex; flex-direction: column; gap: 6px; }
.td-head-ref { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; color: var(--ink-muted); }
.td-title-row { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); }
.td-title-row h1 { margin: 0; font-size: 24px; line-height: 32px; font-weight: 700; overflow-wrap: anywhere; }
.td-edit-title { flex-basis: 100%; }
.td-meta { margin: 0; color: var(--ink-muted); }
.td-meta strong { color: var(--ink); }
.td-head-actions { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.td-process { overflow: hidden; }
.td-steps { padding: var(--space-5) var(--space-5) var(--space-4); overflow-x: auto; }
.td-panel { display: flex; flex-direction: column; gap: var(--space-3); padding: var(--space-4) var(--space-5) var(--space-5); border-top: 1px solid var(--line); }
.td-panel:focus { outline: none; }
.td-panel-mine { background: var(--primary-soft); }
.td-panel-revision { background: var(--attention-soft); }
.td-panel-external { background: var(--external-soft); }
.td-panel-idle { background: var(--surface-sunken); }
.td-panel-text { display: flex; flex-direction: column; gap: var(--space-1); }
.td-panel-text p { margin: 0; max-width: 72ch; }
.td-panel-label { font-size: 12px; line-height: 16px; font-weight: 700; letter-spacing: .02em; color: var(--primary-text); }
.td-panel-revision .td-panel-label { color: var(--attention); }
.td-panel-external .td-panel-label { color: var(--external); }
.td-panel-idle .td-panel-label { color: var(--ink-muted); }
.td-panel-title { margin: 0; font-size: 18px; line-height: 26px; font-weight: 700; }
.td-panel-sla { margin-top: var(--space-1); }
.td-note { background: var(--surface); margin-top: var(--space-2); max-width: 72ch; }
.td-actions { display: flex; flex-wrap: wrap; gap: var(--space-2); align-items: flex-start; }
.td-act-form { margin: 0; display: inline-flex; }
.td-act-off { display: inline-flex; flex-direction: column; gap: 2px; }
.td-verify { display: flex; flex-direction: column; gap: 6px; max-width: 520px; }
.td-verify-head { display: flex; justify-content: space-between; font-size: 13px; font-weight: 600; }
.td-seg-ok { background: var(--success); }
.td-decide { max-width: 640px; margin-top: 0; }
.td-cols { display: flex; flex-wrap: wrap; gap: var(--space-6); align-items: flex-start; }
.td-main { flex: 3 1 600px; min-width: 0; display: flex; flex-direction: column; gap: var(--space-5); }
.td-side { flex: 1 1 340px; min-width: 0; display: flex; flex-direction: column; gap: var(--space-4); }
.td-docgroup + .td-docgroup { border-top: 1px solid var(--line); }
.td-docgroup-head { margin: 0; display: flex; justify-content: space-between; gap: var(--space-2); padding: 10px var(--space-5); background: var(--surface-sunken); font-size: 13px; line-height: 18px; font-weight: 700; }
.td-doclist { list-style: none; margin: 0; padding: 0; }
.td-doc { display: grid; grid-template-columns: 36px minmax(0, 1fr) auto auto; column-gap: var(--space-3); row-gap: var(--space-2); align-items: center; padding: var(--space-3) var(--space-5); border-top: 1px solid var(--line); }
.td-doc:first-child { border-top: 0; }
.td-doc-icon { width: 36px; height: 36px; border-radius: var(--radius-md); background: var(--surface-sunken); color: var(--ink-muted); display: inline-flex; align-items: center; justify-content: center; }
.td-doc-text { display: flex; flex-direction: column; min-width: 0; }
.td-doc-name { font-weight: 600; overflow-wrap: anywhere; }
.td-doc-actions { display: flex; flex-wrap: wrap; gap: var(--space-1); justify-content: flex-end; }
.td-doc > .tq-badge { justify-self: start; }
.td-feed { display: flex; flex-direction: column; gap: var(--space-4); }
.td-feedlist { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: var(--space-4); }
.td-feedlist li { display: flex; gap: var(--space-3); align-items: flex-start; }
.td-feed-body { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.td-feed-who { display: flex; flex-wrap: wrap; gap: var(--space-2); align-items: center; }
.td-feed-text { overflow-wrap: anywhere; }
.td-feed-detail { white-space: normal; }
.td-feed-empty { margin: 0; }
.td-comment { display: flex; flex-direction: column; gap: var(--space-2); padding-top: var(--space-4); border-top: 1px solid var(--line); }
.td-comment-foot { display: flex; justify-content: space-between; align-items: center; gap: var(--space-3); }
.td-rows { display: flex; flex-direction: column; gap: 0; }
.td-row { display: grid; grid-template-columns: 128px minmax(0, 1fr) auto; column-gap: var(--space-3); align-items: center; padding: var(--space-2) 0; border-bottom: 1px solid var(--line); min-height: 40px; }
.td-row:last-child { border-bottom: 0; }
.td-k { font-size: 12px; line-height: 16px; color: var(--ink-muted); }
.td-v { min-width: 0; font-weight: 600; overflow-wrap: anywhere; }
.td-pen { grid-column: 3; }
.td-edit { grid-column: 1 / -1; display: flex; flex-direction: column; gap: var(--space-3); padding: var(--space-3) 0 var(--space-1); }
.td-edit[hidden] { display: none; }
.td-row.td-editing .td-v, .td-row.td-editing .td-pen, .td-title-row.td-editing h1, .td-title-row.td-editing .td-pen { display: none; }
.td-edit-actions { display: flex; gap: var(--space-2); }
.td-edit-page { display: flex; flex-direction: column; gap: var(--space-4); }
.td-desc { padding: var(--space-3) 0 0; display: flex; flex-direction: column; gap: 2px; }
.td-desc p { margin: 0; }
.td-people { list-style: none; margin: 0; padding: 0; }
.td-people li { display: flex; gap: var(--space-3); align-items: flex-start; padding: var(--space-3) var(--space-5); border-top: 1px solid var(--line); }
.td-people li:first-child { border-top: 0; }
.td-person { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.td-person-actions { display: flex; flex-wrap: wrap; gap: var(--space-1); margin-top: var(--space-1); }
.td-budget { margin-top: var(--space-4); }

/* Mobil: adımlar dikey, belge satırı iki sütun */
@media (max-width: 760px) {
  .td-head-actions { width: 100%; }
  .td-title-row h1 { font-size: 20px; line-height: 28px; }
  .td-steps { padding: var(--space-4); }
  .td-steps .tq-steps { flex-direction: column; gap: 0; }
  .td-steps .tq-step { display: grid; grid-template-columns: 32px 1fr; column-gap: var(--space-3); text-align: left; padding: 0 0 var(--space-4); }
  .td-steps .tq-step::before { top: 34px; bottom: 2px; left: 15px; right: auto; width: 2px; height: auto; }
  .td-steps .tq-step:first-child::before { display: block; }
  .td-steps .tq-step:last-child::before { display: none; }
  .td-steps .tq-step[data-state]::before { background: var(--line); }
  .td-steps .tq-step[data-state="done"]::before { background: var(--success); }
  .td-steps .tq-step-label { margin-top: 6px; }
  .td-panel { padding: var(--space-4); }
  .td-actions > .tq-btn, .td-actions > .td-act-form, .td-actions > .td-act-form .tq-btn { width: 100%; justify-content: center; }
  .td-main, .td-side { flex-basis: 100%; }
  .td-doc { grid-template-columns: 36px minmax(0, 1fr); padding: var(--space-3) var(--space-4); }
  .td-doc > .tq-badge, .td-doc-actions { grid-column: 2; justify-content: flex-start; }
  .td-docgroup-head { padding: 10px var(--space-4); }
  .td-row { grid-template-columns: 104px minmax(0, 1fr) auto; }
}

/* ── Belge yükleme (komut 08 · templates/expenses/upload.html) ──────────── */
.up-page { display: flex; flex-direction: column; gap: var(--space-4); }
.up-strip { align-items: flex-start; }
.up-strip > span { display: flex; flex-direction: column; gap: 2px; }
.up-strip-list { color: var(--ink-muted); }
.up-cols { display: flex; flex-wrap: wrap; gap: var(--space-6); align-items: flex-start; }
.up-main { flex: 3 1 560px; min-width: 0; display: flex; flex-direction: column; gap: var(--space-4); margin: 0; }
.up-side { flex: 1 1 320px; min-width: 0; display: flex; flex-direction: column; gap: var(--space-3); }
.up-drop-card .tq-card-body { display: flex; flex-direction: column; gap: var(--space-4); }
.up-drop { display: flex; flex-direction: column; align-items: center; text-align: center; gap: var(--space-2); padding: var(--space-6) var(--space-4); border: 2px dashed var(--line-strong); border-radius: var(--radius-lg); background: var(--surface); }
.up-drop.up-drag { border-color: var(--primary); background: var(--primary-soft); }
.up-drop-icon { width: 44px; height: 44px; border-radius: var(--radius-pill); background: var(--primary-soft); color: var(--primary-text); display: inline-flex; align-items: center; justify-content: center; }
.up-drop-buttons { display: flex; flex-wrap: wrap; gap: var(--space-2); justify-content: center; margin-top: var(--space-1); }
.up-pick { cursor: pointer; }
.up-pick-camera, .up-pick-mobile { display: none; }
.up-input-camera { display: none; }
.up-drop:focus-within .up-pick { outline: 2px solid var(--focus-ring); outline-offset: 2px; }
/* JS varken giriş alanları görünmez (etiket düğmeleri kullanılır), klasik tür seçimi gizlenir */
.up-js .up-input { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.up-js .up-classic { display: none; }
.up-busy [data-up-staged] { opacity: .6; }
.up-list { list-style: none; margin: 0; padding: 0; }
.up-file { display: grid; grid-template-columns: 40px minmax(0, 1fr) minmax(160px, 220px) auto; gap: var(--space-3); align-items: center; padding: var(--space-3) var(--space-5); border-top: 1px solid var(--line); }
.up-file:first-child { border-top: 0; }
.up-file-error { background: var(--danger-soft); }
.up-file-icon { width: 40px; height: 40px; border-radius: var(--radius-md); background: var(--surface-sunken); color: var(--ink-muted); display: inline-flex; align-items: center; justify-content: center; overflow: hidden; }
.up-file-error .up-file-icon { color: var(--danger); background: var(--surface); }
.up-has-preview .up-file-icon > .bi { display: none; }
.up-file-icon img { width: 100%; height: 100%; object-fit: cover; }
.up-file-text { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.up-file-name { font-weight: 600; overflow-wrap: anywhere; }
.up-file-msg { font-size: 13px; line-height: 18px; color: var(--ink-muted); display: inline-flex; gap: 4px; align-items: baseline; }
.up-file-error .up-file-msg { color: var(--danger); font-weight: 600; }
.up-file-unmatched .up-file-msg, .up-file-dup .up-file-msg { color: var(--attention); font-weight: 600; }
.up-file-error > :last-child:not(.up-file-text), .up-file-lock > :last-child:not(.up-file-text) { grid-column: 4; }
.up-pair-body { display: flex; flex-direction: column; gap: var(--space-3); }
.up-checks { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
.up-checks li { display: flex; gap: var(--space-2); align-items: flex-start; }
.up-check-success > .bi { color: var(--success); padding-top: 2px; }
.up-check-attention > .bi { color: var(--attention); padding-top: 2px; }
.up-foot { display: flex; justify-content: flex-end; align-items: center; gap: var(--space-3); position: sticky; bottom: 0; padding: var(--space-3) 0; background: var(--bg); }
.up-foot-hint { color: var(--ink-muted); font-size: 13px; }
.up-foot-warn { color: var(--attention); font-weight: 600; }
.up-req-bar { padding: var(--space-3) var(--space-5) var(--space-4); }
.up-req-list { list-style: none; margin: 0; padding: 0; }
.up-req { display: grid; grid-template-columns: 20px minmax(0, 1fr) auto; gap: var(--space-2); align-items: start; padding: 10px var(--space-5); border-top: 1px solid var(--line); }
.up-req:first-child { border-top: 0; }
.up-req-text { display: flex; flex-direction: column; min-width: 0; }
.up-req-name { font-weight: 600; overflow-wrap: anywhere; }
.up-req-icon { padding-top: 2px; color: var(--ink-muted); }
.up-req-done .up-req-icon { color: var(--success); }
.up-req-waiting .up-req-icon, .up-req-others .up-req-icon { color: var(--attention); }
.up-photo-hint { margin: 0; }

@media (max-width: 760px) {
  .up-main, .up-side { flex-basis: 100%; }
  .up-drop { padding: var(--space-5) var(--space-3); }
  .up-drop-buttons { width: 100%; flex-direction: column; }
  .up-drop-buttons .tq-btn { width: 100%; justify-content: center; height: 48px; }
  .up-pick-camera, .up-pick-mobile { display: inline-flex; }
  .up-pick-desktop { display: none; }
  .up-input-camera { display: block; }
  .up-js .up-input-camera { display: block; }
  .up-file { grid-template-columns: 56px minmax(0, 1fr) auto; padding: var(--space-3) var(--space-4); }
  .up-file-icon { width: 56px; height: 56px; }
  .up-file-select { grid-column: 1 / -1; }
  .up-foot .tq-btn { flex: 1; justify-content: center; }
  .up-foot { flex-direction: column; align-items: stretch; }
}

/* ── Talep listesi (komut 09 · templates/expenses/list.html) ───────────── */
.tl-page { display: flex; flex-direction: column; gap: var(--space-4); }
.tl-page .tq-pagehead { margin-bottom: 0; }
.tl-views { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.tl-view { display: inline-flex; align-items: center; gap: var(--space-2); height: 36px; padding: 0 var(--space-3); border-radius: var(--radius-pill); border: 1px solid var(--line); background: var(--surface); color: var(--ink); font-weight: 600; text-decoration: none; white-space: nowrap; }
.tl-view:hover { border-color: var(--line-strong); color: var(--ink); }
.tl-view[aria-current="page"] { background: var(--primary-soft); border-color: var(--primary); color: var(--primary-text); }
.tl-view:focus-visible, .tl-chip:focus-visible, .tl-pnum:focus-visible { outline: 2px solid var(--focus-ring); outline-offset: 2px; }
.tl-filter-panel > summary { display: none; }
.tl-filters { display: flex; flex-wrap: wrap; gap: var(--space-2); align-items: center; margin: 0; }
.tl-search { flex: 1 1 280px; display: flex; align-items: center; gap: var(--space-2); height: 36px; padding: 0 var(--space-3); border: 1px solid var(--line-strong); border-radius: var(--radius-md); background: var(--surface); color: var(--ink-muted); }
.tl-search:focus-within { outline: 2px solid var(--focus-ring); outline-offset: 1px; }
.tl-search input { flex: 1; min-width: 0; border: 0; background: none; font: inherit; color: var(--ink); outline: none; }
.tl-ctl { width: auto; height: 36px; min-width: 150px; }
.tl-chips { display: flex; flex-wrap: wrap; gap: var(--space-2); align-items: center; }
.tl-chip { display: inline-flex; align-items: center; gap: 6px; height: 28px; padding: 0 6px 0 10px; border-radius: var(--radius-pill); background: var(--surface-sunken); color: var(--ink); font-size: 13px; text-decoration: none; }
.tl-chip:hover { background: var(--line); color: var(--ink); }
.tl-save { display: inline-block; }
.tl-save > summary { list-style: none; }
.tl-save > summary::-webkit-details-marker { display: none; }
.tl-save[open] > summary { display: none; }
.tl-save-form { display: inline-flex; gap: var(--space-2); align-items: center; margin: 0; }
.tl-form { margin: 0; display: flex; flex-direction: column; gap: var(--space-3); }
.tl-bulk { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); padding: var(--space-2) var(--space-4); border-radius: var(--radius-lg); background: var(--primary-soft); border: 1px solid var(--primary); }
.tl-bulk-space { flex: 1; }
.tl-js .tl-bulk[hidden] { display: none; }
.tl-sel { width: 40px; }
.tl-sel input { width: 18px; height: 18px; accent-color: var(--primary); }
.tl-ref { display: flex; gap: var(--space-2); align-items: center; font-size: 12px; color: var(--ink-muted); }
.tl-title { display: block; color: var(--ink); text-decoration: none; font-weight: 700; overflow-wrap: anywhere; }
.tl-title:hover { color: var(--primary-text); text-decoration: underline; }
.tl-table td { vertical-align: top; }
.tl-owner { font-weight: 600; }
.tl-owner-mine { color: var(--primary-text); }
.tl-mine { background: var(--primary-soft); }
.tl-mine:hover { background: var(--primary-soft); }
.tl-cards { display: none; list-style: none; margin: 0; padding: 0; }
.tl-card { display: flex; flex-direction: column; gap: 4px; padding: var(--space-3) var(--space-4); border-top: 1px solid var(--line); }
.tl-card:first-child { border-top: 0; }
.tl-card-top, .tl-card-foot { display: flex; justify-content: space-between; align-items: center; gap: var(--space-2); }
.tl-card-top .tq-mono { font-size: 12px; color: var(--ink-muted); }
.tl-card-foot { font-size: 13px; color: var(--ink-muted); }
.tl-card-foot strong { color: var(--ink); }
.tl-pager { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: var(--space-3); }
.tl-pages { display: flex; gap: var(--space-1); align-items: center; }
.tl-pnum { display: inline-flex; align-items: center; justify-content: center; min-width: 36px; height: 36px; padding: 0 var(--space-2); border-radius: var(--radius-md); border: 1px solid var(--line); background: var(--surface); color: var(--ink); font-weight: 600; text-decoration: none; }
.tl-pnum[aria-current="page"] { background: var(--primary); border-color: var(--primary); color: var(--on-primary); }
.tl-gap { color: var(--ink-muted); padding: 0 var(--space-1); }

@media (max-width: 760px) {
  .tl-views { flex-wrap: nowrap; overflow-x: auto; padding-bottom: var(--space-1); }
  .tl-filter-panel > summary { display: inline-flex; list-style: none; }
  .tl-filter-panel > summary::-webkit-details-marker { display: none; }
  .tl-filter-panel[open] .tl-filters { margin-top: var(--space-3); padding: var(--space-4); border: 1px solid var(--line); border-radius: var(--radius-lg); background: var(--surface); box-shadow: var(--shadow-2, none); }
  .tl-filters > * { flex-basis: 100%; }
  .tl-ctl { width: 100%; }
  .tl-wrap { display: none; }
  .tl-cards { display: block; }
  .tl-bulk { display: none; }
}

/* ── Uzman inceleme (komut 10 · templates/expenses/review/) ─────────────── */
.rv-page { display: flex; flex-direction: column; gap: var(--space-4); }
.rv-page:focus { outline: none; }
.rv-queue { display: flex; flex-wrap: wrap; justify-content: space-between; gap: var(--space-2); padding: 10px var(--space-4); border-radius: var(--radius-lg); background: var(--primary-soft); color: var(--primary-text); font-weight: 600; }
.rv-queue > span { display: inline-flex; align-items: center; gap: var(--space-2); }
.rv-title { margin: 0; font-size: 22px; line-height: 30px; font-weight: 700; }
.rv-cols { display: flex; flex-wrap: wrap; gap: var(--space-6); align-items: flex-start; }
.rv-main { flex: 3 1 520px; min-width: 0; display: flex; flex-direction: column; gap: var(--space-4); }
.rv-side { flex: 1 1 340px; min-width: 0; display: flex; flex-direction: column; gap: var(--space-4); }
.rv-req p { margin: 0 0 var(--space-3); }
.rv-checks { list-style: none; margin: 0; padding: 0; }
.rv-checks li { display: flex; gap: var(--space-3); align-items: flex-start; padding: var(--space-3) var(--space-5); border-top: 1px solid var(--line); }
.rv-checks li:first-child { border-top: 0; }
.rv-check-text { flex: 1; display: flex; flex-direction: column; gap: 2px; }
.rv-check-text span { color: var(--ink-muted); font-size: 13px; line-height: 18px; }
.rv-form { display: flex; flex-direction: column; gap: var(--space-4); }
.rv-when[hidden] { display: none; }
.rv-result-body { display: flex; flex-direction: column; gap: var(--space-2); align-items: flex-start; }
.rv-progress { flex: 0 1 320px; display: flex; flex-direction: column; gap: 6px; }
.rv-issue-text { color: var(--danger); }
.rv-three { display: grid; grid-template-columns: 240px minmax(0, 1fr) 340px; gap: var(--space-4); align-items: start; }
.rv-docs ul { list-style: none; margin: 0; padding: 0; }
.rv-doc { display: flex; gap: var(--space-2); align-items: flex-start; padding: 10px var(--space-3); border-top: 1px solid var(--line); color: var(--ink); text-decoration: none; }
.rv-docs li:first-child .rv-doc { border-top: 0; }
.rv-doc:hover { background: var(--surface-hover); color: var(--ink); }
.rv-doc-current { background: var(--primary-soft); box-shadow: inset 3px 0 0 var(--primary); }
.rv-doc-icon { padding-top: 2px; color: var(--ink-muted); }
.rv-doc-verified { color: var(--success); }
.rv-doc-issue { color: var(--danger); }
.rv-doc-text { display: flex; flex-direction: column; min-width: 0; }
.rv-doc-name { font-weight: 600; font-size: 13px; line-height: 18px; overflow-wrap: anywhere; }
.rv-preview-head { display: flex; justify-content: space-between; align-items: center; gap: var(--space-2); padding: var(--space-3) var(--space-4); border-bottom: 1px solid var(--line); }
.rv-preview-title { display: flex; flex-direction: column; min-width: 0; }
.rv-preview-tools { display: flex; gap: var(--space-1); align-items: center; }
.rv-preview-body { padding: var(--space-3); background: var(--surface-sunken); min-height: 480px; }
.rv-pdf { display: flex; flex-direction: column; gap: var(--space-2); align-items: center; }
.rv-pdf-tools { display: flex; gap: var(--space-2); align-items: center; }
.rv-pdf-tools[hidden] { display: none; }
.rv-pdf-sep { width: 1px; height: 20px; background: var(--line-strong); }
.rv-pdf canvas { max-width: 100%; box-shadow: var(--shadow-1); background: var(--surface); }
.rv-frame { width: 100%; height: 640px; border: 0; background: var(--surface); }
.rv-image { display: block; max-width: 100%; margin: 0 auto; box-shadow: var(--shadow-1); }
.rv-xml { background: var(--surface); padding: var(--space-4); border-radius: var(--radius-md); }
.rv-xml h3 { margin: 0 0 var(--space-3); font-size: 14px; }
.rv-cl { list-style: none; margin: 0 0 var(--space-3); padding: 0; display: flex; flex-direction: column; gap: var(--space-2); }
.rv-cl li { display: flex; gap: var(--space-2); align-items: flex-start; }
.rv-cl input { width: 18px; height: 18px; margin-top: 1px; accent-color: var(--primary); flex: none; }
.rv-cl label { display: flex; flex-direction: column; cursor: pointer; }
.rv-cl-auto { color: var(--success); width: 18px; flex: none; }
.rv-cl-warn { color: var(--attention); }
.rv-actions { display: flex; flex-direction: column; gap: var(--space-1); align-items: flex-start; }
.rv-issue { margin-top: var(--space-3); }
.rv-issue > summary { list-style: none; }
.rv-issue > summary::-webkit-details-marker { display: none; }
.rv-issue-form { display: flex; flex-direction: column; gap: var(--space-3); margin-top: var(--space-3); }
.rv-reasons { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.rv-reason { display: inline-flex; gap: 6px; align-items: center; padding: 4px 10px; border: 1px solid var(--line); border-radius: var(--radius-pill); cursor: pointer; font-size: 13px; }
.rv-reason:has(input:checked) { border-color: var(--danger); background: var(--danger-soft); }
.rv-issue-box { margin-bottom: var(--space-3); }
.rv-send { display: flex; flex-direction: column; gap: var(--space-3); }
.rv-send p { margin: 0; }

@media (max-width: 1100px) {
  .rv-three { grid-template-columns: 200px minmax(0, 1fr); }
  .rv-check-col { grid-column: 1 / -1; }
}
@media (max-width: 760px) {
  .rv-three { grid-template-columns: minmax(0, 1fr); }
  .rv-docs ul { display: flex; overflow-x: auto; }
  .rv-doc { border-top: 0; border-right: 1px solid var(--line); min-width: 180px; }
  .rv-preview-body { min-height: 320px; }
  .rv-frame { height: 420px; }
  .rv-main, .rv-side { flex-basis: 100%; }
}

/* ── Muhasebe çalışma alanı (komut 11 · templates/expenses/accounting.html) ─ */
.mu-list { list-style: none; margin: 0; padding: 0; }
.mu-row { display: grid; grid-template-columns: minmax(200px, 1.4fr) minmax(200px, 1.4fr) 150px auto; gap: var(--space-4); align-items: center; padding: 14px var(--space-5); border-top: 1px solid var(--line); }
.mu-row:first-child { border-top: 0; }
.mu-c { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.mu-need { display: inline-flex; gap: var(--space-2); align-items: center; font-weight: 600; }
.mu-act { flex-direction: row; flex-wrap: wrap; gap: var(--space-2); justify-content: flex-end; }
.mu-ref { display: inline-block; margin-right: var(--space-2); font-size: 12px; }
.mu-bulk-sum { display: flex; flex-direction: column; }
.mu-inline { display: inline-flex; gap: var(--space-2); align-items: center; font-size: 13px; font-weight: 600; }
.mu-inline .tl-ctl { min-width: 150px; }
.mu-done li > span:last-child { display: flex; flex-direction: column; }
@media (max-width: 900px) {
  .mu-row { grid-template-columns: minmax(0, 1fr); padding: var(--space-3) var(--space-4); }
  .mu-act { justify-content: flex-start; }
}
@media (max-width: 760px) {
  .mu-bulk { display: flex; }
  .mu-inline { width: 100%; flex-direction: column; align-items: stretch; }
}

/* ── Bakanlık ve ödeme panosu (komut 12 · templates/expenses/ministry/) ─── */
.mb-kpis { margin-bottom: 0; }
.mb-section .tl-views { margin-bottom: var(--space-3); }
.mb-kpi { cursor: default; display: flex; flex-direction: column; gap: 2px; }
.mb-tone-danger { color: var(--danger); }
.mb-tone-success { color: var(--success); }
.mb-board { display: grid; grid-template-columns: repeat(4, minmax(240px, 1fr)); gap: var(--space-4); align-items: start; overflow-x: auto; padding-bottom: var(--space-2); }
.mb-col { background: var(--surface-sunken); border-radius: var(--radius-lg); padding: var(--space-3); display: flex; flex-direction: column; gap: var(--space-3); min-width: 0; }
.mb-col-head { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); }
.mb-col-head h2 { margin: 0; font-size: inherit; }
.mb-col-hint { flex-basis: 100%; }
.mb-cards { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: var(--space-2); }
.mb-card { display: flex; flex-direction: column; gap: 6px; padding: var(--space-3); background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-md); }
.mb-card-late { border-color: var(--danger); }
.mb-card-top { display: flex; justify-content: space-between; align-items: center; gap: var(--space-2); font-size: 12px; }
.mb-age { display: inline-flex; gap: 4px; align-items: center; color: var(--ink-muted); font-weight: 600; }
.mb-facts { margin: 0; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--space-2); font-size: 13px; }
.mb-facts dt { font-size: 12px; color: var(--ink-muted); }
.mb-facts dd { margin: 0; font-weight: 600; }
.mb-note { font-size: 12px; line-height: 16px; padding: 6px var(--space-2); border-radius: var(--radius-sm, var(--radius-md)); background: var(--surface-sunken); }
.mb-note-danger { background: var(--danger-soft); }
.mb-note-attention { background: var(--attention-soft); }
.mb-act { align-self: flex-start; }
.mb-empty { padding: var(--space-3); font-size: 13px; }
.mb-sheet { position: fixed; inset: 0; z-index: 60; background: var(--scrim); display: flex; justify-content: flex-end; }
.mb-sheet[hidden] { display: none; }
.mb-sheet-panel { width: min(480px, 100%); height: 100%; overflow-y: auto; background: var(--surface); box-shadow: var(--shadow-2); padding: var(--space-5); }
.mb-sheet-panel:focus { outline: none; }
.mb-form-wrap { display: flex; flex-direction: column; gap: var(--space-4); }
.mb-form-head { display: flex; flex-direction: column; gap: 2px; }
.mb-form-head p { margin: 0; }
.mb-form-title { margin: 0; font-size: 18px; line-height: 26px; font-weight: 700; }
.mb-form { display: flex; flex-direction: column; gap: var(--space-4); }
.mb-when[hidden] { display: none; }
.mb-form-foot { display: flex; gap: var(--space-2); }
@media (max-width: 1100px) { .mb-board { grid-template-columns: repeat(2, minmax(240px, 1fr)); } }
@media (max-width: 760px) {
  .mb-board { grid-template-columns: minmax(0, 1fr); }
  .mb-sheet-panel { width: 100%; }
}

/* ── Bildirimler ve arama (komut 13) ──────────────────────────────────── */
.nt-bell { position: relative; }
.nt-bell-count { position: absolute; top: 2px; right: 0; min-width: 18px; height: 18px; font-size: 11px; line-height: 18px; padding: 0 5px; }
.nt-link { text-decoration: none; color: var(--ink); }
.nt-list { list-style: none; margin: 0; padding: 0; }
.nt-item { display: flex; gap: var(--space-3); align-items: flex-start; padding: var(--space-3) var(--space-5); border-top: 1px solid var(--line); }
.nt-item:first-child { border-top: 0; }
.nt-unread { background: var(--primary-soft); }
.nt-text { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.nt-title { font-weight: 600; display: inline-flex; gap: var(--space-2); align-items: center; }
.nt-dot { background: var(--primary); }
.nt-actions { display: flex; flex-wrap: wrap; gap: var(--space-1); justify-content: flex-end; }
.nt-dirty { color: var(--attention); font-weight: 600; }
.sr-exact { border-color: var(--primary); }
.sr-exact-body { display: flex; justify-content: space-between; align-items: center; gap: var(--space-3); flex-wrap: wrap; }
.sr-exact-body > span { display: flex; flex-direction: column; }
.sr-match mark, .tl-title mark { background: var(--attention-soft); color: var(--ink); padding: 0 1px; border-radius: 2px; }
@media (max-width: 760px) {
  .nt-item { flex-wrap: wrap; padding: var(--space-3) var(--space-4); }
  .nt-actions { width: 100%; justify-content: flex-start; padding-left: 44px; }
}

/* ── Döviz kuru yedek değeri (komut 15) ───────────────────────────────── */
.tq-money-fallback { color: var(--attention); }

/* ── Sözleşmeler (komut 16a) ──────────────────────────────────────────── */
.sz-wrap { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(340px, 1fr); gap: var(--space-5); align-items: start; }
.sz-aside { position: sticky; top: var(--space-4); }
.sz-table tbody tr.pane-current { background: var(--primary-soft); }
.sz-nowrap { white-space: nowrap; }
.sz-panel { display: flex; flex-direction: column; gap: var(--space-4); min-width: 0; }
.sz-head-body { display: flex; flex-direction: column; gap: var(--space-3); }
.sz-head-top { display: flex; justify-content: space-between; align-items: center; gap: var(--space-2); }
.sz-title { margin: 0; font-size: 18px; line-height: 26px; font-weight: 700; overflow-wrap: anywhere; }
.sz-dl { display: grid; grid-template-columns: 140px minmax(0, 1fr); gap: var(--space-2) var(--space-3); margin: 0; font-size: 13px; }
.sz-dl dt { color: var(--ink-muted); }
.sz-dl dd { margin: 0; font-weight: 600; overflow-wrap: anywhere; }
.sz-desc { margin: 0; font-size: 13px; color: var(--ink-muted); }
.sz-file { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); padding: var(--space-2) var(--space-3); border: 1px solid var(--line); border-radius: var(--radius-md); font-size: 13px; }
.sz-file-name { flex: 1 1 140px; min-width: 0; overflow-wrap: anywhere; }
.sz-actions { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.sz-tax { display: flex; flex-direction: column; gap: var(--space-3); }
.sz-tax-row { display: flex; justify-content: space-between; align-items: baseline; gap: var(--space-3); font-size: 13px; }
.sz-tax-row strong { font-size: 18px; }
.sz-checklist, .sz-docs, .sz-links { list-style: none; margin: 0; padding: 0; }
.sz-checklist { display: flex; flex-direction: column; gap: 6px; font-size: 13px; }
.sz-checklist li { display: flex; align-items: center; gap: var(--space-2); }
.sz-checklist li > span:nth-child(2) { flex: 1; }
.sz-ok { color: var(--success); display: inline-flex; }
.sz-wait { color: var(--attention); display: inline-flex; }
.sz-docs { display: flex; flex-direction: column; border-top: 1px solid var(--line); }
.sz-docs li { display: flex; align-items: center; gap: var(--space-2); padding: var(--space-2) 0; border-bottom: 1px solid var(--line); font-size: 13px; }
.sz-doc-main { flex: 1; min-width: 0; display: flex; flex-direction: column; overflow-wrap: anywhere; }
.sz-note { margin: 0; font-size: 13px; padding: var(--space-2) var(--space-3); border-radius: var(--radius-md); background: var(--surface-sunken); }
.sz-upload > summary { list-style: none; width: fit-content; }
.sz-upload > summary::-webkit-details-marker { display: none; }
.sz-upload[open] > summary { margin-bottom: var(--space-3); }
.sz-links li a { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-3) var(--space-5); border-bottom: 1px solid var(--line); color: var(--ink); text-decoration: none; }
.sz-links li a:hover { background: var(--surface-hover); }
.sz-link-title { flex: 1; min-width: 0; display: flex; flex-direction: column; font-weight: 600; font-size: 13px; overflow-wrap: anywhere; }
.sz-detail { max-width: 860px; }
@media (max-width: 1100px) {
  .sz-wrap { grid-template-columns: minmax(0, 1fr); }
  .sz-aside { display: none; }
}
@media (max-width: 760px) {
  .sz-dl { grid-template-columns: minmax(0, 1fr); gap: 2px; }
  .sz-dl dd { margin-bottom: var(--space-2); }
  .sz-table thead { display: none; }
  .sz-table, .sz-table tbody, .sz-table tr, .sz-table td { display: block; width: 100%; }
  .sz-table tr { padding: var(--space-3) var(--space-4); border-bottom: 1px solid var(--line); }
  .sz-table td { padding: 2px 0; border: 0; text-align: left; }
  .sz-table td.tq-r { text-align: left; }
}

/* ── Destek soruları ve destek kapsamı (komut 16a) ────────────────────── */
.ds-wrap { display: grid; grid-template-columns: minmax(300px, 400px) minmax(0, 1fr); gap: var(--space-5); align-items: start; }
.ds-listcol { display: flex; flex-direction: column; gap: var(--space-3); min-width: 0; }
.ds-convcol { min-width: 0; position: sticky; top: var(--space-4); }
.ds-list { list-style: none; margin: 0; padding: 0; background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-lg); overflow: hidden; }
.ds-list li + li { border-top: 1px solid var(--line); }
.ds-item { display: flex; flex-direction: column; gap: 4px; padding: var(--space-3) var(--space-4); color: var(--ink); text-decoration: none; }
.ds-item:hover { background: var(--surface-hover); color: var(--ink); }
.ds-item:focus-visible { outline: 2px solid var(--focus-ring); outline-offset: -2px; }
.ds-list li.pane-current .ds-item { background: var(--primary-soft); box-shadow: inset 3px 0 0 var(--primary); }
.ds-item-top { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); justify-content: space-between; }
.ds-item-title { font-size: 13px; line-height: 18px; overflow-wrap: anywhere; }
.ds-conv { display: flex; flex-direction: column; }
.ds-conv-head { padding: var(--space-4) var(--space-5); border-bottom: 1px solid var(--line); display: flex; flex-direction: column; gap: 6px; }
.ds-conv-head .ds-item-top { justify-content: flex-start; }
.ds-conv-title { margin: 0; font-size: 18px; line-height: 26px; font-weight: 700; overflow-wrap: anywhere; }
.ds-thread { list-style: none; margin: 0; padding: var(--space-4) var(--space-5); display: flex; flex-direction: column; gap: var(--space-4); }
.ds-msg { display: grid; grid-template-columns: 32px minmax(0, 1fr); gap: var(--space-3); }
.ds-msg-main { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.ds-msg-meta { display: flex; flex-wrap: wrap; gap: var(--space-2); align-items: baseline; }
.ds-bubble { display: block; margin: 0; padding: var(--space-2) var(--space-3); border-radius: var(--radius-md); background: var(--surface-sunken); overflow-wrap: anywhere; }
.ds-msg-expert .ds-bubble { background: var(--primary-soft); }
.ds-file { display: inline-flex; gap: var(--space-2); align-items: center; font-size: 13px; overflow-wrap: anywhere; }
.ds-answer { padding: var(--space-4) var(--space-5); border-top: 1px solid var(--line); background: var(--surface-sunken); display: flex; flex-direction: column; gap: var(--space-3); }
.ds-answer-foot { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: var(--space-2); }
.ds-conv-foot { padding: var(--space-3) var(--space-5); border-top: 1px solid var(--line); display: flex; flex-wrap: wrap; gap: var(--space-3); align-items: center; justify-content: space-between; }
.ds-conv-actions { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.ds-reply { flex-basis: 100%; }
.ds-reply > summary { list-style: none; width: fit-content; }
.ds-reply > summary::-webkit-details-marker { display: none; }
.ds-reply[open] > summary { margin-bottom: var(--space-3); }
.ds-detail { max-width: 860px; }
.ds-cats { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: var(--space-3); }
.ds-cat { display: flex; flex-direction: column; gap: 4px; padding: var(--space-3) var(--space-4); border: 1px solid var(--line); border-radius: var(--radius-lg); background: var(--surface); color: var(--ink); text-decoration: none; }
.ds-cat:hover { border-color: var(--line-strong); color: var(--ink); }
.ds-cat:focus-visible { outline: 2px solid var(--focus-ring); outline-offset: 2px; }
.ds-cat[aria-current="true"] { border-color: var(--primary); background: var(--primary-soft); }
.ds-cat-icon { color: var(--primary-text); display: inline-flex; }
.ds-sub { border-bottom: 1px solid var(--line); }
.ds-sub-head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: var(--space-3); padding: var(--space-3) var(--space-5); background: var(--surface-sunken); }
.ds-sub-name { display: flex; flex-direction: column; min-width: 0; }
.ds-sub-actions { display: flex; flex-wrap: wrap; gap: var(--space-2); align-items: center; }
.ds-sub-note { margin: 0; padding: var(--space-2) var(--space-5) 0; font-size: 13px; }
.ds-docs { margin: 0; padding: var(--space-2) var(--space-5) var(--space-3) calc(var(--space-5) + 20px); display: flex; flex-direction: column; gap: 6px; font-size: 13px; }
.ds-doc-name { font-weight: 600; }
.ds-doc-desc { display: block; }
@media (max-width: 1000px) {
  .ds-wrap { grid-template-columns: minmax(0, 1fr); }
  .ds-convcol { display: none; }
}

/* ── Yönetim ve denetim kayıtları (komut 16a) ─────────────────────────── */
.ym-person { display: flex; align-items: center; gap: var(--space-3); min-width: 0; }
.ym-person-main { display: flex; flex-direction: column; min-width: 0; overflow-wrap: break-word; }
/* 05.11.2026: kullanıcı sütunu daralmasın; işlem düğmeleri gerekirse alt satıra geçer */
.ym-table th:first-child, .ym-table td:first-child { min-width: 260px; }
.ym-table td.ym-actions-cell { width: 1%; white-space: nowrap; }
.ym-actions { display: flex; flex-wrap: nowrap; justify-content: flex-end; gap: var(--space-1); }
@media (max-width: 760px) { .ym-actions { justify-content: flex-start; } }
.ym-mems { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.ym-mem { display: inline-flex; align-items: center; height: 24px; padding: 0 var(--space-2); border-radius: var(--radius-pill); background: var(--surface-sunken); border: 1px solid var(--line); font-size: 12px; font-weight: 600; white-space: nowrap; }
.ym-pager { padding: var(--space-3) var(--space-5); border-top: 1px solid var(--line); }
.ym-reg-body { display: flex; flex-direction: column; gap: var(--space-3); }
.ym-reg-head { display: flex; flex-wrap: wrap; justify-content: space-between; gap: var(--space-3); align-items: center; }
.ym-reg-when { display: flex; flex-direction: column; align-items: flex-end; gap: 4px; }
.ym-reg-actions { display: flex; flex-wrap: wrap; gap: var(--space-2); align-items: flex-start; }
.ym-approve > summary { list-style: none; }
.ym-approve > summary::-webkit-details-marker { display: none; }
.ym-approve[open] { flex-basis: 100%; }
.ym-approve[open] > summary { margin-bottom: var(--space-3); }
.ym-approve-form { display: flex; flex-wrap: wrap; gap: var(--space-3); align-items: flex-end; padding: var(--space-3); border-radius: var(--radius-md); background: var(--surface-sunken); }
.ym-approve-form .tq-field { min-width: 220px; flex: 1 1 220px; }
.ym-approve-hint { flex-basis: 100%; }
.ym-companies { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: var(--space-4); }
.ym-company-body { display: flex; flex-direction: column; gap: var(--space-3); }
.ym-company-head { display: flex; flex-wrap: wrap; justify-content: space-between; gap: var(--space-2); align-items: flex-start; }
.ym-stats { display: flex; flex-wrap: wrap; gap: var(--space-5); }
.ym-stat { display: flex; flex-direction: column; }
.ym-stat strong { font-size: 18px; }
.ym-checks { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: var(--space-2); }
.ym-branch { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); padding: var(--space-3) var(--space-5); border-bottom: 1px solid var(--line); }
.al-date { display: inline-flex; align-items: center; gap: var(--space-2); font-size: 13px; font-weight: 600; }
.al-desc { min-width: 260px; overflow-wrap: anywhere; }
.al-changes summary { cursor: pointer; }
@media (max-width: 760px) {
  .ym-reg-when { align-items: flex-start; }
  .ym-table thead, .al-table thead { display: none; }
  .ym-table, .ym-table tbody, .ym-table tr, .ym-table td, .al-table, .al-table tbody, .al-table tr, .al-table td { display: block; width: 100%; }
  .ym-table tr, .al-table tr { padding: var(--space-3) var(--space-4); border-bottom: 1px solid var(--line); }
  .ym-table td, .al-table td { padding: 2px 0; border: 0; text-align: left; }
  .al-desc { min-width: 0; }
  .al-date { width: 100%; }
}

/* ── Giriş, kayıt ve şifre (komut 16a) ────────────────────────────────── */
.gi-wrap { display: flex; flex-direction: column; align-items: center; gap: var(--space-5); width: 100%; }
.gi-brand { display: flex; align-items: center; gap: var(--space-3); }
.gi-logo { height: 32px; width: auto; }
.gi-brand-text { font-weight: 700; font-size: 16px; }
.gi-card { width: 100%; max-width: 440px; }
.gi-body { display: flex; flex-direction: column; gap: var(--space-4); padding: var(--space-6, 28px); }
.gi-head { display: flex; flex-direction: column; gap: 4px; }
.gi-title { margin: 0; font-size: 22px; line-height: 30px; font-weight: 700; }
.gi-sub { margin: 0; }
.gi-sub:empty { display: none; }
.gi-row { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: var(--space-2); font-size: 13px; }
.gi-foot { margin: 0; text-align: center; font-size: 13px; }
.gi-help { margin: 0; max-width: 440px; text-align: center; font-size: 12px; color: var(--ink-muted); }
.gi-alert { display: flex; gap: var(--space-2); align-items: flex-start; padding: var(--space-3); border-radius: var(--radius-md); font-size: 13px; }
.gi-alert-danger { background: var(--danger-soft); color: var(--ink); }
.gi-alert-progress { background: var(--primary-soft); color: var(--ink); }
.gi-alert .bi { flex: none; margin-top: 2px; }
.gi-rules { list-style: none; margin: calc(var(--space-2) * -1) 0 0; padding: 0; display: flex; flex-direction: column; gap: 4px; font-size: 12px; color: var(--ink-muted); }
.gi-rules li { display: flex; gap: 6px; align-items: center; }
.gi-rule-icon { display: inline-flex; opacity: .35; }
.gi-rules li[data-ok="true"] { color: var(--success); }
.gi-rules li[data-ok="true"] .gi-rule-icon { opacity: 1; }
@media (max-width: 480px) { .gi-body { padding: var(--space-4); } }

/* ── Profil (komut 16a) ───────────────────────────────────────────────── */
.pf-wrap { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: var(--space-5); align-items: start; }
.pf-nav { display: flex; flex-direction: column; gap: 2px; }
.pf-main { display: flex; flex-direction: column; gap: var(--space-4); min-width: 0; max-width: 760px; }
.pf-stack { display: flex; flex-direction: column; gap: var(--space-4); }
.pf-stack p { margin: 0; }
.pf-themes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); margin: 0; }
.pf-theme { font: inherit; display: flex; flex-direction: column; gap: var(--space-2); padding: var(--space-3); border: 1px solid var(--line); border-radius: var(--radius-lg); background: var(--surface); color: var(--ink); cursor: pointer; text-align: left; }
.pf-theme[aria-pressed="true"] { border-color: var(--primary); box-shadow: 0 0 0 1px var(--primary); }
.pf-theme:focus-visible { outline: 2px solid var(--focus-ring); outline-offset: 2px; }
.pf-theme-label { display: inline-flex; gap: var(--space-2); align-items: center; font-weight: 600; }
.pf-preview { display: flex; flex-direction: column; gap: 6px; padding: var(--space-3); border-radius: var(--radius-md); background: var(--bg); border: 1px solid var(--line); min-height: 88px; }
.pf-pv-bar { height: 10px; border-radius: var(--radius-pill); background: var(--brand-ink, var(--ink)); width: 40%; }
.pf-pv-line { height: 8px; border-radius: var(--radius-pill); background: var(--line-strong); }
.pf-pv-short { width: 60%; }
.pf-pv-btn { height: 16px; width: 64px; border-radius: var(--radius-md); background: var(--primary); margin-top: auto; }
.pf-role { display: flex; flex-wrap: wrap; gap: var(--space-2); align-items: center; margin: 0; }
@media (max-width: 760px) {
  .pf-wrap { grid-template-columns: minmax(0, 1fr); }
  .pf-nav { flex-direction: row; flex-wrap: wrap; }
  .pf-themes { grid-template-columns: minmax(0, 1fr); }
}
.sz-wrap { grid-template-columns: minmax(0, 1.7fr) minmax(340px, 1fr); }
.sz-table td:first-child { min-width: 240px; }
.sz-table td:nth-child(2) { min-width: 120px; }

/* ── Genel Bakış, istatistikler, raporlar (komut 16b) ─────────────────── */
.gb-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: var(--space-3); }
.gb-card { display: flex; flex-direction: column; gap: 4px; padding: var(--space-4); color: var(--ink); text-decoration: none; }
a.gb-card:hover { border-color: var(--line-strong); color: var(--ink); }
a.gb-card:focus-visible { outline: 2px solid var(--focus-ring); outline-offset: 2px; }
.gb-card-label { display: inline-flex; gap: var(--space-2); align-items: center; font-size: 13px; color: var(--ink-muted); font-weight: 600; }
.gb-card-value { font-size: 24px; line-height: 32px; font-weight: 700; }
.gb-danger { color: var(--danger); }
.gb-cols { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(300px, 1fr); gap: var(--space-5); align-items: start; }
.gb-cols-even { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.gb-main, .gb-side { display: flex; flex-direction: column; gap: var(--space-4); min-width: 0; }
.gb-stack { display: flex; flex-direction: column; gap: var(--space-3); }
.gb-stackbar { display: flex; height: 14px; border-radius: var(--radius-pill); overflow: hidden; background: var(--surface-sunken); }
.gb-seg { height: 100%; }
.gb-tone-success { background: var(--success); }
.gb-tone-attention { background: var(--attention); }
.gb-tone-progress { background: var(--primary); }
.gb-tone-danger { background: var(--danger); }
.gb-tone-neutral { background: var(--ink-muted); }
.gb-tone-external { background: var(--brand-ink); }
.gb-owner-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); gap: var(--space-2); }
.gb-owner { display: grid; grid-template-columns: auto 1fr auto; grid-template-areas: "dot label pct" "dot count count"; gap: 0 var(--space-2); align-items: center; padding: var(--space-2) var(--space-3); border: 1px solid var(--line); border-radius: var(--radius-md); color: var(--ink); text-decoration: none; }
a.gb-owner:hover { border-color: var(--line-strong); color: var(--ink); }
.gb-owner .gb-dot { grid-area: dot; }
.gb-owner strong { grid-area: count; font-size: 18px; }
.gb-dot { display: inline-block; width: 10px; height: 10px; border-radius: 50%; flex: none; }
.gb-legend { display: flex; flex-wrap: wrap; gap: var(--space-4); font-size: 12px; color: var(--ink-muted); margin-bottom: var(--space-3); }
.gb-legend > span { display: inline-flex; gap: 6px; align-items: center; }
.gb-bars { list-style: none; margin: 0; padding: 0; display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); gap: var(--space-2); height: 180px; align-items: end; }
.gb-bar-col { display: flex; flex-direction: column; align-items: center; gap: 4px; height: 100%; min-width: 0; }
.gb-bar { flex: 1; width: 100%; max-width: 32px; display: flex; flex-direction: column; justify-content: flex-end; border-radius: 4px 4px 0 0; overflow: hidden; background: var(--surface-sunken); }
.gb-bar-seg { width: 100%; }
.gb-bar-label { font-size: 11px; color: var(--ink-muted); white-space: nowrap; }
/* Açılan talep (adet) sırası: tutar ekseninden ayrı, aynı ay sütunlarıyla hizalı (05.11.2026) */
.gb-opened-head { display: flex; flex-wrap: wrap; justify-content: space-between; gap: var(--space-2); margin-top: var(--space-4); font-size: 12px; color: var(--ink-muted); }
.gb-legend-item { display: inline-flex; gap: 6px; align-items: center; }
.gb-opened { list-style: none; margin: var(--space-2) 0 0; padding: 0; display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); gap: var(--space-2); height: 64px; align-items: end; }
.gb-opened-col { display: flex; flex-direction: column; align-items: center; justify-content: flex-end; gap: 2px; height: 100%; min-width: 0; }
.gb-opened-n { font-size: 11px; color: var(--ink-muted); line-height: 14px; }
.gb-opened-bar { flex: 1; width: 100%; max-width: 32px; display: flex; flex-direction: column; justify-content: flex-end; }
.gb-opened-bar > span { display: block; width: 100%; border-radius: 3px 3px 0 0; min-height: 0; }
.gb-table-toggle { margin-top: var(--space-3); }
.gb-table-toggle summary { cursor: pointer; }
.st-hbars { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: var(--space-3); }
.st-hbars li { display: flex; flex-direction: column; gap: 4px; }
.st-hbar-head { display: flex; justify-content: space-between; gap: var(--space-3); font-size: 13px; }
.st-hbar { display: block; height: 8px; border-radius: var(--radius-pill); background: var(--surface-sunken); overflow: hidden; }
.st-hbar-seg { display: block; height: 100%; border-radius: var(--radius-pill); }
.rp-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: var(--space-3); }
.rp-filters { padding: var(--space-3) var(--space-5); border-bottom: 1px solid var(--line); }

/* ── Yol haritası ve Görevlerim (komut 16b) ──────────────────────────── */
.yh-grid { display: grid; grid-template-columns: minmax(220px, 320px) minmax(0, 1fr); gap: var(--space-3); align-items: center; padding: var(--space-2) var(--space-5); }
.yh-grid-head { border-bottom: 1px solid var(--line); background: var(--surface-sunken); }
.yh-quarters { display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); align-items: center; min-height: 28px; }
.yh-q { font-size: 11px; color: var(--ink-muted); text-align: center; white-space: nowrap; }
.yh-q-now { color: var(--primary-text); font-weight: 700; }
.yh-q-cell { grid-row: 1; height: 28px; border-left: 1px dashed var(--line); }
.yh-q-cell.yh-q-now { background: var(--primary-soft); }
.yh-bar { grid-row: 1; position: relative; height: 16px; border-radius: var(--radius-pill); margin: 0 2px; overflow: hidden; background: var(--surface-sunken); border: 1px solid var(--line-strong); }
.yh-bar-fill { position: absolute; inset: 0 auto 0 0; }
.yh-bar.gb-tone-success .yh-bar-fill { background: var(--success); }
.yh-bar.gb-tone-progress .yh-bar-fill { background: var(--primary); }
.yh-bar.gb-tone-neutral .yh-bar-fill { background: var(--ink-muted); }
.yh-bar.gb-tone-danger .yh-bar-fill { background: var(--danger); }
.yh-bar.gb-tone-success, .yh-bar.gb-tone-progress, .yh-bar.gb-tone-neutral, .yh-bar.gb-tone-danger { background: var(--surface-sunken); }
.yh-bar-late { border: 2px solid var(--danger); }
.yh-clip { position: absolute; top: -3px; font-size: 14px; color: var(--ink); }
.yh-clip-l { left: 4px; }
.yh-clip-r { right: 4px; }
.yh-project { border-top: 1px solid var(--line); }
.yh-project > summary { list-style: none; cursor: pointer; }
.yh-project > summary::-webkit-details-marker { display: none; }
.yh-project > summary:hover { background: var(--surface-hover); }
.yh-project > summary:focus-visible { outline: 2px solid var(--focus-ring); outline-offset: -2px; }
.yh-project[open] > summary { background: var(--primary-soft); }
.yh-name-col { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.yh-name { font-weight: 600; font-size: 13px; overflow-wrap: anywhere; }
.yh-meta { display: flex; flex-wrap: wrap; gap: var(--space-2); align-items: center; }
.yh-body { padding: var(--space-3) var(--space-5) var(--space-4); background: var(--surface-sunken); }
.yh-desc { margin: 0 0 var(--space-3); font-size: 13px; }
.yh-body-grid { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: var(--space-5); }
.yh-h { margin: 0 0 var(--space-2); font-size: 13px; font-weight: 700; }
.yh-acts, .yh-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: var(--space-2); font-size: 13px; }
.yh-list li { padding-left: var(--space-3); border-left: 2px solid var(--line); }
.yh-act { display: grid; grid-template-columns: 18px minmax(0, 1fr) auto; gap: var(--space-2); align-items: start; }
.yh-act-icon { color: var(--attention); display: inline-flex; padding-top: 2px; }
.yh-act-done .yh-act-icon { color: var(--success); }
.yh-act-main { display: flex; flex-direction: column; min-width: 0; overflow-wrap: anywhere; }
.yh-complete > summary { list-style: none; }
.yh-complete > summary::-webkit-details-marker { display: none; }
.yh-complete[open] { grid-column: 1 / -1; }
.yh-complete[open] > summary { margin-bottom: var(--space-2); }
.yh-side { display: flex; flex-direction: column; gap: var(--space-3); min-width: 0; }
.yh-edit { display: flex; flex-wrap: wrap; gap: var(--space-2); align-items: flex-end; padding-top: var(--space-3); border-top: 1px solid var(--line); }
.yh-edit .tq-field { flex: 1 1 140px; }
.yh-acts-card { padding: var(--space-3) var(--space-5); }

/* ── Hedef pazarlar (komut 16b) ───────────────────────────────────────── */
.hp-wrap { grid-template-columns: minmax(280px, 380px) minmax(0, 1fr); }
.hp-listhead { display: flex; justify-content: space-between; padding: 0 var(--space-4); }
.hp-item { display: grid; grid-template-columns: 24px 36px minmax(0, 1fr) auto; gap: var(--space-2); align-items: center; }
.hp-item-main { display: flex; flex-direction: column; gap: 4px; align-items: flex-start; min-width: 0; }
.hp-rank { font-weight: 700; color: var(--ink-muted); text-align: right; }
.hp-code { display: inline-flex; align-items: center; justify-content: center; min-width: 32px; height: 22px; padding: 0 4px; border-radius: var(--radius-md); background: var(--surface-sunken); border: 1px solid var(--line); font-size: 12px; font-weight: 600; }
.hp-kpis { margin: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(130px, 1fr)); gap: var(--space-3); }
.hp-kpis dt { font-size: 12px; color: var(--ink-muted); }
.hp-kpis dd { margin: 0; font-weight: 700; }
.hp-two { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); }
.hp-sales { display: flex; flex-direction: column; gap: 6px; margin-top: var(--space-3); }

/* ── Ek-6 (komut 16b) ─────────────────────────────────────────────────── */
.a6-progress { max-width: 420px; }
.a6-mini { display: block; width: 100px; margin-top: 4px; }
.a6-wrap { display: grid; grid-template-columns: minmax(220px, 280px) minmax(0, 1fr) minmax(220px, 280px); gap: var(--space-4); align-items: start; }
.a6-nav { display: flex; flex-direction: column; gap: var(--space-4); }
.a6-add { padding: var(--space-3) var(--space-4); border-top: 1px solid var(--line); }
.a6-add > summary { list-style: none; width: fit-content; }
.a6-add > summary::-webkit-details-marker { display: none; }
.a6-add[open] > summary { margin-bottom: var(--space-3); }
.a6-sections { list-style: none; margin: 0; padding: var(--space-2); display: flex; flex-direction: column; gap: 2px; }
.a6-sec { display: flex; gap: var(--space-2); align-items: center; padding: 6px var(--space-2); border-radius: var(--radius-md); color: var(--ink); text-decoration: none; font-size: 13px; }
.a6-sec:hover { background: var(--surface-hover); color: var(--ink); }
.a6-sec-on { background: var(--primary-soft); color: var(--primary-text); font-weight: 600; }
.a6-state { display: inline-flex; align-items: center; justify-content: center; width: 20px; height: 20px; border-radius: 50%; flex: none; border: 1px solid var(--line); color: var(--ink-muted); }
.a6-state-done { background: var(--success); border-color: var(--success); color: var(--on-primary); }
.a6-state-draft { border-color: var(--attention); color: var(--attention); }
.a6-del { padding: var(--space-2) var(--space-4) var(--space-3); }
.a6-guide { display: flex; gap: var(--space-2); align-items: flex-start; margin: 0; padding: var(--space-2) var(--space-3); border-radius: var(--radius-md); background: var(--surface-sunken); font-size: 13px; }
.a6-text { min-height: 280px; }
.a6-meta { display: flex; justify-content: space-between; gap: var(--space-3); }
.a6-comp .tq-control { min-width: 120px; }
.a6-foot { display: flex; flex-wrap: wrap; justify-content: space-between; gap: var(--space-2); padding-top: var(--space-3); border-top: 1px solid var(--line); }
.a6-src-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: var(--space-2); }
.a6-src { font: inherit; width: 100%; display: flex; flex-direction: column; gap: 2px; text-align: left; padding: var(--space-2) var(--space-3); border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); color: var(--ink); font-size: 13px; cursor: pointer; }
.a6-src:hover:not(:disabled) { border-color: var(--primary); }
.a6-src:disabled { cursor: default; }
.a6-src:focus-visible { outline: 2px solid var(--focus-ring); outline-offset: 2px; }
.a6-doc { display: flex; flex-direction: column; gap: var(--space-3); }
.a6-doc h1 { font-size: 20px; margin: 0 0 var(--space-3); }
.a6-doc h2 { font-size: 17px; margin: var(--space-4) 0 var(--space-2); padding-top: var(--space-3); border-top: 1px solid var(--line); }
.a6-doc h3 { font-size: 15px; margin: var(--space-3) 0 var(--space-1); }
.a6-doc h4 { font-size: 13px; margin: var(--space-2) 0 2px; color: var(--ink-muted); }
.a6-doc p { margin: 0; overflow-wrap: anywhere; }
.a6-print { background: var(--surface); color: var(--ink); font-family: var(--font-sans); padding: var(--space-6); max-width: 900px; margin: 0 auto; }
.a6-print-bar { display: flex; flex-wrap: wrap; gap: var(--space-3); align-items: center; margin-bottom: var(--space-5); }
@media print {
  .a6-print-bar { display: none; }
  .a6-print { padding: 0; max-width: none; }
  .a6-doc-market { break-before: page; }
}
@media (max-width: 1200px) {
  .a6-wrap { grid-template-columns: minmax(220px, 260px) minmax(0, 1fr); }
  .a6-sources { grid-column: 2; }
}
@media (max-width: 1000px) {
  .gb-cols, .gb-cols-even, .hp-two, .yh-body-grid { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 760px) {
  .a6-wrap { grid-template-columns: minmax(0, 1fr); }
  .a6-sources { grid-column: auto; }
  .yh-grid { grid-template-columns: minmax(0, 1fr); }
  .yh-grid-head .yh-name-col { display: none; }
  .gb-bars { height: 140px; }
  .gb-bar-label { font-size: 9px; }
}

/* ── Firma ayarları (komut 18) ─────────────────────────────────────────── */
.cs-section { scroll-margin-top: var(--space-6); margin-bottom: var(--space-4); }
.cs-logo { display: flex; align-items: center; padding: var(--space-3); border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); max-width: 240px; }
.cs-logo img { max-height: 56px; max-width: 100%; object-fit: contain; }
.cs-brand-logo { max-height: 24px; max-width: 120px; object-fit: contain; vertical-align: middle; margin-right: var(--space-2); }
.cs-check { display: inline-flex; align-items: center; gap: var(--space-2); }
.tq-brand-firm { display: inline-flex; align-items: center; min-width: 0; font-weight: 500; color: var(--ink-muted); max-width: 96px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.tq-brand-firm img { max-height: 24px; max-width: 96px; object-fit: contain; }
.tq-settings-body textarea.tq-control { max-width: 480px; }

/* ── Uzman ve danışmanlar (komut 19) ───────────────────────────────────── */
.tq-pagehead-actions { display: flex; gap: var(--space-2); flex-wrap: wrap; }
.um-section { margin-bottom: var(--space-4); scroll-margin-top: var(--space-6); }
.um-check { justify-content: flex-end; }
.um-scope { border: 0; padding: 0; margin: 0; }
.um-filters { display: flex; flex-direction: column; gap: var(--space-3); margin-top: var(--space-3); padding: var(--space-3); border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface-sunken); }
.um-filters fieldset { border: 0; padding: 0; margin: 0; }
.um-options { display: flex; flex-wrap: wrap; gap: var(--space-2) var(--space-4); }
.mb-form-card { max-width: 760px; }
.gi-facts { display: grid; grid-template-columns: auto 1fr; gap: var(--space-1) var(--space-3); margin: 0 0 var(--space-4); }
.gi-facts dt { color: var(--ink-muted); font-weight: 500; }
.gi-facts dd { margin: 0; }
.cs-summary { margin: 0; color: var(--ink-muted); }
.cs-links { margin-top: 0; }

/* ── Tek İş Kutum: firma grupları (komut 20) ───────────────────────────── */
.ik-chips { display: flex; flex-wrap: wrap; gap: var(--space-2); margin: 0 0 var(--space-4); }
.ik-chip { display: inline-flex; align-items: center; gap: var(--space-2); padding: 6px var(--space-3); border: 1px solid var(--line); border-radius: var(--radius-pill); background: var(--surface); color: var(--ink); text-decoration: none; font-weight: 500; }
.ik-chip:hover { background: var(--surface-hover); color: var(--ink); }
.ik-chip[aria-current="true"] { border-color: var(--primary); background: var(--primary-soft); color: var(--primary-text); }
.ik-chip:focus-visible { outline: 2px solid var(--focus-ring); outline-offset: 2px; }
.ik-chip-late { display: inline-flex; align-items: center; justify-content: center; min-width: 20px; height: 20px; padding: 0 6px; border-radius: var(--radius-pill); background: var(--danger); color: var(--on-danger); font-size: 12px; font-weight: 600; }
.ik-summary { display: flex; align-items: center; gap: var(--space-3); margin: 0; padding: var(--space-3) var(--space-4); border: 1px solid var(--line); border-radius: var(--radius-lg); background: var(--surface); color: var(--ink); text-decoration: none; }
.ik-summary > span { flex: 1; }
.ik-summary-late { border-color: var(--danger); background: var(--danger-soft); }
.ik-summary-late:hover { color: var(--ink); filter: brightness(0.98); }
.ik-summary-late:focus-visible { outline: 2px solid var(--focus-ring); outline-offset: 2px; }
.ik-firm-group { display: flex; flex-direction: column; gap: var(--space-3); margin-top: var(--space-2); scroll-margin-top: var(--space-6); }
.ik-firm-head { margin: 0; font-size: inherit; line-height: inherit; }
.ik-firm-toggle { display: flex; align-items: center; flex-wrap: wrap; gap: var(--space-2) var(--space-3); padding: var(--space-2) 0; color: var(--ink); text-decoration: none; border-bottom: 2px solid var(--line-strong); }
.ik-firm-toggle:hover { color: var(--ink); }
.ik-firm-toggle:focus-visible { outline: 2px solid var(--focus-ring); outline-offset: 2px; }
.ik-firm-toggle[aria-expanded="false"] .ik-chev { transform: rotate(-90deg); }
.ik-firm-logo { max-height: 24px; max-width: 72px; object-fit: contain; }
.ik-firm-name { font-size: 16px; font-weight: 700; }
.ik-firm-counts { display: inline-flex; align-items: center; gap: var(--space-2); }
.ik-firm-rule { font-weight: 500; }
.ik-firm-body { display: flex; flex-direction: column; gap: var(--space-3); }
.ik-watch-firm { font-weight: 700; color: var(--ink-muted); font-size: 12px; text-transform: none; padding-top: var(--space-2); }
.td-firm-logo { height: 18px; max-width: 64px; object-fit: contain; vertical-align: -3px; margin-right: var(--space-2); }

/* ── Başvuru ve denetim hazırlığı (komut 21) ───────────────────────────── */
.bh-section { margin-bottom: var(--space-4); }
.bh-forms { display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: var(--space-4); align-items: start; scroll-margin-top: var(--space-6); }
.bh-cols { display: flex; flex-wrap: wrap; gap: var(--space-4); align-items: flex-start; }
.bh-main { flex: 3 1 520px; min-width: 0; display: flex; flex-direction: column; gap: var(--space-4); }
.bh-side { flex: 1 1 280px; min-width: 0; }
.bh-actions { display: flex; flex-direction: column; gap: var(--space-3); }
.bh-actions form { display: flex; flex-direction: column; gap: var(--space-2); }
.bh-sub { font-size: 14px; font-weight: 600; margin: var(--space-3) 0 var(--space-2); }
.bh-docs { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: var(--space-1); }
.bh-docs li { display: flex; align-items: center; gap: var(--space-2); }
.bh-note { border-color: var(--attention); }
.dh-card { text-decoration: none; color: var(--ink); }
.dh-card:hover { background: var(--surface-hover); color: var(--ink); }
.dh-card-current { border-color: var(--primary); }
.dh-card:focus-visible { outline: 2px solid var(--focus-ring); outline-offset: 2px; }

/* ── Mükerrer destek uyarısı (komut 22) ────────────────────────────────── */
.ms-card { margin-bottom: var(--space-4); scroll-margin-top: var(--space-6); }
.ms-card-open { border-color: var(--attention); }
.ms-body { display: flex; flex-direction: column; gap: var(--space-4); }
.ms-warning { display: flex; flex-direction: column; gap: var(--space-2); padding-bottom: var(--space-3); border-bottom: 1px solid var(--line); }
.ms-warning:last-of-type { border-bottom: 0; padding-bottom: 0; }
.ms-what { margin: 0; }
.ms-matches { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: var(--space-1); }
.ms-matches li { display: flex; gap: var(--space-2); align-items: flex-start; }
.ms-close, .ms-personnel { display: flex; flex-direction: column; gap: var(--space-2); max-width: 640px; }
.ms-close .tq-btn, .ms-personnel .tq-btn { align-self: flex-start; }
.ms-closed summary { cursor: pointer; color: var(--ink-muted); }
.ms-closed summary:focus-visible { outline: 2px solid var(--focus-ring); outline-offset: 2px; }

/* ── İçe aktarma (komut 23) ────────────────────────────────────────────── */
.ia-steps { list-style: none; margin: 0 0 var(--space-5); padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: var(--space-4); }
.ia-step-title { display: flex; align-items: center; gap: var(--space-2); font-size: 16px; margin: 0 0 var(--space-2); }
.ia-step-no { display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; border-radius: var(--radius-pill); background: var(--primary-soft); color: var(--primary-text); font-size: 13px; font-weight: 700; }
.ia-errors { border-color: var(--danger); margin-bottom: var(--space-4); }
.ia-errlist { margin: 0; padding-left: var(--space-4); }

/* ── pyKa – Turquality logosu (templates/components/pyka_logo.html, 05.11.2026) ── */
:root, [data-theme="light"] { --logo-ink: #0f1b2d; --logo-accent: #b91c1c; --logo-ring: #e2e7ee; --logo-on-accent: #ffffff; }
[data-theme="dark"] { --logo-ink: var(--ink); --logo-accent: #ef4444; --logo-ring: #3a4250; }
.tq-logo-mark { height: 32px; width: auto; flex: none; }
.tq-logo-ink { fill: var(--logo-ink); }
.tq-logo-ring { stroke: var(--logo-ring); }
.tq-logo-accent-line { stroke: var(--logo-accent); }
.tq-logo-accent { fill: var(--logo-accent); }
.tq-logo-globe { stroke: var(--logo-on-accent); }
.tq-logo-text { display: inline-flex; align-items: center; gap: var(--space-2); color: var(--logo-ink); }
.tq-logo-name { font-weight: 800; letter-spacing: -0.01em; }
.tq-logo-text .tq-brand-sub { font-weight: 500; color: inherit; }
.tq-logo-div { width: 2px; height: 18px; border-radius: 1px; background: var(--logo-accent); }
.gi-brand-text { display: inline-flex; align-items: center; gap: var(--space-2); }
.gi-brand-text .tq-logo-mark { height: 36px; }

/* Kenar çubuğu başı: firma logosu ve destek programı, "Yeni Talep" düğmesinin üstünde (05.11.2026).
   Masaüstünde firma logosu üst çubukta tekrar edilmez; telefonda kenar çubuğu gizli olduğundan üst çubukta kalır. */
.tq-sidebar-firm { display: flex; flex-direction: column; gap: var(--space-2); padding: 0 var(--space-1); }
.tq-sidebar-firm-logo { display: flex; align-items: center; min-width: 0; font-weight: 600; color: var(--ink); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.tq-sidebar-firm-logo img { display: block; max-width: 100%; max-height: 32px; object-fit: contain; object-position: left center; }
.tq-program { display: inline-flex; align-items: center; gap: var(--space-2); font-size: 12px; line-height: 16px; font-weight: 500; color: var(--ink-muted); }
.tq-program::before { content: ""; width: 6px; height: 6px; border-radius: var(--radius-pill); background: var(--logo-accent); flex: none; }
@media (min-width: 761px) {
  .tq-topbar .tq-brand-sep, .tq-topbar .tq-brand-firm { display: none; }
}

/* Kullanıcı gözüyle görüntüleme şeridi (accounts/view_as.py, yalnız süper kullanıcı) */
.tq-viewas { position: fixed; left: 50%; bottom: var(--space-4); transform: translateX(-50%); z-index: 60; display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-3); max-width: calc(100% - 2 * var(--space-4)); padding: var(--space-2) var(--space-2) var(--space-2) var(--space-4); border-radius: var(--radius-pill); background: var(--attention-soft); border: 1px solid var(--attention-fill); color: var(--ink); box-shadow: var(--shadow-2); font-size: 13px; }
.tq-viewas form { margin: 0; }
.tq-viewas-link { color: var(--ink); }
@media (max-width: 760px) { .tq-viewas { bottom: calc(var(--bottomnav-height) + var(--space-2)); border-radius: var(--radius-lg); } }

/* Danışman paneli (accounts/views_consultant.py, 05.11.2026) */
.dp-grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: var(--space-3); }
.dp-card { padding: 0; }
.dp-card-link { display: flex; flex-direction: column; gap: var(--space-3); padding: var(--space-4); color: var(--ink); text-decoration: none; height: 100%; border-radius: inherit; }
.dp-card-link:hover { background: var(--surface-hover); }
.dp-card-head { display: flex; flex-direction: column; gap: var(--space-1); }
.dp-name { font-size: 15px; line-height: 20px; }
.dp-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-2); }
.dp-stats > span { display: flex; flex-direction: column; min-width: 0; }
.dp-stats strong { font-size: 18px; line-height: 24px; }
.dp-late, .dp-late strong { color: var(--danger); }
.dp-notice .tq-card-body { display: flex; gap: var(--space-2); align-items: flex-start; }
.dp-advisors { display: flex; flex-direction: column; gap: var(--space-3); align-items: flex-start; }
.dp-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: var(--space-2); }
.dp-assign { display: flex; flex-direction: column; gap: var(--space-1); width: 100%; }
.dp-assign-row { display: flex; gap: var(--space-2); }
.dp-assign-row .tq-control { flex: 1; min-width: 0; }
.dp-brand { display: inline-flex; align-items: center; gap: var(--space-2); min-width: 0; }
.dp-logo { height: 20px; width: auto; max-width: 96px; object-fit: contain; }
.dp-logo-lg { height: 28px; max-width: 140px; }
.dp-firms { display: flex; gap: var(--space-2); align-items: flex-start; font-size: 13px; color: var(--ink); }

/* Danışmanın marka seçicisi (kenar çubuğu, 05.11.2026) */
.tq-brand-switch { position: relative; }
.tq-brand-switch > summary { list-style: none; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: var(--space-1) var(--space-2); align-items: center; cursor: pointer; padding: var(--space-2); margin: calc(-1 * var(--space-2)); border-radius: var(--radius-md); }
.tq-brand-switch > summary::-webkit-details-marker { display: none; }
.tq-brand-switch > summary:hover { background: var(--surface-hover); }
.tq-brand-switch > summary .tq-program { grid-column: 1; }
.tq-brand-switch-icon { grid-column: 2; grid-row: 1 / span 2; color: var(--ink-muted); }
.tq-program-none::before { background: var(--line-strong); }
.tq-brand-switch-list { list-style: none; margin: var(--space-2) 0 0; padding: var(--space-1); border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); box-shadow: var(--shadow-2); display: flex; flex-direction: column; max-height: 320px; overflow-y: auto; }
.tq-brand-switch-list a { display: flex; flex-direction: column; padding: var(--space-2); border-radius: var(--radius-sm); color: var(--ink); text-decoration: none; font-size: 13px; }
.tq-brand-switch-list a:hover, .tq-brand-switch-list a[aria-current="true"] { background: var(--surface-hover); }
.tq-brand-switch-list a[aria-current="true"] span:first-child { font-weight: 600; }
.tq-brand-switch-sep { border-top: 1px solid var(--line); margin-top: var(--space-1); padding-top: var(--space-1); }

/* Danışman paneli bağımsız düzeni (templates/accounts/consultant_base.html, 05.11.2026) */
.dp-body { min-height: 100vh; background: var(--bg); color: var(--ink); }
.dp-top { position: sticky; top: 0; z-index: 10; display: flex; align-items: center; gap: var(--space-5); min-height: var(--topbar-height); padding: 0 var(--space-5); background: var(--surface); border-bottom: 1px solid var(--line); flex-wrap: wrap; }
.dp-top-brand { display: inline-flex; align-items: center; gap: var(--space-2); font-size: 15px; text-decoration: none; }
.dp-top-label { font-weight: 600; color: var(--ink-muted); padding-left: var(--space-3); margin-left: var(--space-1); border-left: 1px solid var(--line); }
.dp-tabs { display: flex; gap: var(--space-1); align-self: stretch; }
.dp-tab { display: inline-flex; align-items: center; gap: var(--space-2); padding: 0 var(--space-3); color: var(--ink-muted); font-weight: 600; text-decoration: none; border-bottom: 2px solid transparent; }
.dp-tab:hover { color: var(--ink); }
.dp-tab[aria-current="page"] { color: var(--ink); border-bottom-color: var(--primary); }
.dp-top-end { margin-left: auto; display: flex; align-items: center; gap: var(--space-3); }
.dp-user { display: inline-flex; align-items: center; gap: var(--space-2); font-size: 13px; }
.dp-main { max-width: 1280px; margin: 0 auto; padding: var(--space-6) var(--space-5) var(--space-8); }
.dp-card { display: flex; flex-direction: column; }
.dp-card-link { flex: 1; }
.dp-card-foot { padding: 0 var(--space-4) var(--space-4); }
.dp-tasks { list-style: none; margin: 0; padding: 0; }
.dp-task + .dp-task { border-top: 1px solid var(--line); }
.dp-task a { display: flex; gap: var(--space-4); align-items: center; justify-content: space-between; padding: var(--space-3) var(--space-4); color: var(--ink); text-decoration: none; }
.dp-task a:hover { background: var(--surface-hover); }
.dp-task-main { display: flex; flex-direction: column; min-width: 0; }
.dp-task-title { font-weight: 600; }
.dp-task-due { display: inline-flex; align-items: center; gap: var(--space-1); white-space: nowrap; font-size: 13px; }
.dp-task-late .dp-task-due { color: var(--danger); }
@media (max-width: 760px) {
  .dp-top { padding: var(--space-2) var(--space-4); gap: var(--space-2); }
  .dp-top-label, .dp-user-name { display: none; }
  .dp-tabs { order: 3; width: 100%; }
  .dp-main { padding: var(--space-4); }
}

/* E-posta bildirimleri (notifications/views_rules.py, 05.11.2026) */
.em-table th.em-event { font-weight: 600; white-space: normal; min-width: 220px; }
.em-table .em-role { text-align: center; width: 1%; white-space: nowrap; font-size: 12px; }
.em-table tr.em-group th { background: var(--surface-sunken); font-size: 12px; font-weight: 600; color: var(--ink-muted); text-align: left; }
.em-check { position: relative; display: inline-flex; align-items: center; gap: 2px; cursor: pointer; padding: var(--space-1); }
.em-check input { width: 16px; height: 16px; accent-color: var(--primary); }
.em-added-mark, .em-added-key { color: var(--primary-text); font-size: 12px; display: inline-flex; align-items: center; gap: 2px; }
.em-foot { display: flex; align-items: center; justify-content: flex-end; gap: var(--space-3); padding: var(--space-3) var(--space-4); border-top: 1px solid var(--line); flex-wrap: wrap; }
.em-foot .tq-hint { margin-right: auto; }
.em-people { list-style: none; margin: 0; padding: 0; }
.em-people > li + li { border-top: 1px solid var(--line); }
.em-person > summary { list-style: none; display: grid; grid-template-columns: minmax(220px, 1.2fr) minmax(0, 2fr) auto; gap: var(--space-3); align-items: center; padding: var(--space-3) var(--space-4); cursor: pointer; }
.em-person > summary::-webkit-details-marker { display: none; }
.em-person > summary:hover { background: var(--surface-hover); }
.em-person[open] > summary { background: var(--surface-hover); }
.em-person-form { padding: 0 var(--space-4) var(--space-3); }
.em-person-form .em-foot { border-top: 0; padding: var(--space-2) 0 0; }
.em-select { max-width: 160px; }
.em-counts { white-space: nowrap; }
.em-empty { padding: var(--space-4); }
@media (max-width: 760px) { .em-person > summary { grid-template-columns: 1fr; } }
.em-table tbody th.em-event, .em-person-form tbody th { background: var(--surface); color: var(--ink); text-transform: none; letter-spacing: 0; font-size: 13px; font-weight: 600; }

/* Kullanıcı düzenleme: işten ayrılma devri (05.11.2026) */
.ue-handover { border: 1px solid var(--line); border-radius: var(--radius-md); padding: var(--space-3) var(--space-4); display: flex; flex-direction: column; gap: var(--space-3); }
.ue-handover-alert { border-color: var(--danger); }
.ue-handover-row + .ue-handover-row { border-top: 1px solid var(--line); padding-top: var(--space-3); }
.ue-handover-head { display: flex; flex-wrap: wrap; gap: var(--space-2); align-items: baseline; margin-bottom: var(--space-2); }

/* Talep: revizyon tamamlama süresi (expenses/revision.py, 05.11.2026) */
.td-revclock { display: inline-flex; flex-wrap: wrap; align-items: center; gap: var(--space-1) var(--space-2); margin: var(--space-2) 0 0; padding: var(--space-2) var(--space-3); border-radius: var(--radius-md); border: 1px solid var(--line); background: var(--surface-sunken); font-size: 13px; }
.td-revclock-attention { background: var(--attention-soft); border-color: var(--attention-fill); }
.td-revclock-danger { background: var(--danger-soft); border-color: var(--danger); }

/* Yol haritası: faaliyet sorumlusu (05.11.2026) */
.yh-act-who { display: inline-flex; align-items: center; gap: 4px; }
.yh-assign { margin-top: var(--space-1); }
.yh-assign > summary { list-style: none; display: inline-flex; }
.yh-assign > summary::-webkit-details-marker { display: none; }
.yh-assign-form { display: flex; gap: var(--space-2); align-items: center; margin-top: var(--space-2); }
.yh-assign-form .tq-control { max-width: 260px; }

/* Hedef pazar: onay süreci ve ihracat (05.11.2026) */
.hp-flow { display: flex; flex-direction: column; gap: var(--space-3); }
.hp-flow-now, .hp-flow-note { margin: 0; font-size: 13px; }
.hp-flow-note { display: flex; flex-direction: column; gap: 2px; padding: var(--space-2) var(--space-3); border-radius: var(--radius-md); background: var(--surface-sunken); }
.hp-act > summary { list-style: none; cursor: pointer; }
.hp-act > summary::-webkit-details-marker { display: none; }
.hp-act[open] { flex-basis: 100%; }
.hp-act-form { margin-top: var(--space-2); max-width: 520px; }
.hp-history > summary { cursor: pointer; }
.hp-history-list { margin: var(--space-2) 0 0; padding-left: var(--space-5); display: flex; flex-direction: column; gap: var(--space-1); font-size: 13px; }
.hp-export { display: flex; flex-wrap: wrap; align-items: flex-end; gap: var(--space-3); padding: var(--space-4); border-top: 1px solid var(--line); }
.hp-export .tq-field { margin: 0; min-width: 120px; }
.hp-export-note { flex: 1 1 200px; }
.hp-export .tq-hint { flex-basis: 100%; }
