:root{color-scheme:light;--ink: oklch(.24 .03 258);--ink-soft: oklch(.4 .03 258);--muted: oklch(.52 .02 258);--line: oklch(.9 .015 258);--line-strong: oklch(.84 .02 258);--paper: #eef3f9;--card: #fff;--sea: #2563eb;--sea-soft: #e8f1ff;--signal: #2563eb;--signal-dark: #1d4ed8;--violet: #6d5efc;--violet-soft: #f1edff;--teal: #0f9f8f;--teal-soft: #e7f8f5;--good: #0f9f6e;--good-soft: #e7f8ef;--warn: #c47b12;--warn-soft: #fff6e6;--bad: #d14343;--bad-soft: #fdecec;--info: #2563eb;--info-soft: #e8f1ff;--sidebar: #e7eef8;--sidebar-text: oklch(.24 .03 258);--sidebar-muted: oklch(.5 .03 258);--shadow: 0 1px 2px rgba(0, 0, 0, .04);--bg: #fff;--card-muted: #fafafa;--hover: oklch(.96 0 0);--hover-strong: oklch(.975 0 0);--bar: rgba(255, 255, 255, .86);--bar-line: rgba(0, 0, 0, .06);--nav-muted: oklch(.46 0 0);--nav-icon: oklch(.55 0 0);--nav-hover: rgba(37, 99, 235, .07);--nav-active: #fff;--nav-active-shadow: 0 0 0 1px rgba(37, 99, 235, .16), 0 1px 2px rgba(37, 99, 235, .08);--nav-active-flat: oklch(.96 0 0);--side-line: oklch(.91 0 0);--avatar-bg: linear-gradient(180deg, #f4f4f5, #e8e8ec);--menu-shadow: 0 12px 32px rgba(0, 0, 0, .08), 0 0 0 1px rgba(0, 0, 0, .02);--menu-icon: oklch(.48 0 0);--user-chip: oklch(.4 0 0);--icon: oklch(.4 0 0);--input-bg: #fff;--input-border: oklch(.91 0 0);--input-hover: oklch(.82 0 0);--input-disabled: #fafafa;--focus-ring: rgba(37, 99, 235, .18);--select-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2371717a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");--table-line: oklch(.965 0 0);--table-hover: #f4f8ff;--table-head: #fafafa;--selection: #d7e6ff;--scrollbar: #d4d4d8;--divider: oklch(.955 0 0);--drawer: #fff;--modal: #fff;--scrim: rgba(17, 17, 17, .36);--secret: oklch(.28 0 0);--meter: oklch(.94 0 0);--plan-hover: oklch(.9 0 0);--stat-hover-border: oklch(.82 0 0);--signal-hover: #1d4ed8;--mix: white;--pill-good: #0b7a4b;--pill-good-border: #b7e4cd;--pill-sea-border: #c9dbf8;--pill-violet: #5b45d6;--pill-violet-border: #ddd4ff;--pill-warn: #9a5b08;--pill-warn-border: #f0d7a4;--pill-high: #c2410c;--pill-high-bg: #fff1e8;--pill-high-border: #f5c7ad;--pill-low: #53627a;--pill-low-bg: #f3f6fb;--pill-low-border: #d7e0ec;--notice-good: #0b7a4b;--notice-good-border: #b7e4cd;--notice-warn: #7a5a10;--notice-warn-border: #ead7a4;--status-ok-bg: #f5faf6;--status-ok-border: #d9eadf;--status-ok: #3f6b4e;--status-bad-border: #f0d0d0;--font: "Geist Variable", sans-serif;--mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;color:var(--ink);background:var(--bg);font-family:var(--font);font-size:16px;line-height:1.5;font-weight:400}[data-theme=dark]{color-scheme:dark;--ink: #e8eef8;--ink-soft: #c5d0e2;--muted: #93a1b8;--line: rgba(156, 184, 222, .16);--line-strong: rgba(156, 184, 222, .3);--paper: #0e1522;--card: #172033;--sea: #60a5fa;--sea-soft: rgba(59, 130, 246, .2);--signal: #3b82f6;--signal-dark: #93c5fd;--signal-hover: #60a5fa;--violet: #a78bfa;--violet-soft: rgba(139, 92, 246, .22);--teal: #2dd4bf;--teal-soft: rgba(45, 212, 191, .16);--good: #34d399;--good-soft: rgba(16, 185, 129, .18);--warn: #fbbf24;--warn-soft: rgba(245, 158, 11, .16);--bad: #f87171;--bad-soft: rgba(248, 113, 113, .16);--info: #60a5fa;--info-soft: rgba(59, 130, 246, .2);--sidebar: #0b111b;--sidebar-text: #e8eef8;--sidebar-muted: #93a1b8;--shadow: 0 1px 2px rgba(0, 0, 0, .32);--bg: #0e1522;--card-muted: #1c283c;--hover: rgba(255, 255, 255, .06);--hover-strong: rgba(255, 255, 255, .09);--bar: rgba(14, 21, 34, .88);--bar-line: rgba(156, 184, 222, .14);--nav-muted: #9aabc2;--nav-icon: #8ea0b8;--nav-hover: rgba(96, 165, 250, .12);--nav-active: #223049;--nav-active-shadow: 0 0 0 1px rgba(96, 165, 250, .32), 0 8px 18px rgba(0, 0, 0, .22);--nav-active-flat: rgba(96, 165, 250, .16);--side-line: rgba(156, 184, 222, .14);--avatar-bg: linear-gradient(180deg, #314158, #243246);--menu-shadow: 0 18px 42px rgba(0, 0, 0, .42), 0 0 0 1px rgba(255, 255, 255, .04);--menu-icon: #9aabc2;--user-chip: #c5d0e2;--icon: #c5d0e2;--input-bg: #10192a;--input-border: rgba(156, 184, 222, .24);--input-hover: rgba(156, 184, 222, .42);--input-disabled: #121b2c;--focus-ring: rgba(59, 130, 246, .34);--select-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23c5d0e2' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");--table-line: rgba(156, 184, 222, .1);--table-hover: rgba(59, 130, 246, .12);--table-head: #1b2740;--selection: rgba(59, 130, 246, .38);--scrollbar: #465773;--divider: rgba(156, 184, 222, .12);--drawer: #121b2c;--modal: #182438;--scrim: rgba(0, 0, 0, .62);--secret: #d7e1ef;--meter: rgba(255, 255, 255, .08);--plan-hover: rgba(156, 184, 222, .28);--stat-hover-border: rgba(156, 184, 222, .34);--mix: #0e1522;--pill-good: #6ee7b7;--pill-good-border: rgba(52, 211, 153, .36);--pill-sea-border: rgba(96, 165, 250, .36);--pill-violet: #c4b5fd;--pill-violet-border: rgba(167, 139, 250, .36);--pill-warn: #fcd34d;--pill-warn-border: rgba(251, 191, 36, .36);--pill-high: #fdba74;--pill-high-bg: rgba(234, 88, 12, .18);--pill-high-border: rgba(251, 146, 60, .36);--pill-low: #cbd5e1;--pill-low-bg: rgba(148, 163, 184, .12);--pill-low-border: rgba(148, 163, 184, .28);--notice-good: #6ee7b7;--notice-good-border: rgba(52, 211, 153, .36);--notice-warn: #fcd34d;--notice-warn-border: rgba(251, 191, 36, .34);--status-ok-bg: rgba(22, 163, 74, .14);--status-ok-border: rgba(52, 211, 153, .32);--status-ok: #86efac;--status-bad-border: rgba(248, 113, 113, .32);background:var(--bg);color:var(--ink)}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/fonts/geist-cyrillic.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/fonts/geist-latin-ext.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/fonts/geist-latin.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*{box-sizing:border-box}html,body,#app{min-height:100%}html{font-size:16px;font-family:Geist Variable,sans-serif;line-height:1.5}body{margin:0;background:var(--bg);font-family:Geist Variable,sans-serif;font-size:16px;line-height:24px;font-weight:400}button,input,select,textarea{font:inherit;color:inherit;margin:0}button{cursor:pointer}a{color:var(--ink);text-decoration:none}a:hover{text-decoration:none}h1,h2,h3,p{margin:0}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}b,strong{font-weight:bolder}::selection{background:var(--selection)}:focus-visible{outline:2px solid var(--signal);outline-offset:2px}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar) transparent}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-thumb{background:var(--scrollbar);border-radius:99px;border:2px solid transparent;background-clip:padding-box}*::-webkit-scrollbar-track{background:transparent}.ico{display:inline-flex;flex:none;color:currentColor}.ico svg{display:block}.shell.admin{min-height:100vh;display:grid;grid-template-columns:248px minmax(0,1fr);background:var(--sidebar)}.side{background:transparent;color:var(--sidebar-text);display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.side-head{padding:16px 14px 4px}.brand{display:flex;gap:10px;align-items:center;color:inherit;min-width:0}.brand svg,.mark svg{width:28px;height:28px;flex:none}.brand strong,.mark strong{display:block;font-size:14px;font-weight:600;letter-spacing:normal;line-height:17.5px}.brand span,.mark span{display:block;color:var(--ink);font-size:13px;line-height:18px;margin-top:1px}.nav{display:flex;flex-direction:column;padding:8px 10px 12px;gap:1px;overflow:auto;flex:1}.nav-label{color:var(--ink);font-size:14px;line-height:20px;font-weight:500;padding:14px 10px 6px}.nav a{display:flex;align-items:center;gap:9px;min-height:34px;padding:0 10px;border-radius:8px;color:var(--ink);font-size:14px;line-height:20px;font-weight:400;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.nav .ico{color:var(--nav-icon)}.nav a:hover{background:var(--nav-hover);color:var(--signal-dark)}.nav a:hover .ico{color:var(--signal)}.nav a.active{background:var(--nav-active);color:var(--signal-dark);font-weight:500;box-shadow:var(--nav-active-shadow)}.nav a.active .ico{color:var(--signal)}.side-foot{margin-top:auto;display:flex;gap:10px;align-items:center;padding:12px 16px 14px;border-top:1px solid var(--side-line)}.side-foot b{display:block;font-size:14px;font-weight:500;line-height:17.5px}.side-foot small{display:block;color:var(--ink);font-size:13px;line-height:18px;max-width:156px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-main{min-width:0;padding:8px 8px 8px 0}.admin-panel{min-height:calc(100vh - 16px);border:1px solid var(--line);border-radius:12px;background:var(--card);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 1px 2px #0000000a}.admin-top{height:52px;display:flex;align-items:center;gap:8px;padding:0 14px 0 16px;border-bottom:1px solid var(--line)}.crumb{color:var(--ink);font-size:14px;font-weight:400;line-height:20px}.admin-top .icon-btn{display:none}.shell.portal{min-height:100vh;display:flex;flex-direction:column;background:var(--paper)}.portal-bar{height:56px;display:flex;align-items:center;gap:8px;padding:0 20px;background:var(--bar);border-bottom:1px solid var(--bar-line);position:sticky;top:0;z-index:8;-webkit-backdrop-filter:blur(14px) saturate(1.3);backdrop-filter:blur(14px) saturate(1.3)}.portal-bar .brand svg{width:26px;height:26px}.portal-bar .brand span{font-size:16px;font-weight:600;color:var(--ink);letter-spacing:normal;line-height:1.5}.portal-bar .brand,.portal-bar .who{position:relative;z-index:1}.portal-bar .bar-divider{display:none}.portal-nav{display:flex;align-items:center;justify-content:center;gap:4px;position:absolute;left:50%;top:0;transform:translate(-50%);width:max-content;max-width:calc(100% - 680px);height:100%;scrollbar-width:none;z-index:0}.portal-nav::-webkit-scrollbar{width:0;height:0;display:none}.portal-nav a{position:relative;height:56px;display:flex;align-items:center;padding:0 12px;color:var(--nav-muted);font-size:14px;line-height:20px;font-weight:400;white-space:nowrap;transition:color .15s ease}.portal-nav a:hover{color:var(--ink)}.portal-nav a.active{color:var(--signal-dark);font-weight:600}.portal-nav a.active:after{content:"";position:absolute;left:12px;right:12px;bottom:0;height:2px;border-radius:2px 2px 0 0;background:var(--signal)}.portal-main{width:min(1120px,calc(100% - 48px));margin:0 auto;padding:28px 0 48px;flex:1}.portal-foot{width:100%;margin:auto 0 0;border-top:1px solid var(--line);background:var(--card);color:var(--muted);display:flex;justify-content:center;align-items:center;gap:12px;padding:16px max(24px,calc((100% - 1120px)/2));font-size:13px;line-height:18px}.portal-drawer{display:none}.bar-divider{width:1px;height:16px;background:var(--line);margin:0 2px 0 6px;flex:none}.bar-tools{margin-left:auto;display:flex;align-items:center;gap:10px;position:relative;z-index:2;min-width:0}.who{position:relative}.theme-switch{display:flex;align-items:center;gap:2px;height:34px;padding:2px;border-radius:999px;border:1px solid var(--line);background:color-mix(in srgb,var(--card) 78%,transparent);box-shadow:var(--shadow);flex:none}.theme-switch button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:5px;height:28px;padding:0 10px;border:0;border-radius:999px;background:transparent;color:var(--muted);font-size:13px;line-height:18px;font-weight:500;white-space:nowrap}.theme-switch button:hover{color:var(--ink);background:var(--hover)}.theme-switch button.on{background:var(--signal);color:#fff;box-shadow:0 1px 2px #2563eb47}.theme-switch button.on:hover{background:var(--signal-hover);color:#fff}.theme-switch .ico{color:currentColor}.user-chip{display:flex;align-items:center;gap:8px;height:34px;padding:0 8px 0 3px;border:0;background:transparent;border-radius:999px;color:var(--user-chip);transition:background .15s ease,color .15s ease}.user-chip:hover{background:var(--hover);color:var(--ink)}.user-chip b{font-size:14px;font-weight:500;line-height:20px;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.avatar{width:28px;height:28px;border-radius:50%;background:var(--avatar-bg);box-shadow:inset 0 0 0 1px #ffffff14;display:grid;place-items:center;font-style:normal;font-size:13px;font-weight:500;color:var(--ink);flex:none}.side-foot .avatar{width:32px;height:32px}.menu-scrim{position:fixed;inset:0;z-index:20}.user-menu{position:absolute;right:0;top:calc(100% + 8px);width:232px;background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:var(--menu-shadow);z-index:21;padding:6px}.user-menu-head{padding:8px 10px 10px;border-bottom:1px solid var(--line);margin-bottom:4px}.user-menu-head strong{display:block;font-size:14px;font-weight:500;line-height:20px}.user-menu-head span{color:var(--muted);font-size:13px;line-height:18px}.user-menu a,.user-menu button{width:100%;display:flex;align-items:center;gap:8px;min-height:34px;padding:0 10px;border:0;background:transparent;border-radius:8px;text-align:left;font-size:14px;line-height:20px;font-weight:400;color:var(--ink)}.user-menu .ico{color:var(--menu-icon)}.user-menu a:hover,.user-menu button:hover{background:var(--hover)}.danger-link,.user-menu .danger-link .ico{color:var(--bad)!important}.icon-btn.menu-btn{display:none}.content{min-width:0;padding:22px 28px 56px;font-size:14px;line-height:20px}.page-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-end;margin-bottom:18px}.page-head h1{font-size:24px;letter-spacing:-.025em;font-weight:700;line-height:32px}.page-head p{color:var(--muted);margin-top:4px;font-size:14px;line-height:20px;font-weight:400}.page-actions,.cluster,.row-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}td.row-actions{display:table-cell;width:1%;white-space:nowrap;text-align:right}td.row-actions>*+*{margin-left:8px}.stack{display:grid;gap:12px}.split{display:flex;justify-content:space-between;gap:12px;align-items:center}.grow{flex:1}.muted{color:var(--muted);font-size:13px;line-height:18px}.right{margin-left:auto}.mono{font-family:var(--mono)}.card{background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}.card-pad{padding:18px}.stat-grid,.plan-grid,.dash-grid,.two-col,.three-col{display:grid;gap:12px}.stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:16px}.dash-grid{grid-template-columns:minmax(0,1.7fr) minmax(280px,.9fr);align-items:start;gap:16px}.two-col{grid-template-columns:1fr 1fr}.three-col{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}@media(max-width:1100px){.three-col{grid-template-columns:1fr 1fr}}.plan-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}.shop-board{display:grid;gap:14px;margin-bottom:16px}.shop-row{display:grid;grid-template-columns:72px minmax(0,1fr);gap:12px;align-items:start}.shop-row>span{color:var(--muted);font-size:13px;line-height:30px;white-space:nowrap}.shop-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}.shop-plan{min-height:280px}.shop-plan .price{color:var(--signal);font-size:26px;margin-left:auto}.shop-foot{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;margin-top:auto}.shop-plan .btn{width:100%}@media(max-width:640px){.shop-row{grid-template-columns:1fr;gap:8px}}.stat{color:inherit;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.stat span,.eyebrow{display:block;color:var(--muted);font-size:13px;line-height:18px;font-weight:500}.stat b{display:block;margin-top:8px;font-size:30px;letter-spacing:-.025em;font-variant-numeric:tabular-nums;font-weight:700;line-height:1.2}.stat em{display:block;margin-top:4px;color:var(--ink-soft);font-style:normal;font-size:13px;line-height:18px}.stat.mini b{font-size:14px;letter-spacing:0;margin-top:4px;font-weight:500;line-height:20px}.stat.mini em{margin-top:2px}a.stat:hover{border-color:var(--stat-hover-border);box-shadow:0 8px 20px #0000000a;transform:translateY(-1px)}.plan-name{font-size:20px;letter-spacing:-.025em;font-weight:600;line-height:28px;margin-top:4px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:8px;min-height:34px;padding:0 13px;font-weight:500;font-size:14px;line-height:20px;letter-spacing:0;box-shadow:0 1px 1px #00000008;text-decoration:none;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease}.btn:hover{background:var(--hover-strong)}.btn:active{transform:translateY(.5px)}.btn:disabled{opacity:.48;cursor:not-allowed;transform:none}.btn.primary{background:var(--signal);color:#fff;border-color:var(--signal);box-shadow:0 1px 1px #1d4ed847}.btn.primary:hover{background:var(--signal-hover);border-color:var(--signal-hover)}.btn.ghost{background:transparent;border-color:transparent;box-shadow:none}.btn.ghost:hover{background:var(--hover)}.btn.danger{background:var(--bad);color:#fff;border-color:transparent}.btn.small.danger{background:transparent;color:var(--bad);border-color:transparent;box-shadow:none}.btn.small.danger:hover{background:var(--bad-soft)}.btn.small{min-height:30px;padding:0 10px;font-size:13px;line-height:18px;border-radius:8px}.btn.block{width:100%}.btn.linkish{background:transparent;color:var(--ink-soft);border:0;padding:0;min-height:0;box-shadow:none;font-weight:500}.btn.linkish:hover{color:var(--ink);background:transparent}.icon-btn{width:32px;height:32px;border-radius:8px;border:1px solid transparent;background:transparent;display:inline-grid;place-items:center;color:var(--icon);transition:background .15s ease,color .15s ease}.icon-btn:hover{background:var(--hover);color:var(--ink)}.field{display:grid;gap:6px;font-size:14px;line-height:20px}.field>span{font-weight:500;color:var(--ink);line-height:20px}.field small,.hint{color:var(--muted);font-size:13px;line-height:18px;font-weight:400}.field-error{color:var(--bad)!important}input,select,textarea{appearance:none;-webkit-appearance:none;width:100%;max-width:100%;border:1px solid var(--input-border);background-color:var(--input-bg);border-radius:8px;height:36px;min-height:36px;padding:0 12px;font-size:14px;line-height:20px;font-weight:400;box-shadow:0 1px 1px #00000004;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;background-clip:padding-box}select{padding-right:32px;background-image:var(--select-chevron);background-repeat:no-repeat;background-position:right 10px center;background-size:12px;cursor:pointer}select::-ms-expand{display:none}textarea{height:auto;min-height:112px;padding:8px 12px;resize:vertical;line-height:1.6}input[type=number]{-moz-appearance:textfield}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=date],input[type=datetime-local],input[type=time],input[type=month],input[type=week]{line-height:normal;padding-right:8px}input[type=date]::-webkit-calendar-picker-indicator,input[type=datetime-local]::-webkit-calendar-picker-indicator,input[type=time]::-webkit-calendar-picker-indicator,input[type=month]::-webkit-calendar-picker-indicator,input[type=week]::-webkit-calendar-picker-indicator{margin:0;cursor:pointer;opacity:.72}input:hover,select:hover,textarea:hover{border-color:var(--input-hover)}input:focus,select:focus,textarea:focus{border-color:var(--signal);outline:none;box-shadow:0 0 0 3px var(--focus-ring)}input::placeholder,textarea::placeholder{color:var(--muted)}input:disabled,select:disabled,textarea:disabled{background:var(--input-disabled);color:var(--muted);cursor:not-allowed;opacity:1}input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px var(--input-bg) inset;-webkit-text-fill-color:var(--ink);caret-color:var(--ink)}input[type=checkbox],input[type=radio]{appearance:auto;-webkit-appearance:auto;width:16px;min-width:16px;min-height:16px;padding:0;border:0;box-shadow:none;background:none;accent-color:var(--signal);cursor:pointer}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid .full,.full{grid-column:1 / -1}.check{display:flex;gap:8px;align-items:center;font-size:14px}.check input{width:16px;height:16px;min-height:16px;box-shadow:none}.toolbar{display:flex;gap:8px;align-items:end;flex-wrap:wrap;margin-bottom:12px}.toolbar .field{min-width:160px}.toolbar .btn{min-height:36px}.toolbar .field>span{font-size:14px;line-height:20px;color:var(--ink);font-weight:500}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:12px;background:var(--card)}table{width:100%;border-collapse:collapse;font-size:14px;line-height:20px}th,td{padding:11px 14px;text-align:left;vertical-align:middle}th{height:40px;font-size:14px;line-height:20px;color:var(--ink);font-weight:500;background:var(--table-head);border-bottom:1px solid var(--line);white-space:nowrap}td{border-bottom:1px solid var(--table-line)}tr:last-child td{border-bottom:0}tbody tr:hover td{background:var(--table-hover)}.clip{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:inherit;font-size:14px;line-height:20px}.pager{display:flex;justify-content:flex-end;gap:8px;align-items:center;margin-top:12px;color:var(--muted);font-size:14px;line-height:20px;font-weight:400}.pager-page{color:var(--ink);font-weight:400}.pill{display:inline-flex;align-items:center;height:20px;padding:0 7px;border-radius:999px;border:1px solid var(--line);background:var(--card);color:var(--ink-soft);font-size:13px;font-weight:500;line-height:18px;letter-spacing:0}.pill.active,.pill.enabled,.pill.ok,.pill.completed{background:var(--good-soft);color:var(--pill-good);border-color:var(--pill-good-border)}.pill.replied,.pill.unused,.pill.normal{background:var(--sea-soft);color:var(--signal-dark);border-color:var(--pill-sea-border)}.pill.admin{background:var(--violet-soft);color:var(--pill-violet);border-color:var(--pill-violet-border)}.pill.pending,.pill.open{background:var(--warn-soft);color:var(--pill-warn);border-color:var(--pill-warn-border)}.pill.high{background:var(--pill-high-bg);color:var(--pill-high);border-color:var(--pill-high-border)}.pill.low{background:var(--pill-low-bg);color:var(--pill-low);border-color:var(--pill-low-border)}.pill.expired,.pill.exhausted,.pill.cancelled,.pill.closed,.pill.revoked,.pill.banned,.pill.disabled,.pill.used{color:var(--bad);border-color:color-mix(in oklch,var(--bad) 28%,var(--mix));background:var(--bad-soft)}.notice{display:flex;justify-content:space-between;gap:12px;align-items:center;border:1px solid var(--line);background:var(--card-muted);color:var(--ink);border-radius:10px;padding:10px 12px;font-size:14px;line-height:20px}.notice.bad{background:var(--bad-soft);border-color:color-mix(in oklch,var(--bad) 22%,var(--mix));color:var(--bad)}.notice.good{background:var(--good-soft);border-color:var(--notice-good-border);color:var(--notice-good)}.notice.warn{background:var(--warn-soft);border-color:var(--notice-warn-border);color:var(--notice-warn)}.empty{padding:42px 16px;text-align:center}.empty strong{display:block;font-size:14px;line-height:20px;font-weight:500;margin-bottom:6px}.empty p{color:var(--muted);margin-bottom:14px}.loading{color:var(--muted);padding:32px 8px;font-size:14px;line-height:20px}.skeleton{min-height:120px}.skeleton .bone{display:block;height:12px;border-radius:6px;background:linear-gradient(90deg,var(--line) 25%,var(--hover-strong) 37%,var(--line) 63%);background-size:400% 100%;animation:skeleton-shimmer 1.4s ease infinite}.skeleton-table{overflow:hidden;border:1px solid var(--line);border-radius:12px;background:var(--card)}.skeleton-row{display:grid;grid-template-columns:repeat(var(--cols),minmax(0,1fr));gap:18px;align-items:center;padding:14px 16px;border-bottom:1px solid var(--table-line)}.skeleton-row:last-child{border-bottom:0}.skeleton-row.is-head{background:var(--table-head)}.skeleton-row.is-head .bone{height:10px;width:46%}.skeleton-row .bone:last-child{width:28px;justify-self:end}.skeleton-card{display:grid;gap:12px}.skeleton .bone.title{width:42%;height:16px}.skeleton .bone.price{width:36%;height:28px}.skeleton .bone.field{width:100%;height:36px;border-radius:8px}.skeleton .bone.action{width:88px;height:32px;border-radius:8px;margin-top:4px}.skeleton .bone.thread{height:44px;border-radius:10px}.overview-metrics .bone{width:46%}.overview-metrics .bone.title{width:62%;height:18px;margin-top:8px}@keyframes skeleton-shimmer{0%{background-position:100% 0}to{background-position:0 0}}@media(prefers-reduced-motion:reduce){.skeleton .bone{animation:none}}.meter{height:6px;border-radius:99px;background:var(--meter);overflow:hidden}.meter>span{display:block;height:100%;background:linear-gradient(90deg,var(--signal),var(--teal));border-radius:inherit}.meter.warn>span{background:#d08916}.meter.bad>span{background:var(--bad)}.secret-box{font-family:var(--mono);font-size:13px;line-height:18px;background:var(--card-muted);border:1px solid var(--line);border-radius:10px;padding:10px 12px;word-break:break-all;color:var(--secret)}.chips{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.chip{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;width:auto;max-width:100%;flex:0 0 auto;white-space:nowrap;appearance:none;-webkit-appearance:none;border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:999px;min-height:30px;height:30px;padding:0 12px;font-size:13px;line-height:18px;font-weight:500;text-decoration:none;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.chip:hover{background:var(--hover)}.chip[aria-pressed=true],.methods button[aria-pressed=true]{background:var(--signal);color:#fff;border-color:transparent}.plan{display:flex;flex-direction:column;gap:12px;padding:20px}.plan .btn{margin-top:auto}.plan.current{border-color:var(--signal);box-shadow:0 0 0 1px var(--signal)}.price{font-size:30px;letter-spacing:-.025em;font-variant-numeric:tabular-nums;font-weight:700;line-height:1.2}.price small{font-size:14px;color:var(--muted);font-weight:400;margin-left:4px;letter-spacing:0}.features{display:grid;gap:7px;color:var(--ink-soft);font-size:14px;line-height:20px;margin:0;padding:0;list-style:none}.features li{display:flex;gap:8px;align-items:flex-start}.features li:before{content:"";width:4px;height:4px;margin-top:8px;border-radius:50%;background:var(--signal);flex:none}.shell.portal .card,.shell.portal .table-wrap,.shell.portal .skeleton-table{border-color:transparent;box-shadow:none;border-radius:16px}[data-theme=dark] .shell.portal .card,[data-theme=dark] .shell.portal .table-wrap,[data-theme=dark] .shell.portal .skeleton-table,[data-theme=dark] .shell.portal .plan{border-color:var(--line)}.shell.portal .plan{border:1px solid transparent}.shell.portal .plan:hover{border-color:var(--plan-hover)}.shell.portal .plan.current{border-color:var(--signal);box-shadow:0 0 0 1px var(--signal)}.shell.portal .stack{gap:16px}.shell.portal .notice,.shell.portal .secret-box{border-color:var(--line)}.auth{display:grid;grid-template-rows:72px minmax(0,1fr);min-height:100dvh;padding:0;color-scheme:dark}.auth-panel,.auth-card{position:relative;z-index:2;width:min(420px,calc(100% - 32px));margin:auto;background:#0a0e1675;border:1px solid rgba(255,255,255,.16);border-radius:22px;box-shadow:0 24px 80px #00000052,inset 0 1px #ffffff1a;padding:28px 28px 22px;color:#fff;overflow:hidden;overscroll-behavior:none;scrollbar-width:none;-ms-overflow-style:none;backdrop-filter:blur(28px) saturate(1.45);-webkit-backdrop-filter:blur(28px) saturate(1.45)}.auth-panel::-webkit-scrollbar,.auth-card::-webkit-scrollbar,.auth::-webkit-scrollbar{display:none;width:0;height:0}.auth-panel:before{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:linear-gradient(180deg,rgba(255,255,255,.1) 0%,rgba(255,255,255,.02) 42%,transparent 100%)}.auth-main{min-height:100vh;display:grid;place-items:center;padding:40px 16px}.auth-side{display:none}.auth-brand{display:flex;flex-direction:column;align-items:center;gap:8px;margin-bottom:16px;text-align:center;color:#fff}.auth-brand svg{width:34px;height:34px}.auth-brand svg rect{fill:var(--signal)}.auth-brand svg path{fill:#fff}.auth-brand strong{font-size:14px;letter-spacing:normal;font-weight:600;line-height:17.5px}.auth-brand span,.auth-copy p,.auth-card .sub{color:#ffffffb8;font-size:15px;line-height:1.6;font-weight:400}.auth-copy{text-align:center;margin-bottom:18px}.auth-copy h1,.auth-card h1{font-size:28px;font-weight:700;letter-spacing:-.04em;line-height:1.15;text-align:center;color:#fff}.auth-copy p{margin-top:8px}.auth-card .sub{margin:6px 0 16px;text-align:center}.auth-form{gap:12px}.auth .field>span,.home-auth .field>span{color:#ffffffdb}.auth .field small,.auth .hint,.home-auth .field small,.home-auth .hint{color:#ffffff85}.auth-panel input,.auth-card input{height:44px;min-height:44px;padding:0 14px;border-radius:12px;background:#ffffff14;border:1px solid rgba(255,255,255,.16);color:#fff;box-shadow:none;caret-color:#fff;-webkit-backdrop-filter:blur(16px) saturate(1.2);backdrop-filter:blur(16px) saturate(1.2)}.auth-panel input:hover,.auth-card input:hover{border-color:#ffffff47;background:#ffffff1a}.auth-panel input::placeholder,.auth-card input::placeholder{color:#ffffff6b}.auth-panel input:focus,.auth-card input:focus{outline:none;border-color:#ffffff80;background:#ffffff1f;box-shadow:0 0 0 4px #ffffff14}.auth input:-webkit-autofill,.auth input:-webkit-autofill:hover,.auth input:-webkit-autofill:focus,.home-auth input:-webkit-autofill,.home-auth input:-webkit-autofill:hover,.home-auth input:-webkit-autofill:focus{-webkit-text-fill-color:#fff;caret-color:#fff;box-shadow:0 0 0 1000px #0c10188c inset;transition:background-color 9999s ease-out}.auth .notice,.home-auth .notice{background:#ffffff14;border-color:#ffffff1f;color:#ffffffdb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.auth .notice.bad,.home-auth .notice.bad{background:#ef44442e;border-color:#fca5a547;color:#fecaca}.auth .btn:not(.primary):not(.ghost),.home-auth .btn:not(.primary):not(.ghost){background:#ffffff14;border-color:#ffffff29;color:#fff;box-shadow:none;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.auth .btn:not(.primary):not(.ghost):hover,.home-auth .btn:not(.primary):not(.ghost):hover{background:#ffffff29}.auth-panel .btn.primary,.auth-card .btn.primary{min-height:44px;border-radius:12px;font-size:15px;font-weight:500;background:var(--signal);color:#fff;border-color:var(--signal);box-shadow:none}.auth-panel .btn.primary:hover,.auth-card .btn.primary:hover{background:#1d4ed8;border-color:#1d4ed8}.auth-links{display:flex;justify-content:center;align-items:center;font-size:14px;line-height:20px;margin-top:4px}.auth-links a{color:#ffffffad;padding:0 12px;transition:color .15s ease}.auth-links a+a{border-left:1px solid rgba(255,255,255,.16)}.auth-links a:hover{color:#fff}.auth .code-btn,.home-auth .code-btn{height:44px;min-height:44px;border-radius:12px}.auth .home-nav .btn.ghost.router-link-active{background:#ffffff1f;color:#fff}.auth,.auth-panel,.auth-card{scrollbar-width:none;-ms-overflow-style:none}.auth .code-row,.home-auth .code-row{flex-direction:row;align-items:flex-end}.auth .code-btn,.home-auth .code-btn{width:auto;flex:none}@media(max-height:820px){.auth-panel,.auth-card{padding:22px 22px 16px}.auth-copy{margin-bottom:12px}.auth-copy h1,.auth-card h1{font-size:24px}.auth-form{gap:10px}.auth-panel input,.auth-card input,.auth .code-btn,.auth-panel .btn.primary{height:40px;min-height:40px}.auth .field small{display:none}}.status-chip,.link-row{display:flex;align-items:center;gap:8px;min-height:36px;padding:6px 10px 6px 12px;border-radius:10px;border:1px solid var(--line);background:var(--card-muted);color:var(--muted);font-size:13px;line-height:18px}.status-chip span,.link-row span{min-width:0}.status-chip .btn.linkish,.link-row .btn.linkish{margin-left:auto;font-size:13px;line-height:18px;flex:none}.status-chip.ok{background:var(--status-ok-bg);border-color:var(--status-ok-border);color:var(--status-ok)}.status-chip.bad{background:var(--bad-soft);border-color:var(--status-bad-border);color:var(--bad)}.dot{width:7px;height:7px;border-radius:50%;background:#a1a1aa;display:inline-block;flex:none}.dot.ok{background:#16a34a}.dot.bad{background:var(--bad)}.dot.checking{animation:pulse 1.2s ease infinite}@keyframes pulse{50%{opacity:.35}}.code-row{display:flex;gap:8px;align-items:flex-end}.code-btn{flex:none;height:36px;min-height:36px;white-space:nowrap}.server-details{margin-top:2px;padding-top:10px;border-top:1px solid var(--line);color:var(--muted);font-size:13px;line-height:18px}.server-details summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;min-height:32px;-webkit-user-select:none;user-select:none}.server-details summary::-webkit-details-marker{display:none}.server-details summary:after{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);opacity:.7}.server-details[open] summary:after{transform:rotate(225deg) translateY(-1px)}.server-details .stack{margin-top:8px}.facts,.lead,.foot,.mark{color:inherit}.portal-main:has(.ticket-page),.content:has(.ticket-page){display:flex;flex-direction:column;min-height:0}.shell.portal:has(.ticket-page){height:100vh;min-height:100vh;overflow:hidden}.portal-main:has(.ticket-page){flex:1;width:min(1120px,calc(100% - 48px));padding-bottom:20px;overflow:hidden}.shell.admin:has(.ticket-page){height:100vh}.shell.admin:has(.ticket-page) .admin-main{height:100%;min-height:0}.shell.admin:has(.ticket-page) .admin-panel{height:calc(100vh - 16px);min-height:0}.content:has(.ticket-page){flex:1;overflow:hidden;padding-bottom:16px}.ticket-page,.ticket-fill{flex:1;min-height:0;display:flex;flex-direction:column}.ticket-page .page-head{flex:none;margin-bottom:12px}.ticket-sheet{width:100%;flex:1;min-height:0;margin:0;display:flex;flex-direction:column;overflow:hidden;background:var(--card)}.ticket-head{display:grid;gap:8px;padding:14px 16px 12px;background:var(--card);border-bottom:1px solid var(--line)}.ticket-head-top,.ticket-head-foot{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.ticket-head-foot{align-items:center}.ticket-title{min-width:0}.ticket-title h2{margin-top:2px;font-size:16px;font-weight:600;letter-spacing:-.02em;line-height:22px}.ticket-head-foot .muted{min-width:0}.ticket-head .btn{flex:none}.thread{flex:1;height:auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:16px;padding:16px;background:var(--card)}.thread .empty{margin:auto;padding:24px 8px;background:transparent;border:0;box-shadow:none;color:var(--muted)}.msg{display:flex;align-items:flex-start;gap:8px;max-width:min(80%,440px)}.msg.user{align-self:flex-start}.msg.admin{align-self:flex-end;flex-direction:row-reverse}.msg-avatar{width:32px;height:32px;border-radius:50%;background:var(--sea-soft);box-shadow:inset 0 0 0 1px #2563eb1f;display:grid;place-items:center;flex:none;font-size:13px;font-weight:600;color:var(--signal-dark)}.msg.admin .msg-avatar{background:transparent;box-shadow:none;border-radius:8px;overflow:hidden}.msg-avatar svg{width:32px;height:32px;display:block}.msg-main{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:4px}.msg.admin .msg-main{align-items:flex-end}.msg-meta{display:flex;align-items:baseline;gap:8px;padding:0 2px;font-size:12px;line-height:16px;color:var(--muted)}.msg.admin .msg-meta{flex-direction:row-reverse}.msg-meta strong{color:var(--ink-soft);font-weight:500}.bubble{width:fit-content;max-width:100%;border:0;border-radius:4px 16px 16px;padding:8px 12px;background:var(--sea-soft);color:var(--ink);box-shadow:none}.msg.admin .bubble{border-radius:16px 4px 16px 16px;background:var(--signal);color:#fff}.bubble .prose{font-size:14px;line-height:1.6}.ticket-compose{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 8px;align-items:end;padding:10px 12px 12px;background:var(--card);border-top:1px solid var(--line)}.ticket-compose textarea{height:40px;min-height:40px;max-height:88px;padding:8px 12px;border-radius:10px;resize:none;line-height:22px}.ticket-compose .btn{height:40px;min-height:40px;padding:0 16px}.ticket-compose-hint{grid-column:1 / -1;margin:0;font-size:12px;line-height:16px}.ticket-closed{margin:0;padding:12px 16px;border-top:1px solid var(--line);background:var(--card);text-align:center;font-size:13px}@media(max-width:720px){.msg{max-width:86%}.ticket-head-top{flex-wrap:wrap}.portal-main:has(.ticket-page){width:auto;padding:16px 16px 12px}}.prose{white-space:pre-wrap;line-height:1.7}.qr-wrap{width:220px;height:220px;background:#fff;border-radius:12px;display:grid;place-items:center;border:1px solid var(--line)}.qr-wrap canvas{width:200px;height:200px}.pay-layout{display:grid;grid-template-columns:320px 1fr;gap:12px;align-items:start}.methods{display:flex;gap:8px;flex-wrap:wrap}.hello{padding:28px 30px 26px;margin-bottom:16px;border-radius:16px;background:radial-gradient(520px 160px at 100% 0%,rgba(37,99,235,.14),transparent 62%),radial-gradient(360px 140px at 0% 100%,rgba(15,159,110,.1),transparent 60%),var(--card)}.stat-grid .stat:nth-child(4n+1){border-top:3px solid var(--signal)}.stat-grid .stat:nth-child(4n+2){border-top:3px solid var(--good)}.stat-grid .stat:nth-child(4n+3){border-top:3px solid var(--warn)}.stat-grid .stat:nth-child(4n+4){border-top:3px solid var(--violet)}.hello h2{font-size:24px;letter-spacing:-.025em;font-weight:600;line-height:32px}.hello p{color:var(--muted);margin:6px 0 18px;font-size:14px;line-height:20px}.hello-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.service{display:flex;gap:12px;align-items:flex-start;color:inherit;padding:16px}.service i{width:40px;height:40px;border-radius:10px;background:var(--sea-soft);color:var(--signal);display:grid;place-items:center;flex:none}.service strong{display:block}.service span{color:var(--muted);font-size:13px;line-height:18px}.news-item{display:grid;gap:2px;padding:10px 0;border-top:1px solid var(--divider);color:inherit}.news-item:hover strong{text-decoration:underline;text-underline-offset:3px}.list-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding-top:10px;border-top:1px solid var(--divider);color:inherit}.portal-main:has(.overview){width:min(1280px,calc(100% - 80px));padding:40px 0 72px}.overview{display:grid;gap:28px}.overview .hello{position:relative;isolation:isolate;overflow:hidden;margin-bottom:0;padding:36px 40px 32px;color:#fff;background:#071018;box-shadow:0 10px 28px #0f172a14}.overview .hello:before{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,#060e1cd6,#060e1c94 30%,#060e1c2e 56%,#060e1c0f),linear-gradient(180deg,rgba(6,14,28,.16),transparent 26%,transparent 70%,rgba(6,14,28,.28)),url(/portal-bg.jpg?v=1) center / cover no-repeat;pointer-events:none}.overview .hello>*{position:relative;z-index:1}.overview .hello p{margin:0;color:#ffffffc7}.overview .hello h2{color:#fff;font-size:28px;line-height:36px}.overview .hello .hello-lead{margin-top:36px;color:#fff;font-size:18px;line-height:28px;font-weight:600;letter-spacing:-.02em}.overview .hello .hello-note{margin-top:6px;color:#ffffffc7;font-size:14px;line-height:22px}.overview .hello .hello-cta{margin-top:18px;align-self:flex-start;box-shadow:0 8px 18px #0f172a38}.overview-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.overview-metrics .stat{padding:22px 24px 20px}.overview-metrics .stat b{margin-top:10px;font-size:18px;font-weight:600;letter-spacing:-.02em;line-height:26px}.overview-metrics .stat em{margin-top:6px}.overview .dash-grid{grid-template-columns:minmax(0,1.35fr) minmax(340px,.85fr);gap:28px}.overview .dash-quad{align-items:stretch}.overview .dash-quad>.card{height:100%;min-width:0;display:flex;flex-direction:column}.overview .dash-quad>.card>.chips,.overview .dash-quad>.card>.download-links{margin-top:auto}.shell.portal .overview .stack{gap:24px}.overview .card.card-pad.stack{gap:20px}.overview .card-pad{padding:28px 30px}.overview .plan-name{font-size:24px;line-height:32px;margin-top:6px}.overview .news-item{padding:16px 0;gap:6px}.overview .secret-box{padding:14px 16px;line-height:20px}.overview .chips{gap:10px}.overview .meter{height:8px}.guide{margin:0;padding-left:18px;display:grid;gap:8px;color:var(--ink-soft);font-size:13px;line-height:20px}.download-links{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.download-links .btn{flex:0 0 auto;width:auto;white-space:nowrap}.modal-root{position:fixed;inset:0;background:var(--scrim);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:grid;place-items:center;padding:24px;z-index:40}.modal{width:min(640px,100%);max-height:min(860px,calc(100vh - 48px));display:flex;flex-direction:column;overflow:hidden;background:var(--modal);border-radius:16px;border:1px solid var(--line);box-shadow:0 24px 64px #00000029}.modal.wide{width:min(880px,100%)}.modal-head,.modal-actions{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:14px 16px;flex:none}.modal-head{border-bottom:1px solid var(--line)}.modal-head h3{font-size:18px;font-weight:600;line-height:28px;letter-spacing:-.025em}.modal-body{padding:16px;font-size:14px;line-height:20px;overflow:auto;min-height:0}.modal-actions{border-top:1px solid var(--line);justify-content:flex-end}.toasts{position:fixed;left:50%;top:18px;bottom:auto;transform:translate(-50%);display:grid;gap:8px;z-index:80;justify-items:center;width:min(480px,calc(100% - 32px));pointer-events:none}.toast{pointer-events:auto;background:var(--signal);color:#fff;border-radius:10px;padding:8px 14px;font-size:14px;line-height:20px;font-weight:400;box-shadow:0 8px 24px #00000029;animation:toast-in .18s ease}.toast.bad{background:var(--bad)}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}.scrim{display:none}@media(max-width:1100px){.portal-nav,.bar-divider{display:none}.icon-btn.menu-btn{display:inline-grid}.portal-drawer{display:flex;position:fixed;z-index:30;width:min(280px,86vw);transform:translate(-105%);transition:transform .18s ease;background:var(--drawer);border-right:1px solid var(--line)}.portal-drawer.open{transform:none;box-shadow:16px 0 40px #00000014}.hello-grid,.stat-grid,.overview-metrics{grid-template-columns:1fr 1fr}}@media(max-width:980px){.shell.admin{grid-template-columns:1fr}.side{position:fixed;z-index:30;width:min(280px,86vw);transform:translate(-105%);transition:transform .18s ease;background:var(--drawer);border-right:1px solid var(--line)}.side.open{transform:none;box-shadow:16px 0 40px #00000014}.nav a.active{background:var(--nav-active-flat);box-shadow:none}.scrim{display:block;position:fixed;inset:0;background:#00000052;z-index:25}.admin-main{padding:0}.admin-panel{min-height:100vh;border:0;border-radius:0;box-shadow:none}.shell.admin:has(.ticket-page) .admin-panel{height:100vh}.content:has(.ticket-page){padding:16px 16px 12px}.admin-top .icon-btn{display:inline-grid}.content,.portal-main{padding:20px 16px 40px;width:auto}.portal-main:has(.overview){width:auto;padding:20px 16px 40px}.portal-foot{width:100%;margin:0;padding:16px}.dash-grid,.two-col,.three-col,.pay-layout,.form-grid,.hello-grid,.stat-grid{grid-template-columns:1fr}.overview{gap:16px}.overview .dash-grid{grid-template-columns:1fr;gap:16px}.shell.portal .overview .stack{gap:16px}.overview .hello,.overview .card-pad,.overview-metrics .stat{padding:20px}.page-head{align-items:flex-start;flex-direction:column}.user-chip b{display:none}.code-row{flex-direction:column;align-items:stretch}.code-btn{width:100%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}@media(max-width:720px){.theme-switch button{width:30px;padding:0}.theme-switch button span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}}html:has(.home),html:has(.auth),body:has(.home),body:has(.auth),#app:has(.home),#app:has(.auth){height:100%;height:100dvh;max-height:100dvh;overflow:hidden;overscroll-behavior:none}body:has(.home),body:has(.auth){background:#07090d}.home,.auth{color-scheme:dark;position:relative;isolation:isolate;height:100dvh;max-height:100dvh;overflow:hidden;color:#fff;background:#07090d}.home,.auth{display:grid;grid-template-rows:72px minmax(0,1fr)}.home-photo,.home-scrim,.auth-photo,.auth-scrim{position:absolute;inset:0;width:100%;height:100%}.home-photo,.auth-photo{object-fit:cover;object-position:70% center;pointer-events:none;-webkit-user-select:none;user-select:none}.home-scrim,.auth-scrim{pointer-events:none;background:linear-gradient(90deg,#05080ee0,#05080e9e 32%,#05080e2e 62%,#05080e47),linear-gradient(180deg,rgba(5,8,14,.42) 0%,transparent 22%,transparent 78%,rgba(5,8,14,.4) 100%)}.auth-scrim{background:linear-gradient(180deg,#05080e47,#05080e1f 38%,#05080e61),linear-gradient(90deg,#05080e2e,#05080e0a,#05080e2e)}.home-wrap{width:min(1180px,calc(100% - 64px));margin:0 auto}.home-nav{position:relative;z-index:3;height:72px}.home-nav-inner{height:72px;display:flex;align-items:center;justify-content:space-between;gap:16px}.home-brand{display:flex;align-items:center;gap:10px;color:#fff}.home-brand svg{width:28px;height:28px}.home-brand svg rect{fill:var(--signal)}.home-brand svg path{fill:#fff}.home-brand strong{font-size:15px;font-weight:700;letter-spacing:-.02em;line-height:1}.home-nav-actions{display:flex;align-items:center;gap:4px}.home-nav .btn.small{min-height:32px;padding:0 12px;border-radius:8px}.home-nav .btn.ghost{color:#ffffffdb}.home-nav .btn.ghost:hover{background:#ffffff1a;color:#fff}.home-nav .btn.primary{background:var(--signal);color:#fff;border-color:var(--signal)}.home-nav .btn.primary:hover{background:#1d4ed8;border-color:#1d4ed8}.home-stage{position:relative;z-index:5;display:flex;flex-direction:column;min-height:0;padding:8px 0 36px;overflow:auto}.home-stage>.home-split{margin:auto;flex:none}.home-hero-copy{max-width:760px}.home-hero-copy h1{font-size:clamp(48px,6.6vw,80px);font-weight:700;letter-spacing:-.055em;line-height:1}.home-hero-copy p{margin-top:18px;max-width:none;font-size:16px;line-height:1.7;letter-spacing:-.018em;color:#ffffffc2}.home-lead{display:grid;gap:4px}.home-lead span{display:block;white-space:nowrap}.home-hero-actions{margin-top:28px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.home-cta{min-height:46px;padding:0 20px;font-size:15px;font-weight:500;border-radius:10px}.home .btn.primary.home-cta{background:var(--signal);color:#fff;border-color:var(--signal);box-shadow:none}.home .btn.primary.home-cta:hover{background:#1d4ed8;border-color:#1d4ed8}.home-cta.primary svg{transition:transform .15s ease}.home-cta.primary:hover svg{transform:translate(2px)}.btn.home-cta.muted{background:#ffffff1a;border-color:#ffffff29;color:#fff;box-shadow:none}.btn.home-cta.muted:hover{background:#ffffff2e;color:#fff}.home-chips{margin-top:20px;display:flex;flex-wrap:wrap;gap:8px}.home-chips span{min-height:30px;padding:0 12px;border:1px solid rgba(255,255,255,.16);border-radius:999px;font-size:13px;line-height:30px;color:#ffffffdb;background:#ffffff14;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.home-chips span:nth-child(5n+1){border-color:#60a5fa8c;color:#dbeafe}.home-chips span:nth-child(5n+2){border-color:#2dd4bf8c;color:#ccfbf1}.home-chips span:nth-child(5n+3){border-color:#a78bfa8c;color:#ede9fe}.home-chips span:nth-child(5n+4){border-color:#fbbf2480;color:#fef3c7}.home-chips span:nth-child(5n+5){border-color:#f472b673;color:#fce7f3}.home-stat:nth-child(1) b{color:#93c5fd}.home-stat:nth-child(2) b{color:#6ee7b7}.home-stat:nth-child(3) b{color:#c4b5fd}.home-stat:nth-child(4) b{color:#fcd34d}.home-stats{margin-top:36px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;max-width:520px;padding-top:22px;border-top:1px solid rgba(255,255,255,.12)}.home-stat{text-align:left}.home-stat b{display:block;font-size:22px;font-weight:700;letter-spacing:-.05em;line-height:1.1}.home-stat span{display:block;margin-top:4px;font-size:12px;color:#ffffffad}.home-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,400px);gap:72px;align-items:center}.home-split .home-hero-copy{max-width:none}.home-split .home-hero-copy h1{font-size:clamp(48px,4.6vw,68px)}.home-split .home-lead span{white-space:normal}.home-split .home-chips{margin-top:22px}.home-split .home-stats{margin-top:28px;max-width:none}.home .auth-card.home-auth{width:100%;margin:0;align-self:center;background:#080c169e;box-shadow:0 24px 70px #00000057,inset 0 1px #ffffff1f}.auth-tabs{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:18px;padding:4px;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:#ffffff0f}.auth-tabs button,.auth-tabs a{display:inline-flex;align-items:center;justify-content:center;height:36px;border:0;border-radius:9px;background:transparent;color:#ffffffad;font-size:14px;font-weight:500;line-height:20px;text-decoration:none}.auth-tabs a:hover{color:#fff}.auth-tabs button[aria-current=page],.auth-tabs button[aria-selected=true]{background:#ffffff24;color:#fff;box-shadow:inset 0 0 0 1px #ffffff14}.auth-card-sub{margin:0 0 2px;text-align:center;color:#ffffffad;font-size:14px;line-height:20px}.auth-legal,.auth-agree{color:#ffffffc7;font-size:13px;line-height:1.55}.auth-legal{margin:12px 0 0}.auth-legal a,.auth-agree a{color:#fff;text-decoration:underline}.auth-agree{display:flex;gap:8px;align-items:flex-start}.auth-card .auth-agree input,.auth-panel .auth-agree input{width:16px;height:16px;min-height:16px;margin-top:2px;padding:0;flex:none;background:transparent;border-radius:3px}.auth-submit{display:grid;gap:8px}.home-legal{color:#ffffffc7;font-size:14px}.home-legal:hover{color:#fff}.terms-page{min-height:100vh;background:var(--paper);color:var(--ink)}.terms-bar{height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 24px;background:#fff;border-bottom:1px solid var(--line)}.terms-doc{width:min(760px,calc(100% - 32px));margin:24px auto 48px;background:#fff;border:1px solid var(--line);border-radius:6px;padding:28px 32px 36px}.terms-doc h1{font-size:24px;line-height:32px}.terms-lead,.terms-doc p{color:var(--ink-soft);line-height:1.7;margin-top:8px}.terms-doc h2{margin-top:22px;font-size:16px;line-height:24px}.portal-foot a{color:var(--muted)}.portal-foot a:hover{color:var(--ink)}.auth-submit .auth-card-sub{margin:4px 0 0}.home-auth .auth-form,.home-auth .auth-links,.home-auth .notice,.home-signed>*{position:relative;z-index:1}.home-signed{align-self:stretch;display:flex;flex-direction:column;justify-content:space-between;gap:28px;min-height:394px;text-align:left}.home-signed-copy{display:grid;gap:10px}.home-signed .eyebrow{color:#ffffff9e}.home-signed h2{margin:0;font-size:28px;font-weight:700;letter-spacing:-.04em;line-height:1.15;text-align:left}.home-signed p{margin:0;color:#ffffffb8;font-size:14px;line-height:22px}.home-nav .btn.is-on{box-shadow:inset 0 0 0 1px #ffffff2e}@media(max-width:980px){.home-split{grid-template-columns:1fr;gap:28px;align-items:start}.home-split .home-hero-copy{max-width:none}.home-split .home-hero-copy h1{font-size:42px}.home .auth-card.home-auth{width:min(440px,100%);margin-inline:auto}.home-signed{min-height:0;justify-content:flex-start;gap:18px}}@media(max-width:860px){.home-wrap{width:min(1120px,calc(100% - 28px))}.home-hero-copy{max-width:none}.home-lead span{white-space:normal}.home-hero-copy h1{font-size:42px}.home-stats{grid-template-columns:1fr 1fr}.home-photo,.auth-photo{object-position:82% center}}@media(max-height:760px){.home-nav,.home-nav-inner{height:60px}.home,.auth{grid-template-rows:60px minmax(0,1fr)}.home-stage{padding-bottom:24px}.home-hero-copy h1{font-size:clamp(36px,6vw,56px)}.home-hero-copy p{margin-top:12px}.home-hero-actions,.home-chips{margin-top:16px}.home-stats{margin-top:22px;padding-top:16px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.theme-toggle{display:inline-grid;place-items:center;width:34px;height:34px;padding:0;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--card) 78%,transparent);box-shadow:var(--shadow);color:var(--icon);flex:none;transition:background .15s ease,border-color .15s ease,color .15s ease}.theme-toggle:hover{border-color:var(--input-hover);background:var(--hover);color:var(--ink)}.theme-toggle:focus-visible{outline:none;box-shadow:0 0 0 3px var(--focus-ring)}.theme-toggle .ico{display:grid;place-items:center;color:inherit}.theme-toggle.light{color:var(--warn)}.theme-toggle.dark{color:var(--icon)}.ui-select{position:relative;width:100%;min-width:0}.ui-select-btn{display:grid;grid-template-columns:minmax(0,1fr) 20px;align-items:center;width:100%;height:36px;min-height:36px;padding:0 10px 0 12px;border:0;border-radius:8px;background:var(--input-bg);color:var(--ink);text-align:left;box-shadow:inset 0 0 0 1px var(--input-border),0 1px 2px #0f172a0a;cursor:default}.ui-select-btn:hover{box-shadow:inset 0 0 0 1px var(--input-hover),0 1px 2px #0f172a0a}.ui-select.open .ui-select-btn,.ui-select-btn:focus-visible{outline:none;box-shadow:inset 0 0 0 1px var(--signal),0 0 0 3px var(--focus-ring)}.ui-select-value{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:20px}.ui-select-value.blank{color:var(--muted)}.ui-select-chevron{width:20px;height:20px;color:var(--muted);justify-self:end}.ui-select.open .ui-select-chevron{transform:rotate(180deg)}.ui-select.disabled .ui-select-btn{background:var(--input-disabled);color:var(--muted);cursor:not-allowed;box-shadow:inset 0 0 0 1px var(--input-border)}.ui-select-menu{max-height:240px;margin:0;padding:4px;overflow:auto;list-style:none;border-radius:8px;background:var(--card);color:var(--ink);box-shadow:0 10px 24px #0f172a24,0 0 0 1px var(--line)}.ui-select-menu li{display:grid;grid-template-columns:minmax(0,1fr) 16px;align-items:center;gap:8px;min-height:32px;padding:6px 8px 6px 10px;border-radius:6px;font-size:14px;line-height:20px;cursor:default;-webkit-user-select:none;user-select:none}.ui-select-menu li span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ui-select-menu li svg{width:16px;height:16px;color:var(--signal)}.ui-select-menu li.active{background:var(--signal);color:#fff}.ui-select-menu li.active svg{color:#fff}.ui-select-menu li.disabled{color:var(--muted);pointer-events:none}.home-legal-bar{position:absolute;z-index:4;left:0;right:0;bottom:18px;display:flex;justify-content:center;pointer-events:none}.home-legal-bar .home-legal{pointer-events:auto}.auth-form .auth-legal{margin-top:14px;text-align:center}.monitor-board{display:grid;gap:14px}.monitor-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px}.monitor-toolbar p{margin:0;color:var(--muted);font-size:13px}.monitor-tools{display:flex;align-items:center;gap:8px}.range-switch{display:flex;height:32px;box-sizing:border-box;background:var(--card, #fff);border:1px solid var(--line);border-radius:8px;overflow:hidden}.range-switch button{border:0;background:transparent;color:var(--ink);width:56px;height:100%;padding:0;font-size:13px;line-height:30px;cursor:pointer}.range-switch button[aria-pressed=true]{background:var(--signal);color:#fff}.monitor-refresh{box-sizing:border-box;width:56px;height:32px;border:1px solid var(--signal);background:var(--signal);color:#fff;border-radius:8px;padding:0;font-size:13px;line-height:30px;cursor:pointer}.monitor-refresh:disabled{opacity:.6;cursor:default}.monitor-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.monitor-card{background:var(--card, #fff);border:1px solid var(--line);border-radius:10px;padding:16px 16px 12px;min-width:0}.monitor-card h3{margin:0 0 4px;font-size:15px;font-weight:650}.monitor-plot{position:relative}.monitor-plot svg{width:100%;height:210px;display:block}.monitor-plot line{stroke:var(--line);stroke-width:1}.monitor-plot text{fill:var(--muted);font-size:11px;text-anchor:end}.monitor-plot .axis-x{text-anchor:middle}.monitor-plot path{fill:none;stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round}.monitor-plot .cursor{stroke:#94a3b8;stroke-dasharray:3 3}.monitor-legend{display:flex;justify-content:flex-end;gap:14px;font-size:12px;color:var(--muted)}.monitor-legend span,.monitor-tip span{display:inline-flex;align-items:center;gap:6px}.monitor-legend i,.monitor-tip i{width:8px;height:8px;border-radius:50%;display:inline-block}.monitor-tip{position:absolute;z-index:2;transform:translate(12px,-12px);background:var(--card, #fff);border:1px solid var(--line);border-radius:8px;padding:8px 10px;display:grid;gap:4px;font-size:12px;pointer-events:none;box-shadow:0 8px 24px #0f172a14}.monitor-tip strong{font-size:12px}.monitor-empty{position:absolute;inset:36px 0 28px;display:grid;place-items:center;margin:0;color:var(--muted)}@media(max-width:800px){.monitor-toolbar{align-items:flex-start;flex-direction:column}.monitor-grid{grid-template-columns:1fr}}
