.v-fusion{--bg: #f4f4f6;--surface-1: #ffffff;--surface-2: #fafafa;--surface-3: #f0f0f2;--material: rgba(255, 255, 255, .72);--material-pop: rgba(255, 255, 255, .88);--scrim: rgba(15, 15, 20, .28);--text-1: #1c1c1e;--text-2: #63636b;--text-3: #9a9aa2;--text-on-accent: #ffffff;--hairline: rgba(0, 0, 0, .07);--hairline-strong: rgba(0, 0, 0, .12);--fill: rgba(120, 120, 128, .1);--fill-strong: rgba(120, 120, 128, .16);--hover: rgba(0, 0, 0, .04);--accent: #c62f22;--accent-hover: #b12a1e;--accent-soft: rgba(198, 47, 34, .08);--accent-line: rgba(198, 47, 34, .24);--gold: #8a6d1a;--gold-bright: #b8933d;--gold-soft: rgba(138, 109, 26, .1);--gold-line: rgba(138, 109, 26, .26);--green: #248a3d;--green-bg: rgba(52, 199, 89, .12);--orange: #b25000;--orange-bg: rgba(255, 159, 10, .13);--red: #d70015;--red-bg: rgba(215, 0, 21, .08);--gray-bg: rgba(120, 120, 128, .12);--focus-ring: #0a84ff;--focus-glow: rgba(10, 132, 255, .16);--font: -apple-system, BlinkMacSystemFont, "SF Pro SC", "PingFang SC", "Segoe UI", "Microsoft YaHei", sans-serif;--fs-display: 28px;--fs-h1: 22px;--fs-h2: 16px;--fs-body: 14px;--fs-sub: 13px;--fs-cap: 12px;--lh-display: 1.2;--lh-h1: 1.3;--lh-body: 1.55;--track-display: -.02em;--track-h1: -.01em;--track-cap: .02em;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-7: 32px;--sp-8: 40px;--r-ctl: 8px;--r-card: 12px;--r-panel: 16px;--r-pill: 999px;--shadow-1: 0 1px 2px rgba(0, 0, 0, .05);--shadow-2: 0 2px 6px rgba(0, 0, 0, .06), 0 10px 28px rgba(0, 0, 0, .07);--shadow-3: -24px 0 64px rgba(0, 0, 0, .14);--shadow-4: 0 24px 80px rgba(0, 0, 0, .18);--ease-out: cubic-bezier(.23, 1, .32, 1);--ease-in-out: cubic-bezier(.77, 0, .175, 1);--ease-drawer: cubic-bezier(.32, .72, 0, 1);--dur-press: .14s;--dur-pop: .18s;--dur-ui: .22s;--dur-sheet: .34s;--sidebar-w: 236px;--rail-w: 68px;--page-max: 1120px;--read-max: 720px;--drawer-w: 440px;--z-nav: 100;--z-drawer: 200;--z-modal: 300;--z-toast: 400;--lp-brand: linear-gradient(158deg, #c13423, #a02415 52%, #7e170b);--lp-text: #ffffff;--lp-divider: transparent;--bg-glow: none;--eyebrow: var(--text-3);--line-pop: var(--hairline);--focus-line: transparent;--role-admin: var(--text-1);--toast-bg: #1c1c1e;--toast-fg: #f4f4f6;color-scheme:light}.v-fusion[data-theme=night]{--bg: #100f0d;--surface-1: #1b1916;--surface-2: #232019;--surface-3: #2a2721;--material: rgba(26, 24, 21, .62);--material-pop: rgba(31, 29, 25, .84);--scrim: rgba(0, 0, 0, .52);--text-1: #f2f0eb;--text-2: #a9a49b;--text-3: #8e8a82;--hairline: rgba(255, 255, 255, .1);--hairline-strong: rgba(255, 255, 255, .16);--fill: rgba(255, 255, 255, .08);--fill-strong: rgba(255, 255, 255, .13);--hover: rgba(255, 255, 255, .05);--accent: #e05341;--accent-hover: #ea6352;--accent-soft: rgba(224, 83, 65, .16);--accent-line: rgba(224, 83, 65, .32);--gold: #d9b45c;--gold-bright: #f0cd7a;--gold-soft: rgba(217, 180, 92, .13);--gold-line: rgba(217, 180, 92, .34);--green: #45cd6e;--green-bg: rgba(69, 205, 110, .15);--orange: #ffb340;--orange-bg: rgba(255, 179, 64, .15);--red: #ff6b5e;--red-bg: rgba(255, 107, 94, .14);--gray-bg: rgba(150, 150, 158, .16);--focus-ring: #409cff;--focus-glow: rgba(64, 156, 255, .3);--shadow-1: 0 1px 2px rgba(0, 0, 0, .4);--shadow-2: 0 2px 6px rgba(0, 0, 0, .4), 0 10px 28px rgba(0, 0, 0, .38);--shadow-3: -24px 0 64px rgba(0, 0, 0, .55);--shadow-4: 0 24px 80px rgba(0, 0, 0, .6);--lp-brand: radial-gradient(90% 70% at 18% 0%, rgba(217, 180, 92, .16), transparent 60%), linear-gradient(158deg, #201b14, #161310 52%, #0f0d0a);--lp-divider: var(--gold-line);--bg-glow: radial-gradient(60% 45% at 85% 0%, rgba(224, 83, 65, .055), transparent 70%), radial-gradient(55% 45% at 10% 100%, rgba(217, 180, 92, .06), transparent 72%);--eyebrow: var(--gold);--line-pop: var(--gold-line);--focus-line: var(--gold-line);--role-admin: var(--gold);--toast-bg: rgba(54, 52, 47, .94);--toast-fg: #f2f0eb;color-scheme:dark}@media (prefers-reduced-transparency: reduce){.v-fusion{--material: var(--surface-1);--material-pop: var(--surface-1)}}@media (min-width: 1600px){.v-fusion{--page-max: 1360px}}@media (min-width: 2200px){.v-fusion{--page-max: 1640px;--drawer-w: 460px;--sp-7: 36px;--sp-8: 44px}}@media (min-width: 3200px){.v-fusion{--page-max: 2048px;--drawer-w: 480px;--fs-display: 32px;--fs-h1: 24px;--fs-h2: 17px;--fs-body: 15px;--fs-sub: 14px;--fs-cap: 13px;--sp-5: 24px;--sp-6: 28px;--sp-7: 40px;--sp-8: 48px}}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font);font-size:var(--fs-body);line-height:var(--lh-body);color:var(--text-1);background:var(--bg);background-image:var(--bg-glow);background-attachment:fixed;-webkit-font-smoothing:antialiased}.num{font-variant-numeric:tabular-nums}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:var(--r-ctl)}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.55}h1,h2,h3,p{margin:0}.app-shell{display:grid;grid-template-columns:var(--sidebar-w) 1fr;min-height:100vh;transition:transform var(--dur-sheet) var(--ease-drawer),filter var(--dur-sheet) var(--ease-drawer);transform-origin:center}html.layer-open .app-shell{transform:scale(.985);filter:brightness(.97);pointer-events:none}html[data-theme=night].layer-open .app-shell{filter:brightness(.9)}.sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;background:var(--material);backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);border-right:1px solid var(--hairline);padding:var(--sp-5) var(--sp-3) var(--sp-4);z-index:var(--z-nav)}.brand{display:flex;align-items:center;gap:var(--sp-3);padding:0 var(--sp-2) var(--sp-4)}.brand img{width:34px;height:34px;border-radius:9px}.brand-name{font-size:15px;font-weight:600;letter-spacing:var(--track-h1)}.brand-en{font-size:10px;letter-spacing:.14em;color:var(--eyebrow);margin-top:1px}.nav{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.nav-label{font-size:var(--fs-cap);letter-spacing:var(--track-cap);color:var(--eyebrow);padding:var(--sp-4) var(--sp-3) var(--sp-1)}.nav-item{position:relative;display:flex;align-items:center;gap:var(--sp-3);padding:8px var(--sp-3);border-radius:var(--r-ctl);color:var(--text-2);text-decoration:none;font-size:var(--fs-body);transition:background var(--dur-press) var(--ease-out),color var(--dur-press) var(--ease-out)}.nav-item svg{flex:none;opacity:.85}@media (hover: hover) and (pointer: fine){.nav-item:hover{background:var(--hover);color:var(--text-1)}}.nav-item.active{background:var(--accent-soft);color:var(--accent);font-weight:550}.nav-item .badge{margin-left:auto}.badge{min-width:20px;height:20px;padding:0 6px;border-radius:var(--r-pill);background:var(--accent);color:var(--text-on-accent);font-size:11px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;font-variant-numeric:tabular-nums}.badge.is-zero{display:none}.sidebar-foot{display:flex;flex-direction:column;gap:var(--sp-3);padding-top:var(--sp-3);border-top:1px solid var(--hairline)}.account{display:flex;align-items:center;gap:var(--sp-3);padding:0 var(--sp-2)}.account-name{font-size:var(--fs-body);font-weight:550}.account-meta{font-size:var(--fs-cap);color:var(--text-3);margin-top:1px}.account .icon-btn{margin-left:auto}.content{min-width:0;padding:var(--sp-7) var(--sp-7) var(--sp-8)}.page{max-width:var(--page-max);margin:0 auto;display:flex;flex-direction:column;gap:var(--sp-7)}.page.narrow{max-width:var(--read-max)}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-4)}.page-head h1{font-size:var(--fs-h1);line-height:var(--lh-h1);letter-spacing:var(--track-h1);font-weight:650}.page-head .sub{margin-top:var(--sp-1);color:var(--text-2);font-size:var(--fs-sub)}.section{display:flex;flex-direction:column;gap:var(--sp-3)}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-3)}.section-title{font-size:var(--fs-h2);font-weight:600;letter-spacing:var(--track-h1)}.section-note{font-size:var(--fs-cap);color:var(--text-3)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:7px 14px;border:1px solid var(--hairline-strong);border-radius:var(--r-ctl);background:var(--surface-1);font-size:var(--fs-sub);font-weight:500;color:var(--text-1);transition:transform var(--dur-press) var(--ease-out),background var(--dur-press) var(--ease-out),border-color var(--dur-press) var(--ease-out)}.btn:active{transform:scale(.97)}@media (hover: hover) and (pointer: fine){.btn:hover{background:var(--surface-3)}}.btn-primary{background:var(--accent);border-color:transparent;color:var(--text-on-accent)}@media (hover: hover) and (pointer: fine){.btn-primary:hover{background:var(--accent-hover)}}.btn-danger{color:var(--red)}.btn-sm{padding:4px 10px;font-size:var(--fs-cap);border-radius:7px}.icon-btn{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:var(--r-ctl);background:transparent;color:var(--text-2);transition:transform var(--dur-press) var(--ease-out),background var(--dur-press) var(--ease-out)}.icon-btn:active{transform:scale(.94)}@media (hover: hover) and (pointer: fine){.icon-btn:hover{background:var(--fill);color:var(--text-1)}}.bell{position:relative}.bell .badge{position:absolute;top:-4px;right:-4px;transform:scale(.85)}.pill{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--r-pill);font-size:var(--fs-cap);font-weight:500;background:var(--gray-bg);color:var(--text-2);white-space:nowrap}.pill.ok{background:var(--green-bg);color:var(--green)}.pill.warn{background:var(--orange-bg);color:var(--orange)}.pill.red{background:var(--red-bg);color:var(--red)}.pill.gold{background:var(--gold-soft);color:var(--gold)}.pill.accent{background:var(--accent-soft);color:var(--accent)}.tag-mock{font-size:10px;color:var(--text-3);border:1px dashed var(--hairline-strong);border-radius:4px;padding:0 4px;margin-left:6px;vertical-align:1px;white-space:nowrap}.card{background:var(--surface-1);border:1px solid var(--hairline);border-radius:var(--r-card);box-shadow:var(--shadow-1)}.focus-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--sp-5);align-items:stretch}.focus-panel{display:flex;flex-direction:column;box-shadow:inset 0 1px 0 var(--focus-line),var(--shadow-1)}.focus-head{display:flex;align-items:baseline;justify-content:space-between;padding:var(--sp-5) var(--sp-5) 0}.focus-title{display:flex;align-items:baseline;gap:var(--sp-3)}.focus-title h2{font-size:var(--fs-h2);font-weight:600}.focus-count{font-size:var(--fs-display);line-height:var(--lh-display);letter-spacing:var(--track-display);font-weight:650;color:var(--accent)}.focus-sub{font-size:var(--fs-cap);color:var(--text-3)}.todo-list{list-style:none;margin:var(--sp-3) 0 0;padding:0 var(--sp-2) var(--sp-2)}.todo-row{display:flex;align-items:center;gap:var(--sp-3);padding:10px var(--sp-3);border-radius:var(--r-ctl);text-decoration:none;color:inherit;transition:background var(--dur-press) var(--ease-out)}@media (hover: hover) and (pointer: fine){.todo-row:hover{background:var(--hover)}}.todo-main{min-width:0;flex:1}.todo-title{font-size:var(--fs-body);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.todo-sub{font-size:var(--fs-cap);color:var(--text-3);margin-top:1px}.todo-time{font-size:var(--fs-cap);color:var(--text-3);flex:none}.focus-more{display:block;text-align:center;padding:9px;margin:auto var(--sp-2) var(--sp-2);border-top:1px solid var(--hairline);color:var(--accent);font-size:var(--fs-sub);font-weight:500;text-decoration:none;border-radius:0 0 var(--r-card) var(--r-card)}.focus-panel .empty-action{margin:var(--sp-4) var(--sp-5) var(--sp-5)}.stat-stack{display:flex;flex-direction:column;gap:var(--sp-3)}.stat-card{display:flex;align-items:center;gap:var(--sp-4);padding:var(--sp-4) var(--sp-5);text-decoration:none;color:inherit;flex:1;transition:transform var(--dur-press) var(--ease-out),box-shadow var(--dur-ui) var(--ease-out)}a.stat-card:active{transform:scale(.98)}@media (hover: hover) and (pointer: fine){.stat-card:hover{box-shadow:var(--shadow-2);transform:translateY(-1px)}}.stat-ico{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:var(--fill);color:var(--text-2);flex:none}.stat-ico.red{background:var(--red-bg);color:var(--red)}.stat-ico.gold{background:var(--gold-soft);color:var(--gold)}.stat-num{font-size:20px;font-weight:650;letter-spacing:var(--track-h1)}.stat-label{font-size:var(--fs-cap);color:var(--text-2);margin-top:1px}.stat-hint{margin-left:auto;font-size:var(--fs-cap);color:var(--text-3);text-align:right}.sys-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(228px,1fr));gap:var(--sp-4)}.sys-card{position:relative;display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--sp-5);text-align:left;border:1px solid var(--hairline);background:var(--surface-1);border-radius:var(--r-card);box-shadow:var(--shadow-1);transition:transform var(--dur-ui) var(--ease-out),box-shadow var(--dur-ui) var(--ease-out)}.sys-card:active{transform:scale(.98)}@media (hover: hover) and (pointer: fine){.sys-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-2)}}.sys-ico{width:40px;height:40px;border-radius:11px;display:flex;align-items:center;justify-content:center;background:var(--accent-soft);color:var(--accent);margin-bottom:var(--sp-1)}.sys-name{font-size:15px;font-weight:600}.sys-desc{font-size:var(--fs-cap);color:var(--text-3);line-height:1.45}.sys-card .badge{position:absolute;top:var(--sp-3);right:var(--sp-3)}.sys-state{font-size:var(--fs-cap);color:var(--text-3);display:flex;align-items:center;gap:5px;margin-top:auto;padding-top:var(--sp-2)}.sys-state .dot{width:6px;height:6px;border-radius:50%;background:var(--green)}.sys-state.off .dot{background:var(--text-3)}.quick-dock{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--sp-3)}.qd-item{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-3);background:var(--surface-2);border:1px solid var(--hairline);border-radius:var(--r-card);text-align:left;transition:transform var(--dur-press) var(--ease-out),background var(--dur-press) var(--ease-out)}.qd-item:active{transform:scale(.97)}@media (hover: hover) and (pointer: fine){.qd-item:hover{background:var(--surface-3)}}.qd-ico{width:30px;height:30px;border-radius:8px;flex:none;display:flex;align-items:center;justify-content:center;background:var(--fill);color:var(--text-2)}.qd-name{font-size:var(--fs-sub);font-weight:550}.qd-hint{font-size:11px;color:var(--text-3);margin-top:1px}.table-card{background:var(--surface-1);border:1px solid var(--hairline);border-radius:var(--r-card);box-shadow:var(--shadow-1);overflow:hidden}table{width:100%;border-collapse:collapse;font-size:var(--fs-body)}thead th{text-align:left;font-size:var(--fs-cap);font-weight:500;letter-spacing:var(--track-cap);color:var(--text-3);padding:10px var(--sp-4);background:var(--surface-2);border-bottom:1px solid var(--hairline)}tbody td{padding:12px var(--sp-4);border-bottom:1px solid var(--hairline);vertical-align:middle}tbody tr:last-child td{border-bottom:none}tbody tr.clickable{cursor:pointer;transition:background var(--dur-press) var(--ease-out)}@media (hover: hover) and (pointer: fine){tbody tr.clickable:hover{background:var(--hover)}}tbody tr.clickable.selected{background:var(--accent-soft)}.cell-main{display:block;font-weight:500}.cell-sub{display:block;font-size:var(--fs-cap);color:var(--text-3);margin-top:1px}.role-admin{color:var(--role-admin)}.row-actions{display:flex;gap:var(--sp-2)}.msg-row{display:flex;align-items:center;gap:var(--sp-4);padding:var(--sp-4) var(--sp-5);border-bottom:1px solid var(--hairline);cursor:pointer;transition:background var(--dur-press) var(--ease-out)}.msg-row:last-child{border-bottom:none}@media (hover: hover) and (pointer: fine){.msg-row:hover{background:var(--hover)}}.msg-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);flex:none}.msg-dot.read{background:transparent}.msg-main{flex:1;min-width:0}.msg-title{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.msg-row.is-read .msg-title{color:var(--text-2);font-weight:400}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--scrim);opacity:0;transition:opacity var(--dur-ui) var(--ease-out);z-index:var(--z-drawer)}.scrim.is-in{opacity:1}.drawer{position:fixed;top:0;right:0;bottom:0;width:min(var(--drawer-w),100vw);background:var(--material-pop);backdrop-filter:blur(24px) saturate(160%);-webkit-backdrop-filter:blur(24px) saturate(160%);border-left:1px solid var(--line-pop);box-shadow:var(--shadow-3);transform:translate(100%);transition:transform var(--dur-sheet) var(--ease-drawer);z-index:var(--z-drawer);display:flex;flex-direction:column}.drawer.is-in{transform:translate(0)}.drawer.is-dragging{transition:none}.drawer-grip{position:absolute;left:-7px;top:50%;translate:0 -50%;width:14px;height:64px;display:flex;align-items:center;justify-content:center;cursor:ew-resize;touch-action:none}.drawer-grip:after{content:"";width:4px;height:36px;border-radius:2px;background:var(--hairline-strong)}.drawer-head{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-5) var(--sp-5) var(--sp-4);border-bottom:1px solid var(--hairline)}.drawer-title{font-size:var(--fs-h2);font-weight:600;flex:1;min-width:0}.drawer-body{flex:1;overflow-y:auto;padding:var(--sp-4) var(--sp-5)}.drawer-foot{display:flex;justify-content:flex-end;gap:var(--sp-3);padding:var(--sp-4) var(--sp-5);border-top:1px solid var(--hairline)}.drawer dl{margin:var(--sp-3) 0 0}.drawer dt{font-size:var(--fs-cap);color:var(--text-3);margin-top:var(--sp-3)}.drawer dd{margin:4px 0 0;font-size:var(--fs-sub)}.grant-row{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-3) 0;border-bottom:1px solid var(--hairline)}.grant-row:last-child{border-bottom:none}.grant-name{font-weight:500}.grant-desc{font-size:var(--fs-cap);color:var(--text-3);margin-top:1px}.grant-row .switch{margin-left:auto}.modal-scrim{z-index:var(--z-modal);display:grid;place-items:center}.modal{width:min(420px,calc(100vw - 32px));background:var(--material-pop);backdrop-filter:blur(24px) saturate(160%);-webkit-backdrop-filter:blur(24px) saturate(160%);border:1px solid var(--line-pop);border-radius:var(--r-panel);box-shadow:var(--shadow-4);padding:var(--sp-5);opacity:0;transform:scale(.96);transition:opacity var(--dur-pop) var(--ease-out),transform var(--dur-pop) var(--ease-out)}.modal.is-in{opacity:1;transform:scale(1)}.modal-title{font-size:var(--fs-h2);font-weight:600;margin-bottom:var(--sp-3)}.modal .sub{color:var(--text-2);font-size:var(--fs-sub);line-height:1.7}.modal-actions{display:flex;justify-content:flex-end;gap:var(--sp-3);margin-top:var(--sp-5)}.toast{position:fixed;left:50%;bottom:28px;translate:-50% 0;background:var(--toast-bg);color:var(--toast-fg);font-size:var(--fs-sub);font-weight:500;padding:10px 18px;border-radius:var(--r-pill);box-shadow:var(--shadow-2);z-index:var(--z-toast);opacity:0;transform:translateY(12px);transition:opacity var(--dur-ui) var(--ease-out),transform var(--dur-ui) var(--ease-out)}.toast.is-in{opacity:1;transform:translateY(0)}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:var(--sp-4)}.field label{font-size:var(--fs-sub);font-weight:500;color:var(--text-2)}.field input,.field select{font:inherit;padding:8px 12px;border:1px solid var(--hairline-strong);border-radius:var(--r-ctl);background:var(--surface-1);color:var(--text-1);transition:border-color var(--dur-press) var(--ease-out),box-shadow var(--dur-press) var(--ease-out)}.field input:focus,.field select:focus{outline:none;border-color:var(--focus-ring);box-shadow:0 0 0 3px var(--focus-glow)}.field input.is-error{border-color:var(--red)}.field-error{font-size:var(--fs-cap);color:var(--red);min-height:16px}.toolbar{display:flex;gap:var(--sp-2);align-items:center;flex-wrap:wrap}.ctl{font:inherit;font-size:var(--fs-sub);padding:7px 12px;border:1px solid var(--hairline-strong);border-radius:var(--r-ctl);background:var(--surface-1);color:var(--text-1)}.ctl:focus{outline:none;border-color:var(--focus-ring);box-shadow:0 0 0 3px var(--focus-glow)}.switch{position:relative;width:44px;height:26px;border-radius:var(--r-pill);border:none;background:var(--fill-strong);transition:background var(--dur-ui) var(--ease-out);flex:none;padding:0}.switch:after{content:"";position:absolute;top:2px;left:2px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000040;transition:transform var(--dur-ui) var(--ease-out)}.switch.on{background:var(--green)}.switch.on:after{transform:translate(18px)}.seg{position:relative;display:grid;grid-template-columns:1fr 1fr;background:var(--fill);border-radius:var(--r-ctl);padding:2px}.seg button{position:relative;z-index:1;border:none;background:none;padding:5px 0;font-size:var(--fs-cap);font-weight:500;color:var(--text-2);border-radius:6px;transition:color var(--dur-ui) var(--ease-out)}.seg button.active{color:var(--text-1)}.seg-thumb{position:absolute;top:2px;bottom:2px;left:2px;width:calc(50% - 2px);background:var(--surface-1);border-radius:6px;box-shadow:var(--shadow-1);transition:transform var(--dur-ui) var(--ease-out)}.seg[data-at="1"] .seg-thumb{transform:translate(100%)}.filter-seg{width:240px}.skel{height:14px;border-radius:6px;background:linear-gradient(90deg,var(--fill) 25%,var(--fill-strong) 50%,var(--fill) 75%);background-size:200% 100%;animation:shimmer 1.2s linear infinite}@keyframes shimmer{to{background-position:-200% 0}}.skel-block{padding:var(--sp-5);display:flex;flex-direction:column;gap:var(--sp-3)}.state-card{background:var(--surface-1);border:1px solid var(--hairline);border-radius:var(--r-card);box-shadow:var(--shadow-1);padding:var(--sp-6);text-align:center;color:var(--text-2);font-size:var(--fs-sub)}.state-card .btn{margin-top:var(--sp-3)}.empty-action{padding:var(--sp-7) var(--sp-5);text-align:center;color:var(--text-3);font-size:var(--fs-sub);border:1px dashed var(--hairline-strong);border-radius:var(--r-card)}.foot-note{font-size:var(--fs-cap);color:var(--text-3);text-align:center}.id-head{display:flex;align-items:center;gap:var(--sp-5);padding:var(--sp-6)}.id-avatar{width:64px;height:64px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;background:var(--accent-soft);color:var(--accent);font-size:24px;font-weight:600}.id-name{display:flex;align-items:center;gap:var(--sp-3);font-size:20px;font-weight:650;letter-spacing:var(--track-h1)}.id-meta{color:var(--text-2);font-size:var(--fs-sub);margin-top:4px}.id-actions{margin-left:auto;display:flex;gap:var(--sp-2)}.zone{padding:var(--sp-5) var(--sp-6);border-top:1px solid var(--hairline)}.zone-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-3);margin-bottom:var(--sp-4)}.zone-head h3{font-size:var(--fs-h2);font-weight:600}.zone-note{font-size:var(--fs-cap);color:var(--text-3)}.pf-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-4) var(--sp-6)}.pf-field .k{font-size:var(--fs-cap);color:var(--text-3);margin-bottom:3px}.pf-field .v{font-size:var(--fs-body)}.pf-field .v.is-empty{color:var(--text-3)}.pf-field.span-2{grid-column:span 2}.sys-chip{display:inline-block;padding:3px 10px;margin:0 6px 6px 0;background:var(--fill);border-radius:var(--r-pill);font-size:var(--fs-cap);font-weight:500}.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr)}.login-brand{background:var(--lp-brand);color:var(--lp-text);box-shadow:inset -1px 0 0 var(--lp-divider);display:flex;flex-direction:column;justify-content:center;padding:var(--sp-8)}.login-brand img{width:56px;height:56px;border-radius:14px;margin-bottom:var(--sp-5)}.login-brand h1{font-size:26px;letter-spacing:var(--track-h1);font-weight:650}.login-brand p{margin-top:var(--sp-3);opacity:.82;font-size:var(--fs-sub);max-width:34ch;line-height:1.7}.login-side{display:flex;align-items:center;justify-content:center;padding:var(--sp-7)}.login-card{width:min(360px,100%);display:flex;flex-direction:column;gap:var(--sp-5)}.login-card h2{font-size:var(--fs-h1);letter-spacing:var(--track-h1);font-weight:650}.login-card .sub{color:var(--text-2);font-size:var(--fs-sub);margin-top:6px}.btn-login{padding:10px;font-size:var(--fs-body)}.login-foot-row{display:flex;justify-content:space-between;align-items:center;gap:var(--sp-3)}.login-foot-row .note{font-size:var(--fs-cap);color:var(--text-3)}.login-foot-row .seg{width:120px;flex:none}@keyframes page-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.page-stack .enter-block{opacity:0}.page-stack.is-in .enter-block{animation:page-in .28s var(--ease-out) both}.page-stack .enter-block.enter-d1{animation-delay:60ms}.page-stack .enter-block.enter-d2{animation-delay:.12s}.nav-toggle,.nav-scrim{display:none}@media (min-width: 3200px){.brand-name{font-size:16px}.brand-en{font-size:11px}.badge{font-size:12px}.stat-num{font-size:22px}.stat-ico{width:40px;height:40px}.sys-name{font-size:16px}.sys-ico{width:44px;height:44px}.qd-ico{width:34px;height:34px}.qd-hint{font-size:12px}}@media (max-width: 1279px){.app-shell{grid-template-columns:var(--rail-w) 1fr}.sidebar{padding:var(--sp-4) var(--sp-2);align-items:center}.brand div,.nav-label,.nav-item span,.account>div,.sidebar-foot .seg{display:none}.nav-item{justify-content:center;padding:10px}.nav-item .badge{position:absolute;margin:0;translate:12px -10px}.account .icon-btn{margin:0}}@media (max-width: 1023px){.focus-grid,.pf-grid{grid-template-columns:1fr}.pf-field.span-2{grid-column:span 1}.login-page{grid-template-columns:1fr}.login-brand{display:none}}@media (max-width: 767px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;left:0;top:0;bottom:0;width:min(300px,84vw);align-items:stretch;transform:translate(-100%);transition:transform var(--dur-sheet) var(--ease-drawer);box-shadow:var(--shadow-3)}.app-shell.nav-open .sidebar{transform:translate(0)}.brand div,.nav-label,.nav-item span,.account>div{display:block}.sidebar-foot .seg{display:grid}.nav-item{justify-content:flex-start;padding:8px var(--sp-3)}.nav-item .badge{position:static;margin-left:auto;translate:none}.content{padding:var(--sp-4);padding-top:var(--sp-8)}.nav-scrim.is-in{display:block;z-index:calc(var(--z-nav) - 1)}.nav-toggle{position:fixed;top:var(--sp-3);left:var(--sp-3);z-index:calc(var(--z-nav) - 1);width:38px;height:38px;border-radius:10px;border:1px solid var(--hairline);background:var(--material-pop);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:var(--text-1);display:flex;align-items:center;justify-content:center}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.15s!important;transition-duration:.15s!important}.page-stack.is-in .enter-block{animation-name:fade-only}@keyframes fade-only{0%{opacity:0}to{opacity:1}}.app-shell{transition-property:filter!important;transform:none!important}html.layer-open .app-shell{transform:none}.drawer,.drawer.is-in{transition-property:opacity!important;transform:none!important;opacity:0}.drawer.is-in{opacity:1}@media (hover: hover) and (pointer: fine){.sys-card:hover,.stat-card:hover{transform:none!important}}.skel{animation:none;background:var(--fill)}}
