:root{--content-max:1180px;--page-gutter:clamp(12px, 2.35vw, 32px);--page-inset:max(var(--page-gutter), env(safe-area-inset-left,0px), env(safe-area-inset-right,0px));--touch-target:44px}.shell,.reference-shell{width:min(var(--content-max), calc(100% - 2 * var(--page-inset)));margin-inline:auto}.reference-shell .reference-shell{width:100%}.play-shell{width:min(1280px, calc(100% - 2 * var(--page-inset)))}.content-page{overflow-wrap:break-word}.content-page h1,.setup-card h1{overflow-wrap:anywhere;font-size:clamp(2rem,7vw,4.75rem)}.content-sections p{line-height:1.65}.primary-action,.secondary-action{text-align:center;max-width:100%}.setup-message{border:1px solid var(--primary-border);background:var(--primary-soft);border-radius:12px;margin:16px 0 0;padding:12px 14px;line-height:1.5}.setup-card .choice{flex-direction:column;justify-content:center;align-items:center;gap:3px;display:inline-flex}.setup-card .choice small{text-align:center;max-width:130px;font-size:10px;font-weight:650;line-height:1.2}.setup-card .choice:disabled{cursor:not-allowed;opacity:.58}.setup-card .choice:focus-visible{outline:3px solid var(--primary);outline-offset:3px}.setup-card .start-button{width:100%}.setup-card .start-button:disabled{cursor:not-allowed;opacity:.58}.footer-reference-row{flex-wrap:wrap;gap:16px 32px}.footer-reference-nav{flex-wrap:wrap;gap:8px 28px}.footer-reference-nav a,.footer-paw{min-width:var(--touch-target);min-height:var(--touch-target);align-items:center;display:inline-flex}.footer-reference-copyright{padding-bottom:max(6px, env(safe-area-inset-bottom,0px))}.pause-layer{z-index:60;padding:max(16px, env(safe-area-inset-top,0px)) var(--page-inset) max(16px, env(safe-area-inset-bottom,0px))}.pause-card,.confirm-card{max-height:calc(100dvh - 32px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));overscroll-behavior:contain;overflow-y:auto}.game-back{min-height:var(--touch-target);align-items:center;display:inline-flex}.game-toolbar-options button{min-height:var(--touch-target)}.game-layout,.game-layout-center,.game-layout-bottom{grid-template-columns:minmax(0,550px) minmax(0,1fr)}.game-layout[data-size="16"]{grid-template-columns:minmax(0,1fr);grid-template-areas:"board""toolbar""companion"}.game-layout[data-size="16"]>div:first-child{width:min(100%,720px)}.game-layout[data-size="16"] .game-companion{width:min(100%,720px);min-height:0;margin-inline:auto}.game-toolbar{flex-wrap:wrap}.live-board{height:auto}.game-companion,.game-layout-center .game-companion,.game-layout-bottom .game-companion{min-width:0}.game-side .game-companion-image,.game-layout-center .game-companion-image,.game-layout-bottom .game-companion-image{width:min(100%,530px);margin:0}.live-board:not(.size-16) .live-cell{font-size:clamp(18px,3.6vw,28px)}@media (max-width:1100px){.game-layout,.game-layout-center,.game-layout-bottom{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}}@media (max-width:820px){.game-layout,.game-layout-center,.game-layout-bottom{grid-template-columns:minmax(0,1fr)}.game-layout>div:first-child,.game-layout-center>div:first-child,.game-layout-bottom>div:first-child{width:min(100%,620px)}.game-toolbar>button{flex:120px}}@media (min-width:821px){.game-layout[data-size="16"]{grid-template-columns:minmax(420px,min(48vw,500px)) minmax(230px,280px);grid-template-areas:"board companion""toolbar toolbar";justify-content:center;align-items:center;gap:12px clamp(20px,2.5vw,32px);padding-left:0}.game-layout[data-size="16"]>div:first-child{width:min(100%,100dvh - 320px,500px)}.game-layout[data-size="16"] .keypad{grid-template-columns:repeat(8,minmax(0,1fr));gap:4px;margin-top:8px;display:grid}.game-layout[data-size="16"] .keypad button{border-radius:9px;min-width:0;min-height:34px;padding:3px;font-size:14px}.game-layout[data-size="16"] .game-companion{justify-content:center;align-self:center;gap:6px;width:100%;min-height:0}.game-layout[data-size="16"] .game-companion-image{width:min(100%,230px)}.game-layout[data-size="16"] .game-companion-copy{width:min(100%,250px);padding:12px 14px}.game-layout[data-size="16"] .game-companion-copy h2{font-size:17px}.game-layout[data-size="16"] .game-companion-copy p{font-size:13px;line-height:1.35}.game-layout[data-size="16"] .game-toolbar{gap:6px;width:100%;margin-left:0;padding:8px}.game-layout[data-size="16"] .game-toolbar>button{flex:78px;min-height:40px;padding:6px 8px;font-size:12px}.game-layout[data-size="16"] .game-toolbar-options{flex-basis:40px}.game-layout[data-size="16"] .game-toolbar-options summary{width:40px;height:40px}}@media (max-width:520px){.push-reminder-manual{top:auto;right:16px;bottom:max(16px, env(safe-area-inset-bottom,0px));width:auto;left:16px}.setup-card .size-choices{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.setup-card .size-choices .choice{width:100%;min-height:58px}.keypad{grid-template-columns:repeat(auto-fit,minmax(44px,1fr));gap:6px;display:grid}.keypad button{min-width:44px;min-height:44px}.keypad button:nth-child(9){grid-column:auto}.keypad:has(>button:nth-child(9):last-child){grid-template-columns:repeat(5,minmax(44px,1fr))}.game-companion .game-companion-copy p{font-size:14px;line-height:1.5}.game-stats>span{font-size:12px}.completion-card{grid-template-columns:minmax(0,1fr)}.completion-card img{justify-self:center;max-width:150px}.pause-card,.confirm-card{padding:22px 18px}}@media (min-width:821px){.game-layout:not([data-size="16"]){grid-template-columns:minmax(0,550px) minmax(220px,280px);justify-content:center;gap:20px clamp(22px,3vw,36px);padding-left:0}.game-layout:not([data-size="16"]) .game-companion{justify-content:center;align-self:center;gap:8px;width:min(100%,280px);min-height:0}.game-layout:not([data-size="16"]) .game-companion-image{width:clamp(220px,20vw,280px);max-width:100%;margin:0}.game-layout[data-size="4"] .game-companion-image{width:clamp(200px,18vw,235px)}.game-layout[data-size="6"] .game-companion-image{width:clamp(215px,19vw,260px)}.game-layout[data-size="9"] .game-companion-image{width:clamp(230px,20vw,280px)}.game-layout:not([data-size="16"]) .game-companion-copy{width:min(100%,250px);padding:15px 16px}.game-layout:not([data-size="16"]) .game-companion-copy h2{font-size:18px}.game-layout:not([data-size="16"]) .game-companion-copy p{font-size:13px;line-height:1.4}}@media (max-height:600px) and (min-width:821px){.game-layout>div:first-child,.game-layout-center>div:first-child,.game-layout-bottom>div:first-child{width:min(100%,440px)}}@media (min-width:821px){.game-layout.game-layout[data-size="4"]{grid-template-columns:minmax(320px,390px) minmax(220px,250px);align-items:center;gap:16px clamp(22px,3vw,32px)}.game-layout[data-size="4"]>div:first-child{flex:none;width:min(100%,390px);max-width:390px}.game-layout[data-size="4"] .live-cell{font-size:clamp(28px,2.4vw,34px)}.game-layout[data-size="4"] .keypad{justify-content:flex-start;gap:8px;margin-top:14px}.game-layout[data-size="4"] .keypad button{min-width:52px;min-height:52px;padding:6px 12px}.game-layout[data-size="4"] .game-companion-image{width:clamp(185px,16vw,220px)}.game-layout.game-layout[data-size="6"]{grid-template-columns:minmax(380px,480px) minmax(220px,260px);align-items:center;gap:18px clamp(22px,3vw,34px)}.game-layout[data-size="6"]>div:first-child{width:min(100%,480px,max(380px,100dvh - 345px))}.game-layout[data-size="6"] .live-cell{font-size:clamp(24px,2.1vw,30px)}.game-layout[data-size="6"] .keypad{justify-content:flex-start;gap:8px;margin-top:14px}.game-layout[data-size="6"] .keypad button{min-width:50px;min-height:50px;padding:6px 11px}.game-layout[data-size="6"] .game-companion-image{width:clamp(205px,18vw,245px)}.game-layout.game-layout[data-size="9"]{grid-template-columns:minmax(440px,580px) minmax(220px,270px);align-items:center;gap:18px clamp(22px,3vw,34px)}.game-layout[data-size="9"]>div:first-child{width:min(100%,580px,max(440px,100dvh - 292px))}.game-layout[data-size="9"] .live-cell{font-size:clamp(24px,1.95vw,28px)}.game-layout[data-size="9"] .keypad{justify-content:flex-start;gap:8px;margin-top:14px}.game-layout[data-size="9"] .keypad button{min-width:48px;min-height:48px;padding:6px 10px}.game-layout[data-size="9"] .game-companion-image{width:clamp(215px,18vw,255px)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
