/* Marmaray sayfalarına özel bileşenler — şablon değişkenleriyle uyumlu */
body{color:var(--gray-800)}
.logo-text{display:flex;align-items:center;gap:8px;font-family:var(--font)}
.logo-badge{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:8px;background:var(--navy);color:var(--accent);font-size:15px;font-weight:800}
.logo-sub{font-size:12px;font-weight:600;color:var(--gray-500);margin-left:2px}
.menu-link{color:var(--gray-700)}
.menu-link[aria-current]{color:var(--blue-mid)}
.sub-menu .sm-head{font-size:11px;font-weight:700;color:var(--gray-400);letter-spacing:.6px;padding:8px 15px 4px;text-transform:uppercase}
.sub-menu.two-columns ul{max-height:70vh;overflow:auto}
@media(max-width:992px){.sub-menu.two-columns ul{max-height:none}}
@media(min-width:993px){.navbar{display:block}.has-submenu .sub-menu.two-columns{left:auto;right:0}}

/* Hero */
.hero-stats{gap:10px}
.hero-stat{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:8px 12px;min-width:88px}
.hero-stat-stop{color:rgba(255,255,255,.6)}
.hero-sub b,.hero-sub strong{color:#fff}
.live{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.5;color:rgba(255,255,255,.85);margin-top:14px;padding-top:14px;border-top:1px solid rgba(255,255,255,.12)}
.live-dot{flex:none;width:10px;height:10px;border-radius:50%;margin-top:5px;background:var(--gray-400)}
.live.on .live-dot{background:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.25)}
.live b{color:#fff}
.hero-live-m{display:none}
@media(max-width:768px){.hero-live-m{display:flex;margin-top:16px;padding:10px 12px;border:1px solid rgba(255,255,255,.14);border-radius:12px;background:rgba(255,255,255,.06)}.hero{padding-bottom:70px}}

/* Arama çubuğu = süre hesaplama */
select.search-input{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2.5'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:14px;padding-right:34px;font-size:15px;cursor:pointer}
.swap-btn{height:44px;width:44px;flex:none;border:1.5px solid var(--gray-200);border-radius:10px;background:var(--gray-50);color:var(--blue-mid);font-size:18px;font-weight:700}
.swap-btn:hover{background:var(--sky)}
.search-btn{justify-content:center}
.hesap-sonuc{width:100%;flex-basis:100%;border-top:1px solid var(--gray-100);padding-top:14px;margin-top:2px;font-size:14px;color:var(--gray-600)}
.hesap-sonuc .hs-route{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-weight:700;color:var(--gray-900);margin-bottom:10px}
.pill{font-size:11px;font-weight:600;padding:3px 10px;border-radius:20px;background:var(--sky);color:var(--blue-mid)}
.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.stat-box{background:var(--gray-50);border:1px solid var(--gray-100);border-radius:10px;padding:10px 12px}
.stat-box .l{display:block;font-size:11px;color:var(--gray-500);font-weight:600}
.stat-box .v{display:block;font-family:var(--mono);font-size:18px;font-weight:600;color:var(--gray-900)}
.stat-box .v.ilk{color:#2563eb}.stat-box .v.son{color:#dc2626}
.hesap-sonuc a{color:var(--blue-mid);font-weight:600}
@media(max-width:600px){.stat-grid{grid-template-columns:1fr 1fr}.swap-btn{width:100%}}

/* Route card ekleri */
.route-card .rc-times{display:flex;justify-content:space-between;font-family:var(--mono);font-size:13px;padding:8px 0 4px}
.route-card .rc-times span{display:flex;flex-direction:column;align-items:center;font-weight:600}
.route-card .rc-times small{font-family:Roboto,sans-serif;font-size:10px;color:var(--gray-400);font-weight:500}
.route-card .ilk{color:#2563eb}.route-card .son{color:#dc2626}
.route-card .nxt{color:var(--green)}

/* Tablolar */
.train-table .yaka-row td{background:var(--gray-100);font-size:12px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;padding:8px 18px}
.train-table .yaka-row.y-avrupa td{color:#1d4ed8}.train-table .yaka-row.y-tunel td{color:#0f766e}.train-table .yaka-row.y-anadolu td{color:#15803d}.train-table .yaka-row.y-kocaeli td{color:#7e22ce}
.train-table .no{font-family:var(--mono);color:var(--gray-400);font-size:12px;width:36px}
.train-table .muted{color:var(--gray-500);font-size:.85rem}
.train-table td.t,.mono{font-family:var(--mono);font-weight:600}
.tt-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:700px){.tt-grid{grid-template-columns:1fr}}
.tt-title{font-size:14px;font-weight:700;color:var(--gray-800);margin:0 0 8px;display:flex;gap:6px;align-items:center}
.tt-table th{width:62px;font-family:var(--mono)}
.tt-table td{font-family:var(--mono);font-size:14px;padding:9px 14px !important}
.tt-table td span{display:inline-block;min-width:28px;margin-right:6px}
.tt-table tbody th{background:var(--gray-50);color:var(--navy);border-bottom:1px solid #e2e8f0;padding:9px 12px;font-weight:700}
.tt-table small{font-family:Roboto,sans-serif;font-size:10px;color:var(--gray-400);font-weight:400;display:block}
.info-section h3{font-size:15px;font-weight:600;color:var(--gray-800);margin:18px 0 8px}
.info-section ul{margin:0 0 0 18px;font-size:14px;color:var(--gray-600)}
.info-section a{color:var(--blue-mid)}
.info-section a.durak-link{color:#05283b}
.note{font-size:12.5px !important;color:var(--gray-500) !important}

/* Aktarma kartları */
.feature-card .feature-tag{font-size:10px;font-weight:700;letter-spacing:.6px;color:var(--blue-mid);text-transform:uppercase}
.feature-card a{color:var(--blue-mid);font-size:13px;font-weight:600;margin-top:auto}
.feature-card .big{font-family:var(--mono);font-size:26px;font-weight:600;color:var(--navy);line-height:1.1}

/* Hat çizgisi (komşu duraklar) */
.hatcik{list-style:none;display:flex;margin:18px 0 4px;padding:0;overflow-x:auto;scrollbar-width:none}
.hatcik li{position:relative;flex:1 0 92px;text-align:center;padding-top:22px;font-size:12.5px;color:var(--gray-600)}
.hatcik li:before{content:"";position:absolute;top:8px;left:0;right:0;height:4px;background:var(--blue-lt)}
.hatcik li:first-child:before{left:50%}.hatcik li:last-child:before{right:50%}
.hatcik li:after{content:"";position:absolute;top:3px;left:50%;width:14px;height:14px;margin-left:-7px;border-radius:50%;background:#fff;border:3px solid var(--blue-mid)}
.hatcik li.cur:after{background:var(--accent);border-color:var(--accent);width:18px;height:18px;margin-left:-9px;top:1px}
.hatcik li.cur{font-weight:700;color:var(--navy)}
.hatcik a:hover{color:var(--blue-mid)}

/* SSS (details) */
details.faq-item>summary{list-style:none}
details.faq-item>summary::-webkit-details-marker{display:none}
details.faq-item .faq-answer{display:block}
details.faq-item[open] .faq-icon{transform:rotate(45deg)}
.faq-question h3{font-size:15px;font-weight:500;margin:0}

/* Sidebar */
.sb-card{min-height:0}
.sb-card .card-body{gap:10px}
.info-item b{color:var(--gray-800)}
.sidebar .st-list{padding:4px 18px 10px}
.sidebar .st-link-item:last-child{border-bottom:0}
.sidebar .st-link-item:hover{color:var(--blue-mid)}
.btn-map{display:inline-flex;gap:6px;align-items:center;margin-top:12px;padding:8px 14px;border-radius:8px;background:var(--navy);color:#fff !important;font-size:13px;font-weight:600}

/* Marmaray alt menüsü (şablondaki tabs-bar) */
.tabs-bar{background:#fff}
.tabs-inner{max-width:1200px}
.tabs-inner::-webkit-scrollbar{display:none}
a.tab-btn{display:block}
a.tab-btn:hover{color:var(--blue-mid)}
a.tab-btn[aria-current]{color:var(--blue-mid);border-bottom-color:var(--blue-mid)}
@media(max-width:992px){.tabs-bar{top:60px}}
/* Footer üstü bilgilendirme */
.site-note{max-width:1200px;margin:0 auto 24px;padding:0 24px;font-size:12.5px;color:var(--gray-500);text-align:center;line-height:1.6}
.foot-bl svg{width:22px;height:22px}
.ads-wrapper:empty{display:none}
@media(min-width:993px){.sub-menu{transition:opacity .2s ease,transform .2s ease,visibility 0s linear .2s}.has-submenu:hover .sub-menu{transition:opacity .2s ease,transform .2s ease,visibility 0s}}
/* Kalkış saatleri — tam saat kutucukları */
.tt-box{border:1px solid var(--gray-200);border-radius:12px;padding:14px;background:#fff}
.tt-count{margin-left:auto;font-size:11px;font-weight:600;color:var(--gray-500);background:var(--gray-100);padding:2px 8px;border-radius:20px}
.tt-chips{display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:6px}
.tt-chip{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:var(--mono);font-size:14px;font-weight:600;color:var(--gray-800);background:var(--gray-50);border:1px solid var(--gray-200);border-radius:8px;padding:7px 2px;line-height:1.1}
.tt-chip small{font-family:Roboto,sans-serif;font-size:9.5px;font-weight:600;text-transform:uppercase;letter-spacing:.4px;margin-top:2px}
.tt-chip.ilk{color:#2563eb;border-color:#bfdbfe;background:#eff6ff}
.tt-chip.son{color:#dc2626;border-color:#fecaca;background:#fef2f2}
.tt-chip.gece small{color:var(--gray-500)}
.tt-chip.gecti{opacity:.38}
.tt-chip.siradaki{background:var(--green);border-color:var(--green);color:#fff;box-shadow:0 2px 8px rgba(22,163,74,.35)}
.tt-chip.siradaki small{color:#fff}
.tt-legend{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;color:var(--gray-500);margin:10px 0 0}
.tt-legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:4px;vertical-align:-1px}
.train-table .mono,.train-table .saat-son{white-space:nowrap}

/* Kutunun tamamı tıklanabilir; link metni yalnızca anlamlı kısım */
.servis-item{position:relative}
.servis-item a.servis-title::after,.reverse-tag.stretch a::after{content:"";position:absolute;inset:0;z-index:1}
.reverse-tag.stretch{position:relative;cursor:pointer}
.reverse-tag.stretch a{color:inherit}
.servis-item:hover .servis-title{color:var(--blue-mid)}
.rota-isim a{color:var(--blue-mid)}
