:root{--primary-color: #1e40af;--primary-hover: #2563eb;--primary-active: #1d4ed8;--primary-soft: #eff6ff;--primary-soft-strong: #dbeafe;--success-color: #10b981;--warning-color: #f59e0b;--error-color: #ef4444;--info-color: #6b7280;--text-color: #172033;--text-secondary: #475569;--muted-color: #64748b;--border-color: #e3e9f1;--border-strong: #d5deea;--canvas-color: #f4f7fb;--surface-color: #ffffff;--surface-subtle: #f8fafc;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--shadow-sm: 0 1px 2px rgba(15, 23, 42, .04);--shadow-md: 0 10px 30px rgba(15, 23, 42, .07);font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html,body,#app{width:100%;min-width:0;min-height:100%}body{margin:0;font-size:15px;line-height:1.6;font-family:Inter,PingFang SC,Microsoft YaHei,Helvetica Neue,Arial,sans-serif;background-color:var(--canvas-color);color:var(--text-color);-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid rgba(37,99,235,.18);outline-offset:2px}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:999px;background:#cbd5e1;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:#94a3b8;background-clip:padding-box}.n-button{letter-spacing:.01em;transition:transform .16s ease,box-shadow .16s ease,color .16s ease,background-color .16s ease,border-color .16s ease}.n-button:focus-visible{outline:3px solid #93b4ef;outline-offset:3px}.n-button:not(.n-button--disabled):active{transform:translateY(1px)}.n-card{box-shadow:var(--shadow-sm)}.n-modal,.n-dialog{overflow:hidden}.app-modal.n-card{max-height:calc(100vh - 64px);border:1px solid var(--border-strong);border-radius:12px;box-shadow:0 22px 56px #0f172a2e}.app-modal.n-card>.n-card-header{padding:18px 22px 15px;border-bottom:1px solid var(--border-color)}.app-modal.n-card>.n-card__content{min-height:0;padding:18px 22px}.app-modal.n-card>.n-card__footer{padding:14px 22px 16px;border-top:1px solid var(--border-color);background:#fbfcfe}.app-modal--scroll.n-card>.n-card__content{max-height:calc(100vh - 190px);overflow-y:auto;overscroll-behavior:contain}.app-modal.n-card>.n-card__footer .n-button{min-width:84px}.app-modal--empty.n-card>.n-card__content{display:grid;min-height:220px;place-items:center}.app-modal--empty .n-empty{padding:34px 0}.n-form-item-label{color:var(--text-secondary);font-weight:550}.n-data-table-th{letter-spacing:.02em}.n-data-table .n-data-table-th{background:#f7f9fc;color:#475569;font-weight:650}.n-data-table .n-data-table-td{color:#334155}.n-data-table .n-data-table-tr:hover .n-data-table-td{background:#f8fbff}.n-input:not(.n-input--disabled),.n-base-selection:not(.n-base-selection--disabled),.n-input-number:not(.n-input-number--disabled){border-radius:7px}.n-input .n-input__placeholder,.n-base-selection-placeholder{color:#737f91}.n-form-item-label{line-height:1.4}.n-tag{font-weight:550}.n-empty{padding:20px 0}.n-empty .n-empty__description{color:var(--muted-color)}.n-spin-container .n-spin-body{-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px)}.n-message{border:1px solid rgba(203,213,225,.7);box-shadow:var(--shadow-md)}::selection{background:#dbeafe;color:#1e3a8a}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.login-modal[data-v-338460e6]{border-radius:14px;box-shadow:0 24px 64px #0f172a2e}.modal-wrapper[data-v-338460e6]{background:#fff;padding:24px 28px;border-radius:14px;max-height:calc(100dvh - 48px);overflow-y:auto}.modal-header[data-v-338460e6]{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px}.modal-header[data-v-338460e6] .n-button{flex-shrink:0}.header-title[data-v-338460e6]{font-weight:650;font-size:18px;color:#172033}.modal-body[data-v-338460e6]{padding:4px 0;font-size:15px}[data-v-338460e6] .n-form-item-label{color:#374151;font-size:15px}.login-submit[data-v-338460e6]{margin-top:8px}@media (max-width: 480px){.modal-wrapper[data-v-338460e6]{padding:20px}}
