:root{--tlo:#f6f7f9;--karta:#fff;--tekst:#1f2933;--cicho:#6b7280;--linia:#e5e7eb;--akcent:#2563eb;--dzis:#fff7e6;--dzis-ramka:#f59e0b;--zalegle:#fdecec;--zalegle-ramka:#dc2626}*{box-sizing:border-box}body{color:var(--tekst);background:var(--tlo);margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:18px;line-height:1.5}h1{margin:0 0 .25rem;font-size:1.7rem}h2{color:var(--cicho);text-transform:uppercase;letter-spacing:.04em;margin:0 0 .6rem;font-size:1.1rem}.naglowek{background:var(--karta);border-bottom:1px solid var(--linia);align-items:center;gap:1.5rem;padding:.75rem 1.25rem;display:flex}.logo{font-weight:700}.naglowek nav{flex:1;gap:.5rem;display:flex}.naglowek nav button{font:inherit;cursor:pointer;color:var(--tekst);background:0 0;border:none;border-radius:8px;padding:.4rem .8rem}.naglowek nav button.aktywny{background:var(--tlo);font-weight:600}.kto{color:var(--cicho);align-items:center;gap:.75rem;display:flex}.ekran{max-width:720px;margin:0 auto;padding:1.5rem 1.25rem 3rem}.karta{background:var(--karta);border:1px solid var(--linia);border-radius:12px;margin:1rem 0;padding:1rem 1.25rem}.karta.dzis{background:var(--dzis);border-color:var(--dzis-ramka)}.karta.zalegle{background:var(--zalegle);border-color:var(--zalegle-ramka)}ul.terminy,ul.oceny{margin:0;padding:0;list-style:none}ul.terminy li{border-top:1px solid var(--linia);padding:.5rem 0}ul.terminy li:first-child{border-top:none}ul.terminy label{cursor:pointer;flex-direction:row;align-items:baseline;gap:.75rem;display:flex}ul.terminy input[type=checkbox]{flex:none;align-self:center;width:1.3rem;height:1.3rem}.rodzaj{flex:none;font-weight:600}.tresc{flex:1}li.zrobione .tresc,li.zrobione .rodzaj{color:var(--cicho);text-decoration:line-through}ul.oceny li{align-items:baseline;gap:.75rem;padding:.35rem 0;display:flex}.ocena{text-align:center;background:var(--tlo);border-radius:6px;min-width:2.2rem;padding:0 .3rem;font-weight:700}ul.oceny li span:nth-child(2){flex:1}.cicho{color:var(--cicho);font-size:.9rem}.data-dzis{color:var(--cicho);margin-top:0}.stopka{margin-top:2rem}.info{text-align:center;color:var(--cicho);padding:3rem 1rem}.blad{color:var(--zalegle-ramka)}.logowanie{max-width:400px;padding-top:4rem}.logowanie form{flex-direction:column;gap:1rem;display:flex}.logowanie label{flex-direction:column;gap:.3rem;font-weight:600;display:flex}.logowanie input{font:inherit;border:1px solid var(--linia);border-radius:8px;padding:.6rem .8rem}button{font:inherit;border:1px solid var(--akcent);background:var(--akcent);color:#fff;cursor:pointer;border-radius:8px;padding:.6rem 1.2rem}button:disabled{opacity:.6;cursor:default}button.cichy{color:var(--cicho);border-color:var(--linia);background:0 0;padding:.3rem .7rem;font-size:.9rem}
