/* Noos Flipper: Midnight Fairground */
[hidden]{display:none!important}
.fl{--w:400px;--ink:#0b0820;--plum:#1b1042;--plum2:#2a1763;--rose:#f43f8e;--gold:#ffc857;--teal:#35e0d0;--cream:#fff3dc;--mute:#a99bd6;--line:rgba(255,200,87,.22);
 --display:'Bungee',Impact,'Arial Black',sans-serif;--body:'Quicksand',system-ui,-apple-system,'Segoe UI',sans-serif;
 display:flex;justify-content:center;padding:8px 10px calc(18px + env(safe-area-inset-bottom,0px));color:var(--cream);font:600 15px/1.45 var(--body);
 background:radial-gradient(900px 420px at 15% -8%,#2a1763 0%,transparent 62%),radial-gradient(700px 400px at 100% 100%,#3a0f40 0%,transparent 60%),var(--ink);min-height:calc(100vh - 56px);min-height:calc(100dvh - 56px);box-sizing:border-box}
.fl *{box-sizing:border-box}
.fl-cab{width:var(--w);display:flex;flex-direction:column;gap:8px}
.fl-lbl{font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--mute);font-weight:700}
.fl-hud{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;padding:0 2px}
.fl-score{font:400 clamp(24px,7vw,34px)/1.05 var(--display);color:var(--gold);text-shadow:0 0 14px rgba(255,200,87,.55);font-variant-numeric:tabular-nums}
.fl-hud-r{display:flex;align-items:flex-end;gap:9px}
.fl-ballbox{display:flex;flex-direction:column;gap:4px}
.fl-lamps{display:flex;gap:5px;min-height:12px}
.fl-lamps i{width:12px;height:12px;border-radius:50%;background:#3a2a6b;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}
.fl-lamps i.on{background:radial-gradient(circle at 35% 30%,#fff,#ffc857 55%,#b9791a);box-shadow:0 0 10px rgba(255,200,87,.9)}
.fl-time{font:400 18px/1 var(--display);color:var(--teal);font-variant-numeric:tabular-nums}
.fl-tilt{display:flex;gap:3px;align-items:center;height:30px}
.fl-tilt i{width:6px;height:14px;border-radius:3px;background:#3a2a6b}
.fl-tilt i.on{background:var(--teal);box-shadow:0 0 8px var(--teal)}
.fl-tilt.hot i.on{background:var(--rose);box-shadow:0 0 8px var(--rose)}
.fl-mult{font:400 17px/1 var(--display);color:var(--ink);background:var(--rose);border-radius:999px;padding:7px 11px 6px;box-shadow:0 0 16px rgba(244,63,142,.7);font-variant-numeric:tabular-nums}
.fl-ib{width:34px;height:34px;border-radius:10px;border:1px solid var(--line);background:#2a1763;color:var(--cream);font-size:14px;cursor:pointer;touch-action:manipulation;padding:0}
.fl-ib:hover{background:#38208a}
.fl button:focus-visible{outline:3px solid var(--teal);outline-offset:2px}
.fl-board{position:relative;border-radius:16px;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(255,200,87,.25),0 0 0 4px #0b0820,0 18px 60px rgba(244,63,142,.16);background:#0b0820;line-height:0;width:100%}
#flCv{display:block;width:100%;height:auto;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}
.fl-hint{position:absolute;left:0;right:0;bottom:27%;text-align:center;font:400 12px/1.2 var(--display);letter-spacing:.06em;color:var(--gold);text-shadow:0 2px 0 #0b0820,0 0 12px rgba(255,200,87,.5);pointer-events:none;padding:0 12px}
.fl-count{position:absolute;inset:0;display:grid;place-items:center;font:400 96px/1 var(--display);color:var(--cream);text-shadow:0 0 30px var(--rose),0 4px 0 #7a0f45;pointer-events:none;background:rgba(11,8,32,.35)}
.fl-ov{position:absolute;inset:0;z-index:5;background:linear-gradient(170deg,#241356,#120a33);display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:10px;padding:18px 16px 16px;overflow-y:auto;-webkit-overflow-scrolling:touch;line-height:1.4}
.fl-ov>*{flex-shrink:0}
.fl-ov>:first-child{margin-top:auto}.fl-ov>:last-child{margin-bottom:auto}
#flStart{background:radial-gradient(circle at 80% 0%,rgba(244,63,142,.3),transparent 55%),radial-gradient(circle at 0% 100%,rgba(53,224,208,.14),transparent 50%),linear-gradient(170deg,#241356,#120a33)}
.fl-logo{font:400 clamp(40px,12vw,56px)/1 var(--display);color:var(--cream);text-align:center;text-shadow:0 0 16px rgba(244,63,142,.9),0 0 40px rgba(244,63,142,.5),0 3px 0 #7a0f45}
.fl-tag{text-align:center;color:var(--gold);letter-spacing:.3em;font-size:11px;text-transform:uppercase;font-weight:700;margin-top:-4px}
.fl-h{font:400 26px/1 var(--display);text-align:center;color:var(--cream);text-shadow:0 0 14px rgba(244,63,142,.8)}
.fl-modes{display:grid;gap:7px}
.fl-mode{display:flex;justify-content:space-between;align-items:center;gap:10px;text-align:left;font:700 16px/1.2 var(--body);color:var(--cream);background:rgba(11,8,32,.6);border:1px solid rgba(255,243,220,.14);border-radius:13px;padding:12px 14px;cursor:pointer;touch-action:manipulation}
.fl-mode small{color:var(--mute);font-weight:600;font-size:12px}
.fl-mode[aria-checked="true"]{border-color:var(--rose);background:rgba(244,63,142,.16);box-shadow:0 0 22px rgba(244,63,142,.35),inset 0 0 0 1px var(--rose)}
.fl-md{margin:0;color:var(--cream);text-align:center;text-wrap:balance;font-size:13.5px;min-height:2.8em;font-size:13px}
.fl-best{text-align:center;font-size:13px;color:var(--mute)}.fl-best b{color:var(--gold);font-variant-numeric:tabular-nums}
.fl-play{position:sticky;bottom:0;font:400 22px/1 var(--display);letter-spacing:.08em;color:var(--ink);background:linear-gradient(180deg,#ff5fa6,#f43f8e);border:0;border-radius:13px;padding:15px;cursor:pointer;box-shadow:0 6px 0 #9b1c55,0 0 30px rgba(244,63,142,.5);touch-action:manipulation}
.fl-play:active{transform:translateY(3px);box-shadow:0 3px 0 #9b1c55,0 0 30px rgba(244,63,142,.5)}
.fl-play.sm{font-size:16px;padding:11px}
.fl-btn{font:700 13px/1 var(--body);letter-spacing:.08em;color:var(--cream);background:#2a1763;border:1px solid var(--line);border-radius:12px;padding:13px 14px;cursor:pointer;touch-action:manipulation}
.fl-btn.sm{padding:8px 12px;font-size:12px;white-space:nowrap}
.fl-row{display:flex;justify-content:space-between;align-items:center;gap:10px;background:rgba(11,8,32,.5);border:1px solid rgba(255,243,220,.1);border-radius:12px;padding:8px 12px;font-weight:700;font-size:14px}
#trophy-list{max-height:34vh;overflow-y:auto;text-align:left;background:rgba(11,8,32,.6);border-radius:12px;padding:8px;font-size:13px;-webkit-overflow-scrolling:touch}
.fl-side{display:flex;flex-direction:column;gap:8px}
.fl-mission{display:flex;flex-direction:column;gap:5px;background:rgba(11,8,32,.6);border:1px solid var(--line);border-radius:13px;padding:8px 12px 10px}
.fl-mrow{display:flex;justify-content:space-between;align-items:baseline}
.fl-mt{font-weight:700;color:var(--cream);font-size:14px}
.fl-mn{font:400 13px/1 var(--display);color:var(--gold);font-variant-numeric:tabular-nums}
.fl-bar{height:7px;border-radius:99px;background:#2a1d57;overflow:hidden}
.fl-bar b{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--rose),var(--gold));border-radius:99px;box-shadow:0 0 12px rgba(244,63,142,.8);transition:width .18s ease-out}
.fl-ctl{display:grid;grid-template-columns:1fr .85fr 1fr;gap:9px}
.fl-ctl button{font:700 14px/1 var(--body);letter-spacing:.06em;color:var(--cream);background:#2a1763;border:1px solid var(--line);border-radius:12px;padding:17px 8px;cursor:pointer;touch-action:none;user-select:none;-webkit-user-select:none;white-space:nowrap}
.fl-ctl button.down{background:var(--rose);color:var(--ink);border-color:var(--rose);box-shadow:0 0 18px rgba(244,63,142,.7)}
.fl-ctl button.mid.plunge{background:var(--teal);color:var(--ink);border-color:var(--teal);box-shadow:0 0 18px rgba(53,224,208,.6)}
.fl-foot{display:flex;justify-content:space-between;align-items:center;gap:8px}
.fl-keys{font-size:11.5px;color:var(--mute)}
.fl-share{font:700 12px/1 var(--body);letter-spacing:.1em;color:var(--cream);background:transparent;border:1px solid var(--line);border-radius:10px;padding:8px 12px;cursor:pointer;white-space:nowrap}
.fl-touch{display:none}
.fl.touch .fl-touch{display:block}.fl.touch .fl-ctl,.fl.touch .fl-foot{display:none}
@media (hover:none){.fl-keys{display:none}.fl-foot{justify-content:flex-end}}
.fl.tight .fl-hud-r{gap:6px}.fl.tight .fl-ib{width:30px;height:30px}.fl.tight .fl-mult{font-size:15px;padding:6px 9px 5px}.fl.tight .fl-ballbox .fl-lbl{display:none}
.fl.compact .fl-md{min-height:0}.fl.compact .fl-logo{font-size:38px}.fl.compact .fl-ov{gap:7px;padding:12px}.fl.compact .fl-mode{padding:9px 12px}.fl.compact .fl-ctl button{padding:13px 6px}
.fl.compact .fl-mission{padding:6px 10px 8px}
/* landscape phones: board left, controls right */
.fl.land{padding:6px 10px}
.fl.land .fl-cab{width:auto;display:grid;grid-template-columns:var(--w) minmax(210px,300px);grid-template-areas:"board hud" "board side";grid-template-rows:auto 1fr;gap:8px 14px;align-items:start}
.fl.land .fl-board{grid-area:board}.fl.land .fl-hud{grid-area:hud}.fl.land .fl-side{grid-area:side}
.fl.land .fl-keys{display:none}.fl.land .fl-ctl button{padding:15px 6px}
.fl.land .fl-ov{padding:10px 12px}.fl.land .fl-logo{font-size:34px}
#flOpts .fl-play{position:static}
#beta-report-trigger{display:none!important}
@media (prefers-reduced-motion:reduce){.fl-bar b{transition:none}}
