.app-shell{background:var(--bg);flex-direction:column;max-width:480px;min-height:100vh;margin:0 auto;display:flex}.app-shell .topbar{background:var(--panel);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex;position:sticky;top:0}.app-shell .topbar .brand{font-size:1rem;font-weight:800}.app-shell .topbar button{color:var(--muted);background:0 0;border:0;font-size:.9rem}.app-shell .content{flex:1;max-width:none;margin:0;padding:1rem 1rem 6rem}.app-shell .login{padding:1.5rem 0}.app-shell .form{gap:.6rem;max-width:none;display:grid}.app-shell .form input,.app-shell .form select{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-variant);width:100%;color:var(--fg);padding:.7rem;font-size:1rem}.app-shell .form .error{color:var(--bad);margin:0;font-size:.9rem}.app-shell .primary-action{background:var(--panel);border-top:1px solid var(--border);max-width:480px;margin:0 auto;padding:.9rem 1rem;position:fixed;bottom:0;left:0;right:0}.app-shell .primary-action button{background:var(--brand);width:100%;min-height:56px;color:var(--brand-contrast);border:0;border-radius:999px;padding:.9rem;font-size:1.05rem;font-weight:700}.app-shell .primary-action button:disabled{opacity:.5}.app-shell .section{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:1rem;padding:1.25rem}.app-shell .section h2{margin:0 0 .5rem;font-size:1.05rem}.app-shell .muted{color:var(--muted);font-size:.9rem}.app-shell .badge{border-radius:999px;padding:.15rem .6rem;font-size:.8rem;font-weight:700;display:inline-block}.app-shell .badge-ok{background:var(--ok-container);color:var(--ok)}.app-shell .badge-warn{background:var(--warn-container);color:var(--warn)}.app-shell .badge-bad{background:var(--bad-container);color:var(--bad)}.app-shell .review-note{margin:.4rem 0 0;font-size:.9rem}.app-shell .preview{border-radius:var(--radius-md);max-width:100%;margin-top:.5rem;display:block}.app-shell .row-actions{flex-wrap:wrap;gap:.5rem;margin-top:.5rem;display:flex}.app-shell .row-actions button{border:1.5px solid var(--brand);min-height:48px;color:var(--brand);font:inherit;background:0 0;border-radius:999px;padding:.55rem 1.1rem;font-weight:700}.app-shell [role=alert]{color:var(--bad)}.app-shell .form button{background:var(--brand);min-height:56px;color:var(--brand-contrast);font:inherit;cursor:pointer;border:0;border-radius:999px;font-size:1.05rem;font-weight:700}.app-shell .form button.quiet{color:var(--brand);background:0 0;min-height:48px}.app-shell .form button:disabled{opacity:.5;cursor:not-allowed}.app-shell .form label{font-weight:600}.app-shell .topbar-actions{align-items:center;gap:.5rem;display:flex}@font-face{font-family:Nunito;src:url(/fonts/nunito-variable.ttf)format("truetype");font-weight:200 1000;font-style:normal;font-display:swap}:root{--bg:#fff9fa;--fg:#2b2030;--muted:#6e5f72;--brand:#6a2c70;--brand-deep:#4a1d5a;--brand-contrast:#fff;--brand-container:#f6e4f5;--rose:#c74b6e;--rose-container:#ffe0e8;--surface:#fff;--surface-variant:#f7eff4;--border:#d9c9d3;--panel:#fff;--ok:#1f7a63;--ok-container:#ddf3eb;--warn:#8a5a00;--warn-container:#fff0d1;--bad:#b3261e;--bad-container:#fce4e1;--radius-sm:12px;--radius-md:16px;--radius-lg:24px;--radius-xl:32px;color:var(--fg);background:var(--bg);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font-family:Nunito,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.6}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}:root:not([data-theme=light]){--bg:#171019;--fg:#f0e4f2;--muted:#c9b8cc;--brand:#e7b6ec;--brand-contrast:#3a0f40;--brand-container:#4c1b52;--rose:#ffb1c4;--rose-container:#5e1a33;--surface:#211826;--surface-variant:#2d2231;--border:#5a4a5e;--panel:#211826;--ok:#8edbc4;--ok-container:#0f3d31;--warn:#f5c76a;--warn-container:#4a3200;--bad:#ffb4ab;--bad-container:#601410}}:root[data-theme=dark]{--bg:#171019;--fg:#f0e4f2;--muted:#c9b8cc;--brand:#e7b6ec;--brand-contrast:#3a0f40;--brand-container:#4c1b52;--rose:#ffb1c4;--rose-container:#5e1a33;--surface:#211826;--surface-variant:#2d2231;--border:#5a4a5e;--panel:#211826;--ok:#8edbc4;--ok-container:#0f3d31;--warn:#f5c76a;--warn-container:#4a3200;--bad:#ffb4ab;--bad-container:#601410}*{box-sizing:border-box}body{background:var(--bg);margin:0}h1,h2,h3{line-height:1.25}h1{font-weight:800}h2{font-weight:700}a{color:var(--brand)}:focus-visible{outline:3px solid var(--rose);outline-offset:2px}.shell{flex-direction:column;min-height:100vh;display:flex}.site-header{background:var(--surface);border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;padding:.75rem 20px;display:flex}.brand{color:var(--brand);font-size:1.35rem;font-weight:800;text-decoration:none}.menu-toggle{display:none}.nav{flex-wrap:wrap;align-items:center;gap:1.1rem;display:flex}.nav a{color:var(--fg);font-weight:600;text-decoration:none}.nav a.active{color:var(--brand)}.nav .nav-cta{border:1.5px solid var(--brand);color:var(--brand);border-radius:999px;padding:.3rem 1.1rem}.content{flex:1;width:100%;max-width:960px;margin:0 auto;padding:1.5rem 20px 3rem}.hero{padding:2rem 0}.hero h1{margin:0 0 .5rem;font-size:clamp(2rem,5vw,3rem)}.lead{color:var(--muted);font-size:1.15rem}.actions{flex-wrap:wrap;gap:.75rem;margin:1.25rem 0;display:flex}.button{background:var(--brand);min-height:48px;color:var(--brand-contrast);border:1.5px solid var(--brand);font:inherit;cursor:pointer;border-radius:999px;justify-content:center;align-items:center;padding:.6rem 1.6rem;font-weight:700;text-decoration:none;display:inline-flex}.button.secondary{color:var(--brand);background:0 0}.button:disabled{opacity:.5;cursor:not-allowed}.note{color:var(--muted);font-size:.95rem}.cards{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;display:grid}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.25rem 1.4rem}.card h2{margin-top:0;font-size:1.15rem}.steps li{margin-bottom:.5rem}details{border-bottom:1px solid var(--border);padding:.85rem 0}summary{cursor:pointer;font-weight:700}.form{gap:.6rem;max-width:360px;display:grid}.form label{font-weight:600}.form input,.form select{border:1px solid var(--border);border-radius:var(--radius-md);min-height:48px;font:inherit;background:var(--surface-variant);color:var(--fg);padding:.75rem .9rem}.site-footer{border-top:1px solid var(--border);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:.5rem;padding:1rem 20px;display:flex}.site-footer p{margin:0}@media (width<=700px){.menu-toggle{border:1px solid var(--border);color:var(--fg);font:inherit;background:0 0;border-radius:999px;padding:.4rem 1rem;font-weight:600;display:inline-block}.nav{flex-direction:column;align-items:flex-start;width:100%;padding:.5rem 0;display:none}.nav.open{display:flex}}.earn-hero,.earn-banner{color:#fff;border-radius:var(--radius-xl);background:linear-gradient(135deg,#6a2c70,#4a1d5a);margin:1rem 0 1.5rem;padding:2.25rem 1.75rem}.earn-hero .lead,.earn-hero .note,.earn-banner p{color:inherit;opacity:.92}.earn-hero h1,.earn-banner h2{margin:.25rem 0 .5rem;font-size:clamp(1.8rem,5vw,2.7rem)}.earn-eyebrow{text-transform:uppercase;letter-spacing:.08em;opacity:.9;margin:0;font-size:.8rem;font-weight:800}.earn-amount{color:#6a2c70;border-radius:var(--radius-sm);white-space:nowrap;background:#fff;padding:0 .45rem}.earn-hero .button,.earn-banner .button{color:#6a2c70;background:#fff;border-color:#fff}.earn-hero .button.secondary{color:#fff;background:0 0;border-color:#fff}.earn-banner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.25rem;display:flex}.earn-banner h2{font-size:clamp(1.5rem,4vw,2.1rem)}.theme-toggle{border:1px solid var(--border);min-height:40px;color:var(--fg);font:inherit;cursor:pointer;background:0 0;border-radius:999px;padding:.3rem .9rem;font-weight:600}@keyframes lg-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes lg-beat{0%,56%,to{transform:scale(1)}14%{transform:scale(1.14)}28%{transform:scale(1)}42%{transform:scale(1.08)}}@keyframes lg-spark{0%,to{opacity:.4;transform:scale(.8)}50%{opacity:1;transform:scale(1.25)}}.logo-mark{flex:none;transition:transform .25s cubic-bezier(.2,.8,.2,1)}.logo-heart,.logo-spark{transform-box:fill-box;transform-origin:50%}.logo-heart{animation:3s ease-in-out infinite lg-beat}.logo-spark{animation:2.4s ease-in-out infinite lg-spark}.brand{align-items:center;gap:.5rem;display:inline-flex}.brand:hover .logo-mark{transform:rotate(-6deg)scale(1.06)}.content>*{animation:.5s cubic-bezier(.2,.8,.2,1) both lg-rise}.cards>.card{transition:transform .2s,box-shadow .2s;animation:.55s cubic-bezier(.2,.8,.2,1) both lg-rise}.cards>.card:nth-child(2){animation-delay:80ms}.cards>.card:nth-child(3){animation-delay:.16s}.cards>.card:nth-child(4){animation-delay:.24s}.cards>.card:hover{transform:translateY(-4px);box-shadow:0 10px 28px #6a2c7024}.button,.theme-toggle,.nav a{transition:transform .15s,box-shadow .15s,background-color .15s,color .15s}.button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #6a2c7047}.button:active:not(:disabled){transform:scale(.97)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
