.restoration{--dust:#46301c1a}@media (prefers-color-scheme:dark){.restoration{--dust:#00000038}}.restoration .game{cursor:auto}.spread.restoration .recto,.spread.restoration .verso{transform:none!important}.restoration .clock{font-variant-numeric:tabular-nums;color:var(--ink)}.restoration .head.m,.restoration .clock.m{display:none}.restoration .foot .credit a{color:inherit;text-decoration:underline;-webkit-text-decoration-color:var(--rule);text-decoration-color:var(--rule)}.restoration .foot .credit a:hover{color:var(--ink)}.restoration .foot .turn a{color:var(--muted);text-decoration:none}.restoration .foot .turn a:hover{color:var(--ink)}.restoration .title{margin:.2rem 0 .9rem}.restoration .stand{margin-bottom:.9rem}.restoration .how{color:var(--muted);max-width:38ch;margin:0 0 2rem;font-size:1rem}.restoration .how em{color:var(--ink)}.restoration .contents{margin-bottom:2rem}.restoration .contents a{padding:.55rem 0}.restoration .contents .y{white-space:nowrap}.restoration .ranks{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);grid-template-columns:repeat(3,1fr);margin:0 0 2rem;display:grid}.restoration .ranks button{font:400 1.02rem/1.3 var(--serif);color:var(--ink);border:0;border-left:1px solid var(--rule);text-align:left;cursor:pointer;background:0 0;flex-direction:column;gap:.3rem;padding:.65rem .7rem .75rem;display:flex}.restoration .ranks button:first-child{border-left:0;padding-left:0}.restoration .ranks button small{font:400 .75rem/1.35 var(--sans);color:var(--muted)}.restoration .ranks button:hover,.restoration .ranks button[aria-checked=true]{color:var(--accent)}.restoration .ranks button[aria-checked=true] small{color:var(--ink)}.restoration .record{margin:0;font-size:1rem}.restoration .game{flex-direction:column;padding:6px 2px 8px 0;display:flex;overflow:hidden}.restoration .panel{flex:none}.restoration .frame{background:color-mix(in srgb, var(--ink) 6%, var(--page));min-width:40px;min-height:40px;box-shadow:0 0 0 1px var(--rule), 0 22px 44px -20px #1e161080;margin:0 auto;transition:box-shadow .9s;position:relative}.restoration .frame.unsized{visibility:hidden}.restoration .frame.done{box-shadow:0 0 0 1px var(--rule), 0 0 0 8px color-mix(in srgb, var(--accent) 14%, transparent), 0 26px 50px -20px #1e16108c}.restoration .board{touch-action:none;position:absolute;inset:0}.restoration .done .board{animation:1.6s ease-in-out both restoration-breath}@keyframes restoration-breath{0%,to{scale:1}40%{scale:1.012}}.restoration .tile{width:calc(100% / var(--cols));height:calc(100% / var(--rows));background-color:color-mix(in srgb, var(--ink) 6%, var(--page));background-image:var(--img,none);background-repeat:no-repeat;background-size:calc(var(--cols) * 100%) calc(var(--rows) * 100%);background-position:calc(var(--x) * 100% / (var(--cols) - 1)) calc(var(--y) * 100% / (var(--rows) - 1));transform:translate(calc(var(--cx) * 100%), calc(var(--cy) * 100%)) translate(var(--dx,0px), var(--dy,0px)) scale(var(--s,1));transition:transform .42s var(--ease), box-shadow .2s ease;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;outline-offset:-2px;border:0;border-radius:0;margin:0;padding:0;position:absolute;top:0;left:0}.restoration .tile:after{content:"";pointer-events:none;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--page) 85%, transparent);background:var(--dust);transition:opacity .9s;position:absolute;inset:0}.restoration .tile.set:after,.restoration .done .tile:after{opacity:0}.restoration .tile.set,.restoration .done .tile,.restoration .loading .tile,.restoration .failed .tile{pointer-events:none;cursor:default}.restoration .tile.sel,.restoration .tile.over{outline:2px solid var(--accent);z-index:3}.restoration .tile:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;z-index:3}.restoration .done .tile{outline:none}.restoration .tile.drag{z-index:10;pointer-events:none;cursor:grabbing;--s:1.05;transition:box-shadow .2s;box-shadow:0 16px 30px #140e0859}@media (hover:hover){.restoration .board:not(.busy) .tile:not(.set):not(.drag):hover{--s:1.02;z-index:2;box-shadow:0 6px 16px #140e0840}}.restoration .loading .tile{background-image:none}.restoration .note{text-align:center;font:italic 400 1.05rem/1.4 var(--serif);color:var(--muted);pointer-events:none;opacity:0;z-index:15;margin:0;transition:opacity .3s;position:absolute;top:50%;left:10%;right:10%;translate:0 -50%}.restoration .loading .note,.restoration .failed .note{opacity:1}.restoration .peek-layer{background-image:var(--img,none);opacity:0;pointer-events:none;z-index:20;background-size:100% 100%;transition:opacity .22s;position:absolute;inset:0}.restoration .peeking .peek-layer{opacity:.94}.restoration .done .peek-layer{opacity:1;transition-duration:.9s}.restoration .glow{aspect-ratio:1;background:radial-gradient(circle, var(--spark), #fff0 62%);opacity:0;pointer-events:none;z-index:25;mix-blend-mode:screen;border-radius:50%;width:70%;position:absolute;top:50%;left:50%;translate:-50% -50%}.restoration .done .glow{animation:1.5s ease-out both restoration-glow}@keyframes restoration-glow{0%{opacity:0;scale:.5}30%{opacity:.85;scale:1.05}to{opacity:0;scale:1.35}}.restoration .caption{border-top:1px solid var(--rule);flex:none;margin-top:16px;padding-top:.7rem}.restoration .caption .work-line{margin:0;font-size:1rem;line-height:1.45}.restoration .caption .row{font:500 .78rem/1.5 var(--sans);color:var(--muted);letter-spacing:.01em;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.3rem 1.4rem;margin-top:.4rem;display:flex}.restoration .caption .stat{margin:0}.restoration .done .caption .status{color:var(--accent)}.restoration .tools{gap:1.4rem;display:flex}.restoration .tools button{font:inherit;color:var(--ink);cursor:pointer;letter-spacing:inherit;background:0 0;border:0;padding:0}.restoration .tools button:hover{color:var(--accent)}.restoration .tools button[disabled]{color:var(--rule);cursor:default}.restoration .tools button.hold:active,.restoration .tools button.hold.on{color:var(--accent)}@media (max-width:899px){.spread.restoration:not([hidden]){flex-direction:column;display:flex}.restoration .page{flex:none}.restoration .recto{order:-1}.restoration .verso .head{display:none}.restoration .recto .head.m{display:flex}.restoration .clock.m{display:inline}.restoration .verso .foot{display:flex}.restoration .game{overflow:visible}.restoration .verso .body{border-top:1px solid var(--rule);padding-top:1.2rem}}@media (prefers-reduced-motion:reduce){.restoration .tile,.restoration .frame,.restoration .tile:after,.restoration .peek-layer,.restoration .note{transition:none!important}.restoration .glow,.restoration .board{animation:none!important}}
