@codeyam-editor/codeyam-editor 0.1.8 → 0.1.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/npm/cloud.js +377 -21
  2. package/npm/editor-dev.js +24 -2
  3. package/npm/editor.js +15 -5
  4. package/npm/fleet-add-failure.js +355 -21
  5. package/npm/fleet-auth-account.js +61 -0
  6. package/npm/fleet-auth.js +69 -1
  7. package/npm/fleet-branch.js +124 -1
  8. package/npm/fleet-build-data.js +12 -1
  9. package/npm/fleet-cleanup.js +84 -3
  10. package/npm/fleet-datastore-health.js +107 -0
  11. package/npm/fleet-public-url.js +81 -12
  12. package/npm/fleet-reconcile.js +46 -11
  13. package/npm/fleet-revision.js +108 -0
  14. package/npm/fleet-run-setup.js +66 -0
  15. package/npm/fleet-session-activity.js +162 -0
  16. package/npm/fleet-vm-readiness.js +57 -16
  17. package/npm/group-bounded-spawn.js +111 -0
  18. package/npm/launch-config.js +216 -23
  19. package/npm/orphan-ssh-reaper.js +81 -0
  20. package/npm/scenario-check.js +697 -34
  21. package/npm/scenario-interactivity.js +477 -23
  22. package/npm/scenario-issues.js +61 -0
  23. package/npm/scenario-playwright.js +174 -20
  24. package/npm/utils.js +262 -22
  25. package/package.json +5 -5
  26. package/ui/dist/assets/{ContainerInspector-DSVZvEkB.js → ContainerInspector-DiN91foX.js} +1 -1
  27. package/ui/dist/assets/EditorShell-BEIdHnHd.css +1 -0
  28. package/ui/dist/assets/EditorShell-CPV5vhjo.js +330 -0
  29. package/ui/dist/assets/ScenarioDataPanel-DHAHyraq.js +18 -0
  30. package/ui/dist/assets/{ScenarioDataPanelFullPage-Cyk6efiI.js → ScenarioDataPanelFullPage-CHIWip3n.js} +1 -1
  31. package/ui/dist/assets/ScenarioRenderer-D9a91iwS.js +21 -0
  32. package/ui/dist/assets/index--cE0hUJw.css +1 -0
  33. package/ui/dist/assets/{index-BPLKgwon.js → index-sW8wcg7v.js} +9 -9
  34. package/ui/dist/index.html +2 -2
  35. package/ui/dist/preview-subdir-demo/index.html +62 -0
  36. package/ui/dist/preview-subdir-demo/sibling.html +48 -0
  37. package/ui/dist/assets/EditorShell-DnXdHrar.js +0 -256
  38. package/ui/dist/assets/EditorShell-FvbXyqqD.css +0 -1
  39. package/ui/dist/assets/ScenarioDataPanel-6qJE-0lA.js +0 -15
  40. package/ui/dist/assets/ScenarioRenderer-Uyt54vHI.js +0 -21
  41. package/ui/dist/assets/index-DKpgJLo3.css +0 -1
