:root{color-scheme:light;--ink: #14232d;--ink-soft: #4e606b;--ink-faint: #85939b;--deep: #0d1e2b;--deep-2: #173a4a;--surface: #fffdf8;--surface-soft: #f8f4ec;--canvas: #f2eee6;--line: #ded8cc;--line-strong: #c9c1b3;--teal: #148875;--teal-dark: #0b6658;--teal-soft: #dff3ec;--amber: #c97923;--amber-soft: #f8e8d2;--red: #b74444;--red-soft: #f9e4e0;--shadow-sm: 0 1px 2px rgba(13, 30, 43, .05), 0 8px 24px rgba(13, 30, 43, .04);--shadow-lg: 0 24px 70px rgba(4, 14, 22, .22);--radius-sm: 10px;--radius-md: 16px;--radius-lg: 24px;--font-sans: "Avenir Next", "Segoe UI", "Noto Sans TC", "Noto Sans SC", "PingFang TC", "PingFang SC", "Microsoft JhengHei", "Microsoft YaHei", sans-serif;--font-mono: "SFMono-Regular", "Cascadia Code", "Liberation Mono", Menlo, Consolas, monospace}*,*:before,*:after{box-sizing:border-box}html{min-width:320px;background:var(--canvas)}body{margin:0;min-width:320px;min-height:100vh;color:var(--ink);background:radial-gradient(circle at 85% 5%,rgba(20,136,117,.08),transparent 28rem),var(--canvas);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body,button,input,select,textarea{font-family:var(--font-sans)}button,input,select{font-size:.94rem}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit;text-decoration:none}h1,h2,h3,h4,p{margin:0}h1{letter-spacing:-.035em;line-height:1.08}h2{font-size:1.14rem;letter-spacing:-.02em}h3{font-size:1.02rem}code{font-family:var(--font-mono)}::selection{background:#14887533}:focus-visible{outline:3px solid rgba(20,136,117,.36);outline-offset:2px}.eyebrow{display:inline-block;color:var(--teal-dark);font-size:.7rem;font-weight:750;letter-spacing:.16em;text-transform:uppercase}.auth-shell{position:relative;display:flex;min-height:100vh;flex-direction:column;overflow:hidden;padding:28px clamp(20px,4vw,56px) 40px;color:#f8f4ec;background:var(--deep)}.auth-backdrop{position:absolute;inset:0;overflow:hidden;pointer-events:none}.auth-backdrop:after{position:absolute;right:-8rem;bottom:-12rem;width:40rem;height:40rem;border:1px solid rgba(255,255,255,.05);border-radius:50%;content:""}.orb{position:absolute;display:block;border-radius:50%;filter:blur(2px)}.orb-one{top:-20rem;left:14%;width:48rem;height:48rem;background:radial-gradient(circle,rgba(20,136,117,.2),transparent 66%)}.orb-two{right:-12rem;bottom:-18rem;width:40rem;height:40rem;background:radial-gradient(circle,rgba(201,121,35,.16),transparent 64%)}.grid-lines{position:absolute;inset:0;opacity:.22;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:58px 58px;-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.7),transparent 80%);mask-image:linear-gradient(to bottom,rgba(0,0,0,.7),transparent 80%)}.auth-topbar,.auth-layout{position:relative;z-index:1}.auth-topbar{display:flex;width:100%;max-width:1260px;align-items:center;justify-content:space-between;margin:0 auto}.auth-layout{display:grid;width:100%;max-width:1260px;flex:1;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);align-items:center;gap:clamp(40px,7vw,110px);margin:40px auto 0}.auth-story{max-width:650px;padding:20px 0}.auth-story .eyebrow{color:#7fd8c4}.auth-story h1{max-width:12ch;margin-top:20px;font-size:clamp(2.7rem,5.2vw,4.65rem);font-weight:650;letter-spacing:-.055em}.auth-lead{max-width:50ch;margin-top:22px;color:#f8f4ecab;font-size:1rem;line-height:1.8}.feature-list{display:grid;gap:18px;margin-top:48px}.feature-item{display:grid;grid-template-columns:32px 1fr;gap:18px;max-width:480px;padding-top:16px;border-top:1px solid rgba(255,255,255,.09)}.feature-index{color:#f0a85a;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.08em}.feature-item h3{font-size:.92rem;font-weight:650}.feature-item p{margin-top:5px;color:#f8f4ec85;font-size:.82rem;line-height:1.65}.auth-card-wrap{display:flex;flex-direction:column;align-items:stretch;gap:14px}.auth-card{position:relative;width:100%;padding:clamp(26px,3.4vw,42px);color:var(--ink);border:1px solid rgba(255,255,255,.18);border-radius:var(--radius-lg);background:linear-gradient(140deg,#fffffffa,#fffdf8f2);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.auth-card-heading{margin-bottom:30px}.auth-card-heading h2{margin-top:8px;font-size:clamp(1.7rem,2.4vw,2.2rem);font-weight:650}.auth-card-heading>p{margin-top:10px;color:var(--ink-soft);font-size:.9rem;line-height:1.65}.auth-card-heading.compact{margin-bottom:22px}.user-chip{display:inline-flex;margin-top:16px;padding:6px 11px;border:1px solid var(--line);border-radius:999px;color:var(--ink-soft);background:var(--surface-soft);font-size:.78rem;font-weight:600}.auth-footnote{margin-top:22px;color:var(--ink-faint);font-size:.75rem;line-height:1.6;text-align:center}.auth-locale-note{padding-right:4px;text-align:right}.forced-setup-card .setup-panel{padding:0;border:0;background:transparent}.brand{display:inline-flex;align-items:center;gap:12px;color:#fff}.brand-dark{color:var(--ink)}.brand-mark{display:grid;width:38px;height:38px;grid-template-columns:repeat(3,1fr);align-items:end;gap:3px;padding:8px;border-radius:11px;background:var(--deep-2);box-shadow:inset 0 0 0 1px #ffffff14}.brand-mark span{display:block;border-radius:2px;background:#f2a65a}.brand-mark span:nth-child(1){height:55%;opacity:.65}.brand-mark span:nth-child(2){height:100%}.brand-mark span:nth-child(3){height:72%;background:#74dac2}.brand-copy{display:flex;flex-direction:column;gap:1px}.brand-copy strong{font-size:.88rem;font-weight:700;letter-spacing:-.01em}.brand-copy small{color:#ffffff7a;font-size:.66rem;letter-spacing:.04em}.brand-dark .brand-copy small{color:var(--ink-faint)}.language-toggle{display:inline-flex;overflow:hidden;padding:3px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:#ffffff0f}.language-toggle button{width:32px;height:28px;padding:0;color:#ffffff9e;border:0;border-radius:999px;background:transparent;font-size:.76rem;font-weight:650;transition:.15s ease}.language-toggle button.active{color:var(--deep);background:#fff8ec}.app-header .language-toggle{border-color:var(--line);background:var(--surface-soft)}.app-header .language-toggle button{color:var(--ink-soft)}.app-header .language-toggle button.active{color:#fff;background:var(--deep-2)}.stack-form{display:flex;flex-direction:column;gap:9px}.stack-form label{margin-top:7px;color:var(--ink);font-size:.79rem;font-weight:650}.stack-form>label:first-child{margin-top:0}.field-help{color:var(--ink-faint);font-size:.74rem;line-height:1.55}input,select{width:100%;height:44px;padding:0 13px;color:var(--ink);border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:#ffffffd1;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}input::placeholder{color:#a7b0b4}input:focus,select:focus{border-color:var(--teal);outline:0;background:#fff;box-shadow:0 0 0 4px #1488751a}select{cursor:pointer}.code-input{height:56px;font-family:var(--font-mono);font-size:1.55rem;font-weight:650;letter-spacing:.32em;text-align:center}.code-input.backup-input{font-size:1rem;letter-spacing:.08em}.button{display:inline-flex;min-height:40px;align-items:center;justify-content:center;gap:8px;padding:8px 15px;border:1px solid transparent;border-radius:var(--radius-sm);font-size:.83rem;font-weight:650;line-height:1.2;transition:transform .15s ease,background .15s ease,border-color .15s ease,box-shadow .15s ease}.button:hover:not(:disabled){transform:translateY(-1px)}.button:active:not(:disabled){transform:translateY(0)}.button:disabled{opacity:.48}.button-full{width:100%;min-height:46px;margin-top:12px}.button-primary{color:#fff;background:var(--deep-2);box-shadow:0 8px 22px #0d1e2b2e}.button-primary:hover:not(:disabled){background:var(--deep)}.button-secondary{color:var(--ink);border-color:var(--line);background:#ffffffb3}.button-secondary:hover:not(:disabled){border-color:var(--line-strong);background:#fff}.button-ghost{color:var(--ink-soft);border-color:transparent;background:transparent}.button-ghost:hover:not(:disabled){color:var(--ink);background:var(--surface-soft)}.button-danger{color:#fff;background:var(--red)}.button-small{min-height:30px;padding:5px 9px;font-size:.74rem}.button-icon{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.link-button{display:inline-flex;margin-top:16px;padding:0;color:var(--teal-dark);border:0;background:transparent;font-size:.79rem;font-weight:650}.link-button:hover{text-decoration:underline}.link-button.subtle{color:#ffffff80}.text-back{display:inline-flex;align-items:center;margin-bottom:22px;padding:0;color:var(--ink-faint);border:0;background:transparent;font-size:.77rem}.text-back:hover{color:var(--ink)}.button-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.error-banner,.success-banner{display:flex;align-items:flex-start;gap:10px;margin:14px 0;padding:11px 13px;border:1px solid;border-radius:var(--radius-sm);font-size:.79rem;line-height:1.55}.error-banner{color:#812f2f;border-color:#ecc8c2;background:var(--red-soft)}.success-banner{color:#136a55;border-color:#bde3d5;background:var(--teal-soft)}.error-banner-mark{display:inline-flex;width:18px;height:18px;flex:0 0 auto;align-items:center;justify-content:center;margin-top:1px;color:#fff;border-radius:50%;background:var(--red);font-size:.68rem;font-weight:800}.error-banner .button{margin-left:auto}.success-banner>span:first-child{display:inline-flex;width:18px;height:18px;flex:0 0 auto;align-items:center;justify-content:center;border-radius:50%;background:#14887524;font-weight:800}.app-shell{display:flex;min-height:100vh;flex-direction:column}.app-header{position:sticky;z-index:20;top:0;border-bottom:1px solid rgba(201,193,179,.6);background:#faf7f0e0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.app-header-inner{display:flex;width:min(1280px,calc(100% - 40px));min-height:70px;align-items:center;gap:32px;margin:0 auto}.main-nav{display:flex;align-items:center;gap:4px}.main-nav a{padding:8px 11px;color:var(--ink-soft);border-radius:8px;font-size:.8rem;font-weight:600;transition:.15s ease}.main-nav a:hover{color:var(--ink);background:#14887512}.main-nav a.active{color:var(--teal-dark);background:#1488751a}.header-tools{display:flex;align-items:center;gap:12px;margin-left:auto}.account-chip{display:flex;align-items:center;gap:9px;padding-left:14px;border-left:1px solid var(--line)}.account-avatar,.table-avatar{display:inline-flex;align-items:center;justify-content:center;color:#fff;border-radius:50%;background:var(--deep-2);font-weight:700}.account-avatar{width:33px;height:33px;font-size:.78rem}.account-copy{display:flex;flex-direction:column;line-height:1.25}.account-copy strong{max-width:140px;overflow:hidden;font-size:.77rem;text-overflow:ellipsis;white-space:nowrap}.account-copy small{color:var(--ink-faint);font-size:.64rem}.icon-button{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;padding:0;color:var(--ink-soft);border:1px solid transparent;border-radius:9px;background:transparent}.icon-button:hover{color:var(--ink);border-color:var(--line);background:#fff}.icon-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.logout-button:hover{color:var(--red);border-color:#edcbc5;background:var(--red-soft)}.app-main{width:min(1280px,calc(100% - 40px));flex:1;margin:0 auto;padding:42px 0 64px}.app-footer{display:flex;width:min(1280px,calc(100% - 40px));justify-content:space-between;margin:0 auto;padding:22px 0 30px;color:var(--ink-faint);border-top:1px solid var(--line);font-size:.7rem;letter-spacing:.02em}.page-stack{display:flex;flex-direction:column;gap:22px}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:6px}.page-header h1{font-size:clamp(1.9rem,3.2vw,2.8rem);font-weight:620}.page-header p{max-width:68ch;margin-top:10px;color:var(--ink-soft);font-size:.87rem;line-height:1.6}.page-actions{display:flex;flex:0 0 auto;align-items:center;gap:10px}.card{padding:24px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-sm)}.card-heading{margin-bottom:20px}.card-heading p{margin-top:5px;color:var(--ink-soft);font-size:.78rem;line-height:1.55}.row-between{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.card-loading{display:flex;min-height:140px;align-items:center;justify-content:center}.card-footer-meta{display:flex;justify-content:space-between;gap:12px;margin-top:18px;padding-top:14px;color:var(--ink-faint);border-top:1px solid var(--line);font-size:.68rem}.scope-note{margin-top:14px;color:var(--ink-faint);font-size:.73rem;line-height:1.65}.instance-card{position:relative;overflow:hidden}.instance-card:before{position:absolute;top:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,var(--teal),#76d7c1 42%,transparent 85%);content:""}.instance-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;padding:8px 2px 24px}.instance-id-line{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-top:8px}.instance-id-line code{font-size:1.08rem;font-weight:600;letter-spacing:-.02em}.status-hint{margin-top:9px;color:var(--ink-soft);font-size:.78rem}.polling-note{display:inline-flex;align-items:center;gap:7px;margin-top:12px;color:var(--amber);font-size:.73rem}.polling-note:before{width:6px;height:6px;border-radius:50%;background:currentColor;content:"";animation:pulse 1.6s infinite}.power-actions{display:flex;flex:0 0 auto;gap:9px}.power-button{min-width:112px;min-height:44px;color:var(--ink);border-color:var(--line);background:var(--surface)}.power-button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round}.power-button.start:not(:disabled){color:var(--teal-dark);border-color:#b7ddd2;background:var(--teal-soft)}.power-button.stop:not(:disabled){color:#8c3434;border-color:#e9c9c3;background:var(--red-soft)}.power-button.is-muted{color:var(--ink-faint);background:var(--surface-soft)}.ip-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.address-block{min-height:114px;padding:15px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-soft)}.address-label{color:var(--ink-faint);font-size:.67rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.address-values{display:grid;gap:7px;margin-top:12px}.address-value{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:8px}.address-value code{overflow:hidden;font-size:.89rem;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.address-empty{display:inline-block;margin-top:14px;color:var(--ink-faint);font-size:.82rem}.copy-button{display:inline-flex;height:26px;align-items:center;gap:4px;padding:0 7px;color:var(--ink-faint);border:1px solid var(--line);border-radius:7px;background:#fff;font-size:.64rem;font-weight:600;white-space:nowrap}.copy-button:hover,.copy-button.is-copied{color:var(--teal-dark);border-color:#b9ddd4;background:var(--teal-soft)}.copy-button svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.meta-strip{display:flex;flex-wrap:wrap;gap:26px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}.meta-item{display:flex;flex-direction:column;gap:4px}.meta-item span{color:var(--ink-faint);font-size:.66rem}.meta-item strong{font-size:.78rem;font-weight:600}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px}.mini-badge{display:inline-flex;min-width:62px;align-items:center;justify-content:center;padding:5px 9px;color:var(--ink-soft);border:1px solid var(--line);border-radius:999px;background:var(--surface-soft);font-family:var(--font-mono);font-size:.7rem;font-weight:600}.mini-badge.warning{color:#8c5b13;border-color:#ecd2ab;background:var(--amber-soft)}.mini-badge.critical{color:#8c3434;border-color:#e9c9c3;background:var(--red-soft)}.metric-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;margin-top:8px}.metric-value{font-size:clamp(1.9rem,3.6vw,2.6rem);font-weight:620;letter-spacing:-.05em}.metric-muted{color:var(--ink-faint);font-size:.86rem}.progress-track{overflow:hidden;height:9px;margin-top:18px;border-radius:999px;background:#e7e2d8}.progress-track>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--teal-dark),#51c5aa);transition:width .4s ease}.progress-track.warning>span{background:linear-gradient(90deg,#bc7629,#e9a452)}.progress-track.critical>span{background:linear-gradient(90deg,#a73d3d,#d66a5f)}.progress-labels{display:flex;justify-content:space-between;margin-top:7px;color:var(--ink-faint);font-size:.68rem}.inline-alert{margin-top:14px;padding:9px 11px;border:1px solid var(--line);border-radius:8px;font-size:.74rem;line-height:1.55}.inline-alert.warning{color:#785014;border-color:#ebd2ad;background:var(--amber-soft)}.inline-alert.critical{color:#7d3030;border-color:#ebc8c2;background:var(--red-soft)}.inline-alert.neutral{color:var(--ink-soft);border-color:var(--line);background:var(--surface-soft)}.month-select{width:auto;min-width:104px;height:36px;padding:0 28px 0 10px;font-family:var(--font-mono);font-size:.74rem}.billing-amount{display:flex;align-items:baseline;margin-top:8px}.billing-amount strong{font-size:clamp(1.9rem,3.6vw,2.7rem);font-weight:620;letter-spacing:-.05em}.billing-label{color:var(--ink-faint);font-size:.7rem}.billing-month-row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:16px;padding-top:14px;color:var(--ink-soft);border-top:1px solid var(--line);font-size:.74rem}.security-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:22px;align-items:start}.security-state{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:.68rem;font-weight:650}.security-state.enabled{color:var(--teal-dark);background:var(--teal-soft)}.security-state.disabled{color:var(--ink-faint);background:var(--surface-soft)}.security-overview>p{color:var(--ink-soft);font-size:.82rem;line-height:1.7}.security-facts{display:grid;gap:12px;margin-top:20px;padding:16px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-soft)}.security-facts div{display:flex;align-items:center;justify-content:space-between;gap:14px}.security-facts span{color:var(--ink-faint);font-size:.72rem}.security-facts strong{max-width:65%;overflow:hidden;font-size:.78rem;font-weight:600;text-align:right;text-overflow:ellipsis;white-space:nowrap}.notice-strip{margin-top:16px;padding:11px 12px;color:var(--ink-soft);border:1px dashed var(--line-strong);border-radius:8px;font-size:.74rem;line-height:1.6}.notice-strip.strong{color:#785014;border-color:#ebd2ad;background:var(--amber-soft)}.setup-panel{display:flex;flex-direction:column;gap:12px}.setup-panel>h3{margin-top:-4px;font-size:1.3rem}.setup-panel>p{color:var(--ink-soft);font-size:.82rem;line-height:1.7}.centered-panel{min-height:240px;align-items:center;justify-content:center}.qr-block{display:flex;justify-content:center;margin-top:4px;padding:16px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff}.qr-image{display:block;width:min(240px,100%);height:auto}.manual-secret{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-soft)}.manual-secret>div{display:flex;min-width:0;flex-direction:column;gap:4px}.manual-secret span{color:var(--ink-faint);font-size:.65rem}.manual-secret code{overflow-wrap:anywhere;font-size:.72rem;font-weight:600}.setup-panel .stack-form{margin-top:6px}.enabled-panel,.backup-panel{display:flex;flex-direction:column;gap:12px}.enabled-panel h2{font-size:1.55rem}.enabled-panel p{color:var(--ink-soft);font-size:.82rem;line-height:1.7}.success-orb{display:inline-flex;width:46px;height:46px;align-items:center;justify-content:center;color:var(--teal-dark);border:1px solid #b7ddd2;border-radius:50%;background:var(--teal-soft);font-size:1.2rem;font-weight:800}.warning-text{color:#785014!important;padding:11px 12px;border:1px solid #ebd2ad;border-radius:8px;background:var(--amber-soft);font-size:.78rem!important;line-height:1.65!important}.backup-codes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-soft)}.backup-codes code{padding:6px 8px;border-radius:5px;background:#fff;font-size:.76rem;text-align:center}.table-card{padding:0;overflow:hidden}.table-wrap{width:100%;overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:.78rem}th,td{padding:14px 16px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}th{color:var(--ink-faint);background:var(--surface-soft);font-size:.64rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#14887506}.align-right{text-align:right}.nowrap{white-space:nowrap}.muted-cell{color:var(--ink-soft);font-size:.72rem}.user-cell{display:flex;min-width:150px;align-items:center;gap:9px}.table-avatar{width:30px;height:30px;flex:0 0 auto;font-size:.7rem}.user-cell>div{display:flex;flex-direction:column;gap:2px}.user-cell strong{font-size:.79rem}.user-cell small{color:var(--ink-faint);font-size:.62rem}.self-badge{padding:2px 6px;color:var(--teal-dark);border-radius:999px;background:var(--teal-soft);font-size:.6rem;font-weight:650}.role-badge,.active-badge,.result-badge{display:inline-flex;padding:4px 7px;border-radius:999px;font-size:.64rem;font-weight:650;white-space:nowrap}.role-badge.admin{color:#7c4b12;background:var(--amber-soft)}.role-badge.user{color:#305c6e;background:#e3eef2}.active-badge.on,.result-badge.success{color:var(--teal-dark);background:var(--teal-soft)}.active-badge.off,.result-badge.failure{color:#8c3434;background:var(--red-soft)}.row-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:2px;min-width:250px}.danger-text{color:var(--red)!important}.table-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;color:var(--ink-faint);border-top:1px solid var(--line);font-size:.7rem}.pagination{display:flex;gap:7px}.empty-state{padding:54px 20px;color:var(--ink-faint);font-size:.82rem;text-align:center}.filter-card{padding:18px}.filter-form{display:grid;grid-template-columns:minmax(150px,1.2fr) minmax(140px,1fr) minmax(130px,.8fr) auto;align-items:end;gap:12px}.filter-form>div{min-width:0}.filter-form label{display:block;margin-bottom:6px;color:var(--ink-faint);font-size:.68rem;font-weight:650}.filter-form input,.filter-form select{height:38px}.filter-form .button{min-height:38px}.action-text{font-weight:600;white-space:nowrap}.log-message{max-width:360px;color:var(--ink-soft);font-size:.7rem;line-height:1.55;word-break:break-word}.log-message small{display:block;margin-top:2px;color:var(--ink-faint);font-size:.62rem}.modal-backdrop{position:fixed;z-index:100;inset:0;display:flex;align-items:center;justify-content:center;padding:20px;background:#08141d8c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fade-in .14s ease}.modal{width:min(100%,540px);max-height:min(90vh,760px);overflow:auto;border:1px solid rgba(255,255,255,.5);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-lg);animation:modal-in .17s ease}.modal-small{width:min(100%,440px)}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 24px 0}.modal-header h2{font-size:1.3rem;font-weight:650}.modal-body{padding:18px 24px}.modal-footer{display:flex;justify-content:flex-end;gap:8px;padding:16px 24px 22px}.confirm-message{color:var(--ink-soft);font-size:.84rem;line-height:1.7}.confirm-stack{display:flex;flex-direction:column;gap:12px}.confirm-note{padding:9px 10px;color:#785014;border:1px solid #ebd2ad;border-radius:7px;background:var(--amber-soft);font-size:.75rem}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field-grid>div{display:flex;flex-direction:column;gap:7px}.spinner-wrap{display:inline-flex;align-items:center;justify-content:center;gap:8px}.spinner,.loader-ring{display:inline-block;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .75s linear infinite}.spinner{width:14px;height:14px}.loader-ring{width:34px;height:34px;color:var(--teal-dark)}.page-loader{display:flex;min-height:100vh;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:var(--ink-soft);font-size:.8rem}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-in{0%{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:1000px){.auth-layout{grid-template-columns:1fr;gap:30px;max-width:620px;margin-top:30px}.auth-story{padding-bottom:0}.auth-story h1{max-width:18ch;font-size:clamp(2.5rem,8vw,3.8rem)}.feature-list{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:30px}.feature-item{grid-template-columns:1fr;gap:8px}.app-header-inner{flex-wrap:wrap;gap:10px 24px;padding:12px 0}.main-nav{order:3;width:100%;overflow-x:auto;padding-bottom:2px}.header-tools{gap:8px}.dashboard-grid,.security-grid{grid-template-columns:1fr}.ip-grid,.filter-form{grid-template-columns:1fr 1fr}.filter-form .button{width:100%}}@media(max-width:720px){.auth-shell{padding:20px 16px 30px}.auth-topbar{gap:20px}.auth-topbar .brand-copy small{display:none}.auth-story h1{font-size:clamp(2.2rem,11vw,3.1rem)}.auth-lead{margin-top:16px;font-size:.9rem}.feature-list{display:none}.auth-card{padding:24px 20px;border-radius:18px}.app-header-inner,.app-main,.app-footer{width:calc(100% - 28px)}.account-copy{display:none}.account-chip{padding-left:9px}.logout-button{width:31px;height:31px}.app-main{padding:28px 0 48px}.page-header{flex-direction:column;align-items:flex-start}.page-header h1{font-size:1.9rem}.page-actions,.page-actions .button{width:100%}.card{padding:18px}.instance-hero{flex-direction:column;gap:20px}.power-actions{width:100%}.power-button{flex:1}.ip-grid{grid-template-columns:1fr}.meta-strip{display:grid;grid-template-columns:1fr 1fr;gap:16px}.card-footer-meta{flex-direction:column;gap:3px}.row-between{flex-wrap:wrap}.month-select{width:100%}.backup-codes,.filter-form,.field-grid{grid-template-columns:1fr}.modal-backdrop{align-items:flex-end;padding:0}.modal{width:100%;max-height:92vh;border-radius:18px 18px 0 0}th,td{padding:12px}.app-footer{flex-direction:column;gap:4px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
