:root{color-scheme:dark;--bg:#07050b;--panel:#100c16;--line:#2a2038;--accent:#9a63ff;--text:#f5f1fb;--muted:#aaa0b8;--ok:#66d19e;--bad:#ff7485}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 80% 0,#24103b 0,transparent 35%),var(--bg);color:var(--text);font:15px Inter,Segoe UI,sans-serif}.installer-shell{max-width:1180px;margin:auto;padding:38px 24px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.brand{font-size:24px;font-weight:800;letter-spacing:.12em}.brand span{font-weight:400;letter-spacing:0}.version{font-size:12px;color:var(--muted)}.installer-card{display:grid;grid-template-columns:280px 1fr;min-height:650px;border:1px solid var(--line);background:rgba(12,9,17,.94);border-radius:22px;overflow:hidden}aside{padding:32px;border-right:1px solid var(--line)}ol{list-style:none;padding:0;margin:0;display:grid;gap:8px}li{padding:14px;border-left:2px solid transparent;color:var(--muted)}li.active{border-color:var(--accent);color:#fff;background:#9a63ff12}.security-note{margin-top:48px;padding-top:22px;border-top:1px solid var(--line);display:grid;gap:8px}.security-note span,p,small{color:var(--muted);line-height:1.55}.installer-content{padding:42px;display:flex;flex-direction:column}.installer-content #stage{flex:1}h1{font-size:34px;margin:0 0 10px}h2{margin:28px 0 14px}.check-grid,.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.check,.field{border:1px solid var(--line);padding:16px;border-radius:12px;background:#ffffff05}.check{display:flex;justify-content:space-between;gap:10px}.check.ok b{color:var(--ok)}.check.bad b{color:var(--bad)}label{display:grid;gap:8px;color:var(--muted)}input,select{width:100%;padding:12px;border:1px solid var(--line);border-radius:9px;background:#09070d;color:#fff}input:focus,select:focus,button:focus{outline:2px solid var(--accent);outline-offset:2px}.wide{grid-column:1/-1}.actions{display:flex;justify-content:flex-end;gap:10px;padding-top:26px;border-top:1px solid var(--line)}button{border:0;border-radius:9px;padding:12px 18px;background:var(--accent);color:#fff;font-weight:700;cursor:pointer}.ghost{background:transparent;border:1px solid var(--line)}button:disabled{opacity:.45;cursor:not-allowed}.progress{height:8px;background:#21182d;border-radius:9px;overflow:hidden;margin:25px 0}.progress i{display:block;height:100%;width:0;background:var(--accent);transition:width .35s}.token{padding:18px;border:1px dashed var(--accent);border-radius:12px;font:700 17px ui-monospace;word-break:break-all}.status-list{display:grid;gap:10px}.status-row{display:flex;gap:12px;align-items:center;padding:12px;border-bottom:1px solid var(--line)}@media(max-width:760px){.installer-card{grid-template-columns:1fr}aside{border-right:0;border-bottom:1px solid var(--line);padding:20px}ol{grid-template-columns:repeat(5,1fr)}li{font-size:0;padding:5px;height:5px;background:#21182d}li.active{background:var(--accent)}.security-note{display:none}.installer-content{padding:26px 18px}.form-grid,.check-grid{grid-template-columns:1fr}.wide{grid-column:auto}header{align-items:flex-start;gap:10px}.version{text-align:right}}

.check-wrap{display:grid;gap:8px}.remediation{border:1px solid #4d355f;background:#160f20;border-radius:10px;padding:10px 12px}.remediation summary{cursor:pointer;font-weight:700;color:#d9c7ff}.remediation ol{list-style:decimal;margin:10px 0 8px 22px;display:block}.remediation li{padding:3px 0;border:0;background:none;color:var(--muted)}.blocking-note{margin-top:18px;border:1px solid #6b3042;background:#2a1018;padding:16px;border-radius:12px}.blocking-note b,.error-message{color:var(--bad)}.status-row span{display:grid;gap:3px}.status-row small{display:block}.status-row.failed b{color:var(--bad)}.status-row.done b{color:var(--ok)}
