@import "https://fonts.googleapis.com/css2?family=Atkinson+Hyperlegible:wght@400;700&family=Bricolage+Grotesque:wght@500;700&display=swap";:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#18201b;--surface:#fffaf0;--surface-strong:#fff2cb;--ink:#18201b;--muted:#586458;--leaf:#2d6f57;--leaf-dark:#184e42;--heat:#d95d39;--water:#257ca3;--sun:#f1b84b;--line:#d8cfbd;--shadow:0 18px 45px #222c2624;--water-a10:#257ca31a;--leaf-a08:#2d6f5714;--ink-a35:#18201b59;--ink-a45:#00000073;background:#f4f0e5;font-family:Atkinson Hyperlegible,sans-serif}*{box-sizing:border-box}html,body{height:100%;overflow:hidden}body{background:radial-gradient(circle at 18% 20%,#f1b84b3d,#0000 34%),linear-gradient(135deg,#f7f0dc 0%,#e7f0dc 46%,#d6ebed 100%);min-width:320px;margin:0}#root{height:100%}button,input,select{font:inherit}button{cursor:pointer;border:0;border-radius:8px}button:disabled{cursor:not-allowed;opacity:.55}.app-shell{width:100vw;height:100dvh;padding:0;position:relative;overflow:hidden}.fullscreen-stage{position:absolute;inset:0;overflow:hidden}.scroll-panel{padding:24px 16px 96px;position:absolute;inset:0;overflow-y:auto}.game-content-panel{padding-top:96px}@media (width<=640px){.game-content-panel{padding-top:200px}}.settings-fab{z-index:900;min-width:44px;min-height:44px;padding:8px 14px;position:fixed;top:16px;right:16px}.end-run-fab{z-index:900;border-radius:50%;width:44px;min-width:44px;height:44px;min-height:44px;padding:0;font-size:1.1rem;position:fixed;top:16px;right:68px}.mute-fab{z-index:900;min-width:44px;min-height:44px;padding:8px 14px;font-size:1.2rem;position:fixed;top:68px;right:16px}@media (width<=560px){.welcome-banner span{display:none}}.panel{border:1px solid var(--line);box-shadow:var(--shadow);background:#fffaf0e0;border-radius:14px}.primary-button,.secondary-button,.danger-button{border-radius:10px;min-height:44px;padding:10px 16px;font-weight:700;transition:transform .15s,box-shadow .15s,filter .15s}.primary-button:hover:not(:disabled),.secondary-button:hover:not(:disabled),.danger-button:hover:not(:disabled){filter:brightness(1.04);transform:translateY(-1px);box-shadow:0 6px 16px #222c262e}.primary-button:active:not(:disabled),.secondary-button:active:not(:disabled),.danger-button:active:not(:disabled){box-shadow:none;filter:brightness(.98);transform:translateY(0)scale(.97)}.primary-button{background:linear-gradient(135deg, var(--leaf), var(--leaf-dark));color:#fff}.secondary-button{background:var(--surface-strong);color:var(--ink);border:1px solid var(--line)}.danger-button{background:var(--heat);color:#fff}.stuttgart-map-shell{position:absolute;inset:0}.stuttgart-map{background:var(--surface-strong);position:absolute;inset:0;overflow:hidden}.stuttgart-map-image{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.area-marker-progress{background:#18201b2e;border-radius:4px;width:44px;height:6px;overflow:hidden}.area-marker-progress-fill{background:var(--leaf);border-radius:4px;height:100%;transition:width .2s}.area-marker-progress-fill[data-complete=true]{background:var(--sun)}.intro-unavailable{z-index:850;flex-direction:column;align-items:stretch;gap:12px;width:min(360px,100% - 32px);padding:16px;display:flex;position:fixed;bottom:20px;left:50%;transform:translate(-50%)}.progress-bar-track{background:#18201b1f;border-radius:6px;width:100%;height:10px;overflow:hidden}.progress-bar-fill{background:var(--leaf);border-radius:6px;height:100%;transition:width .2s}.progress-bar-fill[data-complete=true]{background:var(--sun)}.marker-complete-badge{background:var(--leaf);color:#fff;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:.7rem;font-weight:700;display:flex;position:absolute;top:-4px;right:-4px}.map-marker-button{transition:transform .15s,filter .15s;animation:.4s ease-out backwards marker-pop;transform:translate(-50%,-50%)}.map-marker-button:hover{filter:brightness(1.05);transform:translate(-50%,-50%)scale(1.06)}.map-marker-button:active{transform:translate(-50%,-50%)scale(.96)}.challenge-type-badge{background:var(--surface-strong);border:1px solid var(--line);color:var(--leaf-dark);text-transform:uppercase;letter-spacing:.02em;border-radius:999px;align-items:center;gap:6px;padding:4px 12px;font-size:.78rem;font-weight:700;display:inline-flex}.choice-tile{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:10px;padding:14px 18px;transition:transform .15s,box-shadow .15s,border-color .15s,background .15s}.choice-tile:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #222c261f}.choice-tile:active:not(:disabled){transform:translateY(0)scale(.98)}.choice-tile[data-selected=true]{background:var(--surface-strong);border:2px solid var(--leaf);font-weight:700;box-shadow:0 2px 8px #2d6f5726}.choice-tile[data-pending=true]{background:var(--surface-strong);border:2px dashed var(--sun)}.game-hud{z-index:850;pointer-events:none;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex;position:fixed;top:16px;left:16px;right:76px}.game-hud>*{pointer-events:auto}.dialog-close-button{border:1px solid var(--line);background:var(--surface-strong);width:36px;min-width:36px;height:36px;min-height:36px;color:var(--ink);z-index:1;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:transform .15s,filter .15s;display:flex}.dialog-close-button:hover{filter:brightness(1.04);transform:scale(1.05)}.intro-language-picker{z-index:900;gap:6px;display:flex;position:fixed;bottom:16px;left:16px}.intro-language-picker button{opacity:.5;filter:grayscale(.85);border:2px solid #0000;border-radius:7px;width:32px;height:32px;padding:0;transition:opacity .15s,filter .15s,transform .15s,border-color .15s;overflow:hidden;transform:scale(.92)}.intro-language-picker button[aria-pressed=true]{opacity:1;filter:none;border-color:var(--sun);transform:scale(1.05);box-shadow:0 0 0 3px #f1b84b59}.intro-language-picker img{object-fit:cover;width:100%;height:100%;display:block}.reset-confirmation h3,.reset-confirmation p{margin:0 0 10px}.reset-actions{justify-content:flex-end;gap:10px;display:flex}@media (width<=720px){.app-shell{padding:0}}@media (width<=640px){.settings-fab,.end-run-fab{top:auto;bottom:16px}.mute-fab{top:auto;bottom:68px}}@media (width<=420px){.settings-fab,.mute-fab{padding:6px 10px}.intro-language-picker button{width:28px;height:28px}}@keyframes welcome-sun-pulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:.65;transform:scale(1.06)}}.welcome-sun-motif{animation:6s ease-in-out infinite welcome-sun-pulse}@keyframes onboarding-card-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.onboarding-card-anim{animation:.35s ease-out onboarding-card-enter}@keyframes modal-scrim-fade{0%{opacity:0}to{opacity:1}}.modal-scrim-anim{animation:.2s ease-out modal-scrim-fade}@keyframes modal-pop-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.modal-pop-anim{animation:.22s ease-out modal-pop-in}@keyframes result-badge-pop{0%{opacity:0;transform:scale(.4)}70%{opacity:1;transform:scale(1.15)}to{transform:scale(1)}}.result-badge-anim{animation:.45s cubic-bezier(.34,1.56,.64,1) result-badge-pop}@keyframes result-delta-fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.result-delta-anim{animation:.35s ease-out .2s backwards result-delta-fade}@keyframes callout-expand{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.callout-anim{animation:.2s ease-out callout-expand}@keyframes marker-pop{0%{opacity:0;transform:translate(-50%,-50%)scale(.4)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes leaderboard-row-in{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.leaderboard-row-anim{animation:.3s ease-out backwards leaderboard-row-in}@keyframes blank-fill-pop{0%{transform:scale(1)}40%{transform:scale(1.12)}to{transform:scale(1)}}.blank-fill-pop{animation:.35s cubic-bezier(.34,1.56,.64,1) blank-fill-pop}@keyframes match-line-pulse{0%{stroke-width:3px;opacity:.6}40%{stroke-width:6px;opacity:1}to{stroke-width:3px;opacity:1}}.match-line-pulse{animation:.55s ease-out match-line-pulse}@keyframes match-flash{0%,to{box-shadow:0 2px 8px #2d6f5726}40%{box-shadow:0 0 0 6px var(--water-a10)}}.match-flash-anim{animation:.55s ease-out match-flash}@keyframes screen-transition-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.screen-transition{animation:.3s ease-out screen-transition-in}@media (prefers-reduced-motion:reduce){.welcome-sun-motif,.onboarding-card-anim,.modal-scrim-anim,.modal-pop-anim,.result-badge-anim,.result-delta-anim,.callout-anim,.map-marker-button,.leaderboard-row-anim,.blank-fill-pop,.match-line-pulse,.match-flash-anim,.screen-transition{animation:none}.primary-button,.secondary-button,.danger-button,.map-marker-button,.choice-tile{transition:none}}
