/* „Варна сега“ — тъмната тема е нашата и е по подразбиране; светлата е по бранда на invarna.bg
   (светлосиви повърхности, синьо #3090c3, тюркоаз #6cb4b0, тъмносив текст #454e5c). Превключване: html[data-theme]. */
:root {
  --bg: #0d1518; --surface: #142026; --surface-2: #1b2b32; --line: #263a42;
  --text: #e6eef1; --muted: #a2b4bc; --accent: #5cc6cf; --accent-2: #f2a15f; --accent-soft: #173a40;
  --ok: #6fd28d; --warn: #f0b35a; --bad: #ff8a80; --focus: #ffb000;
  --radius: 14px; --shadow: none; --on-accent: #0d1518;
  color-scheme: dark;
}
html[data-theme="light"] {
  --bg: #eef1f3; --surface: #ffffff; --surface-2: #f4f6f7; --line: #dde3e7;
  --text: #2f3640; --muted: #5a6470; --accent: #1f74a3; --accent-2: #3d8f8b; --accent-soft: #e2f0f8;
  --ok: #2e7d4f; --warn: #9a5b00; --bad: #b3261e; --focus: #fcb900;
  --shadow: 0 1px 2px rgb(0 0 0 / .05), 0 4px 18px rgb(0 0 0 / .06); --on-accent: #ffffff;
  --brand-blue: #3090c3; --brand-teal: #6cb4b0;
  color-scheme: light;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 72px; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } * { animation: none !important; transition: none !important; } }
body { margin: 0; background: var(--bg); color: var(--text); font: 400 1rem/1.55 "Open Sans", system-ui, sans-serif; }
a { color: var(--accent); text-underline-offset: 2px; }
a:focus-visible, button:focus-visible, input:focus-visible, summary:focus-visible, label:focus-within { outline: 3px solid var(--focus); outline-offset: 2px; border-radius: 6px; }
h1, h2, h3 { line-height: 1.2; margin: 0 0 .5rem; }
h2 { font-size: 1.25rem; display: flex; align-items: center; gap: .5rem; }
h3 { font-size: 1rem; }
.visually-hidden { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.skip { position: absolute; left: -999px; top: 0; background: var(--surface); padding: .5rem 1rem; z-index: 99; }
.skip:focus { left: 1rem; }

/* header */
.top { position: sticky; top: 0; z-index: 20; background: color-mix(in srgb, var(--bg) 88%, transparent);
  backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border-bottom: 1px solid var(--line); }
.top-in { max-width: 1180px; margin: 0 auto; padding: .6rem 1rem; display: flex; align-items: center; gap: 1rem; }
.brand { display: flex; align-items: center; gap: .55rem; color: var(--text); text-decoration: none; font-weight: 800; font-size: 1.15rem; }
.brand svg { flex: none; }
.brand small { font-weight: 600; color: var(--muted); font-size: .8rem; }
.clock { margin-left: auto; font-variant-numeric: tabular-nums; color: var(--muted); font-size: .9rem; white-space: nowrap; }

.hero { max-width: 1180px; margin: 0 auto; padding: 1.4rem 1rem .4rem; }
.hero h1 { font-size: clamp(1.6rem, 1.2rem + 2vw, 2.4rem); font-weight: 800; }
.hero p { color: var(--muted); margin: 0; max-width: 46rem; }

.chips { max-width: 1180px; margin: 0 auto; padding: .8rem 1rem 0; display: flex; gap: .45rem; overflow-x: auto; scrollbar-width: none; }
.chips::-webkit-scrollbar { display: none; }
.chips a { flex: none; display: inline-flex; align-items: center; gap: .35rem; padding: .45rem .8rem; border-radius: 999px;
  background: var(--surface); border: 1px solid var(--line); color: var(--text); text-decoration: none; font-size: .9rem; font-weight: 600; }
.chips a:hover { border-color: var(--accent); }

/* layout */
main { max-width: 1180px; margin: 0 auto; padding: 1rem; display: grid; gap: 1rem; grid-template-columns: repeat(12, minmax(0, 1fr)); }
.card { grid-column: span 12; background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius);
  box-shadow: var(--shadow); padding: 1.1rem 1.1rem 1rem; min-width: 0; }
