:root,:root[data-theme=song]{--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-8: 32px;--sp-10: 40px;--fs-2xs: 11px;--fs-xs: 12px;--fs-sm: 13px;--fs-md: 14px;--fs-lg: 16px;--fs-xl: 18px;--fs-2xl: 22px;--fs-3xl: 28px;--lh-tight: 1.3;--lh-snug: 1.45;--lh-body: 1.6;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 680;--paper: #f3f1ea;--paper-deep: #e9e4d8;--paper-raised: #fbfaf7;--moss: #3f6b4f;--moss-deep: #2e5140;--moss-soft: #e4eadc;--sage: #7d9a7b;--kraft: #d4b996;--ink-solid: #1f1e1d;--on-ink: #faf9f5;--on-primary: #fbfaf7;--rule: rgba(31, 30, 29, .16);--font-serif: "Tiempos Headline", "Iowan Old Style", "Palatino Linotype", "Book Antiqua", Palatino, Georgia, "Noto Serif SC", "Source Han Serif SC", "Songti SC", STSong, SimSun, serif;--font-display: var(--font-serif);--page-max: 1440px;--page-max-narrow: 1200px;--header-h: 60px;--sidebar-w: 228px;--sidebar-w-collapsed: 68px;--dur-1: .12s;--dur-2: .18s;--dur-3: .24s;--dur-4: .32s;--ease-out: cubic-bezier(.22, .61, .36, 1);--ease-emphasized: cubic-bezier(.16, 1, .3, 1);--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--primary: #3f6b4f;--primary-light: #6f8f6c;--primary-dark: #2e5140;--primary-soft: #e4eadc;--accent: var(--primary);--accent-light: var(--primary-soft);--accent-dark: var(--primary-dark);--accent-deep: var(--primary-dark);--success: #466c30;--warning: #86530a;--danger: #b0392c;--info: #6b665c;--ink: #1f1e1d;--ink-soft: #3d3a35;--ink-muted: #625c52;--ink-faint: #686257;--line: rgba(31, 30, 29, .1);--border: rgba(31, 30, 29, .14);--hair: rgba(31, 30, 29, .07);--fill: rgba(31, 30, 29, .05);--fill-2: rgba(31, 30, 29, .03);--surface: #fbfaf7;--card: #fbfaf7;--card-2: #f6f4ee;--surface-subtle: #f2efe7;--bg-warm: #f3f1ea;--bg: var(--bg-warm);--page: var(--bg-warm);--sidebar-bg: #ebe7dd;--sidebar-text: var(--ink-soft);--sidebar-active: var(--ink);--sidebar-hover: var(--fill);--success-soft: color-mix(in srgb, var(--success) 12%, var(--card));--warning-soft: color-mix(in srgb, var(--warning) 12%, var(--card));--danger-soft: color-mix(in srgb, var(--danger) 10%, var(--card));--info-soft: var(--fill);--radius-xs: 6px;--radius-sm: 8px;--radius-md: 10px;--radius-lg: 12px;--radius-xl: 16px;--radius-pill: 999px;--card-radius: 12px;--btn-radius: 8px;--field-radius: 8px;--tag-radius: 6px;--shadow-xs: 0 1px 1px rgba(31, 30, 29, .04);--shadow-sm: 0 1px 2px rgba(31, 30, 29, .05);--shadow-md: 0 8px 20px -10px rgba(31, 30, 29, .18);--shadow-card: var(--shadow-sm);--shadow-pop: 0 24px 60px -24px rgba(31, 30, 29, .3), 0 4px 12px rgba(31, 30, 29, .06);--shadow-btn: none;--shadow-btn-hover: none;--focus-ring: 0 0 0 3px rgba(63, 107, 79, .22);--font-body: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", "PingFang SC", "Noto Sans SC", "Microsoft YaHei", system-ui, sans-serif;--font-title: var(--font-serif);--sans: var(--font-body);--serif: var(--font-serif);--el-color-primary: #3f6b4f;--el-color-primary-light-3: #799784;--el-color-primary-light-5: #9fb5a7;--el-color-primary-light-7: #c5d3ca;--el-color-primary-light-8: #d9e1dc;--el-color-primary-light-9: #ecf0ed;--el-color-primary-dark-2: #32563f;--el-color-success: var(--success);--el-color-info: var(--info);--el-color-success-light-9: var(--success-soft);--el-color-warning-light-9: var(--warning-soft);--el-color-danger-light-9: var(--danger-soft);--el-color-info-light-9: var(--info-soft);--el-color-success-light-8: color-mix(in srgb, var(--success) 22%, var(--card));--el-color-warning-light-8: color-mix(in srgb, var(--warning) 22%, var(--card));--el-color-danger-light-8: color-mix(in srgb, var(--danger) 22%, var(--card));--el-color-info-light-8: var(--border);--el-bg-color: var(--card);--el-bg-color-overlay: var(--card);--el-fill-color-blank: var(--card);--el-fill-color: var(--fill);--el-fill-color-lighter: var(--card-2);--el-fill-color-dark: var(--fill);--el-fill-color-darker: var(--border);--el-fill-color-extra-light: var(--card-2);--el-border-color-lighter: var(--line);--el-border-color-extra-light: var(--hair);--el-border-color-dark: var(--border);--el-border-color-darker: var(--rule);--el-text-color-placeholder: var(--ink-faint);--el-text-color-disabled: var(--ink-faint);--el-disabled-bg-color: var(--surface-subtle);--el-disabled-text-color: var(--ink-faint);--el-disabled-border-color: var(--line);--el-color-warning: var(--warning);--el-color-danger: var(--danger);--el-border-radius-base: 10px;--el-border-radius-small: 7px;--el-font-family: var(--font-body);--el-bg-color-page: var(--page);--el-fill-color-light: var(--surface-subtle);--el-border-color: var(--border);--el-border-color-light: var(--line);--el-text-color-primary: var(--ink);--el-text-color-regular: var(--ink-soft);--el-text-color-secondary: var(--ink-muted)}:root[data-theme=qing]{--primary: #2f6b6e;--primary-light: #3f8588;--primary-dark: #245457;--primary-soft: #dde9e7;--moss: #2f6b6e;--moss-deep: #245457;--moss-soft: #dde9e7;--focus-ring: 0 0 0 3px rgba(47, 107, 110, .2);--el-color-primary: #2f6b6e;--el-color-primary-light-3: #6d9799;--el-color-primary-light-5: #97b5b6;--el-color-primary-light-7: #c1d3d3;--el-color-primary-light-8: #d5e1e1;--el-color-primary-light-9: #eaf0f0;--el-color-primary-dark-2: #245457}:root[data-theme=dai]{--primary: #46507c;--primary-light: #5a6598;--primary-dark: #363e62;--primary-soft: #e3e4ee;--moss: #46507c;--moss-deep: #363e62;--moss-soft: #e3e4ee;--focus-ring: 0 0 0 3px rgba(70, 80, 124, .2);--el-color-primary: #46507c;--el-color-primary-light-3: #7d85a3;--el-color-primary-light-5: #a2a8be;--el-color-primary-light-7: #c8cbd8;--el-color-primary-light-8: #dadce5;--el-color-primary-light-9: #edeef2;--el-color-primary-dark-2: #363e62}:root[data-color-mode=dark]{--paper: #20231f;--paper-deep: #31352d;--paper-raised: #282c26;--primary: #9bb393;--primary-light: #c5d7bc;--primary-dark: #bdd0b4;--primary-soft: #353f31;--moss: var(--primary);--moss-deep: var(--primary-dark);--moss-soft: var(--primary-soft);--ink-solid: #eee9dc;--on-ink: #20231f;--on-primary: #20231f;--rule: rgba(238, 233, 220, .2);--ink: #eee9dc;--ink-soft: #d8d3c6;--ink-muted: #b9b7a9;--ink-faint: #a5a596;--success: #a2b88b;--warning: #d8b476;--danger: #e0a090;--info: var(--ink-muted);--line: rgba(238, 233, 220, .12);--border: rgba(238, 233, 220, .22);--hair: rgba(238, 233, 220, .08);--fill: rgba(238, 233, 220, .07);--fill-2: rgba(238, 233, 220, .04);--surface: #282c26;--card: #282c26;--card-2: #2d312a;--surface-subtle: #31352d;--bg-warm: #20231f;--bg: var(--bg-warm);--page: var(--bg-warm);--sidebar-bg: #242820;--shadow-xs: 0 1px 1px rgba(0, 0, 0, .12);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .14);--shadow-md: 0 8px 20px -10px rgba(0, 0, 0, .3);--shadow-pop: 0 24px 60px -24px rgba(0, 0, 0, .4);--shadow-btn: none;--shadow-btn-hover: none;--focus-ring: 0 0 0 3px rgba(155, 179, 147, .28);--el-color-primary: var(--primary);--el-color-primary-light-3: color-mix(in srgb, var(--primary) 72%, var(--card));--el-color-primary-light-5: color-mix(in srgb, var(--primary) 58%, var(--card));--el-color-primary-light-7: color-mix(in srgb, var(--primary) 42%, var(--card));--el-color-primary-light-8: color-mix(in srgb, var(--primary) 32%, var(--card));--el-color-primary-light-9: var(--primary-soft);--el-color-primary-dark-2: var(--primary-dark)}@media (prefers-color-scheme: dark){:root[data-color-mode=system]{--paper: #20231f;--paper-deep: #31352d;--paper-raised: #282c26;--primary: #9bb393;--primary-light: #c5d7bc;--primary-dark: #bdd0b4;--primary-soft: #353f31;--moss: var(--primary);--moss-deep: var(--primary-dark);--moss-soft: var(--primary-soft);--ink-solid: #eee9dc;--on-ink: #20231f;--on-primary: #20231f;--rule: rgba(238, 233, 220, .2);--ink: #eee9dc;--ink-soft: #d8d3c6;--ink-muted: #b9b7a9;--ink-faint: #a5a596;--success: #a2b88b;--warning: #d8b476;--danger: #e0a090;--info: var(--ink-muted);--line: rgba(238, 233, 220, .12);--border: rgba(238, 233, 220, .22);--hair: rgba(238, 233, 220, .08);--fill: rgba(238, 233, 220, .07);--fill-2: rgba(238, 233, 220, .04);--surface: #282c26;--card: #282c26;--card-2: #2d312a;--surface-subtle: #31352d;--bg-warm: #20231f;--bg: var(--bg-warm);--page: var(--bg-warm);--sidebar-bg: #242820;--shadow-xs: 0 1px 1px rgba(0, 0, 0, .12);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .14);--shadow-md: 0 8px 20px -10px rgba(0, 0, 0, .3);--shadow-pop: 0 24px 60px -24px rgba(0, 0, 0, .4);--shadow-btn: none;--shadow-btn-hover: none;--focus-ring: 0 0 0 3px rgba(155, 179, 147, .28);--el-color-primary: var(--primary);--el-color-primary-light-3: color-mix(in srgb, var(--primary) 72%, var(--card));--el-color-primary-light-5: color-mix(in srgb, var(--primary) 58%, var(--card));--el-color-primary-light-7: color-mix(in srgb, var(--primary) 42%, var(--card));--el-color-primary-light-8: color-mix(in srgb, var(--primary) 32%, var(--card));--el-color-primary-light-9: var(--primary-soft);--el-color-primary-dark-2: var(--primary-dark)}}*,*:before,*:after{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;padding:0}body{min-width:320px;color:var(--ink);background:var(--page);font-family:var(--font-body);font-size:var(--fs-md);line-height:var(--lh-body);letter-spacing:-.003em;font-feature-settings:"kern";text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,input,textarea,select{font:inherit}a{color:inherit;text-decoration:none}h1,h2,h3,h4,h5,h6,.serif-title{color:var(--ink);font-family:var(--font-title);letter-spacing:-.02em}button:focus-visible,a:focus-visible,[role=button]:focus-visible{outline:none;box-shadow:var(--focus-ring)}.el-button{--el-button-border-color: var(--border);--el-button-hover-border-color: color-mix(in srgb, var(--primary) 45%, var(--border));--el-button-hover-text-color: var(--primary-dark);--el-button-hover-bg-color: color-mix(in srgb, var(--primary) 5%, var(--card));min-height:34px;border-radius:var(--btn-radius);font-weight:var(--fw-semibold);letter-spacing:0;transition:transform var(--dur-1) var(--ease-out),box-shadow var(--dur-2) var(--ease-out),background-color var(--dur-2) var(--ease-out),border-color var(--dur-2) var(--ease-out),color var(--dur-2) var(--ease-out)}.el-button--small{min-height:28px;border-radius:var(--radius-xs)}.el-button--large{min-height:40px}.el-button:not(.is-disabled):not(.is-loading):active{transform:scale(.97)}.el-button.is-disabled,.el-button.is-loading{cursor:not-allowed}.el-button--primary{--el-button-bg-color: var(--ink-solid);--el-button-border-color: var(--ink-solid);--el-button-text-color: var(--on-ink);--el-button-hover-bg-color: color-mix(in srgb, var(--ink-solid) 84%, var(--paper));--el-button-hover-border-color: color-mix(in srgb, var(--ink-solid) 84%, var(--paper));--el-button-hover-text-color: var(--on-ink);--el-button-active-bg-color: var(--ink-solid);--el-button-active-border-color: var(--ink-solid);--el-button-disabled-bg-color: color-mix(in srgb, var(--ink-solid) 30%, var(--paper));--el-button-disabled-border-color: transparent;--el-button-disabled-text-color: var(--on-ink);color:var(--el-button-text-color)}.el-button--primary.is-text,.el-button--primary.is-link{--el-button-text-color: var(--primary-dark);--el-button-hover-link-text-color: var(--primary);color:var(--primary-dark)}.el-button--primary:not(.is-text):not(.is-link):not(.is-plain){box-shadow:var(--shadow-btn)}.el-button--primary:not(.is-text):not(.is-link):not(.is-plain):not(.is-disabled):hover{box-shadow:var(--shadow-btn-hover)}.el-button--primary.is-plain{--el-button-bg-color: transparent;--el-button-border-color: var(--rule);--el-button-text-color: var(--ink);--el-button-hover-bg-color: var(--fill);--el-button-hover-border-color: var(--ink);--el-button-hover-text-color: var(--ink)}.el-button--success{--el-button-text-color: var(--on-primary);--el-button-hover-text-color: var(--on-primary);--el-button-bg-color: var(--success);--el-button-border-color: var(--success);--el-button-hover-bg-color: color-mix(in srgb, var(--success) 85%, #000);--el-button-hover-border-color: color-mix(in srgb, var(--success) 85%, #000)}.el-button--danger:not(.is-text):not(.is-link):not(.is-plain){--el-button-hover-bg-color: color-mix(in srgb, var(--danger) 86%, #000);--el-button-hover-border-color: color-mix(in srgb, var(--danger) 86%, #000);--el-button-text-color: var(--on-primary);--el-button-hover-text-color: var(--on-primary)}.el-button.is-text{--el-button-hover-bg-color: var(--fill);--el-button-active-bg-color: var(--fill);border-color:transparent}.el-button.is-text:not(.is-disabled):hover,.el-button.is-text:not(.is-disabled):focus-visible{background-color:color-mix(in srgb,currentColor 9%,transparent)}.el-button:focus-visible,.el-link:focus-visible,.el-dropdown:focus-visible{outline:none;box-shadow:var(--focus-ring)}.el-input__wrapper,.el-select__wrapper{min-height:36px;border-radius:var(--field-radius)!important;background:var(--card);box-shadow:0 0 0 1px var(--border) inset!important;transition:box-shadow var(--dur-2) var(--ease-out),background-color var(--dur-2) var(--ease-out)}.el-input--small .el-input__wrapper,.el-select--small .el-select__wrapper{min-height:28px}.el-input__wrapper:hover,.el-select__wrapper:hover,.el-textarea__inner:hover{box-shadow:0 0 0 1px color-mix(in srgb,var(--ink) 24%,transparent) inset!important}.el-input__wrapper.is-focus,.el-select__wrapper.is-focused,.el-select__wrapper.is-active,.el-textarea__inner:focus{box-shadow:var(--focus-ring),0 0 0 1px var(--primary) inset!important}.el-input.is-disabled .el-input__wrapper,.el-select__wrapper.is-disabled{background:var(--surface-subtle)}.el-textarea__inner{border:0;border-radius:var(--field-radius);background:var(--card);box-shadow:0 0 0 1px var(--border) inset!important;transition:box-shadow var(--dur-2) var(--ease-out)}.el-input__inner::placeholder,.el-textarea__inner::placeholder,.el-select__placeholder{color:var(--ink-faint)}.el-form-item__label{color:var(--ink-soft);font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.el-form-item__error{padding-top:3px}.el-card{min-width:0;overflow:hidden;background:var(--card);border:1px solid var(--line);border-radius:var(--card-radius);box-shadow:var(--shadow-sm);color:var(--ink)}.el-card__header{min-width:0;padding:14px 20px;border-bottom:1px solid var(--line);font-family:var(--font-serif);font-size:var(--fs-lg);font-weight:600;line-height:var(--lh-tight)}.el-card__body{padding:20px}.el-card.is-hover-shadow{transition:box-shadow var(--dur-3) var(--ease-out),border-color var(--dur-3) var(--ease-out)}.el-card.is-hover-shadow:hover{border-color:color-mix(in srgb,var(--primary) 20%,var(--line));box-shadow:var(--shadow-md)}.el-table{width:100%;--el-table-border-color: var(--line);--el-table-header-bg-color: var(--surface-subtle);--el-table-header-text-color: var(--ink-muted);--el-table-row-hover-bg-color: color-mix(in srgb, var(--primary) 5%, var(--card));--el-table-current-row-bg-color: var(--primary-soft);--el-table-bg-color: var(--card);--el-table-tr-bg-color: var(--card);--el-table-text-color: var(--ink-soft);border-radius:var(--radius-md);font-size:var(--fs-sm);font-variant-numeric:tabular-nums}.el-table th.el-table__cell{height:42px;background:var(--surface-subtle);color:var(--ink-muted);font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:.02em}.el-table .el-table__cell{padding:10px 0}.el-table td.el-table__cell{border-bottom-color:var(--line);transition:background-color var(--dur-2) var(--ease-out)}.el-table--striped .el-table__body tr.el-table__row--striped td.el-table__cell{background:var(--card-2)}.el-table__inner-wrapper:before{background-color:var(--line)}.el-table .el-table__cell .cell{line-height:var(--lh-snug)}.el-overlay{background-color:#1f1e1d61}.el-dialog{max-width:calc(100vw - 32px);overflow:hidden;padding:0;background:var(--card);border-radius:var(--radius-xl);box-shadow:var(--shadow-pop)}.el-dialog__header{margin-right:0;padding:18px 24px 14px;border-bottom:1px solid var(--line)}.el-dialog__headerbtn{top:8px;right:8px;width:40px;height:40px;border-radius:var(--radius-sm);transition:background-color var(--dur-2) var(--ease-out)}.el-dialog__headerbtn:hover{background:var(--fill)}.el-dialog__title{color:var(--ink);font-family:var(--font-serif);font-size:20px;font-weight:500;letter-spacing:-.005em}.el-dialog__body{max-height:min(68vh,680px);overflow-y:auto;padding:20px 24px;color:var(--ink-soft)}.el-dialog__footer{padding:14px 24px 18px;border-top:1px solid var(--line);background:var(--card-2)}.el-drawer{background:var(--card);box-shadow:var(--shadow-pop)}.el-drawer__header{margin-bottom:0;padding:18px 24px 14px;border-bottom:1px solid var(--line);color:var(--ink);font-size:var(--fs-xl);font-weight:var(--fw-semibold)}.el-message-box{padding:20px 22px 18px;border:0;border-radius:var(--radius-lg);box-shadow:var(--shadow-pop)}.el-message-box__title{color:var(--ink);font-size:var(--fs-lg);font-weight:var(--fw-semibold)}.el-tag{--el-tag-border-radius: var(--tag-radius);border-radius:var(--tag-radius);font-weight:var(--fw-semibold);letter-spacing:.01em}.el-tag--primary:not(.el-tag--dark){--el-tag-bg-color: var(--primary-soft);--el-tag-text-color: var(--primary-dark);--el-tag-border-color: transparent}.el-tag--success{--el-tag-bg-color: var(--success-soft);--el-tag-text-color: color-mix(in srgb, var(--success) 78%, var(--ink));--el-tag-border-color: transparent}.el-tag--warning{--el-tag-bg-color: var(--warning-soft);--el-tag-text-color: var(--warning);--el-tag-border-color: transparent}.el-tag--danger{--el-tag-bg-color: var(--danger-soft);--el-tag-text-color: var(--danger);--el-tag-border-color: transparent}.el-tag--info{--el-tag-bg-color: var(--fill);--el-tag-text-color: var(--ink-muted);--el-tag-border-color: transparent}.el-alert{padding:10px 14px;border:1px solid transparent;border-radius:var(--radius-md)}.el-alert--info.is-light{border-color:var(--line);background:var(--surface-subtle);color:var(--ink-soft)}.el-alert--success.is-light{border-color:color-mix(in srgb,var(--success) 22%,transparent);background:var(--success-soft)}.el-alert--warning.is-light{border-color:color-mix(in srgb,var(--warning) 24%,transparent);background:var(--warning-soft)}.el-alert--error.is-light{border-color:color-mix(in srgb,var(--danger) 22%,transparent);background:var(--danger-soft)}.el-alert__title{font-size:var(--fs-sm);line-height:var(--lh-snug)}.el-radio-group:has(>.el-radio-button){gap:0;padding:3px;border-radius:calc(var(--radius-sm) + 2px);background:var(--fill)}.el-radio-button{--el-radio-button-checked-bg-color: var(--card);--el-radio-button-checked-text-color: var(--primary-dark);--el-radio-button-checked-border-color: transparent;--el-radio-button-disabled-checked-fill: var(--fill)}.el-radio-button__inner{padding:6px 13px;outline:0!important;border:0!important;border-radius:var(--radius-sm)!important;background:transparent;box-shadow:none!important;color:var(--ink-muted);font-weight:var(--fw-semibold);transition:background-color var(--dur-2) var(--ease-out),color var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out)}.el-radio-button--small .el-radio-button__inner{padding:4px 10px}.el-radio-button__original-radio:focus-visible+.el-radio-button__inner{box-shadow:var(--focus-ring)!important}.el-radio-button__inner:hover{color:var(--ink)}.el-radio-button__original-radio:checked+.el-radio-button__inner,.el-radio-button.is-active .el-radio-button__inner{background:var(--card);color:var(--primary-dark);box-shadow:var(--shadow-xs),0 0 0 1px var(--line)!important}.el-segmented{--el-segmented-bg-color: var(--fill);--el-segmented-item-selected-bg-color: var(--card);--el-segmented-item-selected-color: var(--primary-dark);--el-segmented-item-hover-bg-color: transparent;--el-segmented-item-hover-color: var(--ink);--el-segmented-color: var(--ink-muted);--el-border-radius-base: var(--radius-sm);padding:3px;font-weight:var(--fw-semibold)}.el-segmented__item-selected{box-shadow:var(--shadow-xs),0 0 0 1px var(--line);transition:all var(--dur-3) var(--ease-emphasized)!important}.el-tabs__item{color:var(--ink-muted);font-weight:var(--fw-semibold);transition:color var(--dur-2) var(--ease-out)}.el-tabs__item:hover,.el-tabs__item.is-active{color:var(--primary-dark)}.el-tabs__active-bar{height:2px;border-radius:2px;background-color:var(--primary);transition:transform var(--dur-4) var(--ease-emphasized),width var(--dur-4) var(--ease-emphasized)!important}.el-tabs__nav-wrap:after{height:1px;background-color:var(--line)}.el-pagination{flex-wrap:wrap;row-gap:8px;--el-pagination-hover-color: var(--primary)}.el-pagination.is-background .el-pager li.is-active{color:var(--on-primary)}.el-pagination .el-pager li{border-radius:var(--radius-xs)}.el-progress-bar__outer{background:var(--fill)}.el-progress-bar__inner{transition:width var(--dur-4) var(--ease-out)}.el-statistic__head{margin-bottom:6px;color:var(--ink-muted);font-size:var(--fs-xs);font-weight:var(--fw-semibold)}.el-statistic__content{color:var(--ink);font-size:var(--fs-3xl);font-weight:var(--fw-semibold);letter-spacing:-.02em}.el-descriptions__label.el-descriptions__cell.is-bordered-label{background:var(--surface-subtle);color:var(--ink-muted);font-weight:var(--fw-semibold)}.el-upload-dragger{min-height:160px;border-color:var(--border);border-radius:var(--radius-lg);background:var(--card-2);transition:border-color var(--dur-2) var(--ease-out),background-color var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out)}.el-upload-dragger:hover,.el-upload-dragger:focus{border-color:var(--primary);background:var(--primary-soft);box-shadow:var(--focus-ring)}.el-empty{--el-empty-description-margin-top: 12px;padding-block:28px}.el-empty__description p{color:var(--ink-muted);font-size:var(--fs-sm)}.el-radio-button__inner,.el-segmented{font-weight:var(--fw-semibold)}.el-dropdown-menu,.el-select-dropdown,.el-popper{border-radius:var(--radius-md)!important}.el-popper.is-light{border-color:var(--line);box-shadow:var(--shadow-md)}.el-dropdown-menu{padding:6px}.el-dropdown-menu__item{gap:2px;border-radius:var(--radius-xs);color:var(--ink-soft);line-height:34px}.el-select-dropdown__item{margin:0 6px;border-radius:var(--radius-xs)}.el-dropdown-menu__item:hover,.el-dropdown-menu__item:focus,.el-dropdown-menu__item:not(.is-disabled):focus,.el-select-dropdown__item.is-hovering{color:var(--primary-dark);background:var(--primary-soft)}.el-select-dropdown__item.is-selected{color:var(--primary-dark);font-weight:var(--fw-semibold)}.el-popper.is-dark{border-radius:var(--radius-sm)!important;font-size:var(--fs-xs)}.el-message{--el-message-border-radius: var(--radius-md);gap:10px;padding:11px 16px;border-color:var(--line);background:var(--card);box-shadow:var(--shadow-md)}.el-message .el-message__content{color:var(--ink-soft);font-weight:var(--fw-medium)}.el-notification{border-color:var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-pop)}.el-loading-mask{background:color-mix(in srgb,var(--card) 82%,transparent)}.el-loading-spinner .path{stroke:var(--primary);stroke-width:3}.el-loading-spinner .el-loading-text{margin-top:8px;color:var(--ink-soft);font-size:var(--fs-sm);font-weight:var(--fw-medium)}.el-badge__content{border:0;font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums}.katex-inline{display:inline;max-width:100%;font-size:1em;line-height:inherit;vertical-align:baseline}.katex-display{display:block;max-width:100%;margin:1em 0;padding:4px 0;overflow-x:auto;overflow-y:hidden;text-align:center;-webkit-overflow-scrolling:touch}.el-card .katex,.el-dialog .katex,.el-message-box .katex{color:var(--ink)}@media (min-width: 641px){.upload-page .template-card .tpl-column-mode{grid-template-columns:auto minmax(0,1fr) auto}.upload-page .template-card .tpl-column-mode-hint{grid-column:1 / -1;min-width:0;margin:0;white-space:normal}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}@media (max-width: 1024px){.el-card__header,.el-card__body{padding-right:18px;padding-left:18px}}@media (max-width: 640px){.el-button{max-width:100%;height:auto;white-space:normal;line-height:var(--lh-snug)}.el-button>span{min-width:0;white-space:inherit;overflow-wrap:anywhere}.el-form-item__content,.el-input,.el-select{min-width:0}.el-dialog{width:calc(100vw - 24px)!important;margin-top:6vh!important}.el-dialog__header,.el-dialog__body,.el-dialog__footer,.el-card__header,.el-card__body{padding-right:16px;padding-left:16px}.el-form-item{align-items:stretch}.el-form-item__label{width:auto!important;justify-content:flex-start}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.page-shell{width:100%;max-width:var(--page-max);margin:0 auto;display:flex;flex-direction:column;gap:var(--sp-5);min-width:0}.page-shell--narrow{max-width:var(--page-max-narrow)}.page-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--sp-4);flex-wrap:wrap;min-width:0}.page-intro__text{min-width:0}.page-intro__eyebrow{margin:0 0 4px;color:var(--primary);font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:.04em}.page-intro h1,.page-intro__title{margin:0;color:var(--ink);font-size:var(--fs-2xl);font-weight:var(--fw-bold);line-height:var(--lh-tight);letter-spacing:-.02em}.page-intro p,.page-intro__lead{max-width:72ch;margin:6px 0 0;color:var(--ink-muted);font-size:var(--fs-sm);line-height:var(--lh-snug)}.page-intro__actions{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}.card-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);flex-wrap:wrap;min-width:0}.card-head-left,.card-head-right{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap;min-width:0}.card-head-right{justify-content:flex-end}.head-title,.section-title,.card-title-text{color:var(--ink);font-size:var(--fs-lg);font-weight:var(--fw-semibold);line-height:var(--lh-tight);letter-spacing:-.01em}.head-icon{display:inline-grid;place-items:center;width:28px;height:28px;flex:0 0 auto;border-radius:var(--radius-sm);background:var(--primary-soft);color:var(--primary);font-size:16px}.head-subtitle{color:var(--ink-muted);font-size:var(--fs-xs);font-weight:var(--fw-medium)}.toolbar-row{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);flex-wrap:wrap;min-width:0}.toolbar-group{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap;min-width:0}.toolbar-divider{width:1px;height:20px;background:var(--line)}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--sp-3)}.stat-tile{position:relative;display:flex;flex-direction:column;gap:4px;min-width:0;padding:14px 16px 14px 18px;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--card)}.stat-tile:before{content:"";position:absolute;inset:12px auto 12px 0;width:3px;border-radius:0 3px 3px 0;background:var(--stat-tone, var(--line))}.stat-tile__label{color:var(--ink-muted);font-size:var(--fs-xs);font-weight:var(--fw-semibold)}.stat-tile__value{color:var(--ink);font-size:var(--fs-3xl);font-weight:var(--fw-semibold);line-height:1.15;letter-spacing:-.02em}.stat-tile__unit{margin-left:3px;color:var(--ink-muted);font-size:var(--fs-sm);font-weight:var(--fw-medium);letter-spacing:0}.stat-tile__meta{color:var(--ink-muted);font-size:var(--fs-xs);line-height:var(--lh-snug)}.stat-tile.is-good{--stat-tone: var(--success)}.stat-tile.is-warn{--stat-tone: var(--warning)}.stat-tile.is-bad{--stat-tone: var(--danger)}.stat-tile.is-brand{--stat-tone: var(--primary)}.meter-list{display:flex;flex-direction:column;gap:2px}.meter-row{display:grid;grid-template-columns:minmax(160px,260px) minmax(0,1fr) 72px;align-items:center;gap:var(--sp-4);padding:10px 8px;border-radius:var(--radius-sm);transition:background-color var(--dur-2) var(--ease-out)}.meter-row:hover{background:var(--fill-2)}.meter-row__label{display:flex;flex-direction:column;gap:2px;min-width:0}.meter-row__label strong{color:var(--ink);font-size:var(--fs-sm);font-weight:var(--fw-semibold);overflow-wrap:anywhere}.meter-row__label small{color:var(--ink-muted);font-size:var(--fs-xs)}.meter-row__track{position:relative;height:8px;overflow:hidden;border-radius:4px;background:color-mix(in srgb,var(--primary) 10%,var(--card))}.meter-row__fill{height:100%;border-radius:4px;background:var(--primary);transform-origin:left center;animation:ma-meter-grow var(--dur-4) var(--ease-emphasized) backwards}.meter-row__value{display:flex;flex-direction:column;align-items:flex-end;color:var(--ink);font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;white-space:nowrap}.meter-row__value small{color:var(--ink-muted);font-size:var(--fs-xs);font-weight:var(--fw-medium)}@keyframes ma-meter-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.num{font-variant-numeric:tabular-nums}.text-muted{color:var(--ink-muted)}.status-chip{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:var(--radius-pill);background:var(--fill);color:var(--ink-soft);font-size:var(--fs-xs);font-weight:var(--fw-semibold);white-space:nowrap}.status-chip:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.status-chip.is-good{background:var(--success-soft);color:color-mix(in srgb,var(--success) 80%,var(--ink))}.status-chip.is-warn{background:var(--warning-soft);color:var(--warning)}.status-chip.is-bad{background:var(--danger-soft);color:var(--danger)}@media (max-width: 768px){.meter-row{grid-template-columns:minmax(0,1fr) 64px}.meter-row__track{grid-column:1 / -1;grid-row:2}}@media (prefers-reduced-motion: reduce){.meter-row__fill{animation:none}}.hero-band{position:relative;isolation:isolate;overflow:hidden;padding:34px 38px 30px;border:1px solid var(--line);border-radius:var(--radius-xl);background:var(--paper-raised);color:var(--ink)}.hero-band.is-kraft{background:var(--paper-deep);border-color:transparent}.hero-band__eyebrow{display:inline-flex;align-items:center;gap:10px;margin:0 0 14px;color:var(--moss-deep);font-size:var(--fs-xs);font-weight:600;letter-spacing:.16em}.hero-band__eyebrow:before{content:"";width:22px;height:1px;background:currentColor}.hero-band__title{margin:0;color:var(--ink);font-family:var(--font-serif);font-size:clamp(32px,3vw,46px);font-weight:500;line-height:1.15;letter-spacing:-.01em}.hero-band__lead{max-width:60ch;margin:14px 0 0;color:var(--ink-muted);font-size:var(--fs-lg);line-height:1.65}.hero-metrics{display:flex;flex-wrap:wrap;gap:18px 0}.hero-metric{display:flex;flex-direction:column;min-width:0;padding:0 30px;border-left:1px solid var(--rule)}.hero-metric:first-child{padding-left:0;border-left:0}.hero-metric__value{color:var(--ink);font-family:var(--font-serif);font-size:clamp(36px,3.2vw,52px);font-weight:400;line-height:1;letter-spacing:-.02em;white-space:nowrap;font-variant-numeric:lining-nums}.hero-metric__value small{margin-left:4px;color:var(--ink-muted);font-family:var(--font-body);font-size:var(--fs-sm);font-weight:500;letter-spacing:0}.hero-metric__label{margin-top:10px;overflow:hidden;color:var(--ink-muted);font-size:var(--fs-xs);font-weight:500;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 480px){.hero-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.hero-metric{padding-inline:12px}.hero-metric__label{white-space:normal}}.hero-metric.is-accent .hero-metric__value{color:var(--moss-deep)}.hero-metric.is-warn .hero-metric__label:before,.hero-metric.is-bad .hero-metric__label:before,.hero-metric.is-good .hero-metric__label:before{content:"";display:inline-block;width:7px;height:7px;margin-right:6px;border-radius:50%;vertical-align:1px}.hero-metric.is-warn .hero-metric__label:before{background:var(--warning)}.hero-metric.is-bad .hero-metric__label:before{background:var(--danger)}.hero-metric.is-good .hero-metric__label:before{background:var(--success)}.hero-plot{position:absolute;z-index:-1;pointer-events:none}.hero-plot .axis{stroke:var(--rule);stroke-width:1}.hero-plot .curve{fill:none;stroke:var(--ink);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:0;animation:ma-plot-draw 1.8s var(--ease-out) .15s backwards}.hero-plot .curve.is-faint{stroke:var(--rule);stroke-dasharray:.012 .012;animation:ma-fade-in .9s var(--ease-out) .4s backwards}.hero-plot .dot{fill:var(--moss);stroke:none;animation:ma-fade-in var(--dur-3) var(--ease-out) 1.4s backwards}.hero-plot .dot.is-hollow{fill:var(--paper-raised);stroke:var(--ink);stroke-width:1.4}.hero-plot .wash{fill:var(--moss-soft);stroke:none}@keyframes ma-plot-draw{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}.el-button.is-solid{--el-button-bg-color: var(--ink-solid);--el-button-border-color: var(--ink-solid);--el-button-text-color: var(--on-ink);--el-button-hover-bg-color: color-mix(in srgb, var(--ink-solid) 84%, var(--paper));--el-button-hover-border-color: color-mix(in srgb, var(--ink-solid) 84%, var(--paper));--el-button-hover-text-color: var(--on-ink);--el-button-active-bg-color: var(--ink-solid);--el-button-active-border-color: var(--ink-solid);padding-inline:20px;font-weight:600}.el-button.is-outline{--el-button-bg-color: transparent;--el-button-border-color: var(--rule);--el-button-text-color: var(--ink);--el-button-hover-bg-color: var(--fill);--el-button-hover-border-color: var(--ink);--el-button-hover-text-color: var(--ink);--el-button-active-bg-color: var(--fill);padding-inline:18px}.index-numeral{color:var(--moss);font-family:var(--font-serif);font-size:34px;font-weight:400;line-height:1;font-variant-numeric:lining-nums}@media (prefers-reduced-motion: reduce){.hero-plot .curve,.hero-plot .dot{animation:none}}@keyframes ma-fade-in{0%{opacity:0}to{opacity:1}}@keyframes ma-rise-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes ma-dialog-in{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}@keyframes ma-dialog-out{0%{opacity:1;transform:none}to{opacity:0;transform:translateY(6px) scale(.99)}}@keyframes ma-progress-indeterminate{0%{transform:translate(-100%) scaleX(.4)}60%{transform:translate(40%) scaleX(.7)}to{transform:translate(110%) scaleX(.4)}}@keyframes ma-shimmer{0%{background-position:150% 0}to{background-position:-50% 0}}.page-enter-active{transition:opacity var(--dur-3) var(--ease-out),transform var(--dur-4) var(--ease-emphasized)}.page-leave-active{transition:opacity var(--dur-1) var(--ease-in)}.page-enter-from{opacity:0;transform:translateY(8px)}.page-leave-to{opacity:0}.fade-enter-active,.fade-leave-active{transition:opacity var(--dur-2) var(--ease-out)}.fade-enter-from,.fade-leave-to{opacity:0}.list-enter-active{transition:opacity var(--dur-3) var(--ease-out),transform var(--dur-3) var(--ease-emphasized)}.list-leave-active{transition:opacity var(--dur-2) var(--ease-in)}.list-enter-from{opacity:0;transform:translateY(6px)}.list-leave-to{opacity:0}.list-move{transition:transform var(--dur-3) var(--ease-emphasized)}.ma-stagger>*{animation:ma-rise-in var(--dur-4) var(--ease-emphasized) backwards}.ma-stagger>:nth-child(2){animation-delay:30ms}.ma-stagger>:nth-child(3){animation-delay:60ms}.ma-stagger>:nth-child(4){animation-delay:90ms}.ma-stagger>:nth-child(5){animation-delay:.12s}.ma-stagger>:nth-child(6){animation-delay:.15s}.ma-stagger>:nth-child(7){animation-delay:.18s}.ma-stagger>:nth-child(8){animation-delay:.21s}.ma-stagger>:nth-child(n+9){animation-delay:.24s}.el-table__body tr.el-table__row{animation:ma-fade-in var(--dur-3) var(--ease-out) backwards}.el-table__body tr.el-table__row:nth-child(2){animation-delay:16ms}.el-table__body tr.el-table__row:nth-child(3){animation-delay:32ms}.el-table__body tr.el-table__row:nth-child(4){animation-delay:48ms}.el-table__body tr.el-table__row:nth-child(5){animation-delay:64ms}.el-table__body tr.el-table__row:nth-child(6){animation-delay:80ms}.el-table__body tr.el-table__row:nth-child(7){animation-delay:96ms}.el-table__body tr.el-table__row:nth-child(8){animation-delay:112ms}.el-table__body tr.el-table__row:nth-child(n+9){animation-delay:128ms}.dialog-fade-enter-active{animation-duration:var(--dur-3)}.dialog-fade-leave-active{animation-duration:var(--dur-2)}.dialog-fade-enter-active .el-overlay-dialog,.dialog-fade-leave-active .el-overlay-dialog{animation:none}.dialog-fade-enter-active .el-dialog{animation:ma-dialog-in var(--dur-3) var(--ease-emphasized) both}.dialog-fade-leave-active .el-dialog{animation:ma-dialog-out var(--dur-2) var(--ease-in) both}.fade-in-linear-enter-active .el-overlay-message-box{animation:ma-dialog-in var(--dur-3) var(--ease-emphasized) both}.fade-in-linear-leave-active .el-overlay-message-box{animation:ma-dialog-out var(--dur-2) var(--ease-in) both}.el-drawer{transition:transform var(--dur-4) var(--ease-emphasized),opacity var(--dur-3) var(--ease-out)}.el-zoom-in-top-enter-active,.el-zoom-in-top-leave-active{transition:opacity var(--dur-2) var(--ease-out),transform var(--dur-2) var(--ease-emphasized)!important}.el-zoom-in-top-enter-from,.el-zoom-in-top-leave-to{opacity:0!important;transform:translateY(-4px) scale(.98)!important}.el-loading-fade-enter-active{transition:opacity var(--dur-3) var(--ease-out)}.ma-progress-line{position:absolute;inset:auto 0 -1px;height:2px;overflow:hidden;pointer-events:none}.ma-progress-line:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--primary);border-radius:2px;transform-origin:left center;animation:ma-progress-indeterminate 1.1s var(--ease-in-out) infinite}.ma-skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--fill-2) 25%,var(--fill) 45%,var(--fill-2) 65%) 0 0 / 200% 100%;animation:ma-shimmer 1.4s linear infinite}.ma-pressable{transition:transform var(--dur-1) var(--ease-out),box-shadow var(--dur-3) var(--ease-out),border-color var(--dur-3) var(--ease-out),background-color var(--dur-2) var(--ease-out)}.ma-pressable:hover{border-color:color-mix(in srgb,var(--primary) 26%,var(--line));box-shadow:var(--shadow-md)}.ma-pressable:active{transform:scale(.985)}@media (prefers-reduced-motion: reduce){.page-enter-from,.list-enter-from{transform:none}.ma-stagger>*,.el-table__body tr.el-table__row{animation:none}.ma-progress-line:after,.ma-skeleton{animation:none}.ma-progress-line:after{transform:none;opacity:.6}.ma-pressable:active,.el-button:not(.is-disabled):not(.is-loading):active{transform:none}}
