:root{color-scheme:dark;--bg:#141517;--surface:#1c1e22;--line:#303238;--text:#f6f2e9;--muted:#a8aab2;--yellow:#f1c668;--blue:#a9c7eb;font:15px/1.5 system-ui,sans-serif}
*{box-sizing:border-box}
[hidden]{display:none!important}
body{margin:0;background:var(--bg);color:var(--text)}
button,input,select{font:inherit;color:inherit;background:#22242a;border:1px solid var(--line);border-radius:8px;padding:.62rem .85rem}
button{cursor:pointer}
button:hover{border-color:var(--blue)}
button:disabled{opacity:.55;cursor:wait}
:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
h1,h2,p{margin:0}
h1{font-size:clamp(2.6rem,6vw,5.25rem);line-height:1.02;letter-spacing:-.075em;margin:.3rem 0 .8rem}
h2{font-size:1.35rem;letter-spacing:-.035em}
p,small{color:var(--muted)}
small{display:block}
.eyebrow,footer{color:var(--blue);letter-spacing:.15em;font-size:.68rem;font-weight:750}
.primary{background:var(--yellow);color:#1a1711;border-color:transparent;font-weight:750}
.primary:hover{background:#ffda87;border-color:transparent}
.brand{display:flex;align-items:center;gap:.8rem;text-align:left;font-weight:760;font-size:1.05rem;letter-spacing:-.02em}
.brand small{font-size:.59rem;letter-spacing:.14em}
.monogram{display:grid;place-items:center;width:44px;height:44px;border-radius:11px;background:var(--yellow);color:#1b1811;font-weight:900;letter-spacing:-.12em;padding-right:.13em;font-size:1.35rem}
.login{min-height:100svh;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 0%,#293443,transparent 55%),var(--bg)}
.login-panel{width:min(100% - 2rem,420px);padding:clamp(1.4rem,5vw,2.4rem);background:var(--surface);border:1px solid var(--line);border-radius:16px}
.login-panel .brand{margin-bottom:1.5rem;font-size:1.4rem}
label{display:grid;gap:.35rem;margin:1rem 0;color:var(--muted)}
input,select{min-width:0}
.login-panel .primary{width:100%;display:flex;justify-content:space-between}
.actions,.account,.filters{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}
[role=alert]:not(:empty){color:#ffb3a6;margin-top:.5rem}
.top,footer{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem max(1.2rem,calc((100vw - 1320px)/2));border-bottom:1px solid var(--line);background:#191a1d}
.top .brand{padding:0;border:0;background:transparent}
.account{color:var(--muted);font-size:.85rem}
main{max-width:1360px;margin:auto;padding:1.7rem 1.2rem 3rem;min-height:calc(100vh - 130px)}
#notice:not(:empty){padding:.8rem 1rem;margin-bottom:1rem;background:#243143;color:#d8eaff;border:1px solid #3b5370;border-radius:8px}
.hero{display:flex;justify-content:space-between;align-items:end;gap:1rem;padding:1rem 0 1.7rem}
.stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.7rem;margin-bottom:1.1rem}
.stat,.card{background:var(--surface);border:1px solid var(--line);border-radius:13px}
.stat{text-align:left;padding:.85rem 1rem}
.stat strong{display:block;font-size:1.85rem;letter-spacing:-.05em}
.stat:first-child{border-color:#6b5834}
.stat:first-child strong{color:var(--yellow)}
.layout{display:grid;grid-template-columns:minmax(0,2.25fr) minmax(260px,1fr);gap:1rem;align-items:start}
.card-head{display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding:1rem 1.1rem}
.tag,.live,.badge{border-radius:999px;padding:.26rem .6rem;font-size:.75rem;white-space:nowrap}
.tag,.badge{background:#2b2d34;color:#d9dce5}
.live,.status-3{background:#23352d;color:#b2e3c4}
.status-0{background:#2a3443;color:var(--blue)}
.status-1{background:#3b3324;color:var(--yellow)}
.status-2{background:#3b2f38;color:#ecc3db}
.filters{padding:0 1.1rem 1rem}
.filters input{flex:1}
.table-wrap{overflow-x:auto}
table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}
th,td{padding:.75rem 1.1rem;border-top:1px solid var(--line)}
th{font-size:.65rem;letter-spacing:.09em;color:var(--muted)}
td{font-size:.88rem}
.plate,.event button{border:0;background:transparent;padding:0;text-align:left;font-weight:700}
.plate:hover,.event button:hover{text-decoration:underline;color:var(--blue)}
.feed #feed{max-height:460px;overflow:auto}
.event{display:flex;align-items:baseline;gap:.65rem;padding:.72rem 1.1rem;border-top:1px solid var(--line);font-size:.88rem}
.event small{margin-top:.15rem}
.dot{width:7px;height:7px;border-radius:50%;background:var(--yellow);flex:none}
.detail-card{padding:1.1rem}
.detail-card h2{margin-bottom:.45rem}
#status-form{margin-bottom:1.5rem}
#upload{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;margin:1rem 0}
#upload input{max-width:100%}
.gallery{display:grid;gap:1.15rem;margin-top:1rem}
.attachment-group h3{font-size:.95rem;margin:0 0 .55rem}
.attachment-group .tag{margin-left:.35rem}
.attachment-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.7rem}
.gallery img{display:block;width:100%;height:125px;object-fit:cover;border-radius:8px}
footer{border-top:1px solid var(--line);border-bottom:0}
dialog{width:min(420px,calc(100% - 2rem));border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--text);padding:1.5rem}
dialog::backdrop{background:#000b}
.actions{justify-content:flex-end}
@media(max-width:850px){.layout{grid-template-columns:1fr}.hero{align-items:start}.stats{grid-template-columns:repeat(3,1fr)}}
@media(max-width:620px){.hero{flex-wrap:wrap}.account{justify-content:end}.filters input{flex-basis:100%}.stat{padding:.65rem}.top .brand small{display:none}}

#create select{width:100%}
.detail-card summary{cursor:pointer}
.attachment{min-width:0;padding:.65rem;border:1px solid var(--line);border-radius:8px;overflow-wrap:anywhere}
.attachment img{margin-bottom:.5rem}
.download{display:inline-block;color:var(--blue);margin-top:.35rem}
#checklist{margin:.6rem 0 1.3rem}
#checklist label{display:flex;align-items:center;margin:.4rem 0}
#note-form{margin-bottom:1.4rem}
#note-form textarea{width:100%;resize:vertical;font:inherit;color:inherit;background:#22242a;border:1px solid var(--line);border-radius:8px;padding:.6rem}
.attachment select{width:100%;padding:.35rem}
#upload label{margin:0}

.archive{margin:0 0 .65rem}
.attachment [data-suggest]{font-size:.82rem;text-align:left;white-space:normal}
#field-plates{display:none}
.field-mode #stats,.field-mode .feed,.field-mode .table-wrap,.field-mode #dashboard .hero{display:none}
.field-mode #dashboard .layout{grid-template-columns:1fr}
.field-mode #field-plates{display:grid;gap:.55rem;padding:0 1.1rem 1.1rem}
#field-plates button{display:flex;align-items:center;justify-content:space-between;min-height:54px}
#field-start .primary{min-height:54px;width:100%;max-width:420px}
.field-mode #upload{display:grid;align-items:stretch}
#profile-summary{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.3rem .6rem;font-size:.88rem}
#profile-summary dt{color:var(--muted)}
#profile-summary dd{margin:0;overflow-wrap:anywhere}
#profile-form{margin-bottom:1rem}
.upload-plate{flex-basis:100%;padding:.5rem .75rem;border:1px solid var(--line);border-radius:8px}
.upload-plate strong{display:block;color:var(--yellow);font-size:1.25rem}
#readiness{margin-bottom:1.3rem;border-bottom:1px solid var(--line);padding-bottom:1rem}
#readiness a{color:var(--blue)}
#readiness button{margin:.45rem .35rem 0 0}
#security-dialog{width:min(760px,calc(100% - 2rem));max-height:90vh}
.security-account{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.6rem;padding:.75rem 0;border-bottom:1px solid var(--line)}
#security-dialog .table-wrap{margin:.75rem 0}
.save-row{display:flex;align-items:end;gap:.6rem}
.save-row label{flex:1;min-width:0;margin:.5rem 0}
.save-row button{margin-bottom:.5rem}
#request-form{margin-bottom:1.2rem}
#request-form [role=status],#note-form [role=status]{color:var(--blue);font-size:.85rem}
#request-saved{overflow-wrap:anywhere}
