*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #F0F4F6;--surface: #ffffff;--card: #ffffff;--card2: #EDF3F4;--border: #E0E8EC;--border2: #C8D6DC;--text: #1A2830;--text2: #526068;--text3: #8A989D;--accent: #0F7C8C;--accent2: #0A5F6C;--accent-dim: rgba(15,124,140,.12);--green: #2E9E6B;--green-dim: rgba(46,158,107,.12);--red: #E0533D;--red-dim: rgba(224,83,61,.12);--yellow: #D9A441;--purple: #a855f7;--row-hover: rgba(15,124,140,.05);--radius: 10px;--radius2: 14px;--radius3: 20px;--primary: var(--accent);--primary-dim: var(--accent-dim);--gold: #C8962E;--price: #C8962E;--shadow-xs: 0 1px 2px rgba(0,0,0,.06);--shadow-sm: 0 2px 8px rgba(0,0,0,.08), 0 1px 2px rgba(0,0,0,.04);--shadow-md: 0 6px 20px rgba(0,0,0,.1), 0 2px 6px rgba(0,0,0,.06);--shadow-lg: 0 16px 48px rgba(0,0,0,.12), 0 4px 12px rgba(0,0,0,.08);--shadow-card: 0 2px 12px rgba(15,124,140,.08), 0 1px 3px rgba(0,0,0,.05);--shadow-card-hover: 0 8px 32px rgba(15,124,140,.14), 0 2px 8px rgba(0,0,0,.06)}[data-theme=violet]{--bg: #110a1f;--surface: #160d26;--card: #1c1230;--card2: #241640;--border: #342055;--border2: #482d72;--text: #f3ecff;--text2: #c4b0e8;--accent: #a855f7;--accent2: #7c3aed;--accent-dim: rgba(168,85,247,.18)}[data-theme=rose]{--bg: #170410;--surface: #1e0615;--card: #260a1b;--card2: #310d24;--border: #4a1335;--border2: #691c4b;--text: #ffecf5;--text2: #e8a0c4;--accent: #ec4899;--accent2: #db2777;--accent-dim: rgba(236,72,153,.18)}[data-theme=cyan]{--bg: #02141a;--surface: #031b22;--card: #06232c;--card2: #0a2e3a;--border: #114356;--border2: #185d78;--text: #e6fbff;--text2: #8fd4e8;--accent: #06b6d4;--accent2: #0891b2;--accent-dim: rgba(6,182,212,.17)}[data-theme=anyue]{--bg: #F0F4F6;--surface: #ffffff;--card: #ffffff;--card2: #EDF3F4;--border: #E0E8EC;--border2: #C8D6DC;--text: #1A2830;--text2: #526068;--text3: #8A989D;--accent: #0F7C8C;--accent2: #0A5F6C;--accent-dim: rgba(15,124,140,.12);--green: #2E9E6B;--green-dim: rgba(46,158,107,.12);--red: #E0533D;--red-dim: rgba(224,83,61,.12);--yellow: #D9A441;--row-hover: rgba(15,124,140,.05);--gold: #C8962E;--price: #C8962E;--shadow-card: 0 2px 12px rgba(15,124,140,.08), 0 1px 3px rgba(0,0,0,.05);--shadow-card-hover: 0 8px 32px rgba(15,124,140,.14), 0 2px 8px rgba(0,0,0,.06)}[data-theme=light]{--bg: #eef2f7;--surface: #ffffff;--card: #ffffff;--card2: #f1f5f9;--border: #d7e0ea;--border2: #c0cedd;--text: #0f172a;--text2: #475569;--text3: #8593a6;--accent: #2563eb;--accent2: #1d4ed8;--accent-dim: rgba(37,99,235,.12);--row-hover: rgba(15,23,42,.04)}[data-theme=sand]{--bg: #f7efe2;--surface: #fffdf8;--card: #fffdf8;--card2: #f2e8d6;--border: #e6d6bd;--border2: #d4bd96;--text: #2b1c0c;--text2: #6b5436;--text3: #9c855f;--accent: #ea580c;--accent2: #c2410c;--accent-dim: rgba(234,88,12,.13);--row-hover: rgba(43,28,12,.05)}[data-theme=mint]{--bg: #e7f7ef;--surface: #ffffff;--card: #ffffff;--card2: #ddf2e7;--border: #c4ead8;--border2: #9eddc0;--text: #06281a;--text2: #3d6b54;--text3: #6f9a85;--accent: #059669;--accent2: #047857;--accent-dim: rgba(5,150,105,.13);--row-hover: rgba(6,40,26,.05)}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Helvetica Neue,Arial,sans-serif;font-size:14px;line-height:1.6;-webkit-font-smoothing:antialiased}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border2);border-radius:6px}::-webkit-scrollbar-thumb:hover{background:var(--text3)}button{cursor:pointer;border:none;background:none;font:inherit}input,select,textarea{font:inherit}a{color:var(--accent);text-decoration:none}.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 18px;border-radius:var(--radius);font-size:13px;font-weight:500;transition:all .18s cubic-bezier(.4,0,.2,1);white-space:nowrap;letter-spacing:.01em}.btn-primary{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;box-shadow:0 2px 8px #0f7c8c4d}.btn-primary:hover{background:linear-gradient(135deg,var(--accent2),var(--accent));box-shadow:0 4px 16px #0f7c8c66;transform:translateY(-1px)}.btn-primary:active{transform:translateY(0);box-shadow:0 2px 8px #0f7c8c40}.btn-ghost{background:transparent;color:var(--text2);border:1px solid var(--border)}.btn-ghost:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.btn-danger{background:var(--red-dim);color:var(--red);border:1px solid transparent}.btn-danger:hover{background:var(--red);color:#fff;box-shadow:0 2px 8px #e0533d4d}.btn-sm{padding:5px 12px;font-size:12px}.btn-lg{padding:12px 28px;font-size:15px;font-weight:600;border-radius:var(--radius2)}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius2);padding:20px;box-shadow:var(--shadow-sm)}.card-hover{transition:box-shadow .22s cubic-bezier(.4,0,.2,1),transform .22s cubic-bezier(.4,0,.2,1)}.card-hover:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-3px)}.badge{display:inline-flex;align-items:center;gap:3px;padding:3px 9px;border-radius:20px;font-size:11px;font-weight:600;letter-spacing:.02em}.badge-green{background:var(--green-dim);color:var(--green)}.badge-red{background:var(--red-dim);color:var(--red)}.badge-blue{background:var(--accent-dim);color:var(--accent)}.badge-gray{background:#64748b1f;color:var(--text3)}.badge-yellow{background:#f59e0b1f;color:var(--yellow)}.badge-gold{background:#c8962e1f;color:var(--gold)}.tag{display:inline-block;padding:2px 9px;border-radius:6px;font-size:11px;background:var(--accent-dim);color:var(--accent)}table{width:100%;border-collapse:collapse}th{color:var(--text3);font-weight:600;font-size:12px;text-align:left;padding:10px 14px;border-bottom:1px solid var(--border);white-space:nowrap;text-transform:uppercase;letter-spacing:.04em}td{padding:13px 14px;border-bottom:1px solid var(--border);vertical-align:middle}.table-scroll{overflow-x:auto}.table-scroll>table{min-width:640px}tr:last-child td{border-bottom:none}tr:hover td{background:var(--row-hover);transition:background .12s}input[type=text],input[type=password],input[type=email],input[type=tel],input[type=date],input[type=number],select,textarea{background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius);color:var(--text);padding:9px 13px;width:100%;outline:none;transition:border-color .18s,box-shadow .18s}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}select option{background:var(--card)}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:12px;color:var(--text2);font-weight:600;letter-spacing:.02em}.form-row{display:grid;gap:16px;grid-template-columns:1fr 1fr}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000a6;z-index:100;display:flex;align-items:center;justify-content:center;padding:20px;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal{background:var(--card);border:1px solid var(--border2);border-radius:var(--radius2);width:100%;max-width:520px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-lg)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 0}.modal-header h3{font-size:16px;font-weight:700}.modal-body{padding:20px 24px;display:flex;flex-direction:column;gap:16px}.modal-footer{padding:0 24px 20px;display:flex;gap:10px;justify-content:flex-end}.search-box{position:relative;display:flex;align-items:center}.search-box input{padding-left:36px}.search-box .icon{position:absolute;left:10px;color:var(--text3)}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.page-header h2{font-size:20px;font-weight:700;letter-spacing:-.01em}.page-header p{font-size:13px;color:var(--text2);margin-top:3px}.stat-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius2);padding:20px 22px;display:flex;flex-direction:column;gap:6px;box-shadow:var(--shadow-sm)}.stat-value{font-size:30px;font-weight:800;letter-spacing:-.02em;line-height:1}.stat-label{font-size:12px;color:var(--text2);font-weight:500}.stat-sub{font-size:11px;color:var(--text3)}.empty-state{text-align:center;padding:64px 20px;color:var(--text3)}.empty-state .icon{margin-bottom:14px;opacity:.5}.pagination{display:flex;align-items:center;gap:6px;margin-top:16px;flex-wrap:wrap}.pagination button{padding:6px 13px;border-radius:var(--radius);background:var(--card);border:1px solid var(--border);color:var(--text);font-size:13px;transition:all .15s}.pagination button:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.pagination button:disabled{opacity:.4;cursor:not-allowed}.pagination button.active{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 2px 6px #0f7c8c4d}.pagination .info{font-size:12px;color:var(--text3);margin-left:6px}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--border);margin-bottom:20px}.tab-btn{padding:9px 18px;font-size:13px;font-weight:500;color:var(--text2);border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .15s;border-radius:6px 6px 0 0}.tab-btn:hover{color:var(--text);background:var(--card2)}.tab-btn.active{color:var(--accent);border-bottom-color:var(--accent);background:transparent}.progress-bar{background:var(--border);border-radius:6px;height:8px;overflow:hidden;box-shadow:inset 0 1px 2px #0000000f}.progress-fill{height:100%;background:linear-gradient(90deg,var(--accent),var(--accent2));border-radius:6px;transition:width .4s cubic-bezier(.4,0,.2,1);position:relative}.progress-fill:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#fff0,#ffffff40,#fff0)}.tooltip{position:relative}.tooltip-content{display:none;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background:#1a2530;color:#fff;border-radius:8px;padding:6px 12px;font-size:11px;white-space:nowrap;z-index:50;box-shadow:var(--shadow-md)}.tooltip:hover .tooltip-content{display:block}.section-label{display:flex;align-items:center;gap:8px;margin:4px 0 14px}.section-label:before{content:"";width:4px;height:18px;background:linear-gradient(180deg,var(--accent),var(--accent2));border-radius:2px;flex-shrink:0}.section-label span{font-size:15px;font-weight:700}.section-label small{font-size:12px;color:var(--text3)}@media print{.no-print{display:none!important}header{display:none!important}main{padding:0!important;max-width:none!important}body{background:#fff!important}}
