:root { --blue:#1f5673; --green:#2e7d4f; --bg:#f7f9fb; --ink:#1c2733; --muted:#5b6b78; --line:#dfe6ec; }
* { box-sizing: border-box; }
body { margin:0; font-family: system-ui, "Segoe UI", Roboto, sans-serif; color:var(--ink); background:var(--bg); line-height:1.5; }
header { display:flex; align-items:center; gap:.75rem; padding:.8rem 1.2rem; background:var(--blue); color:#fff; }
header .brand { color:#fff; text-decoration:none; font-weight:700; font-size:1.1rem; }
header .tag { background:rgba(255,255,255,.2); padding:.1rem .5rem; border-radius:1rem; font-size:.75rem; }
header nav { margin-left:auto; } header nav a { color:#fff; text-decoration:none; opacity:.9; }
main { max-width: 820px; margin: 1.5rem auto; padding: 0 1.2rem; }
footer { max-width:820px; margin:2rem auto; padding:1rem 1.2rem; color:var(--muted); border-top:1px solid var(--line); }
h1 { font-size:1.5rem; } h2 { font-size:1.15rem; margin-top:1.4rem; }
a { color:var(--blue); }
.meta { color:var(--muted); } .warn { color:#b25e00; } .req { color:#c0392b; }
.para { background:#eef3f7; color:var(--blue); padding:0 .35rem; border-radius:.3rem; font-size:.8rem; }
fieldset { border:1px solid var(--line); border-radius:.5rem; margin:1rem 0; padding:1rem; background:#fff; }
legend { font-weight:600; padding:0 .4rem; }
.felt { margin:.7rem 0; } .felt label { display:block; font-weight:500; margin-bottom:.2rem; }
.felt input, .felt textarea { width:100%; padding:.5rem; border:1px solid var(--line); border-radius:.4rem; font:inherit; }
.felt .hjelp { display:block; color:var(--muted); margin-top:.25rem; }
button, .btn { display:inline-block; background:#fff; border:1px solid var(--blue); color:var(--blue); padding:.5rem .9rem; border-radius:.4rem; text-decoration:none; cursor:pointer; font:inherit; }
button, .btn.primary { background:var(--blue); color:#fff; }
.btn.primary { background:var(--green); border-color:var(--green); }
.ny-sak { background:#fff; border:1px solid var(--line); border-radius:.5rem; padding:1rem; display:flex; gap:1rem; align-items:end; flex-wrap:wrap; }
.ny-sak select { padding:.4rem; }
table { width:100%; border-collapse:collapse; margin-top:1rem; background:#fff; }
th, td { text-align:left; padding:.5rem .6rem; border-bottom:1px solid var(--line); }
.status { font-size:.8rem; padding:.1rem .5rem; border-radius:1rem; background:#eef3f7; }
.status-komplett { background:#e3f3ea; color:var(--green); } .status-eksportert { background:#e7eefc; color:var(--blue); }
.ok { color:var(--green); font-weight:600; } .feil { color:#c0392b; font-weight:600; }
.mangler li { color:#7a3b34; }
.preview { background:#fff; border:1px solid var(--line); border-radius:.5rem; padding:1.5rem; }
.preview dl { display:grid; grid-template-columns: 14rem 1fr; gap:.3rem .8rem; }
.preview dt { font-weight:600; color:var(--muted); } .preview .ansvar { color:var(--muted); }
.toolbar { display:flex; gap:1rem; align-items:center; margin-bottom:1rem; }
