/* Explicit comfort choices; game rules and canvas coordinates stay with each game. */
.arcade-comfort-host{flex-wrap:wrap!important;height:auto!important;min-height:44px}.arcade-comfort-open{font:13px/1.2 system-ui,sans-serif!important;letter-spacing:0!important;text-transform:none!important;min-height:44px!important;min-width:44px!important;max-width:160px;padding:9px 11px!important;border:1px solid currentColor!important;border-radius:9px!important;white-space:normal!important;color:inherit!important;background:transparent!important;cursor:pointer}.arcade-comfort{box-sizing:border-box!important;width:min(580px,calc(100vw - 24px))!important;max-width:580px!important;max-height:calc(100dvh - 28px)!important;height:auto!important;margin:auto!important;inset:0!important;padding:25px!important;border:1px solid #b3baa7!important;border-radius:22px!important;background:#fffaf0!important;color:#243b34!important;box-shadow:0 24px 90px #10251b55!important;font:17px/1.65 system-ui,sans-serif!important;text-align:left!important;overflow-y:auto!important;letter-spacing:0!important;text-transform:none!important}.arcade-comfort::backdrop{background:#10221bd0}.arcade-comfort *{box-sizing:border-box}.arcade-comfort .ac-heading{display:flex;gap:16px;align-items:start;justify-content:space-between}.arcade-comfort h2{font:30px/1.15 Georgia,serif!important;letter-spacing:-.5px!important;margin:0 0 10px!important;color:#243b34!important}.arcade-comfort p,.arcade-comfort li{font:17px/1.65 system-ui,sans-serif!important;color:#243b34!important;max-width:none!important}.arcade-comfort .ac-kicker{font-size:11px!important;letter-spacing:1px!important;margin:0 0 8px!important}.arcade-comfort .ac-pace{font-size:14px!important;background:#e8efdc;border-radius:8px;padding:9px 12px}.arcade-comfort ol{padding-left:28px!important;margin:15px 0!important}.arcade-comfort li{padding:4px 0 9px 4px}.arcade-comfort .ac-tip{border-left:3px solid #a98952;padding-left:14px}.arcade-comfort .ac-settings{display:grid;gap:10px;padding:18px 0;border-top:1px solid #d3d6c8;border-bottom:1px solid #d3d6c8}.arcade-comfort label{display:flex!important;gap:12px!important;align-items:center!important;font:16px/1.4 system-ui!important;color:#243b34!important;text-transform:none!important;letter-spacing:0!important;min-height:44px!important;margin:0!important;padding:0!important}.arcade-comfort input[type=checkbox]{appearance:auto!important;width:23px!important;height:23px!important;min-height:23px!important;padding:0!important;margin:0!important;accent-color:#436b54!important;flex:0 0 23px!important}.arcade-comfort button,.arcade-comfort a{font:15px/1.4 system-ui,sans-serif!important;letter-spacing:0!important;text-transform:none!important;border:1px solid #85957f!important;background:#f2f2e6!important;color:#243b34!important;padding:11px 14px!important;min-height:46px!important;border-radius:9px!important;cursor:pointer!important;box-shadow:none!important;width:auto!important;white-space:normal!important;text-decoration:none!important}.arcade-comfort #ac-close{flex:0 0 auto;padding:8px 12px!important}.arcade-comfort #ac-gentle-now{background:#416850!important;color:white!important}.arcade-comfort .ac-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:17px}.arcade-comfort .ac-small{font-size:13px!important;color:#516356!important;margin:10px 0!important}.arcade-comfort #ac-status{font-size:14px!important;margin-top:16px!important}.arcade-comfort :is(button,a,input):focus-visible,.arcade-comfort-open:focus-visible{outline:3px solid #b1701e!important;outline-offset:3px!important}
body[data-arcade-reading=large] :is(p,li,label,summary,.options button,.focus button,.toolbar button,.control-desk button,.guide select,.guide>button,.seed button,.metric span,.resource-label,.tiny,.manual-note){font-size:max(1em,16px)!important;line-height:1.55!important}body[data-arcade-reading=large] :is(.options button,.focus button,.guide select,.guide>button,.control-desk button,.seed button){min-height:48px!important}body[data-arcade-reading=large] .options{max-height:320px}body[data-arcade-reading=large] .features{font-size:14px!important}body[data-arcade-reading=large] header{flex-wrap:wrap}body[data-arcade-reading=large] :is(.stage,.pond-shell) .welcome p{font-size:14px!important}body[data-arcade-reading=large] :is(.stage,.pond-shell) .welcome{max-height:100%;overflow:auto}body[data-arcade-contrast=strong]{--muted:var(--ink,#34483f)}body[data-arcade-contrast=strong] :is(.guide p,.manual-note,.seed p,.brain p,.replay p,.thought p,.world-top,.metric span){color:var(--ink,#34483f)!important}body[data-arcade-contrast=strong] :is(button,input,select,summary):focus-visible{outline:3px solid #bf812c!important;outline-offset:3px!important}
@media(max-width:600px){.arcade-comfort{padding:18px!important}.arcade-comfort h2{font-size:26px!important}.arcade-comfort .ac-heading{gap:8px}.arcade-comfort .ac-actions>*{flex:1 1 130px}.arcade-comfort-open{font-size:12px!important}.arcade-comfort-host>span{white-space:normal!important}body[data-arcade-reading=large] .guide .focus{grid-template-columns:1fr}body[data-arcade-reading=large] .options{grid-template-columns:1fr}}

.arcade-next-up{margin:14px 0 0;font-size:12px;line-height:1.8;opacity:.9}.arcade-next-up a{color:inherit;font-weight:bold;text-decoration:underline;text-underline-offset:3px}.arcade-next-up .arcade-next-home{font-weight:normal}dialog .arcade-next-up{text-align:center}

/* The guide pill and the welcome card */
.arcade-guide{margin-left:6px}.arcade-guide[aria-pressed=true]{background:#425f4d!important;color:#fff!important;border-color:#425f4d!important}
.arcade-comfort .ac-welcome-actions{display:none}.arcade-comfort[data-welcome=on] .ac-welcome-actions{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0 6px}
.arcade-comfort[data-welcome=on] .ac-settings,.arcade-comfort[data-welcome=on] .ac-actions:not(.ac-welcome-actions),.arcade-comfort[data-welcome=on] .ac-small{display:none}
.arcade-comfort[data-welcome=on] #ac-steps{font-size:max(1.05em,17px)!important;line-height:1.6!important;padding-left:1.4em}.arcade-comfort[data-welcome=on] #ac-steps li{margin:8px 0}
.arcade-comfort[data-welcome=on] #ac-tip{font-size:max(1em,15px)!important}
.arcade-comfort .ac-welcome-actions button{min-height:48px;padding:10px 16px;border-radius:10px;font-size:16px;border:1px solid currentColor;background:transparent;color:inherit;cursor:pointer}
.arcade-comfort .ac-welcome-actions .ac-primary{background:#425f4d;color:#fff;border-color:#425f4d;font-weight:600}

/* No dead ends in the night worlds: the inline Next button and the "your move" line */
.arcade-now{margin:0 0 6px;font-size:14px;line-height:1.5;opacity:.85}
.arcade-next-inline{display:block;width:100%;max-width:520px;margin:10px auto 0;min-height:52px;padding:12px 18px;border-radius:12px;border:2px solid currentColor;background:#e9d79e;color:#1b1820;font:600 17px/1.2 system-ui,sans-serif;cursor:pointer}
.arcade-next-inline[hidden]{display:none}
.hud.choices button:disabled{pointer-events:none}

/* Fun mode: the banner, the nudge and its pulse */
.arcade-fun-banner{position:fixed;left:50%;top:10px;transform:translateX(-50%);z-index:60;display:flex;gap:10px;align-items:center;max-width:min(680px,94vw);padding:10px 14px;border-radius:12px;background:#1b2a24;color:#fff;border:1px solid #6fb08a;font:15px/1.45 system-ui,sans-serif;box-shadow:0 6px 24px #0006;transition:opacity .9s}
.arcade-fun-banner.fade{opacity:0}.arcade-fun-banner button{border:0;background:transparent;color:#fff;font-size:20px;line-height:1;cursor:pointer;min-width:32px;min-height:32px}
.arcade-nudge{position:fixed;z-index:61;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 14px;border-radius:12px;background:#ffd166;color:#1b1820;font:700 15px/1.3 system-ui,sans-serif;box-shadow:0 6px 20px #0007;pointer-events:none;animation:arcade-nudge-bob 1s ease-in-out infinite}
.arcade-nudge[hidden]{display:none}.arcade-nudge .arrow{font-size:14px}
.arcade-nudge-target{outline:4px solid #ffd166!important;outline-offset:4px!important;animation:arcade-nudge-pulse 1s ease-in-out infinite}
@keyframes arcade-nudge-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@keyframes arcade-nudge-pulse{0%,100%{outline-color:#ffd166}50%{outline-color:#fff}}
@media (prefers-reduced-motion:reduce){.arcade-nudge,.arcade-nudge-target{animation:none}}

@media (max-width:640px){.arcade-fun-banner{top:auto;bottom:14px;font-size:14px}}
