:root{--bg:#f5f7f7;--surface:#fff;--soft:#f8faf9;--ink:#172b29;--muted:#66736f;--line:#e4ebe8;--accent:#15836d;--accent-dark:#0f6353;--tint:#e8f5ef;--orange:#b2782d;--orange-bg:#fff5e5;--red:#be615c;--red-bg:#fcefeb;--blue:#547faa;--blue-bg:#edf3fa;--purple:#8370aa;--side:224px;--radius:14px;--shadow:0 12px 40px #213d3510;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--font-body:Inter, "Segoe UI", "Microsoft YaHei UI", "PingFang SC", sans-serif;--font-heading:var(--font-body);--font-size-body:13px;--font-size-small:12px;--page-title-size:26px;--panel-title-size:15px;--page-gap:22px;--panel-padding-x:20px;--panel-padding-y:18px;--panel-border:var(--line);--panel-head-border:var(--line);--control-height:36px;--control-height-small:28px;--control-radius:8px;--control-bg:var(--surface);--control-border:var(--line);--button-bg:var(--surface);--button-border:var(--line);--button-ink:var(--ink);--focus-ring:2px solid var(--accent);--label-line-height:1.4;--table-head-bg:var(--soft);--table-head-ink:#8b9792;--table-row-line:#edf2ef;--table-row-hover:#fbfcfb;--table-row-ink:var(--ink);--table-footer-ink:var(--muted);--table-footer-line:var(--line);--table-head-padding-y:11px;--table-row-padding-y:14px;--filter-width:160px;--filter-width-compact:120px;--filter-width-wide:230px}.portal{--focus-ring:2px solid var(--accent);--bg:#f4f0e7;--surface:#fffdf8;--soft:#f8f5ed;--ink:#363d34;--muted:#7b8071;--line:#e3ddcd;--accent:#aa5039;--accent-dark:#853b2a;--tint:#f6eae1;--orange:#9a7431;--orange-bg:#f7efd8;--red:#a74134;--red-bg:#fae9e2;--blue:#47777b;--blue-bg:#e9f1ee;--purple:#887455;--side:214px;--radius:6px;--shadow:none;--font-body:"Microsoft YaHei UI", "PingFang SC", "Segoe UI", sans-serif;--font-heading:"STKaiti", "KaiTi", "Songti SC", "SimSun", serif;--page-title-size:29px;--panel-title-size:20px;--panel-padding-x:23px;--panel-padding-y:19px;--panel-border:#e0d8c6;--panel-head-border:#eee7d8;--control-radius:4px;--control-bg:#fffef9;--control-border:#d9cfb8;--button-bg:var(--surface);--button-border:#dcd2bc;--button-ink:#596452;--table-head-bg:#f7f3e9;--table-head-ink:#8e8877;--table-row-line:#eee7d9;--table-row-hover:#faf6ec;--table-row-ink:#5c6655;--table-footer-ink:#918973;--table-footer-line:#e6ddc9;--table-head-padding-y:12px;--table-row-padding-y:15px}@media (width<=760px){:root{--panel-padding-x:19px;--panel-padding-y:17px}.portal{--page-title-size:26px;--panel-title-size:19px;--panel-padding-x:19px;--panel-padding-y:17px}}:root{font-family:var(--font-body);color:var(--ink);font-synthesis:none}*{box-sizing:border-box}body{background:var(--bg);font-size:var(--font-size-body);-webkit-font-smoothing:antialiased;margin:0;line-height:1.65}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.43}a{color:inherit;text-decoration:none}button,input,select,textarea{color:inherit}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:var(--focus-ring);outline-offset:3px}input:focus,input:focus-visible,select:focus,select:focus-visible,textarea:focus,textarea:focus-visible{border-color:var(--accent);outline:0}h1,h2,h3,h4,p{margin:0}h1{letter-spacing:-.8px;font-size:27px;font-weight:650;line-height:1.35}h2{font-size:var(--panel-title-size);letter-spacing:-.2px;font-weight:650}h3{font-size:14px;font-weight:650}small,.small{font-size:max(var(--minimum-font-size,0px), 12px)}.muted{color:var(--muted)}.positive{color:var(--accent)}.negative{color:var(--red)}.mono{font-family:Cascadia Code,Consolas,monospace;font-size:max(var(--minimum-font-size,0px), .93em);font-variant-numeric:tabular-nums}.eyebrow{font-size:max(var(--minimum-font-size,0px), 12px);letter-spacing:1.6px;text-transform:uppercase;color:var(--muted);font-weight:650}.icon{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle;flex:none;width:18px;height:18px}.icon.sm{width:14px;height:14px}.icon.lg{width:26px;height:26px}.row{align-items:center;gap:10px;display:flex}.between{justify-content:space-between}.wrap{flex-wrap:wrap}.grow{flex:1;min-width:0}.stack{flex-direction:column;gap:20px;display:flex}.mt{margin-top:20px}.mt-sm{margin-top:10px}.mb{margin-bottom:20px}.gap-sm{gap:6px}.grid{gap:20px;display:grid}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.grid.main-side{grid-template-columns:minmax(0,1fr) 304px}.grid.chart-side{grid-template-columns:minmax(0,1.85fr) minmax(280px,1fr)}.divider{background:var(--line);height:1px;margin:18px 0}.btn{min-height:var(--control-height);border:1px solid var(--button-border);border-radius:var(--control-radius);background:var(--button-bg);color:var(--button-ink);font-size:var(--font-size-small);white-space:nowrap;justify-content:center;align-items:center;gap:7px;padding:8px 13px;font-weight:600;transition:background .15s,border-color .15s;display:inline-flex}.btn:hover:not(:disabled){background:var(--soft);border-color:#b9d0c7}.btn:active:not(:disabled){background:#e3ebe7;border-color:#91b2a5}.btn.primary{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 3px 7px #15836d18}.btn.primary:hover:not(:disabled){background:var(--accent-dark)}.btn.primary:active:not(:disabled){background:#0a4c40;border-color:#0a4c40}.btn.soft{background:var(--tint);color:var(--accent-dark);border-color:#0000}.btn.soft:active:not(:disabled){background:#cfe8dc}.btn.ghost{color:var(--muted);background:0 0;border-color:#0000}.btn.ghost:active:not(:disabled){color:var(--ink);background:#e3ebe7}.btn.danger{background:var(--red-bg);color:var(--red);border-color:#0000}.btn.danger:active:not(:disabled){color:#8f3f3a;background:#f2d5d0}.btn.sm{min-height:29px;font-size:max(var(--minimum-font-size,0px), 12px);padding:5px 10px}.btn.square{min-width:35px;padding:8px}.text-btn{color:var(--accent);font-size:max(var(--minimum-font-size,0px), 12px);cursor:pointer;background:0 0;border:0;padding:1px 0}.badge{line-height:1.5;font-size:max(var(--minimum-font-size,0px), 12px);white-space:nowrap;color:var(--muted);background:#f0f3f2;border-radius:5px;align-items:center;gap:5px;padding:3px 7px;font-weight:550;display:inline-flex}.badge.green{background:var(--tint);color:var(--accent-dark)}.badge.amber{background:var(--orange-bg);color:var(--orange)}.badge.red{background:var(--red-bg);color:var(--red)}.badge.blue{background:var(--blue-bg);color:var(--blue)}.badge.purple{color:var(--purple);background:#f1edf7}.dot{background:currentColor;border-radius:50%;flex:none;width:5px;height:5px;display:inline-block}.pill{border-radius:20px}.panel{background:var(--surface);border:1px solid var(--panel-border);border-radius:var(--radius);overflow:hidden}.panel-head{padding:var(--panel-padding-y) var(--panel-padding-x);justify-content:space-between;align-items:center;gap:10px;display:flex}.panel-body{padding:0 var(--panel-padding-x) var(--panel-padding-y)}.panel-body.full{padding:var(--panel-padding-y) var(--panel-padding-x)}.notice{font-size:max(var(--minimum-font-size,0px), 12px);background:var(--tint);color:var(--accent-dark);border-radius:8px;align-items:flex-start;gap:9px;padding:11px 14px;line-height:1.8;display:flex}.notice .icon{width:16px;height:16px;margin-top:3px}.notice.amber{background:var(--orange-bg);color:var(--orange)}.notice.red{background:var(--red-bg);color:var(--red)}.notice.neutral{background:var(--soft);color:var(--muted);border:1px solid var(--line)}.avatar{color:#557e6a;background:#e9f1ec;border-radius:10px;flex:none;justify-content:center;align-items:center;width:35px;height:35px;font-size:14px;font-weight:650;display:inline-flex}.avatar.c1{color:#5f80a4;background:#e9eff7}.avatar.c2{color:#9e8655;background:#f2eddf}.avatar.c3{color:#9482b0;background:#eeebf6}.avatar.lg{border-radius:12px;width:45px;height:45px;font-size:18px}.brand{letter-spacing:-.7px;align-items:center;gap:10px;font-size:19px;font-weight:750;display:flex}.brand-symbol{background:var(--accent);color:#fff;border-radius:10px;place-items:center;width:33px;height:33px;display:grid;box-shadow:0 3px 8px #15836d24}.brand-symbol .icon{width:24px;height:24px}.brand small{font-size:max(var(--minimum-font-size,0px), 12px);letter-spacing:1.6px;color:var(--muted);margin-top:-4px;font-weight:500;display:block}.sidebar{width:var(--side);z-index:30;border-right:1px solid var(--line);background:#fff;flex-direction:column;padding:26px 16px 17px;display:flex;position:fixed;top:0;bottom:0;left:0}.sidebar .brand{padding:0 10px 23px}.space-chip{border:1px solid var(--line);background:var(--soft);font-size:max(var(--minimum-font-size,0px), 12px);border-radius:8px;justify-content:space-between;align-items:center;margin:0 4px 19px;padding:8px 10px;display:flex}.nav-label{color:#95a19c;font-size:max(var(--minimum-font-size,0px), 12px);letter-spacing:1px;margin:11px 0 7px;padding:0 13px}.nav-item{min-height:37px;font-size:max(var(--minimum-font-size,0px), 12px);color:#75847e;border-radius:7px;align-items:center;gap:11px;margin:3px 0;padding:9px 13px;display:flex;position:relative}.nav-item:hover{background:var(--soft);color:var(--ink)}.nav-item.active{background:var(--tint);color:var(--accent-dark);font-weight:650}.nav-item.active:before{content:"";background:var(--accent);border-radius:0 3px 3px 0;width:3px;height:18px;position:absolute;left:-16px}.nav-count{font-size:max(var(--minimum-font-size,0px), 12px);color:var(--muted);background:#eef2f0;border-radius:4px;margin-left:auto;padding:0 5px}.sidebar nav{min-height:0;overflow:auto}.sidebar-foot{margin-top:auto;padding:19px 8px 0}.side-help{background:var(--soft);border:1px solid var(--line);font-size:max(var(--minimum-font-size,0px), 12px);color:var(--muted);border-radius:10px;margin-bottom:15px;padding:12px}.side-help strong{color:var(--ink);font-size:max(var(--minimum-font-size,0px), 12px);margin-bottom:5px;display:block}.account-chip{border-top:1px solid var(--line);padding-top:13px}.account-chip .avatar{width:30px;height:30px;font-size:max(var(--minimum-font-size,0px), 12px)}.layout{margin-left:var(--side);min-height:100vh}.topbar{border-bottom:1px solid var(--line);z-index:20;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffd9;justify-content:space-between;align-items:center;gap:14px;height:65px;padding:0 30px;display:flex;position:sticky;top:0}.breadcrumb{font-size:max(var(--minimum-font-size,0px), 12px);color:var(--muted)}.breadcrumb span{color:var(--ink);margin-left:12px}.top-actions{align-items:center;gap:13px;display:flex}.top-actions .icon{width:17px;height:17px}.content{max-width:1740px;margin:auto;padding:29px 30px 26px}.page-head{justify-content:space-between;align-items:center;gap:18px;margin-bottom:25px;display:flex}.page-head p{font-size:max(var(--minimum-font-size,0px), 12px);color:var(--muted);margin-top:7px}.page-head .eyebrow{margin-bottom:8px}.footer{color:#94a29b;font-size:max(var(--minimum-font-size,0px), 12px);justify-content:space-between;gap:15px;padding:20px 1px 0;display:flex}.stat{border:1px solid var(--line);border-radius:var(--radius);background:#fff;min-height:139px;padding:18px 20px 16px;position:relative;overflow:hidden}.stat-label{font-size:max(var(--minimum-font-size,0px), 12px);color:var(--muted)}.stat-value{letter-spacing:-1px;font-variant-numeric:tabular-nums;margin-top:6px;font-size:32px;font-weight:650;line-height:1.5}.stat-value small{letter-spacing:0;color:var(--muted);font-size:16px;font-weight:400}.stat-foot{font-size:max(var(--minimum-font-size,0px), 12px);color:var(--muted);margin-top:7px}.stat-icon{border:1px solid var(--line);width:32px;height:32px;color:var(--accent);background:var(--soft);border-radius:9px;place-items:center;display:grid;position:absolute;top:18px;right:20px}.stat.accent{color:#fff;background:#176d59;border-color:#176d59}.stat.accent .stat-icon{color:#d5f5e5;background:#ffffff0d;border-color:#ffffff1f}.quota-bars{gap:5px;margin-top:13px;display:flex}.quota-bars i{background:#ffffff25;border-radius:3px;flex:1;height:4px}.quota-bars i.on{background:#a5eac7}.spark{fill:none;width:78px;height:24px;stroke:var(--accent);stroke-width:2px;position:absolute;bottom:18px;right:20px}.chart{width:100%;height:207px;display:block}.chart text{fill:#8b9b93;font-size:max(var(--minimum-font-size,0px), 12px);font-family:inherit}.chart-grid{stroke:#edf1ef;stroke-width:1px}.chart-line{fill:none;stroke:var(--accent);stroke-width:2.5px;stroke-linejoin:round}.chart-second{fill:none;stroke:#accbc0;stroke-width:2px;stroke-dasharray:4 5}.legend{font-size:max(var(--minimum-font-size,0px), 12px);color:var(--muted);gap:18px;display:flex}.legend i{background:var(--accent);border-radius:2px;width:7px;height:7px;margin-right:6px;display:inline-block}.legend i.alt{background:#b6d2c6}.service-row{border-bottom:1px solid #eff3f1;align-items:center;gap:10px;padding:12px 0;display:flex}.service-row:last-child{border:0}.service-icon{background:var(--soft);border:1px solid var(--line);width:33px;height:33px;color:var(--muted);border-radius:8px;place-items:center;display:grid}.service-row .name{font-size:max(var(--minimum-font-size,0px), 12px)}.service-row small{font-size:max(var(--minimum-font-size,0px), 12px);color:var(--muted)}.toolbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:17px;display:flex}.tabs{border:1px solid var(--line);background:#eef3f0;border-radius:8px;flex-wrap:wrap;align-items:center;gap:4px;width:max-content;max-width:100%;padding:4px;display:flex}.tab{font-size:max(var(--minimum-font-size,0px), 12px);color:var(--muted);background:0 0;border:0;border-radius:5px;padding:5px 12px}.tab.active{color:var(--ink);background:#fff;font-weight:600;box-shadow:0 1px 4px #233e3510}.field-inline{align-items:center;gap:8px;display:flex}.search{border:1px solid var(--line);color:var(--muted);background:#fff;border-radius:8px;align-items:center;gap:8px;width:235px;padding:8px 11px;display:flex}.search input{width:100%;font-size:max(var(--minimum-font-size,0px), 12px);background:0 0;border:0;outline:0;min-width:0}.search .icon{width:15px;height:15px}.select{min-height:var(--control-height);border:1px solid var(--control-border);background:var(--control-bg);border-radius:var(--control-radius);font-size:max(var(--minimum-font-size,0px), 12px);max-width:100%;padding:6px 10px}.table-wrap{overflow:auto}table{border-collapse:collapse;text-align:left;width:100%;font-size:max(var(--minimum-font-size,0px), 12px);white-space:nowrap}thead{background:var(--table-head-bg);color:var(--table-head-ink);font-size:var(--font-size-small);font-weight:400}th{padding:var(--table-head-padding-y) var(--panel-padding-x);border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;font-weight:500}td{padding:var(--table-row-padding-y) var(--panel-padding-x);border-bottom:1px solid var(--table-row-line);vertical-align:middle;text-align:left}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:var(--table-row-hover)}td .sub{color:var(--muted);font-size:max(var(--minimum-font-size,0px), 12px);margin-top:3px;display:block}.table-footer{padding:var(--space-3) var(--panel-padding-x);color:var(--table-footer-ink);font-size:var(--font-size-small);border-top:1px solid var(--table-footer-line);justify-content:space-between;align-items:center;display:flex}.empty{text-align:center;color:var(--muted);padding:42px 22px}.empty .icon{opacity:.55;width:32px;height:32px;margin-bottom:10px}.empty h3{color:var(--ink);margin-bottom:5px}.detail-row{font-size:max(var(--minimum-font-size,0px), 12px);justify-content:space-between;align-items:flex-start;gap:15px;padding:9px 0;display:flex}.detail-row>span:first-child{color:var(--muted)}.detail-row>span:last-child{text-align:right;word-break:break-word}.meter{background:#edf2ee;border-radius:6px;height:5px;margin-top:8px;overflow:hidden}.meter span{background:#91bfa7;border-radius:6px;height:100%;display:block}.event-list{padding:0 21px 10px}.event{font-size:max(var(--minimum-font-size,0px), 12px);border-bottom:1px solid #eef2ef;gap:12px;padding:11px 0;display:flex}.event:last-child{border-bottom:0}.event-time{color:#8f9e96;font-family:Consolas,monospace;font-size:max(var(--minimum-font-size,0px), 12px);min-width:55px}.event-mark{background:#9cbbac;border-radius:50%;flex:none;width:6px;height:6px;margin-top:6px}.event-mark.amber{background:#d2b17d}.event-mark.red{background:#d5968e}.event-body{flex:1;min-width:0}.device-header{border-bottom:1px solid var(--line);background:#fafcfb;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.device-card{margin-bottom:19px}.device-roles{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;padding:16px 20px;display:grid}.role-tile{border:1px solid var(--line);background:#fff;border-radius:10px;padding:15px}.plan-step{border:1px solid var(--line);background:#fff;border-radius:11px;align-items:center;gap:14px;margin-bottom:11px;padding:17px;display:flex}.step-num{background:var(--soft);border:1px solid var(--line);width:29px;height:29px;font-size:max(var(--minimum-font-size,0px), 12px);color:var(--muted);border-radius:8px;flex:none;place-items:center;display:grid}.check{accent-color:var(--accent);cursor:pointer;width:15px;height:15px}.plugin-card{flex-direction:column;gap:16px;padding:22px;display:flex}.plugin-glyph{background:var(--tint);width:44px;height:44px;color:var(--accent);border-radius:12px;place-items:center;display:grid}.plugin-glyph .icon{width:24px;height:24px}.plugin-desc{font-size:max(var(--minimum-font-size,0px), 12px);color:var(--muted);min-height:40px;line-height:1.8}.plugin-foot{border-top:1px solid var(--line);margin-top:auto;padding-top:14px}.flow{align-items:flex-start;gap:0;margin:23px 0;display:flex}.flow-step{text-align:center;font-size:max(var(--minimum-font-size,0px), 12px);color:var(--muted);flex:1;position:relative}.flow-step:before{content:"";background:var(--line);height:2px;position:absolute;top:14px;left:0;right:0}.flow-step:first-child:before{left:50%}.flow-step:last-child:before{right:50%}.flow-circle{z-index:1;border:1px solid var(--line);width:30px;height:30px;font-size:max(var(--minimum-font-size,0px), 12px);background:#fff;border-radius:50%;place-items:center;margin:0 auto 9px;display:grid;position:relative}.flow-step.done .flow-circle{background:var(--tint);color:var(--accent);border-color:#c5e4d7}.flow-step.active .flow-circle{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 0 0 4px #e5f2eb}.flow-step.active{color:var(--accent);font-weight:650}.timeline{border-left:1px solid var(--line);margin:5px 0 0 6px;padding-left:21px}.timeline-item{font-size:max(var(--minimum-font-size,0px), 12px);padding:0 0 19px;position:relative}.timeline-item:before{content:"";background:#a4c6b1;border-radius:50%;width:7px;height:7px;position:absolute;top:5px;left:-25px;box-shadow:0 0 0 3px #fff}.timeline-item small{color:var(--muted);margin-top:4px;display:block}.balance-number{letter-spacing:-.8px;font-variant-numeric:tabular-nums;font-size:26px;font-weight:650}.coin{color:#b39655;background:#fcf3d9;border:1px solid #e5d4aa;border-radius:50%;place-items:center;width:30px;height:30px;display:grid}.coin.silver{color:#8b9d96;background:#edf2f1;border-color:#d4dedd}.form-field{flex-direction:column;gap:7px;margin-bottom:17px;display:flex}.form-field label{font-size:max(var(--minimum-font-size,0px), 12px);font-weight:600}.form-field input,.form-field select,.form-field textarea{border:1px solid var(--control-border);border-radius:var(--control-radius);background:var(--control-bg);width:100%;font-size:var(--font-size-small);min-height:40px;padding:10px 12px}.form-field textarea{resize:vertical;min-height:85px}.form-field small{font-size:max(var(--minimum-font-size,0px), 12px);color:var(--muted)}.form-error{color:var(--red);font-size:max(var(--minimum-font-size,0px), 12px);min-height:16px;margin-bottom:12px}.form-grid{grid-template-columns:1fr 1fr;gap:15px;display:grid}.overlay{z-index:80;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#162e284d;justify-content:center;align-items:center;padding:25px;animation:.15s fade-in;display:flex;position:fixed;inset:0}.dialog{background:#fff;border:1px solid #e1e9e3;border-radius:16px;width:520px;max-width:100%;max-height:90vh;animation:.2s rise-in;overflow:auto;box-shadow:0 22px 75px #15372f25}.dialog.wide{width:740px}.dialog-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:10px;padding:23px 24px 18px;display:flex}.dialog-head h2{font-size:18px}.dialog-head p{font-size:max(var(--minimum-font-size,0px), 12px);color:var(--muted);margin-top:5px}.dialog-body{padding:22px 24px}.dialog-foot{border-top:1px solid var(--line);background:#fafcfb;justify-content:flex-end;gap:9px;padding:15px 24px;display:flex}.drawer-overlay{justify-content:flex-end;padding:0}.drawer{background:#fff;width:465px;max-width:100%;height:100vh;animation:.2s slide-in;overflow:auto;box-shadow:-15px 0 50px #173d2520}.drawer .dialog-head{z-index:1;background:#fff;position:sticky;top:0}.toast-zone{z-index:100;flex-direction:column;gap:10px;max-width:430px;display:flex;position:fixed;bottom:24px;right:25px}.toast{color:#e9f7ef;font-size:max(var(--minimum-font-size,0px), 12px);background:#193e32;border:1px solid #315b48;border-radius:10px;align-items:flex-start;gap:10px;padding:13px 17px;animation:.2s rise-in;display:flex;box-shadow:0 7px 30px #153b3520}.toast .icon{margin-top:1px}.kbd{color:#9baa9f;font-size:max(var(--minimum-font-size,0px), 12px);background:#f1f4f2;border:1px solid #e5ebe7;border-radius:4px;padding:0 5px}.menu-toggle{display:none}.settings-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;padding:18px 0;display:flex}.settings-row:last-child{border-bottom:0}.settings-row p{font-size:max(var(--minimum-font-size,0px), 12px);color:var(--muted);margin-top:3px}.toggle{background:#dae3dd;border:0;border-radius:20px;align-items:center;width:32px;height:19px;padding:3px;display:flex}.toggle:after{content:"";background:#fff;border-radius:50%;width:13px;height:13px;box-shadow:0 1px 3px #183d241c}.toggle.on{background:var(--accent);justify-content:flex-end}.sub-hero{color:#fff;background:#176d59;border-radius:14px;padding:28px;position:relative;overflow:hidden}.sub-hero:after{content:"";border:1px solid #ffffff15;border-radius:50%;width:250px;height:250px;position:absolute;top:-110px;right:-90px;box-shadow:0 0 0 28px #ffffff05,0 0 0 58px #ffffff04}.sub-hero p{color:#b5ddca;font-size:max(var(--minimum-font-size,0px), 12px)}.sub-hero h2{color:#f4fff9;margin:9px 0;font-size:23px}.sub-hero .badge{color:#e3f9e9;background:#ffffff15}.sub-hero .row{z-index:1;position:relative}.key-code{letter-spacing:1px;color:var(--accent-dark);word-break:break-all;background:#f4f8f5;border:1px dashed #bfd5c6;border-radius:8px;margin:12px 0;padding:13px;font-family:Consolas,monospace}.portal{--side:216px}.portal .topbar{height:70px}.portal .content{max-width:1320px;padding-top:35px}.portal .role-tile{padding:21px}.portal-role-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.portal-hero{background:linear-gradient(115deg,#e8f3eb,#f4f8ee);border:1px solid #deeadf;border-radius:14px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;padding:25px 27px;display:flex}.portal-hero h2{letter-spacing:-.7px;font-size:21px;font-weight:600}.portal-hero p{font-size:max(var(--minimum-font-size,0px), 12px);color:#799282;margin-top:5px}.portal-orbit{flex:none;place-items:center;width:93px;height:75px;display:grid;position:relative}.portal-orbit:before,.portal-orbit:after{content:"";border:1px solid #bed7c5;border-radius:50%;position:absolute;inset:5px;transform:rotate(-25deg)}.portal-orbit:after{inset:15px -8px;transform:rotate(30deg)}.portal-orbit .brand-symbol{z-index:1;width:39px;height:39px;position:relative}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.hint-block{font-size:max(var(--minimum-font-size,0px), 12px);color:var(--muted);line-height:1.9}.token-row{flex-wrap:wrap;gap:12px;margin-top:15px;display:flex}.swatch{border:1px solid #00000007;border-radius:8px;width:30px;height:30px}.code-block{font-family:Consolas,monospace;font-size:max(var(--minimum-font-size,0px), 12px);border:1px solid var(--line);white-space:pre-wrap;background:#f6f9f6;border-radius:8px;padding:14px;line-height:1.8;overflow:auto}.mobile-overlay{display:none}.warning-strip{margin-bottom:18px}.inline-tags{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes rise-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes slide-in{0%{opacity:.6;transform:translate(30px)}to{opacity:1;transform:none}}@media (width>=1580px){.content{padding-left:40px;padding-right:40px}.grid.main-side{grid-template-columns:minmax(0,1fr) 335px}.chart{height:228px}}@media (width<=1180px){:root{--side:196px}.sidebar{padding-left:12px;padding-right:12px}.brand{font-size:17px}.nav-item{padding:9px 11px}.nav-item.active:before{left:-12px}.topbar{padding:0 22px}.content{padding:24px 22px}.grid.main-side{grid-template-columns:minmax(0,1fr) 268px}.grid{gap:15px}.stat{padding:16px}.stat-icon{right:15px}.stat-value{font-size:28px}.panel-head{padding:17px}.panel-body{padding:0 17px 17px}.panel-body.full{padding:17px}.portal-role-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.top-actions{gap:8px}.topbar .hide-medium{display:none}.device-roles{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.chart-side{grid-template-columns:minmax(0,1.6fr) minmax(250px,1fr)}}@media (width<=1000px){.grid.main-side{grid-template-columns:1fr}.grid.four,.grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.chart-side{grid-template-columns:1fr}.service-row{padding:10px 0}.toolbar{flex-wrap:wrap}.page-head{align-items:flex-start}.page-head>.row{flex-wrap:wrap;justify-content:flex-end}.plan-step{flex-wrap:wrap;gap:9px}.stat{min-height:124px}.side-help{display:none}.sidebar-foot{padding-top:12px}}@media (width<=760px){:root,.portal{--side:0px}.sidebar{z-index:70;width:224px;transition:transform .2s;transform:translate(-100%);top:0!important}.sidebar.open{transform:none}.mobile-overlay.show{z-index:60;background:#172c2355;display:block;position:fixed;inset:0}.menu-toggle{display:inline-flex}.topbar{padding:0 17px;height:58px!important}.top-actions{gap:7px}.top-actions .hide-small{display:none}.content,.portal .content{padding:22px 17px}.breadcrumb{font-size:max(var(--minimum-font-size,0px), 12px)}.breadcrumb span{margin-left:6px}.page-head{flex-direction:column;gap:14px;margin-bottom:20px}.page-head>.row{justify-content:flex-start}.page-head h1{font-size:24px}.grid.two,.grid.three{grid-template-columns:1fr}.grid.four{gap:11px}.stat{min-height:125px;padding:14px}.stat-value{font-size:27px}.stat-icon{display:none}.stat-foot{font-size:max(var(--minimum-font-size,0px), 12px)}.spark{width:48px;right:15px}.toolbar>.row{flex-wrap:wrap}.search{width:100%;max-width:280px}.device-roles{grid-template-columns:1fr;padding:14px}.portal-role-grid{grid-template-columns:1fr}.portal-hero{padding:21px}.portal-hero h2{font-size:18px}.portal-orbit{width:60px}.portal-hero>.btn{display:none}.footer{flex-direction:column;gap:3px}.hide-mobile{display:none}.table-wrap.mobile-cards table,.table-wrap.mobile-cards tbody{width:100%;display:block}.table-wrap.mobile-cards thead{display:none}.table-wrap.mobile-cards tr{border-bottom:1px solid var(--line);white-space:normal;flex-direction:column;gap:3px;padding:12px 16px;display:flex}.table-wrap.mobile-cards td{border:0;justify-content:space-between;align-items:center;gap:12px;padding:3px 0;display:flex}.table-wrap.mobile-cards td:before{content:attr(data-label);font-size:max(var(--minimum-font-size,0px), 12px);color:var(--muted)}.table-wrap.mobile-cards td .sub{margin-top:1px}.table-wrap.mobile-cards td:first-child{padding-bottom:8px}.table-wrap.mobile-cards td:first-child:before{display:none}.dialog-body,.dialog-head{padding:20px}.dialog-foot{padding:15px 20px}.overlay{padding:15px}.drawer-overlay{padding:0}.form-grid{grid-template-columns:1fr;gap:0}.form-field{margin-bottom:15px}.toast-zone{max-width:none;bottom:17px;left:17px;right:17px}.flow-step{font-size:max(var(--minimum-font-size,0px), 12px)}.settings-row{align-items:flex-start}.plan-step .select{width:112px}.row.wrap>.select{flex:1}.sub-hero{padding:23px}.sub-hero h2{font-size:20px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.page-head{margin-bottom:var(--page-gap)}.page-head:empty{display:none}.page-head h1{font-size:var(--page-title-size)}.page-head p:empty,.eyebrow:empty{display:none}.footer{min-height:0;padding-top:14px}.panel-head:empty{display:none}.sidebar-foot .account-chip{border-top:1px solid var(--line)}.brand small{margin-top:1px}.brand-symbol{box-shadow:none}.stat.accent{color:var(--ink);border-color:var(--line);background:#fff}.stat.accent .stat-label,.stat.accent .stat-foot,.stat.accent small{color:var(--muted)}.stat.accent .stat-icon{background:var(--soft);color:var(--accent);border-color:var(--line)}.stat-foot:empty{display:none}.toast-zone{max-width:370px}.compact-info{font-size:max(var(--minimum-font-size,0px), 12px);color:var(--muted)}.actions-line{flex-wrap:wrap;gap:8px;display:flex}.settings-grid{grid-template-columns:1fr 1fr;gap:24px;display:grid}.caption{font-size:max(var(--minimum-font-size,0px), 12px);color:var(--muted);margin-top:6px}.field-value{font-variant-numeric:tabular-nums;font-size:24px;font-weight:600}.content .panel h2{font-size:var(--panel-title-size)}.ledger-summary .stat{min-height:108px}.ledger-heading{align-items:center;gap:10px;display:flex}.freshness{font-size:max(var(--minimum-font-size,0px), 12px);color:var(--muted);align-items:center;gap:6px;display:inline-flex}.data-zero{color:var(--muted)}.subscription-grid{grid-template-columns:1.15fr 1fr;gap:22px;display:grid}.subscription-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:26px}.subscription-card h2{margin:8px 0;font-size:24px!important}.subscription-meta{grid-template-columns:1fr 1fr;gap:24px;margin-top:24px;display:grid}.subscription-meta small{color:var(--muted);margin-bottom:6px;display:block}.subscription-meta strong{font-size:17px;font-weight:600}.included-services{border-top:1px solid var(--line);font-size:max(var(--minimum-font-size,0px), 12px);color:var(--muted);align-items:center;gap:20px;margin-top:22px;padding-top:20px;display:flex}.included-services span{align-items:center;gap:6px;display:flex}.server .content{padding-top:24px}.server .topbar{height:54px}.server .stat{min-height:119px}.server .sidebar{padding-top:22px}.server .side-help{display:none}.server .chart{height:185px}.server .stat.accent{color:#fff;background:#165c4d}.server .stat.accent .stat-label,.server .stat.accent .stat-foot{color:#d0e3d9}.server .stat.accent .stat-icon{color:#d0e3d9;background:0 0;border-color:#ffffff25}.server .footer{display:none}.portal{font-family:var(--font-body);color:var(--ink);background:#f4f0e7}.portal h1,.portal h2,.portal .realm-brand,.portal .journey-title,.portal .nav-item span,.portal .portal-poem{font-family:var(--font-heading)}.portal .sidebar{background:#eee9dc;border-right:1px solid #dfd6c3;padding:30px 18px 20px}.portal .sidebar .brand,.portal .space-chip{display:none}.realm-brand{color:#294b41;align-items:center;gap:12px;padding:0 10px 25px;display:flex}.realm-seal{color:#fff6e2;background:#a14d37;border-radius:3px 4px 3px 5px;place-items:center;width:33px;height:41px;font-family:KaiTi,STKaiti,serif;font-size:24px;line-height:1;display:grid;box-shadow:inset 0 0 0 3px #a14d37,inset 0 0 0 4px #efd8ba}.realm-brand strong{letter-spacing:3px;font-size:24px;font-weight:500;display:block}.realm-brand small{font-family:Georgia,serif;font-size:max(var(--minimum-font-size,0px), 12px);letter-spacing:1.8px;color:#90917a;margin-top:5px;display:block}.portal .nav-label{font-size:max(var(--minimum-font-size,0px), 12px);color:#938b77;letter-spacing:2px;margin:18px 0 10px}.portal .nav-item{color:#676c5e;border-radius:4px;min-height:43px;margin:5px 0;padding:10px 13px;font-size:15px}.portal .nav-item.active{color:#9b4833;background:#fffaf0;font-weight:500}.portal .nav-item.active:before{background:#a34b35;width:3px;height:18px;left:-18px}.portal .nav-item:hover{background:#f7f1e4}.portal .nav-count{color:#837658;background:#e7e0cf}.portal .sidebar-foot{padding-left:9px;padding-right:9px}.portal .side-help{display:none}.portal .account-chip{border-color:#ded5c2}.portal .account-chip .avatar{color:#637058;background:#dedeca;border-radius:50%}.portal .account-chip strong{color:#59624f;font-weight:500}.portal .topbar{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-bottom:1px solid #e4ddcd;height:64px;padding:0 34px}.portal .breadcrumb{color:#8b8574;font-size:max(var(--minimum-font-size,0px), 12px)}.portal .breadcrumb span{color:#616b57}.portal .top-actions{gap:14px}.portal .content{max-width:1480px;padding:30px 34px}.portal .page-head h1{font-size:var(--page-title-size);letter-spacing:2px;font-weight:500}.portal .btn{background:var(--button-bg);border-color:var(--button-border);border-radius:var(--control-radius);color:var(--button-ink);box-shadow:none;font-weight:400}.portal .btn.primary{color:#fff7e8;background:#a9533c;border-color:#a9533c}.portal .btn.primary:hover{background:#8f412d}.portal .btn.ghost{background:0 0;border-color:#0000}.portal .text-btn{color:#996043}.portal .panel{border-radius:var(--radius);border-color:var(--panel-border);background:var(--surface)}.portal .panel-head{border-bottom:1px solid var(--panel-head-border);padding:var(--panel-padding-y) var(--panel-padding-x)}.portal .panel-head h2{font-size:var(--panel-title-size);letter-spacing:1px;font-weight:500}.portal .detail-row{font-size:max(var(--minimum-font-size,0px), 12px);padding:10px 0}.portal .badge{font-size:max(var(--minimum-font-size,0px), 12px);border-radius:3px;font-weight:400}.portal .badge.amber{color:#97712e;background:#f7edd6}.portal .badge.red{color:#a14c38;background:#f7e7df}.portal .badge.blue{color:#497577;background:#e9efeb}.portal .avatar{color:#5f745a;background:#e3e6d3;border:1px solid #d5dbc6;border-radius:50%;width:43px;height:43px;font-family:STKaiti,KaiTi,serif;font-size:21px}.portal .avatar.c1{color:#507a74;background:#e5ede7;border-color:#d1ded3}.portal .avatar.c2{color:#998448;background:#f1e6ce;border-color:#e3d7b8}.portal .avatar.c3{color:#977261;background:#eee2d9;border-color:#e4d2c3}.portal .avatar.lg{width:54px;height:54px;font-size:25px}.portal .tabs{background:0 0;border:1px solid #ddd3bf;border-radius:4px;gap:0;padding:3px}.portal .tab{font-size:max(var(--minimum-font-size,0px), 12px);color:#807b68;border-radius:2px;padding:7px 15px}.portal .tab.active{box-shadow:none;color:#975238;background:#fffaf1;font-weight:500}.portal .select{color:#686955;font-size:max(var(--minimum-font-size,0px), 12px);background:#fffdf7;border-color:#ddd2ba;border-radius:4px}.portal .role-tile{background:#fffdf8;border-color:#e0d8c5;border-radius:5px;padding:23px;position:relative}.portal .role-tile:before{content:"";background:#c9ad76;width:3px;height:26px;position:absolute;top:24px;left:0}.portal .role-tile .row strong{letter-spacing:1px;font-family:STKaiti,KaiTi,serif;font-size:20px;font-weight:500}.portal .role-tile .sub{font-size:max(var(--minimum-font-size,0px), 12px);color:#8c8b76;margin-top:4px;display:block}.portal .role-tile .btn{min-width:96px;margin-top:14px}.portal .portal-role-grid{gap:20px}.portal .role-tile .divider{margin:18px 0 8px}.portal .portal-hero{display:none}.portal .journey-banner{background:#e7ebdc;border:1px solid #d7d4bb;border-radius:6px;align-items:center;min-height:242px;margin-bottom:25px;padding:34px 36px;display:flex;position:relative;overflow:hidden}.journey-banner .journey-greeting{z-index:2;max-width:58%;position:relative}.journey-kicker{font-size:max(var(--minimum-font-size,0px), 12px);letter-spacing:4px;color:#808a71;margin-bottom:13px;display:block}.journey-title{letter-spacing:3px;color:#344f40;font-size:38px;font-weight:500;line-height:1.45}.journey-subline{font-size:max(var(--minimum-font-size,0px), 12px);color:#6a7c62;margin:13px 0 24px}.journey-art{pointer-events:none;width:55%;height:100%;position:absolute;bottom:0;right:0}.journey-art svg{width:100%;height:100%;display:block}.journey-stamp{color:#9d7c52;font-family:KaiTi,serif;font-size:max(var(--minimum-font-size,0px), 12px);letter-spacing:4px;writing-mode:vertical-rl;z-index:2;border:1px solid #b8a586;padding:7px 5px;position:absolute;top:26px;right:28px}.journey-summary{background:#fffdf8;border:1px solid #e0d7c4;border-radius:5px;grid-template-columns:repeat(4,1fr);margin-bottom:26px;display:grid}.journey-summary .realm-stat{padding:23px 24px;position:relative}.journey-summary .realm-stat+.realm-stat:before{content:"";background:#e9e1d0;width:1px;position:absolute;top:24px;bottom:24px;left:0}.realm-stat .stat-label{color:#929078;font-size:max(var(--minimum-font-size,0px), 12px)}.realm-stat .field-value{letter-spacing:1px;color:#495c46;margin-top:8px;font-family:Georgia,STKaiti,KaiTi,serif;font-size:29px;font-weight:400}.realm-stat .field-value small{font-family:Microsoft YaHei UI,sans-serif;font-size:max(var(--minimum-font-size,0px), 12px);letter-spacing:0;color:#929078;margin-left:8px}.journey-home-grid{grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:22px;display:grid}.companion-list{padding:0 22px 8px}.companion-row{border-bottom:1px solid #eee7d8;align-items:center;gap:13px;padding:15px 0;display:flex}.companion-row:last-child{border-bottom:0}.companion-name{letter-spacing:1px;color:#4a5744;font-family:KaiTi,STKaiti,serif;font-size:20px}.companion-meta{font-size:max(var(--minimum-font-size,0px), 12px);color:#93907e;margin-top:2px}.companion-row .badge{margin-left:auto}.realm-subscription{padding:23px}.realm-subscription h3{color:#796446;letter-spacing:2px;font-family:KaiTi,STKaiti,serif;font-size:25px;font-weight:500}.realm-subscription .sub-rule{background:#e8dfcc;height:1px;margin:22px 0 14px}.realm-subscription .detail-row{padding:8px 0}.realm-subscription .btn{width:100%;margin-top:19px}.journey-memo{color:#867756;font-size:max(var(--minimum-font-size,0px), 12px);background:#f3eada;border:1px solid #e3d9c1;border-radius:5px;align-items:center;gap:16px;margin-top:20px;padding:18px 23px;display:flex}.journey-memo .icon{color:#a7874b;width:23px;height:23px}.journey-memo strong{color:#796141;font-weight:500}.portal .subscription-card{background:#f0ebdc;border:1px solid #ddd2b7;padding:31px}.portal .subscription-card h2{letter-spacing:3px;color:#7c6744;font-weight:500;font-size:30px!important}.portal .included-services{color:#827659;border-color:#ddd2b7}.portal .stat{background:#fffdf8;border-radius:5px;min-height:120px;padding:20px 23px}.portal .stat-icon{display:none}.portal .stat-value{color:#5e704f;font-family:Georgia,KaiTi,serif;font-size:29px;font-weight:400}.portal .stat.accent{background:#fffdf8;border-color:#dcd5c1}.portal .stat.accent .stat-label,.portal .stat.accent .stat-foot{color:#8a8775}.portal th{background:var(--table-head-bg);color:var(--table-head-ink);padding:var(--table-head-padding-y) var(--panel-padding-x);border-color:#e7decb}.portal td{padding:var(--table-row-padding-y) var(--panel-padding-x);border-color:var(--table-row-line);color:var(--table-row-ink)}.portal .table-footer{border-color:var(--table-footer-line);color:var(--table-footer-ink)}.portal .notice{color:#88734f;font-size:max(var(--minimum-font-size,0px), 12px);background:#f4ecdd;border-color:#e3d8c0;border-radius:4px}.portal .dialog,.portal .drawer{background:#fffdf6;border-color:#d8cbae;border-radius:6px;box-shadow:0 15px 70px #353c2e20}.portal .dialog-head h2{letter-spacing:1px;font-size:23px;font-weight:500}.portal .dialog-foot{background:#f6f0e3;border-color:#e4d9c1}.portal .form-field input,.portal .form-field select,.portal .form-field textarea{background:var(--control-bg);border-color:var(--control-border);border-radius:var(--control-radius);font-size:var(--font-size-body);color:#4e5948}.portal .form-field label{font-size:max(var(--minimum-font-size,0px), 12px);color:#7c7967;font-weight:400}.portal .toast{color:#f9f5e6;background:#435946;border-color:#435946;border-radius:5px}.portal .realm-footer{font-size:max(var(--minimum-font-size,0px), 12px);letter-spacing:3px;text-align:center;color:#b0a58b;padding-top:26px}.realm-footer span:before,.realm-footer span:after{content:"";vertical-align:middle;background:#cfc4ab;width:25px;height:1px;margin:0 15px;display:inline-block}.portal .freshness{font-size:max(var(--minimum-font-size,0px), 12px);color:#99917c}.portal .chart-side{gap:22px}.auth-page{min-height:100vh}.auth-masthead{border-bottom:1px solid #e1d7c1;justify-content:space-between;align-items:center;max-width:1600px;margin:auto;padding:27px 42px;display:flex}.auth-masthead .realm-brand{padding:0}.auth-masthead .realm-brand strong{font-size:22px}.auth-nav{align-items:center;gap:25px;display:flex}.auth-nav a{font-size:max(var(--minimum-font-size,0px), 12px);color:#918369}.auth-nav a[aria-current]{color:#a3513b;border-bottom:1px solid #a3513b;padding-bottom:5px}.auth-main{grid-template-columns:1.1fr 1fr;align-items:center;gap:75px;max-width:1100px;margin:58px auto;padding:0 25px;display:grid}.auth-landscape{background:#e8e9db;border:1px solid #dcd8bd;border-radius:6px;flex-direction:column;justify-content:flex-start;min-height:550px;padding:45px 28px;display:flex;position:relative;overflow:hidden}.auth-landscape .journey-art{width:140%;height:70%;bottom:0;right:-18%}.auth-landscape .portal-poem{letter-spacing:7px;z-index:1;color:#50644d;font-size:36px;font-weight:400;line-height:1.8}.auth-landscape .journey-kicker{z-index:1;position:relative}.auth-landscape .journey-stamp{top:45px}.auth-card{padding:0 6px}.auth-card h1{letter-spacing:3px;margin-bottom:28px;font-size:30px;font-weight:500}.auth-card .form-field{margin-bottom:20px}.auth-card .form-field input{min-height:44px}.auth-card #auth-form>.actions-line>.btn.primary{width:100%;height:42px;margin-bottom:8px}.auth-card .auth-links{font-size:max(var(--minimum-font-size,0px), 12px);color:#8c8069;justify-content:space-between;gap:15px;margin-top:21px;display:flex}.auth-card .auth-links a{border-bottom:1px solid #d8c9ad;padding-bottom:3px}.auth-status{margin-top:20px}.auth-card .form-error{min-height:0}.auth-card .form-error:empty{display:none}.auth-state-line{font-size:max(var(--minimum-font-size,0px), 12px);color:#8d806b;border-bottom:1px solid #e7dfcc;justify-content:space-between;padding:11px 0;display:flex}.auth-state-line strong{color:#5b674e;font-weight:400}.auth-result{font-size:max(var(--minimum-font-size,0px), 12px);color:#55714c;padding:12px 0;line-height:1.85}.auth-card .detail-row{font-size:max(var(--minimum-font-size,0px), 12px)}@media (width>=1580px){.portal .content{padding-left:44px;padding-right:44px}.journey-banner .journey-title{font-size:42px}}@media (width<=1180px){.portal{--side:190px}.portal .sidebar{padding-left:14px;padding-right:14px}.portal .nav-item.active:before{left:-14px}.portal .realm-brand{gap:8px;padding-left:5px}.portal .realm-brand strong{font-size:22px}.portal .content{padding:26px}.portal .topbar{padding:0 26px}.portal .journey-summary .realm-stat{padding:19px}.portal .journey-banner{min-height:235px;padding:30px}.journey-title{font-size:33px}.journey-home-grid{grid-template-columns:1.4fr 1fr;gap:18px}.auth-main{gap:40px}.auth-nav{gap:15px}}@media (width<=1000px){.portal .journey-home-grid{grid-template-columns:1fr}.portal .journey-summary{grid-template-columns:repeat(2,1fr)}.portal .journey-summary .realm-stat:nth-child(3):before{display:none}.portal .journey-summary .realm-stat:nth-child(n+3){border-top:1px solid #ebe1cc}.portal .journey-greeting{max-width:68%}.portal .journey-art{opacity:.6}.auth-nav a:nth-child(n+3){display:none}.auth-main{gap:30px;margin-top:35px}.auth-landscape{min-height:500px}}@media (width<=760px){.settings-grid,.subscription-grid{grid-template-columns:1fr}.subscription-meta{gap:15px}.portal{--side:0px}.portal .sidebar{width:216px;padding:30px 18px 20px}.portal .topbar{height:58px;padding:0 16px}.portal .content{padding:24px 18px}.portal .topbar .hide-mobile{display:none}.portal .page-head{flex-direction:row;align-items:center;gap:12px}.portal .page-head h1{font-size:var(--page-title-size);letter-spacing:1px}.portal .page-head>.row{flex-wrap:wrap;gap:6px}.portal .page-head .btn{font-size:max(var(--minimum-font-size,0px), 12px);min-height:30px;padding:6px 9px}.portal .journey-banner{min-height:220px;margin-bottom:20px;padding:25px 22px}.portal .journey-greeting{max-width:100%}.journey-title{letter-spacing:1px;font-size:30px}.journey-subline{font-size:max(var(--minimum-font-size,0px), 12px)}.journey-art{opacity:.55;width:70%}.journey-stamp{font-size:max(var(--minimum-font-size,0px), 12px);top:23px;right:17px}.journey-kicker{letter-spacing:3px;font-size:max(var(--minimum-font-size,0px), 12px)}.portal .journey-summary{margin-bottom:20px}.portal .journey-summary .realm-stat{padding:18px}.realm-stat .field-value{font-size:27px}.journey-home-grid{gap:18px}.portal .panel-head{padding:var(--panel-padding-y) var(--panel-padding-x)}.portal .panel-head h2{font-size:var(--panel-title-size)}.companion-list{padding:0 18px 5px}.companion-name{font-size:18px}.companion-meta{font-size:max(var(--minimum-font-size,0px), 12px)}.companion-row{gap:10px}.portal .role-tile{padding:20px}.portal .subscription-card{padding:24px}.portal .stat{min-height:111px;padding:15px}.portal .stat-value{font-size:25px}.portal .stat-label,.portal .stat-foot{font-size:max(var(--minimum-font-size,0px), 12px)}.portal .table-wrap.mobile-cards td:first-child{display:block}.portal .table-wrap.mobile-cards td:last-child{justify-content:space-between}.portal .table-wrap.mobile-cards td .sub{font-size:max(var(--minimum-font-size,0px), 12px)}.portal .role-tile .row{gap:10px}.auth-masthead{padding:20px}.auth-nav{display:none}.auth-main{max-width:430px;margin:30px auto;padding:0 25px;display:block}.auth-landscape{height:160px;min-height:160px;margin-bottom:30px;padding:23px}.auth-landscape .portal-poem{letter-spacing:4px;font-size:24px;line-height:1.55}.auth-landscape .journey-kicker{font-size:max(var(--minimum-font-size,0px), 12px);margin-bottom:8px}.auth-landscape .journey-art{width:80%;height:100%;right:-15%}.auth-landscape .journey-stamp{top:25px;right:19px}.auth-card{padding:0 2px}.auth-card h1{margin-bottom:22px;font-size:27px}.auth-links{font-size:max(var(--minimum-font-size,0px), 12px)!important}.auth-masthead .realm-brand strong{font-size:20px}.auth-masthead .realm-seal{width:29px;height:35px;font-size:21px}.auth-masthead .realm-brand small{font-size:max(var(--minimum-font-size,0px), 12px)}}.list-page{min-width:0}.list-filters{align-items:end;gap:var(--space-4);padding:var(--panel-padding-y) var(--panel-padding-x);background:var(--surface);border-bottom:1px solid var(--line);flex-wrap:wrap;display:flex}.filter-field{gap:var(--space-2);flex-direction:column;flex:1 1 var(--filter-width);min-width:0;display:flex}.filter-field-compact{flex:0 1 var(--filter-width-compact)}.filter-field-wide{flex-basis:var(--filter-width-wide)}.panel-head>.filter-field{flex:0 1 var(--filter-width-wide);flex-direction:row;align-items:center}.panel-head>.filter-field select{flex:1}.panel-head>h2{flex-shrink:0}.filter-field label{color:var(--muted);font-size:var(--font-size-small);line-height:var(--label-line-height);white-space:nowrap}.filter-field :is(input,select){width:100%;min-width:0;height:var(--control-height);padding:0 var(--space-3);border:1px solid var(--control-border);border-radius:var(--control-radius);background:var(--control-bg);color:var(--ink);font-size:var(--font-size-small)}.filter-field :is(input,select):focus{outline:var(--focus-ring);outline-offset:1px;border-color:var(--accent)}.list-filter-actions{align-items:center;gap:var(--space-2);margin-left:auto;display:flex}.list-filters .btn{height:var(--control-height);min-height:var(--control-height)}.list-status{padding:var(--space-3) var(--panel-padding-x);color:var(--muted);font-size:var(--font-size-small)}.list-status .notice+.notice{margin-top:var(--space-2)}.list-status .caption{margin:0}.table-footer-options{align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.page-size{align-items:center;gap:var(--space-2);display:flex}.page-size select{height:var(--control-height-small);padding:0 var(--space-2);background:var(--control-bg);border:1px solid var(--control-border);border-radius:var(--control-radius)}@media (width<=640px){.list-filters{gap:var(--space-3)}.filter-field,.filter-field-compact,.filter-field-wide{flex:100%}.list-filter-actions{justify-content:flex-end;width:100%}.table-footer{gap:var(--space-3);flex-wrap:wrap}.table-footer>.row{margin-left:auto}}.react-overlay{width:100vw;max-width:none;height:100dvh;max-height:none;color:inherit;background:0 0;border:0;margin:0;padding:25px;overflow:hidden}.react-overlay[open]{justify-content:center;align-items:center;display:flex}.react-overlay::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#162e284d}.react-overlay.drawer-overlay[open]{justify-content:flex-end;padding:0}.react-overlay .drawer{max-height:100dvh}.react-overlay .dialog{animation:none}.react-overlay .actions-line{justify-content:flex-end;gap:9px;display:flex}.key-code{white-space:pre-wrap;overflow-wrap:anywhere}.identity-email{font-size:max(var(--minimum-font-size,0px), 12px);overflow-wrap:anywhere}.account-chip .grow{min-width:0}.account-menu-wrap{position:relative}.account-menu-trigger{align-items:center;gap:8px;display:flex}.account-menu-trigger .avatar{width:24px;height:24px;font-size:max(var(--minimum-font-size,0px), 12px)}.account-menu-trigger .icon{width:14px;height:14px}.account-menu{z-index:20;background:var(--surface,#fff);border:1px solid var(--line,#deddd1);min-width:190px;padding:8px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 8px 24px #17211d1f}.account-label{font-size:max(var(--minimum-font-size,0px), 12px);color:var(--orange);background:var(--orange-bg);border:1px solid color-mix(in srgb, var(--orange) 40%, transparent);white-space:nowrap;border-radius:999px;flex:none;padding:1px 6px;line-height:18px}.account-menu-email .account-label,.account-cell .account-label{margin-left:8px}.account-menu-email{color:var(--muted,#737c74);overflow-wrap:anywhere;padding:8px 10px}.account-menu button{width:100%;color:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:8px;padding:9px 10px;font-size:14px;display:flex}.account-menu button:hover{background:#f3f5f1}.account-menu button .icon{width:16px;height:16px}.toast>span{overflow-wrap:anywhere;flex:1;min-width:0}.toast-dismiss{width:24px;height:24px;color:inherit;background:0 0;border:0;flex:0 0 24px;place-items:center;margin:-4px -7px -4px 4px;padding:0;display:inline-grid}.toast-dismiss:hover{background:#ffffff18}.toast-dismiss .icon{width:14px;height:14px}.credential-cell{align-items:center;gap:8px;display:inline-flex}.icon-button{width:28px;height:28px;color:inherit;background:0 0;border:1px solid #0000;place-items:center;padding:0;display:inline-grid}.icon-button:hover:not(:disabled){background:#eef2ed;border-color:#d8dfd5}.icon-button .icon{width:16px;height:16px}.filter-toolbar{align-items:stretch;margin-bottom:20px;padding-bottom:2px;overflow-x:auto}.filter-form{width:100%;min-width:820px}.filter-form>fieldset{grid-template-columns:minmax(220px,1.5fr) minmax(140px,.8fr) minmax(170px,1fr) max-content;align-items:end;gap:12px;display:grid}.filter-form .form-field{margin-bottom:0}.filter-form .actions-line{white-space:nowrap;flex-wrap:nowrap;align-self:end;margin:0}.filter-form>fieldset>.form-error,.filter-form>fieldset>.recovery{grid-column:1/-1}.logout-form .actions-line{margin:0}.logout-form .btn.primary{color:var(--muted);box-shadow:none;min-height:28px;font-size:max(var(--minimum-font-size,0px), 12px);background:0 0;border-color:#0000;padding:5px 8px}.recovery{overflow-wrap:anywhere;margin:15px 0}.auth-card .actions-line>.btn.primary{width:100%;height:42px}.auth-card .auth-links{justify-content:space-between;gap:15px;margin-top:21px;display:flex}.auth-landscape .journey-art img,.journey-banner .journey-art img{object-fit:cover;object-position:right bottom;width:100%;height:100%}.auth-card .notice{margin-bottom:20px}.panel-body>.notice{margin-top:15px}.row-actions{flex-wrap:wrap;gap:6px;display:flex}.toolbar-search{align-items:center;gap:8px;display:flex}.toolbar-search .form-field{min-width:240px;margin:0}.toolbar-search .form-field label{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.toolbar-search .actions-line{margin:0}.service-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.service-stat-grid .realm-stat{border-right:1px solid #e9e1d0;padding:23px 24px}.dialog-body>.notice{margin-bottom:18px}.dialog-body pre{overflow-wrap:anywhere;white-space:pre-wrap}.detail-row>span:last-child{overflow-wrap:anywhere;min-width:0}.action-grid{flex-wrap:wrap;gap:9px;margin-top:20px;display:flex}.role-actions{margin-top:20px}@media (width<=760px){.react-overlay{padding:15px}.toolbar-search{width:100%}.toolbar-search .form-field{flex:1;min-width:0}.service-stat-grid{grid-template-columns:1fr}}.auth-utility-space{justify-self:end}.auth-masthead{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);display:grid}.auth-masthead .realm-brand{justify-self:start}.auth-masthead .auth-nav{justify-self:center}.embedded-footer{margin:22px -24px -22px}.actions-line{flex-wrap:wrap}.content td{overflow-wrap:anywhere}@media (width<=760px){.embedded-footer{margin:20px -20px -20px}}.manage-key-form .actions-line{justify-content:flex-start}fieldset{border:0;min-width:0;margin:0;padding:0}.dialog-foot>fieldset{justify-content:flex-end;gap:9px;width:100%;display:flex}fieldset:disabled{opacity:.7}.portal{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--minimum-font-size:14px;--font-size-body:14px;--font-size-small:14px;--font-body:"Microsoft YaHei UI", "PingFang SC", "Noto Sans CJK SC", "Segoe UI", sans-serif;--font-heading:"STKaiti", "KaiTi", "Songti SC", "SimSun", serif;--bg:#061b22;--surface:#0b252c;--soft:#102f35;--ink:#e0edeb;--muted:#a3bfc1;--line:#29464b;--accent:#75d6c2;--accent-dark:#54b9a5;--tint:#133d3c;--orange:#f1c478;--orange-bg:#3b3020;--red:#ffaaa0;--red-bg:#412a2c;--blue:#a6cbed;--blue-bg:#203647;--purple:#d7bfec;--side:200px;--portal-workspace-width:1920px;--portal-topbar-height:64px;--portal-workspace-gap:24px;--portal-workspace-radius:12px;--radius:6px;--shadow:none;--page-title-size:30px;--panel-title-size:23px;--page-gap:20px;--panel-padding-x:18px;--panel-padding-y:15px;--panel-border:#806d49;--panel-head-border:#36504e;--control-height:38px;--control-height-small:32px;--control-radius:4px;--control-bg:#08212a;--control-border:#46666a;--button-bg:#0b2930;--button-border:#55777b;--button-ink:#d7e9e5;--focus-ring:2px solid #a0ead7;--table-head-bg:#133239;--table-head-ink:#d9caa6;--table-row-line:#29454a;--table-row-hover:#12343a;--table-row-ink:#e0edeb;--table-footer-ink:#a3bfc1;--table-footer-line:#29464b;--table-head-padding-y:11px;--table-row-padding-y:8px;--portal-gold:#edc885;--portal-motion-duration:.18s;--portal-motion-ease:cubic-bezier(.16, 1, .3, 1);background:var(--bg);min-width:0;color:var(--ink);font-family:var(--font-body);scrollbar-color:#45676b #08212a;scrollbar-width:thin}.portal ::selection{color:#062329;background:#91dfca}.portal :is(input,textarea){caret-color:var(--accent)}.portal ::placeholder{color:#9ab5b8;opacity:1}.portal :is(button,input,select,textarea){font-family:var(--font-body)}.portal :is(h1,h2,h3){text-wrap:balance}.portal .mono{font-family:var(--font-body);font-variant-numeric:tabular-nums}.portal :is(a,button,input,select,textarea,[tabindex]):focus-visible{outline:var(--focus-ring);outline-offset:3px}.portal :is(a,button){-webkit-tap-highlight-color:#75d6c22b}.portal :is(.btn,.nav-item,.account-menu button,.icon-button,.text-btn,.tab){transition:background-color var(--portal-motion-duration) var(--portal-motion-ease), color var(--portal-motion-duration) var(--portal-motion-ease), border-color var(--portal-motion-duration) var(--portal-motion-ease)}.portal .portal-shell{isolation:isolate;min-height:100dvh;display:flow-root;position:relative}.portal .portal-shell:before{content:"";z-index:-1;pointer-events:none;opacity:.12;background:url(/portal/assets/portal-clouds-DXHonT1e.webp) 50%/cover no-repeat;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 20% 80%,#0000);mask-image:linear-gradient(#0000,#000 20% 80%,#0000)}.portal .portal-workspace{grid-template-columns:var(--side) minmax(0, 1fr);width:calc(100% - var(--portal-workspace-gap) * 2);max-width:var(--portal-workspace-width);min-height:calc(100dvh - var(--portal-topbar-height) - var(--portal-workspace-gap) * 2);margin:var(--portal-workspace-gap) auto;border-radius:var(--portal-workspace-radius);background:#08212a;border:1px solid #34504f;align-items:start;display:grid;position:relative;box-shadow:0 18px 48px #0005}.portal .layout{border-left:1px solid var(--line);background:0 0;align-self:stretch;min-width:0;min-height:0;margin-left:0}.portal .portal-workspace{height:calc(100dvh - var(--portal-topbar-height) - var(--portal-workspace-gap) * 2);overflow:clip}.portal .layout{height:100%;overflow-y:auto}.portal .sidebar{top:calc(var(--portal-topbar-height) + var(--portal-workspace-gap));height:auto;max-height:calc(100dvh - var(--portal-topbar-height) - var(--portal-workspace-gap) * 2);box-shadow:none;background:0 0;border-right:0;padding:24px 14px 20px;position:sticky;bottom:auto;left:auto;overflow-y:auto}.portal .sidebar nav{overflow:visible}.portal .sidebar nav>div:first-child .nav-label{margin-top:0}.portal .sidebar-close{display:none}.portal .realm-brand{color:var(--portal-gold);gap:10px}.portal .realm-brand strong{color:var(--portal-gold);letter-spacing:2px;font-size:24px}.portal .realm-seal{width:34px;height:39px;color:var(--portal-gold);background:#0f3237;border:1px solid #bd9e60;border-radius:4px;flex:none;box-shadow:inset 0 0 0 3px #071e26}.portal .nav-label{color:var(--portal-gold);font-family:var(--font-heading);letter-spacing:1px;margin:19px 0 8px;padding:0 8px;font-size:19px}.portal .nav-item{color:#c9dddf;border:1px solid #0000;border-radius:4px;gap:12px;min-height:44px;margin:4px 0;padding:9px 12px}.portal .nav-item span{font-family:var(--font-body);font-size:14px}.portal .nav-item .icon{stroke-width:1.5px;width:20px;height:20px}.portal .nav-item:hover{color:#eef5e4;background:#13343d}.portal .nav-item.active{color:#fff0cb;background:#16404a;border-color:#b69c62;font-weight:500}.portal .nav-item.active:before{display:none}.portal .nav-count{background:var(--tint);color:var(--accent)}.portal .topbar{height:var(--portal-topbar-height);-webkit-backdrop-filter:none;backdrop-filter:none;z-index:40;background:#082029;border-bottom:1px solid #2d484d;padding:0}.portal .topbar .realm-brand{padding:0}.portal .portal-topbar-content{width:calc(100% - var(--portal-workspace-gap) * 2);max-width:var(--portal-workspace-width);justify-content:space-between;align-items:center;gap:14px;height:100%;margin-inline:auto;padding:0 24px;display:flex}.portal .top-actions{gap:12px;min-width:0}.portal .avatar{color:#ccf3e7;font-family:var(--font-body);background:#10393d;border-color:#5f9a95}.portal .account-menu-trigger{max-width:360px}.portal .account-menu-trigger .hide-mobile{text-overflow:ellipsis;overflow:hidden}.portal .account-menu-trigger .avatar{width:28px;height:28px;font-size:14px}.portal .account-menu{border-color:var(--button-border);background:var(--surface);min-width:218px;max-width:min(320px,100vw - 32px);box-shadow:0 12px 28px #0006}.portal .account-menu button{min-height:42px}.portal .account-menu button:hover,.portal .account-menu button:focus-visible{background:var(--soft)}.portal .content{width:100%;min-width:0;max-width:none;margin:0;padding:24px}.portal .page-head{gap:14px}.portal .page-head h1{color:var(--portal-gold);letter-spacing:1px;font-weight:500}.portal .page-head>.row{flex-wrap:wrap}.portal .footer{display:none}.portal .panel{background:var(--surface);border-color:var(--panel-border);box-shadow:none}.portal .panel-head{background:var(--surface);border-bottom-color:var(--panel-head-border)}.portal .panel-head h2{color:var(--portal-gold);letter-spacing:1px;font-weight:500}.portal .panel-head>:is(.row,.filter-field){min-width:0}.portal .panel-body{padding-top:var(--panel-padding-y)}.portal .panel-body .divider{background:var(--line)}.portal .btn{color:var(--button-ink);box-shadow:none;font-weight:500;line-height:1.4}.portal .btn:hover:not(:disabled){background:#143b41;border-color:#83b9ae}.portal .btn:active:not(:disabled){background:#1b4448;border-color:#a0cebb}.portal .btn.primary{color:#f5edcd;background:linear-gradient(#237869,#186360);border-color:#6fc7b3;box-shadow:inset 0 1px #96dfc955}.portal .btn.primary:hover:not(:disabled){background:#216f64;border-color:#b2e8d1}.portal .btn.primary:active:not(:disabled){background:#1a5b53;border-color:#72bca7}.portal .btn.soft{color:#9ce3d1;background:var(--tint);border-color:#3b6965}.portal .btn.ghost{color:var(--muted);background:0 0;border-color:#0000}.portal .btn.ghost:hover:not(:disabled),.portal .btn.ghost:active:not(:disabled){color:var(--ink);background:var(--soft)}.portal .btn.danger{color:var(--red);background:var(--red-bg);border-color:#875353}.portal .btn.danger:hover:not(:disabled){color:#ffd2cc;background:#523236;border-color:#c6817a}.portal .icon-button:hover:not(:disabled){color:var(--accent);background:var(--soft);border-color:var(--control-border)}.portal .text-btn{color:var(--accent);text-underline-offset:4px}.portal .text-btn:hover{color:#b5f4df;text-decoration:underline}.portal :is(.form-field,.filter-field) :is(input,select,textarea),.portal :is(.select,.page-size select){background:var(--control-bg);color:var(--ink);border-color:var(--control-border);font-size:var(--font-size-body);border-radius:var(--control-radius)}.portal .form-field label{color:var(--muted);font-weight:400}.portal .form-error{color:var(--red);overflow-wrap:anywhere}.portal .list-filters{background:var(--surface)}.portal .portal-comparison-filter{gap:var(--space-2);min-width:0;display:flex}.portal .portal-comparison-filter>select{width:78px;padding-inline:var(--space-2);flex:0 0 78px}.portal .portal-comparison-filter>input{flex:1 1 0;width:0}.portal .table-wrap{background:var(--surface)}.portal table{font-family:var(--font-body);font-size:14px;line-height:1.55}.portal th{font-family:var(--font-body);letter-spacing:0;border-bottom:1px solid #47605a;font-size:14px;font-weight:500}.portal td{font-size:14px}.portal td strong{color:#f0f5eb;font-weight:600}.portal td .caption{margin-top:2px;line-height:1.45}.portal tbody tr:nth-child(2n){background:#0b272f}.portal tbody tr:hover{background:var(--table-row-hover)}.portal .table-footer{background:#0b252c}.portal .table-wrap.mobile-cards td:before{font-family:var(--font-body);font-size:14px}.portal :is(.caption,.freshness,.data-zero,.stat-label,.stat-foot){color:var(--muted)}.portal .badge{color:#bed0d5;font-family:var(--font-body);background:#253d46;border-radius:4px;font-size:14px}.portal .badge.green{color:#8ee1c0;background:#153d36}.portal .badge.amber{background:var(--orange-bg);color:var(--orange)}.portal .badge.red{background:var(--red-bg);color:var(--red)}.portal .badge.blue{background:var(--blue-bg);color:var(--blue)}.portal .badge.purple{color:var(--purple);background:#382b47}.portal .notice{color:#bbded5;background:#133639;border-color:#41635f;border-radius:4px}.portal .notice.neutral{color:var(--muted);background:var(--soft);border-color:var(--line)}.portal .notice.amber{color:var(--orange);background:var(--orange-bg);border-color:#705b37}.portal .notice.red{color:var(--red);background:var(--red-bg);border-color:#875353}.portal .empty{color:var(--muted);padding:36px 18px}.portal .empty h3{color:var(--ink);font-family:var(--font-body)}.portal .tabs{border-color:var(--control-border)}.portal .tab{color:var(--muted);font-family:var(--font-body)}.portal .tab.active{background:var(--tint);color:var(--accent)}.portal .stat,.portal .stat.accent{background:var(--surface);border-color:var(--line);min-height:104px;padding:18px}.portal .stat-value{color:var(--portal-gold);font-family:var(--font-body)}.portal .stat.accent :is(.stat-label,.stat-foot){color:var(--muted)}.portal .detail-row{gap:16px}.portal .detail-row>:last-child{text-align:right}.portal .react-overlay::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#020e16b3}.portal .dialog,.portal .drawer{background:var(--surface);border-color:var(--panel-border);box-shadow:0 20px 64px #0008}.portal .react-overlay .dialog{animation:portal-dialog-enter .18s var(--portal-motion-ease)}.portal .dialog-head{border-color:var(--line)}.portal .dialog-head h2{overflow-wrap:anywhere;min-width:0;color:var(--portal-gold);letter-spacing:1px}.portal .dialog-foot{border-color:var(--line);background:#102c32}.portal .toast{color:#e0f5e9;background:#16453f;border-color:#668d72;box-shadow:0 12px 32px #0006}.portal .portal-scene{pointer-events:none;position:absolute;inset:0;overflow:hidden}.portal .portal-scene--home{background:url(/portal/assets/portal-home-scene-Dx3GQ3rs.webp) top/cover no-repeat}.portal .portal-scene--auth{background:url(/portal/assets/portal-auth-scene-DTy1lGgE.webp) 50%/cover no-repeat}.portal .portal-scene:before{content:"";background:linear-gradient(90deg,#061b22e6,#061b2238 60%,#061b220d),linear-gradient(#0000 65%,#061b227a);position:absolute;inset:0}.portal .portal-scene-clouds{opacity:.25;background:url(/portal/assets/portal-clouds-DXHonT1e.webp) 50%/cover no-repeat;animation:34s ease-in-out infinite alternate portal-cloud-drift;position:absolute;inset:18% -8% -24%}.portal .portal-scene--home .portal-scene-clouds{inset:-24% -8%;-webkit-mask-image:linear-gradient(#0000,#000 25% 75%,#0000);mask-image:linear-gradient(#0000,#000 25% 75%,#0000)}.portal .portal-scene:after{content:"";background:radial-gradient(circle at 71% 32%,#ffdfa78c 0 1px,#0000 3px),radial-gradient(circle at 89% 61%,#d4f7d39c 0 1px,#0000 3px),radial-gradient(circle at 46% 67%,#ffd18b9c 0 1px,#0000 3px);animation:7s ease-in-out infinite alternate portal-lights-breathe;position:absolute;inset:0}html[data-portal-motion=paused] .portal .portal-scene-clouds,html[data-portal-motion=paused] .portal .portal-scene:after{animation-play-state:paused}.portal .portal-home{--panel-padding-y:12px;--panel-title-size:22px;min-width:0}.portal .portal-home-banner{isolation:isolate;border-radius:0 calc(var(--portal-workspace-radius) - 1px) 0 0;background:#0b2934;align-items:center;min-height:208px;margin:-24px -24px 16px;padding:24px 30px 22px;display:flex;position:relative;overflow:clip}.portal .portal-home-intro{z-index:1;max-width:550px;position:relative}.portal .portal-home-title{color:#f1d49c;font:500 clamp(34px, 3.7vw, 48px) / 1.25 var(--font-heading);letter-spacing:2px}.portal .portal-home-intro>p{color:#d2e0df;margin:9px 0 18px;font-size:16px}.portal .portal-home-intro>.row{flex-wrap:wrap}.portal .portal-home-intro .btn{min-width:112px}.portal .portal-home-grid{grid-template-columns:minmax(0,7fr) minmax(300px,3fr);align-items:start;gap:16px;display:grid}.portal .portal-role-preview,.portal .portal-home-aside{min-width:0}.portal .portal-home-aside{gap:12px;display:grid}.portal .portal-home .panel-head h2{line-height:1.3}.portal .portal-role-preview{--table-row-padding-y:6px}.portal .portal-role-preview .panel-head{flex-wrap:wrap}.portal .portal-preview-note{color:var(--muted);margin:0;font-size:14px;line-height:1.4}.portal .portal-role-preview :is(td,td .caption){line-height:1.4}.portal .portal-role-preview td .caption{margin-top:1px}.portal .portal-role-preview .portal-preview-note{padding:6px 18px}.portal .portal-gold-total{color:var(--portal-gold);font-family:var(--font-body);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;align-items:center;gap:10px;margin-bottom:6px;font-size:clamp(26px,2.8vw,36px);font-weight:500;line-height:1.3;display:flex}.portal .portal-gold-total strong{min-width:0;font-weight:500}.portal .portal-gold-total .icon{width:26px;height:26px}.portal .portal-gold-summary .panel-body>.caption{margin-top:2px;line-height:1.4}.portal .portal-gold-list{border-top:1px solid var(--line);margin:10px 0;padding:0;list-style:none}.portal .portal-gold-list>li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:6px 0;line-height:1.4;display:flex}.portal .portal-gold-list>li>:first-child{overflow-wrap:anywhere;min-width:0}.portal .portal-gold-list>li>:last-child{text-align:right;overflow-wrap:anywhere;font-variant-numeric:tabular-nums;color:#f3e6c9;flex:0 auto;max-width:52%;font-weight:500}.portal .portal-gold-list .caption{white-space:nowrap;margin:0 0 0 8px;display:inline}.portal .portal-gold-summary .panel-body>.row{flex-wrap:wrap;gap:10px;margin-top:12px}.portal .portal-gold-summary .panel-body>.row .btn{flex:auto}.portal .portal-activity-links .panel-head{padding-block:8px}.portal .portal-activity-links .panel-body{flex-wrap:wrap;gap:10px;padding-block:8px;display:flex}.portal .portal-activity-links .panel-body>a{color:var(--accent);flex:auto;align-items:center;gap:8px;min-height:38px;display:inline-flex}.portal .portal-activity-links .panel-body>a:hover{color:#bcf5e0}.portal .portal-account-rail{background:var(--surface);border:1px solid var(--panel-border);border-radius:var(--radius);grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin-top:16px;display:grid}.portal .portal-account-stat{flex-wrap:wrap;align-items:center;gap:12px;min-width:0;padding:14px 22px;display:flex}.portal .portal-account-stat+.portal-account-stat{border-left:1px solid var(--line)}.portal .portal-account-stat>.icon{width:28px;height:28px;color:var(--portal-gold)}.portal .portal-account-stat .field-value{color:var(--portal-gold);font-size:28px;line-height:1.3;font-family:var(--font-body);margin-right:auto;font-weight:500}.portal .portal-account-stat .btn{margin-left:auto}.portal .portal-account-stat .notice{flex:100%}.portal .auth-masthead{background:#071e26;border-bottom:1px solid #34504f;max-width:none;min-height:76px;padding:18px 36px}.portal .auth-masthead .realm-brand{padding:0}.portal .auth-masthead .realm-brand strong{color:var(--portal-gold);font-size:24px}.portal .auth-main{grid-template-columns:minmax(0,1.2fr) minmax(320px,.85fr);align-items:stretch;gap:42px;max-width:1150px;margin:48px auto;padding:0 30px}.portal .auth-landscape{background:#0b2934;border-color:#806d49;justify-content:flex-end;min-height:530px;padding:36px;position:relative}.portal .auth-landscape .portal-scene:before{background:linear-gradient(#061b221a 35%,#061b22f2)}.portal .auth-landscape-copy{z-index:1;position:relative}.portal .auth-landscape-copy h2{color:#f3deb1;letter-spacing:2px;font-size:34px;line-height:1.55}.portal .auth-landscape-copy p{color:#c8dcda;margin-top:12px}.portal .auth-card{background:var(--surface);border:1px solid var(--panel-border);border-radius:var(--radius);align-self:center;min-width:0;padding:32px}.portal .auth-card h1{color:var(--portal-gold);letter-spacing:1px;margin-bottom:24px;font-size:30px}.portal .auth-card .form-field{margin-bottom:18px}.portal .auth-card .form-field input{min-height:44px}.portal .auth-card .remember-login{cursor:pointer;min-height:44px;color:var(--muted);align-items:center;gap:10px;display:flex}.portal .auth-card .remember-login input{width:18px;height:18px;accent-color:var(--accent);flex:none;margin:0}.portal .auth-card .actions-line>.btn.primary{min-height:44px}.portal .auth-card .auth-links{color:var(--accent);flex-wrap:wrap;gap:12px}.portal .auth-card .auth-links a{text-underline-offset:5px;border-color:#4b7973}.portal .auth-card .auth-links a:hover{color:#b4eedb;border-color:#9bd1bc}.portal .auth-result{color:#a7e5ce}.portal .auth-state-line{color:var(--muted);border-color:var(--line)}.portal .auth-state-line strong{color:var(--ink)}.portal .auth-inline-actions{flex-wrap:wrap;gap:10px;display:flex}@keyframes portal-cloud-drift{0%{transform:translate(-2%)}to{transform:translate(2%,-2%)}}@keyframes portal-lights-breathe{0%{opacity:.3}to{opacity:.8}}@keyframes portal-dialog-enter{0%{opacity:.7;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (width>=1101px){.portal .portal-home-grid{align-items:stretch}.portal .portal-role-preview,.portal .portal-gold-summary{display:grid}.portal .portal-home-aside{grid-template-rows:1fr auto}}@media (width<=1100px){.portal .portal-home-grid{grid-template-columns:minmax(0,1fr)}.portal .portal-home-aside{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:start}.portal .auth-main{gap:28px}.portal .auth-landscape{padding:28px}}@media (width<=760px){.portal{--side:0px;--portal-workspace-gap:12px;--portal-workspace-radius:8px;--panel-padding-x:16px;--panel-padding-y:14px;--page-title-size:27px;--panel-title-size:22px}.portal .portal-workspace{height:auto;min-height:0;display:block;overflow:visible}.portal .layout{height:auto;overflow:visible}.portal .portal-shell:before{display:none}.portal .layout{border-left:0;margin-left:0}.portal .topbar{height:var(--portal-topbar-height)!important}.portal .portal-topbar-content{gap:8px;width:100%;padding:0 14px}.portal .portal-topbar-content>.row{gap:8px;min-width:0}.portal .topbar .realm-brand strong{letter-spacing:1px;font-size:21px}.portal .topbar .realm-brand{gap:8px}.portal .topbar .realm-seal{width:28px;height:34px}.portal .sidebar{z-index:60;background:#071e26;width:min(280px,100vw - 48px);height:100dvh;max-height:none;padding:22px 18px;position:fixed;top:0;bottom:0;left:0}.portal .sidebar nav{padding-top:40px}.portal .sidebar-close{display:inline-flex;position:absolute;top:23px;right:14px}.portal .mobile-overlay.show{z-index:50;background:#020e16b3}.portal .nav-item{min-height:48px}.portal .content{padding:18px 14px}.portal .page-head{gap:12px;margin-bottom:18px}.portal .page-head h1{font-size:var(--page-title-size)}.portal .btn{min-height:40px}.portal .btn.sm{min-height:36px}.portal .icon-button{min-width:36px;min-height:36px}.portal .table-wrap.mobile-cards{overflow-x:visible}.portal .table-wrap.mobile-cards table{min-width:0}.portal .table-wrap.mobile-cards tr{gap:5px;padding:14px 16px}.portal .table-wrap.mobile-cards td{overflow-wrap:anywhere;min-width:0}.portal .table-wrap.mobile-cards td:first-child{display:block}.portal .table-wrap.mobile-cards td:not(:first-child){grid-template-columns:minmax(70px,.4fr) minmax(0,1fr);justify-content:stretch;gap:12px;display:grid}.portal .table-wrap.mobile-cards td:not(:first-child)>*{min-width:0}.portal .portal-role-preview .table-wrap.mobile-cards thead{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;display:table-header-group;position:absolute;overflow:hidden}.portal .portal-role-preview .table-wrap.mobile-cards tbody tr{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"identity status""server profile""task task";align-items:start;gap:6px 12px;padding:12px 16px;display:grid}.portal .portal-role-preview .table-wrap.mobile-cards td{padding:0;position:relative}.portal .portal-role-preview .table-wrap.mobile-cards td:first-child{grid-area:identity}.portal .portal-role-preview .table-wrap.mobile-cards td:nth-child(2){color:var(--muted);grid-area:server;display:block}.portal .portal-role-preview .table-wrap.mobile-cards td:nth-child(3){text-align:right;color:var(--muted);grid-area:profile;display:block}.portal .portal-role-preview .table-wrap.mobile-cards td:nth-child(4){grid-area:status;justify-content:flex-end;display:flex}.portal .portal-role-preview .table-wrap.mobile-cards td:nth-child(4) .badge{width:max-content;max-width:100%}.portal .portal-role-preview .table-wrap.mobile-cards td:nth-child(5){white-space:normal;grid-area:task;grid-template-columns:56px minmax(0,1fr);gap:8px;display:grid}.portal .portal-role-preview .table-wrap.mobile-cards td:nth-child(n+2):nth-child(-n+4):before{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.portal .table-footer,.portal .table-footer-options{gap:12px}.portal .table-footer .row,.portal .panel-head{flex-wrap:wrap}.portal .panel-head>.filter-field{flex:100%}.portal .portal-home-banner{border-top-left-radius:calc(var(--portal-workspace-radius) - 1px);min-height:216px;margin:-18px -14px 18px;padding:24px}.portal .portal-home-title{font-size:36px}.portal .portal-home-intro>p{max-width:32ch;font-size:14px}.portal .portal-scene--home{background-position:60%}.portal .portal-scene:before{background:linear-gradient(90deg,#061b22e8,#061b227a 70%,#061b2233)}.portal .portal-scene-clouds{opacity:.18;animation-duration:42s}.portal .portal-scene:after{display:none}.portal .portal-home-aside,.portal .portal-account-rail{grid-template-columns:minmax(0,1fr)}.portal .portal-account-stat{padding:16px}.portal .portal-account-stat+.portal-account-stat{border-left:0;border-top:1px solid var(--line)}.portal .portal-account-stat .field-value{font-size:26px}.portal .portal-account-stat .btn{flex:100%}.portal .portal-gold-total{font-size:32px}.portal .auth-masthead{grid-template-columns:minmax(0,1fr);min-height:68px;padding:16px 20px}.portal .auth-main{flex-direction:column;gap:20px;max-width:480px;margin:26px auto;padding:0 18px;display:flex}.portal .auth-card{order:-1;width:100%;padding:26px 22px}.portal .auth-card h1{margin-bottom:22px;font-size:28px}.portal .auth-landscape{width:100%;height:auto;min-height:200px;margin:0;padding:24px}.portal .auth-landscape-copy h2{letter-spacing:1px;font-size:27px}.portal .react-overlay{padding:12px}.portal .react-overlay.drawer-overlay{padding:0}.portal .dialog{max-width:calc(100vw - 24px)}.portal .dialog-body,.portal .dialog-head{padding:18px}.portal .dialog-foot{padding:16px 18px}.portal .embedded-footer{margin:20px -18px -18px}.portal .dialog-foot>fieldset{flex-wrap:wrap}.portal .dialog-foot .btn{flex:auto}}@media (width<=360px){.portal .portal-home-banner{padding:24px 18px}.portal .portal-home-title{font-size:32px}.portal .portal-home-intro .row{gap:8px}.portal .portal-home-intro .btn{min-width:0;padding-inline:12px}.portal .auth-card{padding:24px 18px}.portal .portal-account-stat{gap:10px}}@media (prefers-reduced-motion:reduce){.portal .portal-scene-clouds,.portal .portal-scene:after,.portal .react-overlay .dialog{animation:none}.portal :is(.btn,.nav-item,.account-menu button,.icon-button,.text-btn,.tab,.sidebar){transition:none}}.portal tr:has(.gold-summary-label){background:#123239;font-weight:700}.work-change{font-variant-numeric:tabular-nums;font-weight:600}.work-change.Succeeded{color:#8ee1c0}.work-change.Failed{color:var(--red)}.credits-content{gap:var(--space-5);min-width:0;display:grid;container-type:inline-size}.credits-overview{gap:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.credits-overview>.panel{min-width:0}.credits-overview>.panel:first-child{flex-direction:column;display:flex}.credits-overview>.panel:first-child>.panel-body{flex-direction:column;flex:1;justify-content:center;display:flex}.credits-available{padding:var(--space-3) 0;text-align:center;color:var(--portal-gold);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:0;font-size:clamp(36px,7cqi,52px);font-weight:500;line-height:1.1;display:block}@container (width<=640px){.credits-overview{grid-template-columns:minmax(0,1fr)}}.wallet-content{gap:var(--space-5);min-width:0;display:grid;container-type:inline-size}.wallet-overview{gap:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.wallet-overview>.panel{min-width:0}.wallet-balance{padding:var(--space-3) 0 var(--space-2);text-align:center;color:var(--portal-gold);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:clamp(34px,6cqi,48px);font-weight:500;line-height:1.1;display:block}.wallet-balance small{margin-right:4px;font-size:.5em}.wallet-hint{margin:0 0 var(--space-3);color:var(--muted);font-size:var(--font-size-small);line-height:1.7}.wallet-balance+.wallet-hint{text-align:center}.wallet-shop{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));margin:0;padding:0;list-style:none;display:grid}.wallet-shop li{gap:var(--space-2);padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);display:grid}.wallet-shop li span{color:var(--muted);font-size:var(--font-size-small)}.wallet-shop li b{color:var(--portal-gold);font-variant-numeric:tabular-nums;font-size:22px;font-weight:500}.wallet-tabs{gap:var(--space-5);padding:0 var(--panel-padding-x);border-bottom:1px solid var(--line);display:flex;overflow-x:auto}.wallet-tabs button{min-height:var(--control-height);color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex:none;padding:6px 0 10px}.wallet-tabs button[aria-selected=true]{border-color:var(--accent);color:var(--accent-dark);font-weight:600}.wallet-tabs button:focus-visible{outline:var(--focus-ring);outline-offset:-2px}.wallet-in{color:var(--accent-dark)}.wallet-out{color:var(--red)}.wallet-link{gap:var(--space-2);margin-bottom:var(--space-3);display:flex}.wallet-link input{min-width:0;min-height:var(--control-height);border:1px solid var(--control-border);border-radius:var(--control-radius);background:var(--control-bg);color:var(--ink);font-size:var(--font-size-small);flex:1;padding:0 10px}.wallet-code-chip{border:1px dashed var(--line);color:var(--ink);cursor:pointer;background:0 0;border-radius:4px;align-items:center;gap:4px;padding:0 6px;font-family:ui-monospace,monospace;display:inline-flex}.wallet-code-chip .icon{width:14px;height:14px}.wallet-stats{gap:var(--space-3);text-align:center;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.wallet-stats span{color:var(--muted);font-size:var(--font-size-small);display:block}.wallet-stats strong{color:var(--portal-gold);font-variant-numeric:tabular-nums;font-size:clamp(22px,4cqi,32px);font-weight:500}.wallet-stats small{color:var(--muted);margin-left:2px}.wallet-confirm{margin:0 0 var(--space-3);line-height:1.7}.wallet-code{align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);padding:var(--space-3);border-radius:var(--radius);background:var(--soft);display:flex}.wallet-code code{overflow-wrap:anywhere;min-width:0;font-size:var(--font-size-small);flex:1}@container (width<=640px){.wallet-overview{grid-template-columns:minmax(0,1fr)}.wallet-link{flex-direction:column}}.store-goods{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));margin:0;padding:0;list-style:none;display:grid}.store-goods>li{gap:var(--space-2);padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);grid-template-rows:auto 1fr auto auto;display:grid}.store-media{position:relative}.store-cover{--tone:#edc885;aspect-ratio:1;border-radius:var(--radius);color:#f3e6c8;text-align:center;background:linear-gradient(#0000 62%,#ffffff0a),radial-gradient(120% 90% at 50% 0,#12404a 0%,#0b252c 45%,#061b22 100%);border:1px solid #bd9e60;width:100%;position:relative;overflow:hidden;container-type:inline-size}.store-cover.tone-day{--tone:#5fb3a1}.store-cover.tone-month{--tone:#7fb7d9}.store-cover.tone-season{--tone:#c9a0dc}.store-cover.tone-credits{--tone:#e6a15c}.store-cover:after{content:"";border-radius:calc(var(--radius) - 2px);pointer-events:none;border:1px solid #bd9e6059;position:absolute;inset:3cqi}.cover-head{align-items:center;gap:3cqi;display:flex;position:absolute;top:7cqi;left:7cqi}.cover-head i{color:#edc885;background:#0f3237;border:1px solid #bd9e60;border-radius:1cqi;place-items:center;width:9cqi;height:10.5cqi;font:6cqi KaiTi,STKaiti,serif;display:grid;box-shadow:inset 0 0 0 .8cqi #071e26}.cover-head em{color:#edc885;letter-spacing:.8cqi;font:5.5cqi KaiTi,STKaiti,serif}.store-goods .cover-series{color:#fff6e2;background:#a14d37;border-radius:1cqi;padding:.5cqi 2.5cqi;font-size:4.5cqi;position:absolute;top:20cqi;left:7cqi}.cover-hero{color:var(--tone);position:absolute;top:24cqi;left:0;right:0}.store-goods .cover-hero b{color:inherit;letter-spacing:-.5cqi;font-size:26cqi;font-weight:700;line-height:1}.cover-hero small{margin-left:1.5cqi;font:8cqi KaiTi,STKaiti,serif}.cover-features{justify-content:center;gap:2cqi;margin:0;padding:0;list-style:none;display:flex;position:absolute;top:60cqi;left:6cqi;right:6cqi}.cover-features li{color:#f3e6c852;white-space:nowrap;border:1px solid #f3e6c826;border-radius:999px;padding:1cqi 2cqi;font-size:4.6cqi}.cover-features li.on{border-color:var(--tone);color:#f3e6c8}.cover-note{color:#edc885;letter-spacing:1.5cqi;font:6.5cqi KaiTi,STKaiti,serif;position:absolute;top:61cqi;left:0;right:0}.cover-bonus{color:#fff6e2;font-size:5.5cqi;position:absolute;bottom:8cqi;left:0;right:0}.store-goods .cover-bonus b{color:#edc885;font-size:7cqi;font-weight:700}.store-goods>li>b{color:var(--portal-gold);font-variant-numeric:tabular-nums;font-size:22px;font-weight:500}.store-goods .sold-out>b,.store-goods .sold-out .store-cover{opacity:.45;filter:grayscale()}.store-goods .store-badge{top:var(--space-2);right:var(--space-2);color:#fff6e2;font-size:var(--font-size-small);background:#a14d37;border-radius:999px;padding:2px 10px;font-weight:600;position:absolute}.store-goods .btn{justify-content:center;text-decoration:none}@media (width<=600px){.store-goods{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr))}.store-goods>li{padding:var(--space-3)}}
