*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#080a0f;--bg2:#0d1018;--bg3:#131720;--surface:#161c28;--surface2:#1c2333;--border:#232c3e;--gold:#c9a84c;--gold2:#e8c97a;--text:#eef2ff;--text2:#8a96b0;--text3:#4a5568;--blue:#3b6bf5;--blue2:#5b87ff;--green:#2dbf8a;--red:#e05555;--orange:#f97316;--purple:#b06ae0;--font-sans:"DM Sans", -apple-system, sans-serif;--font-serif:"DM Serif Display", Georgia, serif;--font-mono:"DM Mono", "SF Mono", monospace;--sidebar-w:240px;--radius:12px;--radius-lg:18px}html,body,#root{background:var(--bg);height:100%;color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.5}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}input,textarea,select{font-family:inherit}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg2)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text3)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px}.card-lg{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px}.badge{font-family:var(--font-mono);letter-spacing:.5px;border-radius:100px;align-items:center;padding:3px 9px;font-size:10px;font-weight:500;display:inline-flex}.btn-primary{border-radius:var(--radius);background:linear-gradient(135deg, var(--gold2), var(--gold));color:#000;height:44px;font-family:var(--font-mono);letter-spacing:.8px;text-transform:uppercase;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-size:12px;font-weight:600;transition:opacity .15s;display:flex}.btn-primary:hover{opacity:.88}.btn-primary:disabled{opacity:.4;cursor:not-allowed}.btn-secondary{border-radius:var(--radius);border:1px solid var(--border);height:38px;color:var(--text2);font-family:var(--font-mono);letter-spacing:.5px;background:0 0;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:11px;font-weight:500;transition:border-color .15s,color .15s;display:flex}.btn-secondary:hover{border-color:var(--gold);color:var(--gold)}.btn-danger{border-radius:var(--radius);background:var(--red);opacity:.85;color:#fff;height:38px;font-family:var(--font-mono);letter-spacing:.5px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:11px;font-weight:500;transition:opacity .15s;display:flex}.btn-danger:hover{opacity:1}.input-field{border-radius:var(--radius);background:var(--surface2);border:1px solid var(--border);width:100%;color:var(--text);font-family:var(--font-sans);outline:none;padding:10px 14px;font-size:14px;transition:border-color .15s}.input-field:focus{border-color:#c9a84c80}.input-field::placeholder{color:var(--text3)}textarea.input-field{resize:vertical;min-height:80px;padding:12px 14px}.label{font-family:var(--font-mono);letter-spacing:1.5px;text-transform:uppercase;color:var(--text2);margin-bottom:6px;font-size:10px;font-weight:500;display:block}.divider{background:var(--border);height:1px}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{box-shadow:0 0 #c9a84c66}50%{box-shadow:0 0 0 6px #c9a84c00}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fillBar{0%{width:0}}.fade-in{animation:.4s forwards fadeIn}.slide-in{animation:.4s forwards slideIn}.modal-overlay{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;justify-content:center;align-items:center;padding:20px;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.modal-box{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:520px;max-height:90vh;animation:.25s fadeIn;overflow-y:auto}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:20px 24px 16px;display:flex}.modal-body{padding:20px 24px}.modal-footer{border-top:1px solid var(--border);justify-content:flex-end;gap:10px;padding:16px 24px 20px;display:flex}.spinner{border:2px solid var(--border);border-top-color:var(--gold);border-radius:50%;width:20px;height:20px;animation:.7s linear infinite spin}
