:is(#screen-menu h1.title,#screen-loading h1.title){flex-shrink:1;min-width:0;max-width:100%;min-height:100px;position:relative;color:#0000!important;width:min(72vw,340px)!important;height:min(24svh,200px)!important;text-shadow:none!important;background:url(./logo-C9VtkpPe.webp) 50%/contain no-repeat!important;margin:0 auto 12px!important;padding:0!important;font-size:0!important;line-height:0!important;animation:none!important;transform:none!important}:is(#screen-menu h1.title,#screen-loading h1.title)>*{pointer-events:none;opacity:0!important;position:absolute!important}:root{--ink:#3b2a20;--ink-soft:#6b5546;--cream:#fff8ec;--paper:#fffdf8;--orange:#e2475e;--orange-d:#b02a42;--teal:#2e5aa8;--teal-d:#24356b;--yellow:#ffd23f;--red:#e63946;--shadow:0 6px 0 #3b2a2038, 0 14px 30px #3b2a202e;--font:"Trebuchet MS", "Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;--safe-t:env(safe-area-inset-top,0px);--safe-b:env(safe-area-inset-bottom,0px);--safe-l:env(safe-area-inset-left,0px);--safe-r:env(safe-area-inset-right,0px)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{height:100%;color:var(--ink);font-family:var(--font);overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:#ffe2c8;margin:0;overflow:hidden}#app{height:100vh;height:100dvh;position:fixed;inset:0;overflow:hidden}#stage{touch-action:none;position:absolute;inset:0}#gl{touch-action:none;outline:none;width:100%;height:100%;display:block}.hidden{display:none!important}.screen{padding:calc(16px + var(--safe-t)) calc(16px + var(--safe-r)) calc(16px + var(--safe-b)) calc(16px + var(--safe-l));z-index:20;touch-action:pan-y;justify-content:center;align-items:center;display:flex;position:absolute;inset:0;overflow-y:auto}.screen.center{text-align:center;background:radial-gradient(circle at 50% 35%,#fff6ea 0%,#f7d6cf 55%,#8f9ad0 100%);flex-direction:column}#screen-menu{background:linear-gradient(#fff8ec00 30%,#ffeed68c 100%);align-items:flex-end}#screen-pause,#screen-result,#screen-rats,#screen-howto,#screen-settings{-webkit-backdrop-filter:blur(3px);background:#3b2a2061}.title{letter-spacing:-.5px;color:var(--orange);text-shadow:0 3px #fff,0 6px #3b2a2040;-webkit-text-stroke:1px #3b2a2026;margin:0;font-size:clamp(34px,9vw,58px);font-weight:900;line-height:.98}.title.small{margin-top:14px;font-size:clamp(30px,8vw,44px)}.subtitle{color:var(--teal-d);margin:8px 0 18px;font-size:18px;font-style:italic;font-weight:700}.menu-card{text-align:center;width:min(420px,100%);box-shadow:var(--shadow);background:#fffdf8e6;border:3px solid #fff;border-radius:28px;padding:22px 20px 18px}.menu-buttons{gap:10px;display:grid}.menu-stats{grid-template-columns:1fr 1fr;gap:10px;margin-top:16px;display:grid}.menu-stats div{background:var(--cream);color:var(--ink-soft);border-radius:16px;flex-direction:column;padding:8px;font-size:13px;display:flex}.menu-stats b{color:var(--ink);font-size:22px}.panel{background:var(--paper);width:min(480px,100%);max-height:100%;box-shadow:var(--shadow);border:3px solid #fff;border-radius:26px;flex-direction:column;gap:10px;padding:18px 18px 16px;display:flex;overflow-y:auto}.panel.narrow{width:min(360px,100%)}.panel header{justify-content:space-between;align-items:center;gap:8px;display:flex}.panel h2{color:var(--orange-d);margin:0;font-size:26px;font-weight:900}.panel h3{color:var(--teal-d);margin:8px 0 0;font-size:17px}.btn{min-height:48px;font:inherit;color:var(--ink);cursor:pointer;touch-action:manipulation;background:#fff;border:none;border-radius:16px;padding:10px 18px;font-size:18px;font-weight:800;transition:transform 80ms,box-shadow 80ms,filter .15s;box-shadow:0 4px #e4d6c3,0 6px 14px #3b2a201f}.btn:hover{filter:brightness(1.03)}.btn:active{transform:translateY(3px);box-shadow:0 1px #e4d6c3}.btn:focus-visible,.icon-btn:focus-visible,.link-btn:focus-visible{outline:3px solid var(--teal);outline-offset:2px}.btn.primary{color:#fff;background:linear-gradient(180deg, #f2687c, var(--orange));box-shadow:0 4px 0 var(--orange-d), 0 8px 16px #b02a4259;text-shadow:0 1px #00000026}.btn.primary:active{box-shadow:0 1px 0 var(--orange-d)}.btn.big{min-height:58px;font-size:23px}.btn:disabled{opacity:.55;cursor:default;transform:none}.icon-btn{cursor:pointer;touch-action:manipulation;background:#ffffffeb;border:none;border-radius:14px;place-items:center;width:48px;height:48px;display:grid;box-shadow:0 3px #3b2a2033}.pause-ico{border-left:5px solid var(--ink);border-right:5px solid var(--ink);width:16px;height:18px}.link-btn{font:inherit;color:var(--ink-soft);cursor:pointer;background:0 0;border:none;min-width:44px;min-height:44px;font-size:13px;text-decoration:underline}#hud{pointer-events:none;z-index:10;position:absolute;inset:0}#hud button,#hud .dpad{pointer-events:auto}.hud-top{top:calc(10px + var(--safe-t));left:calc(12px + var(--safe-l));right:calc(12px + var(--safe-r));justify-content:space-between;align-items:flex-start;display:flex;position:absolute}.score{color:#fff;text-shadow:0 3px #3b2a2073,0 0 12px #3b2a2033;font-size:48px;font-weight:900;line-height:1}.hud-sub{color:#fff;text-shadow:0 1px 2px #3b2a2099;font-size:14px;font-weight:700}.hud-right{align-items:center;gap:8px;display:flex}.cheese-pill{background:#ffffffeb;border-radius:999px;align-items:center;gap:6px;padding:6px 12px 6px 8px;font-size:18px;font-weight:900;display:inline-flex;box-shadow:0 3px #3b2a202e}.cheese-ico{clip-path:polygon(0 100%,100% 100%,100% 20%);vertical-align:middle;background:radial-gradient(circle at 30% 62%,#e0a020 0 2.4px,#0000 2.6px),radial-gradient(circle at 62% 72%,#e0a020 0 2px,#0000 2.2px),radial-gradient(circle at 70% 45%,#e0a020 0 1.6px,#0000 1.8px),#ffd23f;border-bottom:3px solid #f2a705;width:22px;height:16px;display:inline-block;position:relative}.banner{left:50%;top:calc(84px + var(--safe-t));background:var(--yellow);color:var(--ink);white-space:nowrap;border-radius:16px;padding:10px 18px;font-size:17px;font-weight:900;animation:.5s ease-in-out infinite alternate wobble;position:absolute;transform:translate(-50%);box-shadow:0 4px #3b2a2040}@keyframes wobble{0%{transform:translate(-50%)rotate(-2deg)}to{transform:translate(-50%)rotate(2deg)}}.tram-warn{left:calc(6px + var(--safe-l));background:var(--red);color:#fff;border-radius:12px;align-items:center;gap:4px;padding:6px 10px;font-size:13px;font-weight:900;animation:.25s steps(2,end) infinite blink;display:flex;position:absolute;transform:translateY(-50%);box-shadow:0 3px #00000040}.tram-warn.right{left:auto;right:calc(6px + var(--safe-r))}.tram-warn i{letter-spacing:1px;font-style:normal}@keyframes blink{50%{filter:brightness(1.35)}}.tutorial{left:50%;bottom:calc(26px + var(--safe-b));width:min(420px,100% - 32px);box-shadow:var(--shadow);text-align:center;pointer-events:auto;background:#fffdf8f2;border-radius:18px;padding:12px 14px 4px;font-size:17px;font-weight:800;position:absolute;transform:translate(-50%)}.dpad{right:calc(14px + var(--safe-r));bottom:calc(16px + var(--safe-b));grid-template-rows:repeat(2,56px);grid-template-columns:repeat(3,56px);gap:6px;display:grid;position:absolute}.dpad button{color:var(--ink);touch-action:none;background:#ffffffd9;border:none;border-radius:14px;font-size:22px;box-shadow:0 3px #3b2a2033}.dpad [data-dir=up]{grid-area:1/2}.dpad [data-dir=left]{grid-area:2/1}.dpad [data-dir=down]{grid-area:2/2}.dpad [data-dir=right]{grid-area:2/3}.has-dpad .tutorial{bottom:calc(150px + var(--safe-b))}#fx-layer{pointer-events:none;z-index:11;position:absolute;inset:0;overflow:hidden}.float-text{color:#fff;white-space:nowrap;text-shadow:0 2px 0 var(--orange-d), 0 0 8px #00000040;font-size:20px;font-weight:900;animation:.9s ease-out forwards floatUp;position:absolute;transform:translate(-50%,-50%)}.float-text.cheese{color:#fff6c9;text-shadow:0 2px #c98a00;font-size:18px}@keyframes floatUp{0%{opacity:0;transform:translate(-50%,-30%)scale(.7)}15%{opacity:1;transform:translate(-50%,-60%)scale(1.1)}to{opacity:0;transform:translate(-50%,-180%)scale(1)}}#toasts{left:50%;top:calc(130px + var(--safe-t));z-index:30;pointer-events:none;flex-direction:column;align-items:center;gap:6px;display:flex;position:absolute;transform:translate(-50%)}.toast{background:var(--teal);color:#fff;box-shadow:0 4px 0 var(--teal-d);white-space:nowrap;border-radius:14px;padding:8px 14px;font-weight:800;animation:2.6s forwards toastIn}@keyframes toastIn{0%{opacity:0;transform:translateY(-10px)}10%,85%{opacity:1;transform:none}to{opacity:0}}.rat-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;display:grid}.rat-card{background:var(--cream);text-align:center;border:3px solid #0000;border-radius:18px;flex-direction:column;align-items:center;gap:6px;padding:10px 8px 8px;display:flex;position:relative}.rat-card.selected{border-color:var(--teal);background:#e8f6f3}.rat-card .swatch{width:64px;height:52px;position:relative}.rat-card .swatch .face{background:var(--c1);box-shadow:inset 0 -7px 0 var(--c3);border-radius:50% 50% 46% 46%/55% 55% 45% 45%;position:absolute;inset:14px 8px 0}.rat-card .swatch .face:before,.rat-card .swatch .face:after{content:"";background:radial-gradient(circle, #f2a0b0 0 44%, var(--c1) 46%);border-radius:50%;width:22px;height:22px;position:absolute;top:-14px}.rat-card .swatch .face:before{left:-6px}.rat-card .swatch .face:after{right:-6px}.rat-card .swatch .stripe{background:var(--c2);z-index:1;border-radius:50%;width:10px;height:9px;margin-left:-5px;position:absolute;top:16px;left:50%}.rat-card .swatch .eyes{z-index:1;justify-content:space-between;height:8px;display:flex;position:absolute;top:28px;left:20px;right:20px}.rat-card .swatch .eyes:before,.rat-card .swatch .eyes:after{content:"";background:var(--eye,#1d1b20);border-radius:50%;width:7px;height:8px;box-shadow:inset 2px 2px 0 -1px #ffffffb3}.rat-card .swatch .nose{z-index:1;background:#e07a92;border-radius:50%;width:9px;height:7px;margin-left:-4.5px;position:absolute;bottom:6px;left:50%}.rat-card .swatch .beret{background:var(--red);z-index:2;border-radius:50%;width:30px;height:11px;position:absolute;top:2px;left:16px;transform:rotate(-14deg)}.rat-card .swatch .beret:after{content:"";background:var(--red);border-radius:2px;width:4px;height:5px;position:absolute;top:-3px;left:13px}.rat-card .name{font-size:15px;font-weight:800}.rat-card .btn{width:100%;min-height:44px;padding:6px 8px;font-size:15px}.rat-card.locked .swatch{filter:grayscale(.6)brightness(.9)}.ach-list,.ach-new,.howto{gap:6px;margin:0;padding:0;list-style:none;display:grid}.ach-list li{background:var(--cream);color:var(--ink-soft);border-radius:14px;align-items:center;gap:10px;padding:8px 10px;font-size:14px;display:flex}.ach-list li b{color:var(--ink);font-size:15px;display:block}.ach-list li .medal{color:#fff;background:#d9d0c3;border-radius:50%;flex:none;place-items:center;width:30px;height:30px;font-weight:900;display:grid}.ach-list li.done .medal{background:radial-gradient(circle at 35% 35%,#ffe680,#f2b705)}.howto li{background:var(--cream);border-radius:12px;padding:8px 12px;font-size:15px;line-height:1.35}.row{background:var(--cream);border-radius:14px;justify-content:space-between;align-items:center;gap:12px;min-height:46px;padding:4px 12px;font-weight:700;display:flex}.row input[type=range]{width:55%;accent-color:var(--orange);min-height:32px}.row input[type=checkbox]{width:26px;height:26px;accent-color:var(--teal)}.row select{font:inherit;background:#fff;border:2px solid #e4d6c3;border-radius:10px;min-height:40px;padding:8px 10px;font-size:15px}.note{color:var(--ink-soft);margin:0;font-size:13px}.result{text-align:center}.result-msg{color:var(--orange-d);margin:0;font-size:20px;font-weight:900;line-height:1.25}.result-score span{color:var(--ink-soft);font-size:14px;font-weight:700;display:block}.result-score b{font-size:64px;line-height:1}.record{color:#fff;text-shadow:0 1px #0003;background:linear-gradient(90deg,#ffd23f,#f2687c);border-radius:999px;align-self:center;padding:6px 16px;font-weight:900;animation:.6s cubic-bezier(.2,1.6,.4,1) pop}@keyframes pop{0%{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}.result-best{color:var(--ink-soft);font-size:14px}.result-row{background:var(--cream);border-radius:14px;justify-content:space-between;align-items:center;padding:8px 14px;font-weight:700;display:flex}.result-row b{font-size:20px}.ach-new li{color:var(--teal-d);background:#e8f6f3;border-radius:12px;padding:6px 10px;font-size:14px;font-weight:800}.status{color:var(--ink-soft);font-weight:700}.error{background:var(--paper);max-width:360px;box-shadow:var(--shadow);border-radius:18px;padding:14px}.error p{margin:0 0 12px;font-weight:700}.logo-rat{width:96px;height:84px;animation:1s ease-in-out infinite alternate bob;position:relative}.logo-rat:before{content:"";background:#9a9ca6;border-radius:50% 50% 44% 44%/56% 56% 44% 44%;position:absolute;inset:24px 14px 0;box-shadow:inset 0 -14px #d9d6d2}.logo-rat:after{content:"";background:radial-gradient(circle at 20px 20px,#f2a0b0 0 11px,#9a9ca6 12px 20px,#0000 21px),radial-gradient(circle at 76px 20px,#f2a0b0 0 11px,#9a9ca6 12px 20px,#0000 21px);height:40px;position:absolute;top:0;left:0;right:0}@keyframes bob{to{transform:translateY(-8px)}}@media (prefers-reduced-motion:reduce){.banner,.tram-warn,.logo-rat{animation:none}}.reduced-motion .banner,.reduced-motion .tram-warn,.reduced-motion .logo-rat{animation:none}@media (max-height:560px) and (orientation:landscape){#screen-menu{justify-content:flex-start;align-items:center}.menu-card{width:min(360px,100%);padding:14px}.title{font-size:30px}.subtitle{margin:4px 0 10px}.menu-buttons{grid-template-columns:1fr 1fr}.menu-buttons .big{grid-column:span 2}.btn.big{min-height:50px}.score{font-size:38px}}
