/* Strony użytkowe: apteki, niedziele handlowe, weekend, strony statyczne */
.hero-sub{padding:28px 0 26px}.hero-sub h1{margin:.1em 0 .25em}.hero-sub .lead{max-width:760px}
.answer{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);border-radius:14px;padding:14px 18px;margin-top:14px;max-width:780px}
.answer .a-q{margin:0;font-size:.95rem;opacity:.9}.answer .a-a{margin:.3em 0;font-size:1.25rem;font-weight:700}.answer .a-next{margin:0}
.answer a,.hero-sub .a-next a{color:inherit;text-decoration:underline}
.ts-list{list-style:none;padding:0;margin:0}.ts-list li{display:flex;justify-content:space-between;gap:10px;padding:9px 10px;border-bottom:1px solid #e6e6ee;border-radius:8px}
.ts-list .ts-d{font-weight:700}.ts-list .ts-r{color:#555;text-align:right}
.ts-list li.past,.hol-list li.past{opacity:.5;text-decoration:line-through}
.ts-list li.next{background:var(--gold);color:#111;text-decoration:none;opacity:1}.ts-list li.next .ts-r{color:#111}
.ts-list li.next .ts-d::after{content:" · najbliższa";font-weight:600}
.plain.cols{columns:2 260px}.plain.cols li{break-inside:avoid}
.faq details{border:1px solid #e3e3ea;border-radius:10px;padding:10px 14px;margin:8px 0;background:#fff}
.faq summary{cursor:pointer;font-weight:700}.faq p{margin:.6em 0 .2em}
.ph-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:12px}
.ph{background:#fff;border:1px solid #e3e3ea;border-radius:12px;padding:12px 14px}
.ph-big{border-left:5px solid var(--blue)}
.ph-top{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.ph-top b{font-size:1.05rem}
.b24{background:var(--blue);color:#fff;border-radius:6px;padding:1px 7px;font-size:.8rem;font-weight:700}
.ph-st{margin-left:auto;font-size:.85rem;font-weight:700;border-radius:999px;padding:2px 9px;background:#eee}
.ph-st.on{background:#d9f5df;color:#0b5d1e}.ph-st.off{background:#fde2e1;color:#8a1c14}.ph-st.na{background:#eee;color:#555}
.ph p{margin:.35em 0}.ph-addr a{color:inherit}.ph-note{font-size:.85rem;color:#6a4a00}
.ph-week summary{cursor:pointer;font-size:.9rem;color:var(--blue)}.ph-week ul{list-style:none;padding:0;margin:.3em 0;columns:2;font-size:.9rem}.ph-week span{display:inline-block;width:3.4em;color:#666}
.ph-tools{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:0 0 12px}
.ph-tools input[type=search]{flex:1 1 260px;font-size:1.05rem;padding:10px 12px;border:2px solid #ccd;border-radius:10px}
.chk{display:flex;gap:6px;align-items:center;font-weight:600}
.box.warn{border-left:5px solid var(--warm)}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.quick{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.quick a{background:#fff;border:1px solid #dcdce6;border-radius:999px;padding:8px 14px;font-weight:700;text-decoration:none;color:var(--blue-d)}
.quick a:hover{border-color:var(--blue)}
.foot-links a{color:inherit}
.prose{max-width:820px}.prose h2{margin-top:1.4em}.big-mail{font-size:1.4rem;font-weight:700}
.util-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.util-card{display:block;background:#fff;border:1px solid #e3e3ea;border-radius:12px;padding:12px 14px;text-decoration:none;color:inherit}
.util-card b{display:block}.util-card span{font-size:.9rem;color:#555}.util-card summary{cursor:pointer;list-style:none}
.util-card p{margin:.5em 0 0;line-height:1.7}
/* Miejsca reklamowe: puste = niewidoczne (zero CLS). Po włączeniu reklam dodaj klasę "ads" do <body>, wtedy wysokość jest zarezerwowana. */
.ad-slot{max-width:1100px;margin:0 auto}
.ad-slot:empty{display:none}
body.ads .ad-slot{display:block;min-height:120px;margin:18px auto;padding:0 16px;text-align:center}
body.ads .ad-slot::before{content:"Reklama";display:block;font-size:.7rem;color:#888;text-transform:uppercase;letter-spacing:.08em}
@media(min-width:900px){body.ads .ad-slot{min-height:250px}}
body.contrast .ph,body.contrast .faq details,body.contrast .util-card,body.contrast .quick a{background:#000;color:#fff;border-color:#fff}
body.contrast .ph-st.on{background:#0f0;color:#000}body.contrast .ph-st.off{background:#f66;color:#000}
body.contrast .ts-list li.next{background:#ff0;color:#000}
