:root{--gold:#c9a84c;--gold-l:#e8c96b;--gold-d:#8a6a1e;--bg:#0b0b10;--bg-card:#12121a;--bg-surf:#191924;--bg-hov:#20202e;--border:rgba(201,168,76,.15);--border-h:rgba(201,168,76,.3);--text:#e8e4d9;--text-m:#8a8578;--text-d:#4a4842;--green:#2ecc71;--red:#e74c3c;--amber:#f39c12;--blue:#3498db;--r:10px;--sidebar:230px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Be Vietnam Pro,sans-serif;background:var(--bg);color:var(--text);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:var(--gold-l);text-decoration:none}a:hover{color:var(--gold)}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:var(--bg-card)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}input,select,textarea{background:var(--bg-surf);border:1px solid var(--border);border-radius:8px;padding:9px 12px;font-family:inherit;font-size:13px;color:var(--text);width:100%;outline:none;transition:border-color .2s,box-shadow .2s}input:focus,select:focus,textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px #c9a84c1a}input::placeholder{color:var(--text-d)}select option{background:#1a1a28}textarea{resize:vertical;min-height:80px}.btn{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;border:none;border-radius:8px;font-family:inherit;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s;white-space:nowrap}.btn-primary{background:linear-gradient(135deg,var(--gold-l),var(--gold));color:#1a0e00;font-weight:600}.btn-primary:hover{filter:brightness(1.08);transform:translateY(-1px)}.btn-secondary{background:var(--bg-surf);border:1px solid var(--border);color:var(--text)}.btn-secondary:hover{border-color:var(--border-h);background:var(--bg-hov)}.btn-danger{background:#e74c3c1f;border:1px solid rgba(231,76,60,.3);color:var(--red)}.btn-danger:hover{background:#e74c3c33}.btn-success{background:#2ecc711a;border:1px solid rgba(46,204,113,.3);color:var(--green)}.btn-success:hover{background:#2ecc7133}.btn-warning{background:#f39c121a;border:1px solid rgba(243,156,18,.3);color:var(--amber)}.btn-sm{padding:5px 12px;font-size:12px;border-radius:6px}.btn-xs{padding:3px 8px;font-size:11px;border-radius:5px}.btn:disabled{opacity:.4;cursor:not-allowed;transform:none!important;filter:none!important}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r);padding:20px}.card-title{font-size:11px;font-weight:600;color:var(--gold);text-transform:uppercase;letter-spacing:1.2px;margin-bottom:16px;display:flex;align-items:center;gap:8px}.card-title:before{content:"";display:block;width:3px;height:13px;background:var(--gold);border-radius:2px}.badge{display:inline-block;padding:2px 8px;border-radius:20px;font-size:11px;font-weight:600;letter-spacing:.4px;text-transform:uppercase}.badge-draft{background:#64648226;color:#888;border:1px solid rgba(100,100,130,.2)}.badge-pending{background:#f39c121f;color:var(--amber);border:1px solid rgba(243,156,18,.25)}.badge-active{background:#2ecc711f;color:var(--green);border:1px solid rgba(46,204,113,.25)}.badge-extended{background:#3498db1f;color:var(--blue);border:1px solid rgba(52,152,219,.25)}.badge-overdue{background:#e74c3c1f;color:var(--red);border:1px solid rgba(231,76,60,.25)}.badge-redeemed{background:#64648226;color:#999;border:1px solid rgba(100,100,130,.2)}.badge-forfeited{background:#b4323226;color:#c0392b;border:1px solid rgba(180,50,50,.25)}.badge-cancelled{background:#50505a1f;color:#666;border:1px solid rgba(80,80,90,.2)}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:13px}th{padding:9px 12px;background:var(--bg-surf);color:var(--text-m);text-align:left;font-size:10px;font-weight:600;letter-spacing:.8px;text-transform:uppercase;border-bottom:1px solid var(--border);white-space:nowrap}td{padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.04);color:var(--text)}tr:hover td{background:#c9a84c06}tr:last-child td{border-bottom:none}.metric{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r);padding:16px 18px}.metric-label{font-size:10px;color:var(--text-m);text-transform:uppercase;letter-spacing:.8px}.metric-value{font-size:26px;font-weight:700;color:var(--gold-l);line-height:1.2;margin-top:4px}.metric-sub{font-size:11px;color:var(--text-m);margin-top:3px}.g2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.g4{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}@media (max-width:800px){.g2,.g3,.g4{grid-template-columns:1fr}}.fg{margin-bottom:14px}.fg label{display:block;font-size:11px;font-weight:500;color:var(--text-m);letter-spacing:.6px;text-transform:uppercase;margin-bottom:5px}.fg-err{font-size:11px;color:var(--red);margin-top:3px}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:200;padding:20px;animation:fadeIn .15s}.modal{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;width:100%;max-width:640px;max-height:90vh;overflow-y:auto;padding:28px;animation:slideUp .18s}.modal.wide{max-width:900px}.modal-hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;padding-bottom:14px;border-bottom:1px solid var(--border)}.modal-title{font-size:16px;font-weight:600;color:var(--gold-l)}.modal-close{background:none;border:none;color:var(--text-m);cursor:pointer;font-size:20px;padding:2px 6px;border-radius:4px;line-height:1}.modal-close:hover{color:var(--text);background:var(--bg-hov)}.ph{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;flex-wrap:wrap;gap:12px}.ph-title{font-size:20px;font-weight:700;color:var(--text)}.ph-sub{font-size:12px;color:var(--text-m);margin-top:2px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}.spinner{width:32px;height:32px;border:3px solid var(--border);border-top-color:var(--gold);border-radius:50%;animation:spin .7s linear infinite;margin:40px auto}@keyframes spin{to{transform:rotate(360deg)}}@media print{.no-print{display:none!important};body{background:#fff;color:#000}}
