:root{color:#182015;background:#e7f7d7;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button{font:inherit}.app-shell{position:relative;min-height:100vh;background:linear-gradient(180deg,#7fcfeac7,#e8f8d3e6 48%),radial-gradient(circle at 20% 12%,rgba(255,255,255,.8),transparent 18rem),#d7f0b6;display:grid;place-items:center;padding:24px}.screen-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:24px;pointer-events:none}.screen-overlay .setup-screen{pointer-events:auto}.setup-screen{width:min(560px,100%);text-align:center;background:#ffffffc7;border:3px solid rgba(56,99,45,.16);border-radius:8px;padding:clamp(28px,7vw,56px);box-shadow:0 18px 50px #2a502229}.setup-mark{font-size:clamp(54px,12vw,92px);line-height:1;margin-bottom:8px}.setup-screen h1{font-size:clamp(48px,12vw,86px);line-height:.92;margin:0 0 22px}.setup-copy{display:grid;gap:8px;margin-bottom:28px}.setup-copy p,.setup-note{margin:0;font-size:clamp(18px,4.5vw,26px);line-height:1.25}.setup-note{margin-top:18px;color:#9b2f24}.hold-meter{width:min(260px,100%);height:16px;margin:10px auto 0;border:2px solid rgba(56,99,45,.18);border-radius:999px;overflow:hidden;background:#ffffffa8}.hold-fill{height:100%;border-radius:inherit;background:#225c3a;transition:width 90ms linear}.primary-button{border:0;background:#225c3a;color:#fffdf3;min-height:52px;padding:0 26px;border-radius:8px;font-weight:800;cursor:pointer;box-shadow:0 6px #12341f}.primary-button:active{transform:translateY(3px);box-shadow:0 3px #12341f}.primary-button:disabled{cursor:wait;opacity:.72}.game-screen{width:min(1100px,100%);display:grid;gap:14px}.game-screen-preview{filter:saturate(.9)}.hud,.status-strip{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.hud>div,.status-strip span{min-width:108px;background:#ffffffc2;border:2px solid rgba(56,99,45,.14);border-radius:8px;padding:9px 12px;text-align:center}.hud>div>span{display:block;color:#526449;font-size:12px;font-weight:800;text-transform:uppercase}.hud>div>strong{display:block;font-size:22px;line-height:1.1}.volume-card{width:150px}.volume-meter{height:9px;margin-top:7px;border-radius:999px;overflow:hidden;background:#52644929}.volume-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,#4f9f46,#ffd24a,#dc4d36);transition:width 80ms linear}.course{position:relative;overflow:hidden;height:clamp(360px,58vh,560px);border:4px solid rgba(42,89,36,.22);border-radius:8px;background:linear-gradient(180deg,rgba(128,210,241,.75) 0 32%,transparent 32%),linear-gradient(90deg,rgba(255,255,255,.2) 0 1px,transparent 1px 8.6%),repeating-linear-gradient(0deg,rgba(89,150,70,.16) 0 2px,transparent 2px 56px),linear-gradient(180deg,#8ecf72,#63ab55);box-shadow:inset 0 -24px #336f2b29}.skyline{position:absolute;left:12%;right:0;top:7%;font-size:34px;opacity:.84;word-spacing:18vw;white-space:nowrap}.lane-guide{position:absolute;left:0;right:0;height:0;border-top:3px dashed rgba(255,255,255,.62)}.lane-guide span{position:absolute;left:10px;top:-30px;padding:4px 8px;border-radius:6px;background:#ffffffa3;color:#49623d;font-size:13px;font-weight:800}.sheep,.item,.barn{position:absolute;transform:translate(-50%,-50%);will-change:transform,top,left;-webkit-user-select:none;user-select:none}.sheep{z-index:5;font-size:clamp(32px,5.5vw,64px);transition:left 70ms linear,top .13s linear;filter:drop-shadow(0 8px 0 rgba(33,68,28,.15))}.sheep-emoji{display:block;transform-origin:50% 70%;scale:-1 1;animation:sheep-run .26s ease-in-out infinite alternate}.sheep-high .sheep-emoji{transform:scaleY(1.16) scaleX(.92)}.sheep-low .sheep-emoji{transform:scaleY(.84) scaleX(1.16)}.sheep-confused .sheep-emoji{filter:saturate(.75)}.sheep-tumble .sheep-emoji{animation:tumble .42s linear infinite}.sheep-blink{animation:blink .14s steps(2,end) infinite}.baa-bubble{position:absolute;left:50%;bottom:82%;transform:translate(-50%);padding:5px 10px;min-width:46px;text-align:center;border-radius:8px;background:#ffffffe0;border:2px solid rgba(42,89,36,.16);font-size:clamp(12px,2vw,15px);font-weight:900;white-space:nowrap}.item{z-index:4;font-size:clamp(20px,3.5vw,40px);filter:drop-shadow(0 6px 0 rgba(33,68,28,.16))}.barn{top:50%;z-index:3;font-size:clamp(48px,8vw,92px);filter:drop-shadow(0 10px 0 rgba(33,68,28,.18))}.events{position:absolute;left:50%;top:8%;transform:translate(-50%);display:flex;gap:8px;z-index:10}.events span{padding:6px 10px;border-radius:8px;background:#fffde6e6;border:2px solid rgba(42,89,36,.16);font-weight:900;animation:pop .4s ease-out}.progress-shell{height:14px;border-radius:999px;background:#ffffffa8;border:2px solid rgba(56,99,45,.18);overflow:hidden}.progress-fill{height:100%;background:#225c3a;transition:width 80ms linear}.status-strip{min-height:42px}.status-strip span{min-width:auto;font-size:14px;font-weight:800;padding:7px 10px}@keyframes sheep-run{0%{translate:0 0}to{translate:0 -4px}}@keyframes tumble{to{rotate:360deg}}@keyframes bob{to{translate:0 -7px}}@keyframes pop{0%{scale:.86;opacity:0}}@keyframes blink{50%{opacity:.28}}@media(max-width:640px){.app-shell{padding:12px}.hud>div{min-width:92px;padding:7px 9px}.hud strong{font-size:18px}.course{height:64vh}.lane-guide span{font-size:11px}}
