.sol-page{min-height:100vh;background:linear-gradient(180deg,#c3d0f0,#dde5fa);color:#1f2937;display:flex;flex-direction:column}.sol-main{width:100%;max-width:700px;margin:0 auto;padding:16px 12px 48px}.sol-game{position:relative}.sol-toolbar{justify-content:space-between;gap:8px;padding:2px 2px 10px}.sol-toolbar,.sol-toolbar-group{display:flex;flex-wrap:wrap;align-items:center}.sol-toolbar-group{gap:6px}.sol-btn{appearance:none;border:1px solid rgba(255,255,255,.9);background:rgba(255,255,255,.8);color:#2c3e75;font:600 12px/1 inherit;padding:7px 13px;border-radius:999px;cursor:pointer;box-shadow:0 2px 6px rgba(58,80,148,.18);transition:background .15s ease,transform .1s ease}.sol-btn:hover:not(:disabled){background:#ffffff}.sol-btn:active:not(:disabled){transform:translateY(1px)}.sol-btn:disabled{opacity:.45;cursor:default}.sol-btn:focus-visible{outline:2px solid #16a34a;outline-offset:2px}.sol-btn.is-on{background:#16a34a;border-color:#15803d;color:#ffffff}.sol-btn-primary{background:linear-gradient(180deg,#22c55e,#16a34a);border-color:#15803d;color:#fff}.sol-btn-primary:hover:not(:disabled){background:linear-gradient(180deg,#2fd66c,#17ab4e)}.sol-btn-lg{font-size:15px;padding:11px 22px}.sol-seg{display:flex;border:1px solid rgba(255,255,255,.9);border-radius:999px;overflow:hidden;background:rgba(255,255,255,.8);box-shadow:0 2px 6px rgba(58,80,148,.18)}.sol-seg-btn{appearance:none;border:none;background:transparent;color:#64748b;font:600 11px/1 inherit;padding:7px 11px;cursor:pointer}.sol-seg-btn.is-active{background:#16a34a;color:#fff}.sol-board{position:relative;border-radius:24px;padding:clamp(16px,2.4vw,26px) clamp(16px,2.4vw,26px) 46px;min-height:min(620px,calc(100vh - 200px));background:linear-gradient(180deg,#4aab50,#3d9443);border:4px solid rgba(255,255,255,.9);box-shadow:0 12px 32px rgba(58,80,148,.35)}.sol-board-status{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);color:rgba(255,255,255,.85);font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap;pointer-events:none}.sol-toprow{display:grid;grid-template-columns:repeat(7,var(--cw));justify-content:space-between;margin-bottom:clamp(16px,2.6vw,28px)}.sol-top-spacer{display:none}.sol-tableau{display:flex;justify-content:space-between}.sol-tpile{position:relative;width:var(--cw);min-height:var(--ch)}.sol-fslot,.sol-stock,.sol-waste{position:relative;width:var(--cw);height:var(--ch)}.sol-waste{grid-column:2/span 2}.sol-stock{appearance:none;border:none;background:none;padding:0;cursor:pointer;border-radius:8px}.sol-stock:disabled{cursor:default}.sol-stock:focus-visible{outline:2px solid #ffe680;outline-offset:3px}.sol-stock-stack{position:relative;display:block;width:100%;height:100%}.sol-stock-card{position:absolute;inset:0;filter:drop-shadow(0 1px 2px rgba(10,40,20,.3))}.sol-stock-count{position:absolute;bottom:-8px;left:50%;transform:translateX(-50%);z-index:5;background:#ffffff;color:#334155;font-size:10px;font-weight:700;padding:1px 7px;border-radius:999px;border:1px solid #cbd5e1;box-shadow:0 1px 2px rgba(15,40,25,.2)}.sol-empty-slot{position:absolute;inset:0;border:2px dashed rgba(255,255,255,.5);border-radius:calc(var(--cw) * .08);background:rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center}.sol-fslot-mark{font-size:calc(var(--cw) * .52);font-weight:800;color:rgba(255,255,255,.45);line-height:1}.sol-fslot-mark.is-red{color:rgba(255,170,170,.75)}.sol-recycle{font-size:calc(var(--cw) * .45);color:rgba(255,255,255,.9)}.sol-drop-ring,.sol-fslot.is-over-invalid:after,.sol-fslot.is-over-valid:after{position:absolute;left:0;width:var(--cw);height:var(--ch);border-radius:calc(var(--cw) * .08);pointer-events:none;z-index:70}.sol-fslot.is-over-invalid:after,.sol-fslot.is-over-valid:after{content:"";top:0}.sol-drop-ring.is-valid,.sol-fslot.is-over-valid:after{box-shadow:0 0 0 3px rgba(74,222,128,.95);background:rgba(74,222,128,.12)}.sol-drop-ring.is-invalid,.sol-fslot.is-over-invalid:after{box-shadow:0 0 0 3px rgba(248,113,113,.9);background:rgba(248,113,113,.1)}.sol-slot-card{position:absolute;left:0;width:var(--cw);height:var(--ch);border-radius:calc(var(--cw) * .08);animation:sol-appear .16s ease both}.sol-slot-card.is-grabbable{cursor:grab;touch-action:none}.sol-slot-card.is-grabbable:active{cursor:grabbing}.sol-slot-card.is-hinted{z-index:55!important}.sol-slot-card.is-hinted,.sol-stock.is-hinted{animation:sol-hint .6s ease-in-out 3}@keyframes sol-hint{0%,to{box-shadow:0 0 0 0 rgba(255,230,128,0)}50%{box-shadow:0 0 0 5px rgba(255,230,128,.9)}}@keyframes sol-appear{0%{opacity:.5}to{opacity:1}}.sol-card{width:100%;height:100%;perspective:700px;filter:drop-shadow(0 1px 2px rgba(10,40,20,.28))}.sol-card-flip{position:relative;width:100%;height:100%;transform-style:preserve-3d;transform:rotateY(180deg);transition:transform .35s ease}.sol-card-flip.is-up{transform:none}.sol-card-side{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden}.sol-card-back{transform:rotateY(180deg)}.sol-card-svg{display:block;width:100%;height:100%}.sol-drag-stack{position:relative;width:var(--cw,80px);height:var(--ch,112px)}.sol-drag-stack .sol-slot-card{animation:none}::view-transition-group(*){animation-duration:.18s;animation-timing-function:cubic-bezier(.2,.8,.2,1)}@media (prefers-reduced-motion:reduce){.sol-card-flip{transition:none}.sol-slot-card{animation:none}}.sol-overlay{position:fixed;inset:0;z-index:200;background:rgba(15,23,42,.45);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:20px}.sol-dialog{background:#ffffff;border:1px solid #dde5ee;border-radius:16px;box-shadow:0 20px 50px rgba(15,23,42,.3);padding:28px 32px;text-align:center;max-width:380px;width:100%;color:#1f2937}.sol-dialog h2{margin:0 0 6px;font-size:25px;color:#0f172a}.sol-dialog-sub{color:#64748b;font-size:14px;margin:0 0 18px}.sol-dialog-actions{gap:10px}.sol-dialog-actions,.sol-win-stats{display:flex;justify-content:center}.sol-win-stats{gap:26px;margin:16px 0}.sol-win-stats div{display:flex;flex-direction:column;gap:2px}.sol-win-stats span{font-size:11px;color:#64748b;text-transform:uppercase;letter-spacing:.6px}.sol-win-stats strong{font-size:22px;color:#0f172a}.sol-article{margin:36px auto 0;color:#44506e;font-size:15px;line-height:1.7}.sol-article h2{color:#2c3e75;font-family:var(--font-display,inherit);font-weight:600;font-size:21px;margin:28px 0 10px}.sol-article h3{color:#2c3e75;font-size:16px;margin:20px 0 8px}.sol-article li,.sol-article p{margin:0 0 10px}.sol-article ol,.sol-article ul{padding-left:22px}.sol-article a{color:#15803d;font-weight:600}.sol-article details{border:2px solid rgba(255,255,255,.9);border-radius:12px;padding:12px 16px;margin-bottom:10px;background:rgba(255,255,255,.75)}.sol-article summary{cursor:pointer;font-weight:600;color:#2c3e75}.sol-article details p{margin-top:10px;margin-bottom:0}@media (max-width:640px){.sol-main{padding:8px 6px 32px}.sol-toolbar{padding:6px;gap:5px}.sol-btn{padding:6px 9px;font-size:11px}}::view-transition{pointer-events:none}