@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Nunito:wght@400;600;700;800&display=swap');
:root{--ink:#35473d;--muted:#879084;--green:#617a55;--deep:#536c48;--cream:#fbfaf5;--line:#e8e8dc;--lavender:#ece6f1;--gold:#b59c65;--serif:Georgia,'Times New Roman',serif;--sans:'DM Sans','Nunito',sans-serif}*{box-sizing:border-box}body{margin:0;background:#f8f7f1;color:var(--ink);font-family:var(--sans);font-size:14px}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;border:0;background:none;color:inherit}button:disabled{cursor:default;opacity:.4}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #aa91bb;outline-offset:4px}button:not(:disabled){transition:background .18s,transform .18s,box-shadow .18s}button:not(:disabled):active{transform:translateY(1px)}a{color:inherit}.shell{max-width:1600px;margin:0 auto;padding:0 48px}.header{display:flex;align-items:center;justify-content:space-between;height:100px;border-bottom:1px solid var(--line)}.brand{text-decoration:none;display:flex;gap:12px;align-items:center;font-family:var(--serif);font-size:24px;letter-spacing:-.7px}.brand b{font-weight:400;color:#778761}.brand small{display:block;font:9px var(--sans);letter-spacing:2.4px;margin-top:6px;color:#8a9180}.brand-icon{font-size:33px;border-radius:18px;background:#efeede;display:grid;place-items:center;width:52px;height:52px}.header nav{display:flex;gap:27px;align-items:center}.text-btn{font-size:12px;font-weight:500;display:flex;gap:8px;align-items:center}.circle-question{border:1px solid #9aab94;width:17px;height:17px;border-radius:50%;font-size:11px;display:grid;place-items:center}.primary{background:var(--green);color:white;border:1px solid var(--green);padding:13px 25px;border-radius:10px;font-weight:600;font-size:12px;box-shadow:0 3px 0 #516747}.primary:hover{background:#506c45}.primary.small{padding:11px 18px;font-size:12px}.primary.small span{font-size:17px;margin-right:5px}.icon-btn{position:relative;font-size:24px;color:#819376;width:30px}.sound-dot{position:absolute;right:1px;top:5px;width:7px;height:7px;border-radius:50%;background:#b6b6ac;border:2px solid #f8f7f1}.icon-btn.on .sound-dot{background:#7ca66b}.intro{display:flex;align-items:center;justify-content:space-between;padding:35px 0 30px}.eyebrow{font-size:9px;letter-spacing:1.8px;font-weight:700;color:#8e967f}.tiny-flower{color:#b7a0ba;font-size:16px;vertical-align:-2px;margin-right:7px}h1{font:38px/1.2 var(--serif);letter-spacing:-1.3px;margin:9px 0 10px;font-weight:400}h1>span{color:#a4b68a}.intro p{margin:0;color:#8b9488;font-size:12px}.session-label{font-size:10px;display:flex;gap:8px;align-items:center;color:#9a9f90;margin-top:20px}.han{font-size:20px;border-left:1px solid #dedfd0;padding-left:14px;margin-left:8px;letter-spacing:4px;color:#99a58a}.live-dot{display:inline-block;width:6px;height:6px;background:#91a57b;border-radius:50%;flex-shrink:0}.layout{display:grid;grid-template-columns:minmax(0,1fr) 254px;gap:25px;align-items:start}.game-wrap{border:1px solid #e3e4d6;border-radius:16px;background:#fffefa;overflow:hidden;box-shadow:0 5px 20px #67744805}.table-top{height:77px;padding:0 25px;display:flex;align-items:center;justify-content:space-between}.table-label{display:flex;gap:12px;align-items:center}.table-label h2{font:17px var(--serif);margin:0 0 5px;letter-spacing:-.2px}.table-label span:not(.table-symbol){font-size:10px;color:#939a8d}.table-symbol{font:25px var(--serif);color:#899b75;background:#f1f2e7;width:38px;height:40px;display:grid;place-items:center;border-radius:10px}.table-tags{display:flex;gap:9px}.tag{font-size:9px;border:1px solid #e8e8df;border-radius:18px;padding:7px 11px;white-space:nowrap;color:#869078;background:#f9faf4}.tag b{font-weight:600}.wall-icon{font-size:13px;margin-right:3px;color:#98a18c}.board{height:376px;margin:0 14px;position:relative;background:radial-gradient(ellipse at 50% 38%,#e7eedc 0,#dde7ce 100%);border:1px solid #d6dfc9;border-radius:13px;overflow:hidden}.board::after{content:'';position:absolute;pointer-events:none;inset:0;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.3' filter='url(%23n)'/%3E%3C/svg%3E")}.board-inset{position:absolute;inset:17px;border:1px solid #c9d6bb80;border-radius:70px;pointer-events:none}.corner-flower{position:absolute;color:#b9c7a7;font-size:44px;opacity:.4;line-height:1}.f1{left:29px;top:23px;transform:rotate(20deg)}.f2{right:27px;bottom:26px;font-size:34px}.f3{right:36px;top:28px;font-size:31px}.seat{position:absolute;z-index:2;text-align:center}.seat-north{top:18px;left:50%;transform:translateX(-50%)}.seat-east{right:22px;top:123px;width:90px}.seat-west{left:22px;top:123px;width:90px}.player{display:flex;align-items:center;justify-content:center;gap:9px}.avatar{width:42px;height:42px;background:#f6efe0;border:3px solid #fff9eccc;border-radius:50%;display:grid;place-items:center;font-size:26px;box-shadow:0 2px 5px #7b8e5920;position:relative}.avatar.a1{background:#f3e1cb}.avatar.a2{background:#e8e0cd}.avatar.a3{background:#e6e8dc}.avatar .seat-wind{position:absolute;right:-6px;bottom:-3px;border:2px solid #e1e9d5;background:#f9f8ef;width:20px;height:20px;display:grid;place-items:center;border-radius:50%;font:11px var(--serif);color:#8a987a}.player-info{text-align:left;font-size:11px;font-weight:600}.player-info small{display:block;font-size:9px;color:#8b987e;font-weight:400;margin-top:4px}.seat-east .player,.seat-west .player{flex-direction:column;gap:7px}.seat-east .player-info,.seat-west .player-info{text-align:center}.seat .active .avatar{box-shadow:0 0 0 3px #a6ba8c,0 0 0 6px #e8efdd}.tilebacks{display:flex;justify-content:center;gap:2px;margin-top:11px}.tileback{width:13px;height:22px;border-radius:3px;background:linear-gradient(135deg,#a3b390,#b7c4a4);border:1px solid #8ea17a;box-shadow:0 2px 0 #80936c,inset 0 0 0 2px #bdcbae}.tileback::after{content:'◇';font:9px var(--serif);color:#dce5d1;display:block;margin-top:4px}.seat-east .tilebacks,.seat-west .tilebacks{flex-wrap:wrap;gap:2px;max-width:74px;margin-left:auto;margin-right:auto}.seat-east .tileback,.seat-west .tileback{width:8px;height:15px;border-radius:2px}.seat-east .tileback::after,.seat-west .tileback::after{display:none}.bot-melds{display:flex;gap:4px;justify-content:center;flex-wrap:wrap;margin-top:7px;max-width:180px}.meld-group{display:flex;gap:1px}.seat-east .bot-melds,.seat-west .bot-melds{max-width:84px}.flower-badge{font-size:10px;color:#988aa3;margin-top:6px;letter-spacing:2px}.table-center{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);width:90px;height:90px;border:1px solid #bbccaa66;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#a0b28a;pointer-events:none}.table-center>span{font:27px var(--serif);opacity:.8}.table-center small{font-size:6px;letter-spacing:2px;margin-top:6px}.pond{position:absolute;inset:111px 128px 86px;display:grid;grid-template-columns:1fr 1fr;gap:10px;z-index:3}.discard-zone{display:flex;gap:3px;align-content:start;align-items:start;justify-content:center;flex-wrap:wrap;max-height:90px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#bfcab1 transparent}.pond.has-tiles+.table-center{opacity:.15}.board-note{position:absolute;left:50%;top:64%;transform:translateX(-50%);width:220px;text-align:center;font:italic 12px var(--serif);color:#98a789;pointer-events:none}.own-melds{position:absolute;bottom:67px;left:50%;transform:translateX(-50%);display:flex;gap:10px;z-index:4}.seat-you{position:absolute;bottom:17px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:10px;font-size:11px}.seat-you .avatar{width:31px;height:31px;font-size:21px;border-width:2px}.seat-you>span{font-weight:600}.seat-you small{font-size:9px;color:#8e9a80}.you-wind{font:12px var(--serif);padding:4px 7px;background:#f6f7ecaa;border-radius:5px;color:#8b9c78}.hand-area{padding:21px 24px 17px}.hand-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;font-size:11px}.hand-top strong{font-weight:600;margin-right:11px}.hand-top #turn-description{color:#989f91;font-size:10px}.turn-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#829b6b;margin-right:8px;vertical-align:1px}.turn-dot.waiting{background:#c1ad84}.hand-tools{display:flex;gap:12px;color:#8c9782}.mini-btn{font-size:12px;padding:3px}.mini-btn span{font-size:10px;margin-left:4px}.hand{display:flex;gap:5px;justify-content:center;padding:5px 2px 10px;min-height:83px;overflow-x:auto;scrollbar-width:thin}.tile{width:45px;height:62px;position:relative;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(125deg,#fffef8,#fbf7e7);border:1px solid #dfdbc5;border-bottom:3px solid #d4d1b7;border-radius:6px;box-shadow:0 3px 0 #e9e6d6,0 4px 6px #898d6a17;vertical-align:middle;padding:4px}.tile svg{width:100%;height:100%}.tile-corner{position:absolute;top:3px;left:4px;font-size:7px;line-height:1;color:#a9ad98;font-weight:600}.hand .tile:not(:disabled):hover{transform:translateY(-5px);border-color:#a9b895;box-shadow:0 5px 0 #dce2d0,0 7px 10px #687d5220}.hand .tile.selected{transform:translateY(-7px);border:2px solid #8ca276;background:#fffef4;box-shadow:0 5px 0 #c2d1ae,0 6px 13px #8a9e6930}.hand .tile.hinted{outline:2px dashed #b19ac0;outline-offset:2px}.hand .tile.drawn{margin-left:12px}.hand .tile:disabled{opacity:1;cursor:default}.tile.tiny{width:22px;height:30px;border-radius:3px;padding:2px;border-bottom-width:2px;box-shadow:0 1px 1px #98a58022}.tile.tiny .tile-corner{font-size:4px;top:2px;left:2px}.tile.micro{width:15px;height:22px;border-radius:2px;padding:1px;box-shadow:none;border-bottom-width:1px}.tile.micro .tile-corner{display:none}.tile.latest{outline:2px solid #ad98b8;outline-offset:1px}.tile.meld{width:27px;height:37px;padding:2px}.action-bar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:8px;min-height:44px}.action-bar #action-message{font-size:10px;color:#979f8d;max-width:300px;line-height:1.5}.action-bar #action-message b{color:#7a8869;font-weight:500}.actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}.secondary{border:1px solid #dfe1d4;border-radius:8px;background:#fafbf5;padding:10px 14px;font-size:11px;color:#7c896b}.secondary:hover{background:#edf1e4}.actions .primary{min-width:122px}.action-chip{font-size:10px;display:flex;align-items:center;gap:6px}.table-footer{padding:13px 24px;border-top:1px solid #efefe4;display:flex;justify-content:space-between;color:#a0a694;font-size:9px}.table-footer .live-dot{width:4px;height:4px;margin-right:5px;vertical-align:1px}.table-footer button{font-size:9px;color:#89977b;padding:0}.table-footer button span{margin-left:5px}.sidebar{display:flex;flex-direction:column;gap:16px}.meadow-card{height:350px;border-radius:14px;position:relative;overflow:hidden;background:#eff4ee;border:1px solid #e6e9dc}.meadow-card img{width:100%;height:100%;object-fit:cover;object-position:center 75%;display:block}.meadow-card::after{position:absolute;content:'';inset:0;background:linear-gradient(#f8f9f149,transparent 55%,#3c532935)}.meadow-caption{position:absolute;top:25px;left:24px;z-index:1}.meadow-caption .eyebrow{font-size:7px;letter-spacing:1.5px;color:#9b9e89}.meadow-caption h2{font:28px/1.2 var(--serif);letter-spacing:-.9px;color:#63745d;margin:13px 0 10px}.meadow-caption p{font-size:9px;color:#8c9884}.image-label{position:absolute;bottom:17px;width:100%;text-align:center;color:#fffef4;font:italic 11px var(--serif);z-index:1;text-shadow:0 1px 4px #697653}.tip-card{padding:22px;background:#eeebf0;border:1px solid #e7e1e9;border-radius:12px}.tip-heading{display:flex;gap:9px;align-items:center;color:#93829b}.tip-heading>span{font-size:24px;line-height:1}.tip-heading h3{font:17px var(--serif);margin:0;color:#786b80}.tip-card p{font-size:11px;line-height:1.8;color:#99909c;margin:12px 0 16px}.tip-card strong{font-weight:500;color:#827589}.tip-card button{padding:0;width:100%;display:flex;justify-content:space-between;font-size:9px;color:#8d7e96}.activity-card{padding:8px 9px}.activity-card .eyebrow{font-size:8px;color:#a1a58e}.activity-card p{font:italic 12px/1.65 var(--serif);color:#8e9782;min-height:38px;margin:10px 0 15px}.mini-avatars{display:flex;align-items:center}.mini-avatars>span{display:grid;place-items:center;width:24px;height:24px;border:2px solid #f8f7f1;margin-left:-5px;border-radius:50%;background:#eee6d2;font-size:16px}.mini-avatars>span:first-child{margin-left:0}.mini-avatars>span:nth-child(2){background:#d9dbc7}.mini-avatars>span:nth-child(3){background:#e8ded7}.mini-avatars small{font-size:7px;line-height:1.4;color:#a3a998;margin-left:7px}.page-footer{display:flex;justify-content:space-between;padding:24px 2px 27px;font-size:9px;color:#a9ad9d}.footer-flower{color:#b8a7bc;margin:0 7px;font-size:12px}dialog{border:1px solid #e6e5d8;border-radius:22px;background:#fcfbf6;color:var(--ink);width:min(620px,calc(100vw - 30px));max-height:85dvh;padding:38px;box-shadow:0 30px 100px #3d543133}dialog::backdrop{background:#38442e50;backdrop-filter:blur(5px)}.modal-close{position:absolute;right:16px;top:12px;font-size:26px;color:#9ba18d;width:30px;height:30px}.modal-content h2,#modal-content h2{font:32px/1.2 var(--serif);margin:8px 0 14px;letter-spacing:-.8px}#modal-content h3{font-size:13px;margin-top:25px}#modal-content p{font-size:12px;line-height:1.8;color:#8a9381}#modal-content ol{padding-left:18px;font-size:12px;line-height:1.9;color:#79856c}#modal-content .rule-card{display:flex;gap:8px;padding:12px 0;border-bottom:1px solid var(--line);align-items:center;justify-content:space-between;font-size:12px}#modal-content .rule-card small{font-size:10px;color:#97a087}.rules-table{width:100%;border-collapse:collapse;font-size:11px}.rules-table td{padding:7px 0;border-bottom:1px solid #e9eadf}.rules-table td:last-child{text-align:right;color:#879a70}.modal-art{font-size:48px;text-align:center;margin:0 0 15px}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:25px}.mode-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0}.mode-option{padding:20px;border-radius:12px;border:1px solid #dedfcf;text-align:left;background:#f6f6ec}.mode-option.chosen{border:2px solid #8fa879;background:#eff3e6;padding:19px}.mode-option span{display:block;font:20px var(--serif);margin-bottom:8px}.mode-option small{color:#8e9883;font-size:10px;line-height:1.7;display:block}.result-tiles{display:flex;gap:3px;flex-wrap:wrap;margin:18px 0}.score-list{padding-top:8px}.score-row{display:flex;justify-content:space-between;padding:8px 0;font-size:12px;border-bottom:1px solid #e8e9dc}.score-row strong{color:#8c9f74}.journal-list{list-style:none;padding:0;max-height:250px;overflow:auto}.journal-list li{padding:9px 0;font-size:11px;color:#8b9780;border-bottom:1px solid #ebede2}.table-scores{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:20px 0}.table-scores>div{text-align:center;border:1px solid #e3e7d8;background:#f4f6eb;border-radius:10px;padding:14px 5px}.table-scores strong{display:block;margin-top:6px;font-size:15px}.table-scores small{font-size:10px;color:#8d9b7b}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,15px);opacity:0;pointer-events:none;max-width:90vw;width:max-content;padding:13px 20px;background:#526347;color:#fffaf0;border-radius:10px;font-size:12px;box-shadow:0 6px 20px #4f624333;transition:opacity .2s,transform .2s;z-index:20}#toast.visible{opacity:1;transform:translate(-50%,0)}.muted-link{font-size:10px;color:#9ba58e}.empty-hand{color:#9ca58f;font:14px var(--serif)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@media(min-width:1450px){.board{height:420px}.pond{inset:125px 145px 105px}.seat-east,.seat-west{top:145px}.meadow-card{height:390px}.tile{width:50px;height:68px}.hand{min-height:90px}.table-center{top:47%}.meadow-caption h2{font-size:30px}.layout{grid-template-columns:minmax(0,1fr) 280px}.shell{padding:0 60px}}
@media(max-width:1250px){.shell{padding:0 28px}.layout{gap:18px;grid-template-columns:minmax(0,1fr) 220px}.tile{width:39px;height:55px}.hand{gap:4px;min-height:76px}.hand-area{padding:19px 18px 15px}.table-top{padding:0 18px}.tag{padding:6px 8px;font-size:8px}.session-label{display:none}.meadow-caption{left:20px}.meadow-caption h2{font-size:26px}.seat-east{right:10px}.seat-west{left:10px}.pond{left:104px;right:104px}.hand-top #turn-description{font-size:9px}.tip-card{padding:18px}.table-label h2{font-size:16px}}
@media(max-width:1020px){.layout{grid-template-columns:1fr}.sidebar{display:grid;grid-template-columns:1fr 1fr;gap:18px}.meadow-card{height:230px}.meadow-card img{object-position:center 62%}.meadow-caption h2{font-size:27px}.meadow-card .image-label{display:none}.tip-card{display:flex;flex-direction:column;justify-content:center;padding:30px}.activity-card{display:none}.board{height:360px}.hand{gap:6px}.tile{width:44px;height:61px}.meadow-card img{object-position:center 74%}.meadow-caption{padding:12px;background:#fafbf16e;border-radius:12px;left:12px;top:12px}.page-footer{padding:23px 0}.intro{padding:28px 0}.table-top{height:72px}.board-note{top:65%}}
@media(max-width:620px){.shell{padding:0 12px}.header{height:80px}.brand{font-size:18px;gap:8px}.brand small{font-size:6px;letter-spacing:1.8px}.brand-icon{width:39px;height:42px;font-size:26px;border-radius:12px}.header nav{gap:13px}.header .text-btn{font-size:0;gap:0}.header .text-btn .circle-question{font-size:11px}.header .primary.small{font-size:10px;padding:9px 11px;box-shadow:0 2px 0 #516747}.header .primary.small span{display:none}.icon-btn{font-size:20px;width:20px}.sound-dot{right:-4px}.intro{padding:26px 3px 23px}.intro .eyebrow{font-size:7px;letter-spacing:1.5px}h1{font-size:29px;letter-spacing:-1px;margin-top:8px}.intro p{font-size:10px;line-height:1.7;max-width:280px}.table-top{padding:0 12px;height:68px}.table-label{gap:8px}.table-label h2{font-size:15px}.table-symbol{width:30px;height:33px;font-size:21px}.table-label span:not(.table-symbol){font-size:8px}.table-tags{flex-direction:column;gap:3px;align-items:flex-end}.tag{border:0;background:none;font-size:8px;padding:1px}.board{height:350px;margin:0 7px;border-radius:10px}.board-inset{inset:9px;border-radius:50px}.seat-north{top:16px}.seat-east{right:2px;top:137px;width:65px}.seat-west{left:2px;top:137px;width:65px}.seat-east .avatar,.seat-west .avatar{width:33px;height:33px;font-size:22px}.player-info{font-size:10px}.player-info small{font-size:8px}.seat-east .tilebacks,.seat-west .tilebacks{max-width:55px;gap:2px}.seat-east .tileback,.seat-west .tileback{width:6px;height:12px}.tileback{width:11px;height:18px}.tileback::after{margin-top:2px;font-size:8px}.tilebacks{margin-top:10px}.pond{inset:113px 69px 88px;gap:5px}.discard-zone{gap:2px;max-height:72px}.tile.tiny{width:18px;height:25px}.table-center{width:75px;height:75px;top:51%}.table-center>span{font-size:22px}.board-note{top:67%;font-size:10px;width:150px}.f1{font-size:30px;left:16px}.f2{font-size:27px;right:16px}.f3{right:22px;font-size:20px}.seat-you{bottom:16px;gap:7px}.seat-you small{font-size:8px}.own-melds{bottom:55px;gap:6px}.tile.meld{width:20px;height:28px}.hand-area{padding:18px 10px 12px}.hand-top{margin-bottom:13px}.hand-top strong{font-size:10px;margin-right:0}.hand-top #turn-description{display:block;margin:5px 0 0 13px;font-size:9px}.mini-btn{font-size:11px}.mini-btn span{font-size:9px}.hand-tools{gap:9px}.hand{gap:3px;justify-content:flex-start;min-height:61px;padding-top:8px;padding-bottom:8px}.tile{width:calc((100vw - 88px)/14);min-width:19px;max-width:36px;height:43px;border-radius:4px;padding:2px;box-shadow:0 2px 0 #e9e6d6;border-bottom-width:2px}.tile-corner{font-size:5px;left:2px;top:2px}.hand .tile.drawn{margin-left:5px}.hand .tile.selected{transform:translateY(-5px)}.action-bar{margin-top:7px;gap:8px;align-items:center}.action-bar #action-message{font-size:9px;max-width:170px}.actions{gap:5px}.actions .primary{font-size:10px;padding:10px 12px;min-width:104px;border-radius:7px}.actions .secondary{font-size:9px;padding:9px}.action-chip{gap:3px}.table-footer{padding:12px 10px;font-size:8px}.table-footer button{font-size:8px}.sidebar{grid-template-columns:1fr 1fr;gap:10px}.meadow-card{height:225px}.meadow-card img{object-position:center bottom}.meadow-caption{top:8px;left:6px;padding:9px;background:none}.meadow-caption .eyebrow{font-size:5px;letter-spacing:.8px}.meadow-caption h2{font-size:22px;margin-top:8px}.meadow-caption p{font-size:7px;max-width:95px;line-height:1.6}.tip-card{padding:16px}.tip-heading{gap:4px}.tip-heading h3{font-size:15px}.tip-heading>span{font-size:20px}.tip-card p{font-size:9px;line-height:1.8;margin:10px 0 12px}.tip-card button{font-size:8px}.page-footer{font-size:7px;gap:22px;line-height:1.6;padding:20px 4px}.page-footer>span{max-width:150px}.page-footer>span:last-child{text-align:right}.footer-flower{margin:0 3px}dialog{padding:29px 22px}#modal-content h2{font-size:28px}.mode-option{padding:15px}.mode-option.chosen{padding:14px}.mode-option span{font-size:18px}.mode-option small{font-size:9px}.bot-melds{max-width:135px}.seat-east .bot-melds,.seat-west .bot-melds{max-width:55px}.tile.micro{width:12px;height:17px}.flower-badge{font-size:8px}.table-center small{font-size:5px}.result-tiles .tile{width:29px;height:41px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
/* Keep the entire hand visible at every table width. */
.hand{align-items:flex-start;--tile-gap:5px;--draw-gap:12px;--tile-max:45px}
.hand .tile{width:min(var(--tile-max),calc((100% - 13 * var(--tile-gap) - var(--draw-gap)) / 14));height:auto;aspect-ratio:45/62;min-width:0;max-width:none}
.intro p{color:#788371}.hand-top #turn-description,.action-bar #action-message{color:#7d8874}.tag{color:#718064}.player-info small{color:#738268}.tip-card p{color:#827789}
@media(min-width:1450px){.hand{--tile-max:50px}}
@media(max-width:1250px){.hand{--tile-gap:4px;--tile-max:39px}}
@media(max-width:1020px){.hand{--tile-gap:6px;--tile-max:44px}}
@media(max-width:620px){.hand{--tile-gap:3px;--draw-gap:5px;--tile-max:36px}}
/* The Meadow Collection: original characters and illustrated ceramic tiles. */
.brand-icon{background:none;border-radius:0;width:55px;height:64px;overflow:visible}
.character{display:block;width:100%;height:100%;object-fit:contain;object-position:center;user-select:none;filter:drop-shadow(0 3px 2px #6b775717)}
.board{height:424px;background:radial-gradient(ellipse at 50% 45%,#edf1e1 0,#e0e9d0 75%,#d7e2c7 100%)}
.board-inset{inset:14px;border:2px dashed #bdcdae55;border-radius:65px}
.avatar,.avatar.a1,.avatar.a2,.avatar.a3,.seat-you .avatar{width:94px;height:112px;background:transparent;border:0;border-radius:0;box-shadow:none;position:relative}
.avatar::before{content:'';position:absolute;bottom:2px;left:18%;width:64%;height:10px;background:#a8b78830;border-radius:50%}
.avatar .character{position:relative;z-index:1}
.avatar .seat-wind{z-index:2;right:2px;bottom:2px;width:23px;height:23px;border:1px solid #d3ddc1;background:#fffdf0;color:#71815c;box-shadow:0 2px 4px #6f815415}
.player{gap:8px}.player-info{color:#59674b;font-size:12px}.player-info small{margin-top:3px}
.seat .active .avatar{box-shadow:none}.seat .active .avatar::before{background:#a8bd8770;outline:1px dashed #91a974;outline-offset:3px}
.seat .active .character{animation:alpaca-sway 2.8s ease-in-out infinite;transform-origin:center bottom}
.seat-north{top:5px}.seat-north .avatar{width:76px;height:88px}.seat-north .player-info{padding-right:32px}
.seat-east,.seat-west{top:136px;width:112px}.seat-east{right:18px}.seat-west{left:18px}
.seat-east .player,.seat-west .player{gap:2px}
.seat-you{bottom:4px;gap:9px}.seat-you .avatar{width:62px;height:72px;margin-right:1px}.seat-you>span{font-size:12px}
.tilebacks{margin-top:5px;gap:2px}.tileback{display:inline-block;width:15px;height:24px;background:linear-gradient(135deg,#c1b2cf,#afa0bf);border:1px solid #9b8eab;box-shadow:0 2px 0 #8a7d97,inset 0 0 0 1px #e4dbea;border-radius:3px;overflow:hidden}
.tileback::after{display:none!important}.tileback svg{display:block;width:100%;height:100%}
.seat-east .tilebacks,.seat-west .tilebacks{max-width:89px;gap:2px}.seat-east .tileback,.seat-west .tileback{width:10px;height:17px}
.pond{inset:125px 142px 98px;gap:12px}.table-center{top:49%;width:105px;height:105px;border:1px dashed #b8c5a2;color:#a3af91}.board-note{top:65%;color:#909d7c}
.own-melds{bottom:83px}.flower-badge{color:#a58b9d}
.tile{padding:2px;background:linear-gradient(125deg,#fffef8 10%,#faf2df 100%);border:1px solid #dacbac;border-bottom:4px solid #b3ba98;border-radius:7px;box-shadow:0 3px 0 #8e9c78,0 5px 7px #61744725}
.tile.suit-0{border-bottom-color:#c4b3d0;box-shadow:0 3px 0 #a68eb4,0 5px 7px #7c668520}
.tile.suit-2{border-bottom-color:#d5b9aa;box-shadow:0 3px 0 #b79786,0 5px 7px #8c705d20}
.tile.suit-3{border-bottom-color:#b4bdcf;box-shadow:0 3px 0 #909eb4,0 5px 7px #6f7e8d20}
.tile svg{position:relative;z-index:1}.tile-corner{top:4px;left:4px;color:#8d7e65;font-size:6px;z-index:2;background:#fffdf1dd;border-radius:2px;padding:1px}
.hand .tile.selected{border-color:#aa8ebc;box-shadow:0 5px 0 #ad95bb,0 7px 13px #8c77992a;background:#fff9fd}
.hand{min-height:90px;--tile-max:48px}.hand .tile{aspect-ratio:40/60;max-height:78px}
.tile.tiny{padding:1px;border-bottom-width:2px;box-shadow:0 2px 0 #b6ba9c}.tile.micro{padding:0;border-bottom-width:1px;box-shadow:0 1px 0 #b5b99c}.tile.meld{padding:1px;border-bottom-width:2px}
.meadow-card{background:linear-gradient(#f3eef5 0%,#f4f0e9 65%,#e1e8ce 100%);height:350px;isolation:isolate}
.meadow-card::after{display:none}.meadow-caption{z-index:3;top:23px;left:23px}.meadow-caption h2{color:#776780}.meadow-caption p{color:#94869a}
.herd-scene{position:absolute;inset:0}.herd-scene img{position:absolute;object-fit:contain;object-position:center;width:auto;height:auto;display:block;filter:drop-shadow(0 5px 2px #6b77571a)}
.herd-scene .herd-mochi{width:44%;height:158px;left:0;bottom:38px;z-index:2;transform:rotate(-9deg)}
.herd-scene .herd-biscuit{width:43%;height:178px;left:29%;bottom:46px;z-index:1}
.herd-scene .herd-clover{width:43%;height:145px;right:-1%;bottom:23px;z-index:3;transform:rotate(6deg)}
.meadow-hill{position:absolute;bottom:-38px;left:-20%;width:140%;height:140px;border-radius:50% 50% 0 0;background:#d3dfb9;transform:rotate(-8deg)}
.scene-flower{position:absolute;z-index:4;color:#fffef3;text-shadow:0 1px 1px #a1ae7d;font-size:21px}.sf1{bottom:25px;left:18%}.sf2{bottom:46px;right:8%;font-size:16px}.sf3{bottom:61px;left:52%;font-size:15px}
.image-label{color:#7e8b68;bottom:14px;text-shadow:none;font-size:10px}
.mini-avatars{height:48px}.mini-avatars>img{height:43px;width:32px;object-fit:contain;margin-left:-5px}.mini-avatars>img:first-child{margin-left:0}.mini-avatars small{font-size:8px}
.modal-art{display:flex;justify-content:center;height:120px}.modal-art .character{width:115px}
.tile-collection h3{color:#7f6d87;font:17px var(--serif)!important}.tile-collection>div{display:flex;gap:7px;padding:7px 0 10px}.tile-collection .tile{width:46px;height:68px;flex-shrink:1}.tile-collection .tile-corner{font-size:7px}
.collection-back{display:flex;gap:15px;align-items:center;border-top:1px solid #e8e1eb;padding-top:20px;margin-top:14px}.collection-back .tileback{width:43px;height:65px;flex-shrink:0;border-radius:7px}.collection-back p{max-width:260px}
@keyframes alpaca-sway{0%,100%{transform:rotate(-2deg) translateY(0)}50%{transform:rotate(2deg) translateY(-3px)}}
@media(min-width:1450px){.board{height:450px}.seat-east,.seat-west{top:145px}.avatar{width:106px;height:126px}.pond{inset:135px 158px 105px}.meadow-card{height:390px}.herd-scene .herd-mochi{height:180px}.herd-scene .herd-biscuit{height:198px}.herd-scene .herd-clover{height:165px}.hand{--tile-max:52px;min-height:95px}}
@media(max-width:1250px){.seat-east{right:6px}.seat-west{left:6px}.pond{left:122px;right:122px}.hand{--tile-max:43px}.meadow-caption{left:18px}}
@media(max-width:1020px){.board{height:414px}.hand{--tile-max:46px}.meadow-card{height:260px}.meadow-caption{background:none;top:8px;left:8px;padding:12px}.herd-scene .herd-mochi{height:132px;left:34%;width:30%;bottom:25px}.herd-scene .herd-biscuit{height:148px;left:55%;width:31%;bottom:39px}.herd-scene .herd-clover{height:113px;right:-2%;width:30%;bottom:15px}.meadow-hill{height:120px}.scene-flower.sf3{display:none}.tilebacks{gap:2px}}
@media(max-width:620px){.brand-icon{width:40px;height:52px}.board{height:390px}.avatar,.seat-east .avatar,.seat-west .avatar{width:69px;height:84px}.seat-east,.seat-west{top:136px;width:75px}.seat-east{right:0}.seat-west{left:0}.seat-north{top:4px}.seat-north .avatar{width:64px;height:75px}.seat-north .player-info{padding-right:8px;font-size:10px}.avatar .seat-wind{width:18px;height:18px;font-size:9px;right:0;bottom:3px}.seat-east .player-info,.seat-west .player-info{font-size:10px}.seat-you{bottom:1px;gap:6px}.seat-you .avatar{width:53px;height:62px}.seat-you>span{font-size:11px}.seat-you small{font-size:8px}.tileback{width:12px;height:20px}.seat-east .tilebacks,.seat-west .tilebacks{max-width:62px}.seat-east .tileback,.seat-west .tileback{width:7px;height:13px}.pond{inset:114px 78px 87px;gap:6px}.discard-zone{max-height:87px}.table-center{width:75px;height:75px;top:51%}.board-note{font-size:10px;width:138px;top:65%}.own-melds{bottom:67px}.hand{--tile-max:36px;min-height:63px}.hand .tile{border-radius:4px;border-bottom-width:2px}.tile-corner{font-size:5px;padding:0;top:3px;left:3px}.hand-tools{gap:7px}.hand-tools .mini-btn{font-size:10px}.hand-tools .mini-btn span{font-size:8px;margin-left:2px}.meadow-card{height:245px}.meadow-caption{top:2px;left:2px;padding:12px}.meadow-caption h2{font-size:22px}.meadow-caption p{font-size:8px;max-width:none}.herd-scene .herd-mochi{width:43%;height:102px;left:0;bottom:26px}.herd-scene .herd-biscuit{width:43%;height:114px;left:29%;bottom:35px}.herd-scene .herd-clover{width:43%;height:94px;right:-2%;bottom:15px}.scene-flower{font-size:14px}.sf1{bottom:13px}.sf2{bottom:23px}.meadow-hill{height:97px}.tile-collection>div{gap:4px}.tile-collection .tile{width:30px;height:47px;min-width:0;max-width:none;border-bottom-width:2px}.tile-collection .tile-corner{font-size:5px}.collection-back .tileback{width:38px;height:57px}.tile.tiny .tile-corner{font-size:4px}}
/* Cantonese calls and character animation. */
.voice-toggle{display:flex;align-items:center;gap:6px;width:auto;font-size:23px;color:#8e789b}.voice-toggle small{font:9px var(--sans);letter-spacing:.5px;white-space:nowrap}.voice-toggle .sound-dot{right:-7px;top:3px}
.alpaca-puppet{position:relative;display:block;width:100%;height:100%;transform-origin:50% 92%;animation:alpaca-breathe 4s ease-in-out infinite}
.alpaca-puppet .character{position:absolute;inset:0;width:100%!important;height:100%;animation:none!important;transform:none;transition:none}
.character-cheer{opacity:0}.character-idle{opacity:1}.avatar[data-player="1"] .alpaca-puppet{animation-delay:-.7s}.avatar[data-player="2"] .alpaca-puppet{animation-delay:-2s}.avatar[data-player="3"] .alpaca-puppet{animation-delay:-1.2s}
.seat .active .character{animation:none}.seat .active .alpaca-puppet{animation:alpaca-thinking 2.8s ease-in-out infinite}
.modal-art .alpaca-puppet{width:115px;height:120px}.avatar[data-player]{isolation:isolate}.avatar.reaction-pung,.avatar.reaction-kong,.avatar.reaction-win{z-index:8}
.avatar.reaction-pung .alpaca-puppet{animation:alpaca-pung 1.8s both}.avatar.reaction-kong .alpaca-puppet{animation:alpaca-kong 2.1s both}.avatar.reaction-win .alpaca-puppet{animation:alpaca-win 2.8s both}
.avatar.reaction-notice .alpaca-puppet{animation:alpaca-notice 1.8s both}.avatar.reaction-friend .alpaca-puppet{animation:alpaca-friend 2.8s both}
.avatar[class*="reaction-"] .alpaca-puppet{animation-delay:var(--reaction-delay,0ms)}
.avatar.reaction-pung .character-idle,.avatar.reaction-kong .character-idle,.avatar.reaction-win .character-idle,.result-celebration .character-idle{opacity:0}
.avatar.reaction-pung .character-cheer,.avatar.reaction-kong .character-cheer,.avatar.reaction-win .character-cheer,.result-celebration .character-cheer{opacity:1}
.call-bubble{position:absolute;z-index:10;left:50%;bottom:100%;transform:translate(-50%,0);background:#fffdf4;border:1px solid #d4bddf;box-shadow:0 5px 12px #6b5b7e20;border-radius:14px 14px 14px 4px;min-width:74px;padding:9px 12px;text-align:center;white-space:nowrap;pointer-events:none;animation:call-appear .28s both;animation-delay:var(--reaction-delay,0ms)}
.call-bubble b{font:23px/1.1 var(--serif);color:#8e6ba3;display:block}.call-bubble small{font:8px var(--sans);color:#a08aab;letter-spacing:.6px;display:block;margin-top:5px}
.seat-north .call-bubble{bottom:20%;left:100%;transform:translate(12px,0)}
.reaction-win .call-bubble{border-color:#d6bc71;background:#fff9e6}.reaction-win .call-bubble b{color:#a58b43}.reaction-win .call-bubble small{color:#aa9866}
.reaction-spark{position:absolute;left:50%;top:45%;z-index:9;color:#c4a4d3;font-style:normal;font-size:15px;pointer-events:none;--angle:calc(var(--spark-i) * 73deg);animation:spark-burst 1.5s ease-out both;animation-delay:calc(var(--reaction-delay,0ms) + var(--spark-i) * 70ms)}
.reaction-win .reaction-spark{color:#c7ac61;font-size:20px}.reaction-spark:nth-of-type(2n){color:#9bb67e}
.result-celebration .alpaca-puppet{animation:alpaca-result-dance 2.2s ease-in-out infinite}
.voice-stage{height:230px;display:grid;place-items:end center;margin:2px auto 16px;background:radial-gradient(ellipse at 50% 92%,#dde7cf 0%,#f2f4e8 50%,transparent 70%);border-radius:50%;position:relative}
.voice-stage .avatar{width:150px;height:175px;margin-bottom:10px}.voice-stage .call-bubble{bottom:95%}.voice-stage .call-bubble b{font-size:27px}
.voice-cast{display:flex;justify-content:center;gap:7px;margin-bottom:22px;flex-wrap:wrap}.voice-cast button{padding:7px 12px;border:1px solid #e2e0d4;border-radius:20px;font-size:10px}.voice-cast button.chosen{background:#e9e1ed;border-color:#c7b1d0;color:#82658e}
.voice-calls{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.voice-calls button{border:1px solid #ded3e3;background:#faf7fc;border-radius:12px;padding:15px 6px;box-shadow:0 3px 0 #ded2e6}.voice-calls button:hover{background:#eee5f3}.voice-calls b{display:block;font:26px var(--serif);color:#92729e}.voice-calls span{display:block;font-size:10px;color:#8e7c96;margin-top:8px}.voice-calls small{display:block;font-size:8px;color:#a797ac;margin-top:8px}
#voice-status{text-align:center;min-height:22px;font-size:11px!important;color:#92809b!important}.voice-credit{font-size:9px!important;text-align:center;color:#9da28f!important}.voice-credit a{color:#8b9c7a;text-decoration:none}
@keyframes alpaca-breathe{0%,100%{transform:translateY(0) rotate(-.6deg) scale(1)}45%{transform:translateY(-2px) rotate(.7deg) scale(1.015,1.025)}}
@keyframes alpaca-thinking{0%,100%{transform:rotate(-2deg)}50%{transform:rotate(2deg) translateY(-3px)}}
@keyframes alpaca-pung{0%{transform:scale(1)}10%{transform:translateY(3px) scale(1.08,.92)}26%{transform:translateY(-19px) rotate(-7deg) scale(.98,1.05)}45%{transform:translateY(0) rotate(4deg) scale(1.07,.94)}65%{transform:translateY(-6px) rotate(-3deg)}85%,100%{transform:translateY(0) rotate(0)}}
@keyframes alpaca-kong{0%{transform:scale(1)}9%{transform:translateY(4px) scale(1.12,.88)}23%{transform:translateY(-28px) rotate(9deg) scale(.97,1.08)}40%{transform:translateY(0) rotate(-7deg) scale(1.1,.9)}58%{transform:translateY(-20px) rotate(-9deg)}75%{transform:translateY(0) rotate(5deg) scale(1.06,.95)}100%{transform:none}}
@keyframes alpaca-win{0%{transform:scale(1)}12%{transform:translateY(-20px) rotate(-12deg) scale(1.08)}25%{transform:translateY(0) rotate(10deg)}40%{transform:translateY(-28px) rotate(-10deg) scale(1.1)}55%{transform:translateY(0) rotate(12deg)}70%{transform:translateY(-19px) rotate(-8deg)}85%{transform:translateY(0) rotate(5deg)}100%{transform:none}}
@keyframes alpaca-notice{0%,100%{transform:rotate(0)}22%,65%{transform:rotate(7deg) translateY(-2px)}}
@keyframes alpaca-friend{0%,100%{transform:none}22%,65%{transform:translateY(-7px) rotate(-5deg)}44%,85%{transform:rotate(5deg)}}
@keyframes alpaca-result-dance{0%,100%{transform:rotate(-7deg) translateY(0)}50%{transform:rotate(7deg) translateY(-8px)}}
@keyframes call-appear{from{opacity:0;scale:.65}to{opacity:1;scale:1}}
@keyframes spark-burst{0%{opacity:0;transform:rotate(var(--angle)) translateX(14px) scale(.4)}20%{opacity:1}100%{opacity:0;transform:rotate(var(--angle)) translateX(83px) rotate(90deg) scale(1.1)}}
@media(max-width:620px){.voice-toggle small{display:none}.voice-toggle{font-size:21px;width:24px}.call-bubble{min-width:55px;padding:7px 9px;border-radius:11px 11px 11px 3px}.call-bubble b{font-size:19px}.call-bubble small{font-size:7px}.seat-north .call-bubble{left:95%;bottom:23%}.voice-stage{height:190px}.voice-stage .avatar{width:124px;height:145px}.voice-cast button{font-size:9px;padding:7px 10px}.voice-calls{gap:6px}.voice-calls button{padding:13px 5px}.voice-calls b{font-size:23px}.voice-calls span{font-size:9px}.voice-calls small{font-size:7px}.table-footer{gap:7px}.table-footer>span{max-width:126px;line-height:1.5}.table-footer button{white-space:nowrap}}
@media(prefers-reduced-motion:reduce){.alpaca-puppet,.avatar[class*="reaction-"] .alpaca-puppet,.result-celebration .alpaca-puppet{animation:none!important;transform:none!important}.reaction-spark{display:none}.call-bubble{animation:none!important}.alpaca-puppet .character{transition:none}}
@media(max-width:620px){.voice-calls b{font-size:clamp(14px,4.5vw,20px);white-space:nowrap}.voice-calls button{padding-inline:4px}}
/* A quiet soundtrack, with its own volume independent of the herd's voices. */
.music-bar{display:flex;align-items:center;gap:10px;margin:0 14px 13px;padding:11px 14px;border:1px solid #e9e2ed;border-radius:11px;background:linear-gradient(105deg,#f7f1f9,#faf9f0)}
.music-toggle{min-width:158px;min-height:46px;flex:none;padding:10px 12px;border:1.5px solid #9175a0;border-radius:10px;display:flex;align-items:center;justify-content:center;gap:8px;background:#fffcff;color:#61476f;font-size:13px;font-weight:700;box-shadow:0 3px 0 #cdbbd6;cursor:pointer}.music-toggle:hover{background:#f0e7f5}.music-toggle[aria-pressed="true"]{background:#70547e;color:#fff;border-color:#70547e;box-shadow:0 3px 0 #523c5e}.music-toggle[aria-pressed="true"]:hover{background:#61446f}.music-toggle:focus-visible{outline:3px solid #ad91bd;outline-offset:4px}.music-toggle span{line-height:1;white-space:nowrap}.music-switch{width:29px;height:17px;flex:none;padding:3px;background:#d8cbdc;border-radius:20px}.music-switch i{display:block;width:11px;height:11px;border-radius:50%;background:#72537f;transition:transform .15s}.music-toggle[aria-pressed="true"] .music-switch{background:#d9c8e1}.music-toggle[aria-pressed="true"] .music-switch i{transform:translateX(12px);background:#fff}.music-name{display:flex;flex-direction:column;gap:4px;min-width:0}.music-name strong{font:15px var(--serif);color:#776084}.music-name>span{font-size:10px;color:#74657b}.music-volume{margin-left:auto;display:flex;align-items:center;gap:7px;color:#947e9e;font-size:16px}.music-volume input{width:70px;height:18px;accent-color:#a48ab3;cursor:pointer}.music-volume output{min-width:26px;font-size:8px;color:#9a8ba2}.music-volume input:focus-visible{outline:2px solid #aa91bb;outline-offset:3px;border-radius:10px}.music-meter{display:flex;gap:3px;align-items:center;height:20px;margin-left:3px;color:#b09bbd}.music-meter i{display:block;width:3px;height:5px;border-radius:3px;background:currentColor}.music-bar.playing .music-meter i{animation:meadow-meter 1.2s ease-in-out infinite alternate}.music-meter i:nth-child(2){animation-delay:-.4s!important}.music-meter i:nth-child(3){animation-delay:-.8s!important}.music-meter i:nth-child(4){animation-delay:-.2s!important}.music-bar[data-ducked="true"] .music-meter{opacity:.4}
@keyframes meadow-meter{0%{height:4px}100%{height:17px}}
@media(max-width:620px){.music-bar{margin:0 7px 10px;padding:10px;gap:9px;flex-wrap:wrap}.music-toggle{min-width:148px;min-height:46px;font-size:12px}.music-name{flex:1;min-width:115px}.music-name strong{font-size:14px}.music-name>span{font-size:10px;line-height:1.4}.music-volume{gap:6px;margin-left:auto}.music-volume input{width:70px}.music-volume output{font-size:10px}.music-meter{margin-left:4px;gap:2px}}
@media(prefers-reduced-motion:reduce){.music-bar.playing .music-meter i{animation:none}.music-bar.playing .music-meter i:nth-child(2n){height:12px}}
.difficulty-tag{font-weight:600;border-color:#c5d0b8;background:#f0f4e8;color:#526b44;min-height:32px}
.difficulty-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0}
.difficulty-option{padding:17px 14px;border:2px solid #e0e3d5;border-radius:12px;background:#f8f8f0;text-align:left;min-height:132px}
.difficulty-option>span{display:block;font:21px var(--serif);margin-bottom:9px;color:#586e4b}
.difficulty-option small{display:block;font-size:11px;line-height:1.65;color:#78846f}
.difficulty-option[aria-pressed="true"]{border-color:#799564;background:#eaf1df;box-shadow:0 3px 0 #ccd9bf}
.difficulty-option[aria-pressed="true"]>span:after{content:'✓';float:right;font:16px var(--sans);color:#63824e}
.difficulty-option:hover{background:#f0f4e7}
.difficulty-note{padding:10px 14px;background:#f1eef5;border-radius:9px}
@media(max-width:620px){.difficulty-tag{border:1px solid #c5d0b8;background:#f0f4e8;min-height:30px;padding:5px 9px}.difficulty-options{grid-template-columns:1fr;gap:8px}.difficulty-option{min-height:0;padding:12px 14px}.difficulty-option>span{font-size:19px;margin-bottom:4px}.difficulty-option small{font-size:11px;line-height:1.5}.mode-options{margin:14px 0}}

/* The whole painted gathering stays visible at every screen size. */
.meadow-card.mahjong-scene-card{height:auto;display:flex;flex-direction:column;background:#f8f5ed}
.mahjong-scene-card .mahjong-table-art{position:static;display:block;width:100%;height:auto;object-fit:contain;object-position:center}
.mahjong-scene-card .meadow-caption{position:static;padding:22px 23px 24px;background:none}
.mahjong-scene-card .meadow-caption .eyebrow{font-size:8px;letter-spacing:1.3px}
.mahjong-scene-card .meadow-caption h2{font-size:27px;margin:11px 0 9px}
.mahjong-scene-card .meadow-caption p{font-size:10px;line-height:1.6;max-width:none}
@media(max-width:1020px){.meadow-card.mahjong-scene-card{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:center}.mahjong-scene-card .meadow-caption{padding:22px}}
@media(max-width:620px){.meadow-card.mahjong-scene-card{display:block}.mahjong-scene-card .meadow-caption{padding:20px 23px}.mahjong-scene-card .meadow-caption h2{font-size:26px}}
