#app-root{min-height:100vh}:root{--bg: #17111d;--bg-2: #1d1525;--surface: #241a2e;--surface-2: #2e2239;--surface-3: #3a2c48;--line: rgba(255, 214, 233, .1);--line-strong: rgba(255, 214, 233, .2);--coral: #ff5c7a;--coral-soft: #ff869b;--magenta: #ff2e93;--gold: #ffc24b;--amber: #ff9d42;--primary: #ff5c7a;--primary-h: #ff7d92;--primary-ink: #5a1026;--gold-ink: #a85f12;--grad-party: linear-gradient(135deg, #ff6b6f 0%, #ff2e93 100%);--grad-hero: linear-gradient(100deg, #ffc24b 0%, #ff6b7e 46%, #ff2e93 100%);--grad-gold: linear-gradient(135deg, #ffd166 0%, #ff9d42 100%);--text: #f7eef4;--muted: #b3a3bd;--muted-2: #8c7d97;--green: #43e08b;--red: #ff5c6c;--blue: #6ea8ff;--r-sm: .6rem;--r: 1rem;--r-lg: 1.4rem;--r-xl: 2rem;--r-pill: 999px;--radius: 1rem;--shadow-1: 0 2px 10px rgba(0,0,0,.28);--shadow-2: 0 14px 34px -10px rgba(0,0,0,.55);--glow-coral: 0 10px 30px -6px rgba(255,46,147,.45);--glow-gold: 0 10px 30px -6px rgba(255,157,66,.42);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--ease-out: cubic-bezier(.22, 1, .36, 1);--font-display: "Baloo 2", "Inter", system-ui, sans-serif;--font-body: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--sidebar-w: 250px}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:var(--font-body);min-height:100vh;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-2;pointer-events:none;background:radial-gradient(42% 36% at 10% 6%,rgba(255,92,122,.12),transparent 70%),radial-gradient(40% 34% at 90% 10%,rgba(255,194,75,.09),transparent 70%)}a{color:inherit;text-decoration:none}h1,h2,h3{font-family:var(--font-display);font-weight:700;letter-spacing:-.01em;line-height:1.12}::selection{background:#ff2e9359;color:#fff}*{scrollbar-width:thin;scrollbar-color:var(--surface-3) transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-thumb{background:var(--surface-3);border-radius:999px;border:2px solid transparent;background-clip:padding-box}.btn{--btn-press: 5px;position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:var(--font-display);font-weight:600;font-size:.95rem;line-height:1;padding:.8rem 1.5rem;border:none;border-radius:var(--r-pill);color:#fff;cursor:pointer;text-decoration:none;white-space:nowrap;transition:transform .12s var(--ease-spring),box-shadow .18s var(--ease-out),background .2s,filter .2s,border-color .2s;-webkit-user-select:none;user-select:none}.btn:disabled,.btn[disabled]{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none;filter:saturate(.55)}.btn--primary{background:var(--grad-party);box-shadow:0 var(--btn-press) 0 var(--primary-ink),var(--glow-coral)}.btn--primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 calc(var(--btn-press) + 2px) 0 var(--primary-ink),0 18px 38px -6px #ff2e938c}.btn--primary:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px 0 var(--primary-ink),var(--glow-coral)}.btn--gold{background:var(--grad-gold);color:#3a2400;box-shadow:0 var(--btn-press) 0 var(--gold-ink),var(--glow-gold)}.btn--gold:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 calc(var(--btn-press) + 2px) 0 var(--gold-ink),0 18px 38px -6px #ff9d428c}.btn--gold:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px 0 var(--gold-ink),var(--glow-gold)}.btn--ghost{background:#ffffff0a;color:var(--text);border:1.5px solid var(--line-strong)}.btn--ghost:hover:not(:disabled){border-color:var(--primary);color:#fff;background:#ff5c7a1a;transform:translateY(-1px)}.btn--danger{background:#ff5c6c29;color:var(--red);border:1.5px solid rgba(255,92,108,.42)}.btn--danger:hover:not(:disabled){background:#ff5c6c42;transform:translateY(-1px)}.btn--lg{padding:1rem 2.1rem;font-size:1.05rem;--btn-press: 6px}.btn--sm{padding:.5rem 1.05rem;font-size:.85rem;--btn-press: 4px}.btn--full{width:100%}.field{display:flex;flex-direction:column;gap:.4rem}.field__label{font-size:.82rem;font-weight:600;color:var(--muted);font-family:var(--font-display)}.input,.select,.textarea{width:100%;padding:.65rem .85rem;background:var(--surface-2);border:1.5px solid var(--line);border-radius:var(--r-sm);color:var(--text);font-family:var(--font-body);font-size:.92rem;transition:border-color .2s,background .2s}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--primary);background:var(--surface-3)}.textarea{resize:vertical;min-height:80px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-1)}.badge{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .65rem;border-radius:var(--r-pill);font-size:.74rem;font-weight:700;white-space:nowrap;font-family:var(--font-display);border:1px solid var(--line)}.badge--green{color:var(--green);background:#43e08b1f;border-color:#43e08b59}.badge--gold{color:var(--gold);background:#ffc24b1f;border-color:#ffc24b66}.badge--red{color:var(--red);background:#ff5c6c1f;border-color:#ff5c6c66}.badge--muted{color:var(--muted);background:#ffffff0d}.badge--blue{color:var(--blue);background:#6ea8ff1f;border-color:#6ea8ff59}.page-enter-active{transition:opacity .28s var(--ease-out),transform .28s var(--ease-spring)}.page-leave-active{transition:opacity .18s ease,transform .18s ease}.page-enter-from{opacity:0;transform:translateY(12px) scale(.995)}.page-leave-to{opacity:0;transform:translateY(-8px)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.08s!important}}
