.character-portrait{position:relative;display:block;overflow:hidden;width:100%;background:linear-gradient(180deg,var(--pal-b,#e9eef2),var(--pal-a,#9fb6c4));isolation:isolate}.character-portrait--full{background:transparent}.character-portrait__art{position:absolute;inset:0;display:block}.character-portrait__art img{position:absolute;max-width:none;height:auto;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;pointer-events:none}.character-portrait--full .character-portrait__art img{filter:drop-shadow(0 18px 30px rgba(0,0,0,.35))}.portrait-placeholder{position:absolute;inset:0;width:100%;height:100%}.character-portrait__loading{position:absolute;inset:0;background:linear-gradient(110deg,#ffffff0f 30%,#ffffff29,#ffffff0f 70%) 0 0/300% 100%;animation:portrait-shimmer 1.4s linear infinite}.character-portrait__reaction--play,.character-portrait__reaction--win{animation:portrait-bounce .5s var(--ease-pop)}.character-portrait__reaction--pass,.character-portrait__reaction--lose{animation:portrait-dip .45s var(--ease)}@keyframes portrait-shimmer{to{background-position:-300% 0}}@keyframes portrait-bounce{0%{transform:none}40%{transform:translateY(-6%) scale(1.03)}to{transform:none}}@keyframes portrait-dip{0%{transform:none}50%{transform:translateY(3%);filter:saturate(.7)}to{transform:none}}.pointer-reorder-ghost{position:fixed;z-index:10000;pointer-events:none;-webkit-user-select:none;user-select:none;cursor:grabbing;filter:drop-shadow(0 12px 13px #0006);will-change:left,top;transition:opacity .1s}.pointer-reorder-ghost[data-valid=false]{opacity:.65}[data-pointer-drag-source=true]{opacity:.2!important;filter:grayscale(.6)!important;cursor:grabbing!important}[data-pointer-drop-target]{position:relative}[data-pointer-drop-target]:after{content:""!important;position:absolute!important;top:-9px!important;bottom:-9px!important;width:4px!important;height:auto!important;border-radius:3px!important;background:#ffe6a0!important;box-shadow:0 0 0 1px #523814,0 0 10px #ffe6a090!important;pointer-events:none!important;z-index:100!important;transform:none!important}[data-pointer-drop-target=before]:after{left:-4px!important;right:auto!important}[data-pointer-drop-target=after]:after{right:-4px!important;left:auto!important}@media(prefers-reduced-motion:reduce){.pointer-reorder-ghost{transition:none}}.mj-cutin{position:absolute;inset:0;z-index:20;overflow:hidden;border-radius:12px;isolation:isolate;pointer-events:none;animation:mj-cutin-life var(--call-duration) ease both}.mj-cutin-wash{position:absolute;inset:0;background:linear-gradient(115deg,#0b2136ee 8%,#10344bbf 53%,#071826e0);box-shadow:inset 0 0 70px #010917a1}.mj-cutin-line{position:absolute;left:-8%;top:28%;width:116%;height:44%;transform:rotate(-9deg);background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--call-accent),transparent 45%),#ffdd8055,transparent);border-block:1px solid #ffe3a666;opacity:.7}.mj-cutin-art{position:absolute;left:5%;bottom:4%;width:61%;height:90%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 0 14px #0007);animation:mj-cutin-slide .42s cubic-bezier(.2,.75,.25,1) both}.mj-cutin-copy{position:absolute;left:63%;top:50%;width:33%;transform:translateY(-50%);color:#fff6d4;text-shadow:0 3px 2px #061524,0 0 20px #dfc8984d}.mj-cutin-copy small{display:block;font:600 clamp(16px,1.5vw,23px) "Microsoft YaHei",sans-serif;color:#f8e6bc;letter-spacing:2px}.mj-cutin-copy strong{display:block;font:900 clamp(45px,6vw,78px)/1.25 "KaiTi","STKaiti","Kaiti SC","Noto Serif CJK SC","Songti SC","SimSun",serif;letter-spacing:5px;margin:8px 0}.mj-cutin-copy span{font-size:13px;letter-spacing:3px;color:#ecedec}.mj-cutin-ring{position:absolute;width:68%;aspect-ratio:1;left:7%;top:7%;border:1px solid #ffe19b55;border-radius:50%;box-shadow:0 0 0 10px #e5cb8622,inset 0 0 0 12px #e5cb8611;opacity:0}.mj-cutin-streaks{position:absolute;inset:0;overflow:hidden}.mj-cutin-streaks i{position:absolute;width:50%;height:2px;left:-50%;top:28%;background:linear-gradient(90deg,transparent,#ffeec3,transparent);animation:mj-cutin-streak .8s ease-out both}.mj-cutin-streaks i:nth-child(2){top:69%;animation-delay:90ms}.mj-cutin-streaks i:nth-child(3){top:42%;animation-delay:.17s}.mj-cutin-skip{position:absolute;right:12px;bottom:12px;pointer-events:auto;background:#112237dc;color:#f7ebd3;border:1px solid #e4d29a70;border-radius:4px;font-size:12px;padding:7px 12px;cursor:pointer}.mj-cutin-skip:focus-visible{outline:2px solid #ffe5a8;outline-offset:3px}.mj-cutin.kind-pon .mj-cutin-art{animation-name:mj-cutin-double}.mj-cutin.kind-pon .mj-cutin-line{animation:mj-cutin-double .43s ease-out}.mj-cutin.kind-kan .mj-cutin-art{animation-name:mj-cutin-impact;animation-duration:.51s}.mj-cutin.kind-kan .mj-cutin-ring{animation:mj-cutin-ring .9s ease-out both}.mj-cutin.kind-riichi .mj-cutin-line{top:0;left:55%;height:100%;width:2px;transform:none;background:#ffdf96;animation:mj-cutin-vertical .55s ease-out both;box-shadow:0 0 14px #ffe9a0}.mj-cutin.kind-riichi .mj-cutin-art{animation-name:mj-cutin-rise}.mj-cutin.kind-ron .mj-cutin-ring,.mj-cutin.kind-tsumo .mj-cutin-ring{animation:mj-cutin-ring 1.35s ease-out both}.mj-cutin.kind-ron .mj-cutin-art,.mj-cutin.kind-tsumo .mj-cutin-art{animation-name:mj-cutin-win;animation-duration:.7s}.mj-cutin.kind-ron .mj-cutin-wash,.mj-cutin.kind-tsumo .mj-cutin-wash{background:linear-gradient(120deg,#13303def,#403943de,#142b40ed)}.mj-cutin[data-paused=true],.mj-cutin[data-paused=true] *{animation-play-state:paused!important}.mj-cutin-reduced,.mj-cutin-reduced *{animation:none!important}.mj-cutin-reduced .mj-cutin-streaks,.mj-cutin-reduced .mj-cutin-ring{display:none}.mj-cutin-reduced .mj-cutin-wash{background:#12283deb}@keyframes mj-cutin-life{0%{opacity:0}12%,83%{opacity:1}to{opacity:0}}@keyframes mj-cutin-slide{0%{transform:translate(-38px);opacity:0}to{transform:none;opacity:1}}@keyframes mj-cutin-double{0%{transform:scale(.95)}42%{transform:scale(1)}63%{transform:scale(.985)}to{transform:none}}@keyframes mj-cutin-impact{0%{transform:scale(.88);opacity:0}55%{transform:scale(1);opacity:1}75%{transform:scale(.99)}to{transform:none}}@keyframes mj-cutin-rise{0%{transform:translateY(20px);opacity:0}to{transform:none;opacity:1}}@keyframes mj-cutin-win{0%{transform:scale(.95);opacity:0}to{transform:none;opacity:1}}@keyframes mj-cutin-vertical{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes mj-cutin-ring{0%{opacity:0;transform:scale(.55)}30%{opacity:1}to{opacity:0;transform:scale(1.25)}}@keyframes mj-cutin-streak{0%{transform:translate(0);opacity:0}25%{opacity:1}to{transform:translate(320%);opacity:0}}@media(prefers-reduced-motion:reduce){.mj-cutin,.mj-cutin *{animation:none!important}.mj-cutin-streaks,.mj-cutin-ring{display:none}}.mj-portrait{display:block;position:relative;overflow:hidden;min-width:0;isolation:isolate}.mj-portrait img,.mj-portrait svg{display:block;width:100%;height:100%}.mj-portrait--full{aspect-ratio:2/3}.mj-portrait--full img{object-fit:contain;object-position:center bottom;-webkit-user-select:none;user-select:none}.mj-portrait--avatar{aspect-ratio:1}.mj-portrait--avatar svg{overflow:hidden}.mj-hand{display:block;width:100%;height:100%;pointer-events:none;transform-origin:50% 100%;opacity:0}.mj-hand img{display:block;width:100%;height:100%;object-fit:contain;object-position:center bottom;-webkit-user-select:none;user-select:none}.mj-hand--active{animation:mj-character-discard .85s cubic-bezier(.2,.65,.3,1) both}@keyframes mj-character-discard{0%{opacity:0;transform:translateY(34%) rotate(3deg)}22%{opacity:1;transform:translateY(1%) rotate(-1deg)}42%{opacity:1;transform:translateY(0) rotate(0)}66%{opacity:1;transform:translateY(3%) rotate(1deg)}to{opacity:0;transform:translateY(39%) rotate(4deg)}}.reduce-motion .mj-hand,.mj-hand.reduce-motion{animation:none!important;opacity:0!important}@media(prefers-reduced-motion:reduce){.mj-hand{animation:none!important;opacity:0!important}}.mj-settlement-backdrop{padding:18px;background:#07131ce8;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.mj-result.mj-settlement{width:min(1320px,100%);height:min(860px,calc(100dvh - 36px));max-height:calc(100dvh - 36px);padding:0;display:flex;flex-direction:column;overflow:hidden;border:1px solid #d9bf805e;background:linear-gradient(130deg,#1a3947,#172840 70%);box-shadow:0 25px 110px #0008;color:#f4efe5;isolation:isolate}.mj-settlement-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 26px;border-bottom:1px solid #dbc6903b;flex-shrink:0;background:#0f203581}.mj-settlement-header>div>span{font-size:12px;letter-spacing:2px;color:#d8c694}.mj-result.mj-settlement h2{font:700 25px/1.4 Microsoft YaHei,sans-serif;letter-spacing:1px;margin:4px 0 0;color:#fff3d5}.mj-settlement-steps{display:flex;align-items:center;gap:10px;font-size:12px;color:#8eabb6;white-space:nowrap}.mj-settlement-steps b{font-weight:500}.mj-settlement-steps b.active{color:#f6dc9a}.mj-settlement-body{min-height:0;flex:1;overflow-y:auto;overflow-x:hidden;scrollbar-color:#bda76c #132a3c}.mj-winner-detail{display:grid;grid-template-columns:minmax(260px,.82fr) minmax(0,1.4fr);min-height:100%}.mj-settlement-portrait{position:relative;min-height:410px;overflow:hidden;background:radial-gradient(ellipse at 50% 42%,#91bad347,transparent 65%)}.mj-settlement-portrait:before{content:"";position:absolute;inset:15% 5% 14% 9%;border:1px solid #e0c67c32;transform:rotate(-8deg);background:linear-gradient(140deg,#c9b57719,transparent)}.mj-settlement-portrait>img{position:absolute;width:100%;height:100%;inset:0;object-fit:contain;padding:16px 14px 76px;filter:drop-shadow(0 10px 20px #081724aa)}.mj-settlement-portrait>div{position:absolute;bottom:22px;left:24px;right:8px;padding:18px 22px;background:linear-gradient(90deg,#071b2cec,transparent);border-left:3px solid #e0c079}.mj-settlement-portrait span,.mj-settlement-portrait strong,.mj-settlement-portrait small{display:block}.mj-settlement-portrait span{color:#ceb887;font-size:12px;letter-spacing:3px}.mj-settlement-portrait strong{font:700 31px/1.5 Microsoft YaHei,sans-serif;color:#fff1d3}.mj-settlement-portrait small{font-size:13px;color:#dce5e6}.mj-winner-sheet{display:flex;flex-direction:column;justify-content:center;gap:22px;padding:25px 28px 24px 8px;min-width:0}.mj-settlement-label{display:block;font-size:12px;letter-spacing:2px;color:#d4c69e;margin-bottom:9px}.mj-settlement-tiles{display:flex;align-items:center;gap:3px;flex-wrap:wrap;min-width:0}.mj-settlement-tiles .mj-tile{--rt:44px;width:44px;height:66px;flex:0 0 44px;box-shadow:0 3px #58a8b6,0 4px 3px #0005;border-radius:3px}.mj-settlement-meld{display:inline-flex;align-items:center;gap:2px;margin-left:6px;padding:4px 0;border-bottom:2px solid #839e9c}.mj-settlement-tiles .mj-tile.sideways{width:62px;height:44px;flex-basis:62px}.mj-settlement-winning{position:relative;display:inline-flex;margin-left:10px;outline:1px solid #ebcb7f;outline-offset:4px}.mj-settlement-winning small{position:absolute;right:-7px;top:-11px;background:#a73248;color:#fff5dc;font-size:10px;border-radius:2px;padding:1px 3px}.mj-settlement-indicators{display:flex;gap:26px;flex-wrap:wrap;padding:12px 0;border-bottom:1px solid #e2d1aa30}.mj-settlement-indicators section{min-width:120px}.mj-settlement-indicators section>span{display:block;font-size:11px;color:#cfbd98;margin-bottom:8px}.mj-settlement-indicators section>div{display:flex;align-items:center;gap:3px;min-height:45px}.mj-settlement-indicators .mj-tile{--rt:34px;width:34px;height:51px;flex:0 0 34px;border-radius:3px;box-shadow:0 2px #579aa6}.mj-settlement-indicators small{font-size:12px;color:#91a7b8}.mj-settlement-yaku{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 23px}.mj-settlement-yaku>div{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:35px;padding:5px 8px 6px;border-bottom:1px solid #dbcfa840;background:linear-gradient(90deg,transparent,#0b22373b)}.mj-settlement-yaku span{font-size:17px;color:#f2e7d1;line-height:1.4;overflow-wrap:anywhere}.mj-settlement-yaku b{font-size:17px;color:#f9d588;white-space:nowrap}.mj-settlement-value{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;padding-top:10px}.mj-settlement-value>div:first-child>strong{display:block;color:#f7d791;font:700 clamp(26px,3vw,42px)/1.25 "KaiTi","STKaiti","Kaiti SC","Noto Serif CJK SC","Microsoft YaHei",serif;letter-spacing:2px}.mj-settlement-value>div:first-child>span{display:block;color:#dadaca;font-size:15px;margin-top:5px}.mj-settlement-value>div:last-child{text-align:right}.mj-settlement-value>div:last-child>span{display:block;color:#c4d1d3;font-size:12px}.mj-settlement-value b{display:block;color:#fff0c8;font:700 clamp(30px,3.5vw,48px)/1.2 Arial,sans-serif;white-space:nowrap}.mj-settlement-value b>small{font:500 15px Microsoft YaHei,sans-serif;margin-left:5px}.mj-settlement-value em{display:block;color:#b9cad2;font-style:normal;font-size:11px;margin-top:7px}.mj-settlement-footer{flex-shrink:0;padding:14px 24px;background:#0c1b2cee;border-top:1px solid #dfc68b38}.mj-settlement-footer-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.mj-settlement-footer-row>p{margin:0;line-height:1.5;font-size:12px;color:#aebfce}.mj-settlement-buttons{display:flex;gap:10px;align-items:center;flex-shrink:0}.mj-settlement-error.mj-error{margin:0 0 10px;padding:9px 13px;display:flex;justify-content:space-between;gap:12px;font-size:12px}.mj-settlement-draw{min-height:100%;padding:35px 24px;text-align:center;display:flex;flex-direction:column;justify-content:center;align-items:center}.mj-draw-seal{width:98px;height:98px;border:1px solid #bdad7c66;border-radius:50%;display:grid;place-items:center;color:#dfc687;background:#adc0b20a;margin-bottom:18px}.mj-settlement-draw>span{font-size:13px;letter-spacing:5px;color:#c8c2a0}.mj-settlement-draw h3{font-size:33px;color:#f4e8c7;margin:10px 0 12px}.mj-settlement-draw p{font-size:14px;color:#bbcbd1;line-height:1.7;margin:0 0 28px;max-width:620px}.mj-draw-seats{display:flex;justify-content:center;gap:32px}.mj-draw-seats>div{min-width:92px}.mj-draw-seats .mj-portrait{width:75px;height:75px;border:1px solid #ceb8816b;margin:auto}.mj-draw-seats b,.mj-draw-seats span{display:block}.mj-draw-seats b{font-size:14px;margin:9px 0 5px}.mj-draw-seats span{font-size:12px;color:#d3c7a4}.mj-points-scene{padding:12px 28px 14px;min-height:100%;display:flex;flex-direction:column;justify-content:center}.mj-score-table{position:relative;height:clamp(430px,49vh,540px);flex-shrink:0;background:radial-gradient(ellipse at 50% 48%,#3b636940,#203e4d26 63%,transparent 70%);border:1px solid #bdba8b30;border-radius:50%;margin:3px 15px 12px}.mj-score-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:6px;width:126px;color:#dfc487;background:#112c3d;border:1px solid #d2b87779;padding:9px 7px;box-shadow:inset 0 0 0 4px #b49a6130}.mj-score-center b{font-size:16px}.mj-score-center span{font-size:10px;color:#afbec5;text-align:center}.mj-score-seat{position:absolute;transform:translate(-50%,-50%);width:245px;display:grid;grid-template-columns:65px 1fr;column-gap:12px;padding:13px 16px;background:linear-gradient(120deg,#183a54,#1a293d);border:1px solid #cdb47c8f;border-radius:5px;box-shadow:0 12px 20px #07141d5c}.mj-score-seat.score-self{left:50%;top:83%}.mj-score-seat.score-right{left:81%;top:50%}.mj-score-seat.score-top{left:50%;top:17%}.mj-score-seat.score-left{left:19%;top:50%}.mj-score-seat>.mj-portrait{width:65px;height:70px;grid-row:1/4;border:1px solid #e8d69a68;border-radius:3px}.mj-score-name{min-width:0}.mj-score-name b{display:block;font-size:14px;color:#f9ebcc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mj-score-name small{display:block;font-size:10px;color:#b4c6cf;margin-top:3px}.mj-score-current{font:700 29px/1.15 Arial,sans-serif;color:#fff5da;letter-spacing:-.4px;margin-top:3px}.mj-score-delta{position:absolute;right:14px;bottom:27px;font:700 15px Arial,sans-serif;color:#bfd1d9}.mj-score-seat.gain .mj-score-delta{color:#a5efb9}.mj-score-seat.loss .mj-score-delta{color:#ffacaa}.mj-score-before{display:flex;align-items:center;justify-content:flex-end;gap:5px;grid-column:1/-1;color:#b8c9d2;font:11px Arial,Microsoft YaHei,sans-serif;margin-top:8px}.mj-point-arrows{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.mj-point-arrows>path{fill:none;stroke:currentColor;stroke-width:.6;vector-effect:non-scaling-stroke;stroke-width:3;opacity:.7}.mj-point-arrows .gain{color:#a7e6c2}.mj-point-arrows .loss{color:#e7a0a6}.mj-point-arrows .flowing{stroke-dasharray:9 5;animation:mj-settle-flow 1s linear infinite}.mj-points-notes{text-align:center;color:#b7c9d1;font-size:11px}.mj-points-notes>p{display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap;margin:9px 0 2px;font-size:12px;color:#d4c59e}.mj-points-notes b{font-weight:500;color:#ebd69c}.mj-points-notes p>span{color:#b4c7d0}.mj-final-summary{display:flex;align-items:center;justify-content:center;gap:9px;color:#d9c38c;font-size:13px;margin-top:13px}.mj-final-summary span{font-size:12px;color:#c0ced3}@keyframes mj-settle-flow{to{stroke-dashoffset:-28}}.settlement-reduced .flowing{animation:none;stroke-dasharray:none}@media(max-width:1200px){.mj-settlement-header{padding:13px 20px}.mj-result.mj-settlement h2{font-size:22px}.mj-winner-detail{grid-template-columns:minmax(235px,.75fr) minmax(0,1.6fr)}.mj-winner-sheet{gap:15px;padding:20px 22px 20px 5px}.mj-settlement-tiles .mj-tile{width:38px;height:57px;flex-basis:38px}.mj-settlement-tiles .mj-tile.sideways{width:54px;height:38px;flex-basis:54px}.mj-settlement-tiles{gap:2px}.mj-settlement-meld{margin-left:4px}.mj-settlement-yaku{gap:7px 15px}.mj-settlement-yaku span,.mj-settlement-yaku b{font-size:15px}.mj-settlement-yaku>div{min-height:29px}.mj-score-seat{width:210px;padding:11px 12px;grid-template-columns:56px 1fr;column-gap:10px}.mj-score-seat>.mj-portrait{width:56px;height:63px}.mj-score-current{font-size:25px}.mj-score-delta{font-size:13px;right:12px;bottom:25px}.mj-score-name b{font-size:13px}.mj-score-before{font-size:10px}.mj-score-center{width:111px}.mj-points-scene{padding-inline:14px}.mj-score-table{margin-inline:5px}}@media(max-height:750px){.mj-settlement-header{padding-block:10px}.mj-settlement-header>div>span{font-size:10px}.mj-settlement-body .mj-winner-detail{min-height:430px}.mj-settlement-portrait{min-height:400px}.mj-winner-sheet{gap:13px}.mj-settlement-indicators{padding:8px 0;gap:20px}.mj-settlement-value{padding-top:3px}.mj-settlement-footer{padding:10px 18px}.mj-settlement-footer-row>p{font-size:11px}.mj-score-table{height:415px}.mj-score-center{padding-block:9px}.mj-settlement-indicators .mj-tile{width:30px;height:45px;flex-basis:30px}.mj-points-scene{padding-block:8px}.mj-settlement-draw{padding:22px}.mj-draw-seal{width:75px;height:75px;margin-bottom:9px}.mj-settlement-draw h3{font-size:27px}.mj-settlement-draw p{margin-bottom:20px}}@media(max-width:800px){.mj-settlement-backdrop{padding:8px}.mj-result.mj-settlement{height:calc(100dvh - 16px);max-height:calc(100dvh - 16px)}.mj-settlement-steps{display:none}.mj-winner-detail{grid-template-columns:1fr}.mj-settlement-portrait{min-height:270px;height:270px}.mj-settlement-portrait>img{padding-bottom:10px}.mj-settlement-portrait>div{left:10px;right:auto;bottom:10px;max-width:45%;padding:10px}.mj-settlement-portrait strong{font-size:22px}.mj-winner-sheet{padding:15px}.mj-settlement-footer-row{align-items:flex-end}.mj-settlement-footer-row>p{max-width:40%}.mj-settlement-buttons{gap:5px}.mj-settlement-buttons>button{padding:9px 11px!important;font-size:12px!important}.mj-score-seat{width:166px;grid-template-columns:43px 1fr;padding:9px;column-gap:7px}.mj-score-seat>.mj-portrait{width:43px;height:53px}.mj-score-current{font-size:21px}.mj-score-name b{font-size:11px}.mj-score-name small{font-size:9px}.mj-score-delta{position:static;grid-column:2;font-size:12px;margin-top:3px}.mj-score-before{font-size:9px}.mj-score-seat.score-left{left:20%}.mj-score-seat.score-right{left:80%}.mj-score-center{width:90px}.mj-score-center b{font-size:13px}.mj-score-center span{font-size:8px}.mj-draw-seats{gap:13px}.mj-draw-seats>div{min-width:60px}.mj-draw-seats .mj-portrait{width:57px;height:57px}}@media(prefers-reduced-motion:reduce){.mj-point-arrows .flowing{animation:none;stroke-dasharray:none}}:root{--cw:84px}.playing-card{--card-red:#d3304b;--card-black:#1c2333;position:relative;display:block;flex:none;width:var(--cw);aspect-ratio:5/7;padding:0;border:0;border-radius:calc(var(--cw)*.09);background:linear-gradient(160deg,#fffdf8,#fbf6ea 60%,#f1e9d7);box-shadow:0 1px #ffffffe6 inset,0 0 0 1px #1e1e2829,0 calc(var(--cw)*.04) calc(var(--cw)*.1) #00000052;color:var(--card-black);font-size:calc(var(--cw)*.2);line-height:1;user-select:none;-webkit-user-select:none;overflow:hidden;transition:transform var(--t) var(--ease),box-shadow var(--t),filter var(--t)}.playing-card.is-red{color:var(--card-red)}.playing-card .suit-icon{fill:currentColor}.pc-corner{position:absolute;display:grid;justify-items:center;gap:calc(var(--cw)*.015);width:calc(var(--cw)*.27)}.pc-corner--tl{top:calc(var(--cw)*.06);left:calc(var(--cw)*.045)}.pc-corner--br{right:calc(var(--cw)*.045);bottom:calc(var(--cw)*.06);transform:rotate(180deg)}.pc-rank{display:block;font:800 calc(var(--cw)*.27)/.95 var(--font-num);letter-spacing:-.04em}.is-ten .pc-rank{letter-spacing:-.1em;font-size:calc(var(--cw)*.235);margin-left:-.06em}.is-joker .pc-rank{font-family:var(--font-sans);font-size:calc(var(--cw)*.2);font-weight:900;writing-mode:vertical-rl;letter-spacing:0}.pc-corner .suit-icon{width:calc(var(--cw)*.17);height:calc(var(--cw)*.17)}.is-joker .pc-corner .suit-icon{width:calc(var(--cw)*.14);height:calc(var(--cw)*.14)}.pc-face{position:absolute;inset:calc(var(--cw)*.13) calc(var(--cw)*.24) calc(var(--cw)*.13);display:grid;place-items:center}.pc-pips{position:relative;width:100%;height:100%}.pc-pips i{position:absolute;display:block;width:calc(var(--cw)*.2);height:calc(var(--cw)*.2);transform:translate(-50%,-50%)}.pc-pips .suit-icon{width:100%;height:100%}.pc-pips .is-flipped{transform:rotate(180deg)}.pc-ace .suit-icon{width:calc(var(--cw)*.5);height:calc(var(--cw)*.5);filter:drop-shadow(0 calc(var(--cw)*.01) 0 rgba(0,0,0,.08))}.pc-court{position:relative;display:grid;place-items:center;width:100%;height:100%}.pc-court svg{position:absolute;inset:0;width:100%;height:100%}.pc-court-frame{fill:none;stroke:currentColor;stroke-width:1.6;opacity:.35}.pc-court-crown{fill:var(--gold);stroke:#8a6420;stroke-width:1;stroke-linejoin:round}.pc-court-gem{fill:currentColor}.pc-court b{position:relative;margin-top:calc(var(--cw)*.12);font:900 calc(var(--cw)*.34)/1 var(--font-display)}.pc-court-suit{position:absolute;bottom:14%;width:calc(var(--cw)*.14);height:calc(var(--cw)*.14)}.pc-joker{display:grid;place-items:center;gap:calc(var(--cw)*.04)}.pc-joker-star{width:calc(var(--cw)*.42);height:calc(var(--cw)*.42);fill:currentColor}.is-joker:not(.is-red) .pc-joker-star{fill:#3b4560}.is-joker.is-red .pc-joker-star{fill:#e2a62d;filter:drop-shadow(0 0 2px rgba(226,166,45,.6))}.pc-joker b{font:900 calc(var(--cw)*.13)/1 var(--font-num);letter-spacing:.12em}.playing-card.is-back{background:linear-gradient(145deg,#1f6a5a,#0f3d34);box-shadow:0 0 0 1px #00000059,0 calc(var(--cw)*.04) calc(var(--cw)*.1) #00000059}.pc-back{position:absolute;inset:calc(var(--cw)*.06);display:grid;place-items:center;border-radius:calc(var(--cw)*.06);border:calc(var(--cw)*.018) solid rgba(233,197,125,.75);background:repeating-linear-gradient(45deg,rgba(255,255,255,.07) 0 calc(var(--cw)*.04),transparent calc(var(--cw)*.04) calc(var(--cw)*.08)),radial-gradient(circle at 50% 50%,#2a8a73,#124a3f 70%)}.pc-back-emblem{display:grid;place-items:center;width:calc(var(--cw)*.42);height:calc(var(--cw)*.42);border-radius:50%;background:radial-gradient(circle,#f7deaa,#d7ad5e);box-shadow:0 0 0 calc(var(--cw)*.02) #0f3d34cc}.pc-back-emblem .suit-icon{width:58%;height:58%;fill:#0f3d34}button.playing-card{cursor:pointer}button.playing-card:disabled{cursor:default}.playing-card.is-selected{transform:translateY(calc(var(--cw)*-.22));box-shadow:0 0 0 calc(var(--cw)*.03) var(--gold),0 calc(var(--cw)*.12) calc(var(--cw)*.22) #e9c57d61}.playing-card.is-dimmed{filter:brightness(.62) saturate(.6)}.playing-card.is-dimmed.is-selected{filter:none}.playing-card.is-sweep-candidate{transform:translateY(calc(var(--cw)*-.1));box-shadow:0 0 0 calc(var(--cw)*.03) var(--sky),0 calc(var(--cw)*.08) calc(var(--cw)*.16) #72b7ff59}@media(hover:hover){button.playing-card:not(:disabled):not(.is-selected):hover{transform:translateY(calc(var(--cw)*-.07))}}button.playing-card:focus-visible{box-shadow:0 0 0 calc(var(--cw)*.035) var(--sky),0 calc(var(--cw)*.08) calc(var(--cw)*.2) #0006}.club-history{--archive-ink:#f0e7d6;--archive-muted:#adb9cb;--archive-line:#cfb27430;--archive-gold:#efd293;color:var(--archive-ink);background:linear-gradient(135deg,#25344b,#172338 70%);border:1px solid #bb9f655c;border-radius:14px;padding:23px;min-width:0;box-shadow:0 12px 32px #09213a1c}.club-history h3,.club-history h4,.club-history p{margin:0}.club-history h3,.club-history h4{font-family:Microsoft YaHei UI,Microsoft YaHei,sans-serif;letter-spacing:0;font-weight:600;color:var(--archive-ink)}.club-history button{font:inherit;color:inherit}.club-history button:focus-visible,.club-history summary:focus-visible{outline:3px solid var(--archive-gold);outline-offset:3px}.archive-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.archive-eyebrow{display:block;font-size:9px;letter-spacing:2px;color:#c4ae85;margin-bottom:8px}.club-history .archive-heading h3{font-size:21px;display:flex;align-items:center;gap:9px}.archive-heading h3 svg{color:var(--archive-gold)}.archive-count{font:25px Georgia,serif;color:var(--archive-gold);white-space:nowrap}.club-history .archive-note{font-size:12px;line-height:1.8;color:var(--archive-muted);margin-top:12px}.archive-list{display:grid;gap:8px;margin-top:18px}.archive-choice{display:flex;align-items:center;gap:12px;text-align:left;padding:13px 14px;border:1px solid var(--archive-line);border-radius:8px;background:#101b2c7a;width:100%;min-width:0}.archive-choice:hover{background:#33435b}.archive-choice.is-active{background:linear-gradient(90deg,#65583e6b,#34465b77);border-color:#d4b877;box-shadow:inset 3px 0 #e7c686}.archive-result-mark{flex:0 0 36px;width:36px;height:38px;border-radius:7px;display:grid;place-items:center;background:#44546b;color:#c8d2e2}.archive-result-mark.is-win{background:#645739;color:#f9d795}.archive-choice-copy{min-width:0;flex:1}.archive-choice-copy>b{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:14px;font-weight:600}.archive-choice-copy em{font-size:9px;font-style:normal;color:#f4d290;border:1px solid #d5b37466;border-radius:3px;padding:1px 4px}.archive-choice-copy small{display:flex;align-items:center;gap:5px;color:#adb9cb;font-size:11px;margin-top:7px}.archive-choice-meta{text-align:right;flex-shrink:0}.archive-choice-meta b{display:block;font-size:14px;color:#f1d69f}.archive-choice-meta small{display:block;font-size:10px;color:#c1c9d6;margin-top:6px}.archive-choice-arrow{color:#d6bc86;flex-shrink:0}.archive-detail{margin-top:24px;padding-top:22px;border-top:1px solid var(--archive-line);min-width:0}.archive-detail-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.archive-detail-heading>div>span{font-size:10px;color:#b4c0d2;letter-spacing:1px}.club-history .archive-detail-heading h4{font-size:20px;margin-top:7px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.archive-detail-heading h4 small{font-size:10px;color:#e0c38d;font-weight:400;background:#cdb37513;padding:4px 7px;border:1px solid var(--archive-line);border-radius:3px}.archive-detail-tag{font-size:10px;white-space:nowrap;border-radius:20px;padding:7px 10px;background:#42576b8c;color:#d7e6ef}.club-history .archive-result-text{font-size:13px;line-height:1.8;color:#e8d5aa;margin-top:15px;overflow-wrap:anywhere}.club-history .archive-snapshot-note{font-size:11px;color:#afbcd0;line-height:1.8;margin-top:14px}.archive-facts{display:flex;flex-wrap:wrap;gap:9px 20px;font-size:11px;color:#acbace;margin:15px 0}.archive-facts b{font-weight:500;color:#e8ddc7}.archive-players{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.archive-player{background:#111d2c80;border:1px solid var(--archive-line);padding:14px;border-radius:8px;min-width:0}.archive-player>header{display:flex;align-items:center;gap:10px;margin-bottom:14px}.archive-avatar,.archive-player .mj-portrait,.archive-standings .mj-portrait{display:block;width:44px;height:44px;flex:0 0 44px;border-radius:7px;overflow:hidden;background:#5e667d;border:1px solid #c4aa7466}.archive-avatar-fallback{display:grid;place-items:center;font-size:19px;color:#faeac6;background:#4a5b70}.archive-player header>div{min-width:0;flex:1}.archive-player header b{display:block;font-size:13px;overflow-wrap:anywhere}.archive-player em,.archive-standings em{font-style:normal;font-size:9px;font-weight:400;color:#f6d495;border:1px solid #d0b27a66;padding:1px 3px;border-radius:3px;margin-left:6px;white-space:nowrap}.archive-player header small{display:block;font-size:10px;color:#aebbcf;margin-top:5px;font-weight:400}.archive-player header>strong{text-align:right;flex-shrink:0;font:19px Georgia,serif;color:#eed199}.archive-player header>strong small{font:10px Microsoft YaHei UI,sans-serif;color:#b7c0d0}.archive-label{display:block;color:#c4bdad;font-size:10px;margin:10px 0 8px}.archive-label small{font-size:9px;color:#a9b7ca;margin-left:5px}.archive-poker-cards,.archive-tiles{display:flex;flex-wrap:wrap;align-items:center;gap:5px;padding-bottom:4px;min-width:0}.club-history .archive-poker-cards .playing-card{width:43px;min-width:43px;height:63px;margin:0;border-radius:4px;box-shadow:0 2px #8a908a,0 4px 5px #020f2433;cursor:default;transform:none!important}.club-history .archive-poker-cards .card-corner{top:4px;left:4px;font:700 18px/1 Arial,sans-serif;gap:3px}.club-history .archive-poker-cards .card-corner i{font-size:17px;line-height:1;margin:0}.club-history .archive-poker-cards .card-bottom{display:none}.club-history .archive-poker-cards .card-pip{font-size:22px;inset:auto 4px 4px auto;transform:none}.club-history .archive-poker-cards .is-joker .card-rank{font-size:13px;letter-spacing:1px}.club-history .archive-poker-cards .is-joker .card-suit{font-size:13px}.club-history .archive-poker-cards .is-joker .card-pip{font-size:15px}.archive-none{font-size:11px;color:#a8b5c9;line-height:1.8}.archive-poker-layout>section+section{margin-top:13px}.archive-fold{border:1px solid var(--archive-line);border-radius:7px;background:#111e2f69;margin-top:12px;min-width:0;overflow:hidden}.archive-fold>summary{display:flex;align-items:center;gap:10px;padding:13px 14px;cursor:pointer;list-style:none;font-size:12px;color:#e1d7c3;min-height:44px}.archive-fold>summary::-webkit-details-marker{display:none}.archive-fold>summary>span{font-size:10px;color:#acbacd}.archive-fold>summary>svg{margin-left:auto;color:#d8be89;transition:transform .15s}.archive-fold[open]>summary>svg{transform:rotate(180deg)}.archive-fold>summary>b{font-size:12px;font-weight:500;overflow-wrap:anywhere}.archive-fold>.archive-poker-cards{padding:0 14px 16px}.archive-fold[open]>summary{border-bottom:1px solid var(--archive-line)}.archive-fold[open]>.archive-poker-cards{padding-top:15px}.club-history .archive-log-note{font-size:10px;color:#aebcd0;padding:13px 15px 0}.archive-log{max-height:280px;overflow:auto;margin:10px 0 0;padding:0 22px 15px 38px;color:#c8d0dc;font-size:12px;line-height:1.9;overflow-wrap:anywhere}.archive-log li{padding:4px 0}.archive-log li+li{border-top:1px solid #a5b7d512}.archive-fold>.archive-none{padding:10px 15px}.archive-legacy{display:flex;align-items:flex-start;gap:10px;background:#ccb5790c;border-left:2px solid #b69a68;padding:15px;margin-top:19px!important;color:#d4c7ad;font-size:12px;line-height:1.8}.archive-legacy svg{margin-top:2px;color:#d1b67d}.archive-empty{padding:35px 10px 22px;display:flex;flex-direction:column;align-items:center;gap:15px;text-align:center;color:#d1bd93}.archive-empty b{font-size:15px;font-weight:500}.club-history .archive-empty p{font-size:12px;color:#b2bfd0;line-height:1.8}.archive-standings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:18px 0}.archive-standings>div{display:flex;align-items:center;gap:9px;background:#1020358c;border:1px solid var(--archive-line);border-radius:7px;padding:11px;min-width:0}.archive-standings .is-self{border-color:#d6b8797a;background:#b79c4e12}.archive-rank{font:24px Georgia,serif;color:#d4c5a3;flex-shrink:0}.archive-rank small{font:9px Microsoft YaHei UI,sans-serif;margin-left:1px}.archive-standings .mj-portrait{width:36px;height:40px;flex-basis:36px}.archive-standings>div>b{flex:1;min-width:0;font-size:12px;font-weight:500;overflow-wrap:anywhere}.archive-standings>div>strong{font:20px Georgia,serif;color:#f1d79f;white-space:nowrap}.archive-standings>div>strong small{font:9px Microsoft YaHei UI,sans-serif;color:#b7c0d0;margin-left:3px}.club-history .archive-rounds>h4{font-size:14px;margin-top:23px}.archive-rounds>h4 small{font-size:10px;color:#aab8cc;font-weight:400;margin-left:10px}.archive-fold>summary>.archive-round-number{white-space:nowrap;color:#d7bd89;font-size:10px}.archive-round-body{padding:0 14px 14px}.club-history .archive-round-deltas{display:flex;gap:9px 18px;flex-wrap:wrap;padding:14px 0;font-size:11px;color:#b7c2d2}.archive-round-deltas>span{display:flex;gap:7px}.archive-round-deltas b{color:#c2cbd7;font-weight:500;font-variant-numeric:tabular-nums}.archive-round-deltas .is-positive{color:#8be1bf}.archive-round-deltas .is-negative{color:#f4a5ac}.archive-win{padding:14px 0 0;border-top:1px solid var(--archive-line)}.archive-win+.archive-win{margin-top:16px}.archive-win>header{display:flex;gap:12px;align-items:center;justify-content:space-between;margin-bottom:13px}.archive-win>header>div>b{font-size:14px;color:#f0dcc0;display:block}.archive-win>header>div>span{font-size:10px;color:#c0c6d2;display:block;margin-top:5px}.archive-win>header>strong{text-align:right;font-size:17px;color:#f0cf89;font-weight:600}.archive-win>header>strong small{font-size:10px;color:#ceb887;display:block;margin-top:4px;font-weight:400}.club-history .mj-tile{--rt:32px;box-shadow:0 3px #929a91,1px 4px 2px #06102066}.archive-winning-hand{display:flex;align-items:flex-end;flex-wrap:wrap;gap:10px}.archive-winning-hand .archive-tiles{gap:3px}.archive-winning-tile{display:flex;align-items:center;gap:5px;align-self:flex-end;margin-bottom:4px}.archive-winning-tile>small{color:#f4d592;font-size:11px}.archive-melds{display:flex;align-items:flex-end;gap:13px;flex-wrap:wrap}.archive-melds .archive-label{margin:0 0 5px}.archive-yaku{display:flex;flex-wrap:wrap;gap:6px;margin-top:15px}.archive-yaku>span{font-size:11px;color:#d3dbe5;background:#34516b66;border-radius:4px;padding:7px 9px}.archive-yaku b{margin-left:12px;color:#ecd09a;font-weight:500}.archive-win-total{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding-top:14px;font-size:11px;color:#aebcd1}.archive-win-total b{font-size:16px;color:#f1d69c;margin-left:5px;white-space:nowrap}.archive-win-total>small{font-size:10px}.archive-win-indicators{display:flex;gap:18px;flex-wrap:wrap;margin-top:10px}.archive-win-indicators .mj-tile{--rt:26px}.club-history .archive-draw-note{font-size:12px;line-height:1.9;color:#c5cddb;padding:10px 0;overflow-wrap:anywhere}.archive-terminal{padding:0 13px 14px}.archive-terminal .archive-player{margin-top:12px}.archive-terminal .archive-player+.archive-player{margin-top:14px}.archive-terminal .archive-player>.archive-melds{margin-top:12px}.archive-indicators{margin:14px 0}.archive-river{display:grid;grid-template-columns:repeat(6,32px);gap:5px;padding-bottom:4px;width:max-content;max-width:100%}.archive-river .mj-tile.highlighted{box-shadow:0 0 0 2px #edc271,0 3px #929a91}.archive-river .mj-tile.called{opacity:.42}.club-history--mahjong{border-radius:9px;box-shadow:none;padding:19px;background:#1523387a}.club-history--mahjong .archive-players{grid-template-columns:1fr}@media(max-width:740px){.club-history{padding:17px}.archive-players,.archive-standings{grid-template-columns:1fr}.archive-standings>div>strong{margin-left:auto}.archive-choice{gap:9px;padding:12px 10px}.archive-choice-copy>b{font-size:13px}.archive-choice-copy small{font-size:10px}.archive-result-mark{flex-basis:31px;width:31px;height:34px}.archive-choice-meta b{font-size:12px}.archive-choice-meta small{font-size:9px}.archive-choice-arrow{display:none}.club-history .archive-detail-heading h4{font-size:18px}.archive-fold>summary{gap:7px;padding:12px 10px}.archive-round-body{padding:0 10px 12px}.club-history--mahjong{padding:15px}.archive-player{padding:11px}.archive-player>header{gap:8px}.archive-player header>strong{font-size:18px}.archive-choice-copy em{display:none}.archive-player .mj-portrait,.archive-avatar{width:39px;height:39px;flex-basis:39px}.archive-terminal{padding:0 9px 11px}}@media(max-width:430px){.club-history{padding:13px}.archive-choice{flex-wrap:wrap;gap:8px}.archive-choice-copy{flex-basis:calc(100% - 40px)}.archive-choice-meta{display:flex;gap:12px;align-items:center;margin-left:39px;text-align:left}.archive-choice-meta small{margin:0;font-size:10px}.archive-choice-meta b{font-size:11px}.archive-detail-tag{font-size:9px;padding:6px 8px}.archive-player header>strong{font-size:16px}.archive-player header b{font-size:12px}.archive-river{grid-template-columns:repeat(6,28px);gap:4px}.archive-river .mj-tile{--rt:28px}.archive-terminal{padding:0 7px 10px}.archive-rounds .archive-fold>summary{flex-wrap:wrap}.archive-rounds .archive-fold>summary>b{flex:1}.archive-winning-hand{gap:7px}.club-history .archive-terminal .archive-tiles .mj-tile{--rt:29px}}@media(prefers-reduced-motion:reduce){.club-history button,.archive-fold>summary>svg{transition:none}}.club-history .archive-final-award{font-size:11px;line-height:1.9;color:#e1c691;background:#d3b26a0c;border-left:2px solid #cbae6f;padding:10px 13px;margin:12px 0 17px;overflow-wrap:anywhere}.archive-river>.archive-none{grid-column:1/-1;white-space:nowrap}.archive-series{padding:12px 16px}.archive-series>p,.archive-series section>p{font-size:13px;line-height:1.6;color:#d7dfdf}.archive-series section{padding:12px 0;border-top:1px solid #a2bdc340}.archive-series section>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:8px}.archive-series section span{display:flex;flex-direction:column;gap:5px;font-size:13px}.archive-series section strong{font-size:17px;color:#ffe1a0}.mj-app{--mj-ink:#eee8dc;--mj-muted:#b8b5cb;--mj-gold:#e5c990;--mj-line:#e5c99035;min-height:100dvh;color:var(--mj-ink);background:#171c32;font-family:inherit}.mj-app button{font:inherit;cursor:pointer}.mj-app button:disabled{cursor:default;opacity:.45}.mj-app button:focus-visible{outline:2px solid #f4d588;outline-offset:4px}.mj-header{position:relative;z-index:8;height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 34px;background:linear-gradient(180deg,#171c32fa,#171c32e6);border-bottom:1px solid var(--mj-line)}.mj-home,.mj-header-tools button{display:flex;gap:9px;align-items:center;color:#d7d4e1;border:0;background:none;padding:11px}.mj-header-tools{display:flex;align-items:center;gap:10px}.mj-header-tools button:hover,.mj-home:hover{color:var(--mj-gold)}.mj-brand{display:flex;align-items:center;gap:12px;position:absolute;left:50%;transform:translate(-50%)}.mj-brand>span{display:grid;place-items:center;width:40px;height:44px;background:linear-gradient(150deg,#d9c18d,#a38154);color:#26324a;border-radius:8px 2px;font-size:25px;font-family:serif;box-shadow:0 3px 15px #0005}.mj-brand b{font-size:23px;letter-spacing:5px;font-weight:500}.mj-brand small{font-size:8px;letter-spacing:2px;color:#cdb889;display:block;margin-top:5px}.mj-lobby{position:relative;min-height:calc(100dvh - 82px);overflow:hidden;display:grid;grid-template-columns:minmax(420px,1.1fr) minmax(470px,.9fr);isolation:isolate}.mj-lobby-bg{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#141b310d 20%,#141b3125,#171b38b3 74%,#171b38e6),url(./moon-pavilion-CkrgpTpp.webp) center/cover}.mj-lobby:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#101a30a8,transparent 40%);pointer-events:none}.mj-lobby-character{position:relative;min-height:820px}.mj-lobby-intro{position:absolute;top:48px;left:7%;z-index:2}.mj-lobby-intro>span{font-size:11px;letter-spacing:5px;color:#e0ccaa}.mj-lobby-intro h1{font-family:"Noto Serif SC",SimSun,serif;font-size:36px;line-height:1.65;letter-spacing:6px;font-weight:400;text-shadow:0 4px 24px #080d20;margin-top:14px}.mj-kanban{position:absolute!important;inset:12% 0 0!important;width:100%!important;height:87%!important;filter:drop-shadow(0 15px 20px #111a3c66)}.mj-kanban img{height:100%;width:100%;object-fit:contain;object-position:center bottom}.mj-kanban-caption{position:absolute;bottom:43px;left:10%;z-index:3;padding:18px 28px 18px 20px;min-width:230px;background:linear-gradient(90deg,#1c254be6,#1c254b99,transparent);border-left:2px solid var(--mj-gold);text-shadow:0 2px 12px #000}.mj-kanban-caption small{letter-spacing:4px;color:#d4c7a7;font-size:10px}.mj-kanban-caption h2{font-size:34px;font-family:serif;font-weight:400;letter-spacing:7px;margin:7px 0 15px}.mj-kanban-caption button{background:#1c29417a;color:#ebd5a1;border:1px solid #dbc29480;padding:10px 12px;display:flex;gap:12px;align-items:center;font-size:12px}.mj-lobby-menu{position:relative;padding:66px 8% 36px 3%;max-width:710px;align-self:center}.mj-menu-heading>span{letter-spacing:5px;font-size:10px;color:#ceb481}.mj-menu-heading h2{font-family:serif;font-size:27px;font-weight:400;margin:12px 0 9px;letter-spacing:2px}.mj-menu-heading p{font-size:12px;color:#c0c0d1;margin:0 0 28px}.mj-mode-cards{display:grid;gap:17px}.mj-mode-card{position:relative;display:flex;align-items:center;gap:22px;min-height:116px;width:100%;border:1px solid #dfc59070;background:linear-gradient(110deg,#30364bcf,#384054a6);color:inherit;text-align:left;padding:18px 25px;box-shadow:0 6px 20px #0a0e223b;transition:transform .2s,background .2s;overflow:hidden}.mj-mode-card:before{content:"";position:absolute;inset:6px;border:1px solid #e3c2841a;pointer-events:none}.mj-mode-card:hover{transform:translate(-6px);background:linear-gradient(110deg,#4d495f,#323c56)}.mj-mode-card.mode-sanma{background:linear-gradient(110deg,#314a58ed,#354053b3)}.mj-mode-card.mode-asura{background:linear-gradient(110deg,#51334bef,#322b45b8);border-color:#c792aa66}.mj-mode-mark{font-family:serif;font-size:43px;color:#ecd4a0;text-shadow:0 2px 14px #edb7633a;flex:0 0 44px}.mode-asura .mj-mode-mark{color:#e7a9b8}.mj-mode-copy{display:flex;flex-direction:column;gap:5px;flex:1}.mj-mode-copy>small{color:#cfbc96;font-size:9px;letter-spacing:3px}.mj-mode-copy>b{font-size:24px;font-family:serif;letter-spacing:3px;font-weight:500}.mj-mode-copy>em{font-size:11px;color:#d0cbd9;font-style:normal;margin-top:3px}.mj-mode-enter{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:10px;color:#d9c592}.mj-mode-enter>svg:last-child{margin-top:6px}.mj-lobby-note{display:flex;gap:12px;align-items:center;color:#ddc799;font-size:12px;margin:25px 0 19px}.mj-lobby-note small{display:block;color:#b7b7c5;margin-top:4px;font-size:10px}.mj-quick-cast{display:flex;gap:12px}.mj-quick-cast button{position:relative;padding:0 0 8px;flex:1;min-width:0;border:1px solid #a99d8555;color:#d6d1dc;background:#151d3977}.mj-quick-cast button.selected{border-color:#e3c489;color:#f6dbaa;background:#65525c88}.mj-quick-cast button>.mj-portrait{height:73px;width:100%}.mj-quick-cast button>span{display:block;font-size:11px;margin-top:6px}.mj-quick-cast button>svg{position:absolute;top:4px;right:4px;background:#dcc188;border-radius:50%;color:#28344c;padding:1px}.mj-resume{display:flex;align-items:center;gap:12px;border:1px solid #d8bd8070;background:#ead6a618;padding:13px 17px;color:#ecdaac;width:100%;margin-bottom:21px;text-align:left}.mj-resume span{flex:1}.mj-resume b,.mj-resume small{display:block}.mj-resume b{font-size:13px}.mj-resume small{font-size:10px;margin-top:4px;color:#c8bed4}.mj-petals{position:absolute;inset:0;pointer-events:none}.mj-petals i{position:absolute;color:#fad6b977;animation:mj-sparkle 6s ease-in-out infinite;font-style:normal}.mj-petals i:nth-child(1){left:12%;top:38%}.mj-petals i:nth-child(2){left:42%;top:19%;animation-delay:-2s}.mj-petals i:nth-child(3){left:48%;top:70%;animation-delay:-4s}@keyframes mj-sparkle{50%{transform:translate(8px,-15px) rotate(30deg);opacity:.2}}.mj-app .mj-gold-button,.mj-app .mj-secondary-button,.mj-app .mj-win-button{border:1px solid #dbbc79a8;min-height:40px;padding:10px 18px;display:inline-flex;align-items:center;justify-content:center;gap:9px;color:#243246;background:linear-gradient(160deg,#f1dca5,#c5a76e);font-size:13px;font-weight:600;white-space:nowrap}.mj-app .mj-secondary-button{background:#29344be6;color:#e0d7c4;border-color:#c2ba9a4d}.mj-app .mj-win-button{background:linear-gradient(150deg,#de95a3,#ae5a79);border-color:#f3acba;color:#fff6e4}.mj-app .mj-gold-button:hover{filter:brightness(1.08)}.mj-app .mj-gold-button.armed{background:#583641;color:#ffc8c8;border-color:#e99191}.mj-modal-backdrop,.mj-result-backdrop{position:fixed;inset:0;z-index:40;background:#080e22bf;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:26px}.mj-modal{position:relative;width:min(780px,100%);max-height:calc(100dvh - 52px);overflow:auto;background:linear-gradient(135deg,#273149,#161f35);border:1px solid #dbbf8366;color:#eae5de;box-shadow:0 30px 100px #0009;padding:36px 40px}.mj-modal-close{position:absolute;right:17px;top:15px;background:none;border:0;color:#dbcfb7;padding:8px}.mj-overline{font-size:10px;letter-spacing:4px;color:#d2b77e}.mj-modal h2{font-family:serif;font-weight:400;letter-spacing:2px;font-size:29px;margin:12px 0 15px}.mj-modal>p{color:#c1c0cc;line-height:1.9;font-size:13px}.mj-modal h3{font-size:14px;color:#e1cea8;margin:24px 0 12px;font-weight:500}.mj-setup-cast{display:flex;align-items:center;gap:15px;margin:24px 0;padding:15px;background:#101c3066;border:1px solid #d6c39822}.mj-setup-cast>.mj-portrait{height:65px;width:65px;border:1px solid #d0b48466}.mj-setup-cast>div:nth-child(2){flex:1}.mj-setup-cast b,.mj-setup-cast span{display:block}.mj-setup-cast span{font-size:11px;color:#b5b5ca;margin-top:5px}.mj-setup-cast>small{font-size:11px;color:#c9c0b1}.mj-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.mj-choices button{padding:15px 9px;color:#d3cfda;border:1px solid #d3bb8133;background:#172238}.mj-choices button.selected{border-color:#e2c480;background:#66564060;color:#ffe5b2;box-shadow:inset 0 0 16px #e4b76315}.mj-choices b,.mj-choices small{display:block}.mj-choices small{font-size:10px;color:#bcb5c5;margin-top:7px}.mj-modal-footer{display:flex;align-items:center;justify-content:space-between;margin-top:27px;padding-top:22px;border-top:1px solid #d8c69730}.mj-replace-note{font-size:11px!important;color:#d5b4a3!important}.mj-modal-characters{width:min(1150px,100%)}.mj-cast-gallery{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:25px}.mj-cast-gallery button{position:relative;border:1px solid #d4be9255;color:#e9dfce;background:linear-gradient(145deg,#3a3d5666,#101a33);padding:0 0 16px;min-width:0;overflow:hidden}.mj-cast-gallery button.selected{border-color:#eed49b;background:linear-gradient(145deg,#6d546055,#253c56)}.mj-cast-gallery .mj-portrait{height:350px;width:100%;padding:8px 0 0}.mj-cast-gallery b{font-size:20px;letter-spacing:3px;font-family:serif;display:block;margin-top:12px}.mj-cast-gallery button>span{display:block;font-size:10px;margin-top:7px;color:#cbbd9b}.mj-rules-list section{padding:4px 0 12px;border-bottom:1px solid #d8c49325}.mj-rules-list p{font-size:13px;line-height:1.9;color:#c7c4d1}.mj-rule-note{background:#d5c48e10;padding:14px 18px;font-size:12px!important;line-height:1.8;color:#d1c4ae!important;border-left:2px solid #bd9b62;margin-top:19px}.mj-history-row{display:flex;align-items:center;gap:17px;border-bottom:1px solid #d6bc8c25;padding:16px 0;font-size:13px}.mj-history-row>span{flex:1}.mj-history-row small{display:block;font-size:10px;color:#aeb0c4;margin-top:5px}.mj-current-record{max-height:250px;overflow:auto;padding:0 18px 12px;background:#0f192b8a}.mj-current-record p{font-size:12px;color:#c1bfd0;line-height:1.7}.mj-in-game{background:radial-gradient(ellipse at 50% 35%,#283d51,#142539 65%,#131c30)}.mj-in-game .mj-header{height:62px;padding:0 28px}.mj-in-game .mj-brand b{font-size:19px}.mj-in-game .mj-brand>span{width:33px;height:36px;font-size:22px}.mj-match{--board-size:min(680px, calc(100dvh - 360px) , calc(100vw - 340px) );--rt:clamp(17px,calc(var(--board-size)*.039),27px);max-width:1540px;margin:auto;padding:0 32px 17px}.mj-match-heading{height:60px;display:flex;align-items:center;justify-content:space-between}.mj-match-heading>div:first-child{display:flex;align-items:baseline;gap:14px}.mj-match-heading h1{font-family:serif;font-size:20px;font-weight:400;letter-spacing:3px;margin:0}.mj-match-heading>div:first-child>span{font-size:9px;letter-spacing:2px;color:#c6b281}.mj-match-heading em{font-size:11px;font-style:normal;color:#b9bed0}.mj-match-meta{display:flex;align-items:center;gap:24px;font-size:10px;color:#9faec1}.mj-match-meta b{font-weight:400;color:#d3c299;margin-left:7px}.mj-match-meta button{display:flex;align-items:center;gap:6px;font-size:11px;color:#c4cbd6;background:none;border:0}.mj-table-wrap{position:relative;height:var(--board-size);margin:0 auto;max-width:1290px}.mj-board{position:relative;width:var(--board-size);height:var(--board-size);margin:auto;border:10px solid #203545;border-radius:22px;background:radial-gradient(ellipse at 50% 42%,#315c65,#254b59 63%,#204353);box-shadow:0 0 0 2px #b3925966,inset 0 0 0 2px #d9b97844,inset 0 0 80px #071a344d,0 22px 60px #020e2199;isolation:isolate;overflow:hidden}.mj-board:before{content:"";position:absolute;inset:0;z-index:-1;opacity:.12;background-image:repeating-linear-gradient(45deg,transparent 0 2px,#edf4d909 2px 3px)}.mj-table-orbit{position:absolute;left:50%;top:50%;width:calc(var(--board-size)*1.18);height:calc(var(--board-size)*.94);transform:translate(-50%,-50%);border:1px solid #ddc89510;border-radius:50%;pointer-events:none}.mj-board-corner{position:absolute;width:20px;height:20px;border:1px solid #d5b97c77;pointer-events:none}.mj-board-corner.nw{top:12px;left:12px;border-right:0;border-bottom:0}.mj-board-corner.ne{top:12px;right:12px;border-left:0;border-bottom:0}.mj-board-corner.sw{bottom:12px;left:12px;border-right:0;border-top:0}.mj-board-corner.se{bottom:12px;right:12px;border-left:0;border-top:0}.mj-center{position:absolute;left:50%;top:50%;width:calc(var(--board-size)*.235);height:calc(var(--board-size)*.235);transform:translate(-50%,-50%);background:linear-gradient(145deg,#132b3be8,#203c4ef0);border:2px solid #b59b63;box-shadow:0 4px 13px #10203299,inset 0 0 0 4px #a78b5c25;text-align:center;display:flex;flex-direction:column;justify-content:center}.mj-center-logo{position:absolute;font:48px serif;color:#a78d5a0d;top:4px;left:15px;pointer-events:none}.mj-center h2{font:clamp(14px,1.3vw,20px) serif;color:#e5cb91;letter-spacing:3px;margin:0 0 9px}.mj-center-numbers{display:flex;justify-content:center;gap:9px}.mj-center-numbers span{font-size:8px;color:#c2b999}.mj-center-numbers b{display:block;font-size:15px;color:#eef0e4;line-height:1.5}.mj-wind-markers>b{position:absolute;font-size:10px;font-weight:400;color:#9eacb5}.mj-wind-markers>b.active{color:#ffde86;text-shadow:0 0 10px #f9c762}.mj-wind-markers .self{bottom:2px;left:calc(50% - 5px)}.mj-wind-markers .top{top:2px;left:calc(50% - 5px)}.mj-wind-markers .left{left:3px;top:calc(50% - 7px)}.mj-wind-markers .right{right:3px;top:calc(50% - 7px)}.mj-tile{display:inline-block;position:relative;flex-shrink:0;width:var(--rt,27px);height:calc(var(--rt,27px)*1.37);padding:0;vertical-align:middle;border:1px solid #b5ac92;border-radius:3px;background:linear-gradient(110deg,#fffef4,#f0e9d6);box-shadow:0 3px #909886,1px 4px 2px #091c2566;color:#24334c;transform-origin:center}.mj-tile svg{display:block;width:100%;height:100%;padding:1px}.mj-tile .mj-number{text-anchor:middle;font:29px SimSun,serif;font-weight:700}.mj-tile .mj-man{text-anchor:middle;font:28px SimSun,serif;font-weight:700}.mj-tile .mj-honor{text-anchor:middle;font:42px SimSun,serif;font-weight:700}.mj-tile-back{background:linear-gradient(120deg,#dfb768,#b18a4d);border-color:#967444;color:#fff3bc;box-shadow:0 3px #b3aa8d,1px 4px 3px #091c2566}.mj-tile.highlighted{box-shadow:0 0 0 2px #eec578,0 2px #ddc274,0 0 12px #ffc85f70;z-index:1}.mj-tile.sideways{transform:rotate(90deg);margin:0 calc(var(--rt)*.14)}.mj-tile.called{opacity:.35;filter:grayscale(.7)}.mj-tile.tsumogiri:not(.called){background:linear-gradient(110deg,#efecdf,#e0dccb)}.mj-red-dot{position:absolute;top:3px;right:3px;width:3px;height:3px;background:#bd3b47;border-radius:50%}.mj-river{position:absolute;display:grid;grid-template-columns:repeat(6,var(--rt));gap:3px;align-content:start;min-height:var(--rt);width:calc(var(--rt)*6 + 15px);transform-origin:top left}.river-self{top:calc(50% + var(--board-size)*.147);left:calc(50% - var(--rt)*3 - 7.5px)}.river-top{top:calc(50% - var(--board-size)*.147);left:calc(50% + var(--rt)*3 + 7.5px);transform:rotate(180deg)}.river-left{left:calc(50% - var(--board-size)*.147);top:calc(50% - var(--rt)*3 - 7.5px);transform:rotate(90deg)}.river-right{left:calc(50% + var(--board-size)*.147);top:calc(50% + var(--rt)*3 + 7.5px);transform:rotate(-90deg)}.mj-concealed{position:absolute;display:flex;gap:2px;--rt:calc(var(--board-size)*.029);transform-origin:top left}.concealed-top{top:3.5%;left:50%;transform:translate(-50%) rotate(180deg);transform-origin:center}.concealed-right{left:calc(97% - var(--rt)*.7);top:50%;transform:translate(-50%,-50%) rotate(-90deg);transform-origin:center}.concealed-left{left:calc(3% + var(--rt)*.7);top:50%;transform:translate(-50%,-50%) rotate(90deg);transform-origin:center}.mj-melds{position:absolute;display:flex;align-items:center;gap:7px;--rt:calc(var(--board-size)*.031);transform-origin:top left;max-width:82%;z-index:2}.mj-meld{display:flex;gap:1px;align-items:center}.melds-self{right:3%;bottom:4%;flex-direction:row-reverse}.melds-top{left:5%;top:5%;transform:rotate(180deg) translate(-100%,-100%)}.melds-right{right:5%;top:6%;transform:rotate(-90deg) translate(-100%,-100%);transform-origin:top right}.melds-left{left:5%;bottom:6%;transform:rotate(90deg) translate(-100%,-100%)}.mj-north-count{color:#e8d7a7;font-size:10px;white-space:nowrap;background:#153544;padding:5px;border:1px solid #ad9360}.mj-dora{position:absolute;top:8px;left:0;display:flex;flex-direction:column;gap:8px;color:#c6b68e;font-size:10px;letter-spacing:1px}.mj-dora>span{display:flex;gap:3px;--rt:25px}.mj-seat{position:absolute;display:flex;align-items:center;gap:13px;width:165px;z-index:4}.seat-self{left:0;bottom:10px}.seat-left{left:0;top:41%}.seat-right{right:0;top:41%;flex-direction:row-reverse;text-align:right}.seat-top{right:0;top:8px;flex-direction:row-reverse;text-align:right}.mj-seat-portrait{position:relative;width:72px;height:92px;flex:0 0 72px;background:#16293c;border:1px solid #9f94707a;box-shadow:0 4px 20px #0004;overflow:hidden;border-radius:6px}.mj-seat.active .mj-seat-portrait{border-color:#f4ce73;box-shadow:0 0 0 2px #e3bd5355,0 0 25px #ffca5730}.mj-seat .mj-portrait{width:100%;height:100%}.mj-seat-portrait>i{position:absolute;bottom:0;left:0;right:0;background:#a04553ed;color:#ffdfb1;font-style:normal;font-size:10px;text-align:center;letter-spacing:3px;padding:3px}.mj-seat-portrait>i.won-tag{background:#3d6e69ee}.mj-seat-info{min-width:0}.mj-seat-info>b{font-weight:500;font-size:13px;display:block;white-space:nowrap;letter-spacing:1px}.mj-seat-info b>small{font-size:8px;display:block;color:#c6b684;margin-top:2px}.mj-seat-info>strong{font:21px Georgia,serif;color:#e9d4a4;display:block;margin:7px 0}.mj-seat-info>span{font-size:9px;letter-spacing:2px;color:#a5b1bc;white-space:nowrap}.mj-seat.has-won{opacity:.65}.mj-speech{position:absolute;bottom:calc(100% + 12px);left:5px;background:#f8f1df;color:#2c3d4a;box-shadow:0 5px 18px #07162466;padding:9px 13px;border-radius:9px 9px 9px 2px;white-space:nowrap;font-size:12px;animation:mj-speech-in .16s ease-out}.seat-right .mj-speech,.seat-top .mj-speech{left:auto;right:5px;border-radius:9px 9px 2px}.mj-speech:after{content:"";position:absolute;bottom:-6px;left:13px;border-top:7px solid #f8f1df;border-right:7px solid transparent}.seat-right .mj-speech:after,.seat-top .mj-speech:after{left:auto;right:13px;border-right:0;border-left:7px solid transparent}@keyframes mj-speech-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.mj-player-panel{position:relative;max-width:1190px;margin:18px auto 0;border-top:1px solid #adad892f;padding:11px 10px 0}.mj-turn-line{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:11px;color:#a6b5c6;min-height:20px}.mj-turn-line>.your-turn{color:#efce8c}.mj-hand-info{display:flex;align-items:center;gap:10px}.mj-hand-info>b{font-size:10px;color:#e7a0a4;font-weight:500;background:#a5535a28;padding:2px 7px}.mj-hand-info small{font-size:10px;color:#c8cbd1}.mj-actions{display:flex;align-items:center;justify-content:space-between;min-height:49px;margin:4px 0 9px;gap:12px}.mj-assists{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.mj-assists button{display:flex;align-items:center;gap:5px;background:#ffffff07;border:1px solid #9bb1bc22;color:#bdc4cf;padding:8px 10px;font-size:10px}.mj-assists button.on{color:#e8ca89;border-color:#ccb87755;background:#dcc68812}.mj-action-buttons{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}.mj-action-buttons .mj-gold-button,.mj-action-buttons .mj-secondary-button,.mj-action-buttons .mj-win-button{font-size:12px;min-height:34px;padding:7px 15px}.mj-human-hand{display:flex;align-items:flex-end;justify-content:center;gap:4px;padding:7px 0 5px;--rt:clamp(38px,4.2vw,57px);min-height:calc(var(--rt)*1.38 + 13px)}.mj-human-hand .mj-tile{transition:transform .12s,box-shadow .12s;box-shadow:0 5px #a2a590,0 7px 7px #061a2c99;border-radius:5px}.mj-human-hand .mj-tile:disabled{opacity:1}.mj-human-hand .mj-tile:disabled:not(.selected){filter:brightness(.83)}.mj-human-hand .mj-tile:hover:not(:disabled){transform:translateY(-7px);box-shadow:0 5px #a2a590,0 0 0 2px #dfc08277}.mj-human-hand .mj-tile.selected{transform:translateY(-12px);box-shadow:0 5px #c4ba8a,0 0 0 2px #f3d189,0 0 16px #ffcc543d}.mj-human-hand .mj-drawn{margin-left:16px}.mj-inline-notice,.mj-error{background:#314759;border:1px solid #cab06d66;padding:10px 14px;font-size:12px;color:#eee1bf;margin-top:13px}.mj-error{color:#edbdc0;background:#4c303b}.mj-error button,.mj-lobby-error button{margin-left:15px;background:transparent;border:1px solid #c7a897;color:#f3dfc6;padding:5px 12px}.mj-lobby-error{position:fixed;bottom:25px;left:50%;transform:translate(-50%);z-index:30;background:#563842;padding:14px 22px;border:1px solid #d4909a;color:#f3d9df}.mj-log{margin-top:18px;padding:12px 20px;max-height:220px;overflow:auto;background:#081b2d8c}.mj-log p{font-size:11px;color:#b9c5d1;margin:7px 0}.mj-exchange-guide{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#152a3ef5;border:1px solid #d8ba7a;padding:20px 30px;display:flex;flex-direction:column;align-items:center;gap:10px;box-shadow:0 12px 40px #0006;z-index:8;white-space:nowrap}.mj-exchange-guide>svg{color:#e5ca87}.mj-exchange-guide b{font:20px serif;letter-spacing:3px}.mj-exchange-guide span{color:#cac7bf;font-size:11px}.mj-pause-veil{position:absolute;inset:0;z-index:15;background:#102033d9;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:18px;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);border-radius:20px}.mj-pause-veil h2{font:24px serif;font-weight:400;letter-spacing:3px}.mj-hand-sweep{position:absolute;z-index:10;width:calc(var(--board-size)*.43);height:calc(var(--board-size)*.57);pointer-events:none;transform-origin:50% 100%;transform:translate(-50%,-100%) rotate(var(--hand-rotation,0deg))}.mj-hand-sweep .mj-hand{width:100%;height:100%;object-fit:contain}.sweep-self{top:108%;left:50%}.sweep-top{top:-8%;left:50%;--hand-rotation:180deg}.sweep-left{top:50%;left:-8%;--hand-rotation:90deg}.sweep-right{top:50%;left:108%;--hand-rotation:-90deg}@keyframes mj-hand-place{0%{opacity:0;transform:translate(-50%,-100%) rotate(var(--hand-rotation,0deg)) translateY(80%)}25%{opacity:1}50%{opacity:1;transform:translate(-50%,-100%) rotate(var(--hand-rotation,0deg)) translateY(0)}85%{opacity:0}to{opacity:0;transform:translate(-50%,-100%) rotate(var(--hand-rotation,0deg)) translateY(70%)}}.mj-action-call{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);padding:12px 40px;background:radial-gradient(ellipse,#2a223fef,#2a223faa,transparent 70%);text-align:center;pointer-events:none;z-index:11;animation:mj-call .9s ease-out both;white-space:nowrap}.mj-action-call small{display:block;font-size:12px;letter-spacing:6px;color:#f1ddb8}.mj-action-call strong{display:block;font:64px serif;font-weight:700;color:#ffe5ac;text-shadow:0 0 25px #d88751,2px 4px 0 #67513c}.mj-action-call.call-ron strong,.mj-action-call.call-tsumo strong{color:#f7d9dd;text-shadow:0 0 24px #d567a6,2px 3px 0 #582443}@keyframes mj-call{0%{opacity:0;transform:translate(-50%,-50%) scale(1.25)}25%,85%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(.98)}}.mj-result{width:min(840px,100%);max-height:calc(100dvh - 52px);overflow:auto;background:linear-gradient(150deg,#2e3e53,#142437);border:1px solid #e0c69088;padding:28px 34px;box-shadow:0 22px 80px #020a15aa}.mj-result-overline{font-size:11px;letter-spacing:3px;color:#d5bd8e}.mj-result>h2{font:27px serif;letter-spacing:2px;margin:12px 0 24px}.mj-win-result{display:flex;gap:18px;align-items:center;padding:18px 0;border-top:1px solid #ccba842a}.mj-win-result>.mj-portrait{width:64px;height:85px;flex:0 0 64px;border:1px solid #ddc68a70}.mj-win-result>div:nth-child(2){flex:1;min-width:0}.mj-win-result h3{font-size:16px;letter-spacing:1px;margin:0 0 9px;font-weight:500}.mj-win-result h3>span{display:block;font-size:11px;color:#d3bd8d;font-weight:400;margin-top:6px}.mj-yaku-list{display:flex;gap:5px;flex-wrap:wrap}.mj-yaku-list>span{font-size:10px;padding:4px 7px;border:1px solid #c7ae7130;background:#c4b6870b;color:#d5d2cd}.mj-yaku-list b{margin-left:5px;color:#e3c68e;font-weight:400}.mj-winning-hand{display:flex;gap:2px;margin-top:10px;--rt:25px;flex-wrap:wrap}.mj-ura{display:flex;align-items:center;gap:3px;--rt:20px;margin-top:10px;color:#c5bfaa}.mj-ura>small{font-size:10px;margin-right:7px}.mj-win-result>strong{font:25px Georgia,serif;color:#eed294}.mj-win-result>strong>small{font-size:11px;margin-left:5px}.mj-results-points{margin:20px 0;display:grid;gap:5px}.mj-results-points>div{display:flex;align-items:center;gap:16px;padding:12px 16px;background:#0c203570;font-size:12px}.mj-results-points>div.human{background:#d6bb8220;border:1px solid #d6ba8844}.mj-results-points>div>span{color:#d5ba7e;font:20px Georgia,serif;width:22px}.mj-results-points b{flex:1;font-weight:500}.mj-results-points strong{font:20px Georgia,serif}.mj-results-points em{font:14px Georgia,serif;color:#b99ba5;min-width:65px;text-align:right}.mj-results-points em.positive{color:#b9d6a7}.mj-result-buttons{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.mj-portrait{overflow:hidden;position:relative}.mj-portrait img{display:block;width:100%;height:100%;object-fit:contain}.mj-reduce-label{font-size:10px;color:#b4b8c6}@media(min-height:980px){.mj-match{--board-size:min(740px, calc(100dvh - 360px) , calc(100vw - 400px) )}.mj-lobby-character{min-height:calc(100dvh - 82px)}}@media(max-width:1200px){.mj-header{padding:0 22px}.mj-lobby{grid-template-columns:minmax(360px,.95fr) minmax(430px,1.05fr)}.mj-lobby-menu{padding:40px 7% 32px 2%}.mj-lobby-intro h1{font-size:29px}.mj-lobby-intro{left:6%}.mj-lobby-character{min-height:775px}.mj-mode-card{padding:16px 20px;gap:17px;min-height:108px}.mj-mode-copy>b{font-size:23px}.mj-mode-copy>em{font-size:10px}.mj-menu-heading h2{font-size:24px}.mj-quick-cast{gap:8px}.mj-quick-cast button>.mj-portrait{height:64px}.mj-match{padding:0 20px 14px;--board-size:min(650px, calc(100dvh - 280px) , calc(100vw - 318px) )}.mj-seat{width:145px;gap:8px}.mj-seat-portrait{width:61px;height:81px;flex-basis:61px}.mj-seat-info>b{font-size:12px}.mj-seat-info>strong{font-size:18px}.mj-match-meta{gap:10px}.mj-human-hand{--rt:46px}.mj-turn-line{gap:10px}.mj-hand-info small{max-width:380px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mj-center-numbers{gap:6px}.mj-modal{padding:30px}.mj-cast-gallery .mj-portrait{height:290px}}@media(max-height:800px){.mj-lobby-character{min-height:660px}.mj-lobby-menu{padding-top:28px;padding-bottom:25px}.mj-menu-heading p{margin-bottom:19px}.mj-mode-card{min-height:100px}.mj-mode-cards{gap:13px}.mj-quick-cast button>.mj-portrait{height:54px}.mj-lobby-note{margin:17px 0 15px}.mj-lobby-intro{top:35px}.mj-lobby-intro h1{font-size:27px}.mj-match{--board-size:min(620px, calc(100dvh - 272px) , calc(100vw - 310px) )}.mj-in-game .mj-header{height:54px}.mj-match-heading{height:47px}.mj-player-panel{margin-top:12px;padding-top:8px}.mj-human-hand{--rt:40px;padding-top:4px;min-height:66px}.mj-actions{min-height:42px;margin-bottom:4px}.mj-center h2{margin-bottom:5px}.mj-center-numbers b{font-size:12px}.mj-center-numbers span{font-size:7px}.mj-center-numbers{gap:5px}.mj-wind-markers>b{font-size:8px}.mj-speech{font-size:11px;padding:7px 11px}.mj-seat-info>strong{margin:5px 0}.mj-seat-portrait{height:76px}.mj-dora>span{--rt:23px}}@media(max-width:850px){.mj-header{padding:0 12px}.mj-brand{position:static;transform:none}.mj-brand b{font-size:19px;letter-spacing:3px}.mj-header-tools{gap:2px}.mj-header-tools button{padding:7px}.mj-header-tools button:first-child{font-size:0;gap:0}.mj-lobby{grid-template-columns:1fr}.mj-lobby-character{min-height:590px}.mj-lobby-menu{padding:25px 25px 35px;max-width:none;background:#171d33c4}.mj-lobby-intro{left:25px}.mj-kanban{inset:2% 0 0!important;height:96%!important}.mj-kanban-caption{left:25px;bottom:18px}.mj-lobby-bg{background-position:center top}.mj-quick-cast{gap:10px}.mj-quick-cast button>.mj-portrait{height:80px}.mj-match{padding:0 8px 15px;--board-size:min(520px, calc(100vw - 48px) );--rt:clamp(16px,calc(var(--board-size)*.039),25px)}.mj-match-heading>div:first-child>span,.mj-match-meta>span,.mj-match-heading em{display:none}.mj-match-heading h1{font-size:17px}.mj-table-wrap{height:calc(var(--board-size) + 112px);padding-top:78px}.mj-seat{width:auto;gap:6px}.mj-seat-portrait{width:39px;height:48px;flex-basis:39px}.mj-seat-info>b{font-size:10px}.mj-seat-info>strong{font-size:15px;margin:3px 0}.mj-seat-info>span{font-size:8px}.seat-left{left:0;top:7px}.seat-right{right:0;top:7px}.seat-top{left:50%;right:auto;top:7px;transform:translate(-50%);flex-direction:row;text-align:left}.seat-self{bottom:0;left:4px;transform:translateY(10px)}.seat-self .mj-seat-portrait{display:none}.seat-self .mj-seat-info{display:flex;align-items:center;gap:10px}.seat-self .mj-seat-info>b small{display:inline;margin-left:4px}.mj-dora{inset:auto 4px 0 auto;flex-direction:row;align-items:center;gap:8px}.mj-dora>span{--rt:15px}.mj-dora>small{font-size:8px}.mj-human-hand{--rt:clamp(20px,5.7vw,39px);gap:2px;justify-content:flex-start;overflow-x:auto;overflow-y:hidden;padding:15px 3px 8px;min-height:70px}.mj-human-hand .mj-drawn{margin-left:8px}.mj-actions{flex-wrap:wrap;gap:8px}.mj-assists button{font-size:9px;padding:6px}.mj-action-buttons{margin-left:auto}.mj-action-buttons .mj-gold-button,.mj-action-buttons .mj-secondary-button{font-size:11px;padding:7px 10px}.mj-turn-line{flex-wrap:wrap;font-size:10px;gap:4px}.mj-hand-info small{max-width:300px}.mj-cast-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.mj-cast-gallery .mj-portrait{height:250px}.mj-modal-backdrop,.mj-result-backdrop{padding:12px}.mj-modal,.mj-result{padding:26px 19px;max-height:calc(100dvh - 24px)}.mj-modal h2{font-size:23px;line-height:1.6}.mj-setup-cast{gap:10px}.mj-setup-cast>small{font-size:9px;max-width:120px}.mj-choices{gap:6px}.mj-choices button{padding:11px 5px;font-size:12px}.mj-choices small{font-size:9px}.mj-winning-hand{--rt:19px}.mj-win-result{gap:10px;flex-wrap:wrap}.mj-win-result>.mj-portrait{width:45px;height:58px;flex-basis:45px}.mj-win-result>strong{font-size:20px;margin-left:auto}.mj-win-result h3{font-size:14px}.mj-speech{bottom:auto;top:calc(100% + 5px);font-size:10px;padding:6px;z-index:15}.mj-speech:after{display:none}.mj-hand-sweep{animation-duration:.5s}.mj-result-buttons{justify-content:space-between}.mj-brand small{font-size:6px}.mj-home{font-size:11px;gap:5px;padding:7px}}.reduce-motion .mj-petals i,.reduce-motion .mj-hand-sweep,.reduce-motion .mj-action-call,.reduce-motion .mj-speech{animation:none!important}.reduce-motion .mj-hand-sweep{display:none}.reduce-motion .mj-action-call strong{font-size:34px;text-shadow:none}.mj-paused *{animation-play-state:paused!important}@media(prefers-reduced-motion:reduce){.mj-app *{animation:none!important;transition:none!important}.mj-hand-sweep{display:none}}.mj-result-meld{display:inline-flex;gap:2px;margin-left:7px}.mj-lobby-character .mj-kanban{animation:mj-kanban-breathe 7s ease-in-out infinite;transform-origin:50% 80%}@keyframes mj-kanban-breathe{50%{transform:translateY(-3px) rotate(.18deg)}}.reduce-motion .mj-lobby-character .mj-kanban{animation:none}.mj-match{--board-width:min(880px, calc(100vw - 300px) );--hand-tile:clamp(60px,5.4vw,86px);--board-height:min(650px, calc(100dvh - max(298px,calc(190px + var(--hand-tile)*1.5))) );--board-size:var(--board-height);--rt:clamp(28px,calc(var(--board-height)*.052),34px);--river-gap:2px;--river-y:clamp(56px,calc(var(--board-height)*.112),74px);--river-x:calc(var(--board-width)*.24);max-width:1640px;padding:0 16px 12px}.mj-in-game .mj-header{height:44px}.mj-match-heading{height:32px}.mj-table-wrap{height:var(--board-height);max-width:1380px}.mj-board{width:var(--board-width);height:var(--board-height);border-width:8px;border-radius:18px}.mj-table-orbit{width:calc(var(--board-width)*1.04);height:92%}.mj-center{width:clamp(142px,calc(var(--board-width)*.2),174px);height:clamp(96px,calc(var(--board-height)*.19),124px);border-radius:8px}.mj-center h2{margin-bottom:5px}.mj-center-numbers{gap:10px}.mj-center-numbers span{font-size:10px}.mj-center-numbers b{font-size:16px}.mj-wind-markers .left,.mj-wind-markers .right{top:9px}.mj-tile{height:calc(var(--rt,27px)*1.34);border-color:#a1aaab;background:linear-gradient(110deg,#fffef9 4%,#fffef7 64%,#e6e9df);box-shadow:0 3px #6a9b88,1px 4px 2px #071a2866;color:#174165}.mj-tile svg{padding:0;overflow:visible}.mj-tile-back{background:linear-gradient(120deg,#4b9392,#226467);border-color:#183f4e;color:#f3e6b1;box-shadow:0 3px #d4ccad,1px 4px 3px #091c2566}.mj-tile.tsumogiri:not(.called){background:linear-gradient(110deg,#f7fbfa,#e8f1eb)}.mj-tile.called{opacity:.42;filter:none}.mj-tile.highlighted{box-shadow:0 0 0 2px #ffdf83,0 3px #719b80,0 0 14px #ffc75a70}.mj-red-dot{width:5px;height:5px;top:4px;right:4px;background:#d0263c;box-shadow:0 0 0 1px #fff8}.mj-river{--river-cols:6;--river-width:calc(var(--rt)*var(--river-cols) + var(--river-gap)*(var(--river-cols) - 1));grid-template-columns:repeat(var(--river-cols),var(--rt));gap:var(--river-gap);width:var(--river-width)}.mj-river .mj-tile{height:calc(var(--rt)*1.28);border-radius:3px}.mj-river .mj-tile.sideways{transform:none;margin:0}.mj-river .mj-tile.sideways svg{transform:rotate(90deg) scale(.82)}.mj-river .mj-tile.sideways:after{content:"";position:absolute;bottom:0;left:1px;right:1px;height:3px;background:#bd3452;border-radius:2px}.mj-river.river-scroll{width:calc(var(--river-width) + 8px);max-height:calc(var(--rt)*1.28*4 + var(--river-gap)*3);overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:#dcc38d #152d3c}.mj-modal-rivers{width:min(900px,100%)}.mj-river-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.mj-river-gallery h3{display:flex;justify-content:space-between;align-items:center;margin:0 0 12px}.mj-river-gallery h3 small{font-size:12px;color:#c6ccd4}.mj-river-gallery section{padding:16px;background:#102431;border:1px solid #dec48a33}.mj-river-gallery section>div{display:grid;grid-template-columns:repeat(6,1fr);gap:7px 4px;--rt:clamp(28px,3.5vw,39px)}.mj-river-gallery section>div>span{text-align:center}.mj-river-gallery section>div>span>small{display:block;color:#aabdc4;font-size:10px;margin-top:4px}.mj-river-gallery .sideways{transform:none;margin:0}.mj-river-gallery .sideways svg{transform:rotate(90deg) scale(.82)}.mj-river-gallery .sideways:after{content:"";position:absolute;bottom:0;left:1px;right:1px;height:3px;background:#bd3452}.river-self{top:calc(50% + var(--river-y));left:50%;transform:translate(-50%)}.river-top{top:calc(50% - var(--river-y));left:50%;transform:translate(50%) rotate(180deg)}.river-left{left:calc(50% - var(--river-x));top:calc(50% - var(--river-width)/2);transform:rotate(90deg);transform-origin:top left}.river-right{left:calc(50% + var(--river-x));top:calc(50% + var(--river-width)/2);transform:rotate(-90deg);transform-origin:top left}.mj-concealed{--rt:clamp(15px,calc(var(--board-height)*.031),20px);gap:2px;z-index:2}.concealed-top{top:-18px;left:50%;transform:translate(-50%) rotate(180deg);transform-origin:center}.concealed-right{left:calc(50% + var(--board-width)/2 - 14px);top:50%;transform:translate(-50%,-50%) rotate(-90deg)}.concealed-left{left:calc(50% - var(--board-width)/2 + 14px);top:50%;transform:translate(-50%,-50%) rotate(90deg)}.mj-melds{--rt:clamp(20px,calc(var(--board-height)*.038),25px);gap:4px}.melds-self{right:12px;bottom:11px}.mj-edge-hand{position:absolute;display:flex;align-items:center;gap:12px;z-index:3;pointer-events:none}.mj-edge-hand .mj-concealed,.mj-edge-hand .mj-melds{position:static;max-width:none;transform:none}.edge-top{top:-19px;left:50%;transform:translate(-50%) rotate(180deg)}.edge-left{left:calc(50% - var(--board-width)/2 + 14px);top:50%;transform:translate(-50%,-50%) rotate(90deg)}.edge-right{left:calc(50% + var(--board-width)/2 - 14px);top:50%;transform:translate(-50%,-50%) rotate(-90deg)}.edge-self{right:calc(50% - var(--board-width)/2 + 16px);bottom:14px}.mj-dora{top:14px;left:0;gap:6px}.mj-dora>span{--rt:28px;gap:3px}.mj-seat{width:125px;gap:7px}.mj-seat-portrait{width:54px;height:70px;flex-basis:54px}.mj-seat-info>b{font-size:13px}.mj-seat-info>strong{font-size:18px;margin:4px 0}.mj-seat-info>span{font-size:10px}.seat-self{bottom:8px}.seat-top{top:14px}.seat-left,.seat-right{top:42%}.mj-player-panel{max-width:1420px;margin:4px auto 0;padding:3px 6px 0}.mj-turn-line{min-height:20px}.mj-actions{min-height:40px;margin:2px 0 1px;gap:10px}.mj-actions>.mj-table-error{display:flex;align-items:center;gap:14px;width:100%;min-height:40px;margin:0;padding:4px 10px;border-color:#dd99a4;color:#ffe0e4;background:#512e3d}.mj-table-error>span{flex:1;min-width:0}.mj-table-error-actions{display:flex;flex-shrink:0;gap:8px}.mj-table-error .mj-table-error-actions>button{margin:0;min-height:30px;padding:3px 12px;border-color:#ddaeb5;color:#fff0df}.mj-human-hand{--rt:var(--hand-tile);gap:4px;padding:6px 3px;min-height:calc(var(--rt)*1.5 + 12px);overflow:visible}.mj-human-hand>.mj-tile{height:calc(var(--rt)*1.5)}.mj-human-hand .mj-tile{border-radius:5px;border-color:#d8e0df;background:linear-gradient(105deg,#fff,#fffcf1 75%,#e6eeee);box-shadow:0 3px #d6e0dd,0 7px #4394af,0 9px 7px #061a2c99;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.mj-human-hand .mj-tile[data-reorderable=true]{cursor:grab}.mj-human-hand .mj-tile:disabled:not(.selected){filter:none}.mj-human-hand .mj-tile:hover:not(:disabled){transform:translateY(-4px);box-shadow:0 3px #d6e0dd,0 7px #4394af,0 0 0 2px #b9ddeb}.mj-human-hand .mj-tile.selected{transform:translateY(-8px);box-shadow:0 3px #e0d8b2,0 7px #8c9571,0 0 0 2px #ffdd87,0 0 16px #ffcc543d}.mj-human-hand .mj-drawn{margin-left:12px}.mj-human-hand .mj-tile.mj-dragging{cursor:grabbing;transform:translateY(-8px);box-shadow:0 5px #88a191,0 0 0 2px #9ce4e0;z-index:2}.mj-human-hand .mj-tile.mj-drop-target:not(.mj-dragging):before{content:"";position:absolute;inset:-5px -3px;border:2px dashed #b4eee4;border-radius:6px;pointer-events:none}.mj-human-hand[data-dragging=true]{cursor:grabbing}.mj-self-exposed{display:flex;align-items:center;gap:9px;--rt:clamp(31px,3.4vw,46px);padding:0 0 4px 15px;margin-left:8px;border-left:1px solid #b8cab448;pointer-events:none}.mj-self-exposed .mj-tile{box-shadow:0 3px #6a9b88,1px 4px 2px #071a2866;border-radius:3px}.mj-arrange-help strong{color:#e5c990;font-weight:500}@media(min-width:1600px){.mj-seat{width:155px;gap:10px}.mj-seat-portrait{width:67px;height:85px;flex-basis:67px}}@media(max-height:800px)and (min-width:851px){.mj-match{--hand-tile:clamp(60px,5.4vw,74px)}.mj-human-hand{--rt:clamp(60px,5.4vw,74px)}.mj-center h2{font-size:15px}.mj-center-numbers b{font-size:14px}.mj-center-numbers span{font-size:9px}.mj-match-heading>div:first-child>span{display:none}}@media(max-width:850px){.mj-match{--board-width: calc(100vw - 32px) ;--board-height:420px;--rt:25px;--river-x:calc(var(--board-width)*.28)}.mj-table-wrap{padding-top:0;height:calc(var(--board-height) + 65px);margin-top:56px}.mj-seat{width:auto;top:-53px}.seat-self{top:auto;bottom:5px}.mj-seat-portrait{width:35px;height:43px;flex-basis:35px}.seat-top{left:50%;transform:translate(-50%)}.mj-dora{inset:auto 3px 5px auto}.concealed-left,.concealed-right{top:calc(var(--board-height)/2)}.mj-human-hand{--rt:clamp(28px,5.8vw,48px);gap:2px;overflow-x:auto;overflow-y:hidden;padding-top:12px;justify-content:flex-start}.mj-actions{flex-wrap:wrap}}.mj-match{--board-width:min(1000px, calc(100vw - 288px) );--hand-tile:clamp(62px,5.8vw,96px);--board-height:min(690px, calc(100dvh - max(302px,calc(191px + var(--hand-tile)*1.58))) );--rt:clamp(32px,calc(var(--board-height)*.066),42px);--river-y:clamp(48px,calc(var(--board-height)*.108),75px);--river-x:calc(var(--board-width)*.25)}.mj-human-hand{--rt:var(--hand-tile);min-height:calc(var(--rt)*1.58 + 12px)}.mj-human-hand>.mj-tile{height:calc(var(--rt)*1.58)}.mj-river .mj-tile{height:calc(var(--rt)*1.22);background:#fffef7;box-shadow:0 3px #5c9bab,1px 4px 3px #04182088}.mj-river .mj-tile.tsumogiri:not(.called){background:#f4faf8}.mj-river .mj-tile.called{opacity:.64;filter:saturate(.55)}.mj-river.river-scroll{max-height:calc(var(--rt)*1.22*4 + var(--river-gap)*3)}.mj-melds{--rt:clamp(27px,calc(var(--board-height)*.05),34px);gap:6px}.mj-self-exposed{--rt:clamp(39px,4vw,56px);gap:9px}.mj-dora>span{--rt:36px;gap:4px}.mj-dora>small{font-size:12px;color:#f2e6c8}.mj-dora{top:14px;left:0}.mj-north-count{font-size:13px;white-space:nowrap;color:#eff4e7}.mj-center-numbers span{font-size:11px;color:#dfebe9}.mj-center-numbers b{font-size:18px}.mj-river-gallery section>div{--rt:clamp(38px,4vw,50px)}@media(max-height:800px)and (min-width:851px){.mj-match{--hand-tile:clamp(62px,5.8vw,86px);--board-height: calc(100dvh - max(302px,calc(191px + var(--hand-tile)*1.58))) }.mj-human-hand{--rt:var(--hand-tile)}.mj-dora>span{--rt:32px}.mj-center-numbers b{font-size:16px}}@media(max-width:850px){.mj-match{--board-width: calc(100vw - 32px) ;--board-height:440px;--rt:28px;--river-x:calc(var(--board-width)*.28)}.mj-human-hand{--rt:clamp(36px,6.2vw,52px);overflow-x:auto;overflow-y:hidden}.mj-self-exposed{--rt:34px}.mj-dora>span{--rt:25px}.mj-melds{--rt:24px}}.mj-match-plan{display:grid;grid-template-columns:auto 1fr;gap:8px 15px;margin:17px 0;padding:17px 19px;border:1px solid #d3ba7b66;border-radius:9px;background:#102d3aa8;color:#ecf1e8}.mj-match-plan>b{font-size:18px;color:#ffe1a0;grid-row:1/3;align-self:center}.mj-match-plan>span{font-size:14px;font-weight:600;line-height:1.6}.mj-match-plan>p{font-size:12px;line-height:1.7;color:#d8dfdc;margin:0}@media(min-width:851px){.mj-seat.seat-self{display:grid;grid-template-columns:54px minmax(0,1fr);gap:3px 7px;align-items:center}.seat-self>.mj-seat-portrait{grid-column:1;grid-row:1}.seat-self .mj-seat-info{display:contents}.seat-self .mj-seat-info>b{grid-column:2;grid-row:1;align-self:center}.seat-self .mj-seat-info>strong{grid-column:1/-1;grid-row:2;margin:1px 0 0;line-height:1.2}.seat-self .mj-seat-info>span{grid-column:1/-1;grid-row:3}.mj-seat.seat-self .mj-seat-portrait{width:54px;height:70px}}@media(min-width:851px){.mj-match{--river-x:calc(var(--board-width)*.195)}}@media(min-width:851px){.mj-edge-hand.edge-left{left:calc(50% - var(--board-width)/2 + 22px)}.mj-edge-hand.edge-right{left:calc(50% + var(--board-width)/2 - 22px)}}@media(max-height:700px)and (min-width:851px){.mj-edge-hand .mj-melds{--rt:25px;gap:4px}.mj-edge-hand{gap:8px}}.mj-app{--mj-ui-font: "Microsoft YaHei UI", "Microsoft YaHei", "PingFang SC", "Noto Sans CJK SC", sans-serif;font-family:var(--mj-ui-font);font-size:14px;line-height:1.5;letter-spacing:0;color:#f1ede4}.mj-app button,.mj-app input,.mj-app select{font-family:inherit}.mj-app button:focus-visible{outline:2px solid #ffe0a0;outline-offset:4px}.mj-brand b{font-family:var(--mj-ui-font);font-weight:700;letter-spacing:2px}.mj-brand small{font:9px/1.5 Arial,sans-serif;letter-spacing:1.5px;color:#bfc8d7}.mj-home,.mj-header-tools button{font-size:13px;font-weight:500}.mj-lobby-intro>span{font-size:13px;letter-spacing:1px;color:#e1d9ca}.mj-lobby-intro h1{font-family:var(--mj-ui-font);font-weight:600;font-size:34px;letter-spacing:2px;line-height:1.55;text-shadow:0 2px 8px #111b35}.mj-kanban-caption small{font-size:12px;letter-spacing:1px}.mj-kanban-caption h2{font-family:var(--mj-ui-font);font-weight:600;font-size:34px;letter-spacing:3px}.mj-kanban-caption button{font-size:13px}.mj-menu-heading>span,.mj-overline{font:10px/1.6 Arial,sans-serif;letter-spacing:2px;color:#d8c495}.mj-menu-heading h2{font-family:var(--mj-ui-font);font-size:27px;line-height:1.5;letter-spacing:.5px;font-weight:600}.mj-menu-heading p{font-size:14px;color:#d2ced6}.mj-mode-copy>small{font-size:12px;letter-spacing:1px;color:#deccac}.mj-mode-copy>b{font-family:var(--mj-ui-font);font-size:25px;font-weight:700;letter-spacing:1px;line-height:1.55}.mj-mode-copy>em{font-size:12px;font-style:normal;letter-spacing:0;color:#dbd6df}.mj-mode-enter{font-size:12px}.mj-resume b{font-size:14px;font-weight:600}.mj-resume small,.mj-lobby-note,.mj-lobby-note small{font-size:12px;line-height:1.7;color:#ccc6d2}.mj-quick-cast button>span{font-size:13px;font-weight:500;letter-spacing:.5px}.mj-modal h2,.mj-result>h2{font-family:var(--mj-ui-font);font-size:27px;font-weight:600;letter-spacing:.5px;line-height:1.5}.mj-modal h3{font-size:15px;font-weight:600}.mj-modal>p,.mj-rules-list p{font-size:14px;line-height:1.9;color:#d7d7df}.mj-setup-cast b{font-size:16px;font-weight:600}.mj-setup-cast span,.mj-setup-cast>small,.mj-choices small{font-size:12px;line-height:1.6;color:#d0cbd7}.mj-choices b{font-size:15px;font-weight:600}.mj-replace-note,.mj-rule-note{font-size:13px!important;line-height:1.8}.mj-cast-gallery b{font-family:var(--mj-ui-font);font-size:21px;font-weight:600;letter-spacing:1px}.mj-cast-gallery button>span{font-size:12px}.mj-history-row{font-size:14px}.mj-history-row small,.mj-current-record p,.mj-log p{font-size:12px;line-height:1.8;color:#d0d3dd}.mj-match-heading h1{font-family:var(--mj-ui-font);font-size:20px;font-weight:600;letter-spacing:.5px}.mj-match-heading>div:first-child>span,.mj-match-heading em,.mj-match-meta,.mj-match-meta button{font-size:12px;letter-spacing:0;color:#c7ccda}.mj-center h2{font:600 clamp(15px,1.3vw,20px)/1.4 var(--mj-ui-font);letter-spacing:.5px;margin-bottom:7px}.mj-center-numbers{gap:8px}.mj-center-numbers span{font-size:10px;line-height:1.35;color:#ddd4be}.mj-center-numbers b{font:600 16px/1.5 var(--mj-ui-font);font-variant-numeric:tabular-nums}.mj-wind-markers>b{font-size:11px;line-height:1;font-weight:600}.mj-wind-markers .left,.mj-wind-markers .right{top:13px}.mj-dora>small,.mj-north-count{font-size:11px;letter-spacing:0}.mj-seat-info>b{font-size:14px;font-weight:600;letter-spacing:0}.mj-seat-info b>small{font-size:10px}.mj-seat-info>strong{font:600 22px/1.2 var(--mj-ui-font);font-variant-numeric:tabular-nums;letter-spacing:.3px}.mj-seat-info>span{font-size:11px;letter-spacing:0;color:#c5cfd7}.mj-seat-portrait>i{font-size:11px;font-weight:600;letter-spacing:1px}.mj-speech{font-size:13px;font-weight:500;line-height:1.5}.mj-turn-line{font-size:13px;line-height:1.6;color:#c6d0dc}.mj-hand-info>b,.mj-hand-info small{font-size:12px}.mj-assists button{font-size:12px;color:#d6dce4}.mj-action-buttons .mj-gold-button,.mj-action-buttons .mj-secondary-button,.mj-action-buttons .mj-win-button{font-size:14px;font-weight:600;min-height:38px}.mj-exchange-guide b,.mj-pause-veil h2{font-family:var(--mj-ui-font);font-weight:600;letter-spacing:1px}.mj-exchange-guide span{font-size:13px}.mj-action-call small{font-size:14px;font-weight:500;letter-spacing:1px}.mj-action-call strong{font-family:var(--mj-ui-font);font-size:58px;font-weight:800;letter-spacing:4px}.mj-result-overline{font-size:12px;letter-spacing:1px}.mj-win-result h3{font-size:17px;font-weight:600;letter-spacing:0}.mj-win-result h3>span,.mj-yaku-list>span,.mj-ura>small{font-size:12px}.mj-win-result>strong,.mj-results-points strong,.mj-results-points>div>span,.mj-results-points em{font-family:var(--mj-ui-font);font-style:normal;font-variant-numeric:tabular-nums}.mj-results-points>div{font-size:14px}.mj-reduce-label{font-size:12px}.mj-inline-notice,.mj-error,.mj-lobby-error{font-size:13px;line-height:1.7}@media(max-width:1200px){.mj-lobby-intro h1{font-size:28px}.mj-menu-heading h2{font-size:24px}.mj-mode-copy>b{font-size:23px}.mj-seat-info>b{font-size:13px}.mj-seat-info>strong{font-size:19px}}@media(max-height:800px)and (min-width:851px){.mj-lobby-intro h1{font-size:27px}.mj-center h2{font-size:15px;line-height:1.2;margin-bottom:5px}.mj-center-numbers{gap:5px}.mj-center-numbers b{font-size:13px}.mj-center-numbers span{font-size:9px}.mj-wind-markers>b{font-size:10px}}.mj-tile .mj-number,.mj-tile .mj-man{font:700 34px KaiTi,STKaiti,Kaiti SC,"Noto Serif CJK SC",Songti SC,SimSun,serif;paint-order:stroke fill}.mj-tile .mj-honor{font:700 48px KaiTi,STKaiti,Kaiti SC,"Noto Serif CJK SC",Songti SC,SimSun,serif;paint-order:stroke fill}.mj-arrange-help{font-size:11px;line-height:1.45;color:#c1cfd7;text-align:center;margin:0}.mj-match .mj-assists button{font-size:12px;padding:6px 9px}@media(max-width:850px){.mj-brand b{font-size:18px;letter-spacing:1px}.mj-brand small{font-size:8px;letter-spacing:.5px}.mj-header-tools button:first-child{font-size:0}.mj-home{font-size:12px}.mj-modal h2{font-size:23px}.mj-choices b{font-size:14px}.mj-choices small,.mj-setup-cast>small{font-size:11px}.mj-seat-info>b{font-size:11px}.mj-seat-info>strong{font-size:15px}.mj-seat-info>span,.mj-dora>small{font-size:10px}.mj-turn-line,.mj-hand-info small,.mj-assists button,.mj-speech{font-size:12px}.mj-action-buttons .mj-gold-button,.mj-action-buttons .mj-secondary-button,.mj-action-buttons .mj-win-button{font-size:13px}}.mj-in-game .mj-header{min-height:52px;height:auto}.mj-in-game .mj-home,.mj-in-game .mj-header-tools button,.mj-match .mj-match-meta button{min-width:44px;min-height:44px;justify-content:center}.mj-in-game .mj-header-tools{gap:12px}.mj-match .mj-match-heading{min-height:48px;height:auto;gap:16px}.mj-match .mj-match-meta{gap:16px}.mj-match .mj-match-meta button{padding:8px 12px;font-size:14px}.mj-match .mj-actions{min-height:56px;margin:6px 0 10px;gap:16px 28px;flex-wrap:wrap}.mj-match .mj-assists{flex:1 1 350px;gap:12px}.mj-match .mj-assists button{min-height:44px;min-width:76px;padding:10px 14px;gap:7px;font-size:14px;line-height:1.35;border-radius:7px;border-color:#9bb1bc50}.mj-match .mj-assists button[role=switch]{margin-left:4px}.mj-match .mj-action-area{flex:0 1 auto;max-width:100%;margin-left:auto;min-width:0}.mj-match .mj-action-buttons{max-width:100%;min-width:0;margin-left:0;gap:18px;align-items:center}.mj-action-scroll{display:none}.mj-app .mj-action-buttons>button,.mj-app .mj-settlement-buttons>button,.mj-app .mj-modal-footer>button,.mj-app .mj-pause-veil>button{min-height:56px;min-width:116px;padding:12px 23px;border-radius:9px;font-size:18px;line-height:1.4;font-weight:700;flex-shrink:0}.mj-app .mj-action-buttons>.mj-discard-button{min-width:148px}.mj-app .mj-action-buttons>.mj-win-button{min-width:132px;border:2px solid #ffd8df;box-shadow:0 3px #662d4c,0 0 20px #eb86a52b}.mj-app .mj-action-buttons>[data-action=pass]{order:-1;margin-right:12px;background:#263d50;border-color:#a9c3d08a;color:#f0f3ef}.mj-app .mj-action-buttons>button:focus-visible,.mj-app .mj-settlement-buttons>button:focus-visible{outline:3px solid #fff0b8;outline-offset:4px}.mj-match .mj-arrange-help{margin-bottom:6px}.mj-match .mj-table-error{flex-wrap:wrap;padding:10px 14px}.mj-match .mj-table-error-actions{gap:16px;flex-wrap:wrap}.mj-match .mj-table-error .mj-table-error-actions>button{min-width:100px;min-height:48px;font-size:16px;padding:10px 16px}.mj-app .mj-settlement-buttons{gap:18px;flex-wrap:wrap;justify-content:flex-end}.mj-app .mj-settlement-footer-row{gap:18px;flex-wrap:wrap}.mj-app .mj-settlement-footer-row>p{max-width:none;flex:1 1 220px}.mj-app .mj-modal-footer{gap:18px;flex-wrap:wrap}.mj-app .mj-cutin-skip{min-width:100px;min-height:44px;padding:10px 16px;font-size:14px}@media(min-width:851px){.mj-match{--board-height: max(340px, min(690px, calc(100dvh - 126px - var(--mj-player-panel-height, 220px))))}}@media(min-width:851px)and (max-width:1300px){.mj-actions:has(.many-actions){flex-wrap:nowrap}.mj-actions:has(.many-actions) .mj-assists{flex:0 0 auto;flex-wrap:nowrap}.mj-match .many-actions{flex:1 1 0;display:flex;align-items:center;gap:12px}.mj-match .many-actions .mj-action-buttons{flex:1 1 0;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;overflow-y:hidden;padding:0;scrollbar-color:#e5c990 #142a40;scrollbar-width:none}.mj-match .many-actions .mj-action-buttons::-webkit-scrollbar{display:none}.mj-match .many-actions .mj-action-buttons>button:focus-visible{outline-offset:-5px}.mj-app .many-actions>.mj-action-scroll{display:grid;place-items:center;flex:0 0 44px;min-width:44px;min-height:52px;border:1px solid #d8c49288;border-radius:7px;color:#ffe8b1;background:#263d50;padding:0}}@media(max-width:850px){.mj-in-game .mj-header{flex-wrap:wrap;gap:8px 12px;padding-block:6px}.mj-in-game .mj-header-tools{gap:12px}.mj-match .mj-assists{flex-basis:100%}.mj-match .mj-action-area{width:100%}.mj-app .mj-settlement-buttons>button{padding:12px 20px!important;font-size:18px!important}.mj-app .mj-settlement-footer-row{align-items:stretch}.mj-app .mj-settlement-buttons{width:100%;flex-shrink:1}}.mj-app .mj-river .mj-tile.highlighted,.mj-app .mj-human-hand .mj-tile.highlighted{box-shadow:0 0 0 2px #ffd57a,0 0 18px #ffc85fcc;z-index:2;animation:mj-glow 1.2s ease-in-out infinite}.mj-app .mj-human-hand[data-riichi=true] .mj-tile:not(.highlighted){filter:brightness(.5) saturate(.55)}.mj-app .mj-river .mj-tile.sideways{transform:rotate(90deg) scale(.84);z-index:1}.mj-app .mj-river .mj-tile.sideways svg{transform:none}.mj-app .mj-river .mj-tile.sideways:after{display:none}.mj-app .mj-seat{width:auto;max-width:260px}.mj-app .mj-seat-info{min-width:max-content}.mj-app .mj-seat-info>strong{white-space:nowrap}.mj-app .mj-seat.has-won{opacity:1}.mj-app .mj-seat:has(.mj-speech){z-index:12}.mj-app .mj-seat.has-won .mj-seat-portrait{box-shadow:0 0 0 2px #ffd57a,0 0 22px #ffc85f80}.mj-app .mj-wind-markers>b{display:grid;justify-items:center;gap:2px;line-height:1}.mj-app .mj-wind-markers>b small{font:600 11px/1 var(--mj-ui-font,inherit);color:#e9d4a4;letter-spacing:0;white-space:nowrap}.mj-app .mj-wind-markers>b.is-riichi:after{content:"";display:block;width:28px;height:5px;margin-top:2px;border-radius:3px;background:linear-gradient(90deg,#f6f1e6 0 42%,#d2334a 42% 58%,#f6f1e6 58%);box-shadow:0 1px 2px #0006}.mj-match .mj-action-buttons{flex-wrap:wrap;overflow:visible;justify-content:flex-end}.mj-app .mj-call-button{border:2px solid #e5c990;background:linear-gradient(160deg,#30405e,#22304a);color:#f4e4bd}.mj-app .mj-action-buttons>.mj-pass-button{order:-1;margin-right:24px}.mj-app .mj-action-buttons>.mj-win-button{order:9;min-width:168px;font-size:20px;letter-spacing:2px}.mj-app .mj-action-buttons .is-hinted{box-shadow:0 0 0 3px #8ef0cc,0 0 20px #8ef0cc99;animation:mj-hint 1.1s ease-in-out infinite}.mj-app .mj-action-buttons>button:active:not(:disabled){transform:translateY(1px) scale(.98)}.mj-match .mj-arrange-help{font-size:13px;color:#c5cfd7}@media(max-height:760px){.mj-match .mj-arrange-help{font-size:11px;margin-bottom:3px}}.mj-match .mj-melds.mj-melds-many{--rt:clamp(17px,calc(var(--board-height)*.03),26px);gap:3px}.mj-match .mj-river.river-rows-3{--rt:min(clamp(32px,calc(var(--board-height)*.066),42px),max(20px,calc((var(--board-height) / 2 - var(--river-y) - 20px) / 3.75)))}.mj-match .mj-river.river-dense{--rt:min(clamp(32px,calc(var(--board-height)*.066),42px),max(18px,calc((var(--board-height) / 2 - var(--river-y) - 20px) / 5)))}@media(min-width:901px)and (max-width:1180px){.mj-match .mj-assists{flex-wrap:nowrap;gap:6px}.mj-match .mj-assists button{padding:6px 7px;font-size:11px;white-space:nowrap}}@media(hover:none){.mj-app .mj-human-hand .mj-tile:hover{transform:none}}@keyframes mj-glow{0%,to{box-shadow:0 0 0 2px #ffd57a,0 0 10px #ffc85f73}50%{box-shadow:0 0 0 2px #ffe39d,0 0 22px #ffc85fe6}}@keyframes mj-hint{0%,to{box-shadow:0 0 0 3px #8ef0cc,0 0 10px #8ef0cc59}50%{box-shadow:0 0 0 3px #b9ffe4,0 0 24px #8ef0ccbf}}.mj-app .mj-center{padding:20px 46px;display:grid;align-content:center;justify-items:center}.mj-app .mj-center h2{margin-bottom:3px}.mj-app .mj-wind-markers>b{position:absolute}.mj-app .mj-wind-markers>b.top,.mj-app .mj-wind-markers>b.self{display:flex;align-items:baseline;gap:5px;left:50%;transform:translate(-50%)}.mj-app .mj-wind-markers>b.top{top:4px}.mj-app .mj-wind-markers>b.self{bottom:4px;top:auto}.mj-app .mj-wind-markers>b.left{left:5px;top:50%;transform:translateY(-50%)}.mj-app .mj-wind-markers>b.right{right:5px;left:auto;top:50%;transform:translateY(-50%)}.mj-app .mj-wind-markers>b.top.is-riichi:after,.mj-app .mj-wind-markers>b.self.is-riichi:after{width:18px;margin:0 0 0 2px;align-self:center}@media(max-width:1600px){.mj-app .mj-seat-info>strong{font-size:18px}}@media(min-width:851px){.mj-app .seat-top .mj-speech,.mj-app .seat-right .mj-speech{bottom:auto;top:calc(100% + 8px);border-radius:9px 2px 9px 9px}.mj-app .seat-top .mj-speech:after,.mj-app .seat-right .mj-speech:after{bottom:auto;top:-6px;border-top:0;border-bottom:7px solid #f8f1df}}.mj-app .mj-river.river-scroll{scroll-snap-type:y mandatory}.mj-app .mj-river.river-scroll .mj-tile:not(.sideways){scroll-snap-align:start}@media(min-width:851px)and (max-height:691px){.mj-app .mj-match{padding-bottom:4px}}@media(min-width:851px)and (max-height:820px){.mj-app .seat-self .mj-speech{bottom:auto;top:4px;left:calc(100% + 10px);right:auto;border-radius:2px 9px 9px}.mj-app .seat-self .mj-speech:after{inset:8px auto auto -6px;border-top:0;border-left:0;border-right:7px solid #f8f1df;border-bottom:7px solid transparent}}.mj-app .mj-pace{position:relative}.mj-app .mj-pace-menu{position:absolute;right:0;top:calc(100% + 6px);z-index:60;display:grid;gap:6px;width:236px;padding:10px;border:1px solid #dcc38d55;border-radius:12px;background:#132235f2;box-shadow:0 14px 34px #040b14aa}.mj-app .mj-header-tools .mj-pace-menu>button{display:flex;justify-content:space-between;align-items:baseline;gap:10px;width:100%;padding:9px 12px;border-radius:9px;background:#ffffff0d;color:#e6e2ec;font-size:14px}.mj-app .mj-header-tools .mj-pace-menu>button small{font-size:12px;color:#a9b6c4}.mj-app .mj-header-tools .mj-pace-menu>button.on{background:linear-gradient(180deg,#f0d79c,#d9b86c);color:#2b1f08}.mj-app .mj-header-tools .mj-pace-menu>button.on small{color:#4d3a12}.mj-app .mj-pace-menu p{margin:2px 2px 0;font-size:12px;line-height:1.5;color:#a9b6c4}@media(max-width:1080px){.mj-app .mj-pace>button span{display:none}}.eyebrow{display:block;font-size:var(--fs-xs);font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:var(--r-md);font-weight:700;letter-spacing:.02em;white-space:nowrap;transition:transform var(--t-fast) var(--ease),background var(--t) var(--ease),border-color var(--t),box-shadow var(--t),filter var(--t)}.btn svg{flex:none}.btn--sm{min-height:36px;padding:0 14px;font-size:var(--fs-sm);border-radius:var(--r-sm)}.btn--md{min-height:44px;padding:0 18px;font-size:var(--fs-md)}.btn--lg{min-height:54px;padding:0 26px;font-size:var(--fs-lg);border-radius:var(--r-lg)}.btn--block{width:100%}.btn:active:not(:disabled){transform:translateY(1px) scale(.985)}.btn:disabled{opacity:.45;filter:saturate(.4)}.btn--primary{color:var(--accent-ink);background:linear-gradient(180deg,var(--accent-2),var(--accent) 55%,var(--gold-3));box-shadow:0 1px #ffffff8c inset,0 8px 20px #e9c57d40}.btn--secondary{color:var(--text);background:#ffffff12;border-color:var(--line-2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.btn--ghost{color:var(--text-2);background:transparent}.btn--danger{color:#fff;background:linear-gradient(180deg,#ff8f92,var(--danger));box-shadow:0 8px 20px #ff6f7340}.btn--jade{color:#06261d;background:linear-gradient(180deg,var(--jade-2),var(--jade));box-shadow:0 1px #ffffff80 inset,0 8px 20px #45c4a038}@media(hover:hover){.btn--primary:hover:not(:disabled){filter:brightness(1.06);box-shadow:0 1px #ffffff8c inset,0 10px 26px #e9c57d61}.btn--secondary:hover:not(:disabled){background:#ffffff1f;border-color:var(--line-3)}.btn--ghost:hover:not(:disabled){color:var(--text);background:#ffffff0f}.btn--jade:hover:not(:disabled){filter:brightness(1.06)}}.icon-btn{display:inline-grid;place-items:center;width:44px;height:44px;flex:none;border:1px solid var(--line);border-radius:var(--r-md);background:#ffffff0d;color:var(--text-2);transition:background var(--t),color var(--t),border-color var(--t),transform var(--t-fast)}.icon-btn:active:not(:disabled){transform:scale(.95)}.icon-btn.is-active{color:var(--accent);border-color:#e9c57d80}@media(hover:hover){.icon-btn:hover:not(:disabled){background:#ffffff1a;color:var(--text)}}.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 18px;border-radius:var(--r-md);font-weight:700;border:1px solid transparent}.primary-button{color:var(--accent-ink);background:linear-gradient(180deg,var(--accent-2),var(--accent) 55%,var(--gold-3))}.secondary-button{color:var(--text);background:#ffffff12;border-color:var(--line-2)}.primary-button:disabled,.secondary-button:disabled{opacity:.45}.segmented{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:6px;padding:5px;border-radius:var(--r-lg);background:#00000040;border:1px solid var(--line)}.segmented button{display:grid;align-content:center;gap:2px;min-height:44px;padding:6px 10px;border:1px solid transparent;border-radius:var(--r-md);background:transparent;color:var(--text-2);text-align:center;transition:background var(--t),color var(--t),border-color var(--t)}.segmented button b{font-size:var(--fs-md);font-weight:700}.segmented button small{font-size:var(--fs-xs);color:var(--text-3)}.segmented button.is-on{color:var(--accent-ink);background:linear-gradient(180deg,var(--accent-2),var(--accent));box-shadow:0 4px 14px #e9c57d40}.segmented button.is-on small{color:#3b2a0bc7}.segmented--lg button{min-height:64px}.segmented button:disabled{opacity:.42;cursor:not-allowed}@media(hover:hover){.segmented button:hover:not(.is-on):not(:disabled){background:#ffffff0f;color:var(--text)}}.toggle{position:relative;width:52px;height:30px;flex:none;border:1px solid var(--line-2);border-radius:var(--r-pill);background:#ffffff1a;transition:background var(--t)}.toggle span{position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#e9eef2;box-shadow:var(--shadow-1);transition:transform var(--t) var(--ease)}.toggle.is-on{background:var(--jade);border-color:transparent}.toggle.is-on span{transform:translate(22px)}.badge{display:inline-flex;align-items:center;gap:5px;min-height:24px;padding:2px 9px;border-radius:var(--r-pill);font-size:var(--fs-xs);font-weight:700;line-height:1.2;white-space:nowrap;border:1px solid transparent}.badge svg{width:14px;height:14px;flex:none}.badge--neutral{color:var(--text-2);background:#ffffff14;border-color:var(--line)}.badge--gold{color:var(--gold-ink);background:linear-gradient(180deg,var(--gold-2),var(--gold))}.badge--jade{color:#062a20;background:var(--jade-2)}.badge--coral{color:#3b0d10;background:#ffb2b6}.badge--sky{color:#07223f;background:#b9dcff}.badge--violet{color:#22104a;background:#d6c8ff}.badge--danger{color:#fff;background:var(--danger)}.meter{display:block;height:8px;border-radius:var(--r-pill);background:#ffffff1a;overflow:hidden}.meter i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--gold-3),var(--gold-2));transition:width var(--t-slow) var(--ease)}.meter--jade i{background:linear-gradient(90deg,#2a9d7f,var(--jade-2))}.meter--coral i{background:linear-gradient(90deg,#d65a62,#ffb2b6)}.tabs{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tabs button{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 16px;border:1px solid var(--line);border-radius:var(--r-pill);background:#ffffff0a;color:var(--text-2);font-weight:700;font-size:var(--fs-md);white-space:nowrap}.tabs button em{font-style:normal;font-size:var(--fs-xs);color:var(--text-3)}.tabs button.is-on{color:var(--accent-ink);background:var(--accent);border-color:transparent}.tabs button.is-on em{color:#3b2a0bb3}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-2);-webkit-backdrop-filter:blur(14px) saturate(1.1);backdrop-filter:blur(14px) saturate(1.1)}.overlay{position:fixed;inset:0;z-index:var(--z-dialog);display:grid;place-items:center;padding:16px;background:#03080e9e;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:fade-in var(--t) var(--ease)}.dialog{position:relative;display:flex;flex-direction:column;width:min(560px,100%);max-height:min(860px,calc(100dvh - 32px));border:1px solid var(--line-2);border-radius:var(--r-xl);background:linear-gradient(180deg,var(--panel-2),var(--panel-solid));box-shadow:var(--shadow-3);animation:pop-in var(--t-slow) var(--ease)}.dialog--sm{width:min(420px,100%)}.dialog--lg{width:min(760px,100%)}.dialog--xl{width:min(1040px,100%)}.dialog__head{display:grid;gap:4px;padding:24px 64px 8px 28px}.dialog__head h2{font-size:var(--fs-xl)}.dialog__close{position:absolute;top:14px;right:14px}.dialog__body{padding:12px 28px 24px;min-height:0;flex:1}.dialog__foot{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px;padding:16px 28px 22px;border-top:1px solid var(--line)}.overlay--sheet{place-items:stretch end;grid-template-rows:minmax(0,1fr);padding:0}.sheet{position:relative;display:flex;flex-direction:column;height:100%;border-left:1px solid var(--line-2);background:linear-gradient(180deg,var(--panel-2),var(--panel-solid));box-shadow:var(--shadow-3);animation:sheet-in var(--t-slow) var(--ease)}.sheet--right{width:min(520px,100vw);height:100dvh;max-height:100dvh}.sheet--bottom{align-self:end;width:100%;height:auto;max-height:92dvh;border-left:0;border-top:1px solid var(--line-2);border-radius:var(--r-xl) var(--r-xl) 0 0;animation-name:sheet-up}.sheet__close{position:absolute;top:14px;right:14px;z-index:2}.sheet__body{flex:1;min-height:0;padding:28px 28px 20px}.sheet__foot{display:flex;gap:12px;padding:16px 28px calc(18px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#0000002e}@media(max-width:640px){.overlay--sheet{place-items:end stretch}.sheet--right{width:100%;height:auto;max-height:94dvh;border-left:0;border-top:1px solid var(--line-2);border-radius:var(--r-xl) var(--r-xl) 0 0;animation-name:sheet-up}.dialog__head{padding:20px 56px 6px 20px}.dialog__body{padding:10px 20px 20px}.dialog__foot{padding:14px 20px 18px}.sheet__body{padding:24px 20px 16px}.sheet__foot{padding:14px 20px calc(16px + env(safe-area-inset-bottom))}}.toast{position:fixed;left:50%;top:18px;z-index:var(--z-toast);display:flex;align-items:center;gap:10px;max-width:min(560px,calc(100vw - 32px));padding:10px 10px 10px 18px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0e1c2af0;color:var(--text);box-shadow:var(--shadow-2);transform:translate(-50%);animation:toast-in var(--t-slow) var(--ease);font-weight:600;pointer-events:auto}.toast .icon-btn{width:34px;height:34px}.toast--error{border-color:#ff6f7399}.toast--success{border-color:#55d6a899}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes pop-in{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}@keyframes sheet-in{0%{transform:translate(30px);opacity:0}to{transform:none;opacity:1}}@keyframes sheet-up{0%{transform:translateY(30px);opacity:0}to{transform:none;opacity:1}}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,-8px)}to{opacity:1;transform:translate(-50%)}}.lobby{display:grid;grid-template-columns:minmax(0,1fr);gap:28px}.lobby>*,.lobby-hero>*,.lobby-hero__side>*{min-width:0}.lobby-hero{display:grid;grid-template-columns:minmax(260px,420px) minmax(0,1fr);gap:24px;align-items:stretch}.lobby-hero__art{position:relative;display:block;min-height:440px;padding:0;border:1px solid var(--line);border-radius:var(--r-xl);background:radial-gradient(ellipse at 50% 30%,rgba(233,197,125,.22),transparent 60%),linear-gradient(180deg,#1e3c5099,#0a1620cc);overflow:hidden;text-align:left;box-shadow:var(--shadow-2)}.lobby-hero__glow{position:absolute;left:50%;bottom:-20%;width:120%;aspect-ratio:1;transform:translate(-50%);border-radius:50%;background:radial-gradient(circle,rgba(69,196,160,.35),transparent 60%)}.lobby-hero__art .character-portrait{position:absolute;left:50%;bottom:0;background:none;overflow:visible;width:min(96%,calc(100% * 611 / 764 * 1.08));max-height:96%;transform:translate(-50%);transition:transform var(--t-slow) var(--ease)}.lobby-hero__art:after{content:"";position:absolute;inset:auto 0 0;height:22%;background:linear-gradient(180deg,transparent,rgba(10,22,32,.92));pointer-events:none}.lobby-hero__bubble,.lobby-hero__name{z-index:1}@media(hover:hover){.lobby-hero__art:hover .character-portrait{transform:translate(-50%) translateY(-6px) scale(1.02)}}.lobby-hero__bubble{position:absolute;right:14px;top:16px;z-index:1;max-width:44%;font-size:var(--fs-sm);padding:10px 14px;border-radius:16px 16px 4px;background:#fff8ec;color:#2b2420;font-weight:700;line-height:1.4;box-shadow:var(--shadow-2)}.lobby-hero__name{position:absolute;left:16px;bottom:16px;display:grid;gap:2px;padding:10px 14px;border-radius:var(--r-md);background:#060e16cc;border:1px solid var(--line)}.lobby-hero__name small{font-size:var(--fs-xs);color:var(--accent);font-weight:800;letter-spacing:.12em}.lobby-hero__name b{font-size:var(--fs-xl)}.lobby-hero__name em{font-style:normal;font-size:var(--fs-sm);color:var(--text-3)}.lobby-hero__side{display:grid;align-content:start;gap:12px}.lobby-hello{display:grid;gap:6px;padding:4px 4px 8px}.lobby-hello h1{font-size:clamp(24px,3vw,36px)}.lobby-hello p{color:var(--text-2)}.hero-card{display:flex;align-items:center;gap:14px;width:100%;min-height:76px;padding:12px 16px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--panel);color:var(--text);text-align:left;box-shadow:var(--shadow-1);transition:transform var(--t),border-color var(--t),background var(--t)}button.hero-card:active{transform:scale(.99)}@media(hover:hover){button.hero-card:hover{border-color:var(--line-3);background:var(--panel-2)}}.hero-card__icon{display:grid;place-items:center;width:48px;height:48px;flex:none;border-radius:14px;background:linear-gradient(160deg,var(--gold-2),var(--gold-3));color:var(--gold-ink)}.hero-card__icon--violet{background:linear-gradient(160deg,#d8c9ff,#7d5ce0);color:#1d0f45}.hero-card__text{display:grid;gap:2px;flex:1;min-width:0}.hero-card__text b{font-size:var(--fs-lg)}.hero-card__text small{color:var(--text-3);font-size:var(--fs-sm);line-height:1.45}.hero-card--resume{border-color:#e9c57d8c;background:linear-gradient(90deg,rgba(233,197,125,.16),var(--panel))}.hero-card--stones .stone-dots i{width:18px;height:18px;margin-left:-6px}.lobby-games{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}.lobby-games>*{min-width:0}.lobby-games__bar .tabs{min-width:0;flex:1 1 auto}.lobby-games__bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.search{display:flex;align-items:center;gap:8px;min-height:44px;padding:0 12px;border:1px solid var(--line-2);border-radius:var(--r-pill);background:var(--panel);color:var(--text-2)}.search input{width:180px;border:0;background:none;outline:none;color:var(--text);font-size:16px}.search input::placeholder{color:var(--text-3);opacity:1}.search button{display:grid;place-items:center;width:28px;height:28px;border:0;border-radius:50%;background:#ffffff14;color:var(--text-2)}.game-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:14px}.game-card{position:relative}.game-card__main{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"emblem text" "emblem meta";align-items:center;column-gap:14px;row-gap:6px;width:100%;min-height:104px;padding:16px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--panel);color:var(--text);text-align:left;box-shadow:var(--shadow-1);transition:transform var(--t) var(--ease),border-color var(--t),background var(--t)}.game-card__main .game-emblem{grid-area:emblem;filter:drop-shadow(0 6px 12px rgba(0,0,0,.35))}.game-card__text{grid-area:text;display:grid;gap:2px;padding-right:28px}.game-card__text b{font-size:var(--fs-lg)}.game-card__text small{color:var(--text-3);font-size:var(--fs-sm)}.game-card__meta{grid-area:meta;display:flex;align-items:center;gap:10px;color:var(--text-3);font-size:var(--fs-sm)}.game-card__meta>span{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}@media(hover:hover){.game-card__main:hover{transform:translateY(-3px);border-color:var(--line-3);background:var(--panel-2)}}.game-card__main:active{transform:scale(.99)}.game-card__fav{position:absolute;top:10px;right:10px;display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:50%;background:transparent;color:var(--text-3)}.game-card__fav.is-on{color:var(--gold)}.empty{padding:24px;text-align:center;color:var(--text-3)}@media(max-width:900px){.lobby-hero{grid-template-columns:minmax(0,1fr)}.lobby-hero__art{min-height:300px}.lobby-hero__art .character-portrait{width:58%;bottom:-24%}}@media(max-width:560px){.lobby-hero__art .character-portrait{left:auto;right:-4%;width:62%;transform:none}.lobby-hero__art:hover .character-portrait{transform:none}.lobby-hero__name{max-width:46%}.lobby-hero__bubble{max-width:52%}.lobby-hero__bubble{max-width:46%}.search input{width:120px}}@media(max-width:900px)and (max-height:500px)and (orientation:landscape){.lobby-hero{grid-template-columns:minmax(200px,34%) minmax(0,1fr);gap:14px}.lobby-hero__art{min-height:0;height:calc(100dvh - 82px)}.lobby-hero__art .character-portrait{width:auto;height:94%;bottom:0}.lobby-hero__bubble{max-width:60%;font-size:var(--fs-xs);padding:6px 10px}.lobby-hero__name{padding:6px 10px}.lobby-hero__name b{font-size:var(--fs-lg)}}@media(max-width:560px){.game-grid{grid-template-columns:1fr 1fr;gap:10px}.game-card__main{grid-template-columns:1fr;grid-template-areas:"emblem" "text" "meta";padding:14px;min-height:0}.game-card__main .game-emblem{width:48px;height:48px}.game-card__meta{flex-wrap:wrap;gap:6px}.lobby-hero__art{min-height:240px}}.mode-sheet__head{display:flex;align-items:center;gap:16px;margin-bottom:16px;padding-right:44px}.mode-sheet__head h2{font-size:var(--fs-2xl)}.mode-sheet__head p{display:flex;align-items:center;gap:6px;color:var(--text-3);font-size:var(--fs-sm)}.mode-sheet__head p svg:not(:first-child){margin-left:8px}.mode-sheet__section{display:grid;gap:12px;padding-top:18px}.mode-sheet__section h3{font-size:var(--fs-base);color:var(--text-2)}.mode-sheet__ai{display:flex;gap:8px;padding:10px 12px;border-radius:var(--r-md);background:#e9c57d14;color:var(--text-2);font-size:var(--fs-sm);line-height:1.55}.mode-sheet__ai svg{flex:none;color:var(--gold);margin-top:2px}.mode-sheet__note{color:var(--text-3);font-size:var(--fs-sm);line-height:1.55}.mode-sheet__warn{padding:10px 12px;border-radius:var(--r-md);background:#ffc46b1a;border:1px solid rgba(255,196,107,.35);color:#ffe2b0;font-size:var(--fs-sm)}.mode-sheet__error{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:var(--r-md);background:#ff6f731f;border:1px solid rgba(255,111,115,.45);color:#ffd2d4;font-size:var(--fs-sm)}.invite{border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}.invite__toggle{display:flex;align-items:center;gap:8px;width:100%;min-height:48px;padding:0 14px;border:0;background:#ffffff0a;color:var(--text);font-weight:700;text-align:left}.invite__toggle svg{color:var(--violet)}.invite__toggle span{margin-left:auto;color:var(--text-3);font-weight:600;font-size:var(--fs-sm)}.invite__body{display:grid;gap:10px;padding:12px 14px 14px}.invite__grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.invite__npc{display:grid;justify-items:center;gap:4px;padding:6px 4px;border:1px solid var(--line);border-radius:var(--r-md);background:#ffffff08;color:var(--text-2);font-size:var(--fs-xs);font-weight:700}.invite__npc .character-portrait{width:44px;border-radius:12px}.invite__npc.is-on{border-color:var(--gold);background:#e9c57d1f;color:var(--text)}.invite__npc:disabled{opacity:.5}.guide{display:grid;gap:14px}.guide__goal{display:flex;gap:8px;padding:12px 14px;border-radius:var(--r-md);background:#45c4a01f;border:1px solid rgba(69,196,160,.35);font-weight:700;line-height:1.5}.guide__goal svg{flex:none;color:var(--jade-2);margin-top:3px}.guide__steps{display:grid;gap:10px;margin:0;padding:0;list-style:none;counter-reset:step}.guide__steps li{display:grid;grid-template-columns:32px 1fr;grid-template-rows:auto auto;column-gap:10px;row-gap:2px;padding:12px;border-radius:var(--r-md);background:#ffffff0a;border:1px solid var(--line);counter-increment:step}.guide__steps li:before{content:counter(step);grid-row:span 2;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--gold);color:var(--gold-ink);font-weight:900}.guide__steps b{font-size:var(--fs-base)}.guide__steps span{color:var(--text-2);font-size:var(--fs-sm);line-height:1.6}.guide__example{display:flex;align-items:center;gap:16px;padding:12px;border-radius:var(--r-md);background:#0003}.guide__cards{display:flex;--cw:44px}.guide__cards .playing-card+.playing-card{margin-left:-14px}.guide__example>div:last-child{display:grid;gap:2px}.guide__example small{color:var(--text-3);font-size:var(--fs-xs)}.guide__example span{color:var(--text-2);font-size:var(--fs-sm)}.guide__remember{display:flex;gap:8px;color:var(--text-2);font-size:var(--fs-sm);line-height:1.6}.guide__remember svg{flex:none;color:var(--jade-2);margin-top:3px}.rules{display:grid;gap:14px}.rules__intro{color:var(--text);line-height:1.7}.rules__house{padding:8px 12px;border-radius:var(--r-md);background:#ffffff0d;color:var(--text-3);font-size:var(--fs-sm)}.rules section{display:grid;gap:6px}.rules h3{display:flex;align-items:center;gap:8px;font-size:var(--fs-base)}.rules h3 span{display:grid;place-items:center;min-width:30px;height:24px;padding:0 6px;border-radius:8px;background:#e9c57d2e;color:var(--gold-2);font-size:var(--fs-xs);font-weight:900}.rules p{color:var(--text-2);font-size:var(--fs-md);line-height:1.75}.cast{display:grid;grid-template-columns:minmax(280px,380px) minmax(0,1fr);gap:20px;align-items:start}.cast__list{display:grid;gap:12px;position:sticky;top:88px}.cast__grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.cast-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--panel);color:var(--text);text-align:left;transition:border-color var(--t),background var(--t)}.cast-item.is-on{border-color:var(--accent-c,var(--gold));background:linear-gradient(135deg,color-mix(in srgb,var(--accent-c,#e9c57d) 22%,transparent),var(--panel))}.cast-item__face{width:52px;flex:none;border-radius:14px;overflow:hidden}.cast-item__text{display:grid;gap:4px;min-width:0;flex:1}.cast-item__text b{font-size:var(--fs-base);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cast-item__text small{color:var(--text-3);font-size:var(--fs-xs);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cast-item--me{border-color:#45c4a066}.cast__detail{display:grid;grid-template-columns:minmax(220px,360px) minmax(0,1fr);gap:20px;padding:20px;border:1px solid var(--line);border-radius:var(--r-xl);background:linear-gradient(135deg,color-mix(in srgb,var(--accent-c) 18%,transparent),var(--panel) 40%);box-shadow:var(--shadow-2)}.cast__art{position:relative;min-height:440px;container-type:size;border-radius:var(--r-lg);overflow:hidden;background:radial-gradient(ellipse at 50% 40%,color-mix(in srgb,var(--accent-l) 40%,transparent),transparent 70%)}.cast__art-glow{position:absolute;inset:auto 10% -10%;height:40%;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--accent-c) 50%,transparent),transparent 70%)}.cast__art .character-portrait{position:absolute;left:50%;bottom:0;width:min(92cqw,calc((100cqh - 12px) * 1024 / 1536));transform:translate(-50%)}.cast__info{display:grid;align-content:start;gap:14px}.cast__name{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.cast__name h1{font-size:var(--fs-3xl)}.name-edit{display:flex;gap:8px}.name-edit input{min-height:44px;width:220px;padding:0 12px;border:1px solid var(--line-2);border-radius:var(--r-md);background:#00000040;font-size:16px}.field-error{color:#ffb2b6;font-size:var(--fs-sm)}.cast__tagline{color:var(--text-2);font-size:var(--fs-base);line-height:1.6}.cast__traits{display:flex;flex-wrap:wrap;gap:6px}.cast__block{display:grid;gap:10px;padding:14px;border-radius:var(--r-lg);background:#0000002e;border:1px solid var(--line)}.cast__block h3{font-size:var(--fs-base)}.cast__aff{display:flex;align-items:center;gap:10px}.cast__aff>span:not(.badge){display:inline-flex;align-items:center;gap:6px;color:var(--text-2);font-weight:700}.cast__aff>span:not(.badge) svg{color:var(--coral)}.cast__aff b{font-size:var(--fs-2xl);margin-left:auto}.cast__hint{color:var(--text-3);font-size:var(--fs-sm);line-height:1.6}.cast__rel>div{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.cast__rel>div>span:not(.badge){display:inline-flex;align-items:center;gap:4px;min-width:72px;color:var(--text-3);font-size:var(--fs-sm)}.cast__stone-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.stone-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.stone-btn{position:relative;display:grid;justify-items:center;gap:4px;min-height:88px;padding:12px 8px;border:1px solid var(--line-2);border-radius:var(--r-md);background:#ffffff0a;color:var(--text);font-size:var(--fs-sm)}.stone-btn b{font-size:var(--fs-sm)}.stone-btn small{color:var(--text-3);font-size:var(--fs-xs)}.stone-btn__gem{width:22px;height:22px;transform:rotate(45deg);border-radius:6px}.stone-btn--common .stone-btn__gem{background:linear-gradient(135deg,#eaf3fb,#9fbad3)}.stone-btn--rare .stone-btn__gem{background:linear-gradient(135deg,#e3d8ff,#8a6cf0)}.stone-btn--legendary .stone-btn__gem{background:linear-gradient(135deg,#ffe3a1,#ff8fb8)}.stone-btn:disabled{opacity:.45}@media(hover:hover){.stone-btn:hover:not(:disabled){border-color:var(--line-3);background:#ffffff14}}@media(max-width:1080px){.cast{grid-template-columns:1fr}.cast__list{position:static}.cast__grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}}@media(max-width:720px){.cast__detail{grid-template-columns:1fr;padding:14px}.cast__art{min-height:320px}.cast__art .character-portrait{width:min(64cqw,calc((100cqh - 12px) * 1024 / 1536))}}.page-head{display:grid;gap:6px;margin-bottom:20px}.page-head h1{font-size:clamp(26px,3vw,36px)}.page-head p{color:var(--text-2)}.records,.settings{display:grid;gap:18px;max-width:1080px;margin:0 auto}.stat-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.stat-tile{display:grid;gap:4px;padding:16px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--panel)}.stat-tile svg{color:var(--gold)}.stat-tile b{font-size:var(--fs-3xl);line-height:1.1}.stat-tile b small{font-size:var(--fs-base);color:var(--text-3)}.stat-tile span{color:var(--text-3);font-size:var(--fs-sm)}.records__modes,.records__recent,.set-group{padding:18px 20px}.records h2,.set-group h2{font-size:var(--fs-lg);margin-bottom:12px}.mode-rows{display:grid;gap:6px}.mode-row{display:grid;grid-template-columns:36px 1fr 70px 60px 60px;align-items:center;gap:12px;padding:6px 8px;border-radius:var(--r-md)}.mode-row:nth-child(odd){background:#ffffff08}.mode-row span{color:var(--text-2);font-size:var(--fs-sm)}.mode-row__rate{color:var(--gold-2)!important;font-weight:800;text-align:right}.record{border:1px solid var(--line);border-radius:var(--r-lg);margin-top:10px;overflow:hidden}.record__head{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border:0;background:#ffffff08;color:var(--text);text-align:left}.record__title{display:grid;gap:2px;flex:1;min-width:0}.record__title small{color:var(--text-3);font-size:var(--fs-sm)}.record__score{font-weight:800;font-size:var(--fs-lg);min-width:64px;text-align:right}.record__chev{transition:transform var(--t)}.record.is-open .record__chev{transform:rotate(180deg)}.record__body{display:grid;gap:12px;padding:12px 14px 16px;color:var(--text-2)}.record__players{display:grid;gap:8px;margin:0;padding:0;list-style:none}.record__players li{display:grid;grid-template-columns:minmax(80px,140px) 60px 1fr;align-items:center;gap:10px}.record__players li.is-winner b{color:var(--gold-2)}.record__cards{display:flex;--cw:30px;overflow:hidden}.record__cards .playing-card+.playing-card{margin-left:-12px}.record__hands{display:flex;flex-wrap:wrap;gap:8px;font-size:var(--fs-sm)}.record__hands span{padding:2px 10px;border-radius:var(--r-pill);background:#ffffff0d}.set-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-top:1px solid var(--line)}.set-row:first-of-type{border-top:0}.set-row>div:first-child{display:grid;gap:3px}.set-row small{color:var(--text-3);font-size:var(--fs-sm);line-height:1.5}.set-row__control{flex:none}.set-row__control .segmented{min-width:280px}.set-note{margin-bottom:12px;color:var(--text-3);font-size:var(--fs-sm)}.link-btn{min-height:40px;padding:0 14px;border:1px solid var(--line-2);border-radius:var(--r-md);background:transparent;color:var(--text-2);font-weight:700}.about p{color:var(--text-2);line-height:1.7;margin-bottom:8px}.about details{margin-top:6px}.about summary{cursor:pointer;color:var(--text-2);font-weight:700}.about pre{max-height:220px;padding:12px;border-radius:var(--r-md);background:#0000004d;color:var(--text-3);font-size:12px;white-space:pre-wrap}@media(max-width:720px){.stat-tiles{grid-template-columns:1fr 1fr}.set-row{flex-direction:column;align-items:stretch}.set-row__control .segmented{min-width:0}.mode-row{grid-template-columns:32px 1fr 56px 56px}.mode-row span:nth-of-type(2){display:none}.record__players li{grid-template-columns:1fr 60px}.record__cards{grid-column:span 2}}.save-transfer{display:grid;gap:12px}.save-transfer-heading{display:flex;gap:14px;color:var(--text)}.save-transfer-heading svg{color:var(--gold);margin-top:2px}.save-transfer h3{margin:0 0 6px;font-size:var(--fs-base)}.save-transfer-heading p{color:var(--text-3);font-size:var(--fs-sm);line-height:1.6}.save-transfer-buttons{display:flex;gap:10px;flex-wrap:wrap}.save-transfer>small{color:var(--text-3);font-size:var(--fs-sm)}.save-transfer-message{display:flex;align-items:center;gap:7px;color:var(--jade-2);font-size:var(--fs-sm)}.save-transfer-error{color:#ffb2b6;font-size:var(--fs-sm);line-height:1.6}.save-import-backdrop{position:fixed;inset:0;z-index:var(--z-dialog);display:grid;place-items:center;padding:16px;background:#03080e9e;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.save-import-dialog{position:relative;width:min(540px,100%);padding:28px;border-radius:var(--r-xl);border:1px solid var(--line-2);background:linear-gradient(180deg,var(--panel-2),var(--panel-solid));color:var(--text);box-shadow:var(--shadow-3)}.save-import-dialog>.icon-button{position:absolute;right:12px;top:12px}.save-import-dialog h2{margin:0 0 12px;font-size:var(--fs-xl)}.save-import-dialog p{color:var(--text-2);font-size:var(--fs-sm);line-height:1.7}.save-import-dialog ul{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0;padding:0;list-style:none}.save-import-dialog li{padding:4px 10px;border-radius:var(--r-pill);background:#ffffff12;font-size:var(--fs-sm)}.save-import-dialog>div{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.web-storage-status,.save-storage-size{display:grid;gap:8px;padding:14px;border-radius:var(--r-lg);border:1px solid var(--line);background:#0000002e;color:var(--text-2)}.web-storage-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.web-storage-heading h4,.save-storage-size h4{margin:0;font-size:var(--fs-md);color:var(--text)}.web-storage-heading>span{padding:2px 10px;border-radius:var(--r-pill);background:#ffc46b26;color:var(--warning);font-size:var(--fs-xs);font-weight:700}.web-storage-heading>span.is-persistent{background:#55d6a826;color:var(--success)}.web-storage-status p,.save-storage-size p{margin:0;font-size:var(--fs-sm);line-height:1.6}.web-storage-estimate,.save-storage-size small,.web-storage-estimate small{color:var(--text-3);font-size:var(--fs-sm)}.web-storage-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.web-storage-feedback,.web-storage-limit{font-size:var(--fs-sm);color:var(--text-3)}.save-storage-size>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.save-storage-size strong{color:var(--gold-2)}.save-transfer .text-button,.save-storage-size .text-button,.web-storage-actions .text-button{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 12px;border:1px solid var(--line-2);border-radius:var(--r-sm);color:var(--text-2);font-weight:700;font-size:var(--fs-sm)}.save-import-dialog .icon-button{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line);border-radius:var(--r-md);color:var(--text-2)}.deal-sequence{position:absolute;inset:0;z-index:12;pointer-events:none;isolation:isolate;overflow:hidden;border-radius:24px;color:#fff3d0}.deal-pack{position:absolute;left:50%;top:42%;width:42px;height:59px;transform:translate(-50%,-50%) rotate(-8deg);filter:drop-shadow(0 4px 7px #082e3280)}.deal-pack i,.deal-pack>span,.deal-flying-card,.deal-destinations i{position:absolute;width:39px;height:55px;border:2px solid #f4e7b8;border-radius:5px;background:repeating-linear-gradient(45deg,#1d6559 0 5px,#327363 5px 6px);box-shadow:inset 0 0 0 2px #bca867,0 2px 5px #12382c66}.deal-pack i:nth-child(1){transform:translate(-5px,4px) rotate(-5deg)}.deal-pack i:nth-child(2){transform:translate(-2px,1px) rotate(-2deg)}.deal-pack>span{display:grid;place-items:center;font-size:26px;color:#f7e6ae}.deal-flights{position:absolute;inset:0}.deal-flying-card{left:50%;top:42%;display:grid;place-items:center;opacity:0;transform:translate(-50%,-50%) scale(.9);animation:deal-card-flight .45s cubic-bezier(.23,.66,.29,1) var(--deal-delay) both}.deal-flying-card>span{font-style:normal;font-size:25px;color:#f3df9f}.deal-destinations>span{position:absolute;transform:translate(-50%,-50%);opacity:0;animation:deal-landed .26s ease 1.05s forwards;width:42px;height:57px}.deal-destinations i:nth-child(1){transform:rotate(-6deg) translate(-4px)}.deal-destinations i:nth-child(2){transform:rotate(2deg)}.deal-destinations i:nth-child(3){transform:rotate(8deg) translate(5px)}.deal-caption{position:absolute;top:62%;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:16px;border:1px solid #eed9a455;background:#123d35ed;border-radius:12px;padding:10px 15px;box-shadow:0 6px 20px #082c2855;white-space:nowrap}.deal-caption>div{display:flex;flex-direction:column;gap:4px}.deal-caption b{font-size:16px;letter-spacing:2px}.deal-caption span{font-size:10px;color:#d8dfc2}.deal-caption button{pointer-events:auto;border:1px solid #e0cc9780;color:#f9e8b2;background:#52745c;border-radius:7px;padding:7px 11px;font:inherit;font-size:11px;cursor:pointer}.deal-caption button:hover{background:#64866e}.deal-caption button:focus-visible{outline:2px solid #ffdc88;outline-offset:3px}.deal-caption button>span{font-size:16px;color:inherit;margin-left:5px}.deal-sequence.is-reduced .deal-flights{display:none}.deal-sequence.is-reduced .deal-destinations>span{animation:none;opacity:1}.deal-sequence.is-reduced .deal-pack{transform:translate(-50%,-50%)}.deal-sequence.is-paused *{animation-play-state:paused!important}.deal-caption button:disabled{opacity:.5;cursor:default}@keyframes deal-card-flight{0%{left:50%;top:42%;opacity:0;transform:translate(-50%,-50%) rotate(0) scale(.82)}12%{opacity:1}85%{opacity:1}to{left:var(--target-x);top:var(--target-y);opacity:0;transform:translate(-50%,-50%) rotate(var(--target-rotation)) scale(.72)}}@keyframes deal-landed{0%{opacity:0}to{opacity:.88}}.action-effect{position:absolute;z-index:11;left:50%;top:42%;width:clamp(180px,32vw,330px);height:180px;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;flex-direction:column;pointer-events:none!important;animation:effect-lifetime var(--effect-duration,.9s) ease both;filter:drop-shadow(0 5px 9px #092b3366);contain:layout style}.action-effect *{pointer-events:none!important}.effect-art{position:relative;display:grid;place-items:center;height:94px;width:100%;flex-shrink:0}.effect-caption{display:flex;flex-direction:column;align-items:center;gap:3px;max-width:100%;text-align:center;padding:6px 20px;border-radius:30px;background:linear-gradient(90deg,#133e3400,#123d35ee 20% 80%,#133e3400);color:#ffe8ae}.action-effect .effect-caption>b{max-width:100%;white-space:normal;overflow-wrap:anywhere}.effect-caption>b{font-size:23px;line-height:1.2;font-weight:800;letter-spacing:3px;text-shadow:0 2px 0 #5b5125;white-space:nowrap}.effect-caption>span{font-size:10px;line-height:1.5;color:#f0e7c9;max-width:260px;overflow-wrap:anywhere}.effect-cards{height:74px;display:flex;align-items:center;justify-content:center;gap:6px;position:relative}.effect-card{display:grid;place-items:center;width:36px;height:51px;background:#fff4d6;border:2px solid #ddc287;box-shadow:inset 0 0 0 2px #fffbe9,0 3px 9px #0c302b77;border-radius:5px;color:#315b54;font-style:normal;font-size:26px;position:relative;animation:motif-card-arrive .38s cubic-bezier(.15,.65,.3,1.15) calc(var(--card-index)*55ms) both}.effect-card:nth-of-type(2n){color:#b96960}.art-pair{gap:13px}.art-pair .effect-card{animation:pair-resonate .7s ease both}.art-pair .effect-card:nth-of-type(2){animation-delay:65ms}.art-pair:before,.art-pair:after{content:"";position:absolute;left:50%;top:50%;width:90px;height:70px;border:1px solid #f3dc9a;transform:translate(-50%,-50%);border-radius:50%;animation:pair-ring .75s ease-out both}.art-pair:after{animation-delay:.13s}.attached-cards{display:flex;align-items:center;gap:2px;margin-left:6px}.attached-cards>small{color:#ffdeb1;font-size:17px;margin-right:3px}.attached-cards .effect-card{width:27px;height:38px;font-size:19px;animation:wing-card-arrive .45s ease .18s both}.art-straight .effect-card{transform-origin:center bottom;animation:straight-card .55s ease calc(var(--card-index)*65ms) both}.art-straight .effect-trace,.art-pair-run .effect-trace{position:absolute;left:-22px;right:-22px;height:2px;bottom:0;background:linear-gradient(90deg,transparent,#f5d77d,transparent);animation:straight-trace .9s ease both}.art-pair-run{gap:3px}.art-pair-run .effect-card{width:30px;height:45px;font-size:22px}.art-pair-run .effect-card:nth-of-type(2n){margin-right:7px;transform:translateY(-7px)}.combo-plane-art{position:relative;width:190px;height:82px;animation:plane-flight 1.1s cubic-bezier(.2,.55,.25,1) both}.combo-plane-art svg{position:absolute;right:0;top:0;width:120px;height:75px;transform:rotate(-12deg);fill:#f2ddb0;stroke:#b38f52;stroke-width:1.3}.combo-plane-art svg path+path{fill:none;stroke:#5e9186;stroke-width:2.4}.air-trail{position:absolute;top:36px;right:79px;width:105px;height:2px;background:linear-gradient(90deg,transparent,#eac779);transform:rotate(-12deg);transform-origin:right}.air-trail.trail-2{top:44px;right:73px;width:83px;opacity:.65}.air-trail.trail-3{top:52px;right:79px;width:65px;opacity:.45}.combo-bomb-art{width:105px;height:105px;position:relative}.combo-bomb-art svg{width:100%;height:100%;position:relative;z-index:2;fill:#334950;stroke:#e9bd70;stroke-width:2;animation:bomb-land .46s ease both}.combo-bomb-art .bomb-fuse{fill:none;stroke:#d9bf84;stroke-width:3}.combo-bomb-art .bomb-shine{fill:none;stroke:#abc3c4;stroke-width:4;stroke-linecap:round}.combo-bomb-art .bomb-spark{fill:#ffc668;stroke:#e59843;stroke-width:1;transform-origin:83px 17px;animation:bomb-spark .45s ease both}.shock-ring{position:absolute;left:50%;top:59%;width:70px;height:70px;border:3px solid #f0c17c;border-radius:50%;transform:translate(-50%,-50%);opacity:0;animation:bomb-shock .8s ease-out .25s both}.shock-ring.ring-2{animation-delay:.39s;border-width:1px}.shock-ring.ring-3{animation-delay:.53s;border-color:#f3ddae80;border-width:1px}.bomb-rays{position:absolute;left:50%;top:59%;width:1px;height:1px}.bomb-rays i{position:absolute;height:12px;width:3px;border-radius:4px;background:#eec580;transform:rotate(var(--ray)) translateY(-45px);animation:bomb-ray .65s ease-out .3s both}.combo-rocket-art{position:relative;width:170px;height:100px}.rocket-pair{position:absolute;left:49px;top:9px;display:flex;gap:5px;transform:rotate(14deg);animation:rocket-rise 1.15s cubic-bezier(.3,.2,.3,1) both}.joker-rocket{position:relative;width:31px;height:57px;border:2px solid #ecd197;border-radius:50% 50% 5px 5px;background:#fff3d2;color:#42695f;display:flex;align-items:center;flex-direction:column;justify-content:center;z-index:2;box-shadow:0 3px 6px #213f4488}.joker-rocket b{font-size:9px;writing-mode:vertical-rl;letter-spacing:1px;line-height:1}.joker-rocket>span{font-size:15px;line-height:1;margin-top:3px}.joker-rocket.big-joker{color:#b56162;transform:translateY(-10px)}.joker-rocket:before,.joker-rocket:after{content:"";position:absolute;bottom:2px;width:7px;height:16px;background:#e0bd79;z-index:-1}.joker-rocket:before{left:-6px;clip-path:polygon(100% 0,100% 100%,0 100%)}.joker-rocket:after{right:-6px;clip-path:polygon(0 0,100% 100%,0 100%)}.rocket-flame{position:absolute;top:43px;left:7px;width:49px;height:42px;background:linear-gradient(#ffe5a8,#ed994c88,transparent);clip-path:polygon(0 0,100% 0,78% 71%,67% 42%,47% 100%,30% 50%,19% 76%);animation:rocket-plume .85s ease both}.rocket-orbit{position:absolute;width:127px;height:42px;border:1px solid #ddbe7699;border-radius:50%;left:19px;top:48px;transform:rotate(-18deg)}.rocket-spark{position:absolute;color:#ffe0a0;font-size:26px;animation:soft-spark .9s ease both}.rocket-spark.spark-a{right:15px;top:12px}.rocket-spark.spark-b{left:13px;bottom:5px;font-size:19px;animation-delay:.18s}.effect-action-symbol{display:grid;place-items:center;width:65px;height:65px;border:1px solid #ead39999;border-radius:50%;color:#ffe7a9;font-size:42px;background:#265548d9;animation:motif-card-arrive .35s ease both}.effect-pass .effect-action-symbol,.effect-fold .effect-action-symbol,.effect-lose .effect-action-symbol{color:#d6e4d8;border-color:#aac5b5}.effect-win .effect-action-symbol{color:#ffe291;font-size:59px;border-width:2px;background:#77693dd9}.effect-win .effect-caption>b{color:#ffe39a}.action-effect.is-reduced{animation:reduced-effect-lifetime var(--effect-duration,.38s) linear both;height:auto;min-height:47px}.action-effect.is-reduced .effect-art{display:none}.action-effect.is-reduced .effect-caption{padding:8px 20px;border:1px solid #ddc48955;border-radius:12px;background:#173f36ed}.action-effect.is-reduced .effect-caption>b{font-size:18px;letter-spacing:1px}@keyframes effect-lifetime{0%{opacity:0;transform:translate(-50%,-45%) scale(.93)}12%,72%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-57%) scale(1.025)}}@keyframes reduced-effect-lifetime{0%,80%{opacity:1}to{opacity:0}}@keyframes motif-card-arrive{0%{opacity:0;transform:translateY(18px) rotate(-8deg) scale(.84)}to{opacity:1;transform:translateY(0) rotate(0) scale(1)}}@keyframes pair-resonate{0%{opacity:0;transform:translateY(12px) scale(.9)}30%{opacity:1;transform:translateY(-5px) scale(1.06)}60%,to{opacity:1;transform:translateY(0) scale(1)}}@keyframes pair-ring{0%{opacity:.8;transform:translate(-50%,-50%) scale(.65)}to{opacity:0;transform:translate(-50%,-50%) scale(1.45)}}@keyframes wing-card-arrive{0%{opacity:0;transform:translate(25px) rotate(18deg)}to{opacity:1;transform:translate(0) rotate(0)}}@keyframes straight-card{0%{opacity:0;transform:translate(-20px,12px) rotate(-8deg)}to{opacity:1;transform:translate(0) rotate(0)}}@keyframes straight-trace{0%{opacity:0;transform:scaleX(.1)}45%{opacity:1;transform:scaleX(1)}to{opacity:0;transform:scaleX(1.1)}}@keyframes plane-flight{0%{opacity:0;transform:translate(-55px,15px) scale(.85)}25%{opacity:1}68%{opacity:1;transform:translate(15px,-4px) scale(1)}to{opacity:0;transform:translate(72px,-23px) scale(.94)}}@keyframes bomb-land{0%{opacity:0;transform:translateY(-15px) rotate(-20deg) scale(.75)}50%{opacity:1;transform:translateY(3px) rotate(6deg) scale(1.06)}to{opacity:1;transform:translateY(0) rotate(0) scale(1)}}@keyframes bomb-spark{0%{transform:scale(.4)}60%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes bomb-shock{0%{opacity:.8;transform:translate(-50%,-50%) scale(.5)}to{opacity:0;transform:translate(-50%,-50%) scale(2.3)}}@keyframes bomb-ray{0%{opacity:0;transform:rotate(var(--ray)) translateY(-24px)}30%{opacity:1}to{opacity:0;transform:rotate(var(--ray)) translateY(-89px)}}@keyframes rocket-rise{0%{opacity:0;transform:translate(-8px,24px) rotate(14deg) scale(.85)}20%,68%{opacity:1}to{opacity:0;transform:translate(22px,-30px) rotate(14deg) scale(1.04)}}@keyframes rocket-plume{0%{opacity:0;transform:scaleY(.2);transform-origin:top}40%{opacity:.95;transform:scaleY(1)}to{opacity:.35;transform:scaleY(1.2)}}@keyframes soft-spark{0%{opacity:0;transform:scale(.3)}45%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.7)}}@media(max-height:800px){.action-effect{height:145px;top:40%}.effect-art{height:79px;transform:scale(.85)}.effect-caption>b{font-size:20px}.deal-caption{padding:8px 12px;gap:12px}.deal-caption b{font-size:14px}.deal-caption span{font-size:9px}}@media(prefers-reduced-motion:reduce){.deal-flights{display:none}.deal-destinations>span{animation:none;opacity:1}.action-effect .effect-art{display:none}.action-effect{animation:reduced-effect-lifetime var(--effect-duration,.38s) linear both}.deal-pack{transform:translate(-50%,-50%)}}.red-ace-rocket .joker-rocket{color:#b51e34}.red-ace-rocket .joker-rocket b{font-size:16px;writing-mode:horizontal-tb;letter-spacing:0}.ptable{--u:clamp(.5px,min(100vw / 1280,100dvh / 720),1.7px);--hand-cw:calc(var(--u)*98);--play-cw:calc(var(--u)*62);--center-cw:calc(var(--u)*78);position:fixed;inset:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;background:var(--bg);color:var(--text);user-select:none;-webkit-user-select:none}.ptable__room{position:absolute;inset:0;z-index:0;background:radial-gradient(ellipse at 50% 38%,rgba(40,90,90,.35),transparent 60%),linear-gradient(180deg,#060c148c,#060c14d9),var(--room-image,none) center/cover,linear-gradient(180deg,#10273a,#07121c)}.ptable>:where(:not(.ptable__room)){position:relative;z-index:1}.ptable__hud{display:flex;align-items:center;gap:calc(var(--u)*14);height:max(52px,calc(var(--u)*60));padding:0 max(12px,calc(var(--u)*20));background:linear-gradient(180deg,#060e16bf,#060e1640);z-index:var(--z-hud)}.ptable__title{display:flex;align-items:center;gap:10px;min-width:0;flex:1}.ptable__title>b{font-size:max(16px,calc(var(--u)*20));font-weight:800;white-space:nowrap}.ptable__series{display:inline-flex;align-items:baseline;gap:4px;padding:4px 12px;border-radius:var(--r-pill);background:#ffffff12;border:1px solid var(--line);font-size:max(12px,calc(var(--u)*13));color:var(--text-2);white-space:nowrap}.ptable__series b{color:var(--gold-2);font-size:1.15em}.ptable__hud-actions{display:flex;align-items:center;gap:8px}.hud-btn{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 14px;border:1px solid var(--line);border-radius:var(--r-md);background:#ffffff0d;color:var(--text-2);font-weight:700}@media(hover:hover){.hud-btn:hover{background:#ffffff1a;color:var(--text)}}.ptable__stage{position:relative;min-height:0}.felt{position:absolute;inset:calc(var(--u)*28) calc(var(--u)*150) calc(var(--u)*6);border-radius:calc(var(--u)*240);background:radial-gradient(ellipse at 50% 35%,color-mix(in srgb,var(--felt-1) 92%,white) 0%,var(--felt-1) 30%,var(--felt-2) 70%,var(--felt-3) 100%);box-shadow:0 0 0 calc(var(--u)*9) #3a2414,0 0 0 calc(var(--u)*11) #e9c57d8c,0 calc(var(--u)*30) calc(var(--u)*60) #0000008c,inset 0 calc(var(--u)*10) calc(var(--u)*40) #00000059}.felt__inner{position:absolute;inset:calc(var(--u)*18);border-radius:inherit;border:1px solid rgba(255,255,255,.08);background:repeating-radial-gradient(circle at 50% 50%,rgba(255,255,255,.012) 0 2px,transparent 2px 4px)}.felt__mark{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font:800 calc(var(--u)*44)/1 var(--font-display);letter-spacing:.3em;color:#ffffff0b;white-space:nowrap;pointer-events:none}.ptable__ticker{position:absolute;left:50%;bottom:calc(var(--u)*14);transform:translate(-50%);max-width:min(60%,calc(var(--u)*640));margin:0;padding:6px 16px;border-radius:var(--r-pill);background:#040c128c;color:var(--text-2);font-size:max(12px,calc(var(--u)*14));text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;animation:fade-in var(--t) var(--ease);z-index:3;pointer-events:none}.template-shed .ptable__ticker,.template-trick .ptable__ticker{bottom:auto;top:calc(var(--u)*34)}.players-4.template-shed .ptable__ticker{top:auto;bottom:calc(var(--u)*150)}.players-4.template-trick .ptable__ticker{top:auto;bottom:calc(var(--u)*72)}.ptable__describe{position:absolute;left:50%;top:calc(var(--u)*40);transform:translate(-50%);margin:0;padding:4px 14px;border-radius:var(--r-pill);background:#e9c57d24;border:1px solid rgba(233,197,125,.35);color:var(--gold-2);font-size:max(12px,calc(var(--u)*14));font-weight:700;white-space:nowrap;z-index:3;pointer-events:none}.players-4 .ptable__describe{top:auto;bottom:calc(var(--u)*52)}.template-shed .ptable__describe,.template-trick .ptable__describe,.template-draw .ptable__describe{display:none}.ptable__fast{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;gap:8px;padding:8px 16px;border-radius:var(--r-pill);background:#0000008c;color:var(--text-2);font-weight:700;font-size:max(12px,calc(var(--u)*14));z-index:4;pointer-events:none}.seat{position:absolute;display:grid;justify-items:center;gap:calc(var(--u)*6);width:calc(var(--u)*124);z-index:5}.seat--left{left:calc(var(--u)*14);top:calc(var(--u)*92)}.seat--right{right:calc(var(--u)*14);top:calc(var(--u)*92)}.players-3 .seat--left,.players-3 .seat--right{top:calc(var(--u)*62)}.seat--top{left:50%;top:calc(var(--u)*-2);transform:translate(-50%);grid-template-columns:auto auto;grid-template-areas:"avatar plate" "avatar stats";align-items:center;justify-items:start;column-gap:calc(var(--u)*10);width:auto}.seat--top .seat__avatar{grid-area:avatar;width:calc(var(--u)*74)}.seat--top .seat__plate{grid-area:plate;justify-items:start;text-align:left}.seat--top .seat__stats{grid-area:stats}.seat__avatar{position:relative;width:calc(var(--u)*96);aspect-ratio:1;border-radius:calc(var(--u)*24);padding:calc(var(--u)*3);background:linear-gradient(160deg,var(--seat-accent,#7aa),var(--seat-deep,#244));box-shadow:0 calc(var(--u)*10) calc(var(--u)*24) #00000073}.seat__avatar .character-portrait{border-radius:calc(var(--u)*21)}.seat.is-folded .seat__avatar{filter:grayscale(.85) brightness(.7)}.seat__ring{position:absolute;inset:calc(var(--u)*-6);border-radius:calc(var(--u)*30);border:calc(var(--u)*3) solid var(--gold);box-shadow:0 0 calc(var(--u)*22) #e9c57da6;animation:turn-pulse 1.2s ease-in-out infinite;pointer-events:none}.seat__plate{display:grid;justify-items:center;gap:2px;max-width:100%;padding:calc(var(--u)*4) calc(var(--u)*12);border-radius:var(--r-md);background:#060e16b8;border:1px solid var(--line);text-align:center}.seat__name{max-width:calc(var(--u)*120);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:max(13px,calc(var(--u)*15));font-weight:800}.seat__dir{font-size:max(12px,calc(var(--u)*12));color:var(--text-3);white-space:nowrap}.seat__stats{display:flex;gap:6px}.seat__count,.seat__chips{display:inline-flex;align-items:center;gap:5px;padding:2px 10px 2px 6px;border-radius:var(--r-pill);background:#060e16b8;border:1px solid var(--line);font-size:max(13px,calc(var(--u)*15));color:var(--text)}.seat__count i{width:calc(var(--u)*14);height:calc(var(--u)*19);min-width:10px;min-height:14px;border-radius:3px;background:linear-gradient(145deg,#2a8a73,#124a3f);box-shadow:0 0 0 1px #e9c57db3,2px 2px #00000059}.seat__chips svg{color:var(--gold)}.seat__warn{position:absolute;top:calc(var(--u)*-8);right:calc(var(--u)*-6);padding:3px 10px;border-radius:var(--r-pill);background:var(--amber);color:#3a1800;font-weight:900;font-size:max(12px,calc(var(--u)*14));box-shadow:0 0 0 2px #00000040,0 0 18px #ffb15c99;animation:warn-pop .4s var(--ease-pop)}.seat__warn.is-one{background:var(--danger);color:#fff;box-shadow:0 0 0 2px #00000040,0 0 20px #ff6f73b3}.seat--top .seat__warn{top:auto;bottom:calc(var(--u)*-10);right:auto;left:calc(var(--u)*-10)}.seat__tags{display:flex;gap:4px;flex-wrap:wrap;justify-content:center}.seat__tags span{padding:1px 8px;border-radius:var(--r-pill);background:#ffffff1a;font-size:max(12px,calc(var(--u)*12));color:var(--text-2);font-weight:700}.seat__think{position:absolute;top:calc(var(--u)*26);white-space:nowrap;font-size:max(12px,calc(var(--u)*13));color:var(--gold-2);animation:think-dots 1.4s ease-in-out infinite;pointer-events:none}.seat--left .seat__think{left:calc(100% + var(--u)*8)}.seat--right .seat__think{right:calc(100% + var(--u)*8)}.seat--top .seat__think{top:auto;bottom:calc(var(--u)*-26);left:50%;transform:translate(-50%)}.seat-bubble{position:absolute;z-index:6;max-width:calc(var(--u)*220);min-width:max-content;padding:calc(var(--u)*8) calc(var(--u)*14);border-radius:calc(var(--u)*16);background:#fff8ec;color:#2b2420;font-size:max(13px,calc(var(--u)*15));font-weight:700;line-height:1.35;box-shadow:var(--shadow-2);animation:bubble-in .35s var(--ease-pop);pointer-events:none;white-space:normal}.seat-bubble.tone-sharp{background:#ffe1e3;color:#4a1016}.seat-bubble.tone-soft{background:#e2f6ee;color:#0e3b2e}.seat--left .seat-bubble{left:calc(100% + var(--u)*10);top:calc(var(--u)*4)}.seat--right .seat-bubble{right:calc(100% + var(--u)*10);top:calc(var(--u)*4)}.seat--top .seat-bubble{left:calc(100% + var(--u)*12);top:calc(var(--u)*8)}.seat__bet{position:absolute}.seat__bet--left{left:calc(100% + var(--u)*16);top:calc(var(--u)*70)}.seat__bet--right{right:calc(100% + var(--u)*16);top:calc(var(--u)*70)}.seat__bet--top{top:calc(100% + var(--u)*12);left:50%;transform:translate(-50%)}.seat__reveal{position:absolute;display:flex;--cw:max(30px,calc(var(--u)*44));z-index:4}.seat__reveal .playing-card+.playing-card{margin-left:calc(var(--cw)*-.5)}.seat__reveal--left{left:calc(100% + var(--u)*12);top:calc(var(--u)*100)}.seat__reveal--right{right:calc(100% + var(--u)*12);top:calc(var(--u)*100)}.seat__reveal--top{top:calc(100% + var(--u)*8);left:50%;transform:translate(-50%)}.role-badge{position:absolute;left:50%;bottom:calc(var(--u)*-8);transform:translate(-50%);display:inline-flex;align-items:center;gap:3px;padding:2px 9px;border-radius:var(--r-pill);font-size:max(12px,calc(var(--u)*12));font-weight:900;white-space:nowrap;background:#e9eef2;color:#22303c;box-shadow:0 2px 8px #0006}.role-badge--landlord{background:linear-gradient(180deg,var(--gold-2),var(--gold));color:var(--gold-ink)}.role-badge--farmer{background:#bfe8d6;color:#0c3a2b}.role-badge--dealer{background:linear-gradient(180deg,#ffd9a8,var(--amber));color:#3a1c00}.role-badge--button{background:#fff;color:#111}.role-badge--pending{background:#ffffffd9;color:#333}.chip-stack{display:inline-flex;align-items:center;gap:6px;padding:3px 10px 3px 4px;border-radius:var(--r-pill);background:#040c1299;border:1px solid rgba(233,197,125,.35)}.chip-stack__coins{position:relative;display:inline-block;width:calc(var(--u)*24);height:calc(var(--u)*24);min-width:18px;min-height:18px}.chip-stack__coins i{position:absolute;left:0;bottom:calc(var(--i)*3px);width:100%;height:42%;border-radius:50%;background:radial-gradient(circle,#ffe7b0 0 28%,#d9a648 30% 60%,#a5761f 62%);box-shadow:0 1px #00000073,0 0 0 1px #50320a99}.chip-stack b{font-size:max(13px,calc(var(--u)*15));color:var(--gold-2);font-weight:800}.pot{display:grid;justify-items:center;gap:4px}.pot__label{font-size:max(12px,calc(var(--u)*13));color:var(--text-2);font-weight:700;letter-spacing:.2em}.pot__chips{padding:6px 18px 6px 8px}.pot__chips .chip-stack__coins{width:calc(var(--u)*38);height:calc(var(--u)*38)}.pot__chips b{font-size:max(18px,calc(var(--u)*26))}.table-center{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);display:grid;justify-items:center;gap:calc(var(--u)*14);z-index:3;pointer-events:none}.table-center button{pointer-events:auto}.table-center--shed{top:calc(var(--u)*80);transform:translate(-50%)}.players-4 .table-center--shed{top:auto;bottom:calc(var(--u)*30);transform:translate(-50%)}.center-strip{display:flex;align-items:center;gap:calc(var(--u)*14);padding:calc(var(--u)*8) calc(var(--u)*16);border-radius:calc(var(--u)*18);background:#040e0e73;border:1px solid rgba(255,255,255,.1);--cw:calc(var(--u)*52)}.center-strip__cards{display:flex;gap:calc(var(--u)*6)}.center-strip__label,.center-strip__mult{display:grid;justify-items:center;gap:2px;font-weight:800;font-size:max(13px,calc(var(--u)*15))}.center-strip__label small,.center-strip__mult small{font-weight:600;font-size:max(12px,calc(var(--u)*12));color:var(--text-3)}.center-strip__mult b{font-size:max(18px,calc(var(--u)*26));color:var(--gold-2)}.board{display:flex;gap:calc(var(--u)*10);--cw:var(--center-cw)}.board__slot{display:block;width:var(--cw,calc(var(--u)*70));aspect-ratio:5/7;border-radius:calc(var(--cw,70px)*.09);border:2px dashed rgba(255,255,255,.18);background:#0000001f}.trick{position:relative;width:calc(var(--u)*300);height:calc(var(--u)*230);--cw:calc(var(--u)*74)}.trick__card{position:absolute;animation:trick-in .3s var(--ease)}.trick__card--self{left:50%;bottom:0;transform:translate(-50%)}.trick__card--top{left:50%;top:0;transform:translate(-50%)}.trick__card--left{left:0;top:50%;transform:translateY(-50%) rotate(-8deg)}.trick__card--right{right:0;top:50%;transform:translateY(-50%) rotate(8deg)}.trick__info{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:max(12px,calc(var(--u)*13));color:var(--text-3);font-weight:700;white-space:nowrap}.dealer-area{display:grid;justify-items:center;gap:calc(var(--u)*8);--cw:calc(var(--u)*70)}.dealer-area__label{display:inline-flex;align-items:center;gap:8px;font-weight:800;font-size:max(13px,calc(var(--u)*15))}.dealer-area__label b{padding:1px 10px;border-radius:var(--r-pill);background:var(--gold);color:var(--gold-ink)}.dealer-area__label small{color:var(--text-3);font-weight:600}.dealer-area__cards{display:flex;gap:calc(var(--u)*-18)}.dealer-area__cards .playing-card+.playing-card{margin-left:calc(var(--cw)*-.35)}.draw-fan{display:grid;justify-items:center;gap:calc(var(--u)*12);--cw:calc(var(--u)*76)}.draw-fan__cards{position:relative;display:flex;justify-content:center;height:calc(var(--cw)*1.55)}.draw-fan__card{position:relative;display:block;margin-left:calc(var(--cw)*-.48);transform:rotate(calc((var(--i) - (var(--n) - 1)/2)*4deg)) translateY(calc(var(--u)*6));transform-origin:50% 120%;transition:transform var(--t) var(--ease);border:0;background:none;padding:0}.draw-fan__card:first-child{margin-left:0}button.draw-fan__card{cursor:pointer;pointer-events:auto}@media(hover:hover){button.draw-fan__card:hover{transform:rotate(calc((var(--i) - (var(--n) - 1)/2)*4deg)) translateY(calc(var(--u)*-14))}}button.draw-fan__card:focus-visible{transform:rotate(calc((var(--i) - (var(--n) - 1)/2)*4deg)) translateY(calc(var(--u)*-14))}.draw-fan__caption,.draw-fan--idle{font-size:max(13px,calc(var(--u)*15));font-weight:700;color:var(--text-2)}.eights{display:flex;align-items:center;gap:calc(var(--u)*22);--cw:calc(var(--u)*82)}.eights__pile{position:relative}.eights__pile b{position:absolute;right:calc(var(--u)*-10);bottom:calc(var(--u)*-8);padding:1px 9px;border-radius:var(--r-pill);background:var(--panel-solid);border:1px solid var(--line-2);font-size:max(12px,calc(var(--u)*13))}.eights__suit{display:flex;align-items:center;gap:10px;padding:calc(var(--u)*10) calc(var(--u)*16);border-radius:calc(var(--u)*18);background:#fffaf0;color:#1c2333;box-shadow:var(--shadow-2)}.eights__suit.suit-H,.eights__suit.suit-D{color:#d3304b}.eights__suit .suit-icon{width:calc(var(--u)*42);height:calc(var(--u)*42);fill:currentColor}.eights__suit span{display:grid;font-size:max(12px,calc(var(--u)*12));color:#555;font-weight:700}.eights__suit b{font-size:max(16px,calc(var(--u)*22));color:inherit}.lanes{display:grid;gap:calc(var(--u)*10);--cw:calc(var(--u)*56)}.lane{display:grid;grid-template-columns:calc(var(--u)*110) auto;align-items:center;gap:calc(var(--u)*12);padding:calc(var(--u)*6) calc(var(--u)*12);border-radius:calc(var(--u)*14);background:#040e0e66;border:1px solid rgba(255,255,255,.08)}.lane__label{display:grid;font-weight:800;font-size:max(13px,calc(var(--u)*15))}.lane__label small{font-weight:600;color:var(--text-3);font-size:max(12px,calc(var(--u)*12))}.lane__label b{color:var(--gold-2);font-size:max(12px,calc(var(--u)*13))}.lane__cards{display:flex;gap:calc(var(--u)*6)}.seat-play{position:absolute;display:grid;justify-items:center;gap:4px;--cw:var(--play-cw);z-index:4;animation:play-in .28s var(--ease)}.seat-play__cards{display:flex}.seat-play__cards .playing-card+.playing-card{margin-left:calc(var(--cw)*-.56)}.seat-play__label{padding:1px 10px;border-radius:var(--r-pill);background:#e9c57de6;color:var(--gold-ink);font-size:max(12px,calc(var(--u)*13));font-weight:900}.seat-play.is-settled{filter:brightness(.68) saturate(.7)}.seat-play.is-settled .seat-play__label{visibility:hidden}.seat-play.is-pass span{padding:6px 16px;border-radius:var(--r-pill);background:#060e16bf;border:1px solid var(--line-2);color:var(--text-2);font-weight:800;font-size:max(13px,calc(var(--u)*16))}.seat-play--left{left:calc(var(--u)*162);top:calc(var(--u)*120)}.seat-play--right{right:calc(var(--u)*162);top:calc(var(--u)*120)}.players-3 .seat-play--left,.players-3 .seat-play--right{top:calc(var(--u)*122)}.seat-play--top{left:50%;top:calc(var(--u)*100);transform:translate(-50%)}.seat-play--self{left:50%;bottom:calc(var(--u)*12);transform:translate(-50%)}.players-4 .seat-play--self{bottom:calc(var(--u)*8)}.ptable__hand{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);grid-template-areas:"plate bar tools" "hand hand hand";align-items:end;gap:calc(var(--u)*6) calc(var(--u)*16);padding:calc(var(--u)*6) max(12px,calc(var(--u)*24)) max(8px,calc(var(--u)*12) + env(safe-area-inset-bottom));background:linear-gradient(180deg,transparent,rgba(4,10,16,.7) 40%)}.self-plate{display:contents}.self-plate__main{grid-area:plate;display:flex;align-items:center;gap:calc(var(--u)*12);min-width:0;align-self:end}.self-plate__avatar{position:relative;flex:none;width:max(48px,calc(var(--u)*70));aspect-ratio:1;border-radius:calc(var(--u)*18);padding:3px;background:linear-gradient(160deg,var(--brand),#173d36)}.self-plate__avatar .character-portrait{border-radius:calc(var(--u)*15)}.self-plate__avatar.is-turn{box-shadow:0 0 0 calc(var(--u)*3) var(--gold),0 0 calc(var(--u)*22) #e9c57d8c}.self-plate__avatar .role-badge{bottom:-10px}.self-plate__info{display:grid;gap:2px;min-width:0}.self-plate__info>b{font-size:max(14px,calc(var(--u)*17));font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.self-plate__stats{display:flex;gap:10px;font-size:max(12px,calc(var(--u)*14));color:var(--text-2)}.bj-total{justify-self:start;padding:2px 12px;border-radius:var(--r-pill);background:var(--gold);color:var(--gold-ink);font:900 max(16px,calc(var(--u)*22))/1.2 var(--font-num)}.bj-total.is-21{background:var(--jade-2);color:#06261d}.bj-total.is-bust{background:var(--danger);color:#fff}.self-plate__tools{grid-area:tools;display:flex;gap:6px;justify-self:end;align-self:end}.tool-btn{display:inline-flex;align-items:center;gap:5px;min-height:40px;padding:0 12px;border:1px solid var(--line);border-radius:var(--r-md);background:#ffffff0d;color:var(--text-2);font-weight:700;font-size:max(12px,calc(var(--u)*13))}.tool-btn.is-on{color:var(--gold-2);border-color:#e9c57d80}@media(hover:hover){.tool-btn:hover{background:#ffffff1a;color:var(--text)}}.action-bar{grid-area:bar;display:grid;justify-items:center;gap:calc(var(--u)*8);min-height:calc(max(46px,var(--u)*58) + max(20px,var(--u)*26))}.action-bar__status{min-height:max(20px,calc(var(--u)*24));padding:0 14px;border-radius:var(--r-pill);font-size:max(13px,calc(var(--u)*15));font-weight:700;color:var(--text-2);white-space:nowrap;max-width:min(80vw,calc(var(--u)*760));overflow:hidden;text-overflow:ellipsis}.action-bar__status.is-hint{background:#45c4a029;color:var(--jade-2);border:1px solid rgba(69,196,160,.4)}.action-bar__status.is-blocked{color:var(--amber)}.action-bar__row{display:flex;flex-wrap:wrap;justify-content:center;gap:max(10px,calc(var(--u)*14));max-width:min(92vw,calc(var(--u)*900))}.act-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:max(88px,calc(var(--u)*118));min-height:max(46px,calc(var(--u)*56));padding:0 max(14px,calc(var(--u)*20));border:1px solid transparent;border-radius:max(12px,calc(var(--u)*16));font-weight:900;font-size:max(15px,calc(var(--u)*19));letter-spacing:.04em;color:var(--text);background:linear-gradient(180deg,#3d5a74,#26405a);box-shadow:0 1px #ffffff2e inset,0 6px 16px #00000059;transition:transform var(--t-fast),filter var(--t)}.act-btn em{font-style:normal;min-width:1.6em;padding:0 6px;border-radius:var(--r-pill);background:#00000040;font-size:.8em}.act-btn--primary{color:var(--gold-ink);background:linear-gradient(180deg,var(--gold-2),var(--gold) 55%,var(--gold-3));box-shadow:0 1px #fff9 inset,0 8px 22px #e9c57d59}.act-btn--pass{background:linear-gradient(180deg,#5b6672,#3e4852)}.act-btn--ghost{background:transparent;border-color:var(--line-2);color:var(--text-2)}.act-btn--hint{min-width:auto;padding:0 max(12px,calc(var(--u)*16));background:transparent;border-color:#45c4a08c;color:var(--jade-2);box-shadow:none}.act-btn:active:not(:disabled){transform:translateY(1px) scale(.98)}.act-btn:disabled{opacity:.42;filter:saturate(.3)}@media(hover:hover){.act-btn:hover:not(:disabled){filter:brightness(1.1)}}.action-bar.is-many .act-btn{min-width:max(76px,calc(var(--u)*96));font-size:max(14px,calc(var(--u)*16))}.hand-cards{grid-area:hand;position:relative;display:flex;justify-content:center;align-items:flex-end;min-height:calc(var(--hand-cw)*1.4 + var(--hand-cw)*.24);padding-top:calc(var(--hand-cw)*.24);--cw:var(--hand-cw)}.hand-cards>.playing-card{margin-left:calc(var(--hand-step,var(--hand-cw)) - var(--hand-cw))}.hand-cards>.playing-card:first-child{margin-left:0}.hand-cards.is-dealing>.playing-card{animation:deal-card .35s var(--ease) both;animation-delay:calc(var(--i)*25ms)}.hand-cards[data-sweeping=true]{cursor:grabbing}.table-menu{position:absolute;top:calc(max(52px,var(--u)*60) + 8px);right:16px;z-index:var(--z-overlay);display:grid;gap:12px;width:min(360px,calc(100vw - 32px));padding:16px;border-radius:var(--r-lg);background:var(--panel-2);border:1px solid var(--line-2);box-shadow:var(--shadow-3);animation:pop-in var(--t) var(--ease)}.table-menu header{display:flex;align-items:center;justify-content:space-between}.table-menu header .icon-btn{width:36px;height:36px}.table-menu__row{display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:700;color:var(--text-2)}.table-menu__row small{font-weight:600;color:var(--text-3);font-size:var(--fs-sm)}.table-log{position:absolute;top:calc(max(52px,var(--u)*60) + 8px);right:16px;bottom:16px;z-index:var(--z-overlay);display:flex;flex-direction:column;width:min(380px,calc(100vw - 32px));border-radius:var(--r-lg);background:var(--panel-2);border:1px solid var(--line-2);box-shadow:var(--shadow-3);animation:sheet-in var(--t) var(--ease)}.table-log header{display:flex;align-items:center;justify-content:space-between;padding:12px 12px 8px 16px}.table-log ol{margin:0;padding:0 16px 16px 34px;display:grid;gap:8px;color:var(--text-2);font-size:var(--fs-sm)}.ptable__pause{position:absolute;inset:0;z-index:var(--z-overlay);display:grid;place-items:center;background:#03080e9e;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fade-in var(--t)}.ptable__pause>div{display:grid;justify-items:center;gap:10px;padding:32px 40px;border-radius:var(--r-xl);background:var(--panel-2);border:1px solid var(--line-2);text-align:center}.ptable__pause p{color:var(--text-3)}.ptable__pause-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:8px}.ptable__error,.ptable__notice{position:absolute;left:50%;top:calc(max(52px,var(--u)*60) + 10px);transform:translate(-50%);z-index:var(--z-toast);display:flex;align-items:center;gap:12px;max-width:min(560px,calc(100vw - 32px));padding:10px 16px;border-radius:var(--r-lg);background:#0e1c2af2;border:1px solid var(--line-2);box-shadow:var(--shadow-2);font-weight:700;animation:toast-in var(--t-slow) var(--ease);pointer-events:none}.ptable__error{border-color:#ff6f7399;pointer-events:auto}.rotate-hint{display:none}@media(orientation:portrait)and (max-width:700px){.rotate-hint{position:fixed;inset:0;z-index:var(--z-top);display:grid;place-content:center;justify-items:center;gap:16px;background:#060e16f0;color:var(--text);font-size:var(--fs-lg);font-weight:700;text-align:center}.rotate-hint svg{animation:rotate-nudge 1.6s ease-in-out infinite}}.result-layer{position:absolute;inset:0;z-index:var(--z-dialog);display:grid;place-items:center;padding:16px;background:#03080e8c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fade-in var(--t)}.result-card{display:grid;gap:14px;width:min(720px,100%);max-height:calc(100dvh - 32px);overflow:auto;padding:22px 24px;border-radius:var(--r-xl);background:linear-gradient(180deg,var(--panel-2),var(--panel-solid));border:1px solid var(--line-2);box-shadow:var(--shadow-3);animation:pop-in var(--t-slow) var(--ease)}.result-card__head{display:flex;align-items:center;gap:16px}.result-card__head h2{font-size:var(--fs-2xl)}.result-card__medal{display:grid;place-items:center;width:64px;height:64px;flex:none;border-radius:50%;background:radial-gradient(circle,var(--gold-2),var(--gold-3));color:var(--gold-ink);box-shadow:var(--glow-gold)}.result-card--lose .result-card__medal{background:radial-gradient(circle,#c8d3dd,#6d7c8a);color:#1f2a35;box-shadow:none}.result-card--draw .result-card__medal{background:radial-gradient(circle,#c9f1e3,#3e9e82);color:#06261d;box-shadow:none}.result-card__peek{margin-left:auto;display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 12px;border:1px solid var(--line);border-radius:var(--r-md);background:transparent;color:var(--text-2);font-weight:700}.result-card__text{color:var(--text-2);line-height:1.6}.result-table{display:grid;gap:8px;margin:0;padding:0;list-style:none}.result-table li{display:grid;grid-template-columns:28px 44px minmax(80px,1fr) auto auto auto;align-items:center;gap:12px;padding:8px 12px;border-radius:var(--r-md);background:#ffffff0a;border:1px solid var(--line)}.result-table li.is-me{border-color:#e9c57d80;background:#e9c57d14}.result-table li.is-winner .result-table__rank{background:var(--gold);color:var(--gold-ink)}.result-table__rank{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#ffffff1a;font-weight:800}.result-table__avatar{width:44px;border-radius:12px;overflow:hidden}.result-table__name{display:flex;align-items:center;gap:6px;min-width:0}.result-table__name b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.result-table__name em{font-style:normal;padding:0 6px;border-radius:var(--r-pill);background:var(--gold);color:var(--gold-ink);font-size:var(--fs-xs);font-weight:800}.result-table__hand{display:flex;--cw:34px}.result-table__hand .playing-card+.playing-card{margin-left:-14px}.result-table__score{min-width:56px;text-align:right;font-weight:800;font-size:var(--fs-lg)}.result-table__total{min-width:64px;text-align:right;color:var(--gold-2);font-weight:800}.result-lanes{display:grid;gap:4px}.result-lanes>div{display:flex;align-items:center;gap:6px}.result-lanes small{min-width:74px;color:var(--text-3)}.result-lanes span{display:flex;--cw:28px}.result-lanes span .playing-card+.playing-card{margin-left:-12px}.result-drops{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 14px;border-radius:var(--r-md);background:#ac90ff1a;border:1px solid rgba(172,144,255,.3);color:var(--text-2);font-weight:700}.result-drops svg{color:var(--violet)}.stone{padding:1px 10px;border-radius:var(--r-pill);font-weight:800}.stone--common{background:#d8e7f4;color:#14304a}.stone--rare{background:#cbb8ff;color:#22104a}.stone--legendary{background:linear-gradient(90deg,#ffd98a,#ff9fc1);color:#3a1020}.result-note{color:var(--text-2)}.result-card__foot{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;padding-top:6px}.result-peek-back{position:absolute;right:16px;bottom:calc(var(--u)*240);z-index:var(--z-dialog);display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:0 18px;border:1px solid rgba(233,197,125,.6);border-radius:var(--r-pill);background:var(--panel-2);color:var(--gold-2);font-weight:800;box-shadow:var(--shadow-2)}@media(max-width:640px){.result-table li{grid-template-columns:24px 36px minmax(60px,1fr) auto auto;gap:8px}.result-table__hand{display:none}.result-card__head h2{font-size:var(--fs-xl)}}@media(max-height:480px){.hud-btn span,.tool-btn span,.ptable__describe,.ptable__ticker,.self-plate__stats{display:none}}@keyframes turn-pulse{0%,to{opacity:.65;transform:scale(1)}50%{opacity:1;transform:scale(1.03)}}@keyframes warn-pop{0%{transform:scale(.4);opacity:0}to{transform:none;opacity:1}}@keyframes think-dots{0%,to{opacity:.45}50%{opacity:1}}@keyframes bubble-in{0%{opacity:0;transform:translateY(6px) scale(.9)}to{opacity:1;transform:none}}@keyframes play-in{0%{opacity:0;filter:blur(2px)}to{opacity:1;filter:none}}@keyframes trick-in{0%{opacity:0}to{opacity:1}}@keyframes deal-card{0%{opacity:0;transform:translateY(-40%) scale(.85)}to{opacity:1;transform:none}}@keyframes rotate-nudge{0%,to{transform:rotate(0)}50%{transform:rotate(-90deg)}}.ptable .action-effect{transform:translate(-50%,-50%) scale(min(1,calc(var(--u) / 1px)));top:46%}.ptable .deal-sequence{border-radius:0}@media(max-height:520px){.ptable__hand{grid-template-columns:auto minmax(0,1fr) auto;padding-top:2px;gap:2px 10px}.action-bar{min-height:0;gap:2px}.action-bar__status{min-height:16px;font-size:12px}.action-bar__row{flex-wrap:nowrap;gap:8px;max-width:100%;overflow-x:auto;scrollbar-width:none}.act-btn{min-width:72px;min-height:42px;padding:0 12px;font-size:15px}.self-plate__avatar{width:44px}.self-plate__info>b{font-size:13px}.seat__plate{padding:2px 8px}.seat__stats{display:none}.seat{width:calc(var(--u)*150)}.seat__avatar{width:max(44px,calc(var(--u)*96))}.felt{inset:calc(var(--u)*12) calc(var(--u)*170) calc(var(--u)*4)}.seat-bubble{font-size:12px;max-width:180px}}.app{min-height:100dvh}.shell{position:relative;min-height:100dvh;display:flex;flex-direction:column;background:radial-gradient(ellipse at 20% 0%,rgba(69,196,160,.16),transparent 55%),radial-gradient(ellipse at 90% 10%,rgba(172,144,255,.14),transparent 50%),linear-gradient(180deg,#0c1a27,#08121b 70%)}.shell:before{content:"";position:fixed;inset:0;z-index:0;background:linear-gradient(180deg,#08101840,#081018e6 75%),var(--lobby-image,none) center top/cover no-repeat;opacity:.9;pointer-events:none}.shell>*{position:relative;z-index:1}.appbar{position:sticky;top:0;z-index:var(--z-hud);display:flex;align-items:center;gap:18px;height:68px;padding:0 max(16px,3vw);background:linear-gradient(180deg,#081018eb,#081018b3);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.appbar__brand{display:flex;align-items:center;gap:10px;padding:0;border:0;background:none;color:var(--text);text-align:left}.appbar__logo{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:linear-gradient(160deg,var(--jade-2),#1d7f66);color:#062a20;box-shadow:0 6px 16px #45c4a04d}.appbar__brand b{display:block;font-size:var(--fs-lg);letter-spacing:.06em}.appbar__brand small{display:block;font-size:var(--fs-xs);letter-spacing:.18em;color:var(--text-3)}.appbar__nav{display:flex;gap:4px;margin-left:12px}.appbar__nav button{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:0 16px;border:0;border-radius:var(--r-md);background:transparent;color:var(--text-2);font-weight:700;font-size:var(--fs-base)}.appbar__nav button.is-on{color:var(--text);background:#ffffff14;box-shadow:inset 0 -2px 0 var(--gold)}@media(hover:hover){.appbar__nav button:hover{color:var(--text);background:#ffffff0f}}.appbar__mj{display:grid;place-items:center;width:20px;height:20px;border-radius:6px;background:#e7a8c0;color:#2a1020;font-size:12px;font-weight:900}.appbar__right{display:flex;align-items:center;gap:10px;margin-left:auto}.appbar__stones{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 14px 0 10px;border:1px solid var(--line);border-radius:var(--r-pill);background:#ffffff0d;color:var(--text);font-weight:800}.appbar__icon{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);border-radius:var(--r-md);background:#ffffff0d;color:var(--text-2)}.appbar__icon.is-on{color:var(--gold);border-color:#e9c57d80}.appbar__me{width:44px;height:44px;padding:2px;border:0;border-radius:14px;background:linear-gradient(160deg,var(--jade-2),#1d6b58);overflow:hidden}.appbar__me .character-portrait{border-radius:12px}.stone-dots{display:inline-flex}.stone-dots i{width:12px;height:12px;margin-left:-4px;border-radius:50%;box-shadow:0 0 0 2px var(--bg)}.stone-dots i:first-child{margin-left:0}.stone-dots .is-common{background:linear-gradient(135deg,#eaf3fb,#9fbad3)}.stone-dots .is-rare{background:linear-gradient(135deg,#e3d8ff,#8a6cf0)}.stone-dots .is-legendary{background:linear-gradient(135deg,#ffe3a1,#ff8fb8)}.shell__main{flex:1;width:min(1440px,100%);margin:0 auto;padding:24px max(16px,3vw) 48px}.save-banner{position:fixed;left:50%;bottom:16px;z-index:var(--z-toast);transform:translate(-50%);display:flex;align-items:center;gap:12px;max-width:calc(100vw - 32px);padding:10px 12px 10px 16px;border-radius:var(--r-lg);border:1px solid rgba(255,196,107,.6);background:#281c08f2;color:#ffe2b0;font-weight:700;box-shadow:var(--shadow-2)}@media(max-width:900px){.appbar{gap:10px;height:60px;-webkit-backdrop-filter:none;backdrop-filter:none;background:#081018f5}.appbar__brand small{display:none}.appbar__nav{position:fixed;left:0;right:0;bottom:0;z-index:var(--z-hud);justify-content:space-around;margin:0;padding:6px 8px calc(6px + env(safe-area-inset-bottom));background:#081018f5;border-top:1px solid var(--line)}.appbar__nav button{flex-direction:column;gap:2px;min-height:52px;padding:0 10px;font-size:var(--fs-xs)}.appbar__nav button.is-on{box-shadow:none;color:var(--gold-2)}.shell__main{padding:16px 16px 96px}}@media(max-width:900px)and (max-height:500px)and (orientation:landscape){.appbar{height:52px}.appbar__nav{position:static;flex:1;justify-content:center;padding:0;background:none;border:0}.appbar__nav button{flex-direction:row;gap:6px;min-height:40px;font-size:var(--fs-sm)}.shell__main{padding:10px 16px 20px}}@media(max-width:420px){.appbar__brand b{font-size:var(--fs-base)}.appbar__stones{padding:0 10px}}.crash{min-height:100dvh;display:grid;place-items:center;padding:24px;background:radial-gradient(ellipse at 50% 0%,rgba(69,196,160,.18),transparent 60%),var(--bg,#0a1520);color:var(--text,#f4efe6);font-family:var(--font-sans,sans-serif)}.crash__card{display:grid;gap:14px;width:min(560px,100%);padding:32px;border-radius:28px;border:1px solid rgba(255,255,255,.18);background:#10202feb;box-shadow:0 24px 60px #00000073;text-align:center}.crash__mark{font-size:44px;color:var(--gold,#e9c57d)}.crash__card h1{font-size:26px}.crash__card p{color:var(--text-2,#c9d1d8);line-height:1.7}.crash__detail{display:block;padding:10px 12px;border-radius:12px;background:#00000059;color:var(--text-3,#97a5b2);font-size:12px;word-break:break-all}.crash__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.crash__link{justify-self:center;min-height:40px;color:var(--text-3,#97a5b2);text-decoration:underline}.crash__confirm{display:grid;gap:10px;padding:14px;border-radius:16px;background:#ffc46b1a;border:1px solid rgba(255,196,107,.35)}:root{--font-sans:"PingFang SC","Hiragino Sans GB","Microsoft YaHei UI","Microsoft YaHei","Noto Sans CJK SC","Source Han Sans SC",system-ui,-apple-system,"Segoe UI",sans-serif;--font-display:"PingFang SC","Hiragino Sans GB","Microsoft YaHei UI","Microsoft YaHei","Noto Sans CJK SC",system-ui,sans-serif;--font-num:"DIN Alternate","Bahnschrift","Segoe UI","Roboto",var(--font-sans);--fs-xs:12px;--fs-sm:13px;--fs-md:14px;--fs-base:16px;--fs-lg:18px;--fs-xl:22px;--fs-2xl:28px;--fs-3xl:36px;--fs-4xl:48px;--lh-tight:1.2;--lh:1.55;--r-xs:6px;--r-sm:10px;--r-md:14px;--r-lg:20px;--r-xl:28px;--r-pill:999px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--sp-12:48px;--z-base:1;--z-raised:10;--z-hud:20;--z-overlay:40;--z-dialog:60;--z-toast:80;--z-top:100;--ease:cubic-bezier(.2,.7,.2,1);--ease-pop:cubic-bezier(.3,1.4,.5,1);--t-fast:.12s;--t:.2s;--t-slow:.36s;--bg:#0a1520;--bg-2:#0f1e2c;--bg-3:#152a3c;--panel:rgba(16,32,47,.82);--panel-2:rgba(22,42,60,.9);--panel-solid:#14283a;--panel-hi:rgba(255,255,255,.06);--line:rgba(255,255,255,.1);--line-2:rgba(255,255,255,.18);--line-3:rgba(255,255,255,.3);--text:#f4efe6;--text-2:#c9d1d8;--text-3:#97a5b2;--text-inv:#1b1a17;--gold:#e9c57d;--gold-2:#f7deaa;--gold-3:#b58a3e;--gold-ink:#3b2a0b;--jade:#45c4a0;--jade-2:#8ee3c9;--coral:#ff7f86;--sky:#72b7ff;--violet:#ac90ff;--amber:#ffb15c;--success:#55d6a8;--danger:#ff6f73;--warning:#ffc46b;--shadow-1:0 2px 8px rgba(0,0,0,.25);--shadow-2:0 10px 30px rgba(0,0,0,.35);--shadow-3:0 24px 60px rgba(0,0,0,.45);--glow-gold:0 0 0 1px rgba(233,197,125,.55),0 0 24px rgba(233,197,125,.35);--ring:0 0 0 3px rgba(114,183,255,.85);--accent:var(--gold);--accent-2:var(--gold-2);--accent-ink:var(--gold-ink);--brand:var(--jade);--felt-1:#1f7a63;--felt-2:#0f4c3f;--felt-3:#0a3a30;--rim-1:#5c3b22;--rim-2:#2c1a0e;color-scheme:dark}.theme-poker{--brand:var(--jade);--felt-1:#1f7a63;--felt-2:#0f4c3f;--felt-3:#0a3a30}.theme-mahjong{--bg:#0b1324;--bg-2:#111b31;--bg-3:#18253f;--panel:rgba(17,27,48,.86);--panel-2:rgba(24,37,63,.92);--panel-solid:#16223a;--brand:#e7a8c0}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font:400 var(--fs-md)/var(--lh) var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent;border:0;background:none;padding:0;color:inherit}svg{flex-shrink:0}button:disabled{cursor:not-allowed}img,svg{display:block;max-width:100%}h1,h2,h3,h4,p{margin:0}h1,h2,h3{font-family:var(--font-display);line-height:var(--lh-tight);letter-spacing:.01em}:focus{outline:none}:focus-visible{outline:none;box-shadow:var(--ring);border-radius:var(--r-sm)}::selection{background:#e9c57d66}.num{font-family:var(--font-num);font-variant-numeric:tabular-nums}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.scroll-y{overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.2) transparent}.scroll-y::-webkit-scrollbar{width:8px}.scroll-y::-webkit-scrollbar-thumb{background:#ffffff2e;border-radius:8px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.reduce-motion *,.reduce-motion *:before,.reduce-motion *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.storage-startup{min-height:100dvh;display:grid;place-items:center;padding:24px;background:radial-gradient(ellipse at 50% 0%,rgba(69,196,160,.18),transparent 60%),var(--bg,#0a1520);color:var(--text,#f4efe6);font-family:var(--font-sans,sans-serif)}.storage-startup.is-waiting .storage-startup-card{animation:startup-in .3s ease .35s both}.storage-startup-card{display:grid;justify-items:center;gap:12px;width:min(100%,540px);padding:clamp(26px,5vw,44px);border-radius:28px;border:1px solid rgba(255,255,255,.18);background:#10202feb;box-shadow:0 24px 60px #00000073;text-align:center}.storage-startup-brand{font-size:13px;letter-spacing:.3em;color:var(--text-3,#97a5b2)}.storage-startup-mark{font-size:48px;color:var(--gold,#e9c57d)}.storage-startup-card h1{font-size:clamp(22px,4vw,28px);line-height:1.35}.storage-startup-card p{color:var(--text-2,#c9d1d8);line-height:1.7}.storage-startup-card small{color:var(--text-3,#97a5b2);line-height:1.6}.storage-startup-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:6px}@keyframes startup-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
