*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--fx-bg);color:var(--fx-text);font-family:var(--fx-font);font-size:17px;line-height:1.5;-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto;display:block}a{color:var(--fx-accent)}:focus-visible{outline:3px solid var(--fx-accent);outline-offset:2px}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.app{display:flex;flex-direction:column;min-height:100vh;min-height:100svh}.app__header{display:flex;align-items:center;gap:10px;padding:10px 16px;border-bottom:1px solid var(--fx-border);background:var(--fx-bg)}.app__logo{max-height:34px;width:auto}.app__brand{font-weight:700;font-size:1rem;letter-spacing:.01em}.app__main{flex:1 1 auto;width:100%;max-width:560px;margin:0 auto;padding:16px 16px calc(24px + env(safe-area-inset-bottom))}.app__footer{border-top:1px solid var(--fx-border);padding:14px 16px calc(20px + env(safe-area-inset-bottom));background:var(--fx-surface)}.nav{display:flex;flex-wrap:wrap;gap:6px 14px;max-width:560px;margin:0 auto;padding:0;list-style:none}.nav a{display:inline-block;padding:8px 0;color:var(--fx-text);text-decoration:none;border-bottom:2px solid transparent;font-size:.95rem}.nav a[aria-current=page]{border-bottom-color:var(--fx-accent);font-weight:600}.legal-note{max-width:560px;margin:12px auto 0;color:var(--fx-muted);font-size:.8rem;line-height:1.45}h1{font-size:1.5rem;line-height:1.25;margin:0 0 10px}h2{font-size:1.15rem;line-height:1.3;margin:24px 0 8px}h3{font-size:1rem;margin:16px 0 6px}p{margin:0 0 12px}.muted{color:var(--fx-muted)}.small{font-size:.875rem}.stack>*+*{margin-top:12px}.card{background:var(--fx-surface);border:1px solid var(--fx-border);border-radius:var(--fx-radius);padding:16px}.card+.card{margin-top:12px}.hero{border-radius:var(--fx-radius);overflow:hidden;background:var(--fx-surface);margin-bottom:16px}.hero img{width:100%}.steps{margin:0;padding-left:1.25em}.steps li+li{margin-top:8px}.btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:54px;padding:14px 18px;border:2px solid transparent;border-radius:var(--fx-radius);font:inherit;font-weight:600;text-align:center;text-decoration:none;cursor:pointer;touch-action:manipulation}.btn:disabled{opacity:.55;cursor:default}.btn--primary{background:var(--fx-primary);color:var(--fx-on-primary)}.btn--secondary{background:transparent;color:var(--fx-text);border-color:var(--fx-border)}.btn--quiet{background:transparent;color:var(--fx-muted);min-height:48px;font-weight:500;text-decoration:underline}.btn+.btn{margin-top:10px}.sticky-cta{position:sticky;bottom:calc(var(--fx-kb, 0px) + 8px);padding-top:8px;background:linear-gradient(to bottom,transparent,var(--fx-bg) 35%)}.notice{border-radius:var(--fx-radius);border:1px solid var(--fx-border);padding:12px 14px;background:var(--fx-surface)}.notice--danger{border-color:var(--fx-danger)}.notice--danger .notice__title{color:var(--fx-danger)}.notice--success .notice__title{color:var(--fx-success)}.notice--warning .notice__title{color:var(--fx-warning)}.notice__title{font-weight:700;margin-bottom:4px}.field{display:block;margin-bottom:14px}.field__label{display:block;font-weight:600;margin-bottom:6px}.field__control{display:block;width:100%;min-height:54px;padding:12px 14px;font-size:16px;font-family:inherit;color:var(--fx-text);background:var(--fx-bg);border:2px solid var(--fx-border);border-radius:var(--fx-radius)}textarea.field__control{min-height:130px;resize:vertical}.field__control:focus{border-color:var(--fx-accent)}.field__control[aria-invalid=true]{border-color:var(--fx-danger)}.field__error{display:block;margin-top:6px;color:var(--fx-danger);font-size:.9rem}.field__hint{display:block;margin-top:6px;color:var(--fx-muted);font-size:.875rem}.check{display:flex;align-items:flex-start;gap:12px;padding:12px 0}.check input{width:26px;height:26px;margin:0;flex:0 0 auto;accent-color:var(--fx-primary)}.progress{height:10px;border-radius:999px;background:var(--fx-surface);border:1px solid var(--fx-border);overflow:hidden}.progress__bar{height:100%;background:var(--fx-accent);transition:width .24s linear}.progress__label{margin-top:10px;color:var(--fx-muted)}.attempt-badge{display:inline-block;padding:4px 10px;border-radius:999px;background:var(--fx-surface);border:1px solid var(--fx-border);font-size:.85rem;font-weight:600;margin-bottom:10px}.prize{display:flex;gap:12px;align-items:flex-start}.prize__image{width:84px;flex:0 0 auto;border-radius:calc(var(--fx-radius) / 1.6)}.winners{width:100%;border-collapse:collapse}.winners th,.winners td{text-align:left;padding:10px 8px;border-bottom:1px solid var(--fx-border);font-size:.95rem}.faq details{border:1px solid var(--fx-border);border-radius:var(--fx-radius);padding:0 14px;background:var(--fx-surface)}.faq details+details{margin-top:8px}.faq summary{padding:14px 0;font-weight:600;cursor:pointer;min-height:24px}.faq details p:last-child{margin-bottom:14px}.spinner{width:22px;height:22px;border:3px solid var(--fx-border);border-top-color:var(--fx-accent);border-radius:50%;animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spinner{animation:none}.progress__bar{transition:none}}@media(min-width:600px){h1{font-size:1.75rem}.app__main{padding-top:24px}}
