:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#172033;background:#f5f7fb}*{box-sizing:border-box}body{margin:0}.installer-shell{width:min(1080px,calc(100% - 32px));margin:32px auto 64px}.installer-hero{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;margin-bottom:22px}.installer-hero h1{font-size:clamp(32px,5vw,52px);margin:6px 0}.installer-hero p{max-width:720px;color:#5d677a;margin:0;line-height:1.55}.installer-kicker{text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:800;color:#5b47e0}.installer-badge{background:#ebe8ff;color:#4936c7;border-radius:999px;padding:10px 14px;font-weight:700;white-space:nowrap}.installer-card{background:#fff;border:1px solid #e3e7ef;border-radius:18px;padding:24px;margin:16px 0;box-shadow:0 8px 30px rgba(28,39,60,.05)}.installer-card h2{margin:0 0 6px}.installer-card p{color:#626d80}.installer-row{display:flex;align-items:center;justify-content:space-between;gap:20px}.step-status{font-weight:800;color:#7b8496}.step-status.ok{color:#137a4b}.step-status.fail{color:#bd2c2c}.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px}.check-item{border:1px solid #e6e9f0;border-radius:12px;padding:12px 14px;display:flex;gap:10px;align-items:flex-start}.check-item.ok{border-color:#bfe6d1;background:#f4fbf7}.check-item.fail{border-color:#f0c0c0;background:#fff6f6}.check-item.warn{border-color:#efdba8;background:#fffaf0}.check-icon{font-weight:900}.check-copy b{display:block}.check-copy small{color:#727c8e}.installer-note{background:#f3f1ff;border:1px solid #d8d1ff;border-radius:12px;padding:14px;margin:12px 0 16px}.installer-alert{border-radius:12px;padding:12px 14px;margin:12px 0}.installer-alert.error,.installer-error{background:#fff5f5;border-color:#f1bcbc}.installer-success{background:#f4fbf7;border-color:#bee4ce}fieldset{border:0;padding:0;margin:26px 0}legend{font-size:18px;font-weight:800;margin-bottom:14px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}label{display:flex;flex-direction:column;gap:6px;font-weight:700;font-size:14px}input{width:100%;border:1px solid #cfd5e1;border-radius:10px;padding:11px 12px;font:inherit;background:#fff;color:#172033}input:focus{outline:2px solid #8c7cff;outline-offset:1px}.check{flex-direction:row;align-items:center;font-weight:600}.check input{width:auto}.span-2{grid-column:1/-1}.help{font-size:13px}.installer-button{appearance:none;border:0;border-radius:11px;background:#563fe4;color:#fff;padding:12px 18px;font:inherit;font-weight:800;cursor:pointer;text-decoration:none;display:inline-flex;justify-content:center;align-items:center}.installer-button:hover{filter:brightness(.96)}.installer-button:disabled{opacity:.55;cursor:not-allowed}.installer-button.secondary{background:#edf0f6;color:#273145}.installer-button.wide{width:100%;margin-top:10px}.installer-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.progress-track{height:12px;border-radius:999px;background:#edf0f5;overflow:hidden;margin:20px 0}.progress-track>div{height:100%;width:0;background:#563fe4;transition:width .2s}.summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.summary-grid>div{border:1px solid #e5e8ef;border-radius:12px;padding:12px}.summary-grid span{display:block;font-size:12px;color:#707a8c}.summary-grid strong{font-size:17px}.install-log{background:#151b28;color:#d9e0ee;border-radius:14px;padding:14px;margin-top:16px;max-height:360px;overflow:auto;font:13px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace}.log-line{padding:3px 0;border-bottom:1px solid rgba(255,255,255,.05)}.log-line.ok{color:#9be3b9}.log-line.fail{color:#ffaaa9}.installer-footer{color:#747e90;font-size:13px;line-height:1.5;margin-top:24px}code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:#eef1f6;padding:2px 5px;border-radius:5px}@media(max-width:760px){.installer-shell{width:min(100% - 20px,1080px);margin-top:18px}.installer-hero{align-items:flex-start;flex-direction:column}.installer-badge{white-space:normal}.form-grid,.check-grid,.summary-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.installer-row{align-items:flex-start;flex-direction:column}.installer-card{padding:18px}}
/* Installer containment: long extension/path/status text must never widen the mobile form. */
.installer-card,.installer-row,.check-grid,.check-item,.check-copy,.form-grid,.form-grid>*,.summary-grid,.summary-grid>*,fieldset,label,input{min-width:0}
.check-copy,.check-copy b,.check-copy small,.help,.installer-note,.installer-alert,.installer-footer{overflow-wrap:anywhere;word-break:break-word}
