/* teknikbul token + bileşen. Gerekçe: workspace/review/DESIGN.md
   @layer YASAK (core global-styles unlayered). clamp 360->1440 doğrusal. */
.tb-root {
/* MARKA */
--tb-navy: #003366; /* beyaz 12.61:1 AAA */
--tb-navy-700: #002B57;
--tb-navy-300: #33628F;
--tb-navy-50: #E6EEF5; /* navy 10.76:1 */
--tb-orange: #FF6600; /* SADECE metinsiz aksan */
--tb-orange-ink: #C75000; /* beyaz 4.59:1 AA */
--tb-orange-dark: #FF9A4D; /* navy 5.99:1 */
--tb-wa: #188741; /* beyaz 4.58:1 AA — WhatsApp */
--tb-wa-icon: #25D366; /* SADECE ikon (1.98:1) */

/* NÖTRLER */
--tb-ink: #0F172A;
--tb-ink-2: #334155;
--tb-ink-3: #5A6B7C; /* beyaz 5.48:1 — ikincil MİNİMUM */
--tb-ink-muted: #8A96A3; /* 3.01:1 — YALNIZCA disabled */
--tb-border: #CBD3DB;
--tb-border-soft: #E2E8F0;
--tb-surface: #FFFFFF;
--tb-surface-2: #F7F9FB;
--tb-error: #B91C1C; /* beyaz üstünde 6.47:1 */
--tb-success: #166534;

/* TİPOGRAFİ */
--tb-font: "Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
--tb-fs-display: clamp(2.25rem, 1.500rem + 3.333vw, 4.500rem); /* 36 / 49.6 / 72 */
--tb-fs-h1: clamp(1.75rem, 1.250rem + 2.222vw, 3.250rem); /* 28 / 37.1 / 52 */
--tb-fs-h2: clamp(1.50rem, 1.208rem + 1.296vw, 2.375rem); /* 24 / 29.3 / 38 */
--tb-fs-h3: clamp(1.25rem, 1.083rem + 0.741vw, 1.750rem); /* 20 / 23.0 / 28 */
--tb-fs-h4: clamp(1.125rem,1.042rem + 0.370vw, 1.375rem); /* 18 / 19.5 / 22 */
--tb-fs-base: 1rem; /* 16px — FORM KONTROLLERİNDE TARTIŞMASIZ MİNİMUM (iOS zoom) */
--tb-fs-sm: 0.9375rem; /* 15 */
--tb-fs-xs: 0.8125rem; /* 13 */
--tb-lh-display: 0.95; --tb-lh-h1: 1.10; --tb-lh-h2: 1.15;
--tb-lh-h3: 1.20; --tb-lh-body: 1.55;
--tb-fw-body: 400; --tb-fw-med: 500; --tb-fw-head: 600; /* 700 YALNIZCA logo + eyebrow */
--tb-track-lg: -0.02em; /* >=32px */

/* BOŞLUK (4px ölçek) */
--tb-s-1: 4px; --tb-s-2: 8px; --tb-s-3: 12px; --tb-s-4: 16px;
--tb-s-5: 20px; --tb-s-6: 24px; --tb-s-8: 32px; --tb-s-10: 40px;
--tb-s-12: 48px; --tb-s-16: 64px; --tb-s-20: 80px;
--tb-gutter: clamp(1rem, 0.792rem + 0.926vw, 1.625rem); /* 16 / 19.8 / 26 */
--tb-section-y: clamp(3.5rem, 2.667rem + 3.704vw, 6rem); /* 56 / 71.1 / 96 */
--tb-container: 1200px;
--tb-measure: 68ch;

/* KENAR / RADIUS */
--tb-bw: 1px; --tb-r-sm: 6px; --tb-r: 8px; --tb-r-lg: 12px; --tb-r-pill: 100px;

/* GÖLGE (yalnızca 2) */
--tb-sh-sticky: 0 -2px 12px rgba(15, 23, 42, .10);
--tb-sh-pop: 0 10px 28px rgba(15, 23, 42, .14);

/* Z-INDEX */
--tb-z-filter: 30; --tb-z-header: 40; --tb-z-cta: 50; --tb-z-sheet: 60;

/* MOTION */
--tb-ease: cubic-bezier(.44, 0, .56, 1);
--tb-ease-out: cubic-bezier(.16, 1, .30, 1);
--tb-t-fast: 120ms; --tb-t-base: 200ms; --tb-t-sheet: 320ms;
--tb-t-reveal: 600ms; --tb-t-header: 400ms; --tb-stagger: 80ms;

/* ÖLÇÜLER */
--tb-header-h: 56px; /* >=1024px: 72px */
--tb-filterbar-h: 52px; --tb-cta-h: 64px; --tb-tap: 44px; --tb-btn-h: 48px;
}

