/*
Theme Name: TBS Theme
Theme URI: https://example.com
Author: 444 Reklam
Description: Custom lightweight marketing theme for the Taxi Booking Systems SaaS site. No page builder. Design system: ink/amber/paper, Sora + Inter + IBM Plex Mono.
Version: 0.11.0
Requires PHP: 7.4
License: Proprietary
Text Domain: tbs
*/

:root {
  --ink: #14181F;
  --amber: #E8A33D;
  --amber-hover: #F0B558;
  --paper: #F7F5F0;
  --slate: #6B7280;
  --line: #D8D4CB;
  --ok: #2F9E6E;
  --error: #B4540A;
}

html, body { margin: 0; padding: 0; background: var(--paper); }
body { font-family: Inter, system-ui, sans-serif; color: var(--ink); -webkit-font-smoothing: antialiased; }
a { color: inherit; text-decoration: none; }
a:hover { color: var(--amber); }
a:focus-visible, button:focus-visible { outline: 2px solid var(--amber); outline-offset: 3px; border-radius: 2px; }

@keyframes tb-flash { 0% { background: rgba(232,163,61,0.22); } 100% { background: rgba(232,163,61,0); } }
@keyframes tb-blink { 0%, 100% { opacity: 1; } 50% { opacity: 0.25; } }

.tb-menubtn { display: none; }
@media (max-width: 860px) {
  .tb-navlinks { display: none !important; }
  .tb-menubtn { display: inline-flex !important; }
}
@media (prefers-reduced-motion: reduce) {
  * { animation: none !important; transition: none !important; }
}

/* style-hover dönüşümleri (Claude Design → CSS) */
[data-hv="amber"]:hover { background: var(--amber-hover) !important; color: var(--ink) !important; }
[data-hv="ghost"]:hover { border-color: var(--amber) !important; color: var(--amber) !important; }

/* WP admin bar ile çakışma önleme */
body.admin-bar #tbs-mobile-menu { top: auto; }

/* Ekran okuyucu yardımcısı */
.screen-reader-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(1px,1px,1px,1px); }

