.playful-game.sol-app{--play-accent:#b4542f;--play-shadow:#b98b5f;--play-soft:#f6ead6;--play-ink:#3a2f2a;--play-paper:#fffaf0;--sol-felt:#12452c;--sol-glow:#e9b949;background:var(--sol-felt);touch-action:none;-moz-user-select:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;overflow:hidden;overflow:clip;height:100dvh}.sol-app[data-variant=spider]{--sol-felt:#331a44;--sol-glow:#f3a6d0;--play-accent:#8a3d7a}.sol-app[data-variant=freecell]{--sol-felt:#12304f;--sol-glow:#7fd3f0;--play-accent:#2f6f9e}.sol-app .sol-scene{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none}.sol-app .sol-vignette{position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse 85% 75% at 50% 42%,transparent 55%,rgba(0,0,0,.42) 100%)}.sol-app .pp-lobby{--pp-accent:#ffd45e;--pp-font:Playful,"Avenir Next",sans-serif}.sol-app .sol-hud{position:absolute;top:max(8px,env(safe-area-inset-top,0px));left:50%;transform:translateX(-50%);z-index:5;display:flex;align-items:stretch;gap:6px;width:max-content;max-width:calc(100vw - 12px);pointer-events:none}.sol-app:is([data-phase=menu],[data-phase=loading],[data-phase=lobby],[data-phase=results]) :is(.sol-hud,.sol-bar){visibility:hidden}.sol-app:is([data-phase=menu],[data-phase=loading],[data-phase=lobby],[data-phase=results]) .pp-standings{display:none}.sol-app .sol-stat{flex:0 0 auto;min-width:70px;display:flex;flex-direction:column;justify-content:center;padding:2px 11px;border:2px solid rgba(255,255,255,.85);border-radius:14px;background:rgba(255,250,238,.93);box-shadow:0 3px 0 rgba(0,0,0,.28)}.sol-app .sol-stat span{font-size:11px;font-weight:800;color:#8a6a55;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.sol-app .sol-stat b{font-size:21px;line-height:1.05;color:var(--play-accent);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.sol-app.sol-urgent .sol-stat:first-child{background:#ffe0d6;animation:sol-pulse .5s ease-in-out infinite alternate}.sol-app .sol-hud-btns{display:flex;align-self:center;gap:5px;pointer-events:auto}.sol-app .sol-icon-btn{width:44px;height:44px;display:grid;place-items:center;cursor:pointer;padding:0;border:2px solid rgba(255,255,255,.9);border-radius:13px;background:var(--play-paper);color:var(--play-ink);box-shadow:0 3px 0 rgba(0,0,0,.28)}.sol-app .sol-icon-btn:disabled{opacity:.45;cursor:default}.sol-app .sol-icon-btn .off,.sol-app .sol-icon-btn[aria-pressed=true] .on{display:none}.sol-app .sol-icon-btn[aria-pressed=true] .off{display:inline}.sol-app[data-mp="0"] .sol-party-btn{display:none}.sol-app .pp-standings{z-index:5;top:calc(max(8px, env(safe-area-inset-top, 0px)) + 54px);max-width:min(720px,calc(100vw - 16px));border-radius:16px;background:rgba(20,14,10,.55)}.sol-app .pp-standings,.sol-app .sol-bar{position:absolute;left:50%;transform:translateX(-50%)}.sol-app .sol-bar{bottom:max(10px,env(safe-area-inset-bottom,0px));z-index:4;pointer-events:none;padding:5px 14px;border-radius:999px;background:rgba(0,0,0,.42);color:#fff8ec;font-size:13px;font-weight:700;white-space:nowrap}.sol-app .sol-touch{display:none}@media (hover:none),(pointer:coarse){.sol-app .sol-keys{display:none}.sol-app .sol-touch{display:inline}}.sol-app[data-phase=play] .sol-bar{animation:sol-fade 7s ease-in forwards}.sol-app .sol-countdown{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);z-index:6;pointer-events:none;text-align:center;width:max-content;max-width:94vw;font:800 clamp(40px,11vw,104px)/1 Playful,Avenir Next,sans-serif;color:#fffbed;-webkit-text-stroke:3px var(--play-accent);paint-order:stroke fill;text-shadow:0 6px 0 rgba(0,0,0,.35)}.sol-app .sol-countdown:empty{display:none}.sol-app .sol-countdown.tick{animation:sol-count .55s ease-out}.sol-app .sol-toast{position:absolute;left:50%;bottom:calc(max(10px, env(safe-area-inset-bottom, 0px)) + 44px);z-index:7;pointer-events:none;transform:translate(-50%,10px);opacity:0;padding:7px 16px;border:2px solid #fff;border-radius:999px;max-width:92vw;background:var(--play-paper);color:var(--play-ink);font-size:16px;font-weight:800;box-shadow:0 4px 0 rgba(0,0,0,.3);transition:opacity .18s,transform .18s;text-align:center}.sol-app .sol-toast.show{opacity:1;transform:translate(-50%)}.sol-app .sol-toast[data-tone=bad]{background:#ffe1dc;color:#b0261b}.sol-app .sol-toast[data-tone=good]{background:#fff1b8;color:#8a5300}.sol-app .sol-fx{position:absolute;inset:0;z-index:6;pointer-events:none;overflow:hidden}.sol-app .sol-pop{position:absolute;transform:translate(-50%,-100%);white-space:nowrap;font:800 22px/1 Playful,Avenir Next,sans-serif;color:#fffbed;-webkit-text-stroke:4px #4a2a12;paint-order:stroke fill;animation:sol-pop 1s ease-out forwards}.sol-app .sol-pop-gold{color:#ffd23f;font-size:26px}.playful-game.sol-app .sol-menu{background:linear-gradient(90deg,transparent 45%,rgba(0,0,0,.3));-webkit-backdrop-filter:none;backdrop-filter:none;align-items:flex-end;padding-right:max(24px,4vw)}.sol-app .sol-panel{width:min(440px,100%);text-align:center;padding:18px 20px 16px}.sol-app .sol-kicker{display:block;color:#a8714b;font-size:12px;font-weight:800;letter-spacing:.12em}.sol-app .sol-logo{margin:2px 0 6px;font:800 clamp(34px,5.4vw,48px)/1.02 Playful,Avenir Next,sans-serif;color:#fffbed;text-wrap:balance;-webkit-text-stroke:2px var(--play-accent);paint-order:stroke fill;text-shadow:0 5px 0 var(--play-accent);transform:rotate(-2deg)}.sol-app .sol-sub{margin:0 0 6px;font-size:14px;line-height:1.4}.sol-app .sol-panel h2.sol-label{margin:9px 0 5px;font-size:12.5px;line-height:1.2;font-weight:800;color:#8a6a55;text-transform:uppercase;letter-spacing:.06em;text-align:left}.sol-app .sol-cards{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:6px;gap:6px}.sol-app .sol-card{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:0;min-height:44px;padding:6px 4px;border:2px solid #ead2b8;border-radius:14px;background:#fff;color:var(--play-ink);cursor:pointer;transition:transform .12s,border-color .12s}.sol-app .sol-card:hover{transform:translateY(-2px)}.sol-app .sol-card[aria-checked=true]{border-color:var(--play-accent);background:var(--play-soft);box-shadow:0 3px 0 var(--play-shadow)}.sol-app .sol-card-icon{display:grid;place-items:center;height:26px;font-size:22px;line-height:1}.sol-app .sol-card b{font-size:13px;line-height:1.15;font-weight:800}.sol-app .sol-card small{font-size:10.5px;line-height:1.15;color:#8a6a55}.sol-app .sol-chips{display:grid;grid-gap:5px;gap:5px;padding:4px;border-radius:14px;background:var(--play-soft)}.sol-app .sol-chip{min-height:44px;padding:6px 4px;border:0;border-radius:10px;background:transparent;color:var(--play-ink);font-size:15px;font-weight:800;cursor:pointer}.sol-app .sol-chip[aria-checked=true]{background:#fff;color:var(--play-accent);box-shadow:0 3px 0 var(--play-shadow)}.sol-app .sol-chip:disabled{opacity:.35;cursor:not-allowed}.sol-app .sol-opts{display:grid;grid-template-columns:minmax(0,1fr);grid-column-gap:8px;column-gap:8px}.sol-app[data-mode=daily] .sol-opts .sol-deal-opt{display:none}.sol-app .sol-note{margin:10px 0 0;font-size:13px;font-weight:700;color:#8a6a55}.sol-app:not([data-mode=race]) .sol-bots,.sol-app[data-mode=daily] .sol-deal-opt{display:none}.sol-app .sol-best-line{margin:8px 0 6px;font-size:15px;font-weight:700;color:#8a6a55}.sol-app .sol-best-line b{color:var(--play-accent);font-size:18px}.sol-app[data-mode=race] .sol-best-line{visibility:hidden;height:0;margin:4px 0}.sol-app .sol-challenge{margin:6px 0 4px;padding:10px;border-radius:16px;background:#fff3cf;border:2px dashed #e0b04a}.sol-app .sol-challenge[hidden]{display:none}.sol-app .sol-challenge p{margin:0 0 8px;font-size:14px;line-height:1.35}.sol-app .sol-challenge b{color:var(--play-accent)}.sol-app .sol-challenge button.big{font-size:18px;padding:8px 12px}.sol-app .sol-settings{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:6px;gap:6px;margin-top:10px}.sol-app .sol-setting{min-height:44px;padding:6px;border:2px solid #ead2b8;border-radius:12px;background:#fff;color:var(--play-ink);font-size:13.5px;font-weight:700;cursor:pointer}.sol-app .sol-setting[aria-pressed=false]{color:#a08876}.playful-game.sol-app :is(.sol-paused,.sol-results){background:rgba(20,12,6,.38);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.playful-game.sol-app .sol-results{align-items:flex-end;padding-right:max(24px,4vw);background:linear-gradient(90deg,transparent 40%,rgba(0,0,0,.35));-webkit-backdrop-filter:none;backdrop-filter:none}.sol-app .sol-card-panel{width:min(430px,100%);text-align:center}.sol-app .sol-paused .sol-card-panel{display:grid;grid-gap:8px;gap:8px}.sol-app .sol-paused .sol-card-panel>*{margin:0}.sol-app[data-mp="1"] :is(#sol-restart,#sol-newdeal){display:none}.sol-app .sol-title{margin:0 0 8px;color:var(--play-accent);font-size:30px}.sol-app .sol-r-score{margin:4px 0 0;font:800 58px/1 Playful,Avenir Next,sans-serif;color:var(--play-accent);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sol-app .sol-r-label{margin:0;font-size:13px;font-weight:800;color:#8a6a55;text-transform:uppercase;letter-spacing:.06em}.sol-app .sol-r-new{display:none;margin:8px auto 0;width:-moz-fit-content;width:fit-content;padding:4px 14px;border-radius:999px;background:#ffd45e;color:#7a4a0a;font-weight:800;font-size:16px;box-shadow:0 3px 0 #bb842e}.sol-app .sol-r-new.show{display:block;animation:sol-bump .6s ease-out}.sol-app .sol-r-best{margin:6px 0 8px;font-size:15px;font-weight:700;color:#8a6a55}.sol-app .sol-r-best[hidden],.sol-app .sol-r-vs[hidden]{display:none}.sol-app .sol-r-vs{margin:6px 0;padding:6px 10px;border-radius:12px;background:var(--play-soft);font-weight:800}.sol-app .sol-r-vs[data-tone=good]{background:#e3f7d6;color:#2f6b12}.sol-app .sol-r-stats{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);grid-gap:6px;gap:6px;margin:8px 0 10px;padding:0}.sol-app .sol-r-stats:has(>li:nth-child(3):last-child){grid-template-columns:repeat(3,1fr)}.sol-app .sol-r-stats li{display:flex;flex-direction:column;padding:7px 2px;border-radius:14px;background:var(--play-soft);min-width:0}.sol-app .sol-r-stats b{font-size:18px;color:var(--play-accent);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.sol-app .sol-r-stats span{font-size:11px;font-weight:700;color:#8a6a55;line-height:1.15}.sol-app .sol-r-table{list-style:none;margin:0 0 10px;padding:0;display:grid;grid-gap:4px;gap:4px}.sol-app .sol-r-table[hidden]{display:none}.sol-app .sol-r-table li{display:grid;grid-template-columns:30px 1fr 64px 64px;align-items:center;grid-gap:6px;gap:6px;padding:5px 8px;border-radius:12px;background:#fff;font-weight:700;text-align:left}.sol-app .sol-r-table li.me{background:#fff1d1;box-shadow:inset 0 0 0 2px var(--play-accent)}.sol-app .sol-r-table .nm{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sol-app .sol-r-table b{color:var(--play-accent)}.sol-app .sol-r-table b,.sol-app .sol-r-table li>span:last-child{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sol-app .sol-r-table li>span:last-child{color:#8a6a55}.sol-app .sol-r-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;align-items:stretch}.sol-app .sol-r-row>*{margin-top:10px;width:100%;font-size:15px}.sol-app .sol-challenge-btn[hidden],.sol-app .sol-r-row .share-btn[hidden]{display:none}.sol-app .sol-r-row:has(.share-btn[hidden]){grid-template-columns:1fr}.sol-app .sol-challenge-btn{width:100%;margin-top:8px}@media (max-height:600px),(max-width:899px){.sol-app .sol-opts{grid-template-columns:repeat(2,minmax(0,1fr))}.sol-app .sol-opts>.sol-opt:last-child:nth-child(odd){grid-column:1/-1}.sol-app .sol-start{position:-webkit-sticky;position:sticky;bottom:6px;z-index:3}.sol-app .sol-settings{grid-template-columns:repeat(4,1fr)}.sol-app .sol-setting{font-size:12px;padding:4px}}@media (max-width:899px){.playful-game.sol-app :is(.sol-menu,.sol-results){align-items:center;justify-content:flex-start;padding:0 10px 14px;background:linear-gradient(180deg,transparent 22%,rgba(0,0,0,.35) 55%)}.sol-app :is(.sol-menu,.sol-results):before{content:"";display:block;flex:0 0 auto;height:max(150px,26dvh)}.sol-app .sol-panel{padding:14px 12px 12px;border-radius:24px}}@media (max-width:480px){.sol-app .sol-hud{gap:4px}.sol-app .sol-stat{min-width:0;padding:2px 7px;border-radius:11px}.sol-app .sol-stat span{font-size:9.5px;letter-spacing:0}.sol-app .sol-stat b{font-size:16px}.sol-app .sol-icon-btn{width:40px;height:40px;border-radius:11px}.sol-app .sol-hud-btns{gap:3px}.sol-app .pp-standings{top:calc(max(8px, env(safe-area-inset-top, 0px)) + 48px)}.sol-app .sol-card small{display:none}.sol-app .sol-logo{font-size:32px}.sol-app .sol-sub{font-size:13px}.sol-app .sol-r-score{font-size:48px}.sol-app .sol-r-stats{grid-template-columns:repeat(2,1fr)}}@media (max-width:360px){.sol-app .sol-stat-score{display:none}}@media (max-height:500px) and (min-aspect-ratio:4/5){.sol-app .sol-hud{left:max(8px,env(safe-area-inset-left,0px));top:max(6px,env(safe-area-inset-top,0px));transform:none;flex-direction:column;gap:4px;width:96px}.sol-app .sol-stat{padding:1px 8px;border-radius:10px}.sol-app .sol-stat span{font-size:9px}.sol-app .sol-stat b{font-size:15px}.sol-app .sol-hud-btns{flex-wrap:wrap;width:96px;gap:4px}.sol-app .sol-icon-btn{width:44px;height:40px}.sol-app .pp-standings{top:max(6px,env(safe-area-inset-top,0px));left:auto;right:max(6px,env(safe-area-inset-right,0px));transform:none;flex-direction:column;width:150px;max-height:calc(100dvh - 12px);overflow-y:auto}.sol-app .sol-bar{display:none}.sol-app .sol-toast{top:max(8px,env(safe-area-inset-top,0px));bottom:auto}.playful-game.sol-app :is(.sol-menu,.sol-results){align-items:flex-end;justify-content:flex-start;padding:8px 10px;background:linear-gradient(90deg,transparent 40%,rgba(0,0,0,.35))}.sol-app :is(.sol-menu,.sol-results):before{display:none}.sol-app .sol-panel,.sol-app .sol-results .sol-card-panel{width:min(400px,56vw);padding:10px 12px}.sol-app .sol-logo{font-size:28px}.sol-app .sol-card small,.sol-app .sol-sub{display:none}.sol-app .sol-card-icon{height:20px;font-size:18px}.sol-app .sol-panel h2.sol-label{margin:6px 0 3px}.sol-app .sol-best-line{margin:4px 0}.sol-app .sol-r-score{font-size:40px}.playful-game.sol-app .overlay{padding-top:8px;padding-bottom:8px}}@keyframes sol-pop{0%{opacity:0;transform:translate(-50%,-60%) scale(.6)}15%{opacity:1;transform:translate(-50%,-110%) scale(1.12)}to{opacity:0;transform:translate(-50%,-230%) scale(1)}}@keyframes sol-count{0%{transform:translate(-50%,-50%) scale(1.5);opacity:0}30%{transform:translate(-50%,-50%) scale(.95);opacity:1}to{transform:translate(-50%,-50%) scale(1)}}@keyframes sol-bump{0%{transform:scale(1)}40%{transform:scale(1.22)}to{transform:scale(1)}}@keyframes sol-pulse{0%{transform:scale(1)}to{transform:scale(1.06)}}@keyframes sol-fade{0%,70%{opacity:1}to{opacity:0}}