.flappy-page{--flappy-ink:#3f3935;--flappy-copy:#625b56;--flappy-muted:#81766e;--flappy-accent:#6f625c;--flappy-sky:#f8f4ef}.flappy-page footer,.flappy-page header,.flappy-page main{min-width:320px}.flappy-page #how-it-works{scroll-margin-top:128px}.flappy-game-section{padding-inline:0;background:#fff}.flappy-console{width:100%;min-width:0}.flappy-console__top{width:min(100%,520px)}.flappy-stat--tile dd{color:#5e534d;font-size:clamp(24px, 2.8vw, 29px)}.flappy-canvas:focus-visible,.flappy-overlay button:focus-visible{outline:4px solid rgb(124 113 106 / 32%);outline-offset:3px}.flappy-playfield{width:min(100%,860px);min-width:0}.flappy-stage{padding-inline:10px}.flappy-stage-shell{width:100%;min-width:0;position:relative;overflow:hidden;border:0;border-radius:24px;background:var(--flappy-sky);isolation:isolate}.flappy-canvas{min-width:0;max-width:100%;width:100%;height:auto;aspect-ratio:1000/620;display:block;touch-action:none;user-select:none;-webkit-user-select:none}.flappy-overlay{padding:24px;background:rgb(248 244 239 / 28%);display:grid;place-items:center;position:absolute;inset:0;z-index:2}.flappy-overlay[hidden]{display:none}.flappy-overlay__card{width:min(100%,390px);padding:clamp(22px,3vw,28px);border:1px solid rgb(94 83 77 / 6%);border-radius:20px;background:rgb(255 255 255 / 90%);box-shadow:0 20px 60px rgb(63 57 53 / 10%);text-align:center;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.flappy-console[data-phase=over] .flappy-overlay__card{width:min(100%,360px)}.flappy-console[data-phase=over] .flappy-overlay__eyebrow{display:none}.flappy-console[data-phase=ready] .flappy-overlay{background:0 0}.flappy-console[data-phase=ready] .flappy-overlay__card{padding:0 24px;border:0;border-radius:0;background:0 0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.flappy-console[data-phase=ready] .flappy-overlay__eyebrow{display:none}.flappy-overlay__eyebrow{margin:0 0 8px;color:var(--flappy-muted);font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.flappy-overlay h3{margin:0;color:var(--flappy-ink);font-size:clamp(26px, 3vw, 34px);line-height:1.12;letter-spacing:-.03em}.flappy-overlay__copy{max-width:320px;margin:12px auto 0;color:var(--flappy-copy);font-size:15px;line-height:1.6}.flappy-overlay__actions{margin-top:20px;display:flex;justify-content:center;flex-wrap:wrap;gap:10px}.flappy-overlay button{min-height:42px;padding:0 18px;border:0;border-radius:999px;background:var(--flappy-ink);color:#fff;font:inherit;font-size:13px;font-weight:750;cursor:pointer}.flappy-overlay button.flappy-overlay__secondary{background:#f0ede9;color:var(--flappy-ink)}.flappy-progress{width:min(100%,860px);margin:16px auto 0;padding:12px 16px;border-radius:20px;background:radial-gradient(circle,#f7f7f4 8%,transparent 100%)}.flappy-progress__copy{margin-bottom:10px;color:var(--flappy-copy);font-size:13px;font-weight:700;display:flex;justify-content:space-between;gap:16px}.flappy-progress__copy strong{color:var(--flappy-ink)}.flappy-progress__track{height:5px;border-radius:999px;background:#e8e3de;overflow:hidden}.flappy-progress__fill{width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#b9aba0,#d5b46a);transition:width 320ms cubic-bezier(.22, 1, .36, 1)}.flappy-help{width:min(100%,720px);margin:12px auto 0;color:var(--flappy-muted);font-size:13px;line-height:1.5;text-align:center}.flappy-help__touch{display:none}@media (hover:none) and (pointer:coarse){.flappy-help__touch{display:inline}.flappy-help__keyboard{display:none}}.flappy-console:-webkit-full-screen,.flappy-console:fullscreen{width:100%;max-width:none;height:100%;margin:0;padding:clamp(16px,3vw,40px);background:#fff;overflow:auto;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto}.flappy-console:fullscreen::backdrop{background:#f8f8f8}.flappy-console:-webkit-full-screen .flappy-console__top,.flappy-console:fullscreen .flappy-console__top{margin:0 auto 16px}.flappy-console:-webkit-full-screen .flappy-stage,.flappy-console:fullscreen .flappy-stage{min-height:0;height:100%;padding:clamp(16px,3vw,36px);align-items:center}.flappy-console:-webkit-full-screen .flappy-playfield,.flappy-console:fullscreen .flappy-playfield{width:auto;max-width:100%;height:100%;max-height:100%;aspect-ratio:1000/620}.flappy-console:-webkit-full-screen .flappy-canvas,.flappy-console:-webkit-full-screen .flappy-stage-shell,.flappy-console:fullscreen .flappy-canvas,.flappy-console:fullscreen .flappy-stage-shell{width:100%;height:100%}.flappy-console:-webkit-full-screen .flappy-progress,.flappy-console:fullscreen .flappy-progress{margin-top:16px}@media (orientation:portrait){.flappy-console:-webkit-full-screen .flappy-playfield,.flappy-console:fullscreen .flappy-playfield{width:100%;height:auto}.flappy-console:-webkit-full-screen .flappy-canvas,.flappy-console:-webkit-full-screen .flappy-stage-shell,.flappy-console:fullscreen .flappy-canvas,.flappy-console:fullscreen .flappy-stage-shell{height:auto}}.flappy-how{width:min(1200px,100%);max-width:1200px;min-width:0;margin-bottom:32px;padding-block:64px;border-radius:32px;background:#fff}.flappy-how__intro{max-width:640px;margin:0 auto 28px;text-align:center}.flappy-how__intro h2{margin:0 0 12px;color:var(--flappy-ink);font-size:clamp(30px, 4vw, 42px);letter-spacing:-.025em}.flappy-how__intro p{margin:0;color:var(--flappy-copy);font-size:18px;line-height:1.6}.flappy-steps{width:min(100%,880px);margin:0 auto;padding:24px;border-radius:28px;background:radial-gradient(circle,#f7f7f4 8%,transparent 100%);display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.flappy-step{min-width:0;padding:16px 24px;text-align:center;position:relative}.flappy-step+.flappy-step{border-left:1px solid rgb(94 83 77 / 8%)}.flappy-step__number{width:36px;height:36px;margin:0 auto 16px;border-radius:50%;background:#fff;color:var(--flappy-accent);font-size:14px;font-weight:800;display:grid;place-items:center}.flappy-step h3{margin:0 0 8px;color:var(--flappy-ink);font-size:18px;font-weight:650;letter-spacing:-.025em}.flappy-step p{margin:0;color:var(--flappy-copy);font-size:14px;line-height:1.6}.flappy-sequence{width:min(100%,880px);margin:24px auto 0;padding:16px;border-radius:28px;background:radial-gradient(circle,#f7f7f4 8%,transparent 100%);list-style:none;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px}.flappy-sequence li{min-width:0;aspect-ratio:1;border-radius:14px;background:#fff;color:var(--flappy-ink);font-size:clamp(9px, 1.3vw, 15px);font-weight:800;display:grid;place-items:center;font-variant-numeric:tabular-nums}.flappy-sequence li:last-child{background:#d5b46a;color:#fffdf9}@media (hover:hover) and (pointer:fine){.flappy-overlay button:hover{background:#5e534d}}@media (max-width:767.98px){.flappy-how{padding-block:40px}.flappy-how__intro p{font-size:16px}.flappy-stat dd{font-size:20px}.flappy-stage-shell{border-radius:22px}.flappy-steps{padding:18px;grid-template-columns:1fr}.flappy-step{padding:20px}.flappy-step+.flappy-step{border-top:1px solid rgb(94 83 77 / 8%);border-left:0}}@media (max-width:520px){.flappy-console__top,.flappy-game-section .game-intro,.flappy-help,.flappy-progress{width:calc(100% - 24px)}.flappy-stage{padding-block:8px}.flappy-stat{padding-inline:2px}.flappy-stat dt{font-size:9px}.flappy-overlay{padding:8px}.flappy-overlay__card{padding:14px 12px;border-radius:18px}.flappy-console:not([data-phase=ready]) .flappy-overlay__eyebrow{display:none}.flappy-overlay h3{font-size:clamp(22px, 7vw, 28px)}.flappy-overlay__copy{margin-top:8px;font-size:12px;line-height:1.4}.flappy-overlay__actions{margin-top:10px;gap:6px}.flappy-overlay button{min-height:44px;padding-inline:14px;font-size:13px}.flappy-progress__copy{align-items:flex-start;flex-direction:column;gap:2px}}@media (max-width:420px){.flappy-progress{padding-inline:12px}}@media (max-width:360px){.flappy-console[data-phase=ready] .flappy-overlay__card{padding:0 8px}.flappy-console[data-phase=ready] .flappy-overlay h3{font-size:24px;line-height:1.08}.flappy-console[data-phase=ready] .flappy-overlay__copy{display:none}.flappy-console[data-phase=ready] .flappy-overlay__actions{margin-top:10px}}@media (prefers-reduced-motion:reduce){.flappy-progress__fill{transition:none}}@media (forced-colors:active){.flappy-overlay button,.flappy-overlay__card,.flappy-stage,.flappy-stage-shell{border:1px solid CanvasText}}