@media (min-width: 760px) { .w6 { grid-column: span 6; } .w4 { grid-column: span 6; } .w8 { grid-column: span 12; } }
@media (min-width: 1060px) { .w4 { grid-column: span 4; } .w8 { grid-column: span 8; } }
.card > header { display: flex; align-items: baseline; justify-content: space-between; gap: .75rem; flex-wrap: wrap; margin-bottom: .6rem; }
.src { font-size: .78rem; color: var(--muted); margin: .7rem 0 0; }
.src a { color: inherit; }
.upd { font-size: .78rem; color: var(--muted); font-variant-numeric: tabular-nums; }
.stale { color: var(--warn); }
.muted { color: var(--muted); }
.loading { color: var(--muted); font-style: italic; }
.nodata { background: var(--surface-2); border-radius: 10px; padding: .75rem .9rem; color: var(--muted); font-size: .92rem; }
.nodata strong { color: var(--text); }
.tag { display: inline-block; font-size: .72rem; font-weight: 700; padding: .1rem .45rem; border-radius: 6px; background: var(--accent-soft); color: var(--accent); vertical-align: middle; }

/* numbers */
.big { display: flex; align-items: flex-end; gap: 1rem; flex-wrap: wrap; }
.big .num { font-size: 3rem; font-weight: 800; line-height: 1; font-variant-numeric: tabular-nums; }
.big .num small { font-size: 1.2rem; font-weight: 700; }
.kv { display: grid; grid-template-columns: repeat(auto-fill, minmax(130px, 1fr)); gap: .5rem; margin: .8rem 0 0; padding: 0; list-style: none; }
.kv li { background: var(--surface-2); border-radius: 10px; padding: .5rem .65rem; }
.kv b { display: block; font-size: 1.05rem; font-variant-numeric: tabular-nums; }
.kv span { font-size: .78rem; color: var(--muted); }

.strip { display: flex; gap: .4rem; overflow-x: auto; padding-bottom: .3rem; margin-top: .8rem; }
.strip > div { flex: none; width: 62px; text-align: center; background: var(--surface-2); border-radius: 10px; padding: .4rem .2rem; font-size: .8rem; }
.strip b { display: block; font-size: .95rem; }
.days { display: grid; grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); gap: .5rem; margin-top: .8rem; }
.days > div { background: var(--surface-2); border-radius: 10px; padding: .55rem .65rem; font-size: .88rem; }
.days b { display: block; }
.wx { font-size: 1.4rem; line-height: 1; }

