.sol-wrap{--sol-face: #F0EADA;--sol-face-edge: #CFC7B2;--sol-ink: #22242A;--sol-red: #A03329;--sol-back: #262931;--sol-back-edge: #3A3E49;--sol-gold: #C8A06A;--sol-w: min(100%, 880px, calc((100dvh - 235px)*1.18) );--sol-gx: clamp(4px, 1.4vw, 9px);display:flex;flex-direction:column;align-items:center;gap:clamp(.55rem,1.8vw,.85rem);width:100%}.sol-meta,.sol-board,.sol-actions,.sol-hint-line{width:var(--sol-w)}.sol-meta{display:flex;align-items:center;justify-content:space-between;gap:.8rem;font-family:var(--font-ui);font-size:.78rem;color:var(--muted)}.sol-meta-right{display:flex;align-items:center;gap:clamp(.7rem,2.6vw,1.3rem)}.sol-moves{font-variant-numeric:tabular-nums}.sol-moves b{color:var(--text);font-weight:600;font-family:var(--font-mono)}.sol-timer{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--text);font-weight:600}.sol-modes{display:flex;gap:.2rem;padding:.22rem;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}.sol-mode{padding:.38rem .72rem;border:0;border-radius:8px;background:transparent;color:var(--muted);font-family:var(--font-ui);font-size:.78rem;font-weight:600;letter-spacing:-.01em;cursor:pointer;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.sol-mode.is-active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-raised)}@media(hover:hover)and (pointer:fine){.sol-mode:not(.is-active):hover{color:var(--text)}}.sol-board{position:relative;display:grid;gap:clamp(.5rem,1.8vw,.9rem);-webkit-user-select:none;user-select:none}.sol-top,.sol-tableau{display:grid;grid-template-columns:repeat(7,1fr);gap:var(--sol-gx)}.sol-tableau{align-items:start}.sol-pile{position:relative;z-index:0;min-width:0;container-type:inline-size}.sol-stock,.sol-found{aspect-ratio:5 / 7}.sol-waste{aspect-ratio:5 / 7;z-index:2}.sol-top-gap{min-width:0}.sol-tab{border-radius:clamp(4px,9cqw,10px)}.sol-pile.is-drop{outline:3px dashed var(--accent);outline-offset:3px;border-radius:8px}.sol-slot{display:grid;place-items:center;width:100%;aspect-ratio:5 / 7;padding:0;border:1.5px dashed color-mix(in srgb,var(--text) 26%,transparent);border-radius:clamp(4px,9cqw,10px);background:color-mix(in srgb,var(--surface-2) 55%,transparent);color:color-mix(in srgb,var(--text) 34%,transparent)}button.sol-slot{cursor:pointer}button.sol-slot:disabled{cursor:default;opacity:.6}.sol-slot svg{width:36%;fill:currentColor}.sol-slot .sol-khint{font-family:var(--font-display);font-weight:500;line-height:1;font-size:clamp(1rem,42cqw,2.6rem)}.sol-slot .sol-cycle{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;width:42%;color:var(--muted)}.sol-card{display:block;width:100%;aspect-ratio:5 / 7;padding:0;margin:0;border-radius:clamp(4px,9cqw,10px);border:1px solid var(--sol-face-edge);position:relative;text-align:left;box-shadow:0 1px 2px color-mix(in srgb,#000 22%,transparent);transition:transform .12s ease,box-shadow .12s ease}.sol-tab .sol-card,.sol-waste .sol-card{position:absolute;left:0;top:0}.sol-card.is-up{background:var(--sol-face);color:var(--sol-ink)}.sol-card.is-red{color:var(--sol-red)}button.sol-card{cursor:pointer;touch-action:none;-webkit-tap-highlight-color:transparent}button.sol-card:focus-visible{outline:3px solid var(--ring);outline-offset:2px;z-index:6}.sol-idx{position:absolute;top:4.5%;left:7%;display:flex;align-items:center;gap:5%;max-width:86%;pointer-events:none}.sol-idx b{font-family:var(--font-display);font-weight:600;font-variation-settings:"opsz" 30;line-height:1;letter-spacing:-.02em;font-size:clamp(.72rem,24cqw,1.5rem)}.sol-idx svg{width:clamp(.5rem,17cqw,1.05rem);flex:none;fill:currentColor}.sol-pip{position:absolute;left:50%;top:56%;transform:translate(-50%,-50%);width:42%;fill:currentColor;pointer-events:none}.sol-court{position:absolute;inset:12% 0 0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4%;pointer-events:none}.sol-court b{font-family:var(--font-display);font-weight:500;font-variation-settings:"opsz" 72;line-height:1;font-size:clamp(1.3rem,46cqw,3rem)}.sol-court svg{width:22%;fill:currentColor}.sol-card.is-down{background:var(--sol-back);border-color:var(--sol-back-edge)}.sol-card.is-down:before{content:"";position:absolute;inset:8%;border:1px solid color-mix(in srgb,var(--sol-gold) 55%,transparent);border-radius:clamp(2px,5cqw,6px)}.sol-card.is-down:after{content:"";position:absolute;left:50%;top:50%;width:26%;aspect-ratio:1;transform:translate(-50%,-50%) rotate(45deg);border:1px solid color-mix(in srgb,var(--sol-gold) 45%,transparent)}.sol-stock-n{position:absolute;right:9%;bottom:6%;z-index:1;font-family:var(--font-mono);font-weight:600;line-height:1;color:var(--sol-gold);font-size:clamp(.55rem,15cqw,.85rem)}button.sol-stock-btn{touch-action:manipulation}.sol-card.is-sel{outline:3px solid var(--accent);outline-offset:-1px;transform:translateY(-5%);z-index:5;box-shadow:0 6px 14px color-mix(in srgb,#000 35%,transparent)}.sol-found .sol-card.is-sel,.sol-waste .sol-card.is-sel{transform:translateY(-6px)}.sol-ghost{position:fixed;left:0;top:0;z-index:220;pointer-events:none;container-type:inline-size;filter:drop-shadow(0 8px 14px color-mix(in srgb,#000 40%,transparent))}.sol-ghost .sol-card{position:absolute;left:0;transition:none}.sol-card.is-dragging{opacity:.35}@keyframes sol-shake{10%,90%{transform:translate(-1px)}20%,80%{transform:translate(2px)}30%,50%,70%{transform:translate(-3px)}40%,60%{transform:translate(3px)}}.sol-pile.sol-shake{animation:sol-shake .38s cubic-bezier(.36,.07,.19,.97) both}.sol-actions{display:flex;gap:.6rem;justify-content:center;flex-wrap:wrap}.sol-actions .btn{cursor:pointer}.sol-actions .btn:disabled{opacity:.45;cursor:default;transform:none;box-shadow:var(--shadow-raised)}.sol-finish{background:var(--correct);color:var(--ink-on-color)}@media(hover:hover)and (pointer:fine){.sol-finish:hover{background:color-mix(in srgb,var(--correct) 88%,#fff)}}.sol-finish[hidden]{display:none}.sol-hint-line{color:var(--muted);font-size:.78rem;text-align:center;line-height:1.5}.sol-hint-line kbd{font-family:var(--font-mono);font-size:.82em;padding:.05em .35em;border:1px solid var(--border);border-radius:5px;background:var(--surface-2);color:var(--text)}.sol-overlay{position:absolute;inset:0;display:none;place-items:center;text-align:center;z-index:10;padding:1.1rem;border-radius:var(--radius-card);background:color-mix(in srgb,var(--surface-2) 82%,transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:sol-fade .2s ease both}@keyframes sol-fade{0%{opacity:0}to{opacity:1}}.sol-overlay.show{display:grid}.sol-board:has(.sol-overlay.show){min-height:220px}.sol-over-kicker{font-family:var(--font-ui);font-size:.64rem;text-transform:uppercase;letter-spacing:.16em;font-weight:700;color:var(--ink-gold);margin-bottom:.35rem}.sol-over-title{font-family:var(--font-display);font-weight:600;font-variation-settings:"opsz" 40;font-size:clamp(1.6rem,6.5vw,2.2rem);letter-spacing:-.02em;color:var(--text);line-height:1.05}.sol-over-sub{color:var(--muted);font-size:.95rem;line-height:1.5;margin:.5rem 0 1.05rem}.sol-over-sub b{color:var(--text);font-weight:700}.sol-over-actions{display:flex;gap:.55rem;flex-wrap:wrap;justify-content:center}@media(prefers-reduced-motion:reduce){.sol-card,.sol-mode{transition:none}.sol-pile.sol-shake,.sol-overlay{animation:none}}@media(max-width:640px){.sol-meta{font-size:.72rem}.sol-mode{padding:.34rem .55rem;font-size:.72rem}.sol-hint-line{display:none}}#statsModal .rp-stats{flex-wrap:wrap;row-gap:.9rem}.modal-mini{font-size:.82rem;color:var(--muted)}.modal-confirm-msg{color:var(--muted);font-size:.95rem;line-height:1.55}.modal-actions{display:flex;gap:.6rem;justify-content:flex-end;flex-wrap:wrap}.modal-actions .btn{cursor:pointer}.sol-copy{max-width:var(--readw, 68ch);margin:clamp(1.8rem,5vw,2.8rem) auto 0}.sol-copy h2{font-family:var(--font-display);font-weight:500;font-variation-settings:"opsz" 40;font-size:clamp(1.25rem,3.6vw,1.6rem);letter-spacing:-.01em;color:var(--text);margin:clamp(1.4rem,3.5vw,2rem) 0 .6rem}.sol-copy h2:first-child{margin-top:0}.sol-copy p{color:var(--muted);font-size:1rem;line-height:1.7;margin:0 0 .9rem}.sol-copy p strong,.sol-copy li strong{color:var(--text);font-weight:600}.sol-copy ul{list-style:none;margin:0 0 .9rem;padding:0;display:grid;gap:.7rem}.sol-copy li{position:relative;padding-left:1.35rem;color:var(--muted);font-size:1rem;line-height:1.65}.sol-copy li:before{content:"";position:absolute;left:0;top:.6em;width:7px;height:7px;border-radius:2px;background:var(--ink-gold)}.sol-copy kbd{font-family:var(--font-mono);font-size:.84em;padding:.05em .35em;border:1px solid var(--border);border-radius:5px;background:var(--surface-2);color:var(--text)}.sol-ad{display:flex;justify-content:center;margin:clamp(1.6rem,4vw,2.6rem) 0 clamp(1rem,2.5vw,1.4rem)}
