:root{--app-topbar-bottom: 68px;--text-primary: #182230;--text-secondary: #526579;--text-muted: #637487;--text-inverse: #fff;--bg-page: #f1f5f9;--bg-card: #fff;--bg-subtle: #f6f9fc;--bg-soft: #f8fbff;--bg-topbar: rgba(255, 255, 255, .96);--bg-account: #f4f8fb;--bg-undo: #f0f7ff;--border-color: #dbe5ee;--border-soft: #edf2f7;--border-undo: #d9ecff;--brand-color: #17324d;--brand-color-light: #e8eef4;--brand-link: #1d64b4;--accent-color: #f2b84b;--danger-color: #dc2626;--success-color: #16a34a;--warning-color: #d97706;--shadow-topbar: 0 2px 10px rgba(23, 50, 77, .06);--shadow-card: 0 4px 14px rgba(15, 35, 55, .05);--shadow-auth: 0 12px 34px rgba(23, 50, 77, .12);color:var(--text-primary);background:var(--bg-page);font-family:PingFang SC,Microsoft YaHei,system-ui,sans-serif}html.dark{--text-primary: #eef4ff;--text-secondary: #c8d2d8;--text-muted: #98a8b0;--text-inverse: #071113;--bg-page: #0f1417;--bg-card: #171f22;--bg-subtle: #1f2a2d;--bg-soft: #233236;--bg-topbar: rgba(17, 23, 26, .96);--bg-account: #202c31;--bg-undo: #17313a;--border-color: #334044;--border-soft: #27353a;--border-undo: rgba(97, 190, 210, .34);--brand-color: #8dd9d2;--brand-color-light: #1a2a2c;--brand-link: #71bef7;--accent-color: #f6c85d;--danger-color: #ff7b72;--success-color: #5ad486;--warning-color: #f7b955;--shadow-topbar: 0 2px 10px rgba(0, 0, 0, .3);--shadow-card: 0 10px 26px rgba(0, 0, 0, .24);--shadow-auth: 0 12px 34px rgba(0, 0, 0, .4);color-scheme:dark;--el-bg-color: var(--bg-card);--el-bg-color-overlay: #1d282c;--el-fill-color-blank: var(--bg-card);--el-fill-color-light: var(--bg-subtle);--el-fill-color-lighter: var(--bg-soft);--el-text-color-primary: var(--text-primary);--el-text-color-regular: var(--text-secondary);--el-text-color-secondary: var(--text-muted);--el-border-color: var(--border-color);--el-border-color-light: var(--border-soft);--el-border-color-lighter: var(--border-soft);--el-color-primary: #71bef7;--el-color-primary-light-9: #18313b;--el-color-primary-light-8: #21404d;--el-mask-color: rgba(0, 0, 0, .55)}*{box-sizing:border-box}body{margin:0;overflow-x:hidden;color:var(--text-primary);background:var(--bg-page)}html,body,#app,.app-shell{width:100%;max-width:100%;overflow-x:hidden;overscroll-behavior-x:none}[draggable=true],.drag-index,.plan-row{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:pan-y}a{color:inherit;text-decoration:none}.app-shell{min-height:100vh;background:var(--bg-page);transition:background-color .3s ease}.topbar{position:sticky;top:0;z-index:3000;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:22px;min-height:68px;padding:0 24px;background:var(--bg-topbar);border-bottom:1px solid var(--border-color);box-shadow:var(--shadow-topbar);transition:background-color .3s ease,border-color .3s ease;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);isolation:isolate;pointer-events:auto}.brand{display:flex;gap:10px;align-items:center;min-width:0}.brand-logo{width:43px;height:43px;display:block}.brand strong{font-size:18px;color:var(--brand-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .3s ease}.topbar nav{display:flex;gap:8px;align-items:center;overflow-x:auto;scrollbar-width:none}.topbar nav::-webkit-scrollbar{display:none}.topbar nav a,.topbar-actions a{position:relative;z-index:1;padding:9px 12px;border-radius:8px;color:var(--text-secondary);white-space:nowrap;cursor:pointer;touch-action:manipulation;transition:color .3s ease,background-color .3s ease}.topbar nav a.router-link-active{background:var(--brand-color);color:var(--text-inverse)}.topbar-actions{display:flex;gap:10px;align-items:center;justify-content:flex-end;color:var(--text-secondary);min-width:max-content}.account-link{background:var(--bg-account);border:1px solid var(--border-color);color:var(--brand-color)!important;font-weight:700;transition:background-color .3s ease,border-color .3s ease}.theme-toggle-btn{position:relative;z-index:1;padding:8px;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;touch-action:manipulation;border-radius:8px;font-size:18px;display:flex;align-items:center;justify-content:center;width:36px;height:36px;transition:background-color .2s ease,color .3s ease}.theme-toggle-btn:hover{background:var(--bg-account);color:var(--brand-color)}.main-panel{width:min(1220px,100%);margin:0 auto;padding:22px 18px 40px}.page{display:grid;gap:18px}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.page-title{margin:0 0 6px;font-size:26px;color:var(--text-primary);transition:color .3s ease}.muted{color:var(--text-muted);transition:color .3s ease}.panel{background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;padding:18px;transition:background-color .3s ease,border-color .3s ease}.panel,.metric,.auth-card,.form-card,[class*=-card]{min-width:0}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:14px}.metric{background:var(--bg-card);border:1px solid var(--border-color);border-left:4px solid var(--accent-color);border-radius:8px;padding:16px;transition:background-color .3s ease,border-color .3s ease}.metric strong{display:block;font-size:26px;margin-top:8px;color:var(--text-primary);transition:color .3s ease}.toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.confirm-tag{border:0!important;color:#fff!important}.confirm-available{background:var(--brand-link)!important}.confirm-unavailable{background:var(--danger-color)!important}.confirm-pending{background:#d97706!important}.confirm-none{background:var(--text-muted)!important}.form-card{width:min(420px,100%);margin:8vh auto;background:var(--bg-card);border-radius:8px;padding:28px;border:1px solid var(--border-color);transition:background-color .3s ease,border-color .3s ease}.auth-page{min-height:calc(100vh - 130px);display:grid;place-items:center;padding:30px 16px;background:var(--bg-page);border-radius:8px;overflow:hidden;transition:background-color .3s ease}.auth-card{width:min(420px,100%);background:var(--bg-topbar);border:1px solid var(--border-color);border-radius:8px;padding:30px;box-shadow:var(--shadow-auth);transition:background-color .3s ease,border-color .3s ease,box-shadow .3s ease}.auth-logo{width:58px;height:58px;display:block;margin:0 auto 10px}.auth-card h1{margin:0 0 22px;text-align:center;color:var(--text-primary);transition:color .3s ease}.wide-button{width:100%}.auth-field-hint{width:100%;margin-top:6px;color:var(--text-muted);font-size:12px;line-height:1.5}.auth-link{display:block;margin-top:16px;text-align:center;color:var(--brand-color);font-weight:700;transition:color .3s ease}@media (max-width: 1024px){.topbar{gap:12px;padding:0 16px}.brand strong{font-size:15px}.topbar nav a,.topbar-actions a{padding:8px 10px;font-size:13px}.main-panel{padding:16px 12px 28px}.metric-grid{grid-template-columns:repeat(2,minmax(140px,1fr))}}@media (max-width: 768px){input,textarea,select,.el-input__inner,.el-select__input,.el-textarea__inner,.el-select__placeholder,.el-select__selected-item,.el-input-number .el-input__inner{font-size:16px!important}.topbar{grid-template-columns:auto 1fr;gap:8px;padding:10px 14px;min-height:56px}.topbar nav{order:3;grid-column:1 / -1;justify-content:stretch;display:flex;width:100%;gap:4px}.topbar nav a{flex:1 1 0;text-align:center;padding:8px 4px!important;font-size:13px!important;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-actions{justify-content:flex-end;min-width:0;gap:6px}.brand-logo{width:43px;height:43px}.brand strong{font-size:14px;max-width:42vw}.topbar nav a,.topbar-actions a{padding:8px 14px;font-size:15px}.account-link{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.main-panel{padding:12px 8px 24px}.page-title{font-size:20px}.panel{padding:12px}.auth-page{min-height:calc(100vh - 110px);padding:18px 8px}.auth-card,.form-card{padding:22px 18px}.auth-card h1{margin-bottom:16px;font-size:22px}.metric-grid{grid-template-columns:1fr 1fr;gap:8px}.metric{padding:12px}.metric strong{font-size:22px}.page-header{flex-direction:column;gap:10px}.toolbar{gap:8px}}@media (max-width: 560px){.topbar{padding:6px 8px}.topbar-actions{gap:5px}.brand strong{font-size:13px;max-width:36vw}.brand{gap:4px}.brand-logo{width:43px;height:43px}.topbar nav a,.topbar-actions a{padding:7px 10px;font-size:13px}.account-link{max-width:150px}.theme-toggle-btn{width:32px;height:32px;padding:6px}.main-panel{padding:8px 6px 20px}.page-title{font-size:18px}.panel{padding:10px;border-radius:6px}.auth-card,.form-card{padding:18px 14px}.auth-logo{width:48px;height:48px}.metric-grid{grid-template-columns:1fr;gap:8px}.metric{padding:10px}}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}.el-table{--el-table-border-color: var(--border-color);--el-table-header-bg-color: var(--bg-subtle);--el-table-header-text-color: var(--text-primary);--el-table-row-hover-bg-color: var(--bg-soft);--el-table-tr-bg-color: var(--bg-card);--el-table-current-row-bg-color: var(--bg-soft);border-radius:8px}.el-table .cell{word-break:break-word}.el-card,.el-dialog,.el-drawer,.el-popover,.el-message-box{background:var(--bg-card);border-color:var(--border-color);color:var(--text-primary)}.el-message,.el-overlay.is-message-box{z-index:4000!important}.el-tabs,.el-tabs__content,.el-tab-pane{min-width:0}.el-tabs__nav-wrap:after{background:var(--border-color)}.el-tabs__item{color:var(--text-secondary)}.el-tabs__item.is-active{color:var(--brand-color)}.el-input__wrapper,.el-textarea__inner,.el-select__wrapper,.el-input-number,.el-button{max-width:100%}.mobile-labeled-table .el-table__body td:before{content:none;display:none}html.dark .el-button:not(.el-button--primary):not(.el-button--success):not(.el-button--warning):not(.el-button--danger){background:var(--bg-subtle);border-color:var(--border-color);color:var(--text-primary)}html.dark .el-button:not(.el-button--primary):not(.el-button--success):not(.el-button--warning):not(.el-button--danger):hover{border-color:var(--brand-color);color:var(--brand-color)}html.dark .el-table,html.dark .el-table tr,html.dark .el-table th.el-table__cell,html.dark .el-table td.el-table__cell,html.dark .el-table__body-wrapper,html.dark .el-table__header-wrapper{background:var(--bg-card);color:var(--text-primary)}html.dark .el-table__fixed,html.dark .el-table__fixed-right{background:var(--bg-card)}html.dark .el-input__wrapper,html.dark .el-select__wrapper,html.dark .el-textarea__inner{background:var(--bg-subtle);border-color:var(--border-color);box-shadow:0 0 0 1px var(--border-color) inset}html.dark .el-tag{border-color:#8fc5ff52}html.dark .el-card,html.dark .el-dialog,html.dark .el-drawer,html.dark .el-message-box,html.dark .el-message,html.dark .el-notification,html.dark .el-popover,html.dark .el-popper,html.dark .el-dropdown-menu,html.dark .el-select-dropdown,html.dark .el-picker-panel{background:var(--bg-card);border-color:var(--border-color);color:var(--text-primary)}.el-table--striped .el-table__body tr.el-table__row--striped,.el-table--striped .el-table__body tr.el-table__row--striped td.el-table__cell,html.dark .el-table--striped .el-table__body tr.el-table__row--striped,html.dark .el-table--striped .el-table__body tr.el-table__row--striped td.el-table__cell{background:var(--bg-card)!important;background-color:var(--bg-card)!important}html.dark .el-table__body tr:hover>td.el-table__cell,html.dark .el-table__body tr.current-row>td.el-table__cell{background:var(--bg-soft)}html.dark .el-pagination button,html.dark .el-pager li{background:var(--bg-subtle);color:var(--text-secondary)}html.dark .el-pager li.is-active,html.dark .el-pagination button:hover,html.dark .el-pager li:hover{color:var(--brand-color)}html.dark .el-tabs__nav-wrap:after,html.dark .el-divider{background:var(--border-color)}html.dark .el-loading-mask{background-color:#101923c2}html.dark .el-dialog__header,html.dark .el-dialog__footer,html.dark .el-message-box__header,html.dark .el-message-box__content,html.dark .el-message-box__btns{background:var(--bg-card);color:var(--text-primary)}html.dark .el-button.is-disabled,html.dark .el-button.is-disabled:hover,html.dark .el-input.is-disabled .el-input__wrapper,html.dark .el-select .el-select__wrapper.is-disabled{background:color-mix(in srgb,var(--bg-subtle) 72%,#000);border-color:var(--border-soft);color:var(--text-muted)}html.dark .el-empty__description,html.dark .el-form-item__label{color:var(--text-muted)}html.dark .confirm-pending{background:#8a5a16!important;color:#ffe9bf!important}@media (max-width: 768px){.hide-col-mobile{display:none}}@media (max-width: 1024px){.hide-col-tablet{display:none}}@media (max-width: 768px){.el-tabs__header{margin-bottom:10px}.el-tabs__nav-wrap{overflow-x:auto;scrollbar-width:none}.el-tabs__nav-wrap::-webkit-scrollbar{display:none}.el-tabs__nav-scroll{overflow:visible}.el-tabs__nav{white-space:nowrap;display:flex;width:100%}.el-tabs__item{height:34px;padding:0 8px;font-size:12px;flex:1 1 0;justify-content:center;text-align:center;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.el-pagination{--el-pagination-button-width: 28px;--el-pagination-button-height: 28px;gap:2px;justify-content:center;flex-wrap:nowrap;padding:8px 0;width:100%;overflow:hidden}.el-pagination .el-pager{display:flex;gap:2px;flex-shrink:1;min-width:0}.el-pagination .el-pager li{flex-shrink:1;min-width:24px;width:auto;font-size:clamp(10px,3.5vw,13px);padding:0 4px}.el-pagination .btn-prev,.el-pagination .btn-next{flex-shrink:0;padding:0 6px;font-size:12px;min-width:auto}.el-pagination .btn-prev span,.el-pagination .btn-next span{font-size:12px}.el-pagination .el-pagination__sizes,.el-pagination .el-pagination__jump{display:none!important}.el-pagination .el-pagination__total{width:100%;text-align:center;margin-bottom:8px;font-size:12px;color:var(--text-muted);order:-1;flex-shrink:0}.el-pagination .el-pagination__page-elevator{display:flex;align-items:center;justify-content:center}.el-table__inner-wrapper:before{display:none}.el-table{width:100%!important;font-size:12px}.el-table__inner-wrapper,.el-table__body-wrapper,.el-scrollbar,.el-scrollbar__wrap{overflow-x:hidden!important}.el-table__header-wrapper,.el-table__fixed,.el-table__fixed-right,.el-table__fixed-header-wrapper,.el-table__fixed-right-patch{display:none!important}.el-table__body,.el-table__body tbody,.el-table__body tr,.el-table__body td{display:block;width:100%!important}.el-table__body{table-layout:fixed!important}.el-table__body tr{margin:0 0 8px;padding:7px 8px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-card);box-shadow:var(--shadow-card)}.el-table__body td{position:static!important;left:auto!important;right:auto!important;min-height:0;padding:5px 0!important;border-bottom:1px solid var(--border-soft)!important}.mobile-labeled-table .el-table__body td:before{display:block;margin-bottom:4px;color:var(--text-muted);font-size:11px;font-weight:700;line-height:1.2;white-space:nowrap!important;word-break:normal!important;overflow-wrap:normal!important;writing-mode:horizontal-tb;text-orientation:mixed}.mobile-labeled-table .el-table__body td{display:grid!important;grid-template-columns:84px minmax(0,1fr);align-items:start;gap:8px;width:100%!important;min-width:100%!important;max-width:100%}.mobile-labeled-table .el-table__body tr{display:grid!important;grid-template-columns:1fr;width:100%!important}.mobile-labeled-table .el-scrollbar__view,.mobile-labeled-table .el-table__body,.mobile-labeled-table .el-table__body tbody{display:block!important;width:100%!important;min-width:100%!important}.mobile-labeled-table .el-table__body td:before{margin-bottom:0;padding-top:3px}.mobile-labeled-table .el-table__body td:last-child{grid-template-columns:1fr}.mobile-labeled-table .el-table__body td:last-child:before{content:none!important;display:none!important}.mobile-labeled-table .el-table__body td:last-child .cell{display:flex;flex-direction:row;flex-wrap:nowrap;gap:6px;justify-content:stretch;align-items:center;width:100%}.mobile-labeled-table .el-table__body td:last-child .cell .el-button{flex:1 1 0;margin:0!important;justify-content:center;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.el-table__body td:last-child{border-bottom:0!important}.el-table__body .cell{width:100%!important;min-width:0;padding:0!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important}.mobile-labeled-table .el-table__body .cell{display:grid;gap:4px}.el-table__body td.hide-col-mobile,.el-table__body td.hide-col-tablet,.el-table__body td.hide-col-phone,.el-table__header-wrapper .hide-col-mobile,.el-table__header-wrapper .hide-col-tablet,.el-table__header-wrapper .hide-col-phone{display:none!important}.el-table__body .el-button{margin:2px 4px 2px 0;min-height:28px;padding:5px 9px;font-size:12px}.el-table__body .el-button+.el-button{margin-left:0!important}.el-table__body .el-button,.el-table__body .el-button-group{max-width:100%;white-space:normal}.el-dialog{width:min(92vw,520px)!important;max-height:calc(100dvh - var(--app-topbar-bottom, 0px) - 18px);margin-top:10px!important;display:flex;flex-direction:column}.el-dialog__body{flex:1 1 auto;min-height:0;max-height:calc(100dvh - var(--app-topbar-bottom, 0px) - 150px);overflow:auto}.el-message-box{width:min(92vw,420px)!important;max-height:calc(100dvh - var(--app-topbar-bottom, 0px) - 18px);margin-top:0!important;vertical-align:top}.el-message-box__content{max-height:calc(100dvh - var(--app-topbar-bottom, 0px) - 166px);overflow:auto}.el-overlay-dialog{top:var(--app-topbar-bottom, 0px);height:calc(100dvh - var(--app-topbar-bottom, 0px));overflow:auto}.el-overlay.is-message-box{display:block;padding-top:calc(var(--app-topbar-bottom, 0px) + 10px);overflow:auto;text-align:center}.el-dialog__footer{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.el-dialog__footer .el-button+.el-button{margin-left:0}.el-message{width:calc(100vw - 24px);min-width:0;max-width:420px;padding-right:12px;transform:translate(-50%)}.el-message .el-message__content{min-width:0;white-space:normal;word-break:break-word}}@media (max-width: 420px){.mobile-labeled-table .el-table__body td{grid-template-columns:78px minmax(0,1fr);gap:8px}}
