:root{--font-sans: -apple-system, BlinkMacSystemFont, "SF Pro Text", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans CJK SC", sans-serif;--font-display: -apple-system, BlinkMacSystemFont, "SF Pro Display", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans CJK SC", sans-serif;--font-mono: "SF Mono", ui-monospace, Menlo, Consolas, monospace;--fs-2xs: 11px;--fs-xs: 12px;--fs-sm: 13px;--fs-md: 14px;--fs-lg: 16px;--fs-xl: 19px;--fs-2xl: 24px;--fs-3xl: 30px;--fs-hero: clamp(40px, 4.6vw, 60px);--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 20px;--s-6: 24px;--s-7: 28px;--s-8: 32px;--s-10: 40px;--s-12: 48px;--s-16: 64px;--radius-xs: 6px;--radius-sm: 10px;--radius-md: 14px;--radius-lg: 20px;--radius-xl: 26px;--control-h: 36px;--control-h-sm: 30px;--page-max: 1180px;--glass-blur: 40px;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--dur-1: .12s;--dur-2: .2s;--dur-3: .32s}:root,:root[data-theme=dark]{color-scheme:dark;--bg: #07080a;--lamp-1: rgba(58, 148, 136, .26);--lamp-2: rgba(206, 132, 70, .17);--lamp-3: rgba(60, 80, 120, .1);--text: #f5f5f7;--text-2: rgba(235, 235, 245, .72);--text-3: rgba(235, 235, 245, .46);--text-4: rgba(235, 235, 245, .28);--text-inverse: #0b0c0e;--glass-top: rgba(255, 255, 255, .08);--glass-bottom: rgba(255, 255, 255, .035);--glass-rim: rgba(255, 255, 255, .075);--glass-hi: rgba(255, 255, 255, .13);--glass-drop: 0 24px 60px -28px rgba(0, 0, 0, .75);--glass-thick: rgba(30, 32, 37, .8);--glass-thick-rim: rgba(255, 255, 255, .1);--surface: #1c1d21;--fill: rgba(255, 255, 255, .06);--fill-2: rgba(255, 255, 255, .1);--well: rgba(0, 0, 0, .26);--well-rim: rgba(255, 255, 255, .07);--on: rgba(255, 255, 255, .16);--on-text: #ffffff;--btn: rgba(255, 255, 255, .09);--btn-hover: rgba(255, 255, 255, .14);--primary-bg: #f5f5f7;--primary-text: #0b0c0e;--primary-hover: #ffffff;--sep: rgba(255, 255, 255, .09);--sep-2: rgba(255, 255, 255, .06);--sep-strong: rgba(255, 255, 255, .16);--hover: rgba(255, 255, 255, .06);--press: rgba(255, 255, 255, .1);--scrim: rgba(0, 0, 0, .45);--accent: #64d2ff;--accent-text: #7fdcff;--accent-wash: rgba(100, 210, 255, .14);--accent-line: rgba(100, 210, 255, .5);--focus-ring: 0 0 0 3px rgba(100, 210, 255, .35);--focus: rgba(100, 210, 255, .8);--line: #64d2ff;--line-glow: rgba(100, 210, 255, .55);--area-opacity: .22;--bar-glow: 45%;--green: #4ae07a;--red: #ff6961;--green-wash: rgba(48, 209, 88, .14);--red-wash: rgba(255, 69, 58, .16);--green-rim: rgba(48, 209, 88, .22);--red-rim: rgba(255, 69, 58, .24);--warn: #ffb340;--warn-wash: rgba(255, 159, 10, .14);--danger: #ff6961;--cat-1: #0a84ff;--cat-2: #e7660e;--cat-3: #00a768;--cat-4: #c90f78;--cat-5: #a155da;--cat-6: #a78e11;--cat-7: #17a0b7;--cat-8: #b44f00;--cat-neutral: #98989d;--cat-other: #636366;--grid: rgba(255, 255, 255, .06);--axis: rgba(255, 255, 255, .14);--tick: rgba(235, 235, 245, .42);--crosshair: rgba(255, 255, 255, .3);--shadow-pop: 0 30px 70px -20px rgba(0, 0, 0, .7), 0 0 0 1px rgba(255, 255, 255, .06);--shadow-soft: 0 6px 18px -8px rgba(0, 0, 0, .6)}:root[data-theme=light]{color-scheme:light;--bg: #eef1f4;--lamp-1: rgba(96, 196, 182, .36);--lamp-2: rgba(255, 176, 120, .32);--lamp-3: rgba(140, 170, 230, .2);--text: #1d1d1f;--text-2: rgba(60, 60, 67, .8);--text-3: rgba(60, 60, 67, .56);--text-4: rgba(60, 60, 67, .34);--text-inverse: #ffffff;--glass-top: rgba(255, 255, 255, .78);--glass-bottom: rgba(255, 255, 255, .5);--glass-rim: rgba(0, 0, 0, .055);--glass-hi: rgba(255, 255, 255, .95);--glass-drop: 0 24px 56px -30px rgba(40, 52, 72, .32);--glass-thick: rgba(250, 250, 252, .86);--glass-thick-rim: rgba(0, 0, 0, .07);--surface: #ffffff;--fill: rgba(118, 118, 128, .1);--fill-2: rgba(118, 118, 128, .16);--well: rgba(118, 118, 128, .12);--well-rim: rgba(0, 0, 0, .03);--on: #ffffff;--on-text: #1d1d1f;--btn: rgba(255, 255, 255, .72);--btn-hover: #ffffff;--primary-bg: #1d1d1f;--primary-text: #ffffff;--primary-hover: #000000;--sep: rgba(60, 60, 67, .12);--sep-2: rgba(60, 60, 67, .08);--sep-strong: rgba(60, 60, 67, .22);--hover: rgba(0, 0, 0, .045);--press: rgba(0, 0, 0, .08);--scrim: rgba(24, 30, 40, .22);--accent: #0a84ff;--accent-text: #0066cc;--accent-wash: rgba(10, 132, 255, .1);--accent-line: rgba(10, 132, 255, .45);--focus-ring: 0 0 0 3px rgba(10, 132, 255, .28);--focus: rgba(10, 132, 255, .72);--line: #0a84ff;--line-glow: rgba(10, 132, 255, .28);--area-opacity: .16;--bar-glow: 16%;--green: #1f8f3e;--red: #d70015;--green-wash: rgba(52, 199, 89, .14);--red-wash: rgba(255, 59, 48, .1);--green-rim: rgba(52, 199, 89, .24);--red-rim: rgba(255, 59, 48, .2);--warn: #b25000;--warn-wash: rgba(255, 149, 0, .13);--danger: #d70015;--cat-1: #007aff;--cat-2: #e7660e;--cat-3: #079f67;--cat-4: #bb086f;--cat-5: #9737d5;--cat-6: #a48b08;--cat-7: #0799b2;--cat-8: #a74a04;--cat-neutral: #8e8e93;--cat-other: #c7c7cc;--grid: rgba(60, 60, 67, .08);--axis: rgba(60, 60, 67, .2);--tick: rgba(60, 60, 67, .5);--crosshair: rgba(60, 60, 67, .3);--shadow-pop: 0 30px 70px -24px rgba(30, 40, 60, .35), 0 0 0 1px rgba(0, 0, 0, .05);--shadow-soft: 0 6px 18px -10px rgba(30, 40, 60, .3)}:root{--pnl-up: var(--green);--pnl-down: var(--red);--pnl-up-wash: var(--green-wash);--pnl-down-wash: var(--red-wash);--pnl-up-rim: var(--green-rim);--pnl-down-rim: var(--red-rim)}:root[data-pnl=red-up]{--pnl-up: var(--red);--pnl-down: var(--green);--pnl-up-wash: var(--red-wash);--pnl-down-wash: var(--green-wash);--pnl-up-rim: var(--red-rim);--pnl-down-rim: var(--green-rim)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;background:var(--bg)}body{margin:0;min-height:100dvh;background:transparent;color:var(--text);font:400 var(--fs-md)/1.5 var(--font-sans);letter-spacing:-.01em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-feature-settings:"kern"}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:radial-gradient(1100px 720px at 8% -12%,var(--lamp-1),transparent 62%),radial-gradient(900px 620px at 100% 108%,var(--lamp-2),transparent 60%),radial-gradient(700px 500px at 60% 40%,var(--lamp-3),transparent 70%),var(--bg)}h1,h2,h3,h4,h5,p,ul,ol,dl,dd,figure,blockquote{margin:0}ul,ol{padding:0;list-style:none}h1,h2,h3,h4{font-weight:600;line-height:1.3;font-family:var(--font-display)}button,input,select,textarea{font:inherit;color:inherit;letter-spacing:inherit}button{cursor:pointer;background:none;border:0;padding:0}button:disabled{cursor:not-allowed}img,svg,canvas{display:block;max-width:100%}a{color:var(--accent-text);text-decoration:none;text-underline-offset:3px}a:hover{text-decoration:underline;text-decoration-thickness:1px}table{border-collapse:collapse;border-spacing:0}th{font-weight:500;text-align:left}kbd{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:5px;background:var(--fill);box-shadow:inset 0 0 0 1px var(--sep);color:var(--text-3);font:500 10.5px/1 var(--font-sans)}hr{border:0;border-top:1px solid var(--sep);margin:var(--s-4) 0}::selection{background:var(--accent-wash);color:var(--text)}:focus{outline:none}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:var(--radius-sm)}[hidden]{display:none!important}*{scrollbar-width:thin;scrollbar-color:var(--sep-strong) transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:var(--sep-strong);border-radius:8px;border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-track{background:transparent}.num{font-variant-numeric:tabular-nums;letter-spacing:-.01em;white-space:nowrap}.figure{font-family:var(--font-display);font-variant-numeric:tabular-nums;letter-spacing:-.025em;white-space:nowrap}.serif{font-family:var(--font-display)}.mono{font-family:var(--font-mono);letter-spacing:0}.code{font:400 var(--fs-xs)/1.4 var(--font-sans);color:var(--text-3);letter-spacing:0;font-variant-numeric:tabular-nums}.up{color:var(--pnl-up)!important}.down{color:var(--pnl-down)!important}.muted{color:var(--text-3)}.faint{color:var(--text-4)}.accent{color:var(--accent-text)}.warn-text{color:var(--warn)!important}.nowrap{white-space:nowrap}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.eyebrow{font:500 var(--fs-xs)/1.4 var(--font-sans);color:var(--text-3)}.label{font-size:var(--fs-xs);line-height:1.4;color:var(--text-3)}.cv-icon{display:inline-block;flex:none;vertical-align:-.16em;overflow:visible}.cv-accent{fill:currentColor}::view-transition-old(root),::view-transition-new(root){animation-duration:.42s;animation-timing-function:var(--ease-out)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.glass,.panel{--chart-surface: var(--surface);position:relative;border-radius:var(--radius-xl);background:linear-gradient(180deg,var(--glass-top),var(--glass-bottom));box-shadow:inset 0 0 0 1px var(--glass-rim),inset 0 1px 0 var(--glass-hi),var(--glass-drop)}.panel{min-width:0;padding:22px 24px}.panel-tight{padding:16px 18px;border-radius:var(--radius-lg)}.thick-glass{background:var(--glass-thick);box-shadow:inset 0 0 0 1px var(--glass-thick-rim),var(--shadow-pop);backdrop-filter:blur(var(--glass-blur)) saturate(170%);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(170%)}.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-h);padding:0 16px;border:0;border-radius:999px;background:var(--btn);color:var(--text);box-shadow:inset 0 0 0 1px var(--glass-rim),inset 0 1px 0 var(--glass-hi);font-size:13.5px;font-weight:500;line-height:1;white-space:nowrap;transition:background-color var(--dur-1) ease,color var(--dur-1) ease,transform var(--dur-2) var(--ease-out),box-shadow var(--dur-1) ease;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.btn:hover:not(:disabled){background:var(--btn-hover)}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.4}.btn .cv-icon{opacity:.92}.btn-sm{height:var(--control-h-sm);padding:0 12px;font-size:var(--fs-xs);gap:5px}.btn-lg{height:44px;padding:0 22px;font-size:var(--fs-md)}.btn-block{width:100%}.btn-primary{background:var(--primary-bg);color:var(--primary-text);box-shadow:0 8px 20px -10px #00000073}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.btn-ghost{background:transparent;box-shadow:none;color:var(--text-2)}.btn-ghost:hover:not(:disabled){background:var(--hover);color:var(--text)}.btn-danger{color:var(--danger)}.btn-danger:hover:not(:disabled){background:var(--red-wash)}.btn-primary.btn-danger{background:var(--danger);color:#fff}.btn-primary.btn-danger:hover:not(:disabled){filter:brightness(1.06);background:var(--danger)}.btn-link{height:auto;padding:0;border-radius:4px;background:none;box-shadow:none;color:var(--accent-text);font-weight:500}.btn-link:hover:not(:disabled){background:none;text-decoration:underline;text-underline-offset:3px}.btn-link:active:not(:disabled){transform:none}.btn-icon{width:var(--control-h);padding:0}.btn-sm.btn-icon{width:var(--control-h-sm)}@media(pointer:coarse){.btn-sm{height:36px}.btn-sm.btn-icon{width:36px}}.btn[aria-busy=true]{color:transparent!important;pointer-events:none}.btn[aria-busy=true] .btn-spinner{color:var(--text)}.btn-primary[aria-busy=true] .btn-spinner{color:var(--primary-text)}.btn-spinner{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center}.spinner{width:14px;height:14px;border-radius:50%;border:1.5px solid currentColor;border-right-color:transparent;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.btn-group{display:inline-flex;gap:var(--s-2);flex-wrap:wrap;align-items:center}.field{display:grid;gap:6px;min-width:0}.field-label{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s-2);font-size:var(--fs-xs);font-weight:500;color:var(--text-2)}.field-label small{font-weight:400;color:var(--text-3)}.field-hint{font-size:var(--fs-xs);color:var(--text-3);line-height:1.45}.field-error{font-size:var(--fs-xs);color:var(--danger);line-height:1.45}.control{display:flex;align-items:center;gap:8px;min-width:0;height:var(--control-h);padding:0 12px;border:0;border-radius:12px;background:var(--well);color:var(--text);box-shadow:inset 0 0 0 1px var(--well-rim);transition:box-shadow var(--dur-1) ease,background-color var(--dur-1) ease}.control:hover{box-shadow:inset 0 0 0 1px var(--sep-strong)}.control:focus-within{box-shadow:inset 0 0 0 1px var(--accent-line),var(--focus-ring)}.control[data-invalid=true]{box-shadow:inset 0 0 0 1px var(--danger)}.control[data-disabled=true]{opacity:.5}.control input,.control select,.control textarea{flex:1;min-width:0;height:100%;border:0;background:transparent;padding:0;color:inherit;font-size:var(--fs-md)}.control input::placeholder,.control textarea::placeholder{color:var(--text-4)}.control input:focus-visible,.control select:focus-visible,.control textarea:focus-visible{outline:none;box-shadow:none}.control-affix{flex:none;color:var(--text-3);font-size:var(--fs-sm);white-space:nowrap}.control-affix .cv-icon{display:block}.control-sm{height:var(--control-h-sm);padding:0 10px;border-radius:10px}.control-sm input,.control-sm select{font-size:var(--fs-sm)}.control-lg{height:46px;border-radius:14px}.control-lg input{font-size:var(--fs-lg)}.control-textarea{height:auto;padding:9px 12px;align-items:stretch}.control-textarea textarea{resize:vertical;min-height:60px;line-height:1.5}.control-select{position:relative;padding-right:32px}.control-select select{-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer}.control-select option{background:var(--surface);color:var(--text)}.control-select:after{content:"";position:absolute;right:13px;top:50%;width:6px;height:6px;margin-top:-5px;border:solid var(--text-3);border-width:0 1.5px 1.5px 0;transform:rotate(45deg);pointer-events:none}.control input[type=number]{-moz-appearance:textfield}.control input::-webkit-outer-spin-button,.control input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.control input[type=date],.control input[type=datetime-local]{font-variant-numeric:tabular-nums}.control input::-webkit-calendar-picker-indicator{opacity:.6;cursor:pointer}.control-clear{flex:none;display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:var(--fill-2);color:var(--text-2)}.control-clear:hover{color:var(--text)}.form-grid{display:grid;gap:var(--s-4)}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--s-3)}.form-actions{display:flex;justify-content:flex-end;gap:var(--s-2);flex-wrap:wrap}.check{display:inline-flex;align-items:center;gap:9px;font-size:var(--fs-sm);color:var(--text-2);cursor:pointer;-webkit-user-select:none;user-select:none}.check input{-moz-appearance:none;appearance:none;-webkit-appearance:none;flex:none;width:18px;height:18px;margin:0;border:0;border-radius:6px;background:var(--well);box-shadow:inset 0 0 0 1px var(--sep-strong);display:grid;place-items:center;cursor:pointer;transition:background-color var(--dur-1),box-shadow var(--dur-1)}.check input:after{content:"";width:8px;height:4px;border:solid var(--primary-text);border-width:0 0 1.8px 1.8px;transform:translateY(-1px) rotate(-45deg) scale(0);transition:transform var(--dur-2) var(--ease-out)}.check input:checked{background:var(--primary-bg);box-shadow:none}.check input:checked:after{transform:translateY(-1px) rotate(-45deg) scale(1)}.check input:disabled{opacity:.45;cursor:not-allowed}.check input:disabled+span{color:var(--text-4)}.switch{position:relative;display:inline-flex;flex:none;width:40px;height:24px;border-radius:999px;background:var(--fill-2);box-shadow:inset 0 0 0 1px var(--well-rim);transition:background-color var(--dur-2) ease}.switch:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 2px 5px #00000040;transition:transform var(--dur-3) var(--ease-out)}.switch[aria-checked=true]{background:var(--accent)}.switch[aria-checked=true]:after{transform:translate(16px)}.switch:disabled{opacity:.45}.switch-label{display:inline-flex;align-items:center;gap:9px;font-size:var(--fs-sm);color:var(--text-2);cursor:pointer}.seg{display:inline-flex;align-items:center;gap:2px;padding:3px;border-radius:999px;background:var(--well);box-shadow:inset 0 0 0 1px var(--well-rim);max-width:100%;overflow-x:auto;scrollbar-width:none}.seg::-webkit-scrollbar{display:none}.seg>button{position:relative;flex:none;height:28px;padding:0 13px;border-radius:999px;color:var(--text-2);font-size:var(--fs-xs);font-weight:500;white-space:nowrap;transition:color var(--dur-1) ease,background-color var(--dur-2) ease,box-shadow var(--dur-2) ease}.seg>button:hover{color:var(--text)}.seg>button[aria-pressed=true],.seg>button[aria-selected=true]{background:var(--on);color:var(--on-text);box-shadow:inset 0 1px 0 var(--glass-hi)}:root[data-theme=light] .seg>button[aria-pressed=true],:root[data-theme=light] .seg>button[aria-selected=true]{box-shadow:0 2px 6px #0000001a,0 0 0 .5px #0000000f}.seg>button:focus-visible{outline-offset:-2px}.seg-count{margin-left:5px;font:500 10.5px/1 var(--font-sans);color:var(--text-4);font-variant-numeric:tabular-nums}.seg-md>button{height:32px;padding:0 16px;font-size:var(--fs-sm)}@media(pointer:coarse){.seg>button{min-height:32px}}.tabs{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tabs>button{position:relative;flex:none;height:34px;padding:0 16px;border-radius:999px;color:var(--text-2);font-size:var(--fs-sm);font-weight:500;white-space:nowrap;transition:background-color var(--dur-2) ease,color var(--dur-1) ease}.tabs>button:hover{color:var(--text);background:var(--hover)}.tabs>button[aria-selected=true]{color:var(--on-text);background:var(--on);box-shadow:inset 0 0 0 1px var(--glass-rim),inset 0 1px 0 var(--glass-hi)}.tabs>button:focus-visible{outline-offset:-2px}.tabs .seg-count{color:var(--text-4)}.sheet{border-radius:var(--radius-lg);background:linear-gradient(180deg,var(--glass-top),var(--glass-bottom));box-shadow:inset 0 0 0 1px var(--glass-rim),inset 0 1px 0 var(--glass-hi)}.sheet-pad{padding:var(--s-5) var(--s-6)}.section{min-width:0}.section+.section{margin-top:var(--s-4)}.section-head{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);flex-wrap:wrap;min-height:32px;margin-bottom:var(--s-3)}.section-title{display:flex;align-items:baseline;gap:var(--s-2);font:600 17px/1.25 var(--font-display);letter-spacing:-.015em;color:var(--text)}.section-title small{font:400 var(--fs-sm)/1.2 var(--font-sans);color:var(--text-3);letter-spacing:0}.section-tools{display:flex;align-items:center;gap:var(--s-2);flex-wrap:wrap}.rule{height:1px;background:var(--sep);border:0;margin:0}.rule-double{height:1px;background:var(--sep-strong)}.stat{display:grid;gap:4px;min-width:0;align-content:start}.stat-label{font-size:12.5px;color:var(--text-3);white-space:nowrap}.stat-value{font:600 var(--fs-xl)/1.2 var(--font-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--text)}.stat-note{font-size:var(--fs-xs);color:var(--text-3);line-height:1.4}.stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--s-5) var(--s-6)}.stat-row-ruled>.stat{padding-left:var(--s-5);border-left:1px solid var(--sep)}.stat-row-ruled>.stat:first-child{padding-left:0;border-left:0}.tbl-wrap{width:100%;overflow-x:auto}.tbl-wrap:has(>.tbl-hover){width:calc(100% + 24px);margin-inline:-12px}.tbl{width:100%;font-size:var(--fs-sm)}.tbl th{position:relative;padding:8px 12px;border-bottom:1px solid var(--sep);color:var(--text-3);font-size:var(--fs-xs);font-weight:500;white-space:nowrap}.tbl td{padding:12px;border-bottom:1px solid var(--sep-2);vertical-align:middle}.tbl tbody tr:last-child>td{border-bottom:0}.tbl th:first-child,.tbl td:first-child{padding-left:0}.tbl th:last-child,.tbl td:last-child{padding-right:0}.tbl-hover th:first-child,.tbl-hover td:first-child{padding-left:12px}.tbl-hover th:last-child,.tbl-hover td:last-child{padding-right:12px}.tbl-pad th:first-child,.tbl-pad td:first-child{padding-left:var(--s-4)}.tbl-pad th:last-child,.tbl-pad td:last-child{padding-right:var(--s-4)}.tbl .r{text-align:right}.tbl .c{text-align:center}.tbl td.r,.tbl td .num{font-variant-numeric:tabular-nums}.tbl tbody tr>td{transition:background-color var(--dur-1) ease}.tbl-hover tbody tr:not(.tbl-expanded-row):hover>td{background:var(--hover);border-bottom-color:transparent}.tbl-hover tbody tr:not(.tbl-expanded-row):hover>td:first-child{border-radius:12px 0 0 12px}.tbl-hover tbody tr:not(.tbl-expanded-row):hover>td:last-child{border-radius:0 12px 12px 0}.tbl-click tbody tr:not(.tbl-expanded-row){cursor:pointer}.tbl tfoot td,.tbl tr.tbl-total td{border-top:1px solid var(--sep-strong);border-bottom:0;font-weight:600}.tbl-sort{display:inline-flex;align-items:center;gap:4px;color:inherit;font:inherit}.tbl-sort:hover{color:var(--text)}.tbl-sort-mark{flex:none;fill:none;stroke:var(--text-4);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.tbl-sort-mark .on{stroke:var(--text)}.tbl-sort:hover .tbl-sort-mark{stroke:var(--text-3)}.tbl-sort.is-active{color:var(--text)}.tbl-expanded-row>td{padding:0 12px var(--s-4);background:transparent}.tbl-empty{padding:var(--s-10) var(--s-4)!important;text-align:center;color:var(--text-3)}.tbl-more{display:flex;justify-content:center;padding-top:var(--s-3)}.cell-main{display:grid;gap:1px;min-width:0}.cell-main>strong{font-weight:500;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cell-main>small,.cell-sub{font-size:var(--fs-xs);color:var(--text-3);line-height:1.35}.cell-sub.code,.cell-main>small.code{font-size:11.5px}@media(max-width:767px){.tbl .hide-sm{display:none}.tbl th,.tbl td{padding-left:8px;padding-right:8px}}@media(max-width:1023px){.tbl .hide-md{display:none}}@media(max-width:767px){.tbl tr>.hide-sm:first-child+*{padding-left:0}.tbl tr>:has(+.hide-sm:last-child){padding-right:0}.tbl-hover tr>.hide-sm:first-child+*{padding-left:12px}.tbl-hover tr>:has(+.hide-sm:last-child){padding-right:12px}.tbl-hover tbody tr:not(.tbl-expanded-row):hover>.hide-sm:first-child+td{border-radius:12px 0 0 12px}.tbl-hover tbody tr:not(.tbl-expanded-row):hover>td:has(+.hide-sm:last-child){border-radius:0 12px 12px 0}}.tag{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 9px;border-radius:999px;background:var(--fill);color:var(--text-2);font-size:11.5px;font-weight:500;line-height:1;white-space:nowrap;vertical-align:middle}.tag-success{background:var(--green-wash);color:var(--green)}.tag-danger{background:var(--red-wash);color:var(--red)}.tag-warn{background:var(--warn-wash);color:var(--warn)}.tag-up{background:var(--pnl-up-wash);color:var(--pnl-up);box-shadow:inset 0 0 0 1px var(--pnl-up-rim)}.tag-down{background:var(--pnl-down-wash);color:var(--pnl-down);box-shadow:inset 0 0 0 1px var(--pnl-down-rim)}.tag-outline{background:transparent;box-shadow:inset 0 0 0 1px var(--sep-strong);color:var(--text-3)}.dot{display:inline-block;flex:none;width:8px;height:8px;border-radius:50%}.pill{display:inline-flex;align-items:center;justify-content:center;height:28px;padding:0 11px;border-radius:999px;font-size:13.5px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.pill-up{background:var(--pnl-up-wash);color:var(--pnl-up);box-shadow:inset 0 0 0 1px var(--pnl-up-rim)}.pill-down{background:var(--pnl-down-wash);color:var(--pnl-down);box-shadow:inset 0 0 0 1px var(--pnl-down-rim)}.pill-flat{background:var(--fill);color:var(--text-2)}.pill-sm{height:24px;padding:0 9px;font-size:12.5px}.notice{display:flex;align-items:flex-start;gap:10px;padding:11px 16px;border-radius:var(--radius-md);background:var(--fill);box-shadow:inset 0 0 0 1px var(--glass-rim);color:var(--text-2);font-size:var(--fs-sm);line-height:1.5}.notice>.cv-icon{margin-top:3px}.notice-body{flex:1;min-width:0}.notice-body strong{display:block;color:var(--text);font-weight:600}.notice-body p{color:var(--text-3);font-size:var(--fs-xs);margin-top:2px}.notice-action{flex:none;align-self:center}.notice-warn{background:var(--warn-wash);color:var(--text)}.notice-warn>.cv-icon{color:var(--warn)}.notice-error{background:var(--red-wash);color:var(--text)}.notice-error>.cv-icon{color:var(--red)}.notice-success>.cv-icon{color:var(--green)}.notice+.notice{margin-top:var(--s-2)}.notices{display:grid;gap:var(--s-2);margin-bottom:var(--s-4)}.dialog-body>.notice+:not(.notice){margin-top:var(--s-4)}.skel{display:block;border-radius:8px;background:linear-gradient(90deg,var(--fill) 0%,var(--fill-2) 45%,var(--fill) 90%);background-size:240% 100%;animation:skel 1.4s ease-in-out infinite}@keyframes skel{0%{background-position:100% 0}to{background-position:-140% 0}}.skel-stack{display:grid;gap:10px;align-content:start}.skel-pill{border-radius:999px}.skel-lines{display:grid;gap:10px}.skel-lines .skel{height:12px}.skel-lines .skel:last-child{width:62%}.empty{display:grid;justify-items:center;gap:6px;padding:var(--s-10) var(--s-4);text-align:center}.empty-mark{width:64px;height:36px;color:var(--accent);margin-bottom:6px;filter:drop-shadow(0 0 8px var(--line-glow))}.empty-title{font-size:var(--fs-md);font-weight:500;color:var(--text)}.empty-desc{max-width:34ch;font-size:var(--fs-sm);color:var(--text-3)}.empty .btn{margin-top:10px}.empty-sm{padding:var(--s-6) var(--s-4)}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:var(--scrim);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.overlay[data-state=open]{animation:fade-in var(--dur-2) ease}.overlay[data-state=closed]{animation:fade-out var(--dur-1) ease forwards}.dialog{position:fixed;z-index:1001;left:50%;top:50%;width:min(var(--dialog-w, 480px),calc(100vw - 32px));max-height:min(86dvh,820px);display:flex;flex-direction:column;transform:translate(-50%,-50%);color:var(--text);border-radius:var(--radius-xl);background:var(--glass-thick);box-shadow:inset 0 0 0 1px var(--glass-thick-rim),inset 0 1px 0 var(--glass-hi),var(--shadow-pop);backdrop-filter:blur(var(--glass-blur)) saturate(170%);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(170%);--chart-surface: var(--surface)}.dialog[data-state=open]{animation:dialog-in var(--dur-3) var(--ease-out)}.dialog[data-state=closed]{animation:dialog-out var(--dur-1) ease forwards}.dialog-head{display:flex;align-items:flex-start;gap:var(--s-3);padding:20px 22px 14px}.dialog-head-text{flex:1;min-width:0}.dialog-title{font:600 var(--fs-lg)/1.35 var(--font-display);letter-spacing:-.015em}.dialog-desc{margin-top:3px;font-size:var(--fs-sm);color:var(--text-3)}.dialog-close{flex:none;margin:-4px -6px 0 0}.dialog-body{flex:1;min-height:0;overflow-y:auto;padding:2px 22px 22px}.dialog-foot{display:flex;align-items:center;justify-content:flex-end;gap:var(--s-2);padding:14px 22px 18px;border-top:1px solid var(--sep-2)}.dialog-foot-note{margin-right:auto;font-size:var(--fs-xs);color:var(--text-3)}.drawer{position:fixed;z-index:1001;top:10px;right:10px;bottom:10px;width:min(var(--drawer-w, 560px),calc(100vw - 20px));display:flex;flex-direction:column;color:var(--text);border-radius:var(--radius-xl);background:var(--glass-thick);box-shadow:inset 0 0 0 1px var(--glass-thick-rim),inset 0 1px 0 var(--glass-hi),var(--shadow-pop);backdrop-filter:blur(var(--glass-blur)) saturate(170%);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(170%);--chart-surface: var(--surface)}.drawer[data-state=open]{animation:drawer-in var(--dur-3) var(--ease-out)}.drawer[data-state=closed]{animation:drawer-out var(--dur-2) ease forwards}.drawer .dialog-head{border-bottom:1px solid var(--sep-2);padding-bottom:16px}.drawer .dialog-body{padding-top:var(--s-5)}@media(max-width:767px){.dialog{left:8px;right:8px;top:auto;bottom:8px;width:auto;max-height:90dvh;transform:none;padding-bottom:env(safe-area-inset-bottom)}.dialog[data-state=open]{animation:sheet-up var(--dur-3) var(--ease-out)}.dialog[data-state=closed]{animation:sheet-down var(--dur-2) ease forwards}.drawer{left:8px;right:8px;top:auto;bottom:8px;width:auto;height:90dvh;padding-bottom:env(safe-area-inset-bottom)}.drawer[data-state=open]{animation:sheet-up var(--dur-3) var(--ease-out)}.drawer[data-state=closed]{animation:sheet-down var(--dur-2) ease forwards}}@keyframes fade-in{0%{opacity:0}}@keyframes fade-out{to{opacity:0}}@keyframes dialog-in{0%{opacity:0;transform:translate(-50%,calc(-50% + 10px)) scale(.97)}}@keyframes dialog-out{to{opacity:0;transform:translate(-50%,calc(-50% + 4px)) scale(.985)}}@keyframes drawer-in{0%{transform:translate(28px);opacity:0}}@keyframes drawer-out{to{transform:translate(28px);opacity:0}}@keyframes sheet-up{0%{transform:translateY(48px);opacity:0}}@keyframes sheet-down{to{transform:translateY(48px);opacity:0}}.popover,.menu{z-index:1100;min-width:190px;max-width:calc(100vw - 24px);padding:6px;color:var(--text);font-size:var(--fs-sm);border-radius:16px;background:var(--glass-thick);box-shadow:inset 0 0 0 1px var(--glass-thick-rim),var(--shadow-pop);backdrop-filter:blur(var(--glass-blur)) saturate(170%);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(170%);transform-origin:var(--radix-popper-transform-origin, var(--radix-dropdown-menu-content-transform-origin))}.popover[data-state=open],.menu[data-state=open]{animation:pop-in var(--dur-2) var(--ease-out)}.popover{padding:16px 18px;min-width:240px;border-radius:20px}@keyframes pop-in{0%{opacity:0;transform:scale(.96) translateY(-3px)}}.menu-item{display:flex;align-items:center;gap:10px;height:34px;padding:0 10px;border-radius:10px;cursor:pointer;outline:none;-webkit-user-select:none;user-select:none;color:var(--text)}.menu-item[data-highlighted]{background:var(--hover)}.menu-item[data-disabled]{color:var(--text-4);cursor:not-allowed}.menu-item-danger{color:var(--danger)}.menu-item .cv-icon{color:var(--text-3)}.menu-item-danger .cv-icon{color:var(--danger)}.menu-item-hint{margin-left:auto;font-size:var(--fs-xs);color:var(--text-4)}.menu-sep{height:1px;margin:5px 8px;background:var(--sep)}.menu-label{padding:6px 10px 4px;font-size:11px;color:var(--text-4)}.confirm-title{font-weight:600;font-size:var(--fs-sm)}.confirm-desc{margin-top:4px;font-size:var(--fs-xs);color:var(--text-3);max-width:30ch}.confirm-actions{display:flex;justify-content:flex-end;gap:var(--s-2);margin-top:var(--s-3)}.tooltip{z-index:1200;max-width:280px;padding:7px 11px;border-radius:10px;background:var(--glass-thick);color:var(--text);font-size:var(--fs-xs);line-height:1.45;box-shadow:inset 0 0 0 1px var(--glass-thick-rim),var(--shadow-soft);backdrop-filter:blur(24px) saturate(170%);-webkit-backdrop-filter:blur(24px) saturate(170%)}.tooltip[data-state=delayed-open],.tooltip[data-state=instant-open]{animation:fade-in var(--dur-1) ease}.tooltip kbd{margin-left:6px}.toast{display:flex;align-items:center;gap:10px;min-width:240px;max-width:420px;padding:12px 18px;border-radius:999px;color:var(--text);font-size:var(--fs-sm);background:var(--glass-thick);box-shadow:inset 0 0 0 1px var(--glass-thick-rim),var(--shadow-pop);backdrop-filter:blur(var(--glass-blur)) saturate(170%);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(170%)}.toast [data-icon]{display:flex}.toast-mark{width:8px;height:8px;flex:none;border-radius:50%;background:var(--accent);box-shadow:0 0 8px var(--line-glow)}.toast[data-type=success] .toast-mark{background:var(--green);box-shadow:0 0 8px var(--green-wash)}.toast[data-type=error] .toast-mark{background:var(--red);box-shadow:0 0 8px var(--red-wash)}.toast[data-type=warning] .toast-mark{background:var(--warn)}.disclosure>summary{display:flex;align-items:center;gap:8px;cursor:pointer;list-style:none;padding:10px 0;color:var(--text-2);font-size:var(--fs-sm);-webkit-user-select:none;user-select:none}.disclosure>summary::-webkit-details-marker{display:none}.disclosure>summary:before{content:"";flex:none;width:5px;height:5px;border:solid var(--text-3);border-width:0 1.5px 1.5px 0;transform:rotate(-45deg);transition:transform var(--dur-2) var(--ease-out);margin-right:2px}.disclosure[open]>summary:before{transform:rotate(45deg)}.disclosure>summary:hover{color:var(--text)}.disclosure-extra{margin-left:auto;color:var(--text-3);font-size:var(--fs-xs)}.meter{position:relative;height:6px;border-radius:3px;background:var(--fill)}.meter>i{position:absolute;left:0;top:0;bottom:0;border-radius:3px;background:var(--text-2)}.meter-thin{height:3px}.weight-bar{display:inline-block;width:44px;height:4px;border-radius:2px;background:var(--fill);vertical-align:middle;overflow:hidden}.weight-bar>b{display:block;height:100%;background:var(--accent);border-radius:2px;box-shadow:0 0 6px var(--line-glow)}.kbd-hint{display:inline-flex;align-items:center;gap:4px;color:var(--text-4);font-size:var(--fs-xs)}.link-button{color:var(--accent-text);font-weight:500;font-size:inherit}.link-button:hover{text-decoration:underline;text-underline-offset:3px}.chip-row{display:flex;flex-wrap:wrap;gap:6px}.chip{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 12px;border-radius:999px;font-size:var(--fs-xs);color:var(--text-2);background:var(--btn);box-shadow:inset 0 0 0 1px var(--glass-rim)}.chip b{font-weight:600;color:var(--text);font-variant-numeric:tabular-nums}button.chip:hover{background:var(--btn-hover);color:var(--text)}button.chip[aria-pressed=true]{background:var(--on);color:var(--on-text);box-shadow:inset 0 0 0 1px var(--glass-rim),inset 0 1px 0 var(--glass-hi)}.fx-pair{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;gap:var(--s-2)}.fx-result{display:flex;align-items:baseline;justify-content:space-between;padding:14px 16px;border-radius:var(--radius-md);background:var(--fill);color:var(--text-3);font-size:var(--fs-sm)}.fx-result strong{font:600 var(--fs-xl)/1.2 var(--font-display);color:var(--text)}.fx-result small{font-size:var(--fs-xs);color:var(--text-3)}.pnl-drill{display:grid;gap:var(--s-4)}.pnl-drill>.btn-link{justify-self:start}.pnl-total{display:flex;align-items:baseline;gap:var(--s-3);flex-wrap:wrap}.pnl-total>.num{font:600 30px/1.1 var(--font-display);letter-spacing:-.025em}.pnl-bar-cell{width:34%}.diverging{position:relative;display:block;height:6px}.diverging:before{content:"";position:absolute;left:50%;top:-3px;bottom:-3px;width:1px;background:var(--sep-strong)}.diverging>i{position:absolute;top:0;bottom:0;border-radius:3px}.diverging>i.up{left:50%;background:var(--pnl-up);box-shadow:0 0 8px var(--pnl-up-wash)}.diverging>i.down{right:50%;background:var(--pnl-down);box-shadow:0 0 8px var(--pnl-down-wash)}.pnl-equation{display:flex;flex-wrap:wrap;gap:var(--s-2) var(--s-5);margin:6px 0 var(--s-4);font-size:var(--fs-xs);color:var(--text-3)}.pnl-equation span{display:grid;gap:2px}.pnl-equation b{font-size:var(--fs-sm);color:var(--text);font-weight:500}.chart{position:relative;width:100%;min-width:0;outline:none;user-select:none;-webkit-user-select:none}.chart svg{overflow:visible}.chart-grid{stroke:var(--grid);stroke-width:1;shape-rendering:crispEdges}.chart-axis,.chart-zero{stroke:var(--axis);stroke-width:1;shape-rendering:crispEdges}.chart-tick{fill:var(--tick);font:500 11px/1 var(--font-sans);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.chart-line{stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.chart-line.is-glow{filter:drop-shadow(0 0 6px color-mix(in srgb,currentColor 60%,transparent))}.chart-dot{fill:#fff;stroke-width:2.5}.chart-dot.is-glow{filter:drop-shadow(0 0 7px color-mix(in srgb,currentColor 80%,transparent))}.chart-end-label{fill:var(--text-2);font:500 11px/1 var(--font-sans);font-variant-numeric:tabular-nums}.chart-band{fill:var(--accent-wash)}.chart-ref{stroke:var(--accent-line);stroke-width:1;shape-rendering:crispEdges}.chart-ref-label{fill:var(--accent-text);font:500 11px/1 var(--font-sans);font-variant-numeric:tabular-nums}.chart-ref-label,.chart-end-label,.chart-marker text{paint-order:stroke;stroke:var(--chart-surface, var(--bg));stroke-width:3px;stroke-linejoin:round}.chart-marker line{stroke:var(--accent-line);stroke-width:1;stroke-dasharray:1 3}.chart-marker circle{fill:var(--accent);stroke:var(--chart-surface, var(--bg));stroke-width:2}.chart-marker text{fill:var(--accent-text);font:500 11px/1 var(--font-sans);font-variant-numeric:tabular-nums}.chart-cross line{stroke:var(--crosshair);stroke-width:1;shape-rendering:crispEdges}.chart-cross circle{fill:#fff;stroke-width:3}.chart-bar{transition:opacity var(--dur-1) ease}.chart-bar.is-dim{opacity:.4}.chart-slot{fill:var(--hover)}.chart-tip{position:absolute;top:4px;z-index:5;min-width:140px;max-width:260px;padding:9px 12px;pointer-events:none;border-radius:14px;background:var(--glass-thick);box-shadow:inset 0 0 0 1px var(--glass-thick-rim),var(--shadow-soft);backdrop-filter:blur(24px) saturate(170%);-webkit-backdrop-filter:blur(24px) saturate(170%);font-size:var(--fs-xs);line-height:1.55;color:var(--text-2)}.chart-tip-date{display:block;margin-bottom:3px;font:500 11.5px/1.4 var(--font-sans);color:var(--text-3);font-variant-numeric:tabular-nums}.chart-tip-row{display:flex;align-items:center;gap:8px;white-space:nowrap}.chart-tip-row>i{flex:none;width:8px;height:8px;border-radius:50%}.chart-tip-row>span{flex:1;color:var(--text-3)}.chart-tip-row>b{font-weight:600;color:var(--text);font-variant-numeric:tabular-nums}.chart-empty{display:grid;place-items:center;color:var(--text-3);font-size:var(--fs-sm)}.chart-legend{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:var(--fs-xs);color:var(--text-3)}.chart-legend>span{display:inline-flex;align-items:center;gap:6px}.chart-legend i{width:12px;height:2px;border-radius:1px}.chart-legend i.box{width:8px;height:8px;border-radius:50%}.chart-refetching{opacity:.55;transition:opacity .2s ease}.spark{display:block;flex:none;overflow:visible}.spark-threshold{stroke:var(--accent-line);stroke-width:1;stroke-dasharray:2 2;shape-rendering:crispEdges}.spark-empty{display:inline-block}.chart-cross-line{stroke:var(--crosshair);stroke-width:1;shape-rendering:crispEdges}.app{min-height:100dvh}.app-main{min-width:0;padding:32px 40px 80px 128px}.page{max-width:var(--page-max);margin:0 auto;min-width:0}.page>*{min-width:0}.page-enter{animation:page-in var(--dur-3) var(--ease-out)}@keyframes page-in{0%{opacity:0;transform:translateY(8px)}}.rail{position:fixed;left:20px;top:50%;z-index:60;display:flex;flex-direction:column;gap:4px;max-height:calc(100dvh - 32px);padding:8px;overflow-y:auto;scrollbar-width:none;transform:translateY(-50%);border-radius:32px;background:var(--glass-thick);box-shadow:inset 0 0 0 1px var(--glass-thick-rim),inset 0 1px 0 var(--glass-hi),var(--glass-drop);backdrop-filter:blur(var(--glass-blur)) saturate(170%);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(170%)}.rail::-webkit-scrollbar{display:none}.rail-item{position:relative;display:grid;place-items:center;flex:none;width:46px;height:46px;border-radius:50%;color:var(--text-2);transition:background-color var(--dur-2) ease,color var(--dur-1) ease,transform var(--dur-2) var(--ease-out)}.rail-item:hover{background:var(--hover);color:var(--text)}.rail-item:active{transform:scale(.92)}.rail-item[aria-current=page]{background:var(--on);color:var(--on-text);box-shadow:inset 0 1px 0 var(--glass-hi)}:root[data-theme=light] .rail-item[aria-current=page]{box-shadow:0 2px 8px #0000001a,0 0 0 .5px #0000000f}.rail-item[aria-pressed=true]{color:var(--accent-text)}.rail-sep{flex:none;width:22px;height:1px;margin:5px auto;background:var(--sep)}.theme-toggle .cv-icon{transition:transform .6s var(--ease-out)}.theme-toggle:active .cv-icon{transform:rotate(45deg) scale(.88)}.caps{position:absolute;top:calc(14px + env(safe-area-inset-top));right:14px;z-index:40;display:flex;gap:8px}.cap{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;color:var(--text-2);background:linear-gradient(180deg,var(--glass-top),var(--glass-bottom));box-shadow:inset 0 0 0 1px var(--glass-rim),inset 0 1px 0 var(--glass-hi),var(--glass-drop)}.cap:active{transform:scale(.92)}.tabbar{position:fixed;left:50%;bottom:calc(12px + env(safe-area-inset-bottom));z-index:60;display:grid;grid-template-columns:repeat(5,62px);gap:2px;padding:6px;border-radius:34px;transform:translate(-50%);background:var(--glass-thick);box-shadow:inset 0 0 0 1px var(--glass-thick-rim),inset 0 1px 0 var(--glass-hi),var(--shadow-pop);backdrop-filter:blur(var(--glass-blur)) saturate(170%);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(170%)}.tabbar button{display:grid;justify-items:center;align-content:center;gap:2px;height:52px;border-radius:26px;color:var(--text-3);font-size:10px;font-weight:500;-webkit-tap-highlight-color:transparent;transition:background-color var(--dur-2) ease,color var(--dur-1) ease}.tabbar button[aria-current=page]{background:var(--on);color:var(--on-text)}.drawer-nav{display:grid;gap:18px}.nav-group{display:grid;gap:2px}.nav-group-title{padding:0 12px 6px;font-size:12px;color:var(--text-4)}.nav-link{position:relative;display:flex;align-items:center;gap:12px;height:44px;padding:0 12px;border-radius:14px;color:var(--text-2);font-size:var(--fs-md);font-weight:500;white-space:nowrap;transition:color var(--dur-1) ease,background-color var(--dur-1) ease}.nav-link:hover{color:var(--text);background:var(--hover)}.nav-link[aria-current=page]{color:var(--on-text);background:var(--on)}.nav-link-label{position:relative;z-index:1}@media(max-width:1023px){.app-main{padding:calc(20px + env(safe-area-inset-top)) 16px calc(104px + env(safe-area-inset-bottom))}.masthead-text{padding-right:140px}}@media(min-width:768px)and (max-width:1023px){.drawer.nav-drawer{--drawer-w: 340px}}@media(max-width:767px){.drawer.nav-drawer{height:auto;max-height:90dvh}}.display-settings{display:grid;gap:14px;min-width:260px}.display-row{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:var(--fs-sm);color:var(--text-2)}.display-row>span{display:inline-flex;align-items:center;gap:6px}.display-foot{display:flex;justify-content:space-between;align-items:center;padding-top:12px;border-top:1px solid var(--sep)}@media(hover:none)and (pointer:coarse){.display-foot{justify-content:flex-end}.display-foot .kbd-hint{display:none}}.masthead{margin-bottom:22px}.masthead-back{display:inline-flex;align-items:center;gap:6px;height:30px;margin-bottom:12px;padding:0 12px 0 9px;border-radius:999px;color:var(--text-2);font-size:var(--fs-sm);background:var(--btn);box-shadow:inset 0 0 0 1px var(--glass-rim)}.masthead-back:hover{color:var(--text);text-decoration:none;background:var(--btn-hover)}.masthead-main{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--s-4) var(--s-6);flex-wrap:wrap}.masthead-text{min-width:0;display:grid;gap:6px}.masthead-title{font:700 32px/1.12 var(--font-display);letter-spacing:-.028em;color:var(--text)}.masthead-meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 14px;font-size:var(--fs-sm);color:var(--text-3)}.masthead-meta .faint{color:var(--text-4)}.masthead-actions{display:flex;align-items:center;gap:var(--s-2);flex-wrap:wrap}.masthead-sub{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);flex-wrap:wrap;margin-top:var(--s-5)}@media(max-width:1023px){.masthead{margin-bottom:18px}.masthead-title{font-size:28px}.masthead-main{align-items:flex-start}.masthead-actions{width:100%}}.cmd-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1300;display:flex;justify-content:center;align-items:flex-start;padding:12vh 16px 16px;background:var(--scrim);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.cmd{width:min(640px,100%);max-height:70vh;display:flex;flex-direction:column;overflow:hidden;border-radius:24px;background:var(--glass-thick);box-shadow:inset 0 0 0 1px var(--glass-thick-rim),inset 0 1px 0 var(--glass-hi),var(--shadow-pop);backdrop-filter:blur(var(--glass-blur)) saturate(170%);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(170%)}.cmd-input{display:flex;align-items:center;gap:12px;height:58px;padding:0 20px;border-bottom:1px solid var(--sep);color:var(--text-3)}.cmd-input input{flex:1;min-width:0;height:100%;border:0;background:none;color:var(--text);font-size:17px}.cmd-input input::placeholder{color:var(--text-4)}.cmd-input input:focus-visible{outline:none;box-shadow:none}.cmd-results{flex:1;overflow-y:auto;padding:8px}.cmd-group-title{padding:10px 12px 4px;font-size:11.5px;color:var(--text-4)}.cmd-item{display:flex;align-items:center;gap:12px;min-height:42px;padding:0 12px;border-radius:12px;cursor:pointer;color:var(--text-2)}.cmd-item[aria-selected=true]{background:var(--on);color:var(--on-text)}.cmd-item .cv-icon{color:var(--text-3)}.cmd-item[aria-selected=true] .cv-icon{color:var(--accent-text)}.cmd-label{font-weight:500;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cmd-detail{flex:1;min-width:0;font-size:var(--fs-xs);color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cmd-go{margin-left:auto;opacity:0}.cmd-item[aria-selected=true] .cmd-go{opacity:1}.cmd-empty{padding:28px 10px;text-align:center;color:var(--text-3);font-size:var(--fs-sm)}.cmd-foot{display:flex;gap:16px;padding:10px 20px;border-top:1px solid var(--sep-2);font-size:11px;color:var(--text-4)}.cmd-foot span{display:inline-flex;align-items:center;gap:5px}@media(max-width:767px){.cmd-overlay{padding-top:10px}.cmd{max-height:80dvh}.cmd-foot{display:none}}.cmd-enter{animation:cmd-in var(--dur-3) var(--ease-out)}@keyframes cmd-in{0%{opacity:0;transform:translateY(-10px) scale(.98)}}.overlay-fade{animation:fade-in var(--dur-2) ease}.login{position:relative;display:grid;place-items:center;min-height:100dvh;padding:32px 16px;overflow:hidden}.login-lines{position:absolute;inset:auto 0 0 0;height:55%;pointer-events:none;opacity:.9}.login-lines path{fill:none;stroke:var(--accent-line);stroke-width:1;opacity:.35}.login-lines path.lead{stroke:var(--line);stroke-width:2;opacity:1;filter:drop-shadow(0 0 8px var(--line-glow))}.login-card{position:relative;z-index:2;width:min(400px,100%);display:grid;gap:22px;padding:36px 34px 32px}.login-orb{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;color:#fff;background:radial-gradient(circle at 30% 25%,#78dcff99,#286e8c4d 60%,#ffffff0d);box-shadow:inset 0 0 0 1px #ffffff29,0 10px 30px -10px #64d2ff80}:root[data-theme=light] .login-orb{color:#0b5d8a;background:radial-gradient(circle at 30% 25%,#fff,#78c8e699 60%,#5096c866)}.login-card h1{font:700 28px/1.15 var(--font-display);letter-spacing:-.025em}.login-card p.muted{font-size:var(--fs-sm)}.route-loading{display:flex;align-items:center;gap:10px;padding:28px;color:var(--text-3);font-size:var(--fs-sm)}.boundary{display:grid;gap:12px;justify-items:start;max-width:420px;margin:12vh auto;padding:24px}.boundary p{color:var(--text-2)}@media(max-width:767px){:root .control:not(.control-textarea){min-height:44px}:root .control input,:root .control select,:root .control textarea{font-size:16px}:root .btn:not(.btn-link),:root .menu-item{min-height:44px}:root .btn-icon{min-width:44px}:root .seg>button,:root .tabs>button,:root .co-section-nav>button{min-height:44px}:root .chip{min-height:44px}:root .control-clear{min-width:36px;min-height:44px}:root .cap{width:44px;height:44px}:root .masthead-text{padding-right:156px}:root .ov-who{padding-right:156px}:root .tbl-sort{min-height:44px}:root .dialog,:root .drawer{bottom:var(--sheet-bottom, 8px);max-height:calc(var(--sheet-height, 100dvh) - 24px);padding-bottom:var(--sheet-safe-bottom, env(safe-area-inset-bottom))}:root .drawer{height:calc(var(--sheet-height, 100dvh) - 24px)}:root .drawer.nav-drawer{height:auto}:root .dialog-head{padding:16px 18px 10px}:root .dialog-body{padding-inline:18px;overscroll-behavior-y:contain;scroll-padding-block:16px}:root .dialog-foot{padding:10px 18px 12px}:root .dialog:has(>.sheet-grabber) .dialog-head,:root .drawer:has(>.sheet-grabber) .dialog-head{padding-top:6px}:root .dialog.is-swiped[data-state=closed],:root .drawer.is-swiped[data-state=closed]{animation:fade-out .16s ease forwards}:root .dialog-foot:not(:has(>button:nth-of-type(3)))>.btn{flex:1}:root .dialog-foot>.dialog-foot-note{flex-basis:100%}:root .rank-row{grid-template-columns:32px minmax(0,1fr) auto auto;gap:10px}:root .rank-row .glyph{width:32px;height:32px}:root .rank-row .cell-main>small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:root .rank-row .pill{min-width:62px}:root .rank-weight{display:none}:root .an-kpi .stat-value,:root .an-kpi .stat-value.hero{font-size:min(5.2vw,24px)}:root .an-stats .stat-value{font-size:min(4.3vw,20px)}:root .an-stats>.stat{padding:12px 14px}}.sheet-grabber{display:none}@media(max-width:767px){.sheet-grabber{display:block;flex:none;height:22px;touch-action:none;cursor:grab}.sheet-grabber:before{content:"";display:block;width:38px;height:5px;margin:8px auto 0;border-radius:3px;background:var(--sep-strong)}.dialog-head{touch-action:pan-x}}@media(max-width:1023px){html{-webkit-tap-highlight-color:transparent}button,a,[role=button],.tabbar,.rank-row,summary{touch-action:manipulation}.tabbar,.caps,.rail,.sheet-grabber,.ptr{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.app:before{content:"";position:fixed;inset:0 0 auto 0;z-index:55;height:env(safe-area-inset-top);pointer-events:none;background:color-mix(in srgb,var(--bg) 78%,transparent);backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%)}.tabbar button{position:relative;transition:background-color var(--dur-2) ease,color var(--dur-1) ease,transform var(--dur-2) var(--ease-out)}.tabbar button:active{transform:scale(.92)}body:has(:is(input:not([type=checkbox]):not([type=radio]):not([type=range]),textarea,select,[contenteditable=true]):focus) .tabbar{opacity:0;pointer-events:none;transform:translate(-50%,24px)}.tabbar{transition:opacity var(--dur-2) ease,transform var(--dur-3) var(--ease-out)}.ptr{position:fixed;left:50%;top:calc(env(safe-area-inset-top) + 6px);z-index:70;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;color:var(--text-3);transform:translate(-50%,calc(var(--ptr, 0px) - 24px));opacity:var(--ptr-o, 1);background:var(--glass-thick);box-shadow:inset 0 0 0 1px var(--glass-thick-rim),var(--shadow-pop);backdrop-filter:blur(var(--glass-blur)) saturate(170%);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(170%)}.ptr .cv-icon{transform:rotate(var(--ptr-r, 0deg));transition:color var(--dur-1) ease}.ptr.is-ready{color:var(--accent-text)}.ptr.is-refreshing{transition:transform var(--dur-3) var(--ease-out)}.tbl-wrap,.seg,.tabs{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}}@media(display-mode:standalone)and (max-width:1023px){html{overscroll-behavior-y:none}}
