/* Semantic palette follows Noria / Atria; independent request workflow. */
:root{--ink:#102744;--text:#30445c;--muted:#596b80;--line:#dce5ec;--canvas:#f6f9fb;--surface:#fff;--accent:#167460;--accent-soft:#e3f7f0;--warning:#79520a;--warning-soft:#fff4dc;--danger:#ac293b;--danger-soft:#fff0f2;--radius:14px;--small-radius:8px;--space:20px;--shadow:0 8px 28px #1027440a;--font:system-ui,-apple-system,"Segoe UI",sans-serif;--motion:120ms;--sidebar:240px}
*{box-sizing:border-box}body{margin:0;font:15px/1.5 var(--font);color:var(--text);background:var(--canvas)}[hidden]{display:none!important}button,input,textarea,select{font:inherit}button,a,input,textarea,select{touch-action:manipulation}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}button,.button{min-height:42px;border:1px solid var(--line);border-radius:var(--small-radius);padding:9px 15px;background:var(--surface);color:var(--ink);cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:background var(--motion)}button:hover,.button:hover{background:var(--canvas)}button:disabled{cursor:wait;opacity:.6}.primary{background:var(--accent);border-color:var(--accent);color:white}.primary:hover{background:#115d4e}.ghost{background:transparent}.danger{color:var(--danger)}input,textarea,select{width:100%;min-height:42px;padding:9px 11px;border:1px solid #bac8d5;border-radius:var(--small-radius);background:var(--surface);color:var(--ink)}textarea{min-height:90px;resize:vertical}label{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:600;color:var(--text)}label.check{flex-direction:row;align-items:flex-start;gap:10px;font-weight:400;font-size:14px}label.check input{width:19px;min-height:19px;margin-top:2px;flex-shrink:0}h1,h2,h3{color:var(--ink);line-height:1.2;overflow-wrap:anywhere}h1{font-size:29px;margin:3px 0 0;letter-spacing:-.7px}h2{font-size:20px;margin:0 0 16px}h3{font-size:16px;margin:0}p{margin:0 0 14px}.eyebrow{text-transform:uppercase;letter-spacing:1.3px;font-size:11px;font-weight:700;color:var(--muted);margin-bottom:4px}.brand-symbol{width:42px;height:42px;border-radius:12px;background:var(--ink);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:15px;font-weight:700;flex-shrink:0}.brand{display:flex;align-items:center;gap:11px;color:var(--ink);font-size:16px;font-weight:700;text-decoration:none}.brand small{display:block;font-size:10px;color:var(--muted);font-weight:400;margin-top:3px}#shell{display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);min-height:100dvh}aside{padding:24px 16px;background:var(--surface);border-right:1px solid var(--line);display:flex;flex-direction:column;gap:38px}nav{display:flex;flex-direction:column;gap:6px}nav a{padding:11px 14px;text-decoration:none;border-radius:var(--small-radius);color:var(--text);border-left:3px solid transparent}nav a[aria-current=page]{background:var(--accent-soft);border-left-color:var(--accent);font-weight:650;color:var(--accent)}.sidebar-footer{margin-top:auto;display:grid;gap:12px;font-size:13px}.sidebar-footer span{overflow-wrap:anywhere}main{max-width:1600px;width:100%;padding:32px clamp(16px,3vw,48px)}header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:28px}.badge{padding:7px 11px;background:var(--accent-soft);color:var(--accent);font-size:12px;border-radius:999px;white-space:nowrap}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow);margin-bottom:18px}.toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:18px}.actions{display:flex;gap:8px;flex-wrap:wrap}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.wide{grid-column:1/-1}.layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,310px);gap:20px;align-items:start}.summary{position:sticky;top:20px}.muted{color:var(--muted);font-size:13px}.hint{font-weight:400;color:var(--muted);font-size:12px}.item{border:1px solid var(--line);border-radius:var(--small-radius);padding:16px;margin:14px 0}.item .toolbar{margin-bottom:12px}.item label{font-weight:500}details{margin-top:14px}summary{cursor:pointer;font-weight:600;color:var(--ink)}details .grid{margin-top:12px}dl{margin:0;display:grid;grid-template-columns:1fr auto;gap:12px;font-size:13px}dt{color:var(--muted)}dd{margin:0;text-align:right;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}dl .total{font-size:18px;color:var(--ink);font-weight:700}.notice{background:var(--warning-soft);color:var(--warning);border:1px solid #e6d5af;border-radius:var(--small-radius);padding:13px;margin:12px 0;font-size:13px}.notice ul{margin:8px 0;padding-left:20px}.good{background:var(--accent-soft);color:var(--accent);padding:10px;border-radius:var(--small-radius);font-size:13px}.empty{text-align:center;padding:50px 20px}.empty h2{margin-bottom:10px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;padding:12px;border-bottom:1px solid var(--line);white-space:nowrap}th{font-weight:600;color:var(--muted)}td.title{white-space:normal;min-width:180px}td .link{padding:0;min-height:30px;border:0;background:none;color:var(--accent);text-align:left}.entry-card{max-width:420px;margin:10vh auto;background:var(--surface);padding:36px;border-radius:var(--radius);border:1px solid var(--line);box-shadow:var(--shadow)}.entry-card h1{margin:18px 0 10px}.entry-card form{display:grid;gap:17px}.entry-card .eyebrow{margin-top:18px}.entry-card p{color:var(--muted)}#status{margin:0;padding:9px 20px;color:var(--muted);font-size:13px;min-height:37px}#status.error{background:var(--danger-soft);color:var(--danger)}#status.success{background:var(--accent-soft);color:var(--accent)}.form-stack{display:grid;gap:16px;max-width:760px}.role-pill{font-size:12px;color:var(--muted)}.history-entry{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}.saved-label{font-size:12px;color:var(--muted)}
@media(max-width:1100px){:root{--sidebar:210px}.layout{grid-template-columns:1fr}.summary{position:static}.summary dl{max-width:650px}.grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){#shell{display:block}aside{padding:14px;gap:14px;border-right:0;border-bottom:1px solid var(--line)}aside nav{display:flex;flex-direction:row;flex-wrap:wrap;gap:4px}nav a{padding:8px 10px}.sidebar-footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.brand small{font-size:11px}main{padding:22px 14px}header{align-items:flex-start;flex-direction:column;margin-bottom:20px}h1{font-size:25px}.panel{padding:16px}.grid,.grid.three{grid-template-columns:1fr}.wide{grid-column:auto}.entry-card{margin:28px 14px;padding:24px}.actions button,.actions .button{flex:1 1 auto}.item{padding:12px}.badge{font-size:11px}input,textarea,select{font-size:16px}.toolbar{align-items:flex-start}dl{gap:10px}dd{max-width:150px}#status{padding:9px 14px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
@media(forced-colors:active){:focus-visible{outline-color:Highlight}nav a[aria-current=page]{border:2px solid Highlight}}

fieldset{border:0;padding:0;margin:0;min-width:0}.history{margin-top:20px}
