:root{--bg: #1b1140;--bg-2: #2d1b6b;--panel: #ffffff;--ink: #241a4d;--ink-soft: #6b5fa8;--brand: #7c4dff;--brand-2: #ff5fa2;--accent: #ffcb2b;--good: #35d07f;--bad: #ff5a5f;--coin: #ffcb2b;--coin-edge: #e0a400;--radius: 22px;--shadow: 0 18px 40px rgba(20, 8, 60, .28);--font: "Baloo 2", "Comic Sans MS", "Trebuchet MS", system-ui, sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%;margin:0}body{font-family:var(--font);color:var(--ink);background:radial-gradient(circle at 20% 0%,#3a1f8f 0%,var(--bg) 55%,#120a2e 100%);background-attachment:fixed;overflow-x:hidden}button{font-family:inherit;cursor:pointer;border:none}h1,h2,h3{margin:0;font-weight:800;letter-spacing:-.01em}.app-shell{max-width:560px;margin:0 auto;min-height:100%;padding:20px 18px 40px;display:flex;flex-direction:column}.card{background:var(--panel);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px}.btn{border-radius:999px;padding:14px 22px;font-size:1.05rem;font-weight:800;color:#fff;background:linear-gradient(180deg,var(--brand) 0%,#5a2ee0 100%);box-shadow:0 8px #3d1cb0,0 12px 22px #3c14a066;transition:transform .08s ease,box-shadow .08s ease}.btn:active{transform:translateY(4px);box-shadow:0 4px #3d1cb0,0 6px 12px #3c14a066}.btn:disabled{filter:grayscale(.7) brightness(.9);opacity:.65;cursor:not-allowed;box-shadow:0 6px #999}.btn--pink{background:linear-gradient(180deg,var(--brand-2) 0%,#e63e86 100%);box-shadow:0 8px #b8236a,0 12px 22px #b41e6e66}.btn--gold{color:#5a3b00;background:linear-gradient(180deg,#ffd85e 0%,var(--accent) 100%);box-shadow:0 8px 0 var(--coin-edge),0 12px 22px #c8960066}.btn--ghost{background:#ffffff24;box-shadow:none;border:2px solid rgba(255,255,255,.3)}.btn--block{width:100%}.title-xl{font-size:2.4rem;color:#fff;text-shadow:0 3px 0 rgba(0,0,0,.18)}.text-soft{color:var(--ink-soft)}.text-white{color:#fff}.center{text-align:center}.stack{display:flex;flex-direction:column;gap:14px}.row{display:flex;align-items:center;gap:12px}.spacer{flex:1}input.field{font-family:inherit;font-size:1.2rem;font-weight:700;padding:14px 18px;border-radius:16px;border:3px solid #e6e0ff;outline:none;width:100%;color:var(--ink)}input.field:focus{border-color:var(--brand)}
