.sol-game{max-width:920px;margin-inline:auto}.sol-toolbar{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;justify-content:center;margin-bottom:1rem}.sol-toolbar button{margin:0;font-size:1.1rem;font-weight:800;min-height:var(--fgs-tap, 52px);padding-inline:1.25rem}.sol-howto{text-align:center;font-size:1.15rem;font-weight:700;color:var(--fgs-ink, #161616);background:var(--fgs-accent-soft, #e6f1e9);border:2px solid var(--fgs-accent, #16692f);border-radius:var(--fgs-radius, 14px);max-width:46ch;margin:0 auto 1rem;padding:.6rem 1rem}.sol-help-bar{display:flex;justify-content:center;margin-bottom:1.25rem}.sol-hint-btn{margin:0;min-height:64px;font-size:1.35rem;font-weight:800;padding:.6rem 2rem;background:var(--fgs-hint, #b06a00);border:3px solid var(--fgs-hint, #b06a00);color:#fff;border-radius:var(--fgs-radius, 14px);box-shadow:0 3px color-mix(in srgb,var(--fgs-hint, #b06a00) 60%,#000)}.sol-hint-btn:hover{background:color-mix(in srgb,var(--fgs-hint, #b06a00) 85%,#000);border-color:color-mix(in srgb,var(--fgs-hint, #b06a00) 85%,#000)}.sol-top{display:flex;flex-wrap:wrap;gap:1.25rem;align-items:flex-start;justify-content:space-between;margin-bottom:1.25rem}.sol-piles,.sol-foundations{display:flex;gap:.75rem}.sol-zone-label{display:block;font-size:.85rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--pico-muted-color);margin-bottom:.35rem}.sol-zone{margin:0}:root,.sol-game{--sol-card-w: 5.6rem;--sol-card-h: 8rem;--sol-overlap: 2.1rem}@media(max-width:560px){.sol-game{--sol-card-w: 4rem;--sol-card-h: 5.7rem;--sol-overlap: 1.5rem}}.sol-pile,.sol-card{box-sizing:border-box;width:var(--sol-card-w);height:var(--sol-card-h);border-radius:10px;margin:0;padding:0;display:grid;place-items:center}.sol-placeholder{border:3px dashed var(--pico-muted-border-color, #b8c0cc);background:transparent;pointer-events:none}.sol-card{position:relative;border:2px solid var(--pico-color);background:#fff;cursor:pointer;font-weight:800;line-height:1;box-shadow:0 1px 2px #0000002e}.sol-card.sol-up{background:#fff}.sol-card.sol-red{color:#c1121f}.sol-card.sol-black{color:#111}.sol-corner{position:absolute;display:flex;flex-direction:column;align-items:center;line-height:.95}.sol-corner .sol-rank{font-size:1.25rem;font-weight:900}.sol-corner .sol-suit{font-size:1rem}.sol-tl{top:.25rem;left:.3rem}.sol-br{bottom:.25rem;right:.3rem;transform:rotate(180deg)}.sol-pip{font-size:2.3rem}.sol-card.sol-down,.sol-stock-btn.sol-has-cards{background:repeating-linear-gradient(45deg,#1d4ed8,#1d4ed8 8px,#1e40af 8px 16px);border-color:#1e3a8a;color:#dbeafe}.sol-back{font-size:1.6rem;color:#dbeafe}.sol-stock-btn{border:2px solid var(--pico-color);cursor:pointer}.sol-stock-btn.sol-empty{background:transparent;border:3px dashed var(--pico-muted-border-color, #b8c0cc)}.sol-stock-btn.sol-recycle{background:var(--pico-card-sectioning-background-color, #eef2f7);border:3px solid var(--fgs-focus)}.sol-recycle-icon{font-size:2.2rem;font-weight:900;color:var(--fgs-focus)}.sol-foundation-slot,.sol-tab-empty{border:3px dashed var(--pico-muted-border-color, #9aa6b6);background:var(--pico-card-sectioning-background-color, #f1f4f9);cursor:pointer}.sol-found-suit{font-size:2.2rem;opacity:.55}.sol-foundation-slot.sol-red .sol-found-suit{color:#c1121f}.sol-foundation-slot.sol-black .sol-found-suit{color:#111}.sol-tab-empty{width:var(--sol-card-w);height:var(--sol-card-h)}.sol-tableau{display:grid;grid-template-columns:repeat(7,var(--sol-card-w));gap:.8rem;justify-content:center;margin:0 auto 1.25rem}.sol-col{position:relative;min-height:var(--sol-card-h)}.sol-col .sol-card.sol-stacked{position:absolute;top:calc(var(--sol-stack) * var(--sol-overlap));left:0}.sol-col{height:calc(var(--sol-card-h) + 18 * var(--sol-overlap))}.sol-card.sol-selected,.sol-pile.sol-selected{outline:6px solid var(--fgs-focus, #15549e);outline-offset:-2px;background:color-mix(in srgb,var(--fgs-focus, #15549e) 16%,#fff);transform:translateY(-8px);box-shadow:0 0 0 5px color-mix(in srgb,var(--fgs-focus, #15549e) 30%,transparent);z-index:5}.sol-card.sol-selected:after{content:"▲ picked up";position:absolute;bottom:-1.5rem;left:50%;transform:translate(-50%);font-size:.8rem;font-weight:900;color:var(--fgs-focus, #15549e);white-space:nowrap}.sol-card.sol-hint,.sol-pile.sol-hint{outline:6px solid var(--fgs-hint, #b06a00);outline-offset:-2px;background:color-mix(in srgb,var(--fgs-hint, #b06a00) 18%,#fff);box-shadow:0 0 0 5px color-mix(in srgb,var(--fgs-hint, #b06a00) 35%,transparent);z-index:4;animation:sol-pulse 1.1s ease-in-out infinite}.sol-card.sol-hint.sol-red{color:#a00}.sol-card.sol-hint.sol-black{color:#111}@keyframes sol-pulse{0%,to{box-shadow:0 0 0 5px color-mix(in srgb,var(--fgs-hint, #b06a00) 35%,transparent)}50%{box-shadow:0 0 0 11px color-mix(in srgb,var(--fgs-hint, #b06a00) 22%,transparent)}}.sol-card:focus-visible,.sol-pile:focus-visible{z-index:6}.sol-status{text-align:center;font-size:1.2rem;font-weight:700;min-height:3rem;padding:.5rem;margin:0 auto 1rem;max-width:60ch}.sol-actions{display:flex;flex-wrap:wrap;gap:.85rem;justify-content:center;margin-bottom:1rem}.sol-actions button{margin:0;min-height:var(--fgs-tap, 52px);font-size:1.15rem;font-weight:800;padding-inline:1.5rem}.sol-actions .sol-auto-btn{background:var(--fgs-good, #1c7a3a);border-color:var(--fgs-good, #1c7a3a);color:#fff}.sol-actions button[hidden]{display:none}.sol-game.sol-won .sol-foundations{outline:4px solid var(--fgs-good);outline-offset:6px;border-radius:14px}[data-contrast=high] .sol-card{border:3px solid #000!important;box-shadow:none}[data-contrast=high] .sol-card.sol-red{color:#b00010}[data-contrast=high] .sol-card.sol-black{color:#000}[data-contrast=high] .sol-card.sol-down,[data-contrast=high] .sol-stock-btn.sol-has-cards{background:#00339c;border-color:#000;color:#fff}[data-contrast=high] .sol-foundation-slot,[data-contrast=high] .sol-tab-empty,[data-contrast=high] .sol-placeholder,[data-contrast=high] .sol-stock-btn.sol-empty{border-color:#000;background:#fff}[data-contrast=high] .sol-card.sol-selected,[data-contrast=high] .sol-pile.sol-selected,[data-contrast=high] .sol-card.sol-hint,[data-contrast=high] .sol-pile.sol-hint{outline-color:#00339c;background:#fff}[data-contrast=high] .sol-hint-btn{background:#7a4a00;border-color:#000;color:#fff}@media(prefers-reduced-motion:reduce){.sol-card.sol-hint,.sol-pile.sol-hint{animation:none}.sol-card.sol-selected,.sol-pile.sol-selected{transform:none}}
