
:root{--bg:#f5f7fb;--panel:#fff;--ink:#19233c;--muted:#7b8498;--line:#e8ecf3;--accent:#3867ef;--soft:#edf2ff;--green:#218b72;--danger:#cf4c59;--side:#fff;--shadow:0 3px 16px #15284904}*{box-sizing:border-box}body{margin:0;font:14px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--ink)}[hidden]{display:none!important}body.dark{--bg:#101725;--panel:#182234;--ink:#e5ebf6;--muted:#9aa9c0;--line:#2c384c;--accent:#80a1ff;--soft:#243457;--green:#69d5b6;--danger:#ff8e99;--side:#151e2e;--shadow:none}button,input,select{font:inherit}button,a{touch-action:manipulation}button{border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:8px;padding:10px 16px;cursor:pointer;font-weight:600;transition:background .15s}button:hover{background:var(--soft)}button:disabled{opacity:.45;cursor:not-allowed}.primary{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 4px 8px #3867ef16}.primary:hover{background:#2856d9;color:#fff}.text-btn{background:transparent;border:0;padding:5px;color:var(--accent);font-size:13px;text-decoration:none}.danger-ghost{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 30%,transparent)}h1,h2,p{margin-top:0}h1{font-size:29px;letter-spacing:-.8px;line-height:1.25;margin-bottom:10px}h2{font-size:17px;letter-spacing:-.3px;margin-bottom:18px}small,.small{font-size:12px}.muted{color:var(--muted)}.eyebrow{font-size:10px;letter-spacing:1.7px;font-weight:750;color:var(--accent);margin-bottom:12px}.sidebar{position:fixed;inset:0 auto 0 0;width:235px;background:var(--side);border-right:1px solid var(--line);padding:30px 20px;display:flex;flex-direction:column}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;color:var(--ink);font-size:23px;font-weight:750;letter-spacing:-1px;padding:0 8px}.brand-mark{display:grid;place-items:center;background:var(--accent);color:white;width:39px;height:39px;border-radius:12px;font-size:25px;flex-shrink:0}.brand-sub{display:block;font-size:9px;letter-spacing:3px;line-height:1.5;color:var(--muted)}.nav-caption{font-size:9px;letter-spacing:1.4px;color:var(--muted);margin:43px 12px 14px}nav{display:grid;gap:5px}.nav{text-align:left;border:0;background:transparent;color:var(--muted);font-size:13px;font-weight:500;padding:12px}.nav span{font-size:19px;display:inline-block;width:29px}.nav.active{background:var(--soft);color:var(--accent);font-weight:650}.sidebar-bottom{margin-top:auto;padding:20px 10px 0;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}.sidebar-bottom p{margin:12px 0 2px}.worker-state{color:var(--green);font-weight:600}.worker-state.offline{color:var(--danger)}.main-shell{margin-left:235px}.topbar{height:76px;padding:0 38px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:var(--panel)}.breadcrumb{font-size:12px;color:var(--muted)}.breadcrumb span{padding:0 15px;color:#b7bdc9}.breadcrumb strong{color:var(--ink);font-weight:500}.top-actions{display:flex;align-items:center;gap:18px}.icon-btn{border:0;padding:2px;font-size:23px;background:transparent}.user-badge{font-size:12px;border-left:1px solid var(--line);padding-left:20px}main{max-width:1510px;margin:auto;padding:38px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}.page-heading p:last-child{margin-bottom:0}.overview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:32px}.overview-card,.panel,.project-card{background:var(--panel);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}.overview-card{padding:23px}.overview-card>span{color:var(--muted);font-size:12px}.overview-card strong{display:block;font-size:32px;letter-spacing:-1px;margin:6px 0}.overview-card small{color:var(--muted);font-size:11px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:20px}.section-title h2{margin:0}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:28px}.project-card{padding:24px;position:relative}.project-top{display:flex;align-items:center;justify-content:space-between}.project-icon{width:44px;height:44px;display:grid;place-items:center;background:var(--soft);color:var(--accent);border-radius:11px;font-size:18px;font-weight:700}.project-card h2{font-size:19px;margin:17px 0 7px}.project-card p{color:var(--muted);font-size:12px}.project-card .card-bottom{margin-top:24px;padding-top:15px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.pill{display:inline-block;background:var(--soft);color:var(--accent);border-radius:6px;padding:4px 9px;font-size:10px;font-weight:600;white-space:nowrap}.pill.green{background:#e8f7f0;color:#218b72}.pill.gray{background:var(--bg);color:var(--muted)}.pill.red{background:#ffedef;color:#c24454}.panel{padding:25px;margin-bottom:22px}.flow-panel{display:flex;align-items:center;justify-content:space-between;gap:20px}.flow-panel p:last-child{margin-bottom:0}.flow{display:flex;align-items:center;gap:12px;font-size:11px;color:var(--accent)}.flow span{border-radius:8px;background:var(--soft);padding:12px}.flow b{display:block;color:var(--ink);font-size:11px}.flow i{font-style:normal;color:var(--muted)}label{display:block;font-weight:600;font-size:12px;margin-bottom:20px}input,select{display:block;width:100%;margin-top:7px;padding:11px 12px;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--ink);outline:none}input:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #3867ef10}input::placeholder{color:var(--muted);font-size:12px}.form-panel{max-width:760px}.actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.inline-form{display:flex;align-items:end;gap:18px;max-width:700px}.inline-form label{flex:1;margin:0}.info-box{padding:15px 17px;border:1px solid var(--line);border-radius:8px;background:var(--bg);font-size:12px;margin-bottom:20px;overflow-wrap:anywhere}.sheet-names{margin-top:9px;display:grid;gap:5px;color:var(--muted)}.sheet-names span:before{content:'▤';color:var(--accent);margin-right:9px}.launch-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);gap:24px}.launch-grid .form-panel{max-width:none}.launch-grid .actions{margin-bottom:18px}.summary-panel{height:fit-content}.full{width:100%}dl{display:grid;grid-template-columns:1fr 1.4fr;gap:15px 12px;margin:24px 0;font-size:12px}dt{color:var(--muted)}dd{margin:0;font-weight:600;overflow-wrap:anywhere}.stat-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin-bottom:24px}.stat-card{padding:18px;background:var(--panel);border:1px solid var(--line);border-radius:10px}.stat-card span{font-size:11px;color:var(--muted);white-space:nowrap}.stat-card strong{display:block;font-size:27px;font-weight:650;margin-top:8px}.stat-card:nth-child(3) strong{color:var(--green)}.stat-card:last-child strong{color:var(--danger)}.progress-label{display:flex;justify-content:space-between;font-size:12px;margin-bottom:10px}progress{display:block;width:100%;height:9px;border:0;border-radius:8px;overflow:hidden;background:var(--line);accent-color:var(--accent)}progress::-webkit-progress-bar{background:var(--line)}progress::-webkit-progress-value{background:var(--accent);border-radius:8px}.timing{display:flex;flex-wrap:wrap;gap:25px;margin-top:16px;color:var(--muted);font-size:11px}.timing b{font-weight:500;color:var(--ink)}.current-heading{font-size:9px;letter-spacing:1.4px;color:var(--muted);border-top:1px solid var(--line);padding-top:20px;margin-top:23px}.current-item{margin-top:10px;font-size:12px;line-height:1.8;overflow-wrap:anywhere}.current-item strong{display:block;font-size:14px}.log-panel{padding-bottom:15px}.connection{font-size:10px;font-weight:500;color:var(--green);margin-left:12px}.log-toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:15px}.segmented{display:flex;gap:3px;background:var(--bg);padding:3px;border-radius:7px}.segmented button{border:0;background:transparent;font-size:10px;padding:6px 13px;color:var(--muted)}.segmented button.selected{background:var(--panel);color:var(--accent);box-shadow:0 1px 4px #0001}.check{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--muted);font-weight:400;margin:0}.check input{width:auto;margin:0;accent-color:var(--accent)}.logs{background:#111b2b;border-radius:8px;min-height:250px;height:365px;overflow:auto;padding:17px;color:#b9c8dc;font:11px/1.9 Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere}.log-line{border-bottom:1px solid #ffffff05;padding:2px 0}.log-line.WARNING{color:#e9be72}.log-line.ERROR,.log-line.CRITICAL{color:#ff929c}.logs time{color:#67809c;margin-right:10px}.log-panel>p{margin:12px 0 0}.table-wrap{overflow:auto;padding:0}table{width:100%;border-collapse:collapse;font-size:11px;text-align:left;white-space:nowrap}th{background:var(--bg);font-weight:600;color:var(--muted);padding:16px 19px}td{padding:16px 19px;border-top:1px solid var(--line)}td small{display:block;color:var(--muted);font-size:10px}.empty{padding:50px;text-align:center;color:var(--muted)}.notice,.error-box{padding:13px 17px;background:#fff0f1;border:1px solid #f4cdd1;color:#ac3544;border-radius:8px;margin-bottom:20px;white-space:pre-wrap}.notice.success{background:#edf9f3;border-color:#c5e9d7;color:#217953}footer{padding:15px 38px 25px;font-size:10px;color:var(--muted);display:flex;justify-content:space-between}dialog{background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:14px;padding:28px;max-width:480px}dialog::backdrop{background:#101a3280}dialog .actions{justify-content:flex-end}pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px}.login-screen{min-height:100vh;display:grid;place-items:center;background:radial-gradient(ellipse at 30% 10%,var(--soft),var(--bg) 70%);padding:25px}.login-card{background:var(--panel);border:1px solid var(--line);padding:42px;border-radius:18px;width:min(440px,100%);box-shadow:0 24px 70px #15284909}.login-card .brand-mark{margin-bottom:24px}.login-card h1{font-size:25px}.login-card button{width:100%;margin-top:5px}.login-card small{display:block;text-align:center;color:var(--muted);margin-top:22px}#login-error{color:var(--danger);font-size:12px;margin-top:15px}#preflight-state{white-space:pre-wrap}.summary-panel .small{margin:15px 0 0}button:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:3px}@media(min-width:1500px){.project-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.flow{gap:18px}}@media(max-width:1150px){.sidebar{width:205px;padding:25px 13px}.main-shell{margin-left:205px}main{padding:28px}.topbar{padding:0 28px}.stat-grid{grid-template-columns:repeat(3,1fr)}.flow-panel{display:block}.flow{margin-top:23px}.launch-grid{grid-template-columns:1fr}.form-panel{max-width:none}}@media(max-width:760px){.sidebar{position:static;width:100%;padding:15px}.brand{font-size:20px}.brand-mark{width:33px;height:33px}.brand-sub{font-size:8px}.nav-caption,.sidebar-bottom{display:none}nav{display:flex;overflow-x:auto;margin-top:14px;gap:5px}.nav{white-space:nowrap;padding:9px;font-size:11px}.nav span{display:none}.main-shell{margin-left:0}.topbar{height:55px;padding:0 18px}.breadcrumb{font-size:10px}.breadcrumb span{padding:0 6px}.user-badge{display:none}.top-actions{gap:12px}main{padding:23px 16px}h1{font-size:25px}.page-heading{align-items:start;flex-wrap:wrap}.page-heading>.primary{font-size:12px}.overview-grid{gap:9px}.overview-card{padding:13px}.overview-card strong{font-size:26px}.overview-card small{display:none}.overview-card>span{font-size:10px}.project-grid{grid-template-columns:1fr}.project-card{padding:20px}.panel{padding:18px}.table-wrap{padding:0}.stat-grid{gap:8px}.stat-card{padding:12px}.stat-card strong{font-size:24px}.stat-card span{font-size:9px}.log-toolbar{flex-wrap:wrap}.logs{height:350px;font-size:10px}.section-title{flex-wrap:wrap}.inline-form{align-items:stretch;flex-direction:column}.flow{gap:5px;justify-content:space-between}.flow span{padding:8px}.flow i{display:none}.flow b{font-size:10px}footer{padding:15px 18px}footer span{display:none}.login-card{padding:28px}.actions button{font-size:11px}.timing{gap:10px}.connection{display:block;margin:4px 0}.summary-panel dl{grid-template-columns:1fr 1.5fr}}

/* Match verdicts remain readable on the dark log surface in either theme. */
.logs .log-line.result-zero{color:#ff929c;background:#ff929c0c;border-left:3px solid #ff929c;padding-left:10px;font-weight:700}
.logs .log-line.result-one{color:#79dfb5;background:#79dfb50c;border-left:3px solid #79dfb5;padding-left:10px;font-weight:700}
.logs .log-line.result-many{color:#f3ce73;background:#f3ce730c;border-left:3px solid #f3ce73;padding-left:10px;font-weight:700}

/* KRAKEN Processor identity: shared vector mark for navigation and sign-in. */
.brand-mark{overflow:hidden;background:transparent}
.brand-mark img{display:block;width:100%;height:100%;object-fit:contain}
.brand{letter-spacing:.4px}
.brand-sub{letter-spacing:3px}
.login-card .brand-mark{width:52px;height:52px}

#edit-user{width:min(480px,calc(100% - 30px))}#edit-user-form .check{margin:0 0 20px}.user-badge{max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