/* ---- v0.2 ---- */
/* Mobil menü: inline display:flex, hidden niteliğini eziyordu */
#tbs-mobile-menu[hidden] { display: none !important; }
@media (min-width: 861px) { #tbs-mobile-menu { display: none !important; } }

/* Akordiyon */
.tbs-acc-a[hidden] { display: none !important; }
.tbs-acc-q.is-open .tbs-acc-mark { color: var(--slate); }

/* Filtre / kategori çipleri */
.tbs-chip { font-family: 'IBM Plex Mono', monospace; font-size: 12px; letter-spacing: 0.1em; padding: 8px 16px; border-radius: 6px; cursor: pointer; border: 1px solid #D8D4CB; background: #FFFFFF; color: #6B7280; }
.tbs-chip:hover { border-color: var(--ink); color: var(--ink); }
.tbs-chip.is-active { border-color: var(--ink); background: var(--ink); color: #F7F5F0; }

/* Features: hero kartlar geniş ekranda 2 sütun */
@media (min-width: 720px) { .tbs-ft-hero { grid-column: span 2; } }

/* Yazı içeriği tipografisi */
.tbs-prose { display: flex; flex-direction: column; gap: 22px; font-size: 17px; line-height: 1.7; color: #14181F; }
.tbs-prose p { margin: 0; }
.tbs-prose h2 { font-family: Sora, sans-serif; font-weight: 600; font-size: 24px; letter-spacing: -0.01em; margin: 18px 0 0; }
.tbs-prose h3 { font-family: Sora, sans-serif; font-weight: 600; font-size: 19px; margin: 12px 0 0; }
.tbs-prose a { border-bottom: 1px solid var(--amber); }
.tbs-prose ul, .tbs-prose ol { margin: 0; padding-left: 22px; display: flex; flex-direction: column; gap: 8px; }
.tbs-prose blockquote { margin: 0; padding: 4px 0 4px 20px; border-left: 2px solid var(--amber); color: var(--slate); }
.tbs-prose img { max-width: 100%; height: auto; border-radius: 8px; }
.tbs-prose code { font-family: 'IBM Plex Mono', monospace; font-size: 0.9em; background: #ECE9E2; padding: 2px 6px; border-radius: 4px; }

/* Sayfalama */
.pagination .nav-links { display: flex; gap: 10px; align-items: center; }
.pagination .page-numbers { border: 1px solid #D8D4CB; border-radius: 6px; padding: 6px 12px; color: #6B7280; }
.pagination .page-numbers.current { background: var(--ink); border-color: var(--ink); color: #F7F5F0; }

/* ---- v0.3: Booking board taşma düzeltmesi ----
   REF sütunu her zaman gizli; ≤700px'te FLIGHT da gizli + sıkı düzen. */
#tbs-board > div, .tbs-board-head {
  grid-template-columns: 52px minmax(130px, 1fr) 64px 92px 120px !important;
}
#tbs-board > div > span:nth-child(2), .tbs-board-head > span:nth-child(2) { display: none !important; }
@media (max-width: 700px) {
  #tbs-board > div, .tbs-board-head {
    grid-template-columns: 44px minmax(100px, 1fr) 78px 92px !important;
    gap: 6px !important; padding: 10px 12px !important; font-size: 12px !important;
  }
  #tbs-board > div > span:nth-child(4), .tbs-board-head > span:nth-child(4) { display: none !important; }
}

/* ---- v0.4: Pricing toggle (annual / monthly) ---- */
.tbs-toggle { display: inline-flex; border: 1px solid rgba(255,255,255,0.25); border-radius: 8px; padding: 4px; gap: 4px; }
.tbs-toggle-btn { font-family: 'IBM Plex Mono', monospace; font-size: 12px; letter-spacing: 0.1em; padding: 9px 16px; border-radius: 6px; cursor: pointer; border: 0; background: transparent; color: #9AA1AC; }
.tbs-toggle-btn:hover { color: #F7F5F0; }
.tbs-toggle-btn.is-active { background: var(--amber); color: var(--ink); }
[data-price][hidden] { display: none !important; }

/* Feature rozetleri */
.tbs-badge { font-family: 'IBM Plex Mono', monospace; font-size: 10px; letter-spacing: 0.12em; padding: 3px 8px; border-radius: 4px; background: var(--ink); color: var(--amber); }
.tbs-badge-addon { background: transparent; border: 1px solid var(--line); color: var(--slate); }

/* Referans (Customers) kartları */
.tbs-ref { transition: transform 160ms ease, border-color 160ms ease, box-shadow 160ms ease; }
.tbs-ref:hover { color: var(--ink); transform: translateY(-3px); border-color: var(--ink) !important; box-shadow: 0 14px 34px rgba(20,24,31,0.10); }
.tbs-ref:hover .tbs-ref-visit { color: var(--ink); border-color: var(--ink); }
.tbs-ref h3 { color: var(--ink); }
.tbs-ref-shot img { transition: transform 600ms ease; }
.tbs-ref:hover .tbs-ref-shot img { transform: scale(1.02); }
.tbs-chip-sm { font-family: 'IBM Plex Mono', monospace; font-size: 10px; letter-spacing: 0.1em; padding: 5px 9px; border-radius: 4px; border: 1px solid var(--line); color: var(--slate); }
.tbs-ref-visit { font-family: 'IBM Plex Mono', monospace; font-size: 10px; letter-spacing: 0.1em; padding: 5px 9px; border-radius: 4px; border: 1px solid var(--amber); color: var(--amber); margin-left: auto; }
.tbs-chip-dark { font-family: 'IBM Plex Mono', monospace; font-size: 12px; letter-spacing: 0.06em; border: 1px solid rgba(255,255,255,0.2); border-radius: 6px; padding: 6px 12px; color: #9AA1AC; }

/* Partner tablosu mobil */
@media (max-width: 640px) {
  .tb-ptable [style*="grid-template-columns: 1.4fr 1fr 1fr"] { grid-template-columns: 1fr !important; }
}

/* Turnstile genişliği */
.cf-turnstile { min-height: 65px; }

/* ---- v0.4.4: GEO strip (Ask AI) ---- */
.tbs-ai-btn { display: inline-flex; align-items: center; padding: 8px 16px; border-radius: 999px; border: 1px solid rgba(232,163,61,0.45); background: rgba(232,163,61,0.06); color: #F7F5F0; font-size: 13px; font-weight: 500; transition: background 150ms ease, border-color 150ms ease; }
.tbs-ai-btn:hover { background: var(--amber); border-color: var(--amber); color: var(--ink); }
.tbs-ai-tool { font-family: 'IBM Plex Mono', monospace; font-size: 11px; letter-spacing: 0.06em; padding: 6px 12px; border: 1px solid rgba(255,255,255,0.14); border-radius: 999px; color: #9AA1AC; white-space: nowrap; }
.tbs-ai-tool:hover { color: #F7F5F0; border-color: rgba(255,255,255,0.4); }
@media (max-width: 768px) { .tbs-ai-tools { justify-content: flex-start !important; } }

/* ---- v0.6.0: Karşılaştırma tablosu, mobilde tek kolon ---- */
@media (max-width: 720px) {
  .tbs-cmp > div { grid-template-columns: 1fr !important; gap: 6px !important; }
  .tbs-cmp > div:first-child { display: none !important; }
}

/* ---- v0.7.0: iletişim sayfası sosyal butonları ---- */
.tbs-soc-btn {
  font-family: 'IBM Plex Mono', monospace;
  font-size: 12px;
  letter-spacing: 0.04em;
  color: #14181F;
  border: 1px solid #D8D4CB;
  border-radius: 6px;
  padding: 7px 12px;
  background: #FFFFFF;
  transition: border-color .15s ease, background .15s ease;
}
.tbs-soc-btn:hover { border-color: #E8A33D; background: #FFFDF8; }