@@ -0,0 +1 @@
1
+ .mtest-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}.mtest-count{font-size:12.5px;color:var(--text-subtle)}.mtest-count.warn{color:var(--amber-300)}.mtest-buttons{display:flex;gap:8px;margin-left:auto}.mtest-btn{border:.5px solid var(--line-subtle);border-radius:8px;background:transparent;color:inherit;font:inherit;font-size:12.5px;padding:5px 11px;cursor:pointer;transition:.15s}.mtest-btn:hover:not(:disabled){border-color:var(--action-bg)}.mtest-btn.primary{background:var(--action-bg);color:var(--action-fg);border-color:transparent}.mtest-btn:disabled{opacity:.45;cursor:default}.mtest-btn.open{border-color:var(--action-bg)}.mtest-btn.open:not(.primary){background:color-mix(in srgb,var(--action-bg) 18%,transparent)}.mtest-btn.primary.open{background:color-mix(in srgb,var(--action-bg) 72%,black);border-color:var(--action-bg)}.mtest-chat{margin-top:4px;margin-bottom:14px}.mtest-list{display:flex;flex-direction:column;gap:8px}.mtest-row{display:flex;gap:11px;padding:12px 14px;border:.5px solid var(--line-subtle);border-radius:10px;background:var(--surface-card);transition:border-color .15s,background .15s}.mtest-row:hover{border-color:var(--line-hair)}.mtest-row.done{opacity:.55;background:transparent}.mtest-row.done .mtest-title{text-decoration:line-through}.mtest-check{display:flex;align-items:flex-start;padding-top:1px}.mtest-check input{width:15px;height:15px;cursor:pointer;accent-color:var(--action-bg)}.mtest-check input:disabled{cursor:default}.mtest-main{flex:1;min-width:0}.mtest-title{font-size:13.5px;font-weight:600;letter-spacing:-.005em}.mtest-intent{font-size:12.5px;color:var(--text-subtle);margin-top:3px}.mtest-steps{margin:10px 0 0;padding-left:18px;font-size:12.5px;line-height:1.55;list-style:decimal outside}.mtest-steps li{margin:0}.mtest-disclose{border:0;background:none;padding:0;margin-top:5px;font:inherit;font-size:12px;color:var(--action-bg);cursor:pointer}.mtest-disclose:hover{text-decoration:underline}.mtest-expected{font-size:12.5px;margin-top:8px}.mtest-expected .lbl,.mtest-uncovered .lbl{font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-subtle);margin-right:6px}.mtest-open{display:inline-flex;align-items:center;gap:8px;margin-top:10px;border:.5px solid var(--line-subtle);border-radius:8px;background:transparent;color:inherit;font:inherit;font-size:12.5px;padding:5px 11px;cursor:pointer;transition:.15s;text-decoration:none}.mtest-open:hover{border-color:var(--action-bg)}.mtest-open.primary{background:var(--action-bg);color:var(--action-fg);border-color:transparent}.mtest-open.primary:hover{background:color-mix(in srgb,var(--action-bg) 88%,white)}.mtest-open .sname{color:var(--text-subtle)}.mtest-open.primary .sname{color:color-mix(in srgb,var(--action-fg) 74%,var(--action-bg))}.mtest-open .stype{font-size:10.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--text-subtle);border:.5px solid var(--line-subtle);border-radius:5px;padding:1px 5px}.mtest-open.primary .stype{color:color-mix(in srgb,var(--action-fg) 74%,var(--action-bg));border-color:color-mix(in srgb,var(--action-fg) 28%,transparent)}.mtest-open .ext{flex-shrink:0;color:var(--text-subtle)}.mtest-open.primary .ext{color:color-mix(in srgb,var(--action-fg) 74%,var(--action-bg))}.mtest-row.done .mtest-open.primary{background:transparent;color:inherit;border-color:var(--line-subtle)}.mtest-row.done .mtest-open.primary:hover{background:transparent;border-color:var(--action-bg)}.mtest-row.done .mtest-open.primary .sname,.mtest-row.done .mtest-open.primary .stype{color:var(--text-subtle)}.mtest-row.done .mtest-open.primary .stype{border-color:var(--line-subtle)}.mtest-uncovered{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:10px;font-size:12.5px}.mtest-uncovered .uname{font-weight:600}.mtest-uncovered .ufile{color:var(--text-subtle);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11.5px}.mtest-uncovered-cta{border:0;background:none;padding:0;font:inherit;font-size:12px;color:var(--action-bg);cursor:pointer}.mtest-uncovered-cta:hover{text-decoration:underline}.mtest-nosurface{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-top:10px;font-size:12.5px;color:var(--text-subtle)}.mtest-nosurface .note{font-style:italic}.mtest-nosurface .bdetail{flex-basis:100%;font-style:italic;font-size:11.5px;opacity:.85}.mtest-barrier{font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:2px 7px;border-radius:999px;white-space:nowrap}.mtest-barrier.gap{color:var(--action-bg);border:1px solid var(--action-bg)}.mtest-barrier.inherent{color:var(--text-subtle);border:.5px solid var(--line-subtle)}.mtest-ask-row{margin-top:10px;display:flex;align-items:center;gap:8px}.mtest-ask{display:inline-flex;align-items:center;gap:6px;border:.5px solid var(--line-subtle);border-radius:8px;background:transparent;color:var(--text-subtle);font:inherit;font-size:12px;padding:4px 10px;cursor:pointer;transition:.15s}.mtest-ask:hover{color:inherit;border-color:var(--action-bg)}.mtest-delete{display:inline-flex;align-items:center;gap:6px;border:.5px solid transparent;border-radius:8px;background:transparent;color:var(--text-subtle);font:inherit;font-size:12px;padding:4px 10px;cursor:pointer;opacity:.7;transition:.15s}.mtest-delete:hover,.mtest-delete:focus-visible{color:var(--accent-red, #ff5c5c);border-color:color-mix(in srgb,var(--accent-red, #ff5c5c) 45%,transparent);background:color-mix(in srgb,var(--accent-red, #ff5c5c) 12%,transparent);opacity:1}.mtest-ask.open{color:inherit;border-color:var(--action-bg);background:color-mix(in srgb,var(--action-bg) 18%,transparent)}.mtest-row-chat{margin-top:12px}.mtest-receipt{display:flex;align-items:center;gap:7px;margin-top:10px;font-size:12px;color:var(--text-subtle)}.mtest-receipt .who{display:inline-flex;align-items:center;justify-content:center;width:19px;height:19px;border-radius:50%;background:var(--action-bg);color:var(--action-fg);font-size:9.5px;font-weight:700;letter-spacing:.02em}.mtest-completed{margin-top:16px}.mtest-placeholder{font-size:12.5px;color:var(--text-subtle);padding:10px 0}.mtest-placeholder.error{color:var(--amber-300)}.mtest-row.leaving{--mtest-leave-ms: .55s;overflow:hidden;pointer-events:none;animation:mtest-leave var(--mtest-leave-ms) linear forwards}.mtest-row.leaving .mtest-title{position:relative;width:fit-content;max-width:100%;text-decoration:none}.mtest-row.leaving .mtest-title:after{content:"";position:absolute;left:0;top:50%;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left center;animation:mtest-strike calc(var(--mtest-leave-ms) * .28) ease-out forwards}@keyframes mtest-strike{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes mtest-leave{0%,45%{opacity:1;max-height:1000px;padding-top:12px;padding-bottom:12px;margin-bottom:0}70%{opacity:.35;max-height:240px}85%{opacity:0}to{opacity:0;max-height:0;padding-top:0;padding-bottom:0;margin-bottom:-8px;border-width:0}}.mtest-row.leaving.pinned{animation-delay:-.3s;animation-play-state:paused}.mtest-row.leaving.pinned .mtest-title:after{animation:none;transform:scaleX(1)}@media(prefers-reduced-motion:reduce){.mtest-row.leaving:not(.pinned){display:none}}.mtest-range{border:.5px solid var(--line-subtle);border-radius:10px;padding:10px 12px;margin-bottom:12px;display:flex;flex-direction:column;gap:8px}.mtest-range-title{font-size:12.5px;color:var(--text-body)}.mtest-range-opts{display:flex;flex-direction:column;gap:2px}.mtest-range-opt{display:flex;align-items:baseline;gap:8px;font-size:12.5px;padding:3px 0;cursor:pointer}.mtest-range-opt.disabled{opacity:.5;cursor:default}.mtest-range-opt input[type=radio]{accent-color:var(--action-bg);margin:0;flex:none}.mtest-range-opt-detail{color:var(--text-subtle);font-size:12px}.mtest-range-commits{display:flex;flex-direction:column;max-height:190px;overflow-y:auto;border:.5px solid var(--line-subtle);border-radius:8px;scroll-snap-type:y proximity;-webkit-mask-image:linear-gradient(to bottom,#000 calc(100% - 18px),transparent);mask-image:linear-gradient(to bottom,#000 calc(100% - 18px),transparent)}.mtest-range-commits>*{scroll-snap-align:start}.mtest-range-commit{display:flex;flex-direction:column;align-items:flex-start;gap:1px;text-align:left;background:transparent;border:0;border-bottom:.5px solid var(--line-subtle);color:inherit;font:inherit;padding:7px 10px;cursor:pointer}.mtest-range-commit:last-child{border-bottom:0}.mtest-range-commit:hover:not(:disabled){background:color-mix(in srgb,var(--action-bg) 8%,transparent)}.mtest-range-commit.selected{background:color-mix(in srgb,var(--action-bg) 16%,transparent)}.mtest-range-commit-subject{font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.mtest-range-commit-meta{font-size:11.5px;color:var(--text-subtle);font-family:var(--mono, ui-monospace, SFMono-Regular, Menlo, monospace)}.mtest-range-hidden{font-size:11.5px;color:var(--text-subtle)}.mtest-range-field{display:flex;align-items:center;gap:9px}.mtest-range-lbl{font-size:12.5px;color:var(--text-subtle);flex:none}.mtest-range-input{flex:1 1 auto;min-width:0;font-family:var(--mono, ui-monospace, SFMono-Regular, Menlo, monospace);font-size:12.5px;color:inherit;background:transparent;border:.5px solid var(--line-subtle);border-radius:7px;padding:5px 9px}.mtest-range-input:focus{outline:none;border-color:var(--action-bg)}.mtest-range-count{font-size:12px;color:var(--text-subtle);flex:none;font-variant-numeric:tabular-nums}.mtest-range-foot{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.mtest-range-hint{font-size:12px;color:var(--text-subtle);flex:1 1 auto;min-width:0}.mtest-range-actions{display:flex;gap:8px;margin-left:auto;flex:none}.mtest-btn.subtle{border-color:transparent;color:var(--text-subtle)}.mtest-adhoc{font-size:12px;color:var(--text-subtle);font-family:var(--mono, ui-monospace, SFMono-Regular, Menlo, monospace)}.fact-fresh{display:inline-flex;align-items:center;margin-left:.4em;padding:.05em .45em;border-radius:999px;font-size:.72em;font-weight:600;letter-spacing:.01em;line-height:1.5;white-space:nowrap;color:#5b6472;background:#636e7d1a;cursor:help;vertical-align:middle}.fact-fresh.stale{color:#9a5b00;background:#d68a0029}.xsvc{display:flex;flex-direction:column;min-height:100%;background:transparent;color:var(--text-body, #aaaaaa);font-family:IBM Plex Sans,system-ui,sans-serif}.xsvc-scroll{flex:1;overflow-y:auto;padding:26px 10% 40px}.xsvc.xsvc-embedded{min-height:0}.xsvc.xsvc-embedded .xsvc-scroll{overflow-y:visible;padding:0 0 8px}.xsvc-sub.xsvc-sub-lead{font-size:15px;line-height:1.55;margin:0;max-width:62ch}.xsvc.xsvc-embedded .xsvc-head{margin-bottom:20px}.xsvc-askcard.xsvc-askcard-bare{border:0;border-radius:0;background:transparent;padding:0;margin-bottom:26px}.xsvc-listbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:16px}.xsvc-count.xsvc-count-row{margin:0}.xsvc-count.xsvc-count-row b{font-weight:600;color:var(--text-strong, #f2f2f2)}.xsvc-count.xsvc-count-row .attn{color:var(--amber-300, #ef9f27)}.xsvc-listbar .xsvc-toolbar{margin:0}.xsvc-crumbs{margin-bottom:14px}.xsvc-back{background:none;border:0;padding:0;cursor:pointer;font:inherit;font-size:12.5px;color:var(--text-faint, #6b6b6b)}.xsvc-back:hover{color:var(--text-body, #aaaaaa)}.xsvc-head{display:block;margin-bottom:24px}.xsvc-head h1{font-size:26px;font-weight:700;color:var(--text-strong, #f2f2f2);letter-spacing:-.02em;margin:0}.xsvc-sub{font-size:13.5px;color:var(--text-faint, #6b6b6b);margin:7px 0 0;max-width:54ch}.xsvc-headbtn{font:inherit;font-size:12.5px;font-weight:600;color:var(--text-body, #aaaaaa);background:var(--surface-raised, #1c1c1c);border:.5px solid var(--line-subtle, rgba(255, 255, 255, .08));border-radius:9px;padding:9px 14px;cursor:pointer;white-space:nowrap}.xsvc-headbtn:hover{border-color:var(--line-hair, rgba(255, 255, 255, .12));color:var(--text-strong, #f2f2f2)}.xsvc-groups{margin-top:0}.xsvc-group{margin-bottom:34px}.xsvc-group-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:14px}.xsvc-seclabel{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-subtle, #4a4a4a)}.xsvc-seccount{font-size:11.5px;color:var(--text-subtle, #4a4a4a);font-variant-numeric:tabular-nums}.xsvc-rows{display:flex;flex-direction:column;gap:9px}.xsvc-row{display:flex;align-items:center;gap:14px;border:.5px solid var(--line-subtle, rgba(255, 255, 255, .08));border-radius:14px;padding:14px 16px;background:var(--surface-card, #161616);transition:.16s;cursor:pointer}.xsvc-row:hover{border-color:var(--line-hair, rgba(255, 255, 255, .12));background:var(--surface-raised, #1c1c1c);transform:translateY(-1px)}.xsvc-row.attn{border-color:#ef9f2766;background:linear-gradient(150deg,#ef9f270f,#ef9f2703)}.xsvc-row.pending{border-style:dashed;border-color:var(--line-hair, rgba(255, 255, 255, .12));background:#ffffff0b}.xsvc-row.pending:hover{background:#ffffff13}.xsvc-row.pending .xsvc-rname{color:var(--text-body, #aaaaaa);font-weight:500}.xsvc-row.pending .xsvc-rdesc{color:var(--text-subtle, #4a4a4a)}.xsvc-tile{width:40px;height:40px;border-radius:11px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:13px;font-weight:600}.xsvc-tile.t-lime{background:var(--lime-soft, rgba(199, 240, 74, .15));color:var(--lime-300, #c7f04a)}.xsvc-tile.t-blue{background:var(--blue-soft, rgba(133, 183, 235, .13));color:var(--blue-300, #85b7eb)}.xsvc-tile.t-green{background:var(--green-soft, rgba(155, 211, 90, .13));color:var(--green-300, #9bd35a)}.xsvc-tile.t-amber{background:var(--amber-soft, rgba(239, 159, 39, .13));color:var(--amber-300, #ef9f27)}.xsvc-tile.t-indigo{background:var(--indigo-soft, rgba(139, 133, 255, .13));color:var(--indigo-300, #8b85ff)}.xsvc-rmain{min-width:0;flex:1}.xsvc-rname{font-size:14.5px;font-weight:600;color:var(--text-strong, #f2f2f2);display:flex;align-items:center;gap:9px;flex-wrap:wrap}.xsvc-rdesc{font-size:12.5px;color:var(--text-faint, #6b6b6b);margin-top:3px}.xsvc-rright{display:flex;align-items:center;gap:16px;flex-shrink:0}.xsvc-rmeta{text-align:right;line-height:1.3}.xsvc-rmeta .big{font-size:13px;font-weight:600;color:var(--text-strong, #f2f2f2);font-variant-numeric:tabular-nums}.xsvc-rmeta .lil{font-size:11px;color:var(--text-faint, #6b6b6b);margin-top:2px}.xsvc-arr{color:var(--text-subtle, #4a4a4a);display:flex;align-items:center;transition:.16s}.xsvc-row:hover .xsvc-arr{color:var(--text-body, #aaaaaa);transform:translateY(1px)}.xsvc-tag{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:10px;font-weight:500;padding:2.5px 7px;border-radius:6px;text-transform:uppercase}.xsvc-tag.set{background:var(--green-soft, rgba(155, 211, 90, .13));color:var(--green-300, #9bd35a)}.xsvc-tag.env{background:var(--lime-soft, rgba(199, 240, 74, .15));color:var(--lime-300, #c7f04a);text-transform:none}.xsvc-tag.miss{background:var(--amber-soft, rgba(239, 159, 39, .13));color:var(--amber-300, #ef9f27)}.xsvc-tag.origin{background:#ffffff0f;color:var(--text-dim, rgba(255, 255, 255, .45));text-transform:none;letter-spacing:.01em}.xsvc-addkey{font:inherit;font-size:11.5px;font-weight:600;color:#0a0a0a;background:var(--amber-300, #ef9f27);border:0;border-radius:8px;padding:6px 11px;cursor:pointer}.xsvc-empty-wrap{margin-top:30px;display:flex;justify-content:center}.xsvc-empty-card{width:100%;max-width:700px;text-align:center;padding:42px 34px 28px;border:.5px solid var(--line-subtle, rgba(255, 255, 255, .08));border-radius:20px;background:radial-gradient(120% 120% at 50% -10%,rgba(199,240,74,.05),transparent 60%),var(--surface-panel, #111111)}.xsvc-empty-mark{width:52px;height:52px;border-radius:14px;margin:0 auto 18px;display:flex;align-items:center;justify-content:center;background:var(--lime-soft, rgba(199, 240, 74, .15));color:var(--lime-300, #c7f04a)}.xsvc-empty-card h2{font-size:20px;font-weight:700;color:var(--text-strong, #f2f2f2);margin:0 0 10px}.xsvc-empty-card p{font-size:13.5px;color:var(--text-body, #aaaaaa);margin:0 auto;max-width:50ch}.xsvc-chat-hero{margin-top:26px;text-align:left}.xsvc-lead{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--lime-300, #c7f04a);display:flex;align-items:center;gap:7px;margin-bottom:11px}.xsvc-composer{display:flex;align-items:center;gap:10px;width:100%;font:inherit;text-align:left;cursor:pointer;background:var(--surface-card, #161616);border:.5px solid var(--line-hair, rgba(255, 255, 255, .12));border-radius:13px;padding:11px 12px 11px 15px}.xsvc-composer:hover{border-color:var(--lime-300, #c7f04a)}.xsvc-composer .ph{flex:1;font-size:13.5px;color:var(--text-faint, #6b6b6b)}.xsvc-composer .send{width:32px;height:32px;border-radius:9px;background:var(--lime-300, #c7f04a);color:#0a0a0a;display:flex;align-items:center;justify-content:center;flex-shrink:0}.xsvc-chips{display:flex;align-items:center;gap:8px;flex-shrink:0;min-width:0}.xsvc-chip{font:inherit;white-space:nowrap;font-size:12px;color:var(--text-body, #aaaaaa);background:var(--surface-raised, #1c1c1c);border:.5px solid var(--line-subtle, rgba(255, 255, 255, .08));border-radius:999px;padding:7px 13px;cursor:pointer}.xsvc-chip:hover{border-color:var(--line-hair, rgba(255, 255, 255, .12));color:var(--text-strong, #f2f2f2)}.xsvc-chip .g{color:var(--lime-300, #c7f04a);font-family:IBM Plex Mono,ui-monospace,monospace;margin-right:5px}.xsvc-askcard{border:.5px solid var(--line-subtle, rgba(255, 255, 255, .08));border-radius:16px;background:var(--surface-card, #161616);padding:18px;margin-bottom:34px}.xsvc-divider{height:0;border-top:.5px solid var(--line-subtle, rgba(255, 255, 255, .08));margin:0 0 30px}.xsvc-ask-composer{display:flex;align-items:center;gap:11px;width:100%;font:inherit;text-align:left;cursor:pointer;background:var(--surface-card, #161616);border:.5px solid var(--line-hair, rgba(255, 255, 255, .12));border-radius:12px;padding:13px 13px 13px 17px}.xsvc-ask-composer:hover{border-color:var(--lime-300, #c7f04a)}.xsvc-ask-composer .ai{color:var(--text-subtle, #4a4a4a);display:flex;align-items:center;justify-content:center;flex-shrink:0}.xsvc-ask-composer .ph{flex:1;font-size:13.5px;color:var(--text-faint, #6b6b6b)}.xsvc-ask-composer .send{width:30px;height:30px;border-radius:9px;background:var(--lime-300, #c7f04a);color:#0a0a0a;display:flex;align-items:center;justify-content:center;flex-shrink:0}.xsvc-connected{display:block}.xsvc-ask-chat{margin-top:14px}.xsvc-chatdock-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;font-family:IBM Plex Sans,system-ui,sans-serif;font-size:12.5px;color:var(--text-faint, #6b6b6b)}.xsvc-chatdock-close{background:none;border:0;padding:4px 6px;cursor:pointer;font:inherit;color:var(--text-faint, #6b6b6b)}.xsvc-chatdock-close:hover{color:var(--text-body, #aaaaaa)}.xsvc-toolbar{display:flex;align-items:center;gap:10px;margin-bottom:30px}.xsvc-sortlbl{font-size:12px;color:var(--text-faint, #6b6b6b)}.xsvc-seg{display:inline-flex;border:.5px solid var(--line-hair, rgba(255, 255, 255, .12));border-radius:9px;overflow:hidden}.xsvc-seg button{font:inherit;font-size:12.5px;padding:5px 14px;background:transparent;color:var(--text-faint, #6b6b6b);border:0;cursor:pointer}.xsvc-seg button:hover{color:var(--text-body, #aaaaaa)}.xsvc-seg button.on{background:var(--lime-soft, rgba(199, 240, 74, .15));color:var(--lime-300, #c7f04a)}.xsvc-tile svg{display:block}.xsvc-rowwrap{border-radius:14px}.xsvc-arr.down{color:var(--lime-300, #c7f04a);transform:rotate(180deg)}.xsvc-row:hover .xsvc-arr.down{transform:rotate(180deg) translateY(1px)}.xsvc-detail{padding:12px 16px 14px 70px;border:.5px solid var(--line-subtle, rgba(255, 255, 255, .08));border-top:0;border-radius:0 0 14px 14px;background:var(--surface-card, #161616);display:flex;flex-direction:column;gap:8px}.xsvc-detrow{display:flex;align-items:center;gap:12px;font-size:12.5px}.xsvc-detlabel{min-width:92px;color:var(--text-faint, #6b6b6b)}.xsvc-detval{color:var(--text-body, #aaaaaa)}.xsvc-detval.mono,.xsvc-keyval .mono{font-family:IBM Plex Mono,ui-monospace,monospace;color:var(--lime-300, #c7f04a);font-size:12px;letter-spacing:.02em}.xsvc-keyval{display:inline-flex;align-items:center;gap:10px;font:inherit;background:var(--surface-page, #0a0a0a);border:.5px solid var(--line-hair, rgba(255, 255, 255, .12));border-radius:8px;padding:5px 10px;cursor:pointer}.xsvc-keyval:hover{border-color:var(--lime-300, #c7f04a)}.xsvc-keyval .eye{display:flex;color:var(--text-faint, #6b6b6b)}.xsvc-keyval:hover .eye{color:var(--lime-300, #c7f04a)}.xsvc-titlerow{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}.xsvc-count{font-size:13px;color:var(--text-faint, #6b6b6b);font-variant-numeric:tabular-nums}.xsvc-cinput{flex:1;min-width:0;font:inherit;font-size:13.5px;color:var(--text-strong, #f2f2f2);background:transparent;border:0;outline:none}.xsvc-cinput::placeholder{color:var(--text-faint, #6b6b6b)}.xsvc-composer .send,.xsvc-ask-composer .send{border:0;cursor:pointer}.xsvc-composer,.xsvc-ask-composer{cursor:text}.xsvc-broker{border:.5px solid var(--line-subtle, rgba(255, 255, 255, .08));border-radius:14px;background:var(--surface-card, #161616);padding:16px 18px;margin-bottom:18px}.xsvc-broker-head{font-size:14px;font-weight:600;color:var(--text-strong, #f2f2f2);margin-bottom:8px}.xsvc-broker-body{font-size:13px;line-height:1.55;color:var(--text-body, #aaaaaa);margin:0 0 10px}.xsvc-broker-cmd{display:block;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:12px;color:var(--text-strong, #f2f2f2);background:var(--surface-raised, #1c1c1c);border:.5px solid var(--line-subtle, rgba(255, 255, 255, .08));border-radius:9px;padding:10px 12px;-webkit-user-select:all;user-select:all;overflow-wrap:anywhere}.xsvc-broker-go{font:inherit;font-size:13px;font-weight:600;color:#0a0a0a;background:var(--lime-300, #c7f04a);border:0;border-radius:9px;padding:9px 15px;cursor:pointer}.xsvc-broker-go:disabled{opacity:.5;cursor:default}.xsvc-broker-note{font-size:12px;line-height:1.5;color:var(--text-faint, #6b6b6b);margin:10px 0 0}.home-landing,.learn-screen,.hosting-screen,.lib-group,.lib-row{--bg: var(--surface-page);--panel: var(--surface-panel);--panel-2: var(--surface-card);--panel-3: var(--surface-raised);--line: var(--line-subtle);--line-2: var(--line-hair);--text: var(--text-strong);--text-2: var(--text-body);--text-3: var(--text-faint);--text-4: var(--text-subtle);--lime: var(--lime-300);--lime-dim: var(--lime-400);--blue: var(--blue-300);--green: var(--green-300);--amber: var(--amber-300);--mono: "IBM Plex Mono", monospace;--sans: "IBM Plex Sans", sans-serif;font-family:var(--sans);color:var(--text);-webkit-font-smoothing:antialiased}.home-landing *,.learn-screen *,.hosting-screen *,.lib-group *,.lib-row *{box-sizing:border-box}@keyframes home-spin{to{transform:rotate(360deg)}}@keyframes home-pulse{0%,to{opacity:1}50%{opacity:.35}}@keyframes home-fade{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.home-landing{padding:30px 10% 12px}.home-landing .hello{font-size:13px;color:var(--text-3);margin-bottom:5px}.home-landing .project{font-size:27px;font-weight:700;letter-spacing:-.02em;margin-bottom:24px;line-height:1.15}.home-landing .seclabel{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-4);margin:0 2px 14px}.home-landing .pnopreview{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#ffffff09;color:var(--text-4);font-size:12px;font-family:var(--mono)}.home-landing .exdoor{border:.5px solid var(--line);border-radius:18px;background:var(--panel-2);overflow:hidden;margin-bottom:15px}.home-landing .exhead{display:flex;align-items:center;gap:12px;padding:20px 22px 0;width:100%;text-align:left;background:none;border:0;font:inherit;color:inherit;cursor:pointer}.home-landing .exhead:hover .dname{text-decoration:underline}.home-landing .exhead .dic{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:21px;flex-shrink:0;background:var(--blue-soft);color:var(--blue-300)}.home-landing .exhead .grow{flex:1;min-width:0}.home-landing .exhead .dname{font-size:16.5px;font-weight:600}.home-landing .exhead .ddesc{font-size:13px;color:var(--text-3);margin-top:2px}.home-landing .exhead .open{font-size:12.5px;font-weight:600;color:var(--blue);cursor:pointer;display:flex;align-items:center;gap:5px;white-space:nowrap;background:none;border:none;font-family:inherit}.home-landing .exhead .open:hover{text-decoration:underline}.home-landing .rail{display:flex;gap:13px;padding:18px 22px 22px;overflow-x:auto}.home-landing .rail::-webkit-scrollbar{height:7px}.home-landing .rail::-webkit-scrollbar-thumb{background:#2a2a2a;border-radius:4px}.home-landing .pcard{flex-shrink:0;width:158px;cursor:pointer;background:none;border:none;padding:0;text-align:left;font-family:inherit;color:inherit}.home-landing .pthumb{width:158px;height:108px;border-radius:10px;border:.5px solid var(--line-2);overflow:hidden;position:relative;transition:.15s}.home-landing .pcard:hover .pthumb{border-color:var(--blue);transform:translateY(-3px)}.home-landing .pshot{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;background:#141414}.home-landing .pcount{position:absolute;bottom:7px;right:7px;font-size:9px;color:var(--text-2);background:#000000a6;border-radius:5px;padding:2px 7px}.home-landing .pname{font-size:13px;font-weight:600;margin-top:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-landing .allcard{flex-shrink:0;width:90px;display:flex;align-items:center}.home-landing .alltile{width:90px;height:108px;border-radius:10px;border:.5px dashed var(--line-2);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:var(--text-3);cursor:pointer;transition:.15s;background:none;font-family:inherit}.home-landing .alltile:hover{border-color:var(--blue);color:var(--blue)}.home-landing .alltile .n{font-size:18px;font-weight:700}.home-landing .alltile .l{font-size:10px}.home-landing .railempty{font-size:13px;color:var(--text-3);padding:4px 0 8px}.home-landing .ic-plan{background:var(--lime-soft);color:var(--lime-300)}.home-landing .ic-learn{background:var(--amber-soft);color:var(--amber-300)}.home-landing .doorrows{display:flex;flex-direction:column;gap:10px}.home-landing .doorrows .exdoor{margin-bottom:0}.home-landing .drow{display:flex;align-items:center;gap:14px;border:.5px solid var(--line);border-radius:14px;padding:15px 18px;background:var(--panel-2);cursor:pointer;transition:.18s;width:100%;text-align:left;font-family:inherit;color:var(--text)}.home-landing .drow:hover{border-color:var(--line-2);background:var(--panel-3);transform:translateY(-1px)}.home-landing .drow .dic{width:40px;height:40px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:19px;flex-shrink:0;background:var(--panel-3)}.home-landing .drow .dmain{flex:1;min-width:0}.home-landing .drow .dname{font-size:15px;font-weight:600;display:flex;align-items:center;gap:8px}.home-landing .drow .ddesc{font-size:12.5px;color:var(--text-3);line-height:1.45;margin-top:2px}.home-landing .drow .ddesc b{color:var(--text);font-weight:600}.home-landing .drow .dright{display:flex;align-items:center;gap:13px;flex-shrink:0}.home-landing .drow .dmeta{font-size:11.5px;color:var(--text-3);text-align:right;white-space:nowrap;line-height:1.4}.home-landing .drow .dmeta .stat{font-weight:600;color:var(--text);display:block}.home-landing .drow .arr{color:var(--text-4);font-size:16px;transition:.15s}.home-landing .drow:hover .arr{color:var(--text-2);transform:translate(3px)}.home-landing .drow.building{border-color:#9bd35a66;background:#9bd35a0d}.home-landing .drow.building .dspin{width:40px;height:40px;border-radius:11px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--green-soft)}.home-landing .drow.building .dspin:after{content:"";width:20px;height:20px;border-radius:50%;border:2.5px solid var(--green);border-top-color:transparent;animation:home-spin 1s linear infinite}.home-landing .drow.building .bstep{display:flex;align-items:center;gap:7px;margin-top:6px;font-size:11px;color:var(--text-3);font-variant-numeric:tabular-nums}.home-landing .drow.building .bflow{font-weight:600;font-variant-numeric:normal;padding:1px 7px;border-radius:6px;background:var(--green-soft);color:var(--green-300)}.home-landing .drow.building.attn .bflow{background:var(--amber-soft, rgba(224, 178, 74, .16));color:var(--amber-300)}.home-landing .drow .bbar{height:5px;background:var(--panel-3);border-radius:3px;margin-top:9px;overflow:hidden;max-width:360px}.home-landing .drow .bbar>div{height:100%;background:var(--green);border-radius:3px;transition:width .6s ease}.home-landing .drow .livedot{width:7px;height:7px;border-radius:50%;background:var(--green);display:inline-block;animation:home-pulse 1.4s ease-in-out infinite}.home-landing .drow.building.attn{border-color:#e0b24a66;background:#e0b24a0f}.home-landing .drow.building.attn .dspin{background:var(--amber-soft, rgba(224, 178, 74, .16))}.home-landing .drow.building.attn .dspin:after{border-color:var(--amber-300);border-top-color:transparent;animation:none}.home-landing .drow .livedot.warn{background:var(--amber-300)}.home-landing .drow.ready .dic.ic-ready{color:var(--blue-300)}.home-landing .cta-pill{display:inline-flex;align-items:center;white-space:nowrap;font-size:12.5px;font-weight:600;padding:8px 14px;border-radius:9px;background:var(--action-bg);color:var(--action-fg)}.home-landing .drow.ready:hover .cta-pill{filter:brightness(1.05)}.home-landing .drow.quiet{background:transparent}.home-landing .drow.quiet .dic{background:var(--panel-2);opacity:.85}.home-landing .drow.quiet .dname{color:var(--text-2)}.home-landing .drow .lines{display:inline-flex;gap:4px;margin-top:5px;justify-content:flex-end}.home-landing .drow .ln{width:16px;height:4px;border-radius:2px;background:var(--line-2)}.home-landing .drow .ln.done{background:var(--green)}.home-landing .bstatus-foot{display:flex;align-items:center;justify-content:flex-end;gap:13px;flex-wrap:wrap;padding:2px 4px 0}.home-landing .bstatus-reset{font-family:inherit;font-size:11.5px;font-weight:600;padding:6px 12px;border-radius:9px;border:.5px solid var(--amber-300);background:transparent;color:var(--amber-300);cursor:pointer;transition:.15s;white-space:nowrap}.home-landing .bstatus-reset:hover{background:#e0b24a1a}.home-head{display:flex;align-items:center;gap:13px;margin-bottom:4px}.home-head .hback{background:none;border:0;font:inherit;font-size:17px;line-height:1;color:var(--text-faint);cursor:pointer;padding:4px;transition:.15s}.home-head .hback:hover:not(:disabled){color:var(--text-strong);transform:translate(-2px)}.home-head .hback:disabled{opacity:.5;cursor:default}.home-head .hmark{width:34px;height:34px;border-radius:9px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--action-bg);color:var(--action-fg)}.home-head .htitle{font-size:22px;font-weight:700;letter-spacing:-.02em;line-height:1.15;min-width:0}.home-sec{border-top:.5px solid var(--line-subtle);margin-top:26px;padding-top:26px}.home-sechead{display:flex;align-items:center;gap:9px;margin-bottom:16px}.home-sectitle{font-size:16px;font-weight:700;letter-spacing:-.01em}.home-sectitle .count{color:var(--text-subtle);font-weight:600}.home-sectitle.empty{color:var(--text-subtle)}.home-secadd{width:21px;height:21px;border-radius:50%;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border:0;padding:0;font:inherit;font-size:15px;line-height:1;background:var(--action-bg);color:var(--action-fg);cursor:pointer;transition:.15s}.home-secadd:hover{filter:brightness(1.08)}.home-sechead .spacer{margin-left:auto}.home-livedot{width:7px;height:7px;border-radius:50%;background:var(--green-300);display:inline-block;animation:home-pulse 1.4s ease-in-out infinite}.home-livedot.warn{background:var(--amber-300)}.hbuild-card{display:flex;align-items:center;gap:18px;width:100%;text-align:left;border:.5px solid var(--line-subtle);border-radius:14px;padding:18px 20px;background:var(--surface-card);font-family:inherit;color:var(--text-strong);cursor:pointer;transition:.18s}.hbuild-card:hover{border-color:var(--line-hair);background:var(--surface-raised)}.hbuild-card.active{border-color:#9bd35a66;background:#9bd35a0d}.hbuild-card.attn{border-color:#e0b24a66;background:#e0b24a0f}.hbuild-card .hbuild-thumb{width:96px;height:62px;border-radius:8px;flex-shrink:0;overflow:hidden;display:flex;align-items:center;justify-content:center;border:.5px solid var(--line-subtle);background:var(--surface-raised)}.hbuild-card .hbuild-nothumb{padding:0 8px;font-size:10px;line-height:1.3;text-align:center;color:var(--text-subtle)}.hbuild-card .hbuild-main{display:block;flex:1;min-width:0}.hbuild-card .hbuild-title{display:flex;align-items:baseline;flex-wrap:wrap;gap:9px;font-size:15px;font-weight:600}.hbuild-card .hbuild-spinner{width:13px;height:13px;flex-shrink:0;align-self:center;border-radius:50%;border:2px solid var(--green-300);border-top-color:transparent;animation:home-spin 1s linear infinite}.hbuild-card .hbuild-state{font-family:IBM Plex Mono,monospace;font-weight:400;font-size:12.5px;color:var(--green-300)}.hbuild-card.attn .hbuild-state{color:var(--amber-300)}.hbuild-card .hbuild-dots>span{animation:hbuild-dot 1.2s ease-in-out infinite}.hbuild-card .hbuild-dots>span:nth-child(2){animation-delay:.4s}.hbuild-card .hbuild-dots>span:nth-child(3){animation-delay:.8s}@keyframes hbuild-dot{0%,60%,to{opacity:.25}30%{opacity:1}}.hbuild-card .hbuild-ready{display:block;font-size:15px;font-weight:600;color:var(--green-300)}.hbuild-card .hbuild-last{display:block;font-size:12.5px;color:var(--text-faint);margin-top:5px;line-height:1.45}.hbuild-card .hbuild-last b{color:var(--text-strong);font-weight:600}.hbuild-card .hbuild-step{display:flex;align-items:center;gap:7px;margin-top:9px;font-size:12px;color:var(--text-faint);font-variant-numeric:tabular-nums}.hbuild-card .hbuild-step .hbuild-pos{color:var(--green-300);font-weight:600}.hbuild-card.attn .hbuild-step .hbuild-pos{color:var(--amber-300)}.hbuild-card .hbuild-step .hbuild-phase{color:var(--text-strong);font-weight:600}.hbuild-card .hbuild-flow{font-weight:600;font-variant-numeric:normal;padding:1px 7px;border-radius:6px;background:var(--green-soft);color:var(--green-300)}.hbuild-card.attn .hbuild-flow{background:var(--amber-soft, rgba(224, 178, 74, .16));color:var(--amber-300)}.hbuild-card .hbuild-bar{display:block;height:4px;background:var(--surface-raised);border-radius:3px;margin-top:10px;overflow:hidden}.hbuild-card .hbuild-bar>span{display:block;height:100%;background:var(--green-300);border-radius:3px;transition:width .6s ease}.hbuild-cta{display:inline-flex;align-items:center;gap:9px;flex-shrink:0;white-space:nowrap;font-size:13px;font-weight:600;padding:9px 16px;border-radius:9px;background:var(--action-bg);color:var(--action-fg);transition:.15s}.hbuild-card:hover .hbuild-cta{filter:brightness(1.08)}.hbuild-reset{display:inline-flex;align-items:center;gap:8px;margin-top:13px;padding:0;border:0;background:none;font-family:inherit;font-size:12.5px;font-weight:500;color:var(--red-300);cursor:pointer}.hbuild-reset:hover{text-decoration:underline}.home-viewall{display:inline-flex;align-items:center;gap:9px;margin-top:16px;padding:0;border:0;background:none;font-family:inherit;font-size:13px;color:var(--text-faint);cursor:pointer;transition:.15s}.home-viewall:hover{color:var(--text-strong)}.home-landing .crumbs,.learn-screen .crumbs,.hosting-screen .crumbs{font-size:13px;color:var(--text-3);margin-bottom:20px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.home-landing .crumbs a,.learn-screen .crumbs a,.hosting-screen .crumbs a{color:var(--text-3);text-decoration:none;cursor:pointer;white-space:nowrap;background:none;border:none;font:inherit;padding:0}.home-landing .crumbs a:hover,.learn-screen .crumbs a:hover,.hosting-screen .crumbs a:hover{color:var(--text-2)}.home-landing .crumbs .sep,.learn-screen .crumbs .sep,.hosting-screen .crumbs .sep{color:var(--text-4)}.home-landing .crumbs b,.learn-screen .crumbs b,.hosting-screen .crumbs b{color:var(--text);white-space:nowrap}.home-landing .crumbs .back,.learn-screen .crumbs .back,.hosting-screen .crumbs .back{display:inline-flex;align-items:center;gap:5px;color:var(--text-2);cursor:pointer;font-weight:500;margin-right:6px;background:none;border:none;font:inherit;padding:0}.home-landing .crumbs .back:hover,.learn-screen .crumbs .back:hover,.hosting-screen .crumbs .back:hover{color:var(--text)}.learn-screen{padding:26px 40px 40px}.learn-screen .h{font-size:23px;font-weight:700;letter-spacing:-.01em}.learn-screen .hsub{font-size:14px;color:var(--text-3);line-height:1.6;max-width:680px;margin:8px 0 24px}.learn-screen .tlist{display:flex;flex-direction:column;gap:10px}.learn-screen .trow{display:flex;align-items:center;gap:14px;border:.5px solid var(--line);border-radius:13px;padding:15px 17px;background:var(--panel-2);cursor:pointer;transition:.15s;width:100%;text-align:left;color:var(--text);font-family:inherit}.learn-screen .trow:hover{border-color:var(--line-2);background:var(--panel-3);transform:translateY(-1px)}.learn-screen .trow .tic{width:42px;height:42px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:21px;flex-shrink:0;background:var(--panel-3);color:var(--text-2)}.learn-screen .trow.next .tic{color:var(--amber)}.learn-screen .trow .tbody{flex:1;min-width:0}.learn-screen .trow .tn{font-size:15.5px;font-weight:600;color:var(--text)}.learn-screen .trow .td{font-size:12.5px;color:var(--text-3);margin-top:2px}.learn-screen .trow .tt{font-size:11px;font-weight:600;color:var(--text-3);white-space:nowrap;border:.5px solid var(--line-2);border-radius:8px;padding:3px 9px}.learn-screen .trow.done .tt{color:var(--green);border-color:#9bd35a4d}.learn-screen .trow.next .tt{color:var(--amber);border-color:#ef9f2759;background:#ef9f2712}.learn-screen .trow .arrow{margin-left:auto;color:var(--text-4);font-size:18px;transition:.15s}.learn-screen .trow:hover .arrow{color:var(--text-2);transform:translate(3px)}.learn-screen .trow.soon .tn{color:var(--text-2)}.learn-screen .trow.soon .td{color:var(--text-4)}.learn-screen .trow-group{display:flex;flex-direction:column;gap:6px}.learn-screen .detected-services{display:flex;flex-direction:column;gap:6px;margin:0 4px 0 22px}.learn-screen .detected-service{display:flex;align-items:center;gap:10px;border:.5px solid var(--line-2);border-radius:10px;padding:9px 13px;background:var(--panel);font-size:12.5px}.learn-screen .detected-service .ds-tag{font-family:var(--mono);font-size:10.5px;font-weight:600;color:var(--blue);border:.5px solid rgba(110,168,254,.35);background:var(--blue-soft);border-radius:7px;padding:2px 7px;white-space:nowrap}.learn-screen .detected-service .ds-name{font-weight:600;color:var(--text)}.learn-screen .detected-service .ds-why{color:var(--text-3);font-family:var(--mono);font-size:11.5px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.learn-screen .detected-service .ds-key-set{margin-left:auto;flex-shrink:0;font-family:var(--mono);font-size:10.5px;font-weight:600;color:var(--green, #8bd450);border:.5px solid rgba(139,212,80,.35);border-radius:7px;padding:2px 7px;white-space:nowrap}.learn-screen .detected-service .ds-add-key{margin-left:auto;flex-shrink:0;font-family:inherit;font-size:11.5px;font-weight:600;color:#161616;background:var(--accent, #d7ff63);border:none;border-radius:8px;padding:3px 10px;cursor:pointer;transition:.15s}.learn-screen .detected-service .ds-add-key:hover{filter:brightness(1.05)}.learn-screen .detected-service .ds-dismiss{margin-left:auto;flex-shrink:0;font-family:inherit;font-size:11.5px;color:var(--text-3);background:transparent;border:.5px solid var(--line-2);border-radius:8px;padding:3px 10px;cursor:pointer;transition:.15s}.learn-screen .detected-service .ds-dismiss:hover{color:var(--text);border-color:var(--line);background:var(--panel-3)}.hosting-screen{padding:26px 40px 40px}.hosting-screen .htitle{display:flex;align-items:center;gap:15px;margin-bottom:24px}.hosting-screen .htitle>div{min-width:0}.hosting-screen .htitle .hic{width:54px;height:54px;border-radius:15px;background:linear-gradient(160deg,#1d1d1d,#141414);border:.5px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:26px;flex-shrink:0;color:var(--amber)}.hosting-screen .htitle .h{font-size:25px;font-weight:700;letter-spacing:-.02em}.hosting-screen .htitle .hmeta{font-size:13px;color:var(--text-3);margin-top:3px;font-family:var(--mono)}.hosting-screen .lead{font-size:15px;color:var(--text-2);line-height:1.6;max-width:680px;margin-bottom:8px}.hosting-screen .lead b{color:var(--text);font-weight:600}.hosting-screen .lead.dim{font-size:14px;color:var(--text-3);margin-bottom:26px}.hosting-screen .seclabel{font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--text-4);margin:0 2px 13px}.hosting-screen .journey{position:relative;border:.5px solid var(--line);border-radius:18px;background:linear-gradient(150deg,#161616,#0f0f0f);padding:30px 34px 26px;margin-bottom:26px;overflow:hidden}.hosting-screen .jrow{display:flex;align-items:flex-start;justify-content:center;position:relative;z-index:1}.hosting-screen .jcol{display:flex;flex-direction:column;align-items:center;gap:9px;width:170px;text-align:center}.hosting-screen .jtile{width:62px;height:62px;border-radius:16px;background:var(--panel-3);border:.5px solid var(--line-2);display:flex;align-items:center;justify-content:center;font-size:30px}.hosting-screen .jtile.lime{background:#c7f04a1f;border-color:#c7f04a66;box-shadow:0 0 0 4px #c7f04a0f}.hosting-screen .jlbl{font-size:14px;font-weight:600;color:var(--text)}.hosting-screen .jsub{font-size:12px;color:var(--text-3);line-height:1.4}.hosting-screen .jconn{flex:1;max-width:96px;display:flex;align-items:center;justify-content:center;color:var(--text-4);font-size:18px;padding-top:22px;position:relative}.hosting-screen .jconn:before{content:"";position:absolute;top:31px;left:-6px;right:-6px;height:2px;background:repeating-linear-gradient(90deg,var(--line-2) 0 5px,transparent 5px 11px)}.hosting-screen .jconn span{position:relative;z-index:1;background:#121212;padding:0 6px}.hosting-screen .jpacket{position:absolute;top:25px;width:9px;height:9px;border-radius:50%;background:var(--lime);box-shadow:0 0 10px 2px #c7f04a99;z-index:2;left:0;animation:hs-jtravel 3.6s cubic-bezier(.6,0,.4,1) infinite}@keyframes hs-jtravel{0%{left:14%;opacity:0}12%{opacity:1}88%{opacity:1}to{left:86%;opacity:0}}.home-landing .crumbs,.home-landing .hello,.home-landing .project,.home-landing .seclabel,.home-landing .drow,.home-landing .exdoor{width:100%;max-width:2200px;margin-left:auto;margin-right:auto}@media(prefers-reduced-motion:reduce){.hosting-screen .jpacket{animation:none;left:50%;opacity:.7}.home-landing .drow.building .dspin:after,.hosting-screen .deploy-spin:after,.hosting-screen .dep-step.active .dot:after{animation:none}.home-landing .drow .bbar>div{transition:none}.home-landing .drow .livedot{animation:none}}.wired-provider{border:.5px solid rgba(199,240,74,.45);border-radius:12px;background:linear-gradient(150deg,#c7f04a12,#c7f04a03);padding:12px 15px;margin:0 0 16px;display:flex;flex-direction:column;gap:4px}.wired-provider-title{font-size:14px;color:var(--text-1)}.wired-provider-detail{font-size:13px;color:var(--text-2);line-height:1.5}.hosting-screen .hosting-detected{border:.5px solid rgba(199,240,74,.45);border-radius:14px;background:linear-gradient(150deg,#c7f04a12,#c7f04a03);padding:14px 16px;margin-bottom:18px;display:flex;flex-direction:column;gap:6px}.hosting-screen .hosting-detected-title{font-size:14px;font-weight:600;color:var(--text-1)}.hosting-screen .hosting-detected-detail{font-size:13px;color:var(--text-2);line-height:1.55}.hosting-screen .hosting-detected-detail code{font-family:var(--mono, monospace);font-size:12px;background:var(--panel-3, rgba(255, 255, 255, .05));padding:1px 5px;border-radius:5px}.hosting-screen .provcard{display:flex;gap:18px;border:.5px solid var(--line-2);border-radius:16px;background:var(--panel-2);padding:20px 22px;transition:.15s}.hosting-screen .provcard.best{border-color:#c7f04a73;background:linear-gradient(150deg,#c7f04a0d,#c7f04a03)}.hosting-screen .pv-logo{width:50px;height:50px;border-radius:13px;background:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 2px 10px #0006}.hosting-screen .provbody{flex:1;min-width:0}.hosting-screen .provtop{display:flex;align-items:center;gap:10px;margin-bottom:5px;flex-wrap:wrap}.hosting-screen .provname{font-size:18px;font-weight:700}.hosting-screen .bestfit{font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#0a0a0a;background:var(--lime);border-radius:6px;padding:3px 9px;white-space:nowrap;flex-shrink:0}.hosting-screen .provdesc{font-size:13.5px;color:var(--text-2);line-height:1.55;margin-bottom:14px;max-width:560px}.hosting-screen .reasons{display:flex;flex-direction:column;gap:9px;margin-bottom:15px}.hosting-screen .reason{display:flex;align-items:flex-start;gap:10px;font-size:13.5px;color:var(--text-2);line-height:1.45}.hosting-screen .reason b{color:var(--text);font-weight:600}.hosting-screen .reason svg{margin-top:2px;flex-shrink:0}.hosting-screen .chips{display:flex;gap:8px;flex-wrap:wrap}.hosting-screen .chip{font-size:11.5px;font-weight:500;color:var(--text-2);background:var(--panel-3);border:.5px solid var(--line);border-radius:8px;padding:5px 11px}.hosting-screen .alt-toggle{display:inline-flex;align-items:center;gap:7px;margin-top:15px;font-size:13px;font-weight:600;color:var(--text-3);background:none;border:none;cursor:pointer;transition:.15s;font-family:inherit}.hosting-screen .alt-toggle:hover{color:var(--text)}.hosting-screen .alt-toggle .chev{transition:transform .2s;font-size:11px}.hosting-screen .alts{display:flex;flex-direction:column;gap:10px;margin-top:14px;animation:home-fade .25s ease}.hosting-screen .altcard{display:flex;align-items:center;gap:14px;border:.5px solid var(--line);border-radius:13px;background:var(--panel-2);padding:14px 16px;transition:.15s}.hosting-screen .altcard:hover{border-color:var(--line-2);background:var(--panel-3)}.hosting-screen .altmark{width:42px;height:42px;border-radius:11px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-weight:800;font-size:18px;color:#fff;font-family:var(--mono)}.hosting-screen .altbody{flex:1;min-width:0}.hosting-screen .altname{font-size:14.5px;font-weight:600}.hosting-screen .altdesc{font-size:12.5px;color:var(--text-3);line-height:1.45;margin-top:2px}.hosting-screen .altpick{font-size:12.5px;font-weight:600;color:var(--text-2);background:none;border:.5px solid var(--line-2);border-radius:9px;padding:8px 14px;cursor:pointer;white-space:nowrap;transition:.15s;font-family:inherit}.hosting-screen .altpick:hover{color:var(--text);border-color:var(--text-3)}.hosting-screen .faq{margin-top:14px;border:.5px solid var(--line);border-radius:14px;background:var(--panel-2);overflow:hidden}.hosting-screen .faqitem{border-bottom:.5px solid var(--line)}.hosting-screen .faqitem:last-child{border-bottom:none}.hosting-screen .faqq{width:100%;text-align:left;display:flex;align-items:center;gap:12px;padding:15px 18px;background:none;border:none;color:var(--text);font-size:14px;font-weight:600;cursor:pointer;font-family:inherit}.hosting-screen .faqq .chev{margin-left:auto;color:var(--text-4);transition:transform .2s;font-size:12px}.hosting-screen .faqq.open .chev{transform:rotate(180deg)}.hosting-screen .faqa{font-size:13.5px;color:var(--text-3);line-height:1.6;padding:0 18px 16px;max-width:640px}.setup-topic .faq{margin-top:22px;border:none;border-top:.5px solid var(--line);border-radius:0;background:transparent}.setup-topic .seclabel{margin-top:40px;color:var(--text-4)}.setup-topic .faqq{color:var(--text-2);font-weight:500;font-size:13.5px;padding:13px 4px}.setup-topic .faqa{padding:0 4px 14px}.hosting-screen .setup-ill{position:relative;border:.5px solid var(--line);border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.02),transparent);padding:30px 28px;margin-top:2px;overflow:hidden}.hosting-screen .setup-ill .ill-cap{margin-top:18px;text-align:center;font-size:12.5px;color:var(--text-3)}.hosting-screen .ill-split{display:flex;align-items:stretch;gap:16px}.hosting-screen .isplit{flex:1;border:.5px solid var(--line);border-radius:14px;padding:16px 18px;background:#ffffff03}.hosting-screen .isplit.after{border-color:#c7f04a59;background:#c7f04a0d}.hosting-screen .isplit-tag{font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--text-4);margin-bottom:12px}.hosting-screen .isplit.after .isplit-tag{color:#c7f04a}.hosting-screen .isplit-row{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--text-2);padding:6px 0}.hosting-screen .isplit-row .mk{width:18px;text-align:center;color:var(--text-4)}.hosting-screen .isplit.after .isplit-row .mk{color:#c7f04a}.hosting-screen .isplit-arrow{align-self:center;color:var(--text-4);font-size:18px}.hosting-screen .ill-stack{display:flex;flex-direction:column;gap:10px;max-width:540px;margin:0 auto}.hosting-screen .istack-row{display:flex;align-items:center;gap:14px;border:.5px solid var(--line);border-radius:12px;padding:12px 16px;background:#ffffff03}.hosting-screen .istack-row.lime{border-color:#c7f04a66;background:#c7f04a0f}.hosting-screen .istack-emoji{font-size:22px;width:28px;text-align:center}.hosting-screen .istack-lbl{font-weight:600;font-size:14px;color:var(--text)}.hosting-screen .istack-sub{font-size:12.5px;color:var(--text-3);margin-left:auto}.hosting-screen .ill-orbit{display:flex;align-items:center;justify-content:center;gap:34px;flex-wrap:wrap}.hosting-screen .iorbit-center{display:flex;flex-direction:column;align-items:center;gap:10px}.hosting-screen .iorbit-tile{width:76px;height:76px;border-radius:18px;display:flex;align-items:center;justify-content:center;font-size:34px;background:#c7f04a1f;border:.5px solid rgba(199,240,74,.4);box-shadow:0 0 0 5px #c7f04a0d}.hosting-screen .iorbit-lbl{font-size:14px;font-weight:600;color:var(--text)}.hosting-screen .iorbit-sats{display:flex;flex-direction:column;gap:10px}.hosting-screen .iorbit-sat{display:flex;align-items:center;gap:10px;border:.5px solid var(--line);border-radius:999px;padding:8px 16px 8px 12px;font-size:13px;color:var(--text-2);background:#ffffff03}.hosting-screen .ill-bars{display:flex;align-items:flex-end;justify-content:center;gap:18px;height:148px}.hosting-screen .ibar{width:46px;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:8px}.hosting-screen .ibar-fill{width:100%;border-radius:7px 7px 3px 3px;background:#ffffff14;min-height:8px}.hosting-screen .ibar.lime .ibar-fill{background:#c7f04a8c}.hosting-screen .ibar-lbl{font-size:11px;color:var(--text-3);text-align:center}.hosting-screen .ill-emblem{display:flex;flex-direction:column;align-items:center;gap:18px;text-align:center}.hosting-screen .iemblem-tile{width:88px;height:88px;border-radius:22px;display:flex;align-items:center;justify-content:center;font-size:42px;background:#c7f04a1f;border:.5px solid rgba(199,240,74,.4);box-shadow:0 0 0 6px #c7f04a0d}.hosting-screen .iemblem-chips{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.hosting-screen .iemblem-chip{border:.5px solid var(--line);border-radius:999px;padding:7px 14px;font-size:12.5px;color:var(--text-2);background:#ffffff03}.hosting-screen .ill-channels{display:flex;flex-direction:column;gap:18px;max-width:560px;margin:0 auto}.hosting-screen .ichan{display:flex;align-items:center;gap:16px}.hosting-screen .ichan-lbl{width:92px;font-size:13px;font-weight:600;color:var(--text-2);text-align:right}.hosting-screen .ichan-track{flex:1;display:flex;align-items:center;gap:10px}.hosting-screen .ichan-dot{width:12px;height:12px;border-radius:50%;background:var(--line)}.hosting-screen .ichan.on .ichan-lbl{color:#c7f04a}.hosting-screen .ichan.on .ichan-dot{background:#c7f04a99}.hosting-screen .ichan-line{flex:1;height:.5px;background:var(--line)}.hosting-screen .ask{margin-top:26px}.hosting-screen .askrow{display:flex;gap:10px;align-items:stretch}.hosting-screen .askrow input{flex:1;font-family:inherit;font-size:14px;color:var(--text);background:var(--panel-2);border:.5px solid var(--line-2);border-radius:12px;padding:14px 16px;outline:none;transition:.15s}.hosting-screen .askrow input::placeholder{color:var(--text-4)}.hosting-screen .askrow input:focus{border-color:var(--blue)}.hosting-screen .askrow button{width:50px;border-radius:12px;background:var(--panel-3);border:.5px solid var(--line-2);color:var(--text-2);font-size:17px;cursor:pointer;transition:.15s}.hosting-screen .askrow button:hover{background:#252525;color:var(--text)}.hosting-screen .asknote{font-size:11.5px;color:var(--text-4);margin-top:9px;display:flex;align-items:center;gap:6px}.hosting-screen .askans{display:flex;gap:11px;margin-top:14px;border:.5px solid rgba(133,183,235,.25);background:#85b7eb0f;border-radius:13px;padding:14px 16px;animation:home-fade .25s ease}.hosting-screen .askav{font-family:var(--mono);font-size:12px;font-weight:700;color:var(--lime);flex-shrink:0;width:26px;height:26px;border-radius:8px;background:#000;display:flex;align-items:center;justify-content:center}.hosting-screen .askans .at{font-size:13.5px;color:var(--text-2);line-height:1.6}.hosting-screen .setup-extlink{display:inline-flex;align-items:center;gap:8px;margin-top:10px;padding:9px 14px;border-radius:10px;font-size:13.5px;font-weight:600;text-decoration:none;color:var(--blue);background:var(--panel-2);border:.5px solid var(--line-2);transition:.15s}.hosting-screen .setup-extlink:hover{background:var(--panel-3);border-color:var(--blue)}.hosting-screen .setup-extlink-glyph{font-size:13px;opacity:.85}.hosting-screen .setup-note{margin-top:14px;padding:14px 16px;border:.5px solid var(--line-2);background:var(--panel-2);border-radius:13px;font-size:13.5px;line-height:1.6;color:var(--text-2)}.hosting-screen .setup-note p{margin:0}.hosting-screen .setup-note p+p{margin-top:10px}.hosting-screen .setup-note b{color:var(--text)}.hosting-screen .setup-note-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}.hosting-screen .setup-note-links .setup-extlink{margin-top:6px}.hosting-screen .cta-wrap{margin-top:28px}.hosting-screen .cta{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;font-size:16px;font-weight:700;color:var(--action-fg);background:var(--action-bg);border:none;border-radius:14px;padding:18px;cursor:pointer;transition:.15s;font-family:inherit}.hosting-screen .cta:hover{background:#d4f76a;transform:translateY(-1px)}.hosting-screen .cta .ce{font-size:18px}.hosting-screen .cta-note{font-size:12.5px;color:var(--text-4);text-align:center;margin-top:13px;display:flex;align-items:center;justify-content:center;gap:6px}.hosting-screen .cta-done,.run-locally-screen .cta-done{display:flex;align-items:center;gap:12px;width:100%;border:.5px solid rgba(155,211,90,.4);background:#9bd35a0f;border-radius:14px;padding:16px 18px}.hosting-screen .cta-done-check,.run-locally-screen .cta-done-check{display:inline-flex;align-items:center;gap:10px;font-size:15px;font-weight:700;color:var(--green)}.hosting-screen .cta-done-check .ce,.run-locally-screen .cta-done-check .ce{font-size:18px}.hosting-screen .cta-done-actions,.run-locally-screen .cta-done-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.hosting-screen .cta-done .lf-back,.run-locally-screen .cta-done .lf-back{font-size:13.5px;font-weight:600;color:#0a0a0a;background:var(--lime);border:none;border-radius:11px;padding:11px 18px;cursor:pointer;transition:.15s;white-space:nowrap;font-family:inherit}.hosting-screen .cta-done .lf-back:hover,.run-locally-screen .cta-done .lf-back:hover{background:#d4f76a}.hosting-screen .cta-revert,.run-locally-screen .cta-revert,.hosting-screen .live-foot .lf-revert{font-size:13px;font-weight:600;color:var(--text-4);background:transparent;border:none;border-radius:11px;padding:11px 12px;cursor:pointer;transition:.15s;white-space:nowrap;font-family:inherit}.hosting-screen .cta-revert:hover,.run-locally-screen .cta-revert:hover,.hosting-screen .live-foot .lf-revert:hover{color:var(--text-1);background:#7f7f7f1f}.hosting-screen .reason-foot{font-size:12.5px;line-height:1.5;color:var(--text-4);margin:12px 0 0;padding-top:11px;border-top:1px solid var(--border-1, rgba(255, 255, 255, .07))}.hosting-screen .flowbar{display:flex;align-items:center;gap:8px;margin-bottom:26px;font-size:12px;font-family:var(--mono)}.hosting-screen .flowbar .fstep{display:flex;align-items:center;gap:7px;color:var(--text-4);white-space:nowrap}.hosting-screen .flowbar .fstep .fn{width:20px;height:20px;border-radius:50%;border:1.5px solid var(--line-2);display:flex;align-items:center;justify-content:center;font-size:10.5px;color:var(--text-4)}.hosting-screen .flowbar .fstep.done .fn{background:var(--green);border-color:var(--green);color:#0a0a0a}.hosting-screen .flowbar .fstep.active{color:var(--text)}.hosting-screen .flowbar .fstep.active .fn{border-color:var(--lime);color:var(--lime)}.hosting-screen .flowbar .fsep{flex:1;max-width:38px;height:1px;background:var(--line-2)}.hosting-screen .panel{border:.5px solid var(--line);border-radius:18px;background:var(--panel-2);padding:26px 28px}.hosting-screen .panel .ph{font-size:19px;font-weight:700;letter-spacing:-.01em;margin-bottom:6px;display:flex;align-items:center;gap:10px}.hosting-screen .panel .psub{font-size:14px;color:var(--text-3);line-height:1.55;margin-bottom:22px;max-width:600px}.hosting-screen .connect-box{border:.5px solid var(--line-2);border-radius:14px;background:var(--panel-3);padding:22px;margin-bottom:18px}.hosting-screen .connect-box .cbtitle{display:flex;align-items:center;gap:12px;margin-bottom:18px}.hosting-screen .connect-box .cbtitle .pv-logo{width:42px;height:42px}.hosting-screen .connect-box .cbt{font-size:15px;font-weight:600}.hosting-screen .connect-box .cbd{font-size:12.5px;color:var(--text-3);margin-top:2px}.hosting-screen .grant{display:flex;flex-direction:column;gap:11px;margin-bottom:20px}.hosting-screen .grantrow{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:var(--text-2);line-height:1.4}.hosting-screen .grantrow svg{margin-top:2px;flex-shrink:0}.hosting-screen .grantrow b{color:var(--text);font-weight:600}.hosting-screen .auth-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;font-size:14.5px;font-weight:700;color:#fff;background:#000;border:.5px solid var(--line-2);border-radius:12px;padding:14px;cursor:pointer;transition:.15s;font-family:inherit}.hosting-screen .auth-btn:hover{background:#111;border-color:var(--text-4)}.hosting-screen .auth-row{display:flex;gap:11px;margin-top:11px}.hosting-screen .auth-ghost{flex:1;font-size:13px;font-weight:600;color:var(--text-3);background:none;border:.5px solid var(--line-2);border-radius:11px;padding:12px;cursor:pointer;transition:.15s;font-family:inherit}.hosting-screen .auth-ghost:hover{color:var(--text);border-color:var(--text-3)}.hosting-screen .reassure{font-size:12.5px;color:var(--text-4);line-height:1.55;margin-top:18px;display:flex;align-items:flex-start;gap:7px}.hosting-screen .deploy-head{display:flex;align-items:center;gap:14px;margin-bottom:20px}.hosting-screen .deploy-spin{width:46px;height:46px;border-radius:13px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--green-soft)}.hosting-screen .deploy-spin:after{content:"";width:23px;height:23px;border-radius:50%;border:2.5px solid var(--green);border-top-color:transparent;animation:home-spin 1s linear infinite}.hosting-screen .deploy-t{font-size:17px;font-weight:700}.hosting-screen .deploy-d{font-size:13px;color:var(--text-3);margin-top:2px}.hosting-screen .dep-bar{height:6px;background:var(--panel-3);border-radius:4px;overflow:hidden;margin-bottom:22px}.hosting-screen .dep-bar>div{height:100%;background:var(--green);border-radius:4px;transition:width .5s ease}.hosting-screen .dep-steps{display:flex;flex-direction:column;gap:2px}.hosting-screen .dep-step{display:flex;align-items:flex-start;gap:13px;padding:9px 0;position:relative}.hosting-screen .dep-step .dot{width:21px;height:21px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;z-index:1;background:var(--panel-3);border:1.5px solid var(--line-2)}.hosting-screen .dep-step:not(:last-child):before{content:"";position:absolute;left:10px;top:26px;bottom:-7px;width:1px;background:var(--line-2)}.hosting-screen .dep-step.done .dot{background:var(--green);border-color:var(--green)}.hosting-screen .dep-step.done:not(:last-child):before{background:#9bd35a66}.hosting-screen .dep-step.active .dot{border:none;background:transparent}.hosting-screen .dep-step.active .dot:after{content:"";width:19px;height:19px;border-radius:50%;border:2px solid var(--green);border-top-color:transparent;animation:home-spin 1s linear infinite}.hosting-screen .dep-step .sl{font-size:14px;color:var(--text-4);line-height:1.4;padding-top:1px}.hosting-screen .dep-step.done .sl{color:var(--text-3)}.hosting-screen .dep-step.active .sl{color:var(--text);font-weight:600}.hosting-screen .live-hero{text-align:center;padding:6px 0 22px}.hosting-screen .live-hero .lh-em{font-size:42px}.hosting-screen .live-hero .lh-t{font-size:23px;font-weight:800;letter-spacing:-.02em;margin-top:10px}.hosting-screen .live-hero .lh-d{font-size:14px;color:var(--text-3);margin-top:7px}.hosting-screen .url-card{display:flex;align-items:center;gap:14px;border:.5px solid rgba(155,211,90,.35);background:#9bd35a0d;border-radius:14px;padding:16px 18px;margin-bottom:14px}.hosting-screen .url-card .ucglobe{font-size:22px}.hosting-screen .url-card .uc-l{font-size:11px;color:var(--text-4);text-transform:uppercase;letter-spacing:.07em;font-weight:700}.hosting-screen .url-card .uc-u{font-family:var(--mono);font-size:15px;color:var(--text);margin-top:3px;white-space:nowrap}.hosting-screen .url-card .uc-actions{margin-left:auto;display:flex;gap:9px;flex-shrink:0}.hosting-screen .btn-copy,.hosting-screen .btn-visit{font-size:13px;font-weight:600;border-radius:10px;padding:10px 15px;cursor:pointer;transition:.15s;white-space:nowrap;border:.5px solid var(--line-2);font-family:inherit}.hosting-screen .btn-copy{color:var(--text-2);background:var(--panel-3)}.hosting-screen .btn-copy:hover{color:var(--text)}.hosting-screen .btn-visit{color:#0a0a0a;background:var(--lime);border-color:var(--lime)}.hosting-screen .btn-visit:hover{background:#d4f76a}.hosting-screen .domain-row{display:flex;align-items:center;gap:13px;border:.5px solid var(--line);border-radius:13px;background:var(--panel-2);padding:15px 17px;margin-bottom:14px}.hosting-screen .domain-row .dre{font-size:19px}.hosting-screen .domain-row .drt{font-size:13.5px;font-weight:600}.hosting-screen .domain-row .drd{font-size:12px;color:var(--text-3);margin-top:1px}.hosting-screen .domain-row .drbtn{margin-left:auto;font-size:12.5px;font-weight:600;color:var(--blue);background:#85b7eb1a;border:.5px solid rgba(133,183,235,.25);border-radius:9px;padding:8px 14px;cursor:pointer;transition:.15s;font-family:inherit}.hosting-screen .domain-row .drbtn:hover{background:#85b7eb29;color:var(--text)}.hosting-screen .live-foot{display:flex;align-items:center;gap:12px;margin-top:20px}.hosting-screen .live-foot .done-pill{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--green);white-space:nowrap}.hosting-screen .live-foot .lf-back{margin-left:auto;font-size:13.5px;font-weight:600;color:#0a0a0a;background:var(--lime);border:none;border-radius:11px;padding:11px 18px;cursor:pointer;transition:.15s;white-space:nowrap;font-family:inherit}.hosting-screen .live-foot .lf-back:hover{background:#d4f76a}.hosting-screen .conn-card{display:flex;align-items:center;gap:16px;border:.5px solid rgba(155,211,90,.4);background:#9bd35a0f;border-radius:16px;padding:16px 18px;margin-bottom:28px}.hosting-screen .conn-card .pv-logo{width:44px;height:44px}.hosting-screen .conn-body{flex:1;min-width:0}.hosting-screen .conn-top{display:flex;align-items:center;gap:11px}.hosting-screen .conn-name{font-size:16px;font-weight:700}.hosting-screen .conn-live{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:600;color:var(--green);font-family:var(--mono)}.hosting-screen .conn-live .lbdot{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px #9bd35a2e}.hosting-screen .conn-acct{font-size:12.5px;color:var(--text-3);margin-top:3px}.hosting-screen .conn-acct b{color:var(--text-2);font-weight:600;font-family:var(--mono)}.hosting-screen .conn-disc{font-size:12.5px;font-weight:600;color:var(--text-3);background:none;border:.5px solid var(--line-2);border-radius:9px;padding:9px 14px;cursor:pointer;white-space:nowrap;transition:.15s;font-family:inherit}.hosting-screen .conn-disc:hover{color:#e98b8b;border-color:#e98b8b66}.hosting-screen .dep-card{border:.5px solid var(--line);border-radius:14px;background:var(--panel-2);overflow:hidden}.hosting-screen .depc-row{display:flex;align-items:center;gap:13px;padding:16px 18px}.hosting-screen .depc-dot{width:9px;height:9px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px #9bd35a29;flex-shrink:0}.hosting-screen .depc-main{flex:1;min-width:0}.hosting-screen .depc-t{font-size:14px;font-weight:600}.hosting-screen .depc-d{font-size:12.5px;color:var(--text-3);margin-top:2px}.hosting-screen .depc-btn{font-size:12.5px;font-weight:600;color:var(--text-2);background:var(--panel-3);border:.5px solid var(--line-2);border-radius:9px;padding:9px 15px;cursor:pointer;white-space:nowrap;transition:.15s;font-family:inherit}.hosting-screen .depc-btn:hover{color:var(--text);border-color:var(--text-3)}.hosting-screen .live-banner{display:flex;align-items:center;gap:14px;border:.5px solid rgba(155,211,90,.4);background:#9bd35a0f;border-radius:16px;padding:18px 20px;margin-bottom:24px}.hosting-screen .live-banner .lbdot{width:9px;height:9px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px #9bd35a2e;flex-shrink:0}.hosting-screen .live-banner .lbt{font-size:14.5px;font-weight:600}.hosting-screen .live-banner .lbu{font-family:var(--mono);font-size:12.5px;color:var(--green);margin-top:2px}.hosting-screen .live-banner .lbview{margin-left:auto;font-size:12.5px;font-weight:600;color:var(--green);background:#9bd35a1f;border:.5px solid rgba(155,211,90,.3);border-radius:9px;padding:8px 14px;cursor:pointer;text-decoration:none;font-family:inherit}.run-locally-screen .seclabel{font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--text-4);margin:0 2px 11px}.run-locally-screen .rl-loading{color:var(--text-3);font-size:14px;padding:18px 2px}.run-locally-screen .setup-ai-assist{margin-bottom:24px}.run-locally-screen .rl-sec{margin-bottom:26px}.run-locally-screen .rl-prereqs,.run-locally-screen .rl-notes{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.run-locally-screen .rl-prereq{display:flex;flex-direction:column;gap:3px;border:.5px solid var(--line);border-radius:11px;background:var(--panel-2);padding:12px 15px}.run-locally-screen .rl-prereq-label{font-size:13.5px;font-weight:600;color:var(--text)}.run-locally-screen .rl-prereq-detail{font-size:12.5px;color:var(--text-3);line-height:1.5}.run-locally-screen .rl-load-steps{margin:0;padding:14px 16px 14px 38px;border:.5px solid var(--line);border-radius:11px;background:var(--panel-2);list-style:decimal outside;display:flex;flex-direction:column;gap:9px}.run-locally-screen .rl-load-step{font-size:13px;color:var(--text-2);line-height:1.55;padding-left:4px}.run-locally-screen .rl-load-step::marker{color:var(--text-4);font-weight:700}.run-locally-screen .rl-load-target{margin-top:10px;display:flex;flex-direction:column;gap:6px}.run-locally-screen .rl-load-target-label{font-size:12px;font-weight:600;color:var(--text-3)}.run-locally-screen .rl-cmd,.libraries-screen .rl-cmd,.lib-row .rl-cmd{display:flex;align-items:center;gap:10px;border:.5px solid var(--line);border-radius:11px;background:var(--panel-3);padding:11px 12px 11px 15px}.run-locally-screen .rl-cmd-text,.libraries-screen .rl-cmd-text,.lib-row .rl-cmd-text{flex:1;font-family:var(--mono);font-size:13px;color:var(--lime);overflow-x:auto;white-space:pre}.run-locally-screen .rl-copy,.libraries-screen .rl-copy,.lib-row .rl-copy{flex-shrink:0;font-size:11.5px;font-weight:600;color:var(--text-2);background:var(--panel);border:.5px solid var(--line);border-radius:8px;padding:6px 12px;cursor:pointer;font-family:inherit;transition:.15s}.run-locally-screen .rl-copy:hover,.libraries-screen .rl-copy:hover,.lib-row .rl-copy:hover{color:var(--text);border-color:var(--line-2)}.run-locally-screen .rl-reachable{font-size:13.5px;color:var(--text-2);line-height:1.6}.run-locally-screen .rl-url{color:var(--blue);text-decoration:none;font-family:var(--mono);font-size:13px}.run-locally-screen .rl-url:hover{text-decoration:underline}.run-locally-screen .rl-note{font-size:12.5px;color:var(--text-3);line-height:1.55}.run-locally-screen .cta-wrap{margin-top:28px}.run-locally-screen .cta{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;font-size:15px;font-weight:700;color:var(--action-fg);background:var(--action-bg);border:none;border-radius:14px;padding:16px;cursor:pointer;transition:.15s;font-family:inherit}.run-locally-screen .cta:hover{background:#d4f76a;transform:translateY(-1px)}.learn-screen .setup-libraries-section{margin-top:26px}.learn-screen .setup-libraries-section .seclabel{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-2);margin-bottom:10px}.libraries-screen .lib-loading,.libraries-screen .lib-empty-body{font-size:13.5px;color:var(--text-2);line-height:1.6}.libraries-screen .lib-empty{border:.5px solid var(--line);border-radius:12px;background:var(--panel-3);padding:22px;margin-top:8px}.libraries-screen .lib-empty-title{font-size:15px;font-weight:600;color:var(--text);margin-bottom:6px}.libraries-screen .lib-searchbar{margin:4px 0 16px}.libraries-screen .lib-search{width:100%;box-sizing:border-box;font-size:13.5px;font-family:inherit;color:var(--text);background:var(--panel-3);border:.5px solid var(--line);border-radius:10px;padding:10px 14px}.libraries-screen .lib-search:focus{outline:none;border-color:var(--line-2)}.libraries-screen .lib-groups{display:flex;flex-direction:column;gap:12px}.lib-group{border:.5px solid var(--line);border-radius:12px;background:var(--panel-2);overflow:hidden}.lib-group-head{display:flex;align-items:center;gap:10px;width:100%;padding:13px 15px;background:transparent;border:none;cursor:pointer;font-family:inherit;text-align:left}.lib-group-head:hover{background:var(--panel-3)}.lib-group-icon{display:inline-flex;color:var(--text-2)}.lib-group-title{font-size:14px;font-weight:600;color:var(--text)}.lib-group-count{font-size:12px;color:var(--text-2)}.lib-group-path{flex:1;font-family:var(--mono);font-size:11.5px;color:var(--text-3, var(--text-2));text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lib-group-chevron{font-size:12px;color:var(--text-2)}.lib-rows{display:flex;flex-direction:column;border-top:.5px solid var(--line)}.lib-row{display:flex;flex-direction:column;gap:8px;padding:14px 16px}.lib-row+.lib-row{border-top:.5px solid var(--line)}.lib-head{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.lib-name{font-size:14px;font-weight:600;color:var(--text);font-family:var(--mono)}.lib-version{font-size:12px;font-family:var(--mono);color:var(--text-2)}.lib-kind{font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:2px 7px;border-radius:6px;background:var(--panel-3);color:var(--text-2);border:.5px solid var(--line)}.lib-kind.dev{color:#c9a227}.lib-outdated{font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:2px 7px;border-radius:6px;background:#d6606029;color:#d66060;border:.5px solid rgba(214,96,96,.4)}.lib-desc{font-size:13px;color:var(--text);line-height:1.55}.lib-desc.muted{color:var(--text-2);font-style:italic}.lib-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:12px;color:var(--text-2)}.lib-tag{padding:2px 8px;border-radius:6px;background:var(--panel-3);border:.5px solid var(--line)}.lib-docs{color:var(--lime);text-decoration:none}.lib-docs:hover{text-decoration:underline}.learn-screen .setup-addrow{margin-top:22px;padding:16px 18px;border:.5px dashed var(--line-2);border-radius:13px;background:var(--panel-2);display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.learn-screen .setup-addrow-copy{font-size:13px;color:var(--text-3);line-height:1.5;max-width:420px}.learn-screen .setup-addrow-btns{display:flex;gap:10px;flex-shrink:0}.learn-screen .setup-addbtn{font-family:inherit;font-size:13px;font-weight:600;color:var(--text);background:var(--panel-3);border:.5px solid var(--line-2);border-radius:9px;padding:9px 14px;cursor:pointer;transition:.15s;white-space:nowrap}.learn-screen .setup-addbtn:hover{border-color:var(--blue);transform:translateY(-1px)}.learn-screen .setup-addbtn-ask{color:var(--blue);background:var(--blue-soft);border-color:var(--blue-300)}.learn-screen .atf-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:40}.learn-screen .atf-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:41;width:min(440px,calc(100vw - 48px));background:var(--panel);border:.5px solid var(--line-2);border-radius:16px;padding:24px;box-shadow:0 18px 48px #0006}.learn-screen .atf-title{font-size:17px;font-weight:700;color:var(--text)}.learn-screen .atf-lead{font-size:13px;color:var(--text-3);line-height:1.55;margin:8px 0 18px}.learn-screen .atf-field{display:block;margin-bottom:14px}.learn-screen .atf-label{display:block;font-size:12px;font-weight:600;color:var(--text-2);margin-bottom:6px}.learn-screen .atf-optional{font-weight:400;color:var(--text-4)}.learn-screen .atf-input{width:100%;box-sizing:border-box;font-family:inherit;font-size:14px;color:var(--text);background:var(--panel-2);border:.5px solid var(--line-2);border-radius:9px;padding:10px 12px;transition:.15s}.learn-screen .atf-input:focus{outline:none;border-color:var(--blue)}.learn-screen .atf-textarea{resize:vertical;min-height:44px;line-height:1.5}.learn-screen .atf-error{font-size:12.5px;color:var(--amber);margin:-4px 0 12px}.learn-screen .atf-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:6px}.learn-screen .atf-btn{font-family:inherit;font-size:13px;font-weight:600;border-radius:9px;padding:9px 16px;cursor:pointer;transition:.15s;border:.5px solid var(--line-2)}.learn-screen .atf-btn:disabled{opacity:.5;cursor:default}.learn-screen .atf-btn-ghost{color:var(--text-2);background:transparent}.learn-screen .atf-btn-ghost:hover:not(:disabled){background:var(--panel-3)}.learn-screen .atf-btn-primary{color:var(--action-fg);background:var(--action-bg);border-color:transparent}.learn-screen .atf-btn-primary:hover:not(:disabled){transform:translateY(-1px)}.hosting-screen .real-token-label{display:block;font-size:12px;font-weight:600;color:var(--text-2);margin:14px 0 6px}.hosting-screen .real-token-input{width:100%;box-sizing:border-box;padding:10px 12px;font-size:14px;font-family:inherit;color:var(--text-1);background:var(--panel-2);border:1px solid var(--border-1);border-radius:8px;margin-bottom:14px}.hosting-screen .real-token-input:focus{outline:none;border-color:var(--blue-300)}.hosting-screen .auth-btn:disabled{opacity:.5;cursor:not-allowed}.hosting-screen .real-error{background:color-mix(in srgb,var(--red, #e5484d) 12%,transparent);border:1px solid color-mix(in srgb,var(--red, #e5484d) 40%,transparent);border-radius:10px;padding:14px 16px;margin-bottom:16px}.hosting-screen .real-error-title{font-weight:600;color:var(--red, #e5484d);margin-bottom:4px}.hosting-screen .real-error-msg{font-size:13px;color:var(--text-2);word-break:break-word}.hosting-screen .dep-bar-indeterminate{width:40%;height:100%;background:var(--green);border-radius:4px;animation:real-provision-slide 1.1s ease-in-out infinite}@keyframes real-provision-slide{0%{transform:translate(-100%)}to{transform:translate(250%)}}.concept-term-wrap{position:relative;display:inline}.concept-term{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;padding:0;margin:0;font:inherit;color:inherit;cursor:pointer;text-decoration:underline dotted;text-underline-offset:2px;text-decoration-color:var(--accent, #6b8afd)}.concept-term:hover,.concept-term[aria-expanded=true]{color:var(--accent, #6b8afd)}.concept-popover{position:fixed;z-index:1000;display:block;width:300px;max-width:min(300px,80vw);padding:12px 14px;background:var(--surface, #1b1f2a);border:1px solid var(--border, #2c3242);border-radius:10px;box-shadow:0 8px 28px #00000059;text-align:left;white-space:normal;cursor:default}.concept-popover-term{display:block;font-weight:600;font-size:14px;color:var(--text-primary, #e8ebf2)}.concept-popover-cat{display:inline-block;margin:2px 0 6px;font-size:11px;letter-spacing:.02em;text-transform:uppercase;color:var(--text-tertiary, #8a92a6)}.concept-popover-body{display:block}.learn-screen .concepts-nudge{margin:0 0 18px;padding:12px 14px;font-size:13px;line-height:1.6;color:var(--text-secondary, #b6bdcc);background:var(--surface-muted, rgba(107, 138, 253, .08));border:1px solid var(--border, #2c3242);border-radius:10px}.learn-screen .concepts-nudge-link{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;padding:0;font:inherit;color:var(--accent, #6b8afd);cursor:pointer;text-decoration:underline}.setup-screen{--bg: var(--surface-page);--panel-2: var(--surface-card);--panel-3: var(--surface-raised);--inset: #0d0d0d;--line: var(--line-subtle);--line-2: var(--line-hair);--text: var(--text-strong);--text-2: var(--text-body);--text-3: var(--text-faint);--text-4: var(--text-subtle);--lime: var(--lime-300);--green: var(--green-300);--blue: var(--blue-300);--amber: var(--amber-300);--indigo: var(--indigo-300);--mono: "IBM Plex Mono", monospace;--sans: "IBM Plex Sans", sans-serif;--accent: var(--blue-300);--accent-soft: var(--blue-soft);background:var(--bg);font-family:var(--sans);color:var(--text);-webkit-font-smoothing:antialiased;padding:18px 28px 50px}.setup-screen.accent-blue{--accent: var(--blue-300);--accent-soft: var(--blue-soft)}.setup-screen.accent-amber{--accent: var(--amber-300);--accent-soft: var(--amber-soft)}.setup-screen.accent-green{--accent: var(--green-300);--accent-soft: var(--green-soft)}.setup-screen.accent-indigo{--accent: var(--indigo-300);--accent-soft: var(--indigo-soft)}.setup-screen *,.setup-screen *:before,.setup-screen *:after{box-sizing:border-box}.setup-screen .su-wrap{max-width:760px;margin:0 auto}.setup-screen .su-crumbs{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--text-3);max-width:760px;margin:0 auto 18px}.setup-screen .su-crumbs .back,.setup-screen .su-crumbs button{background:none;border:none;cursor:pointer;color:var(--text-3);font:inherit;padding:0}.setup-screen .su-crumbs button:hover{color:var(--text-2)}.setup-screen .su-crumbs .sep{color:var(--text-4)}.setup-screen .su-crumbs b{color:var(--text-2);font-weight:600}.setup-screen .su-shead{display:flex;align-items:flex-start;gap:15px;margin-bottom:20px}.setup-screen .su-badge{width:48px;height:48px;border-radius:13px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--accent-soft);color:var(--accent)}.setup-screen .su-title{font-size:22px;font-weight:700;letter-spacing:-.02em;display:flex;align-items:center;gap:11px}.setup-screen .su-chip{font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;border-radius:6px;padding:3px 8px;transform:translateY(-2px);display:inline-flex;align-items:center;gap:5px}.setup-screen .su-chip.notset{color:var(--text-3);background:var(--panel-3);border:.5px solid var(--line-2)}.setup-screen .su-chip.connected{color:var(--green);background:var(--green-soft);border:.5px solid color-mix(in srgb,var(--green) 30%,transparent)}.setup-screen .su-via{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;color:var(--text-3);font-family:var(--mono);margin-top:4px}.setup-screen .su-via b{color:var(--accent);font-weight:600}.setup-screen .su-lead{font-size:13.5px;color:var(--text-3);line-height:1.5;margin-top:9px}.setup-screen .su-explain{border:.5px solid var(--line);border-radius:16px;background:var(--panel-2);padding:20px 22px;margin-bottom:18px}.setup-screen .su-eh{font-size:14.5px;font-weight:700;letter-spacing:-.01em;display:flex;align-items:center;gap:9px}.setup-screen .su-q{width:22px;height:22px;border-radius:7px;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;flex-shrink:0}.setup-screen .su-lede{font-size:13px;color:var(--text-2);line-height:1.55;margin-top:11px}.setup-screen .su-lede b{color:var(--text);font-weight:600}.setup-screen .su-erows{display:flex;flex-direction:column;gap:2px;margin-top:16px}.setup-screen .su-erow{display:flex;align-items:flex-start;gap:13px;padding:12px 0;border-top:.5px solid var(--line)}.setup-screen .su-en{width:30px;height:30px;border-radius:9px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--panel-3);color:var(--accent)}.setup-screen .su-et{flex:1}.setup-screen .su-et b{font-size:13.5px;font-weight:600}.setup-screen .su-et span{display:block;font-size:12.5px;color:var(--text-3);line-height:1.5;margin-top:2px}.setup-screen .su-et span em{color:var(--text-2);font-style:normal;font-weight:500}.setup-screen .su-why{margin-top:16px;border:.5px solid var(--line);border-radius:13px;background:var(--inset);padding:15px 16px}.setup-screen .su-wh{font-size:12px;font-weight:700;color:var(--text-2);display:flex;align-items:center;gap:8px;margin-bottom:12px}.setup-screen .su-wh svg{color:var(--accent)}.setup-screen .su-whyrow{display:flex;align-items:flex-start;gap:11px}.setup-screen .su-whyrow+.su-whyrow{margin-top:10px}.setup-screen .su-wc{width:18px;height:18px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}.setup-screen .su-whyrow p{font-size:12.5px;color:var(--text-2);line-height:1.5}.setup-screen .su-whyrow p b{color:var(--text);font-weight:600}.setup-screen .su-connect{border:.5px solid color-mix(in srgb,var(--connect, var(--lime)) 30%,transparent);border-radius:16px;background:linear-gradient(135deg,color-mix(in srgb,var(--connect, var(--lime)) 7%,transparent),color-mix(in srgb,var(--connect, var(--lime)) 1.5%,transparent));padding:20px 22px;margin-bottom:13px}.setup-screen .su-ct{font-size:14.5px;font-weight:700}.setup-screen .su-cd{font-size:12.5px;color:var(--text-3);line-height:1.5;margin-top:5px}.setup-screen .su-cbtn{display:inline-flex;align-items:center;gap:10px;background:var(--connect, var(--lime));color:var(--bg);font-family:var(--sans);font-size:13.5px;font-weight:700;border:none;border-radius:11px;padding:13px 20px;cursor:pointer;transition:.15s;margin-top:16px}.setup-screen .su-cbtn:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px)}.setup-screen .su-cbtn:disabled{cursor:default;opacity:.85}.setup-screen .su-reassure{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:14px}.setup-screen .su-reassure span{display:inline-flex;align-items:center;gap:7px;font-size:11.5px;color:var(--text-3)}.setup-screen .su-reassure span svg{color:var(--connect, var(--lime));flex-shrink:0}.setup-screen .su-alt-toggle{display:inline-flex;align-items:center;gap:7px;margin:0 2px 14px;font-family:var(--sans);font-size:12.5px;font-weight:600;color:var(--text-3);background:none;border:none;cursor:pointer;transition:.15s}.setup-screen .su-alt-toggle:hover{color:var(--text-2)}.setup-screen .su-chev{transition:transform .2s;font-size:11px;line-height:1}.setup-screen .su-chev.open{transform:rotate(180deg)}.setup-screen .su-alts{display:flex;flex-direction:column;gap:9px;margin-bottom:22px}.setup-screen .su-altrow{display:flex;align-items:center;gap:13px;border:.5px solid var(--line);border-radius:12px;background:var(--panel-2);padding:12px 14px}.setup-screen .su-altmark{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-weight:800;font-size:16px;color:#fff;font-family:var(--mono)}.setup-screen .su-altbody{flex:1;min-width:0}.setup-screen .su-altname{font-size:13.5px;font-weight:600}.setup-screen .su-altdesc{font-size:12px;color:var(--text-3);line-height:1.45;margin-top:2px}.setup-screen .su-altfact{display:flex;align-items:center;flex-wrap:wrap;font-size:12px;font-weight:600;color:var(--text-2);margin-top:4px}.setup-screen .su-altpick{font-family:var(--sans);font-size:12px;font-weight:600;color:var(--text-2);background:none;border:.5px solid var(--line-2);border-radius:9px;padding:8px 13px;cursor:pointer;white-space:nowrap;transition:.15s}.setup-screen .su-altpick:hover{color:var(--text);border-color:var(--text-3)}.setup-screen .su-altpick.picked{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 50%,transparent)}.setup-screen .su-uplabel{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-4);margin:0 2px 12px}.setup-screen .su-locked{display:flex;flex-direction:column;gap:9px}.setup-screen .su-lrow{display:flex;align-items:center;gap:13px;border:.5px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--panel-2) 50%,transparent);padding:13px 15px;opacity:.62}.setup-screen .su-ln{width:30px;height:30px;border-radius:9px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--panel-3);color:var(--text-4)}.setup-screen .su-lt b{font-size:13.5px;font-weight:600;color:var(--text-2)}.setup-screen .su-lt span{display:block;font-size:12px;color:var(--text-4);line-height:1.45;margin-top:2px}.setup-screen .su-lk{margin-left:auto;color:var(--text-4);flex-shrink:0;display:flex}.setup-screen .su-statusbar,.setup-screen .su-remember,.setup-screen .su-modebar{display:flex;align-items:center;gap:11px;margin:20px 0 24px;padding:11px 14px;border:.5px solid var(--line);border-radius:12px;background:var(--panel-2)}.setup-screen .su-statusbar{border-color:color-mix(in srgb,var(--green) 28%,transparent);background:linear-gradient(120deg,color-mix(in srgb,var(--green) 6%,transparent),transparent 70%)}.setup-screen .su-remember{background:linear-gradient(120deg,color-mix(in srgb,var(--green) 6%,transparent),transparent 70%)}.setup-screen .su-widget-ic{width:30px;height:30px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--green-soft);color:var(--green)}.setup-screen .su-modebar .su-widget-ic{background:var(--amber-soft);color:var(--amber)}.setup-screen .su-widget-body{flex:1;min-width:0}.setup-screen .su-widget-body b{font-size:13px;font-weight:600}.setup-screen .su-widget-body span{display:block;font-size:11.5px;color:var(--text-3);margin-top:1px}.setup-screen .su-widget-body code{font-family:var(--mono);color:var(--green)}.setup-screen .su-rdot{width:8px;height:8px;border-radius:50%;background:var(--green);flex-shrink:0;box-shadow:0 0 0 4px color-mix(in srgb,var(--green) 12%,transparent)}.setup-screen .su-ago{margin-left:auto;flex-shrink:0;font-family:var(--mono);font-size:10.5px;color:var(--text-4);white-space:nowrap}.setup-screen .su-chg{font-size:12px;color:var(--text-3);cursor:pointer;background:none;border:.5px solid var(--line-2);border-radius:8px;padding:7px 12px;font-family:var(--sans);flex-shrink:0}.setup-screen .su-chg:hover{color:var(--text);border-color:var(--text-3)}.setup-screen .su-seg{display:inline-flex;background:var(--inset);border:.5px solid var(--line);border-radius:10px;padding:3px;gap:3px;flex-shrink:0}.setup-screen .su-seg button{font-family:var(--sans);font-size:12px;font-weight:600;color:var(--text-3);background:none;border:none;cursor:pointer;padding:7px 13px;border-radius:7px;transition:.15s}.setup-screen .su-seg button.on{background:var(--panel-3);color:var(--text);box-shadow:inset 0 0 0 .5px var(--line-2)}.setup-screen .su-seg button.on.live{color:var(--green)}.setup-screen .su-seclabel{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-4);margin:0 2px 13px}.setup-screen .su-steps{position:relative;padding-left:6px}.setup-screen .su-step{position:relative;display:flex;gap:16px;padding-bottom:22px}.setup-screen .su-step:last-child{padding-bottom:0}.setup-screen .su-rail{position:relative;flex-shrink:0;display:flex;flex-direction:column;align-items:center}.setup-screen .su-node{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:12px;font-weight:700;flex-shrink:0;z-index:1}.setup-screen .su-node.done{background:var(--lime);color:var(--bg)}.setup-screen .su-node.todo{background:var(--panel-3);color:var(--text-2);border:.5px solid var(--line-2)}.setup-screen .su-line{flex:1;width:1.5px;background:var(--line-2);margin:4px 0}.setup-screen .su-step:last-child .su-line{display:none}.setup-screen .su-scon{flex:1;min-width:0;padding-top:3px}.setup-screen .su-stitle{font-size:14.5px;font-weight:600;display:flex;align-items:center;gap:9px}.setup-screen .su-pill{font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;padding:2px 7px;border-radius:6px;color:var(--green);background:var(--green-soft)}.setup-screen .su-sdesc{font-size:12.5px;color:var(--text-3);line-height:1.5;margin-top:5px}.setup-screen .su-methods{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.setup-screen .su-mchip{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:500;color:var(--text-2);background:var(--panel-2);border:.5px solid var(--line);border-radius:10px;padding:9px 12px;cursor:pointer;transition:.15s;font-family:var(--sans)}.setup-screen .su-mchip:hover{border-color:var(--line-2)}.setup-screen .su-mchip .su-ck{width:16px;height:16px;border-radius:5px;border:1.5px solid var(--line-2);display:flex;align-items:center;justify-content:center;flex-shrink:0}.setup-screen .su-mchip .su-ck svg{opacity:0}.setup-screen .su-mchip.on{border-color:color-mix(in srgb,var(--accent) 50%,transparent);background:color-mix(in srgb,var(--accent) 8%,transparent);color:var(--text)}.setup-screen .su-mchip.on .su-ck{background:var(--accent);border-color:var(--accent);color:var(--bg)}.setup-screen .su-mchip.on .su-ck svg{opacity:1}.setup-screen .su-acct{display:flex;align-items:center;gap:11px;margin-top:11px;border:.5px solid var(--line);border-radius:11px;background:var(--panel-2);padding:11px 13px}.setup-screen .su-av{width:30px;height:30px;border-radius:8px;background:var(--accent);color:var(--bg);font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-family:var(--mono)}.setup-screen .su-ainfo{flex:1;min-width:0}.setup-screen .su-ainfo b{font-size:13px;font-weight:600}.setup-screen .su-ainfo span{display:block;font-size:11.5px;color:var(--text-3);font-family:var(--mono);margin-top:1px}.setup-screen .su-field{margin-top:11px;border:.5px solid var(--line);border-radius:11px;background:var(--panel-2);padding:13px 14px;font-size:13.5px;color:var(--text);line-height:1.55}.setup-screen .su-edit{float:right;font-size:12px;color:var(--blue);cursor:pointer;margin-left:12px}.setup-screen .su-field b{font-weight:600}.setup-screen .su-examples{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px}.setup-screen .su-ex{font-size:11.5px;color:var(--text-3);background:var(--bg);border:.5px solid var(--line);border-radius:8px;padding:6px 10px;cursor:pointer;transition:.15s;font-family:var(--sans)}.setup-screen .su-ex:hover{border-color:var(--line-2);color:var(--text-2)}.setup-screen .su-ex.added{border-color:color-mix(in srgb,var(--blue) 50%,transparent);color:var(--blue)}.setup-screen .su-plus{color:var(--blue);margin-right:5px;font-weight:600}.setup-screen .su-builds{margin-top:12px;display:flex;flex-direction:column;gap:8px}.setup-screen .su-bitem{display:flex;align-items:flex-start;gap:11px;border:.5px solid var(--line);border-radius:11px;background:var(--panel-2);padding:12px 14px}.setup-screen .su-bx{width:22px;height:22px;border-radius:7px;background:var(--lime-soft);color:var(--lime);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}.setup-screen .su-bmain{flex:1;min-width:0}.setup-screen .su-bmain b{font-size:13.5px;font-weight:600}.setup-screen .su-bmain span{display:block;font-size:12px;color:var(--text-3);line-height:1.45;margin-top:2px}.setup-screen .su-where{margin-left:auto;flex-shrink:0;font-family:var(--mono);font-size:10.5px;color:var(--text-4);border:.5px solid var(--line);border-radius:6px;padding:3px 7px;white-space:nowrap;align-self:center}.setup-screen .su-learn{border:.5px solid var(--line);border-radius:14px;background:var(--panel-2);padding:15px 16px;margin-bottom:24px}.setup-screen .su-lhd{display:flex;align-items:center;gap:9px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--amber);margin-bottom:9px}.setup-screen .su-learn p{font-size:13px;color:var(--text-2);line-height:1.55}.setup-screen .su-learn p+p{margin-top:8px}.setup-screen .su-learn b{color:var(--text);font-weight:600}.setup-screen .su-note{display:flex;gap:11px;margin-top:16px;border:.5px solid color-mix(in srgb,var(--note-accent, var(--blue)) 28%,transparent);background:linear-gradient(120deg,color-mix(in srgb,var(--note-accent, var(--blue)) 6%,transparent),transparent 70%);border-radius:12px;padding:13px 15px}.setup-screen .su-note svg{color:var(--note-accent, var(--blue));flex-shrink:0;margin-top:1px}.setup-screen .su-note p{font-size:12.5px;color:var(--text-2);line-height:1.5}.setup-screen .su-note p b{color:var(--note-accent, var(--blue))}.setup-screen .su-foot{display:flex;align-items:center;gap:14px;margin-top:24px;padding-top:20px;border-top:.5px solid var(--line)}.setup-screen .su-cta{display:inline-flex;align-items:center;gap:9px;background:var(--lime);color:var(--bg);font-family:var(--sans);font-size:13.5px;font-weight:700;border:none;border-radius:11px;padding:13px 19px;cursor:pointer;transition:.15s;white-space:nowrap}.setup-screen .su-cta:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1px)}.setup-screen .su-cta:disabled{cursor:default}.setup-screen .su-ar{font-size:16px;margin-top:-1px}.setup-screen .su-fnote{font-size:12px;color:var(--text-3);line-height:1.45}.setup-screen .su-fnote b{color:var(--text-2)}@keyframes su-spin{to{transform:rotate(360deg)}}.setup-screen .su-spin{animation:su-spin .8s linear infinite}.concepts-glossary .concept-search{width:100%;box-sizing:border-box;margin:4px 0 16px;padding:10px 12px;font:inherit;font-size:14px;color:var(--text-primary, #e8ebf2);background:var(--surface, #1b1f2a);border:1px solid var(--border, #2c3242);border-radius:10px}.concepts-glossary .concept-search:focus{outline:none;border-color:var(--accent, #6b8afd)}.concepts-glossary .concept-row{display:block}.concepts-glossary .concept-row .trow{width:100%}.concepts-glossary .concept-row-body{padding:0 16px 14px;margin-top:-4px}.concepts-glossary .concept-empty{padding:24px 4px;color:var(--text-tertiary, #8a92a6);font-size:14px}.hosting-screen .sd-callout{display:flex;gap:12px;padding:13px 15px;border-radius:11px;background:var(--surface-card);border:1px solid var(--line-subtle);border-left-width:3px;margin:14px 0}.hosting-screen .sd-callout.cost{border-left-color:var(--amber-300)}.hosting-screen .sd-callout.wait{border-left-color:var(--blue-300)}.hosting-screen .sd-callout.size{border-left-color:var(--lime-400)}.hosting-screen .sd-callout-ic{flex:none;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:7px;background:var(--surface-raised);font-size:14px;font-weight:700}.hosting-screen .sd-callout-t{font-size:14px;font-weight:600;margin-bottom:2px}.hosting-screen .sd-callout-b{font-size:13.5px;line-height:1.55;color:var(--text-body)}.hosting-screen .sd-store{display:flex;gap:13px;padding:15px;border-radius:12px;background:var(--surface-card);border:1px solid var(--line-subtle);margin-bottom:12px}.hosting-screen .sd-store-mark{flex:none;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;font-size:20px;color:#fff}.hosting-screen .sd-store.ios .sd-store-mark{background:linear-gradient(140deg,#555,#111)}.hosting-screen .sd-store.android .sd-store-mark{background:linear-gradient(140deg,#3ddc84,#14a05a)}.hosting-screen .sd-store-top{display:flex;align-items:center;gap:10px;margin-bottom:4px}.hosting-screen .sd-store-name{font-size:15px;font-weight:600}.hosting-screen .sd-store-badge{font-size:11.5px;padding:2px 8px;border-radius:999px;background:var(--surface-raised);color:var(--text-body);border:1px solid var(--line-subtle)}.hosting-screen .sd-store-desc{font-size:13.5px;line-height:1.55;color:var(--text-body)}.hosting-screen .sd-store-enroll{display:inline-flex;align-items:center;margin-top:10px;padding:6px 12px;border-radius:8px;font-size:13px;font-weight:600;text-decoration:none;color:var(--accent-strong, #2563eb);background:var(--surface-raised);border:1px solid var(--line-subtle)}.hosting-screen .sd-store-enroll:hover{text-decoration:underline}.hosting-screen .sd-checks{display:flex;flex-direction:column;gap:9px;margin:6px 0}.hosting-screen .sd-check{display:flex;gap:9px;font-size:14px;line-height:1.5;color:var(--text-body)}.hosting-screen .sd-check svg{flex:none;margin-top:3px}.hosting-screen .sd-check b{color:var(--text-strong)}