@font-face{font-family:Mulish;src:url(/fonts/mulish.woff2) format("woff2-variations");font-weight:200 1000;font-display:swap}:root{--bg: #ffffff;--fg: #32373b;--muted: #6b7280;--tile: #d4dfe4;--tile-action: #8fd3ff;--tile-jump: #f68181;--tile-home: #91db69;--outline: #3e3546;--dot: #000000;--pad-bg: #32373b;--pad-arrow: #ffffff;--icon-filter: none;--accent: #6a4f63;--accent-ink: #ffffff;--week: color-mix(in srgb, var(--accent) 22%, var(--bg));--slot-1: #a8d8f8;--slot-1-ink: #12324a;--slot-2: #d0393e;--slot-2-ink: #ffffff;--slot-3: #ff9f43;--slot-3-ink: #3a1f00;--medal-1: #9b5de5;--medal-10: #a9e4f2;--medal-100: #2fb885;--medal-1000: #f4b63f;--medal-1-ink: #ffffff;--medal-10-ink: #12324a;--medal-100-ink: #0b2e21;--medal-1000-ink: #3a2804;--r-sm: 6px;--r-md: 10px;--r-lg: 16px;--control: 2.75rem;--page: #eef1f3;--card-edge: transparent;color-scheme:light}:root[data-theme=dark]{--bg: #141414;--fg: #c8c8c8;--muted: #8b9198;--tile: #2b3034;--tile-action: #123a55;--tile-jump: #5e2020;--tile-home: #2f5e1c;--outline: #c9bcd4;--dot: #e8e8e8;--pad-bg: #2b3034;--pad-arrow: #e8e8e8;--icon-filter: invert(1);--page: #0a0a0a;--card-edge: rgb(255 255 255 / .07);--week: color-mix(in srgb, #b590ab 30%, var(--bg));color-scheme:dark}*{box-sizing:border-box}:lang(ja){word-break:auto-phrase}[hidden]{display:none!important}html,body{height:100%}html{touch-action:manipulation}body{margin:0;background:var(--bg);color:var(--fg);font-family:Mulish,system-ui,-apple-system,Segoe UI,Hiragino Sans,Hiragino Kaku Gothic ProN,Yu Gothic UI,Meiryo,Noto Sans JP,sans-serif;font-size:16px;line-height:1.5;overflow-x:hidden}.screen{min-height:100%;max-width:26rem;margin:0 auto;padding:1.5rem 1rem 1.25rem;display:flex;flex-direction:column;gap:1rem}:focus-visible{outline:3px solid var(--outline);outline-offset:3px}.visually-hidden{position:absolute;margin:0;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:1rem;top:1rem;z-index:10;background:var(--bg);color:var(--fg);padding:.5rem;border:2px solid var(--outline)}.masthead{text-align:center}.topbar{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:.75rem}.topbar>:first-child{justify-self:start}.topbar>:last-child{justify-self:end}.topbar-title{min-width:0}.topbar h1{font-size:clamp(1.5rem,7vw,1.875rem);line-height:1.15;overflow-wrap:anywhere}.topbar-icon{width:var(--control);padding:0;font-size:1.15rem;font-weight:800}h1{margin:0;font-size:clamp(2rem,11vw,2.75rem);font-weight:800;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.puzzle-date{margin:0;color:var(--muted);font-size:.875rem;font-weight:600}.login-button,.unlock-button,.dialog-primary,.dialog-secondary,.topbar-button,.month-step{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:var(--control);padding:0 1.1rem;border:2px solid transparent;border-radius:var(--r-md);font:inherit;font-size:.9375rem;font-weight:700;line-height:1.2;text-align:center;cursor:pointer;transition:background-color .12s ease-out,border-color .12s ease-out,opacity .12s ease-out}.login-button,.unlock-button,.dialog-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.login-button:hover,.unlock-button:hover,.dialog-primary:hover{opacity:.9}.dialog-secondary,.topbar-button,.month-step{background:var(--bg);border-color:var(--tile);color:var(--fg)}.dialog-secondary:hover,.topbar-button:hover,.month-step:hover{border-color:var(--muted)}.login-button:disabled,.dialog-primary:disabled,.dialog-secondary:disabled{cursor:default;opacity:.6}.home-head{text-align:center}.brand{margin:0 0 .9rem;color:var(--muted);font-size:.75rem;font-weight:800;letter-spacing:.24em;text-transform:uppercase}.home h1{font-size:clamp(2rem,10vw,2.5rem);line-height:1.1}.home h1 .weekday{display:block;margin-top:.4rem;color:var(--muted);font-size:1rem;font-weight:600;letter-spacing:0}.link-button{margin-top:.5rem;font:inherit;font-size:.9375rem;font-weight:700;color:var(--muted);background:none;border:none;border-radius:var(--r-sm);padding:.25rem .5rem;text-decoration:underline;text-underline-offset:.2em;cursor:pointer}.link-button:hover{color:var(--fg)}.home-tile{align-self:center;width:min(8.5rem,38vw);aspect-ratio:1;margin:auto 0 .25rem;background:var(--tile-home)}.home-tile img{display:block;width:100%;height:100%}.home-play{display:grid;grid-template-columns:repeat(2,min(8.5rem,38vw));justify-content:center;gap:1rem;margin-bottom:auto}.home-play.has-holiday{grid-template-columns:repeat(3,min(8.5rem,calc((100% - 2rem) / 3)))}.has-holiday .play-name{font-size:1.05rem}.has-holiday .play-note{font-size:.8rem}.play{--slot: var(--slot-1);--slot-ink: var(--slot-1-ink);display:grid;align-content:center;gap:.2rem;aspect-ratio:1;padding:.5rem;border:3px dotted var(--slot);border-radius:var(--r-lg);background:color-mix(in srgb,var(--slot) 18%,var(--bg));color:var(--fg);font:inherit;cursor:pointer;transition:transform .12s ease-out,background-color .2s ease-out}.play[data-slot="2"]{--slot: var(--slot-2);--slot-ink: var(--slot-2-ink)}.play[data-slot="3"]{--slot: var(--slot-3);--slot-ink: var(--slot-3-ink)}.play.solved{border-style:solid;background:var(--slot);color:var(--slot-ink)}.play:hover:not(:disabled){transform:translateY(-2px)}.play:active:not(:disabled){transform:translateY(1px)}.play:disabled{cursor:default;border-color:color-mix(in srgb,var(--slot) 55%,var(--bg));background:color-mix(in srgb,var(--slot) 8%,var(--bg))}.home-opens{margin:0;text-align:center;font-weight:700}.play-name{font-size:1.25rem;font-weight:800}.play-note{font-size:.875rem;font-weight:600;opacity:.9}.catch-up{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;align-self:center;min-height:var(--control);padding:0 1.1rem;border:2px solid var(--tile);border-radius:var(--r-md);background:var(--bg);color:var(--fg);font:inherit;font-size:.9375rem;font-weight:700;cursor:pointer}.catch-up:hover{border-color:var(--muted)}.catch-up svg{width:1.1rem;height:1.1rem;flex:none}.account{display:grid;gap:.6rem;justify-items:center;text-align:center;padding:1.1rem 1.25rem;border-radius:var(--r-lg);background:color-mix(in srgb,var(--tile) 20%,var(--bg))}.profile{display:grid;justify-items:center;gap:.5rem;text-align:center}.profile-name{margin:0;font-size:1.1rem;font-weight:800;overflow-wrap:anywhere}.profile .badges{margin:0}.account .login-button,.account .unlock-button,.unlock .unlock-button{justify-self:stretch}.account .link-button{margin-top:0}.account-title,.unlock-title{margin:0;font-size:1.05rem;font-weight:800}.account-text{margin:0;color:var(--muted);font-size:.9rem;line-height:1.45}.badges{display:grid;gap:.4rem;margin:.1rem 0 .2rem}.badge-line{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem;margin:0;padding:0;list-style:none}.badges:not(:has(li:not([hidden]))),.badge-line:not(:has(>li:not([hidden]))){display:none}.badge{display:inline-flex;align-items:center;gap:.4rem;padding:.3rem .7rem .3rem .45rem;border-radius:var(--r-sm);font-size:.9rem;font-weight:700}.badge-rank{--medal: var(--medal-1);--medal-ink: var(--medal-1-ink);gap:.25rem;padding:.25rem .45rem .25rem .3rem;font-size:.8125rem;background:color-mix(in srgb,var(--medal) 22%,var(--bg))}.badge-rank .medal{width:1.4rem;height:1.75rem}.medal-mark{fill:var(--medal-ink);font-size:11px;font-weight:800;letter-spacing:-.04em}.badge-rank[data-rank=top100] .medal-mark{font-size:9px}.badge-rank[data-rank=top10]{--medal: var(--medal-10);--medal-ink: var(--medal-10-ink)}.badge-rank[data-rank=top100]{--medal: var(--medal-100);--medal-ink: var(--medal-100-ink)}.badge-rank[data-rank=top1000]{--medal: var(--medal-1000);--medal-ink: var(--medal-1000-ink)}.badge-slot-1{--slot: var(--slot-1);--slot-ink: var(--slot-1-ink);background:color-mix(in srgb,var(--slot) 20%,var(--bg))}.badge-slot-2{--slot: var(--slot-2);--slot-ink: var(--slot-2-ink);background:color-mix(in srgb,var(--slot) 18%,var(--bg))}.badge-slot-3{--slot: var(--slot-3);--slot-ink: var(--slot-3-ink);background:color-mix(in srgb,var(--slot) 22%,var(--bg))}.medal{width:1.2rem;height:1.5rem;flex:none}.tile-icon rect{fill:var(--slot)}.tile-icon text,.tile-icon path{fill:var(--slot-ink)}.medal-disc{fill:var(--medal)}.tile-icon{width:1.3rem;height:1.3rem;flex:none}.badge-count{font-weight:800;font-variant-numeric:tabular-nums}.unlock{display:grid;gap:.6rem;justify-items:center;text-align:center;padding:1.1rem 1.25rem;border-radius:var(--r-lg);background:color-mix(in srgb,var(--accent) 10%,var(--bg))}.unlock-text{margin:0;color:var(--muted);font-size:.9rem;line-height:1.45}.lock-icon{width:1.75rem;height:1.75rem;color:var(--accent)}.calendar-body{position:relative}.unlock-over{position:absolute;top:50%;left:50%;width:min(22rem,calc(100vw - 3rem));translate:-50% -50%;border:1px solid var(--card-edge);box-shadow:0 12px 36px #00000024;background:var(--bg)}.calendar-body>.unlock:not(.unlock-over){margin-top:1rem;border:1px solid var(--card-edge);background:var(--bg)}.calendar-grid.is-locked .day,.day.mark-locked{border-color:var(--tile);color:var(--muted)}.mark-locked .day-mark{width:34%;background:var(--accent);mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='4.5' y='10.5' width='15' height='10.5' rx='2.5'/%3E%3Cpath d='M8 10.5V7.5a4 4 0 0 1 8 0v3' fill='none' stroke='%23000' stroke-width='2.4'/%3E%3C/svg%3E") center / contain no-repeat}.dialog{width:min(24rem,calc(100vw - 2rem));padding:1.5rem;border:1px solid var(--card-edge);border-radius:var(--r-lg);background:var(--bg);color:var(--fg);box-shadow:0 24px 64px #00000040}.dialog::backdrop{background:#00000073}.dialog h2{margin:0 0 .5rem;font-size:1.375rem;font-weight:800}.dialog-text{margin:0 0 1rem;color:var(--muted);font-size:.95rem}.dialog label{display:block;margin-bottom:.25rem;font-weight:700}.dialog input{width:100%;min-height:var(--control);padding:.5rem .75rem;border:2px solid var(--muted);border-radius:var(--r-md);background:var(--bg);color:var(--fg);font:inherit}#login-code{font-size:1.5rem;font-weight:800;letter-spacing:.3em;font-variant-numeric:tabular-nums}.login-links{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.25rem;margin:-.5rem 0 .75rem}.login-links .link-button{margin:0;padding:.25rem 0;font-size:.875rem}.dialog h2:focus{outline:none}.dialog input[aria-invalid=true]{border-color:#c62828}.dialog-price{margin:0 0 .25rem;font-size:1.1rem;font-weight:800}.dialog-account{margin:0 0 .75rem;color:var(--muted);font-size:.9rem;overflow-wrap:anywhere}.dialog-prototype{margin:0 0 1rem;padding:.4rem .6rem;border-radius:var(--r-sm);background:var(--tile);font-size:.85rem;font-weight:600}.dialog-note{min-height:1.5em;margin:.5rem 0 1rem;font-size:.9rem;font-weight:600}.dialog-actions{display:flex;justify-content:flex-end;gap:.5rem}.home-foot{display:flex;justify-content:space-between;align-items:center;gap:.75rem;min-height:3.25rem}.settings-list{display:grid;border-radius:var(--r-lg);background:color-mix(in srgb,var(--tile) 20%,var(--bg))}.setting{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.85rem 1rem}.setting+.setting{border-top:1px solid var(--tile)}.setting-name{display:flex;align-items:center;gap:.5rem;min-width:0;font-weight:700}.setting-name svg{width:1.25rem;height:1.25rem;flex:none;color:var(--muted)}.setting-account{flex-direction:column;align-items:flex-start;gap:.1rem}.setting-value{color:var(--muted);font-size:.875rem;font-weight:600;overflow-wrap:anywhere}.setting input{width:min(11rem,50%);cursor:text}.setting input::placeholder{color:var(--muted)}.switch{position:relative;flex:none;width:3.25rem;height:1.9rem;padding:0;border:2px solid var(--tile);border-radius:var(--r-md);background:var(--tile);cursor:pointer;transition:background-color .15s ease-out,border-color .15s ease-out}.switch:after{content:"";position:absolute;top:.15rem;left:.15rem;width:1.3rem;height:1.3rem;border-radius:var(--r-sm);background:#fff;box-shadow:0 1px 2px #00000040;transition:translate .15s ease-out}.switch[aria-checked=true]{border-color:var(--accent);background:var(--accent)}.switch[aria-checked=true]:after{translate:1.35rem 0}.settings .home-foot{justify-content:center;margin-top:auto}.setting select,.setting input{min-height:var(--control);padding:0 .6rem;border:2px solid var(--tile);border-radius:var(--r-md);background:var(--bg);color:var(--fg);font:inherit;font-size:.9rem;font-weight:600;cursor:pointer}.setting select:hover,.setting input:hover{border-color:var(--muted)}.calendar .home-foot{flex-direction:column;align-items:center;gap:1rem;margin-top:auto}.month-nav{display:grid;grid-template-columns:2.75rem 1fr 2.75rem;align-items:center;gap:.25rem}.month-nav h1{font-size:clamp(1.5rem,7vw,1.875rem)}.month-step{width:var(--control);padding:0;font-size:1.5rem;line-height:1}.month-step:disabled{visibility:hidden}.calendar-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:3px}.day{position:relative;display:grid;place-items:center;width:100%;aspect-ratio:1;padding:0;border:3px solid #8b868e;background:var(--bg);color:var(--fg);font:inherit}button.day{cursor:pointer}button.day:hover{background:var(--tile)}.day.in-week{background:var(--week)}button.day.in-week:hover{background:color-mix(in srgb,var(--week) 80%,var(--fg))}.week-note{margin:.6rem 0 0;text-align:center;color:var(--muted);font-size:.875rem}.week-note:before{content:"";display:inline-block;width:.8em;height:.8em;margin-right:.4em;vertical-align:-.05em;border-radius:2px;background:var(--week);border:1px solid color-mix(in srgb,var(--week) 70%,var(--fg))}.day.mark-none{border:2px dashed color-mix(in srgb,var(--muted) 35%,transparent);color:var(--muted)}.day-number{position:absolute;top:.15rem;right:.35rem;font-size:.875rem;font-weight:600}.day-mark{width:42%;aspect-ratio:1}.mark-open .day-mark{border:3px dashed var(--accent);border-radius:50%}.mark-half .day-mark{border-radius:50%;border:3px solid var(--accent);background:linear-gradient(90deg,var(--accent) 50%,transparent 50%)}.day.is-holiday:before{content:"";position:absolute;top:0;left:0;border-top:.9rem solid var(--slot-3);border-right:.9rem solid transparent}.mark-done .day-mark{width:56%;background:var(--tile-home) url(/img/tile0.png) center / contain no-repeat}.mark-today .day-mark{width:56%;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg stroke='%23fbc02d' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M12 1.5v3M12 19.5v3M1.5 12h3M19.5 12h3M4.6 4.6l2.1 2.1M17.3 17.3l2.1 2.1M4.6 19.4l2.1-2.1M17.3 6.7l2.1-2.1'/%3E%3C/g%3E%3Ccircle cx='12' cy='12' r='4.8' fill='%23fbc02d'/%3E%3C/svg%3E") center / contain no-repeat}.calendar-home{width:4.5rem;height:4.5rem;padding:0;border:none;background:var(--tile-home);cursor:pointer}.calendar-home img{display:block;width:100%;height:100%}.ad{width:min(320px,100%)}.ad-label{display:block;margin-bottom:.15rem;color:var(--muted);font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.ad-creative{display:flex;align-items:center;justify-content:center;gap:.5rem;height:50px;border:1px dashed color-mix(in srgb,var(--muted) 60%,transparent);border-radius:var(--r-sm);background:var(--bg);color:var(--muted);font-size:.85rem;font-weight:600}.ad-size{font-size:.75rem;font-weight:500}.help{border:2px solid var(--tile);border-radius:var(--r-lg);padding:.25rem 1.25rem 1rem;font-size:.9375rem}.help h2{font-size:1.1rem}.help h3{font-size:.95rem;margin-bottom:.25rem}.help ul{padding-left:1.1rem;margin:.5rem 0}.help li{margin-bottom:.35rem}.help .keys{list-style:none;padding-left:0}kbd{font:inherit;font-size:.8em;font-weight:700;border:2px solid var(--tile);border-radius:var(--r-sm);padding:0 .35em;margin-right:.15em}.result{grid-area:1 / 1;align-self:start;z-index:2;margin:0;padding:.5rem 1.25rem .65rem;border:2px solid var(--tile);border-radius:var(--r-lg);background:var(--bg);box-shadow:0 6px 24px #0000002e;text-align:center;font-size:clamp(1.5rem,8vw,2rem);font-weight:800;letter-spacing:-.01em}.result .detail{display:block;font-size:.55em;font-weight:600;color:var(--muted)}.board-area{flex:1;display:grid;place-items:center;min-height:14rem}#announcer{position:fixed;top:0;left:0}.board{grid-area:1 / 1;--cell: min( 3.25rem, calc((100vw - 3rem) / var(--cols, 6)), calc((100svh - 24rem) / var(--rows, 6)) );display:flex;flex-direction:column}.board:focus-visible{outline-offset:8px}.row{display:flex}.cell{position:relative;width:var(--cell);height:var(--cell);display:grid;place-items:center}.cell.finite{background:var(--tile)}.cell.jump{background:var(--tile-jump)}.cell.infinite,.cell.rotate{background:var(--tile-action)}.cell.home{background:var(--tile-home)}.cell.empty{background:none}.dot{position:absolute;width:17%;height:17%;border-radius:50%;background:var(--dot);transform:translate(-50%,-50%)}.cell img{width:58%;height:58%;object-fit:contain;filter:var(--icon-filter)}.cell.home img{width:100%;height:100%;filter:none}:root[data-theme=dark] .cell.home img{filter:brightness(.85)}.fx{position:fixed;inset:0;z-index:3;pointer-events:none;overflow:hidden}.fx .ghost{position:absolute}.player-frame{position:absolute;left:0;top:0;z-index:1;outline:2px solid var(--outline);will-change:transform;transition:none}.fx .won-home{position:absolute;left:var(--cx, 50%);top:var(--cy, 50%);margin:calc(var(--cell) * -.5) 0 0 calc(var(--cell) * -.5);z-index:1;outline:calc(var(--cell) * .105) solid var(--outline)}.fx .confetti{position:absolute;left:0;top:0;z-index:2;transform:translate(-100px,-100px);will-change:transform}.result:not([hidden]){animation:rise .28s cubic-bezier(.22,.9,.25,1) both}@keyframes rise{0%{transform:translateY(.35em) scale(.94)}}.scoreline{margin:0;text-align:center;color:var(--muted);font-size:.9375rem;font-weight:600;font-variant-numeric:tabular-nums}.dock{--key: min(4.25rem, 19vw);--key-gap: .4rem;position:relative;display:grid;place-items:center;min-height:calc(3 * var(--key) + 2 * var(--key-gap))}.dock-primary{display:grid;place-items:center}.pad{display:grid;grid-template:repeat(3,var(--key)) / repeat(3,var(--key));gap:var(--key-gap)}.pad button{display:grid;place-items:center;width:100%;height:100%;padding:0;border:none;border-radius:var(--r-lg);background:var(--pad-bg);cursor:pointer;touch-action:manipulation;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent;transition:transform 80ms ease-out,opacity .12s ease-out}.pad button:before{content:"";width:42%;height:42%;background:var(--pad-arrow);clip-path:polygon(50% 12%,95% 84%,5% 84%)}.pad-up{grid-area:1 / 2}.pad-down{grid-area:3 / 2}.pad-down:before{rotate:180deg}.pad-left{grid-area:2 / 1}.pad-left:before{rotate:-90deg}.pad-right{grid-area:2 / 3}.pad-right:before{rotate:90deg}.pad button:active:not(:disabled){transform:scale(.93)}.pad button:disabled{cursor:not-allowed;opacity:.35}@media(hover:hover){.pad button:hover:not(:disabled):before{filter:drop-shadow(0 0 3px var(--pad-arrow))}}.retry{display:grid;place-items:center;gap:.25rem;background:none;border:none;color:inherit;font:inherit;font-weight:700;cursor:pointer;padding:.5rem}.retry img{width:5.5rem;height:5.5rem;filter:var(--icon-filter)}.next{display:grid;place-items:center;gap:.35rem;background:none;border:none;color:var(--muted);font:inherit;font-size:.9375rem;font-weight:700;cursor:pointer;padding:0}.next-tile{display:grid;place-items:center;width:7rem;height:7rem}.next-tile img{width:100%;height:100%}.dock-side{position:absolute;right:0;bottom:0;display:flex;flex-direction:column;gap:.75rem}.side-button{width:min(3.25rem,14vw);height:min(3.25rem,14vw);display:grid;place-items:center;background:none;border:none;color:inherit;padding:.35rem;cursor:pointer;border-radius:var(--r-md)}.home-foot .side-button{width:var(--control);height:var(--control);padding:.45rem;border:2px solid var(--tile);background:var(--bg);color:var(--fg)}.home-foot .side-button:hover{border-color:var(--muted)}.side-button img,.side-button svg{width:100%;height:100%}.side-button img{filter:var(--icon-filter)}.side-button:disabled{opacity:.3;cursor:not-allowed}.side-button:hover:not(:disabled){background:var(--tile)}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}.cell.numeric{font-weight:800;font-size:calc(var(--cell) * .45);color:var(--dot)}@media(max-width:21rem){.dock{grid-auto-flow:row;gap:.75rem;min-height:0}.dock-side{position:static;flex-direction:row;justify-content:center}}.button-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.stage{display:none}.keys-hint{display:none;margin:0;text-align:center;color:var(--muted);font-size:.875rem;font-weight:600}@media(min-width:48rem)and (min-height:34rem){body{display:flex;flex-direction:column;background:var(--page)}.screen{width:calc(100% - 4rem);max-width:32rem;margin:auto;min-height:min(50rem,calc(100vh - 4rem));padding:2.5rem 2.5rem 2rem;background:var(--bg);border:1px solid var(--card-edge);border-radius:24px;box-shadow:0 1px 2px #0000000d,0 16px 48px #00000014}.board{--cell: min( 4.25rem, calc(27rem / var(--cols, 6)), calc((100vh - 27rem) / var(--rows, 6)) )}.home,.calendar,.settings{min-height:0;gap:1.25rem}.home-tile{width:8.5rem;margin:.5rem 0 0}.home-play{gap:1rem;margin-bottom:.5rem}.play{padding:1.1rem .5rem}.home-foot{justify-content:center;gap:1.25rem}.home-foot .side-button{width:auto;display:inline-flex;align-items:center;gap:.5rem;padding:0 1rem 0 .75rem;font:inherit;font-size:.9375rem;font-weight:700}.home-foot .side-button svg{width:1.35rem;height:1.35rem}.button-label{position:static;width:auto;height:auto;overflow:visible;clip-path:none}.day-number{font-size:1rem}.calendar{gap:1.25rem}.calendar-body{width:min(100%,max(22rem,calc((100vh - 24rem) * 5 / 7)));margin:0 auto}.calendar .home-foot{flex-direction:row;justify-content:center;align-items:flex-end;gap:1.25rem}.calendar-home{width:3.5rem;height:3.5rem}}@media(min-width:48rem)and (hover:hover)and (pointer:fine){.keys-hint{display:block}}@media(min-width:60rem)and (min-height:34rem){.game{max-width:70rem;height:min(56rem,calc(100vh - 4rem));min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 20rem;grid-template-rows:auto auto auto 1fr auto auto auto;grid-template-areas:"board head" "board help" "board result" "board ." "board score" "board dock" "board keys";column-gap:3rem;row-gap:1rem}.stage{display:block;grid-area:board;margin:-1rem;border-radius:var(--r-lg);background:color-mix(in srgb,var(--tile) 22%,var(--bg))}.game .masthead{grid-area:head}.game .topbar{grid-template-columns:auto 1fr auto;grid-template-areas:"home . help" "title title title";row-gap:.75rem}.game .topbar>#home-button{grid-area:home}.game .topbar>#help-button{grid-area:help}.game .topbar-title{grid-area:title}.game .help{grid-area:help;overflow:auto}.game .scoreline{grid-area:score}.game .dock{grid-area:dock}.game .keys-hint{grid-area:keys}.board-area{display:contents}.result{grid-area:result;align-self:start}.board{grid-area:board;place-self:center;position:relative;--cell: min( 5.5rem, calc((min(100vw - 4rem, 70rem) - 30rem) / var(--cols, 6)), calc((min(100vh - 4rem, 56rem) - 7rem) / var(--rows, 6)) )}}
