:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;background:#02050a;color:#f5fbff}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#02050a;touch-action:none}button,select,a{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}#app{position:relative;width:100%;height:100%;max-width:520px;margin:auto;overflow:hidden;background:radial-gradient(circle at 50% 20%,#112339,#02050a 70%)}#game{position:absolute;width:100%;height:100%;inset:0}.vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#01040922,transparent 35%,#01030866),radial-gradient(ellipse at center,transparent 44%,#0007)}#hud{position:absolute;z-index:5;top:max(14px,env(safe-area-inset-top));left:14px;right:60px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:7px}#hud div{padding:9px 10px;border:1px solid #71deff47;border-radius:14px;background:#030d16c2;backdrop-filter:blur(8px);box-shadow:0 6px 24px #0007}small{display:block;font-size:9px;letter-spacing:.16em;color:#8cb8ca}#hud b{display:block;margin-top:2px;font-size:14px;white-space:nowrap}.coins b{color:#ffd469}.icon{position:absolute;z-index:6;right:14px;top:max(14px,env(safe-area-inset-top));width:40px;height:45px;border:1px solid #4b7280;border-radius:13px;color:white;background:#071722cc}#distance{position:absolute;z-index:4;left:18px;right:18px;top:82px;height:4px;background:#ffffff1b;border-radius:4px;overflow:hidden}#distance i{display:block;height:100%;width:100%;background:linear-gradient(90deg,#5eeaff,#fff5a0);box-shadow:0 0 12px #4deaff}#combo{position:absolute;z-index:5;top:100px;left:50%;transform:translateX(-50%);font-weight:1000;font-style:italic;color:#ffd76b;text-shadow:0 2px 12px #ff7b00;font-size:21px;letter-spacing:.08em}.panel{position:absolute;z-index:10;left:18px;right:18px;bottom:max(18px,env(safe-area-inset-bottom));padding:24px;border:1px solid #68dcff52;border-radius:27px;background:linear-gradient(145deg,#05131ef0,#030910f0);box-shadow:0 28px 70px #000c,inset 0 1px #ffffff16;backdrop-filter:blur(15px)}.back{color:#8dc7d7;text-decoration:none;font-size:12px;letter-spacing:.12em}.eyebrow{margin:18px 0 8px;color:#ffce79;font-weight:900;font-size:11px;letter-spacing:.2em}h1{font-size:clamp(39px,12vw,62px);line-height:.82;margin:0;letter-spacing:-.065em;font-style:italic}h1 span{color:#6cecff;text-shadow:0 0 25px #16cce060}h2{font-size:27px;margin:4px 0 10px}.lead{margin:18px 0;color:#b3c7d2;font-size:14px;line-height:1.4}.select-label{display:block;font-size:10px;letter-spacing:.17em;color:#84b7ca}select{display:block;width:100%;margin-top:7px;padding:13px 14px;border:1px solid #345665;border-radius:14px;color:white;background:#091b27;font-weight:800}#broom-info{min-height:40px;padding:9px 2px;color:#a9c4cf;font-size:12px}button{width:100%;border:1px solid #345260;border-radius:15px;padding:14px 12px;color:#eefdff;background:#0c202c;font-weight:900;letter-spacing:.055em;margin-top:8px}.primary{border-color:#75e9ff;background:linear-gradient(135deg,#24bfd9,#117b9b);color:#001018;box-shadow:0 8px 28px #10c9e94b}.record{display:flex;justify-content:space-between;margin-top:14px;color:#759baa;font-size:11px;letter-spacing:.08em}.record b{color:white}.controls{font-size:11px;line-height:1.45;color:#6f8c98;margin:14px 0 0}.modal{top:50%;bottom:auto;transform:translateY(-50%);text-align:center}.modal p{color:#a9c0cb;line-height:1.5}.modal a{display:block;color:#86c9da;text-decoration:none;padding:15px}.close{position:absolute;right:12px;top:8px;width:40px;border:0;background:transparent;font-size:25px;margin:0}.result{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:17px 0}.result span{background:#071823;border:1px solid #284857;border-radius:15px;padding:13px;font-size:10px;color:#82aabb;letter-spacing:.14em}.result b{display:block;font-size:26px;color:white;margin-top:5px}#countdown{position:absolute;z-index:20;inset:0;display:grid;place-items:center;font-size:110px;font-weight:1000;font-style:italic;text-shadow:0 0 40px #59e7ff;color:white;background:#03080c44}#swipe-hint{position:absolute;z-index:6;left:50%;bottom:32px;transform:translateX(-50%);white-space:nowrap;color:#d9f8ff;background:#041019bb;border:1px solid #2d7186;border-radius:999px;padding:10px 16px;font-size:11px;font-weight:800;letter-spacing:.1em;animation:hint 1.4s ease-in-out infinite}@keyframes hint{50%{transform:translateX(-50%) translateY(-5px);box-shadow:0 0 24px #34ddff44}}@media(min-width:521px){body{background:#000b10}#app{box-shadow:0 0 100px #000}}[hidden]{display:none!important}
/* Flight Flow: readable, non-interactive reward feedback and instrument panels. */
#pickup-receipt{position:absolute;z-index:12;left:50%;top:38%;transform:translateX(-50%);pointer-events:none;white-space:nowrap;padding:9px 16px;border:1px solid #ffcf6890;border-radius:100px;background:linear-gradient(120deg,#181b25ed,#292312e8);color:#ffe0a0;font:800 12px/1.3 system-ui;letter-spacing:.08em;box-shadow:0 6px 24px #0006,0 0 22px #ffc45b18;text-shadow:0 1px 4px #000}
#pickup-receipt[hidden]{display:none}
#hud{font-variant-numeric:tabular-nums;text-shadow:0 2px 7px #000}
#hud>div{background:linear-gradient(145deg,#081c2ee8,#091019d9);border-color:#7dd8f947;box-shadow:inset 0 1px 0 #cdf3ff16,0 8px 25px #0004}
#signal-rush.active{box-shadow:0 0 24px #75dfff40;border-color:#a2eeff}
@media(max-width:600px){#pickup-receipt{top:35%;font-size:10px;padding:7px 11px}}
.hydra-link{display:block!important;margin:8px 0 2px;padding:9px 11px;border:1px solid #796eff;border-radius:10px;background:linear-gradient(110deg,#172f4f,#2a164b);color:#b9f5ff!important;box-shadow:0 0 25px #7d6cff25}

/* Keep the game fitted to the phone's real visual viewport without stretching. */
html,body{min-height:100dvh}
#app{height:100vh;height:100dvh}
#game{display:block}

/* Expensive live blurs cause severe frame drops on mobile GPUs. */
.low-power #hud div,.low-power .panel,.low-power .rush-action,.low-power #run-goal,.low-power #rush-notice,.low-power .altitude-3d,.low-power .look-3d,.low-power #camera-view,.low-power #music-toggle{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.quality-note{display:block;margin:6px 2px 0;color:#78949f;font-size:9px;line-height:1.35;letter-spacing:0;text-transform:none}
html[data-rush-quality="low"] .vignette{background:linear-gradient(180deg,#01040922,transparent 40%,#01030855),radial-gradient(ellipse at center,transparent 52%,#0006)}

/* Wersja 397: pełnoekranowy ekran ładowania z grafiką stworzoną dla Broom Rush. */
html.rush-boot body #rush-boot-screen{background:linear-gradient(180deg,#02050a55,#010205d9),url('./assets/broom-rush-loading-v1.webp') center 48%/cover no-repeat!important}
html.rush-boot body #rush-boot-screen>div{width:min(390px,86vw)!important;padding:25px 20px!important;border:1px solid #c8d5da88!important;border-radius:22px!important;background:linear-gradient(160deg,#07090bd9,#020304e8)!important;box-shadow:0 24px 80px #000f,inset 0 1px #fff2,0 0 30px #63ccec24!important;backdrop-filter:blur(10px)}
html.rush-boot body #rush-boot-screen strong{font-size:0!important}html.rush-boot body #rush-boot-screen strong:after{content:'BROOM RUSH';display:block;font-size:27px;letter-spacing:.13em;color:#fff;text-shadow:0 4px 16px #000}
html.rush-boot body #rush-boot-screen span{color:#d8e7ec!important}html.rush-boot body #rush-boot-screen b{color:#f0cc7b!important}html.rush-boot body #rush-boot-screen i{border-color:#cbd8dd88!important;background:#020405cc!important}html.rush-boot body #rush-boot-screen i:after{background:linear-gradient(90deg,#79dff0,#f0c973)!important}

/* Wersja 412: realistyczne tło lobby oraz prostszy, profesjonalny układ. */
#app:has(#menu:not([hidden]))::before{content:'';position:absolute;z-index:1;inset:0;pointer-events:none;background:linear-gradient(180deg,#02040722 0%,#02040773 40%,#020304dc 100%),url('./assets/menu-night-street-v1.webp') center 52%/cover no-repeat}
#app:has(#menu:not([hidden])) #game{opacity:.16!important;filter:saturate(.55) brightness(.56)}
#app:has(#menu:not([hidden])) .vignette{z-index:2;background:linear-gradient(90deg,#0008,transparent 36%,transparent 64%,#0008),linear-gradient(180deg,#01020218 30%,#010202c4)}
#menu#menu{z-index:10!important;top:max(12px,env(safe-area-inset-top))!important;bottom:max(12px,env(safe-area-inset-bottom))!important;max-height:none!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain!important;padding:20px!important;border:1px solid #d0d8d955!important;border-radius:24px!important;background:linear-gradient(145deg,#11171bd9 0%,#080b0edf 62%,#020304e8 100%)!important;box-shadow:0 28px 88px #000e,inset 0 1px #ffffff1c,inset 0 0 0 1px #0008!important;backdrop-filter:blur(5px)!important}
#menu#menu:before{opacity:.18!important;background-image:linear-gradient(#d5e1e40a 1px,transparent 1px),linear-gradient(90deg,#d5e1e40a 1px,transparent 1px)!important;background-size:28px 28px!important}
#menu#menu .back{display:inline-flex!important;gap:7px;margin:0 7px 7px 0;padding:7px 9px;border:1px solid #a9b8bc37;border-radius:8px;background:#0507088a;color:#b8c8cc!important;font-size:9px!important;letter-spacing:.11em!important}
#menu#menu .rush-brand,#menu#menu .rush-brand-v2{margin:5px 0 16px!important;padding:0 0 15px!important;border:0!important;border-bottom:1px solid #d0d9dc2e!important;border-radius:0!important;background:none!important;box-shadow:none!important}
#menu#menu .rush-brand img,#menu#menu .rush-brand-v2 img{width:46px!important;height:46px!important;border-radius:10px!important;box-shadow:0 8px 18px #000c,0 0 0 1px #d9e8eb42!important}
#menu#menu .rush-brand b,#menu#menu .rush-brand-v2 b{font-size:15px!important;letter-spacing:.18em!important;color:#eff4f5!important}#menu#menu .rush-brand small,#menu#menu .rush-brand-v2 small{color:#9eafb4!important;letter-spacing:.15em!important}
#menu#menu .eyebrow{margin:0 0 7px!important;color:#89cce0!important;font-size:9px!important;letter-spacing:.2em!important}
#menu#menu h1{max-width:9ch!important;margin:0!important;color:#f5f7f7!important;font-size:clamp(35px,9.2vw,50px)!important;line-height:.88!important;letter-spacing:-.06em!important;text-shadow:0 7px 22px #000!important}#menu#menu h1 span{color:#d8b576!important;-webkit-text-fill-color:#d8b576!important}
#menu#menu .lead{max-width:41ch!important;margin:14px 0 18px!important;padding:0!important;border:0!important;background:none!important;box-shadow:none!important;color:#bbc6c9!important;font-size:13px!important;line-height:1.52!important}
#menu#menu #profile-picker,#menu#menu #skin-preview,#menu#menu #broom-info,#menu#menu .vehicle-garage,#menu#menu .environment-panel,#menu#menu .advanced-options,#menu#menu .record{border:1px solid #b5c1c43d!important;border-radius:13px!important;background:linear-gradient(145deg,#151b1edb,#060809e8)!important;box-shadow:inset 0 1px #fff1,0 8px 18px #0005!important}
#menu#menu .select-label{color:#9eb3ba!important;font-size:9px!important;letter-spacing:.16em!important}#menu#menu select,#menu#menu input{min-height:45px!important;border:1px solid #adbbbf50!important;border-radius:10px!important;background:#050708e8!important;color:#eff3f4!important}
#menu#menu #start{min-height:62px!important;margin-top:16px!important;border:1px solid #fff0c5!important;border-radius:13px!important;background:linear-gradient(105deg,#a97335,#efd28f 48%,#95612f)!important;color:#17110a!important;font-size:16px!important;letter-spacing:.12em!important;text-shadow:0 1px #fff9!important;box-shadow:inset 0 1px #fff9,0 12px 24px #0009!important}
#menu#menu button:not(#start),#menu#menu a.download-game{min-height:46px!important;border:1px solid #b0bdc04a!important;border-radius:11px!important;background:linear-gradient(180deg,#1b2226e8,#0a0d0fe9)!important;color:#e8eeef!important;font-size:11px!important;box-shadow:inset 0 1px #fff1,0 6px 14px #0006!important}
#menu#menu .controls{margin:14px 0 0!important;padding:10px 0 0!important;border-top:1px solid #d2e0e022!important;color:#9aa9ae!important;font-size:10px!important;line-height:1.5!important}#menu#menu .record{margin-top:12px!important;padding:11px!important;color:#9caeb3!important}#menu#menu .record b{color:#f1d094!important}
.install-featured{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:12px!important;width:100%!important;min-height:64px!important;margin:2px 0 14px!important;padding:8px 12px!important;border:1px solid #47d7f0!important;border-radius:16px!important;background:#071820!important;color:#fff!important;text-align:left!important;box-shadow:0 9px 28px #000b,0 0 22px #20cbed28!important}.install-featured img{width:46px;height:46px;border-radius:12px;flex:0 0 auto}.install-featured span{display:grid;gap:3px}.install-featured b{font-size:13px;letter-spacing:.06em}.install-featured small{color:#79e9ff;font-size:9px;letter-spacing:.12em}
@media(max-width:520px){#menu#menu{left:8px!important;right:8px!important;padding:16px 14px 20px!important;border-radius:20px!important}#menu#menu .rush-brand img,#menu#menu .rush-brand-v2 img{width:41px!important;height:41px!important}#menu#menu h1{font-size:38px!important}#menu#menu .lead{font-size:12px!important}#menu#menu #start{min-height:58px!important;font-size:14px!important}}

/* Pomoc po realnym przekroczeniu czasu ładowania. */
.boot-recovery{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:17px auto 0;width:min(310px,100%)}
.boot-recovery button{min-height:41px;padding:8px;border:1px solid #b8cad080;border-radius:10px;background:#10191de8;color:#f2f7f8;font:800 10px/1.15 Inter,system-ui,sans-serif;letter-spacing:.06em}.boot-recovery button:last-child{border-color:#eed69b99;background:linear-gradient(135deg,#785629,#b68a45);color:#171108}
#lemon-reward{display:block;margin:14px 0 12px;padding:13px;border:2px solid #f2d452b8;border-radius:16px;background:radial-gradient(circle at 0 0,#ffe55d30,transparent 48%),linear-gradient(145deg,#17170b,#080d12);color:#edf3f4;box-shadow:0 10px 28px #0009,0 0 22px #f2d4521f}
#lemon-reward[hidden]{display:none!important}
#lemon-reward>div{display:flex;align-items:center;gap:11px}
#lemon-reward img{width:68px;height:68px;object-fit:cover;border-radius:50%;border:2px solid #f4d631;background:#050505}
#lemon-reward span{display:grid;gap:3px}
#lemon-reward small{color:#f2d75f;font-size:8px;letter-spacing:.11em}
#lemon-reward strong{font-size:12px;letter-spacing:.04em}
#lemon-reward b{color:#a8dfff;font-size:9px}
#lemon-reward p{margin:9px 0;color:#c0cdd1;font-size:10px;line-height:1.45}
#lemon-reward label{display:flex;align-items:center;gap:8px;padding:10px;border:1px solid #f2d45255;border-radius:10px;background:#171b17;color:#fff;font:850 10px system-ui;letter-spacing:.06em}
#lemon-reward input{width:19px!important;height:19px!important;margin:0!important;accent-color:#e5c82d}
@media(min-width:900px) and (pointer:fine){#app{width:100vw!important;max-width:none!important;height:100vh!important}#menu#menu{left:34px!important;right:auto!important;top:28px!important;bottom:28px!important;width:440px!important;max-width:440px!important;padding:22px!important}#menu #start{min-height:72px!important;font-size:19px!important}.desktop-controls-427{display:block!important}}
.desktop-controls-427{display:none;position:absolute;z-index:8;left:50%;bottom:18px;transform:translateX(-50%);padding:10px 15px;border:1px solid #9bb2ba66;border-radius:12px;background:#03070bd9;color:#e3ecef;font:800 11px/1.35 system-ui;letter-spacing:.06em;pointer-events:none;box-shadow:0 8px 25px #0009}
.lemon-invite-hero{position:relative;margin:10px 0;overflow:hidden;border:1px solid #f2d45270;border-radius:12px;background:#050505;box-shadow:0 8px 22px #0009}
#lemon-reward .lemon-invite-hero>img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border:0;border-radius:0;background:#050505}
.lemon-invite-hero figcaption{position:absolute;inset:auto 0 0;padding:22px 10px 8px;background:linear-gradient(transparent,#020304e8);display:grid;gap:2px}
.lemon-invite-hero figcaption strong{font-size:10px;letter-spacing:.08em}.lemon-invite-hero figcaption span{font-size:9px;color:#d7e0e2}
#menu#menu #lemon-invite{min-height:43px!important;margin-top:8px!important;border-color:#f1d35c8a!important;background:linear-gradient(105deg,#5f4d13,#ba9829)!important;color:#fffbdc!important}

/* Wersja 429: pełnoekranowe menu gry — zwarte, konsolowe i bez wyglądu strony WWW. */
@media(max-width:899px){
  #app:has(#menu:not([hidden]))::before{background:linear-gradient(180deg,#02060b38 0%,#03070be8 76%,#030509 100%),url('./assets/menu-night-street-v1.webp') center/cover no-repeat}
  #menu#menu{inset:0!important;width:100%!important;max-width:none!important;padding:max(14px,env(safe-area-inset-top)) 16px calc(28px + env(safe-area-inset-bottom))!important;border:0!important;border-radius:0!important;background:linear-gradient(180deg,#05090d85 0%,#05090deb 48%,#030507fa 100%)!important;box-shadow:none!important;backdrop-filter:none!important}
  #menu#menu .back{min-height:31px!important;margin:0 5px 8px 0!important;padding:6px 9px!important;border-radius:999px!important;background:#071017c7!important;font-size:8px!important}
  #menu#menu .eyebrow{margin-top:8px!important;color:#9db4bd!important}
  #menu#menu h1{max-width:none!important;font-size:34px!important;line-height:1!important;letter-spacing:.02em!important;font-style:normal!important}
  #menu#menu h1 span{color:#e8c978!important;-webkit-text-fill-color:#e8c978!important}
  #menu#menu .lead{margin:8px 0 11px!important;max-width:48ch!important;font-size:11px!important;line-height:1.35!important;color:#aab8bd!important}
  #menu#menu .menu-tabs{position:sticky!important;top:-1px!important;z-index:20!important;margin:8px 0 12px!important;padding:4px!important;border:1px solid #8197a245!important;border-radius:15px!important;background:#05090df2!important;box-shadow:0 10px 28px #000b!important}
  #menu#menu .menu-tabs button{min-height:42px!important;border-radius:11px!important;font-size:11px!important;letter-spacing:.02em!important}
  #menu#menu .menu-tabs button[aria-pressed="true"]{background:linear-gradient(135deg,#233947,#17232b)!important;color:#fff4d1!important;box-shadow:inset 0 0 0 1px #d9bf7e66!important}
  #menu#menu #profile-picker,#menu#menu #skin-preview,#menu#menu #broom-info,#menu#menu .vehicle-garage,#menu#menu .environment-panel,#menu#menu .advanced-options,#menu#menu .record,#lemon-reward{border-radius:15px!important;background:linear-gradient(145deg,#101820ee,#070a0df2)!important}
  #menu#menu #start{position:sticky!important;bottom:0!important;z-index:18!important;min-height:58px!important;margin-top:12px!important;box-shadow:0 -12px 28px #030507,0 10px 25px #000b!important}
  #menu#menu[data-page="garage"] #start,#menu#menu[data-page="settings"] #start{display:none!important}
  #lemon-reward{padding:11px!important}#lemon-reward .lemon-invite-hero{max-height:155px}#lemon-reward .lemon-invite-hero>img{max-height:155px}
}
