.sol-table{--pad:clamp(6px, 1.4vw, 14px);margin:calc(-.5 * var(--pad)) calc(-1 * var(--pad));padding:var(--pad);border-radius:var(--r-md);background:var(--cream);justify-self:stretch}.sol{width:100%;min-height:320px}.sol--tripeaks:has(>.sol-board),.sol--golf:has(>.sol-board){min-height:0}.sol-board{--cr:calc(var(--cw) * .085);--cb:clamp(2px, calc(var(--cw) * .031), 2.5px);--sh:clamp(1.5px, calc(var(--cw) * .034), 3.5px);--card-sh:var(--sh) var(--sh) 0 var(--ink);--ring:0 0 0 calc(var(--cb) * 2) var(--sun), 0 0 0 calc(var(--cb) * 3) var(--ink);--glide:.25s cubic-bezier(.2, .8, .25, 1);touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;outline:none;width:100%;position:relative}.sol-slot{width:var(--cw);height:var(--ch);transform:translate(var(--x), var(--y));border-radius:var(--cr);border:2px dashed color-mix(in srgb, var(--ink) 45%, transparent);color:color-mix(in srgb, var(--ink) 24%, transparent);font-family:var(--font-display);font-weight:800;font-size:calc(var(--cw) * .44);letter-spacing:-.03em;transition:border-color .15s, background .15s, transform .14s var(--ease-spring);background:0 0;place-items:center;line-height:1;display:grid;position:absolute;top:0;left:0}.sol-slot--foundation,.sol-slot--done{background:color-mix(in srgb, var(--white) 45%, transparent)}.sol-slot--cell{background:color-mix(in srgb, var(--ink) 6%, var(--cream))}.sol-slot--pyramid{visibility:hidden}.sol-slot--stock{cursor:pointer}.sol-slot--stock.has-recycle{color:var(--ink);border:var(--cb) solid var(--ink);background:var(--white);box-shadow:var(--card-sh)}@media (hover:hover){.sol-slot--stock.has-recycle:hover{background:var(--sun)}}.sol-slot--stock.has-recycle:active{transform:translate(calc(var(--x) + var(--sh)), calc(var(--y) + var(--sh)));box-shadow:none}.sol-slot--stock.has-end{cursor:default;color:color-mix(in srgb, var(--ink) 40%, transparent)}.sol-slot--stock.has-end:after{content:"";background:currentColor;border-radius:2px;width:34%;height:2px;transform:rotate(-45deg)}.sol-slot.is-hot{border:var(--cb) solid var(--ink);background:var(--sun);color:var(--ink)}.sol-card{width:var(--cw);height:var(--ch);transform:translate3d(calc(var(--x) + var(--dx,0px)), calc(var(--y) + var(--dy,0px)), 0);z-index:calc(var(--z) + var(--lift-z,0));transition:transform var(--glide);transition-delay:var(--delay,0s);touch-action:none;outline:none;position:absolute;top:0;left:0}.sol-card.is-flying{--lift-z:1500}.sol-card.is-dragging{--lift-z:3000;cursor:grabbing;transition:none}.sol-card.no-anim,.sol-card.no-anim .sol-flip{transition:none}.sol-lift{perspective:900px;width:100%;height:100%;transition:transform .16s var(--ease-spring);position:relative}.sol-card.is-dragging .sol-lift{transform:translate(calc(var(--sh) * -1.2), calc(var(--sh) * -1.6))}.sol-flip{width:100%;height:100%;transform-style:preserve-3d;transition:transform .3s var(--ease-out);transition-delay:var(--delay,0s);position:relative}.sol-card.is-down .sol-flip{transform:rotateY(180deg)}.sol-face,.sol-back{border-radius:var(--cr);border:var(--cb) solid var(--ink);-webkit-backface-visibility:hidden;backface-visibility:hidden;box-shadow:var(--card-sh);transition:box-shadow .16s var(--ease-spring);position:absolute;inset:0}.sol-face{background:var(--white);overflow:hidden}.sol-svg{width:100%;height:100%;display:block}.sol-rank{font-family:var(--font-display);letter-spacing:-.03em;font-weight:800;font-stretch:100%}.sol-back{background:var(--ink);transform:rotateY(180deg)}.sol-back:before{content:"";inset:max(2px, calc(var(--cw) * .1));border-radius:calc(var(--cr) * .5);border:clamp(1.5px, calc(var(--cw) * .036), 2.5px) solid var(--sun);position:absolute}.sol-card.is-dragging .sol-face,.sol-card.is-dragging .sol-back{box-shadow:calc(var(--sh) * 2.2) calc(var(--sh) * 2.6) 0 var(--ink)}.sol-card.is-dim .sol-face:after{content:"";background:color-mix(in srgb, var(--cream) 52%, transparent);position:absolute;inset:0}.sol-card.can-act{cursor:pointer}@media (hover:hover){.sol-card.can-act:not(.is-dragging):not(.is-selected):hover .sol-lift{transform:translate(-1px,-1px)}.sol-card.can-act:not(.is-dragging):not(.is-selected):hover .sol-face,.sol-card.can-act:not(.is-dragging):not(.is-selected):hover .sol-back{box-shadow:calc(var(--sh) + 1px) calc(var(--sh) + 1px) 0 var(--ink)}}.sol-card:focus-visible .sol-face,.sol-card:focus-visible .sol-back{box-shadow:var(--ring), var(--card-sh)}.sol-card.is-selected .sol-lift{transform:translate(calc(var(--sh) * -.6), calc(var(--ch) * -.06))}.sol-card.is-selected .sol-face{box-shadow:var(--ring), calc(var(--sh) * 2) calc(var(--sh) * 2) 0 var(--ink)}.sol-card.is-drop .sol-face,.sol-card.is-drop .sol-back{box-shadow:var(--ring), var(--card-sh)}.sol-card.is-hint .sol-face,.sol-card.is-hint .sol-back,.sol-card.is-hint-target .sol-face,.sol-card.is-hint-target .sol-back{animation:sol-pulse .8s var(--ease-spring) 3}.sol-slot.is-hot{animation:sol-pulse-slot .8s var(--ease-spring) 3}@keyframes sol-pulse{0%,to{box-shadow:0 0 0 0 transparent, 0 0 0 0 transparent, var(--card-sh)}50%{box-shadow:var(--ring), var(--card-sh)}}@keyframes sol-pulse-slot{50%{background:var(--cream)}}.sol-card.is-nope .sol-lift{animation:sol-nope .32s var(--ease-out)}@keyframes sol-nope{20%{transform:translate(-4px)}45%{transform:translate(4px)}70%{transform:translate(-2px)}}.sol-cascade{pointer-events:none;z-index:5000;opacity:1;width:100%;height:100%;transition:opacity .8s;position:absolute;inset:0}.sol-cascade.is-fading{opacity:0}
