:root{--ink: #0e1114;--slate: #1a1f24;--panel: #222830;--mist: #e8e4dc;--fog: #b8b2a6;--brass: #c4a574;--brass-dim: #8b7355;--alert: #b85c38;--ok: #5a8f6a;--line: #3a424b;--line-soft: #2c333b;--font-display: "Instrument Serif", Georgia, serif;--font-body: "Source Sans 3", system-ui, sans-serif;color:var(--mist);background:var(--ink);font-family:var(--font-body);line-height:1.5;font-weight:400;color-scheme:dark}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{background:radial-gradient(ellipse 80% 50% at 10% -10%,rgba(196,165,116,.11),transparent),radial-gradient(ellipse 55% 35% at 100% 0%,rgba(90,100,120,.12),transparent),var(--ink)}a{color:var(--brass);text-decoration:none}a:hover{color:var(--mist)}button,input,select,textarea{font:inherit}.app-shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.sidebar{background:#1a1f24f5;border-right:1px solid var(--line);padding:1.5rem 1rem;display:flex;flex-direction:column;gap:.35rem;position:sticky;top:0;height:100vh}.brand{font-family:var(--font-display);font-size:1.85rem;margin:0 0 .15rem;color:var(--mist);letter-spacing:-.02em}.brand-sub{color:var(--fog);font-size:.82rem;margin:0 0 1.75rem;line-height:1.35}.nav-link{display:block;padding:.65rem .85rem;border-radius:8px;color:var(--fog);transition:background .15s ease,color .15s ease}.nav-link:hover{background:#222830cc;color:var(--mist)}.nav-link.active{background:var(--panel);color:var(--mist);box-shadow:inset 2px 0 0 var(--brass)}.main{padding:1.75rem 2rem 3rem;max-width:1100px}.main:has(.um-page){max-width:1280px}h1{font-family:var(--font-display);font-weight:400;font-size:2.35rem;margin:0 0 .35rem;letter-spacing:-.02em}h2{font-family:var(--font-display);font-weight:400;font-size:1.45rem;margin:0 0 .5rem}.page-lede{color:var(--fog);margin:0 0 1.5rem;max-width:42rem}.muted{color:var(--fog)}.panel{background:#222830e0;border:1px solid var(--line-soft);border-radius:12px;padding:1.15rem 1.25rem;margin-bottom:1rem}.panel+.panel{margin-top:0}.review-card{background:#222830e0;border:1px solid var(--line-soft);border-radius:12px;padding:1.15rem 1.25rem;margin-bottom:1rem}.review-card .actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.9rem;padding-top:.9rem;border-top:1px solid var(--line-soft)}.row{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:.85rem .55rem;border-bottom:1px solid var(--line-soft);vertical-align:top}.table th{color:var(--fog);font-weight:500;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em}.table tbody tr:hover td{background:#c4a5740a}.chip{display:inline-block;padding:.18rem .55rem;border-radius:6px;border:1px solid var(--line);font-size:.72rem;text-transform:lowercase;letter-spacing:.02em;color:var(--fog);white-space:nowrap}.chip.ok{border-color:var(--ok);color:#9dcdb0;background:#5a8f6a1f}.chip.warn{border-color:var(--brass-dim);color:var(--brass);background:#c4a5741f}.chip.bad{border-color:var(--alert);color:#e09a7e;background:#b85c381f}.chip.neutral{border-color:var(--line);color:var(--fog);background:transparent}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--line);background:var(--panel);color:var(--mist);padding:.5rem .95rem;border-radius:8px;cursor:pointer;transition:border-color .15s ease,background .15s ease}.btn:hover:not(:disabled){border-color:var(--brass)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.primary{background:var(--brass);color:var(--ink);border-color:var(--brass);font-weight:600}.btn.primary:hover:not(:disabled){background:#d0b488;border-color:#d0b488}.btn.danger{border-color:var(--alert);color:#e09a7e;background:#b85c3814}.btn.danger:hover:not(:disabled){background:#b85c382e}.btn.ghost{background:transparent}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:2rem}.login-card{width:min(420px,100%);background:#1a1f24f0;border:1px solid var(--line);border-radius:14px;padding:2.25rem;box-shadow:0 24px 60px #00000059}.login-card h1{margin-bottom:.35rem}.login-card .page-lede{margin-bottom:1.5rem}.field{display:flex;flex-direction:column;gap:.35rem;margin-bottom:1rem}.field label{color:var(--fog);font-size:.9rem}.field input,.field textarea,.field select,select.status-select{background:var(--ink);border:1px solid var(--line);border-radius:8px;padding:.65rem .75rem;color:var(--mist)}.field input:focus,.field textarea:focus,.field select:focus,select.status-select:focus{outline:none;border-color:var(--brass-dim)}.checklist label{display:flex;gap:.65rem;align-items:flex-start;margin:.45rem 0;color:var(--fog)}.tag{display:inline-block;margin:.15rem .25rem .15rem 0;padding:.15rem .5rem;background:#c4a5741f;border-radius:4px;font-size:.75rem;color:var(--brass)}.empty-state{text-align:center;padding:2.5rem 1.25rem;color:var(--fog);border:1px dashed var(--line);border-radius:12px;margin-bottom:1rem}.empty-state strong{display:block;color:var(--mist);font-family:var(--font-display);font-size:1.25rem;font-weight:400;margin-bottom:.35rem}.flash{padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem;border:1px solid var(--line);background:#222830e6;color:var(--mist)}.flash.error{border-color:var(--alert);color:#e09a7e;background:#b85c381a}.flash.ok{border-color:var(--ok);color:#9dcdb0;background:#5a8f6a1a}.back-link{display:inline-block;margin-bottom:.75rem;color:var(--fog);font-size:.9rem}.back-link:hover{color:var(--brass)}.media-meta{font-size:.85rem;color:var(--fog);margin:.35rem 0 .65rem;word-break:break-all}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0e1114b8;display:grid;place-items:center;z-index:40;padding:1.5rem}.dialog{width:min(440px,100%);background:var(--slate);border:1px solid var(--line);border-radius:12px;padding:1.35rem 1.4rem;box-shadow:0 20px 50px #00000073}.dialog h3{font-family:var(--font-display);font-weight:400;font-size:1.35rem;margin:0 0 .35rem}.dialog .actions{display:flex;gap:.6rem;justify-content:flex-end;margin-top:1rem}.main.wide,.um-page{max-width:none}.um-header{display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem}.um-badges{display:flex;flex-wrap:wrap;gap:.5rem}.um-badge{display:inline-block;padding:.45rem .75rem;border-radius:8px;border:1px solid var(--line);font-size:.85rem;color:var(--fog);background:#222830e6}.um-badge.warn{border-color:var(--brass-dim);color:var(--brass);background:#c4a5741a}.um-toolbar .um-filters{display:grid;grid-template-columns:2fr 1fr 1fr;gap:.75rem;margin-bottom:.75rem}.um-bulk{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;justify-content:space-between}.um-table-wrap{overflow-x:auto}.um-row-active td{background:#c4a57414!important}.um-risks{display:flex;flex-wrap:wrap;gap:.25rem}.um-page{position:relative;padding-right:0}.um-dossier{position:fixed;top:0;right:0;width:min(420px,100%);height:100vh;background:#1a1f24fa;border-left:1px solid var(--line);z-index:30;display:flex;flex-direction:column;box-shadow:-12px 0 40px #00000059;overflow:hidden}.um-dossier-head{display:flex;justify-content:space-between;gap:.75rem;align-items:flex-start;padding:1.15rem 1.2rem .75rem;border-bottom:1px solid var(--line-soft)}.um-dossier-head h2{margin:0 0 .25rem;font-size:1.35rem}.um-tabs{display:flex;gap:.25rem;padding:.5rem 1rem;border-bottom:1px solid var(--line-soft)}.um-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;color:var(--fog);padding:.45rem .7rem;border-radius:6px;cursor:pointer;text-transform:capitalize}.um-tab:hover{color:var(--mist);background:#222830cc}.um-tab.active{color:var(--mist);background:var(--panel);box-shadow:inset 0 -2px 0 var(--brass)}.um-dossier-body{padding:1rem 1.2rem 2rem;overflow-y:auto;flex:1}.um-dl{display:grid;grid-template-columns:7.5rem 1fr;gap:.35rem .75rem;margin:0 0 1rem;font-size:.92rem}.um-dl dt{color:var(--fog);margin:0}.um-dl dd{margin:0;word-break:break-word}.um-audit-list,.um-note-list,.um-case-list{list-style:none;padding:0;margin:.75rem 0 0}.um-audit-list li,.um-note-list li,.um-case-list li{padding:.55rem 0;border-bottom:1px solid var(--line-soft);font-size:.9rem}@media (max-width: 960px){.um-toolbar .um-filters{grid-template-columns:1fr}.um-dossier{width:100%}}@media (max-width: 860px){.app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;border-right:none;border-bottom:1px solid var(--line)}.main{padding:1.25rem 1.1rem 2.5rem}}
