.mahjong-page{--mj-ink:#11181d;--mj-panel:#182229;--mj-panel-raised:#202e36;--mj-hairline:rgb(234 225 204/12%);--mj-muted:#aaa99f;--mj-white:#f2f0e9;--mj-gold:#b7d6dc;--mj-gold-soft:rgb(211 183 120/13%);--mj-red:#c96d62;min-height:calc(100 * var(--mahjong-dvh, 1dvh));overflow-x:clip;color:var(--mj-white);background:radial-gradient(ellipse at 48% -12%,rgb(84 78 61/20%),transparent 43rem),radial-gradient(ellipse at 96% 88%,rgb(105 66 49/7%),transparent 38rem),var(--mj-ink);font-family:var(--font-body),sans-serif}.mahjong-page *{box-sizing:border-box}.mahjong-page button,.mahjong-page input{font:inherit}.mahjong-page a:focus-visible,.mahjong-page button:focus-visible,.mahjong-page input:focus-visible{outline:2px solid var(--mj-gold);outline-offset:3px}.mahjong-shell{width:min(100%,1160px);min-height:calc(100 * var(--mahjong-dvh, 1dvh));margin:0 auto;padding:0 34px 22px;display:flex;flex-direction:column}.mahjong-header{display:flex;align-items:center;justify-content:space-between;min-height:66px;border-bottom:1px solid var(--mj-hairline)}.mahjong-brand{display:inline-flex;align-items:center;gap:10px;color:var(--mj-white);text-decoration:none;font-size:13px;letter-spacing:.045em}.mahjong-brand i{margin:0 5px;color:var(--mj-muted);font-style:normal}.mahjong-brand__mark{display:grid;width:32px;height:32px;place-items:center;border:1px solid rgb(211 183 120/30%);border-radius:50%;color:var(--mj-gold)}.mahjong-link-state{display:inline-flex;align-items:center;gap:7px;color:var(--mj-muted);font-size:11px;letter-spacing:.04em}.mahjong-link-state.is-connected{color:#a9c19a}.mahjong-link-state.is-reconnecting{color:#d3a687}.mahjong-notice{display:flex;align-items:center;gap:10px;max-width:760px;margin:18px auto 0;border:1px solid rgb(201 109 98/26%);border-radius:10px;padding:11px 13px;color:#ecc1b8;background:rgb(108 49 42/13%);font-size:13px}.mahjong-notice span{flex:1 1}.mahjong-notice button{display:grid;width:30px;height:30px;place-items:center;border:0;color:inherit;background:transparent;cursor:pointer}.mahjong-kicker{margin:0;color:var(--mj-gold);font-size:9px;font-weight:600;letter-spacing:.22em}.mahjong-loading{display:flex;min-height:calc(78 * var(--mahjong-dvh, 1dvh));align-items:center;justify-content:center;gap:12px;color:var(--mj-muted);font-size:13px}.mahjong-spin{animation:mahjong-spin 1.4s linear infinite}.mahjong-lobby{position:relative;display:grid;flex:1 1;grid-template-columns:minmax(0,1.2fr) minmax(350px,.8fr);align-items:center;gap:clamp(46px,calc(8 * var(--mahjong-vw, 1vw)),112px);padding:64px 4.5% 74px}.mahjong-lobby__copy{max-width:510px}.mahjong-lobby__copy>.mahjong-kicker{display:flex;align-items:center;gap:9px}.mahjong-lobby__copy>.mahjong-kicker span{width:6px;height:6px;border-radius:50%;background:var(--mj-gold);box-shadow:0 0 15px rgb(211 183 120/50%)}.mahjong-lobby__copy h1{margin:27px 0 18px;font-family:var(--font-display),serif;font-size:clamp(58px,calc(7.5 * var(--mahjong-vw, 1vw)),96px);font-weight:400;letter-spacing:-.08em;line-height:1.03}.mahjong-lobby__copy h1 em{color:var(--mj-gold);font-style:normal}.mahjong-lobby__copy>p:not(.mahjong-kicker){max-width:380px;margin:0;color:#b5b4ac;font-size:14px;line-height:1.9}.mahjong-lobby__facts{display:flex;flex-wrap:wrap;gap:20px;margin-top:34px}.mahjong-lobby__facts span{display:inline-flex;align-items:center;gap:7px;color:#c7c4b9;font-size:11px}.mahjong-lobby__facts svg{color:var(--mj-gold)}.mahjong-lobby__panel{position:relative;width:100%;max-width:410px;justify-self:end;border:1px solid var(--mj-hairline);border-radius:15px;padding:29px;background:linear-gradient(145deg,rgb(36 38 37/90%),rgb(23 25 25/95%));box-shadow:0 30px 85px rgb(0 0 0/22%)}.mahjong-panel-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px}.mahjong-panel-heading h2{margin:8px 0 0;font-family:var(--font-display),serif;font-size:22px;font-weight:400;letter-spacing:-.025em}.mahjong-panel-heading__icon{display:grid;width:43px;height:43px;place-items:center;border:1px solid rgb(211 183 120/24%);border-radius:50%;color:var(--mj-gold);background:rgb(211 183 120/6%)}.mahjong-mode-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;border:0;padding:0}.mahjong-code-label,.mahjong-mode-picker legend{margin-bottom:10px;color:#c5c2b8;font-size:11px}.mahjong-mode-picker button{min-height:71px;display:flex;align-items:flex-start;justify-content:center;flex-direction:column;gap:5px;border:1px solid var(--mj-hairline);border-radius:9px;padding:11px 14px;color:var(--mj-white);text-align:left;background:rgb(9 10 10/12%);cursor:pointer;transition:border-color .18s,background .18s,transform .18s}.mahjong-mode-picker button:hover{transform:translateY(-1px);border-color:rgb(211 183 120/42%)}.mahjong-mode-picker button.is-selected{border-color:rgb(211 183 120/66%);background:var(--mj-gold-soft)}.mahjong-mode-picker button strong{font-size:13px;font-weight:600;letter-spacing:.04em}.mahjong-mode-picker button small{color:var(--mj-muted);font-size:10px}.mahjong-button{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid transparent;border-radius:8px;padding:0 15px;color:var(--mj-white);font-size:12px;font-weight:600;cursor:pointer;transition:transform .18s,border-color .18s,background .18s,opacity .18s}.mahjong-button:hover:not(:disabled){transform:translateY(-1px)}.mahjong-button:disabled,.mahjong-icon-button:disabled{opacity:.46;cursor:not-allowed}.mahjong-button--gold{color:#241f14;background:var(--mj-gold)}.mahjong-button--gold:hover:not(:disabled){background:#e0c98f}.mahjong-button--quiet{border-color:var(--mj-hairline);color:#d2d0c7;background:transparent}.mahjong-button--quiet:hover:not(:disabled){border-color:rgb(234 225 204/30%);background:rgb(255 255 255/3%)}.mahjong-button--danger{color:#fff0ed;background:#843f39}.mahjong-create{width:100%;margin-top:17px}.mahjong-create svg:last-child{margin-left:auto}.mahjong-divider{display:flex;align-items:center;gap:12px;margin:21px 0 19px;color:#85857c;font-size:10px;white-space:nowrap}.mahjong-divider:after,.mahjong-divider:before{height:1px;flex:1 1;background:var(--mj-hairline);content:""}.mahjong-code-label{display:block}.mahjong-join-form{display:grid;grid-template-columns:1fr 44px;gap:8px}.mahjong-join-form input{min-width:0;height:44px;border:1px solid var(--mj-hairline);border-radius:8px;padding:0 12px;color:var(--mj-white);background:#131515;font-size:14px;letter-spacing:.17em;text-transform:uppercase}.mahjong-join-form input::placeholder{color:#66675f;font-size:11px;letter-spacing:.07em;text-transform:none}.mahjong-join-form button{display:grid;place-items:center;border:1px solid rgb(211 183 120/28%);border-radius:8px;color:var(--mj-gold);background:var(--mj-gold-soft);cursor:pointer}.mahjong-join-form button:disabled{opacity:.38;cursor:not-allowed}.mahjong-panel-note{margin:14px 0 0;color:#85867f;font-size:10px;line-height:1.65}.mahjong-service-note{position:absolute;right:5%;bottom:26px;display:flex;align-items:center;gap:7px;color:#b7b39e;font-size:11px}.mahjong-waiting{flex:1 1;padding:46px clamp(0px,calc(2.8 * var(--mahjong-vw, 1vw)),32px) 20px}.mahjong-room-header{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:30px}.mahjong-room-header h1{margin:11px 0 7px;font-family:var(--font-display),serif;font-size:clamp(34px,calc(4 * var(--mahjong-vw, 1vw)),47px);font-weight:400;letter-spacing:-.05em}.mahjong-room-header p:not(.mahjong-kicker){margin:0;color:var(--mj-muted);font-size:12px;line-height:1.7}.mahjong-room-code{display:grid;grid-template-columns:auto auto;align-items:center;gap:2px 9px;border:1px solid rgb(211 183 120/20%);border-radius:9px;padding:9px 12px 9px 14px;background:rgb(211 183 120/5%)}.mahjong-room-code>span{grid-column:1/-1;color:var(--mj-muted);font-size:9px;letter-spacing:.12em}.mahjong-room-code strong{color:var(--mj-gold);font-family:var(--font-display),serif;font-size:21px;font-weight:500;letter-spacing:.2em}.mahjong-room-code button{display:grid;width:29px;height:29px;place-items:center;border:1px solid var(--mj-hairline);border-radius:6px;color:#d9d1bc;background:transparent;cursor:pointer}.mahjong-seat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.mahjong-seat-card{position:relative;min-height:120px;display:grid;grid-template-columns:37px minmax(0,1fr);grid-template-rows:1fr auto;align-items:center;gap:0 11px;border:1px solid var(--mj-hairline);border-radius:11px;padding:19px 16px 15px;background:linear-gradient(150deg,#202222,#191b1b);transition:border-color .18s,transform .18s}.mahjong-seat-card.is-occupied{border-color:rgb(211 183 120/23%)}.mahjong-seat-card.is-self{box-shadow:inset 0 0 0 1px rgb(211 183 120/5%)}.mahjong-seat-card__wind{position:absolute;top:11px;right:12px;color:#86877e;font-size:9px;letter-spacing:.08em}.mahjong-seat-card__avatar{grid-row:1;display:grid;width:36px;height:36px;place-items:center;border:1px solid rgb(211 183 120/22%);border-radius:50%;color:var(--mj-gold);background:rgb(211 183 120/8%);font-family:var(--font-display),serif;font-size:16px}.mahjong-seat-card:not(.is-occupied) .mahjong-seat-card__avatar{border-style:dashed;color:#87877f;background:transparent}.mahjong-seat-card__identity{min-width:0;display:grid;gap:5px}.mahjong-seat-card__identity strong{overflow:hidden;display:flex;align-items:center;gap:6px;font-size:12px;font-weight:550;text-overflow:ellipsis;white-space:nowrap}.mahjong-seat-card__identity strong small{border-radius:3px;padding:2px 4px;color:#222018;background:var(--mj-gold);font-size:8px}.mahjong-seat-card__identity>span{color:var(--mj-muted);font-size:10px}.mahjong-seat-card__ready{grid-column:2;display:inline-flex;align-items:center;gap:4px;margin-top:12px;color:#99998f;font-size:10px}.mahjong-seat-card__ready.is-ready{color:#b4c8a0}.mahjong-seat-card__riichi{color:var(--mj-gold);font-size:10px}.mahjong-waiting__bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:25px;border-top:1px solid var(--mj-hairline);padding-top:21px}.mahjong-ready-count{display:flex;align-items:center;gap:12px}.mahjong-ready-count__ring{width:43px;height:43px;display:grid;place-items:center;border:1px solid rgb(211 183 120/30%);border-radius:50%;color:var(--mj-gold);font-size:10px}.mahjong-ready-count__ring span{margin-right:-4px;font-size:17px}.mahjong-ready-count__ring{display:flex;justify-content:center}.mahjong-ready-count>div{display:grid;gap:5px}.mahjong-ready-count strong{font-size:12px;font-weight:550}.mahjong-ready-count small{color:var(--mj-muted);font-size:10px}.mahjong-waiting__actions{display:flex;align-items:center;gap:9px}.mahjong-button--start{color:#251f13;background:var(--mj-gold)}.mahjong-icon-button{display:grid;width:40px;height:40px;flex:none;place-items:center;border:1px solid var(--mj-hairline);border-radius:8px;color:#bdbcb3;background:transparent;cursor:pointer}.mahjong-icon-button:hover:not(:disabled){color:var(--mj-white);border-color:rgb(234 225 204/30%)}.mahjong-host-note{display:inline-flex;align-items:center;gap:6px;padding:0 9px;color:var(--mj-muted);font-size:11px}.mahjong-host-note svg{color:var(--mj-gold)}.mahjong-seat-reserved{justify-self:end;color:#898b82;font-size:9px}.mahjong-seat-footnote{display:flex;align-items:center;gap:8px;margin:24px 0;color:#92938a;font-size:10px}.mahjong-seat-footnote svg{color:var(--mj-gold)}.mahjong-game{flex:1 1;padding:17px 0 20px}.mahjong-game__topline{display:grid;grid-template-columns:1fr auto 40px;align-items:center;gap:18px;min-height:55px}.mahjong-game__round{display:flex;align-items:center;gap:11px}.mahjong-game__round-seal{display:grid;width:36px;height:36px;place-items:center;border:1px solid rgb(211 183 120/42%);border-radius:50%;color:var(--mj-gold);font-family:var(--font-display),serif;font-size:18px}.mahjong-game__round>div{display:grid;gap:4px}.mahjong-game__round strong{font-family:var(--font-display),serif;font-size:14px;font-weight:500;letter-spacing:.035em}.mahjong-game__round span:not(.mahjong-game__round-seal){color:var(--mj-muted);font-size:9px}.mahjong-game__round i{padding:0 4px;color:#74746d;font-style:normal}.mahjong-game__tempo{display:flex;align-items:center;gap:17px;color:#e1dccb;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.mahjong-game__tempo>span:not(.mahjong-game__phase,.mahjong-game__tempo-divider){display:flex;align-items:baseline;gap:5px;font-family:var(--font-display),serif;font-size:16px}.mahjong-game__tempo small{color:var(--mj-muted);font-family:var(--font-body),sans-serif;font-size:9px}.mahjong-game__tempo-divider{width:1px;height:19px;background:var(--mj-hairline)}.mahjong-game__phase{display:inline-flex;align-items:center;gap:6px;color:#bdb8aa;font-size:10px}.mahjong-game__phase i{width:5px;height:5px;border-radius:50%;background:#a98262}.mahjong-game__phase i.is-live{background:#96b689;box-shadow:0 0 10px rgb(150 182 137/55%)}.mahjong-game__exit{width:36px;height:36px;justify-self:end}.mahjong-reconnect{display:flex;align-items:center;justify-content:center;gap:7px;margin:8px 0 -2px;color:#e3bc9d;font-size:10px}.mahjong-table{--hand-w:min(4.5cqw,15cqh,49px);--river-w:min(2.05cqw,4.5cqh,23px);position:relative;isolation:isolate;container-type:size;width:100%;height:clamp(440px,calc(51 * var(--mahjong-vw, 1vw)),610px);min-height:0;margin:12px auto;border:10px solid #272c37;border-radius:24px;background:radial-gradient(ellipse at 50% 43%,#426175 0,#2b4659 48%,#172c3e 100%);box-shadow:inset 0 0 0 2px #b5a27c,inset 0 0 55px #05152380,0 20px 50px #0006}.mahjong-table:before{content:"";position:absolute;z-index:-1;inset:9px;border:1px solid #c2d1d11c;border-radius:10px}.mahjong-table__grain{position:absolute;z-index:-1;inset:0;border-radius:inherit;pointer-events:none;opacity:.27;background-image:repeating-linear-gradient(0deg,#ffffff09 0 1px,transparent 1px 3px),repeating-linear-gradient(90deg,#0000000c 0 1px,transparent 1px 3px)}.mahjong-table__position{position:absolute;z-index:3;width:19%;min-width:0}.mahjong-table__position--north{top:3%;right:3%;left:auto;width:23%;transform:none}.mahjong-table__position--west{left:2%;top:36%;transform:none}.mahjong-table__position--east{right:2%;top:36%;transform:none}.mahjong-table__center{position:absolute;left:50%;top:43%;width:112px;height:112px;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;transform:translate(-50%,-50%);border:4px solid #101e2b;border-radius:10px;color:#e3cb94;background:linear-gradient(140deg,#1a2f41,#0d1b29);box-shadow:0 3px 0 #080f17,inset 0 0 0 1px #b7c1c330,0 8px 18px #0006}.mahjong-center-brand{font-size:6px;color:#7d9aaa;letter-spacing:.17em}.mahjong-table__center>strong{font-family:var(--font-display),serif;font-size:20px;font-weight:500}.mahjong-table__center>small{font-size:7px;color:#c0bfad}.mahjong-table__wall{color:#98adb8;font-size:9px}.mahjong-table__wall b{color:#efe3c5;margin-left:4px;font-size:15px}.mahjong-center-seat{position:absolute;width:21px;height:21px;display:grid;place-items:center;font-size:11px;color:#8699a3;background:#0c1722;border:1px solid #344959;border-radius:4px}.mahjong-center-seat.is-active{color:#fcde8d;border-color:#efc568;box-shadow:0 0 12px #e2b05260}.mahjong-center-seat--0{bottom:-11px;left:calc(50% - 10px)}.mahjong-center-seat--1{right:-11px;top:calc(50% - 10px)}.mahjong-center-seat--2{top:-11px;left:calc(50% - 10px)}.is-sanma .mahjong-center-seat--2,.mahjong-center-seat--3{left:-11px;top:calc(50% - 10px)}.mahjong-table__dora{position:absolute;z-index:4;top:4%;left:3%;display:grid;justify-items:start;gap:5px;padding:10px 12px;border:1px solid #d6c59729;border-radius:8px;background:linear-gradient(145deg,#081827a6,#13253891);box-shadow:0 4px 12px #00111f2b}.mahjong-table__dora>span{color:#d3c29e;font-size:10px;letter-spacing:.12em}.mahjong-table__dora>div{display:flex;gap:3px;align-items:start}.mahjong-indicator-back,.mahjong-table__dora .mahjong-tile{width:24px;height:34px;border-radius:3px;padding:2px}.mahjong-indicator-back{border:1px solid #f3e4b1;background:linear-gradient(135deg,#f2d594,#caa658);box-shadow:0 3px 0 #847034,0 4px 4px #0004}.mahjong-table__dora>small{font-size:8px;color:#889da9;max-width:180px}.mahjong-table__dora>small b{color:#d3d9d9;font-weight:400}.mahjong-player{position:relative;min-width:0;border:1px solid #dce2e224;border-radius:9px;padding:9px;background:linear-gradient(150deg,#0d1e2cb8,#0b192586);transition:border-color .18s,box-shadow .18s}.mahjong-player.is-turn{border-color:#e8c579a8;box-shadow:0 0 18px #d3a5541c}.mahjong-player__head{position:relative;display:flex;align-items:center;gap:6px;min-width:0}.mahjong-player__wind{flex:none;display:grid;place-items:center;width:28px;height:28px;border-radius:6px;color:#eed497;background:linear-gradient(135deg,#465264,#192c3c);border:1px solid #d3b77840;font-family:serif;font-size:15px}.mahjong-player__head>div{min-width:0;display:grid;gap:3px}.mahjong-player__head strong{overflow:hidden;max-width:84px;text-overflow:ellipsis;white-space:nowrap;color:#f1f0e7;font-size:11px;font-weight:500}.mahjong-player__head small{color:#b3c1c6;font-size:8px}.mahjong-player__head>b{margin-left:auto;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:11px;color:#eee2be;font-weight:500}.mahjong-player__riichi{position:absolute;right:0;top:-21px;color:#f3d389;font-size:9px;font-style:normal}.mahjong-player__hidden{display:flex;align-items:center;justify-content:center;gap:1px;margin-top:9px}.mahjong-player__hidden i{width:min(1cqw,12px);height:19px;flex:none;border:1px solid #faeabd;border-radius:2px;background:linear-gradient(135deg,#f4d799,#c4a45e);box-shadow:0 3px 0 #857048,0 4px 4px #0004}.mahjong-player__hidden span{margin-left:4px;color:#a4b9c5;font-size:8px}.mahjong-player__melds{position:absolute;top:calc(100% + 4px);left:0;width:100%;display:flex;flex-wrap:nowrap;gap:3px;margin:0}.mahjong-meld{display:flex;align-items:end;gap:2px}.mahjong-meld>small{display:none}.mahjong-meld__tiles{display:flex;gap:1px}.mahjong-meld .mahjong-tile{padding:1px;box-shadow:0 2px 0 #aaa895}.mahjong-meld .mahjong-tile,.mahjong-meld__back{width:min(.9cqw,14px);height:min(1.3cqw,20px);border-radius:2px}.mahjong-meld__back{border:1px solid #f3e4b1;background:linear-gradient(135deg,#f2d594,#caa658)}.mahjong-player__offline{display:block;margin-top:5px;font-size:8px;color:#e3bc9d}.mahjong-river{position:absolute;z-index:2;display:grid;grid-template-columns:repeat(6,var(--river-w));gap:2px;width:max-content;min-height:0}.mahjong-river--0{top:59%;left:50%;transform:translateX(-50%)}.mahjong-river--1{top:43%;left:61%;transform:translateY(-50%) rotate(-90deg);transform-origin:center}.mahjong-river--2{bottom:71%;left:50%;transform:translateX(-50%) rotate(180deg)}.is-sanma .mahjong-river--2,.mahjong-river--3{top:43%;bottom:auto;left:auto;right:61%;transform:translateY(-50%) rotate(90deg)}.mahjong-river__tile{display:block;width:var(--river-w);height:calc(var(--river-w) * 1.4)}.mahjong-river__tile .mahjong-tile{width:100%;height:100%;border-radius:2px;padding:1px;box-shadow:0 2px 0 #b8b7a4,0 3px 3px #0005}.mahjong-river__tile.is-tsumogiri{filter:brightness(.89)}.mahjong-river__tile.is-riichi .mahjong-tile{transform:rotate(90deg) scale(.76);outline:1px solid #debe75}.mahjong-table__own{position:absolute;z-index:3;bottom:2%;left:3%;width:94%}.mahjong-table__own>.mahjong-player{position:absolute;bottom:calc(var(--hand-w) * 1.5 + 10px);left:0;width:22%;padding:6px 8px}.mahjong-table__own>.mahjong-player .mahjong-player__hidden{display:none}.mahjong-hand-block{min-width:0}.mahjong-hand-label{display:none}.mahjong-hand-line{display:flex;justify-content:center;align-items:end;gap:12px}.mahjong-hand-public-melds{display:flex;gap:5px;padding-bottom:7px}.mahjong-hand-public-melds .mahjong-meld__back,.mahjong-hand-public-melds .mahjong-tile{width:min(3cqw,7cqh,30px);height:min(4.2cqw,9.8cqh,42px)}.mahjong-hand{display:flex;align-items:end;justify-content:center;width:auto;gap:3px;padding:0 2px 7px;overflow:visible}.mahjong-tile{position:relative;flex:none;display:inline-flex;align-items:center;justify-content:center;width:var(--hand-w,39px);height:calc(var(--hand-w, 39px) * 1.46);padding:3px;border:1px solid #cecebc;border-radius:5px;background:linear-gradient(105deg,#fdfdf5,#f6f4e9 45%,#e4e3d4);box-shadow:inset 1px 1px 0 #fff,inset -2px -1px 2px #b6b7a647,0 4px 0 #b6b4a0,0 5px 0 #6a7273,0 9px 9px #07101c60;line-height:1}.mahjong-tile__art{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none}.mahjong-tile.is-red{border-color:#d2c2b0}button.mahjong-tile{cursor:pointer;touch-action:manipulation;transition:transform .13s,box-shadow .13s}button.mahjong-tile.is-playable:focus-visible,button.mahjong-tile.is-playable:hover:not(:disabled){transform:translateY(-7px);box-shadow:0 4px 0 #c7bf9d,0 7px 18px #0008}button.mahjong-tile.is-locked{cursor:default}button.mahjong-tile.is-drawn{margin-left:max(0px,calc(var(--hand-w, 39px) * .35 - 2px))}.mahjong-drawn-wrap{position:relative;display:inline-flex;align-items:end}.mahjong-drawn-wrap>i{position:absolute;top:-4px;right:4px;color:#ddc68e;font-size:8px;font-style:normal}.mahjong-game__topline{grid-template-columns:1fr auto auto}.mahjong-game__screen-actions{display:flex;align-items:center;gap:8px;justify-content:flex-end}.mahjong-screen-button{white-space:nowrap;flex-shrink:0;display:inline-flex;gap:6px;align-items:center;min-height:36px;border:1px solid var(--mj-hairline);border-radius:6px;padding:0 9px;color:#d5ccb8;background:#ffffff05;cursor:pointer;font-size:10px}.mahjong-screen-hint{color:#d8bc88;font-size:11px;text-align:center}.mahjong-portrait-gate{display:none}.mahjong-action-dock{min-height:50px;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;padding:1px 0 4px}.mahjong-button--riichi{border-color:rgb(211 183 120/35%);color:var(--mj-gold);background:transparent}.mahjong-button--riichi.is-selected{color:#211d13;background:var(--mj-gold)}.mahjong-button--action{border-color:var(--mj-hairline);background:#202322}.mahjong-button--action small{color:var(--mj-muted);font-size:9px}.mahjong-button--win{color:#211d13;background:#d9c48e}.mahjong-action-dock__wait{display:inline-flex;align-items:center;gap:7px;color:var(--mj-muted);font-size:11px}.mahjong-action-dock__cancel{border:0;color:var(--mj-muted);background:none;font-size:10px;text-decoration:underline;cursor:pointer}.mahjong-settlement{width:100%;display:flex;align-items:center;justify-content:center;gap:7px;color:#dfd9c9;font-size:10px}.mahjong-settlement i{border:1px solid rgb(211 183 120/22%);border-radius:20px;padding:3px 7px;color:var(--mj-gold);font-size:8px;font-style:normal}.mahjong-settlement-panel{display:grid;grid-template-columns:minmax(160px,.6fr) 1fr;gap:12px 24px;border:1px solid var(--mj-hairline);border-radius:9px;padding:13px 16px;background:rgb(29 31 30/87%)}.mahjong-settlement-panel h2{margin:5px 0;font-family:var(--font-display),serif;font-size:15px;font-weight:450}.mahjong-settlement-panel p:not(.mahjong-kicker){margin:0;color:var(--mj-muted);font-size:9px}.mahjong-settlement-panel__delta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;align-content:center}.mahjong-settlement-panel__delta span{display:grid;gap:4px}.mahjong-settlement-panel__delta small{overflow:hidden;color:var(--mj-muted);font-size:8px;text-overflow:ellipsis;white-space:nowrap}.mahjong-settlement-panel__delta b{color:#d8d4c7;font-size:11px;font-weight:550;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.mahjong-settlement-panel__delta b.is-positive{color:#b5ca9e}.mahjong-settlement-panel__delta b.is-negative{color:#df9a8f}.mahjong-ura-indicators,.mahjong-winning-hand{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--mj-hairline);padding-top:9px}.mahjong-ura-indicators>small,.mahjong-winning-hand>div:first-child{display:grid;gap:4px;color:var(--mj-muted);font-size:8px}.mahjong-ura-indicators>div,.mahjong-winning-hand>div:last-child{max-width:100%;display:flex;gap:2px;overflow-x:auto;padding:1px 1px 4px}.mahjong-ura-indicators .mahjong-tile,.mahjong-winning-hand .mahjong-tile{width:clamp(22px,calc(3.1 * var(--mahjong-vw, 1vw)),34px);height:43px;flex:0 0 auto}.mahjong-ura-indicators .mahjong-tile__number,.mahjong-winning-hand .mahjong-tile__number{font-size:16px}.mahjong-settlement-panel ul{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:7px;margin:0;border-top:1px solid var(--mj-hairline);padding:9px 0 0;list-style:none}.mahjong-settlement-panel li{display:inline-flex;align-items:center;gap:6px;border-radius:20px;padding:4px 8px;color:#d6d0c0;background:rgb(255 255 255/4%);font-size:9px}.mahjong-settlement-panel li b{color:var(--mj-gold);font-size:8px;font-weight:500}.mahjong-ranking{position:relative;z-index:6;max-width:500px;margin:20px auto;border:1px solid rgb(211 183 120/28%);border-radius:13px;padding:20px;background:rgb(24 26 25/96%);box-shadow:0 20px 80px #0008}.mahjong-ranking h1{margin:7px 0 15px;font-family:var(--font-display),serif;font-size:27px;font-weight:400}.mahjong-ranking h1 em{color:var(--mj-gold);font-style:normal}.mahjong-ranking__row{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:9px;border-top:1px solid var(--mj-hairline);padding:10px 2px}.mahjong-ranking__row>span{color:var(--mj-gold);font-family:var(--font-display),serif;font-size:13px}.mahjong-ranking__row>strong{font-size:11px;font-weight:500}.mahjong-ranking__row>b{color:#d0cabb;font-size:10px;font-weight:500}.mahjong-ranking__actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px}.mahjong-ranking__actions>span{align-self:center;color:var(--mj-muted);font-size:10px}.mahjong-empty-game{min-height:calc(55 * var(--mahjong-vh, 1vh));display:flex;align-items:center;justify-content:center;gap:9px;color:var(--mj-muted)}.mahjong-confirm{width:min(440px,calc(calc(100 * var(--mahjong-vw, 1vw)) - 32px));border:1px solid rgb(211 183 120/28%);border-radius:14px;padding:27px;color:var(--mj-white);background:#1b1e1d;box-shadow:0 25px 110px #000b}.mahjong-confirm::backdrop{background:rgb(5 6 6/78%);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.mahjong-confirm__seal{display:grid;width:42px;height:42px;place-items:center;border:1px solid rgb(211 183 120/30%);border-radius:50%;color:var(--mj-gold)}.mahjong-confirm>.mahjong-kicker{margin-top:18px}.mahjong-confirm h2{margin:6px 0 9px;font-family:var(--font-display),serif;font-size:23px;font-weight:400}.mahjong-confirm>p:not(.mahjong-kicker){margin:0;color:var(--mj-muted);font-size:12px;line-height:1.75}.mahjong-confirm__actions{display:flex;justify-content:flex-end;gap:8px;margin-top:23px}.mahjong-footer{min-height:43px;display:flex;align-items:center;justify-content:space-between;gap:13px;border-top:1px solid var(--mj-hairline);padding-top:10px;color:#85867e;font-size:9px}.mahjong-footer span{display:inline-flex;align-items:center;gap:6px}.mahjong-footer svg{color:#a99a71}.space-mahjong-entry{display:flex;align-items:center;gap:13px;min-width:148px;border:1px solid rgb(211 183 120/21%);border-radius:9px;padding:8px 12px;color:var(--text);background:rgb(211 183 120/5%);text-decoration:none;transition:border-color .18s,background .18s,transform .18s}.space-mahjong-entry:hover{transform:translateY(-2px);border-color:rgb(211 183 120/48%);background:rgb(211 183 120/9%)}.space-mahjong-entry>svg:first-child{color:#d3b778}.space-mahjong-entry>span{display:grid;gap:3px;font-size:11px}.space-mahjong-entry small{color:var(--text-muted);font-size:8px;letter-spacing:.12em}.space-mahjong-entry>svg:last-child{margin-left:auto;color:var(--text-muted)}.space-dashboard__heading-actions{display:flex;align-items:center;justify-content:flex-end;gap:13px}@keyframes mahjong-spin{to{transform:rotate(1turn)}}@keyframes mahjong-turn-breathe{0%,to{box-shadow:0 0 0 rgb(211 183 120/0)}50%{box-shadow:0 0 13px rgb(211 183 120/24%)}}@keyframes mahjong-discard-in{0%{opacity:0;transform:translateY(-8px) scale(.86)}to{opacity:1;transform:translateY(0) scale(1)}}@media (prefers-reduced-motion:reduce){.mahjong-page *,.mahjong-page :after,.mahjong-page :before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}@media (max-width:860px){.mahjong-shell{padding-right:23px;padding-left:23px}.mahjong-lobby{gap:36px;padding-right:0;padding-left:0}}@media (max-width:640px){.mahjong-shell{min-height:calc(100 * var(--mahjong-dvh, 1dvh));padding:0 max(14px,var(--mahjong-safe-right,env(safe-area-inset-right))) calc(12px + var(--mahjong-safe-bottom, env(safe-area-inset-bottom))) max(14px,var(--mahjong-safe-left,env(safe-area-inset-left)))}.mahjong-header{min-height:57px}.mahjong-brand{gap:7px;font-size:11px}.mahjong-brand__mark{width:29px;height:29px}.mahjong-link-state{font-size:9px}.mahjong-notice{margin-top:12px;font-size:11px}.mahjong-lobby{display:flex;align-items:stretch;flex-direction:column;gap:22px;padding:41px 0 23px}.mahjong-lobby__copy h1{margin:17px 0 9px;font-size:clamp(43px,calc(13 * var(--mahjong-vw, 1vw)),61px)}.mahjong-lobby__copy>p:not(.mahjong-kicker){max-width:340px;font-size:12px;line-height:1.75}.mahjong-lobby__facts{gap:13px;margin-top:15px}.mahjong-lobby__facts span{gap:5px;font-size:9px}.mahjong-lobby__facts svg{width:13px;height:13px}.mahjong-lobby__panel{max-width:none;justify-self:stretch;padding:19px}.mahjong-panel-heading{margin-bottom:17px}.mahjong-panel-heading h2{font-size:19px}.mahjong-panel-heading__icon{width:37px;height:37px}.mahjong-mode-picker button{min-height:63px;padding:9px 10px}.mahjong-panel-note{font-size:9px}.mahjong-service-note{position:static;margin:0}.mahjong-waiting{padding:27px 0 9px}.mahjong-room-header{align-items:flex-start;flex-direction:column;gap:15px;margin-bottom:18px}.mahjong-room-header h1{margin-top:7px;font-size:34px}.mahjong-room-header p:not(.mahjong-kicker){max-width:345px;font-size:10px}.mahjong-room-code{align-self:stretch;grid-template-columns:auto 1fr auto;gap:0 9px}.mahjong-room-code>span{grid-column:auto}.mahjong-room-code strong{font-size:17px}.mahjong-seat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.mahjong-seat-card{min-height:102px;grid-template-columns:31px minmax(0,1fr);gap:0 8px;padding:18px 10px 11px}.mahjong-seat-card__avatar{width:31px;height:31px;font-size:14px}.mahjong-seat-card__identity strong{font-size:10px}.mahjong-seat-card__identity>span{font-size:9px}.mahjong-seat-card__ready{grid-column:2;margin-top:9px;font-size:9px}.mahjong-seat-card__wind{top:7px;right:8px;font-size:8px}.mahjong-waiting__bottom{align-items:flex-start;flex-direction:column;gap:14px;margin-top:18px;padding-top:15px}.mahjong-waiting__actions{width:100%;flex-wrap:wrap;gap:7px}.mahjong-waiting__actions>.mahjong-button:not(.mahjong-button--quiet){flex:1 1}.mahjong-host-note{margin-right:auto;padding-left:2px}.mahjong-seat-footnote{align-items:flex-start;font-size:9px;line-height:1.5}.mahjong-game{padding-top:10px}.mahjong-game__topline{grid-template-columns:1fr auto;gap:8px;min-height:49px}.mahjong-game__round-seal{width:31px;height:31px;font-size:16px}.mahjong-game__round{gap:8px}.mahjong-game__round strong{font-size:12px}.mahjong-game__round span:not(.mahjong-game__round-seal){font-size:8px}.mahjong-game__tempo{grid-column:2;grid-row:1;gap:8px}.mahjong-game__tempo>span:not(.mahjong-game__phase,.mahjong-game__tempo-divider){gap:3px;font-size:12px}.mahjong-game__tempo small{font-size:7px}.mahjong-game__tempo-divider{height:15px}.mahjong-game__exit,.mahjong-game__phase,.mahjong-seat-reserved{display:none}.mahjong-reconnect{justify-content:flex-start;margin:7px 2px 3px;font-size:9px}.mahjong-action-dock{justify-content:flex-start;gap:6px;min-height:43px}.mahjong-action-dock .mahjong-button{min-height:38px;gap:6px;padding:0 10px;font-size:10px}.mahjong-settlement{justify-content:flex-start;flex-wrap:wrap;font-size:9px}.mahjong-settlement-panel{grid-template-columns:1fr;gap:10px;padding:11px 12px}.mahjong-settlement-panel__delta{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.mahjong-settlement-panel__delta small{font-size:7px}.mahjong-settlement-panel__delta b{font-size:9px}.mahjong-ura-indicators,.mahjong-winning-hand{align-items:flex-start;flex-direction:column;gap:6px}.mahjong-ura-indicators .mahjong-tile,.mahjong-winning-hand .mahjong-tile{width:clamp(19px,calc(5.5 * var(--mahjong-vw, 1vw)),24px);height:37px;padding:2px 1px}.mahjong-ura-indicators .mahjong-tile__number,.mahjong-winning-hand .mahjong-tile__number{font-size:13px}.mahjong-footer{align-items:flex-start;flex-direction:column;justify-content:center;gap:5px;min-height:48px;font-size:8px}.mahjong-confirm{padding:22px}.mahjong-confirm h2{font-size:20px}.space-mahjong-entry{min-width:auto;gap:7px;padding:7px 9px}.space-mahjong-entry>span{font-size:10px}.space-dashboard__heading-actions{flex-wrap:wrap;gap:4px}}@media (max-width:360px){.mahjong-shell{padding-right:11px;padding-left:11px}.mahjong-game__tempo{gap:6px}}.mahjong-rules-trigger{display:inline-flex;align-items:center;gap:5px;margin-left:auto;border:0;padding:7px 0;color:var(--mj-muted);background:none;font-size:10px;cursor:pointer}.mahjong-variant-picker{margin-bottom:16px}.mahjong-seat-grid.is-sanma{grid-template-columns:repeat(3,minmax(0,1fr))}.mahjong-seat-bot-button{grid-column:1/-1;justify-self:start;margin-top:12px;border:1px solid var(--mj-hairline);border-radius:5px;padding:5px 8px;color:var(--mj-gold);background:var(--mj-gold-soft);font-size:10px;cursor:pointer}.mahjong-seat-bot-button:disabled{opacity:.5;cursor:wait}.mahjong-settlement-panel__delta.is-sanma{grid-template-columns:repeat(3,minmax(0,1fr))}.mahjong-rules{width:min(620px,calc(calc(100 * var(--mahjong-vw, 1vw)) - 32px));max-height:calc(calc(100 * var(--mahjong-dvh, 1dvh)) - 40px);overflow-y:auto}.mahjong-rules__close{float:right}.mahjong-rules ul{margin:16px 0;padding-left:18px;color:#c5c2b8;font-size:12px;line-height:1.8}.mahjong-rules li+li{margin-top:9px}@media (max-width:640px){.mahjong-rules-trigger{font-size:9px}.mahjong-seat-grid.is-sanma{grid-template-columns:1fr}.mahjong-seat-grid.is-sanma .mahjong-seat-card{min-height:82px}.mahjong-game__exit{display:inline-flex;grid-column:2;grid-row:2;justify-self:end}}@media (max-width:1024px) and (orientation:portrait){.mahjong-portrait-gate{position:fixed;z-index:40;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:18px;padding:28px;text-align:center;color:#eee8d9;background:radial-gradient(ellipse at 50% 30%,#233f55,#0b1520 70%)}.mahjong-portrait-gate>svg{color:#d4bc83;transform:rotate(90deg)}.mahjong-portrait-gate h2{font-family:var(--font-display),serif;font-size:26px;font-weight:400;margin:0}.mahjong-portrait-gate>p:not(.mahjong-kicker){color:#a8bac5;font-size:13px;margin:0;line-height:1.7}.mahjong-portrait-gate>small{max-width:240px;color:#7e95a4;font-size:11px;line-height:1.6}.mahjong-portrait-gate .mahjong-button{min-height:46px}.mahjong-confirm{z-index:50}}@media (max-height:600px) and (orientation:landscape),(max-width:600px) and (orientation:portrait) and (pointer:coarse){.mahjong-page:has(.mahjong-game) .mahjong-shell{width:100%;min-height:calc(100 * var(--mahjong-dvh, 1dvh));padding:0 max(8px,var(--mahjong-safe-left,env(safe-area-inset-left))) 0 max(8px,var(--mahjong-safe-right,env(safe-area-inset-right)))}.mahjong-page:has(.mahjong-game) .mahjong-footer,.mahjong-page:has(.mahjong-game) .mahjong-header{display:none}.mahjong-game{padding-top:0}.mahjong-game__topline{min-height:39px;height:39px;grid-template-columns:1fr auto auto;gap:10px}.mahjong-game__round-seal{width:26px;height:26px;font-size:14px}.mahjong-game__round strong{font-size:11px}.mahjong-game__round span:not(.mahjong-game__round-seal){font-size:8px}.mahjong-game__tempo{gap:9px;grid-column:auto;grid-row:auto}.mahjong-game__tempo>span:not(.mahjong-game__phase,.mahjong-game__tempo-divider){font-size:12px}.mahjong-game__phase{display:none}.mahjong-screen-button{min-height:30px;font-size:9px}.mahjong-game__exit{display:inline-flex;width:30px;height:30px;grid-column:auto;grid-row:auto}.mahjong-table{height:calc(calc(100 * var(--mahjong-dvh, 1dvh)) - 87px);min-height:0;margin:0 auto 4px;border-width:6px;border-radius:14px;--river-w:min(1.8cqw,4.1cqh,20px)}.mahjong-table__position--north{top:2%}.mahjong-player{padding:5px 6px;border-radius:6px}.mahjong-player__head{gap:4px}.mahjong-player__wind{width:22px;height:22px;font-size:12px}.mahjong-player__head strong{max-width:75px;font-size:9px}.mahjong-player__head small{font-size:7px}.mahjong-player__head>b{font-size:9px}.mahjong-player__hidden{margin-top:4px}.mahjong-player__hidden i{height:12px}.mahjong-table__center{width:70px;height:70px;gap:2px;border-width:3px;border-radius:7px}.mahjong-center-brand{font-size:4px}.mahjong-table__center>strong{font-size:14px}.mahjong-table__center>small{font-size:5px}.mahjong-table__wall{font-size:7px}.mahjong-table__wall b{font-size:11px}.mahjong-center-seat{width:16px;height:16px;font-size:8px}.mahjong-table__dora{top:3%;left:2%;gap:4px;padding:6px 8px}.mahjong-table__dora>span{font-size:8px}.mahjong-indicator-back,.mahjong-table__dora .mahjong-tile{width:17px;height:24px}.mahjong-table__dora>small{font-size:6px;max-width:130px}.mahjong-river--0{top:57%;--river-w:min(1.8cqw,3.4cqh,20px)}.mahjong-river--2{bottom:71%}.mahjong-table__own{bottom:1%}.mahjong-table__own>.mahjong-player{padding:4px 5px}.mahjong-action-dock{min-height:40px;gap:6px;padding:0}.mahjong-action-dock .mahjong-button{min-height:34px;font-size:11px;padding:0 13px}.mahjong-action-dock__wait{font-size:10px}.mahjong-reconnect,.mahjong-screen-hint{position:fixed;z-index:10;left:50%;top:44px;transform:translateX(-50%);margin:0;border-radius:6px;padding:7px 10px;background:#081828ed;font-size:10px}}@media (max-width:640px) and (orientation:landscape){.mahjong-game__tempo{display:none}.mahjong-game__topline{grid-template-columns:1fr auto}.mahjong-player__head strong{max-width:41px}.mahjong-player__head>b{font-size:8px}.mahjong-table__own>.mahjong-player{width:27%}.mahjong-hand{gap:2px}}.mahjong-player__nuki{display:inline-flex;align-items:center;gap:2px;margin-left:4px;color:#d6cba7;font-size:8px;white-space:nowrap}.mahjong-player__nuki>span{color:#ddd6c5}button.mahjong-player__head{width:100%;min-height:30px;padding:0;text-align:left;border:0;color:inherit;background:transparent;cursor:pointer}.mahjong-player__zoom{position:absolute;right:-4px;bottom:-5px;display:inline-flex;color:#d5c18b}.mahjong-player__head small{white-space:nowrap}.mahjong-game:not(.is-finished){position:fixed;z-index:20;inset:0;padding:0;background:#172c4c}.mahjong-page:has(.mahjong-game:not(.is-finished)) .mahjong-notice{position:fixed;z-index:35;top:max(55px,var(--mahjong-safe-top,env(safe-area-inset-top)));left:50%;transform:translateX(-50%);width:max-content;max-width:min(calc(90 * var(--mahjong-vw, 1vw)),650px);margin:0;background:#4a2936f5;border-color:#d9a287;box-shadow:0 4px 15px #04152b55}.mahjong-game:not(.is-finished)>.mahjong-reconnect,.mahjong-game:not(.is-finished)>.mahjong-screen-hint{position:absolute;z-index:12;top:auto;bottom:calc(calc(18 * var(--mahjong-dvh, 1dvh)) + 65px);right:4%;left:auto;transform:none;width:max-content;max-width:28%;margin:0;padding:4px 7px;background:#16243ee8;color:#f5cf9d;border-radius:4px;top:6%;left:36%;right:auto;bottom:auto;transform:translateX(-50%);max-width:100px;font-size:10px;line-height:14px;white-space:nowrap}.mahjong-game:not(.is-finished):has(>.mahjong-reconnect)>.mahjong-screen-hint{display:none}.mahjong-game:not(.is-finished) .mahjong-table{--hand-w:min(4.8cqw,13cqh,64px);--river-w:min(2.5cqw,5.2cqh,28px);width:100%;height:calc(100 * var(--mahjong-dvh, 1dvh));margin:0;border:0;border-radius:0;background:radial-gradient(ellipse at 50% 44%,rgb(163 198 191/9%),transparent 42%),radial-gradient(ellipse at 50% 43%,#34596b 0,#27485c 48%,#1d3a4f 78%,#142d41 100%);box-shadow:inset 0 1px 0 #d7e0d51a,inset 0 18px 40px -28px #d5e0d45c,inset 0 -28px 44px -28px #071624d9,inset 24px 0 38px -28px #071624d4,inset -24px 0 38px -28px #071624d4}.mahjong-game:not(.is-finished) .mahjong-table:before{z-index:0;inset:0;border:clamp(8px,1.15cqw,16px) solid transparent;border-radius:0;border-image:linear-gradient(128deg,#332724,#8b6443 2%,#c2945c 5%,#68472f 9%,#3a2c29 18%,#765033 48%,#302622 82%,#b4814c 97%,#392823) 1;background:none;pointer-events:none;box-shadow:inset 0 1px 0 #f2d29c80,inset 0 -2px 0 #201c1c9c,inset 1px 0 0 #d5ad7080,inset -1px 0 0 #1b202480}.mahjong-game:not(.is-finished) .mahjong-table:after{content:"";position:absolute;z-index:1;inset:clamp(10px,1.55cqw,22px);border:1px solid #dfc48d37;border-radius:clamp(10px,1.8cqw,24px);box-shadow:inset 0 1px 0 #d9e5dc0c;pointer-events:none}.mahjong-table__seams{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:-1}.mahjong-table__seams path{fill:none;stroke:#0a2233;stroke-width:2;opacity:.25}.mahjong-table__seams path+path{stroke:#bad1c8;stroke-width:1;opacity:.08}.mahjong-game:not(.is-finished) .mahjong-game__topline{position:absolute;z-index:9;top:max(12px,var(--mahjong-safe-top,env(safe-area-inset-top)));right:max(15px,var(--mahjong-safe-right,env(safe-area-inset-right)));display:block;min-height:0;height:auto}.mahjong-game:not(.is-finished) .mahjong-game__round,.mahjong-game:not(.is-finished) .mahjong-game__tempo{display:none}.mahjong-game .mahjong-game__exit,.mahjong-game .mahjong-screen-button{width:37px;height:37px;min-height:37px;padding:0;justify-content:center;border:1px solid #bac3d557;color:#dce5ef;background:#172742d4;border-radius:5px}.mahjong-game .mahjong-screen-button span{display:none}.mahjong-game .mahjong-screen-button svg{width:20px;height:20px}.mahjong-game .mahjong-table__grain{opacity:.17}.mahjong-game .mahjong-table__center{top:44%;width:min(15cqw,25cqh,178px);height:min(15cqw,25cqh,178px);gap:2px;padding:20px;border:1px solid #e1c47d;border-radius:50%;background:radial-gradient(circle at 34% 25%,rgb(137 157 161/30%),transparent 40%),radial-gradient(circle at 50% 58%,#273e4f 0,#1a2e3e 66%,#102338 100%);box-shadow:0 1px 0 #e9d29b,0 0 0 3px #17273a,0 0 0 4px #836c46,0 0 0 7px #152337,0 10px 20px #06111dd4,inset 0 1px 0 #f1d79b52,inset 0 -5px 12px #071624b8}.mahjong-game .mahjong-table__center:before{content:"";position:absolute;inset:7px;border:1px solid #d4bb8052;border-radius:inherit;pointer-events:none}.mahjong-game .mahjong-center-brand{display:none}.mahjong-game .mahjong-table__center>strong{color:#88dfde;font:700 min(2.4cqw,4cqh,27px)/1.1 var(--font-body),sans-serif;text-shadow:0 0 7px #57d8ef44;white-space:nowrap}.mahjong-game .mahjong-table__wall{color:#a1d9e5;font-size:min(1.5cqw,2.4cqh,14px)}.mahjong-game .mahjong-table__wall b{color:inherit;font-size:inherit}.mahjong-game .mahjong-table__center>small{font-size:min(1.1cqw,1.8cqh,10px);white-space:nowrap}.mahjong-game .mahjong-center-seat{width:auto;height:auto;min-width:17px;display:flex;align-items:center;gap:4px;border:0;background:transparent;box-shadow:none;border-radius:0;color:#dbc798;font-size:min(1.4cqw,2.3cqh,15px)}.mahjong-center-seat>span{display:grid;place-items:center;width:20px;height:20px;background:#0d172d;border:1px solid #69758a;border-radius:2px}.mahjong-center-seat>b{font-weight:500;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.mahjong-game .mahjong-center-seat--0{bottom:4px;left:50%;transform:translateX(-50%)}.mahjong-game .mahjong-center-seat--1{right:-16px;top:50%;transform:translateY(-50%) rotate(-90deg)}.mahjong-game .mahjong-center-seat--2{top:3px;left:50%;transform:translateX(-50%) rotate(180deg)}.mahjong-game .mahjong-center-seat--3,.mahjong-game.is-sanma .mahjong-center-seat--2{top:50%;left:-16px;transform:translateY(-50%) rotate(90deg)}.mahjong-game .mahjong-center-seat.is-active>span{color:#ffefe8;border-color:#f78c70;background:#943838;box-shadow:0 0 8px #ff6b5240}.mahjong-game .mahjong-table__dora{top:2%;left:2.2%;padding:7px;gap:3px;border:2px solid #ba9a7a;border-radius:3px;background:#182d4bdb;box-shadow:2px 3px 0 #121b2d}.mahjong-game .mahjong-table__dora>span{font-size:min(1.4cqw,2cqh,12px);letter-spacing:0}.mahjong-game .mahjong-table__dora>small{font-size:min(1cqw,1.7cqh,10px);max-width:190px}.mahjong-game .mahjong-indicator-back,.mahjong-game .mahjong-table__dora .mahjong-tile{width:min(2.7cqw,5.8cqh,35px);height:min(3.9cqw,8.4cqh,50px)}.mahjong-game .mahjong-table__own,.mahjong-game .mahjong-table__position{display:contents;position:static}.mahjong-game .mahjong-player,.mahjong-game .mahjong-table__own>.mahjong-player{position:static;border:0;padding:0;width:auto;border-radius:0;background:none;box-shadow:none}.mahjong-game .mahjong-player__head,.mahjong-game button.mahjong-player__head{position:absolute;z-index:4;width:min(15cqw,185px);min-height:50px;display:flex;flex-wrap:wrap;gap:3px 7px;padding:5px 7px;border:1px solid #e1c59138;border-left:2px solid #c79f626b;border-radius:6px;background:linear-gradient(125deg,#203a51ee,#10263ce8 72%);box-shadow:0 3px 0 #101b2d,0 7px 15px #08152452}.mahjong-game .mahjong-player__wind{width:min(4.7cqw,8cqh,55px);height:min(4.7cqw,8cqh,55px);font-family:serif;font-size:min(3cqw,5cqh,34px);border:2px solid #d7c8a4;border-radius:2px;background:linear-gradient(140deg,#708197,#283448);text-shadow:0 2px 0 #172d42}.mahjong-game .mahjong-player__wind[data-avatar]{position:relative;font-size:0;background-image:url(/images/mahjong-seat-portraits-v1.webp);background-size:200% 200%;background-position:0 0;text-shadow:none}.mahjong-game .mahjong-player__wind[data-avatar="1"]{background-position:100% 0}.mahjong-game .mahjong-player__wind[data-avatar="2"]{background-position:0 100%}.mahjong-game .mahjong-player__wind[data-avatar="3"]{background-position:100% 100%}.mahjong-game .mahjong-player__wind[data-avatar]:after{content:attr(data-wind);position:absolute;bottom:-2px;right:-2px;display:grid;place-items:center;width:16px;height:16px;border:1px solid #d7c8a4;background:#1b2945e6;color:#fae2b0;font:12px/1 serif}.mahjong-game .mahjong-player__head>div{flex:1 1}.mahjong-game .mahjong-player__head strong{max-width:110px;font-size:min(1.65cqw,2.8cqh,15px);font-weight:500}.mahjong-game .mahjong-player__head small{font-size:min(1.1cqw,1.8cqh,10px)}.mahjong-game .mahjong-player__head>b{width:100%;margin:0;padding:1px 0 0;border-top:1px solid #a9c1da32;text-align:center;font-size:min(1.8cqw,3.1cqh,18px)}.mahjong-game .mahjong-player__riichi{top:-17px;right:0;font-size:11px;padding:0 4px;color:#ffe6c2;background:#8b293c}.mahjong-game .mahjong-table__position--west .mahjong-player__head{left:3%;top:40%}.mahjong-game .mahjong-table__position--east .mahjong-player__head{right:3%;top:40%}.mahjong-game .mahjong-table__position--north .mahjong-player__head{right:3%;top:17%}.mahjong-game .mahjong-table__own .mahjong-player__head{left:10%;bottom:19%}.mahjong-game .mahjong-opponent-rack{position:absolute;z-index:3;display:flex;width:max-content;align-items:end;gap:10px}.mahjong-game .mahjong-player__hidden{position:static;width:max-content;gap:1px;margin:0}.mahjong-game .mahjong-player__hidden i{width:min(1.75cqw,3.6cqh,27px);height:min(3.1cqw,5.4cqh,35px);border:1px solid #f8d298;border-radius:3px;background:linear-gradient(135deg,#ffffff35,transparent 48%),repeating-linear-gradient(45deg,#fff1cb18 0 2px,transparent 2px 5px),linear-gradient(#fff0cb 0 12%,#f4ad50 13% 81%,#cd772e 82% 92%,#944d2c 93%);box-shadow:inset 0 1px 0 #fff5d6,inset -2px 0 2px #8d482a6e,0 2px 0 #a96234,0 4px 0 #75432f,0 6px 7px #0b1b2d55}.mahjong-game .mahjong-player__hidden>span{display:none}.mahjong-game .mahjong-player__hidden>i.is-drawn{margin-inline-start:min(.65cqw,1.25cqh,9px)}.mahjong-game .mahjong-table__position--north .mahjong-opponent-rack{left:50%;top:1%;transform:translateX(-50%) rotate(180deg)}.mahjong-game .mahjong-table__position--west .mahjong-opponent-rack{left:22%;top:32%;transform:translate(-50%,-50%) rotate(90deg)}.mahjong-game .mahjong-table__position--east .mahjong-opponent-rack{right:22%;top:32%;transform:translate(50%,-50%) rotate(-90deg)}.mahjong-game .mahjong-table__own .mahjong-opponent-rack{display:none}.mahjong-game .mahjong-player__melds{position:static;width:max-content;gap:5px;flex-wrap:nowrap;margin:0}.mahjong-game .mahjong-player__melds .mahjong-meld__back,.mahjong-game .mahjong-player__melds .mahjong-tile{width:min(1.5cqw,3.3cqh,22px);height:min(2.1cqw,4.6cqh,31px)}.mahjong-game .mahjong-river{gap:2px;--river-w:min(2.5cqw,5.2cqh,28px)}.mahjong-game .mahjong-river.is-long{--river-w:min(1.8cqw,3.5cqh,23px)}.mahjong-game .mahjong-river--0{top:calc(44% + min(7.5cqw,12.5cqh,89px) + 8px);left:50%;transform:translateX(-50%)}.mahjong-game .mahjong-river--1{top:44%;left:calc(50% + min(7.5cqw,12.5cqh,89px) + 8px);transform-origin:0 0;transform:rotate(-90deg) translateX(-50%)}.mahjong-game .mahjong-river--2{top:auto;bottom:calc(56% + min(7.5cqw,12.5cqh,89px) + 8px);left:50%;transform:translateX(-50%) rotate(180deg)}.mahjong-game .mahjong-river--3,.mahjong-game.is-sanma .mahjong-river--2{top:44%;bottom:auto;left:calc(50% - min(7.5cqw,12.5cqh,89px) - 8px);right:auto;transform-origin:0 0;transform:rotate(90deg) translateX(-50%)}.mahjong-game .mahjong-hand-block{position:absolute;z-index:5;bottom:max(2%,var(--mahjong-safe-bottom,env(safe-area-inset-bottom)));left:0;width:100%}.mahjong-game .mahjong-hand{gap:2px;padding-bottom:6px}.mahjong-game .mahjong-hand-line{gap:14px}.mahjong-game .mahjong-hand-public-melds .mahjong-meld__back,.mahjong-game .mahjong-hand-public-melds .mahjong-tile{width:min(3cqw,7cqh,35px);height:min(4.2cqw,9.8cqh,49px)}.mahjong-discard-flight__face.mahjong-tile,.mahjong-game .mahjong-tile{padding:2px 3px;border:1px solid #d4ccb7;border-radius:4px;background:linear-gradient(104deg,#fffdf2,#f8f3e6 66%,#ddd4bf);box-shadow:inset 1px 1px 0 #fffef8,inset -2px -1px 3px #8e826545,0 1px 0 #fff0c5,0 3px 0 #d39750,0 5px 0 #a86636,0 8px 9px #07182b68}.mahjong-discard-flight__face.mahjong-tile,.mahjong-game .mahjong-river__tile .mahjong-tile{padding:1px;border-radius:3px;box-shadow:inset 1px 1px 0 #fffdf5,inset -1px -1px 2px #74684748,0 1px 0 #f2dfb7,0 3px 0 #c98c50,0 5px 0 #8c5935,0 8px 7px #07182b85}.mahjong-game .mahjong-indicator-back,.mahjong-game .mahjong-meld__back{background:linear-gradient(#ffcb76,#eea147);border-color:#d3a264}.mahjong-game .mahjong-drawn-wrap>i{display:none}.mahjong-game:not(.is-finished) .mahjong-action-dock{position:absolute;z-index:8;right:max(4%,var(--mahjong-safe-right,env(safe-area-inset-right)));bottom:calc(calc(18 * var(--mahjong-dvh, 1dvh)) + 10px);max-width:48%;min-height:0;justify-content:flex-end;gap:8px;padding:0}.mahjong-game .mahjong-action-dock .mahjong-button{min-width:64px;min-height:42px;padding:4px 14px;border:2px solid #d4a176;border-radius:3px;color:#ffe1a8;font-size:17px;text-shadow:0 2px 0 #391a26;background:linear-gradient(#443049,#22223d);box-shadow:0 3px 0 #1b142b,0 4px 7px #04132577}.mahjong-game .mahjong-action-dock .mahjong-button--win:not(:disabled){color:#fff4cc;border-color:#ffcb78;background:linear-gradient(#ab4b53,#643142);box-shadow:0 0 15px #ec935e40,0 3px 0 #341829}.mahjong-game .mahjong-action-dock .mahjong-button--riichi:not(:disabled){background:linear-gradient(#795a39,#422a2a)}.mahjong-game .mahjong-action-dock .mahjong-button:disabled{opacity:.5;border-color:#6c7d90;background:#1b2c44;color:#b2bed0;text-shadow:none;box-shadow:none}.mahjong-game .mahjong-action-dock__wait{position:absolute;bottom:calc(100% + 7px);right:0;white-space:nowrap;color:#bdc8d7}.mahjong-game .mahjong-action-dock__cancel{flex-basis:100%;text-align:right;color:#f1dbb6}.mahjong-game:not(.is-finished)>.mahjong-settlement-panel{position:absolute;z-index:12;left:50%;top:45%;transform:translate(-50%,-50%);width:min(800px,88%);max-height:calc(60 * var(--mahjong-dvh, 1dvh));overflow:auto;background:#152139f5}.mahjong-game .mahjong-player__offline{position:absolute;bottom:22%;left:4%}.mahjong-game:not(.is-finished) .mahjong-nuki-tray{--nuki-tile-w:min(2.6cqw,5cqh,31px);position:absolute;z-index:4;display:flex;align-items:center;flex-direction:column;gap:2px;width:max-content;max-width:22cqw;border:1px solid #e7c68482;border-radius:7px;padding:3px 4px 4px;color:#ffe5b2;background:linear-gradient(145deg,#253a4beF,#12283aF2 72%);box-shadow:inset 0 1px 0 #ffe4b938,0 3px 0 #111c27,0 7px 13px #07132172}.mahjong-game .mahjong-nuki-tray>small{color:#f1d19a;font-size:min(1.1cqw,1.8cqh,10px);line-height:1.25;letter-spacing:.035em;white-space:nowrap}.mahjong-game .mahjong-nuki-tray__tiles{display:flex;align-items:center;gap:2px}.mahjong-game .mahjong-nuki-tray__tiles .mahjong-tile{width:var(--nuki-tile-w);height:min(3.7cqw,6cqh,44px);flex:0 0 auto;padding:1px;border-radius:3px;box-shadow:inset 1px 1px 0 #fffefa,inset -1px -1px 2px #8c79514a,0 1px 0 #fff1cf,0 3px 0 #cc9250,0 5px 0 #815333,0 7px 7px #06152370}.mahjong-game .mahjong-table__position--north .mahjong-nuki-tray{top:2%;left:20%}.mahjong-game .mahjong-table__position--west .mahjong-nuki-tray{top:calc(44% - min(5.4cqw, 10.5cqh, 69px) - min(3.7cqw, 6cqh, 44px) - 28px);left:calc(22% + clamp(22px, 3.6cqw, 46px))}.mahjong-game .mahjong-table__position--east .mahjong-nuki-tray{top:calc(44% - min(5.4cqw, 10.5cqh, 69px) - min(3.7cqw, 6cqh, 44px) - 28px);right:calc(22% + clamp(22px, 3.6cqw, 46px))}.mahjong-game .mahjong-table__own .mahjong-nuki-tray{bottom:18%;left:27%}.mahjong-game .mahjong-table-feedback{position:absolute;z-index:11;top:calc(44% - min(7.5cqw, 12.5cqh, 89px) - 42px);left:50%;display:grid;min-height:30px;place-items:center;width:max-content;max-width:min(72%,440px);border:1px solid #f0d2949c;border-radius:999px;padding:5px 17px;color:#fff4dd;background:linear-gradient(135deg,#304858f2,#182b3bf5 74%);box-shadow:inset 0 1px 0 #fff4d84a,0 4px 16px #07142188;font-size:clamp(12px,min(1.7cqw,3cqh,16px),16px);font-weight:550;letter-spacing:.11em;line-height:1.2;text-align:center;text-shadow:0 1px 2px #0c1721;pointer-events:none;animation:mahjong-feedback-pop .9s ease-out both}.mahjong-game .mahjong-table-feedback.is-nuki{border-color:#edb872ad;color:#ffdda9;background:linear-gradient(135deg,#654533f2,#2d3035f5 74%)}.mahjong-game .mahjong-table-feedback.is-riichi{border-color:#e37f82b8;color:#ffdfd5;background:linear-gradient(135deg,#723848f5,#2f2a3bf5 74%)}.mahjong-game .mahjong-table-feedback.is-win{border-color:#f0d084d1;color:#fff2c5;background:linear-gradient(135deg,#78603bf5,#283b40f5 74%)}.mahjong-game .mahjong-table-feedback.is-call{border-color:#b9d5c99c;color:#e5f3df}.mahjong-game .mahjong-table-feedback.is-draw{color:#e4edf1}.mahjong-game .mahjong-table-feedback.is-discard{color:#f1e7d1}.mahjong-game:not(.is-finished) .mahjong-action-dock:empty{display:none}.mahjong-game button.mahjong-tile.is-draw-arriving{animation:mahjong-tile-arrive .22s cubic-bezier(.2,.75,.25,1) both}@media (max-height:600px) and (orientation:landscape),(max-width:600px) and (orientation:portrait) and (pointer:coarse){.mahjong-game .mahjong-table__center{padding:16px;border-width:5px;border-radius:9px}.mahjong-game .mahjong-center-seat>span{width:15px;height:15px}.mahjong-game .mahjong-player__head,.mahjong-game button.mahjong-player__head{width:15%;min-height:40px;gap:1px 5px;padding:4px}.mahjong-game .mahjong-table__own .mahjong-player__head{left:6%;bottom:22%}.mahjong-game .mahjong-table__dora{padding:4px;border-width:1px}.mahjong-game .mahjong-action-dock .mahjong-button{min-width:53px;min-height:35px;padding:3px 9px;font-size:14px}.mahjong-game:not(.is-finished) .mahjong-action-dock{bottom:calc(calc(18 * var(--mahjong-dvh, 1dvh)) + 8px);max-width:38%;gap:5px}}.mahjong-public-melds{width:min(520px,calc(calc(100 * var(--mahjong-vw, 1vw)) - 28px));max-height:calc(calc(100 * var(--mahjong-dvh, 1dvh)) - 28px);overflow-y:auto}.mahjong-public-melds__close{float:right}.mahjong-public-melds__tiles{display:flex;flex-wrap:wrap;gap:16px;margin-top:22px}.mahjong-public-melds .mahjong-meld{display:grid;gap:7px}.mahjong-public-melds .mahjong-meld>small{display:block;font-size:12px}.mahjong-public-melds .mahjong-meld__back,.mahjong-public-melds .mahjong-tile{width:39px;height:56px;padding:3px}.mahjong-public-melds__nuki{display:flex;align-items:flex-start;flex-direction:column;gap:7px;margin-top:18px;border-top:1px solid var(--mj-hairline);padding-top:13px}.mahjong-public-melds__nuki>small{color:var(--mj-gold);font-size:11px}.mahjong-public-melds__nuki>div{display:flex;flex-wrap:wrap;gap:4px}.mahjong-public-melds__nuki .mahjong-tile{width:39px;height:56px;padding:3px}.mahjong-call-dialog{width:min(540px,calc(calc(100 * var(--mahjong-vw, 1vw)) - 28px));max-height:calc(calc(100 * var(--mahjong-dvh, 1dvh)) - 28px);overflow:hidden}.mahjong-call-options{display:grid;gap:7px;max-height:min(calc(48 * var(--mahjong-dvh, 1dvh)),360px);overflow:auto;margin:18px 0 3px;padding:2px 4px 3px 0}.mahjong-call-options>button{min-height:63px;display:flex;align-items:center;gap:7px;border:1px solid var(--mj-hairline);border-radius:7px;padding:5px 8px;color:var(--mj-white);background:linear-gradient(135deg,#242928,#191e20);cursor:pointer}.mahjong-call-options>button:hover{border-color:#d3b7787d;background:linear-gradient(135deg,#34332b,#1d2427)}.mahjong-call-options .mahjong-tile{width:30px;height:43px;flex:0 0 auto;padding:2px}@keyframes mahjong-feedback-pop{0%,to{opacity:0;transform:translate(-50%,-5px) scale(.98)}12%,76%{opacity:1;transform:translate(-50%) scale(1)}}@keyframes mahjong-tile-arrive{0%{opacity:.45;transform:translateY(8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@media (prefers-reduced-motion:reduce){.mahjong-game .mahjong-table-feedback{animation:none;opacity:1;transform:translateX(-50%)}.mahjong-game button.mahjong-tile.is-draw-arriving{animation:none}}.mahjong-winning-hand{--win-tile-w:clamp(22px,calc(3.1 * var(--mahjong-vw, 1vw)),34px);--win-tile-h:43px;min-width:0}.mahjong-winning-hand>div.mahjong-winning-hand__row{min-width:0;align-items:flex-end;gap:12px}.mahjong-winning-hand__closed{display:flex;gap:2px;flex:0 0 auto}.mahjong-winning-hand__tile{display:flex;flex:0 0 auto}.mahjong-winning-hand__melds{display:flex;align-items:flex-end;gap:10px;flex:0 0 auto}.mahjong-winning-hand__melds .mahjong-meld--public{--meld-tile-w:var(--win-tile-w);--meld-tile-h:var(--win-tile-h)}.mahjong-winning-hand .mahjong-tile{width:var(--win-tile-w);height:var(--win-tile-h)}@media (max-width:700px){.mahjong-winning-hand{--win-tile-w:clamp(19px,calc(5.5 * var(--mahjong-vw, 1vw)),24px);--win-tile-h:37px}}.mahjong-settlement-panel{grid-template-columns:minmax(170px,.65fr) minmax(0,1.35fr);gap:12px 18px;color:#e8e4da}.mahjong-settlement-panel__heading{min-width:0}.mahjong-settlement-panel h2{margin:3px 0;font-size:20px}.mahjong-settlement-panel__winner{display:block;font-size:18px;overflow-wrap:anywhere}.mahjong-settlement-panel p:not(.mahjong-kicker){font-size:12px;line-height:1.5}.mahjong-settlement-panel__value{display:flex;align-items:baseline;flex-wrap:wrap;gap:7px;margin-top:6px}.mahjong-settlement-panel__value small{font-size:12px;color:var(--mj-muted)}.mahjong-settlement-panel__value b{color:var(--mj-gold);font-size:23px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.mahjong-settlement-panel__delta{gap:8px}.mahjong-settlement-panel__delta>span{display:grid;align-content:center;gap:5px;min-width:0;padding:8px;border:1px solid var(--mj-hairline);border-radius:6px;background:rgb(255 255 255/3%)}.mahjong-settlement-panel__delta small{font-size:12px}.mahjong-settlement-panel__delta em{font-style:normal;display:block;font-size:12px;white-space:nowrap;color:var(--mj-muted)}.mahjong-settlement-panel__delta b{font-size:16px;white-space:nowrap}.mahjong-settlement-panel__explanation{grid-column:1/-1}.mahjong-settlement-panel .mahjong-ura-indicators>small,.mahjong-settlement-panel .mahjong-winning-hand>div:first-child,.mahjong-settlement-panel li,.mahjong-settlement-panel li b{font-size:12px}.mahjong-settlement-panel__actions{grid-column:1/-1;position:static;bottom:auto;display:flex;flex:0 0 auto;justify-content:flex-end;padding:8px 0;background:#152139}.mahjong-settlement-panel__actions button{min-width:88px;min-height:44px;font-size:16px}.mahjong-game:not(.is-finished)>.mahjong-settlement-panel{top:43%;width:min(960px,94%);max-height:calc(72 * var(--mahjong-dvh, 1dvh));min-height:0;display:flex;flex-direction:column;overflow:hidden}.mahjong-settlement-panel__content{grid-column:1/-1;min-width:0;min-height:0;flex:1 1 auto;display:grid;grid-template-columns:minmax(170px,.65fr) minmax(0,1.35fr);align-content:start;gap:12px 18px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}@media (max-width:900px){.mahjong-settlement-panel__content{grid-template-columns:minmax(0,1fr);gap:8px}.mahjong-settlement-panel__heading{display:flex;align-items:baseline;flex-wrap:wrap;column-gap:10px}.mahjong-settlement-panel__heading .mahjong-kicker{display:none}.mahjong-settlement-panel__heading h2{font-size:18px}.mahjong-settlement-panel__value{margin:0}.mahjong-settlement-panel__delta{gap:6px}.mahjong-settlement-panel__delta>span{padding:6px}.mahjong-settlement-panel__delta b{font-size:14px}}.mahjong-page .mahjong-confirm,.mahjong-page .mahjong-lobby__panel{background:#18232bed;border-color:#708d9c55}.mahjong-page .mahjong-game .mahjong-table:before{border-image:linear-gradient(135deg,#172027,#52616b 4%,#26333e 10%,#18222a 50%,#52616b 97%,#172027) 1}.mahjong-page .mahjong-game .mahjong-table__dora{border-color:#718791;background:#162630ee}.mahjong-page .mahjong-game:not(.is-finished)>.mahjong-settlement-panel{background:#15232ff5;border-color:#7897a266}.mahjong-page .mahjong-settlement-panel__actions{background:#15232f}.mahjong-page .mahjong-action-dock .mahjong-button,.mahjong-page .mahjong-call-options .mahjong-button{border:1px solid #7896a2;border-radius:7px;background:#203744;color:#edf5f6;text-shadow:none;box-shadow:0 2px 0 #0c1922,0 4px 10px #07111966}.mahjong-page .mahjong-action-dock .mahjong-button--quiet{background:#182630;color:#c1cdd2;border-color:#5e747f}.mahjong-page .mahjong-action-dock .mahjong-button--win{background:#644235;color:#fff0cc;border-color:#c29d68}.mahjong-call-label{display:grid;gap:2px;white-space:nowrap}.mahjong-page .mahjong-call-label>small{font-size:10px;color:#ccdade}.mahjong-call-previews{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.mahjong-call-previews:empty{display:none}.mahjong-call-preview,.mahjong-call-preview *,.mahjong-call-previews{pointer-events:none}.mahjong-call-preview{display:inline-flex;align-items:end}.mahjong-page .mahjong-call-preview .mahjong-meld--public{--meld-tile-w:19px;--meld-tile-h:27px}.mahjong-page .mahjong-call-previews:has(>:nth-child(2)) .mahjong-meld--public{--meld-tile-w:15px;--meld-tile-h:21px}.mahjong-page .mahjong-call-options .mahjong-button{min-height:58px;gap:14px}.mahjong-page .mahjong-call-options .mahjong-meld--public{--meld-tile-w:27px;--meld-tile-h:38px}@media (pointer:coarse){.mahjong-page .mahjong-game .mahjong-action-dock .mahjong-button,.mahjong-page .mahjong-game .mahjong-action-dock__cancel{min-width:44px;min-height:44px}}.mahjong-settlement-panel.is-detail .mahjong-settlement-panel__content{grid-template-columns:minmax(0,1fr)}.mahjong-settlement-panel .mahjong-winning-hand{flex-direction:column;align-items:flex-start}.mahjong-settlement-panel .mahjong-winning-hand>.mahjong-winning-hand__row{width:100%}.mahjong-settlement-panel__page{color:var(--mj-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.mahjong-settlement-panel.is-detail .mahjong-settlement-panel__heading{animation:mahjong-result-reveal .3s ease-out both}.mahjong-settlement-panel.is-detail .is-pending{opacity:0;visibility:hidden}.mahjong-settlement-panel.is-detail .is-revealed{animation:mahjong-result-reveal .18s ease-out both}.mahjong-settlement-panel.is-detail .mahjong-settlement-panel__value.is-revealed{animation-duration:.6s}.mahjong-settlement-panel.is-scores .mahjong-settlement-panel__content{grid-template-columns:minmax(0,1fr)}.mahjong-settlement-panel.is-scores .mahjong-settlement-panel__delta{grid-column:1/-1}.mahjong-settlement-panel.is-scores .mahjong-settlement-panel__balance-after{margin-top:8px}.mahjong-settlement-panel.is-scores .mahjong-settlement-panel__balance-after strong{display:block;margin-top:4px;color:#edf5f6;font-size:clamp(18px,2.8cqw,30px);font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.mahjong-settlement-panel__actions{gap:12px;align-items:center}.mahjong-settlement-panel__actions small{color:var(--mj-muted);font-size:12px}.mahjong-settlement-panel.is-draw .mahjong-settlement-panel__content{grid-template-columns:minmax(0,1fr)}.mahjong-draw-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.mahjong-draw-summary article{min-width:0;padding:10px;border:1px solid #68859555;background:#10202b;border-radius:6px}.mahjong-draw-summary article.is-tenpai{border-color:#bdac7680}.mahjong-draw-summary header{display:flex;align-items:start;gap:10px;justify-content:space-between;margin-bottom:8px}.mahjong-draw-summary header strong{min-width:0;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mahjong-draw-summary header b{flex:0 0 auto;font-size:13px;color:#8c9ba3}.mahjong-draw-summary .is-tenpai header b{color:#e3cc86}.mahjong-draw-summary__hand,.mahjong-draw-summary__waits{display:flex;align-items:center;flex-wrap:wrap;gap:2px}.mahjong-draw-summary .mahjong-tile{width:22px;height:30px;flex:0 0 22px}.mahjong-draw-summary__waits{margin-top:8px;gap:5px}.mahjong-draw-summary__waits small{color:#a9b8c0;font-size:11px}.mahjong-draw-cause{grid-column:1/-1;text-align:center;padding:16px;font-size:clamp(24px,4cqw,40px);color:#e7d6a6}.mahjong-page .mahjong-game .mahjong-draw-rack span{margin:0}.mahjong-draw-rack{display:flex;gap:2px;transform-style:preserve-3d}.mahjong-draw-rack__tile{--flight-depth:calc(var(--rack-height) * .16);position:relative;display:block;width:calc(var(--rack-height) * .71);height:var(--rack-height);transform-style:preserve-3d;transform-origin:center bottom;animation:mahjong-draw-flip .3s ease-out both;animation-delay:var(--draw-flip-age,0s)}.mahjong-draw-rack__tile>.mahjong-discard-flight__face-up{transform:translateZ(var(--flight-depth))}.mahjong-draw-rack__tile .mahjong-tile{width:100%;height:100%;padding:0}@keyframes mahjong-draw-flip{0%{transform:rotateX(-90deg)}to{transform:rotateX(0)}}@media (max-height:500px){.mahjong-draw-summary{gap:6px}.mahjong-draw-summary article{padding:6px}}@media (prefers-reduced-motion:reduce){.mahjong-draw-rack__tile{animation:none}}@keyframes mahjong-result-reveal{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.mahjong-settlement-panel.is-detail .is-revealed,.mahjong-settlement-panel.is-detail .mahjong-settlement-panel__heading{animation:none}}.mahjong-game.is-finished{min-height:calc(100 * var(--mahjong-dvh, 1dvh));background:radial-gradient(ellipse at 25% 45%,#23394b,#0b131e 75%)}.mahjong-game.is-finished>.mahjong-action-dock,.mahjong-game.is-finished>.mahjong-table{display:none}.mahjong-game.is-finished .mahjong-ranking{width:min(760px,92%);max-width:760px;box-sizing:border-box;margin:calc(3 * var(--mahjong-dvh, 1dvh)) auto;padding:clamp(16px,calc(3 * var(--mahjong-dvh, 1dvh)),32px);background:linear-gradient(130deg,#182b3ae8,#101b28f5);border-color:#9dbac04d;border-radius:4px;animation:mahjong-ranking-fade 1s linear both;animation-delay:var(--ranking-start-age,0s)}.mahjong-ranking__list{margin:0;padding:0;list-style:none}.mahjong-ranking .mahjong-ranking__row{min-height:56px;box-sizing:border-box;grid-template-columns:50px minmax(0,1fr) max-content;gap:16px;padding:12px 16px;margin:5px 0;background:linear-gradient(90deg,#52728832,#21344720);border-top:0;opacity:0;visibility:hidden;transform:translateX(200px)}.mahjong-ranking .mahjong-ranking__row.is-visible{visibility:visible;opacity:1;transform:translateX(0);transition:transform .2s cubic-bezier(.9,0,1,1),opacity .2s cubic-bezier(.9,0,1,1)}.mahjong-ranking .mahjong-ranking__row[data-own-seat=true]{box-shadow:inset 3px 0 #c8b378;background:linear-gradient(90deg,#9b885329,#21344720)}.mahjong-ranking .mahjong-ranking__row>span{font-size:clamp(22px,calc(4 * var(--mahjong-dvh, 1dvh)),34px)}.mahjong-ranking .mahjong-ranking__row>strong{font-size:clamp(12px,calc(2.4 * var(--mahjong-dvh, 1dvh)),17px);overflow-wrap:anywhere}.mahjong-ranking__row small{display:inline-block;margin-left:8px;font-size:10px;color:#c8b378}.mahjong-ranking .mahjong-ranking__row>b{font-size:clamp(14px,calc(3 * var(--mahjong-dvh, 1dvh)),23px);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.mahjong-ranking .mahjong-ranking__actions{min-height:44px;justify-content:flex-end}.mahjong-ranking__actions .mahjong-button{min-height:44px}@keyframes mahjong-ranking-fade{0%{opacity:0}to{opacity:1}}@media (max-height:450px) and (orientation:landscape),(max-width:450px) and (orientation:portrait) and (pointer:coarse){.mahjong-game.is-finished .mahjong-ranking{margin:5px auto;padding:10px 16px}.mahjong-ranking__heading{display:flex;align-items:baseline;gap:14px}.mahjong-ranking .mahjong-ranking__heading h1{margin:0 0 6px;font-size:22px}.mahjong-ranking .mahjong-ranking__row{min-height:44px;margin:3px 0;padding:5px 10px}.mahjong-ranking .mahjong-ranking__actions{margin-top:6px}}@media (prefers-reduced-motion:reduce){.mahjong-game.is-finished .mahjong-ranking{animation:none}.mahjong-ranking .mahjong-ranking__row,.mahjong-ranking .mahjong-ranking__row.is-visible{transform:none;transition:none}}.mahjong-game.is-finished .mahjong-game__topline{min-height:44px;height:auto}.mahjong-game.is-finished .mahjong-game__exit{width:44px;height:44px;min-width:44px;min-height:44px}.mahjong-game.is-finished .mahjong-screen-button{min-width:44px;min-height:44px}.mahjong-game .mahjong-audio-toggle{min-width:44px;min-height:44px;padding:8px}.mahjong-result-indicators{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.mahjong-result-indicators .mahjong-ura-indicators{grid-column:auto;flex-direction:column;align-items:flex-start;gap:6px}.mahjong-result-indicators .mahjong-indicator-back{width:clamp(22px,calc(3.1 * var(--mahjong-vw, 1vw)),34px);height:43px;flex:0 0 auto}@media (max-width:640px){.mahjong-result-indicators{gap:8px}.mahjong-result-indicators .mahjong-indicator-back{width:clamp(19px,calc(5.5 * var(--mahjong-vw, 1vw)),24px);height:37px}}.mahjong-game:not(.is-finished)>.mahjong-settlement-panel{top:max(43%,calc(max(12px, var(--mahjong-safe-top, env(safe-area-inset-top))) + 44px + 8px + calc(36 * var(--mahjong-dvh, 1dvh))));max-height:min(calc(72 * var(--mahjong-dvh, 1dvh)),calc(calc(100 * var(--mahjong-dvh, 1dvh)) - 76px - var(--mahjong-safe-top, env(safe-area-inset-top)) - var(--mahjong-safe-bottom, env(safe-area-inset-bottom))))}.mahjong-wait-preview{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);z-index:8;max-width:90%;padding:6px 10px;border:1px solid #738185;border-radius:7px;background:rgba(12,26,33,.97);color:#e9d7a6;pointer-events:none;box-shadow:0 5px 18px #0006}.mahjong-wait-preview>span{display:block;font-size:11px;line-height:1.2;margin-bottom:4px}.mahjong-wait-preview>div{display:flex;flex-wrap:wrap;justify-content:center;gap:5px}.mahjong-wait-preview__item{display:flex;flex-direction:column;align-items:center}.mahjong-wait-preview .mahjong-tile{width:24px;height:33px}.mahjong-wait-preview small{font-size:11px;line-height:1.3;color:#d6dedc}.mahjong-wait-preview__item b{font-size:10px;line-height:1.4;color:#efa49a;font-weight:500}