#mahjong-solitaire-app{margin:0 0 24px}.mj-game{gap:10px;display:grid}.mj-top{gap:8px;display:grid}.mj-info{gap:6px 20px}.mj-info-item strong{font-variant-numeric:tabular-nums}@media (width>=768px){.mj-info{gap:8px 12px}.mj-info-item strong{font-family:var(--font-display);font-variant-numeric:tabular-nums lining-nums;font-size:1.3em;line-height:1}.mj-info-item{border:1px solid var(--brass-dark);background:linear-gradient(180deg, var(--surface), var(--surface-2));box-shadow:inset 0 0 0 2px var(--surface), inset 0 0 0 3px #c59a3a8c, var(--shadow-sm);border-radius:999px;align-items:baseline;gap:.35em;padding:3px 16px 4px;display:inline-flex}.mj-info .deal-label{margin-left:auto}}.mj-status{min-height:0}.mj-status.mj-warn{border-color:var(--focus);background:#fff6e0;border-left-width:10px}.mj-table{--mj-baize:#17524a;--mj-baize-light:#22705f;--mj-baize-dark:#0d3530;--mj-back:#2f8556;--mj-ivory-side:#e9dfc4;--mj-ink:var(--tile-edge,#2b2620);border:6px solid var(--felt-edge);background:var(--tex-noise), radial-gradient(ellipse 85% 75% at 50% 40%, var(--mj-baize-light) 0%, var(--mj-baize) 58%, var(--mj-baize-dark) 100%);background-color:var(--mj-baize);box-shadow:var(--shadow-md), inset 0 0 0 2px #00000059, inset 0 2px 0 3px #ffffff0d, inset 0 0 60px #0000004d;border-radius:16px;padding:56px 8px 12px;position:relative}.mj-scroll{-webkit-overflow-scrolling:touch;overflow:auto visible}.mj-board{margin:0 auto;position:relative}.mj-scroll.is-wide .mj-board{margin:0}.mj-zoom{z-index:1;gap:6px;display:flex;position:absolute;top:6px;right:8px}.mj-zoom-btn{border:2px solid var(--brass-dark);min-width:48px;min-height:48px;color:var(--primary-deep);font:inherit;cursor:pointer;background:linear-gradient(#fffdf6,#efe4c8);border-radius:12px;padding:0 12px;font-size:1.5rem;font-weight:800;line-height:1;box-shadow:0 2px #00000073,inset 0 0 0 2px #e8c873b3}.mj-zoom-fit{font-size:1.1rem}.mj-zoom-btn:hover{background:linear-gradient(180deg, #fff, var(--highlight-soft))}.mj-zoom-btn:active{transform:translateY(1px);box-shadow:0 1px #00000073,inset 0 0 0 2px #e8c873b3}.mj-zoom-btn:focus-visible{outline:4px solid var(--focus);outline-offset:2px}.mj-tile{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;margin:0;padding:0;transition-property:opacity,transform;transition-timing-function:ease-out;display:block;position:absolute}.mj-tile svg{width:100%;height:100%;display:block;overflow:visible}.mj-shadow{fill:#000;fill-opacity:.2;pointer-events:none}.mj-side-band{fill:var(--mj-back,#2f8556);stroke:var(--mj-ink,#2b2620);stroke-width:2.2px;stroke-linejoin:round}.mj-side{fill:var(--mj-ivory-side,#e9dfc4)}.mj-side-under{fill:#000;fill-opacity:.17}.mj-tile[data-z="1"] .mj-side-band{fill:#256b45}.mj-tile[data-z="2"] .mj-side-band{fill:#1a5334}.mj-tile[data-z="3"] .mj-side-band,.mj-tile[data-z="4"] .mj-side-band{fill:#113b24}.mj-face{stroke:var(--mj-ink,#2b2620);stroke-width:2.5px}.mj-lip{fill:none;stroke:#7a5a26;stroke-opacity:.22;stroke-width:3.4px;stroke-linecap:round;pointer-events:none}.mj-shade{fill:#2c2419;opacity:0;pointer-events:none}.mj-ring{fill:none;stroke:none;stroke-width:8px;pointer-events:none}.mj-tile.is-dim .mj-shade{opacity:.4}.mj-tile.is-dim .mj-shadow,.mj-tile.is-dim .mj-lip{display:none}.mj-tile.is-dim .mj-side{fill:#a39a82}.mj-tile.is-lit .mj-shadow{fill-opacity:.27}.mj-tile.is-lit .mj-face{stroke-width:3px}@media (hover:hover){.mj-tile.is-free:hover:not(.is-selected){transform:translate(1px,-3px)}.mj-tile.is-free:hover .mj-shadow{transform:translate(-2px,3px)}}.mj-tile.is-selected{z-index:2;transform:translate(3px,-9px)}.mj-tile.is-selected .mj-ring{stroke:var(--highlight);stroke-width:5.5px}.mj-tile.is-selected .mj-face{fill:#fff0a8;stroke:var(--primary-deep);stroke-width:8px}.mj-tile.is-selected .mj-shadow{fill-opacity:.26;display:inline;transform:translate(-7px,11px)}.mj-tile.is-selected .mj-lip{display:none}.mj-tile.is-hint{z-index:2;animation:1.3s ease-in-out infinite mj-nod}.mj-tile.is-hint .mj-ring{stroke:#c25100;stroke-width:8px;stroke-dasharray:14 8}.mj-tile.is-hint .mj-face{fill:var(--highlight-soft)}.mj-tile.is-hint .mj-shade{opacity:0}@keyframes mj-nod{50%{transform:translate(2px,-5px)}}.reduce-motion .mj-tile.is-hint{animation:none}@media (prefers-reduced-motion:reduce){.mj-tile.is-hint{animation:none}}.mj-hint-tag{color:#fff;white-space:nowrap;pointer-events:none;z-index:3;background:#8a3a00;border:2px solid #fff;border-radius:999px;padding:0 8px;font-size:.95rem;font-weight:800;line-height:1.5;position:absolute;bottom:-6px;left:50%;transform:translate(-45%);box-shadow:0 2px 4px #0006}.mj-tile:focus-visible{outline:5px solid var(--focus);outline-offset:1px;z-index:2}.mj-tile.guide-target{z-index:2}.mj-tile.is-removing{opacity:0;pointer-events:none;transform:scale(.85)}.mj-symbols{overflow:hidden}.mj-table-wrap{overflow-x:auto}.mj-win-line{font-size:var(--text-lg)}.mj-win-tiles{--mj-back:#2f8556;border-bottom:4px solid var(--brass);border-image:linear-gradient(90deg, transparent, var(--brass) 20%, var(--brass-light) 50%, var(--brass) 80%, transparent) 1;justify-content:center;align-items:flex-end;gap:6px;margin:0 0 14px;padding-bottom:12px;display:flex}.mj-show-tile{width:68px;height:auto;animation:.5s ease-out backwards mj-stand;display:block;overflow:visible}.mj-show-tile:first-child{transform:rotate(-8deg)translateY(4px)}.mj-show-tile:nth-child(2){width:78px;animation-delay:80ms}.mj-show-tile:nth-child(3){animation-delay:.16s;transform:rotate(8deg)translateY(4px)}@keyframes mj-stand{0%{opacity:0;transform:translateY(16px)}}.reduce-motion .mj-show-tile{animation:none}@media (width<=600px){.mj-table{margin:0 calc(-1 * var(--gutter) + 4px);border-width:4px;padding:56px 2px 8px}.game-toolbar.mj-toolbar .btn{flex:auto;padding:6px 10px}}@media (width<=767px){.mj-toolbar{flex-wrap:nowrap;gap:5px}.mj-toolbar>.btn,.mj-toolbar .more-menu>summary{flex:1 1 0;min-width:48px;min-height:50px;padding:4px;font-size:.98rem}.mj-toolbar .more-menu{flex:1 1 0;display:flex}.mj-toolbar .more-menu>summary{width:100%}.mj-status{min-height:0;max-height:4.4em;padding:4px 10px;font-size:1.05rem;line-height:1.35;overflow-y:auto}.mj-table{max-height:calc(100svh - 236px)}.mj-top{grid-template-columns:minmax(0,1fr)}.mj-toolbar>.btn,.mj-toolbar .more-menu>summary{white-space:normal;line-height:1.15}}
