@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;600;700&family=DM+Sans:wght@300;400;500;600&display=swap");:root{--primary:#2d0e6e;--primary-mid:#4a1fa8;--primary-light:#6b3fd4;--gold:#c9a84c;--gold-light:#e8c96a;--bg:#f5f5f7;--surface:#fff;--surface-2:#f0edf8;--text:#1d1d1f;--text-sub:#6e6e73;--text-light:#aeaeb2;--border:rgba(0,0,0,.08);--shadow-sm:0 2px 8px rgba(45,14,110,.08);--shadow-md:0 8px 32px rgba(45,14,110,.12);--shadow-lg:0 24px 64px rgba(45,14,110,.18);--radius-sm:12px;--radius-md:18px;--radius-lg:28px;--radius-full:980px}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}html{font-size:16px;-webkit-text-size-adjust:100%}body{font-family:DM Sans,sans-serif;background:var(--bg);color:var(--text);min-height:100vh;overscroll-behavior:none}h1,h2{font-family:Cormorant Garamond,serif}h1{font-size:clamp(2rem,6vw,3rem);font-weight:700;line-height:1.1;letter-spacing:-.02em}h2{font-size:clamp(1.4rem,4vw,1.8rem)}h2,h3{font-weight:600}h3{font-size:1.1rem;letter-spacing:-.01em}p{line-height:1.6}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:16px 32px;border-radius:var(--radius-full);font-family:DM Sans,sans-serif;font-size:17px;font-weight:600;letter-spacing:-.3px;cursor:pointer;border:none;transition:all .2s cubic-bezier(.34,1.56,.64,1);text-decoration:none;white-space:nowrap}.btn:active{transform:scale(.96)}.btn-primary{background:var(--primary);color:#fff;box-shadow:0 4px 20px rgba(45,14,110,.3)}.btn-primary:hover{background:var(--primary-mid);box-shadow:0 8px 32px rgba(45,14,110,.4)}.btn-gold{background:var(--gold);color:#fff;box-shadow:0 4px 20px rgba(201,168,76,.35)}.btn-gold:hover{background:var(--gold-light)}.btn-ghost{background:hsla(0,0%,100%,.15);color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-full{width:100%}.card{background:var(--surface);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow:hidden}.input-group{display:flex;flex-direction:column;gap:6px}.input-label{font-size:13px;font-weight:500;color:var(--text-sub);letter-spacing:.02em;text-transform:uppercase}.input{width:100%;padding:14px 16px;border-radius:var(--radius-sm);border:1.5px solid var(--border);background:var(--surface);font-family:DM Sans,sans-serif;font-size:16px;color:var(--text);transition:border-color .2s,box-shadow .2s;outline:none}.input:focus{border-color:var(--primary-light);box-shadow:0 0 0 4px rgba(107,63,212,.12)}.page{max-width:480px;margin:0 auto;padding:0 24px 40px}.hero{background:linear-gradient(160deg,var(--primary),var(--primary-mid));color:#fff;text-align:center;padding:80px 24px 60px;min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center}.spinner{width:40px;height:40px;border:3px solid rgba(45,14,110,.1);border-top:3px solid var(--primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.bottom-tab{position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--border);display:flex;justify-content:space-around;padding:8px 0 calc(8px + env(safe-area-inset-bottom));z-index:100}.bottom-tab a{flex:1 1;display:flex;flex-direction:column;align-items:center;gap:4px;text-decoration:none;font-size:12px;transition:color .2s}.bottom-tab a.active{color:var(--primary);font-weight:600}.bottom-tab a:not(.active){color:var(--text-sub)}