:root{color-scheme:dark;font-family:Inter,Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;color:#a1a1aa;background:#09090b;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background-color:#09090b;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:32px 32px;background-position:center center;background-attachment:fixed}button,a.buttonLink{align-items:center;background:#fafafa;border:1px solid #fafafa;border-radius:6px;color:#09090b;cursor:pointer;display:inline-flex;font:inherit;font-size:13px;font-weight:600;gap:8px;height:36px;padding:0 16px;text-decoration:none;white-space:nowrap;transition:all .15s ease;box-shadow:0 2px 8px #ffffff1a}button:disabled{cursor:not-allowed;opacity:.5}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}button.secondary,a.secondaryLink{background:transparent;border:1px solid #27272a;box-shadow:none;color:#fafafa}button:hover:not(:disabled),a.buttonLink:hover{background:#e4e4e7;border-color:#e4e4e7;transform:translateY(-1px);box-shadow:0 4px 12px #ffffff26}button.secondary:hover:not(:disabled),a.secondaryLink:hover{background:#27272a;border-color:#3f3f46;color:#fff;box-shadow:none}main{margin:0 auto;max-width:1280px;padding:32px 24px}.topbar{align-items:flex-start;display:flex;gap:20px;justify-content:space-between;padding:0 0 32px}.topbar p,.workspaceHeader p,.manualItem p,.muted{color:#a1a1aa;font-size:14px;margin:6px 0 0;line-height:1.5}.product{align-items:center;display:flex;font-size:20px;font-weight:600;gap:10px;letter-spacing:-.5px;color:#fafafa}.product svg{color:#fafafa}.topActions,.actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.errorBar{background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:8px;color:#f87171;margin-bottom:24px;padding:14px 16px;font-size:14px}.scanResult{align-items:center;background:#10b9810d;border:1px solid rgba(16,185,129,.2);border-radius:8px;color:#34d399;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px;padding:14px 16px;font-size:14px}.scanResult strong{margin-left:auto;color:#6ee7b7}.scanPending{background:#09090b;border:1px solid #27272a;border-radius:12px;display:grid;gap:16px;margin-bottom:24px;padding:24px;box-shadow:0 8px 32px #0006}.scanPending h2{font-size:18px;margin:0;color:#fafafa;font-weight:600}.scanPending code{background:#18181b;border:1px solid #27272a;border-radius:6px;color:#a1a1aa;display:block;overflow-x:auto;padding:16px;white-space:nowrap;font-family:JetBrains Mono,Menlo,monospace;font-size:13px}.scanStatus{align-items:center;display:inline-flex;gap:8px;font-size:13px;font-weight:500}.scanStatus.waiting{color:#fbbf24}.scanStatus.running{color:#34d399}.hardware,.statsLine{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:24px}.stat{align-items:flex-start;background:#09090b;border:1px solid #27272a;border-radius:8px;display:grid;gap:2px 12px;grid-template-columns:24px 1fr;padding:16px;transition:border-color .2s ease}.stat:hover{border-color:#3f3f46}.stat svg{color:#71717a;grid-row:span 2;margin-top:2px}.stat span{color:#71717a;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.stat strong{display:block;font-size:14px;font-weight:500;color:#fafafa;overflow-wrap:anywhere}.tabs{display:inline-flex;gap:8px;margin:0 0 24px;border-bottom:1px solid #27272a;width:100%}.tabs button{background:transparent;border:none;border-bottom:2px solid transparent;border-radius:0;color:#71717a;font-size:14px;font-weight:500;height:40px;padding:0 4px;box-shadow:none;margin-bottom:-1px}.tabs button:hover{color:#fafafa;background:transparent;border-color:transparent;transform:none}.tabs button.active{color:#fafafa;border-bottom:2px solid #fafafa}.installLayout{align-items:start;display:grid;gap:24px;grid-template-columns:300px 1fr}.stepList{display:grid;gap:8px;position:sticky;top:24px}.stepButton{background:transparent;border:1px solid transparent;border-radius:6px;color:#a1a1aa;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;text-align:left;transition:all .15s ease;font-size:14px;font-weight:500;height:auto;min-height:64px}.stepButton:hover{background:#18181b;color:#fafafa}.stepButton.active{background:#18181b;color:#fafafa;border-color:#27272a}.stepButton>span{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0;justify-content:center}.stepButton>span>strong{color:#fafafa;font-weight:600}.stepButton small{color:#71717a;display:block;font-size:12px;font-weight:400}.workspace{background:#09090b;border:1px solid #27272a;border-radius:8px;padding:24px}.workspaceHeader{align-items:flex-start;border-bottom:1px solid #27272a;display:flex;gap:16px;justify-content:space-between;margin-bottom:20px;padding-bottom:20px}.eyebrow{color:#71717a;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:1px;margin-bottom:8px}h2{font-size:20px;font-weight:600;letter-spacing:-.5px;margin:0;color:#fafafa}.split,.storageGroups{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.panel{border:1px solid #27272a;border-radius:8px;background:#09090b}.panelTitle{align-items:center;background:#18181b;border-bottom:1px solid #27272a;display:flex;font-size:13px;font-weight:600;gap:8px;height:44px;padding:0 16px;color:#fafafa}.panelTitle span{color:#71717a;margin-left:auto;font-weight:400}.table{display:grid}.row{align-items:center;border-bottom:1px solid #18181b;display:grid;gap:12px;grid-template-columns:1fr auto;min-height:54px;padding:12px 16px}.row:last-child{border-bottom:0}.row.selectable{cursor:pointer;grid-template-columns:20px 1fr auto}.row.selectable:hover{background:#18181b}input[type=checkbox]{accent-color:#fafafa;height:16px;margin:0;width:16px;cursor:pointer}.row code{color:#71717a;display:block;font-size:12px;margin-top:4px;font-family:JetBrains Mono,monospace}.row span{color:#fafafa;font-size:13px;font-weight:500}.rowMeta{align-items:flex-end;display:grid;gap:6px;justify-items:end}.manualList{display:grid}.manualItem{align-items:start;border-bottom:1px solid #18181b;display:grid;gap:12px;grid-template-columns:20px 1fr 32px;padding:16px}.manualItem:last-child{border-bottom:0}.manualItem a{align-items:center;border:1px solid #27272a;border-radius:6px;color:#a1a1aa;display:inline-flex;height:32px;justify-content:center;text-decoration:none;width:32px;transition:all .15s ease}.manualItem a:hover{background:#27272a;color:#fafafa}.pill{align-items:center;border-radius:4px;display:inline-flex;font-size:11px;font-weight:600;gap:6px;height:24px;padding:0 8px;letter-spacing:.5px}.pill.good{background:#10b9811a;color:#34d399}.pill.run{background:#3b82f61a;color:#60a5fa}.pill.bad{background:#ef44441a;color:#f87171}.pill.manual{background:#f59e0b1a;color:#fbbf24}.pill.idle{background:#18181b;color:#a1a1aa}.logList{display:grid;max-height:600px;overflow:auto}.logLine{border-bottom:1px solid #18181b;display:grid;gap:12px;grid-template-columns:60px 1fr;padding:12px 16px;font-family:JetBrains Mono,monospace;font-size:12px}.logLine span{color:#71717a}.logLine p{margin:0;color:#d4d4d8}.logLine.error p{color:#f87171}.logLine.warn p,.logLine.warning p{color:#fbbf24}.recommendations{margin-bottom:24px}.recGrid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(360px,1fr))}.recCard{background:#09090b;border:1px solid #27272a;border-radius:8px;display:flex;flex-direction:column;transition:border-color .2s ease}.recCard:hover{border-color:#3f3f46}.recCard.wide{grid-column:1 / -1}.recCardTitle{align-items:center;border-bottom:1px solid #27272a;color:#fafafa;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 16px}.recCardTitle span{background:#18181b;border-radius:4px;color:#a1a1aa;font-size:11px;font-weight:500;margin-left:auto;padding:2px 6px}.recCardBody{display:flex;flex-direction:column;gap:12px;padding:16px}.recCardBody .muted{margin:0}.recCardBody>div{color:#a1a1aa;font-size:13px}.recItem{align-items:flex-start;border-bottom:1px solid #18181b;display:flex;gap:12px;justify-content:space-between;padding:12px 0}.recItem:last-child{border-bottom:none;padding-bottom:0}.recItem>div{display:flex;flex-direction:column;gap:4px}.recItem small{color:#71717a;font-size:12px;line-height:1.4}.recTable{display:flex;flex-direction:column;gap:8px}.recRow{align-items:center;background:#18181b;border:1px solid #27272a;border-radius:6px;display:flex;gap:12px;justify-content:space-between;padding:10px 14px}.recRow code{color:#a1a1aa;font-size:12px}.recRow small{color:#71717a;font-size:12px;display:block}.recTag{background:#27272a;border-radius:4px;color:#fafafa;font-size:11px;padding:2px 6px}.recBadge{background:#3b82f61a;border-radius:4px;color:#60a5fa;font-size:11px;margin-left:auto;padding:2px 6px}.recDetected{background:#10b9810d;border:1px solid rgba(16,185,129,.2);border-radius:6px;color:#a1a1aa;font-size:13px;padding:10px 12px}.recDetected strong{color:#34d399;font-weight:500}.recActions{align-items:center;display:flex;gap:8px}.machineSelector{display:flex;align-items:center;gap:8px;margin-top:8px;font-size:14px}.machineSelector label{color:#9aa3b2}.machineSelector select{background:#0f1623;border:1px solid #2a3244;border-radius:6px;color:#e6e6e6;padding:4px 8px;font-size:14px}.machineSelector select:focus{border-color:#60a5fa;outline:none}.emptyState{align-items:center;background:linear-gradient(180deg,#0f1623,#0a0f18);border:1px solid #1f2937;border-radius:16px;display:flex;flex-direction:column;gap:16px;margin:80px auto;max-width:560px;padding:56px 32px;text-align:center}.emptyState svg{color:#60a5fa;opacity:.8}.emptyState h1{font-size:28px;margin:0}.emptyState p{color:#9aa3b2;margin:0;max-width:420px}.bigButton{align-items:center;background:#3b82f6;border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:500;gap:8px;margin-top:16px;padding:14px 28px;transition:background .15s}.bigButton:hover{background:#2563eb}.runUrlPanel{background:#0f1623;border:1px solid #1e3a8a;border-radius:12px;display:grid;gap:16px;grid-template-columns:1fr auto;margin-bottom:24px;padding:20px}.runUrlPanel code{background:#050810;border:1px solid #1f2937;border-radius:8px;color:#93c5fd;display:block;font-size:13px;margin-top:8px;overflow-x:auto;padding:12px;white-space:nowrap}.runUrlPanel .actions{display:flex;flex-direction:column;gap:8px}@media(max-width:980px){main{padding:24px 16px}.topbar{flex-direction:column}.hardware,.statsLine,.split,.storageGroups,.installLayout{grid-template-columns:1fr}.stepList{position:static;display:flex;flex-wrap:wrap}.stepButton{min-width:auto;flex:1}}@media(max-width:560px){.tabs,.topActions,.actions{display:grid;width:100%}button,a.buttonLink{justify-content:center;width:100%}.row,.stepButton{grid-template-columns:1fr}.row.selectable,.manualItem{grid-template-columns:20px 1fr}.manualItem a{grid-column:2}.recGrid{grid-template-columns:1fr}}
.modalOverlay{align-items:center;background:#0009;backdrop-filter:blur(8px);display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:80}.commandModal{background:#09090b;border:1px solid #27272a;border-radius:10px;box-shadow:0 24px 80px #000c;display:grid;gap:16px;max-width:720px;padding:24px;width:min(720px,100%)}.commandModal p{color:#a1a1aa;font-size:14px;line-height:1.5;margin:0}.commandModal code{background:#18181b;border:1px solid #27272a;border-radius:6px;color:#fafafa;display:block;font-family:JetBrains Mono,Menlo,monospace;font-size:13px;overflow-x:auto;padding:16px;white-space:nowrap}.modalHeader{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}.iconButton{align-items:center;background:transparent;border:1px solid #27272a;box-shadow:none;color:#fafafa;height:36px;justify-content:center;padding:0;width:36px}.iconButton:hover:not(:disabled){background:#27272a;border-color:#3f3f46;box-shadow:none;transform:none}@media(max-width:560px){.modalOverlay{align-items:flex-end;padding:12px}.commandModal{border-radius:10px 10px 0 0;padding:18px}.commandModal code{white-space:pre-wrap;overflow-wrap:anywhere}.modalHeader{align-items:center}.commandModal .actions{display:grid;width:100%}}.commandSync{border:1px solid #27272a;border-radius:8px;display:grid;gap:10px;padding:14px}.commandSyncTitle{align-items:center;color:#fafafa;display:flex;gap:10px}.commandSyncTitle strong{font-size:14px;font-weight:600}.commandSyncDot{background:#fbbf24;border-radius:999px;display:inline-block;height:9px;width:9px}.commandSync p{color:#a1a1aa;font-size:13px;line-height:1.45;margin:0}.commandSyncLogs{display:grid;gap:6px;max-height:150px;overflow:auto}.commandSyncLogs:empty{display:none}.commandSyncLogs div{background:#18181b;border:1px solid #27272a;border-radius:6px;color:#d4d4d8;font-family:JetBrains Mono,Menlo,monospace;font-size:12px;line-height:1.35;padding:8px}.commandSyncLogs span{color:#71717a;display:inline-block;font-weight:600;margin-right:8px;text-transform:uppercase}.commandSync.running{border-color:#3b82f64d;background:#3b82f60d}.commandSync.running .commandSyncDot{background:#60a5fa;animation:pulseSync 1s ease-in-out infinite}.commandSync.success{border-color:#10b9814d;background:#10b9810d}.commandSync.success .commandSyncDot{background:#34d399}.commandSync.failed{border-color:#ef44444d;background:#ef44440d}.commandSync.failed .commandSyncDot{background:#f87171}@keyframes pulseSync{0%,100%{opacity:.35;transform:scale(.9)}50%{opacity:1;transform:scale(1.15)}}