@layer foundation,pages,components;
@layer pages {
:root { --bg:#f7f5f0; --card:#fff; --text:#4a453e; --primary:#7a8b7b; --primary-hover:#657566; --accent:#c88a65; --border:#e5dec9; --danger:#c0392b; --muted:#777; }
        * { box-sizing:border-box; }
        body { margin:0; padding:15px; background:var(--bg); color:var(--text); font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif; }
        .side { max-width:1250px; margin:0 auto; }
        .kort { margin-bottom:18px; padding:18px; background:var(--card); border:1px solid var(--border); border-radius:8px; }
        h1,h2,h3,h4 { margin-top:0; }
        a { color:var(--text); }
        .dempa { color:var(--muted); font-size:var(--font-body); }
        .topp { display:flex; justify-content:space-between; gap:14px; flex-wrap:wrap; align-items:flex-start; }
        .badge { display:inline-block; padding:5px 10px; border-radius:14px; background:#eee; font-size:var(--font-label); font-weight:700; }
        .badge.full { background:#eaf2eb; color:#526553; }
        .badge.fylles { background:#fef3e6; color:#8b6b35; }
        .stats { display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:10px; margin-top:14px; }
        .stat { padding:12px; background:#faf7f2; border:1px solid var(--border); border-radius:6px; }
        .stat .label { color:var(--muted); font-size:var(--font-label); text-transform:uppercase; }
        .stat .verdi { margin-top:4px; font-size:var(--font-section); font-weight:700; }
        .feil,.melding,.varsel { margin-bottom:14px; padding:11px 13px; border-radius:5px; }
        .feil { background:#fff0ed; color:#8d2f26; border-left:4px solid var(--danger); }
        .melding { background:#eaf2eb; border-left:4px solid var(--primary); }
        .varsel { background:#fef3e6; border-left:4px solid var(--accent); }
        .sporbarhet { padding:12px; margin:10px 0; background:#f4f6f2; border-left:4px solid var(--primary); border-radius:5px; }
        table { width:100%; border-collapse:collapse; min-width:650px; }
        th,td { padding:9px; border-bottom:1px solid var(--border); text-align:left; vertical-align:top; font-size:var(--font-body); }
        th { background:#faf7f2; }
        .table-wrap { overflow-x:auto; }
        input,select,textarea { width:100%; margin:4px 0 9px; padding:10px; border:1px solid var(--border); border-radius:5px; background:#fff; font-size:var(--font-body); }
        textarea { min-height:74px; resize:vertical; }
        label { font-size:var(--font-label); font-weight:600; }
        button { min-height:40px; padding:9px 13px; border:0; border-radius:5px; background:var(--primary); color:white; font-weight:700; cursor:pointer; }
        button:hover { background:var(--primary-hover); }
        button.accent { background:var(--accent); }
        button.slett { background:var(--danger); }
        .flex { display:flex; gap:10px; flex-wrap:wrap; }
        .col { flex:1; min-width:135px; }
        .col.bred { flex:2; }
        details { margin-top:10px; border:1px solid var(--border); border-radius:6px; overflow:hidden; }
        summary { cursor:pointer; font-weight:700; padding:11px 12px; background:#faf7f2; }
        .details-body { padding:12px; }
        .logg { padding:11px 0; border-bottom:1px solid var(--border); }
        .logg:last-child { border-bottom:0; }
        .actions { display:flex; gap:6px; flex-wrap:wrap; }
        .actions form { margin:0; }
        .log-accordion { background:#edf5ea; border-color:#d7e4d2; }
        .log-accordion > summary { background:#edf5ea; }
        .log-accordion .details-body { background:#f8fbf7; }
        .log-accordion .logg { margin:6px 0; padding:10px 12px; background:#edf5ea; border:1px solid #d7e4d2; border-radius:6px; }
        button.lagre-logg { background:#7f987b; color:#fff; }
        button.lagre-logg:hover { background:#6d8669; }
        .analyse-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(170px,1fr)); gap:9px; }
        .analyse-resultat { margin:9px 0; padding:10px 12px; background:#fafafa; border:1px solid var(--border); border-radius:6px; }
        .analyse-values { display:flex; gap:7px; flex-wrap:wrap; margin-top:7px; }
        .analyse-value { padding:4px 7px; background:#f1f4ef; border-radius:4px; font-size:var(--font-label); }
        @media(max-width:700px){ body{padding:8px;} .kort{padding:12px;} }

}
