:root{--c-white:#fff;--c-red:#e3262b;--c-yellow:#ffcd00;--c-blue:#1f4bb8;--c-black:#000;--font:"neue-haas-grotesk-text", "Helvetica Neue", Helvetica, Arial, sans-serif;--display:"neue-haas-grotesk-display", "Helvetica Neue", Helvetica, Arial, sans-serif;--gutter:16px;--rule:3px solid #000;--ease-out:cubic-bezier(.16, 1, .3, 1);color-scheme:light}@media (width>=860px){:root{--gutter:32px}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{color:#000;min-height:100svh;font:16px/1.45 var(--font);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;background:#fff;flex-direction:column;margin:0;display:flex;overflow-x:clip}a{color:inherit}[hidden]{display:none!important}.vh{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.tnum{font-variant-numeric:tabular-nums}:focus-visible{outline:3px solid var(--c-blue);outline-offset:2px}.top{height:56px;padding:0 calc(var(--gutter) - 6px) 0 var(--gutter);border-bottom:var(--rule);justify-content:space-between;align-items:center;gap:12px;display:flex}.mark{align-items:center;gap:10px;text-decoration:none;display:inline-flex}.mark__logo{background:#000;grid-template-rows:13px 7px;grid-template-columns:13px 7px;gap:2px;padding:2px;display:grid}.mark__logo i:first-child{background:var(--c-red)}.mark__logo i:nth-child(2){background:#fff}.mark__logo i:nth-child(3){background:var(--c-yellow)}.mark__logo i:nth-child(4){background:var(--c-blue)}.mark__name{font:700 22px/1 var(--display);letter-spacing:-.01em}.tools{gap:2px;display:flex}.tool{color:#000;cursor:pointer;background:0 0;border:2px solid #0000;place-items:center;width:44px;height:44px;padding:0;display:grid}@media (hover:hover){.tool:hover{border-color:#000}}.tool svg{fill:none;stroke:#000;stroke-width:2px;stroke-linecap:square;width:24px;height:24px}.tool svg .solid{fill:#000;stroke:none}@media (width<=400px){.tools{gap:0}.tool{width:40px}.mark{gap:8px}.mark__name{font-size:20px}}@media (width<=345px){.mark__logo{display:none}}.tool[aria-pressed=true] .off,.tool[aria-pressed=false] .on{display:none}.game{width:100%;max-width:1240px;padding:10px var(--gutter) 16px;--chrome:318px;flex:1;grid-template-columns:minmax(0,1fr);grid-template-areas:"head""board""panel";gap:14px;margin:0 auto;display:grid}@media (width>=860px){.game{--chrome:110px;grid-template:"board head""board panel"1fr/auto minmax(300px,360px);justify-content:center;align-items:start;gap:22px 56px;padding-top:24px}}.game__head{flex-wrap:wrap;grid-area:head;align-items:baseline;gap:4px 16px;display:flex}@media (width>=860px){.game__head{flex-direction:column}}.game__title{font:700 48px/.95 var(--display);letter-spacing:-.02em;margin:0;font-size:round(clamp(34px,5vw,64px),1px)}.game__date{margin:0;font-size:15px}.game__board{width:min(100%, max(250px, calc((100svh - var(--chrome)) * var(--ar,1))));aspect-ratio:var(--ar,1);grid-area:board;justify-self:center}@media (width>=860px){.game__board{width:min(calc((100svh - var(--chrome)) * var(--ar,1)), calc(100vw - 2 * var(--gutter) - 420px), 780px);min-width:300px}}.noscript{border:var(--rule);padding:24px}.board{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;width:100%;height:100%;display:block;overflow:visible}.board--play,.board--paint{cursor:crosshair}.board--paint{cursor:pointer}.board--demo{pointer-events:none;cursor:default}.board:focus{outline:none}.board:focus-visible{outline:3px solid var(--c-blue);outline-offset:6px}.board .dot,.board .block{fill:#000}.board .piece rect{transition:fill .14s}.board .c0 rect{fill:#fff}.board .c1 rect{fill:var(--c-red)}.board .c2 rect{fill:var(--c-yellow)}.board .c3 rect{fill:var(--c-blue)}.board .c4 rect{fill:#000}.board text{font-family:var(--font);fill:#000;pointer-events:none}.board .c1 text,.board .c3 text,.board .c4 text{fill:#fff}.board .area{font-family:var(--display);font-weight:700}.board .dims{font-weight:500}.board .piece .pin{fill:#000}.board .c1 .pin,.board .c3 .pin,.board .c4 .pin{fill:#fff}.board .piece--doomed rect{fill:url(#hatch)}.board .edge,.board .outline{fill:none;stroke:#000;stroke-width:.1px;transition:stroke-width .3s var(--ease-out)}.board .preview rect{fill:#fff;stroke:#000;stroke-width:.1px}.board .preview--dup rect{fill:var(--c-yellow)}.board .preview--bad rect{fill:none;stroke:var(--c-red);stroke-dasharray:.2 .14}.board .cursor{fill:none;stroke:var(--c-blue);stroke-width:.07px}.board .piece--new{transform-box:fill-box;transform-origin:50%;animation:pop .26s var(--ease-out)}@keyframes pop{0%{transform:scale(.82)}}.board .piece--intro rect{animation:paint-in .6s var(--ease-out) both;animation-delay:calc(.12s + var(--i,0) * 60ms)}@keyframes paint-in{0%{fill:#fff}}.game.is-par .board .edge,.game.is-par .board .outline{stroke-width:.18px}.stamp{z-index:20;pointer-events:none;visibility:hidden;place-items:center;display:grid;position:fixed;inset:0}.stamp span{background:var(--c-red);color:#fff;font:700 120px/1 var(--display);letter-spacing:-.03em;padding:.04em .3em .1em;font-size:round(clamp(52px,15vw,150px),1px);transform:rotate(-8deg)}.stamp.is-on{visibility:visible;animation:stamp 1.5s var(--ease-out) both}@keyframes stamp{0%{opacity:0;transform:scale(2.4)rotate(-14deg)}16%{opacity:1;transform:none}82%{opacity:1;transform:none}to{opacity:0;transform:scale(.96)}}.panel{display:contents}.score{flex-wrap:wrap;grid-area:score;align-self:end;align-items:baseline;gap:0 10px;display:flex}.score p{margin:0}.score__label,.facts dt{letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:700}.score__label{width:100%}.score__value{font:700 44px/.95 var(--display);letter-spacing:-.03em}.score__value.is-partial{color:#fff;-webkit-text-stroke:1.5px #000}.score__formula{font-size:14px}.facts{grid-area:facts;align-self:end;gap:12px;margin:0;display:flex}.facts div{border-top:var(--rule);min-width:64px;padding-top:4px}.facts dd{font:700 28px/1.1 var(--display);margin:0}.facts dd.is-par{color:var(--c-red)}.status{grid-area:status;min-height:2.8em;margin:0;font-size:16px;line-height:1.4}.status.is-flash{animation:1.8s flash}@keyframes flash{0%,70%{background:var(--c-yellow)}to{background:0 0}}.wallline{grid-area:wall;margin:0}.wallline button{color:#000;font:700 15px/1.4 var(--font);text-align:left;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline 2px}.wallline button:disabled{cursor:default;text-decoration:none}@media (hover:hover){.wallline button:not(:disabled):hover{color:var(--c-blue)}}.actions{flex-wrap:wrap;grid-area:actions;gap:8px;display:flex}.actions .btn{flex:auto;padding:0 12px}.actions [data-frame]{flex-grow:2}@media (width<=859px){.game{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"head head""score facts""board board""status status""crowd crowd""wall wall""actions actions""tomorrow tomorrow";gap:10px 12px}.game__board{margin:4px 0}}@media (width>=860px){.panel{grid-area:panel;gap:20px;padding-top:4px;display:grid}.panel>*{grid-area:auto}.score{display:block}.score__value{font-size:round(clamp(72px,8vw,120px),1px);line-height:.88}.score__value.is-partial{-webkit-text-stroke-width:2px}.score__formula{font-size:15px;margin-top:6px!important}.facts{gap:24px}.facts div{min-width:84px;padding-top:6px}.facts dd{font-size:34px}.status{font-size:17px}.actions .btn{padding:0 16px}}.btn{transition:transform 90ms var(--ease-out), background-color .12s, border-color .12s, color .12s;color:#000;min-height:46px;font:700 15px/1 var(--font);cursor:pointer;appearance:none;background:#fff;border:2px solid #000;justify-content:center;align-items:center;gap:8px;padding:0 16px;text-decoration:none;display:inline-flex}@media (hover:hover){.btn:hover{color:#fff;background:#000}}.btn:disabled{cursor:default;border-style:dashed}@media (hover:hover){.btn:disabled:hover{color:#000;background:#fff;border-color:#000}}.btn[hidden]{display:none}.btn--primary{color:#fff;background:#000}@media (hover:hover){.btn--primary:hover{background:var(--c-blue);border-color:var(--c-blue)}}.btn--primary:disabled{color:#000;background:#fff}.btn--red{background:var(--c-red);border-color:var(--c-red);color:#fff}@media (hover:hover){.btn--red:hover{background:#000;border-color:#000}}.btn--plain{text-underline-offset:3px;background:0 0;border-color:#0000;min-height:40px;padding:0;text-decoration:underline}@media (hover:hover){.btn--plain:hover{color:#000;background:0 0;text-decoration-thickness:3px}}.btn--wide{width:100%;margin-top:8px}.foot{padding:14px var(--gutter);border-top:var(--rule);flex-wrap:wrap;justify-content:space-between;gap:4px 24px;font-size:14px;display:flex}.foot p{margin:0}dialog{color:#000}dialog::backdrop{background:#ffffffeb}.sheet{overscroll-behavior:contain;border:var(--rule);background:#fff;width:min(560px,100% - 16px);max-height:calc(100svh - 16px);padding:0;overflow:auto}.sheet__inner{padding:24px var(--gutter) var(--gutter);position:relative}[tabindex="-1"]:focus{outline:none}.sheet__foot{margin:0 calc(-1 * var(--gutter)) calc(-1 * var(--gutter));padding:12px var(--gutter) var(--gutter);border-top:var(--rule);background:#fff;position:sticky;bottom:0}.sheet__foot .btn--wide{margin:0}.sheet__close{width:44px;height:44px;font:400 30px/1 var(--font);cursor:pointer;background:0 0;border:2px solid #0000;position:absolute;top:6px;right:6px}@media (hover:hover){.sheet__close:hover{border-color:#000}}.sheet__title{font:700 32px/1 var(--display);letter-spacing:-.02em;margin:0 48px 16px 0}.sheet__title--sub{border-top:var(--rule);margin-top:32px;margin-right:0;padding-top:16px}.sheet h3{font:700 18px/1.2 var(--display);margin:24px 0 8px}.sheet p{margin:0 0 12px}.help__demo{aspect-ratio:1;width:112px;margin:0 0 16px}.rules{margin:0 0 16px;padding-left:1.3em}.help__how{font-size:14px}.rules li{margin:0 0 8px}.swatch{vertical-align:-1px;border:2px solid #000;width:13px;height:13px;margin:0 5px 0 2px;display:inline-block}.swatch--red{background:var(--c-red)}.swatch--blue{background:var(--c-blue)}.swatch--yellow{background:var(--c-yellow)}.swatch--white{background:#fff}.numbers{grid-template-columns:repeat(4,1fr);gap:8px;margin:0 0 16px;display:grid}.numbers div{border-top:var(--rule);flex-direction:column-reverse;padding-top:6px;display:flex}.numbers dd{font:700 36px/1.1 var(--display);margin:0;font-size:round(clamp(24px,7.4vw,36px),1px)}.numbers dt{letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:700}.dist{margin:0;padding:0;list-style:none}.dist li{grid-template-columns:92px 1fr;align-items:center;gap:8px;margin:0 0 6px;font-size:14px;display:grid}.dist__bar{width:calc(30px + (100% - 30px) * var(--v));color:#fff;text-align:right;background:#000;height:28px;padding-right:8px;line-height:28px;display:block}.dist__bar.is-today{background:var(--c-red)}.next{font-weight:700;margin-top:20px!important}.legend{font-size:14px}.archive{grid-template-columns:repeat(auto-fill,minmax(50px,1fr));gap:6px;margin:0;padding:0;list-style:none;display:grid}.day{aspect-ratio:1;border:2px solid #000;place-items:center;font-weight:700;text-decoration:none;display:grid}@media (hover:hover){.day:hover{color:#fff;background:#000}}.day.is-par{background:var(--c-red);color:#fff}.day.is-done{background:var(--c-yellow)}.day.is-started{outline-offset:-7px;outline:2px solid #000}.day.is-current{border-width:4px;border-color:var(--c-blue)}.archive--squares{grid-template-columns:repeat(auto-fill,minmax(76px,1fr))}.day--square{aspect-ratio:auto;text-align:center;padding:10px 4px;line-height:1.2}.day--square small{font-weight:400;display:block}.frame{overscroll-behavior:contain;background:#fff;border:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0;overflow:auto}.frame::backdrop{background:#fff}.frame__inner{flex-direction:column;min-height:100%;display:flex}.frame__bar{height:56px;padding:0 var(--gutter);border-bottom:var(--rule);align-items:center;display:flex}.frame__body{width:100%;max-width:1240px;padding:24px var(--gutter) 40px;flex:1;gap:28px;margin:0 auto;display:grid}@media (width>=860px){.frame__body{grid-template-columns:minmax(0,1fr) 380px;align-items:center;gap:56px}}.frame__art{flex-direction:column;align-items:center;gap:10px;display:flex;position:relative}.frame__board{width:min(100%, calc((100svh - 260px) * var(--ar,1)), 640px);aspect-ratio:var(--ar,1)}@media (width<=859px){.frame__board{width:min(100%, calc((100svh - 300px) * var(--ar,1)))}}.frame__board.is-covered{visibility:hidden}.frame__tip{margin:6px 0 0;font-size:14px}.frame__side{flex-direction:column;gap:18px;display:flex}.sign{display:block}.sign__label{letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:700;display:block}.sign input{border:0;border-bottom:var(--rule);color:#000;width:100%;font:700 28px/1.2 var(--display);background:0 0;border-radius:0;outline:none;padding:4px 0 6px}.sign input:focus{border-bottom-color:var(--c-blue)}.sign input::placeholder{color:#000;opacity:1;font-weight:400}.label{font-size:15px;line-height:1.45}.label p{margin:0}.label__name{font:700 20px/1.3 var(--display)}.label__title{font-style:italic}.share{gap:8px;display:grid}.toast{min-height:1.45em;margin:-8px 0 0;font-size:14px;font-weight:700}.toast:empty{visibility:hidden}@media (width<=859px){.frame .share{z-index:5;padding:10px var(--gutter) calc(10px + env(safe-area-inset-bottom));border-top:var(--rule);background:#fff;grid-auto-columns:1fr;grid-auto-flow:column;gap:6px;position:fixed;inset:auto 0 0}.frame .share .btn{text-align:center;padding:0 6px;font-size:14px}.frame .toast{inset:auto var(--gutter) calc(80px + env(safe-area-inset-bottom));z-index:6;background:var(--c-yellow);margin:0;padding:8px 12px;position:fixed}.frame__body{padding-bottom:110px}}.visit__by{font:700 30px/1.1 var(--display);margin:0;font-size:round(clamp(26px,3vw,34px),1px)}.cover{border:var(--rule);text-align:center;background:#fff;align-content:center;gap:10px;min-height:100%;padding:24px;display:grid;position:absolute;inset:0 0 auto}.cover p{margin:0 0 6px;font-size:17px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}.stamp.is-on{animation:none}}.frame__jump{min-height:40px;margin-left:auto;padding:0 14px}@media (width>=860px){.frame__jump{display:none}}.wallsign{border:var(--rule);border-left:12px solid var(--c-red);gap:10px;padding:14px 16px 16px;display:grid}.wallsign.is-signed{background:var(--c-yellow);border-left-color:#000}.wallsign p{margin:0}.wallsign__title{font:700 24px/1.1 var(--display);margin:0}.wallsign__error{color:var(--c-red);font-weight:700}.wallsign__error:empty{display:none}.sheet--wall{width:min(980px,100% - 16px)}.wall__sub{font-size:17px}.wall{grid-template-columns:repeat(auto-fill,minmax(124px,1fr));align-items:end;gap:24px 18px;margin:20px 0 16px;padding:0;list-style:none;display:grid}.wall__item{min-width:0}.wall__art{cursor:zoom-in;background:0 0;border:0;width:100%;margin:0 0 8px;padding:0;display:block}.wall__art svg{width:100%;aspect-ratio:var(--ar,1);display:block}@media (hover:hover){.wall__art:hover svg{outline:3px solid var(--c-blue);outline-offset:3px}}.sheet .wall__name{font:700 15px/1.3 var(--display);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.sheet .wall__no{margin:0;font-size:13px}.wall__you{background:var(--c-yellow);letter-spacing:.06em;text-transform:uppercase;padding:0 4px;font-size:12px}.wall__item.is-mine .wall__art svg{outline:6px solid var(--c-yellow);outline-offset:0}.wall__note:empty{display:none}@media (width<=859px){.crowd{grid-area:crowd}}.crowd{margin:0;font-size:15px;font-weight:700}.numbers--three{grid-template-columns:repeat(3,1fr)}.sheet .stats__sub{letter-spacing:.08em;text-transform:uppercase;margin:0 0 10px;font-size:13px}.crowdstats{margin-bottom:8px}.crowdstats .numbers{margin-bottom:24px}.tomorrow,.frame__next{margin:0;font-size:15px;line-height:1.45}@media (width<=859px){.tomorrow{grid-area:tomorrow}}.tomorrow:not([hidden]),.frame__next:not([hidden]){animation:rise .42s var(--ease-out) both}.streak{background:var(--c-yellow);padding:0 5px;font-weight:700}.remind{border-top:var(--rule);margin-top:24px;padding-top:16px}.sheet .remind h3{margin-top:0}.remind__row{flex-wrap:wrap;align-items:center;gap:10px 14px;display:flex}.remind__time{align-items:center;gap:8px;font-weight:700;display:inline-flex}.remind__time input{color:#000;min-height:46px;font:700 16px/1 var(--font);background:#fff;border:2px solid #000;border-radius:0;padding:0 10px}.wall__par{background:var(--c-red);color:#fff;letter-spacing:.06em;text-transform:uppercase;padding:0 4px;font-size:12px}@keyframes rise{0%{opacity:0;transform:translateY(8px)}}.score__value.is-tick{animation:tick .24s var(--ease-out)}@keyframes tick{0%{opacity:.35;transform:translateY(-.14em)}}.facts dd.is-up{transform-origin:0 100%;animation:swell .62s var(--ease-out)}@keyframes swell{0%{color:var(--c-blue);transform:scale(1.45)}}.board.is-wave .piece{transform-box:fill-box;transform-origin:50%;animation:wave .62s var(--ease-out) both;animation-delay:calc(.14s + var(--d,0) * 42ms)}@keyframes wave{35%{transform:scale(.9)}}.wallsign.is-new{animation:wipe .56s var(--ease-out)}@keyframes wipe{0%{clip-path:inset(0 100% 0 0)}}.wall__art--hidden{aspect-ratio:var(--ar,1);cursor:default;border:3px dashed #000;place-items:center;display:grid}.wall__art--hidden span{font:700 40px/1 var(--display)}.wall__item{animation:rise .42s var(--ease-out) both;animation-delay:calc(var(--k,0) * 36ms)}.sheet[open]{animation:rise .26s var(--ease-out)}.frame[open],dialog[open]::backdrop{animation:fade .2s var(--ease-out)}@keyframes fade{0%{opacity:0}}.btn:active:not(:disabled),.tool:active{transform:translateY(1px)scale(.985)}
