:root{--bg:#1c1c1c;--panel:#232323;--panel-2:#2a2a2a;--border:#2e2e2e;--border-strong:#3e3e3e;--text:#ededed;--muted:#a0a0a0;--accent:#3ecf8e;--accent-dark:#3ecf8e;--accent-ink:#04140a;--accent-soft:#3ecf8e1f;--danger:#f87171;--warn:#fbbf24;--ok-bg:#3ecf8e24;--ok-fg:#5ee0a6;--info-bg:#60a5fa24;--info-fg:#93c5fd;--neutral-bg:#2e2e2e;--neutral-fg:#b4b4b4;--bad-bg:#f8717124;--bad-fg:#fca5a5;--warn-bg:#fbbf2424;--warn-fg:#fcd34d;--log-bg:#141414;--card:var(--panel);--line:var(--border);--sans:"Bricolage Grotesque", ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--bg:#fcfcfc;--panel:#fff;--panel-2:#f4f4f5;--border:#e6e6e8;--border-strong:#d4d4d8;--text:#171717;--muted:#6b6b6b;--accent:#1e8f5f;--accent-dark:#177a50;--accent-ink:#fff;--accent-soft:#1e8f5f1a;--danger:#dc2626;--warn:#b45309;--ok-bg:#dcfce7;--ok-fg:#166534;--info-bg:#dbeafe;--info-fg:#1e40af;--neutral-bg:#f1f1f3;--neutral-fg:#52525b;--bad-bg:#fee2e2;--bad-fg:#991b1b;--warn-bg:#fef3c7;--warn-fg:#92400e;--log-bg:#0f1411;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}body{font-family:var(--sans);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-size:14px;line-height:1.5}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.topbar{background:var(--bg);border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:12px 24px;display:flex}.logo{letter-spacing:-.01em;font-size:17px;font-weight:700}.logo span{color:var(--accent)}.logo-btn{cursor:pointer;font:inherit;color:var(--text);background:0 0;border:none;padding:0;font-size:17px;font-weight:700}.tagline{color:var(--muted);margin-left:8px;font-size:13px}.container{max-width:720px;margin:0 auto;padding:28px 20px 60px}.shell{grid-template-columns:minmax(0,1fr);min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--border);flex-direction:column;gap:2px;height:100vh;padding:14px 10px;display:flex;position:sticky;top:0}.brand{cursor:pointer;font:inherit;color:var(--text);text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:6px 8px 16px;display:flex}.brand-mark{background:var(--accent);width:28px;height:28px;color:var(--accent-ink);border-radius:7px;flex:none;place-items:center;display:grid}.brand-name{letter-spacing:-.01em;font-size:15px;font-weight:700}.brand-name span{color:var(--accent)}.nav-group{flex-direction:column;gap:2px;display:flex}.nav-label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding:14px 10px 6px;font-size:11px;font-weight:600}.nav-item{width:100%;color:var(--muted);font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:10px;padding:7px 10px;font-size:13.5px;text-decoration:none;transition:background .15s,color .15s;display:flex}.nav-item:hover,.nav-item[aria-current=page]{background:var(--panel-2);color:var(--text)}.nav-item[aria-current=page] svg{color:var(--accent)}.nav-spacer{flex:1}.sidebar .btn{justify-content:center;align-items:center;gap:8px;width:100%;margin:6px 0 4px;display:flex}.main{flex-direction:column;min-width:0;display:flex}.header{border-bottom:1px solid var(--border);justify-content:flex-start;align-items:center;gap:12px;min-height:52px;padding:10px 24px;display:flex}.header select{width:auto;padding:6px 28px 6px 10px;font-size:13px}.shell .container{width:100%;max-width:1080px}.icon-btn{border:1px solid var(--border);background:var(--panel);width:32px;height:32px;color:var(--muted);cursor:pointer;border-radius:6px;place-items:center;transition:color .15s,border-color .15s;display:inline-grid}.icon-btn:hover{color:var(--text);border-color:var(--border-strong)}.user-chip{color:var(--muted);align-items:center;gap:12px;margin-left:auto;font-size:13px;display:flex}.header .user-chip{margin-left:0}.user-chip .link-btn{margin-top:0}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:20px;display:flex}.page-head h1{letter-spacing:-.015em;margin:0;font-size:22px;font-weight:700}.page-head p{color:var(--muted);margin:4px 0 0}.page-head .btn{align-items:center;gap:8px;margin-top:0;display:inline-flex}.meters{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-bottom:20px;display:grid}.meter{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:12px 14px}.meter-top{color:var(--muted);justify-content:space-between;margin-bottom:8px;font-size:12.5px;display:flex}.meter-top strong{color:var(--text);font-variant-numeric:tabular-nums;font-weight:600}.meter-bar{background:var(--border);border-radius:4px;height:4px;overflow:hidden}.meter-bar i{background:var(--accent);border-radius:4px;height:100%;transition:width .4s;display:block}.meter-bar i.hot{background:var(--warn)}.tbl-wrap{background:var(--panel);border:1px solid var(--border);border-radius:8px;overflow:hidden}.tbl{border-collapse:collapse;width:100%}.tbl th{text-align:left;color:var(--muted);border-bottom:1px solid var(--border);background:var(--panel-2);padding:10px 16px;font-size:12px;font-weight:500}.tbl td{border-bottom:1px solid var(--border);vertical-align:middle;padding:12px 16px}.tbl tr:last-child td{border-bottom:0}.tbl tbody tr{cursor:pointer;transition:background .12s}.tbl tbody tr:hover{background:var(--panel-2)}.row-link{font:inherit;color:var(--text);cursor:pointer;text-align:left;background:0 0;border:0;padding:0;font-weight:600}.row-sub{color:var(--muted);font-size:12px;font-family:var(--mono);word-break:break-all;font-weight:400;display:block}.cell-icon{color:var(--muted);align-items:center;gap:6px;font-size:13px;display:inline-flex}.hero{margin-bottom:28px}.hero h1{margin:0 0 6px;font-size:26px}.hero p{color:var(--muted);margin:0 0 18px;font-size:15px}.card{background:var(--panel);border:1px solid var(--border);border-radius:8px;margin-bottom:16px;padding:20px}.card h2{margin:0 0 12px;font-size:16px}.card h3{margin:0 0 8px;font-size:14px}.card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.form-card{max-width:560px}label{margin:14px 0 4px;font-size:13px;font-weight:500;display:block}input,select{border:1px solid var(--border-strong);background:var(--bg);width:100%;color:var(--text);border-radius:6px;padding:8px 12px;font-family:inherit;font-size:14px}input:focus,select:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:var(--accent)}input[aria-invalid=true]{border-color:var(--danger)}input::placeholder{color:var(--muted)}.hint{color:var(--muted);margin-top:4px;font-size:12.5px}.field-error{color:var(--danger);margin-top:4px;font-size:12.5px}.btn{cursor:pointer;border:1px solid #0000;border-radius:6px;margin-top:16px;padding:8px 16px;font-family:inherit;font-size:13.5px;font-weight:600;text-decoration:none;transition:background .15s,border-color .15s;display:inline-block}.btn-primary{background:var(--accent);color:var(--accent-ink)}.btn-primary:hover:not(:disabled){background:var(--accent-dark);filter:brightness(1.08)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:var(--panel-2);color:var(--text);border-color:var(--border-strong)}.btn-hero{padding:10px 22px;font-size:14.5px}.btn-sm{margin-top:0;padding:5px 12px;font-size:13px}form .btn-primary{width:100%}.link-btn{color:var(--accent);cursor:pointer;background:0 0;border:none;margin-top:14px;padding:0;font-family:inherit;font-size:13.5px;font-weight:500;text-decoration:none}.demo-link{display:block}.error-banner,.error-detail{background:var(--bad-bg);border:1px solid var(--bad-fg);color:var(--bad-fg);border-radius:8px;margin:14px 0;padding:12px 14px;font-size:13.5px}.error-detail p{color:var(--bad-fg);margin:6px 0 0}.offline-banner{background:var(--warn-bg);border:1px solid var(--warn-fg);color:var(--warn-fg);border-radius:8px;margin-bottom:16px;padding:10px 14px;font-size:13px}.empty{text-align:center;color:var(--muted);padding:32px 16px;font-size:14px}.empty-block{text-align:center;padding:40px 20px}.empty-block h2{margin-top:4px}.empty-block p{color:var(--muted);max-width:46ch;margin-inline:auto;font-size:14px}.empty-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:16px;display:flex}.empty-actions .btn{margin-top:0}.resume-card{align-items:center;gap:10px;padding:10px 16px;display:flex}.resume-card .link-btn{align-items:center;gap:8px;margin-top:0;font-size:14px;display:flex}.app-list{margin:0;padding:0;list-style:none}.app-row{text-align:left;border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);cursor:pointer;font:inherit;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;padding:12px 14px;transition:border-color .15s;display:flex}.app-row:hover{border-color:var(--accent)}.app-row-main{flex-direction:column;min-width:0;display:flex}.app-row .name{font-size:14px;font-weight:600}.app-row .repo{color:var(--muted);word-break:break-all;font-size:12px}.app-row-meta{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:4px;display:flex}.badge{white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:2px 10px;font-size:11.5px;font-weight:600;display:inline-flex}.badge .dot{background:currentColor;border-radius:50%;width:6px;height:6px}.badge.green{background:var(--ok-bg);color:var(--ok-fg)}.badge.blue{background:var(--info-bg);color:var(--info-fg)}.badge.gray{background:var(--neutral-bg);color:var(--neutral-fg)}.badge.red{background:var(--bad-bg);color:var(--bad-fg)}.badge.orange{background:var(--warn-bg);color:var(--warn-fg)}.detail-row{border-bottom:1px solid var(--border);justify-content:space-between;gap:12px;padding:8px 0;font-size:13.5px;display:flex}.detail-row:last-child{border-bottom:none}.detail-row .k{color:var(--muted);flex-shrink:0}.detail-row .v{text-align:right;word-break:break-all;font-weight:500}.detail-row a{color:var(--accent)}.steps{margin:16px 0;padding:0;list-style:none}.step{align-items:center;gap:10px;padding:7px 0;font-size:14px;display:flex}.step.pending{color:var(--muted)}.step.current{font-weight:600}.step.done{color:var(--accent)}.step.failed{color:var(--danger)}.step.unknown{color:var(--warn)}.step-icon{border:1.5px solid var(--border-strong);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;font-weight:700;display:inline-flex}.step-icon.done{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.step-icon.current{border-color:var(--accent)}.step-icon.failed{background:var(--danger);border-color:var(--danger);color:#fff}.recap{background:var(--bg);border:1px solid var(--border);border-radius:8px;margin-top:20px;padding:4px 14px}.recap h3{margin:10px 0 4px}.recap .detail-row:last-child{border-bottom:none}.advanced{margin-top:16px}.advanced summary{cursor:pointer;color:var(--muted);font-size:13.5px;font-weight:500}.advanced[open] summary{margin-bottom:4px}.success-box{background:var(--ok-bg);border:1px solid var(--accent);color:var(--ok-fg);border-radius:8px;margin-top:16px;padding:14px 16px;font-size:14px}.url-row{flex-wrap:wrap;align-items:center;gap:10px;margin:10px 0;display:flex}.url-link{color:var(--accent);word-break:break-all;font-weight:600}.success-box .btn-primary{margin-top:6px;display:inline-block}.message-box{background:var(--bg);border:1px solid var(--border);border-radius:8px;margin-top:14px;padding:10px 14px;font-size:13px}.actions-row{flex-wrap:wrap;align-items:center;gap:14px;margin-top:6px;display:flex}.actions-row .link-btn{margin-top:16px}.spinner{border:2px solid var(--accent-soft);border-top-color:var(--accent);vertical-align:-2px;border-radius:50%;width:12px;height:12px;margin-right:6px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner{animation:none}.app-row,.tbl tbody tr,.meter-bar i{transition:none}}@media (max-width:860px){.shell{grid-template-columns:minmax(0,1fr)}.sidebar{border-right:0;border-bottom:1px solid var(--border);flex-direction:row;align-items:center;gap:6px;height:auto;padding:8px 12px;position:static;overflow-x:auto}.brand{padding:4px 8px}.brand-name,.nav-label,.nav-spacer{display:none}.nav-group{flex-direction:row}.nav-item{white-space:nowrap;width:auto}.sidebar .btn{white-space:nowrap;width:auto;margin:0}.header{flex-wrap:wrap;padding:10px 16px}}@media (max-width:640px){.col-hide{display:none}}@media (max-width:560px){.app-row{flex-direction:column;align-items:flex-start}.app-row-meta{align-items:flex-start}.detail-row{flex-direction:column;gap:2px}.detail-row .v{text-align:left}.hero h1{font-size:22px}}.github-connect{border-top:1px solid var(--border);margin-top:22px;padding-top:16px}.github-connect-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.github-connect-head .link-btn{margin-top:0}.repo-list{margin:10px 0 0;padding:0;list-style:none}.repo-list li{margin:0 0 6px}.repo-item{background:var(--bg);border:1px solid var(--border);cursor:pointer;text-align:left;width:100%;color:var(--text);border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:9px 12px;font-family:inherit;font-size:13.5px;display:flex}.repo-item:hover:not(:disabled){border-color:var(--accent);background:var(--panel-2)}.repo-item:focus-visible{outline:2px solid var(--accent);outline-offset:-1px}.repo-item:disabled{opacity:.55;cursor:wait}.repo-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.repo-private{color:var(--warn-fg);background:var(--warn-bg);border-radius:999px;flex-shrink:0;padding:1px 8px;font-size:11px;font-weight:600}.logo-link{color:inherit;text-decoration:none}a.repo-item{text-decoration:none}.connect-result{align-items:center;gap:10px;margin-bottom:8px;display:flex}.connect-result h2{margin:0}.connect-icon{width:26px;height:26px;font-size:14px}.login-card{text-align:center;max-width:420px;margin:48px auto 0}.login-card h2{margin-bottom:8px}.login-btn{justify-content:center;align-items:center;gap:8px;width:100%;padding:11px 18px;display:inline-flex}.login-card label{text-align:left}.login-form .login-btn{margin-top:16px}.login-sep{color:var(--muted);align-items:center;gap:12px;margin:18px 0;font-size:12.5px;display:flex}.login-sep:before,.login-sep:after{content:"";border-top:1px solid var(--border);flex:1}.login-switch{margin-top:18px}.project-tabs{margin-top:1rem}.tab-row{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:4px;margin-bottom:1rem;display:flex}.tab-row .btn{color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;margin-bottom:-1px;padding:8px 12px;font-size:13.5px;font-weight:500}.tab-row .btn:hover:not(:disabled){color:var(--text);filter:none;background:0 0}.tab-row .btn-primary{color:var(--text);border-bottom-color:var(--accent);background:0 0}.log-view{background:var(--log-bg);color:#d7e5dc;max-height:24rem;font-family:var(--mono);white-space:pre-wrap;word-break:break-word;border:1px solid var(--border);border-radius:6px;padding:.75rem;font-size:.8rem;line-height:1.5;overflow:auto}.check-row{align-items:center;gap:.4rem;margin:.75rem 0;display:flex}.check-row input{width:auto}.mon{gap:.75rem;display:grid}.mon .card{margin:0}.mon-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.mon-head h3{margin:.5rem 0 .15rem}.mon-note{max-width:24rem}.mon-pill{background:var(--neutral-bg);border-radius:999px;align-items:center;gap:.5rem;padding:.2rem .7rem;font-size:.8rem;font-weight:600;display:inline-flex}.mon-dot{background:currentColor;border-radius:50%;width:.55rem;height:.55rem}.mon-pill.tone-ok{color:var(--ok-fg);background:var(--ok-bg)}.mon-pill.tone-ok .mon-dot{animation:2s infinite mon-ping}.mon-pill.tone-warn{color:var(--warn-fg);background:var(--warn-bg)}.mon-pill.tone-bad{color:var(--bad-fg);background:var(--bad-bg)}.mon-pill.tone-off{color:var(--neutral-fg)}@keyframes mon-ping{0%{box-shadow:0 0 #3ecf8e80}80%,to{box-shadow:0 0 0 8px #3ecf8e00}}.mon-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.75rem;display:grid}.mon-stat{gap:.2rem;min-width:0;display:grid}.mon-stat .k{color:var(--muted);font-size:.8rem}.mon-stat strong{font-variant-numeric:tabular-nums;font-size:1.5rem;line-height:1.2}.spark{align-items:flex-end;gap:3px;height:4.5rem;margin:.75rem 0;display:flex}.spark .bar{background:var(--accent);border-radius:3px 3px 0 0;flex:1;min-width:3px;transition:height .4s}.spark .bar.down{background:var(--danger);opacity:.8}.mon-logs-head{justify-content:space-between;align-items:center;gap:.5rem;display:flex}@media (prefers-reduced-motion:reduce){.mon-pill.tone-ok .mon-dot{animation:none}.spark .bar{transition:none}}.bg-fx{z-index:0;pointer-events:none;height:260px;position:fixed;inset:0 0 auto;-webkit-mask-image:linear-gradient(#000 35%,#0000);mask-image:linear-gradient(#000 35%,#0000)}.shell{z-index:1;position:relative}@media (prefers-reduced-motion:reduce){.bg-fx{opacity:.6}}@keyframes rise-in{0%{opacity:0;transform:translateY(16px)}}.login-theme{z-index:2;position:fixed;top:14px;right:16px}.login-shell{z-index:1;flex-direction:column;justify-content:center;align-items:center;gap:24px;min-height:100vh;padding:32px 20px 48px;display:flex;position:relative}.login-brand{align-items:center;gap:10px;font-size:20px;animation:.6s cubic-bezier(.2,.8,.2,1) both rise-in;display:flex}.login-brand .brand-mark{border-radius:8px;width:32px;height:32px}.login-brand .brand-name{font-size:20px}.login-shell .login-card{width:100%;max-width:420px;margin:0;animation:.7s cubic-bezier(.2,.8,.2,1) 80ms both rise-in}.journey{width:100%;max-width:520px;animation:.8s cubic-bezier(.2,.8,.2,1) .2s both rise-in}.j-steps{align-items:flex-start;display:flex}.j-item{flex:1;align-items:flex-start;display:flex}.j-item:last-child{flex:none}.j-node{cursor:pointer;width:72px;font:inherit;color:var(--muted);background:0 0;border:0;justify-items:center;gap:6px;padding:0;font-size:12px;transition:color .3s;display:grid}.j-ic{border:1px solid var(--border-strong);background:var(--panel);border-radius:12px;place-items:center;width:40px;height:40px;transition:transform .45s cubic-bezier(.2,.8,.2,1),background .3s,border-color .3s,color .3s,box-shadow .4s;display:grid}.j-node:hover .j-ic{border-color:var(--accent)}.j-node.past .j-ic{border-color:var(--accent);color:var(--accent)}.j-node.on{color:var(--text)}.j-node.on .j-ic{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);box-shadow:0 8px 24px var(--accent-soft);transform:translateY(-3px)scale(1.07)}.j-line{background:var(--border);border-radius:2px;flex:1;height:2px;margin:19px 4px 0;position:relative;overflow:hidden}.j-line i{background:var(--accent);transform-origin:0;transition:transform .7s cubic-bezier(.2,.8,.2,1);position:absolute;inset:0;transform:scaleX(0)}.j-line.done i{transform:scaleX(1)}.j-panel{background:var(--panel);border:1px solid var(--border);border-radius:10px;align-content:space-between;gap:12px;min-height:148px;margin-top:18px;padding:16px;animation:.5s cubic-bezier(.2,.8,.2,1) both mock-in;display:grid}@keyframes mock-in{0%{opacity:0;transform:translateY(10px)}}.j-mock{align-items:center;min-height:82px;display:grid}.j-caption{text-align:center;color:var(--muted);margin:0;font-size:13px}.m-gh{background:var(--text);color:var(--bg);border-radius:6px;justify-content:center;align-items:center;gap:8px;width:100%;max-width:260px;margin:0 auto;padding:10px 14px;font-size:13px;font-weight:600;display:flex;position:relative}.m-gh:after{content:"";border:2px solid var(--accent);border-radius:6px;animation:1.8s infinite m-ring;position:absolute;inset:0}@keyframes m-ring{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(1.12,1.5)}}.m-repo{font-family:var(--mono);border:1px solid var(--border);background:var(--bg);border-radius:6px;align-items:center;gap:10px;margin-bottom:6px;padding:6px 10px;font-size:12.5px;display:flex}.m-repo:last-child{margin-bottom:0}.m-rad{border:1.5px solid var(--border-strong);border-radius:50%;flex:none;width:12px;height:12px}.m-repo.sel{animation:.6s cubic-bezier(.2,.8,.2,1) .5s both m-sel}@keyframes m-sel{to{border-color:var(--accent);background:var(--accent-soft);transform:translate(6px)}}.m-repo.sel .m-rad{animation:.4s .7s both m-rad}@keyframes m-rad{to{border-color:var(--accent);background:radial-gradient(var(--accent) 45%, transparent 50%)}}.m-track{background:var(--border);border-radius:6px;height:6px;overflow:hidden}.m-fill{background:var(--accent);border-radius:6px;width:0;height:100%;animation:1.9s cubic-bezier(.2,.8,.2,1) forwards m-grow;display:block}@keyframes m-grow{to{width:100%}}.m-checks{color:var(--muted);justify-content:space-between;margin-top:12px;font-size:12.5px;display:flex}.m-checks span{opacity:.4;animation:m-check .4s var(--d) both;align-items:center;gap:6px;display:inline-flex}@keyframes m-check{to{opacity:1;color:var(--accent)}}.m-url{justify-items:center;gap:10px;display:grid}.m-live{color:var(--ok-fg);background:var(--ok-bg);border-radius:999px;align-items:center;gap:8px;padding:3px 12px;font-size:12.5px;font-weight:600;display:inline-flex}.m-live i{background:currentColor;border-radius:50%;width:7px;height:7px;animation:2s infinite mon-ping}.m-url code{font-family:var(--mono);border:1px solid var(--border);background:var(--bg);overflow-wrap:anywhere;text-align:center;border-radius:6px;padding:6px 12px;font-size:13px;animation:.6s cubic-bezier(.2,.8,.2,1) .2s both m-pop}@keyframes m-pop{0%{opacity:0;transform:scale(.92)}}@media (max-width:480px){.j-node{width:56px;font-size:11px}.j-line{margin-inline:2px}}@media (prefers-reduced-motion:reduce){.login-brand,.login-shell .login-card,.journey,.j-panel,.m-repo.sel,.m-url code,.m-fill,.m-checks span{animation:none}.m-repo.sel{border-color:var(--accent);background:var(--accent-soft)}.m-fill{width:100%}.m-checks span{opacity:1;color:var(--accent)}.m-gh:after,.m-live i{animation:none}}.bg-grid{z-index:0;pointer-events:none;position:fixed;inset:0;-webkit-mask-image:radial-gradient(at 50% 45%,#000 20%,#0000 78%);mask-image:radial-gradient(at 50% 45%,#000 20%,#0000 78%)}.login-shell .login-brand .brand-name{display:inline}.journey{max-width:420px;margin-top:56px}.j-node{gap:5px;width:60px;font-size:11px}.j-ic{border-radius:9px;width:32px;height:32px}.j-ic svg{width:15px;height:15px}.j-node.on .j-ic{transform:translateY(-2px)scale(1.06)}.j-line{margin:15px 4px 0}.j-panel{gap:8px;min-height:112px;margin-top:14px;padding:12px}.j-mock{min-height:62px}.j-caption{font-size:12px}.m-gh{max-width:220px;padding:8px 12px;font-size:12px}.m-repo{margin-bottom:5px;padding:4px 8px;font-size:11.5px}.m-track{height:5px}.m-checks{margin-top:10px;font-size:11.5px}.m-live{padding:2px 10px;font-size:11.5px}.m-url{gap:8px}.m-url code{padding:5px 10px;font-size:12px}@media (max-width:480px){.j-node{width:52px;font-size:10.5px}}.lp{z-index:1;font-size:15px;position:relative;overflow-x:clip}.lp-wrap{width:100%;max-width:1160px;margin:0 auto;padding-inline:24px}.lp code{font-family:var(--mono);font-size:.92em}.lp h1,.lp h2,.lp h3{letter-spacing:-.02em}.lp-skip{z-index:20;background:var(--accent);color:var(--accent-ink);border-radius:6px;padding:8px 14px;font-weight:600;text-decoration:none;position:absolute;top:-48px;left:12px}.lp-skip:focus{top:12px}.lp-bg .bg-fx{opacity:.55;transition:opacity 1.2s}.lp-bg .bg-grid{opacity:.75;transition:opacity 1.2s}.lp-bg[data-glow=on] .bg-fx,.lp-bg[data-glow=on] .bg-grid{opacity:1}.lp-hl{background:var(--accent);color:var(--accent-ink);box-shadow:0 10px 30px -12px var(--accent);border-radius:.18em;padding:0 .16em .04em;line-height:1.1;display:inline-block}.lp-header{z-index:10;border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--bg) 80%, transparent);-webkit-backdrop-filter:blur(10px);position:sticky;top:0}.lp-header-in{align-items:center;gap:24px;height:60px;display:flex}.lp-brand{color:var(--text);flex:none;align-items:center;gap:10px;text-decoration:none;display:inline-flex}.lp-nav{gap:4px;margin:0 auto;display:flex}.lp-nav a{color:var(--muted);border-radius:6px;padding:6px 12px;font-size:14px;text-decoration:none;transition:color .15s,background .15s}.lp-nav a:hover{color:var(--text);background:var(--panel-2)}.lp-header-actions{align-items:center;gap:10px;margin-left:auto;display:flex}.lp-nav+.lp-header-actions{margin-left:0}.lp-login{color:var(--text);border-radius:6px;padding:6px 8px;font-size:14px;font-weight:500;text-decoration:none}.lp-login:hover{color:var(--accent)}.lp-btn{justify-content:center;align-items:center;gap:8px;margin-top:0;display:inline-flex}.lp-hero{padding-top:56px}.lp-badge{color:var(--accent);border:1px solid color-mix(in srgb, var(--accent) 40%, var(--border));background:var(--accent-soft);border-radius:999px;align-items:center;gap:8px;padding:5px 14px;font-size:12.5px;font-weight:600;display:inline-flex}.lp-badge i{background:var(--accent);border-radius:50%;width:6px;height:6px;animation:2.2s ease-in-out infinite lp-pulse}.lp-hero h1{letter-spacing:-.04em;margin:28px 0 24px;font-size:clamp(40px,6.4vw,76px);font-weight:700;line-height:1.08}.lp-sub{color:var(--muted);max-width:560px;margin:0;font-size:19px;line-height:1.6}.lp-cta{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin-top:36px;display:flex}.lp-cta-center{justify-content:center}.lp-pcard{z-index:1;border:1px solid var(--border-strong);background:var(--panel);box-shadow:0 30px 70px -40px color-mix(in srgb, var(--log-bg) 55%, transparent);border-radius:14px;position:relative;overflow:hidden}.lp-pcard-head{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:12px 14px;font-size:13.5px;display:flex}.lp-mini-chip{font-family:var(--mono);color:var(--muted);border:1px solid var(--border);border-radius:6px;align-items:center;gap:4px;margin-left:auto;padding:1px 7px;font-size:11.5px;display:inline-flex}.lp-commit{background:var(--accent-soft);color:var(--text);border-radius:8px;align-items:center;gap:8px;min-width:0;margin:0 8px 8px;padding:8px 10px;font-size:12px;transition:box-shadow .3s;display:flex}.lp-commit svg,.lp-commit code{color:var(--accent);flex:none}.lp-commit span{text-overflow:ellipsis;white-space:nowrap;color:var(--muted);overflow:hidden}.lp-commit.pulse{box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 40%, transparent)}.lp-tick{border:1.5px solid var(--border-strong);width:18px;height:18px;color:var(--accent-ink);border-radius:50%;flex:none;place-items:center;display:grid}.lp-tick i{background:var(--border-strong);border-radius:50%;width:5px;height:5px}.lp-browser-bar{border-bottom:1px solid var(--border);background:var(--panel-2);align-items:center;gap:10px;min-width:0;padding:9px 12px;display:flex}.lp-dots{flex:none;gap:5px;display:inline-flex}.lp-dots i{background:var(--border-strong);border-radius:50%;width:9px;height:9px}.lp-addr{min-width:0;font-family:var(--mono);background:var(--panel);border:1px solid var(--border);white-space:nowrap;text-overflow:ellipsis;border-radius:999px;flex:1;align-items:center;gap:5px;padding:3px 10px;font-size:12px;display:inline-flex;overflow:hidden}.lp-addr svg{color:var(--accent);flex:none}.lp-site{opacity:.25;filter:grayscale();gap:10px;transition:opacity .6s,filter .6s;display:grid}.lp-site-h{background:var(--accent-soft);border-radius:5px;width:70%;height:18px;margin-top:8px}.lp-site-p{background:var(--panel-2);border-radius:4px;width:92%;height:8px}.lp-site-p.short{width:60%}.lp-pill{background:var(--neutral-bg);color:var(--neutral-fg);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:3px 11px;font-size:12px;font-weight:600;transition:background .3s,color .3s;display:inline-flex}.lp-pill i{background:currentColor;border-radius:50%;width:6px;height:6px}.lp-pill.run{background:var(--info-bg);color:var(--info-fg)}.lp-pill.run i{animation:1s ease-in-out infinite lp-pulse}.lp-pill.on{background:var(--ok-bg);color:var(--ok-fg)}.lp-pill.on i{animation:2s ease-in-out infinite lp-pulse}.lp-section{padding-top:240px;scroll-margin-top:40px}.lp-section-last{padding-bottom:40px}.lp-head{margin-bottom:80px}.lp-head-center{text-align:center;flex-direction:column;align-items:center;display:flex}.lp-eyebrow{font-family:var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--accent);border:1px solid color-mix(in srgb, var(--accent) 35%, var(--border));background:var(--accent-soft);border-radius:999px;align-items:center;gap:8px;padding:4px 12px;font-size:12px;display:inline-flex}.lp-head h2,.lp-final h2{letter-spacing:-.03em;max-width:760px;margin:22px 0 0;font-size:clamp(30px,4.2vw,50px);font-weight:700;line-height:1.15}.lp-card{border:1px solid var(--border);background:color-mix(in srgb, var(--panel) 94%, transparent);border-radius:16px;min-width:0;padding:24px;transition:border-color .2s,transform .25s,box-shadow .25s}.lp-card:hover{border-color:var(--border-strong);box-shadow:0 24px 50px -30px color-mix(in srgb, var(--log-bg) 45%, transparent);transform:translateY(-3px)}.lp-card h3{align-items:center;gap:10px;margin:0;font-size:17px;line-height:1.35;display:flex}.lp-card p{color:var(--muted);margin:8px 0 0;font-size:14.5px;line-height:1.55}.lp-ic{background:var(--accent-soft);width:30px;height:30px;color:var(--accent);border-radius:8px;flex:none;place-items:center;display:inline-grid}.lp-steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin:0;padding:0;list-style:none;display:grid;position:relative}.lp-steps:before{content:"";border-top:1px dashed var(--border-strong);position:absolute;top:196px;left:12%;right:12%}.lp-step{text-align:center;flex-direction:column;align-items:center;min-width:0;display:flex;position:relative}.lp-step-ui{border:1px solid var(--border);background:color-mix(in srgb, var(--panel) 94%, transparent);border-radius:16px;place-items:center;width:100%;height:172px;padding:16px;display:grid;overflow:hidden}.lp-step-num{z-index:1;width:32px;height:32px;font-family:var(--mono);background:var(--bg);border:1px solid var(--accent);color:var(--accent);border-radius:50%;place-items:center;margin:10px 0 14px;font-size:13px;font-weight:700;display:grid;position:relative}.lp-step h3{margin:0;font-size:17px}.lp-step p{color:var(--muted);max-width:230px;margin:6px 0 0;font-size:14px;line-height:1.5}.lp-ui{width:100%;max-width:230px}.lp-ui-connect{justify-items:center;gap:12px;display:grid;position:relative}.lp-ui-btn{background:var(--accent);color:var(--accent-ink);white-space:nowrap;border-radius:7px;align-items:center;gap:7px;padding:8px 12px;font-size:12.5px;font-weight:600;animation:4s ease-in-out infinite lp-press;display:inline-flex}.lp-cursor{color:var(--text);fill:var(--panel);animation:4s ease-in-out infinite lp-cursor;position:absolute;top:18px;left:60%}.lp-ui-ok{color:var(--ok-fg);background:var(--ok-bg);border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:12px;font-weight:600;animation:4s ease-in-out infinite lp-appear;display:inline-flex}.lp-ui-repos{gap:6px;margin:0;padding:0;list-style:none;display:grid}.lp-ui-repos li{border:1px solid var(--border);font-family:var(--mono);color:var(--muted);text-align:left;border-radius:8px;align-items:center;gap:8px;padding:7px 10px;font-size:11.5px;animation:4.5s ease-in-out infinite lp-select;display:flex}.lp-ui-repos li:nth-child(2){animation-delay:1.5s}.lp-ui-repos li:nth-child(3){animation-delay:3s}.lp-ui-repos li svg{margin-left:auto}.lp-radio{border:1.5px solid var(--border-strong);border-radius:50%;flex:none;width:11px;height:11px}.lp-ui-deploy{justify-items:center;gap:12px;display:grid}.lp-ui-cta{background:var(--accent);color:var(--accent-ink);white-space:nowrap;border-radius:7px;padding:7px 12px;font-size:12px;font-weight:600}.lp-bar{background:var(--panel-2);border-radius:3px;width:100%;height:6px;overflow:hidden}.lp-bar i{background:var(--accent);transform-origin:0;width:100%;height:100%;animation:3.6s ease-in-out infinite lp-fill;display:block}.lp-ui-steps{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.lp-ui-steps b{border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:2px 7px;font-size:10.5px;font-weight:600;animation:3.6s ease-in-out infinite lp-lit}.lp-ui-steps b:nth-child(2){animation-delay:.9s}.lp-ui-steps b:nth-child(3){animation-delay:1.8s}.lp-ui-live{justify-items:center;gap:12px;display:grid}.lp-ui-url{border:1px solid var(--accent);background:var(--accent-soft);border-radius:8px;align-items:center;gap:6px;min-width:0;max-width:100%;padding:7px 10px;font-size:11.5px;animation:2.4s ease-in-out infinite lp-glow;display:flex}.lp-ui-url code{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.lp-ui-url svg{color:var(--accent);flex:none}.lp-who-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.lp-who{padding:0;overflow:hidden}.lp-who-vis{border-bottom:1px solid var(--border);background:radial-gradient(ellipse at 50% 120%, var(--accent-soft), transparent 70%);place-items:center;height:200px;padding:20px;display:grid}.lp-who h3,.lp-who p{padding-inline:24px}.lp-who h3{margin-top:22px}.lp-who p{padding-bottom:24px}.lp-illu{width:100%;max-width:260px}.lp-illu-vibe{justify-content:center;align-items:center;gap:10px;display:flex}.lp-editor{border:1px solid var(--border-strong);background:var(--panel);border-radius:10px;flex:1;gap:7px;min-width:0;padding:10px;display:grid}.lp-editor-tab{font-family:var(--mono);color:var(--muted);align-items:center;gap:5px;margin-bottom:3px;font-size:11px;display:inline-flex}.lp-editor-tab svg{color:var(--accent)}.lp-code-line{background:var(--panel-2);border-radius:3px;height:6px}.lp-code-line.in{background:var(--accent);opacity:.55;transform-origin:0;animation:3s ease-in-out infinite lp-type}.lp-code-line.w80{width:80%;animation-delay:.4s}.lp-code-line.w70{width:70%}.lp-code-line.w50{width:50%}.lp-code-line.w40{width:40%}.lp-illu-arrow{color:var(--accent);flex:none;animation:1.6s ease-in-out infinite lp-nudge}.lp-illu-team,.lp-illu-clients{gap:8px;margin:0;padding:0;list-style:none;display:grid}.lp-illu-team li,.lp-illu-clients li{border:1px solid var(--border);background:var(--panel);border-radius:10px;align-items:center;gap:10px;padding:8px 10px;animation:.5s both lp-rise;display:flex}.lp-illu-team li:nth-child(2),.lp-illu-clients li:nth-child(2){animation-delay:.12s}.lp-illu-team li:nth-child(3),.lp-illu-clients li:nth-child(3){animation-delay:.24s}.lp-avatar{background:var(--accent-soft);width:26px;height:26px;color:var(--accent);border-radius:50%;flex:none;place-items:center;font-size:11px;font-weight:700;display:grid}.lp-skel{background:var(--panel-2);border-radius:3px;flex:1;height:6px}.lp-role{background:var(--neutral-bg);color:var(--neutral-fg);border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600}.lp-illu-team li:first-child .lp-role{background:var(--ok-bg);color:var(--ok-fg)}.lp-illu-clients li{font-size:12.5px}.lp-illu-clients svg{color:var(--accent);flex:none}.lp-dot-ok{background:var(--accent);border-radius:50%;width:8px;height:8px;margin-left:auto;animation:2s ease-in-out infinite lp-pulse}.lp-illu-clients li:nth-child(2) .lp-dot-ok{animation-delay:.6s}.lp-illu-clients li:nth-child(3) .lp-dot-ok{animation-delay:1.2s}.lp-why-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.lp-why{flex-direction:column;padding:0;display:flex;overflow:hidden}.lp-why-vis{border-bottom:1px solid var(--border);background:radial-gradient(ellipse at 50% 0%, var(--accent-soft), transparent 70%);place-items:center;height:220px;padding:24px;display:grid;position:relative;overflow:hidden}.lp-why-txt{padding:22px 24px 24px}.lp-wv-push{grid-template-rows:auto auto;align-content:center;gap:18px}.lp-track{background:var(--border-strong);border-radius:1px;width:78%;height:2px;position:relative}.lp-track i{background:var(--accent);width:12px;height:12px;box-shadow:0 0 0 4px var(--accent-soft);border-radius:50%;animation:3.6s linear infinite lp-travel;position:absolute;top:-5px;left:0}.lp-track i.c2{animation-delay:1.2s}.lp-track i.c3{animation-delay:2.4s}.lp-wv-label,.lp-wv-target{background:var(--panel);border:1px solid var(--border-strong);border-radius:8px;align-items:center;gap:6px;padding:6px 10px;font-size:12px;font-weight:600;display:inline-flex;position:absolute;top:50%;transform:translateY(-50%)}.lp-wv-label{font-family:var(--mono);font-weight:500;left:4%}.lp-wv-target{color:var(--accent-ink);background:var(--accent);border-color:var(--accent);right:4%}.lp-wv-label svg{color:var(--accent)}.lp-wv-mon{grid-template-columns:1fr;align-content:center;gap:14px}.lp-wv-spark{align-items:flex-end;gap:4px;width:100%;max-width:380px;height:70px;display:flex}.lp-wv-spark i{background:var(--accent);opacity:.75;transform-origin:bottom;border-radius:3px 3px 0 0;flex:1;animation:2.4s ease-in-out infinite lp-bars}.lp-wv-logs{width:100%;max-width:380px;font-family:var(--mono);border:1px solid var(--border);background:var(--panel-2);border-radius:8px;gap:2px;padding:10px 12px;font-size:12px;display:grid}.lp-wv-logs span{color:var(--text);animation:3.6s ease-in-out infinite lp-log}.lp-wv-logs span:nth-child(2){animation-delay:.5s}.lp-wv-logs span:nth-child(3){animation-delay:1s}.lp-wv-env{align-content:center;gap:8px}.lp-env{border:1px solid var(--border);background:var(--panel);border-radius:8px;justify-content:space-between;gap:20px;width:280px;max-width:100%;padding:8px 12px;font-size:12.5px;animation:.5s both lp-rise;display:flex}.lp-env code{color:var(--accent)}.lp-env em{color:var(--muted);letter-spacing:.1em;font-style:normal}.lp-wv-badge{background:var(--ok-bg);color:var(--ok-fg);border-radius:999px;justify-self:center;align-items:center;gap:6px;margin-top:4px;padding:4px 12px;font-size:12px;font-weight:600;display:inline-flex}.lp-wv-domain{align-content:center;gap:16px}.lp-wv-addr{border:1px solid var(--border-strong);background:var(--panel);border-radius:999px;justify-self:center;align-items:center;gap:8px;padding:9px 16px;font-size:14px;display:inline-flex}.lp-wv-addr svg{color:var(--accent)}.lp-flow{flex-wrap:wrap;justify-content:center;gap:6px;margin:0;padding:0;list-style:none;display:flex}.lp-flow li{border:1px solid var(--border);color:var(--muted);background:var(--panel);border-radius:999px;padding:4px 11px;font-size:12px;animation:3.6s ease-in-out infinite lp-flow}.lp-tag{background:var(--neutral-bg);color:var(--neutral-fg);border-radius:999px;align-items:center;padding:4px 12px;font-size:12px;font-weight:600;display:inline-flex}.lp-tag-warn{background:var(--warn-bg);color:var(--warn-fg)}.lp-head .lp-tag{margin-top:22px}.lp-plans{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:20px;display:grid}.lp-plan{flex-direction:column;padding:28px;display:flex}.lp-plan.featured{border-color:var(--accent);box-shadow:0 30px 60px -36px var(--accent)}.lp-plan h3{font-size:18px}.lp-plan-tag{margin-top:4px!important}.lp-price{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex;color:var(--text)!important;margin:22px 0!important}.lp-price strong{letter-spacing:-.03em;font-size:40px;font-weight:700;line-height:1}.lp-price span{color:var(--muted);font-size:14px}.lp-plan-limits{border-top:1px solid var(--border);margin:0}.lp-plan-limits div{border-bottom:1px solid var(--border);justify-content:space-between;gap:12px;padding:11px 0;font-size:14px;display:flex}.lp-plan-limits dt{color:var(--muted)}.lp-plan-limits dd{text-align:right;margin:0;font-weight:600}.lp-plan-common{color:var(--muted);gap:8px;margin:18px 0 0;padding:0;font-size:13.5px;list-style:none;display:grid}.lp-plan-common li{align-items:center;gap:8px;display:flex}.lp-plan-common svg{color:var(--accent);flex:none}.lp-plans-foot{text-align:center;flex-direction:column;align-items:center;gap:16px;margin-top:48px;display:flex}.lp-plans-foot p{color:var(--muted);max-width:560px;margin:0;font-size:13.5px}.lp-final{text-align:center;border:1px solid var(--border);background:radial-gradient(ellipse at 50% 0%, var(--accent-soft), transparent 70%), color-mix(in srgb, var(--panel) 92%, transparent);border-radius:24px;flex-direction:column;align-items:center;padding:96px 24px;display:flex}.lp-final h2{margin-top:0}.lp-footer{border-top:1px solid var(--border);color:var(--muted);margin-top:180px;padding:28px 0 36px;font-size:13px}.lp-footer-in{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.lp-footer-brand{align-items:center;gap:10px;display:inline-flex}.lp-footer-brand .brand-mark{border-radius:6px;width:22px;height:22px}.lp-footer nav{flex-wrap:wrap;gap:18px;display:flex}.lp-footer a{color:var(--muted);text-decoration:none}.lp-footer a:hover{color:var(--text)}@keyframes lp-pulse{50%{opacity:.35}}@keyframes lp-spin{to{transform:rotate(360deg)}}@keyframes lp-pop{0%{opacity:0;transform:scale(.4)}}@keyframes lp-rise{0%{opacity:0;transform:translateY(8px)}}@keyframes lp-ring{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--accent) 45%, transparent)}to{box-shadow:0 0 0 18px #0000}}@keyframes lp-press{0%,30%{transform:scale(1)}36%{transform:scale(.94)}42%,to{transform:scale(1)}}@keyframes lp-cursor{0%{opacity:0;transform:translate(40px,40px)}15%{opacity:1}32%{transform:translate(-6px)}70%{opacity:1;transform:translate(-6px)}85%,to{opacity:0;transform:translate(40px,40px)}}@keyframes lp-appear{0%,38%{opacity:0;transform:translateY(4px)}46%,88%{opacity:1;transform:none}to{opacity:0}}@keyframes lp-select{0%,to{border-color:var(--border);color:var(--muted);background:0 0}8%,30%{border-color:var(--accent);color:var(--text);background:var(--accent-soft)}}@keyframes lp-fill{0%{transform:scaleX(0)}70%,to{transform:scaleX(1)}}@keyframes lp-lit{0%,15%{border-color:var(--border);color:var(--muted)}25%,85%{border-color:var(--accent);color:var(--text)}to{border-color:var(--border);color:var(--muted)}}@keyframes lp-glow{50%{box-shadow:0 0 0 5px var(--accent-soft)}}@keyframes lp-type{0%{transform:scaleX(0)}50%,to{transform:scaleX(1)}}@keyframes lp-nudge{50%{transform:translate(4px)}}@keyframes lp-travel{0%{opacity:0;left:0}10%{opacity:1}90%{opacity:1}to{opacity:0;left:calc(100% - 12px)}}@keyframes lp-bars{50%{transform:scaleY(.6)}}@keyframes lp-log{0%,to{opacity:.35}30%,60%{opacity:1}}@keyframes lp-flow{0%,to{border-color:var(--border);color:var(--muted);background:var(--panel)}20%,30%{border-color:var(--accent);color:var(--text);background:var(--accent-soft)}}@media (max-width:1020px){.lp-nav{display:none}.lp-nav+.lp-header-actions{margin-left:auto}.lp-steps{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:48px}.lp-steps:before{display:none}.lp-who-grid,.lp-plans{grid-template-columns:minmax(0,1fr);max-width:520px;margin-inline:auto}}@media (max-width:640px){.lp{font-size:14.5px}.lp-wrap{padding-inline:16px}.lp-header-in{gap:10px;height:56px}.lp-login{display:none}.lp-hero{padding-top:36px}.lp-sub{font-size:16.5px}.lp-cta,.lp-cta .btn-hero{width:100%}.lp-section{padding-top:120px}.lp-head{margin-bottom:48px}.lp-steps{grid-template-columns:minmax(0,1fr);row-gap:40px}.lp-why-grid{grid-template-columns:minmax(0,1fr)}.lp-why-vis{height:200px}.lp-who-vis{height:180px}.lp-wv-label,.lp-wv-target{padding:5px 8px;font-size:11px}.lp-final{padding:56px 18px}.lp-footer{margin-top:120px}.lp-footer-in{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){.lp *,.lp :before,.lp :after{transition:none!important;animation:none!important}.lp-card:hover{transform:none}.lp-ui-ok{opacity:1}.lp-bg .bg-fx,.lp-bg .bg-grid{transition:none}}.lp-hz{grid-template-columns:minmax(0,1fr) minmax(0,540px);align-items:center;column-gap:64px;display:grid}.lp-hz-copy{min-width:0}.lp-hz-copy h1{text-align:left;margin:22px 0 18px;font-size:clamp(36px,4.1vw,56px);line-height:1.1}.lp-hz-copy .lp-sub{max-width:480px;font-size:17.5px}.lp-reassure{color:var(--text);gap:8px;margin:18px 0 0;padding:0;font-size:14.5px;list-style:none;display:grid}.lp-reassure li{align-items:center;gap:10px;display:flex}.lp-reassure svg{color:var(--accent);flex:none}.lp-hz-cta{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.lp-btn-xl{box-shadow:0 12px 30px -14px var(--accent);border-radius:10px;padding:13px 24px;font-size:16px}.lp-btn-lg{border-radius:10px;padding:12px 20px;font-size:15px}.lp-trust{color:var(--muted);align-items:center;gap:6px;margin:14px 0 0;font-size:12.5px;display:flex}.lp-trust svg{color:var(--accent);flex:none}.lp-hz-scene{min-width:0}@media (max-width:959px){.lp-hz{grid-template-columns:minmax(0,1fr);row-gap:48px}.lp-hz-scene{max-width:560px}}@media (max-width:560px){.lp-v{border-radius:16px;padding:14px}.lp-v-link{grid-template-columns:48px minmax(0,1fr);column-gap:12px;padding-left:10px}.lp-v-rail{height:128px}.lp-v .lp-dots{display:none}.lp-v .lp-addr{padding:3px 8px;font-size:11px}.lp-hz-cta .lp-btn{width:100%}}.lp-v{border:1px solid var(--border);background:color-mix(in srgb, var(--panel-2) 45%, transparent);border-radius:20px;width:100%;padding:20px}.lp-v-inner{display:grid}.lp-v-card{overflow:hidden}.lp-v-body{gap:12px;padding:14px 16px 16px;display:grid}.lp-v-files{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.lp-v-files li{border:1px solid var(--border);font-family:var(--mono);color:var(--muted);border-radius:7px;align-items:center;gap:6px;padding:5px 10px;font-size:12px;display:inline-flex}.lp-v-files li.hi{color:var(--text);border-color:color-mix(in srgb, var(--accent) 45%, var(--border))}.lp-v-files li.hi svg{color:var(--accent)}.lp-v .lp-commit{opacity:0;margin:0;transition:opacity .45s,transform .45s cubic-bezier(.2,.8,.2,1);transform:translateY(8px)scale(.98)}.lp-v.c-commit .lp-commit,.lp-v.is-live .lp-commit{opacity:1;transform:none}.lp-v-link{grid-template-columns:56px minmax(0,1fr);align-items:center;column-gap:16px;padding-left:22px;display:grid}.lp-v-rail{place-items:center;height:112px;display:grid;position:relative}.lp-v-line{background:var(--accent);opacity:.7;transform-origin:top;width:2px;margin-left:-1px;transition:transform .85s cubic-bezier(.65,0,.35,1);position:absolute;top:0;bottom:0;left:50%;transform:scaleY(0)}.lp-v.c-line .lp-v-line,.lp-v.is-live .lp-v-line{transform:scaleY(1)}.lp-v-rail:before{content:"";background:repeating-linear-gradient(to bottom, var(--border-strong) 0 5px, transparent 5px 10px);width:2px;margin-left:-1px;position:absolute;top:0;bottom:0;left:50%}.lp-v-node{z-index:1;background:var(--accent);width:48px;height:48px;color:var(--accent-ink);box-shadow:0 0 0 6px var(--bg), 0 12px 30px -10px var(--accent);border-radius:14px;place-items:center;transition:transform .4s cubic-bezier(.2,.8,.2,1);display:grid;position:relative}.lp-v-node:after{content:"";border:2px solid var(--accent);opacity:0;border-radius:18px;position:absolute;inset:-6px}.lp-v.c-busy .lp-v-node{transform:scale(1.06)}.lp-v.c-busy .lp-v-node:after{will-change:transform, opacity;animation:1.2s ease-out infinite lp-ring2}.lp-v-stages{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.lp-v-stages li{color:var(--muted);border:1px solid var(--border);background:var(--panel);border-radius:999px;align-items:center;gap:7px;padding:4px 11px 4px 5px;font-size:12.5px;transition:color .3s,border-color .3s;display:inline-flex}.lp-v-stages li.ok,.lp-v-stages li.run,.lp-v.is-live .lp-v-stages li{color:var(--text);border-color:color-mix(in srgb, var(--accent) 45%, var(--border))}.lp-v-stages .lp-tick{transition:background .25s,border-color .25s;position:relative}.lp-v-stages .lp-tick svg{opacity:0;transition:opacity .25s,transform .35s cubic-bezier(.3,1.6,.5,1);position:absolute;transform:scale(.4)}.lp-v-stages li.ok .lp-tick,.lp-v.is-live .lp-v-stages .lp-tick{background:var(--accent);border-color:var(--accent)}.lp-v-stages li.ok .lp-tick svg,.lp-v.is-live .lp-v-stages .lp-tick svg{opacity:1;transform:none}.lp-v-stages li.ok .lp-tick i,.lp-v.is-live .lp-v-stages .lp-tick i{opacity:0}.lp-v-stages li.run .lp-tick{border-color:var(--accent);border-top-color:#0000;animation:.9s linear infinite lp-spin}.lp-v-stages li.run .lp-tick i{opacity:0}.lp-v-page{grid-template-columns:minmax(0,1fr)}.lp-v-view{height:54px;position:relative}.lp-v-skel,.lp-v-site{align-content:start;gap:9px;transition:opacity .5s;display:grid;position:absolute;inset:0}.lp-v-skel span,.lp-v-site span{background:var(--panel-2);border-radius:4px;width:92%;height:8px;display:block}.lp-v-skel span:first-child,.lp-v-site span.h{width:62%;height:14px}.lp-v-skel span:last-child,.lp-v-site span.short{width:60%}.lp-v-site span.h{background:var(--accent-soft)}.lp-v-site span.short{background:color-mix(in srgb, var(--accent) 30%, var(--panel-2))}.lp-v-skel{opacity:1;overflow:hidden}.lp-v-site,.lp-v.is-live .lp-v-skel{opacity:0}.lp-v.is-live .lp-v-site{opacity:1}.lp-v-skel:after{content:"";background:linear-gradient(100deg, transparent 30%, color-mix(in srgb, var(--text) 10%, transparent) 50%, transparent 70%);opacity:0;position:absolute;inset:0;transform:translate(-100%)}.lp-v.c-load .lp-v-skel:after{opacity:1;will-change:transform;animation:.9s ease-in-out infinite lp-shimmer}.lp-v-status{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:8px;min-height:37px;padding-top:12px;display:flex}.lp-v-status>*{opacity:0;transition:opacity .3s,transform .45s cubic-bezier(.3,1.6,.5,1);transform:scale(.7)}.lp-v.is-live .lp-v-status>*{opacity:1;transform:none}.lp-v.is-live .lp-v-status>:nth-child(2){transition-delay:.15s}.lp-v-https{background:var(--ok-bg);color:var(--ok-fg);border-radius:999px;align-items:center;gap:6px;padding:3px 11px;font-size:12px;font-weight:600;display:inline-flex}.lp-v-https svg{flex:none}@media (max-width:560px){.lp-v{border-radius:16px;padding:14px}.lp-v-link{grid-template-columns:48px minmax(0,1fr);column-gap:12px;padding-left:10px}.lp-v-rail{height:128px}.lp-v .lp-dots{display:none}.lp-v .lp-addr{padding:3px 8px;font-size:11px}}.lp-hz-copy>.lp-badge{animation:.6s cubic-bezier(.2,.8,.2,1) 50ms both lp-enter}.lp-hz-copy>h1{animation:.7s cubic-bezier(.2,.8,.2,1) .15s both lp-enter}.lp-hz-copy>.lp-sub{animation:.7s cubic-bezier(.2,.8,.2,1) .27s both lp-enter}.lp-hz-copy .lp-reassure li{animation:.5s cubic-bezier(.2,.8,.2,1) both lp-enter}.lp-hz-copy .lp-reassure li:first-child{animation-delay:.38s}.lp-hz-copy .lp-reassure li:nth-child(2){animation-delay:.48s}.lp-hz-copy .lp-reassure li:nth-child(3){animation-delay:.58s}.lp-hz-copy .lp-reassure li svg{animation:.45s cubic-bezier(.3,1.6,.5,1) both lp-check}.lp-hz-copy .lp-reassure li:first-child svg{animation-delay:.5s}.lp-hz-copy .lp-reassure li:nth-child(2) svg{animation-delay:.6s}.lp-hz-copy .lp-reassure li:nth-child(3) svg{animation-delay:.7s}.lp-hz-cta{animation:.6s cubic-bezier(.2,.8,.2,1) .68s both lp-enter}.lp-hz-copy>.lp-trust{animation:.6s cubic-bezier(.2,.8,.2,1) .78s both lp-enter}.lp-hz-scene{animation:.9s cubic-bezier(.2,.8,.2,1) .25s both lp-enter-r}.lp-hz-copy .lp-hl{z-index:0;box-shadow:none;background:0 0;animation:10ms linear .75s both lp-ink;position:relative}.lp-hz-copy .lp-hl:before{content:"";z-index:-1;border-radius:inherit;background:var(--accent);box-shadow:0 10px 30px -12px var(--accent);transform-origin:0;animation:.65s cubic-bezier(.65,0,.35,1) .45s both lp-sweep;position:absolute;inset:0}.lp .btn-primary.lp-btn{transition:transform .2s,box-shadow .2s,filter .15s;position:relative;overflow:hidden}.lp .btn-primary.lp-btn:after{content:"";background:linear-gradient(100deg, transparent, color-mix(in srgb, var(--accent-ink) 22%, transparent) 50%, transparent);pointer-events:none;width:45%;position:absolute;top:0;bottom:0;left:0;transform:translate(-160%)skew(-18deg)}.lp .lp-btn-xl:after{animation:6s ease-in-out 2.2s infinite lp-shine}.lp .btn-primary.lp-btn:hover:after{animation:.75s ease-out lp-shine-once}.lp .lp-btn:hover{transform:translateY(-2px)}.lp .btn-primary.lp-btn:hover{box-shadow:0 16px 34px -14px var(--accent)}.lp .lp-btn svg{transition:transform .2s}.lp .lp-btn:hover svg{transform:translate(2px)}.lp .lp-btn:active{transform:translateY(0)}.lp-header{-webkit-backdrop-filter:none;background:0 0;border-bottom-color:#0000;transition:background .3s,border-color .3s}.lp-header[data-scrolled="1"],.lp:not(.lp-js) .lp-header{border-bottom-color:var(--border);background:color-mix(in srgb, var(--bg) 78%, transparent);-webkit-backdrop-filter:blur(12px)}.lp-nav a{position:relative}.lp-nav a:after{content:"";background:var(--accent);border-radius:1px;height:2px;transition:transform .3s;position:absolute;bottom:1px;left:12px;right:12px;transform:scaleX(0)}.lp-nav a.is-active{color:var(--text)}.lp-nav a.is-active:after{transform:scaleX(1)}[data-lp-reveal]{transition:opacity .7s ease var(--lp-d,0s), transform .7s cubic-bezier(.2, .8, .2, 1) var(--lp-d,0s)}.lp-js [data-lp-reveal]:not(.lp-in){opacity:0;transform:translateY(26px)}.lp-steps:before{border-top-style:solid;border-top-color:color-mix(in srgb, var(--accent) 45%, var(--border));transform-origin:0;transition:transform 1.4s cubic-bezier(.65,0,.35,1) .2s}.lp-js .lp-steps:not(.lp-in):before{transform:scaleX(0)}.lp-step-num{transition:background .4s,color .4s,box-shadow .4s;transition-delay:calc(var(--lp-d,0s) + .45s)}.lp-step.lp-in .lp-step-num{background:var(--accent);color:var(--accent-ink);box-shadow:0 0 0 5px var(--accent-soft)}.lp-card{isolation:isolate;transition:opacity .7s ease var(--lp-d,0s), transform .7s cubic-bezier(.2, .8, .2, 1) var(--lp-d,0s), border-color .25s, box-shadow .3s;position:relative}.lp-card:before{content:"";z-index:-1;border-radius:inherit;background:radial-gradient(320px circle at var(--mx,50%) var(--my,0%), var(--accent-soft), transparent 70%);opacity:0;pointer-events:none;transition:opacity .3s;position:absolute;inset:0}.lp-card:hover{border-color:color-mix(in srgb, var(--accent) 55%, var(--border));transform:translateY(-4px)}.lp-card:hover:before{opacity:1}.lp-who-vis>*,.lp-why-vis>*{transition:transform .5s cubic-bezier(.2,.8,.2,1)}.lp-card:hover .lp-who-vis>*,.lp-card:hover .lp-why-vis>*{transform:scale(1.03)}.lp-why-vis.lp-wv-push>.lp-wv-label,.lp-why-vis.lp-wv-push>.lp-wv-target{transform:translateY(-50%)}.lp-card:hover .lp-wv-push>.lp-wv-label,.lp-card:hover .lp-wv-push>.lp-wv-target{transform:translateY(-50%)scale(1.03)}.lp-step-ui>*{transition:transform .5s cubic-bezier(.2,.8,.2,1)}.lp-step:hover .lp-step-ui>*{transform:scale(1.04)}.lp-step-ui{transition:border-color .25s}.lp-step:hover .lp-step-ui{border-color:color-mix(in srgb, var(--accent) 55%, var(--border))}.lp-plan.featured:after{content:"";border-radius:inherit;border:1px solid var(--accent);box-shadow:0 0 22px -4px var(--accent), inset 0 0 18px -10px var(--accent);opacity:.25;pointer-events:none;animation:4.5s ease-in-out infinite lp-glowb;position:absolute;inset:-1px}.lp-js [data-lp-loop][data-play="0"],.lp-js [data-lp-loop][data-play="0"] *,.lp-js [data-lp-loop][data-play="0"] :before,.lp-js [data-lp-loop][data-play="0"] :after{animation-play-state:paused!important}@keyframes lp-enter{0%{opacity:0;transform:translateY(16px)}}@keyframes lp-enter-r{0%{opacity:0;transform:translate(36px)}}@keyframes lp-check{0%{opacity:0;transform:scale(.3)}}@keyframes lp-sweep{0%{transform:scaleX(0)}}@keyframes lp-ink{0%{color:var(--text)}to{color:var(--accent-ink)}}@keyframes lp-shine{0%,82%{transform:translate(-160%)skew(-18deg)}to{transform:translate(330%)skew(-18deg)}}@keyframes lp-shine-once{0%{transform:translate(-160%)skew(-18deg)}to{transform:translate(330%)skew(-18deg)}}@keyframes lp-ring2{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(1.45)}}@keyframes lp-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes lp-glowb{50%{opacity:1}}@media (prefers-reduced-motion:reduce){.lp *,.lp :before,.lp :after{transition:none!important;animation:none!important}.lp-js [data-lp-reveal]:not(.lp-in){opacity:1;transform:none}.lp-hz-copy .lp-hl{color:var(--accent-ink)}.lp-card:hover,.lp .lp-btn:hover,.lp-card:hover .lp-who-vis>*,.lp-card:hover .lp-why-vis>*,.lp-step:hover .lp-step-ui>*{transform:none}.lp-card:hover .lp-wv-push>.lp-wv-label,.lp-card:hover .lp-wv-push>.lp-wv-target{transform:translateY(-50%)}.lp-plan.featured:after{opacity:.6}.lp .btn-primary.lp-btn:after{display:none}}.topnav{flex:1;align-items:center;gap:2px;min-width:0;display:flex;overflow-x:auto}.topnav .nav-item{white-space:nowrap;width:auto}.topnav .btn{white-space:nowrap;align-items:center;gap:6px;margin-left:8px;display:inline-flex}.canvas-wrap{flex-direction:column;flex:1;min-width:0;display:flex}.canvas-wrap>.offline-banner,.canvas-wrap>.hint{margin:8px 16px}.steps{position:relative}.step{color:var(--muted);animation:.45s cubic-bezier(.2,.8,.2,1) both step-in;animation-delay:calc(var(--i,0) * 70ms);align-items:center;gap:12px;padding:8px 0;font-size:14px;transition:color .35s;display:flex;position:relative}.step-done{color:var(--text)}.step-current{color:var(--text);font-weight:600}.step-failed{color:var(--danger)}.step-unknown{color:var(--warn)}.step:not(:last-child):before{content:"";background:var(--border-strong);border-radius:2px;width:1.5px;transition:background .5s;position:absolute;top:31px;bottom:-8px;left:10.25px}.step-done:not(:last-child):before{background:var(--accent)}.step-icon{box-sizing:border-box;border:1.5px solid var(--border-strong);background:0 0;border-radius:50%;flex-shrink:0;place-items:center;width:22px;height:22px;font-size:12px;font-weight:700;line-height:1;transition:background .35s,border-color .35s,color .35s,transform .35s cubic-bezier(.2,.8,.2,1);display:grid;position:relative}.step-icon>svg{display:block}.step-icon.done{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);animation:.45s cubic-bezier(.3,1.5,.5,1) both step-pop}.step-icon.done svg{animation:.35s ease-out .1s both step-check}.step-icon.failed{background:var(--danger);border-color:var(--danger);color:#fff;animation:.45s both step-shake}.step-icon.unknown{background:var(--warn);border-color:var(--warn);color:#1c1c1c}.step-icon.pending{color:var(--muted)}.step-icon.current{border-color:color-mix(in srgb, var(--accent) 28%, transparent);animation:1.8s ease-out infinite step-halo}.step-icon.current .spinner{vertical-align:baseline;border:1.5px solid #0000;border-top-color:var(--accent);border-right-color:color-mix(in srgb, var(--accent) 35%, transparent);border-radius:50%;width:auto;height:auto;margin:0;animation:.9s cubic-bezier(.5,.15,.5,.85) infinite spin;position:absolute;inset:-1.5px}.step-current>span:not(.step-icon):not(.hint):after{content:"";text-align:left;width:1.2em;animation:1.4s steps(4,end) infinite step-dots;display:inline-block}.deploy-track{background:color-mix(in srgb, var(--border) 80%, transparent);border-radius:999px;height:4px;margin:14px 0 4px;position:relative;overflow:hidden}.deploy-track>i{border-radius:inherit;background:var(--accent);height:100%;transition:width .8s cubic-bezier(.2,.8,.2,1);display:block}.deploy-track.active>i{position:relative}.deploy-track.active>i:after{content:"";background:linear-gradient(90deg,#0000,#ffffff8c,#0000);animation:1.6s ease-in-out infinite track-shine;position:absolute;inset:0;transform:translate(-100%)}.deploy-track.active:after{content:"";background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--accent) 35%, transparent), transparent);width:22%;animation:1.8s ease-in-out infinite track-wait;position:absolute;top:0;bottom:0;right:0}@keyframes step-in{0%{opacity:0;transform:translateY(6px)}}@keyframes step-pop{0%{transform:scale(.5)}to{transform:scale(1)}}@keyframes step-check{0%{opacity:0;transform:scale(.4)rotate(-20deg)}}@keyframes step-shake{20%{transform:translate(-3px)}45%{transform:translate(3px)}70%{transform:translate(-2px)}}@keyframes step-halo{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--accent) 40%, transparent)}to{box-shadow:0 0 0 9px #0000}}@keyframes step-dots{0%{content:""}25%{content:"."}50%{content:".."}75%,to{content:"..."}}@keyframes track-shine{to{transform:translate(100%)}}@keyframes track-wait{0%{transform:translate(-120%)}to{transform:translate(520%)}}@media (prefers-reduced-motion:reduce){.step,.step-icon,.step-icon.done,.step-icon.done svg,.step-icon.failed,.step-icon.current,.step-icon.current .spinner,.deploy-track.active>i:after,.deploy-track.active:after{animation:none}.step-current>span:not(.step-icon):not(.hint):after{content:"…";animation:none}}.lp-hc{text-align:center;flex-direction:column;align-items:center;max-width:820px;margin:0 auto;display:flex}.lp-hc h1{text-align:center;margin:24px 0 22px;font-size:clamp(38px,6vw,72px);line-height:1.08}.lp-hc .lp-sub{max-width:600px;margin-left:auto;margin-right:auto;font-size:18px}.lp-hc .lp-hz-cta,.lp-hc .lp-trust{justify-content:center}.lp-hero{padding-bottom:24px}.lp-how-scene{max-width:560px;margin:36px auto 0}.lp-head .lp-sub{text-align:center;max-width:520px;margin:14px auto 0}a,a:hover{text-decoration:none}.link-btn:hover{color:var(--text)}.page-title-row{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.empty-block,.resume-card{text-align:center;max-width:560px;margin-left:auto;margin-right:auto}.resume-card{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:flex}.cleanup-bar{text-align:center;justify-content:center;max-width:720px;margin-left:auto;margin-right:auto}.cleanup-bar span{flex:0 auto;min-width:0}.btn{border-radius:999px;padding:9px 20px}.btn-sm{padding:6px 14px}.btn-primary{box-shadow:none}.btn-secondary{background:linear-gradient(180deg, color-mix(in srgb, var(--panel-2) 70%, var(--text) 6%), var(--panel-2))}.btn-secondary:hover:not(:disabled){border-color:var(--accent)}.icon-btn{border-radius:999px;width:36px;height:36px}.icon-btn:hover{border-color:var(--accent)}.header{z-index:30;isolation:isolate;background:color-mix(in srgb, var(--bg) 86%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);grid-template-columns:auto minmax(200px,1fr) auto;justify-content:stretch;align-items:center;gap:20px;height:68px;min-height:68px;padding:0 max(24px,50% - 520px);display:grid;position:sticky;top:0}.header:after{content:"";background:linear-gradient(90deg, transparent, var(--accent), transparent);width:120px;height:1px;position:absolute;bottom:-1px;left:50%;transform:translate(-50%)}.header-left{align-items:center;min-width:0;display:flex}.header-right{justify-content:flex-end;align-items:center;gap:10px;min-width:0;display:flex}.header .brand{padding:0}.pill{border:1px solid var(--border-strong);background:color-mix(in srgb, var(--panel) 80%, transparent);height:38px;color:var(--text);font:inherit;white-space:nowrap;cursor:pointer;border-radius:999px;flex:none;align-items:center;gap:8px;padding:0 16px;font-size:13px;font-weight:600;text-decoration:none;transition:border-color .15s,background .15s,box-shadow .15s,transform .15s;display:inline-flex}.pill:hover{border-color:var(--accent)}.pill:active{transform:scale(.98)}.pill.active{border-color:color-mix(in srgb, var(--accent) 65%, transparent)}.pill.primary{background:var(--accent);color:var(--accent-ink);border-color:#0000}.pill.primary:hover{filter:brightness(1.08)}.user-pill{color:var(--muted);padding-right:6px;font-weight:500}.pill-x{width:26px;height:26px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;place-items:center;display:grid}.pill-x:hover{background:var(--panel-2);color:var(--text)}.pill-select{background-color:color-mix(in srgb, var(--panel) 80%, transparent);border-radius:999px;width:auto;max-width:180px;height:38px;padding:0 30px 0 16px;font-size:13px;font-weight:600}@media (max-width:860px){.header{grid-template-columns:1fr auto;row-gap:10px;height:auto;padding:10px 16px}.header-right{flex-wrap:wrap;gap:6px}}@media (prefers-reduced-motion:reduce){.pill{transition:none}}.lp-nav a{border-radius:999px;padding:7px 14px}.lp-login{border:1px solid var(--border-strong);background:color-mix(in srgb, var(--panel) 80%, transparent);border-radius:999px;padding:7px 18px;transition:border-color .15s}.lp-login:hover{color:var(--text);border-color:var(--accent)}.lp-header .lp-btn{padding:7px 20px}@media (max-width:1500px){.pill:not(.primary):not(.user-pill) .pill-label{display:none}.pill:not(.primary):not(.user-pill){padding:0 12px}}.shell .container{padding-top:44px}.page-head{align-items:center;gap:24px;margin-bottom:36px}.page-head h1{font-size:26px}.page-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.page-actions .pill,.page-actions .btn{height:40px}.page-actions .btn{align-items:center;gap:8px;margin-top:0;padding:0 20px;display:inline-flex}.resume-card,.cleanup-bar{margin-bottom:24px}.tbl-wrap{margin-top:4px}.pill{background:linear-gradient(180deg, color-mix(in srgb, var(--text) 5%, transparent), transparent)}.pill:hover{background:color-mix(in srgb, var(--panel-2) 70%, transparent)}.pill-dot{background:var(--danger);border-radius:50%;width:7px;height:7px;margin-left:2px;animation:1.2s infinite ws-pulse}.kpis{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:36px;display:grid}.kpi{border:1px solid var(--border);background:linear-gradient(160deg, color-mix(in srgb, var(--panel) 88%, transparent), var(--panel));border-radius:16px;min-height:152px;padding:20px 22px;transition:border-color .2s,transform .25s cubic-bezier(.2,.8,.2,1);position:relative;overflow:hidden}.kpi-label{color:var(--muted);font-size:13px}.kpi-value span{letter-spacing:0;color:var(--muted);margin-left:6px;font-size:15px;font-weight:500}.kpi-detail{font-family:var(--mono);color:var(--accent);margin-top:12px;font-size:12px}.kpi-detail.hot{color:var(--warn)}.kpi-art{pointer-events:none;opacity:.95;width:140px;height:110px;position:absolute;bottom:-18px;right:-8px}.kpi-sheet rect:not(.line):not(.bar):not(.pulse):not(.pin):not(.core){fill:var(--panel-2);stroke:var(--border-strong);stroke-width:1.2px}.kpi-sheet .dot{fill:var(--accent)}.kpi-sheet .line,.kpi-sheet .pin{fill:var(--border-strong)}.kpi-sheet .core{fill:var(--accent-soft);stroke:color-mix(in srgb, var(--accent) 45%, transparent);stroke-width:1.2px}.kpi-sheet .bar{fill:var(--accent);opacity:.85}.kpi-sheet .pulse{fill:var(--accent)}.kpi-sheet.back{opacity:.45;transform-origin:50%;animation:7s ease-in-out infinite kpi-float}.kpi-sheet.mid{opacity:.7;transform-origin:50%;animation:6s ease-in-out -2s infinite kpi-float}.kpi-sheet.front{transform-origin:50%;animation:5s ease-in-out infinite kpi-float}.kpi-sheet .line{transform-origin:0;animation:3.6s ease-in-out infinite kpi-line}.kpi-sheet .l2{animation-delay:-.7s}.kpi-sheet .l3{animation-delay:-1.4s}.kpi-sheet .l4{animation-delay:-2.1s}.kpi-sheet .bar{transform-origin:bottom;animation:2.6s ease-in-out infinite kpi-bar}.kpi-sheet .b1{animation-delay:-.4s}.kpi-sheet .b2{animation-delay:-.9s}.kpi-sheet .b3{animation-delay:-1.4s}.kpi-sheet .b4{animation-delay:-1.9s}.kpi-sheet .pulse{animation:2.2s ease-in-out infinite kpi-pulse}@keyframes kpi-float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes kpi-line{0%,to{opacity:.55;transform:scaleX(.55)}50%{opacity:1;transform:scaleX(1)}}@keyframes kpi-bar{0%,to{transform:scaleY(.4)}50%{transform:scaleY(1)}}@keyframes kpi-pulse{0%,to{opacity:.3}50%{opacity:1}}@media (prefers-reduced-motion:reduce){.kpi,.kpi-sheet,.kpi-sheet *,.pill-dot{transition:none;animation:none!important}}@media (max-width:720px){.page-head{align-items:flex-start}.page-actions{width:100%}.page-actions>*{flex:1;justify-content:center}}.gauge{border:1px solid var(--border-strong);background:0 0;border-radius:999px;height:12px;padding:2px;position:relative;overflow:hidden}.gauge i{background:var(--accent);border-radius:999px;height:100%;transition:width .7s cubic-bezier(.2,.8,.2,1);display:block}.gauge.warn i{background:var(--warn)}.gauge.bad i{background:var(--danger)}.meter-bar,.deploy-track{border:1px solid var(--border-strong);background:0 0;border-radius:999px;height:12px;padding:2px;overflow:hidden}.meter-bar i,.deploy-track>i,.deploy-track.active>i:after{border-radius:999px}.kpis{gap:16px;margin-bottom:40px}.kpi{text-align:left;font:inherit;color:var(--text);cursor:pointer;border:1px solid var(--border);background:linear-gradient(180deg, color-mix(in srgb, var(--text) 4%, transparent), transparent), var(--panel);border-radius:16px;flex-direction:column;align-items:stretch;min-height:150px;padding:20px 22px 18px;transition:border-color .2s,transform .25s cubic-bezier(.2,.8,.2,1);display:flex;position:relative;overflow:hidden}.kpi:hover{border-color:var(--border-strong);transform:translateY(-2px)}.kpi-label{color:var(--muted);font-size:13.5px;font-weight:500}.kpi-value{letter-spacing:-.03em;font-variant-numeric:tabular-nums;margin-top:6px;font-size:36px;font-weight:650;line-height:1.1}.kpi-value small{letter-spacing:0;color:var(--muted);margin-left:6px;font-size:14px;font-weight:500}.kpi-gauge{margin-top:auto;padding-top:18px;padding-right:96px;display:block}.kpi-art{pointer-events:none;width:120px;height:96px;position:absolute;bottom:-14px;right:-6px}.kpi-art svg{width:100%;height:100%;overflow:visible;transform:rotate(-9deg)}.kpi-art svg *{transform-box:fill-box}.kpi-art .kpi-sheet rect:not(.line):not(.bar):not(.pulse):not(.pin):not(.core){fill:var(--panel-2);stroke:var(--border-strong);stroke-width:1.2px}.kpi-art .dot{fill:var(--accent)}.kpi-art .line,.kpi-art .pin{fill:var(--border-strong)}.kpi-art .core{fill:var(--accent-soft);stroke:color-mix(in srgb, var(--accent) 45%, transparent);stroke-width:1.2px}.kpi-art .bar{fill:var(--accent);opacity:.85}.kpi-art .pulse{fill:var(--accent)}.apps{border:1px solid var(--border);background:var(--panel);border-radius:16px;overflow:hidden}.apps-head,.app-row{grid-template-columns:44px minmax(0,1.5fr) minmax(0,1.6fr) minmax(0,1.2fr) minmax(0,1fr) 118px 40px;align-items:center;column-gap:16px;padding:0 20px;display:grid}.apps-head{letter-spacing:.08em;text-transform:uppercase;height:42px;color:var(--muted);border-bottom:1px solid var(--border);font-size:11.5px}.apps-list{margin:0;padding:0;list-style:none}.app-row{border-bottom:1px solid var(--border);cursor:pointer;min-height:72px;transition:background .15s;animation:.4s both ws-card-in}.app-row:last-child{border-bottom:0}.app-row:hover{background:color-mix(in srgb, var(--text) 3%, transparent)}.app-no{color:var(--muted);font-variant-numeric:tabular-nums;font-size:20px;font-weight:600}.app-name{align-items:center;gap:12px;min-width:0;display:flex}.app-title{flex-direction:column;gap:2px;min-width:0;display:flex}.app-when{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.app-name b{white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:600;overflow:hidden}.app-ico{background:var(--accent-soft);width:34px;height:34px;color:var(--accent);border-radius:10px;flex:none;place-items:center;display:grid}.app-repo,.app-url{min-width:0;font-family:var(--mono);color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;overflow:hidden}.app-repo{align-items:center;gap:6px;display:flex}.app-repo svg{flex:none}.app-mem{min-width:0;color:var(--muted);font-variant-numeric:tabular-nums;flex-direction:column;gap:6px;font-size:12.5px;display:flex}.app-mem .gauge{height:9px}.app-act{justify-content:flex-end;display:flex}.status{white-space:nowrap;border:1px solid #0000;border-radius:999px;justify-self:start;align-items:center;gap:7px;height:26px;padding:0 11px;font-size:12.5px;font-weight:600;display:inline-flex}.status i{background:currentColor;border-radius:50%;width:6px;height:6px}.status.ok{color:var(--ok-fg);background:var(--ok-bg);border-color:color-mix(in srgb, var(--ok-fg) 25%, transparent)}.status.warn{color:var(--warn-fg);background:var(--warn-bg);border-color:color-mix(in srgb, var(--warn-fg) 25%, transparent)}.status.run{color:var(--info-fg);background:var(--info-bg);border-color:color-mix(in srgb, var(--info-fg) 25%, transparent)}.status.bad{color:var(--bad-fg);background:var(--bad-bg);border-color:color-mix(in srgb, var(--bad-fg) 25%, transparent)}.status.off{color:var(--neutral-fg);background:var(--neutral-bg)}.status.run i{animation:1.2s infinite ws-pulse}.icon-btn.danger{color:var(--danger)}.icon-btn.danger:hover{border-color:var(--danger)}.icon-btn.armed{border-color:var(--danger);background:var(--danger);color:#fff;width:auto;padding:0 12px}.armed-txt{font-size:12.5px;font-weight:600}@media (max-width:1080px){.apps-head span:nth-child(3),.app-repo{display:none}.apps-head,.app-row{grid-template-columns:40px minmax(0,1.6fr) minmax(0,1.2fr) minmax(0,1fr) 118px 40px}}@media (max-width:760px){.apps-head span:nth-child(4),.app-url,.apps-head span:nth-child(5),.app-mem{display:none}.apps-head,.app-row{grid-template-columns:36px minmax(0,1fr) auto 40px}.app-no{font-size:16px}}.notices{z-index:70;flex-direction:column;gap:10px;width:min(560px,100vw - 32px);margin:0;padding:0;list-style:none;display:flex;position:fixed;bottom:20px;left:50%;transform:translate(-50%)}.notice{background:color-mix(in srgb, var(--panel) 90%, transparent);border:1px solid var(--border-strong);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:14px;align-items:center;gap:12px;padding:12px 12px 12px 16px;font-size:13.5px;animation:.45s cubic-bezier(.2,.8,.2,1) both notice-in;display:flex;box-shadow:0 12px 36px #00000059}.notice>svg{flex:none}.notice.info>svg{color:var(--info-fg)}.notice.ok>svg{color:var(--accent)}.notice.warn>svg,.notice.error>svg{color:var(--warn)}.notice.error>svg{color:var(--danger)}.notice-txt{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.notice-txt b{font-weight:600}.notice-txt span{color:var(--muted);font-size:12.5px}.notice-act{border:1px solid var(--border-strong);height:30px;color:var(--text);font:inherit;cursor:pointer;background:0 0;border-radius:999px;flex:none;padding:0 14px;font-size:12.5px;font-weight:600;transition:border-color .15s,background .15s}.notice-act:hover{border-color:var(--accent)}.notice-act.armed{background:var(--danger);border-color:var(--danger);color:#fff}.notice-x{width:28px;height:28px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;flex:none;place-items:center;display:grid}.notice-x:hover{color:var(--text);background:var(--panel-2)}@keyframes notice-in{0%{opacity:0;transform:translateY(14px)}}@media (prefers-reduced-motion:reduce){.notice,.app-row{animation:none}}.backlink{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;margin:0 0 14px;padding:4px 0;font-size:13.5px;transition:color .15s,transform .2s;display:inline-flex}.backlink:hover{color:var(--text);transform:translate(-2px)}.backlink span{text-decoration:none}.usage-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:28px;display:flex}.usage-head h1{margin:0;font-size:26px}.usage-head p{color:var(--muted);margin:4px 0 0}.seg{border:1px solid var(--border-strong);background:var(--panel);border-radius:999px;padding:3px;display:inline-flex}.seg button{height:30px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:0 14px;font-size:13px;font-weight:600}.seg button.on{background:var(--panel-2);color:var(--text)}.usage-grid{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:18px;display:grid}.usage-card{border:1px solid var(--border);background:var(--panel);border-radius:16px;min-width:0;padding:18px 20px 14px}.usage-card header{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.usage-card header b{font-size:15px;font-weight:600}.usage-avg{font-variant-numeric:tabular-nums;color:var(--accent);font-size:22px;font-weight:600}.usage-meta{color:var(--muted);margin:4px 0 10px;font-size:12.5px}.usage-chart{position:relative}.usage-chart svg{width:100%;height:auto;display:block;overflow:visible}.usage-chart .grid{stroke:var(--border);stroke-width:1px;stroke-dasharray:3 5}.usage-chart .area{fill:color-mix(in srgb, var(--accent) 14%, transparent)}.usage-chart .curve{fill:none;stroke:var(--accent);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.usage-chart .cursor{stroke:var(--border-strong);stroke-width:1px}.usage-chart .dot{fill:var(--accent);stroke:var(--panel);stroke-width:2px}.usage-tip{pointer-events:none;white-space:nowrap;background:var(--panel-2);border:1px solid var(--border-strong);border-radius:10px;flex-direction:column;gap:2px;padding:6px 10px;font-size:12px;display:flex;position:absolute;top:-8px;transform:translate(-50%,-100%);box-shadow:0 8px 22px #0000004d}.usage-tip b{font-weight:600}.usage-tip span{color:var(--muted);font-variant-numeric:tabular-nums}.usage-axis{color:var(--muted);justify-content:space-between;margin-top:6px;font-size:11.5px;display:flex}.empty-block p{max-width:52ch}.brand-logo{align-items:center;display:inline-flex}.brand-logo img{width:auto;display:block}.brand-logo .bl-light,:root[data-theme=light] .brand-logo .bl-dark{display:none}:root[data-theme=light] .brand-logo .bl-light{display:block}.switcher,.umenu{position:relative}.switcher-btn{height:42px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:12px;align-items:center;gap:10px;margin-left:-10px;padding:0 12px 0 10px;transition:background .15s,border-color .15s;display:inline-flex}.switcher-btn:hover,.switcher-btn[aria-expanded=true]{background:color-mix(in srgb, var(--panel-2) 80%, transparent);border-color:var(--border-strong);color:var(--text)}.umenu .user-pill{color:var(--text);gap:9px;padding:0 12px 0 6px;font-weight:600}.umenu-avatar{border:1.5px solid var(--border-strong);width:26px;height:26px;color:var(--text);background:0 0;border-radius:50%;place-items:center;font-size:12px;font-weight:700;display:grid}.switcher-pop,.umenu-pop{z-index:60;border:1px solid var(--border-strong);background:color-mix(in srgb, var(--panel) 96%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:16px;padding:8px;animation:.18s both ws-card-in;position:absolute;top:calc(100% + 10px);box-shadow:0 20px 50px #0006}.switcher-pop{min-width:320px;left:0}.umenu-pop{min-width:260px;right:0}.pop-label{color:var(--muted);padding:8px 12px 6px;font-size:12.5px}.pop-sep{background:var(--border);height:1px;margin:6px 4px}.pop-item{width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;padding:9px 12px;font-size:14px;text-decoration:none;display:flex}.pop-item:hover,.pop-item:focus-visible{background:var(--panel-2);outline:none}.pop-item.disabled{cursor:default;opacity:.55}.pop-item.disabled:hover{background:0 0}.pop-item.plain{color:var(--muted);padding-left:12px}.pop-ico{width:18px;height:18px;color:var(--muted);flex:none;place-items:center;display:grid}.app-tile{letter-spacing:-.02em;border-radius:9px;flex:none;place-items:center;width:30px;height:30px;font-size:12px;font-weight:800;display:grid}.app-text{flex-direction:column;flex:1;min-width:0;line-height:1.25;display:flex}.app-text b{font-size:14px;font-weight:600}.app-text small{color:var(--muted);font-size:12px}.pop-item.current{background:color-mix(in srgb, var(--accent) 10%, transparent)}.soon{color:var(--muted);border:1px solid var(--border-strong);border-radius:99px;flex:none;padding:1px 8px;font-size:11px}@media (max-width:1100px){.umenu-name{display:none}.umenu .user-pill{padding:0 10px 0 6px}}@media (max-width:560px){.switcher-pop{min-width:min(320px,100vw - 32px)}}.nsearch{border:1px solid var(--border-strong);height:42px;color:var(--muted);background:color-mix(in srgb, var(--panel) 75%, transparent);border-radius:12px;align-items:center;gap:10px;padding:0 12px 0 16px;transition:border-color .15s,box-shadow .15s;display:flex;position:relative}.nsearch:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.nsearch svg{flex:none}.nsearch input{min-width:0;height:100%;color:var(--text);background:0 0;border:0;flex:1;padding:0;font-size:14px}.nsearch input:focus{box-shadow:none;outline:none}.nsearch-keys{flex:none;gap:4px;display:flex}.nsearch kbd{font:inherit;border:1px solid var(--border-strong);background:var(--panel-2);min-width:24px;height:22px;color:var(--muted);border-radius:6px;place-items:center;padding:0 6px;font-size:11.5px;display:inline-grid}.nsearch-list{z-index:40;border:1px solid var(--border-strong);background:color-mix(in srgb, var(--panel) 92%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:12px;margin:0;padding:6px;list-style:none;animation:.2s both ws-card-in;position:absolute;top:calc(100% + 8px);left:0;right:0;box-shadow:0 16px 44px #00000059}.nsearch-list button{width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;flex-direction:column;align-items:flex-start;gap:1px;padding:8px 10px;display:flex}.nsearch-list button.on{background:var(--panel-2)}.nsearch-list small{color:var(--muted);font-size:12px;font-family:var(--mono)}.nsearch-empty{color:var(--muted);padding:10px;font-size:13px}.header .nsearch{justify-self:center;width:100%;max-width:440px}@media (max-width:860px){.header{grid-template-columns:1fr auto;row-gap:10px;height:auto;padding-block:10px}.header .nsearch{grid-area:2/1/auto/-1;max-width:none}.nsearch-keys{display:none}}.shell[data-app=payag]{--accent:#4a9bff;--accent-dark:#2f7bff;--accent-ink:#fff;--accent-soft:#4a9bff24}:root[data-theme=light] .shell[data-app=payag]{--accent:#2563d8;--accent-dark:#1f5fd8;--accent-ink:#fff;--accent-soft:#2563d81a}.pa-repo{font-family:var(--mono);color:var(--muted);border:1px solid var(--border-strong);border-radius:99px;padding:6px 14px;font-size:12.5px}.pa-preview{color:var(--accent);background:var(--accent-soft);border:1px solid color-mix(in srgb, var(--accent) 30%, transparent);border-radius:12px;margin:0 0 22px;padding:9px 14px;font-size:13px}.pa-steps{color:var(--muted);flex-wrap:wrap;gap:8px 22px;margin:0 0 28px;padding:0;font-size:13.5px;list-style:none;display:flex}.pa-steps li{align-items:center;gap:9px;display:flex}.pa-steps li>span{border:1.5px solid var(--border-strong);border-radius:50%;place-items:center;width:24px;height:24px;font-size:12px;font-weight:700;display:grid}.pa-steps li.on{color:var(--text);font-weight:600}.pa-steps li.on>span,.pa-steps li.done>span{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.pa-chat .pa-log{flex-direction:column;gap:10px;max-height:360px;padding:4px 2px 10px;display:flex;overflow:auto}.pa-msg{white-space:pre-wrap;border-radius:16px;max-width:82%;padding:10px 14px;font-size:14.5px;line-height:1.5}.pa-msg.assistant{background:var(--panel-2);border:1px solid var(--border);border-bottom-left-radius:4px;align-self:flex-start}.pa-msg.merchant{background:var(--accent-soft);border:1px solid color-mix(in srgb, var(--accent) 40%, var(--border));border-bottom-right-radius:4px;align-self:flex-end}.pa-input{gap:10px;margin-top:12px;display:flex}.pa-input input{flex:1;margin:0}.pa-input .btn{margin-top:0;padding-inline:16px}.pa-recap{margin-top:12px}.pa-plan h3,.pa-done h3{color:var(--muted);letter-spacing:.02em;margin:18px 0 6px;font-size:14px;font-weight:600}.pa-plan ol,.pa-plan ul{margin:0;padding-left:20px;font-size:14.5px;line-height:1.6}.pa-plan code,.pa-done code{font-family:var(--mono);background:var(--panel-2);word-break:break-all;border-radius:6px;margin-right:6px;padding:2px 6px;font-size:12.5px}.pa-done h2{align-items:center;gap:10px;display:flex}.pa-creds{border-top:1px solid var(--border);margin:22px 0 14px;padding-top:4px}.pa-creds dl{grid-template-columns:max-content 1fr;gap:8px 16px;margin:10px 0 0;font-size:14px;display:grid}.pa-creds dt{color:var(--muted)}.pa-creds dd{margin:0}
