:root{--paper:#faf6ef;--paper-2:#f3ede1;--card:#fffdf8;--ink:#2b2620;--ink-soft:#6d6459;--ink-faint:#7a6f63;--moss:#5d7a5a;--moss-strong:#4a6348;--moss-tint:#e9efe6;--moss-deep:#38503a;--danger:#a24a3c;--danger-tint:#f6e5e1;--line:#2b26201f;--line-2:#2b262033;--shadow-soft:0 2px 6px #2b26200d, 0 12px 32px #2b262012;--font-display:"Bricolage Grotesque", system-ui, sans-serif;--font-body:"Karla", system-ui, sans-serif;--radius:18px;--radius-sm:10px;--maxw:1180px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}body{background:radial-gradient(1000px 640px at 82% 0, var(--moss-tint) 0%, transparent 62%), radial-gradient(900px 600px at 6% 12%, #f6ecd9 0%, transparent 60%), var(--paper);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;background-attachment:fixed;margin:0;font-size:1rem;line-height:1.55}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.015em;margin:0;font-weight:600;line-height:1.15}a{color:var(--moss-strong);text-underline-offset:3px}a:hover{color:var(--moss-deep)}.topbar{background:var(--card);border-bottom:1px solid var(--line);box-shadow:var(--shadow-soft);z-index:10;align-items:center;gap:1.5rem;padding:.85rem clamp(20px,4vw,40px);display:flex;position:sticky;top:0}.brand{font-family:var(--font-display);align-items:center;gap:.5rem;font-size:1.2rem;font-weight:650;display:flex}.brand .wisp{color:var(--moss);font-size:1.4rem;line-height:1}.brand small{color:var(--ink-faint);font-size:.8rem;font-weight:500;font-family:var(--font-body)}.tabs{flex:1;gap:.25rem;display:flex}.tab{appearance:none;border-radius:var(--radius-sm);font:inherit;color:var(--ink-soft);cursor:pointer;background:0 0;border:1px solid #0000;padding:.5rem .9rem;font-weight:700}.tab:hover{color:var(--moss-deep);background:var(--moss-tint)}.tab[aria-current=true]{color:var(--moss-deep);background:var(--moss-tint);border-color:var(--line)}.topbar .who{color:var(--ink-faint);font-size:.85rem}main{max-width:var(--maxw);margin-inline:auto;padding:clamp(20px,4vw,40px)}.page-head{margin-bottom:1.5rem}.page-head h1{font-size:1.9rem}.page-head p{color:var(--ink-soft);max-width:62ch;margin:.35rem 0 0}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-soft);margin-bottom:1.5rem;padding:clamp(18px,2.4vw,28px)}.card>h2{margin-bottom:.25rem;font-size:1.3rem}.card>.hint{color:var(--ink-faint);margin:0 0 1.1rem;font-size:.85rem}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.9rem}th,td{text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;padding:.55rem .7rem}th{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.06em;font-size:.78rem;font-weight:700}tbody tr:hover{background:var(--moss-tint)}td.num{text-align:right;font-variant-numeric:tabular-nums}tr.inactive td{color:var(--ink-faint)}.form-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));align-items:end;gap:.9rem 1rem;display:grid}label{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.3rem;font-size:.78rem;font-weight:700;display:block}input,select,textarea{border:1px solid var(--line-2);border-radius:var(--radius-sm);width:100%;font:inherit;color:var(--ink);background:#fff;padding:.5rem .65rem}input:focus,select:focus,textarea:focus{outline:2px solid var(--moss);outline-offset:1px;border-color:var(--moss)}.checkbox{align-items:center;gap:.5rem;display:flex}.checkbox input{width:auto}.checkbox label{text-transform:none;letter-spacing:0;margin:0}.btn{appearance:none;border-radius:var(--radius-sm);font:inherit;cursor:pointer;border:1px solid #0000;align-items:center;gap:.4em;padding:.55em 1.1em;font-weight:700;transition:background .15s,border-color .15s,transform .15s;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--primary{background:var(--moss);color:#fdfcf8}.btn--primary:not(:disabled):hover{background:var(--moss-strong);transform:translateY(-1px)}.btn--ghost{border-color:var(--line-2);color:var(--ink);background:0 0}.btn--ghost:not(:disabled):hover{border-color:var(--moss);color:var(--moss-deep)}.btn--danger{border-color:var(--danger);color:var(--danger);background:0 0}.btn--danger:not(:disabled):hover{background:var(--danger-tint)}.btn--sm{padding:.3em .7em;font-size:.82rem}.row-actions{justify-content:flex-end;gap:.4rem;display:flex}.badge{border-radius:999px;padding:.15em .6em;font-size:.75rem;font-weight:700;display:inline-block}.badge--active{background:var(--moss-tint);color:var(--moss-deep)}.badge--inactive{background:var(--danger-tint);color:var(--danger)}.badge--superseded{color:#8a6d3b;background:#efe7d6}.toast{border-radius:var(--radius-sm);box-shadow:var(--shadow-soft);z-index:100;max-width:90vw;padding:.7rem 1.2rem;font-weight:700;position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%)}.toast--ok{background:var(--moss-deep);color:#fdfcf8}.toast--err{background:var(--danger);color:#fff}.login-wrap{place-items:center;min-height:100vh;padding:1.5rem;display:grid}.login-card{width:100%;max-width:380px}.login-card h1{margin-bottom:.25rem;font-size:1.6rem}.login-card .stack{gap:.9rem;margin-top:1.2rem;display:grid}.muted{color:var(--ink-faint);font-size:.85rem}.empty{color:var(--ink-faint);padding:1rem 0}.section-actions{flex-wrap:wrap;gap:.6rem;margin-top:1.1rem;display:flex}details.decommission{border-top:1px solid var(--line);margin-top:1.2rem;padding-top:1rem}details.decommission summary{cursor:pointer;color:var(--moss-deep);font-weight:700}
