/* ==========================================================================
   Tanitim sitesi (ds-public.css) — ds.css'in USTUNE biner, yalniz token kullanir.
   Kabuk: includes/ui.php ui_public_start/ui_public_end. Ortak parcalar: includes/public_site.php.
   ========================================================================== */

/* ---- Duzeltmeler: ds.css'teki bagli rengi dugmeler ezmesin ---------------- */
.ds-body a.btn{text-decoration:none}
.ds-body a.btn-primary,.ds-body a.btn-primary:hover{color:#fff}
.ds-body a.btn-beacon,.ds-body a.btn-beacon:hover{color:var(--ink-900)}
.ds-body a.btn-outline-light{color:#fff}
.ds-body a.btn-outline-light:hover{color:var(--ink-900)}
.ds-body a.btn-outline-secondary{color:var(--steel-700)}
.ds-body a.btn-outline-secondary:hover{color:var(--ink-900)}

/* Tablo kaydirma kutusu: ds-visually-hidden metinleri kutunun disina tasip sayfayi yatay kaydirmasin */
.ds-pub .ds-table-wrap,.ds-body .ds-table-wrap{position:relative}

/* Koyu yuzeylerde odak halkasi acik renk (acik zemindeki mavi halka burada gorunmez) */
.ds-hero :focus-visible,.pub-cta :focus-visible,.ds-pub-footer :focus-visible,.pub-dark :focus-visible{outline-color:var(--beacon-400)}

/* ---- Ust cubuk: mobil menu ------------------------------------------------ */
.ds-pub-nav-in{gap:var(--space-4)}
.ds-pub-nav .btn{white-space:nowrap}
@media (max-width:991.98px){
  .ds-pub-nav-in{padding:0 var(--space-4)}
  .ds-pub-nav .ds-nav-toggle{width:44px;height:44px}
  body.ds-nav-open .ds-pub-links{display:flex;flex-direction:column;gap:0;position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid var(--steel-200);padding:var(--space-2) var(--space-4) var(--space-4);box-shadow:0 16px 32px rgba(10,21,34,.12)}
  body.ds-nav-open .ds-body .ds-pub-links a,
  body.ds-nav-open .ds-pub-links a{display:flex;align-items:center;min-height:48px;border-bottom:1px solid var(--steel-100)}
  /* JS yoksa menu dugmesi de yok: baglantilar ikinci satirda yatay kayar */
  html:not(.pub-js) .ds-pub-nav-in{height:auto;flex-wrap:wrap;padding-block:var(--space-2)}
  html:not(.pub-js) .ds-pub-links{display:flex;order:5;width:100%;overflow-x:auto;gap:var(--space-4)}
}
@media (max-width:420px){.ds-pub-nav .btn{padding-inline:.6rem}}

/* ---- Ortak metin kalibi --------------------------------------------------- */
.pub-eyebrow{margin:0 0 var(--space-3);font-size:var(--fs-sm);font-weight:600;color:var(--harbor-600);letter-spacing:.01em}
.ds-hero .pub-eyebrow,.pub-cta .pub-eyebrow{color:var(--beacon-400)}
.pub-lead{font-size:var(--fs-md);color:var(--steel-600);max-width:62ch}
.ds-body .pub-title{font-size:var(--fs-2xl);letter-spacing:-.02em;line-height:1.15;margin-bottom:var(--space-3);max-width:24ch}
.pub-section-head{margin-bottom:var(--space-6)}
.pub-section-head p{color:var(--steel-600);max-width:62ch;margin-bottom:0}
.pub-note{font-size:var(--fs-sm);color:var(--steel-600)}
.pub-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.pub-req{font-weight:400;color:var(--steel-500);font-size:var(--fs-xs)}

/* ---- Ic sayfa basligi ----------------------------------------------------- */
.pub-pagehead{padding:var(--space-8) 0 var(--space-7);background:var(--steel-50);border-bottom:1px solid var(--steel-200)}
.ds-body .pub-pagehead h1{font-size:var(--fs-3xl);letter-spacing:-.025em;line-height:1.1;max-width:20ch;margin-bottom:var(--space-4)}

/* ---- Ana sayfa kahramani -------------------------------------------------- */
.ds-hero h1{max-width:20ch}
.ds-hero .pub-lead{color:var(--steel-300);max-width:48ch}
.ds-hero .btn-outline-light{--bs-btn-border-color:rgba(255,255,255,.5)}
.pub-board-sample{font-weight:400;font-size:var(--fs-xs);color:var(--beacon-400);border:1px dashed var(--beacon-400);border-radius:999px;padding:1px 10px;white-space:nowrap}
.ds-board-head strong{font-weight:600}
.pub-board-foot{margin:0;padding:var(--space-3) var(--space-4);border-top:1px solid rgba(255,255,255,.08);font-size:var(--fs-xs);color:var(--steel-400);max-width:none}
.ds-board .ds-route-meta{max-width:34ch}
.pub-board-sum{display:flex;flex-wrap:wrap;gap:var(--space-2);padding:0 var(--space-4) var(--space-4);margin:0;list-style:none}
.pub-board-sum .ds-chip{background:rgba(255,255,255,.08);color:var(--steel-200)}
.pub-board-sum .ds-chip--ok{background:rgba(15,118,110,.28);color:#9ee3da}
.pub-board-sum .ds-chip--warn{background:rgba(232,163,23,.18);color:var(--beacon-400)}

/* ---- Bolum duzenleri ------------------------------------------------------ */
.pub-split{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--space-7);align-items:start}
.pub-split--even{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.pub-split > .pub-section-head{margin-bottom:0}
.pub-sticky{position:sticky;top:calc(64px + var(--space-5))}

/* Tanim listesi: baslik + aciklama, ince cizgiyle ayrilir */
.pub-dl{margin:0}
.pub-dl > div{padding:var(--space-4) 0;border-top:1px solid var(--steel-200)}
.pub-dl > div:last-child{border-bottom:1px solid var(--steel-200)}
.pub-dl dt{font-weight:600;color:var(--ink-900);margin-bottom:var(--space-1)}
.pub-dl dd{margin:0;color:var(--steel-600);max-width:60ch}
.pub-dl dd + dd{margin-top:var(--space-2)}

/* Gercek sirali surec (3 adim) */
.pub-steps{margin-top:0}
.ds-steps h3{margin-bottom:var(--space-2)}
.ds-steps p{color:var(--steel-600);margin-bottom:0}

/* ---- Fiyat ---------------------------------------------------------------- */
.pub-price-wrap{background:#fff;border:1px solid var(--steel-200);border-radius:var(--radius)}
.pub-plans{width:100%;min-width:620px;border-collapse:collapse;font-size:var(--fs-sm)}
.pub-plans th,.pub-plans td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--steel-100);text-align:left;vertical-align:top}
.pub-plans thead th{background:var(--steel-50);border-bottom:1px solid var(--steel-200);font-weight:400}
.pub-plans thead th:first-child{width:28%}
.pub-plans tbody tr:last-child th,.pub-plans tbody tr:last-child td{border-bottom:0}
.pub-plans tbody th{font-weight:500;color:var(--steel-800)}
.pub-plan-name{display:block;font-weight:600;color:var(--ink-900);font-size:var(--fs-base)}
.pub-plan-price{display:block;font-size:var(--fs-xl);font-weight:600;color:var(--ink-900);letter-spacing:-.02em;line-height:1.2;margin-top:var(--space-1);font-variant-numeric:tabular-nums}
.pub-plan-unit{display:block;font-size:var(--fs-xs);color:var(--steel-600)}
.pub-plan-desc{display:block;font-size:var(--fs-xs);color:var(--steel-600);margin-top:var(--space-2)}
.pub-yes{display:inline-flex;align-items:center;gap:6px;color:var(--ok-700);font-weight:500}
.pub-yes::before{content:"";width:10px;height:6px;border-left:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg) translateY(-2px)}
.pub-no{color:var(--steel-500)}
.pub-common{list-style:none;margin:var(--space-4) 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:var(--space-1) var(--space-5);font-size:var(--fs-sm)}
.pub-common li{position:relative;padding:5px 0 5px 22px}
.pub-common li::before{content:"";position:absolute;left:2px;top:11px;width:10px;height:6px;border-left:2px solid var(--ok-600);border-bottom:2px solid var(--ok-600);transform:rotate(-45deg)}
.pub-calc{margin-top:var(--space-5);padding:var(--space-4) var(--space-5);border-left:3px solid var(--beacon-500);background:#fff;font-size:var(--fs-sm);max-width:none}
.pub-calc strong{color:var(--ink-900)}

/* Koyu bant: kisa onermeler yan yana */
.pub-dark .pub-section-head p{color:var(--steel-300)}
.pub-dark a{color:var(--beacon-400)}
.pub-dark a:hover{color:#fff}
.pub-trio{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-5);margin:0}
.pub-trio > div{border-top:1px solid rgba(255,255,255,.2);padding-top:var(--space-4)}
.pub-trio dt{color:#fff;font-weight:600;margin-bottom:var(--space-1)}
.pub-trio dd{margin:0;color:var(--steel-300);max-width:40ch}
.ds-body .pub-common-title{margin-top:var(--space-6)}

/* ---- SSS (details/summary, betiksiz) ------------------------------------- */
.pub-faq details{border-top:1px solid var(--steel-200)}
.pub-faq details:last-child{border-bottom:1px solid var(--steel-200)}
.pub-faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);min-height:52px;padding:var(--space-3) 0;font-weight:600;color:var(--ink-900)}
.pub-faq summary::-webkit-details-marker{display:none}
.pub-faq summary::after{content:"+";font-size:1.25rem;font-weight:400;color:var(--steel-500);flex:none}
.pub-faq details[open] summary::after{content:"\2212"}
.pub-faq details p{color:var(--steel-600);margin:0 0 var(--space-4);max-width:62ch}

/* ---- Demo formu ----------------------------------------------------------- */
.pub-demo-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--space-7);align-items:start}
.pub-contact-list{list-style:none;margin:var(--space-5) 0 0;padding:0}
.pub-contact-list li{padding:var(--space-3) 0;border-top:1px solid var(--steel-200)}
.pub-contact-list li:last-child{border-bottom:1px solid var(--steel-200)}
.pub-contact-list span{display:block;font-size:var(--fs-xs);color:var(--steel-600)}
.pub-contact-list a,.pub-contact-list strong{font-weight:600;color:var(--ink-900)}
.pub-form{padding:var(--space-5)}
.pub-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 var(--space-4)}
.pub-form-grid .is-wide{grid-column:1 / -1}
.pub-form .form-check-input{width:1.25rem;height:1.25rem;margin-top:.15rem;border-color:var(--steel-500)}
.pub-form .form-check{display:flex;gap:var(--space-3);padding-left:0;align-items:flex-start}
.pub-form .form-check-input{float:none;margin-left:0;flex:none}
.pub-form .form-check-label{font-size:var(--fs-sm);color:var(--steel-700)}
.pub-form .btn{min-height:44px}
.pub-form-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center}
.pub-alert{margin-bottom:var(--space-4)}

