:root{--auth-measure: 352px;--auth-card-pad: var(--space-xl)}main.auth-root{padding:0}.auth{display:grid;grid-template-columns:minmax(360px,34%) minmax(0,1fr);min-height:100dvh;background:var(--bg)}.auth-side{display:flex;flex-direction:column;padding:var(--space-2xl);color:var(--rail-fg);background-color:var(--rail-bg);border-right:1px solid var(--rail-line)}.auth-side>*{max-width:380px}.auth-brand{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--w-bold);letter-spacing:.06em;color:var(--rail-fg-strong)}.auth-claim{margin:var(--space-sm) 0 0;font-size:var(--text-md);line-height:var(--lh-base);color:var(--rail-fg)}.auth-points{margin:var(--space-2xl) 0 0;padding:0;list-style:none;display:grid;gap:var(--space-md)}.auth-points li{position:relative;padding-left:var(--space-lg);font-size:var(--text-base);line-height:var(--lh-loose);color:var(--rail-fg-dim)}.auth-points li:before{content:"";position:absolute;left:0;top:.55em;width:8px;height:8px;border-radius:50%;background:var(--rail-fg-dim)}.auth-foot{margin:auto 0 0;padding-top:var(--space-xl);font-size:var(--text-sm);line-height:var(--lh-loose);color:var(--rail-fg-dim);border-top:1px solid var(--rail-line)}.auth-main{display:flex;align-items:flex-start;justify-content:center;padding:clamp(40px,8vh,88px) var(--space-lg) var(--space-2xl)}.auth-card{width:100%;max-width:calc(var(--auth-measure) + 2 * var(--auth-card-pad));padding:var(--auth-card-pad);background:var(--surface);border:1px solid var(--line);border-radius:var(--r)}.auth-title{margin:0 0 var(--space-md);font-size:var(--text-xl);font-weight:var(--w-bold);line-height:var(--lh-tight);color:var(--fg)}.auth-steps{margin:0 0 var(--space-lg)}.auth-steps ol{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:var(--space-xs);margin:0;padding:0;list-style:none}.auth-steps li{display:flex;align-items:baseline;gap:var(--space-2xs);padding-top:var(--space-xs);font-size:var(--text-sm);line-height:var(--lh-tight);color:var(--dim);border-top:2px solid var(--line)}.auth-steps li .n{font-variant-numeric:tabular-nums}.auth-steps li.done{color:var(--fg-2);border-top-color:var(--accent)}.auth-steps li.on{font-weight:var(--w-bold);color:var(--accent);border-top-color:var(--accent)}.auth-steps-next{margin:var(--space-xs) 0 0;font-size:var(--text-sm);line-height:var(--lh-loose);color:var(--fg-2)}.auth-card label{display:block;margin-bottom:var(--space-md)}.auth-card input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]){font-variant-numeric:tabular-nums}.auth-card button[type=submit]{width:100%;margin-top:var(--space-xs)}.auth-card small.err{margin-top:var(--space-2xs);line-height:var(--lh-base)}.auth-card input[aria-invalid=true]{border-color:var(--err)}.auth-card input[aria-invalid=true]:focus{border-color:var(--err);outline-color:var(--err-weak)}.auth-err{overflow-wrap:anywhere}.auth-captcha{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:var(--space-xs);align-items:center}.auth-captcha img{display:block;height:var(--control-h);border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);cursor:pointer}.auth-captcha button{padding:0 var(--space-xs);font-size:var(--text-sm);color:var(--accent);background:none;border:0;cursor:pointer;white-space:nowrap}.auth-captcha button:hover{text-decoration:underline}.auth .code-field button.secondary{height:var(--control-h);padding:0 var(--control-pad-x);font:inherit;font-size:var(--text-sm);color:var(--btn-secondary-fg);background:var(--btn-secondary-bg);border:1px solid var(--btn-secondary-border);border-radius:var(--r-sm);cursor:pointer}.auth .code-field button.secondary:disabled{color:var(--btn-disabled-fg);background:var(--btn-disabled-bg);border-color:var(--line);cursor:not-allowed}.auth-card .seg{margin-bottom:var(--space-md)}@media(max-width:900px){.auth{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr)}.auth-side{padding:var(--space-lg) var(--space-md);border-right:0;border-bottom:1px solid var(--rail-line)}.auth-side>*{max-width:none}.auth-card{padding:var(--space-lg) var(--space-md)}.auth-points,.auth-foot{display:none}.auth-main{padding:var(--space-xl) var(--space-md) var(--space-2xl)}}.auth-reveal{display:grid;gap:var(--density-gap);animation:auth-reveal .22s ease-out}@keyframes auth-reveal{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.auth-reveal{animation:none}}.auth input:disabled{opacity:1;background:var(--sunk);color:var(--fg-2);cursor:default}.nv{font-variant-numeric:tabular-nums}.nv-empty{color:var(--novalue-empty-fg)}.nv-unknown{padding:0 var(--space-2xs);font-style:italic;color:var(--novalue-unknown-fg);background:var(--novalue-unknown-bg);border-radius:var(--r-sm)}.nv-na{color:var(--novalue-na-fg)}.badge[data-testid=online-badge]{display:inline-flex;gap:var(--space-2xs);align-items:center;padding:0;color:var(--fg-2);background:none;border:0;border-radius:0}.badge[data-testid=online-badge]:before{flex:none;width:var(--space-xs);height:var(--space-xs);content:"";background:var(--off);border-radius:var(--r-pill)}.badge.on[data-testid=online-badge],.badge.off[data-testid=online-badge],.badge.stale[data-testid=online-badge]{background:none;border-color:transparent}.badge.on[data-testid=online-badge],.badge.off[data-testid=online-badge]{color:var(--fg-2)}.badge.on[data-testid=online-badge]:before{background:var(--ok)}.badge.off[data-testid=online-badge]:before{background:var(--off)}.badge.stale[data-testid=online-badge]{color:var(--warn)}.badge.stale[data-testid=online-badge]:before{background:var(--surface);box-shadow:inset 0 0 0 2px var(--warn)}body .grid:has(>.tile){background:var(--surface)}body .grid:has(>.tile)>.tile{box-shadow:0 0 0 1px var(--line)}.grid:has(>.tile)>.tile .meter{height:3px;margin-top:var(--space-xs);background:var(--line);border-radius:0}.grid:has(>.tile)>.tile .meter>span{border-radius:0}.exits{background:var(--surface);border:1px solid var(--line);border-radius:var(--r)}.exits>li+li{border-top:1px solid var(--line)}.exits .exit{padding:var(--space-xs) var(--space-sm);border-radius:0}.exits .exit:hover{background:var(--surface-2)}.exits .exit.on{background:var(--accent-weak);box-shadow:inset 3px 0 0 var(--accent)}.exits .exit.off{opacity:1;color:var(--dim);background:var(--sunk)}.isp{margin-top:var(--space-lg)}.isp>h2{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap}.isp-range{display:inline-flex;border:1px solid var(--line);border-radius:var(--r-sm);overflow:hidden;font-size:var(--text-sm);font-weight:400}.isp-range>button{border:0;background:var(--surface);color:var(--dim);padding:var(--space-2xs) var(--space-sm);cursor:pointer}.isp-range>button+button{border-left:1px solid var(--line)}.isp-range>button.on{background:var(--accent-weak);color:var(--accent);font-weight:var(--w-bold)}.isp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-sm);margin-top:var(--space-xs)}.isp-card{margin:0;padding:var(--space-sm);border:1px solid var(--line);border-radius:var(--r);background:var(--surface)}.isp-card>figcaption{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-xs)}.isp-t{font-size:var(--text-sm);color:var(--dim)}.isp-v{font-family:var(--mono);font-size:var(--text-md);color:var(--fg);font-variant-numeric:tabular-nums}.isp-v>i{font-style:normal;font-size:var(--text-xs);color:var(--dim);margin-left:.2em}.isp-svg{display:block;width:100%;height:64px;margin-top:var(--space-2xs);overflow:visible}.isp-base{stroke:var(--line);stroke-width:1}.isp-line{fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.isp-cross{stroke:var(--dim);stroke-width:1;stroke-dasharray:2 2}.isp-legend{display:flex;gap:var(--space-sm);font-size:var(--text-xs);color:var(--dim);margin-top:var(--space-3xs)}.isp-legend i{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:.3em}.isp-when{font-family:var(--mono);font-size:var(--text-2xs);color:var(--dim);text-align:right;min-height:1.1em}:root{--dd-readout: var(--readout);--dd-readout-narrow: var(--readout-sm)}.dd h2:not(.card-h){display:flex;gap:var(--space-sm);align-items:center;margin:var(--space-xl) 0 var(--space-sm);font-size:var(--text-xs);font-weight:600;letter-spacing:.08em;color:var(--dim)}.dd h2:not(.card-h):after{flex:1 1 auto;height:1px;content:"";background:var(--line)}.dd-back{margin:0 0 var(--space-sm);font-size:var(--text-sm)}.dd-back a{color:var(--dim);text-decoration:none}.dd-back a:hover{color:var(--accent)}.dd-plate{display:flex;flex-wrap:wrap;gap:var(--space-sm);align-items:center;padding-bottom:var(--space-md);border-bottom:1px solid var(--line-strong)}.dd-dot{flex:0 0 auto;width:10px;height:10px;margin:0 var(--space-2xs);background:var(--off);border-radius:50%;box-shadow:0 0 0 4px var(--off-weak)}.dd-dot[data-state=on]{background:var(--ok);box-shadow:0 0 0 4px var(--ok-weak)}.dd-dot[data-state=off]{background:var(--err);box-shadow:0 0 0 4px var(--err-weak)}.dd-dot[data-state=stale]{background:var(--warn);box-shadow:0 0 0 4px var(--warn-weak)}.dd-ident{flex:1 1 240px;min-width:0}.dd-ident h1{margin:0;font-size:var(--text-xl);line-height:1.2;overflow-wrap:anywhere}.dd-tags{display:flex;flex-wrap:wrap;gap:var(--space-3xs) var(--space-sm);margin:var(--space-3xs) 0 0;font-size:var(--text-sm);color:var(--fg-2)}.dd-tags>span+span{padding-left:var(--space-sm);border-left:1px solid var(--line)}.dd-tags .mono{font-size:var(--text-sm);overflow-wrap:anywhere}.dd-status{display:flex;flex-wrap:wrap;gap:var(--space-3xs) var(--space-xs);align-items:center;min-width:0;margin-left:auto;font-size:var(--text-sm)}.dd-status-k{font-size:var(--text-xs);letter-spacing:.06em;color:var(--dim)}.dd-status [data-testid=stale-note]{overflow-wrap:anywhere}.dd-live>h2:first-child{margin-top:var(--space-lg)}.dd-band{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:0 0 var(--space-md);overflow:hidden;background:var(--line);border:1px solid var(--line-strong);border-radius:var(--r)}.dd-read{display:flex;flex-direction:column;min-width:0;padding:var(--space-md);background:var(--surface)}.dd-read .v{font-family:var(--font-display);font-size:var(--dd-readout);font-weight:var(--w-medium);font-variant-numeric:tabular-nums;line-height:var(--lh-tight);color:var(--fg);letter-spacing:var(--readout-tracking);overflow-wrap:anywhere}.dd-read .v.sm{font-size:var(--text-lg);line-height:1.35;letter-spacing:-.01em}.dd-read .k{margin-top:auto;padding-top:var(--space-xs);font-size:var(--text-xs);letter-spacing:.06em;color:var(--dim)}.dd-cards{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.dd-cards>.card{flex:2 1 320px;min-width:0}.dd-cards>.card[data-testid=live-temps]{flex:1 1 220px}.dd .card-h{margin-bottom:var(--space-sm);font-size:var(--text-sm);letter-spacing:.04em;color:var(--fg-2)}.dd .card table.kv th,.dd .card table.kv td{padding:var(--space-2xs) 0;vertical-align:baseline;border-bottom:1px solid var(--line)}.dd .card table.kv th{width:auto;font-size:var(--text-sm);font-weight:400;color:var(--dim)}.dd .card table.kv td{font-variant-numeric:tabular-nums;text-align:right}.dd .card table.kv tr:last-child th,.dd .card table.kv tr:last-child td{border-bottom:0}.dd .card table.kv tbody tr:hover td{background:none}.dd-probes{display:flex;flex-wrap:wrap;gap:var(--space-sm) var(--space-lg)}.dd-probe{min-width:0}.dd-probe .pv{display:block;font-family:var(--font-display);font-size:var(--readout-sm);font-weight:var(--w-medium);font-variant-numeric:tabular-nums;line-height:var(--lh-tight);letter-spacing:var(--readout-tracking)}.dd-probe .pk{display:block;margin-top:var(--space-3xs);font-size:var(--text-xs);color:var(--dim)}.dd-note{margin:var(--space-sm) 0 0}.dd .card[data-testid=device-actions]{margin-top:var(--space-lg)}.dd-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:var(--space-xl) 0 0;overflow:hidden;background:var(--line);border:1px solid var(--line);border-radius:var(--r)}.dd-facts>div{min-width:0;padding:var(--space-sm) var(--space-md);background:var(--surface-2)}.dd-facts dt{font-size:var(--text-xs);letter-spacing:.04em;color:var(--dim)}.dd-facts dd{margin:var(--space-3xs) 0 0;font-size:var(--text-base);font-variant-numeric:tabular-nums;color:var(--fg);overflow-wrap:anywhere}.dd .switcher{margin-top:var(--space-xl);padding-top:0;border-top:0}@media(max-width:1080px){.dd-facts{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:720px){.dd-band{grid-template-columns:repeat(2,minmax(0,1fr))}.dd-read{padding:var(--space-sm) var(--space-md)}.dd-read .v{font-size:var(--dd-readout-narrow)}.dd-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.dd-status{margin-left:0}}@media(max-width:480px){.dd-facts{grid-template-columns:minmax(0,1fr)}}.dd-audit{margin-top:var(--space-xl)}.dd-audit ul{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-3xs)}.dd-audit li{display:grid;grid-template-columns:max-content max-content minmax(0,1fr) max-content;gap:var(--space-sm);align-items:baseline;padding:var(--space-xs) var(--space-sm);border-radius:var(--r-sm)}.dd-audit li:nth-child(odd){background:var(--sunk)}.dd-audit-when{font-size:var(--text-sm);color:var(--dim)}.dd-audit-who{font-size:var(--text-sm);padding:var(--space-3xs) var(--space-xs);border-radius:var(--r-pill);border:1px solid currentColor;white-space:nowrap}.who-me,.who-system{color:var(--dim)}.who-staff{color:var(--accent);font-weight:var(--w-bold)}.dd-audit-bad{font-size:var(--text-sm);color:var(--err)}@media(max-width:640px){.dd-audit li{grid-template-columns:minmax(0,1fr);gap:var(--space-3xs)}}.sec{max-width:720px}.sec-card{display:grid;gap:var(--density-gap);padding:var(--density-pad);background:var(--surface);border:1px solid var(--line);border-radius:var(--r)}.sec-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-md)}.sec-card h2{margin:0 0 var(--space-2xs);font-size:var(--text-md)}.sec-card .hint{margin:0}.sec-badge{flex:none;display:inline-flex;align-items:center;gap:var(--space-2xs);font-size:var(--text-sm);color:var(--fg-2);white-space:nowrap}.sec-badge:before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:var(--off)}.sec-badge.on{font-weight:var(--w-medium)}.sec-badge.on:before{background:var(--ok)}.sec-badge.off{color:var(--dim)}.sec-kv{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:var(--space-xs) var(--space-md);margin:0}.sec-kv dt{color:var(--fg-2);font-size:var(--text-sm)}.sec-kv dd{margin:0;color:var(--fg)}.sec .stack{display:grid;gap:12px}.sec .stack label{display:grid;gap:4px}.sec .row{display:flex;gap:8px;flex-wrap:wrap}.sec-codes{border:2px solid var(--accent);border-radius:10px;padding:18px;background:var(--sunk);display:grid;gap:14px}.sec-codes h3{margin:0;font-size:16px}.sec-codes .warn{margin:0;color:var(--warn)}.sec-code-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-xs) var(--space-lg);margin:0;padding:var(--space-md) var(--space-md) var(--space-md) calc(var(--space-md) + 24px);background:var(--sunk);border:1px solid var(--line);border-radius:var(--r-sm)}.sec-code-list li{letter-spacing:.08em;font-size:var(--text-md)}.sec-ack{display:flex;align-items:center;gap:var(--space-xs);margin:0}.sec .btn-primary{width:auto;justify-self:start;height:var(--control-h);padding:0 var(--control-pad-x)}@media(max-width:640px){.sec-code-list{grid-template-columns:minmax(0,1fr)}.sec-card>header{flex-direction:column}}.sec-alert{padding:var(--space-sm) var(--space-md);margin:0;font-size:var(--text-base);line-height:var(--lh-loose);color:var(--fg);background:var(--warn-weak);border-left:var(--notice-edge-w) solid var(--warn);border-radius:var(--r-sm)}.sec-form{display:grid;gap:var(--density-gap);margin:0}.sec-row{display:flex;gap:var(--control-gap);align-items:center;flex-wrap:wrap}.sec .sec-row button{width:auto;height:var(--control-h);padding:0 var(--control-pad-x)}.sec-row button.secondary{font:inherit;font-size:var(--text-base);color:var(--btn-secondary-fg);background:var(--btn-secondary-bg);border:1px solid var(--btn-secondary-border);border-radius:var(--r-sm);cursor:pointer}.plans-page{--pm-pad-x: var(--space-md);--pm-pad-y: var(--space-sm)}.plans-page .pm-top{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--space-2xs) var(--space-md);margin-bottom:var(--space-sm)}.plans-page .pm-top h1{margin:0}.plans-page .pm-mac{min-width:0;margin-bottom:0}.plans-page .pm-mac select{max-width:min(100%,20rem);font-size:var(--text-base)}.plans-page .pm-note{max-width:64ch;margin:0 0 var(--space-md);padding-left:var(--space-sm);border-left:2px solid var(--line-strong)}.plans-page .pm{display:grid;gap:1px;clip-path:inset(0 round var(--r));background:var(--line);border:1px solid var(--line);border-radius:var(--r)}.plans-page .pm-row{display:grid;grid-template-columns:var(--pm-cols);gap:1px;background:var(--line)}.plans-page .pm-head .pm-id,.plans-page .pm-th{background:var(--surface-2)}.plans-page .pm-head .pm-id{padding:var(--space-2xs) var(--pm-pad-x)}.plans-page .pm-th{min-width:0;padding:var(--space-2xs) var(--pm-pad-x);font-family:var(--font-display);font-size:var(--text-xs);font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.04em;color:var(--fg-2)}.plans-page .pm-id{display:flex;flex-direction:column;gap:var(--space-2xs);min-width:0;padding:var(--pm-pad-y) var(--pm-pad-x);overflow-wrap:anywhere;background:var(--surface)}.plans-page .pm-id-top{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-2xs)}.plans-page .pm-name{font-size:var(--text-md);font-weight:600}.plans-page .pm-name-en{font-family:var(--font-display);font-size:var(--text-xs);letter-spacing:.02em}.plans-page .pm-flags{display:flex;flex-wrap:wrap;gap:var(--space-2xs)}.plans-page .pm-flags:empty{display:none}.plans-page .pm-from{font-size:var(--text-sm);color:var(--fg-2)}.plans-page .pm-from-v{font-family:var(--font-display);font-size:var(--text-md);font-weight:600;font-variant-numeric:tabular-nums;color:var(--fg)}.plans-page .pm-meta{margin:0;font-size:var(--text-xs);line-height:1.5;color:var(--dim)}.plans-page .pm-owned-tag{padding:1px 6px;font-size:var(--text-xs);font-variant-numeric:tabular-nums;color:var(--ok);white-space:nowrap;background:var(--ok-weak);border:1px solid var(--ok);border-radius:var(--r-pill)}.plans-page .pm-row.owned .pm-id{box-shadow:inset 3px 0 0 var(--ok)}.plans-page .pm-row.closed .pm-id{background:var(--surface-2);box-shadow:inset 3px 0 0 var(--warn)}.plans-page .pm-row.closed .pm-name,.plans-page .pm-row.closed .pm-from-v{color:var(--fg-2)}.plans-page .pm-closed{display:flex;grid-column:2 / -1;align-items:center;min-width:0;margin:0;padding:var(--pm-pad-y) var(--pm-pad-x);font-size:var(--text-sm);color:var(--fg-2);background:repeating-linear-gradient(135deg,var(--surface-2) 0 8px,var(--bg) 8px 16px)}.plans-page .pm-terms{display:grid;grid-column:2 / -1;grid-template-columns:var(--pm-term-cols);gap:1px;min-width:0;margin:0;padding:0;list-style:none;background:var(--line)}.plans-page .pm-terms>li{display:flex;min-width:0;background:var(--surface)}.plans-page .pm-terms>li.pm-void{background:var(--surface-2)}.plans-page .pm-cell{display:grid;flex:1;grid-template-areas:"cb    save" "price price" "unit  unit";grid-template-columns:auto minmax(0,1fr);gap:var(--space-3xs) var(--space-2xs);align-items:center;min-width:0;margin:0;position:relative;padding:var(--pm-pad-y) var(--pm-pad-x);font-size:var(--text-base);color:var(--fg);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out)}.plans-page .pm-cell:hover{background:var(--surface-2)}.plans-page .pm-cell.on{background:var(--accent-weak);box-shadow:inset 0 0 0 1px var(--accent)}.plans-page .pm-cell>input{grid-area:cb;width:var(--space-md);height:var(--space-md);margin:0;accent-color:var(--accent);cursor:pointer}.plans-page .pm-save{display:inline-flex;grid-area:save;align-items:center;justify-self:end;height:var(--space-md);padding:0 var(--space-2xs);font-size:var(--text-2xs);font-variant-numeric:tabular-nums;color:var(--ok);white-space:nowrap;border:1px solid var(--ok);border-radius:var(--r-pill)}.plans-page .pm-term-label{position:absolute;width:1px;height:1px;overflow:hidden;white-space:nowrap;clip-path:inset(50%)}.plans-page .pm-price{grid-area:price;font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--w-bold);font-variant-numeric:tabular-nums;line-height:var(--lh-tight);letter-spacing:var(--readout-tracking)}.plans-page .pm-unit{grid-area:unit;font-size:var(--text-xs);font-variant-numeric:tabular-nums;color:var(--dim);white-space:nowrap}.plans-page .pm-cell.on .pm-unit{color:var(--fg-2)}.plans-page .pm-cart{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,20rem);gap:var(--space-lg);margin-top:var(--space-lg);padding:var(--space-md);background:var(--surface);border:1px solid var(--accent);border-radius:var(--r)}.plans-page .pm-cart-lines{min-width:0;overflow-x:auto}.plans-page .pm-cart h2{margin:0 0 var(--space-xs);font-size:var(--text-md)}.plans-page .pm-cart td{padding:var(--space-2xs) var(--space-sm);vertical-align:middle}.plans-page .pm-cart td:first-child{padding-left:0}.plans-page .pm-cart td:last-child{padding-right:0}.plans-page .pm-cart tbody tr:hover td{background:none}.plans-page .pm-cart tr.total td{padding-top:var(--space-xs);border-top:1px solid var(--line-strong)}.plans-page .pm-cart tr.total td:last-child{font-family:var(--font-display);font-size:var(--readout-sm);font-weight:var(--w-bold);font-variant-numeric:tabular-nums;line-height:var(--lh-tight);letter-spacing:var(--readout-tracking);color:var(--fg)}.plans-page .pm-cart-act{display:flex;flex-direction:column;justify-content:flex-end;gap:var(--space-xs);min-width:0}.plans-page .pm-cart-act button{width:100%;padding:var(--space-xs) var(--space-sm);font:inherit;font-size:var(--text-base);font-weight:var(--w-bold);color:var(--btn-primary-fg);background:var(--btn-primary-bg);border:0;border-radius:var(--r-sm);cursor:pointer}.plans-page .pm-cart-act button:hover:not(:disabled){background:var(--btn-primary-bg-hover)}.plans-page .pm-cart-act button:active:not(:disabled){transform:translateY(1px)}.plans-page .pm-cart-act button:disabled{color:var(--btn-disabled-fg);background:var(--btn-disabled-bg);cursor:not-allowed}.plans-page .pm-cart-act .hint,.plans-page .pm-cart-act .err{margin:0}.plans-page .pm-cart-act .err{font-size:var(--text-sm)}.plans-page .pm-order{margin-top:var(--space-md);line-height:1.6}@media(max-width:1120px){.plans-page{--pm-pad-x: var(--space-xs)}.plans-page .pm-price{font-size:var(--text-md)}.plans-page .pm-from-v{font-size:var(--text-base)}}@media(max-width:700px){.plans-page .pm-head{display:none}.plans-page .pm-row{grid-template-columns:minmax(0,1fr)}.plans-page .pm-terms,.plans-page .pm-closed{grid-column:1 / -1}.plans-page .pm-terms{grid-template-columns:repeat(2,minmax(0,1fr))}.plans-page .pm-cell{grid-template-areas:"cb    save" "term  term" "price price" "unit  unit"}.plans-page .pm-term-label{position:static;grid-area:term;width:auto;height:auto;overflow:visible;font-size:var(--text-xs);font-weight:600;color:var(--fg-2);clip-path:none}.plans-page .pm-cart{grid-template-columns:minmax(0,1fr);gap:var(--space-md)}}@media(max-width:460px){.plans-page .pm-terms{grid-template-columns:minmax(0,1fr)}.plans-page .pm-cell{grid-template-areas:"cb term price" "cb unit  save";grid-template-columns:auto minmax(0,1fr) auto;column-gap:var(--space-xs)}.plans-page .pm-price,.plans-page .pm-save{justify-self:end}.plans-page .pm-cart-act{justify-content:flex-start}}.danger-zone{padding:var(--space-sm) var(--space-md);margin-bottom:var(--space-sm);background:var(--surface);border:1px solid var(--err);border-left-width:var(--notice-edge-w);border-radius:var(--r-sm)}.danger-zone>.dz-title{display:block;margin-bottom:var(--space-xs);font-size:var(--text-xs);font-weight:var(--w-bold);line-height:var(--lh-tight);color:var(--err);text-transform:none}.confirm-target{padding:var(--space-xs) var(--space-sm);margin:0 0 var(--space-sm);background:var(--sunk);border-radius:var(--r-sm)}.confirm-target>div{display:flex;gap:var(--space-xs);align-items:baseline}.confirm-target>div+div{margin-top:var(--space-2xs)}.confirm-target dt{flex:0 0 auto;min-width:5.5em;font-size:var(--text-sm);color:var(--fg-2)}.confirm-target dd{margin:0;font-family:var(--mono);font-size:var(--text-sm);font-variant-numeric:tabular-nums;color:var(--fg);overflow-wrap:anywhere}.field-readonly{margin-bottom:var(--space-sm)}.field-readonly>.k{display:block;margin-bottom:var(--space-2xs);font-size:var(--text-sm);color:var(--fg-2)}.field-readonly>.v{display:block;height:var(--control-h);padding:0 var(--control-pad-x);font-family:var(--mono);font-size:var(--text-base);font-variant-numeric:tabular-nums;line-height:var(--control-h);color:var(--readonly-fg);background:var(--readonly-bg);border:1px dashed var(--readonly-border);border-radius:var(--r-sm)}.field-readonly>.why{display:block;margin-top:var(--space-2xs);font-size:var(--text-sm);color:var(--dim)}.page-intro{max-width:78ch;margin-top:0;margin-bottom:var(--space-md)}.card>.form{display:grid;gap:var(--space-sm)}.card>.form>*{margin-top:0;margin-bottom:0}label.check,label.row-inline{display:flex;gap:var(--space-xs);align-items:flex-start;margin-bottom:0;font-size:var(--text-sm);line-height:var(--lh-base);color:var(--fg-2)}label.check>input[type=checkbox],label.row-inline>input[type=checkbox]{flex:0 0 auto;width:auto;margin:var(--space-3xs) 0 0}.rp{--rp-label: 7.5rem;--rp-stat: 12.5rem;--rp-gap: var(--space-md);--rp-cell-x: var(--space-sm)}.rp .sub{margin:0 0 var(--space-sm)}.rp .rp-traces{display:grid;gap:1px;margin:0 0 var(--space-lg);background:var(--line);border:1px solid var(--line);border-radius:var(--r)}.rp .rp-traces:empty{display:none}.rp .rp-traces>.card{display:grid;grid-template-columns:var(--rp-label) var(--rp-stat) minmax(0,1fr);gap:0 var(--rp-gap);align-items:center;min-width:0;padding:var(--space-xs) var(--space-md);background:var(--surface);border:0;border-radius:0}.rp .rp-traces>.card:first-child{border-radius:var(--r) var(--r) 0 0}.rp .rp-traces>.card>.card-h{min-width:0;margin:0;font-family:var(--font);font-size:var(--text-sm);font-weight:600;letter-spacing:0;overflow-wrap:anywhere}.rp .rp-traces>.card>.hint{min-width:0;font-size:var(--text-sm);font-variant-numeric:tabular-nums;color:var(--fg-2);overflow-wrap:anywhere}.rp .rp-traces .spark{gap:0;height:34px;margin:0}.rp .rp-traces .spark>i{min-width:0;border-radius:0;background:var(--accent);opacity:1}.rp .rp-traces .spark>i:hover{background:var(--accent-hover)}.rp .rp-axis{display:flex;flex-wrap:wrap;gap:0 var(--space-md);justify-content:space-between;padding:var(--space-2xs) var(--space-md) var(--space-xs);padding-left:calc(var(--space-md) + var(--rp-label) + var(--rp-stat) + var(--rp-gap) * 2);font-size:var(--text-xs);font-variant-numeric:tabular-nums;color:var(--dim);background:var(--surface-2);border-radius:0 0 var(--r) var(--r)}.rp .rp-log{overflow-x:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--r)}.rp .rp-log th,.rp .rp-log td{padding:var(--space-2xs) var(--rp-cell-x);vertical-align:baseline;white-space:nowrap;border-bottom:1px solid var(--line)}.rp .rp-log thead th{font-size:var(--text-xs);font-weight:600;letter-spacing:.04em;color:var(--dim);text-align:right;background:var(--surface-2)}.rp .rp-log thead .rp-when{background:var(--surface-2)}.rp .rp-log .rp-when{position:sticky;left:0;z-index:1;width:1%;font-size:var(--text-sm);font-weight:400;font-variant-numeric:tabular-nums;color:var(--fg-2);text-align:left;background:var(--surface);box-shadow:inset -1px 0 0 var(--line)}.rp .rp-log tbody tr:last-child th,.rp .rp-log tbody tr:last-child td{border-bottom:1px solid var(--line)}.rp .rp-log tbody:last-child tr:last-child th,.rp .rp-log tbody:last-child tr:last-child td{border-bottom:0}.rp .rp-log .rp-anchor>th{padding:var(--space-sm) var(--rp-cell-x) var(--space-3xs);font-size:var(--text-xs);font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.06em;color:var(--fg-2);text-align:left;background:var(--surface-2);border-bottom:1px solid var(--line-strong)}.rp .rp-log .rp-anchor>th>span{position:sticky;left:var(--rp-cell-x);display:inline-block}.rp .rp-log .rp-v{position:relative;font-size:var(--text-base);font-variant-numeric:tabular-nums;text-align:right}.rp .rp-log .rp-v[data-zero]{color:var(--dim)}.rp .rp-log .rp-bar{position:absolute;right:var(--rp-cell-x);bottom:0;height:2px;background:var(--off)}.rp .rp-log tr[data-peak] .rp-bar{background:var(--accent)}.rp .rp-log tr[data-peak] .rp-v:first-of-type{font-weight:600;color:var(--fg)}.rp .rp-log tr[data-peak] .rp-when{color:var(--fg);box-shadow:inset -1px 0 0 var(--line),inset 2px 0 0 var(--accent)}.rp .rp-log tbody tr:hover .rp-when{background:var(--surface-2)}@media(max-width:900px){.rp{--rp-label: 0px;--rp-stat: 0px;--rp-gap: 0px;--rp-cell-x: var(--space-xs)}.rp .rp-traces>.card{grid-template-columns:minmax(0,auto) minmax(0,1fr);gap:var(--space-2xs) var(--space-sm);align-items:baseline;padding:var(--space-sm) var(--space-md)}.rp .rp-traces>.card>.hint{text-align:right}.rp .rp-traces .spark{grid-column:1 / -1;align-self:stretch}}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-vietnamese-wght-normal-D0rl6rjA.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-ext-wght-normal-D9tNdqV9.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:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-wght-normal-BhU9QXUp.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}:root{color-scheme:light;--bg: oklch(98.6% .003 258);--sunk: oklch(96.6% .004 258);--surface-2: oklch(97.6% .003 258);--surface: oklch(100% 0 0);--line: oklch(92.5% .005 258);--line-strong: oklch(85% .008 258);--fg: oklch(24% .014 245);--fg-2: oklch(40% .015 245);--dim: oklch(53% .013 245);--accent: oklch(52% .19 258);--accent-hover: oklch(45% .19 258);--accent-weak: oklch(96% .032 258);--accent-fg: oklch(100% 0 0);--ok: oklch(52% .105 158);--ok-weak: oklch(96% .028 158);--warn: oklch(53% .105 75);--warn-weak: oklch(96.5% .038 85);--err: oklch(52% .165 25);--err-weak: oklch(96% .03 25);--off: oklch(52% .013 245);--off-weak: oklch(95% .006 245);--scrim: oklch(24% .03 245 / 34%);--scrim-soft: oklch(24% .03 245 / 22%);--scrim-off: oklch(24% .03 245 / 0%);--font-cjk: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", sans-serif;--font: system-ui, -apple-system, "Segoe UI", var(--font-cjk);--font-display: "Space Grotesk Variable", system-ui, var(--font-cjk);--mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;--w-normal: 400;--w-medium: 500;--w-bold: 600;--lh-tight: 1.2;--lh-base: 1.55;--lh-loose: 1.7;--text-2xs: 10px;--text-xs: 11px;--text-sm: 12px;--text-base: 13px;--text-md: 15px;--text-lg: 18px;--text-xl: 23px;--readout-sm: 20px;--readout: 26px;--readout-lg: 34px;--readout-tracking: -.02em;--space-3xs: 2px;--space-2xs: 4px;--space-xs: 8px;--space-sm: 12px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--density-pad: 20px;--density-gap: 16px;--density-row: 40px;--control-h: 36px;--control-h-sm: 28px;--control-pad-x: 14px;--control-pad-x-sm: 10px;--control-gap: 8px;--tap-min: 44px;--r-sm: 4px;--r: 8px;--r-pill: 999px;--sidebar-w: 216px;--shadow: 0 6px 18px -8px oklch(24% .03 245 / 10%), 0 1px 3px -1px oklch(24% .03 245 / 8%);--shadow-sm: 0 1px 2px oklch(24% .03 245 / 6%);--z-sticky: 10;--z-drawer: 100;--z-scrim: 200;--z-dialog: 300;--z-toast: 400;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--dur-fast: 90ms;--dur: .14s;--dur-slow: .22s;--btn-primary-bg: var(--accent);--btn-primary-bg-hover: var(--accent-hover);--btn-primary-fg: var(--accent-fg);--btn-secondary-bg: var(--surface);--btn-secondary-fg: var(--fg);--btn-secondary-border: var(--line-strong);--btn-danger-bg: var(--err);--btn-danger-fg: var(--accent-fg);--btn-ghost-fg: var(--accent);--btn-ghost-border: var(--line);--btn-ghost-danger-fg: var(--err);--btn-disabled-bg: var(--sunk);--btn-disabled-fg: var(--dim);--field-bg: var(--surface);--field-border: var(--line-strong);--field-border-focus: var(--accent);--field-fg: var(--fg);--field-placeholder: var(--dim);--readonly-bg: var(--sunk);--readonly-border: var(--line);--readonly-fg: var(--fg-2);--focus-ring: var(--accent);--focus-ring-w: 2px;--focus-ring-offset: 2px;--focus-ring-on-dark: var(--accent);--notice-info-bg: var(--surface-2);--notice-info-fg: var(--fg-2);--notice-info-edge: var(--line-strong);--notice-warn-bg: var(--warn-weak);--notice-warn-fg: var(--warn);--notice-warn-edge: var(--warn);--notice-err-bg: var(--err-weak);--notice-err-fg: var(--err);--notice-err-edge: var(--err);--notice-ok-bg: var(--ok-weak);--notice-ok-fg: var(--ok);--notice-ok-edge: var(--ok);--notice-edge-w: 3px;--novalue-empty-fg: var(--fg);--novalue-unknown-fg: var(--dim);--novalue-unknown-bg: var(--sunk);--novalue-na-fg: var(--dim);--table-head-bg: var(--surface-2);--table-head-fg: var(--dim);--table-row-hover: var(--surface-2);--table-row-zebra: var(--sunk);--table-line: var(--line);--rail-bg: oklch(100% 0 0);--rail-bg-2: oklch(95.6% .033 258);--rail-line: oklch(92.5% .005 258);--rail-line-strong: oklch(85% .008 258);--rail-fg: oklch(40% .015 245);--rail-fg-dim: oklch(51% .013 245);--rail-fg-strong: oklch(22% .016 245)}:root[data-theme=dark]{color-scheme:dark;--bg: oklch(20% .012 258);--sunk: oklch(21.5% .012 258);--surface: oklch(24.5% .014 258);--surface-2: oklch(28.5% .014 258);--line: oklch(33% .014 258);--line-strong: oklch(53% .016 258);--fg: oklch(93% .008 258);--fg-2: oklch(74% .012 258);--dim: oklch(66% .012 258);--accent: oklch(72% .14 258);--accent-hover: oklch(80% .13 258);--accent-weak: oklch(31% .07 258);--accent-fg: oklch(18% .02 258);--ok: oklch(70% .11 158);--ok-weak: oklch(30% .05 158);--warn: oklch(74% .11 75);--warn-weak: oklch(31% .05 75);--err: oklch(72% .15 25);--err-weak: oklch(31% .06 25);--off: oklch(67% .012 258);--off-weak: oklch(30% .012 258);--scrim: oklch(10% .02 258 / 62%);--scrim-soft: oklch(10% .02 258 / 45%);--scrim-off: oklch(10% .02 258 / 0%);--shadow: 0 8px 24px -6px oklch(0% 0 0 / 55%), 0 2px 6px -2px oklch(0% 0 0 / 45%);--shadow-sm: 0 1px 3px oklch(0% 0 0 / 40%);--btn-disabled-bg: oklch(27% .012 258);--btn-disabled-fg: var(--dim);--focus-ring-on-dark: var(--accent);--rail-bg: oklch(17% .012 258);--rail-bg-2: oklch(29% .05 258);--rail-line: oklch(28% .014 258);--rail-line-strong: oklch(36% .016 258);--rail-fg: oklch(88% .01 258);--rail-fg-dim: oklch(68% .012 258);--rail-fg-strong: oklch(96% .008 258)}*{box-sizing:border-box}body{margin:0;color:var(--fg);background:var(--bg);font:14px/1.55 var(--font)}a{color:var(--accent)}.shell{display:flex;min-height:100dvh}.sidebar{flex:0 0 var(--sidebar-w);width:var(--sidebar-w);padding:14px 0;background:var(--surface);border-right:1px solid var(--line);position:sticky;top:0;align-self:flex-start;height:100dvh;overflow-y:auto}.sidebar .brand{display:block;padding:4px 16px 16px;font-size:var(--text-md);font-weight:600;color:var(--fg);text-decoration:none}.sidebar-group{margin-top:10px;padding:0 8px}.sidebar-group>.label{padding:6px 8px 4px;font-size:var(--text-xs);font-weight:600;letter-spacing:.04em;color:var(--dim);text-transform:uppercase}.sidebar-item{display:flex;align-items:center;gap:9px;width:100%;padding:7px 8px;font:inherit;color:var(--fg-2);text-align:left;text-decoration:none;background:none;border:0;border-radius:var(--r-sm);cursor:pointer}.sidebar-item:hover{background:var(--surface-2)}.sidebar-item.on{color:var(--accent);font-weight:600;background:var(--accent-weak)}.nav-ico{flex:none;width:16px;height:16px;color:var(--rail-fg-dim)}.sidebar-item.on .nav-ico{color:inherit}.sidebar-item .caret{margin-left:auto;font-size:var(--text-2xs);color:var(--dim);transition:transform var(--dur) var(--ease-out)}.sidebar-item.open .caret{transform:rotate(90deg)}.sidebar-sub{margin:2px 0 4px;padding-left:24px}.sidebar-sub .sidebar-item{padding:5px 8px;font-size:var(--text-base)}.sidebar-item .risk{margin-left:auto;font-size:var(--text-2xs);color:var(--warn)}.content{flex:1 1 auto;min-width:0}.topbar{display:flex;align-items:center;gap:12px;padding:10px 20px;background:var(--surface);border-bottom:1px solid var(--line)}.topbar .title{font-size:var(--text-md);font-weight:600}.topbar .who{display:flex;align-items:center;gap:10px;margin-left:auto;min-width:0;font-size:var(--text-base);color:var(--fg-2)}.topbar .who>[data-testid=who]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar .who>button{flex-shrink:0}.topbar button{padding:5px 10px;font:inherit;font-size:var(--text-base);color:var(--fg-2);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);cursor:pointer}.topbar button:hover{border-color:var(--line-strong)}.device-switcher{padding:5px 8px;font:inherit;font-size:var(--text-base);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);max-width:260px}.hamburger{display:none}main{padding:18px 20px 40px}.center{padding:90px 20px;color:var(--dim);text-align:center}.page{max-width:980px}.page.wide{max-width:1240px}h1{margin:0 0 14px;font-size:var(--text-lg)}h2{margin:0 0 10px;font-size:var(--text-base)}.page-head{display:flex;align-items:center;gap:14px;margin-bottom:14px}.page-head h1{margin:0}.sub{margin:-8px 0 16px;font-size:var(--text-base);color:var(--fg-2)}.card{padding:14px 16px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow)}.card.form{max-width:380px;margin:48px auto;padding:26px}.card>h2:first-child{margin-top:0}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin-bottom:16px}.grid.wide-cells{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.tile{padding:12px 14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow)}.tile .k{font-size:var(--text-sm);color:var(--dim)}.tile .v{margin-top:4px;font-size:var(--text-xl);font-weight:600;line-height:1.2}.tile .v.sm{font-size:var(--text-md);font-weight:600}.tile .note{margin-top:3px;font-size:var(--text-sm);color:var(--dim)}label{display:block;margin-bottom:13px;font-size:var(--text-sm);color:var(--fg-2)}label.inline{display:inline-flex;align-items:center;gap:8px;margin-bottom:16px}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=color]):not([type=submit]):not([type=button]):not([type=reset]),select,textarea{display:block;width:100%;margin-top:5px;padding:8px 10px;font:inherit;color:var(--fg);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-sm)}label.inline select,label.inline input{width:auto;margin-top:0}input:focus,select:focus,textarea:focus{border-color:var(--accent);outline:2px solid var(--accent-weak)}small{display:block;margin-top:5px;font-size:var(--text-sm);line-height:1.5}button[type=submit],.btn-primary{width:100%;padding:9px;font:inherit;font-size:var(--text-base);color:var(--accent-fg);background:var(--accent);border:0;border-radius:var(--r-sm);cursor:pointer}button[type=submit]:disabled,.btn-primary:disabled{color:var(--btn-disabled-fg);background:var(--btn-disabled-bg);cursor:not-allowed}.card button[type=button]:not([class]){width:100%;padding:9px;font:inherit;font-size:var(--text-base);color:var(--btn-primary-fg);background:var(--btn-primary-bg);border:0;border-radius:var(--r-sm);cursor:pointer}button.primary{padding:9px var(--control-pad-x);font:inherit;font-size:var(--text-base);color:var(--btn-primary-fg);background:var(--btn-primary-bg);border:0;border-radius:var(--r-sm);cursor:pointer}button.linklike{padding:0;font:inherit;color:var(--accent);text-decoration:underline;background:none;border:0;cursor:pointer}button.small{height:var(--control-h-sm);padding:0 var(--control-pad-x-sm);font:inherit;font-size:var(--text-sm);color:var(--btn-ghost-fg);background:var(--surface);border:1px solid var(--btn-ghost-border);border-radius:var(--r-sm);cursor:pointer}.btn{padding:6px 11px;font-size:var(--text-base);color:var(--accent);text-decoration:none;background:var(--surface);border:1px solid var(--accent);border-radius:var(--r-sm);cursor:pointer}.seg{display:flex;margin-bottom:15px}.seg button{flex:1;padding:7px;font:inherit;color:var(--fg-2);background:var(--surface);border:1px solid var(--line-strong);cursor:pointer}.seg button:first-child{border-radius:var(--r-sm) 0 0 var(--r-sm)}.seg button:last-child{border-left:0;border-radius:0 var(--r-sm) var(--r-sm) 0}.seg button.on{color:var(--accent-fg);background:var(--accent);border-color:var(--accent)}.tabs{display:flex;gap:2px;margin-bottom:12px;border-bottom:1px solid var(--line)}.tabs button{padding:7px 12px;font:inherit;font-size:var(--text-base);color:var(--fg-2);background:none;border:0;border-bottom:2px solid transparent;cursor:pointer}.tabs button.on{color:var(--accent);font-weight:600;border-bottom-color:var(--accent)}.table-wrap{overflow-x:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow)}table{width:100%;border-collapse:collapse}th,td{padding:8px 12px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line);white-space:nowrap}thead th{font-size:var(--text-xs);font-weight:600;color:var(--dim);background:var(--surface-2)}tbody tr:last-child td{border-bottom:0}tbody tr:hover td{background:var(--surface-2)}table.kv th{width:140px;font-weight:400;color:var(--dim);background:none;white-space:nowrap}table.kv td{white-space:normal}.right{text-align:right}tr.total td{font-weight:600;border-bottom:0}.empty{padding:26px 16px;color:var(--dim);text-align:center}.badge{display:inline-block;padding:1px 8px;font-size:var(--text-sm);white-space:nowrap;border:1px solid;border-radius:var(--r-pill)}.badge.on{color:var(--ok);background:var(--ok-weak);border-color:var(--ok)}.badge.off{color:var(--off);background:var(--off-weak);border-color:var(--off)}.badge.warn{color:var(--warn);background:var(--warn-weak);border-color:var(--warn)}.badge.err{color:var(--err);background:var(--err-weak);border-color:var(--err)}.badge.stale{color:var(--warn);background:var(--warn-weak);border-color:var(--warn);border-style:dashed}.tag{padding:1px 6px;font-size:var(--text-xs);color:var(--accent);border:1px solid var(--accent);border-radius:var(--r-pill)}.tag.soon{color:var(--warn);border-color:var(--warn)}.mono{font-family:var(--mono);font-size:var(--text-base)}.dim{color:var(--dim)}.hint{font-size:var(--text-sm);line-height:1.6;color:var(--fg-2)}.err{color:var(--err)}.warn:not(:where(.badge,.tag,.meter)){padding:9px 12px;color:var(--notice-warn-fg);background:var(--notice-warn-bg);border:1px solid var(--notice-warn-edge);border-radius:var(--r-sm)}.text-warn,.warn-inline{color:var(--warn)}.notice-info,.notice-warn,.notice-err,.notice-ok{padding:var(--space-xs) var(--space-sm);margin-bottom:var(--space-sm);font-size:var(--text-sm);line-height:var(--lh-loose);border-left:var(--notice-edge-w) solid;border-radius:var(--r-sm)}.notice-info{color:var(--notice-info-fg);background:var(--notice-info-bg);border-left-color:var(--notice-info-edge)}.notice-warn{color:var(--notice-warn-fg);background:var(--notice-warn-bg);border-left-color:var(--notice-warn-edge)}.notice-err{color:var(--notice-err-fg);background:var(--notice-err-bg);border-left-color:var(--notice-err-edge)}.notice-ok{color:var(--notice-ok-fg);background:var(--notice-ok-bg);border-left-color:var(--notice-ok-edge)}.err-inline{color:var(--err)}.err-box{color:var(--err);background:var(--err-weak);border-color:var(--err)}.stale-bar{display:flex;align-items:center;gap:8px;margin-bottom:14px;padding:8px 12px;font-size:var(--text-sm);color:var(--warn);background:var(--warn-weak);border:1px solid var(--warn);border-radius:var(--r-sm)}.meter{position:relative;height:6px;margin-top:6px;overflow:hidden;background:var(--off-weak);border-radius:var(--r-pill)}.meter>span{display:block;height:100%;background:var(--accent)}.meter.ok>span{background:var(--ok)}.meter.warn>span{background:var(--warn)}.meter.err>span{background:var(--err)}.spark{display:flex;gap:2px;align-items:flex-end;height:56px;margin-top:8px}.spark>i{flex:1 1 0;min-width:2px;background:var(--accent);border-radius:1px 1px 0 0}.spark>i:hover{background:var(--accent-hover)}.nodes{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.node-card{padding:15px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow)}.node-card.soon{color:var(--dim);background:var(--surface-2)}.node-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px}.node-name{font-size:var(--text-md);font-weight:600}.node-price{margin:9px 0 11px}.node-price .big{font-size:var(--text-xl);font-weight:600}.terms,.exits{margin:0;padding:0;list-style:none}.term,.exit{display:flex;align-items:center;gap:8px;padding:6px 7px;font-size:var(--text-base);border-radius:var(--r-sm);cursor:pointer}.term:hover,.exit:hover{background:var(--surface-2)}.term.on,.exit.on{background:var(--accent-weak)}.term-label{min-width:34px}.term-price{font-weight:600}.save{margin-left:auto;padding:0 5px;font-size:var(--text-xs);color:var(--ok);border:1px solid var(--ok);border-radius:var(--r-pill)}.cart{max-width:440px;margin-top:20px;padding:15px;background:var(--surface);border:1px solid var(--accent);border-radius:var(--r)}.cart h2{margin:0 0 9px}.cart button{width:100%;margin-top:11px;padding:9px;font:inherit;font-size:var(--text-base);color:var(--accent-fg);background:var(--accent);border:0;border-radius:var(--r-sm);cursor:pointer}.cart button:disabled{color:var(--btn-disabled-fg);background:var(--btn-disabled-bg);cursor:not-allowed}.switcher{max-width:560px;margin-top:24px;padding-top:18px;border-top:1px solid var(--line)}.switcher h2{margin:0 0 7px}.exit .dim{margin-left:auto;font-size:var(--text-sm)}@media(max-width:900px){.sidebar{position:fixed;z-index:20;transform:translate(-100%);transition:transform var(--dur) var(--ease-out);box-shadow:0 0 0 100vmax var(--scrim-off)}.sidebar.open{transform:none;box-shadow:0 0 0 100vmax var(--scrim-soft)}.hamburger{display:inline-flex;align-items:center;padding:5px 9px;font-size:var(--text-md);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);cursor:pointer}.topbar .title{font-size:var(--text-base)}main{padding:14px 12px 32px}.device-switcher{max-width:150px}}dialog.confirm{max-width:460px;padding:20px;color:var(--fg);background:var(--surface);border:1px solid var(--line);border-radius:var(--r)}dialog.confirm::backdrop{background:var(--scrim)}dialog.confirm h2{margin:0 0 10px;font-size:var(--text-md)}dialog.confirm .actions{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}dialog.confirm button{padding:7px 14px;font:inherit;font-size:var(--text-base);color:var(--fg-2);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-sm);cursor:pointer}dialog.confirm button.primary{color:var(--accent-fg);background:var(--accent);border-color:var(--accent)}dialog.confirm button.danger{color:var(--accent-fg);background:var(--err);border-color:var(--err)}.row{display:flex;align-items:center;gap:10px}.row.gap{gap:8px;margin-top:4px}.row input[type=number]{width:140px;margin-top:0}label.cb{display:inline-flex;align-items:center;gap:5px;margin:0;white-space:nowrap}label.cb input{width:auto;margin:0}.field{margin-bottom:13px}button.link{padding:0;font:inherit;color:var(--accent);background:none;border:0;cursor:pointer}button.link.err{color:var(--err)}button.link:hover{text-decoration:underline}.row.gap button:not(.btn-primary){padding:9px 14px;font:inherit;font-size:var(--text-base);color:var(--fg-2);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-sm);cursor:pointer}.row.gap .btn-primary{width:auto;padding:9px 18px}label.toggle{display:flex;align-items:center;gap:9px;margin:0;font-size:var(--text-base);color:var(--fg);cursor:pointer}label.toggle input{position:absolute;z-index:1;width:34px;height:19px;margin:0;cursor:pointer;opacity:0}label.toggle .track{position:relative;pointer-events:none;flex:0 0 34px;width:34px;height:19px;background:var(--line-strong);border-radius:var(--r-pill);transition:background var(--dur) var(--ease-out)}label.toggle .track:after{position:absolute;top:2px;left:2px;width:15px;height:15px;content:"";background:var(--surface);border-radius:50%;transition:transform var(--dur) var(--ease-out)}label.toggle input:checked+.track{background:var(--accent)}label.toggle input:checked+.track:after{transform:translate(15px)}label.toggle input:focus-visible+.track{outline:2px solid var(--accent-weak);outline-offset:2px}.toggle-label{-webkit-user-select:none;user-select:none}label.cb.block{display:flex;margin-bottom:4px;font-size:var(--text-base);color:var(--fg)}.label-like{margin-bottom:6px;font-size:var(--text-sm);color:var(--fg-2)}.row-actions{display:flex;flex-wrap:wrap;gap:6px}.row-actions button[type=button]{width:auto;flex:0 0 auto;padding:4px 10px;font:inherit;font-size:var(--text-sm);color:var(--accent);white-space:nowrap;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);cursor:pointer}.row-actions button[type=button]:hover:not(:disabled){border-color:var(--accent)}.row-actions button[type=button]:disabled{color:var(--dim);cursor:not-allowed;background:var(--bg)}.row-actions button[type=button].danger{color:var(--err);border-color:var(--err)}.row-actions button[type=button].danger:hover:not(:disabled){color:var(--accent-fg);background:var(--err)}.card .actions{display:flex;gap:8px;justify-content:flex-end;margin-top:14px}.card .actions button[type=button]{width:auto;min-width:88px;padding:8px 18px;font:inherit;font-size:var(--text-base);border-radius:var(--r-sm);cursor:pointer}.card .actions button[type=button]:not(.primary):not(.danger){color:var(--fg);background:var(--surface);border:1px solid var(--line)}.card .actions button[type=button]:not(.primary):not(.danger):hover:not(:disabled){border-color:var(--accent)}.card .actions button[type=button].danger{color:var(--accent-fg);background:var(--err)}.card .actions button[type=button]:disabled{color:var(--btn-disabled-fg);background:var(--btn-disabled-bg);cursor:not-allowed}.card-h{display:flex;gap:10px;align-items:center;justify-content:space-between}h1,h2,h3,.topbar .title{font-family:var(--font-display);font-weight:600;letter-spacing:-.015em}table,.mono,code,kbd,input[type=number],.node-price .big{font-variant-numeric:tabular-nums}.card,.table-wrap,.node-card{box-shadow:none}:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-sm)}dialog.confirm{box-shadow:var(--shadow)}button.primary:active:not(:disabled),button.danger:active:not(:disabled){transform:translateY(1px)}button{transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.grid:has(>.tile){gap:1px;overflow:hidden;background:var(--line);border:1px solid var(--line);border-radius:var(--r)}.grid:has(>.tile)>.tile{border:0;border-radius:0;box-shadow:none}.tile{padding:var(--space-sm) var(--space-md);box-shadow:none}.tile .k{font-size:var(--text-xs);letter-spacing:.02em;color:var(--dim)}.tile .v{margin-top:var(--space-2xs);font-family:var(--font-display);font-size:26px;font-weight:500;font-variant-numeric:tabular-nums;line-height:1.15;letter-spacing:-.02em}.tile .v.sm{font-size:var(--text-lg);font-weight:500}.pw-field{position:relative;display:block}.pw-field input{padding-right:40px}.pw-eye{position:absolute;right:1px;top:1px;bottom:1px;width:38px;display:flex;align-items:center;justify-content:center;padding:0;color:var(--fg-2);background:none;border:0;cursor:pointer;border-radius:0 var(--r-sm) var(--r-sm) 0}.pw-eye:hover{color:var(--fg)}.pw-eye[aria-pressed=true]{color:var(--accent)}.phone-field{display:grid;grid-template-columns:42% minmax(0,1fr);gap:var(--space-xs)}.code-field{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-xs)}.code-field input{font-variant-numeric:tabular-nums;letter-spacing:.2em}.code-field button{white-space:nowrap}button.link.danger{color:var(--err)}.ok-note{margin:0 0 var(--space-md);padding:var(--space-xs) var(--space-sm);color:var(--ok);background:var(--ok-weak);border-left:2px solid var(--ok);border-radius:0 var(--r-sm) var(--r-sm) 0}ul.plain{margin:var(--space-sm) 0 var(--space-lg);padding-left:var(--space-lg);line-height:1.8}.exit.off{opacity:.55}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 1000px var(--surface) inset;box-shadow:0 0 0 1000px var(--surface) inset;-webkit-text-fill-color:var(--fg);caret-color:var(--fg)}.pw-field button.pw-eye{position:absolute;right:1px;top:1px;bottom:1px;width:38px;padding:0;color:var(--fg-2);background:none;border:0;border-radius:0 var(--r-sm) var(--r-sm) 0}.pw-field button.pw-eye:hover{color:var(--fg)}.pw-field button.pw-eye[aria-pressed=true]{color:var(--accent)}select.lang-switch{display:inline-block;width:auto;margin-top:0;padding:4px 8px;font-size:var(--text-sm);color:var(--fg-2);flex-shrink:0}.auth-root{position:relative}.auth-lang{position:absolute;top:14px;right:16px;z-index:1}
