:root{--bg:#fbfaf7;--yta:#fff;--text:#1c1c1a;--dim:#5d5d57;--linje:#e4e2dc;--accent:#1d5c86;--accent-text:#fff;--ok:#1d7a46;--r:12px}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#141513;--yta:#1d1f1c;--text:#ecebe6;--dim:#a3a29b;--linje:#34362f;--accent:#7cb7e0;--accent-text:#0e1a22;--ok:#5cc98a}}
:root[data-theme="dark"]{--bg:#141513;--yta:#1d1f1c;--text:#ecebe6;--dim:#a3a29b;--linje:#34362f;--accent:#7cb7e0;--accent-text:#0e1a22;--ok:#5cc98a}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--text);font:16px/1.6 system-ui,-apple-system,"Segoe UI",sans-serif}
.wrap{max-width:760px;margin:0 auto;padding:20px 16px 64px}
nav{display:flex;gap:16px;flex-wrap:wrap;font-size:14px;padding:12px 0;border-bottom:1px solid var(--linje);margin-bottom:24px}
nav a{color:var(--dim);text-decoration:none} nav a.logo{color:var(--text);font-weight:700;margin-right:auto}
h1{font-size:30px;line-height:1.2;margin:8px 0 12px} h2{font-size:21px;margin:32px 0 8px}
a{color:var(--accent)}
.lead{font-size:18px;color:var(--dim)}
.ruta{background:var(--yta);border:1px solid var(--linje);border-radius:var(--r);padding:20px;margin:20px 0}
label{display:block;font-weight:600;margin:14px 0 6px}
select,input{width:100%;font:inherit;padding:10px 12px;border:1px solid var(--linje);border-radius:8px;background:var(--bg);color:var(--text)}
.knapp{display:inline-block;background:var(--accent);color:var(--accent-text);padding:12px 20px;border-radius:999px;text-decoration:none;font-weight:600;border:0;font-size:16px;cursor:pointer}
.resultat{font-size:28px;font-weight:700;color:var(--ok);margin:8px 0}
.dim{color:var(--dim)} small{color:var(--dim)}
.upplysning{font-size:13px;color:var(--dim);margin:16px 0}
table{border-collapse:collapse;width:100%} th,td{text-align:left;padding:8px;border-bottom:1px solid var(--linje);font-size:15px}
.kort{display:block;background:var(--yta);border:1px solid var(--linje);border-radius:var(--r);padding:16px 18px;margin:12px 0;text-decoration:none;color:var(--text)}
.kort b{display:block;font-size:17px;color:var(--accent)}
footer{margin-top:48px;padding-top:16px;border-top:1px solid var(--linje);font-size:13px;color:var(--dim)}
