/* turkeyroutes — theme pages (01.10): /caves-waterfalls/ and /hidden-gems/. Builds on kis.css (map frame, cards) and the tokens of tr.css / ortak.css. */

/* map pins by type */
.tpin circle { fill: var(--t-gem); stroke: #fff; stroke-width: 2.5; transition: r .15s; }
.tpin--cave circle { fill: var(--t-cave); } .tpin--waterfall circle { fill: var(--t-water); } .tpin--gorge circle { fill: var(--t-gorge); }
.tpin-g { fill: #fff; stroke: none; } .tpin-s { fill: none; stroke: #fff; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.tpin:hover circle, .tpin:focus-visible circle { r: 14; }
.tpin.is-off { display: none; }
.tkey::before { content: ""; display: inline-block; width: 11px; height: 11px; border-radius: 50%; margin-right: 6px; vertical-align: -1px; background: var(--t-gem); }
.tkey--cave::before { background: var(--t-cave); } .tkey--waterfall::before { background: var(--t-water); } .tkey--gorge::before { background: var(--t-gorge); }

/* type tabs + region chips (tema.js; hidden without JS, when both lists simply show) */
.tfilter { display: grid; gap: 10px; margin: 0 0 12px; }
.tfilter[hidden] { display: none; }
.ttabs { display: flex; flex-wrap: wrap; gap: 6px; }
.ttabs [role="tab"] { border: 1px solid var(--line); background: #fff; color: var(--night); border-radius: 999px; padding: 8px 14px; font: 600 .92rem/1 var(--f-body); cursor: pointer; min-height: 40px; }
.ttabs [role="tab"] span { font: 600 .78rem/1 var(--f-mono); color: var(--ink-2); margin-left: 4px; }
.ttabs [aria-selected="true"] { background: var(--night); color: #fff; border-color: var(--night); }
.ttabs [aria-selected="true"] span { color: #cfd6e4; }
.tchips { display: flex; flex-wrap: wrap; gap: 6px; }
.tchips .chip { border: 1px solid var(--line); background: #fff; border-radius: 999px; padding: 6px 12px; font-size: .86rem; cursor: pointer; color: var(--ink); min-height: 36px; }
.tchips .chip small { font-family: var(--f-mono); color: var(--ink-2); margin-left: 3px; }
.tchips .chip[aria-pressed="true"] { background: #e6f3f2; border-color: var(--sea); color: var(--night); }
.tcard.is-off, [data-tlist].is-off { display: none; }

/* cave / waterfall card */
.tdot { display: inline-block; width: 9px; height: 9px; border-radius: 50%; background: var(--t-gem); }
.tdot--cave { background: var(--t-cave); } .tdot--waterfall { background: var(--t-water); } .tdot--gorge { background: var(--t-gorge); }
.tcard-noimg { color: #fff; font: 700 1rem/1 var(--f-display); letter-spacing: .02em; }
.tcard .kis-card-b { display: flex; flex-direction: column; gap: 2px; }
.tstat { margin: 0 0 10px !important; padding: 6px 10px; border-radius: 10px; font-size: .86rem !important; background: #fff7e6; border: 1px solid #f1dcae; }
.tstat b { color: var(--amber); }
.tstat.is-open { background: #eaf6f0; border-color: #bfe2cf; } .tstat.is-open b { color: var(--ok); }
.tstat.is-closed { background: #fdecea; border-color: #f3c3be; } .tstat.is-closed b { color: var(--warn); }
.tstat span { color: var(--ink-2); }
.tcard .kis-facts div { grid-template-columns: 74px minmax(0, 1fr); }
.tema-out { margin: 0 0 12px; padding-left: 18px; }
.tema-out li { margin-bottom: 4px; }

/* hidden gems */
.gem-intro { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr); gap: 28px; align-items: start; }
.gem-intro h2 { font-size: 1.5rem; margin-bottom: 12px; }
.gem-crit { list-style: none; margin: 0 0 14px; padding: 0; display: grid; gap: 8px; }
.gem-crit li { padding: 10px 14px 10px 40px; border-radius: 14px; background: #fbf1ea; position: relative; font-weight: 600; color: var(--night); }
.gem-crit li::before { content: "✓"; position: absolute; left: 14px; top: 9px; color: var(--t-gem); font-weight: 800; }
.gem-reg { font: 600 .85rem/1 var(--f-body); margin-left: 10px; letter-spacing: 0; }
.gem-safety { margin: 0 0 14px; }
.gem-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-top: 14px; }
.gem { display: grid; grid-template-columns: 200px minmax(0, 1fr); background: #fff; border: 1px solid var(--line); border-radius: 18px; overflow: hidden; scroll-margin-top: 90px; }
.gem-img { display: block; background: #fbf1ea; min-height: 100%; }
.gem-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.gem-b { padding: 14px 16px; min-width: 0; }
.gem-b h3 { font-size: 1.2rem; margin: 0 0 8px; }
.gem-b h3 a { color: var(--night); text-decoration: none; } .gem-b h3 a:hover { text-decoration: underline; }
.gem-facts { margin: 0 0 10px; display: grid; gap: 6px; font-size: .9rem; }
.gem-facts div { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 8px; }
.gem-facts dt { font: 600 .66rem/1.7 var(--f-mono); letter-spacing: .07em; text-transform: uppercase; color: var(--ink-2); }
.gem-facts dd { margin: 0; min-width: 0; }
.gem-act { margin: 0; display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.gem-route { background: #fbf1ea; border-radius: 22px; padding: 22px 24px; }
.gem-route .kis-trip li { background: #fff; }

@media (max-width: 1000px) {
  .gem-list { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
  .gem-intro { grid-template-columns: 1fr; }
  .gem { grid-template-columns: 1fr; }
  .gem-img { aspect-ratio: 16 / 9; }
  .gem-facts div { grid-template-columns: 1fr; gap: 0; }
  .gem-route { padding: 16px; border-radius: 16px; }
}

/* 01.10 viewpoints (/viewpoints/) */
.tpin--view circle { fill: var(--t-view); } .tpin--adv circle { fill: var(--t-adv); }
.tkey--view::before { background: var(--t-view); } .tkey--adv::before { background: var(--t-adv); }
.tdot--view { background: var(--t-view); } .tdot--adv { background: var(--t-adv); }
.vcard.is-off { display: none; }
.vcard-noimg { background: linear-gradient(160deg, #f0b35a, #c96a1b 70%, #7a3d12); }
.vcard .kis-card-b { display: flex; flex-direction: column; gap: 4px; }
.vcard h3 { margin-bottom: 2px; }
.vsun { margin: 0 0 6px !important; padding: 6px 10px; border-radius: 10px; background: #fff4e3; border: 1px solid #f1d4a6; font-size: .86rem !important; color: var(--night); }
.vsun-t { font: 700 .66rem/1 var(--f-mono); letter-spacing: .08em; text-transform: uppercase; color: #9a5a00; margin-right: 4px; }
.vsun small { color: var(--ink-2); font-size: .78rem; }
.vtext { font-size: .92rem; margin: 0 0 8px !important; }
.vcard .kis-facts div { grid-template-columns: 84px minmax(0, 1fr); }
.vnote { margin: 6px 0 0 !important; }
.vrel { font-size: .86rem; }
.vcard .gem-act { margin-top: 8px; }
.sun-note { margin: 10px 0 0; padding: 10px 14px; border-left: 3px solid var(--t-view); background: #fff8ee; border-radius: 0 12px 12px 0; font-size: .9rem; }

/* 01.10 adventure (/adventure/, /adventure/{slug}/) */
.acard .kis-card-b { display: flex; flex-direction: column; gap: 6px; }
.acard h3 a { color: var(--night); text-decoration: none; } .acard h3 a:hover { text-decoration: underline; }
.acard .kis-facts div { grid-template-columns: 76px minmax(0, 1fr); }
.acard-rules { font-size: .84rem; color: var(--ink-2); margin: 0 !important; }
.acard-rules b { color: var(--ok); } .acard-rules b.no { color: var(--amber); }
.rules { background: #f4f8fb; border: 1px solid #d6e4ee; border-radius: 22px; padding: 22px 24px; }
.rules h2 { margin-bottom: 6px; }
.rules-list { margin: 14px 0 0; padding-left: 22px; display: grid; gap: 12px; }
.rules-list li { padding-left: 4px; }
.rules-list li::marker { font-weight: 800; color: var(--night); }
.rules-list .src-line { margin-top: 3px; }
.rules-out { margin: 16px 0 0; padding: 12px 14px; background: #fff7e6; border: 1px dashed #d9a730; border-radius: 14px; font-size: .92rem; }
.rules-out p { margin: 0 0 4px; }
.rules-none { margin: 12px 0 0; padding: 12px 14px; background: #fff; border: 1px solid var(--line); border-radius: 14px; }
.op-list { margin: 10px 0 0; padding-left: 20px; display: grid; gap: 8px; }
.adv-where { list-style: none; margin: 10px 0 0; padding: 0; display: grid; gap: 8px; }
.adv-where li { padding: 10px 14px; border: 1px solid var(--line); border-radius: 14px; background: #fff; }
.adv-where small { color: var(--ink-2); }
.adv-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr); gap: 24px; align-items: start; }
.likya { margin: 14px 0 0; }
.likya svg { width: 100%; height: auto; display: block; background: #d7eeee; border-radius: 18px; }
.likya .lk-land { fill: #f7e9de; stroke: #d9c3b0; stroke-width: 1.2; }
.likya .lk-line { fill: none; stroke: #c8102e; stroke-width: 2.6; stroke-linecap: round; stroke-linejoin: round; }
.likya .lk-pt circle { fill: #13233f; stroke: #fff; stroke-width: 2; }
.likya .lk-pt text { font: 700 13px/1 var(--f-body); fill: #13233f; paint-order: stroke; stroke: #fff; stroke-width: 4px; }
.likya figcaption { padding: 6px 4px 0; font-size: .8rem; color: var(--ink-2); }
@media (max-width: 900px) { .adv-grid { grid-template-columns: 1fr; } .rules { padding: 16px; border-radius: 16px; } }

/* 01.10 regional food (/regional-food/) */
:root { --t-food: #9c2f55; }
.tpin--food circle { fill: var(--t-food); } .tkey--food::before { background: var(--t-food); } .tdot--food { background: var(--t-food); }
.food-top { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.35fr); gap: 28px; align-items: start; }
.food-key h2 { font-size: 1.5rem; margin-bottom: 10px; }
.food-key > p { margin: 0 0 12px; }
.food-legend { margin: 0 0 12px; display: grid; gap: 10px; font-size: .9rem; }
.food-legend div { display: grid; gap: 4px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 14px; background: #fff; }
.food-legend dt { margin: 0; } .food-legend dd { margin: 0; color: var(--ink-2); }
.gi-badge, .un-badge { display: inline-block; font: 700 .68rem/1.2 var(--f-mono); letter-spacing: .06em; text-transform: uppercase; padding: 4px 8px; border-radius: 999px; border: 1px solid #e6c9d3; background: #fbf0f4; color: var(--t-food); }
.gi-badge--po { background: var(--t-food); border-color: var(--t-food); color: #fff; }
.un-badge { background: #e9f3f6; border-color: #bcd9e2; color: #0b5f79; }
.chip--veg[aria-pressed="true"] { background: #eaf6f0; border-color: var(--ok); }
.food-reg { margin-top: 26px; scroll-margin-top: 90px; }
.food-reg.is-off { display: none; }
.food-reg-h { font-size: 1.45rem; padding-bottom: 8px; border-bottom: 2px solid var(--night); }
.food-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 14px; }
.fcard { background: #fff; border: 1px solid var(--line); border-radius: 18px; overflow: hidden; display: flex; flex-direction: column; scroll-margin-top: 90px; }
.fcard.is-off { display: none; }
.fcard:target { box-shadow: 0 0 0 3px var(--t-food); }
.fcard-top { padding: 14px 16px 12px; background: #fbf3ee; border-bottom: 1px solid var(--line); }
.fcard--sweet .fcard-top { background: #fbeff3; } .fcard--dairy .fcard-top { background: #f4f6fb; }
.fcard--produce .fcard-top { background: #eff7f0; } .fcard--baked .fcard-top { background: #fbf5e6; }
.fcard-top .eyebrow { margin-bottom: 6px; }
.fcard h3 { font-size: 1.32rem; margin: 0 0 2px; }
.fcard-en { margin: 0 0 8px; font-weight: 600; color: var(--ink-2); font-size: .95rem; }
.fcard-badges { margin: 0; display: flex; flex-wrap: wrap; gap: 6px; }
.fcard-b { padding: 12px 16px 14px; display: flex; flex-direction: column; gap: 4px; flex: 1; }
.fcard .kis-facts div { grid-template-columns: 74px minmax(0, 1fr); }
.fcard .src-line { margin-top: auto; padding-top: 8px; }
.fchips { display: flex; flex-wrap: wrap; gap: 4px; }
.fchip { display: inline-block; font-size: .78rem; font-weight: 600; padding: 2px 8px; border-radius: 999px; background: #f3f0ec; color: var(--night); border: 1px solid var(--line); }
.fchip small { font-weight: 400; color: var(--ink-2); }
.fchip.is-opt { border-style: dashed; background: #fff; }
.fchip--e { background: #fbe9e7; border-color: #f0c9c3; } .fchip--b { background: #e6f1f8; border-color: #c1dbec; }
.fchip--veg { background: #eaf6f0; border-color: #bfe2cf; color: #0e6b45; }
@media (max-width: 1000px) { .food-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 760px) {
  .food-top { grid-template-columns: 1fr; }
  .food-grid { grid-template-columns: 1fr; }
  .fcard .kis-facts div { grid-template-columns: 1fr; gap: 0; }
}