@media (min-width: 1024px) { .tb-root { --tb-header-h: 72px; } }

/* İZOLASYON: tema (0,1,0) margin enjekte ediyor; :where() 0,0,0 ama
   ['global-styles'] SONRASI geldiğimiz için beraberliği alıyoruz. */
.tb-root :where(*){margin-block-start:0;max-width:none}
.tb-root{font-family:var(--tb-font);font-size:var(--tb-fs-base);line-height:var(--tb-lh-body);color:var(--tb-ink)}
/* tema contentSize/wideSize NÖTRLENİR */
.tb-root .tb-container{max-width:var(--tb-container);margin-inline:auto;padding-inline:var(--tb-gutter)}
/* iOS OTOMATİK ZOOM ÖNLEME — TARTIŞMASIZ */
.tb-root input,.tb-root select,.tb-root textarea{font-size:var(--tb-fs-base)}
/* ODAK HALKASI: ASLA KALDIRILMAZ */
.tb-root :focus-visible{outline:3px solid var(--tb-navy);outline-offset:2px}
.tb-root .tb-on-dark :focus-visible{outline-color:var(--tb-orange-dark)}
.tb-reveal{opacity:0;transform:translateY(20px);transition:opacity var(--tb-t-reveal) var(--tb-ease),transform var(--tb-t-reveal) var(--tb-ease)}
.tb-reveal.is-in{opacity:1;transform:none}
.tb-btn{transition:background-color var(--tb-t-base) var(--tb-ease),color var(--tb-t-base) var(--tb-ease)}
.tb-btn:active{transform:translateY(1px);transition-duration:var(--tb-t-fast)}
.tb-header{transition:top var(--tb-t-header) ease}
.tb-sheet{transform:translateY(100%);transition:transform var(--tb-t-sheet) var(--tb-ease-out)}
.tb-sheet.is-open{transform:none}
@media (prefers-reduced-motion:reduce){
.tb-root *,.tb-root *::before,.tb-root *::after{animation-duration:.001ms !important;transition-duration:.001ms !important}
.tb-reveal{opacity:1;transform:none}
}

/* BİLEŞENLER — E2 (kilitli) biter, yeni token BURADA. Kenar var, gölge
   yalnızca yüzende. */
.tb-root{--tb-ln:var(--tb-bw) solid var(--tb-border);--tb-ln2:var(--tb-bw) solid var(--tb-border-soft);--tb-font-mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,monospace}

