:root{color-scheme:light;--bg: #e8e2d6;--bg-deep: #d4cdc0;--ink: #1a1c18;--muted: #5c6258;--panel: #f7f3ea;--line: #b7b0a2;--accent: #0f5c4c;--accent-ink: #f4fff9;--danger: #8b2e1f;--warn: #8a5a12;--ok: #2f6b3a;--shadow: 0 18px 40px rgba(26, 28, 24, .08);font-family:IBM Plex Sans,system-ui,sans-serif;line-height:1.45;font-weight:400;color:var(--ink);background:radial-gradient(1200px 600px at 10% -10%,#f4efe4 0%,transparent 55%),radial-gradient(900px 500px at 100% 0%,#cfd9d2 0%,transparent 50%),var(--bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-height:100vh}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button,input,select{font:inherit}button{border:1px solid var(--accent);background:var(--accent);color:var(--accent-ink);padding:.55rem .95rem;cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}button.ghost{background:transparent;color:var(--ink);border-color:var(--line)}input,select{display:block;width:100%;margin-top:.25rem;padding:.55rem .65rem;border:1px solid var(--line);background:#fff;color:var(--ink)}.otp-input{font-family:IBM Plex Mono,ui-monospace,monospace;letter-spacing:.35em;font-size:1.35rem;text-align:center;padding-left:.85rem}label{display:block;font-size:.9rem;color:var(--muted)}.mono{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.85em}.muted{color:var(--muted)}.error{color:var(--danger)}.info{color:var(--ok)}.center{min-height:60vh;display:grid;place-items:center}.login-shell{min-height:100vh;display:grid;place-items:center;padding:2rem}.login-panel{width:min(420px,100%);background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);padding:2rem}.brand,.brand-link{font-family:IBM Plex Mono,ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase;font-size:.8rem;color:var(--accent);font-weight:500}.login-panel .brand{font-size:1.15rem;letter-spacing:.14em;color:var(--ink);margin:0}.login-panel h1,.page-header h1{margin:.35rem 0 .5rem;font-size:clamp(1.8rem,4vw,2.4rem);font-weight:600;letter-spacing:-.02em}.lede{margin:0 0 1.25rem;color:var(--muted)}.stack{display:grid;gap:.85rem}.app-shell{min-height:100vh;display:grid;grid-template-columns:220px 1fr}.sidebar{display:flex;flex-direction:column;justify-content:space-between;gap:1.5rem;padding:1.25rem 1rem;border-right:1px solid var(--line);background:color-mix(in srgb,var(--panel) 92%,#1a1c18 4%);position:sticky;top:0;height:100vh;overflow-y:auto}.sidebar-top{display:grid;gap:1.5rem}.sidebar .brand-link{font-size:1.35rem;letter-spacing:.14em;text-decoration:none;color:var(--ink)}.sidebar .brand-link:hover{color:var(--accent);text-decoration:none}.sidebar-product{margin:-1rem 0 0;font-size:.75rem;color:var(--muted);letter-spacing:.02em}.nav-section{margin:0 0 .35rem;padding:0 .55rem;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:500}.sidebar-nav{display:grid;gap:.15rem}.sidebar-nav a{display:block;padding:.45rem .55rem;color:var(--muted);border-left:2px solid transparent;text-decoration:none}.sidebar-nav a:hover{color:var(--ink);background:color-mix(in srgb,var(--bg-deep) 55%,transparent);text-decoration:none}.sidebar-nav a.active{color:var(--ink);border-left-color:var(--accent);background:color-mix(in srgb,var(--bg-deep) 70%,transparent);font-weight:500}.sidebar-foot{display:grid;gap:.65rem;padding-top:1rem;border-top:1px solid var(--line)}.session-user{overflow-wrap:anywhere;color:var(--muted)}.main{padding:1.5rem clamp(1rem,3vw,2rem) 3rem;width:min(1100px,100%);margin:0 auto;min-width:0}.page-header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;align-items:end;margin-bottom:1.25rem}.filters{display:flex;gap:.75rem}.filters label{min-width:140px}.report-list{list-style:none;margin:0;padding:0;display:grid;gap:.65rem}.report-row{display:block;padding:.9rem 1rem;background:var(--panel);border:1px solid var(--line);color:inherit;text-decoration:none}.report-row:hover{border-color:var(--accent);text-decoration:none}.row-top,.row-meta{display:flex;flex-wrap:wrap;gap:.5rem .85rem;align-items:center}.row-meta{margin-top:.45rem;color:var(--muted);font-size:.9rem}.pill{display:inline-block;padding:.1rem .45rem;border:1px solid var(--line);background:var(--bg-deep);font-size:.8rem;text-transform:lowercase}.pill.soft{background:transparent}.status{font-family:IBM Plex Mono,monospace;font-size:.8rem}.status-pending{color:var(--warn)}.status-reviewing{color:var(--accent)}.status-closed{color:var(--muted)}.case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.panel{background:var(--panel);border:1px solid var(--line);padding:1rem 1.1rem}.panel.wide{grid-column:1 / -1}.panel h2{margin:0 0 .75rem;font-size:1rem;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-weight:500}.kv{display:grid;grid-template-columns:8rem 1fr;gap:.35rem .75rem;margin:0}.kv dt{color:var(--muted)}.kv dd{margin:0;overflow-wrap:anywhere}.media-grid{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.thumb{width:96px;height:96px;object-fit:cover;border:1px solid var(--line);background:var(--bg-deep)}.timeline{margin:0;padding:0;list-style:none;display:grid;gap:.85rem}.timeline li{display:grid;gap:.15rem;padding-bottom:.75rem;border-bottom:1px solid var(--line)}.timeline time{font-family:IBM Plex Mono,monospace;font-size:.8rem;color:var(--muted)}.note{margin:.15rem 0 0;color:var(--muted)}.plain-list{margin:0;padding-left:1.1rem}.action-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.restrict-block{margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--line)}.restrict-block h3{margin:0 0 .35rem;font-size:1rem}button.warn{background:var(--warn);border-color:var(--warn);color:#fff}button.danger{background:var(--danger);border-color:var(--danger);color:#fff}.crumb{margin:0 0 .75rem;color:var(--muted)}@media(max-width:800px){.app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;border-right:none;border-bottom:1px solid var(--line)}.sidebar-nav{display:flex;flex-wrap:wrap;gap:.25rem .5rem}.sidebar-nav a{border-left:none;border-bottom:2px solid transparent}.sidebar-nav a.active{border-left-color:transparent;border-bottom-color:var(--accent)}.sidebar-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between}.case-grid,.kv{grid-template-columns:1fr}}
