.tabletop-layout{grid-template-columns:minmax(0,640px) 255px;gap:44px}.tabletop-shell{max-width:1200px}.tabletop-shell .classic-heading h1{font-size:38px}.table-score,.table-subline{color:var(--muted);justify-content:space-between;gap:12px;font-size:12px;display:flex}.table-score{border-bottom:1px solid var(--line);margin-bottom:16px;padding-bottom:16px}.table-score>span:first-child{color:#597347}.table-subline{margin:0 0 12px}.table-actions{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:20px;display:flex}.table-actions button,.table-actions select{min-height:44px;font:inherit;color:#365231;background:#edf3e6;border:1px solid #d6e1cf;border-radius:8px;padding:10px 17px;font-size:13px}.table-actions button:hover{background:#e0ecd3}.table-actions button[aria-pressed=true]{color:#fff;background:#214c36;border-color:#214c36}.table-actions button:disabled{opacity:.45}.table-actions label{align-items:center;gap:12px;font-size:13px;display:flex}.table-notice{color:#647259;text-align:center;max-width:470px;min-height:22px;margin:14px auto 0;font-size:12px;line-height:1.7}.table-aside h3{color:#597049;margin-top:28px;font-size:14px;font-weight:500}.table-aside ol{color:var(--muted);gap:16px;padding-left:18px;font-size:13px;line-height:1.8;display:grid}.table-next-game{color:#486340;align-items:center;gap:8px;margin-top:23px;font-size:13px;display:flex}.tabletop-shell button.selected{outline-offset:1px;outline:3px solid #ebc675}.tabletop-shell .hinted{outline-offset:1px;outline:3px dashed #e9c775!important}.mahjong-board{aspect-ratio:1.38;isolation:isolate;background:#214c36 0 0/cover;border:18px solid #0000;border-radius:16px;padding:20px;position:relative;box-shadow:0 5px #d6dfcd}.mahjong-tile{color:#355b40;background:#fffbed;border:1px solid #e6d8b9;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:2px;width:14.4%;height:21%;padding:2px;display:flex;position:absolute;box-shadow:2px 4px #c8bc97,3px 6px 8px #10291b99}.mahjong-tile:disabled{cursor:default;color:#60705b;filter:brightness(.8);background:#ddd8c8}.mahjong-tile span{font-size:clamp(25px,4vw,47px);line-height:1.1}.mahjong-tile small{letter-spacing:-.1px;font-size:clamp(6px,1vw,9px)}.tile-face-1,.tile-face-4{color:#a15e3e}.tile-face-2,.tile-face-5{color:#466b86}.table-cleared{color:#fff8dd;flex-direction:column;justify-content:center;align-items:center;gap:15px;font-size:28px;display:flex;position:absolute;inset:0}.table-cleared span{font-size:13px}.mine-grid{background:#e6ecdf;border-radius:13px;grid-template-columns:repeat(9,minmax(0,1fr));gap:4px;max-width:520px;margin:auto;padding:12px;display:grid}.mine-grid button{aspect-ratio:1;color:#3d633d;background:#cdddb8;border:0;border-radius:5px;min-width:0;padding:0;font-size:clamp(16px,3.1vw,25px);font-weight:500;box-shadow:0 3px #b6c9a0}.mine-grid button:hover{background:#b9d29f}.mine-grid button.revealed{box-shadow:none;background:#f8faf5}.mine-grid button.mine{color:#934d2f;box-shadow:none;background:#eec1a5}.mine-grid .flagged{color:#934d2f}.mine-grid .number-2{color:#537890}.mine-grid .number-3,.mine-grid .number-4{color:#a9604b}.reversi-board{background-color:#214c36;background-size:cover;border-radius:15px;grid-template-columns:repeat(8,minmax(0,1fr));padding:16px;display:grid;box-shadow:0 5px #d6dfcd}.reversi-board button{aspect-ratio:1;background:0 0;border:1px solid #f4f0da26;place-items:center;min-width:0;padding:5px;display:grid}.reversi-board button:hover{background:#ffffed10}.reversi-board button[aria-disabled=true]{cursor:default}.reversi-disc{border-radius:50%;width:86%;height:86%;display:block;box-shadow:1px 4px 6px #10271c88}.disc-1{background:#202f29;border:1px solid #718171;box-shadow:inset 0 1px 3px #afc5ac44,1px 4px 6px #10271c88}.disc-2{background:#fff9e5;border:1px solid #e3dac0;box-shadow:inset 0 -3px 3px #c2bba766,1px 4px 6px #10271c88}.legal-dot{background:#cce8989c;border-radius:50%;width:17%;height:17%}.white-score{margin-left:15px}.solitaire-board{--card-step:29px;--card-height:112px;background:#214c36 0 0/cover;border-radius:16px;padding:20px 14px 25px;box-shadow:0 5px #d6dfcd}.solitaire-top,.solitaire-columns{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.solitaire-top{margin-bottom:28px}.card-slot,.playing-card{height:var(--card-height);color:#294538;background:#fffbed;border:1px solid #e4d7b3;border-radius:5px;width:100%;min-width:0;padding:0;display:block;position:relative}.card-slot{color:#cedab4;background:#143e2d88;border:1px solid #eee8c754;font-size:30px}.empty-slot{place-items:center;display:grid}.card-back{background-color:#fffbed;background-repeat:no-repeat;background-size:100% 100%;border-color:#e9d8ab;box-shadow:0 2px 1px #132b2099}.playing-card{box-shadow:0 2px 1px #132b2099}.card-red{color:#b35e46}.card-corner{align-items:center;gap:4px;font-size:17px;line-height:1;display:flex;position:absolute;top:5px;left:6px}.card-corner b{font-size:15px;font-weight:400}.card-suit{text-align:center;font-size:32px;position:absolute;top:38%;left:0;right:0}.solitaire-columns{height:calc(var(--card-height) + var(--stack-height) * var(--card-step) + 44px)}.solitaire-column{margin-top:44px;position:relative}.solitaire-column>.playing-card{position:absolute}.column-destination{color:#d9e5c5;background:0 0;border:1px dashed #fff7dc40;border-radius:5px;flex-direction:column;justify-content:flex-start;align-items:center;gap:25px;width:100%;padding:0;display:flex;position:absolute;top:-44px;bottom:0;left:0}.column-destination>span{z-index:0;background:#234d36;border-radius:4px;width:100%;height:44px;margin-top:0;padding:0;font-size:11px;line-height:44px;position:relative}.column-destination small{opacity:.6;font-size:25px;font-weight:400}.hint-target .column-destination{border-color:#eccb78}.foundation.playing-card{background:#fffbed}.sudoku-grid{background:#fff;border:2px solid #6b8260;border-radius:5px;grid-template-columns:repeat(9,minmax(0,1fr));max-width:520px;margin:auto;display:grid;overflow:hidden}.sudoku-grid button{aspect-ratio:1;color:#588148;background:#fff;border:1px solid #dce4d6;border-top:0;border-left:0;min-width:0;padding:0;font-size:clamp(19px,3.6vw,29px);font-weight:450;position:relative}.sudoku-grid button.given{color:#2c422f;background:#f1f5eb;font-weight:600}.sudoku-grid button.same-digit{background:#ecf4de}.sudoku-grid button.box-right{border-right:2px solid #6b8260}.sudoku-grid button.box-bottom{border-bottom:2px solid #6b8260}.sudoku-grid button.selected{background:#dcebbd;box-shadow:inset 0 0 0 3px #88a56c;outline:none!important}.sudoku-grid button.conflict{color:#b44933;background:#fae8df}.sudoku-notes{grid-template-columns:repeat(3,1fr);align-items:center;gap:0;height:100%;padding:3px;display:grid}.sudoku-notes small{font-size:clamp(8px,1.5vw,12px);font-weight:400;line-height:1}.sudoku-keypad{grid-template-columns:repeat(9,minmax(0,1fr));gap:5px;max-width:520px;margin:18px auto 0;display:grid}.sudoku-keypad button{background:#ecf3e2;border:1px solid #d6e1cc;border-radius:6px;min-width:0;min-height:46px;padding:0;font-size:21px}.sudoku-keypad button:disabled{opacity:.4}.playtest-links{flex-wrap:wrap}.tabletop-shell.portal-game .classic-layout{max-width:640px}.tabletop-shell.portal-game .classic-heading h1{font-size:28px}.tabletop-shell.portal-game .classic-heading p{font-size:12px}@media (max-width:1000px){.tabletop-layout{grid-template-columns:minmax(0,600px) 210px;gap:30px}.tabletop-shell .classic-heading h1{font-size:32px}.solitaire-board{--card-height:92px;--card-step:25px}.card-corner{font-size:15px;left:4px}.card-corner b{font-size:13px}.card-suit{font-size:27px}}@media (max-width:760px){.tabletop-shell .classic-nav .classic-all{display:flex!important}.tabletop-layout{max-width:600px}.tabletop-shell .classic-heading h1{font-size:33px}.table-aside{display:none}.table-subline,.table-score{font-size:11px}.table-actions{gap:6px;margin-top:16px}.table-actions button{padding:10px 14px;font-size:12px}.mahjong-board{border-width:13px;border-radius:12px}.mahjong-tile span{font-size:32px}.mahjong-tile small{font-size:7px}.reversi-board{padding:11px}.reversi-board button{padding:3px}.mine-grid{gap:3px;padding:9px}.mine-grid button{font-size:20px}.solitaire-board{--card-height:76px;--card-step:44px;border-radius:12px;padding:16px 9px 20px}.solitaire-top,.solitaire-columns{gap:5px}.solitaire-top{margin-bottom:28px}.card-corner{letter-spacing:-.5px;gap:2px;font-size:13px;top:5px;left:3px}.card-corner b{font-size:12px}.card-suit{font-size:24px}.card-slot,.playing-card{border-radius:4px}.table-notice{font-size:11px}.sudoku-keypad{gap:3px}.sudoku-keypad button{min-height:44px;font-size:19px}.sudoku-grid button{font-size:24px}.sudoku-notes small{font-size:10px}.tabletop-shell.portal-game .classic-heading h1{font-size:25px}}@media (max-width:430px){.tabletop-shell .classic-heading h1{font-size:29px}.solitaire-board{--card-height:65px;--card-step:44px;padding-left:7px;padding-right:7px}.solitaire-top,.solitaire-columns{gap:4px}.card-corner{gap:1px;font-size:12px;left:2px}.card-corner b{font-size:11px}.card-suit{font-size:22px}.mahjong-tile span{font-size:26px}.mahjong-tile small{font-size:6px}.sudoku-grid button{font-size:21px}.sudoku-notes small{font-size:9px}.white-score{margin-left:8px}}@media (prefers-reduced-motion:reduce){.tabletop-shell button{transition:none}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.bomber-grid{grid-template-rows:repeat(11,minmax(0,1fr))}.boulder-grid{grid-template-rows:repeat(9,minmax(0,1fr))}.freecell-board{--card-step:34px;--card-height:92px;min-width:520px}.freecell-top,.freecell-board .solitaire-columns{grid-template-columns:repeat(8,minmax(0,1fr));gap:7px;display:grid}.freecell-top{margin-bottom:22px;padding-top:36px}.freecell-cell{position:relative}.cell-destination{color:#e6ecd3;background:#214c36;border:0;border-radius:4px;width:100%;min-height:32px;font-size:11px;position:absolute;top:-36px}.freecell-board .card-corner{gap:2px;font-size:14px;left:3px}.freecell-board .card-suit{font-size:27px}.connect-board{background-color:#214c36;background-size:cover;border-radius:16px;max-width:560px;margin:auto;padding:20px;box-shadow:0 5px #d6dfcd}.connect-drops,.connect-slots{grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;display:grid}.connect-drops{margin-bottom:14px}.connect-drops button{color:#f7f2df;background:#102e2180;border:1px solid #dbe6c34d;border-radius:6px;min-height:44px;font-size:24px}.connect-drops button:disabled{opacity:.4}.connect-disc{aspect-ratio:1;background:#143323b0;border:1px solid #c9d5b331;border-radius:50%;box-shadow:inset 0 2px 5px #071b1180}.connect-disc-1{background:#ba6650;border:2px solid #dba283;box-shadow:inset 0 -4px #a2533e,0 2px 3px #082d1c66}.connect-disc-2{background:#e7c776;border:2px solid #f4de9d;box-shadow:inset 0 -4px #cfae5b,0 2px 3px #082d1c66}.winning-disc{outline-offset:2px;outline:3px solid #fffbed}.sliding-board{aspect-ratio:1;background:#214c36;border:8px solid #214c36;border-radius:12px;gap:5px;max-width:540px;margin:auto;display:grid}.picture-tile{background-color:#eff1df;background-repeat:no-repeat;border:0;border-radius:3px;min-width:0;padding:0;position:relative;box-shadow:inset 0 0 0 1px #fff5d366}.picture-tile[aria-disabled=true]{cursor:default}.picture-tile span{color:#214c36;background:#fffbedde;border-radius:4px;padding:3px 7px;font-size:16px;position:absolute;bottom:5px;right:5px;box-shadow:0 1px 3px #12382133}.picture-gap{background:#e7ecda;box-shadow:inset 0 2px 5px #112a2433}.picture-gap span{box-shadow:none;color:#93a581;background:0 0;place-items:center;font-size:28px;display:grid;inset:0}.picture-preview{aspect-ratio:1;background-size:cover;border:5px solid #e1e8d8;border-radius:9px;width:240px;margin:20px auto}.garden-grid{aspect-ratio:1;touch-action:manipulation;background-color:#e7ebdc;background-size:cover;border:5px solid #214c36;border-radius:12px;gap:2px;max-width:540px;margin:auto;padding:8px;display:grid;position:relative}.bomber-grid{grid-template-columns:repeat(11,minmax(0,1fr))}.boulder-grid{grid-template-columns:repeat(9,minmax(0,1fr))}.garden-cell{color:#517545;background:#f7f6e9ce;border:1px solid #5870511c;border-radius:3px;place-items:center;min-width:0;font-size:27px;line-height:1;display:grid;position:relative;overflow:hidden}.stone-cell{background:#386049;border:1px solid #667e52;box-shadow:inset 0 2px #bcd0b532,inset 0 -2px #133b2c66}.crate-cell{color:#f7dba5;background:#bf8c62;border:2px solid #98613e;box-shadow:inset 0 2px #ebbd91}.soil-cell{color:#8f704c;background:#ccaa80;border:1px solid #b58b5f}.garden-cell.flame-cell{color:#aa502f;background:#f9b761;box-shadow:inset 0 0 0 2px #ef864b}.gardener-sprite{z-index:1;background-position:50%;background-repeat:no-repeat;background-size:contain;width:100%;height:100%}.garden-bomb{color:#273a31;font-size:34px;position:relative}.garden-bomb small{color:#fffbed;place-items:center;padding-top:2px;font-size:13px;display:grid;position:absolute;inset:0}.garden-beetle{color:#924e37;background:#d99557;border:1px solid #b87646;border-radius:50%;padding:2px;font-size:27px}.cave-boulder{color:#879383;text-shadow:1px 2px #5f705b,-1px -1px #cbd0b8;font-size:36px}.cave-seed{color:#c59637;text-shadow:0 1px #eee0a2}.falling-cell{box-shadow:inset 0 0 0 2px #bc7855}.gate-open{color:#3b6a34}.gate-locked{color:#987b58;opacity:.65}.garden-overlay{z-index:3;color:#fffbed;pointer-events:none;background:#173f2cd9;border-radius:5px;flex-direction:column;justify-content:center;align-items:center;gap:13px;display:flex;position:absolute;inset:5px}.garden-overlay>span{font-size:25px}.garden-overlay small{font-size:12px}.garden-pad{grid-template-rows:48px 48px;grid-template-columns:repeat(3,48px) minmax(100px,140px);justify-content:center;gap:6px;margin:20px auto 0;display:grid}.garden-pad button{color:#365231;background:#e8f0dc;border:1px solid #cfdac2;border-radius:8px;min-height:48px;font-size:22px}.garden-pad button:disabled{opacity:.4}.pad-up{grid-area:1/2}.pad-left{grid-area:2/1}.pad-down{grid-area:2/2}.pad-right{grid-area:2/3}.garden-pad .pad-action{grid-area:1/4/3;padding:10px;font-size:13px}@media (max-width:760px){.freecell-board{--card-step:44px;--card-height:76px}.connect-board{padding:15px}.connect-drops,.connect-slots{gap:7px}.connect-disc{border-width:1px}.garden-cell{font-size:22px}.garden-grid{border-width:4px;gap:1px;padding:4px}.garden-bomb{font-size:27px}.garden-beetle{font-size:20px}.cave-boulder{font-size:29px}.picture-tile span{padding:3px 6px;font-size:12px;bottom:3px;right:3px}.sliding-board{border-width:6px;gap:3px}.garden-overlay>span{font-size:21px}.garden-pad{grid-template-rows:44px 44px;grid-template-columns:repeat(3,44px) minmax(100px,130px);gap:5px}.garden-pad button{min-height:44px}.table-subline{flex-wrap:wrap}}.campaign-picker{color:#607259;justify-content:space-between;align-items:center;gap:12px;margin:0 0 12px;font-size:12px;display:flex}.campaign-picker label{align-items:center;gap:12px;display:flex}.campaign-picker select{min-height:44px;font:inherit;color:#314e34;background:#eef3e7;border:1px solid #d2deca;border-radius:7px;max-width:250px;padding:10px 12px}.campaign-tip{color:#65765c;max-width:530px;margin:0 0 18px;font-size:12px;line-height:1.7}.garden-kit{color:#677c53;justify-content:space-between;gap:10px;margin:-2px 0 13px;font-size:11px;display:flex}.beetle-sprite{background-position:50%;background-repeat:no-repeat;background-size:contain;width:94%;height:94%}.blast-preview{box-shadow:inset 0 0 0 2px #c48d50;background-color:#f1ddb9!important}.guarded-cell{box-shadow:inset 0 0 0 3px #d4ac51}.fall-warning{box-shadow:inset 0 -3px #ca7856}.fall-warning:after{content:"↓";color:#a35b3a;font-size:12px;position:absolute;top:1px;right:3px}.ring-cell{box-shadow:inset 0 0 0 2px #c4a35e}.brass-ring{color:#af8c42}.wood-gate{color:#ffe9b4;background:#ae8054;border:2px solid #825c39}.campaign-result{text-align:center;color:#436239;background:#eaf1dd;border-top:1px solid #cbdabc;border-bottom:1px solid #cbdabc;flex-direction:column;align-items:center;gap:11px;margin-top:20px;padding:21px 12px;display:flex}.campaign-result strong{font-size:20px;font-weight:500}.campaign-result span{font-size:12px;line-height:1.6}.campaign-result button{color:#fff8e3;min-height:44px;font:inherit;background:#214c36;border:1px solid #284d36;border-radius:7px;padding:11px 25px;font-size:13px}.garden-pad button{touch-action:none;-webkit-user-select:none;user-select:none}@media (max-width:760px){.campaign-picker{gap:8px;font-size:11px}.campaign-picker label{gap:8px}.campaign-picker select{max-width:215px;padding:10px 8px;font-size:12px}.campaign-tip{font-size:11px}.garden-kit{font-size:10px}.campaign-result strong{font-size:19px}.table-bomber .classic-nav,.table-boulder .classic-nav{min-height:56px}.table-bomber .classic-layout,.table-boulder .classic-layout{padding-top:12px}.table-bomber .classic-heading,.table-boulder .classic-heading{margin-bottom:10px}.table-bomber .classic-heading h1,.table-boulder .classic-heading h1{margin:4px 0}.table-bomber .classic-category,.table-boulder .classic-category{display:none}.table-bomber .classic-heading p,.table-boulder .classic-heading p{font-size:12px}.table-bomber .table-score,.table-boulder .table-score{margin-bottom:8px;padding-bottom:8px}.table-bomber .campaign-picker,.table-boulder .campaign-picker,.table-bomber .campaign-tip,.table-boulder .campaign-tip,.table-bomber .table-subline,.table-boulder .table-subline,.table-bomber .garden-kit{margin-bottom:8px}.table-bomber .table-actions,.table-boulder .table-actions,.table-bomber .garden-pad,.table-boulder .garden-pad{margin-top:10px}.table-bomber .garden-overlay small{text-align:center;padding:0 12px}.table-bomber .classic-heading p,.table-boulder .classic-heading p,.table-bomber .table-score,.table-boulder .table-score{display:none}.table-bomber .garden-grid,.table-boulder .garden-grid{width:100%;max-width:clamp(230px,100svh - 420px,540px)}.table-bomber .gardener-sprite,.table-boulder .gardener-sprite{background-size:140%}}.mahjong-board[data-difficulty="2"],.mahjong-board[data-difficulty="3"]{aspect-ratio:1}.mahjong-board[data-difficulty="2"] .mahjong-tile,.mahjong-board[data-difficulty="3"] .mahjong-tile{height:13%;min-height:38px}.campaign-level-controls{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.campaign-level-controls .expansion-level{margin-bottom:0}
