
/* Layout: kartka z kalendarza (zdzierak) jako bohater strony + przyklejony spis treści + pasma tematyczne */
:root{
  --paper:#f6f5f1; --sheet:#ffffff; --ink:#1c2740; --muted:#5d6577; --line:#e3e1da;
  --red:#bf2e26; --red-soft:#fbe6e3; --green:#2f7d4f; --green-soft:#e3f1e8;
  --sky:#2b6cb0; --sky-soft:#e4eef9; --sun:#e0a018; --sun-soft:#fbf1d8; --sun-ink:#8a5a00;
  --violet:#5b4bb7; --violet-soft:#ebe8f8; --chip:#efede7; --ad:#f0eee8;
  --display:"Big Shoulders Display", "Arial Narrow", Impact, sans-serif;
  --body:"Source Sans 3", "Segoe UI", Roboto, Arial, sans-serif;
  --r:14px;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --paper:#12161f; --sheet:#1a2030; --ink:#e9ebf1; --muted:#a3aabb; --line:#2b3346;
  --red:#ff6a5c; --red-soft:#3a2023; --green:#5cc189; --green-soft:#1c3226;
  --sky:#7fb3ec; --sky-soft:#1b2a3f; --sun:#f2bf4e; --sun-soft:#352c16; --sun-ink:#f2bf4e;
  --violet:#a99cf2; --violet-soft:#26223f; --chip:#232a3b; --ad:#1d2331; color-scheme:dark}}
:root[data-theme="dark"]{
  --paper:#12161f; --sheet:#1a2030; --ink:#e9ebf1; --muted:#a3aabb; --line:#2b3346;
  --red:#ff6a5c; --red-soft:#3a2023; --green:#5cc189; --green-soft:#1c3226;
  --sky:#7fb3ec; --sky-soft:#1b2a3f; --sun:#f2bf4e; --sun-soft:#352c16; --sun-ink:#f2bf4e;
  --violet:#a99cf2; --violet-soft:#26223f; --chip:#232a3b; --ad:#1d2331; color-scheme:dark}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{background:var(--paper);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.55;margin:0}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:10;background:var(--sheet)}
a{color:inherit}
.wrap{max-width:1120px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
h1,h2,h3{text-wrap:balance;margin:0}
.num{font-variant-numeric:tabular-nums}

/* Nagłówek */
.top{background:var(--sheet);border-bottom:1px solid var(--line)}
.top .wrap{display:flex;align-items:center;gap:20px;padding-block:12px}
.logo{display:flex;align-items:center;gap:8px;font-family:var(--display);font-weight:800;font-size:26px;letter-spacing:.3px;text-decoration:none}
.logo b{color:var(--red);font-weight:800}
.logo svg{flex:none}
.menu{display:flex;gap:18px;margin-left:auto;font-size:15px;font-weight:600}
.menu a{text-decoration:none;color:var(--muted)} .menu a:hover{color:var(--ink)}
@media (max-width:860px){.menu{display:none}}

/* Spis treści */
.toc{background:color-mix(in srgb,var(--paper) 92%,transparent);border-bottom:1px solid var(--line)}
.toc .wrap{display:flex;gap:8px;overflow-x:auto;padding-block:10px;scrollbar-width:none}
.toc .wrap::-webkit-scrollbar{display:none}
.toc a{flex:none;display:flex;align-items:center;gap:6px;padding:7px 13px;border-radius:999px;background:var(--chip);text-decoration:none;font-size:15px;font-weight:600;color:var(--muted);white-space:nowrap;transition:background .2s,color .2s}
.toc a:hover{color:var(--ink)}
.toc a.on{background:var(--ink);color:var(--sheet)}
.toc a:focus-visible,.btn:focus-visible,summary:focus-visible{outline:3px solid var(--sky);outline-offset:2px}
.dot{width:8px;height:8px;border-radius:50%;flex:none}

/* Bohater: kartka z kalendarza */
.hero{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:28px;padding-block:28px 8px}
@media (max-width:820px){.hero{grid-template-columns:minmax(0,1fr)}}
.sheet{background:var(--sheet);border-radius:6px 6px var(--r) var(--r);box-shadow:0 1px 0 var(--line),0 12px 30px -18px rgba(20,30,60,.35);position:relative;overflow:hidden;text-align:center}
.sheet-head{background:var(--red);color:#fff;padding:14px 16px 18px;font-family:var(--display);font-weight:800;font-size:26px;letter-spacing:2px;text-transform:uppercase;position:relative}
.sheet-head::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:12px;background:radial-gradient(circle at 8px 6px,var(--sheet) 4px,transparent 4.5px) 0 0/16px 12px repeat-x}
.sheet-day{font-family:var(--display);font-weight:900;font-size:min(46vw,190px);line-height:.9;color:var(--ink);padding-top:22px;letter-spacing:-2px}
.sheet-wd{font-family:var(--display);font-weight:800;font-size:30px;letter-spacing:4px;text-transform:uppercase;color:var(--red);margin-top:4px}
.sheet-facts{display:grid;grid-template-columns:1fr 1fr;border-top:1px dashed var(--line);margin-top:18px;font-size:16px;color:var(--muted)}
.sheet-facts div{padding:10px 8px;border-right:1px dashed var(--line)}
.sheet-facts div:nth-child(2n){border-right:0}
.sheet-facts div:nth-child(n+3){border-top:1px dashed var(--line)}
.sheet-facts strong{display:block;font-size:19px;color:var(--ink)}
.pager{display:flex;justify-content:space-between;gap:10px;margin-top:12px}
.btn{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:var(--sheet);border-radius:999px;padding:9px 16px;font:600 15px var(--body);color:var(--ink);text-decoration:none;cursor:pointer}
.btn:hover{border-color:var(--ink)}
.btn.red{background:var(--red);border-color:var(--red);color:#fff}

.hero-side{display:flex;flex-direction:column;gap:18px;min-width:0}
.feature{background:linear-gradient(135deg,var(--sun-soft),var(--red-soft));border-radius:var(--r);padding:22px 24px;display:grid;grid-template-columns:minmax(0,1fr) 120px;gap:16px;align-items:center}
.eyebrow{font-size:15px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:var(--red)}
.feature h1{font-family:var(--display);font-weight:900;font-size:clamp(34px,6vw,52px);line-height:1;margin:6px 0 10px}
.feature p{margin:0;max-width:60ch}
@media (max-width:480px){.feature{grid-template-columns:minmax(0,1fr)}.feature svg{display:none}}

section{scroll-margin-top:70px}
.names{background:var(--sheet);border-radius:var(--r);padding:20px 24px}
.names .big{font-family:var(--display);font-weight:800;font-size:clamp(30px,5vw,42px);line-height:1.05;margin:6px 0 12px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{background:var(--chip);border-radius:999px;padding:5px 12px;font-size:15px;text-decoration:none}
.chip:hover{background:var(--sky-soft);color:var(--sky)}
.names-foot{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:16px}
.copied{font-size:16px;color:var(--green)}

/* Pasma */
.band{padding-block:34px 6px}
.band-title{display:flex;align-items:baseline;gap:12px;margin-bottom:16px}
.band-title h2{font-family:var(--display);font-weight:800;font-size:30px;letter-spacing:.5px;text-transform:uppercase}
.band-title span{color:var(--muted);font-size:15px}
.grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}
#praktycznie .grid{align-items:start}
.tile{background:var(--sheet);border-radius:var(--r);padding:20px 22px;min-width:0;display:flex;flex-direction:column;gap:10px}
.tile-h{display:flex;align-items:center;gap:10px}
.ico{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;flex:none}
.tile h3{font-size:20px;font-weight:700}
.tile p{margin:0}
.small{font-size:16px;color:var(--muted)}
.kv{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;text-align:center}
.kv div{background:var(--paper);border-radius:10px;padding:8px 4px}
.kv span{display:block;font-size:15px;color:var(--muted)}
.kv strong{font-size:20px}
.wide{grid-column:1/-1}

/* Treść pasma "Ludzie" */
.two{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:16px}
@media (max-width:820px){.two{grid-template-columns:minmax(0,1fr)}}
.holiday{border-top:1px solid var(--line);padding-top:12px}
.holiday:first-of-type{border-top:0;padding-top:0}
.holiday h3{font-size:19px;margin-bottom:4px}
.quote{font-family:var(--display);font-weight:700;font-size:30px;line-height:1.1;color:var(--ink)}
.timeline{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.timeline li{display:grid;grid-template-columns:54px minmax(0,1fr);gap:10px}
.timeline b{font-family:var(--display);font-size:22px;color:var(--red)}

/* Natura */
.bars{display:flex;flex-direction:column;gap:8px}
.bar{display:grid;grid-template-columns:90px minmax(0,1fr) 62px;align-items:center;gap:8px;font-size:15px}
.meter{height:8px;border-radius:99px;background:var(--chip);overflow:hidden}
.meter i{display:block;height:100%;border-radius:99px}
details{border-top:1px solid var(--line);padding-top:8px}
summary{cursor:pointer;font-weight:600;font-size:15px;color:var(--sky)}
.cities{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 16px;margin-top:8px;font-size:15px}
.cities div{display:flex;justify-content:space-between;border-bottom:1px dotted var(--line);padding-block:3px}
.check{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}
.check li{padding-left:26px;position:relative}
.check li::before{content:"";position:absolute;left:0;top:5px;width:16px;height:16px;border-radius:50%;background:var(--green)}
.check li::after{content:"";position:absolute;left:5px;top:9px;width:6px;height:4px;border-left:2px solid var(--sheet);border-bottom:2px solid var(--sheet);transform:rotate(-45deg)}

/* Praktycznie */
.tours{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.tour{border-radius:10px;padding:8px 10px;background:var(--paper);font-size:16px;color:var(--muted)}
.tour b{display:block;color:var(--ink);font-size:15px}
.tour.now{background:var(--sky-soft);outline:2px solid var(--sky)}
.tour.now b{color:var(--sky)}
.count{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
@media (max-width:640px){.count{grid-template-columns:repeat(2,minmax(0,1fr))}}
.count div{background:var(--sheet);border-radius:var(--r);padding:16px 18px}
.count strong{display:block;font-family:var(--display);font-weight:900;font-size:44px;line-height:1}
.count span{color:var(--muted);font-size:15px}

/* Kalendarz miesiąca */
.month{background:var(--sheet);border-radius:var(--r);padding:20px 22px}
.mgrid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;text-align:center;margin-top:12px}
.mgrid .h{font-size:15px;color:var(--muted);font-weight:700}
.mgrid a{padding:9px 0;border-radius:8px;text-decoration:none;font-weight:600}
.mgrid a:hover{background:var(--chip)}
.mgrid .sun{color:var(--red)}
.mgrid .today{background:var(--red);color:#fff}
.mgrid .ferie{box-shadow:inset 0 -3px 0 var(--sky)}
.legend{display:flex;gap:14px;flex-wrap:wrap;margin-top:10px;font-size:15px;color:var(--muted)}

/* Reklama */
.ad{border-radius:var(--r);background:repeating-linear-gradient(135deg,var(--ad) 0 10px,transparent 10px 20px),var(--ad);min-height:100px;display:grid;place-items:center;color:var(--muted);font-size:14px;letter-spacing:1.5px;text-transform:uppercase;margin-top:28px}

.theme{margin-left:12px;display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:var(--paper);border-radius:999px;padding:6px 12px;font:600 14px var(--body);color:var(--ink);cursor:pointer;white-space:nowrap}
.theme:hover{border-color:var(--ink)}
.theme:focus-visible{outline:3px solid var(--sky);outline-offset:2px}
@media (max-width:860px){.theme{margin-left:auto}}
.ad-top{margin-top:20px;min-height:90px}
.ad-top + .hero{padding-top:20px}
@media (max-width:640px){.ad-top{min-height:100px;margin-top:14px}}
.status{display:flex;flex-wrap:wrap;gap:8px}
.pill{display:inline-flex;align-items:center;gap:7px;background:var(--sheet);border:1px solid var(--line);border-radius:999px;padding:6px 12px;font-size:16px;font-weight:600}
.pill i{width:9px;height:9px;border-radius:50%;background:var(--muted)}
.pill.ok i{background:var(--green)} .pill.no i{background:var(--red)} .pill.info i{background:var(--sky)}
.wish{justify-content:space-between}
.wish-txt{font-size:17px}
.wish .btn{align-self:flex-start}
.toast{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(20px + env(safe-area-inset-bottom,0px));background:var(--ink);color:var(--sheet);padding:10px 18px;border-radius:999px;font-size:15px;font-weight:600;z-index:20}
.swatch{display:inline-block;width:12px;height:12px;border-radius:3px;vertical-align:-1px;margin-right:4px}
.fast{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;font-size:16px;color:var(--muted)}
.fast div{background:var(--paper);border-radius:10px;padding:8px 10px}
.fast b{display:block;color:var(--ink)}
.fast .strong{background:var(--violet-soft)}
.steps{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px}
.sign{font-size:46px;line-height:1;color:var(--violet)}
.lw{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.lw li{display:grid;grid-template-columns:100px minmax(0,1fr);gap:10px;border-bottom:1px dotted var(--line);padding-bottom:8px}
.lw b{color:var(--green)}
.faq{display:flex;flex-direction:column;gap:8px}
.faq details{background:var(--sheet);border-radius:var(--r);padding:14px 18px;border-top:0}
.faq summary{color:var(--ink);font-size:17px}
.faq p{margin:8px 0 0}
@media (max-width:480px){.fast{grid-template-columns:minmax(0,1fr)}.lw li{grid-template-columns:minmax(0,1fr)}}
footer{margin-top:44px;background:var(--sheet);border-top:1px solid var(--line)}
footer .wrap{display:flex;flex-wrap:wrap;gap:16px 28px;justify-content:space-between;padding-block:26px;font-size:15px;color:var(--muted)}
footer nav{display:flex;flex-wrap:wrap;gap:8px 18px}
footer a{text-decoration:none} footer a:hover{color:var(--ink)}

/* Dodatki dla strony głównej i stron kategorii */
.proto{background:var(--ink);color:var(--sheet);font-size:16px}
.proto .wrap{display:flex;gap:16px;flex-wrap:wrap;padding-block:7px}
.proto a{color:var(--sheet);opacity:.85}
.crumbs{font-size:16px;color:var(--muted);padding-top:18px}
.crumbs a{color:var(--muted)}
.page-h{padding-block:14px 4px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:end}
@media (max-width:720px){.page-h{grid-template-columns:minmax(0,1fr)}}
.page-h h1{font-family:var(--display);font-weight:900;font-size:clamp(40px,7vw,74px);line-height:.9;letter-spacing:-1px}
.page-h p{margin:10px 0 0;max-width:64ch}
.facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:18px}
@media (max-width:640px){.facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
.facts div{background:var(--sheet);border-radius:var(--r);padding:12px 14px;font-size:16px;color:var(--muted)}
.facts strong{display:block;font-family:var(--display);font-weight:900;font-size:34px;line-height:1;color:var(--ink)}

/* Strona główna */
.today-side{display:flex;flex-direction:column;gap:16px;min-width:0}
.mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media (max-width:480px){.mini-grid{grid-template-columns:minmax(0,1fr)}}
.mini{background:var(--sheet);border-radius:var(--r);padding:14px 16px}
.mini .eyebrow{font-size:14px}
.mini strong{display:block;font-size:20px;margin-top:2px}
.mini p{margin:4px 0 0;font-size:16px;color:var(--muted)}
.upcoming{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}
.upcoming li{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:12px;align-items:center;background:var(--sheet);padding:12px 16px;border-radius:12px}
.upcoming .d{font-family:var(--display);font-weight:900;font-size:28px;line-height:1;text-align:center}
.upcoming .d small{display:block;font-family:var(--body);font-weight:600;font-size:14px;text-transform:uppercase;color:var(--red);letter-spacing:1px}
.upcoming .tag{font-size:15px;font-weight:700;border-radius:999px;padding:4px 10px;background:var(--chip);color:var(--muted);white-space:nowrap}
.upcoming .tag.free{background:var(--red-soft);color:var(--red)}
.upcoming .tag.shop{background:var(--green-soft);color:var(--green)}
@media (max-width:480px){.upcoming li{grid-template-columns:52px minmax(0,1fr)}.upcoming .tag{grid-column:2;justify-self:start}}
.cats{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr))}
.cat{background:var(--sheet);border-radius:var(--r);padding:16px 18px;text-decoration:none;display:flex;gap:12px;align-items:flex-start;border:1px solid transparent;transition:border-color .2s,transform .2s}
.cat:hover{border-color:var(--line);transform:translateY(-2px)}
@media (prefers-reduced-motion:reduce){.cat:hover{transform:none}}
.cat strong{display:block;font-size:17px}
.cat span{font-size:16px;color:var(--muted)}
.promo{background:var(--ink);color:var(--sheet);border-radius:var(--r);padding:26px 28px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center}
.promo h2{font-family:var(--display);font-weight:900;font-size:clamp(34px,6vw,54px);line-height:1}
.promo p{margin:8px 0 0;opacity:.85;max-width:56ch}
.promo .btn{background:var(--red);border-color:var(--red);color:#fff}
@media (max-width:640px){.promo{grid-template-columns:minmax(0,1fr)}}
.letters{display:flex;flex-wrap:wrap;gap:6px}
.letters a{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:var(--sheet);text-decoration:none;font-weight:700}
.letters a:hover{background:var(--ink);color:var(--sheet)}
.search{display:flex;gap:8px;flex-wrap:wrap}
.search input{flex:1 1 220px;min-width:0;border:1px solid var(--line);background:var(--sheet);color:var(--ink);border-radius:999px;padding:10px 16px;font:400 16px var(--body)}
.search input:focus-visible{outline:3px solid var(--sky);outline-offset:1px}
.result{margin-top:10px;font-size:15px}

/* Kalendarz roczny */
.opts{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;background:var(--sheet);border-radius:var(--r);padding:12px 16px;font-size:15px}
.opts label{display:inline-flex;gap:6px;align-items:center;cursor:pointer}
.opts select{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:8px;padding:5px 8px;font:400 15px var(--body)}
.year{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));margin-top:16px}
.m{background:var(--sheet);border-radius:var(--r);padding:14px 14px 12px}
.m h3{font-family:var(--display);font-weight:800;font-size:22px;text-transform:uppercase;letter-spacing:.5px;display:flex;justify-content:space-between;align-items:baseline}
.m h3 small{font-family:var(--body);font-weight:600;font-size:14px;color:var(--muted);text-transform:none;letter-spacing:0}
.mg{display:grid;grid-template-columns:22px repeat(7,minmax(0,1fr));gap:2px;margin-top:8px;text-align:center;font-size:16px}
.mg .h{font-size:13px;font-weight:700;color:var(--muted)}
.mg .w{font-size:12px;color:var(--muted);align-self:center}
.mg a,.mg span.e{padding:5px 0;border-radius:6px;text-decoration:none;font-weight:600}
.mg a:hover{background:var(--chip)}
.mg .sun{color:var(--red)}
.mg .hol{background:var(--red);color:#fff}
.mg .shop{box-shadow:inset 0 0 0 2px var(--green);color:var(--green)}
.mg .fer{background:var(--sky-soft);color:var(--sky)}
.mg .hol.fer{background:var(--red);color:#fff}
.hidew .w,.hidew .wh{display:none}
.hidew .mg{grid-template-columns:repeat(7,minmax(0,1fr))}
.key{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:15px;color:var(--muted);margin-top:12px}
.key i{display:inline-block;width:14px;height:14px;border-radius:4px;vertical-align:-2px;margin-right:4px}
.list{list-style:none;margin:0;padding:0;background:var(--sheet);border-radius:var(--r);overflow:hidden}
.list li{display:grid;grid-template-columns:120px minmax(0,1fr) auto;gap:12px;padding:11px 16px;border-top:1px solid var(--line);align-items:center}
.list li:first-child{border-top:0}
.list b{font-variant-numeric:tabular-nums}
.list .note{font-size:15px;color:var(--muted)}
@media (max-width:540px){.list li{grid-template-columns:minmax(0,1fr)}.list li>*{min-width:0}}
.scroll{overflow-x:auto;background:var(--sheet);border-radius:var(--r)}
table{border-collapse:collapse;width:100%;font-size:15px;font-variant-numeric:tabular-nums}
th,td{padding:9px 14px;text-align:left;border-top:1px solid var(--line);white-space:nowrap}
th{font-size:15px;color:var(--muted);font-weight:700;border-top:0}
tfoot td{font-weight:700}
.pdfs{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr))}
.pdf{background:var(--sheet);border-radius:var(--r);padding:16px;display:flex;flex-direction:column;gap:10px}
.thumb{aspect-ratio:1.41/1;max-width:100%;border-radius:8px;background:var(--paper);display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding:8px}
.thumb.p{aspect-ratio:1/1.41;grid-template-columns:repeat(3,1fr)}
.thumb i{background:var(--sheet);border-radius:3px;border-top:3px solid var(--red)}
.tag{font-size:15px;font-weight:700;border-radius:999px;padding:4px 10px;background:var(--chip);color:var(--muted);white-space:nowrap}
.list .tag{background:var(--green-soft);color:var(--green)}

/* Shared visual language retained from the owner's tear-off calendar prototypes. */
.review{background:#1c2740;color:#c4cbda;font-size:14px}.review .wrap{display:flex;align-items:center;gap:5px;padding-block:6px}.review span{margin-right:auto;font-size:13px;letter-spacing:.5px}.review a{border-radius:6px;text-decoration:none;padding:5px 11px}.review a[aria-current]{background:#34415b;color:#fff}.review a:hover{color:white}.top .wrap{padding-block:20px}.logo{gap:10px}.logo svg{flex:none}.menu{gap:22px}.menu a{font-size:16px}.theme{font-size:15px;padding:8px 12px}.toc .wrap{gap:5px;padding-block:10px}.toc a{background:transparent;font-size:16px;padding:7px 10px}.toc a:hover,.toc a.on{background:var(--sheet);color:var(--ink)}.topline{display:flex;justify-content:space-between;padding-top:29px;letter-spacing:1.3px;font-weight:700;font-size:13px;color:var(--muted)}.topline span:last-child{letter-spacing:.2px;font-weight:400}.hero{gap:28px;padding-top:17px}.sheet-day{font-size:180px;padding-top:26px}.sheet-head{font-size:25px}.sheet-wd{font-size:27px;letter-spacing:3px;margin-top:8px}.sheet-facts{margin-top:24px}.sheet-facts div{padding:14px 8px}.sheet-facts strong{font-size:19px}.feature{grid-template-columns:minmax(0,1fr) 98px;padding:25px 27px;min-height:203px;gap:16px}.feature h1{font-size:clamp(36px,4vw,52px);margin:9px 0 12px;line-height:1.02}.feature p{font-size:16px;line-height:1.55}.feature .eyebrow{font-size:13px}.candle{width:100%;max-height:130px}.today-side{gap:15px}.pill{font-size:14px;padding:6px 10px}.names{padding:20px 24px}.names .eyebrow{display:flex;align-items:center;gap:7px;font-size:13px;color:var(--sun-ink)}.names .icon{width:17px;height:17px}.names .big{font-size:34px;margin:8px 0 11px}.chip{font-size:16px;padding:4px 11px}.names-foot .btn{padding:7px 13px;font-size:15px}.names-foot{margin-top:16px}.names-foot .small{font-size:14px}.mini-grid{gap:12px}.mini{padding:16px;text-decoration:none;transition:box-shadow .15s}.mini:hover{box-shadow:0 0 0 1px var(--line)}.mini .eyebrow{display:flex;align-items:center;gap:6px;font-size:12px;letter-spacing:.8px}.mini .icon{width:17px;height:17px}.mini strong{font-size:22px;font-weight:700;margin-top:9px}.mini p{font-size:15px}.gold{color:var(--sun-ink)}.purple{color:var(--violet)}.green{color:var(--green)}.blue{color:var(--sky)}.date-jump{margin-top:20px;border-top:1px solid var(--line);padding-top:15px}.date-jump label{display:block;font-size:14px;color:var(--muted);margin-bottom:7px}.date-jump>div{display:flex;gap:8px}.date-jump input{width:100%;min-width:0;background:var(--sheet);color:var(--ink);border:1px solid var(--line);border-radius:10px;padding:9px 12px;font:14px var(--body)}.date-jump .btn{padding:8px;border-radius:10px}.pager .btn{font-size:14px;padding:9px 12px;justify-content:center}.day-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.day-actions .btn{font-size:15px}.day-actions .icon{width:18px}.text-link{font-size:16px;color:var(--muted);font-weight:600;text-decoration:none;display:inline-flex;align-items:center;gap:5px}.text-link:hover{color:var(--red)}.text-link .icon{width:18px}.band{padding-top:38px}.band-title{gap:14px;margin-bottom:17px;align-items:center;scroll-margin-top:85px}.band-title h2{font-size:29px;letter-spacing:.3px}.band-title span{font-size:15px}.band-title>.text-link{margin-left:auto}.upcoming{gap:3px}.upcoming li{padding:14px 18px;border-radius:8px}.upcoming a{text-decoration:none}.upcoming a:hover{text-decoration:underline}.upcoming strong{font-size:16px}.upcoming .d{font-size:30px}.upcoming .tag{font-size:13px;padding:4px 9px}.upcoming .small{font-size:14px}.ad{margin-top:30px;min-height:105px;border:1px dashed var(--line);background:var(--ad);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;font-size:12px;letter-spacing:2px}.ad small{font-size:13px;letter-spacing:0;text-transform:none}.sky-location{display:flex;align-items:center;gap:12px;margin-bottom:15px;font-size:16px}.sky-location>span:first-child{display:flex;gap:6px;align-items:center}.sky-location .icon{width:18px;color:var(--sun)}select{font:14px var(--body);background:var(--sheet);border:1px solid var(--line);border-radius:8px;color:var(--ink);padding:7px 30px 7px 11px}.tile{padding:22px 24px;gap:13px}.tile h3{font-size:21px;line-height:1.25}.tile p{font-size:15px;line-height:1.65}.tile-h{gap:10px}.tile-h .ico{background:var(--chip);width:34px;height:34px}.tile-h .ico.gold{background:var(--sun-soft)}.tile-h .ico.purple{background:var(--violet-soft)}.tile-h .ico.green{background:var(--green-soft)}.tile-h .ico.blue{background:var(--sky-soft)}.icon{flex-shrink:0;vertical-align:middle}.sky-grid{grid-template-columns:1.25fr 1fr}.sun-art{width:100%;height:105px}.kv strong{font-size:21px}.kv div{padding:11px 5px}.kv span{font-size:13px}.tile p.small{font-size:14px;color:var(--muted)}.data-rows{margin:8px 0 0;font-size:15px}.data-rows div{display:flex;justify-content:space-between;border-bottom:1px dotted var(--line);padding:5px}.data-rows dd{margin:0;font-weight:600}.moon-overview{display:flex;align-items:center;gap:23px;margin-block:5px}.moon-disc{width:90px;height:90px;display:grid;place-items:center;border-radius:50%;background:#202838;box-shadow:inset -7px -8px 15px #0004;color:#e4e2d7;flex:none}.moon-disc span{font-size:92px;line-height:1}.moon-percent{font:900 57px/1 var(--display)}.moon-percent small{font:600 22px var(--body)}.moon-overview strong{font-size:15px}.moon-overview p{margin:4px 0 0;font-size:13px!important}.moon-times{display:flex;gap:25px;font-size:15px;color:var(--muted)}.moon-times b{color:var(--ink);margin-left:5px}.next-phase{border-top:1px solid var(--line);padding-top:14px;display:flex;flex-direction:column;gap:3px}.next-phase strong{font-size:15px}.next-phase .small{font-size:13px}.method-note{font-size:14px;color:var(--muted);max-width:90ch;line-height:1.6;margin:12px 0 0}.method-note a{white-space:nowrap}.zodiac-strip{margin-top:18px;display:flex;align-items:center;gap:22px;padding:23px 28px;background:var(--violet-soft);border-radius:14px}.zodiac-strip .sign{font-size:53px;min-width:54px;text-align:center}.zodiac-strip .zname{display:block;font:800 28px var(--display);margin:2px 0}.zodiac-strip p{font-size:15px;color:var(--muted);margin:3px 0}.zodiac-strip .eyebrow{font-size:12px}.mini-note{background:var(--green-soft);padding:12px 14px;border-radius:9px;font-size:14px;margin-top:auto;color:var(--green)}.mini-note strong{display:block;font-size:18px}.work-stats{display:flex;gap:32px}.work-stats>strong{font:900 47px/1 var(--display)}.work-stats small{display:block;font:400 12px var(--body);color:var(--muted);margin-top:4px}.wishes{grid-template-columns:repeat(3,minmax(0,1fr))}.wish .eyebrow{font-size:12px}.wish .btn{margin-top:auto;font-size:14px;padding:7px 12px;align-self:flex-start}.wish .btn .icon{width:16px}.count div{padding:20px}.count strong{font-size:48px}.count strong small{font:400 17px var(--body);color:var(--muted)}.count span{font-size:16px;display:block;margin-top:5px;color:var(--ink);font-weight:600}.count time{font-size:13px;color:var(--muted)}.month-section>.month{max-width:none;padding:22px}.month :is(h2,h3){font:800 26px var(--display);text-transform:uppercase;letter-spacing:.5px}.month :is(h2,h3) a{text-decoration:none;display:flex;justify-content:space-between}.month :is(h2,h3) small{font:400 12px var(--body);color:var(--muted)}.calendar-day{padding:9px 0;border-radius:8px;display:block;font-weight:600}.mgrid .h{font-size:13px;padding-bottom:5px}.mgrid .calendar-day.holiday-day{background:var(--red-soft);color:var(--red)}.mgrid .calendar-day.trading-day{box-shadow:inset 0 0 0 1.5px var(--green);color:var(--green)}.mgrid .calendar-day.today{background:var(--red);color:#fff}.mgrid .calendar-day:hover{background:var(--chip)}.with-weeks{grid-template-columns:24px repeat(7,minmax(0,1fr))}.weeknumber{font-size:12px;color:var(--muted);align-self:center}.key{margin-top:14px;font-size:13px}.key i{width:11px;height:11px;vertical-align:-1px}.key-holiday{background:var(--red-soft);border-bottom:2px solid var(--red)}.key-shop{border:1.5px solid var(--green)}.cats{grid-template-columns:repeat(3,minmax(0,1fr))}.cat{gap:12px;padding:21px 18px;align-items:center}.cat>.icon:first-child{color:var(--red);width:26px}.cat>.icon:last-child{margin-left:auto;width:17px;color:var(--muted)}.cat strong{font-size:16px}.cat span{font-size:14px;display:block;margin-top:4px}.story-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:18px}.article{gap:16px}.article h3{font:800 29px/1.1 var(--display)}.article .eyebrow,.story-aside .eyebrow,.extra-grid .eyebrow{font-size:12px}.article p{font-size:16px}.story-aside{display:flex;flex-direction:column;gap:18px}.church{background:var(--green-soft)}.church-next{border-top:1px solid color-mix(in srgb,var(--green) 20%,transparent);padding-top:12px;font-size:15px;display:flex;flex-direction:column;gap:3px}.unusual{background:var(--violet-soft)}.extra-grid{margin-top:18px;grid-template-columns:1fr 1fr}.history-year{font:900 44px/1 var(--display);color:var(--red)}.autumn{background:var(--sun-soft)}.faq summary{font-size:16px;line-height:1.5}.faq details{padding:16px 20px}.faq p{font-size:15px}.sources .band-title{margin-bottom:12px}.sources h2{font-size:23px;color:var(--muted)}.source-body{border-top:1px solid var(--line);padding-top:12px;color:var(--muted);font-size:14px}.source-body>p{margin:0 0 8px}.source-body ul{padding-left:17px;display:grid;grid-template-columns:1fr 1fr;gap:6px 25px;line-height:1.5;margin:0 0 16px}.source-body summary{font-size:15px}.source-body details p{max-width:100ch}.year-intro{display:flex;justify-content:space-between;gap:30px;align-items:center;padding-top:28px}.year-intro h1{font:900 clamp(48px,5.6vw,72px)/.95 var(--display);letter-spacing:-1px;margin:10px 0 18px}.year-intro p{max-width:64ch;font-size:16px;color:var(--muted);line-height:1.7;margin:0}.year-intro .btn{flex:none}.year-intro .eyebrow{font-size:13px}.year-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:28px}.year-stats>div{border-radius:12px;background:var(--sheet);padding:17px 20px;display:flex;align-items:center;gap:15px}.year-stats strong{font:900 39px/1 var(--display)}.year-stats span{font-size:14px;color:var(--muted);line-height:1.3;max-width:90px}.calendar-toolbar{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:15px 18px;background:var(--sheet);border-radius:12px}.toolbar-options{display:flex;gap:20px;flex-wrap:wrap}.toolbar-options label{font-size:15px;cursor:pointer;display:flex;gap:6px;align-items:center}.toolbar-options input{accent-color:var(--red)}.month-jump{font-size:14px;color:var(--muted);display:flex;gap:8px;align-items:center}.year{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.year .month{padding:17px 15px}.year .month :is(h2,h3){font-size:24px}.year .calendar-day{padding:6px 0;font-size:16px}.year .mgrid{gap:3px;margin-top:12px}.year.hide-holidays .holiday-day{background:transparent!important;color:inherit!important}.year.hide-trading .trading-day{box-shadow:none!important;color:inherit!important}.year.hide-weeks .weeknumber{display:none}.year.hide-weeks .with-weeks{grid-template-columns:repeat(7,minmax(0,1fr))}.holiday-table td{white-space:normal;padding:13px 18px;font-size:16px}.holiday-table th{padding:13px 18px;background:var(--chip)}.holiday-table td:first-child{white-space:nowrap;font-weight:600}.holiday-table td:nth-child(2){color:var(--muted)}.table-label{font-size:12px;margin-left:9px;padding:3px 7px;background:var(--sun-soft);color:var(--ink);border-radius:4px;white-space:nowrap}.trading-dates{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.trading-dates>div{background:var(--sheet);padding:19px;border-radius:12px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.trading-dates .icon{color:var(--green);width:21px}.trading-dates strong{font-size:16px}.trading-dates span{font-size:13px;color:var(--muted);margin-left:auto}.leave-card{background:var(--green-soft)}.leave-card .eyebrow{font-size:12px}.leave-result{display:flex;align-items:center;gap:10px;font:900 38px var(--display)}.leave-result small{font:400 12px var(--body);color:var(--muted);max-width:45px}.leave-result>span{font:400 25px var(--body);color:var(--green);margin:0 8px}.ferie-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.ferie-grid .eyebrow{font-size:12px}.ferie-grid h3{font:800 26px/1.1 var(--display)}.ferie-grid p{font-size:16px;color:var(--muted)}footer{margin-top:50px}footer .wrap{align-items:center;padding-block:30px;gap:20px}footer p{font-size:15px;margin:0}footer .logo{font-size:23px}footer nav{font-size:14px}.skip{position:absolute;top:-100px;left:16px;z-index:99;background:var(--sheet);padding:10px}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--sky);outline-offset:3px}.local-notice{font-size:14px;padding:10px;background:var(--sun-soft);border-radius:8px}.hero-mark{font:900 75px/1 var(--display);color:var(--red);text-align:center}.hero-mark small{font:600 18px var(--body);display:block}
@media(max-width:1000px){.menu{gap:13px}.menu a{font-size:14px}.year-stats>div{padding:15px;gap:10px}.year-stats span{font-size:13px}.cats{grid-template-columns:1fr}.cat{padding:18px}.sky-grid{grid-template-columns:1fr 1fr}.trading-dates{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){.hero{grid-template-columns:1fr}.date-column{max-width:none}.date-jump{margin-top:14px}.sheet-day{font-size:160px}.sheet-facts div{padding:11px 8px}.sheet-head{padding:12px 16px 17px}.sheet-wd{font-size:24px}.today-side{gap:14px}.year{grid-template-columns:repeat(2,minmax(0,1fr))}.wishes,.ferie-grid{grid-template-columns:1fr}.story-grid{grid-template-columns:1fr}.story-aside{display:grid;grid-template-columns:1fr 1fr}.calendar-toolbar{align-items:flex-start}.toolbar-options{gap:10px 15px}.year-intro{align-items:flex-start}.year-intro .btn{font-size:15px}.year-stats{grid-template-columns:repeat(2,1fr)}.year-stats span{max-width:none}.sky-grid{grid-template-columns:1fr}.tile p{font-size:15px}.review span{display:none}.review .wrap{justify-content:center}.review a{font-size:13px;padding:5px 10px}.source-body ul{grid-template-columns:1fr}}
@media(max-width:480px){.wrap{padding-inline:16px}.top .wrap{padding-block:15px;gap:10px}.logo{font-size:24px;gap:8px}.logo svg{width:27px}.theme{font-size:0;padding:9px;width:35px;height:35px;justify-content:center}.theme:after{content:'◐';font-size:18px}.toc a{font-size:14px;padding:6px 9px}.topline{padding-top:22px;font-size:12px;letter-spacing:.8px}.topline span:last-child{font-size:12px}.hero{padding-top:13px;gap:22px}.feature{grid-template-columns:1fr 68px;padding:20px;gap:5px}.feature h1{font-size:37px}.feature p{font-size:16px}.feature .eyebrow{font-size:11px}.names{padding:18px 20px}.names .big{font-size:31px}.mini-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.mini{padding:13px}.mini strong{font-size:17px}.mini p{font-size:13px}.mini .eyebrow{font-size:11px;letter-spacing:.1px}.mini .icon{width:14px;height:14px}.names-foot{gap:8px}.names-foot .small{font-size:13px}.band{padding-top:30px}.band-title{flex-wrap:wrap;gap:3px 10px}.band-title h2{font-size:26px}.band-title span{font-size:14px}.band-title>.text-link{font-size:14px}.upcoming li{grid-template-columns:44px minmax(0,1fr);padding:12px;gap:10px}.upcoming .tag{grid-column:2;justify-self:start}.upcoming strong{font-size:16px}.upcoming .small{font-size:13px}.upcoming .d{font-size:27px}.ad{min-height:95px}.sky-location{flex-wrap:wrap;gap:8px}.sky-location>.small{font-size:13px}.tile{padding:19px 20px}.tile h3{font-size:21px}.kv strong{font-size:18px}.kv span{font-size:12px}.zodiac-strip{padding:19px;gap:13px}.zodiac-strip p{font-size:14px}.count{gap:10px}.count strong{font-size:40px}.count span{font-size:15px}.count time{font-size:12px}.count div{padding:17px}.story-aside,.extra-grid{grid-template-columns:1fr}.article h3{font-size:26px}.article p{font-size:15px}.year-intro{flex-direction:column;gap:20px;padding-top:24px}.year-intro h1{font-size:52px}.year-intro p{font-size:16px}.year-intro .btn{padding:10px 16px}.year-stats{margin-top:22px;gap:9px}.year-stats>div{padding:15px;gap:10px}.year-stats strong{font-size:33px}.calendar-toolbar{flex-direction:column;gap:14px}.toolbar-options{gap:12px;font-size:14px}.toolbar-options label{font-size:14px}.year{grid-template-columns:1fr}.year .month{padding:18px}.year .calendar-day{padding:8px 0;font-size:15px}.year .month :is(h2,h3){font-size:27px}.holiday-table th,.holiday-table td{padding:10px;font-size:14px}.holiday-table td:first-child{white-space:normal;min-width:95px}.holiday-table th:nth-child(2),.holiday-table td:nth-child(2){display:none}.table-label{display:inline-block;margin:3px 0 0}.trading-dates{gap:9px}.trading-dates>div{padding:14px;gap:8px}.trading-dates strong{font-size:16px}.trading-dates span{display:none}.review a{font-size:12px;padding:5px 7px}.review .wrap{padding-inline:5px;gap:2px}footer .wrap{align-items:flex-start}footer nav{width:100%}.method-note{font-size:13px}.moon-overview{gap:20px}.leave-result{gap:8px}.leave-result>span{margin:0 4px}}
@media print{.review,.top,.toc,footer,.skip,.ad,.year-stats,.calendar-toolbar,.year-intro .btn,.band:not(#rok),.crumbs{display:none!important}body{background:white!important;color:black!important;font-size:10px}.year{grid-template-columns:repeat(3,1fr)!important;gap:8px}.year .month{break-inside:avoid;padding:8px!important;background:white!important;border:1px solid #ddd}.year .month :is(h2,h3){font-size:20px}.year .calendar-day{padding:4px 0;font-size:11px}.year .mgrid{gap:1px}.year-intro{padding-top:0}.year-intro h1{font-size:38px}.year-intro p{display:none}.year-intro .eyebrow{display:none}#rok{padding-top:16px}.wrap{padding:0}.key{font-size:9px}.month :is(h2,h3) small{font-size:10px}.with-weeks{grid-template-columns:18px repeat(7,1fr)}a{text-decoration:none!important}.mgrid .calendar-day.holiday-day{color:#b52a20!important;background:#fbe6e3!important}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
@media(max-width:480px){.hero{gap:14px}.date-column{display:contents}.date-jump{grid-row:4;margin-top:2px}.today-side{grid-row:3}.sheet-day{font-size:115px;padding-top:17px}.sheet-head{font-size:21px;padding:11px 14px 16px}.sheet-wd{font-size:21px;margin-top:7px}.sheet-facts{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:17px;font-size:12px}.sheet-facts div{padding:11px 4px!important;border-top:0!important;border-right:1px dashed var(--line)!important}.sheet-facts div:last-child{border-right:0!important}.sheet-facts strong{font-size:16px}.sheet-facts strong{overflow-wrap:anywhere}.pager{margin-top:0}.names-foot{margin-top:13px}}
/* Owner review navigation: clearly separate three requested page types. */
.review .wrap{padding-block:11px;gap:10px}.review span{color:#d8deeb;font-size:14px;letter-spacing:0}.review a{font-size:16px;font-weight:600;padding:9px 17px;border:1px solid #ffffff35}.review a[aria-current]{background:#fff;color:#1c2740;border-color:#fff}.review a:hover{background:#34415b;color:#fff}@media(max-width:820px){.review .wrap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:9px 16px}.review span{display:block;grid-column:1/-1;margin:0 0 3px;text-align:center;font-size:13px}.review a{text-align:center;font-size:14px;padding:9px 5px;white-space:normal}}@media(max-width:380px){.review a{font-size:13px}}
.observance-index{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.observance-index a{display:inline-block;padding:7px 12px;border-radius:30px;background:var(--sheet);font-size:15px;text-decoration:none;border:1px solid var(--line)}.observance-index a:hover{border-color:var(--red);color:var(--red)}.observance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.observance-grid .eyebrow{font-size:12px}.observance-grid .small{margin-top:auto;font-size:14px}.time-explainer{margin-top:18px;background:var(--sun-soft)}.time-explainer .eyebrow{font-size:12px}.answer-grid{grid-template-columns:1.4fr 1fr}.answer-grid .eyebrow{font-size:12px}.answer-grid .data-rows{margin-top:0}.answer-grid .data-rows div{gap:15px}.answer-grid .data-rows dt{font-size:14px}.answer-grid .data-rows dd{white-space:nowrap}.names-explainer .tile{gap:12px}.names-explainer .text-link{align-self:flex-start}.proverb{background:var(--sun-soft)}.literary{background:var(--violet-soft)}.proverb blockquote,.literary blockquote{font:700 29px/1.18 var(--display);margin:0}.proverb .eyebrow,.literary .eyebrow{font-size:12px}.extra-sources{margin-top:15px;font-size:14px;color:var(--muted)}.extra-sources summary{font-size:15px}.extra-sources ul{padding-left:18px}.full-day-link{align-self:flex-start;font-size:15px}.daylight-line{margin-top:8px}@media(max-width:820px){.answer-grid{grid-template-columns:1fr}}@media(max-width:480px){.observance-grid{grid-template-columns:1fr}.observance-index a{font-size:14px;padding:6px 10px}.answer-grid .data-rows div{gap:8px;flex-wrap:wrap}.answer-grid .data-rows dd{margin-left:auto}.proverb blockquote,.literary blockquote{font-size:26px}.full-day-link{font-size:14px}}

.home-highlights{padding-top:18px}.home-highlights .mini-grid{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:980px){.home-highlights .mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.home-highlights .mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Homepage radio: direct live audio, opt-in playback. */
.radio-player{margin-top:18px;padding:24px 26px 16px;border:1px solid var(--line);border-radius:16px;background:var(--sheet);display:grid;grid-template-columns:1fr 1.65fr auto;gap:20px 28px;align-items:center;box-shadow:0 3px 16px #00000004}.radio-intro{display:flex;align-items:center;gap:14px}.radio-symbol{display:grid;place-items:center;width:54px;height:54px;flex-shrink:0;border-radius:14px;background:var(--ink);color:var(--sheet);font-size:30px}.radio-intro h2{margin:0;font-size:26px}.radio-intro p,.radio-main p{margin:4px 0 0;font-size:15px;color:var(--muted)}.radio-station-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.radio-station-row strong{font-size:20px}.radio-live{font-size:11px;letter-spacing:.08em;color:var(--red);font-weight:700;display:flex;align-items:center;gap:5px}.radio-live:before{content:'';width:6px;height:6px;background:currentColor;border-radius:50%}.radio-select-label{display:block;font-size:13px;color:var(--muted);margin:10px 0 4px}.radio-select{width:100%;max-width:310px;min-height:42px;padding:8px 12px;border:1px solid var(--line);border-radius:8px;background:var(--sheet);color:var(--ink);font:inherit;font-size:16px;cursor:pointer}.radio-volume[hidden],.radio-device-volume[hidden]{display:none}.radio-device-volume{max-width:180px;font-size:13px;color:var(--muted);margin:0}.radio-volume output{min-width:3ch}.radio-select:focus-visible{outline:3px solid var(--red);outline-offset:3px}.radio-controls{display:flex;flex-direction:column;gap:12px;align-items:stretch;min-width:145px}.radio-play{display:flex;justify-content:center;align-items:center;gap:10px;border:0;border-radius:10px;padding:13px 20px;background:var(--red);color:white;font:inherit;font-weight:700;cursor:pointer;min-height:48px}.radio-play:hover{filter:brightness(.92)}.radio-volume{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--muted)}.radio-volume input{width:80px;accent-color:var(--red);margin:0;min-width:0}.radio-foot{grid-column:1/-1;display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:12px;color:var(--muted);font-size:13px}.radio-foot a{color:inherit;text-decoration:underline;text-underline-offset:3px}.radio-player button:focus-visible,.radio-player input:focus-visible{outline:3px solid var(--red);outline-offset:4px}@media(max-width:980px){.radio-player{grid-template-columns:1fr auto}.radio-intro{grid-column:1/-1}.radio-main{min-width:0}}@media(max-width:480px){.radio-player{padding:19px 16px 14px;gap:17px;grid-template-columns:minmax(0,1fr)}.radio-intro{grid-column:auto}.radio-controls{flex-direction:row;align-items:center;justify-content:space-between;min-width:0}.radio-play{padding:12px 18px}.radio-volume{flex-direction:column;gap:4px}.radio-foot{font-size:12px}.radio-intro h2{font-size:25px}.radio-symbol{width:46px;height:46px}}@media print{.radio-player{display:none}}

.radio-dock-toggle{display:none}.radio-anchor{display:flow-root}.radio-player.is-floating{position:fixed;inset:env(safe-area-inset-top,0px) 0 auto;z-index:50;margin:0;border-radius:0;border-width:0 0 1px;padding:9px max(16px,calc((100vw - 1100px)/2));display:flex;flex-wrap:wrap;gap:10px 18px;box-shadow:0 5px 18px #0002;max-height:80dvh;overflow:auto}.radio-player.is-floating .radio-dock-toggle{display:flex;align-items:center;gap:12px;flex:1;min-width:0;text-align:left;border:0;background:transparent;color:var(--ink);font:inherit;font-weight:700;padding:8px 0;cursor:pointer}.radio-dock-toggle span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.radio-player.is-floating .radio-intro,.radio-player.is-floating .radio-foot{display:none}.radio-player.is-floating .radio-controls{display:contents}.radio-player.is-floating .radio-play{order:1;min-height:40px;padding:8px 16px}.radio-player.is-floating .radio-main{order:2;flex-basis:100%;display:none}.radio-player.is-floating .radio-volume,.radio-player.is-floating .radio-device-volume{display:none}.radio-player.is-floating.is-expanded .radio-main{display:block}.radio-player.is-floating.is-expanded .radio-volume:not([hidden]){display:flex;order:3;flex-direction:row}.radio-player.is-floating.is-expanded .radio-device-volume:not([hidden]){display:block;order:3;max-width:none}.radio-player.is-floating .radio-select{max-width:450px}.radio-player.is-floating .radio-select-label{margin-top:8px}.radio-player.is-floating .radio-volume input{width:160px}@media print{.radio-anchor{display:none}}

.weather-panel{margin-top:18px;border:1px solid var(--line);border-radius:16px;background:var(--sheet);padding:23px 26px 15px}.weather-head{display:flex;align-items:center;gap:16px}.weather-head>div{margin-right:auto}.weather-head h2{font-size:26px;margin:0}.weather-head p{font-size:14px;margin:4px 0;color:var(--muted)}.weather-head label{display:flex;flex-direction:column;gap:3px;font-size:13px;color:var(--muted)}.weather-head select{min-height:42px;max-width:210px;background:var(--sheet);color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:7px 10px;font:inherit;font-size:16px}.weather-head button{align-self:flex-end;min-height:42px;background:transparent;color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:7px 12px;font:inherit;font-size:14px;cursor:pointer}.weather-current{display:flex;flex-wrap:wrap;gap:14px 30px;align-items:center;padding:22px 0 17px}.weather-summary{display:flex;gap:16px;align-items:center;flex:1}.weather-summary h3{font:700 20px var(--body);margin:0}.weather-temp{font:800 52px/1.1 var(--display);white-space:nowrap}.weather-temp span{font-size:28px}.weather-condition{display:flex;flex-direction:column;gap:4px;margin-left:12px}.weather-condition span{font-size:15px;color:var(--muted)}.weather-details{display:flex;gap:28px;margin:0}.weather-details dt{font-size:13px;color:var(--muted)}.weather-details dd{font-size:18px;font-weight:700;margin:3px 0 0}.weather-time{flex-basis:100%;margin:0;color:var(--muted);font-size:13px}.weather-cities{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.weather-cities button{display:flex;flex-direction:column;align-items:flex-start;gap:3px;text-align:left;color:var(--ink);background:transparent;border:1px solid var(--line);border-radius:10px;padding:12px 14px;font:inherit;cursor:pointer;min-width:0}.weather-cities button:hover{border-color:var(--sky)}.weather-cities span{font-size:15px}.weather-cities strong{font-size:24px}.weather-cities small{font-size:12px;color:var(--muted);overflow-wrap:anywhere}.weather-foot{display:flex;justify-content:space-between;gap:16px;border-top:1px solid var(--line);padding-top:12px;margin-top:17px;font-size:12px;color:var(--muted)}.weather-foot a{color:inherit;white-space:nowrap}.weather-error{color:var(--muted)}@media(max-width:700px){.weather-head{flex-wrap:wrap}.weather-head>div{flex-basis:100%}.weather-head label{flex:1}.weather-head select{width:100%;max-width:none}.weather-cities{display:flex;overflow-x:auto;padding-bottom:6px;scroll-snap-type:x proximity}.weather-cities button{flex:0 0 135px;scroll-snap-align:start}.weather-summary{flex-wrap:wrap;gap:10px}.weather-condition{margin-left:0}.weather-foot{flex-wrap:wrap;gap:6px}.weather-details{gap:24px}.weather-panel{padding:19px 16px 14px}.weather-current{gap:14px}.weather-summary img{width:56px;height:56px}.weather-temp{font-size:46px}}@media print{.weather-panel{display:none}}

/* Weather colour accents preserve the calendar palette in both themes. */
.weather-panel{background:linear-gradient(125deg,color-mix(in srgb,var(--sheet) 82%,#bde8ff),color-mix(in srgb,var(--sheet) 88%,#ffe0a1) 65%,var(--sheet));border-color:color-mix(in srgb,var(--line) 60%,#6bb9e9);box-shadow:0 6px 24px #2484bd12}.weather-head h2{color:var(--sky)}.weather-temp{color:var(--red)}.weather-condition>strong{color:var(--sky)}.weather-details>div{padding:9px 13px;border-radius:10px;background:color-mix(in srgb,var(--sheet) 75%,#bfe5ff)}.weather-details>div:last-child{background:color-mix(in srgb,var(--sheet) 75%,#c2eee4)}.weather-details>div:first-child dd{color:var(--sky)}.weather-details>div:last-child dd{color:var(--green)}.weather-cities button{background:color-mix(in srgb,var(--sheet) 82%,#d9eaff);border-top:3px solid var(--sky)}.weather-cities button:nth-child(2){border-top-color:var(--violet)}.weather-cities button:nth-child(3){border-top-color:var(--green)}.weather-cities button:nth-child(4){border-top-color:var(--red)}.weather-cities button:nth-child(5){border-top-color:var(--sun)}.weather-cities strong{color:var(--sky)}.weather-head button{background:var(--sky);color:var(--sheet);border-color:var(--sky);font-weight:700}.weather-summary img{filter:drop-shadow(0 4px 8px #e0a04040)}
.radio-mute{border:1px solid var(--line);border-radius:8px;padding:8px 12px;background:transparent;color:var(--ink);font:inherit;cursor:pointer}.radio-mute[hidden]{display:none}.radio-player.is-floating .radio-mute{display:none}.radio-player.is-floating.is-expanded .radio-mute:not([hidden]){display:block;order:3}
.weather-hourly{margin:2px 0 20px}.weather-hourly h3{font:700 17px var(--body);margin:0 0 11px}.weather-hourly h3 span{font-size:12px;font-weight:400;color:var(--muted)}.weather-hours{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.weather-hour{display:flex;align-items:center;flex-direction:column;gap:4px;padding:13px 8px 11px;border-radius:12px;background:linear-gradient(150deg,color-mix(in srgb,var(--sheet) 75%,#c8e6ff),color-mix(in srgb,var(--sheet) 88%,#dad1ff));border:1px solid color-mix(in srgb,var(--line) 65%,#a0bce9)}.weather-hour time{font-weight:700;font-size:16px;color:var(--sky)}.weather-hour strong{font-size:24px;color:var(--red)}.weather-hour small{font-size:12px;color:var(--muted)}.weather-hour img{filter:drop-shadow(0 3px 5px #0001)}@media(max-width:700px){.weather-hours{gap:6px}.weather-hour{padding:10px 3px}.weather-hour time{font-size:14px}.weather-hour strong{font-size:20px}.weather-hour small{font-size:10px}.weather-hour img{width:40px;height:40px}.weather-hourly h3 span{display:block;margin-top:3px}}
.weather-hours{display:flex;overflow-x:auto;gap:12px;padding:2px 1px 10px;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:var(--sky) transparent}.weather-hour{flex:0 0 132px;min-width:132px;scroll-snap-align:start;padding:15px 10px}.weather-hour time{font-size:17px}.weather-hour strong{font-size:25px}.weather-hour small{font-size:13px}@media(max-width:700px){.weather-hour{flex-basis:112px;min-width:112px;padding:13px 9px}.weather-hour time{font-size:16px}.weather-hour strong{font-size:23px}.weather-hour small{font-size:12px}.weather-hour img{width:48px;height:48px}}
/* Compact resilient states and mobile controls, including browser-translated labels. */
.weather-head>div,.weather-head label{min-width:0}.weather-head button{white-space:normal;overflow-wrap:anywhere;line-height:1.25}.weather-hourly[hidden]{display:none}.weather-error-card{width:100%;display:flex;align-items:center;gap:16px;border:1px solid color-mix(in srgb,var(--sun) 35%,var(--line));background:color-mix(in srgb,var(--sheet) 90%,#ffd178);border-radius:12px;padding:15px 17px}.weather-error-card>div{flex:1;min-width:0}.weather-error-card strong{font-size:18px}.weather-error-card p{font-size:14px;line-height:1.45;color:var(--muted);margin:4px 0 0}.weather-error-card button{flex-shrink:0;border:1px solid var(--line);background:var(--sheet);color:var(--ink);border-radius:8px;padding:9px 13px;font:inherit;font-size:14px;cursor:pointer}.weather-foot{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:flex-start;gap:5px 14px}.weather-foot>span{flex-basis:100%;font-size:12px}.weather-foot a{font-size:12px}.weather-current>p,.weather-hours>p{margin:0;font-size:14px;color:var(--muted)}@media(max-width:700px){.weather-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(100px,40%);gap:11px 10px;align-items:end}.weather-head>div{grid-column:1/-1;margin:0}.weather-head h2{font-size:25px;line-height:1.15}.weather-head p{font-size:13px;line-height:1.4;margin:6px 0 2px}.weather-head label{font-size:12px;gap:5px;width:100%}.weather-head select{min-width:0;width:100%;max-width:100%;font-size:16px;height:43px;text-overflow:ellipsis;padding:8px}.weather-head button{font-size:13px;min-height:43px;height:auto;max-width:100%;padding:9px 10px;align-self:end}.weather-current{padding:16px 0;gap:12px}.weather-summary{flex:1 1 100%;display:grid;grid-template-columns:56px minmax(80px,1fr) minmax(80px,1.2fr);gap:9px}.weather-summary>div{min-width:0}.weather-summary h3{font-size:17px;line-height:1.2;overflow-wrap:anywhere}.weather-condition{margin:0;font-size:14px;line-height:1.3}.weather-condition span{font-size:12px}.weather-details{gap:9px;flex:1 1 100%}.weather-details>div{flex:1;padding:9px 12px}.weather-details dd{font-size:17px}.weather-time{font-size:11px;line-height:1.4}.weather-hourly{margin-bottom:15px}.weather-hourly h3{font-size:16px;margin-bottom:8px}.weather-hourly h3 span{font-size:11px}.weather-error-card{padding:12px;gap:10px}.weather-error-card strong{font-size:16px}.weather-error-card p{font-size:13px}.weather-panel{padding:18px 15px 13px}.weather-cities button{padding:10px 12px}.weather-foot{margin-top:13px;padding-top:10px}}
.weather-city-unavailable{display:block;font-size:13px;line-height:1.35;font-weight:400;color:var(--muted)}@media(max-width:700px){.weather-summary{grid-template-columns:56px 80px minmax(0,1fr)}.weather-summary>div:nth-child(2){display:contents}.weather-summary h3{grid-column:1/-1;grid-row:1;font-size:18px;margin-bottom:2px}.weather-summary>img{grid-column:1;grid-row:2}.weather-temp{grid-column:2;grid-row:2}.weather-condition{grid-column:3;grid-row:2}}

/* Use the same resolved light/dark tokens as every other site card. */
.weather-panel{color-scheme:inherit;background:var(--sheet);border:1px solid var(--line);box-shadow:0 6px 22px #285d8610;color:var(--ink)}
.weather-head h2{color:var(--sky)}.weather-head p,.weather-head label{color:var(--muted)}.weather-head select,.weather-head select option{background:var(--sheet);color:var(--ink);border-color:var(--line)}.weather-head button{background:var(--sky);color:var(--sheet);border-color:var(--sky);box-shadow:0 2px 6px #285d8615}.weather-temp{color:var(--red);text-shadow:none}.weather-condition>strong{color:var(--sky)}.weather-condition span{color:var(--muted)}.weather-details>div{background:var(--sky-soft);border:1px solid var(--line)}.weather-details>div:last-child{background:var(--green-soft);border-color:var(--line)}.weather-details>div:first-child dd{color:var(--sky)}.weather-details>div:last-child dd{color:var(--green)}
.weather-hour{background:linear-gradient(150deg,var(--sky-soft),var(--violet-soft));border-color:var(--line);box-shadow:0 2px 6px #285d8608}.weather-hour time{color:var(--sky)}.weather-hour strong{color:var(--red)}.weather-hour small{color:var(--muted)}.weather-cities button{background:var(--sky-soft);color:var(--ink);border-color:var(--line);border-top-color:var(--sky)}.weather-cities button:nth-child(2){background:var(--violet-soft);border-top-color:var(--violet)}.weather-cities button:nth-child(3){background:var(--green-soft);border-top-color:var(--green)}.weather-cities button:nth-child(4){background:var(--red-soft);border-top-color:var(--red)}.weather-cities button:nth-child(5){background:var(--sun-soft);border-top-color:var(--sun)}.weather-cities strong{color:var(--sky)}.weather-cities small,.weather-city-unavailable{color:var(--muted)}.weather-time,.weather-foot,.weather-foot a{color:var(--muted)}.weather-error-card{background:var(--sun-soft);border-color:var(--line)}.weather-error-card p{color:var(--muted)}.weather-error-card button{background:var(--sky);color:var(--sheet);border-color:var(--sky)}.weather-current>p,.weather-hours>p{color:var(--muted)}
/* Categories remain inside the existing birthday section. */
.birthday-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.birthday-group{min-width:0}.birthday-group:first-child{grid-column:1/-1}.birthday-group h3{margin:0 0 8px}.birthday-group .people-list{list-style:none;margin:0;padding:0;display:grid;gap:0}.birthday-group:first-child .people-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:26px}.birthday-group .people-list li{min-width:0;padding:13px 0;border-top:1px solid var(--line);overflow-wrap:anywhere}.birthday-group .people-list strong{font-size:17px}.birthday-year{font-size:13px;color:var(--muted);white-space:nowrap}.birthday-group .people-list p{font-size:14px;line-height:1.5;margin:4px 0 0;color:var(--muted)}.birthday-personality{margin-top:18px}@media(max-width:700px){.birthday-groups{grid-template-columns:minmax(0,1fr);gap:14px}.birthday-group:first-child .people-list{grid-template-columns:minmax(0,1fr)}.birthday-group .people-list li{padding:11px 0}.birthday-group .people-list strong{font-size:17px}}
.source-body .numbered-sources{display:block;margin:0 0 18px;padding-left:2.4em;list-style:decimal;line-height:1.6}.source-body .numbered-sources>li{padding:4px 0 4px 5px;overflow-wrap:anywhere;scroll-margin-top:90px}.source-body .numbered-sources>li::marker{font-weight:700;color:var(--muted)}

.names h2.eyebrow,.zodiac-strip h3.eyebrow{margin:0;font-family:var(--body);line-height:inherit}
.to-top{display:none}
@media (max-width:768px){.to-top{display:flex;position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:45;width:48px;height:48px;border-radius:50%;border:0;align-items:center;justify-content:center;background:var(--red);color:#fff;box-shadow:0 6px 18px rgba(0,0,0,.22);cursor:pointer;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .2s,transform .2s,visibility .2s}.to-top.show{opacity:1;visibility:visible;transform:none}.to-top:focus-visible{outline:3px solid var(--ink);outline-offset:3px}}
@media print{.to-top{display:none!important}}
.main-observance{border-left:4px solid var(--red)}
.main-observance strong{display:block;font-size:20px;margin:6px 0 4px}

.holiday-table tr.past{opacity:.55}
