:root{color-scheme:dark;--ink:#f3f3f5;--muted:#b3b4bd;--line:#3a3b43;--surface:#202127;--canvas:#14151b;--brand:#f5c400;--brand-dark:#ffda35;--danger:#ffaaa3;--shadow:0 16px 40px #0003}
*{box-sizing:border-box}body{margin:0;background:var(--canvas);color:var(--ink);font:15px/1.5 Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;background-image:radial-gradient(ellipse at 50% 38%,#07080c 1px,transparent 2px),radial-gradient(ellipse at 50% 65%,#34353c 1px,transparent 2px);background-size:7px 9px}a{color:var(--brand);text-decoration:none}a:hover{color:var(--brand-dark)}h1{font-size:clamp(1.7rem,3vw,2.4rem);line-height:1.15;margin:.25rem 0 1.5rem;letter-spacing:-.035em}h2{letter-spacing:-.02em}a:focus-visible,button:focus-visible{outline:3px solid var(--brand);outline-offset:4px}::selection{background:var(--brand);color:#141414}
.app-shell{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:100vh;border-top:8px solid transparent;border-image:repeating-linear-gradient(135deg,#edbf00 0 22px,#151515 22px 44px) 8}.sidebar{background:#18191f;border-right:1px solid var(--line);padding:1.5rem 1rem}.brand{display:flex;align-items:center;gap:.65rem;color:var(--ink);font-size:1.15rem;font-weight:750;margin:0 .5rem 1.5rem}.brand span{display:grid;place-items:center;width:38px;height:38px;border-radius:6px;background:var(--brand);color:#141414;font-weight:850}.nav-caption{color:var(--muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.15em;margin:0 .8rem .75rem}.sidebar nav{display:grid;gap:.25rem}.sidebar nav a{color:#d1d1d8;padding:.65rem .8rem;border-radius:6px;border-left:3px solid transparent}.sidebar nav a:hover,.sidebar nav a:focus-visible{background:#2c2c30;color:var(--brand);border-left-color:var(--brand)}.workspace{min-width:0}.topbar{min-height:68px;padding:.75rem 2rem;background:#202127;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:flex-end;gap:1rem;flex-wrap:wrap}.topbar-label{margin-right:auto;color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.14em}.topbar form{display:block}main{padding:2rem;max-width:1440px;width:100%;margin:auto}
.public-header{height:43px;padding:6px 16px;background:repeating-linear-gradient(135deg,#edbf00 0 30px,#151515 30px 60px);box-shadow:0 4px 14px #0008;color:#fff;font-size:21px;font-weight:700;text-shadow:0 1px 4px #000}.public-main{min-height:calc(100vh - 43px);display:grid;place-items:center}.login-card{width:min(420px,100%);background:var(--surface);padding:2rem;border:1px solid var(--line);border-top:3px solid var(--brand);border-radius:10px;box-shadow:var(--shadow)}.login-card h1{margin-top:.75rem}.login-card .muted{margin-bottom:1.75rem}.eyebrow{margin:0;color:var(--brand);font-size:.75rem;font-weight:750;text-transform:uppercase;letter-spacing:.14em}.muted{color:var(--muted)}form{display:grid;gap:1rem}label{display:grid;gap:.4rem;font-weight:650;min-width:0}input,textarea,select{width:100%;min-width:0;font:inherit;color:var(--ink);padding:.7rem .8rem;border:1px solid #575863;border-radius:6px;background:#17181e}input::placeholder,textarea::placeholder{color:#a1a2ad}input:focus,textarea:focus,select:focus{outline:3px solid #f5c40040;border-color:var(--brand)}input[type=checkbox],input[type=radio]{width:auto;accent-color:var(--brand)}input:disabled,select:disabled,textarea:disabled{opacity:.6}fieldset{min-width:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem;border:1px solid var(--line);border-radius:8px;padding:1rem}legend{padding:0 .4rem;color:var(--muted)}.button,button{display:inline-block;border:1px solid transparent;border-radius:6px;padding:.7rem 1rem;font:inherit;font-weight:750;cursor:pointer;text-align:center;background:#34353d;color:var(--ink)}.button-primary{background:var(--brand);color:#141414}.button-primary:hover{background:var(--brand-dark);color:#141414}.button-quiet{background:#303139;color:#eeeef2;border-color:#50515b}.button-quiet:hover{background:#3e3f46;color:var(--brand);border-color:#8a762b}button:disabled{opacity:.5;cursor:not-allowed}.error{color:var(--danger)}.alert,.flash{padding:.8rem 1rem;border-radius:6px}.alert-error{background:#412729;color:var(--danger);border:1px solid #82474a}.flash{background:#203c30;color:#a9e9be;border:1px solid #416d52}.card{background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);padding:1.25rem}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}.data-table th,.data-table td{text-align:left;padding:.85rem .75rem;border-bottom:1px solid var(--line);white-space:nowrap}.data-table th{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);background:#26272e}.data-table tbody tr:nth-child(even){background:#24252c}.data-table tbody tr:hover{background:#303033}.data-table tbody tr:last-child td{border-bottom:0}.data-table a{text-decoration:underline;text-underline-offset:3px}.page-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.page-head h1{margin:.35rem 0 0}.page-head>div{min-width:0;overflow-wrap:anywhere}.page-head .button{margin:3px 0}
.search{display:flex;align-items:end;gap:.75rem;margin-bottom:1.25rem}.search label{flex:1}.pagination{display:flex;justify-content:center;gap:1.5rem;padding:1.5rem;flex-wrap:wrap}.metric-grid,.operation-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:1rem}.operation-grid{margin-top:1rem}.metric{display:grid;color:var(--ink);border-top:3px solid var(--brand);padding:1.5rem}.metric:hover{background:#2b2c32;border-color:#8a762b;color:var(--ink)}.metric strong{font-size:2rem;color:var(--brand);font-variant-numeric:tabular-nums}.metric span{color:var(--muted)}.inline-form{display:flex;flex-direction:row;gap:.4rem}.inline-form input{width:70px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid button,.form-grid textarea{grid-column:1/-1}.detail-grid{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:.5rem 1.5rem}.detail-grid dt{font-weight:750;color:var(--muted)}.detail-grid dd{margin:0;overflow-wrap:anywhere}.note{margin-top:.75rem}.note time{float:right;color:var(--muted)}.scan-form{grid-template-columns:minmax(0,1fr) auto;align-items:end;margin-bottom:1rem}.scan-form button{min-height:43px}
@media(max-width:800px){.app-shell{grid-template-columns:minmax(0,1fr)}.sidebar{padding:1rem;border-right:0;border-bottom:1px solid var(--line)}.brand{margin:0 0 .75rem}.nav-caption{display:none}.sidebar nav{display:flex;overflow:auto;gap:.25rem;padding-bottom:4px}.sidebar nav a{white-space:nowrap;flex-shrink:0}.topbar{min-height:56px;padding:.75rem 1rem}main{padding:1rem}.topbar-label{font-size:.65rem}.public-main{padding:1.5rem 1rem}.login-card{padding:1.5rem}}
@media(max-width:520px){.form-grid{grid-template-columns:minmax(0,1fr)}.search,.scan-form{display:grid;grid-template-columns:minmax(0,1fr)}.detail-grid{grid-template-columns:minmax(0,1fr);gap:.25rem}.detail-grid dd{margin-bottom:.75rem}.page-head{align-items:flex-start}.topbar-label{width:100%}.note time{float:none;display:block}}

/* Compact, light data surfaces matching the authenticated legacy interface. */
.workspace main {
    color-scheme: light;
    --ink: #171717;
    --muted: #595959;
    --line: #b8b8b8;
    --surface: #fff;
    --danger: #a32121;
    color: var(--ink);
    background: #f5f5f5;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 13px;
    line-height: 1.35;
    padding: 1.25rem;
}
.workspace main h1 { font-size: 1.6rem; letter-spacing: 0; margin-bottom: 1rem; }
.workspace main h2 { font-size: 1.15rem; letter-spacing: 0; }
.workspace main .eyebrow { color: #515151; font-size: 11px; letter-spacing: .04em; }
.workspace main a:not(.button):not(.metric) { color: #244d68; text-decoration: underline; text-underline-offset: 2px; }
.workspace main a:not(.button):not(.metric):hover { color: #102b3e; }
.workspace main .card { border-radius: 2px; padding: 1rem; box-shadow: none; }
.workspace main form { gap: .65rem; }
.workspace main label { gap: .25rem; font-weight: 600; }
.workspace main input,
.workspace main textarea,
.workspace main select {
    color: #171717;
    background: #fff;
    border: 1px solid #828282;
    border-radius: 2px;
    padding: .35rem .45rem;
    font: inherit;
}
.workspace main input::placeholder,
.workspace main textarea::placeholder { color: #666; }
.workspace main input:focus,
.workspace main textarea:focus,
.workspace main select:focus { border-color: #705b00; outline: 2px solid #f5c400; outline-offset: 1px; }
.workspace main fieldset { border-radius: 2px; padding: .75rem; }
.workspace main .button,
.workspace main button { padding: .4rem .7rem; border-radius: 2px; font-size: 13px; }
.workspace main .button-quiet { color: #222; background: #e5e5e5; border-color: #929292; }
.workspace main .button-quiet:hover { background: #d5d5d5; color: #111; }
.workspace main .table-wrap { padding: 0; }
.workspace main .data-table { font-size: 12px; line-height: 1.3; }
.workspace main .data-table th {
    color: #fff;
    background: #40515d;
    font-size: 12px;
    font-weight: 400;
    text-transform: none;
    letter-spacing: 0;
    border-bottom: 1px solid #26343e;
}
.workspace main .data-table th,
.workspace main .data-table td { padding: .5rem .55rem; }
.workspace main .data-table td { border-right: 1px dashed #aaa; border-bottom: 0; }
.workspace main .data-table td:last-child { border-right: 0; }
.workspace main .data-table tbody tr:nth-child(odd) { background: #ddd; }
.workspace main .data-table tbody tr:nth-child(even) { background: #fff; }
.workspace main .data-table tbody tr:hover { background: #fff3bd; }
.workspace main .search { padding: .7rem; background: #fff; border: 1px solid #b8b8b8; margin-bottom: .8rem; }
.workspace main .page-head { margin-bottom: 1rem; }
.workspace main .page-head h1 { margin-bottom: 0; }
.workspace main .metric { color: #171717; }
.workspace main .metric strong { color: #171717; }
.workspace main .metric:hover { background: #fff7d5; }
.workspace main .alert-error { color: #a32121; background: #fce8e8; border-color: #d9a5a5; }
.workspace main .flash { color: #225330; background: #e3f2e7; border-color: #9dbcaa; }
@media (max-width: 800px) { .workspace main { padding: 1rem; } }
@media (pointer: coarse) {
    .workspace main input:not([type=checkbox]):not([type=radio]),
    .workspace main select,
    .workspace main textarea { font-size: 16px; }
    .workspace main button,
    .workspace main .button,
    .workspace main select { min-height: 44px; }
}
