/* Grunnstiler: farger, typografi, knapper, skjema, statusfarger */
body{margin:0;background:#F4F3EE;color:#1A1D1B;font-family:'Instrument Sans',system-ui,sans-serif;font-size:14px;-webkit-font-smoothing:antialiased}
a{color:#24543F}a:hover{color:#163828}
*{box-sizing:border-box}
.setgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:14px;align-items:start}
.drop{border:1.5px dashed #C9C6BB;border-radius:12px;padding:22px;display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;background:#FBFAF7}
.drop img{max-width:240px;max-height:110px;object-fit:contain}
.filebtn{position:relative;overflow:hidden}
.filebtn input{position:absolute;inset:0;opacity:0;cursor:pointer}
.lvrow{display:flex;flex-wrap:wrap;gap:16px;align-items:center}
.lvbox{border-radius:12px;padding:18px 20px;display:flex;align-items:center;gap:12px}
.wplogo{display:none}
@media print{.wplogo{display:flex;align-items:center;gap:12px;margin-bottom:8px}.wplogo img{max-height:48px}}
.phead{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:14px}
.eyebrow{font-size:12.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#5E625D;margin-bottom:6px}
.h1{font-size:27px;font-weight:650;letter-spacing:-0.015em;margin:0;line-height:1.15}
.toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.muted{color:#5E625D}
.sm{font-size:12.5px}
.block{display:block}
.mono{font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:12.5px}
.card{background:#fff;border:1px solid #E2E0D8;border-radius:12px;padding:18px}
.card.nopad{padding:0;overflow:hidden}
.ctitle{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin:0 0 12px;font-size:15px;font-weight:650}
.ctitle .sm{font-weight:400}
.scrollx{overflow-x:auto}
.btn{display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:0 14px;border:1px solid #D3D1C7;background:#fff;border-radius:8px;font:inherit;font-size:14px;cursor:pointer;color:#1A1D1B;text-decoration:none;white-space:nowrap}
.btn:hover{background:#F1F0EA;color:#1A1D1B}
.btn.primary{background:#24543F;border-color:#24543F;color:#fff}
.btn.primary:hover{background:#1B4231;color:#fff}
.btn.sm{min-height:30px;padding:0 10px;font-size:13px}
.seg{display:inline-flex;border:1px solid #D3D1C7;border-radius:8px;overflow:hidden;background:#fff}
.seg button{border:0;border-left:1px solid #E6E4DC;background:transparent;min-height:38px;padding:0 13px;font:inherit;font-size:13.5px;cursor:pointer;color:#3B3F3B}
.seg button:first-child{border-left:0}
.seg button:hover{background:#F1F0EA}
.seg button.on{background:#1C2420;color:#fff}
.pill{display:inline-flex;align-items:center;height:24px;padding:0 10px;border-radius:999px;font-size:12.5px;font-weight:600;white-space:nowrap}
.st-planlagt{background:#E3EAF4;color:#22416A}
.st-pagar{background:#DDEEE2;color:#1D5534}
.st-venter{background:#FAEBC8;color:#6E4A00}
.st-forsinket{background:#FADDD7;color:#922A1A}
.st-ferdig{background:#E9E9E5;color:#4C4F4B}
.sel{font:inherit;font-size:13px;min-height:32px;border:1px solid #D3D1C7;border-radius:7px;padding:0 6px;background-color:#fff;color:#1A1D1B;max-width:100%}
.sel.st-planlagt,.sel.st-pagar,.sel.st-venter,.sel.st-forsinket,.sel.st-ferdig{border-color:transparent;font-weight:600}
.inp{font:inherit;font-size:13px;min-height:32px;border:1px solid #E2E0D8;border-radius:7px;padding:0 8px;background:#fff;color:#1A1D1B;width:100%;min-width:0}
.inp:hover{border-color:#CFCCC2}
.inp:focus,.sel:focus{outline:2px solid #3A6EA5;outline-offset:0;border-color:transparent}
.hint{display:flex;align-items:center;gap:8px;font-size:13px;color:#3F4A44;background:#E9F0E7;border-radius:8px;padding:9px 12px}
.legend{display:flex;flex-wrap:wrap;gap:14px;font-size:12.5px;color:#5E625D;align-items:center}
.lg{display:inline-flex;align-items:center;gap:6px}
.sw{width:14px;height:14px;border-radius:4px;display:inline-block}

[hidden]{display:none!important}
.ico,.logo{display:inline-flex;flex:none}
.grow{flex:1;min-width:0}
.btn.danger{color:#922A1A;border-color:#E9B8AE}
.btn.danger:hover{background:#FADDD7;color:#922A1A}
.inp.num{width:64px;text-align:right}
.tag.soft{background:#F2F1EC;color:#333733}
.sw-tent{background:repeating-linear-gradient(135deg,#C9A24A 0 4px,#E6CD8F 4px 8px)}
.sw-ferie{background:repeating-linear-gradient(135deg,#ECEAE3 0 4px,#D9D5CA 4px 8px)}
.boot{display:flex;align-items:center;justify-content:center;min-height:100vh;color:#5E625D;font-size:15px}
