/* DEMO: stały, duży pasek na górze każdej strony demo */
.demo-pasek { position:sticky; top:0; z-index:50; background:#b00020; color:#fff; font-weight:800; text-align:center; padding:12px 16px; font-size:18px; line-height:1.3; }
main { max-width:1040px; margin:0 auto; padding:20px 16px 56px; }
.firma { font-weight:700; color:var(--link); font-size:var(--t-small); text-transform:uppercase; letter-spacing:.02em; }
.karta { background:var(--card); border:1px solid var(--line); border-radius:var(--r); padding:20px; margin:16px 0; }
.warianty { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; align-items:start; }
@media (max-width:820px) { .warianty { grid-template-columns:1fr; } }
.war { background:var(--card); border:1px solid var(--line); border-radius:var(--r); padding:20px; display:flex; flex-direction:column; }
.war.polecany { border:2px solid var(--accent); }
.war h2 { margin:0; font-size:20px; } .cena { font-size:28px; font-weight:800; margin:8px 0 2px; font-variant-numeric:tabular-nums; }
.war ul { padding-left:20px; } .war.wybrany { outline:4px solid var(--ok); } .war.inny { opacity:.5; }
.przycisk { display:block; width:100%; text-align:center; padding:14px; border:0; border-radius:12px; background:var(--accent); color:#fff; font:inherit; font-weight:700; cursor:pointer; text-decoration:none; margin-top:auto; }
.przycisk:disabled { opacity:.6; cursor:wait; }
.info { color:var(--muted); } .blad { color:var(--err-text); }
.gwiazdki { display:flex; gap:8px; flex-wrap:wrap; } .gwiazdki button { font-size:30px; min-width:52px; min-height:52px; border:1px solid var(--line); background:var(--card); border-radius:12px; cursor:pointer; }
.gwiazdki button[aria-pressed=true] { background:var(--accent-bg); border-color:var(--accent); }
textarea { width:100%; min-height:90px; padding:12px; border:1px solid var(--line); border-radius:var(--r); font:inherit; }
table { width:100%; border-collapse:collapse; } th, td { text-align:left; padding:8px 6px; border-bottom:1px solid var(--line); vertical-align:top; }
