.app-main[data-v-58d6d97a]{min-height:100vh}:root{--bg: #f5f7fa;--panel: #ffffff;--text: #1f2937;--muted: #6b7280;--border: #e5e7eb;--primary: #2563eb;--primary-hover: #1d4ed8;--danger: #dc2626;--success: #16a34a;--radius: 8px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;background:var(--bg);color:var(--text);line-height:1.6}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;border:none;border-radius:var(--radius);padding:8px 16px;font-size:14px;background:var(--primary);color:#fff;transition:background .15s}button:hover{background:var(--primary-hover)}button:disabled{opacity:.5;cursor:not-allowed}button.secondary{background:#e5e7eb;color:var(--text)}button.secondary:hover{background:#d1d5db}button.danger{background:var(--danger)}button.danger:hover{background:#b91c1c}input,select{width:100%;padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius);font-size:14px;background:var(--panel);color:var(--text)}input:focus,select:focus{outline:none;border-color:var(--primary)}.card{background:var(--panel);border-radius:var(--radius);border:1px solid var(--border);padding:24px}.error-msg{color:var(--danger);font-size:14px}.success-msg{color:var(--success);font-size:14px}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--border)}th{font-weight:600;color:var(--muted);font-size:13px}.tag{display:inline-block;padding:2px 8px;border-radius:12px;font-size:12px}.tag-admin{background:#dbeafe;color:#1e40af}.tag-user{background:#f3f4f6;color:#374151}.tag-on{background:#dcfce7;color:#166534}.tag-off{background:#fee2e2;color:#991b1b}.cp-root{--bg-0:#050b1e;--bg-1:#0a1640;--accent:#00d4ff;--accent-2:#3b82f6;--accent-3:#7c3aed;--text:#e8f1ff;--text-dim:#9bb0d4;--card-border:rgba(0,212,255,.18);min-height:100vh;color:var(--text);font-family:Microsoft YaHei,PingFang SC,Segoe UI,sans-serif;background:radial-gradient(1200px 800px at 80% -10%,#13256b 0%,transparent 60%),radial-gradient(900px 600px at 0% 30%,#0b1a4d 0%,transparent 55%),linear-gradient(180deg,var(--bg-0),var(--bg-1) 40%,var(--bg-0))}.cp-root .wrap{max-width:1280px;margin:0 auto;padding:0 24px}.cp-root header{border-bottom:1px solid rgba(255,255,255,.08);background:#050b1edb}.cp-root nav{display:flex;align-items:center;gap:28px;height:64px}.cp-root .logo{font-weight:700;font-size:17px;cursor:pointer;display:flex;align-items:center;gap:8px}.cp-root .logo .mark{color:var(--accent)}.cp-root .nav-links{display:flex;gap:20px;list-style:none;margin:0;padding:0;flex:1}.cp-root .nav-links a{color:var(--text-dim);font-size:14px;cursor:pointer}.cp-root .nav-links a:hover{color:var(--accent);text-decoration:none}.cp-root .nav-links a.on{color:var(--accent);font-weight:600}.cp-root .nav-right{display:flex;align-items:center;gap:14px}.cp-root .nav-user{color:var(--text-dim);font-size:14px}.cp-root .nav-logout{background:transparent;border:1px solid var(--card-border);color:var(--text-dim);padding:6px 14px;border-radius:8px;font-size:13px;cursor:pointer}.cp-root .nav-logout:hover{color:var(--accent);border-color:var(--accent)}.admin-section{padding:32px 0 64px}.admin-intro{margin-bottom:28px}.admin-intro h2{margin:0 0 8px;font-size:24px}.admin-intro p{margin:0;color:var(--text-dim);font-size:14px}.admin-card{background:#0a1640d1;border:1px solid var(--card-border);border-radius:16px;padding:28px}.admin-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;flex-wrap:wrap;margin-bottom:20px}.admin-head h2{margin:0 0 6px;font-size:20px}.admin-desc{margin:0;color:var(--text-dim);font-size:13px;max-width:640px;line-height:1.6}.admin-actions{display:flex;gap:10px;align-items:center;flex:0 0 auto}.admin-table{width:100%;border-collapse:collapse;font-size:13px}.admin-table th{text-align:left;padding:10px 12px;color:var(--text-dim);font-weight:600;border-bottom:1px solid rgba(255,255,255,.1);white-space:nowrap}.admin-table td{padding:12px;border-bottom:1px solid rgba(255,255,255,.06);vertical-align:top}.admin-table tbody tr:hover{background:#00d4ff0a}.admin-table .empty{text-align:center;color:var(--text-dim);padding:36px 0}.admin-table .muted{color:#9bb0d480}.cell-ops,.row-actions{display:flex;align-items:center;gap:10px;white-space:nowrap}.btn-approve,.btn-reject,.btn-primary,.btn-link,.btn-refresh,.btn-cancel{font-family:inherit}.btn-refresh,.btn-cancel{background:transparent;border:1px solid var(--card-border);color:var(--text-dim);padding:7px 18px;border-radius:8px;font-size:13px;cursor:pointer;white-space:nowrap;min-width:84px;text-align:center;flex:0 0 auto}.btn-refresh:hover:not(:disabled),.btn-cancel:hover{color:var(--accent);border-color:var(--accent)}.btn-primary{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#021;border:none;border-radius:8px;padding:8px 20px;font-size:13px;font-weight:700;cursor:pointer;white-space:nowrap}.btn-primary:hover:not(:disabled){filter:brightness(1.08)}.btn-primary:disabled{opacity:.55;cursor:not-allowed}.btn-approve,.btn-reject{border:none;border-radius:7px;padding:7px 18px;font-size:13px;cursor:pointer;font-weight:600;flex:0 0 auto}.btn-approve{background:linear-gradient(135deg,#16a34a,#22c55e);color:#02120a}.btn-approve:hover:not(:disabled){filter:brightness(1.1)}.btn-reject{background:#dc26262e;color:#f87171;border:1px solid rgba(220,38,38,.4)}.btn-reject:hover:not(:disabled){background:#dc26264d}.btn-approve:disabled,.btn-reject:disabled{opacity:.55;cursor:not-allowed}.btn-link{background:transparent;border:none;color:var(--accent);font-size:13px;cursor:pointer;padding:0;white-space:nowrap}.btn-link:hover:not(:disabled){text-decoration:underline}.btn-link.danger{color:#f87171}.btn-link:disabled{opacity:.4;cursor:not-allowed}.admin-input,.admin-select,.admin-textarea,.status-filter,.modal-textarea{background:#ffffff0d;border:1px solid var(--card-border);color:var(--text);border-radius:8px;padding:8px 12px;font-size:13px;outline:none;font-family:inherit;box-sizing:border-box}.admin-input:focus,.admin-select:focus,.admin-textarea:focus,.status-filter:focus,.modal-textarea:focus{border-color:var(--accent)}.admin-input::placeholder,.admin-textarea::placeholder,.modal-textarea::placeholder{color:#9bb0d4a6}.admin-select option,.status-filter option{background:#0a1640;color:var(--text)}.status-filter{white-space:nowrap;min-width:104px}.admin-table input[type=checkbox],.admin-table input[type=radio],.admin-modal input[type=checkbox],.admin-modal input[type=radio]{width:auto;height:auto;padding:0;margin:0;border:none;background:none;border-radius:0;flex:0 0 auto;accent-color:#00d4ff}.st{display:inline-block;padding:2px 10px;border-radius:12px;font-size:12px;white-space:nowrap}.st-pending{background:#ffc24b26;color:#ffc24b}.st-approved,.st-on{background:#16a34a2e;color:#4ade80}.st-rejected,.st-off{background:#dc26262e;color:#f87171}.st-admin{background:#00d4ff26;color:var(--accent)}.st-user{background:#94a3b829;color:#cbd5e1}.admin-modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#020614b8;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:flex-start;justify-content:center;z-index:100;padding:24px;overflow-y:auto;overscroll-behavior:contain}.admin-modal{width:480px;max-width:100%;background:linear-gradient(180deg,#0d1c4d,#0a1640);border:1px solid var(--card-border);border-radius:16px;padding:26px;box-shadow:0 24px 64px #0009;margin:auto;flex:0 0 auto;max-height:none}.admin-modal h3{margin:0 0 6px;font-size:17px}.admin-modal .modal-sub{margin:0 0 18px;color:var(--accent);font-size:14px;font-weight:600}.admin-modal label.modal-label{display:block;font-size:13px;color:var(--text-dim);margin:14px 0 8px}.admin-modal .modal-field{margin-bottom:14px}.admin-modal .modal-field>span{display:block;font-size:13px;color:var(--text-dim);margin-bottom:6px}.admin-modal .modal-field .admin-input,.admin-modal .modal-field .admin-select{width:100%}.admin-modal .modal-check{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-dim);margin:12px 0}.admin-modal .modal-check input{accent-color:#00d4ff}.admin-modal .field-hint{margin:6px 0 0;font-size:12px;line-height:1.6;color:var(--text-dim)}.admin-modal .field-hint .link{color:var(--accent);cursor:pointer}.admin-modal .field-hint .link:hover{text-decoration:underline}.modal-textarea{width:100%;resize:vertical;line-height:1.55}.modal-error{color:#ff6b6b;font-size:13px;margin:12px 0 0}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:22px}.admin-error{color:#ff6b6b;font-size:13px;margin:0 0 12px}@media(max-width:900px){.admin-card{padding:18px}.admin-table .col-optional{display:none}}