/* taban — :where() (0,1,0): `.tb-root a` olsaydı --primary rengini ezerdi */
.tb-root{margin-block-start:0;-webkit-text-size-adjust:100%}
.tb-root *,.tb-root *::before,.tb-root *::after{box-sizing:border-box}
.tb-root :where(img,svg){display:block;max-width:100%}
.tb-root img{height:auto}
.tb-root :where(ul,ol){margin:0;padding:0;list-style:none}
.tb-root dd{margin:0}
.tb-fieldset{min-width:0;margin:0;padding:0;border:0}
.tb-root :where(p){margin:0 0 var(--tb-s-4)}
.tb-root :where(a){color:var(--tb-navy);text-underline-offset:2px}
.tb-root :where(button){font:inherit;color:inherit}
/* MONO = veri */
.tb-mono,.tb-count,.tb-badge__date,.tb-pagination a,.tb-pagination span{font-family:var(--tb-font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em}

/* tipografi */
.tb-root :where(h1,h2,h3,h4){margin:0 0 var(--tb-s-4);color:var(--tb-ink);font-weight:var(--tb-fw-head)}
.tb-root :where(h1){font-size:var(--tb-fs-h1);line-height:var(--tb-lh-h1);letter-spacing:var(--tb-track-lg)}
.tb-root :where(h2){font-size:var(--tb-fs-h2);line-height:var(--tb-lh-h2);letter-spacing:var(--tb-track-lg)}
.tb-root :where(h3){font-size:var(--tb-fs-h3);line-height:var(--tb-lh-h3)}
.tb-root :where(h4),.tb-legend{font-size:var(--tb-fs-h4);line-height:1.25}
.tb-lead,.tb-empty__text{font-size:var(--tb-fs-h4);line-height:1.45}
.tb-lead,.tb-prose,.tb-note,.tb-checklist,.tb-empty__text{color:var(--tb-ink-2)}
.tb-muted,.tb-hint,.tb-count,.tb-breadcrumb,.tb-result-count,.tb-spec dt,.tb-status{color:var(--tb-ink-3)}
.tb-xs,.tb-hint,.tb-count,.tb-breadcrumb,.tb-error,.tb-link,.tb-spec dt,.tb-status{font-size:var(--tb-fs-xs)}
.tb-sm,.tb-note,.tb-result-count,.tb-checklist,.tb-label{font-size:var(--tb-fs-sm)}
.tb-measure,.tb-prose,.tb-faq__a,.tb-empty__text{max-width:var(--tb-measure)}
.tb-spec dt,.tb-status{text-transform:uppercase;letter-spacing:.05em}
.tb-prose ul{margin:0 0 var(--tb-s-4);padding-left:var(--tb-s-5);list-style:disc}

/* .tb-page üstte 32px (96 değil): boşluk "yüklenmedi" okur.
   .tb-block = section İÇİNDE section yerine. */
.tb-section{padding-block:var(--tb-section-y)}
.tb-page{padding-block:var(--tb-s-8) var(--tb-section-y)}
.tb-block{margin-top:var(--tb-s-10)}
.tb-stack > * + *{margin-top:var(--tb-s-4)}

/* koyu navy yüzey */
.tb-on-dark{background:var(--tb-navy);color:#FFF}
.tb-on-dark h1,.tb-on-dark h2,.tb-on-dark h3,.tb-on-dark .tb-label{color:#FFF}
.tb-on-dark .tb-muted{color:var(--tb-navy-50)}
.tb-on-dark a:not(.tb-btn){color:var(--tb-orange-dark)}
.tb-on-dark .tb-btn--primary{background:#FFF;color:var(--tb-navy);border-color:#FFF}
.tb-on-dark .tb-btn--ghost{color:#FFF;border-color:var(--tb-navy-50)}
.tb-on-dark .tb-btn--ghost:hover{background:var(--tb-navy-700);color:#FFF}.tb-icon{width:24px;height:24px;flex:none;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.tb-icon--sm{width:16px;height:16px}/* buton: navy 12.61:1 · WA #188741 4.58:1 · turuncu dolgu ASLA */
.tb-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--tb-s-2);min-height:var(--tb-btn-h);padding:0 var(--tb-s-5);background:var(--tb-surface);color:var(--tb-navy);border:var(--tb-ln);border-radius:var(--tb-r);font-size:var(--tb-fs-sm);font-weight:var(--tb-fw-head);line-height:1.2;text-align:center;text-decoration:none;cursor:pointer;overflow:hidden}
.tb-btn:hover{background:var(--tb-surface-2)}
.tb-btn .tb-icon{width:20px;height:20px}
/* dolu/kenarlı durumu var ile sürülür (bkz .tb-card__actions); hover
   her iki durumda da DOLAR, rengi sabit. */
.tb-btn--primary{background:var(--tb-pbg,var(--tb-navy));color:var(--tb-pfg,#FFF);border-color:var(--tb-navy)}
.tb-btn--primary:hover{background:var(--tb-navy-700);color:#FFF;border-color:var(--tb-navy-700)}
.tb-btn--wa{background:var(--tb-wbg,var(--tb-wa));color:var(--tb-wfg,#FFF);border-color:var(--tb-wa)}
.tb-btn--wa:hover{background:#146F36;color:#FFF;border-color:#146F36}
.tb-on-dark .tb-btn--primary:hover{background:var(--tb-navy-50);color:var(--tb-navy);border-color:var(--tb-navy-50)}
.tb-btn--ghost{background:transparent}
.tb-btn--ghost:hover{background:var(--tb-navy-50)}
.tb-btn--lg{min-height:56px;padding-inline:var(--tb-s-6);font-size:var(--tb-fs-base)}
.tb-btn--sm{min-height:var(--tb-tap);padding-inline:var(--tb-s-3);font-size:var(--tb-fs-xs)}
.tb-btn[disabled],.tb-btn[aria-disabled=true]{background:var(--tb-surface-2);color:var(--tb-ink-muted);border-color:var(--tb-border-soft);cursor:not-allowed;pointer-events:none}

/* MÜHÜR — tarihli sicil kaydı. Yeşil "toast", navy "belge"; 8px = belge. */
.tb-badge{position:relative;display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--tb-s-1) var(--tb-s-2);min-height:32px;padding:var(--tb-s-1) var(--tb-s-3);background:var(--tb-navy-50);color:var(--tb-navy);border:var(--tb-bw) solid var(--tb-navy-300);border-radius:var(--tb-r);font-size:var(--tb-fs-xs);font-weight:var(--tb-fw-med);line-height:1.3;text-align:left}
.tb-badge::before{content:"";position:absolute;inset:-6px}   /* 44px hedef */
button.tb-badge{cursor:pointer}
.tb-badge__date{padding-left:var(--tb-s-2);border-left:var(--tb-bw) solid var(--tb-navy-300);font-weight:var(--tb-fw-body)}
.tb-badge--stale,.tb-badge--stale .tb-badge__date{color:var(--tb-ink-3);border-color:var(--tb-border)}
.tb-badge--stale{background:var(--tb-surface-2)}
.tb-badge-panel{margin:var(--tb-s-3) 0 0;padding:var(--tb-s-4);background:var(--tb-surface-2);border:var(--tb-ln2);border-left:3px solid var(--tb-navy);border-radius:0 var(--tb-r) var(--tb-r) 0;font-size:var(--tb-fs-sm)}
.tb-checklist{display:grid;gap:var(--tb-s-2);margin-bottom:var(--tb-s-3)}
.tb-checklist li{display:flex;align-items:flex-start;gap:var(--tb-s-2)}
.tb-checklist .tb-icon{color:var(--tb-navy)}
/* doğrulanamayan iddia TİK ALMAZ (B1) */
.tb-checklist .is-na{flex:none;width:16px;color:var(--tb-ink-3);text-align:center}

/* çip: 32px görünür, ::before ile 48px dokunma hedefi */
.tb-chips{display:flex;flex-wrap:wrap;gap:var(--tb-s-2)}
.tb-chip{position:relative;display:inline-flex;align-items:center;gap:var(--tb-s-1);min-height:32px;padding:0 var(--tb-s-3);background:var(--tb-surface);color:var(--tb-ink-2);border:var(--tb-ln);border-radius:var(--tb-r-pill);font-size:var(--tb-fs-xs);font-weight:var(--tb-fw-med);text-decoration:none;cursor:pointer}
.tb-chip::before{content:"";position:absolute;inset:-8px}
.tb-chip:hover{border-color:var(--tb-navy);color:var(--tb-navy)}
/* TURUNCU = sinyal, dolgu değil: #FF6600+beyaz 2.94:1 */
.tb-chip--active{color:var(--tb-navy);border-color:var(--tb-navy);font-weight:var(--tb-fw-head)}
.tb-chip--active::after,.tb-status::before{content:"";flex:none;width:6px;height:6px;background:var(--tb-orange);border-radius:50%}
.tb-chip--active::after{order:-1}

/* ortak yüzey */
.tb-card,.tb-rail,.tb-empty{background:var(--tb-surface);border:var(--tb-ln);border-radius:var(--tb-r-lg)}
.tb-note,.tb-empty{background:var(--tb-surface-2)}

/* liste + kart */
.tb-list{display:grid;gap:var(--tb-s-4)}
@media (min-width:900px){.tb-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
.tb-list--full{grid-template-columns:1fr}   /* 1-2 sonuçta TAM GENİŞLİK */
.tb-result-count{margin-bottom:var(--tb-s-4)}
/* satır 1 = 1fr: fazla yüksekliği GÖVDE yutar, mühür + eylemler dibe
   oturur (2 kolonlu grid tırtıklı okumaz) */
.tb-card{position:relative;display:grid;grid-template-columns:88px minmax(0,1fr);grid-template-rows:1fr auto auto;gap:var(--tb-s-3);padding:var(--tb-s-4)}
.tb-card:focus-within{border-color:var(--tb-navy)}
.tb-card__media{grid-column:1;align-self:start;width:88px;height:88px;overflow:hidden;border:var(--tb-ln2);border-radius:var(--tb-r)}
.tb-card__media img{width:100%;height:100%;object-fit:cover}
.tb-card__body{grid-column:2;min-width:0}
/* clamp ZORUNLU: 194px kolon */
.tb-card__title,.tb-card__desc{display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.tb-card__title{margin:0 0 var(--tb-s-2);font-size:1.0625rem;line-height:1.3;font-weight:var(--tb-fw-head)}
.tb-card__title a{color:inherit;text-decoration:none}
.tb-card__desc{margin:var(--tb-s-2) 0 0}
.tb-card__seal{grid-column:1 / -1;margin-top:var(--tb-s-3)}
.tb-card__meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--tb-s-1) var(--tb-s-3);margin-top:var(--tb-s-2);font-size:var(--tb-fs-xs);color:var(--tb-ink-3)}
/* `a` DA inline-flex: svg display:block ikonu metnin ÜSTÜNE atıp meta'yı
   iki satıra çıkarıyor ve kart hizasını kaydırıyordu. */
.tb-card__meta span,.tb-card__meta a,.tb-count,.tb-rail p a{display:inline-flex;align-items:center;gap:var(--tb-s-1)}
.tb-card__meta a{color:var(--tb-ink-3)}
.tb-card__meta .tb-icon,.tb-chip .tb-icon{width:14px;height:14px}
/* kart = tek link; buton/meta/mühür z-index'te */
.tb-card__link::after{content:"";position:absolute;inset:0;z-index:0;border-radius:inherit}
.tb-card__actions,.tb-card__meta a,.tb-card__seal{position:relative;z-index:1}
/* 360px: 294px / 2 buton + 8px = 143px. 3. BUTON KIRAR. */
.tb-card__actions{grid-column:1 / -1;display:flex;gap:var(--tb-s-2);margin-top:var(--tb-s-3)}
.tb-card__actions .tb-btn,.tb-sticky-cta .tb-btn{flex:1 1 0;min-width:0;padding-inline:var(--tb-s-3)}
/* HİYERARŞİ: iki DOLU buton seçim yaptırmaz. Cihazda ÇALIŞAN eylem dolu.
   <768 tel: çalışır -> Ara dolu. >=768 tel: ölü -> WhatsApp dolu. */
.tb-card__actions,.tb-sticky-cta{--tb-wbg:var(--tb-surface);--tb-wfg:var(--tb-wa)}

/* monogram: gri silüet YOK */
.tb-monogram{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:var(--tb-navy-50);color:var(--tb-navy)}
.tb-monogram .tb-icon{width:40px;height:40px}
.tb-monogram__initials{position:absolute;right:5px;bottom:3px;font-size:20px;font-weight:700;line-height:1}

/* KÜNYE — sicil tablosu, satır hairline */
.tb-spec{margin:var(--tb-s-5) 0 var(--tb-s-6);border-top:var(--tb-ln)}
.tb-spec div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--tb-s-1) var(--tb-s-4);padding:var(--tb-s-2) 0;border-bottom:var(--tb-ln2)}
.tb-spec dd{font-size:var(--tb-fs-sm);font-weight:var(--tb-fw-med);text-align:right}

/* FİLTRE — masaüstü bar, mobil sheet, TEK form. Açma bağı fragman linki;
   JS yoksa :target açar. */
/* Bar AKIŞTA: breadcrumb->h1->özet->FİLTRE->kartlar. Negatif gutter marjı
   zemini yayar, aynı gutter dolgusu kontrolleri h1 sol kenarına oturtur. */
.tb-filter{position:sticky;top:var(--tb-header-h);z-index:var(--tb-z-filter);margin:var(--tb-s-2) calc(var(--tb-gutter)*-1) var(--tb-s-6);padding-inline:var(--tb-gutter);background:var(--tb-surface);border-block:var(--tb-ln2);transition:top var(--tb-t-header) ease}
.tb-filter__inner{display:flex;align-items:center;gap:var(--tb-s-2);min-height:var(--tb-filterbar-h);overflow-x:auto;scrollbar-width:none}
.tb-filter__inner::-webkit-scrollbar{display:none}
.tb-filter__panel,.tb-filter form{display:contents}
.tb-filter__inner > *,.tb-filter form > *{flex:none}
.tb-filter .tb-select{width:auto;min-height:36px;padding-block:0}
.tb-filter__bar,.tb-filter__head{display:none}
@media (max-width:767px){
.tb-filter__inner{overflow:visible}
.tb-filter__bar{display:inline-flex}
.tb-filter__head{display:flex;justify-content:space-between;gap:var(--tb-s-3);margin:0;font-weight:var(--tb-fw-head)}
.tb-filter__panel{display:grid;gap:var(--tb-s-4);position:fixed;right:0;bottom:0;left:0;z-index:61;max-height:85vh;overflow:auto;padding:var(--tb-s-5) var(--tb-gutter) calc(var(--tb-s-5) + env(safe-area-inset-bottom));background:var(--tb-surface);border-radius:var(--tb-r-lg) var(--tb-r-lg) 0 0;box-shadow:var(--tb-sh-pop);visibility:hidden;transform:translateY(100%);transition:transform var(--tb-t-sheet) var(--tb-ease-out),visibility var(--tb-t-sheet)}
.tb-filter__panel.is-open,.tb-filter__panel:target{visibility:visible;transform:none}
.tb-filter__panel form{display:grid;gap:var(--tb-s-4)}
.tb-filter .tb-chips{flex:1 1 auto;min-width:0;row-gap:var(--tb-s-1)}
.tb-filter .tb-select,.tb-filter__panel form .tb-btn{width:100%;min-height:var(--tb-btn-h);padding-block:var(--tb-s-2)}
}
.tb-sheet-backdrop{position:fixed;inset:0;z-index:60;background:rgba(15,23,42,.5);opacity:0;transition:opacity 200ms linear}
.tb-sheet-backdrop.is-open{opacity:1}

/* BOŞ EKRAN — "Sonuç bulunamadı" YASAK */
.tb-empty{padding:var(--tb-s-6) var(--tb-s-5) var(--tb-s-8)}
.tb-status{display:flex;align-items:center;gap:var(--tb-s-2);margin:0 0 var(--tb-s-5);padding-bottom:var(--tb-s-3);border-bottom:var(--tb-ln)}
.tb-empty__text{margin-bottom:var(--tb-s-6)}
.tb-empty__actions{display:grid;gap:var(--tb-s-3)}
@media (min-width:560px){.tb-empty__actions{grid-auto-flow:column;justify-content:start}}
.tb-empty__lists{display:grid;gap:var(--tb-s-6);margin-top:var(--tb-s-8);padding-top:var(--tb-s-6);border-top:var(--tb-ln)}
.tb-nearby a{display:flex;align-items:center;justify-content:space-between;gap:var(--tb-s-3);min-height:var(--tb-tap);padding:var(--tb-s-2) 0;font-size:var(--tb-fs-sm);color:var(--tb-ink-2);text-decoration:none}
.tb-nearby a{border-bottom:var(--tb-ln2)}

/* breadcrumb + sayfalama */
.tb-breadcrumb{margin-bottom:var(--tb-s-4)}
.tb-breadcrumb ol{display:flex;flex-wrap:wrap;align-items:center;gap:var(--tb-s-1) var(--tb-s-2)}
.tb-breadcrumb li{display:flex;align-items:center;gap:var(--tb-s-2)}
.tb-breadcrumb li + li::before{content:"/";color:var(--tb-border)}
.tb-breadcrumb a{color:var(--tb-ink-3)}
.tb-pagination{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--tb-s-2);margin-top:var(--tb-s-8)}
.tb-pagination a,.tb-pagination span{display:inline-flex;align-items:center;justify-content:center;min-width:var(--tb-tap);min-height:var(--tb-tap);padding:0 var(--tb-s-3);color:var(--tb-navy);border:var(--tb-ln);border-radius:var(--tb-r);font-weight:var(--tb-fw-med);text-decoration:none}
.tb-pagination a:hover{background:var(--tb-navy-50)}
.tb-pagination [aria-current=page]{background:var(--tb-navy);color:#FFF;border-color:var(--tb-navy)}

/* SSS akordeonu */
.tb-faq{border-top:var(--tb-ln2)}
.tb-faq__item{border-bottom:var(--tb-ln2)}
.tb-faq__q{display:flex;align-items:center;justify-content:space-between;gap:var(--tb-s-3);width:100%;padding:var(--tb-s-4) 0;background:none;border:0;color:var(--tb-ink);text-align:left;font-size:var(--tb-fs-h4);font-weight:var(--tb-fw-head);line-height:1.3;cursor:pointer}
.tb-faq__q .tb-icon{color:var(--tb-navy)}
.tb-faq__q[aria-expanded=true] .tb-icon{transform:rotate(180deg)}
.tb-faq__a{padding-bottom:var(--tb-s-4);color:var(--tb-ink-2)}

@media (min-width:768px){
.tb-card__actions,.tb-sticky-cta{--tb-wbg:var(--tb-wa);--tb-wfg:#FFF;--tb-pbg:var(--tb-surface);--tb-pfg:var(--tb-navy)}
.tb-card__actions{flex-direction:row-reverse}   /* masaüstünde tel: ölüdür */
.tb-empty__lists{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
}

/* DETAY — DOM: kimlik+mühür+künye+İLETİŞİM, sonra benzer ustalar;
   >=1024 ray sıra değişmeden sağ sütunda */
.tb-detail{display:grid;gap:var(--tb-s-6)}
@media (min-width:1024px){
.tb-detail{grid-template-columns:minmax(0,1fr) 380px;gap:var(--tb-s-6) var(--tb-s-10);align-items:start}
.tb-detail__main,.tb-detail__more{grid-column:1}
.tb-rail{grid-column:2;grid-row:1;position:sticky;top:calc(var(--tb-header-h) + var(--tb-s-4))}
}
.tb-rail{display:grid;gap:var(--tb-s-4);padding:var(--tb-s-5)}
.tb-rail .tb-card__actions{margin:0}
.tb-figure{margin:0 0 var(--tb-s-5);overflow:hidden;border-radius:var(--tb-r-lg)}
.tb-figure:empty{display:none}   /* boş 16:9 kutu ASLA render edilmez */
.tb-facade{position:relative;display:block;width:100%;padding:0;aspect-ratio:16 / 9;background:var(--tb-navy-50);border:0;cursor:pointer}
.tb-facade .tb-icon{position:absolute;inset:0;width:56px;height:56px;margin:auto;color:var(--tb-navy)}
.tb-note{padding:var(--tb-s-4);border:var(--tb-ln2);border-radius:var(--tb-r)}

/* FORM: 16px TARTIŞMASIZ (iOS). Kenar #8A96A3 3.01:1 (1.4.11) */
.tb-form,.tb-field{display:grid;gap:var(--tb-s-2)}
.tb-form{gap:var(--tb-s-5)}
.tb-label{font-weight:var(--tb-fw-med);color:var(--tb-ink-2)}
.tb-req,.tb-error,.tb-alert{color:var(--tb-error)}
.tb-input,.tb-select{width:100%;min-height:var(--tb-btn-h);padding:var(--tb-s-2) var(--tb-s-3);background:var(--tb-surface);color:var(--tb-ink);border:var(--tb-bw) solid var(--tb-ink-muted);border-radius:var(--tb-r);font-family:inherit;font-size:var(--tb-fs-base);line-height:1.4}
.tb-select{cursor:pointer}
.tb-input--area{min-height:120px;padding-top:var(--tb-s-3);resize:vertical}
.tb-field [aria-invalid=true]{border-color:var(--tb-error);border-width:2px}
.tb-field :disabled{background:var(--tb-surface-2);color:var(--tb-ink-muted);cursor:not-allowed}
.tb-hint,.tb-error{margin:var(--tb-s-1) 0 0}
/* hata: renk TEK sinyal olamaz -> ikon + metin */
.tb-error{display:flex;align-items:center;gap:var(--tb-s-2);font-weight:var(--tb-fw-med)}
.tb-error::before{content:"!";flex:none;width:16px;background:var(--tb-error);border-radius:50%;color:#FFF;font:700 11px/16px var(--tb-font);text-align:center}
.tb-alert{display:flex;gap:var(--tb-s-3);padding:var(--tb-s-4);background:var(--tb-surface-2);border:var(--tb-bw) solid currentColor;border-left-width:4px;border-radius:var(--tb-r);font-size:var(--tb-fs-sm)}
.tb-alert p{margin:0}
.tb-alert--success{color:var(--tb-success)}
.tb-alert--info{color:var(--tb-navy)}
/* ONAYLAR — Kurul 2019/78: tek kutu tüm rızaları geçersiz kılar.
   Zorunlu düz navy, isteğe bağlı kesikli kural. */
.tb-consents{display:grid;gap:var(--tb-s-3)}
.tb-legend{padding:0;font-weight:var(--tb-fw-head)}
.tb-checkbox{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--tb-s-1) var(--tb-s-3);align-items:start;padding:var(--tb-s-3) var(--tb-s-4);border-left:3px solid var(--tb-navy)}
/* [type=checkbox] ŞART: kutuda gizli tb_doc input'u da var; `input` yazılınca
   HER kutu "isteğe bağlı" okunuyor, zorunlu ayrımı ölüyordu. */
.tb-checkbox:has(input[type=checkbox]:not([required])){border-left-style:dashed;border-left-color:var(--tb-ink-3)}
.tb-checkbox input{width:22px;height:22px;margin:2px 0 0;accent-color:var(--tb-navy)}
.tb-checkbox > :not(input){grid-column:2}
.tb-label--inline{font-weight:var(--tb-fw-head);color:var(--tb-ink);cursor:pointer}
.tb-apply,.tb-demand,.tb-report{display:grid;gap:var(--tb-s-5);max-width:720px}
.tb-demand,.tb-report{margin-top:var(--tb-s-10);padding-top:var(--tb-s-6);border-top:var(--tb-ln)}
.tb-demand__title,.tb-report__title{font-size:var(--tb-fs-h3);line-height:var(--tb-lh-h3)}
/* honeypot: display:none DEĞİL (D8) */
.tb-hp{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}

/* sticky CTA — 64px */
.tb-sticky-cta{position:fixed;right:0;bottom:0;left:0;z-index:var(--tb-z-cta);display:flex;align-items:center;gap:var(--tb-s-2);min-height:var(--tb-cta-h);padding:var(--tb-s-2) var(--tb-gutter);padding-bottom:calc(var(--tb-s-2) + env(safe-area-inset-bottom));background:var(--tb-surface);border-top:var(--tb-ln);box-shadow:var(--tb-sh-sticky)}
.tb-has-cta{padding-bottom:calc(64px + env(safe-area-inset-bottom))}   /* <body> ham deger */
@media (min-width:1024px){.tb-sticky-cta{display:none}.tb-has-cta{padding-bottom:0}}

.tb-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}

/* JS delay'i satır içi yazar -> !important şart */
@media (prefers-reduced-motion:reduce){
.tb-reveal{transition-delay:0s !important}
.tb-sheet-backdrop{transition:none}
}
@media (scripting:none){.tb-reveal{opacity:1;transform:none}}
.tb-hubs{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--tb-s-3);margin:0;padding:0;list-style:none}.tb-hub{display:flex;align-items:center;gap:var(--tb-s-3);min-height:68px;padding:var(--tb-s-3) var(--tb-s-4);border:1px solid var(--tb-border);border-radius:var(--tb-r-lg);color:var(--tb-ink);text-decoration:none;transition:border-color .2s var(--tb-ease),background-color .2s var(--tb-ease)}.tb-hub:hover{border-color:var(--tb-navy-300);background:var(--tb-surface-2)}.tb-hub__pl{flex:0 0 auto;min-width:32px;padding:3px 6px;border-radius:var(--tb-r-sm);background:var(--tb-navy-50);color:var(--tb-navy);font-family:var(--tb-font-mono);font-size:var(--tb-fs-xs);font-weight:700;text-align:center}.tb-hub__b{display:flex;flex:1 1 auto;flex-direction:column;gap:2px;min-width:0}.tb-hub__ad{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tb-hub__n{color:var(--tb-ink-3);font-family:var(--tb-font-mono);font-size:var(--tb-fs-xs)}.tb-hub__ok{flex:0 0 auto;width:16px;height:16px;color:var(--tb-navy-300);transition:transform .2s var(--tb-ease)}.tb-hub:hover .tb-hub__ok{transform:translateX(3px)}@media(prefers-reduced-motion:reduce){.tb-hub:hover .tb-hub__ok{transform:none}}
.tb-sprite{position:absolute;width:0;height:0;overflow:hidden}
