@import "https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@400;600;700;800&family=DM+Sans:wght@300;400;500;600&display=swap";*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#080b10;--surface:#0f1318;--card:#141920;--card2:#1a2030;--border:#1f2a38;--blue:#3b82f6;--blue-glow:#3b82f626;--teal:#00c9a7;--teal-glow:#00c9a71f;--text:#e2e8f4;--muted:#64748b;--danger:#ef4444;--warn:#f59e0b;--success:#22c55e;--head:"Barlow Condensed", sans-serif;--body:"DM Sans", sans-serif}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);font-family:var(--body);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.btn-primary{background:var(--blue);color:#fff;font-family:var(--body);cursor:pointer;box-shadow:0 0 20px var(--blue-glow);border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:13px 28px;font-size:15px;font-weight:600;transition:all .2s;display:inline-flex}.btn-primary:hover{background:#2563eb;transform:translateY(-1px)}.btn-primary:disabled{opacity:.4;cursor:not-allowed;transform:none}.btn-primary.full{width:100%}.btn-secondary{color:var(--muted);border:2px solid var(--border);font-family:var(--body);cursor:pointer;background:0 0;border-radius:10px;align-items:center;gap:8px;padding:11px 24px;font-size:14px;font-weight:500;transition:all .2s;display:inline-flex}.btn-secondary:hover{border-color:var(--blue);color:var(--text)}.btn-ghost{color:var(--muted);font-family:var(--body);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:8px 12px;font-size:14px;transition:all .2s}.btn-ghost:hover{color:var(--text);background:var(--card)}.form-group{flex-direction:column;gap:6px;display:flex}.form-group label{color:var(--muted);letter-spacing:1px;text-transform:uppercase;font-size:12px;font-weight:600}.form-group input,.form-group textarea,.form-group select{background:var(--card);border:2px solid var(--border);color:var(--text);font-family:var(--body);border-radius:10px;outline:none;width:100%;padding:12px 14px;font-size:14px;transition:border .2s}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--blue)}.form-group textarea{resize:vertical;min-height:80px}.panel{background:var(--card);border:1px solid var(--border);border-radius:16px;overflow:hidden}.panel-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.panel-header h3{font-family:var(--head);letter-spacing:1px;font-size:18px;font-weight:700}.badge{letter-spacing:.5px;border-radius:20px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-block}.badge.confirmed{color:var(--success);background:#22c55e1f}.badge.pending{color:var(--warn);background:#f59e0b1f}.badge.declined{color:var(--danger);background:#ef44441f}.badge.cancelled,.badge.free{color:var(--muted);background:#64748b1f}.badge.pro{color:var(--blue);background:#3b82f626}.spinner{border:2px solid #ffffff40;border-top-color:#fff;border-radius:50%;flex-shrink:0;width:18px;height:18px;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.toast{background:var(--card2);border:1px solid var(--border);z-index:999;white-space:nowrap;border-radius:12px;padding:14px 24px;font-size:14px;font-weight:500;animation:.3s slideUp;position:fixed;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 8px 32px #0006}.toast.success{border-color:var(--success);color:var(--success)}.toast.error{border-color:var(--danger);color:var(--danger)}@keyframes slideUp{0%{opacity:0;transform:translate(-50%)translateY(20px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.modal-overlay{z-index:200;background:#000000bf;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border:1px solid var(--border);border-radius:18px;width:100%;max-width:460px;max-height:90vh;padding:28px;overflow-y:auto}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:.35s forwards fadeIn}@keyframes pop{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}