/* air scale */
.lvl { display: inline-block; padding: .15rem .55rem; border-radius: 999px; font-weight: 700; font-size: .85rem; color: #fff; }
.lvl-1 { background: #1d6f66; } .lvl-2 { background: #45732f; } .lvl-3 { background: #d4a017; color: #1a1a1a; }
.lvl-4 { background: #a8501a; } .lvl-5 { background: #a93226; } .lvl-6 { background: #6a2580; }

/* lists */
.list { list-style: none; margin: 0; padding: 0; }
.list li { padding: .6rem 0; border-top: 1px solid var(--line); }
.list li:first-child { border-top: 0; padding-top: .2rem; }
.list .when { font-size: .8rem; color: var(--muted); font-variant-numeric: tabular-nums; }
.list .t { font-weight: 600; }
.list p { margin: .15rem 0 0; font-size: .92rem; }
.scroll { max-height: 420px; overflow: auto; padding-right: .3rem; }
details > summary { cursor: pointer; font-weight: 600; color: var(--accent); margin-top: .5rem; }

/* tabs */
.tabs { display: flex; gap: .35rem; flex-wrap: wrap; margin: .2rem 0 .7rem; }
.tabs button { font: inherit; font-size: .88rem; font-weight: 600; padding: .35rem .75rem; border-radius: 999px; border: 1px solid var(--line);
  background: var(--surface-2); color: var(--text); cursor: pointer; }
.tabs button[aria-selected="true"], .tabs button[aria-pressed="true"] { background: var(--accent); border-color: var(--accent); color: var(--on-accent); }


/* buses */
.row { display: flex; gap: .5rem; flex-wrap: wrap; align-items: center; }
input[type="search"] { font: inherit; flex: 1 1 200px; min-width: 0; padding: .55rem .75rem; border-radius: 10px; border: 1px solid var(--line); background: var(--surface-2); color: var(--text); }
.btn { font: inherit; font-weight: 700; padding: .55rem .9rem; border-radius: 10px; border: 1px solid var(--accent); background: var(--accent); color: var(--on-accent); cursor: pointer; }
.btn.ghost { background: transparent; color: var(--accent); }

.stops { display: flex; gap: .4rem; flex-wrap: wrap; margin-top: .7rem; }
.stops button { font: inherit; font-size: .85rem; padding: .35rem .65rem; border-radius: 8px; border: 1px solid var(--line); background: var(--surface); color: var(--text); cursor: pointer; text-align: left; }
.stops button[aria-pressed="true"] { border-color: var(--accent); background: var(--accent-soft); }
.arr { width: 100%; border-collapse: collapse; margin-top: .7rem; font-variant-numeric: tabular-nums; font-size: .93rem; }
.arr th, .arr td { text-align: left; padding: .45rem .4rem; border-top: 1px solid var(--line); }
.arr th { font-size: .78rem; color: var(--muted); font-weight: 600; border-top: 0; }
.line-no { display: inline-block; min-width: 2.4rem; text-align: center; font-weight: 800; background: var(--accent-2); color: #0d1518; border-radius: 6px; padding: .05rem .35rem; }
.late { color: var(--bad); } .early { color: var(--ok); }

/* map */
.mapwrap { position: relative; }
#map { height: 520px; border-radius: 12px; overflow: hidden; background: #b9d3e6; border: 1px solid var(--line); }
@media (max-width: 640px) { #map { height: 420px; } }
.layers { display: flex; flex-wrap: wrap; gap: .35rem; margin: .2rem 0 .7rem; }
.layers label { display: inline-flex; align-items: center; gap: .35rem; font-size: .85rem; padding: .3rem .6rem; border-radius: 999px; border: 1px solid var(--line); background: var(--surface-2); cursor: pointer; }
.layers input { accent-color: var(--accent); }
.dot { width: 11px; height: 11px; border-radius: 50%; display: inline-block; border: 2px solid #fff; box-shadow: 0 0 0 1px rgb(0 0 0 / .25); }
.near { margin-top: .8rem; }
.near ol { margin: .3rem 0 0; padding-left: 1.2rem; font-size: .92rem; }
.maplibregl-popup-content { font: .9rem/1.4 "Open Sans", system-ui, sans-serif; color: #13232b; }

/* links grid */
.links { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: .5rem; list-style: none; padding: 0; margin: 0; }
.links a { display: block; height: 100%; padding: .65rem .8rem; border-radius: 10px; background: var(--surface-2); text-decoration: none; color: var(--text); font-weight: 600; font-size: .92rem; border: 1px solid transparent; }
.links a:hover { border-color: var(--accent); }
.links a span { display: block; font-weight: 400; font-size: .8rem; color: var(--muted); }

.rules { margin: .3rem 0 0; padding-left: 1.1rem; }
.rules li { margin: .25rem 0; }

footer { max-width: 1180px; margin: 1rem auto 2rem; padding: 0 1rem; color: var(--muted); font-size: .85rem; }
footer p { margin: .3rem 0; }

/* ---- v2: марката, навигацията, партньорите, „Очаквайте скоро“, „Как живеем“ ---- */
.nowrap { white-space: nowrap; }
.brand-logo { display: inline-flex; align-items: center; background: #0b2e3a; border-radius: 10px; padding: 4px 8px; }
.brand-logo img { height: 32px; width: auto; display: block; }
.brand-text { display: flex; flex-direction: column; line-height: 1.15; }
.brand-text b { font-size: 1.12rem; }
.brand-text small { font-weight: 600; color: var(--muted); font-size: .74rem; }
.mainnav { border-top: 1px solid var(--line); }
.mainnav-in { max-width: 1180px; margin: 0 auto; padding: 0 1rem; display: flex; gap: .25rem; overflow-x: auto; scrollbar-width: none; }
.mainnav-in::-webkit-scrollbar { display: none; }
.mainnav a { flex: none; padding: .55rem .7rem; color: var(--muted); text-decoration: none; font-weight: 700; font-size: .9rem; border-bottom: 3px solid transparent; }
.mainnav a:hover { color: var(--text); }
.mainnav a[aria-current="page"] { color: var(--accent); border-bottom-color: var(--accent); }
html { scroll-padding-top: 120px; }

.partners-strip { max-width: 1180px; margin: 1.5rem auto 0; padding: 1.1rem 1rem; background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius); }
.ps-in { display: flex; flex-wrap: wrap; gap: 1rem 1.6rem; align-items: flex-end; }
.ps-group { display: flex; flex-wrap: wrap; gap: .5rem .6rem; align-items: center; }
.ps-label { width: 100%; font-size: .7rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--muted); }
.ps-logo { display: inline-flex; align-items: center; gap: .4rem; height: 48px; padding: 6px 10px; border-radius: 10px; background: #fff; border: 1px solid var(--line); text-decoration: none; }
.ps-logo.dark { background: #0b2e3a; border-color: #0b2e3a; }
.ps-logo img { display: block; width: auto; max-width: 180px; }
.ps-cap { font-weight: 800; color: #13232b; letter-spacing: .04em; }
.ps-word { display: inline-flex; align-items: center; height: 48px; padding: 0 12px; border-radius: 10px; background: var(--surface-2); border: 1px solid var(--line); color: var(--text); font-weight: 800; text-decoration: none; font-size: .95rem; }
.ps-word span { color: var(--accent); }
.ps-word.bravo, .pt-word.bravo { color: #e07a2f; font-style: italic; }
.ps-word.vh b, .pt-word.vh b { color: var(--accent); }
.ps-more { margin: .8rem 0 0; font-size: .88rem; }

.pt-tier { margin: 0 0 .3rem; font-size: .75rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--accent); }
.pt-row { display: flex; gap: 1.2rem; align-items: center; flex-wrap: wrap; }
.pt-row h2 { font-size: 1.4rem; }
.pt-logos { display: flex; gap: .6rem; flex-wrap: wrap; margin: .3rem 0 .6rem; }
.pt-logo { display: inline-flex; align-items: center; gap: .5rem; padding: 8px 12px; border-radius: 12px; background: #fff; border: 1px solid var(--line); text-decoration: none; color: #13232b; }
.pt-logo.dark { background: #0b2e3a; border-color: #0b2e3a; }
.pt-logo.big { padding: 12px 18px; }
.pt-logo img { display: block; width: auto; max-width: 260px; }
.pt-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 1rem; }
.pt-grid > div { background: var(--surface-2); border-radius: 12px; padding: .9rem; }
.pt-grid p { margin: .5rem 0 0; font-size: .92rem; }
.pt-word { font-weight: 800; font-size: 1.1rem; color: var(--text); text-decoration: none; }
.pt-word span { color: var(--accent); }

.tab-logo { height: 14px; width: auto; vertical-align: middle; border-radius: 3px; }
.tab-logo.dark { background: #0b2e3a; padding: 2px 4px; height: 18px; }
.inline-logo { height: 34px; width: auto; vertical-align: middle; }
.inline-logo-dark { display: inline-flex; background: #0b2e3a; border-radius: 6px; padding: 2px 6px; vertical-align: middle; }
.cols2 { display: grid; gap: 1rem 1.5rem; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); }

/* „Очаквайте скоро“ — роботчето чете книжка */
.soon { display: flex; gap: 1rem; align-items: center; background: linear-gradient(135deg, var(--accent-soft), var(--surface-2)); border: 1px dashed var(--accent); border-radius: 14px; padding: .9rem 1rem; }
.soon img { width: 92px; height: 92px; flex: none; }
.soon.sm img { width: 64px; height: 64px; }
.soon b { color: var(--accent); }
.soon i { color: var(--accent-2); font-weight: 700; font-style: italic; }
.soon p { margin: .3rem 0 0; font-size: .92rem; }
.soon.sm { margin-top: .7rem; padding: .6rem .8rem; }
@media (max-width: 520px) { .soon { flex-direction: column; align-items: flex-start; } }

/* Как живеем */
.legend { list-style: none; padding: 0; margin: .6rem 0 0; display: grid; gap: .35rem; font-size: .9rem; }
.st { display: inline-block; font-size: .7rem; font-weight: 800; padding: .08rem .45rem; border-radius: 6px; white-space: nowrap; vertical-align: middle; }
.st-v { background: #17361f; color: #8fe0a6; } .st-d { background: #172b3d; color: #9cc8f0; } .st-e { background: #3a2a12; color: #f0c27a; } .st-g { background: #263238; color: #b0bec5; }
html[data-theme="light"] .st-v { background: #d8f0df; color: #1d6b34; } html[data-theme="light"] .st-d { background: #dbeaf7; color: #1b4f7d; }
html[data-theme="light"] .st-e { background: #fbe9cf; color: #8a4b00; } html[data-theme="light"] .st-g { background: #eceff1; color: #4c5f68; }
.dims { display: grid; gap: 1rem; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); }
.dim { background: var(--surface-2); border-radius: 12px; padding: .9rem 1rem; }
.dim h3 { font-size: 1.05rem; }
.frame { font-size: .78rem; color: var(--muted); margin: 0 0 .5rem; }
.ind { list-style: none; padding: 0; margin: 0; display: grid; gap: .55rem; font-size: .92rem; }
.ind b { font-size: 1.1rem; font-variant-numeric: tabular-nums; }
.srcs { display: block; font-size: .74rem; color: var(--muted); }
.tool { font-size: .85rem; margin: .6rem 0 0; }
.goals { padding-left: 1.2rem; margin: .3rem 0 0; display: grid; gap: .45rem; font-size: .93rem; }
.asks { display: grid; gap: .7rem; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); }
.asks > div { background: var(--surface-2); border-radius: 12px; padding: .8rem .9rem; }
.asks p { margin: .3rem 0 0; font-size: .9rem; }

.anketa { display: grid; gap: .8rem; max-width: 720px; }
.anketa select { font: inherit; padding: .45rem .6rem; border-radius: 8px; border: 1px solid var(--line); background: var(--surface-2); color: var(--text); margin-left: .5rem; }
.anketa fieldset { border: 1px solid var(--line); border-radius: 10px; padding: .6rem .8rem; margin: 0; }
.anketa legend { font-weight: 700; padding: 0 .3rem; }
.scale { display: flex; gap: .4rem; flex-wrap: wrap; align-items: center; font-size: .85rem; }
.scale label { display: inline-flex; align-items: center; gap: .25rem; padding: .3rem .55rem; border: 1px solid var(--line); border-radius: 8px; background: var(--surface); cursor: pointer; }
.bars { display: grid; gap: .35rem; }
.bar { display: grid; grid-template-columns: minmax(140px, 1fr) 3fr auto; gap: .6rem; align-items: center; font-size: .88rem; }
.bar i { display: block; height: 10px; border-radius: 6px; background: var(--accent); }

/* превключвател на темата */
.theme-btn { font: inherit; font-size: .82rem; font-weight: 700; padding: .35rem .7rem; border-radius: 999px; border: 1px solid var(--line);
  background: var(--surface-2); color: var(--text); cursor: pointer; white-space: nowrap; }
.theme-btn:hover { border-color: var(--accent); }
/* светлата тема по invarna: синята лента на шапката като при тях */
html[data-theme="light"] .top { background: color-mix(in srgb, #ffffff 92%, transparent); }
html[data-theme="light"] .mainnav { background: var(--brand-blue); border-top: 0; }
html[data-theme="light"] .mainnav a { color: #eaf5fb; }
html[data-theme="light"] .mainnav a:hover { color: #fff; }
html[data-theme="light"] .mainnav a[aria-current="page"] { color: #fff; border-bottom-color: #fff; }
html[data-theme="light"] .hero h1 { color: #2f3640; }
html[data-theme="light"] .card > header h2, html[data-theme="light"] .card h2 { color: #2f3640; }
html[data-theme="light"] .line-no { background: var(--brand-teal); }
html[data-theme="light"] .soon { border-color: var(--brand-blue); }

/* „Времето“ — картите са над живото небе */
body[data-page="vreme"] { background: transparent; }
html:has(body[data-page="vreme"]) { background: #0a1224; }
.glass { background: color-mix(in srgb, var(--surface) 78%, transparent); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); }
.strip > .wet { background: color-mix(in srgb, #3a7bd5 25%, var(--surface-2)); }
.strip > .storm { background: color-mix(in srgb, #c0392b 30%, var(--surface-2)); }
.strip > div span { display: block; }
.vdays { display: grid; gap: .7rem; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); }
.vday { background: var(--surface-2); border-radius: 12px; padding: .7rem .8rem; border-top: 4px solid #2a9d8f; font-size: .88rem; }
.vday.r-mid { border-top-color: #e0a12f; } .vday.r-hi { border-top-color: #c0392b; }
.vd-head { display: flex; gap: .4rem; align-items: baseline; flex-wrap: wrap; }
.vd-head b { text-transform: capitalize; }
.vd-head .risk { margin-left: auto; font-size: .7rem; font-weight: 800; text-transform: uppercase; letter-spacing: .04em; }
.r-lo .risk { color: #6fd8cb; } .r-mid .risk { color: #f0b35a; } .r-hi .risk { color: #ff8a80; }
html[data-theme="light"] .r-lo .risk { color: #1d6f66; } html[data-theme="light"] .r-mid .risk { color: #8a5300; } html[data-theme="light"] .r-hi .risk { color: #a93226; }
.cons .ok { color: #6fd8cb; } .cons .warn { color: #f0b35a; } html[data-theme="light"] .cons .ok { color: #1d6f66; } html[data-theme="light"] .cons .warn { color: #8a5300; }
.vd-main { display: flex; align-items: baseline; gap: .4rem; margin: .3rem 0 .1rem; }
.vd-main .num { font-size: 1.6rem; font-weight: 800; }
.vd-rows { display: grid; gap: .1rem; margin-top: .3rem; color: var(--muted); }
.cons { margin-top: .4rem; font-size: .8rem; }
.cons .ok { color: #2a9d8f; } .cons .warn { color: #e0a12f; }
.wx-more { margin-top: .8rem; }

/* 3D карта — откроен бутон и витрина */
.mainnav a.nav-3d { color: #0d1518; background: linear-gradient(135deg, #f2a15f, #ffd27a); border-radius: 999px; margin: .3rem .2rem; padding: .25rem .8rem; border-bottom: 0; }
.mainnav a.nav-3d:hover { filter: brightness(1.08); color: #0d1518; }
html[data-theme="light"] .mainnav a.nav-3d { color: #0d1518; }
.showcase { display: grid; gap: 1.2rem; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); align-items: center;
  background: linear-gradient(135deg, var(--surface), var(--accent-soft)); }
.showcase .sc-img img { display: block; width: 100%; height: auto; border-radius: 12px; border: 1px solid var(--line); }
.showcase h2 { font-size: 1.4rem; }
@media (max-width: 760px) { .showcase { grid-template-columns: 1fr; } }

/* навигацията: на широк екран бутоните се пренасят, не се режат; на телефон — плъзгане */
@media (min-width: 900px) {
  .mainnav-in { flex-wrap: wrap; overflow: visible; row-gap: 0; }
  .mainnav a { padding: .55rem .6rem; }
}
.top-in .theme-btn { margin-left: .4rem; }

/* гордостите ни — витрини, не бележки под линия */
.showcase.kongres { grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); }
.sc-btns { display: flex; gap: .6rem; flex-wrap: wrap; }
.sc-links { list-style: none; padding: 0; margin: 0; display: grid; gap: .5rem; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.sc-links a, .pf-grid a { display: block; height: 100%; padding: .7rem .85rem; border-radius: 12px; background: var(--surface); border: 1px solid var(--line); color: var(--text); text-decoration: none; }
.sc-links a:hover, .pf-grid a:hover { border-color: var(--accent); }
.sc-links b, .pf-grid b { display: block; color: var(--accent); font-size: 1rem; }
.sc-links span, .pf-grid span { display: block; font-size: .84rem; color: var(--muted); margin-top: .15rem; }
.pf-grid { list-style: none; padding: 0; margin: .4rem 0 0; display: grid; gap: .7rem; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); }
.pf-grid b { font-size: 1.1rem; }
@media (max-width: 760px) { .showcase.kongres { grid-template-columns: 1fr; } .sc-links { grid-template-columns: 1fr; } }

/* телефон: шапката се побира — без часовник, бутонът за тема само с иконата */
@media (max-width: 600px) {
  .clock { display: none; }
  .top-in { gap: .6rem; }
  .top-in .theme-btn { margin-left: auto; padding: .35rem .6rem; }
  .theme-btn .tb-txt { display: none; }
  .brand-text small .nowrap { white-space: normal; }
  .brand-logo img { height: 26px; }
}
#arrivals { overflow-x: auto; }
@media (max-width: 600px) { .arr th, .arr td { padding: .4rem .25rem; font-size: .86rem; } }

/* контраст (axe, 13.10.2026) */
.kv .lvl, .lvl { color: #fff; } .kv .lvl-3 { color: #1a1a1a; }
html[data-theme="light"] .mainnav { background: #1d6a95; }           /* по-тъмен нюанс на синьото на invarna — 5,6:1 с бял текст */
html[data-theme="light"] .mainnav a { color: #ffffff; opacity: .92; }
html[data-theme="light"] .mainnav a[aria-current="page"], html[data-theme="light"] .mainnav a:hover { opacity: 1; }
html[data-theme="light"] .glass { background: color-mix(in srgb, var(--surface) 94%, transparent); }
html[data-theme="light"] .ps-word.bravo, html[data-theme="light"] .pt-word.bravo { color: #a24b0c; }
/* „Времето“: всичко, което стои направо върху небето, е светло и четимо при двете теми */
body[data-page="vreme"] .hero h1, body[data-page="vreme"] .hero p { color: #ffffff; text-shadow: 0 1px 3px rgb(0 0 0 / .65); }
body[data-page="vreme"] footer { background: var(--surface); border-radius: var(--radius); padding: .8rem 1rem; }
html[data-theme="light"] .strip > .wet { background: color-mix(in srgb, #3a7bd5 12%, var(--surface-2)); }
html[data-theme="light"] .strip > .storm { background: color-mix(in srgb, #c0392b 12%, var(--surface-2)); }
html[data-theme="light"] .strip > .wet .muted, html[data-theme="light"] .strip > .storm .muted { color: #3f4852; }
html[data-theme="light"] .tag { color: #175a80; }
