.sol-root{margin:12px 0 0}.sol-game{gap:10px;min-width:0;display:grid}.sol-toolbar .btn{flex:auto;min-width:88px;min-height:56px}.sol-toolbar .sol-undo{min-width:120px;font-size:1.35rem}.sol-toolbar .btn:disabled{opacity:.5;cursor:default}@media (width<=600px){.sol-toolbar{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.sol-toolbar .btn,.sol-toolbar .sol-undo{min-width:0;padding:6px 4px;font-size:1.25rem}}.sol-info{font-variant-numeric:tabular-nums}.sol-info>.deal-label{color:var(--text);font-family:var(--font-display);font-weight:700}@media (width>=768px){.sol-info{gap:8px}.sol-info>span{border:2px solid var(--border);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:999px;padding:1px 14px}.sol-info>.deal-label{border-color:var(--brass);background:linear-gradient(180deg, #fff8e3, var(--surface-2))}}.sol-status{min-height:0}.sol-status .hint-box{margin-top:4px}.sol-status-buttons{flex-wrap:wrap;gap:10px;margin-top:8px;display:flex}.sol-form-error{color:#a10000;margin:6px 0 0;font-weight:700}.sol-felt{--sol-cream:#fffaebd9;--sol-paper-edge:#e9dfc6;--sol-ink-edge:#3a332a;--sol-plaque:#1c1206;padding:10px;position:relative;overflow:hidden}.sol-felt:before{content:"";pointer-events:none;border:1px solid #e8c87366;border-radius:9px;position:absolute;inset:3px}@media (width<=600px){.sol-felt{margin-inline:calc(-1 * var(--gutter,16px));border-left:0;border-right:0;border-radius:0;padding:8px 3px}.sol-felt:before{display:none}}.sol-table{--sol-r:calc(var(--card-w,92px) * .08);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;min-height:300px;position:relative}.sol-table .card,.sol-ghost .card,.sol-celebrate .card{width:var(--card-w);background:0 0;border:0;border-radius:0;padding:0}.sol-card,.sol-slot,.sol-target,.sol-hint-target{width:var(--card-w);position:absolute}.sol-card{cursor:default;touch-action:pan-y}.sol-card.is-pickable{cursor:grab;touch-action:none}.sol-card.is-dragging{visibility:hidden}.sol-card:focus-visible{outline:4px solid var(--focus);outline-offset:2px;border-radius:8px}.sol-slot{cursor:pointer}.sol-slot .card-slot text{font-size:44px}.sol-slot-stock .card-slot text{font-size:56px}.sol-slot{border-radius:var(--sol-r);background:#061c0e57;box-shadow:inset 0 2px 5px #0000008c,inset 0 -1px #ffffff24,0 1px #ffffff1a}.sol-slot .sol-well .sol-well-edge{fill:none;stroke:#fffaeb99;stroke-width:2px;stroke-dasharray:none}.sol-slot .sol-well text{fill:var(--sol-cream);font-family:var(--font-display);font-weight:700}.sol-slot .sol-well .sol-well-rank{font-size:48px}.sol-slot .sol-well .sol-well-suit{fill:#fffaeb94}.sol-slot-foundation{background:#061c0e6b}.sol-slot .sol-well-foundation .sol-well-edge{stroke:var(--brass-light);stroke-width:2.5px}.sol-slot .sol-well .sol-well-inlay{fill:none;stroke:#e8c8738c;stroke-width:1.5px;stroke-dasharray:none}.sol-well-medal{fill:#0003;stroke:#e8c873cc;stroke-width:2.5px}.sol-well-star{fill:#e8c873d9}.sol-well-corners{fill:none;stroke:var(--brass-light);stroke-width:3.5px;stroke-linecap:round}.sol-slot .sol-well-cell .sol-well-edge{stroke:#fffaeb61;stroke-width:1.5px}.sol-slot-tableau{background:#061c0e33;box-shadow:inset 0 1px 3px #0006}.sol-slot .sol-well-tableau .sol-well-edge{stroke:#fffaebb3;stroke-width:3px;stroke-dasharray:8 6}.sol-slot .sol-well-tableau .sol-well-label{font-size:60px}.sol-slot .sol-well-waste .sol-well-edge{stroke:#fffaeb4d;stroke-width:1.5px}.sol-slot-waste.sol-fan{box-shadow:none;background:0 0}.sol-slot-waste.sol-fan:before{content:"";border-radius:var(--sol-r);background:#061c0e4d;width:164%;position:absolute;inset:0 auto 0 0;box-shadow:inset 0 2px 5px #00000080,inset 0 -1px #ffffff1f,inset 0 0 0 1px #fffaeb38}.sol-slot-waste.sol-fan .sol-well-edge{display:none}.sol-well-disc{fill:#00000038;stroke:#e8c873bf;stroke-width:2px}.sol-well-arrow{fill:none;stroke:#fffaeb;stroke-width:7px;stroke-linecap:round}.sol-well-arrowhead{fill:#fffaeb}.sol-slot.sol-depth-1,.sol-slot.sol-depth-2,.sol-slot.sol-depth-3{background:var(--sol-paper-edge)}.sol-slot.sol-depth-1{box-shadow:0 2px 0 var(--sol-paper-edge), 0 3px 0 var(--sol-ink-edge), 0 6px 6px #0006}.sol-slot.sol-depth-2{box-shadow:0 2px 0 var(--sol-paper-edge), 0 3px 0 var(--sol-ink-edge), 0 5px 0 var(--sol-paper-edge), 0 6px 0 var(--sol-ink-edge), 0 9px 8px #0000006b}.sol-slot.sol-depth-3{box-shadow:0 2px 0 var(--sol-paper-edge), 0 3px 0 var(--sol-ink-edge), 0 5px 0 var(--sol-paper-edge), 0 6px 0 var(--sol-ink-edge), 0 8px 0 var(--sol-paper-edge), 0 9px 0 var(--sol-ink-edge), 0 13px 10px #00000073}.sol-badge{z-index:400;border:1.5px solid var(--brass-light);background:var(--sol-plaque);color:#fff;white-space:nowrap;pointer-events:none;border-radius:999px;padding:0 7px;font-size:.95rem;font-weight:700;line-height:1.5;position:absolute;transform:translate(-50%,-100%);box-shadow:0 2px 4px #00000080}.sol-table .sol-card-tableau .card{filter:drop-shadow(0 -1px 1px #00000057)drop-shadow(0 2px 3px #0003)}.sol-table .sol-card-tableau.sol-top .card{filter:drop-shadow(0 -1px 1px #00000057)drop-shadow(0 3px 4px #00000061)}.sol-card-foundation.sol-top{border-radius:var(--sol-r);box-shadow:0 0 0 2px var(--brass-light), 0 0 0 3.5px #00000073}@media (hover:hover) and (pointer:fine){.sol-card.is-pickable.sol-top{transition:transform .12s ease-out}.sol-card.is-pickable.sol-top:hover{transform:translateY(-3px)}}.sol-rank{font:800 46px var(--font);fill:currentColor;letter-spacing:-1px}.sol-court{font:800 56px var(--font);fill:currentColor;text-anchor:middle}.sol-card.is-selected .card-bg{stroke:var(--highlight);stroke-width:8px}.sol-card.is-selected{outline:4px solid var(--highlight);outline-offset:-1px;border-radius:var(--sol-r);filter:drop-shadow(0 0 1.5px #000000e6)drop-shadow(0 7px 7px #00000080);transform:translateY(-5px)}.sol-card.is-hint .card-bg{stroke:var(--highlight);stroke-width:8px}.sol-card.is-hint{outline-offset:0;border-radius:var(--sol-r);filter:drop-shadow(0 0 1.5px #000000e6);animation:.9s ease-in-out 3 sol-hint}@keyframes sol-hint{50%{transform:translateY(-8px)}}.sol-slot.is-hint{outline:5px solid var(--highlight);outline-offset:2px;border-radius:var(--sol-r)}.sol-target,.sol-hint-target{z-index:900;aspect-ratio:100/140;border:5px dashed var(--highlight);border-radius:calc(var(--sol-r) + 3px);cursor:pointer;background:#ffc80033;justify-content:center;align-items:flex-end;animation:1.1s ease-in-out infinite alternate sol-target;display:flex;box-shadow:0 0 0 2px #140c0499,inset 0 0 0 2px #140c0466,0 4px 10px #00000059}@keyframes sol-target{to{background-color:#ffc80061}}.sol-hint-target{pointer-events:none}.sol-target span,.sol-hint-target span{background:var(--highlight);color:#000;border-radius:8px 8px 0 0;margin-bottom:-2px;padding:0 6px;font-size:.95rem;font-weight:800;line-height:1.4;box-shadow:0 0 0 2px #140c0499}.sol-ghost{z-index:5000;pointer-events:none;filter:drop-shadow(0 10px 12px #00000080);position:absolute;inset:0 auto auto 0}.sol-celebrate{z-index:6000;pointer-events:none;position:absolute;inset:0;overflow:hidden}.sol-fall{--card-w:clamp(44px, 9vw, 96px);animation-name:sol-fall;animation-timing-function:cubic-bezier(.35,0,.7,1);animation-fill-mode:both;position:absolute;top:-30%}@keyframes sol-fall{0%{transform:translateY(0)rotate(0)}to{transform:translateY(160vh) rotate(var(--turn,30deg))}}.sol-win-plaque{place-items:center;animation:2s ease-out both sol-plaque;display:grid;position:absolute;inset:0}.sol-win-plaque span{border:3px solid var(--brass-light);background:var(--wood-bg);background-color:var(--wood);box-shadow:inset 0 0 0 2px #0006, var(--shadow-lg);color:#fff3d1;font:700 clamp(2.2rem, 7vw, 3.75rem) / 1.15 var(--font-display);text-shadow:0 2px #0000008c;white-space:nowrap;border-radius:18px;padding:10px 40px 12px}@keyframes sol-plaque{0%{opacity:0;transform:scale(.85)}12%{opacity:1;transform:scale(1.04)}20%{transform:scale(1)}85%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.sol-target,.sol-hint-target,.sol-win-plaque{animation:none}.sol-card.is-pickable.sol-top{transition:none}.sol-card.is-pickable.sol-top:hover{transform:none}}.reduce-motion .sol-target,.reduce-motion .sol-hint-target{animation:none}.reduce-motion .sol-card.is-pickable.sol-top:hover{transform:none}.sol-suit-choice .choice{border:2px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-2);margin-top:8px;padding:8px 12px}.sol-suit-choice .choice:has(input:checked){border:3px solid var(--primary);background:var(--primary-soft);box-shadow:var(--shadow-sm);padding:7px 11px}.sol-suit-pips{border:2px solid var(--card-edge,#3a332a);background:var(--card-face,#fffdf7);border-radius:8px;gap:3px;padding:3px 8px;font-size:1.5rem;line-height:1;display:inline-flex}.sol-suit-pips .suit{fill:currentColor}.sol-stats-wrap{overflow-x:auto}.sol-stats th,.sol-stats td{white-space:nowrap}.reduce-motion .sol-card.is-hint{animation:none}@media (width<=767px){.sol-game .sol-toolbar{flex-wrap:nowrap;align-items:stretch;gap:4px;display:flex}.sol-toolbar>.btn,.sol-toolbar .more-menu>summary{text-align:center;flex:1 1 0;min-width:0;min-height:56px;padding:2px 3px;font-size:1.25rem;line-height:1.1}.sol-toolbar .more-menu{flex:1 1 0;display:flex}.sol-toolbar .more-menu>summary{width:100%}.sol-info{gap:2px 12px;font-size:1.25rem}.sol-status{padding:4px 10px;font-size:1.25rem;line-height:1.3}.sol-status .turn{font-size:1.25rem}}
