.y-btn[data-v-198499c0]{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--row-data);padding:0 var(--sp-3);border:1px solid transparent;border-radius:var(--radius-sm);font:inherit;font-size:var(--fs-sm);font-weight:var(--fw-medium);cursor:pointer;background:var(--brand-primary);color:var(--fixed-on-bright);transition:background var(--motion-fast) var(--motion-easing),border-color var(--motion-fast) var(--motion-easing);white-space:nowrap}.y-btn[data-v-198499c0]:hover{background:var(--brand-primary-hover)}.y-btn[data-v-198499c0]:active{background:var(--brand-primary-active)}.y-btn.h-admin[data-v-198499c0]{height:var(--row-admin);padding:0 var(--sp-4)}.y-btn.v-ghost[data-v-198499c0]{background:transparent;color:var(--text-primary);border-color:var(--border-strong)}.y-btn.v-ghost[data-v-198499c0]:hover{background:var(--bg-raised)}.y-btn.v-danger[data-v-198499c0]{background:var(--semantic-danger);color:var(--fixed-on-bright)}.y-btn[data-v-198499c0]:disabled{opacity:.5;cursor:not-allowed}.spin[data-v-198499c0]{width:12px;height:12px;border-radius:50%;border:2px solid currentColor;border-top-color:transparent;animation:y-btn-spin-198499c0 .8s linear infinite}@keyframes y-btn-spin-198499c0{to{transform:rotate(360deg)}}.y-tip[data-v-93620947]{position:relative;display:inline-flex}.y-tip[data-v-93620947]:after{content:attr(data-tip);position:absolute;z-index:var(--z-tooltip);padding:4px var(--sp-2);border-radius:var(--radius-sm);background:var(--bg-overlay);color:var(--text-primary);border:1px solid var(--border-strong);font-size:var(--fs-xs);white-space:nowrap;pointer-events:none;opacity:0;transition:opacity var(--motion-fast) var(--motion-easing)}.y-tip[data-v-93620947]:hover:after,.y-tip[data-v-93620947]:focus-visible:after{opacity:1}.y-tip.p-top[data-v-93620947]:after{bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.y-tip.p-bottom[data-v-93620947]:after{top:calc(100% + 6px);left:50%;transform:translate(-50%)}.y-tip.p-left[data-v-93620947]:after{right:calc(100% + 6px);top:50%;transform:translateY(-50%)}.y-tip.p-right[data-v-93620947]:after{left:calc(100% + 6px);top:50%;transform:translateY(-50%)}.y-select[data-v-0c885013]{height:var(--row-data);padding:0 var(--sp-3);background:var(--bg-raised);color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);font:inherit;font-size:var(--fs-sm);cursor:pointer}.y-select.h-admin[data-v-0c885013]{height:var(--row-admin)}.y-select[data-v-0c885013]:hover{border-color:var(--border-strong)}.y-select[data-v-0c885013]:focus{outline:none;border-color:var(--brand-primary)}.y-select[data-v-0c885013]:disabled{opacity:.5;cursor:not-allowed}.y-card[data-v-b91cd204]{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:var(--sp-4);margin-bottom:var(--sp-5)}.head[data-v-b91cd204]{display:flex;align-items:flex-start;gap:var(--sp-3);margin-bottom:var(--sp-3)}.ttl[data-v-b91cd204]{flex:1;min-width:0}h2[data-v-b91cd204]{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-semibold);letter-spacing:.1px}.hint[data-v-b91cd204]{margin:2px 0 0;font-size:var(--fs-xs);color:var(--text-muted)}.acts[data-v-b91cd204]{display:flex;align-items:center;gap:var(--sp-2);flex:0 0 auto}.y-badge[data-v-20a85762]{display:inline-flex;align-items:center;gap:5px;height:20px;padding:0 var(--sp-2);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-raised);font-size:var(--fs-xs);white-space:nowrap}.seg[data-v-20a85762]{width:16px;height:0;border-top-width:2px;border-top-style:solid;border-top-color:currentColor;display:inline-block}.seg.solid[data-v-20a85762]{border-top-width:2.5px}.seg.dashed[data-v-20a85762]{border-top-style:dashed}.seg.dotted[data-v-20a85762]{border-top-style:dotted}.seg.broken[data-v-20a85762]{border:none;height:2px;position:relative;top:-1px;background:linear-gradient(90deg,currentColor 0 38%,transparent 38% 62%,currentColor 62% 100%)}.y-skel[data-v-fb56619e]{display:flex;flex-direction:column;gap:var(--sp-4);padding:var(--sp-4);justify-content:center}.bar[data-v-fb56619e]{height:14px;border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--bg-raised) 25%,var(--border-subtle) 37%,var(--bg-raised) 63%);background-size:400% 100%;animation:y-skel-fb56619e 1.4s ease infinite}@keyframes y-skel-fb56619e{0%{background-position:100% 0}to{background-position:0 0}}.y-empty[data-v-f06818b8]{padding:var(--sp-10) var(--sp-4);text-align:center;color:var(--text-secondary)}.ic[data-v-f06818b8]{color:var(--text-muted)}.title[data-v-f06818b8]{color:var(--text-primary);font-weight:var(--fw-medium);margin-top:var(--sp-2)}.hint[data-v-f06818b8]{font-size:var(--fs-sm);margin-top:var(--sp-1)}.act[data-v-f06818b8]{margin-top:var(--sp-4)}.y-table-wrap[data-v-65efac98]{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface)}.y-table[data-v-65efac98]{width:100%;border-collapse:collapse;font-size:var(--fs-xs)}.d-admin .y-table[data-v-65efac98]{font-size:var(--fs-sm)}th[data-v-65efac98],td[data-v-65efac98]{padding:6px var(--sp-3);border-bottom:1px solid var(--border-subtle);text-align:left}th[data-v-65efac98]{position:sticky;top:0;z-index:1;background:var(--bg-surface);color:var(--text-secondary);font-weight:var(--fw-medium);font-size:var(--fs-xs);white-space:nowrap}th.sortable[data-v-65efac98]{cursor:pointer;-webkit-user-select:none;user-select:none}th.sortable[data-v-65efac98]:hover{color:var(--text-primary)}.arrow[data-v-65efac98]{margin-left:2px;vertical-align:-1px}tbody tr[data-v-65efac98]:hover{background:var(--bg-raised)}td[data-v-65efac98]{height:var(--row-data)}.d-admin td[data-v-65efac98]{height:var(--row-admin)}td.num[data-v-65efac98],th.num[data-v-65efac98]{text-align:right;font-family:var(--font-mono);font-variant-numeric:tabular-nums}th.num[data-v-65efac98]{font-family:var(--font-sans)}.pager[data-v-65efac98]{display:flex;align-items:center;justify-content:flex-end;gap:var(--sp-3);padding:var(--sp-2) var(--sp-3);border-top:1px solid var(--border-subtle);font-size:var(--fs-xs);color:var(--text-secondary)}.pager button[data-v-65efac98]{background:none;border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text-primary);font:inherit;font-size:var(--fs-xs);padding:2px var(--sp-2);cursor:pointer}.pager button[data-v-65efac98]:disabled{opacity:.5;cursor:not-allowed}.mono[data-v-65efac98]{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.y-error[data-v-7e9e46d3]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-2);padding:var(--sp-8) var(--sp-4);text-align:center}.ic[data-v-7e9e46d3]{color:var(--semantic-danger)}.msg[data-v-7e9e46d3]{color:var(--text-primary);font-size:var(--fs-sm)}.trace[data-v-7e9e46d3]{font-size:var(--fs-xs);color:var(--text-muted)}.mono[data-v-7e9e46d3]{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.act[data-v-7e9e46d3]{margin-top:var(--sp-3)}.y-toast-host[data-v-d4f03f22]{position:fixed;top:calc(var(--layout-topbar) + var(--sp-3));right:var(--sp-5);display:flex;flex-direction:column;gap:var(--sp-2);z-index:var(--z-toast);max-width:360px}.toast[data-v-d4f03f22]{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);background:var(--bg-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-md);font-size:var(--fs-sm);color:var(--text-primary)}.toast.t-info[data-v-d4f03f22]{border-left:3px solid var(--semantic-info)}.toast.t-success[data-v-d4f03f22]{border-left:3px solid var(--semantic-success)}.toast.t-warning[data-v-d4f03f22]{border-left:3px solid var(--semantic-warning)}.toast.t-danger[data-v-d4f03f22]{border-left:3px solid var(--semantic-danger)}.toast.t-neutral[data-v-d4f03f22]{border-left:3px solid var(--semantic-neutral)}.txt[data-v-d4f03f22]{flex:1;min-width:0}.x[data-v-d4f03f22]{display:inline-flex;background:none;border:none;color:var(--text-muted);cursor:pointer;padding:2px}.x[data-v-d4f03f22]:hover{color:var(--text-primary)}.y-toast-enter-active[data-v-d4f03f22],.y-toast-leave-active[data-v-d4f03f22]{transition:opacity var(--motion-base) var(--motion-easing),transform var(--motion-base) var(--motion-easing)}.y-toast-enter-from[data-v-d4f03f22],.y-toast-leave-to[data-v-d4f03f22]{opacity:0;transform:translateY(-6px)}.y-term[data-v-624c50b2]{border-bottom:1px dashed var(--border-strong);cursor:help}.y-tz[data-v-50ed08d8]{display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-xs);color:var(--text-secondary)}.mono[data-v-50ed08d8]{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.y-src[data-v-9f20bea9]{display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-xs);color:var(--text-secondary)}.mono[data-v-9f20bea9]{font-family:var(--font-mono);font-variant-numeric:tabular-nums}b[data-v-9f20bea9]{font-weight:var(--fw-medium);color:var(--text-primary)}.y-chart-block[data-v-d33980fb]{margin-bottom:var(--sp-4)}.head[data-v-d33980fb]{display:flex;align-items:baseline;gap:var(--sp-3);margin-bottom:var(--sp-2)}.ttl[data-v-d33980fb]{font-size:var(--fs-sm);font-weight:var(--fw-medium)}.unit[data-v-d33980fb]{font-size:var(--fs-xs);color:var(--text-muted)}.frame[data-v-d33980fb]{background:var(--bg-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow:hidden}.canvas[data-v-d33980fb]{width:100%;height:100%}.meta[data-v-d33980fb]{display:flex;align-items:center;gap:var(--sp-4);flex-wrap:wrap;margin-top:var(--sp-2);font-size:var(--fs-xs);color:var(--text-secondary)}.mono[data-v-d33980fb]{font-family:var(--font-mono);font-variant-numeric:tabular-nums}b[data-v-d33980fb]{font-weight:var(--fw-medium);color:var(--text-primary)}.logout-btn[data-v-ec1649cc]{display:block;width:100%;text-align:left;background:none;border:none;padding:0;cursor:pointer;font:inherit;color:inherit}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/genforecast/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/genforecast/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/genforecast/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/genforecast/assets/ibm-plex-sans-latin-700-normal-Bxkt5Cjx.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/genforecast/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/genforecast/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/genforecast/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/genforecast/assets/ibm-plex-mono-latin-700-normal-7sUh57Bg.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--brand-primary: #3DA9FC;--brand-primary-hover: #63BBFF;--brand-primary-active: #1E8FE0;--brand-accent: #F5B301;--brand-accent-hover: #FFC42E}:root{--semantic-success: #34D399;--semantic-warning: #F5B301;--semantic-danger: #F87171;--semantic-info: #60A5FA;--semantic-neutral: #94A3B8}:root{--domain-price: #3DA9FC;--domain-load: #34D399;--domain-generation: #F5B301;--domain-soc: #A78BFA;--domain-error: #F87171;--domain-reference: #94A3B8;--domain-forecast: #3DA9FC;--domain-actual: #E8EEF9;--domain-uncertainty-band: #3DA9FC}:root{--fixed-on-bright: #0B1220}:root{--chart-c1: #3DA9FC;--chart-c2: #34D399;--chart-c3: #F5B301;--chart-c4: #A78BFA;--chart-c5: #F87171;--chart-c6: #60A5FA;--chart-c7: #94A3B8;--chart-c8: #63BBFF;--chart-c9: #FFC42E}:root{--font-sans: IBM Plex Sans, system-ui, -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif;--font-mono: IBM Plex Mono, ui-monospace, SFMono-Regular, Menlo, monospace}:root{--fs-xs: 12px;--fs-sm: 13px;--fs-base: 14px;--fs-lg: 16px;--fs-xl: 20px;--fs-2xl: 24px;--fs-3xl: 32px}:root{--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700}:root{--sp-0: 0px;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-8: 32px;--sp-10: 40px;--sp-12: 48px;--sp-16: 64px}:root{--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-full: 9999px}:root{--motion-fast: .12s;--motion-base: .18s;--motion-slow: .28s;--motion-easing: cubic-bezier(.2,.8,.2,1)}:root{--z-sticky: 100;--z-dropdown: 1000;--z-drawer: 1200;--z-modal: 1250;--z-toast: 1300;--z-tooltip: 1400}:root{--row-data: 28px;--row-admin: 36px}:root{--layout-max: 1600px;--layout-topbar: 52px;--layout-sidebar: 232px;--layout-content: 24px}[data-theme=dark],.theme-dark{--bg-base: #0B1220;--bg-surface: #111A2C;--bg-raised: #16223A;--bg-overlay: rgba(6,10,20,.72);--border-subtle: #22304C;--border-strong: #31456B;--text-primary: #E8EEF9;--text-secondary: #9AA9C4;--text-muted: #6B7C9B;--text-inverse: #0B1220;--brand-primary-soft: #12324D;--brand-accent-soft: #3A2C05;--semantic-success-soft: #0E3A2E;--semantic-warning-soft: #3A2C05;--semantic-danger-soft: #3D1A1D;--semantic-info-soft: #152B45;--semantic-neutral-soft: #1B2436;--link-text: #63BBFF;--shadow-sm: 0 1px 2px rgba(0,0,0,.4);--shadow-md: 0 4px 12px rgba(0,0,0,.45);--shadow-lg: 0 12px 32px rgba(0,0,0,.55)}[data-theme=light],.theme-light{--bg-base: #F6F8FC;--bg-surface: #FFFFFF;--bg-raised: #F8FAFD;--bg-overlay: rgba(11,18,32,.4);--border-subtle: #DFE6F1;--border-strong: #B7C4D8;--text-primary: #0B1220;--text-secondary: #52627C;--text-muted: #8494AC;--text-inverse: #FFFFFF;--brand-primary-soft: #E7F2FE;--brand-accent-soft: #FFF6DE;--semantic-success-soft: #E9F8F2;--semantic-warning-soft: #FFF7E2;--semantic-danger-soft: #FDEEEE;--semantic-info-soft: #EAF2FE;--semantic-neutral-soft: #EFF3F9;--link-text: #1E7FD0;--shadow-sm: 0 1px 2px rgba(11,18,32,.06);--shadow-md: 0 4px 12px rgba(11,18,32,.1);--shadow-lg: 0 12px 32px rgba(11,18,32,.16)}[data-theme=dark],.theme-dark{--chart-background-color: transparent;--chart-axis-line: #31456B;--chart-split-line: #22304C;--chart-axis-label: #9AA9C4;--chart-title: #E8EEF9;--chart-tooltip-bg: #16223A;--chart-tooltip-border: #31456B;--chart-tooltip-text: #E8EEF9}[data-theme=light],.theme-light{--chart-background-color: transparent;--chart-axis-line: #B4C1D6;--chart-split-line: #E6ECF5;--chart-axis-label: #5A6B87;--chart-title: #0B1220;--chart-tooltip-bg: #FFFFFF;--chart-tooltip-border: #D8E0EE;--chart-tooltip-text: #0B1220}*{box-sizing:border-box}html,body{height:100%}body{margin:0;background:var(--bg-base);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--fs-base);line-height:1.5;-webkit-font-smoothing:antialiased}a{color:var(--link-text);text-decoration:none}a:hover{color:var(--brand-primary-active);text-decoration:underline}code,kbd,.num,.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px;border-radius:var(--radius-sm)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:9999px}::-webkit-scrollbar-track{background:transparent}.yao-topbar{height:var(--layout-topbar);display:flex;align-items:center;gap:var(--sp-3);padding:0 var(--sp-5);background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);position:sticky;top:0;z-index:var(--z-sticky)}.yao-brand{display:flex;align-items:center;gap:var(--sp-2);font-weight:var(--fw-semibold);letter-spacing:.2px;flex:0 0 auto;white-space:nowrap}.yao-brand .mark{display:inline-flex;flex-direction:column;gap:3px;width:14px}.yao-brand .mark i{display:block;height:3px;background:var(--brand-primary);border-radius:1px}.yao-brand .mark i.broken{background:linear-gradient(90deg,var(--brand-accent) 0 42%,transparent 42% 58%,var(--brand-accent) 58% 100%)}.yao-brand-sep{width:1px;height:16px;background:var(--border-strong);flex:0 0 auto}.yao-brand-app{font-weight:var(--fw-medium);color:var(--text-secondary)}.yao-brand:hover .yao-brand-app{color:var(--brand-primary)}.yao-spacer{flex:1}.yao-brand:hover .yao-brand-name{color:var(--brand-primary)}.yao-menu{position:relative}.yao-menu>summary,.yao-menu>.yao-menu-trigger{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:var(--sp-2)}.yao-menu>summary::-webkit-details-marker{display:none}.yao-menu .yao-menu-body{display:none}.yao-menu:hover .yao-menu-body,.yao-menu:focus-within .yao-menu-body,.yao-menu[open] .yao-menu-body{display:flex}.yao-menu-body{position:absolute;right:0;top:calc(100% + var(--sp-2));min-width:220px;max-height:70vh;overflow:auto;padding:var(--sp-2);background:var(--bg-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-md);display:flex;flex-direction:column;gap:2px;z-index:var(--z-dropdown)}.yao-menu-item{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-1) var(--sp-2);border-radius:var(--radius-sm);font-size:var(--fs-sm);color:var(--text-primary);white-space:nowrap}.yao-menu-item:hover{background:var(--bg-base);text-decoration:none}.yao-menu-item.on{background:var(--brand-primary-soft);color:var(--brand-primary)}.yao-menu-group{display:flex;flex-direction:column;gap:2px}.yao-menu-group+.yao-menu-group{margin-top:var(--sp-2);padding-top:var(--sp-2);border-top:1px solid var(--border-subtle)}.yao-menu-title{font-size:var(--fs-xs);color:var(--text-muted);padding:2px var(--sp-2) var(--sp-1)}.yao-menu-meta{margin-left:auto;font-size:var(--fs-xs);color:var(--text-muted)}.yao-menu-foot{padding:var(--sp-1) var(--sp-2);border-top:1px solid var(--border-subtle);font-size:var(--fs-xs);color:var(--text-muted)}.yao-acct-chip{display:inline-flex;align-items:center;gap:var(--sp-2);padding:2px var(--sp-2);border-radius:var(--radius-md);font-size:var(--fs-sm);color:var(--text-primary)}.yao-acct-chip:hover{background:var(--bg-raised)}.yao-avatar{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:9999px;background:var(--brand-primary-soft);color:var(--brand-primary);font-size:var(--fs-xs);font-weight:var(--fw-semibold);flex:0 0 auto}.yao-caret{color:var(--text-muted);font-size:var(--fs-xs)}.yao-acct-guest{display:inline-flex;align-items:center;gap:var(--sp-2)}.yao-acct-loading{padding:0 var(--sp-2)}@media(max-width:860px){.yao-topbar{padding:0 var(--sp-3);gap:var(--sp-2)}.yao-hide-md{display:none!important}}@media(max-width:640px){.yao-hide-sm{display:none!important}.yao-topbar .y-select,.yao-topbar .yao-select{max-width:132px;min-width:0}}@media(max-width:480px){.yao-topbar .yao-acct-name,.yao-topbar .yao-caret{display:none}.yao-topbar .yao-brand-name{font-size:var(--fs-sm)}.yao-topbar .yao-acct-guest,.yao-topbar .yao-acct,.yao-topbar .yao-btn{flex:0 0 auto}.yao-topbar .y-select,.yao-topbar .yao-select{max-width:108px}}.yao-shell{display:flex;min-height:calc(100vh - var(--layout-topbar))}.yao-sidebar{width:var(--layout-sidebar);flex:0 0 auto;padding:var(--sp-4) var(--sp-3);background:var(--bg-surface);border-right:1px solid var(--border-subtle)}.yao-sidebar .group{margin-bottom:var(--sp-5)}.yao-sidebar .group-title{font-size:var(--fs-xs);color:var(--text-muted);padding:0 var(--sp-2) var(--sp-2);letter-spacing:.08em}.yao-sidebar a{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:var(--fs-sm);text-decoration:none}.yao-sidebar a:hover{background:var(--bg-raised);color:var(--text-primary);text-decoration:none}.yao-sidebar a.active{background:var(--brand-primary-soft);color:var(--text-primary);font-weight:var(--fw-medium)}.yao-content{flex:1;padding:var(--sp-6);max-width:var(--layout-max);width:100%}.yao-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:var(--sp-4);margin-bottom:var(--sp-5)}.yao-card>h2{margin:0 0 var(--sp-3);font-size:var(--fs-lg);font-weight:var(--fw-semibold);letter-spacing:.1px}.yao-card-head{display:flex;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-3)}.yao-card-head h2{margin:0}.yao-panel{background:var(--bg-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--sp-4)}.yao-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(168px,1fr));gap:var(--sp-3)}.yao-metric{background:var(--bg-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--sp-3) var(--sp-4)}.yao-metric .k{display:flex;align-items:center;gap:6px;font-size:var(--fs-xs);color:var(--text-secondary)}.yao-metric .v{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:var(--fs-2xl);line-height:1.2;margin-top:2px}.yao-metric .u{font-size:var(--fs-xs);color:var(--text-muted);margin-left:4px}.yao-metric .sub{font-size:var(--fs-xs);color:var(--text-muted)}.yao-btn{display:inline-flex;align-items:center;gap:6px;height:var(--row-data);padding:0 var(--sp-3);background:var(--brand-primary);color:var(--fixed-on-bright);border:1px solid transparent;border-radius:var(--radius-sm);font:inherit;font-size:var(--fs-sm);font-weight:var(--fw-medium);cursor:pointer;white-space:nowrap;transition:background var(--motion-fast) var(--motion-easing)}.yao-btn:hover{background:var(--brand-primary-hover)}.yao-btn:disabled{opacity:.5;cursor:not-allowed}.yao-btn.ghost{background:transparent;color:var(--text-primary);border-color:var(--border-strong)}.yao-btn.ghost:hover{background:var(--bg-raised)}.yao-btn.danger{background:var(--semantic-danger);color:var(--fixed-on-bright)}.yao-input,.yao-select{height:var(--row-data);padding:0 var(--sp-3);background:var(--bg-raised);color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);font:inherit;font-size:var(--fs-sm)}.yao-input::placeholder{color:var(--text-muted)}.yao-row{display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap}.yao-badge{display:inline-flex;align-items:center;gap:5px;height:20px;padding:0 var(--sp-2);border-radius:var(--radius-sm);font-size:var(--fs-xs);border:1px solid var(--border-subtle);background:var(--bg-raised);color:var(--text-secondary)}.yao-badge.ok{color:var(--semantic-success);border-color:color-mix(in srgb,var(--semantic-success) 40%,transparent)}.yao-badge.warn{color:var(--semantic-warning);border-color:color-mix(in srgb,var(--semantic-warning) 40%,transparent)}.yao-badge.err{color:var(--semantic-danger);border-color:color-mix(in srgb,var(--semantic-danger) 40%,transparent)}.yao-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.yao-dot.ok{background:var(--semantic-success)}.yao-dot.warn{background:var(--semantic-warning)}.yao-dot.err{background:var(--semantic-danger)}.yao-dot.missing{background:transparent;border:1px dashed var(--semantic-neutral)}.yao-line-key{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-xs);color:var(--text-secondary)}.yao-line-key .solid{width:18px;height:0;border-top:2.5px solid var(--semantic-success)}.yao-line-key .dashed{width:18px;height:0;border-top:2px dashed var(--brand-primary)}.yao-line-key .dotted{width:18px;height:0;border-top:2px dotted var(--semantic-neutral)}.yao-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.yao-table th,.yao-table td{padding:6px var(--sp-3);border-bottom:1px solid var(--border-subtle);text-align:left}.yao-table th{position:sticky;top:0;background:var(--bg-surface);color:var(--text-secondary);font-weight:var(--fw-medium);font-size:var(--fs-xs);z-index:1}.yao-table tbody tr:hover{background:var(--bg-raised)}.yao-table td.num,.yao-table th.num{text-align:right;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.yao-table-wrap{border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.yao-banner{display:flex;align-items:flex-start;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);border:1px solid var(--border-subtle);border-left-width:3px;border-radius:var(--radius-md);margin-bottom:var(--sp-4);background:var(--bg-surface);font-size:var(--fs-sm)}.yao-banner.warn{border-left-color:var(--semantic-warning);background:var(--semantic-warning-soft)}.yao-banner.err{border-left-color:var(--semantic-danger);background:var(--semantic-danger-soft)}.yao-banner.info{border-left-color:var(--semantic-info);background:var(--semantic-info-soft)}.yao-empty{padding:var(--sp-10);text-align:center;color:var(--text-secondary)}.yao-empty .title{color:var(--text-primary);font-weight:var(--fw-medium);margin-bottom:var(--sp-2)}.yao-skeleton{background:linear-gradient(90deg,var(--bg-raised) 25%,var(--border-subtle) 37%,var(--bg-raised) 63%);background-size:400% 100%;animation:yao-skel 1.4s ease infinite;border-radius:var(--radius-sm);height:14px}@keyframes yao-skel{0%{background-position:100% 0}to{background-position:0 0}}.yao-chart{width:100%;background:var(--bg-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.yao-chart-meta{display:flex;gap:var(--sp-4);flex-wrap:wrap;font-size:var(--fs-xs);color:var(--text-secondary);margin-top:var(--sp-2)}.muted{color:var(--text-muted)}.secondary{color:var(--text-secondary)}.fs-xs{font-size:var(--fs-xs)}.fs-sm{font-size:var(--fs-sm)}.nowrap{white-space:nowrap}:root{color-scheme:light}html{background:var(--bg-base)}.yao-content{margin:0 auto}.row{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) 0;border-bottom:1px solid var(--border-subtle)}.row:last-child{border-bottom:none}.form-row{display:flex;gap:var(--sp-2);flex-wrap:wrap;align-items:end;margin-bottom:var(--sp-2)}.form-row label{display:block;font-size:var(--fs-xs);color:var(--text-secondary)}.yao-input{font:inherit;padding:6px 8px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-base);color:var(--text-primary)}.ds-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.ds-table th,.ds-table td{text-align:left;padding:6px 8px;border-bottom:1px solid var(--border-subtle)}.ds-table th{color:var(--text-secondary);font-weight:500}.code-block{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:var(--sp-3);overflow:auto;font-size:var(--fs-xs)}.hint{color:var(--text-secondary);font-size:var(--fs-xs)}.badge-line{display:flex;gap:var(--sp-1);align-items:center;flex-wrap:wrap}.foot{display:flex;gap:var(--sp-2);align-items:center;margin-top:var(--sp-6)}.ver{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:var(--fs-xs)}.mono{font-family:var(--font-mono, monospace)}.yao-sidebar{display:flex;flex-direction:column}.yao-sidebar .sidebar-back{margin-top:auto;padding-top:var(--sp-3);border-top:1px solid var(--border-subtle)}.metric-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:var(--sp-3)}
