@font-face{font-family:CouacRound;src:local("Arial Rounded MT Bold");font-display:swap}
:root{font-family:"Trebuchet MS",Arial,sans-serif;color:#233e35;background:#b9cdb1;font-synthesis:none;--paper:#fffbea;--ink:#233e35;--orange:#ffc352;--purple:#7c4e99}
*{box-sizing:border-box}html,body,#game{width:100%;height:100%;margin:0;overflow:hidden}button{font:inherit;color:inherit;cursor:pointer;border:0}button:focus-visible{outline:3px solid #824c9b;outline-offset:4px}button:disabled{cursor:wait;opacity:.6}[hidden]{display:none!important}#world{width:100%;height:100%;display:block;outline:none;touch-action:none}#game{position:relative;isolation:isolate}button,kbd{user-select:none;-webkit-user-select:none}.hud{position:absolute;inset:24px 28px auto;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;z-index:6;pointer-events:none}.hud>*{pointer-events:auto}.score-board{background:var(--paper);border-radius:16px 16px 23px 16px;padding:13px 23px 13px 16px;display:flex;align-items:center;gap:16px;box-shadow:0 5px 0 #254a341b;min-width:160px}.eyebrow{display:block;font-size:12px;font-weight:bold;margin-bottom:0}.score-board strong{font-family:CouacRound,"Arial Rounded MT Bold",sans-serif;font-size:37px;line-height:1.05;font-variant-numeric:tabular-nums;letter-spacing:-1px}.tiny-duck{width:36px;height:29px;background:#ffcd60;color:#243e35;display:inline-flex;align-items:flex-start;justify-content:flex-end;position:relative;border-radius:65% 50% 60% 50%;font-size:11px;padding:3px 9px}.tiny-duck:after{content:"";position:absolute;right:-9px;top:10px;width:17px;height:8px;background:#ea863e;border-radius:50%}.combo{background:#8851ac;color:white;border-radius:50%;font-weight:900;padding:8px}.psyche-board{width:290px;padding:13px 19px;background:var(--paper);border-radius:13px 13px 20px 20px;box-shadow:0 5px 0 #254a341b}.meter-label{display:flex;align-items:center;justify-content:space-between;font-size:12px}.meter-label span{color:#7c4e99;font-weight:900}.meter{height:12px;margin-top:8px;border-radius:10px;background:#e7dfde;position:relative;overflow:hidden}#psyche-fill{height:100%;width:0%;background:#9462b1;border-radius:10px;transition:width .2s}.meter i{position:absolute;top:0;height:100%;width:2px;background:#fffbea;left:25%}.meter i:nth-of-type(2){left:50%}.meter i:nth-of-type(3){left:75%}.settings{display:flex;gap:7px}.settings button{background:#fffbeae8;padding:11px 12px;border-radius:10px;font-size:12px;font-weight:700;box-shadow:0 4px 0 #254a3413}.settings .pause{background:var(--ink);color:var(--paper)}.settings button:hover{transform:translateY(-2px)}.mission{position:absolute;top:134px;left:28px;background:#fffbeaee;width:238px;padding:15px 18px;border-radius:12px;z-index:3;box-shadow:0 4px 0 #254a3414}.level-label{font-size:10px;letter-spacing:1.2px;font-weight:bold;text-transform:uppercase;color:#75846c;display:block}.mission strong{display:block;font-size:17px;margin:5px 0 9px}.mission>div{font-size:10px}.mission-dot{padding:0 5px}.mission-track{height:5px;background:#dce5ca;margin:12px 37px 0 0;border-radius:3px;overflow:hidden}#mission-fill{height:100%;display:block;background:#568267;width:0%;transition:width .2s}#timer{position:absolute;right:16px;bottom:12px;font-size:12px;font-weight:bold;font-variant-numeric:tabular-nums}.overlay{position:absolute;inset:0;z-index:5}.intro{background:linear-gradient(90deg,#eef1dbe6 0%,#eef1dbdc 24%,#eef1db80 42%,transparent 65%);display:flex;align-items:center;padding:80px 7vw 32px}.intro-copy{position:relative;max-width:470px}.park-ticket{display:flex;gap:14px;align-items:center;font-weight:bold;font-size:12px;letter-spacing:.2px;margin:0 0 15px;color:#527653}.park-ticket>span:last-child{border-left:1px solid #96ae89;padding-left:12px}.ticket-wave{font-size:28px;line-height:.6}h1{font-family:CouacRound,"Arial Rounded MT Bold","Trebuchet MS",sans-serif;font-size:clamp(90px,10vw,160px);line-height:.9;letter-spacing:-9px;margin:0 0 22px;color:#2c5143;text-shadow:0 5px #ffffff4a;transform:rotate(-4deg);transform-origin:left bottom}h1 span{color:#e78c3e}.tagline{font-size:clamp(22px,2.35vw,33px);font-weight:900;line-height:1.08;margin:0 0 20px;letter-spacing:-1px}.intro-desc{font-size:15px;line-height:1.6;margin:0 0 23px;color:#4b6757}.main-button{font-family:CouacRound,"Trebuchet MS",sans-serif;background:var(--orange);padding:16px 26px;font-size:19px;font-weight:bold;border:2px solid #d7a043;border-radius:13px;box-shadow:0 5px 0 #b78332;transition:transform .14s,box-shadow .14s}.main-button:hover{transform:translateY(-2px);box-shadow:0 7px 0 #b78332}.main-button:active{transform:translateY(3px);box-shadow:0 2px 0 #b78332}.intro-controls{display:flex;flex-wrap:wrap;gap:9px 16px;margin-top:24px;font-size:11px}.intro-controls span{display:flex;gap:6px;align-items:center}kbd{font:600 10px "Trebuchet MS",sans-serif;background:#fffbeacc;border:1px solid #c4ccb8;border-bottom-width:2px;padding:3px 5px;border-radius:4px;color:#385345;white-space:nowrap}.fine-print{font-size:11px;color:#71836c;line-height:1.7;margin-top:15px}.intro-sticker{position:absolute;bottom:17%;right:9%;background:#ffe492;border:2px dashed #a68b41;outline:8px solid #ffe492;border-radius:50%;width:146px;height:146px;display:flex;align-items:center;justify-content:center;flex-direction:column;font-size:18px;font-weight:900;line-height:1.15;text-align:center;transform:rotate(12deg);box-shadow:8px 10px 0 #3552391a}.intro-sticker span{font-size:14px;margin-top:3px}.centered{background:#20483245;backdrop-filter:blur(5px);display:grid;place-items:center}.paper{background:var(--paper);padding:32px 42px;border-radius:24px;text-align:center;box-shadow:0 14px 0 #173e2c30;max-width:440px;width:calc(100% - 32px);transform:rotate(-1deg)}.paper-icon{display:block;font-size:40px;color:#d29334}.paper h2{font-family:CouacRound,"Trebuchet MS",sans-serif;font-size:38px;line-height:1.1;margin:15px 0}.paper p{font-size:14px;line-height:1.6;color:#647b65}.paper .main-button{width:100%;font-size:16px;margin:12px 0}.text-button{background:none;text-decoration:underline;text-underline-offset:4px;font-size:12px;display:block;margin:16px auto 0}.final-label{display:block;font-size:12px;color:#6c7b68;margin-bottom:20px}#final-score{font-family:CouacRound,sans-serif;font-size:70px;color:#9861b3}#controls{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);z-index:4;display:flex;flex-direction:column;align-items:center;gap:10px;white-space:nowrap}.key-guide{display:flex;gap:19px;background:#fffbeaeb;border-radius:8px;padding:10px 17px;font-size:11px;box-shadow:0 3px 0 #24453119}.key-guide span{display:flex;align-items:center;gap:5px}.targets{display:flex;gap:7px}.targets button{background:#fffbeaee;border:2px solid #fffbeaee;border-radius:10px;padding:8px 13px;font-weight:bold;font-size:12px;box-shadow:0 3px 0 #24453125}.targets button.selected{border-color:#d59437;background:#ffe092;transform:translateY(-2px)}.targets kbd{background:#ffffff50;border:0;padding:3px 5px;margin-right:4px}.targets small{display:inline-block;margin-left:7px;font-size:10px;opacity:.65}#toast{position:absolute;top:135px;left:50%;transform:translate(-50%,-15px);max-width:min(500px,85vw);padding:12px 22px;background:var(--paper);border-radius:12px;z-index:4;text-align:center;font-weight:bold;font-size:15px;opacity:0;transition:opacity .2s,transform .2s;pointer-events:none;box-shadow:0 4px 0 #24453125}#toast.show{opacity:1;transform:translate(-50%,0)}#target-prompt{position:absolute;left:50%;bottom:148px;transform:translateX(-50%);background:#233e35eb;color:#fffbea;padding:10px 18px;border-radius:30px;z-index:3;font-size:13px;text-align:center;box-shadow:0 3px 10px #233e3530;pointer-events:none}#target-prompt b{color:#ffcd60}#floaters{position:absolute;inset:0;pointer-events:none;z-index:3;overflow:hidden}.floater{position:absolute;font-weight:900;font-family:CouacRound,"Trebuchet MS",sans-serif;font-size:22px;color:#fff9df;white-space:nowrap;text-shadow:2px 2px 0 #385240,-1px -1px 0 #385240;transform:translate(-50%,-50%)}.floater.speech{font-family:"Trebuchet MS",sans-serif;background:#fffbea;color:#405c4b;text-shadow:none;font-size:13px;padding:9px 12px;border-radius:12px;box-shadow:0 3px 0 #29413022}.floater.speech:after{content:"";position:absolute;bottom:-6px;left:45%;border:7px solid transparent;border-top-color:#fffbea;border-bottom:0}.floater.big{font-size:50px;color:#ffed9c}#psychedelic{position:absolute;inset:0;z-index:2;pointer-events:none;opacity:0;overflow:hidden;transition:opacity 1.5s;mix-blend-mode:soft-light;background:radial-gradient(ellipse at center,transparent 25%,#8954e663 75%,#ed88b699 100%)}#psychedelic.active{opacity:.8}.halo{position:absolute;width:70vmax;height:70vmax;border-radius:48%;border:5vmax solid #b677ff88;top:50%;left:50%;animation:dream 12s linear infinite}.halo.a{margin:-40vmax 0 0 -38vmax}.halo.b{border-color:#4dfadb6e;margin:-26vmax 0 0 -36vmax;animation-direction:reverse;animation-duration:17s}.halo.c{border-color:#ffb57573;margin:-36vmax 0 0 -20vmax;animation-duration:21s}@keyframes dream{0%{transform:rotate(0) scale(.8)}50%{transform:rotate(180deg) scale(1.2)}100%{transform:rotate(360deg) scale(.8)}}body.gentle #psychedelic{display:none}body.gentle .halo{animation:none}body.paused .halo{animation-play-state:paused}#touch-controls{position:absolute;inset:auto 18px 24px;z-index:4;display:none;justify-content:space-between;align-items:flex-end;pointer-events:none}.dpad,.touch-actions{pointer-events:auto}.dpad{display:grid;grid-template-columns:repeat(3,44px);grid-template-rows:repeat(2,44px);gap:4px}.dpad button{background:#fffbeae8;border-radius:12px;font-size:24px;touch-action:none;box-shadow:0 3px 0 #233e3540}.dpad button:first-child{grid-column:2}.dpad button:nth-child(2){grid-column:1;grid-row:2}.dpad button:nth-child(3){grid-column:2;grid-row:2}.dpad button:nth-child(4){grid-column:3;grid-row:2}.touch-actions{display:flex;gap:8px}.touch-actions button{border-radius:50%;width:68px;height:68px;background:#fffbea;font-size:12px;font-weight:900;box-shadow:0 4px 0 #233e3540;touch-action:manipulation}#touch-pinch{background:#ffc352;width:82px;height:82px;font-size:16px}#load-error{background:#fffbea;padding:12px;color:#9a483c;font-size:13px}
@media(max-width:1000px){.hud{inset:16px}.settings{flex-wrap:wrap;max-width:180px;justify-content:flex-end}.settings button{font-size:10px;padding:9px}.psyche-board{width:248px}.intro{padding-left:6vw}.mission{left:16px;width:217px}.intro-sticker{right:8%;bottom:15%;width:120px;height:120px;font-size:16px}.intro-copy{max-width:430px}}
@media(pointer:coarse){#touch-controls:not([hidden]){display:flex}.key-guide{display:none}#controls{bottom:24px}.targets small{display:none}#target-prompt{bottom:135px}}
@media(max-width:650px){.hud{gap:8px;inset:12px}.score-board{padding:10px;min-width:96px;gap:8px}.score-board strong{font-size:27px}.tiny-duck{display:none}.eyebrow{font-size:10px}.psyche-board{width:190px;padding:10px 12px}.meter-label{font-size:10px}.settings{max-width:83px;gap:4px}.settings button{font-size:9px;padding:7px}.settings #effects{font-size:8px}.mission{top:115px;width:185px;padding:11px 12px}.mission strong{font-size:14px}.mission>div{font-size:9px}.mission-dot{padding:0 2px}.intro{padding:85px 25px 15px;background:linear-gradient(90deg,#eef1dbf2,#eef1dbb0 65%,#eef1db30)}h1{font-size:105px;letter-spacing:-7px;margin-bottom:16px}.tagline{font-size:26px}.intro-desc{font-size:13px;margin-bottom:20px}.intro-controls{max-width:270px;font-size:10px;gap:8px}.intro-sticker{right:24px;bottom:70px;width:94px;height:94px;font-size:12px;outline-width:5px}.intro-sticker span{font-size:11px}.fine-print{max-width:230px;font-size:10px}.targets button{font-size:10px;padding:7px}.targets kbd{display:none}.targets small{display:none}#controls{bottom:132px}.key-guide{display:none}#touch-controls:not([hidden]){display:flex}#target-prompt{bottom:182px;font-size:11px;width:max-content;max-width:90vw}#toast{top:235px;font-size:12px;padding:10px 16px}.paper{padding:25px}.paper h2{font-size:32px}.intro .main-button{font-size:17px}.park-ticket{font-size:11px}.combo{padding:4px;font-size:13px}}
@media(max-height:630px) and (min-width:651px){.intro{padding-top:98px}.intro h1{font-size:98px;margin-bottom:12px}.intro .tagline{font-size:23px;margin-bottom:12px}.intro-desc{font-size:12px;margin-bottom:14px}.intro-controls{margin-top:15px}.fine-print{margin:10px 0}.intro .main-button{font-size:16px;padding:12px 22px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.halo{animation:none}button{transition:none!important}#psychedelic{display:none}}
/* Couac v2: energy, readable danger, compact audio controls. */
.left-hud{width:180px;display:flex;flex-direction:column;gap:9px}.energy-board{width:100%}.energy-track{height:22px;position:relative;background:#e1e6cc;border:1px solid #233e3566;border-radius:7px;overflow:hidden;box-shadow:0 2px 0 #254a341b}#energy-fill{display:block;height:100%;width:100%;background:#9bbd76;transition:width .16s,background .3s}.energy-label{position:absolute;inset:0;display:grid;place-items:center;font-size:11px;line-height:1;font-weight:900;color:var(--ink)}.energy-board.low #energy-fill{background:#edb177}.mission{top:204px}.settings{max-width:290px;flex-wrap:wrap;justify-content:flex-end}.settings button{font-size:11px;padding:9px 11px}#damage-vignette{position:absolute;inset:0;pointer-events:none;z-index:3;box-shadow:inset 0 0 90px 15px #d86542;opacity:0}body.gentle #damage-vignette{box-shadow:inset 0 0 30px 4px #d86542}button{-webkit-tap-highlight-color:transparent}#psychedelic{mix-blend-mode:soft-light}#psychedelic.active{opacity:.35}
@media(max-width:1000px){.settings{max-width:188px}.settings button{font-size:10px;padding:8px}.left-hud{width:163px}.mission{top:194px}}
@media(max-width:650px){.left-hud{width:96px;gap:7px}.energy-track{height:20px}.psyche-board{width:172px}.settings{max-width:79px}.settings button{font-size:8px;padding:6px}.settings #effects{font-size:8px}.mission{top:193px;width:174px;padding:10px}.mission strong{font-size:13px}.mission>div{font-size:8px}#toast{top:294px;font-size:11px}.intro-desc{max-width:290px}}

/* Direct pinch action: selection of a body part remains separate from the action. */
.actions-row{display:flex;gap:12px;align-items:center}#pinch-action{background:#ffc352;border:2px solid #d7a043;border-radius:12px;padding:8px 18px;font-size:15px;font-weight:900;box-shadow:0 3px 0 #b78332;touch-action:none}#pinch-action small{font-size:10px;font-weight:400;margin-left:5px}#pinch-action:active{transform:translateY(2px);box-shadow:0 1px 0 #b78332}#touch-pinch{touch-action:none}
@media(max-width:650px),(pointer:coarse){#pinch-action{display:none}.actions-row{gap:0}}
.sound-credit{font-size:9px;color:inherit;text-underline-offset:2px;opacity:.8}

/* The extended park keeps action, cooldowns and direction readable at duck height. */
#human-statuses{position:absolute;inset:0;z-index:3;pointer-events:none;overflow:hidden}.human-status{position:absolute;transform:translate(-50%,-100%);min-width:75px;max-width:160px;background:#fffbeaeF;padding:5px 8px;border-radius:8px;box-shadow:0 2px 0 #29413028;font-size:10px;font-weight:bold;white-space:nowrap}.human-status.special{border:1px solid #a47caf;color:#734783}.human-status i{display:block;height:5px;margin-top:4px;border-radius:4px;background:#dfd7cd;overflow:hidden}.human-status b{display:block;height:100%;background:#d3945c;border-radius:4px}
#threat-compass{position:absolute;width:48px;height:48px;transform:translate(-50%,-50%);pointer-events:none;z-index:4}#threat-compass svg{display:block;width:100%;height:100%;overflow:hidden}#threat-direction path{fill:#ed302b;stroke:none}body.paused #threat-compass{display:none}
#map-board{display:none;position:absolute;left:24px;bottom:24px;background:#fffbeaeF;border-radius:13px;padding:5px;z-index:3;box-shadow:0 3px 0 #254a3428}#game:has(#intro[hidden]) #map-board{display:block}#park-map{display:block;width:148px;height:128px;border-radius:8px}#biscuit-count{display:block;text-align:center;font-size:10px;font-weight:bold;padding:2px}
@media(max-width:1000px){#map-board{left:16px;bottom:115px}#park-map{width:118px;height:102px}}
@media(max-width:650px){#map-board{display:none!important}.human-status{font-size:9px;padding:4px 6px;min-width:65px}}

/* Couac v5: deliberate sprint, one clear timed goal and compact settings. */
.settings .icon-button{width:42px;height:42px;padding:9px;display:grid;place-items:center;position:relative;flex:none}.icon-button svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.off-mark{display:none;stroke:#b94b42;stroke-width:2.8;paint-order:stroke}.icon-button[aria-pressed="true"] .off-mark{display:block}.soft-mark{display:none}.icon-button[aria-pressed="true"] .soft-mark{display:block}.icon-button[aria-pressed="true"] .effect-rays{display:none}.icon-button[aria-pressed="true"]{background:#e6e9d9}
.sprint-board{background:var(--paper);padding:10px 13px;border-radius:12px;box-shadow:0 4px 0 #254a341b}.sprint-board>div:first-child{display:flex;justify-content:space-between;font-size:11px}.sprint-track{height:8px;background:#dce4e5;margin:7px 0 4px;border-radius:7px;overflow:hidden}#sprint-fill{display:block;width:100%;height:100%;background:#5aaebc;border-radius:7px}.sprint-board small{font-size:9px;color:#567e85}.sprint-board.empty #sprint-fill{background:#a1bfc4}.sprint-board.empty small{color:#a96142}
.mission{top:144px;padding:13px 16px;width:220px}.mission .goal-heading{display:flex;align-items:baseline;gap:7px;margin:7px 0}.mission .goal-heading strong{font-size:23px;margin:0;letter-spacing:-.5px}.goal-heading>span{font-size:10px}.mission .mission-track{margin:0;height:8px;background:#dce5ca}.deadline{display:flex;align-items:center;justify-content:space-between;margin-top:10px}.deadline>span{font-size:10px}.mission #timer{position:static;font-size:18px;margin:0}.time-track{height:4px;background:#e2dece;border-radius:5px;margin:5px 0 6px;overflow:hidden}#time-fill{display:block;height:100%;width:100%;background:#d4a359}.mission small{font-size:9px;color:#75846c}.mission.urgent #timer{color:#b64f37}.mission.urgent #time-fill{background:#d26b4f}
#dialogue-box{position:absolute;left:50%;bottom:193px;transform:translateX(-50%);width:max-content;max-width:min(540px,88vw);z-index:5;background:#fffbeaF5;border:2px solid #bd91af;border-radius:14px;padding:11px 18px;box-shadow:0 5px 0 #254a3428;pointer-events:none}#dialogue-box strong{display:block;color:#94547f;font-size:12px}#dialogue-box[data-speaker="pit"]{border-color:#dea34e}#dialogue-box[data-speaker="pit"] strong{color:#9c6725}#dialogue-box p{margin:4px 0 0;font-size:16px;font-weight:bold;line-height:1.35}#result-wait{min-height:40px;margin:12px 0 0!important;font-size:12px!important;color:#7b724e!important}.paper button:disabled{cursor:default;transform:none;opacity:.45}
#touch-sprint{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;background:#d3e8e5;touch-action:none;width:64px;height:64px;margin-bottom:9px}#touch-sprint svg{width:23px;height:23px;stroke:#3f7c87;fill:#ffda85;stroke-width:1.5;stroke-linejoin:round}#touch-sprint span{font-size:10px}#touch-sprint.running{background:#a3d5d8}
@media(max-width:1000px){.settings{max-width:202px}.settings .icon-button{width:36px;height:36px;padding:7px}.icon-button svg{width:21px;height:21px}.mission{top:136px}}
@media(max-width:650px){.settings{max-width:74px;gap:4px}.settings .icon-button{width:32px;height:32px;padding:6px}.icon-button svg{width:20px;height:20px}.settings #pause{width:68px}.sprint-board{padding:8px 9px}.sprint-board>div:first-child{font-size:9px;flex-direction:column;gap:2px}.sprint-board small{font-size:8px;line-height:1.2;display:block}.sprint-track{margin:5px 0;height:7px}.mission{top:112px;left:122px;width:calc(100% - 134px);max-width:254px;padding:10px 12px}.mission .level-label{font-size:8px;letter-spacing:.4px}.mission .goal-heading{margin:6px 0}.mission .goal-heading strong{font-size:20px}.mission #timer{font-size:16px}.mission .deadline{margin-top:7px}.mission small{font-size:8px}#toast{top:290px}#dialogue-box{bottom:233px;padding:9px 13px}#dialogue-box p{font-size:13px}.touch-actions{gap:6px}}

/* Three sweat drops use the simulation clock; no independent CSS animation. */
#sprint-feedback{position:absolute;left:0;top:0;width:38px;height:31px;pointer-events:none;z-index:4}
#sprint-feedback svg{display:block;width:100%;height:100%;overflow:visible}
#sprint-feedback .sprint-drop{fill:#4eb7ec;stroke:#e8fbff;stroke-width:1.2;stroke-linejoin:round;paint-order:stroke fill}
body.paused #sprint-feedback{display:none}

/* The original sprint meter follows the duck; its accessible progress value is retained. */
#sprint-board.duck-sprint{position:absolute;left:0;top:0;width:36px;height:5px;padding:0;background:none;border-radius:3px;box-shadow:none;pointer-events:none;z-index:4}
#sprint-board.duck-sprint>div:first-child,#sprint-board.duck-sprint>small{display:none}
#sprint-board.duck-sprint .sprint-track{height:5px;margin:0;border-radius:3px;background:#284538b8;box-shadow:0 0 0 1px #fffbeacc}
#sprint-board.duck-sprint.low #sprint-fill{background:#efa15b}
#sprint-board.duck-sprint.empty .sprint-track{box-shadow:0 0 0 1px #efa15b}
body.paused #sprint-board.duck-sprint{display:none}

/* Compact result: one score, three pictograms and the replay controls. */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;min-height:0!important}
.result-paper{padding:22px 34px;transform:none}.result-paper h2{font-size:31px;margin:7px 0 14px}.result-paper #final-score{display:block;font-size:76px;line-height:1.05;font-variant-numeric:tabular-nums}
.result-paper{max-height:calc(100dvh - 24px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
#record-time{display:flex;align-items:center;justify-content:center;gap:7px;margin:0 0 12px;color:#6c4b86;font-size:22px;font-variant-numeric:tabular-nums}#record-time svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#records{margin:14px 0 4px;padding-top:13px;border-top:1px solid #cccfb6;text-align:left}.records-heading{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:9px}.records-heading h3{font-size:16px;margin:0}.records-heading small{font-size:10px;color:#6c7b68}
#record-form{display:flex;gap:6px;margin:0 0 8px}#record-name{min-width:0;flex:1;width:100%;border:1px solid #b3c2a4;border-radius:7px;padding:9px 10px;background:#fffdf3;color:var(--ink);font:inherit;font-size:13px}#record-save{padding:8px 11px;border-radius:7px;background:#ffcf73;color:#233e35;font-weight:bold;font-size:12px}#record-name:focus-visible,#record-save:focus-visible{outline:3px solid #9861b3;outline-offset:2px}#record-save:disabled{opacity:.55;cursor:default}
#records #record-message,#records #records-empty{font-size:12px;line-height:1.3;margin:7px 0;color:#536a51}#record-message:empty{display:none}.records-scroll{max-height:166px;overflow-y:auto;scrollbar-width:thin}#record-table{width:100%;border-collapse:collapse;font-size:13px;font-variant-numeric:tabular-nums}#record-table th{position:sticky;top:0;background:var(--paper);font-weight:400;font-size:10px;color:#6c7b68;text-align:left;padding:3px 6px 6px}#record-table td{padding:6px;border-top:1px solid #e0dfc9}#record-table th:first-child,#record-table td:first-child{width:30px;color:#8f67a2}#record-table th:last-child,#record-table td:last-child{text-align:right;white-space:nowrap;font-weight:bold}#record-table td:nth-child(2){max-width:160px;overflow-wrap:anywhere}#record-table .record-current{background:#eee3f2;color:#57396e}
@media(max-width:650px){.result-paper{padding:18px 22px}.result-paper h2{font-size:25px}.result-paper #final-score{font-size:56px}#records{margin-top:10px}.records-heading h3{font-size:15px}.records-heading small{font-size:9px}#record-form{gap:5px}#record-save{padding:8px;font-size:11px}.records-scroll{max-height:145px}}
#result-dish{display:block;width:120px;height:90px;margin:0 auto}#result-stats{display:flex;justify-content:center;gap:27px;margin:21px 0 15px}#result-stats>div{display:flex;align-items:center;gap:7px;font-size:20px;color:#6a7f62}#result-stats svg{width:23px;height:23px;fill:currentColor}#result-stats>div:nth-child(2){color:#ce8a3e}#result-stats>div:nth-child(3){color:#a78053}.result-paper .text-button{margin:12px auto 0}

/* This heading receives screen-reader focus; the actionable buttons keep their focus rings. */
#results-title:focus{outline:none}

.intro-records{position:absolute;top:84px;right:28px;width:248px;padding:12px 14px 10px;background:#fffbeae6;border:1px solid #d7dcc4;border-radius:14px;box-shadow:0 7px 0 #3552390f;color:var(--ink)}
.intro-goal{display:flex;flex-direction:column;gap:2px;padding-bottom:9px;margin-bottom:9px;border-bottom:1px solid #e0dfc9}.intro-goal span{font-size:10px;letter-spacing:.6px;text-transform:uppercase;color:#6c7b68}.intro-goal strong{font-size:16px;color:#6c4b86;font-variant-numeric:tabular-nums}
.intro-records .records-heading{margin-bottom:6px}.intro-records h2{font-size:14px;margin:0}
.podium{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:6px;border-bottom:2px solid #d7dcc4}
.podium-place{display:flex;flex-direction:column;align-items:center;min-width:0}.place-1{order:2}.place-2{order:1}.place-3{order:3}
.cup{display:block;width:36px;height:auto;margin-bottom:4px;overflow:visible}.place-1 .cup{width:46px}
.cup-gold{--cup:#f6c33b;--cup-dark:#b4820c}.cup-silver{--cup:#d7dde3;--cup-dark:#86929d}.cup-bronze{--cup:#dd915b;--cup-dark:#995a2c}.cup-empty{--cup:transparent;--cup-dark:#c3c9b2}
.cup-body{fill:var(--cup);stroke:var(--cup-dark);stroke-width:1.4;stroke-linejoin:round}.cup-base{fill:var(--cup-dark)}.cup-handle{fill:none;stroke:var(--cup-dark);stroke-width:2.6;stroke-linecap:round}.cup-shine{fill:none;stroke:#fff;stroke-width:1.6;stroke-linecap:round;opacity:.65}
.cup-empty .cup-body,.cup-empty .cup-handle{stroke-dasharray:2.4 2}.cup-empty .cup-base{fill:#e3e5d3}.cup-empty .cup-shine{display:none}
.podium-name{font:800 16px/1 ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;letter-spacing:2px;padding-left:2px;color:var(--ink)}.place-1 .podium-name{font-size:18px}.is-empty .podium-name{color:#b7bda8}
.podium-time{min-height:13px;margin:3px 0 5px;font-size:11px;font-variant-numeric:tabular-nums;color:#536a51;white-space:nowrap}
.podium-step{align-self:stretch;display:flex;justify-content:center;padding-top:2px;border-radius:6px 6px 0 0;font-size:11px;font-weight:800;color:#7b7c63;background:#ece9d6}
.place-1 .podium-step{height:30px;background:#f6e3a1}.place-2 .podium-step{height:21px;background:#e2e6e9}.place-3 .podium-step{height:14px;padding-top:0;background:#f0d3bd}.is-empty .podium-step{background:#ece9d6}
#intro-records-empty{margin:7px 0 0;font-size:12px;color:#536a51}
#records #record-name{flex:0 0 auto;width:6.4em;padding:7px 4px 7px calc(4px + .4em);font:800 20px/1 ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;letter-spacing:.4em;text-align:center;text-transform:uppercase}#records #record-name::placeholder{color:#b9c1ad}#record-form{justify-content:center}
@media(max-width:1000px){.intro-records{top:66px;right:16px;width:224px}}
@media(max-width:650px){.intro{padding-top:290px}.intro-sticker{top:124px;left:22px;right:auto;bottom:auto}.intro-records{top:114px;right:12px;width:178px;padding:8px 10px 7px;border-radius:11px}.intro-goal{padding-bottom:6px;margin-bottom:6px}.intro-goal span{font-size:8px}.intro-goal strong{font-size:12px}.intro-records h2{font-size:12px}.intro-records .records-heading{margin-bottom:4px}.intro-records .records-heading small{font-size:8px}.podium{gap:4px}.cup{width:26px;margin-bottom:3px}.place-1 .cup{width:33px}.podium-name{font-size:12px;letter-spacing:1px;padding-left:1px}.place-1 .podium-name{font-size:13px}.podium-time{min-height:11px;margin:2px 0 3px;font-size:9px}.podium-step{font-size:9px}.place-1 .podium-step{height:20px}.place-2 .podium-step{height:14px}.place-3 .podium-step{height:9px}#intro-records-empty{font-size:10px;margin-top:5px}}
@media(max-height:630px) and (min-width:651px){.intro-records{top:76px;padding:8px 12px 7px}.intro-goal{padding-bottom:6px;margin-bottom:6px}.cup{width:30px}.place-1 .cup{width:38px}.place-1 .podium-step{height:22px}.place-2 .podium-step{height:15px}.place-3 .podium-step{height:10px}}
@media(max-height:500px) and (min-width:651px){.intro-records{top:84px;width:212px;padding:6px 11px 5px}.intro-goal strong{font-size:13px}.cup{width:24px;margin-bottom:2px}.place-1 .cup{width:30px}.podium-name{font-size:12px}.place-1 .podium-name{font-size:13px}.podium-time{font-size:9px;margin:1px 0 2px}.place-1 .podium-step{height:16px}.place-2 .podium-step{height:11px}.place-3 .podium-step{height:7px}.intro-sticker{bottom:10px;width:86px;height:86px;font-size:11px;outline-width:5px}.intro-sticker span{font-size:10px}}
@media(max-width:650px),(max-height:630px){#intro-records-empty{display:none}}
.intro-records{width:270px}.cup{width:44px}.place-1 .cup{width:58px}.podium-name{font-size:17px}.place-1 .podium-name{font-size:20px}
.podium-step{align-items:center;padding-top:0;border-radius:5px 5px 0 0;font-size:18px;font-weight:900;box-shadow:inset 0 3px 0 #ffffffa6}
.place-1 .podium-step{height:48px;padding-top:0;color:#8a6508;background:linear-gradient(#f6dc86,#e8c357)}.place-2 .podium-step{height:34px;color:#5d6973;background:linear-gradient(#eceff2,#cdd4da)}.place-3 .podium-step{height:24px;color:#80502c;background:linear-gradient(#f3cfb0,#e0a87f)}.is-empty .podium-step{color:#a3a68f;background:#ece9d6}
@media(max-width:1000px){.intro-records{width:240px}.cup{width:38px}.place-1 .cup{width:50px}.place-1 .podium-step{height:40px}.place-2 .podium-step{height:28px}.place-3 .podium-step{height:19px}}
@media(max-width:650px){.intro-records{width:184px}.cup{width:30px}.place-1 .cup{width:38px}.podium-name{font-size:12px}.place-1 .podium-name{font-size:14px}.podium-step{font-size:13px}.place-1 .podium-step{height:30px}.place-2 .podium-step{height:21px}.place-3 .podium-step{height:14px}}
@media(max-height:630px) and (min-width:651px){.cup{width:32px}.place-1 .cup{width:42px}.place-1 .podium-step{height:32px}.place-2 .podium-step{height:22px}.place-3 .podium-step{height:15px}.podium-step{font-size:14px}}
@media(max-height:500px) and (min-width:651px){.intro-records{width:220px}.cup{width:24px}.place-1 .cup{width:30px}.podium-name{font-size:12px}.place-1 .podium-name{font-size:13px}.place-1 .podium-step{height:18px}.place-2 .podium-step{height:12px}.place-3 .podium-step{height:8px}.podium-step{font-size:10px;box-shadow:inset 0 2px 0 #ffffffa6}}
@media(max-width:650px){.intro{padding-top:300px}.cup{width:28px}.place-1 .cup{width:35px}.place-1 .podium-step{height:24px}.place-2 .podium-step{height:17px}.place-3 .podium-step{height:11px}.podium-step{font-size:12px}}
@media(max-width:650px) and (max-height:700px){.intro h1{font-size:90px;margin-bottom:10px}.intro .tagline{font-size:24px}}
