:root{--bg:#f6f7fb;--surface:#fff;--surface-2:#f1f3f9;--border:#e3e6ef;--text:#14172b;--muted:#636a85;--accent:#4f46e5;--accent-2:#22d3ee;--accent-ink:#fff;--accent-soft:#eceafd;--ok:#0f9d58;--ok-soft:#e3f6ec;--warn:#b7791f;--warn-soft:#fdf3dc;--bad:#d93025;--bad-soft:#fde8e6;--info:#2563eb;--info-soft:#e5eefe;--plan:#7c3aed;--plan-soft:#f0e9fd;--shadow:0 1px 2px #14172b0f, 0 4px 16px #14172b0d;--radius:12px;--mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0d0f1a;--surface:#151827;--surface-2:#1c2033;--border:#2a2f47;--text:#eceef8;--muted:#9aa2c0;--accent:#7c75ff;--accent-ink:#0d0f1a;--accent-soft:#23244a;--ok:#3ccf82;--ok-soft:#14301f;--warn:#f0b84a;--warn-soft:#33290f;--bad:#ff6b60;--bad-soft:#3a1a18;--info:#6ea0ff;--info-soft:#172544;--plan:#b794ff;--plan-soft:#2a1f47;--shadow:0 1px 2px #0006, 0 4px 16px #0000004d}}:root[data-theme=dark]{--bg:#0d0f1a;--surface:#151827;--surface-2:#1c2033;--border:#2a2f47;--text:#eceef8;--muted:#9aa2c0;--accent:#7c75ff;--accent-ink:#0d0f1a;--accent-soft:#23244a;--ok:#3ccf82;--ok-soft:#14301f;--warn:#f0b84a;--warn-soft:#33290f;--bad:#ff6b60;--bad-soft:#3a1a18;--info:#6ea0ff;--info-soft:#172544;--plan:#b794ff;--plan-soft:#2a1f47;--shadow:0 1px 2px #0006, 0 4px 16px #0000004d}*{box-sizing:border-box}html,body{height:100%}#root{min-height:100%}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font:15px/1.5 Inter,system-ui,-apple-system,Segoe UI,sans-serif}h1,h2,h3,h4{margin:0;line-height:1.25}h2{font-size:18px}h3{font-size:15px}p{margin:0}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}code,.mono{font-family:var(--mono);font-size:.88em}.muted{color:var(--muted)}.small{font-size:13px}.grow{flex:1}.right{margin-left:auto}.row{align-items:center;gap:10px;display:flex}.col{flex-direction:column;gap:10px;display:flex}.wrap{flex-wrap:wrap}.gap-lg{gap:20px}.between{justify-content:space-between}.topbar{z-index:20;background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);position:sticky;top:0}.topbar-in{align-items:center;gap:16px;max-width:1120px;height:58px;margin:0 auto;padding:0 20px;display:flex}.brand{color:var(--text);letter-spacing:-.01em;align-items:center;gap:9px;font-weight:700;display:flex}.brand:hover{text-decoration:none}.brand-mark{background:linear-gradient(135deg, var(--accent), #22d3ee);color:#fff;border-radius:8px;place-items:center;width:26px;height:26px;font-size:14px;display:grid}.page{max-width:1120px;margin:0 auto;padding:28px 20px 80px}.page-head{flex-wrap:wrap;align-items:flex-end;gap:16px;margin-bottom:22px;display:flex}.crumbs{color:var(--muted);margin-bottom:6px;font-size:13px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.stack-gap>*+*{margin-top:16px}.section-title{align-items:center;gap:10px;margin:28px 0 12px;display:flex}.grid{gap:16px;display:grid}.grid.cols-3{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.grid.cols-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.btn{border:1px solid var(--border);background:var(--surface);height:38px;color:var(--text);font:inherit;cursor:pointer;white-space:nowrap;border-radius:9px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-weight:600;transition:all .12s;display:inline-flex}.btn:hover:not(:disabled){background:var(--surface-2);text-decoration:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn.primary:hover:not(:disabled){filter:brightness(1.08);background:var(--accent)}.btn.danger{color:var(--bad)}.btn.danger.solid{background:var(--bad);color:#fff;border-color:var(--bad)}.btn.sm{border-radius:8px;height:30px;padding:0 11px;font-size:13px}.btn.ghost{background:0 0;border-color:#0000}label.field{flex-direction:column;gap:6px;font-size:13px;font-weight:600;display:flex}label.field .hint{color:var(--muted);font-weight:400}input,select,textarea{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:9px;width:100%;padding:9px 12px}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:#0000}textarea{font-family:var(--mono);resize:vertical;font-size:13px}.form{flex-direction:column;gap:16px;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}@media (width<=640px){.form-row{grid-template-columns:1fr}}.pill{white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:2px 10px;font-size:12px;font-weight:700;display:inline-flex}.pill:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px}.pill.ok{background:var(--ok-soft);color:var(--ok)}.pill.warn{background:var(--warn-soft);color:var(--warn)}.pill.bad{background:var(--bad-soft);color:var(--bad)}.pill.info{background:var(--info-soft);color:var(--info)}.pill.idle{background:var(--surface-2);color:var(--muted)}.pill.busy:before{animation:1s infinite pulse}@keyframes pulse{50%{opacity:.25}}.tag{background:var(--surface-2);color:var(--muted);border-radius:6px;padding:1px 8px;font-size:12px;font-weight:600;display:inline-block}.stack-ico{color:#fff;border-radius:10px;flex:none;place-items:center;width:40px;height:40px;font-size:14px;font-weight:800;display:grid}.ico-odoo{background:linear-gradient(135deg,#875a7b,#5b3a52)}.ico-node{background:linear-gradient(135deg,#3c873a,#66cc8a)}.ico-django{background:linear-gradient(135deg,#0c4b33,#2b9b6b)}.ico-flask{background:linear-gradient(135deg,#444,#999)}.ico-fastapi{background:linear-gradient(135deg,#009688,#4fd1c5)}.ico-dockerfile{background:linear-gradient(135deg,#1d63ed,#5b9bff)}.tabs{border-bottom:1px solid var(--border);gap:2px;margin-bottom:22px;display:flex;overflow-x:auto}.tab{color:var(--muted);cursor:pointer;font-weight:600;font:inherit;white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 14px;font-weight:600}.tab:hover{color:var(--text)}.tab.active{color:var(--accent);border-bottom-color:var(--accent)}.feat-group{padding:4px 0}.feat-group+.feat-group{border-top:1px solid var(--border)}.feat-group h4{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding:14px 20px 4px;font-size:12px}.feat{align-items:flex-start;gap:14px;padding:10px 20px;display:flex}.feat-ico{border-radius:50%;flex:none;place-items:center;width:22px;height:22px;margin-top:1px;font-size:12px;font-weight:800;display:grid}.feat-ico.on{background:var(--ok-soft);color:var(--ok)}.feat-ico.setup{background:var(--warn-soft);color:var(--warn)}.feat-ico.unsupported{background:var(--surface-2);color:var(--muted)}.feat-ico.plan{background:var(--plan-soft);color:var(--plan)}.feat-ico.role{background:var(--info-soft);color:var(--info)}.feat.off .feat-name{color:var(--muted)}.feat-name{font-weight:600}.feat-reason{color:var(--muted);font-size:13.5px}.status-chip{border-radius:6px;flex:none;padding:2px 8px;font-size:11.5px;font-weight:700}.status-chip.on{background:var(--ok-soft);color:var(--ok)}.status-chip.setup{background:var(--warn-soft);color:var(--warn)}.status-chip.unsupported{background:var(--surface-2);color:var(--muted)}.status-chip.plan{background:var(--plan-soft);color:var(--plan)}.status-chip.role{background:var(--info-soft);color:var(--info)}.env{flex-direction:column;gap:12px;padding:18px 20px;display:flex}.env-head{align-items:center;gap:10px;display:flex}.kv{grid-template-columns:96px 1fr;gap:6px 12px;font-size:13.5px;display:grid}.kv dt{color:var(--muted)}.kv dd{overflow-wrap:anywhere;min-width:0;margin:0}.banner{border:1px solid;border-radius:10px;align-items:flex-start;gap:12px;padding:12px 16px;font-size:14px;display:flex}.banner.warn{background:var(--warn-soft);border-color:color-mix(in srgb, var(--warn) 30%, transparent)}.banner.bad{background:var(--bad-soft);border-color:color-mix(in srgb, var(--bad) 30%, transparent)}.banner.info{background:var(--info-soft);border-color:color-mix(in srgb, var(--info) 30%, transparent)}.banner.ok{background:var(--ok-soft);border-color:color-mix(in srgb, var(--ok) 30%, transparent)}.step{align-items:center;gap:14px;padding:14px 18px;display:flex}.step+.step{border-top:1px solid var(--border)}.step-n{background:var(--accent-soft);width:28px;height:28px;color:var(--accent);border-radius:50%;flex:none;place-items:center;font-weight:800;display:grid}table.tbl{border-collapse:collapse;width:100%}.tbl th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);border-bottom:1px solid var(--border);padding:10px 16px;font-size:12px}.tbl td{border-bottom:1px solid var(--border);vertical-align:middle;padding:12px 16px}.tbl tr:last-child td{border-bottom:0}.tbl tr.click{cursor:pointer}.tbl tr.click:hover td{background:var(--surface-2)}.term{color:#d6dbf5;font-family:var(--mono);white-space:pre-wrap;word-break:break-word;background:#0b0d17;border-radius:10px;max-height:460px;padding:14px 16px;font-size:12.5px;line-height:1.6;overflow:auto}.term .l-ERROR{color:#ff8a80}.term .l-SUCCESS{color:#7ee2a8}.term .l-WARN{color:#ffd479}.term .dim{color:#7a82a6}.term-input{gap:8px;margin-top:10px;display:flex}.term-input input{font-family:var(--mono)}.stack-card{text-align:left;border:2px solid var(--border);border-radius:var(--radius);background:var(--surface);cursor:pointer;font:inherit;color:inherit;gap:14px;padding:16px;display:flex}.stack-card:hover{border-color:color-mix(in srgb, var(--accent) 50%, var(--border))}.stack-card.sel{border-color:var(--accent);background:var(--accent-soft)}.progress{gap:8px;margin-bottom:22px;display:flex}.progress>div{background:var(--border);border-radius:4px;flex:1;height:4px}.progress>.done{background:var(--accent)}.overlay{z-index:50;background:#080a168c;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:var(--surface);border:1px solid var(--border);border-radius:14px;width:100%;max-width:520px;max-height:90vh;overflow:auto;box-shadow:0 20px 60px #00000059}.modal-h{padding:18px 22px 0}.modal-b{padding:14px 22px}.modal-f{justify-content:flex-end;gap:10px;padding:14px 22px 20px;display:flex}.toasts{z-index:60;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:18px;right:18px}.toast{background:var(--text);color:var(--bg);box-shadow:var(--shadow);border-radius:10px;max-width:380px;padding:11px 16px;font-size:14px;font-weight:600}.toast.bad{background:var(--bad);color:#fff}.toast.ok{background:var(--ok);color:#fff}.empty{text-align:center;color:var(--muted);padding:56px 20px}.empty h3{color:var(--text);margin-bottom:6px;font-size:17px}.spinner{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{--a:360deg}}.auth-wrap{place-items:center;min-height:100%;padding:24px;display:grid}.auth-card{width:100%;max-width:420px;padding:30px}.site-head{z-index:30;background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);position:sticky;top:0}.site-in{align-items:center;gap:22px;max-width:1120px;height:62px;margin:0 auto;padding:0 20px;display:flex}.site-nav{gap:20px;display:flex}.site-nav a{color:var(--muted);font-size:14px;font-weight:600}.site-nav a:hover{color:var(--text);text-decoration:none}@media (width<=760px){.site-nav{display:none}}.section{max-width:1120px;margin:0 auto;padding:72px 20px}.section.tight{padding-top:24px}.eyebrow{color:var(--accent);letter-spacing:.09em;text-transform:uppercase;font-size:12.5px;font-weight:800}.section h2.big{letter-spacing:-.02em;margin:8px 0 10px;font-size:32px}.section .lede{color:var(--muted);max-width:640px;font-size:17px}.hero{grid-template-columns:1.1fr .9fr;align-items:center;gap:48px;max-width:1120px;margin:0 auto;padding:84px 20px 40px;display:grid}@media (width<=900px){.hero{grid-template-columns:1fr;padding-top:48px}}.hero h1{letter-spacing:-.035em;font-size:52px;line-height:1.05}@media (width<=640px){.hero h1{font-size:36px}}.hero h1 em{background:linear-gradient(120deg, var(--accent), #22d3ee);color:#0000;-webkit-background-clip:text;background-clip:text;font-style:normal}.hero p.sub{color:var(--muted);max-width:520px;margin:18px 0 26px;font-size:18px}.btn.lg{border-radius:11px;height:46px;padding:0 22px;font-size:15px}.demo{color:#d6dbf5;border:1px solid var(--border);box-shadow:var(--shadow);font-family:var(--mono);background:#0b0d17;border-radius:14px;font-size:12.5px;overflow:hidden}.demo-bar{background:#141830;align-items:center;gap:6px;padding:10px 14px;display:flex}.demo-bar i{background:#3a4066;border-radius:50%;width:10px;height:10px;display:block}.demo-bar span{color:#7a82a6;margin-left:8px;font-size:12px}.demo pre{white-space:pre-wrap;margin:0;padding:16px;line-height:1.7}.demo .ok{color:#7ee2a8}.demo .dim{color:#7a82a6}.demo .hl{color:#9fb0ff}.pill-row{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.feat-card{flex-direction:column;gap:8px;padding:22px;display:flex}.feat-card .ico{background:var(--accent-soft);width:38px;height:38px;color:var(--accent);border-radius:10px;place-items:center;font-size:18px;display:grid}.steps3{counter-reset:s;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin-top:28px;display:grid}.steps3>div{counter-increment:s;padding:22px;position:relative}.steps3>div:before{content:counter(s);background:var(--accent);width:28px;height:28px;color:var(--accent-ink);border-radius:50%;place-items:center;font-weight:800;display:grid;position:absolute;top:-14px;left:18px}.price-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));align-items:stretch;gap:18px;margin-top:28px;display:grid}.price{flex-direction:column;gap:12px;padding:26px;display:flex;position:relative}.price.hot{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft), var(--shadow)}.price .amt{letter-spacing:-.03em;font-size:38px;font-weight:800}.price .amt small{color:var(--muted);font-size:14px;font-weight:600}.price ul{flex-direction:column;gap:7px;margin:4px 0 8px;padding:0;font-size:14px;list-style:none;display:flex}.price li:before{content:"✓";color:var(--ok);margin-right:8px;font-weight:800}.badge-hot{background:var(--accent);color:var(--accent-ink);border-radius:999px;padding:3px 10px;font-size:11.5px;font-weight:800;position:absolute;top:-11px;right:18px}details.faq{border-bottom:1px solid var(--border);padding:16px 4px}details.faq summary{cursor:pointer;font-size:16px;font-weight:700}details.faq p{color:var(--muted);margin-top:10px}.site-foot{border-top:1px solid var(--border);padding:34px 20px}.site-foot .in{flex-wrap:wrap;align-items:center;gap:24px;max-width:1120px;margin:0 auto;display:flex}.cta-band{max-width:1120px;margin:0 auto;padding:0 20px 72px}.cta-band>div{background:linear-gradient(135deg, var(--accent), #22d3ee);color:#fff;text-align:center;border-radius:20px;padding:44px}.cta-band h2{color:#fff;margin-bottom:12px;font-size:30px}.cta-band .btn{color:#14172b;background:#fff;border-color:#fff}.doc{max-width:760px;margin:0 auto;padding:48px 20px 90px}.doc h2{margin:34px 0 10px}.doc p,.doc li{color:var(--muted)}.doc code{background:var(--surface-2);border-radius:5px;padding:1px 6px}.doc pre{color:#d6dbf5;background:#0b0d17;border-radius:10px;padding:14px;overflow:auto}.board{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));align-items:start;gap:16px;display:grid}.col-h{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:8px;font-size:12px;font-weight:800}.dropzone{border:2px dashed #0000;border-radius:14px;min-height:120px;padding:4px;transition:all .12s}.dropzone.over{border-color:var(--accent);background:var(--accent-soft)}.dragcard{cursor:grab}.dragcard:active{cursor:grabbing}.dragcard.dragging{opacity:.45}.meter{background:var(--surface-2);border-radius:6px;height:8px;overflow:hidden}.meter>i{background:var(--accent);height:100%;display:block}.btn.ghost.active-nav{background:var(--surface-2);color:var(--accent)}.app{grid-template-columns:252px 1fr;min-height:100%;display:grid}.side{background:var(--surface);border-right:1px solid var(--border);z-index:40;flex-direction:column;gap:6px;height:100vh;padding:16px 12px;display:flex;position:sticky;top:0}.side .brand{padding:4px 8px 14px;font-size:16px}.nav-sec{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:14px 10px 6px;font-size:11px;font-weight:800}.nav-link{color:var(--muted);border-radius:10px;align-items:center;gap:11px;padding:9px 11px;font-size:14px;font-weight:600;transition:all .12s;display:flex}.nav-link:hover{background:var(--surface-2);color:var(--text);text-decoration:none}.nav-proj{padding-left:14px;font-weight:500}.nav-proj .dot{background:var(--muted);border-radius:50%;flex:none;width:8px;height:8px}.nav-proj .dot.ok{background:var(--ok);box-shadow:0 0 0 3px var(--ok-soft)}.nav-proj .dot.bad{background:var(--bad)}.nav-proj .dot.busy{background:var(--info);animation:1s infinite pulse}.side-foot{border-top:1px solid var(--border);flex-direction:column;gap:6px;margin-top:auto;padding-top:12px;display:flex}.me-chip{align-items:center;gap:10px;padding:6px 8px;display:flex}.avatar{background:linear-gradient(135deg, var(--accent), var(--accent-2));color:#fff;border-radius:50%;flex:none;place-items:center;width:32px;height:32px;font-size:13px;font-weight:800;display:grid}.main{min-width:0}.m-top{display:none}.icon-btn{border:1px solid var(--border);background:var(--surface);width:34px;height:34px;color:var(--muted);cursor:pointer;border-radius:9px;place-items:center;display:grid}.icon-btn:hover{color:var(--text);background:var(--surface-2)}@media (width<=900px){.app{grid-template-columns:1fr}.side{width:272px;box-shadow:var(--shadow);transition:all .2s;position:fixed;inset:0 auto 0 0;transform:translate(-100%)}.side.open{transform:none}.m-top{border-bottom:1px solid var(--border);background:var(--surface);z-index:30;align-items:center;gap:12px;padding:10px 16px;display:flex;position:sticky;top:0}.scrim{z-index:35;background:#080a1680;position:fixed;inset:0}}.main .page{max-width:1080px}.stats{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin-bottom:22px;display:grid}.stat{align-items:center;gap:14px;padding:16px 18px;display:flex}.chip{background:var(--accent-soft);width:40px;height:40px;color:var(--accent);border-radius:11px;flex:none;place-items:center;display:grid}.chip.ok{background:var(--ok-soft);color:var(--ok)}.chip.warn{background:var(--warn-soft);color:var(--warn)}.chip.info{background:var(--info-soft);color:var(--info)}.stat .v{letter-spacing:-.02em;font-size:24px;font-weight:800;line-height:1.1}.stat .l{color:var(--muted);font-size:13px}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;display:flex}.search{flex:1;min-width:200px;max-width:380px;position:relative}.search svg{color:var(--muted);position:absolute;top:11px;left:11px}.search input{padding-left:36px}.pcard{color:inherit;flex-direction:column;gap:14px;padding:18px;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex;position:relative;overflow:hidden}.pcard:hover{border-color:color-mix(in srgb, var(--accent) 45%, var(--border));text-decoration:none;transform:translateY(-3px);box-shadow:0 10px 30px #14172b1f}.pcard:before{content:"";background:var(--muted);opacity:.35;height:3px;position:absolute;inset:0 0 auto}.pcard.ok:before{background:linear-gradient(90deg, var(--ok), var(--accent-2));opacity:1}.pcard.bad:before{background:var(--bad);opacity:1}.pcard.busy:before{background:linear-gradient(90deg, var(--accent), var(--accent-2));opacity:1;background-size:200% 100%;animation:1.4s linear infinite slide}@keyframes slide{to{background-position:-200% 0}}.pcard .arrow{color:var(--muted);opacity:0;transition:all .15s;position:absolute;top:16px;right:16px}.pcard:hover .arrow{opacity:1}.activity{flex-direction:column;display:flex}.act{border-top:1px solid var(--border);align-items:center;gap:12px;padding:11px 18px;font-size:14px;display:flex}.act:first-child{border-top:0}.skeleton{background:linear-gradient(90deg, var(--surface-2), color-mix(in srgb, var(--surface-2) 55%, var(--surface)), var(--surface-2));background-size:200% 100%;border-radius:10px;animation:1.2s linear infinite slide}.fade-in{animation:.35s both fadein}@keyframes fadein{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.orbs{pointer-events:none;z-index:0;position:absolute;inset:0;overflow:hidden}.orb{filter:blur(90px);opacity:.35;border-radius:50%;animation:14s ease-in-out infinite float;position:absolute}.orb.a{background:var(--accent);width:440px;height:440px;top:-120px;left:-80px}.orb.b{background:var(--accent-2);width:380px;height:380px;animation-delay:-5s;top:60px;right:-100px}.orb.c{opacity:.18;background:#f472b6;width:300px;height:300px;animation-delay:-9s;top:380px;left:40%}@keyframes float{50%{transform:translate(30px,24px)scale(1.06)}}.hero-wrap{position:relative}.hero-wrap>.hero{z-index:1;position:relative}.kicker{background:var(--accent-soft);color:var(--accent);border:1px solid color-mix(in srgb, var(--accent) 25%, transparent);border-radius:999px;align-items:center;gap:8px;padding:6px 14px;font-size:13px;font-weight:700;display:inline-flex}.kicker i{background:var(--ok);border-radius:50%;width:7px;height:7px;animation:1.4s infinite pulse}.stat-row{flex-wrap:wrap;gap:34px;margin-top:34px;display:flex}.stat-row b{letter-spacing:-.02em;font-size:26px;display:block}.stat-row span{color:var(--muted);font-size:13px}.trust{color:var(--muted);flex-wrap:wrap;gap:18px;margin-top:22px;font-size:13.5px;display:flex}.trust span{align-items:center;gap:6px;display:inline-flex}.trust svg{color:var(--ok)}.feat-card{transition:transform .18s,box-shadow .18s,border-color .18s}.feat-card:hover{border-color:color-mix(in srgb, var(--accent) 40%, var(--border));transform:translateY(-4px);box-shadow:0 14px 34px #14172b24}.badge-sm{letter-spacing:.05em;text-transform:uppercase;color:var(--accent);font-size:11px;font-weight:800}.reveal{opacity:0;transition:all .6s;transform:translateY(18px)}.reveal.in{opacity:1;transform:none}.foot-cols{grid-template-columns:1.4fr repeat(auto-fit,minmax(140px,1fr));gap:30px;max-width:1120px;margin:0 auto;display:grid}.foot-cols h4{margin-bottom:10px;font-size:13px}.foot-cols a{color:var(--muted);padding:3px 0;font-size:14px;display:block}.socials{gap:8px;margin-top:14px;display:flex}@media (prefers-reduced-motion:reduce){.orb,.reveal,.fade-in,.pcard:before{transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}}.tabs{scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.auth-split{grid-template-columns:1.05fr 1fr;min-height:100vh;display:grid}@media (width<=900px){.auth-split{grid-template-columns:1fr}.auth-side{display:none}}.auth-side{color:#fff;background:linear-gradient(145deg,#2b1d8a,#4f46e5 55%,#0e7490);align-items:center;padding:48px;display:flex;position:relative;overflow:hidden}.auth-side .orb{opacity:.4}.auth-side-in{z-index:1;flex-direction:column;gap:18px;max-width:470px;display:flex;position:relative}.auth-side h2{letter-spacing:-.025em;color:#fff;margin-top:18px;font-size:34px;line-height:1.15}.auth-side p{color:#ffffffd1;font-size:16px}.auth-side ul{flex-direction:column;gap:12px;margin:8px 0 0;padding:0;list-style:none;display:flex}.auth-side li{align-items:center;gap:12px;font-weight:600;display:flex}.auth-side li span{background:#ffffff29;border-radius:9px;flex:none;place-items:center;width:30px;height:30px;display:grid}.auth-main{background:var(--bg);place-items:center;padding:28px;display:grid}.auth-card2{flex-direction:column;gap:22px;width:100%;max-width:400px;display:flex}.stepper{gap:10px;margin:0 0 26px;padding:0;list-style:none;display:flex}.stepper li{color:var(--muted);border-bottom:3px solid var(--border);flex:1;align-items:center;gap:10px;padding-bottom:12px;font-size:14px;font-weight:700;display:flex}.stepper li span{background:var(--surface-2);border-radius:50%;place-items:center;width:26px;height:26px;font-size:13px;display:grid}.stepper li.now{color:var(--text);border-color:var(--accent)}.stepper li.now span{background:var(--accent);color:var(--accent-ink)}.stepper li.done{color:var(--ok);border-color:var(--ok)}.stepper li.done span{background:var(--ok-soft);color:var(--ok)}.stack-card{transition:transform .15s,box-shadow .15s,border-color .15s;position:relative}.stack-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.sel-check{background:var(--accent);width:22px;height:22px;color:var(--accent-ink);border-radius:50%;place-items:center;font-size:13px;font-weight:800;display:grid;position:absolute;top:12px;right:12px}.proj-head{flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:18px;display:flex}.proj-head .stack-ico{border-radius:14px;width:52px;height:52px;font-size:17px}.meta-row{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex}.empty-ico{background:var(--accent-soft);width:56px;height:56px;color:var(--accent);border-radius:16px;place-items:center;margin:0 auto 14px;display:grid}:where(.stack-ico){background:linear-gradient(135deg, var(--accent), var(--accent-2))}.ico-nextjs{background:linear-gradient(135deg,#111,#555)}.ico-nestjs{background:linear-gradient(135deg,#e0234e,#a5163a)}.form>.btn,.form>button.btn{align-self:flex-start}.card-pad.form h2+p,.card-pad h2{margin-bottom:2px}:root{--font-display:"Plus Jakarta Sans", "Inter", system-ui, sans-serif;--bg:#f5f6fd;--surface:#ffffffc7;--surface-solid:#fff;--surface-2:#6366f10f;--border:#6e76aa2e;--text:#12142b;--muted:#5d6384;--accent:#6d5efc;--accent-2:#22d3ee;--accent-3:#f472b6;--accent-soft:#6d5efc1f;--grad:linear-gradient(135deg, var(--accent), #8b5cf6 45%, var(--accent-2));--glow:0 10px 30px -8px color-mix(in srgb, var(--accent) 55%, transparent);--shadow:0 1px 0 #ffffffb3 inset, 0 10px 30px -12px #282c642e;--radius:18px;--ease:cubic-bezier(.2,.8,.2,1)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#090b1a;--surface:#171a349e;--surface-solid:#131630;--surface-2:#828cff14;--border:#96a0ff24;--text:#eef0ff;--muted:#9aa2cf;--accent:#8b7bff;--shadow:0 1px 0 #ffffff0d inset, 0 18px 40px -18px #0009}}:root[data-theme=dark]{--bg:#090b1a;--surface:#171a349e;--surface-solid:#131630;--surface-2:#828cff14;--border:#96a0ff24;--text:#eef0ff;--muted:#9aa2cf;--accent:#8b7bff;--shadow:0 1px 0 #ffffff0d inset, 0 18px 40px -18px #0009}html{scroll-behavior:smooth}body{background:var(--bg);font-family:Inter,system-ui,sans-serif;position:relative}body:before{content:"";z-index:-2;pointer-events:none;background:radial-gradient(900px 500px at 8% -10%, color-mix(in srgb, var(--accent) 22%, transparent), transparent 60%), radial-gradient(800px 460px at 100% 0%, color-mix(in srgb, var(--accent-2) 18%, transparent), transparent 60%), radial-gradient(700px 500px at 60% 110%, color-mix(in srgb, var(--accent-3) 12%, transparent), transparent 60%);position:fixed;inset:0}body:after{content:"";z-index:-1;pointer-events:none;opacity:.35;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E");position:fixed;inset:0}h1,h2,h3,.brand,.stat .v,.amt{font-family:var(--font-display)}h1{letter-spacing:-.03em;font-size:30px}.card{background:var(--surface);-webkit-backdrop-filter:blur(14px)saturate(1.3);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.card-pad{padding:22px 24px}.btn{background:var(--surface);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-color:var(--border);height:40px;transition:transform .18s var(--ease), box-shadow .18s var(--ease), background .18s, border-color .18s;border-radius:12px;position:relative;overflow:hidden}.btn:hover:not(:disabled){border-color:color-mix(in srgb, var(--accent) 40%, var(--border));background:var(--surface);transform:translateY(-1px)}.btn:active:not(:disabled){transform:translateY(0)scale(.98)}.btn.primary{background:var(--grad);color:#fff;box-shadow:var(--glow);border:0}.btn.primary:hover:not(:disabled){background:var(--grad);filter:brightness(1.08);box-shadow:0 14px 34px -8px color-mix(in srgb, var(--accent) 70%, transparent)}.btn.primary:after{content:"";transition:transform .6s var(--ease);background:linear-gradient(110deg,#0000 30%,#ffffff59 50%,#0000 70%);position:absolute;inset:0;transform:translate(-120%)}.btn.primary:hover:after{transform:translate(120%)}.btn.lg{border-radius:14px;height:50px}.icon-btn{background:var(--surface);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:11px}input,select,textarea{background:color-mix(in srgb, var(--surface-solid) 70%, transparent);border:1px solid var(--border);border-radius:12px;padding:11px 14px;transition:border-color .15s,box-shadow .15s,background .15s}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft);background:var(--surface-solid);outline:none}.fl{position:relative}.fl input{border-radius:14px;height:56px;padding:22px 44px 8px 46px}.fl label{color:var(--muted);pointer-events:none;transition:.16s var(--ease);transform-origin:0;font-size:15px;position:absolute;top:18px;left:46px}.fl input:focus+label,.fl input:not(:placeholder-shown)+label{color:var(--accent);font-weight:700;transform:translateY(-11px)scale(.78)}.fl .lead{color:var(--muted);transition:color .15s;position:absolute;top:17px;left:16px}.fl:focus-within .lead{color:var(--accent)}.fl .trail{position:absolute;top:10px;right:8px}.side{background:var(--surface);-webkit-backdrop-filter:blur(22px)saturate(1.4);backdrop-filter:blur(22px)saturate(1.4);border-right:1px solid var(--border)}.nav-link{transition:.18s var(--ease);border-radius:12px;position:relative}.nav-link.on{background:var(--accent-soft);color:var(--accent)}.nav-link.on:before{content:"";background:var(--grad);width:4px;box-shadow:0 0 12px var(--accent);border-radius:0 4px 4px 0;position:absolute;top:9px;bottom:9px;left:-12px}.nav-link:hover{transform:translate(2px)}.site-head{background:color-mix(in srgb, var(--bg) 70%, transparent);-webkit-backdrop-filter:blur(18px)saturate(1.4);backdrop-filter:blur(18px)saturate(1.4)}.brand-mark{background:var(--grad);box-shadow:var(--glow);border-radius:10px}.pill{border-radius:999px}.tag{background:var(--surface-2);border-radius:8px}.tabs{background:var(--surface);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:0;border:1px solid var(--border);max-width:100%;box-shadow:var(--shadow);border-radius:14px;gap:2px;margin-bottom:26px;padding:5px;display:inline-flex}.tab{transition:.18s var(--ease);border-bottom:0;border-radius:10px;margin:0;padding:8px 14px}.tab:hover{background:var(--surface-2)}.tab.active{background:var(--grad);color:#fff;box-shadow:var(--glow);border:0}.stagger>*{opacity:0;animation:rise .6s var(--ease) forwards}.stagger>:first-child{animation-delay:30ms}.stagger>:nth-child(2){animation-delay:90ms}.stagger>:nth-child(3){animation-delay:.15s}.stagger>:nth-child(4){animation-delay:.21s}.stagger>:nth-child(5){animation-delay:.27s}.stagger>:nth-child(6){animation-delay:.33s}.stagger>:nth-child(n+7){animation-delay:.4s}@keyframes rise{0%{opacity:0;transform:translateY(18px)scale(.985)}to{opacity:1;transform:none}}.gradient-text{background:var(--grad);color:#0000;background-size:200%;-webkit-background-clip:text;background-clip:text;animation:6s linear infinite shimmer}@keyframes shimmer{to{background-position:200%}}.glow-border{position:relative}.glow-border:before{content:"";border-radius:inherit;background:conic-gradient(from var(--a,0deg), transparent 0 60%, var(--accent), var(--accent-2), transparent 90%);-webkit-mask-composite:xor;pointer-events:none;padding:1px;animation:5s linear infinite spin;position:absolute;inset:-1px;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}@property --a{syntax:"<angle>";inherits:false;initial-value:0deg}@media (prefers-reduced-motion:reduce){.stagger>*,.gradient-text,.glow-border:before{opacity:1!important;animation:none!important}}.dash-hero{color:#fff;background:linear-gradient(120deg,#4f46e5,#7c3aed 45%,#0891b2);border-radius:24px;margin-bottom:24px;padding:30px 32px;position:relative;overflow:hidden;box-shadow:0 24px 50px -24px #4f46e5b3}.dash-hero:before,.dash-hero:after{content:"";filter:blur(50px);opacity:.5;border-radius:50%;position:absolute}.dash-hero:before{background:#f0abfc;width:260px;height:260px;animation:12s ease-in-out infinite float;top:-90px;right:-60px}.dash-hero:after{background:#22d3ee;width:220px;height:220px;animation:15s ease-in-out infinite reverse float;bottom:-120px;right:180px}.dash-hero>*{z-index:1;position:relative}.dash-hero h1{color:#fff;font-size:30px}.dash-hero p{color:#ffffffd9;margin-top:6px}.dash-hero .btn{color:#fff;background:#ffffff2e;border-color:#ffffff4d}.dash-hero .btn.primary{color:#3b2fb8;background:#fff;box-shadow:0 10px 24px -8px #0006}.stat{transition:transform .2s var(--ease);position:relative;overflow:hidden}.stat:hover{transform:translateY(-3px)}.stat:after{content:"";background:var(--grad);opacity:.12;border-radius:50%;width:90px;height:90px;position:absolute;bottom:-24px;right:-24px}.chip{border-radius:13px}.stat .v{font-size:28px}.pcard{border-radius:20px}.pcard:hover{box-shadow:0 24px 50px -20px color-mix(in srgb, var(--accent) 55%, transparent);transform:translateY(-5px)}.pcard:before{height:4px}.act:hover{background:var(--surface-2)}.proj-head{background:var(--surface);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:22px;padding:20px 22px}.env{transition:transform .2s var(--ease), box-shadow .2s var(--ease);border-radius:20px}.env:hover{box-shadow:0 22px 44px -22px color-mix(in srgb, var(--accent) 50%, transparent);transform:translateY(-3px)}.banner{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:14px}.step-n{background:var(--grad);color:#fff;box-shadow:var(--glow)}.term{border:1px solid #ffffff0f;border-radius:16px;box-shadow:0 20px 40px -24px #0009}.modal{background:var(--surface-solid);border-radius:22px}.overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.toast{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:14px}.page{padding-top:32px}.aurora{z-index:-1;background:var(--bg);position:fixed;inset:0;overflow:hidden}.aurora i{filter:blur(80px);opacity:.55;border-radius:50%;animation:16s ease-in-out infinite float;position:absolute}.aurora i:first-child{background:var(--accent);width:520px;height:520px;top:-160px;left:-120px}.aurora i:nth-child(2){background:var(--accent-2);width:480px;height:480px;animation-delay:-6s;bottom:-180px;right:-100px}.aurora i:nth-child(3){background:var(--accent-3);opacity:.3;width:360px;height:360px;animation-delay:-11s;top:30%;left:55%}.auth2{grid-template-columns:1.1fr 1fr;align-items:center;gap:40px;max-width:1180px;min-height:100vh;margin:0 auto;padding:28px;display:grid;position:relative}@media (width<=960px){.auth2{grid-template-columns:1fr}.auth2-art{display:none}}.auth2-art h2{letter-spacing:-.035em;margin:22px 0 14px;font-size:46px;line-height:1.05}.auth2-art p.lede{color:var(--muted);max-width:460px;font-size:17px}.auth2-card{border-radius:26px;flex-direction:column;gap:22px;width:100%;max-width:450px;margin:0 auto;padding:34px 34px 28px;display:flex}.auth2-card h1{font-size:28px}.chips-float{flex-wrap:wrap;gap:10px;margin-top:26px;display:flex}.chips-float span{background:var(--surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border);border-radius:999px;padding:8px 14px;font-size:13px;font-weight:700;animation:5s ease-in-out infinite bob}.chips-float span:nth-child(2n){animation-delay:-1.5s}.chips-float span:nth-child(3n){animation-delay:-3s}@keyframes bob{50%{transform:translateY(-6px)}}.or-line{color:var(--muted);align-items:center;gap:12px;font-size:12px;display:flex}.or-line:before,.or-line:after{content:"";background:var(--border);flex:1;height:1px}.strength{gap:4px;display:flex}.strength i{background:var(--border);border-radius:4px;flex:1;height:4px;transition:all .3s}.strength i.on{background:var(--ok)}.strength i.on.w{background:var(--warn)}.strength i.on.b{background:var(--bad)}.hero h1{font-family:var(--font-display);letter-spacing:-.045em;font-size:60px;line-height:1.02}@media (width<=640px){.hero h1{font-size:40px}}.demo{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transition:transform .5s var(--ease);background:#0a0c1ce0;border:1px solid #ffffff1a;border-radius:20px;transform:perspective(1200px)rotateY(-6deg)rotateX(3deg);box-shadow:0 40px 80px -30px #4f46e58c,inset 0 0 0 1px #ffffff0a}.demo:hover{transform:perspective(1200px)rotateY(0)rotateX(0)}.caret{vertical-align:-2px;background:#9fb0ff;width:8px;height:15px;margin-left:2px;animation:1s steps(2,end) infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 12% 88%,#0000);mask-image:linear-gradient(90deg,#0000,#000 12% 88%,#0000)}.marquee-track{gap:14px;width:max-content;animation:38s linear infinite marq;display:flex}.marquee:hover .marquee-track{animation-play-state:paused}@keyframes marq{to{transform:translate(-50%)}}.marq-chip{background:var(--surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border);white-space:nowrap;border-radius:16px;align-items:center;gap:10px;padding:12px 20px;font-weight:700;display:inline-flex}.bento{grid-template-columns:repeat(6,1fr);gap:16px;display:grid}.bento>:first-child,.bento>:nth-child(2){grid-column:span 3}.bento>:nth-child(n+3){grid-column:span 2}@media (width<=900px){.bento{grid-template-columns:1fr}.bento>*{grid-column:auto!important}}.bento .feat-card{border-radius:22px;padding:26px;position:relative;overflow:hidden}.bento .feat-card:before{content:"";background:var(--grad);opacity:.1;width:180px;height:180px;transition:.4s var(--ease);border-radius:50%;position:absolute;top:-60px;right:-50px}.bento .feat-card:hover:before{opacity:.22;transform:scale(1.3)}.feat-card .ico{background:var(--grad);color:#fff;box-shadow:var(--glow);border-radius:13px;width:44px;height:44px}.price{border-radius:24px}.price.hot{background:linear-gradient(var(--surface-solid), var(--surface-solid)) padding-box, var(--grad) border-box;box-shadow:0 30px 60px -28px color-mix(in srgb, var(--accent) 70%, transparent);border:2px solid #0000;transform:translateY(-8px)}.cta-band>div{background:linear-gradient(120deg,#4f46e5,#7c3aed 50%,#0891b2);border-radius:30px;position:relative;overflow:hidden;box-shadow:0 40px 80px -40px #4f46e5cc}.reveal{transition:opacity .7s var(--ease), transform .7s var(--ease)}.demo{background:#090b1af5}.stat-row b{font-size:30px;font-family:var(--font-display);letter-spacing:-.03em}.stat-row{gap:44px}.bento>*{grid-column:span 2}.bento>:first-child{grid-column:span 4}.bento>:nth-child(2),.bento>:nth-child(3){grid-column:span 2}.bento>:nth-child(4){grid-column:span 4}.bento>:nth-child(5),.bento>:nth-child(6){grid-column:span 3}@media (width<=900px){.bento>*{grid-column:auto!important}}.steps-flow{grid-template-columns:repeat(3,1fr);gap:18px;margin-top:30px;display:grid;position:relative}@media (width<=860px){.steps-flow{grid-template-columns:1fr}}.steps-flow:before{content:"";background:linear-gradient(90deg, transparent, var(--accent), var(--accent-2), transparent);opacity:.35;height:2px;position:absolute;top:54px;left:12%;right:12%}@media (width<=860px){.steps-flow:before{display:none}}.step-card{border-radius:22px;height:100%;padding:28px 26px;position:relative;overflow:hidden}.step-card h3{margin-bottom:6px;font-size:19px}.step-card .ico{background:var(--grad);color:#fff;width:46px;height:46px;box-shadow:var(--glow);border-radius:14px;place-items:center;display:grid}.step-num{font-family:var(--font-display);color:var(--accent);opacity:.1;font-size:64px;font-weight:800;line-height:1;position:absolute;top:8px;right:18px}.site-foot{background:color-mix(in srgb, var(--surface-solid) 40%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:52px 20px 34px}.foot-cols2{flex-wrap:wrap;gap:48px;max-width:1120px;margin:0 auto;display:flex}.foot-cols2>div:first-child{flex:1.6 280px}.foot-cols2>div:not(:first-child){flex:150px}.foot-cols2 h4{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:12px;font-size:12px}.foot-cols2 a{color:var(--text);opacity:.8;padding:5px 0;font-size:14.5px;transition:all .15s;display:block}.foot-cols2 a:hover{opacity:1;color:var(--accent);text-decoration:none;transform:translate(3px)}.site-head{z-index:60;position:sticky;top:0}.tabs{z-index:25;position:sticky;top:12px}.proj-sticky{z-index:26;background:linear-gradient(var(--bg) 70%, transparent);padding:10px 0;position:sticky;top:0}.foot-cols2,.site-foot>.small{padding:0 20px}.nav-space{height:84px}.float-nav{z-index:80;pointer-events:none;flex-direction:column;align-items:center;padding:0 14px;display:flex;position:fixed;top:14px;left:0;right:0}.float-nav>*{pointer-events:auto}.float-nav-in{background:color-mix(in srgb, var(--surface-solid) 62%, transparent);-webkit-backdrop-filter:blur(20px)saturate(1.6);border:1px solid var(--border);width:100%;max-width:1060px;height:60px;transition:max-width .35s var(--ease), height .35s var(--ease), box-shadow .35s, background .35s;border-radius:999px;align-items:center;gap:18px;padding:0 12px 0 18px;display:flex;box-shadow:0 8px 30px -14px #1e1e5059}.float-nav.scrolled .float-nav-in{background:color-mix(in srgb, var(--surface-solid) 86%, transparent);max-width:880px;height:54px;box-shadow:0 18px 44px -18px #281e788c}.float-nav .brand span{font-size:16px}.float-links{gap:2px;margin:0 auto;display:flex}.float-links a{color:var(--muted);transition:.18s var(--ease);border-radius:999px;padding:8px 15px;font-size:14px;font-weight:600}.float-links a:hover{background:var(--accent-soft);color:var(--accent);text-decoration:none}.float-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.float-links~.float-actions{margin-left:0}.burger{display:none}.float-panel{background:var(--surface-solid);border:1px solid var(--border);border-radius:22px;flex-direction:column;width:100%;max-width:1060px;margin-top:8px;padding:10px;display:none;box-shadow:0 24px 50px -20px #1e145a80}.float-panel a{color:var(--text);border-radius:12px;padding:12px 14px;font-weight:600}.float-panel a:hover{background:var(--accent-soft);text-decoration:none}@media (width<=820px){.float-links{display:none}.burger{display:grid}.hide-sm{display:none}.float-panel{display:flex}.float-nav-in{gap:8px}}.site-head{display:none}.hero{padding-top:36px}@media (width<=900px){.hero{padding-top:16px}}.app{transition:grid-template-columns .25s var(--ease)}.side{transition:padding .25s var(--ease);overflow:hidden}.collapse-btn{align-self:flex-end;margin:2px 2px 4px}.new-btn{margin:6px 4px 8px}@media (width>=901px){.app.collapsed{grid-template-columns:76px 1fr}.app.collapsed .side{align-items:center;padding:16px 10px}.app.collapsed .lbl,.app.collapsed .nav-sec{display:none!important}.app.collapsed .side-top{justify-content:center}.app.collapsed .brand{padding:4px 0 8px}.app.collapsed .side nav{width:100%}.app.collapsed .nav-link{justify-content:center;padding:11px 0}.app.collapsed .nav-proj{padding-left:0}.app.collapsed .nav-link.on:before{left:-10px}.app.collapsed .new-btn{border-radius:14px;width:44px;height:44px;padding:0}.app.collapsed .collapse-btn{align-self:center}.app.collapsed .me-chip{padding:6px 0}.app.collapsed .side-foot{align-items:center;width:100%}}@media (width<=900px){.collapse-btn{display:none}}.mon-bar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:18px;display:flex}.mon-bar .grow{min-width:20px}.mon-section{margin-bottom:18px}.mon-section>summary{cursor:pointer;font-family:var(--font-display);-webkit-user-select:none;user-select:none;align-items:center;gap:8px;padding:8px 2px;font-size:17px;font-weight:700;list-style:none;display:flex}.mon-section>summary::-webkit-details-marker{display:none}.mon-section>summary:before{content:"▾";color:var(--muted);transition:transform .2s;display:inline-block}.mon-section:not([open])>summary:before{transform:rotate(-90deg)}.mon-grid{grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr));gap:14px;margin-top:8px;display:grid}.mon-grid.tiles{grid-template-columns:repeat(auto-fit,minmax(min(190px,100%),1fr))}.mon-panel{background:color-mix(in srgb, var(--surface-solid) 70%, #0b0e1d);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:16px;min-width:0;padding:16px 16px 12px}:root:not([data-theme=dark]) .mon-panel{background:var(--surface-solid)}.mon-title{align-items:center;gap:8px;margin-bottom:8px;font-size:14px;font-weight:700;display:flex}.mon-hint{border:1px solid var(--muted);width:16px;height:16px;color:var(--muted);cursor:help;border-radius:50%;place-items:center;font-size:10px;display:grid}.mon-tile{flex-direction:column;justify-content:center;gap:4px;min-height:120px;display:flex}.mon-big{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ok);font-size:32px;font-weight:800}.mon-big.warn{color:var(--warn)}.mon-big.bad{color:var(--bad)}.mon-big.plain{color:var(--text)}.chart-grid{stroke:var(--border);stroke-dasharray:2 4}.chart-tick{fill:var(--muted);font-size:10.5px}.chart-cross{stroke:var(--bad);stroke-dasharray:4 3;opacity:.7}.chart-tip{z-index:5;pointer-events:none;background:var(--surface-solid);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:10px;min-width:150px;padding:8px 10px;font-size:12.5px;position:absolute}.chart-tip i,.chart-legend i,.dot-sw{border-radius:3px;width:9px;height:9px;margin-right:6px;display:inline-block}.chart-legend{color:var(--muted);flex-wrap:wrap;gap:14px;margin-top:6px;padding-left:6px;font-size:12.5px;display:flex}.chart-empty{color:var(--muted);border:1px dashed var(--border);border-radius:12px;place-items:center;font-size:13px;display:grid}.donut-total{fill:var(--text);font-size:15px;font-weight:800}.occ{align-items:center;gap:10px;padding:5px 0;display:flex}.occ .lbl2{flex:none;width:170px;font-size:13.5px}.occ .bar{background:var(--surface-2);border-radius:6px;flex:1;height:22px;overflow:hidden}.occ .bar i{background:linear-gradient(90deg,#8b5cf6,#c084fc);border-radius:6px;height:100%;display:block}.occ .bar i.bad{background:linear-gradient(90deg,#ef4444,#f87171)}.occ .bar i.warn{background:linear-gradient(90deg,#f59e0b,#fbbf24)}.occ .lbl2{width:210px}.occ .num{text-align:right;width:70px;font-size:19px;font-weight:700;font-family:var(--font-display)}.proj-sticky{pointer-events:none;padding:8px 0 6px;background:0 0!important}.proj-sticky .tabs{pointer-events:auto;background:color-mix(in srgb, var(--surface) 78%, transparent);-webkit-backdrop-filter:blur(18px)saturate(1.4);backdrop-filter:blur(18px)saturate(1.4);box-shadow:0 8px 28px -12px #00000073}@media (width<=640px){.occ{flex-wrap:wrap}.occ .lbl2{width:100%}.occ .bar,.mon-bar select{flex:1}.mon-bar h2{width:100%;font-size:18px}}.term-shell{border:1px solid var(--border);background:#07080d;border-radius:16px;overflow:hidden}.term-tabs{background:#11131f;align-items:center;gap:2px;padding:6px 8px 0;display:flex;overflow-x:auto}.term-tab{color:var(--muted,#9aa0c3);cursor:pointer;white-space:nowrap;border-radius:10px 10px 0 0;align-items:center;gap:8px;padding:8px 12px;font-size:13px;display:flex}.term-tab.on{color:#fff;background:#07080d}.term-tab button,.term-add{color:inherit;cursor:pointer;opacity:.7;background:0 0;border:0;border-radius:6px;place-items:center;padding:3px;display:grid}.term-tab button:hover,.term-add:hover{opacity:1;background:#ffffff1a}.term-wrap{height:min(68vh,640px);min-height:320px;padding:10px 6px 6px 12px;position:relative}.term-host{width:100%;height:100%}.term-host .xterm{height:100%}.term-host .xterm-viewport{background:0 0!important}.term-over{text-align:center;color:#cfd3ee;background:#07080dd1;place-content:center;padding:20px;display:grid;position:absolute;inset:0}.log-tools{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px;display:flex}.log-search{border:1px solid var(--border);background:var(--surface-2);border-radius:12px;flex:1;align-items:center;gap:8px;min-width:220px;padding:0 12px;display:flex}.log-search input{width:100%;padding:9px 0;box-shadow:none!important;background:0 0!important;border:0!important}.lg-chip{border:1px solid var(--border);color:var(--muted,#9aa0c3);cursor:pointer;opacity:.55;background:0 0;border-radius:999px;padding:6px 12px;font-size:12.5px}.lg-chip.on{opacity:1;color:#fff}.lg-chip b{margin-left:4px;font-weight:700}.lg-chip.c-ERROR.on{background:#ef444438;border-color:#ef444480}.lg-chip.c-WARNING.on{background:#f59e0b33;border-color:#f59e0b80}.lg-chip.c-INFO.on{background:#38bdf82e;border-color:#38bdf873}.lg-chip.c-DEBUG.on{background:#94a3b82e;border-color:#94a3b866}.logbox{border:1px solid var(--border);color:#d8dbef;background:#07080d;border-radius:14px;min-height:260px;max-height:62vh;padding:10px 6px;font:12.5px/1.55 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;overflow:auto}.logbox:not(.wrap) .logline{white-space:pre}.logbox.wrap .logline{white-space:pre-wrap;word-break:break-word}.logline{border-left:3px solid #0000;padding:2px 10px}.logline:hover{background:#ffffff0a}.logline.lv-ERROR{background:#ef444412;border-left-color:#ef4444}.logline.lv-WARNING{background:#f59e0b0d;border-left-color:#f59e0b}.lg-time{color:#7c83a8;margin-right:8px}.lg-badge{border-radius:5px;margin-right:8px;padding:0 7px;font-size:11px;font-weight:700;display:inline-block}.lg-badge.b-INFO{color:#7dd3fc;background:#38bdf833}.lg-badge.b-WARNING{color:#fcd34d;background:#f59e0b40}.lg-badge.b-ERROR{color:#fca5a5;background:#ef444447}.lg-badge.b-DEBUG{color:#cbd5e1;background:#94a3b838}.lg-st{font-weight:700}.lg-st.s2{color:#4ade80}.lg-st.s3{color:#7dd3fc}.lg-st.s4{color:#fbbf24}.lg-st.s5{color:#f87171}.logbox mark{color:inherit;background:#facc1555;border-radius:3px}.seg{grid-template-columns:1fr 1fr;gap:8px;display:grid}@media (width<=560px){.seg{grid-template-columns:1fr}}.seg button{text-align:left;border:1px solid var(--border);background:var(--surface-2);color:inherit;cursor:pointer;border-radius:14px;flex-direction:column;align-items:flex-start;gap:2px;padding:12px 14px;font-weight:600;display:flex}.seg button small{opacity:.7;font-size:12px;font-weight:400}.seg button svg{vertical-align:-2px}.seg button.on{background:linear-gradient(135deg,#8b5cf659,#38bdf840);border-color:#0000;box-shadow:inset 0 0 0 1px #a78bfa99}.seg button:disabled:not(.on){opacity:.5;cursor:not-allowed}.rev-table{border:1px solid var(--border);border-radius:14px;overflow:hidden}.rev-row{align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.rev-row+.rev-row{border-top:1px solid var(--border)}.rev-row>div:nth-child(2){word-break:break-all;flex:1;min-width:0}.rev-row .right{text-align:right;white-space:nowrap}.final-warn{background:#ef44441a;border:1px solid #ef44448c;border-radius:14px;gap:8px;padding:12px 14px;display:grid}.final-warn strong{color:#fca5a5;font-size:15px}.final-warn ul{gap:4px;margin:0;padding-left:18px;font-size:13.5px;display:grid}.proj-layout{grid-template-columns:250px minmax(0,1fr);align-items:start;gap:20px;margin-top:16px;display:grid}.rail{background:var(--surface);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:18px;max-height:calc(100vh - 28px);padding:10px;position:sticky;top:14px;overflow:auto}.rail-search{border:1px solid var(--border);color:var(--muted);border-radius:10px;align-items:center;gap:8px;margin-bottom:6px;padding:7px 10px;display:flex}.rail-search input{width:100%;min-width:0;box-shadow:none;background:0 0;border:0;padding:0}.rail-h{letter-spacing:.07em;text-transform:uppercase;color:var(--muted);justify-content:space-between;align-items:center;padding:12px 8px 4px;font-size:11.5px;font-weight:700;display:flex}.rail-add{border:1px solid var(--border);width:22px;height:22px;color:var(--muted);cursor:pointer;background:0 0;border-radius:7px;place-items:center;padding:0;display:grid}.rail-add:hover{color:var(--accent);border-color:var(--accent)}.rail-item{width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:.15s var(--ease);background:0 0;border:0;border-radius:10px;align-items:center;gap:9px;padding:8px 10px;font-size:13.5px;display:flex}.rail-item:hover{background:var(--surface-2)}.rail-item.on{background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--accent);font-weight:600}.rail-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.rail-sub{color:var(--muted);white-space:nowrap;font-size:10.5px}.rail-dot{background:var(--muted);opacity:.6;border-radius:50%;flex:none;width:9px;height:9px}.rail-dot.ok{opacity:1;background:#22c55e;box-shadow:0 0 0 3px #22c55e2e}.rail-dot.bad{opacity:1;background:#ef4444;box-shadow:0 0 0 3px #ef44442e}.rail-dot.busy{opacity:1;background:#f59e0b;animation:1.2s ease-in-out infinite railpulse}.rail-dot.none{border:1.5px solid var(--muted);opacity:.6;background:0 0}@keyframes railpulse{50%{transform:scale(.8);box-shadow:0 0 0 5px #f59e0b00}}.rail-empty{color:var(--muted);padding:4px 10px 6px;font-size:12.5px}.rail-warn{color:var(--muted);border-top:1px solid var(--border);margin-top:8px;padding:10px}.proj-main{min-width:0}.branch-head{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:10px;display:flex}@media (width<=900px){.proj-layout{grid-template-columns:1fr}.rail{max-height:260px;position:static}}.tabs{overscroll-behavior-x:contain;overflow-x:auto}.tab{white-space:nowrap;flex:none}.proj-main .proj-sticky .tabs{width:100%;display:flex}.overlay{background:#080a16b8!important}.side-top{align-items:center;gap:8px;min-width:0;padding:2px 4px 10px;display:flex}.side-top .brand{flex:1;min-width:0;padding:4px 6px}.side-top .brand .lbl{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.side-top .collapse-btn{flex:none;align-self:auto;margin:0}.foot-actions{align-items:center;gap:6px;display:flex}.foot-actions .icon-btn{flex:none}.side .icon-btn:focus-visible{outline-offset:1px}@media (width>=901px){.mobile-close{display:none}.app.collapsed .side-top{flex-direction:column;padding:2px 0 10px}.app.collapsed .side-top .brand{flex:none;padding:4px 0}.app.collapsed .foot-actions{flex-direction:column-reverse}.app.collapsed .foot-actions .nav-link{flex:none}}.rail-item[draggable=true]{cursor:grab}.rail-item.droppable{outline:1px dashed var(--border);outline-offset:-2px}.rail-item.over{background:var(--accent-soft);outline:2px solid var(--accent);outline-offset:-2px}.rail-hint{color:var(--muted);border-top:1px solid var(--border);margin-top:8px;padding:10px 10px 4px}.seg{width:auto;display:inline-flex}.rail-group.accepting{outline:1px dashed var(--accent);outline-offset:2px;border-radius:12px}.rail-group.over{background:var(--accent-soft)}.rail-item{-webkit-user-select:none;user-select:none;-webkit-user-drag:element}.main .page{max-width:1760px;padding-left:clamp(16px,2.6vw,44px);padding-right:clamp(16px,2.6vw,44px)}.proj-layout{grid-template-columns:270px minmax(0,1fr);gap:24px}@media (width<=900px){.proj-layout{grid-template-columns:1fr}}.proj-main .proj-sticky .tabs{flex-wrap:wrap;width:100%;display:flex;overflow:visible}*{scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--muted) 50%, transparent) transparent}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--muted) 45%, transparent);background-clip:content-box;border:2px solid #0000;border-radius:9px}::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb, var(--muted) 70%, transparent);background-clip:content-box}.rail{scrollbar-gutter:stable}.proj-main .proj-sticky .tabs{flex-wrap:nowrap;gap:1px;padding:4px;overflow:auto hidden}.proj-main .tab{padding:7px clamp(8px,.75vw,13px);font-size:13.5px}.bill-card{overflow:hidden}.stack-gap>.bill-card{margin:0}.bill-row{flex-wrap:wrap;align-items:center;gap:12px;padding:12px 16px;display:flex}.bill-name{min-width:200px;color:var(--text);flex:1;align-items:center;gap:10px;display:flex}.bill-name:hover{text-decoration:none}.bill-name .stack-ico{border-radius:10px;width:32px;height:32px;font-size:12px}.bill-price{text-align:right;min-width:84px}.bill-sub{padding:0 16px 12px}.bill-sub .banner{margin:0!important}.bill-body{border-top:1px solid var(--border);grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:0;display:grid}.bill-block{border-right:1px solid var(--border);flex-direction:column;gap:10px;padding:14px 16px;display:flex}.bill-block:last-child{border-right:0}.bill-h{font-size:13.5px;font-weight:700}.bill-addons{flex-direction:column;gap:8px;display:flex}.bill-add{justify-content:space-between;align-items:center;gap:10px;display:flex}.bill-pay{background:var(--accent-soft);border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px;padding:10px;display:flex}.bill-lines{flex-direction:column;gap:3px;display:flex}.seg{flex-wrap:wrap}@media (width<=720px){.bill-block{border-right:0;border-bottom:1px solid var(--border)}}.float-nav-in,.float-nav.scrolled .float-nav-in{-webkit-backdrop-filter:blur(26px)saturate(1.6);backdrop-filter:blur(26px)saturate(1.6);background:color-mix(in srgb, var(--surface-solid) 94%, transparent)!important;box-shadow:0 0 0 1px var(--border), 0 14px 40px -14px #000000a6!important}.auth-top{justify-content:space-between;align-items:center;gap:10px;margin-bottom:6px;display:flex}.auth-back{color:var(--muted);align-items:center;gap:6px;font-size:13px;font-weight:600;display:inline-flex}.auth-back:hover{color:var(--text);text-decoration:none}.bill-list{flex-direction:column;gap:16px;min-width:0;display:flex}.bill-card{min-width:0;max-width:100%}.bill-row{gap:10px 12px}.bill-row>*{min-width:0}.bill-name{flex:220px}.bill-name>span{text-overflow:ellipsis;min-width:0;overflow:hidden}.bill-sub{overflow-wrap:anywhere;line-height:1.45}.bill-body{grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr))}.page{min-width:0}.main{min-width:0;overflow-x:clip}.toolbar{margin-bottom:14px}mark{color:inherit;background:#facc1559;border-radius:3px;padding:0 1px}.tabs-wrap{width:100%;position:relative}.tabs-wrap .tabs{scroll-behavior:smooth;scrollbar-width:none;width:100%}.tabs-wrap .tabs::-webkit-scrollbar{display:none}.proj-main .proj-sticky .tabs-wrap .tabs{flex-wrap:nowrap;overflow-x:auto}.tabs-arrow{z-index:3;cursor:pointer;width:34px;color:var(--text);pointer-events:auto;background:linear-gradient(var(--dir,90deg), var(--surface-solid) 55%, transparent);border:0;place-items:center;display:grid;position:absolute;top:4px;bottom:4px}.tabs-arrow.left{--dir:90deg;border-radius:10px 0 0 10px;left:4px}.tabs-arrow.right{--dir:270deg;border-radius:0 10px 10px 0;right:4px}.tabs-arrow:hover{color:var(--accent)}.tabs-wrap .tabs{scrollbar-color:color-mix(in srgb, var(--accent) 60%, transparent) transparent;padding-bottom:9px;scrollbar-width:thin!important}.tabs-wrap .tabs::-webkit-scrollbar{height:6px;display:block!important}.tabs-wrap .tabs::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--accent) 55%, transparent);border:0;border-radius:6px}.tabs-wrap .tabs::-webkit-scrollbar-track{background:color-mix(in srgb, var(--muted) 14%, transparent);border-radius:6px;margin:0 10px}.tabs-arrow{bottom:11px}.rail{overflow:hidden auto}.rail-item,.rail-h,.rail-search,.rail-empty{box-sizing:border-box;max-width:100%}.stepper.mini{gap:8px;margin:0;padding:0;font-size:12.5px;list-style:none;display:flex}.stepper.mini li{color:var(--muted);flex:1;align-items:center;gap:6px;display:flex}.stepper.mini li span{background:var(--surface-2);border-radius:50%;flex:none;place-items:center;width:20px;height:20px;font-size:11px;font-weight:700;display:grid}.stepper.mini li.now{color:var(--text);font-weight:600}.stepper.mini li.now span{background:var(--accent);color:#fff}.stepper.mini li.done span{color:#fff;background:#22c55e}.bell,.bell-btn{position:relative}.bell-badge{color:#fff;min-width:17px;height:17px;box-shadow:0 0 0 2px var(--surface-solid);background:#ef4444;border-radius:9px;place-items:center;padding:0 4px;font-size:10.5px;font-weight:800;display:grid;position:absolute;top:-5px;right:-5px}.bell-panel{background:var(--surface-solid);border:1px solid var(--border);z-index:90;border-radius:18px;flex-direction:column;width:min(390px,100vw - 24px);max-height:min(70vh,560px);display:flex;position:fixed;bottom:14px;overflow:hidden;box-shadow:0 24px 60px -16px #000000b3}.bell-head{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:12px 14px;display:flex}.bell-list{overflow-y:auto}.bell-item{text-align:left;border:0;border-bottom:1px solid var(--border);width:100%;color:var(--text);font:inherit;cursor:pointer;background:0 0;align-items:flex-start;gap:10px;padding:12px 14px;display:flex}.bell-item:hover{background:var(--surface-2)}.bell-item.unread{background:color-mix(in srgb, var(--accent) 7%, transparent)}.bell-item i{border-radius:50%;flex:none;width:9px;height:9px;margin-top:6px}.bell-text{flex-direction:column;gap:2px;min-width:0;display:flex}.bell-text strong{font-size:13.5px}.bell-item:not(.unread) strong{opacity:.85;font-weight:600}.bell-text .small{overflow-wrap:anywhere}.imp-bar{z-index:95;color:#fff;background:#b45309;align-items:center;gap:12px;padding:8px 16px;font-size:13.5px;display:flex;position:sticky;top:0}.imp-bar .btn{color:#fff;background:#ffffff2e;border-color:#fff6}.grid.cols-4{grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:14px;display:grid}.ops-tile:hover{border-color:var(--accent)}.linklike{font:inherit;color:var(--text);cursor:pointer;text-align:left;background:0 0;border:0;padding:0}.linklike:hover{color:var(--accent);text-decoration:underline}.ops-tabs{flex-wrap:wrap}.ops-tile{color:var(--text);font:inherit}.ops-tile strong{color:inherit;font-family:var(--font-display)}.contact-page{max-width:1060px;margin:0 auto;padding:36px 20px 70px}.contact-grid{grid-template-columns:minmax(240px,340px) minmax(0,1fr);align-items:start;gap:22px;margin-top:26px;display:grid}@media (width<=800px){.contact-grid{grid-template-columns:1fr}}.contact-page textarea,.doc ul,.doc ol{font:inherit}.pay-instr{white-space:pre-wrap;font:inherit;background:var(--surface-2);border:1px solid var(--border);overflow-wrap:anywhere;border-radius:12px;margin:8px 0 0;padding:12px 14px}.hero-wrap{overflow-x:clip}.hero-wrap>.orbs{inset:-140px 0 0;overflow:visible}.hero-wrap>.orbs .orb.a{top:20px}.hero-wrap>.orbs .orb.b{top:200px}.hero-wrap>.orbs .orb.c{top:520px}.price-tabs{margin:4px 0 18px}.verify-bar{z-index:94;background:var(--warn-bg,#3a2c0e);color:var(--text);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:12px;padding:9px 16px;font-size:13.5px;display:flex;position:sticky;top:0}:root{--warn-bg:#fdf0d8}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--warn-bg:#36290f}}:root[data-theme=dark]{--warn-bg:#36290f}.team-page{max-width:1120px;padding:40px max(16px,env(safe-area-inset-left,0px)) 64px;margin:0 auto}.team-page h1{text-wrap:balance;margin:0 0 10px;font-size:clamp(1.9rem,4vw,2.8rem)}.team-intro{max-width:62ch;color:var(--muted);margin:0 0 30px;font-size:1.08rem}.team-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px;display:grid}.team-card{border:1px solid var(--border);background:var(--surface,var(--panel,transparent));border-radius:16px;flex-direction:column;gap:6px;min-width:0;padding:18px;display:flex}.team-card img,.team-ph{aspect-ratio:1;object-fit:cover;border-radius:12px;width:100%;max-width:100%;margin-bottom:8px}.team-ph{background:var(--accent-soft);color:var(--accent);place-items:center;font-size:2.4rem;font-weight:800;display:grid}.team-card h2{margin:4px 0 0;font-size:1.15rem}.team-role{color:var(--accent);font-size:.9rem;font-weight:600}.team-card p{color:var(--muted);overflow-wrap:anywhere;margin:6px 0 0;font-size:.93rem;line-height:1.55}.team-links{gap:10px;margin-top:auto;padding-top:10px;display:flex}.team-links a{border:1px solid var(--border);color:inherit;border-radius:8px;place-items:center;padding:4px 10px;font-size:.8rem;font-weight:600;display:grid}.team-links a:hover{border-color:var(--accent);color:var(--accent)}.verify-bar.ok{background:var(--ok-soft);color:var(--ok);border-color:var(--ok)}.verify-bar.bad{background:var(--bad-soft);color:var(--bad);border-color:var(--bad)}.top-progress{z-index:9999;pointer-events:none;opacity:0;height:3px;transition:opacity .25s;position:fixed;inset:0 0 auto;overflow:hidden}.top-progress.on{opacity:1}.top-progress i{background:linear-gradient(90deg, transparent, var(--accent), var(--accent-2,var(--accent)), transparent);border-radius:3px;width:38%;height:100%;animation:1.15s ease-in-out infinite top-sweep;display:block}@keyframes top-sweep{0%{transform:translate(-110%)}to{transform:translate(290%)}}.busy-chip{right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:9998;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:999px;align-items:center;gap:10px;padding:9px 15px;font-size:13px;font-weight:600;animation:.22s both chip-in;display:flex;position:fixed;box-shadow:0 6px 24px #00000038}@keyframes chip-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}html[data-busy] body{cursor:progress}.btn{transition:transform 80ms,filter .15s,box-shadow .15s}.btn:not(:disabled):active{transform:translateY(1px)scale(.985)}.btn:disabled{cursor:not-allowed}.btn:disabled:has(.spinner){cursor:progress;opacity:.85}.empty .spinner{width:26px;height:26px}@media (prefers-reduced-motion:reduce){.top-progress i{animation-duration:3s}.busy-chip{animation:none}.btn{transition:none}}.profile-icons{align-items:center;gap:6px;display:inline-flex}.profile-row{flex-wrap:wrap;align-items:center;gap:8px 14px;display:flex}.profile-link{color:var(--muted);align-items:center;gap:7px;padding:4px 0;font-size:13px;text-decoration:none;display:inline-flex}.profile-link:hover{color:var(--accent)}.float-panel .profile-row{border-top:1px solid var(--border);margin-top:6px;padding:10px 4px 2px}.chips{flex-wrap:wrap;gap:6px;display:flex}.chips button{border:1px solid var(--border);background:var(--surface);color:inherit;font:inherit;cursor:pointer;border-radius:999px;padding:5px 12px;font-size:13px;font-weight:600}.chips button.on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.inbox{grid-template-columns:minmax(260px,340px) minmax(0,1fr);align-items:start;gap:16px;display:grid}@media (width<=860px){.inbox{grid-template-columns:minmax(0,1fr)}.inbox.has-thread .inbox-list{display:none}}.inbox-list{padding:0;overflow:hidden}.inbox-item{border-bottom:1px solid var(--border);color:inherit;padding:10px 12px;text-decoration:none;display:block}.inbox-item:hover{background:var(--surface-2)}.inbox-item.on{background:var(--accent-soft)}.inbox-item strong{overflow-wrap:anywhere}.udot{background:var(--accent);border-radius:50%;flex:none;width:9px;height:9px;display:inline-block}.nbadge{background:var(--accent);color:var(--accent-ink);border-radius:999px;margin-left:auto;padding:1px 7px;font-size:11px;font-weight:700}.thread{flex-direction:column;min-width:0;display:flex}.thread-msgs{align-content:start;gap:8px;min-height:160px;max-height:calc(100vh - 330px);padding:14px;display:grid;overflow-y:auto}.bubble{background:var(--surface-2);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:14px;justify-self:start;max-width:min(560px,88%);padding:8px 12px}.bubble.mine{background:var(--accent-soft);justify-self:end}.bubble.note{background:var(--warn-soft);justify-self:end}.bubble .who{color:var(--muted);margin-bottom:2px;font-size:12px}.composer{border-top:1px solid var(--border);gap:8px;padding:10px 14px;display:grid}.composer textarea{resize:vertical;width:100%;min-height:44px}.online-dot{background:var(--muted);border-radius:50%;width:9px;height:9px;margin-right:6px;display:inline-block}.online-dot.on{background:var(--ok)}.typing{color:var(--muted);min-height:16px;padding:0 14px;font-size:12px}
