*{box-sizing:border-box}html{color-scheme:dark}body{margin:0;background:#080c17;color:#e9eafa;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.5}
h1,h2,p{margin-top:0}h1{font-size:1.65rem;margin-bottom:.3rem}h2{font-size:1.12rem}.eyebrow{font-size:.72rem;letter-spacing:.17em;font-weight:750;color:#a991ff}
.muted,.hint{color:#abb2cb}.hint{font-size:.83rem;margin-top:1rem}.topbar{padding:1.25rem max(1.5rem,calc((100vw - 1140px)/2));display:flex;align-items:center;justify-content:space-between;gap:1rem;background:#101528;border-bottom:1px solid #272e47}
.dashboard{max-width:1188px;padding:2rem 1.5rem;margin:auto}.intro{margin-bottom:1.5rem}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;margin-bottom:1.2rem}
.panel{background:#141a2c;border:1px solid #303751;border-radius:16px;padding:1.5rem;box-shadow:0 12px 35px #0002}.login-shell{min-height:100vh;display:grid;place-items:center;padding:1rem}.login-panel{max-width:440px;width:100%;padding:2rem}
label{display:block;font-size:.88rem;font-weight:650;margin:.9rem 0 .4rem}input:not([type=hidden]):not([type=checkbox]),textarea{font:inherit;width:100%;background:#0c1121;border:1px solid #39415c;color:#f6f4ff;padding:.75rem .85rem;border-radius:9px}
input:focus-visible,textarea:focus-visible,button:focus-visible{outline:2px solid #a18aff;outline-offset:2px}button{border:0;border-radius:9px;padding:.75rem 1rem;background:#855df3;color:white;font:inherit;font-weight:700;cursor:pointer}button:hover{filter:brightness(1.14)}button:disabled{opacity:.45;cursor:not-allowed}
.login-panel button{width:100%;margin-top:1.3rem}.secondary{background:#303957}.danger{background:#6d3045}.actions{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1.2rem}.actions form{margin:0}
.checks{margin:.9rem 0 1.2rem}.checks label{font-weight:450;margin:.45rem 0;display:flex;gap:.6rem;align-items:center}.checks input{accent-color:#9d7af9}
.alert,.notice{padding:.8rem 1rem;border-radius:9px;margin:.8rem 0;background:#262844;border:1px solid #4c4a81}.alert.error{background:#4b2531;border-color:#864056}.alert.success{background:#173b34;border-color:#256959}
.status{display:inline-block;margin-right:.6rem;padding:.18rem .55rem;border-radius:20px;font-size:.8rem;font-weight:700}.good{background:#18583d;color:#b8ffe0}.idle{background:#383e50;color:#d0d4df}
.code{font-family:ui-monospace,monospace;font-size:1.2rem;letter-spacing:.1em}.logs{min-height:140px;max-height:320px;overflow:auto;background:#090e1d;border-radius:9px;padding:1rem;font-size:.8rem;white-space:pre-wrap;overflow-wrap:anywhere}
.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{padding:.55rem;border-bottom:1px solid #323952;text-align:left}
@media(max-width:760px){.grid{grid-template-columns:1fr}.dashboard{padding:1rem}.topbar{padding:1rem}.panel{padding:1rem}}

.dashboard-nav{display:flex;gap:.8rem;flex-wrap:wrap;margin-bottom:1.3rem}.navlink{display:inline-flex;align-items:center;border:1px solid #4b4373;border-radius:10px;padding:.65rem .9rem;color:#dfd3ff;text-decoration:none;background:#24213f;font-weight:650}.navlink:hover{background:#353059}.statvalue{font-size:2rem;font-weight:800;color:#b9a3ff}.statvalue small{font-size:.85rem;color:#aab1c7}.logs.expanded{max-height:68vh;min-height:280px}a{color:#cbbaff}