/* ---- Iletisim bandi (koyu) ------------------------------------------------ */
.pub-cta{background:var(--ink-900);color:var(--steel-300);padding:var(--space-7) 0}
.pub-cta-in{display:flex;flex-wrap:wrap;gap:var(--space-5);justify-content:space-between;align-items:center}
.ds-body .pub-cta h2{color:#fff;font-size:var(--fs-xl);margin-bottom:var(--space-2)}
.pub-cta p{margin:0;color:var(--steel-300);max-width:56ch}
.pub-cta-actions{display:flex;flex-wrap:wrap;gap:var(--space-3)}

/* ---- Ozellikler: okutma dogrulama rotasi ---------------------------------- */
.pub-route-card{background:#fff;border:1px solid var(--steel-200);border-radius:var(--radius);padding:var(--space-5)}
.pub-route-card .ds-route-title{font-size:var(--fs-base)}
.pub-route-card .ds-route-meta{font-size:var(--fs-sm);max-width:52ch}
.pub-route-card .ds-route-item{grid-template-columns:20px 1fr}
.pub-group + .pub-group{margin-top:var(--space-8)}

/* ---- Ekran ornekleri ------------------------------------------------------ */
.pub-shot{background:#fff;border:1px solid var(--steel-200);border-radius:var(--radius-lg);overflow:hidden}
.pub-shot-bar{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);background:var(--ink-900);color:#fff;font-size:var(--fs-sm)}
.pub-shot-bar span{color:var(--beacon-400);font-size:var(--fs-xs)}
.pub-shot-body{padding:var(--space-4)}
.pub-shot .ds-table-wrap{border:1px solid var(--steel-200);border-radius:var(--radius)}
.pub-shot .table{min-width:480px}
.pub-shot-filters{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-bottom:var(--space-4)}
.pub-shot-filters div{font-size:var(--fs-xs);color:var(--steel-600)}
.pub-shot-filters b{display:block;font-weight:600;color:var(--steel-800);font-size:var(--fs-sm)}
.pub-shot-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-4)}
.pub-fakebtn{display:inline-flex;align-items:center;gap:var(--space-2);border:1px solid var(--steel-300);border-radius:var(--radius);padding:.35rem .75rem;font-size:var(--fs-sm);font-weight:500;color:var(--steel-700);background:#fff}
.pub-fakebtn--main{background:var(--harbor-600);border-color:var(--harbor-600);color:#fff}
.pub-phone{width:min(100%,280px);margin:0 auto;border:8px solid var(--ink-900);border-radius:28px;background:#fff;overflow:hidden}
.pub-phone-cam{aspect-ratio:1/1;background:var(--ink-950);display:grid;place-items:center;position:relative}
.pub-phone-cam::before{content:"";width:58%;aspect-ratio:1/1;border:2px solid var(--beacon-400);border-radius:8px;box-shadow:0 0 0 999px rgba(10,21,34,.55) inset}
.pub-phone-body{padding:var(--space-4)}
.pub-phone-body p{margin:0 0 var(--space-2);font-size:var(--fs-sm)}
.pub-incident dt{font-size:var(--fs-xs);color:var(--steel-600);font-weight:400}
.pub-incident dd{margin:0 0 var(--space-3);color:var(--steel-900);font-weight:500}
.pub-shot-row{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--space-7);align-items:center}
.pub-shot-row + .pub-shot-row{margin-top:var(--space-8)}
.pub-shot-row.is-flip{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}
.pub-shot-row.is-flip > :first-child{order:2}

/* ---- Guvenlik sayfasi ----------------------------------------------------- */
.pub-limits{border:1px solid var(--steel-200);border-left:4px solid var(--beacon-500);background:#fff;border-radius:var(--radius);padding:var(--space-5)}
.pub-limits h3{font-size:var(--fs-md)}
.pub-limits ul{margin:0;padding-left:1.1rem;color:var(--steel-700)}
.pub-limits li + li{margin-top:var(--space-2)}

/* ---- Duyarli -------------------------------------------------------------- */
@media (max-width:991.98px){
  .pub-split,.pub-split--even,.pub-demo-grid,.pub-shot-row{grid-template-columns:1fr;gap:var(--space-5)}
  .pub-sticky{position:static}
  .pub-trio{grid-template-columns:1fr}
  .pub-shot-row.is-flip{grid-template-columns:1fr}
  .pub-shot-row.is-flip > :first-child{order:0}
  .pub-shot-row + .pub-shot-row{margin-top:var(--space-7)}
  .ds-body .pub-pagehead h1{font-size:var(--fs-2xl)}
  .pub-pagehead{padding:var(--space-7) 0 var(--space-6)}
  .ds-body .pub-title{font-size:var(--fs-xl)}
}
@media (max-width:575.98px){
  .pub-form-grid{grid-template-columns:1fr}
  .pub-form{padding:var(--space-4)}
  .ds-hero-actions .btn,.pub-cta-actions .btn{width:100%}
  .pub-plans th:first-child,.pub-plans td:first-child{position:sticky;left:0;background:#fff;z-index:1}
  .pub-plans thead th:first-child{background:var(--steel-50)}
}
