.club-install-guide{position:relative;margin:10px 0 28px;padding:18px 20px 14px;border:1px solid #cbd7c1;border-radius:14px;background:#edf2e6;color:var(--club-ink, #1f352e)}.club-install-heading{display:flex;align-items:flex-start;gap:12px}.club-install-heading>svg{flex-shrink:0;margin-top:3px;color:#52714e}.club-install-heading>div{flex:1;min-width:0;padding-right:20px}.club-install-heading h2{font-size:15px;font-weight:650;line-height:1.6;margin:0}.club-install-heading p{margin:4px 0 0;font-size:12px;line-height:1.7;color:#6b7b62}.club-install-dismiss{position:absolute;top:8px;right:6px;display:grid;place-items:center;width:36px;height:36px;padding:0;border-radius:50%;background:none;color:#6e7c65}.club-install-dismiss:hover{background:#dfe9d6}.club-install-toggle{display:flex;align-items:center;gap:7px;min-height:38px;margin:4px 0 0 37px;padding:4px 0;font-size:12px;font-weight:600;background:none;color:#315a40}.club-install-toggle svg{transition:transform .15s}.club-install-toggle .is-expanded{transform:rotate(180deg)}.club-install-instructions{margin-top:7px;padding-top:16px;border-top:1px solid #d3ddca;font-size:13px;line-height:1.85}.club-install-platforms{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:16px}.club-install-platforms button{min-height:38px;padding:6px 15px;border-radius:7px;background:#fffef5;color:#617357;font-size:12px}.club-install-platforms [aria-pressed=true]{color:#fffef6;background:#315d42}.club-install-instructions ol{margin:0 0 15px;padding-left:23px}.club-install-instructions li{padding-left:3px;margin:8px 0}.club-install-wechat{margin-bottom:18px;padding:12px 14px;border-radius:9px;background:#fffef6}.club-install-wechat strong{font-size:13px;font-weight:650}.club-install-wechat p{margin:6px 0 10px}.club-install-copy{display:flex;flex-wrap:wrap;align-items:center;gap:7px}.club-install-copy-status{font-size:11px;color:#46683e}.club-install-manual{width:100%;display:block;font-size:11px;line-height:1.7;color:#6c795f}.club-install-manual input{display:block;width:100%;margin-top:6px;padding:10px;border:1px solid #c7d1bd;border-radius:6px;background:#fffef9;color:#294c36;font-size:16px}.club-install-note{margin:13px 0 0;color:#6f7c65;font-size:11px;line-height:1.8}.club-install-status{margin:10px 0;color:#315d42;font-size:12px}.club-install-sources{display:flex;flex-wrap:wrap;gap:7px 15px;margin-top:12px}.club-install-sources a{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:#55714a;text-underline-offset:3px}.club-invite-handoff{display:flex;align-items:flex-start;gap:11px;padding:15px;margin:20px 0;border:1px solid #d0d9c5;border-radius:12px;background:#edf2e6}.club-invite-handoff>svg{flex-shrink:0;margin-top:3px;color:#52714e}.club-invite-handoff>div{min-width:0}.club-invite-handoff strong{font-size:13px}.club-invite-handoff p{margin:5px 0 11px;font-size:12px;line-height:1.85;color:#63735a}@media(max-width:480px){.club-install-guide{padding:16px 14px 11px}.club-install-heading{gap:10px}.club-install-heading h2{font-size:14px}.club-install-toggle{margin-left:35px}}@media(prefers-reduced-motion:reduce){.club-install-toggle svg{transition:none}}.mode-choices.has-target-mode{grid-template-columns:repeat(3,minmax(0,1fr))}.mode-choices.single-mode{grid-template-columns:1fr}.mode-choices>label{min-width:0}.room-settings-fields .target-count-field{margin:16px 0 0}.room-settings-fields .field>small{display:block;margin:0;font-size:11px;line-height:1.7;font-weight:400;color:var(--muted);overflow-wrap:anywhere}.ai-scoring-choice{display:flex;align-items:flex-start;gap:12px;padding:15px;margin:0 0 24px;border:1px solid #d5ddc8;border-radius:9px;background:#f4f5e9;cursor:pointer}.ai-scoring-choice.selected{border-color:#a8bd8d;background:#e9eedb}.ai-scoring-choice>input{flex-shrink:0;width:18px;height:18px;margin-top:2px;accent-color:#2b6048}.ai-scoring-choice>span{min-width:0}.ai-scoring-choice strong{display:block;font-size:13px;font-weight:600}.ai-scoring-choice small{display:block;font-size:11px;line-height:1.8;color:#7c886b;margin-top:7px}.mode-adjustment-note{padding:10px 12px;margin:10px 0;border-radius:7px;background:#ede9d5;color:#817344;font-size:11px;line-height:1.8;overflow-wrap:anywhere}.game-mode-notice{margin:10px 0 0}.game-deck-info{font-size:10px;color:#879776;margin-top:8px;text-align:center}.game-view>.game-mode-notice,.game-view>.game-deck-info{grid-column:1 / -1}.game-view>.game-table-zone{display:block;padding-top:28px}.ai-review-status{display:flex;align-items:flex-start;gap:8px;padding:11px 13px;margin:12px 0;background:#e9eedc;color:#687d53;border-radius:8px;font-size:12px;line-height:1.8}.ai-review-status>svg{flex-shrink:0;margin-top:3px}.ai-review-status>span{min-width:0;overflow-wrap:anywhere}.ai-review-spinner{animation:ai-review-spin .9s linear infinite}@keyframes ai-review-spin{to{transform:rotate(360deg)}}.base-semantic-groups{display:grid;gap:17px;margin-top:18px}.base-semantic-groups h4{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:12px;font-weight:500;color:#627c51;margin-bottom:8px}.base-semantic-groups h4 small{font-size:10px;font-weight:400;color:#94a080}.base-semantic-groups .pack-character-list{margin-top:0}.ai-review-status.ai-unavailable{background:#f0ecdf;color:#8d7d61}.ai-work-review{min-width:0;margin-top:22px;padding:16px;background:#edf0e0;border:1px solid #dae1c9;border-radius:9px}.ai-review-heading,.ai-review-ranking{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:7px 15px;font-size:11px;color:#7f8d6c}.ai-review-heading strong{display:inline-flex;align-items:center;gap:6px;color:#526e43;font-size:12px}.ai-review-comment{font-family:Songti SC,STSong,serif;color:#355039;font-size:17px;line-height:1.8;margin:12px 0 14px;overflow-wrap:anywhere;white-space:pre-wrap}.ai-review-ranking strong{font-weight:500;color:#527248}.profile-history-entry>.ai-work-review{margin-bottom:18px}.profile-detail-toggle:focus-visible{outline:2px solid #987d43;outline-offset:-5px}.ai-admin-settings{margin:0 0 28px;padding:0 0 24px;border-bottom:1px solid #dbe0cd}.ai-admin-settings h3{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:500}.ai-admin-settings>p{margin:11px 0 18px;color:#7b876e;font-size:12px;line-height:1.8}.ai-admin-switch{display:flex;align-items:center;gap:9px;font-size:13px;margin-bottom:20px}.ai-admin-switch input{width:18px;height:18px;accent-color:#2b6048}.ai-admin-actions{display:flex;flex-wrap:wrap;gap:10px}.ai-admin-actions>.button{flex:1;min-width:130px}.ai-admin-example{margin-top:15px;padding:14px;background:#e9eedb;border-radius:8px}.ai-admin-example>strong{display:flex;gap:6px;align-items:center;font-size:13px;font-weight:500}.ai-admin-example>div{margin-top:13px}.ai-admin-example span{font-size:11px;color:#7c896b}.ai-admin-example p{font-size:13px;line-height:1.8;margin-top:4px;overflow-wrap:anywhere}@media(max-width:480px){.mode-choices.has-target-mode{grid-template-columns:repeat(2,minmax(0,1fr))}.mode-choices.has-target-mode>label:last-child{grid-column:1 / -1}.ai-work-review{padding:13px}.ai-review-comment{font-size:16px}.ai-review-status{font-size:11px}}@media(prefers-reduced-motion:reduce){.ai-review-spinner{animation:none}}.room-topbar>div>.room-code-copy{width:100%;min-height:48px;margin:0;padding:2px 8px 2px 0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:3px;font-size:11px;text-align:left}.room-code-copy>strong{max-width:100%;color:#273f36}.room-code-copy>span{display:flex;align-items:center;gap:4px}.room-topbar>.room-invite-entry{width:44px;height:44px;flex-shrink:0}.share-invite-modal{width:min(100%,790px)}.share-invite-modal .modal-heading>button,.invite-manual-modal .modal-heading>button{min-width:44px;min-height:44px}.share-invite-modal .modal-heading h2{font-family:Songti SC,STSong,serif;font-size:22px}.share-invite-modal .modal-body{padding:25px}.invite-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,280px);align-items:start;gap:28px}.invite-message{min-width:0;padding-top:7px}.invite-kicker{font-size:11px;letter-spacing:2px;color:#7a826d}.invite-message h3{margin:15px 0 17px;color:#174c3b;font-family:Songti SC,STSong,serif;font-weight:600;font-size:27px;line-height:1.6;letter-spacing:.5px}.invite-room-name{font-size:12px;color:#68745f;line-height:1.8;overflow-wrap:anywhere}.invite-room-name>span{white-space:nowrap}.invite-code{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:13px 15px;margin:18px 0 12px;min-height:78px;text-align:left;border:1px solid #d8d5bf;border-bottom:3px solid #c7b894;border-radius:8px;background:#f6eed9;color:#355743}.invite-code>span:first-child{font-size:10px;letter-spacing:1px}.invite-code strong{display:block;font-size:27px;line-height:1.3;font-weight:600;letter-spacing:5px;font-variant-numeric:tabular-nums}.invite-code>span:last-child{display:flex;gap:5px;align-items:center;font-size:12px;white-space:nowrap}.invite-copy-actions{display:grid;grid-template-columns:1.25fr 1fr;gap:9px}.invite-copy-actions .button{min-height:46px;padding:10px 8px;font-size:12px}.invite-wayfinding{margin-top:17px;color:#68745f;font-size:12px;line-height:1.85}.invite-notice{display:flex;align-items:flex-start;gap:7px;font-size:12px;line-height:1.75;color:#20553f;margin-top:14px}.invite-notice svg{flex-shrink:0;margin-top:3px}.invite-picture{min-width:0}.invite-poster-frame{position:relative;min-height:330px;border-radius:8px;background:#e9e8d9;overflow:hidden;box-shadow:0 4px 14px #1e402318}.invite-poster-frame img{display:block;width:100%;height:auto;user-select:auto;-webkit-user-select:auto;-webkit-touch-callout:default}.invite-poster-frame:not(.is-ready) img{opacity:0}.invite-poster-frame.is-ready{min-height:0}.invite-poster-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;padding:20px;color:#607359;font-size:12px;text-align:center}.invite-poster-placeholder .button{min-height:44px;font-size:12px}.invite-image-tip{margin:10px 0;font-size:11px;text-align:center;color:#6e7b63}.invite-image-actions{display:flex;gap:8px;flex-wrap:wrap}.invite-image-actions>.button{flex:1;min-height:46px;padding:10px 9px;font-size:12px;white-space:nowrap}.invite-support-note{margin-top:10px;font-size:11px;line-height:1.75;color:#7a826d}.invite-save-note,.invite-share-wait{padding:12px;margin-top:13px;color:#426039;background:#e8eddd;border-radius:7px;font-size:12px;line-height:1.8}.invite-native-share{margin-top:9px;min-height:46px;font-size:12px}.invite-manual-copy{padding:13px;margin:16px 0;background:#eeefdf;border:1px solid #d5dcc5;border-radius:8px}.invite-manual-copy>p{margin-bottom:12px;font-size:12px;line-height:1.8;color:#5b6c50}.invite-manual-copy .field{margin-bottom:0}.invite-manual-copy .field textarea{resize:vertical;min-height:48px;font-size:16px;line-height:1.65;user-select:text;-webkit-user-select:text}@media(max-width:620px){.share-invite-modal .modal-body{padding:16px 21px calc(24px + env(safe-area-inset-bottom))}.invite-layout{display:flex;flex-direction:column;gap:21px}.invite-message{width:100%;padding:0}.invite-message h3{margin:9px 0 12px;font-size:25px;line-height:1.5}.invite-code{margin-top:12px;min-height:70px;padding-top:10px;padding-bottom:10px}.invite-wayfinding{margin-top:12px}.invite-picture{width:min(100%,310px);align-self:center}.invite-poster-frame{min-height:360px}.room-topbar>div>.room-code-copy{font-size:10px}}.club-hero-cat{display:block;flex-shrink:0;width:40%;max-width:390px;margin:0;padding:0;background:none;border:0;cursor:pointer;touch-action:manipulation}.club-hero-cat img{display:block;width:100%;height:auto;transform-origin:50% 80%;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.club-hero-cat .cat-wiggle-0{animation:cat-wiggle-even .65s ease-in-out}.club-hero-cat .cat-wiggle-1{animation:cat-wiggle-odd .65s ease-in-out}.club-cat-stars{position:fixed;inset:0;z-index:70;overflow:hidden;pointer-events:none}.club-cat-stars span{position:absolute;color:#e7981e;line-height:1;opacity:0;animation:cat-star-flight 1s ease-out forwards}@keyframes cat-wiggle-even{0%,to{transform:rotate(0)}25%{transform:rotate(-3deg)}65%{transform:rotate(3deg)}}@keyframes cat-wiggle-odd{0%,to{transform:rotate(0)}25%{transform:rotate(-3deg)}65%{transform:rotate(3deg)}}@keyframes cat-star-flight{0%{opacity:0;transform:translate(-50%,-50%) scale(.2)}16%{opacity:.9}75%{opacity:.6}to{opacity:0;transform:translate(calc(-50% + var(--star-x)),calc(-50% + var(--star-y))) scale(.7) rotate(var(--star-rotate))}}@media(max-width:600px){.club-hero-cat{width:min(240px,82%);max-width:none;justify-self:center}}@media(prefers-reduced-motion:reduce){.club-hero-cat img{animation:none!important}.club-cat-stars{display:none}}.player-records-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:24px 0 20px}.player-records-heading:first-child{margin-top:0}.player-records-heading h3{font-family:Songti SC,STSong,serif;font-size:23px;font-weight:500;margin:0}.player-records-heading p{font-size:12px;line-height:1.8;color:var(--muted);margin:8px 0 0}.player-records-heading select{max-width:100%;min-width:150px;background:#fffdf5;border:1px solid #d9ddce;border-radius:8px;padding:10px 12px;color:var(--ink);font-size:12px}.player-records-heading .text-button{display:flex;align-items:center;gap:7px}.player-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0}.player-metrics>div{padding:18px;background:#f1f3e8;border:1px solid #dfe4d3;border-radius:9px;min-width:0}.player-metrics dt{font-size:12px;color:var(--muted);line-height:1.7}.player-metrics dd{font-size:31px;color:var(--green);margin:8px 0 0;font-family:Songti SC,STSong,serif}.player-metrics p{font-size:11px;line-height:1.8;color:var(--muted);margin:10px 0 0}.player-overview{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:30px}.player-game-stats h4{font-size:14px;font-weight:500;color:var(--green);margin:0 0 15px}.club-page>.player-statistics{margin:30px 0}.player-history-games{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.player-history-games>button{display:flex;gap:16px;align-items:center;text-align:left;padding:24px;background:#fffdf5;border:1px solid #dfe3d2;border-radius:10px;color:var(--green)}.player-history-games>button:hover{background:#edf2e3}.player-history-games>button>span{flex:1;min-width:0}.player-history-games strong,.player-history-games small{display:block}.player-history-games strong{font-size:17px;font-weight:500;overflow-wrap:anywhere}.player-history-games small{font-size:12px;color:var(--muted);margin-top:9px}.player-history-games>button>svg{flex-shrink:0}.profile-main .player-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-main .player-overview{grid-template-columns:repeat(3,minmax(0,1fr))}.profile-main .player-history-games{grid-template-columns:1fr}.profile-main .player-overview>div{padding:14px 10px}.profile-main .player-overview dd{font-size:27px}@media(max-width:700px){.player-records-heading{align-items:flex-start;flex-wrap:wrap;gap:14px}.player-records-heading h3{font-size:21px}.player-records-heading select{min-width:0;font-size:16px;width:100%}.player-records-heading>label{width:100%}.player-records-heading>select{width:auto;max-width:100%}.player-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.player-metrics>div{padding:15px}.player-overview,.profile-main .player-overview{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.player-overview>div{padding:12px 8px}.player-overview dt{font-size:10px}.player-overview dd{font-size:26px}.player-history-games{grid-template-columns:1fr}.player-history-games>button{padding:21px 18px}.profile-navigation{overflow-x:auto}.profile-navigation>button{flex-shrink:0}}.club-shell{--club-ink: #1f352e;--club-leaf: #24583f;--club-mist: #e6ecde;--club-orange: #ff8b00;--club-paper: #fffef6;color:var(--club-ink)}.club-shell .club-header{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);height:auto;min-height:90px;gap:24px;padding:calc(18px + env(safe-area-inset-top)) 30px 18px;border-bottom:1px solid #dce1d3}.club-brand{display:flex;align-items:center;gap:13px;padding:0;background:none;border:0;color:var(--club-ink);text-align:left;flex-shrink:0}.club-brand img{width:135px;height:auto;object-fit:contain;flex-shrink:0}.club-brand>span{padding-left:13px;border-left:1px solid #c9d1c1}.club-brand strong{display:block;font-size:18px;font-weight:700;line-height:1.5}.club-brand-kind{white-space:nowrap}.club-brand small{display:block;font-size:10px;line-height:1.5;color:#63705c;margin-top:3px}.club-current-game{grid-column:2;display:flex;align-items:center;justify-content:center;gap:13px;min-width:0;padding:3px 8px;background:none;border-radius:8px;color:var(--club-ink)}.club-current-game strong{font:650 25px/1.4 Songti SC,STSong,serif;text-wrap:balance}.club-current-game .brand-mark{flex-shrink:0}.club-current-game:hover{background:#e8ecdf}.club-header-account{grid-column:3;justify-self:end;min-width:0;display:flex;align-items:center;gap:8px}.club-notifications-trigger{position:relative;display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;padding:0;background:none;border-radius:9px;color:var(--club-ink)}.club-notifications-trigger:hover{background:#e8ecdf}.club-notifications-dot{position:absolute;width:8px;height:8px;right:8px;top:7px;border-radius:50%;background:var(--red);box-shadow:0 0 0 2px var(--paper)}.club-user-menu{position:relative}.club-account-trigger{position:relative;display:flex;align-items:center;gap:8px;max-width:230px;min-height:44px;padding:4px 6px;background:none;border-radius:9px}.club-account-trigger:hover,.club-account-trigger.is-open{background:#e8ecdf}.club-account-name{min-width:0;max-width:150px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:13px}.club-account-menu{position:absolute;z-index:80;right:0;top:calc(100% + 10px);width:250px;max-width:calc(100vw - 32px);max-height:min(620px,calc(100dvh - 110px));overflow:auto;padding:9px;background:var(--paper);border:1px solid #cbd4c0;border-radius:12px;box-shadow:0 12px 35px #183a2628}.club-menu-person{padding:8px 10px 13px;margin-bottom:5px;border-bottom:1px solid #dce1d3}.club-menu-person strong,.club-menu-person span{display:block;overflow-wrap:anywhere}.club-menu-person strong{font-size:14px}.club-menu-person span{margin-top:4px;font-size:11px;color:#7b876e}.club-account-menu [role=menuitem]{display:flex;align-items:center;gap:12px;min-height:42px;width:100%;padding:9px 10px;border-radius:6px;background:none;text-align:left;font-size:14px}.club-account-menu [role=menuitem]:hover,.club-account-menu [role=menuitem]:focus-visible,.club-account-menu [aria-current=page]{background:#e6ecde;color:#20553f}.club-account-menu [role=menuitem] b{margin-left:auto;font-size:10px;padding:2px 6px;background:var(--red);border-radius:8px;color:#fff}.club-menu-divider{height:1px;background:#dce1d3;margin:5px 9px}.club-page{width:min(1120px,calc(100% - 56px));margin:0 auto;padding:42px 0 70px}.club-welcome{display:flex;justify-content:space-between;align-items:center;padding:5px 18px 35px 0;margin-bottom:20px}.club-welcome h1{font-family:Songti SC,STSong,serif;font-size:clamp(36px,4.2vw,58px);line-height:1.35;letter-spacing:.03em;margin:0 0 18px;font-weight:650}.club-welcome p{line-height:1.9;font-size:15px;color:#63715b;margin:0 0 22px}.club-section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:28px 0 20px}.club-section-heading h2{font-size:21px;margin:0;font-weight:650}.club-section-heading .text-button{display:flex;align-items:center;gap:8px}.club-catalog-tools{display:flex;gap:10px}.club-search{display:flex;align-items:center;gap:7px;border:1px solid #d1d9c9;border-radius:7px;padding:9px 12px;background:#ffffff80}.club-search input{border:0;background:transparent;width:145px;padding:0;outline:0;font-size:13px}.club-page select{border:1px solid #c9d3bd;padding:9px 11px;border-radius:7px;background:#fffef6;color:#31533f;font-size:13px;max-width:100%}.club-catalog{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}.club-game-card{overflow:hidden;background:#fffef8;border:1px solid #d8dfce;border-radius:14px}.club-game-art{display:flex;position:relative;width:100%;align-items:center;justify-content:center;min-height:190px;padding:30px;border:0;background:#dce6d0;overflow:hidden}.club-game-art>img{position:absolute;width:100%;height:100%;object-fit:cover;inset:0}.club-word-tiles{display:flex;gap:10px;transform:rotate(-4deg)}.club-word-tiles i{font-family:Songti SC,STSong,serif;font-size:45px;font-weight:750;width:62px;height:83px;display:grid;place-items:center;color:#215742;font-style:normal;background:#fffcef;border:1px solid #ccc7ae;border-bottom:8px solid #babda0;border-radius:7px;box-shadow:3px 7px #a9b79a55}.club-word-tiles i:nth-child(2){transform:translateY(-8px) rotate(5deg)}.club-word-tiles i:last-child{color:#ad4433;transform:rotate(8deg)}.club-generic-art{color:#31543f;font-size:30px;font-family:Songti SC,serif;text-align:center}.club-coming-art{display:flex;align-items:center;gap:13px;color:#b7782d}.club-coming-art b{font-family:Georgia,serif;line-height:1;font-size:100px;transform:rotate(10deg);font-weight:500}.club-coming-art>span{font-size:27px;font-weight:600;letter-spacing:.08em}.coming-card .club-game-art{background:#efe6d4}.club-availability{position:absolute;right:16px;top:16px;padding:5px 11px;border-radius:4px;background:#fffdf2c9;font-size:12px;color:#7d672f}.club-game-copy{padding:24px 26px 27px}.club-card-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.club-card-title h3{font-size:22px;line-height:1.4;margin:0}.club-card-title h3 button{padding:0;border:0;background:none;color:inherit;font:inherit;text-align:left}.club-game-copy>p{font-size:14px;line-height:1.8;color:#66735e;min-height:26px;margin:11px 0 18px}.club-game-meta{display:flex;flex-wrap:wrap;gap:13px;font-size:12px;color:#71816a;margin-bottom:22px}.club-game-meta>span{display:flex;align-items:center;gap:5px}.club-game-copy>.button{min-width:130px}.club-favorite.is-favorite{color:#b9533e}.club-home-library{display:grid;grid-template-columns:1fr 1fr;gap:38px;margin-top:28px}.club-mini-list{border-top:1px solid #d3dcca}.club-mini-list>button{display:flex;width:100%;justify-content:space-between;align-items:center;gap:15px;background:none;border:0;border-bottom:1px solid #d3dcca;padding:20px 0;color:#35513d;font-size:15px;text-align:left}.club-empty{padding:28px 0;color:#7c8971;font-size:14px;line-height:1.9}.club-empty p{margin-top:0}.club-error{border-left:3px solid #b86a4a;padding:12px 16px;background:#fff1e7;margin:18px 0;color:#7f4d3a;font-size:14px;line-height:1.7}.club-error p{margin:0 0 8px}.club-error p:last-child{margin:0}.club-page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}.club-page-heading h1{font-family:Songti SC,STSong,serif;font-size:32px;margin:0;line-height:1.4}.club-page-heading p{font-size:14px;color:#74816b;line-height:1.8;margin:10px 0 0;max-width:650px}.club-tabs{display:flex;gap:6px;border-bottom:1px solid #d1dac5;margin:0 0 28px}.club-tabs>button{border:0;border-bottom:3px solid transparent;background:none;padding:12px 22px;color:#718369;font-size:15px}.club-tabs>button[aria-selected=true],.club-tabs>button[aria-pressed=true]{color:#24583f;border-bottom-color:#24583f;font-weight:650}.club-current-room{width:min(1120px,calc(100% - 56px));margin:22px auto 0;padding:15px 19px;background:#dfebd5;border:1px solid #c4d6b4;border-radius:9px;display:flex;align-items:center;gap:16px}.club-current-room>div{flex:1}.club-current-room strong{display:block;font-size:14px}.club-current-room p{font-size:12px;line-height:1.7;margin:4px 0 0;color:#667d58}.club-current-room .button{flex-shrink:0;font-size:13px}.club-game-section{--game-section-width:960px;--game-section-gutter:32px;padding-bottom:50px}.club-game-intro{width:100%;max-width:var(--game-section-width);padding-inline:var(--game-section-gutter);margin:28px auto 0}.club-game-intro>.text-button{display:flex;align-items:center;gap:6px;margin-bottom:22px}.club-game-intro .club-page-heading{margin-bottom:18px}.club-game-heading-copy{min-width:0;flex:1}.club-game-title{display:flex;align-items:center;gap:14px}.club-game-title .brand-mark{flex-shrink:0}.club-game-title h1{min-width:0;text-wrap:balance}.club-game-intro .club-favorite{flex-shrink:0}.club-game-links{display:flex;flex-wrap:wrap;gap:18px;border-bottom:1px solid #d3ddca;padding-bottom:22px}.club-game-links>button{display:flex;align-items:center;gap:6px;padding:0;border:0;background:none;font-size:13px;color:#57754b}.club-coming-note{font-size:14px;line-height:1.8;color:#8a713e}.club-game-section .lobby-page{max-width:var(--game-section-width);padding-inline:var(--game-section-gutter);padding-top:25px}@media(min-width:1024px){.club-game-section{--game-section-width:1440px;--game-section-gutter:40px}}@media(max-width:700px){.club-game-section{--game-section-gutter:20px}}.club-login-prompt{text-align:center;padding:34px 15px 45px}.club-login-prompt img{width:125px;height:auto;margin-bottom:20px}.club-login-prompt h2{font-size:21px;line-height:1.5}.club-login-prompt p{max-width:500px;margin:12px auto 22px;font-size:14px;color:#7b876e;line-height:1.8}.club-guide-name{margin:0 0 20px;font-size:20px;font-family:Songti SC,STSong,serif;font-weight:650}.club-guide-sections{display:grid;grid-template-columns:1fr 1fr;column-gap:28px;row-gap:16px}.club-guide-sections h3{font-size:15px;color:#31583b;margin:0 0 8px}.club-guide-sections p{white-space:pre-line;font-size:13px;line-height:1.85;color:#6b7c60;margin:0}.club-guide-actions{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:28px;padding-top:20px;border-top:1px solid #d8dfce}.club-guide-exit{display:block;margin:15px auto 0;font-size:12px}.club-rules-page{max-width:850px}.club-rules-page>.text-button{display:flex;gap:6px;align-items:center;margin-bottom:24px}.club-full-rules section{margin:0 0 30px}.club-full-rules h2{font-size:20px;margin:0 0 12px}.club-full-rules p{white-space:pre-line;font-size:15px;line-height:1.95;margin:0;color:#63745b}.club-points-total{border-top:1px solid #cbd5bf;border-bottom:1px solid #cbd5bf;padding:27px 0 25px}.club-points-total>span{display:block;color:#6e7c63;font-size:14px}.club-points-total>strong{display:block;font-size:54px;line-height:1.4;font-weight:500;margin:6px 0}.club-points-total>p{font-size:13px;color:#79866f;margin:0}.club-point-games{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0 30px}.club-point-games>button{display:flex;align-items:center;gap:20px;border:1px solid #ced9c2;border-radius:7px;background:#fffdf4;color:#526d45;padding:14px 17px}.club-point-games>button.selected{background:#dfebd3;border-color:#9db78c}.club-point-matches{padding:0;margin:0 0 24px;list-style:none}.club-point-matches>li{border-top:1px solid #dce2d1}.club-point-match-row{display:flex;align-items:center;gap:20px;padding:20px 0}.club-point-match-toggle{display:flex;align-items:center;gap:20px;min-width:0;flex:1;padding:0;background:none;text-align:left}.club-point-match-toggle>div{min-width:0;flex:1}.club-point-match-toggle strong{font-size:15px;font-weight:600;overflow-wrap:anywhere}.club-point-match-toggle span{display:flex;flex-wrap:wrap;gap:5px 15px;font-size:12px;color:#7b876e;margin-top:7px}.club-point-match-toggle b{flex-shrink:0;font-size:22px;font-weight:600;color:#28633e;white-space:nowrap}.club-point-match-toggle b.negative{color:#a35e4c}.club-point-match-toggle b small{font-size:12px;font-weight:400}.club-point-match-toggle>svg{color:#7b876e;transition:transform .15s}.club-point-match-toggle>svg.is-expanded{transform:rotate(180deg)}.club-point-match-row>.button{flex-shrink:0}.club-point-breakdown{padding:2px 20px 18px;margin:0 0 16px;background:#edf0e5;border-radius:7px}.club-point-breakdown dl{margin:0}.club-point-breakdown dl>div{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #d9e1ce;font-size:13px}.club-point-breakdown dd{margin:0;white-space:nowrap}.club-point-breakdown>p{padding-top:12px;font-size:11px;color:#7b876e}.club-history-detail-nav{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:20px}.club-history-list>article{border:1px solid #d3ddc8;border-radius:9px;background:#fffdf5;margin-bottom:15px;overflow:hidden}.club-history-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;text-align:left;width:100%;padding:22px;border:0;background:none;color:#36513a}.club-history-summary h3{font-size:18px;margin:7px 0}.club-history-summary span{font-size:12px;color:#6d865e}.club-history-summary p{font-size:12px;color:#89977c;margin:0}.club-history-summary>strong{font-size:20px;white-space:nowrap}.club-history-list .profile-history-detail{margin:0 22px 22px}.club-account-hero{display:flex;align-items:center;gap:20px;margin:30px 0 38px}.club-account-hero>div{flex:1;min-width:0}.club-account-hero h2{margin:0 0 5px;font-size:23px}.club-account-hero p{color:#7a8a6e;font-size:13px;margin:0 0 8px}.club-account-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));row-gap:24px;border-top:1px solid #d2ddc6;border-bottom:1px solid #d2ddc6;margin-bottom:30px;padding:24px 0}.club-account-overview>button{background:none;border:0;border-right:1px solid #d2ddc6;color:#31543f;display:flex;flex-direction:column;gap:8px;padding:0 15px;text-align:center}.club-account-overview>button:nth-child(3n){border-right:0}.club-account-overview strong{font-size:32px;font-weight:500}.club-account-overview span{font-size:12px;color:#7a8a6e}.club-account-links{display:grid;grid-template-columns:1fr 1fr;gap:16px}.club-account-links>button{display:flex;align-items:center;gap:17px;padding:25px 23px;border:1px solid #d2ddc6;border-radius:9px;background:#fffdf5;color:#476d3f;text-align:left}.club-account-links>button>span{flex:1}.club-account-links strong,.club-account-links small{display:block}.club-account-links strong{font-size:16px;margin-bottom:7px}.club-account-links small{font-size:12px;color:#849176}.club-presence{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:11px;margin-top:5px;color:#6f8266;font-weight:400}.club-presence-label{display:flex;align-items:center;gap:5px}.club-presence-label>i{width:6px;height:6px;border-radius:50%;background:#6f9a56;flex-shrink:0}.club-presence.away .club-presence-label>i{background:#c69a4d}.club-presence.offline .club-presence-label>i,.club-presence.private .club-presence-label>i{background:#a3aa9c}.club-presence .text-button{display:flex;align-items:center;gap:4px;font-size:11px}.club-readonly{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:15px 22px;margin:12px auto;width:min(1120px,calc(100% - 40px));background:#fff0d6;border:1px solid #e7ce97;border-radius:7px;font-size:13px;color:#7c6135}.club-invite-landing{max-width:620px;text-align:center;padding-top:65px}.club-invite-landing h1{font-size:30px}.club-invite-landing>p{line-height:1.85;color:#7a896f}.club-invite-landing .button{margin:8px 5px}.club-room-view[hidden]{display:none!important}.club-room-view .room-topbar .club-return-platform{width:auto;font-size:12px;gap:5px}.club-room-view .room-topbar .club-leave-room{width:auto;font-size:12px;color:#9a5b48;margin-left:8px}.club-footer{width:min(1120px,calc(100% - 56px));margin:0 auto;padding:24px 0 calc(34px + env(safe-area-inset-bottom));border-top:1px solid #d6dfcb;color:#8a967d;font-size:11px;display:flex;justify-content:space-between;gap:15px}.club-shell :focus-visible{outline:3px solid #bc862c;outline-offset:3px}@media(max-width:1100px){.club-shell .club-header{padding:calc(14px + env(safe-area-inset-top)) 22px 14px;gap:12px}.club-brand img{width:116px}.club-brand strong{font-size:16px}.club-page{width:calc(100% - 40px);padding-top:30px}}@media(max-width:1000px){.club-shell .club-header{grid-template-columns:minmax(0,1fr) auto}.club-header-account{grid-column:2;grid-row:1}.club-current-game{grid-column:1/-1;grid-row:2;width:100%;padding:14px 0 2px;border-top:1px solid #d9e0cf;border-radius:0}}@media(max-width:600px){.club-shell .club-header{padding:calc(12px + env(safe-area-inset-top)) 16px 8px}.club-brand{gap:8px;min-width:0;flex:1}.club-brand img{width:110px}.club-brand>span{padding-left:9px;min-width:0}.club-brand strong{font-size:14px}.club-brand-kind{display:block}.club-brand small{font-size:8px;max-width:94px}.club-account-trigger{padding:4px 2px;gap:3px}.club-account-name{display:none}.club-header-account{gap:2px}.club-current-game{gap:11px;padding-top:12px;padding-bottom:5px}.club-current-game strong{font-size:24px}.club-page{width:calc(100% - 32px);padding-top:24px}.club-welcome{display:grid;grid-template-columns:1fr;gap:18px;padding:6px 0 15px;margin-bottom:10px}.club-welcome h1{font-size:34px;line-height:1.4;margin-bottom:14px}.club-welcome p{font-size:12px;margin-bottom:18px}.club-section-heading{gap:10px;flex-wrap:wrap;margin:24px 0 16px}.club-section-heading h2{font-size:19px}.club-catalog-tools{width:100%}.club-search{flex:1}.club-search input{width:100%;min-width:0}.club-catalog{grid-template-columns:1fr;gap:20px}.club-game-art{min-height:164px;padding:20px}.club-word-tiles i{width:55px;height:74px;font-size:37px}.club-coming-art b{font-size:80px}.club-game-copy{padding:20px}.club-card-title h3{font-size:21px}.club-game-copy>p{font-size:13px;margin:9px 0 15px}.club-game-meta{margin-bottom:19px}.club-home-library{grid-template-columns:1fr;gap:0;margin-top:10px}.club-page-heading{align-items:flex-start;flex-wrap:wrap;gap:15px;margin-bottom:22px}.club-page-heading h1{font-size:27px}.club-page-heading p{font-size:13px}.club-current-room{width:calc(100% - 32px);gap:10px;padding:13px;align-items:flex-start}.club-current-room>svg{display:none}.club-current-room .button{padding:9px 11px;min-height:38px;font-size:12px}.club-current-room p{max-width:175px}.club-game-intro{margin-top:23px}.club-game-heading-copy{flex-basis:100%}.club-game-title{gap:11px}.club-game-intro .club-page-heading>.button{padding:9px 12px;font-size:12px}.club-game-links{gap:15px}.club-game-links>button{font-size:12px}.club-guide-sections{grid-template-columns:1fr;gap:20px}.club-guide-actions .button{flex:1;font-size:12px;padding:11px}.club-tabs>button{padding:10px 18px;font-size:14px}.club-account-hero{flex-wrap:wrap;gap:15px}.club-account-hero>.button{width:100%}.club-account-overview{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 0}.club-account-overview>button{border-right:1px solid #d2ddc6}.club-account-overview>button:nth-child(2n){border-right:0}.club-account-links{grid-template-columns:1fr;gap:12px}.club-account-links>button{padding:21px 18px}.club-history-summary{padding:18px 15px}.club-history-summary h3{font-size:16px}.club-history-summary>strong{font-size:18px}.club-point-match-row{gap:12px;flex-wrap:wrap}.club-point-match-toggle{flex-basis:100%;gap:12px}.club-point-match-toggle strong{font-size:14px}.club-point-match-toggle b{font-size:20px}.club-point-match-row>.button{margin-left:auto}.club-readonly{width:calc(100% - 28px);font-size:12px;padding:12px}.club-readonly .button{flex-shrink:0;padding:9px;font-size:12px}.club-room-view .room-topbar{flex-wrap:wrap}.club-room-view .room-topbar-title{min-width:120px}.club-footer{width:calc(100% - 32px);font-size:10px;flex-direction:column;gap:6px}}@media(max-width:380px){.club-brand{flex-wrap:wrap;row-gap:5px}.club-brand>span{flex-basis:100%;padding-left:0;border-left:0}.club-brand strong{font-size:12px}.club-brand-kind{display:inline}.club-brand small{max-width:none;font-size:7px}}@media(max-width:380px){.club-brand small{font-size:7px;max-width:84px}}@media(prefers-reduced-motion:reduce){.club-shell *{scroll-behavior:auto!important;transition:none!important}}.profile-center-modal{width:min(1180px,calc(100vw - 48px));max-width:1180px}.profile-center-modal>.modal-body{padding:0}.profile-center{min-height:430px;display:grid;grid-template-columns:270px minmax(0,1fr)}.profile-sidebar{padding:30px 25px;background:#eff0e3;border-right:1px solid var(--line)}.profile-person{position:relative;display:flex;flex-wrap:wrap;gap:18px;align-items:center;margin-bottom:25px}.profile-person>.avatar{width:78px;height:78px}.profile-person>div{flex:1;min-width:0}.profile-person h1{font-family:Songti SC,STSong,serif;font-size:26px;line-height:1.4;overflow-wrap:anywhere}.profile-person p{font-size:10px;color:var(--muted);line-height:1.7;overflow-wrap:anywhere;margin-top:5px}.profile-scoreboard{margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #d3d7c3;border-bottom:1px solid #d3d7c3;padding:17px 0 0;text-align:center}.profile-scoreboard>div{min-width:0}.profile-scoreboard dt{font-size:10px;color:#75806a;white-space:nowrap}.profile-scoreboard dd{margin:6px 0 16px;font-family:Songti SC,STSong,serif;font-size:29px;color:var(--green);font-weight:600;line-height:1.1}.profile-scoreboard .profile-points{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #d3d7c3;padding:14px 8px}.profile-scoreboard .profile-points dd{margin:0;font-size:27px}.profile-scoreboard .profile-points dt{font-size:12px;color:var(--green)}.profile-stat-footnote{font-size:10px;line-height:1.7;color:var(--muted);margin-top:10px}.profile-stats-private{display:flex;align-items:center;gap:7px;padding:18px 0;font-size:12px;line-height:1.7;color:var(--muted)}.profile-navigation{display:grid;gap:5px;margin-top:28px}.profile-navigation>button{display:flex;align-items:center;gap:12px;background:none;text-align:left;padding:14px 15px;border-radius:8px;color:#6d7f66;font-size:13px;white-space:nowrap}.profile-navigation>button.selected{background:#dce5cf;color:var(--green);box-shadow:inset 3px 0 var(--green)}.profile-main{padding:30px 35px 36px;min-width:0}.profile-loading{padding:30px 18px;color:var(--muted);text-align:center;font-size:12px;line-height:1.7;grid-column:1/-1}.profile-inline-error{padding:16px;background:#f8ece3;border-radius:8px;color:var(--red);font-size:12px;line-height:1.7;margin:12px 0;grid-column:1/-1}.profile-inline-error>.button{margin-top:10px}.profile-section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 24px}.profile-section-heading h3{font-family:Songti SC,STSong,serif;font-size:23px;line-height:1.4;color:var(--ink)}.profile-section-heading>span{font-size:10px;color:var(--muted)}.profile-friendship{margin-top:24px}.profile-friendship>.button{width:100%}.profile-friendship>span,.profile-friendship>p{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:12px;line-height:1.7;margin-bottom:13px}.profile-friendship .two-actions .button{font-size:12px;padding:10px 12px}.profile-private-note{text-align:center;padding:60px 20px;color:var(--muted)}.profile-private-note>svg{color:#9b9c80}.profile-private-note h3{font-size:17px;font-weight:500;color:var(--ink);margin:20px 0 12px}.profile-private-note p{font-size:12px;line-height:1.8}.profile-history-entry{padding:22px 22px 0;background:#fffdf5;border:1px solid #dfdfcd;border-bottom:4px solid #d5c9a7;border-radius:10px;margin-bottom:22px;overflow:hidden}.profile-history-top{display:flex;justify-content:space-between;gap:15px;align-items:center}.profile-history-top>div{min-width:0}.profile-history-top strong,.profile-history-top>div>span{display:block}.profile-history-top strong{font-size:15px;font-weight:600;overflow-wrap:anywhere}.profile-history-top>div>span{font-size:10px;color:var(--muted);margin-top:7px}.profile-history-top>span{display:flex;align-items:center;gap:10px}.profile-history-top small{font-size:10px;color:var(--muted);white-space:nowrap}.profile-trophy{color:#ad8a37;flex-shrink:0}.profile-hu-stamp{font-family:Songti SC,STSong,serif;font-size:19px;line-height:1;font-style:normal;color:var(--red);border:1.5px solid var(--red);border-radius:50%;padding:4px;display:inline-flex;align-items:center;justify-content:center;transform:rotate(-8deg)}.profile-history-meta{display:flex;align-items:center;gap:13px;flex-wrap:wrap;color:var(--muted);font-size:10px;margin:14px 0 20px}.profile-history-meta>span{display:flex;align-items:center;gap:4px}.profile-history-tiles{display:flex;flex-wrap:wrap;align-items:flex-start;gap:9px 4px;margin:15px 0 20px;min-width:0}.profile-history-tiles .tile-face{width:34px;height:47px;flex-shrink:0;border-radius:3px;border-bottom-width:4px}.profile-history-tiles .tile-word{font-size:23px}.profile-history-space{width:16px;height:47px;flex-shrink:0}.profile-history-break{flex-basis:100%;height:0}.profile-history-score{display:flex;align-items:center;justify-content:space-between;gap:12px}.profile-history-score>strong{font-size:18px;font-weight:600;color:var(--green);font-family:Songti SC,STSong,serif}.profile-gift-counts{display:flex;align-items:center;gap:20px;font-size:11px;color:#7d856d}.profile-gift-counts>span{display:flex;align-items:center;gap:5px}.profile-gift-counts svg:first-child{color:#b98c6a}.profile-score-detail{font-size:10px;color:#8b8d7b;display:flex;align-items:center;flex-wrap:wrap;gap:8px;line-height:1.8;margin:9px 0 15px}.profile-score-detail strong{font-weight:500;color:var(--green);margin-left:auto}.profile-history-entry>.profile-score-detail strong{display:none}.profile-detail-toggle{width:calc(100% + 44px);margin-left:-22px;display:flex;align-items:center;justify-content:space-between;background:#f2f2e7;color:#697b60;font-size:11px;padding:13px 22px;border-top:1px solid #e2e2d3}.profile-detail-toggle[aria-expanded=true]>svg{transform:rotate(180deg)}.profile-history-detail{padding:20px 0 8px}.profile-game-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px;margin:0 0 22px}.profile-game-facts>div{min-width:0}.profile-game-facts dt{font-size:10px;color:var(--muted);margin-bottom:5px}.profile-game-facts dd{margin:0;font-size:11px;line-height:1.7;overflow-wrap:anywhere}.profile-detail-fold{border-top:1px solid var(--line);padding:13px 0;color:var(--ink)}.profile-detail-fold>summary{font-size:12px;cursor:pointer;list-style-position:inside;line-height:1.7}.profile-detail-fold>summary>svg{margin:0 5px}.profile-detail-fold>dl,.profile-detail-fold>p{margin-top:16px}.profile-detail-people{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:15px 0 27px}.profile-detail-people button{display:flex;align-items:center;gap:6px;background:none;padding:0;font-size:11px}.profile-detail-people button>svg:not(.avatar){color:var(--gold)}.profile-detail-people button:disabled{opacity:.7}.profile-history-detail>h3{font-size:14px;margin-bottom:17px;font-weight:500}.profile-other-works>section{border-bottom:1px dashed #dedccb;padding:3px 0 16px;margin-bottom:20px}.profile-work-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.profile-work-heading>button{background:none;display:flex;align-items:center;gap:7px;padding:0;min-width:0}.profile-work-heading strong{font-size:12px;font-weight:500;overflow-wrap:anywhere}.profile-work-heading>span{display:flex;align-items:center;gap:6px;font-size:10px;color:var(--muted);white-space:nowrap}.profile-work-heading .profile-hu-stamp{font-size:13px;padding:3px}.profile-original{margin-top:12px;font-size:10px;color:var(--muted)}.profile-original>summary{cursor:pointer}.profile-original .profile-history-tiles{margin-bottom:0}.profile-discard-records{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:0;margin:18px 0 10px;gap:14px 10px;counter-reset:discard}.profile-discard-records li{display:flex;align-items:center;gap:8px;counter-increment:discard;font-size:10px;min-width:0}.profile-discard-records li:before{content:counter(discard);font-size:9px;color:#9b9d89}.profile-discard-records li>span:first-of-type{max-width:75px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-discard-records .tile-face{width:26px;height:35px;flex-shrink:0}.profile-discard-records .tile-word{font-size:18px}.profile-discard-records small{font-size:9px;color:var(--muted)}.profile-chat-records,.profile-game-log{list-style:none;padding:0;margin:14px 0;font-size:11px;line-height:1.9}.profile-chat-records li{padding:10px 0;border-bottom:1px dashed #e0dfd2}.profile-chat-records li>div{display:flex;justify-content:space-between;gap:12px}.profile-chat-records strong{font-size:10px;font-weight:500}.profile-chat-records time{font-size:9px;color:var(--muted)}.profile-chat-records p{white-space:pre-wrap;overflow-wrap:anywhere}.profile-game-log li{padding:5px 0;color:#6b7863}.profile-load-more{margin:5px 0 15px}.profile-add-friend{padding:0 0 23px;border-bottom:1px solid var(--line);margin-bottom:12px}.profile-add-friend>label{display:block;font-size:12px;margin-bottom:10px}.profile-add-friend>div{display:flex;gap:8px}.profile-add-friend input{flex:1;min-width:0;background:#fffdf5;border:1px solid #d9ddce;border-radius:8px;padding:11px 12px;font-size:12px}.profile-add-friend .button{font-size:12px;padding:10px 14px}.profile-friend-list article,.profile-requests article{display:flex;align-items:center;gap:16px;padding:18px 0;border-bottom:1px solid var(--line)}.profile-friend-person{display:flex;align-items:center;gap:12px;background:none;padding:0;text-align:left;min-width:0;flex:1}.profile-friend-person>span{min-width:0}.profile-friend-person strong{display:block;font-size:13px;font-weight:500}.profile-friend-person small{display:block;font-size:10px;line-height:1.8;color:var(--muted);margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:280px}.profile-count-badge{font-size:9px;background:var(--red);color:#fff8ed;font-style:normal;min-width:17px;height:17px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;padding:0 4px}.profile-sent-requests{margin-top:24px}.profile-sent-requests h4{font-size:12px;font-weight:500;color:var(--muted);margin:0 0 15px}.profile-sent-requests p{display:flex;align-items:center;gap:9px;font-size:12px;margin:13px 0}.profile-sent-requests small{margin-left:auto;font-size:10px;color:var(--muted)}.profile-notifications>article{display:flex;align-items:flex-start;gap:12px;padding:17px 0;border-bottom:1px solid var(--line)}.profile-notifications>article>svg{color:#849277;margin-top:4px}.profile-notifications button{padding:0;background:none;font-size:13px;color:var(--green)}.profile-notifications p{font-size:12px;line-height:1.8;margin-top:5px}.profile-notifications time{display:block;font-size:10px;color:var(--muted);margin-top:7px}.profile-requests .two-actions .button{padding:8px 12px}.profile-message-heading{display:flex;align-items:center;gap:8px;padding-bottom:15px;border-bottom:1px solid var(--line)}.profile-message-person{display:flex;gap:9px;align-items:center;background:none;min-width:0;text-align:left}.profile-message-person strong{font-size:14px;font-weight:500;overflow-wrap:anywhere}.profile-message-heading>span{margin-left:auto;font-size:10px;color:var(--muted);white-space:nowrap}.profile-message-list{height:min(48vh,420px);min-height:230px;overflow-y:auto;overscroll-behavior:contain;padding:20px 4px;display:flex;flex-direction:column;gap:15px}.profile-older-messages{align-self:center;padding:7px 12px;background:#edf0e1;border-radius:6px;font-size:10px}.profile-message{align-self:flex-start;max-width:85%}.profile-message.mine{align-self:flex-end}.profile-message>p{background:#f1efdf;border:1px solid #e5dfc8;border-radius:3px 12px 12px;padding:10px 13px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.8}.profile-message.mine>p{background:#e0e9d8;border-color:#c5d6b9;border-radius:12px 3px 12px 12px}.profile-message time{display:block;font-size:9px;color:#929684;margin-top:5px}.profile-message.mine time{text-align:right}.profile-message-compose{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;border-top:1px solid var(--line);padding-top:16px}.profile-message-compose textarea{resize:vertical;min-height:66px;max-height:180px;min-width:0;width:100%;padding:10px 12px;background:#fffdf5;border:1px solid #d5d9c9;border-radius:8px;font-size:13px;line-height:1.7}.profile-message-compose>.button{align-self:stretch;font-size:12px;min-width:72px;padding:10px}.profile-message-compose>span{font-size:9px;color:var(--muted)}.profile-privacy>p{font-size:12px;color:var(--muted);line-height:1.9;margin-bottom:26px}.profile-privacy-option{display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid var(--line);padding:23px 0;cursor:pointer}.profile-privacy-option>span:first-child{min-width:0}.profile-privacy-option strong{display:block;font-size:14px;font-weight:500}.profile-privacy-option small{display:block;font-size:11px;line-height:1.8;color:var(--muted);margin-top:8px}.profile-privacy-option .switch{flex-shrink:0}.profile-privacy-note{display:flex;align-items:flex-start;gap:12px;padding:17px;background:#eef0df;border-radius:8px;color:#7e8b71;font-size:11px;line-height:1.8;margin-top:10px}.profile-privacy-note>svg{flex-shrink:0;margin-top:2px}.community-header-entry .profile-count-badge{position:absolute;top:0;right:-2px}@media(max-width:900px){.profile-center{grid-template-columns:210px minmax(0,1fr)}.profile-sidebar{padding:25px 18px}.profile-main{padding:26px 23px}.profile-person{gap:13px}.profile-person>.avatar{width:58px;height:58px}.profile-person h1{font-size:22px}.profile-scoreboard dd{font-size:25px}.profile-navigation>button{padding:12px 10px;gap:8px}.profile-requests article{flex-wrap:wrap}.profile-requests article>.two-actions{width:100%;padding-left:54px}.profile-friend-person small{max-width:190px}.profile-history-tiles .tile-face{width:31px;height:43px}.profile-history-tiles .tile-word{font-size:21px}}@media(max-width:700px){.profile-center-modal{width:100%;max-height:94dvh}.profile-center{display:block;min-height:300px}.profile-sidebar{border-right:0;border-bottom:1px solid var(--line);padding:20px 20px 0}.profile-person{margin-bottom:17px;gap:14px;flex-wrap:nowrap}.profile-person>.avatar{width:60px;height:60px}.profile-person>div{padding-right:0}.profile-person h1{font-size:24px}.profile-person p{font-size:10px}.profile-scoreboard{grid-template-columns:repeat(4,minmax(0,1fr));padding:14px 0;border-bottom:0;align-items:center}.profile-scoreboard dt{font-size:10px}.profile-scoreboard dd{font-size:26px;margin:6px 0 0}.profile-scoreboard .profile-points{grid-column:auto;display:block;padding:0;border-top:0;border-left:1px solid #cfd6be}.profile-scoreboard .profile-points dt{font-size:10px}.profile-scoreboard .profile-points dd{font-size:26px;margin:6px 0 0}.profile-stat-footnote{font-size:9px;margin:0 0 15px;text-align:center}.profile-navigation{display:flex;overflow:auto;gap:0;margin:0 -4px;padding:0;scrollbar-width:none}.profile-navigation>button{flex:1;flex-direction:column;justify-content:center;gap:6px;padding:12px 7px;border-radius:6px 6px 0 0;font-size:10px}.profile-navigation>button.selected{box-shadow:inset 0 -3px var(--green)}.profile-navigation>button>svg{width:17px;height:17px}.profile-main{padding:23px 18px 30px}.profile-section-heading{margin-bottom:20px;gap:8px}.profile-section-heading h3{font-size:21px}.profile-section-heading>span{font-size:9px}.profile-history-entry{padding:18px 15px 0;margin-bottom:18px}.profile-history-top strong{font-size:14px}.profile-history-top>div>span{font-size:9px}.profile-history-meta{font-size:9px;gap:9px;margin:12px 0 15px}.profile-hu-stamp{font-size:17px;padding:4px}.profile-history-tiles{gap:8px 4px;margin:13px 0 18px}.profile-history-tiles .tile-face{width:34px;height:47px}.profile-history-tiles .tile-word{font-size:23px}.profile-history-space{height:47px;width:14px}.profile-detail-toggle{width:calc(100% + 30px);margin-left:-15px;padding:12px 15px;font-size:10px}.profile-history-score>strong{font-size:18px}.profile-gift-counts{font-size:10px;gap:16px}.profile-score-detail{font-size:9px;margin:9px 0 14px}.profile-game-facts{gap:14px 10px}.profile-game-facts dd{font-size:10px}.profile-game-facts dt{font-size:9px}.profile-discard-records{grid-template-columns:1fr}.profile-work-heading{gap:6px}.profile-work-heading>span{font-size:9px;gap:4px}.profile-work-heading strong{font-size:11px}.profile-friendship{margin:0 0 20px}.profile-friendship>.button{width:100%}.profile-stats-private{padding:10px 0 20px;font-size:11px}.profile-private-note{padding:35px 10px}.profile-private-note h3,.profile-add-friend input{font-size:16px}.profile-friend-person{gap:9px}.profile-friend-person small{max-width:175px;font-size:10px}.profile-friend-list article{gap:10px}.profile-friend-list .button{font-size:11px;padding:8px 10px}.profile-friend-person>.avatar{width:36px;height:36px}.profile-friend-person strong{font-size:13px}.profile-message-heading{gap:4px}.profile-message-heading>.icon-button{width:31px}.profile-message-person{gap:6px}.profile-message-person strong{font-size:13px}.profile-message-heading>span{font-size:9px}.profile-message-list{height:40dvh;min-height:220px}.profile-message>p{font-size:13px;padding:9px 11px}.profile-message-compose textarea{font-size:16px;min-height:70px}.profile-privacy-option{gap:20px}.profile-privacy-option strong{font-size:13px}.profile-privacy-option small{font-size:11px}.profile-privacy>p{font-size:12px}}@media(max-width:370px){.profile-main{padding-left:14px;padding-right:14px}.profile-history-entry{padding-left:12px;padding-right:12px}.profile-history-tiles .tile-face{width:31px;height:43px}.profile-history-tiles .tile-word{font-size:21px}.profile-detail-toggle{width:calc(100% + 24px);margin-left:-12px;padding-left:12px;padding-right:12px}.profile-friend-person small{max-width:135px}.profile-section-heading>span{max-width:120px;text-align:right}.profile-navigation>button{font-size:9px;padding-left:5px;padding-right:5px}.profile-history-meta{gap:7px}}@media(prefers-reduced-motion:reduce){.profile-center *{scroll-behavior:auto!important}}.profile-unread-conversations>h4{font-size:12px;font-weight:500;color:var(--muted);margin:0 0 5px}.profile-unread-conversations{margin-bottom:22px}.profile-presence{border-top:1px solid var(--line);margin:20px 0 0;padding-top:18px}.profile-presence>p{font-size:12px;line-height:1.7;overflow-wrap:anywhere}.profile-presence>span{display:block;font-size:10px;color:var(--muted);margin:5px 0 12px}.profile-presence>.button{width:100%;font-size:12px}@media(max-width:700px){.profile-center:has(.profile-messages) .profile-sidebar{padding-top:12px}.profile-center:has(.profile-messages) .profile-person{margin-bottom:8px}.profile-center:has(.profile-messages) .profile-person>.avatar{width:38px;height:38px}.profile-center:has(.profile-messages) .profile-person h1{font-size:19px}.profile-center:has(.profile-messages) .profile-person p,.profile-center:has(.profile-messages) .profile-scoreboard,.profile-center:has(.profile-messages) .profile-stat-footnote,.profile-center:has(.profile-messages) .profile-stats-private,.profile-center:has(.profile-messages) .profile-friendship,.profile-center:has(.profile-messages) .profile-presence{display:none}.profile-center:has(.profile-messages) .profile-navigation>button{padding-top:8px;padding-bottom:8px}.profile-center:has(.profile-messages) .profile-main{padding-top:16px;padding-bottom:16px}.profile-message-list{height:clamp(150px,calc(100dvh - 405px),390px);min-height:150px}.profile-presence{margin:0 0 20px;padding-top:12px}}.profile-account-short{display:none}.profile-account{min-width:0}.profile-account .account-settings-content{max-width:580px;min-width:0}.profile-account .account-settings-admin{max-width:none}.profile-account .profile-preview>div{min-width:0}.profile-account .profile-preview strong{overflow-wrap:anywhere}.profile-account .account-identity>span{overflow-wrap:anywhere;min-width:0}.profile-account .settings-tabs{flex-wrap:wrap;gap:12px 26px}.profile-account .settings-tabs button{min-height:36px}.profile-account .avatar-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.profile-account .avatar-choice{min-width:0}.profile-account .avatar-choice .avatar{max-width:100%;height:auto;aspect-ratio:1}.profile-account .settings-row .switch{flex-shrink:0}.profile-account .settings-row{gap:14px}.profile-navigation>button{min-width:0}.profile-navigation>button>svg{flex-shrink:0}@media(max-width:700px){.profile-account-label{display:none}.profile-account-short{display:inline}.profile-navigation>button{flex:1 1 0;min-width:0;white-space:normal;text-align:center}.profile-navigation>button>span{line-height:1.5}.profile-account .settings-tabs{gap:12px 21px}.profile-account .settings-tabs button{font-size:13px}.profile-account .avatar-choice{padding:4px}.profile-account .avatar-choice .avatar{width:40px}.profile-account .profile-preview{gap:12px}.profile-account .profile-preview>.avatar{flex-shrink:0}.profile-account .profile-preview strong{font-size:17px}}.community-header-entry{position:relative}.community-header-dot{position:absolute;top:2px;right:0;min-width:15px;height:15px;border-radius:9px;padding:0 3px;display:grid;place-items:center;background:var(--red);color:#fff;font-size:9px;line-height:1;font-style:normal}.lazy-panel-loading{padding:35px;text-align:center;color:var(--muted);font-size:12px}@media(max-width:450px){.header-actions{gap:5px}.header-actions>.icon-button{width:32px;height:34px}}.command-progress{position:fixed;z-index:210;left:50%;bottom:calc(90px + env(safe-area-inset-bottom));transform:translate(-50%);display:flex;align-items:center;gap:8px;width:max-content;max-width:calc(100vw - 32px);padding:10px 16px;border:1px solid #d4ddc8;border-radius:24px;color:#305a45;background:#fffdf4f5;box-shadow:0 3px 16px #213a2920;font-size:13px;line-height:1.5;pointer-events:none}.command-progress svg{flex:none;animation:command-spin 1s linear infinite}@keyframes command-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.command-progress svg{animation:none}}:root{font-family:PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;color:#253c33;background:#eeeae0;font-synthesis:none;--green:#20553f;--green-deep:#163d2e;--felt:#2b664e;--paper:#faf8ef;--ivory:#f5efdc;--ink:#253c33;--muted:#778074;--line:#dddccf;--red:#aa493d;--gold:#b08d45;--shadow:0 12px 36px #183a2612}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{cursor:not-allowed;opacity:.4}button:focus-visible,a:focus-visible{outline:3px solid #c1a567;outline-offset:3px}input:focus,select:focus,textarea:focus{outline:2px solid #789f81;outline-offset:1px}a{color:var(--green)}h1,h2,h3,p{margin:0}button{border:0}button,select{touch-action:manipulation}input,select,textarea{min-width:0}button svg{flex-shrink:0}img,svg{vertical-align:middle}input::placeholder{color:#92978b}::selection{background:#cbdac2}button{transition:background .15s,transform .15s,box-shadow .15s}button:active:not(:disabled){transform:translateY(1px)}.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}.app-shell{min-height:100dvh;max-width:1440px;margin:auto;background:var(--paper)}.app-header{height:78px;max-width:1180px;margin:auto;padding:0 34px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #dedfd362}.brand{display:flex;gap:11px;align-items:center;background:none;padding:0;text-align:left}.brand-mark{display:inline-grid;place-items:center;width:39px;height:46px;background:#faf5e3;border:1px solid #d4c8a5;border-bottom:5px solid #c7b991;border-radius:6px;font-family:Songti SC,STSong,serif;font-size:29px;font-weight:700;box-shadow:1px 2px #50735f1a;transform:rotate(-4deg);color:var(--green)}.brand-name{font-size:17px;font-weight:600;letter-spacing:2px}.brand-name small{display:block;letter-spacing:3px;font-size:10px;font-weight:400;margin-top:3px;color:#7b8274}.header-actions{display:flex;gap:14px;align-items:center}.icon-button{width:38px;height:38px;display:inline-grid;place-items:center;background:none;border-radius:50%}.icon-button:hover{background:#e8ecdf}.header-small{color:#83897e;font-size:12px;white-space:nowrap}.account-button{display:flex;align-items:center;gap:7px;background:none;padding:3px 0 3px 5px;max-width:200px}.account-button>span{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.avatar{display:block;flex-shrink:0;border-radius:30%;overflow:visible}.button{min-height:45px;padding:11px 18px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:500;font-size:14px;line-height:1.4;text-decoration:none}.button.primary{background:var(--green);color:#fffdf1;box-shadow:0 3px #113d2c}.button.primary:hover:not(:disabled){background:#28664d}.button.secondary{background:#eeeede;color:#365642;box-shadow:inset 0 0 0 1px #d9ddcb}.button.secondary:hover:not(:disabled){background:#e2e7d5}.button.quiet{background:transparent;color:#6c7d67;box-shadow:none}.button.quiet:hover:not(:disabled){background:#e9ebdf}.button.danger{background:var(--red);color:#fff}.button.small{min-height:36px;padding:8px 13px;font-size:12px;border-radius:7px}.full-width{width:100%}.text-button{background:none;color:#6a7d64;padding:5px 0;font-size:12px;display:inline-flex;align-items:center;justify-content:center;gap:5px}.text-button:hover{color:var(--green)}.small-kicker{font-size:11px;color:#7a8773;letter-spacing:1px}.muted,.fine-print{color:#828a7c;font-size:12px;line-height:1.8}.fine-print{font-size:11px;text-align:center}.field{display:flex;flex-direction:column;gap:8px;margin:0 0 18px}.field>span{font-size:12px;font-weight:500;color:#52624e}.field>span small{font-weight:400;color:#909688;margin-left:5px}.field input,.field select,.field textarea{width:100%;min-height:46px;border:1px solid #d9ddce;background:#fffef7;border-radius:8px;padding:12px;color:var(--ink);font-size:14px}.field input:disabled,.field select:disabled{background:#eeeee4}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-error{color:#a54435;background:#faece5;padding:11px 13px;border-radius:7px;margin:10px 0 16px;font-size:13px;line-height:1.7}.success-note{font-size:13px;color:var(--green);margin:12px 0}.password-field{position:relative;display:block!important}.password-field input{padding-right:44px}.password-field button{position:absolute;right:3px;top:3px;width:40px;height:40px;background:none;color:#8a9281;display:grid;place-items:center}.inline-note{background:#eeefdf;border-radius:8px;padding:13px 15px;margin:12px 0;color:#5b6c50;font-size:12px;line-height:1.8}.inline-note strong{font-weight:500}.inline-note p+p{margin-top:5px}.two-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.empty-copy{padding:35px 10px;text-align:center;color:#899181;font-size:13px;line-height:1.9}.loading-page,.error-page{min-height:65vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;padding:25px;text-align:center;color:#70816a;font-size:13px}.loading-tiles{display:flex;gap:5px}.loading-tiles span{display:grid;place-items:center;width:43px;height:58px;background:var(--ivory);color:var(--green);border-radius:5px;box-shadow:0 4px #d8cbb0;font-family:Songti SC,serif;font-size:24px}.loading-tiles span:nth-child(2n){transform:translateY(-4px)}.error-page h1{font-size:24px;color:var(--ink)}.global-note{max-width:1040px;margin:15px auto;background:#f4e7cc;padding:12px 20px;font-size:12px;display:flex;align-items:center;justify-content:space-between}.global-note button{background:none;text-decoration:underline}.toast{position:fixed;top:84px;left:50%;transform:translate(-50%);z-index:200;display:flex;gap:16px;align-items:center;max-width:min(520px,calc(100vw - 28px));width:max-content;padding:14px 17px;background:#213e30;color:#faf5e4;border:1px solid #8ba08070;box-shadow:0 8px 30px #16332430;border-radius:11px;font-size:13px;line-height:1.6}.toast button{color:inherit;background:none;display:flex;padding:4px;flex-shrink:0}.toast>span{min-width:0}.modal-backdrop{position:fixed;inset:0;background:#122d26a6;z-index:100;display:flex;align-items:center;justify-content:center;padding:24px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal{background:var(--paper);border-radius:17px;width:min(100%,490px);max-height:calc(100dvh - 48px);overflow:auto;box-shadow:0 25px 90px #071f2850;overscroll-behavior:contain}.modal-wide{width:min(100%,710px)}.modal-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:20px 23px 16px;position:sticky;top:0;background:var(--paper);border-bottom:1px solid #e3e4d7;z-index:6}.modal-heading h2{font-size:18px;font-weight:600;line-height:1.5}.modal-body{padding:22px 24px 25px}.modal-body>.muted:first-child{margin-bottom:18px}.rules-copy{font-size:13px;line-height:1.95;color:#6b7764}.rules-copy h3{margin:22px 0 7px;color:#34543d;font-size:14px;font-weight:600}.rules-copy .intro-copy{font-size:15px;color:#4f6547}.rules-copy strong{font-weight:500;color:#34543d}.choice-field{margin:0 0 20px;padding:0;border:0;min-width:0}.choice-field legend{font-size:12px;font-weight:500;color:#52624e;margin-bottom:10px}.profile-preview{display:flex;align-items:center;gap:16px;margin:2px 0 25px}.profile-preview strong{display:block;font-size:18px;font-weight:500;margin-bottom:5px}.profile-preview span{font-size:11px;color:#87917e}.gender-options{display:flex;gap:14px}.gender-options label{display:flex;align-items:center;gap:10px;border:1px solid #d9dfce;border-radius:8px;padding:11px 25px;font-size:13px;cursor:pointer}.gender-options label:has(input:checked){background:#e7eddc;border-color:#729169}.gender-options input{accent-color:var(--green)}.avatar-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}.avatar-choice{display:grid;place-items:center;position:relative;background:transparent;padding:6px;border-radius:13px;border:1px solid transparent}.avatar-choice:hover{background:#ebeede}.avatar-choice.selected{border-color:#547d53;background:#e5ebd5}.avatar-choice>span{position:absolute;bottom:2px;right:2px;background:#3f7347;color:#fff;border-radius:50%;width:16px;height:16px;display:grid;place-items:center}.settings-tabs,.auth-tabs{display:flex;border-bottom:1px solid #dedfce;margin-bottom:24px;gap:26px}.settings-tabs button,.auth-tabs button{display:flex;align-items:center;justify-content:center;gap:7px;padding:0 0 12px;background:none;color:#8c9381;font-size:14px;border-bottom:2px solid transparent;position:relative;top:1px}.settings-tabs button.selected,.auth-tabs button.selected{color:var(--green);border-color:var(--green);font-weight:500}.settings-row{display:flex;justify-content:space-between;align-items:center;padding:22px 0;border-top:1px solid #e1e3d3;margin-top:24px;font-size:13px}.settings-row>span{display:flex;align-items:center;gap:9px}.switch{position:relative;display:block;width:42px;height:25px}.switch input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer;margin:0;z-index:1}.switch span{display:block;width:100%;height:100%;border-radius:15px;background:#d1d7c6;transition:background .2s}.switch span:after{content:"";position:absolute;left:4px;top:4px;width:17px;height:17px;background:#fff;border-radius:50%;transition:transform .2s}.switch input:checked+span{background:#567b4d}.switch input:checked+span:after{transform:translate(17px)}.switch input:focus-visible+span{outline:3px solid #9dac7f;outline-offset:3px}.account-identity{display:flex;justify-content:space-between;flex-wrap:wrap;gap:7px;padding-bottom:18px;font-size:11px;color:#8d9584}.forgot-password{margin-top:16px}.admin-users>.muted{margin-bottom:16px}.admin-list{margin-top:10px}.admin-person{padding:13px 0;border-top:1px solid #e0e3d5;display:flex;align-items:center;gap:9px}.admin-person>div{flex:1;min-width:0}.admin-person strong{display:block;font-size:13px;font-weight:500}.admin-person span{display:block;font-size:10px;line-height:1.8;color:#87917b;overflow-wrap:anywhere}.temporary-password{margin:18px 0;background:#e9efdc;padding:16px;border-radius:9px;display:flex;flex-direction:column;gap:12px;align-items:flex-start;font-size:12px;line-height:1.7}.temporary-password code{font-size:19px;letter-spacing:2px;color:var(--green);-webkit-user-select:all;user-select:all}.share-code{font-size:38px;font-weight:600;letter-spacing:9px;color:var(--green);text-align:center;margin:25px 0}.leave-copy{font-size:14px;color:#6b7b61;line-height:1.9;margin-bottom:23px}.leave-copy p+p{margin-top:10px}.entrance-page{max-width:1070px;margin:48px auto 70px;display:grid;grid-template-columns:1.1fr 1fr;box-shadow:var(--shadow);border-radius:18px;overflow:hidden;min-height:610px}.entrance-story{background:#24543f;color:#edf0dd;padding:55px 47px;position:relative;overflow:hidden}.entrance-story:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.15;background-image:radial-gradient(#c4d9af .45px,transparent .6px);background-size:4px 4px}.entrance-story>*{position:relative;z-index:1}.entrance-story .small-kicker{color:#b3c4a0;font-size:11px;letter-spacing:2px}.entrance-story h1{font-family:Songti SC,STSong,serif;font-size:39px;line-height:1.65;font-weight:600;letter-spacing:2px;margin:22px 0}.entrance-story>p{font-size:13px;line-height:2.1;color:#b9cbb0;max-width:290px}.entrance-tiles{display:flex;gap:8px;margin:39px 0 29px;transform:rotate(-7deg);padding-left:12px}.entrance-tiles span{display:grid;place-items:center;width:63px;height:81px;background:#f2eacf;border:1px solid #fff9e0;border-bottom:8px solid #d6c7a0;border-right:4px solid #e2d5b5;border-radius:7px;box-shadow:1px 9px 9px #102e2a55;color:#214d38;font-family:Songti SC,STSong,serif;font-size:36px;font-weight:600}.entrance-tiles span:nth-child(2){transform:translateY(-7px) rotate(2deg)}.entrance-tiles span:nth-child(3){color:#a94c3f;transform:translateY(3px) rotate(-3deg)}.try-table{display:flex;gap:12px;align-items:center;background:none;color:#ecedcf;font-size:13px;padding:12px 0;border-bottom:1px solid #8aa47a80}.try-table svg{transform:rotate(180deg)}.entrance-details{display:flex;flex-direction:column;gap:9px;color:#aabd9b;font-size:10px;letter-spacing:.5px;margin-top:28px}.entrance-details span:before{content:"";display:inline-block;width:3px;height:3px;background:#b6c7a4;border-radius:50%;vertical-align:middle;margin-right:8px}.entrance-auth{padding:52px 44px 40px;background:#faf8ef}.auth-welcome h2{font-size:22px;font-weight:500;margin-bottom:10px}.auth-welcome p{font-size:12px;color:#8b9481;margin-bottom:33px}.auth-form form>.button{margin-top:4px}.auth-form .auth-tabs{gap:28px}.auth-form .field{margin-bottom:19px}.auth-form .field input{background:#fffdf4}.lobby-page{max-width:960px;margin:0 auto;padding:45px 32px 55px}.lobby-heading{display:flex;justify-content:space-between;gap:25px;align-items:center;margin-bottom:37px}.lobby-heading h1{font-family:Songti SC,STSong,serif;font-size:33px;letter-spacing:1px;line-height:1.5;font-weight:600;margin:9px 0 12px}.lobby-heading p{font-size:13px;color:#8a947e}.lobby-tile-still{display:flex;gap:5px;transform:rotate(-9deg);margin-right:15px}.lobby-tile-still span{width:43px;height:61px;background:#f3ecd6;border-radius:5px;box-shadow:0 5px #cdbf99,3px 8px 6px #717c5b20;display:grid;place-items:center;font-family:Songti SC,serif;font-size:25px;color:#376148}.lobby-tile-still span:nth-child(3){transform:translateY(-9px);color:#a15343}.lobby-entry{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:42px}.create-room{min-height:49px}.join-by-code{display:flex;border:1px solid #d4d9c4;border-radius:9px;overflow:hidden;background:#fffdf5}.join-by-code input{padding:10px 14px;flex:1;width:90px;border:0;background:none;font-size:13px;letter-spacing:1px}.join-by-code .button{border-radius:0;min-width:83px;box-shadow:none}.lobby-list-heading{display:flex;align-items:baseline;justify-content:space-between;padding-bottom:15px;border-bottom:1px solid #cfd6c1}.lobby-list-heading h2{font-size:15px;font-weight:500}.lobby-list-heading>span{font-size:12px;color:#86917c}.room-row{display:flex;align-items:center;gap:20px;padding:22px 0;border-bottom:1px solid #e0e4d3}.room-thumbnail{width:65px;height:66px;display:grid;place-items:center;flex-shrink:0;background:#e2e9d5;clip-path:polygon(25% 0,75% 0,100% 25%,100% 75%,75% 100%,25% 100%,0 75%,0 25%)}.room-thumbnail span{background:#518164;color:#f4f5e4;width:45px;height:45px;display:grid;place-items:center;font-family:Songti SC,serif;font-size:23px;clip-path:inherit}.room-row-content{flex:1;min-width:0}.room-row-content h3{font-size:16px;font-weight:500;margin-bottom:8px;overflow-wrap:anywhere}.room-row-content p{color:#8b9480;font-size:11px;display:flex;flex-wrap:wrap;gap:5px 16px}.room-tags{display:flex;gap:9px;margin-top:10px}.room-tags span{font-size:10px;color:#7a8b6c;padding:3px 7px;background:#ecf0e3;border-radius:4px}.room-row-action{display:flex;flex-direction:column;align-items:center;gap:11px}.room-row-action>span{display:flex;align-items:center;gap:5px;font-size:11px;color:#829173}.empty-lobby{text-align:center;padding:46px 10px 50px}.empty-table-mark{display:inline-grid;place-items:center;width:65px;height:65px;background:#e6ead8;clip-path:polygon(25% 0,75% 0,100% 25%,100% 75%,75% 100%,25% 100%,0 75%,0 25%);font-family:Songti SC,serif;font-size:31px;color:#96a984;margin-bottom:19px}.empty-lobby h3{font-size:16px;font-weight:500;margin-bottom:10px;color:#647b56}.empty-lobby p{font-size:12px;line-height:1.9;color:#8e9981}.lobby-footnote{text-align:center;font-size:11px;color:#9ca58e;padding:25px 0}.lobby-reconnect{position:fixed;bottom:20px;left:50%;transform:translate(-50%);background:#e7edda;display:flex;align-items:center;gap:8px;padding:13px 20px;border-radius:25px;font-size:12px;box-shadow:0 5px 20px #27473615}.mode-choices{display:grid;grid-template-columns:1fr 1fr;gap:9px}.mode-choices label{border:1px solid #dce1cf;background:#f4f4e8;border-radius:8px;padding:13px 11px;cursor:pointer;position:relative}.mode-choices label.selected{border-color:#738c61;background:#e7edda}.mode-choices input{position:absolute;top:14px;right:11px;accent-color:var(--green);width:13px;height:13px;margin:0}.mode-choices strong{font-size:14px;font-weight:500;display:block;margin-bottom:7px;padding-right:16px}.mode-choices span{display:block;font-size:10px;line-height:1.8;color:#839272}.base-pack{display:flex;align-items:center;gap:12px;background:#eef0e0;border-radius:8px;padding:12px;margin-bottom:10px}.base-pack>div{flex:1}.base-pack strong{font-size:13px;font-weight:500;display:block;margin-bottom:4px}.base-pack span:not(.mini-tile){font-size:10px;color:#88967b}.base-pack>svg{color:#6d8559}.mini-tile{display:grid;place-items:center;width:28px;height:37px;background:#fcf7e5;border-radius:3px;box-shadow:0 2px #d6c9a5;font-family:Songti SC,serif;font-size:21px}.pack-options{display:flex;flex-direction:column;gap:8px}.pack-option{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid #e0e4d4;border-radius:8px;cursor:pointer}.pack-option.selected{background:#f0f3e5;border-color:#a2b28e}.pack-option input{margin:3px 0 0;accent-color:var(--green);width:15px;height:15px;flex-shrink:0}.pack-option strong{font-size:12px;font-weight:500}.pack-option small{font-size:10px;color:#8e9c7e;font-weight:400;margin-left:10px}.pack-option p{font-size:11px;line-height:1.8;color:#8a967c;margin:5px 0}.pack-samples{font-family:Songti SC,serif;font-size:13px;color:#617951;line-height:1.8;overflow-wrap:anywhere}.room-settings-fields>.fine-print{margin-bottom:23px}.in-room{background:#f4f2e7}.room-topbar{max-width:760px;display:flex;align-items:center;gap:8px;padding:12px 18px;margin:auto;border-bottom:1px solid #dde1cf}.room-topbar>div{flex:1;min-width:0}.room-topbar strong{font-size:16px;font-weight:600;line-height:1.5;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.room-topbar>div>button{background:none;font-size:10px;color:#8a987c;display:flex;gap:4px;align-items:center;margin-top:5px;padding:0}.connection-indicator{font-size:9px;color:#a59970;display:flex;align-items:center;gap:5px;white-space:nowrap}.connection-indicator i{width:4px;height:4px;border-radius:50%;background:#ad915f}.connection-indicator.online{color:#82976b}.connection-indicator.online i{background:#7d9d61}.waiting-room{max-width:560px;margin:auto;padding:25px 22px 38px}.waiting-title{text-align:center;margin-bottom:8px}.waiting-title h1{font-family:Songti SC,STSong,serif;font-size:26px;line-height:1.55;font-weight:600;margin:5px 0 8px}.waiting-title>p{font-size:12px;color:#87977a}.mahjong-table{position:relative;width:min(100%,360px);aspect-ratio:1;margin:12px auto 19px;isolation:isolate}.table-surface{position:absolute;inset:0;width:100%;height:100%;overflow:visible;filter:drop-shadow(0 9px 8px #344b3820)}.table-shadow{fill:#8b7752;stroke:#8b7752;stroke-width:4.5;stroke-linejoin:round}.table-wood{fill:#b89c6a;stroke:#c6af7e;stroke-width:4.5;stroke-linejoin:round}.table-felt{fill:#2d664e;stroke:#438164;stroke-width:1.3;stroke-linejoin:round}.table-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:#d8e4bf;width:44%;z-index:1}.table-wall-count{font-size:9px;letter-spacing:1px;color:#c0d4aa}.table-wall-count strong{font-weight:500;font-size:14px;letter-spacing:0;margin-left:3px}.table-calligraphy{font-family:Songti SC,STSong,serif;font-size:56px;font-weight:500;color:#aec39b44;line-height:1.1}.table-center-caption{font-size:9px;color:#adca9f;text-align:center;line-height:1.5;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-stage-word{font-family:Songti SC,STSong,serif;font-size:28px;letter-spacing:5px;color:#d8e1b9;margin:5px 0}.table-invite{font-size:10px;color:#dfe6c7;background:#487a573b;border:1px solid #95b17d55;padding:6px 10px;border-radius:5px;white-space:nowrap}.table-seat{position:absolute;transform:translate(-50%,-50%);width:72px;display:flex;align-items:center;flex-direction:column;gap:3px;padding:3px 1px;background:none;z-index:3;min-height:64px}.table-seat:active:not(:disabled){transform:translate(-50%,-50%)}.seat-portrait{position:relative;border-radius:12px;padding:2px;box-shadow:0 2px 4px #243a2520;background:#f5f5e5}.table-seat .avatar{width:34px;height:34px}.seat-name{font-size:10px;color:#516b44;font-weight:500;max-width:65px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:#f4f2e7dc;padding:0 4px;border-radius:4px;line-height:1.5}.seat-detail{font-size:8px;color:#8b997b;background:#f4f2e7b8;border-radius:4px;line-height:1.3;padding:0 3px;white-space:nowrap}.seat-crown{position:absolute;right:-4px;top:-7px;color:#a98436;fill:#d9bc69;filter:drop-shadow(0 1px 1px #f9f5e9)}.seat-offline{position:absolute;right:-5px;bottom:-3px;background:#f7f4e7;border-radius:4px;padding:1px;color:#91764f;width:15px;height:15px}.seat-win{position:absolute;right:-7px;bottom:-3px;background:#b64c3e;color:#fff8df;font-family:Songti SC,serif;font-size:11px;border-radius:50%;width:18px;height:18px;display:grid;place-items:center;border:2px solid #f7f4e7}.active-seat .seat-portrait{box-shadow:0 0 0 3px #c4a75b,0 0 0 5px #dccb8d55}.active-seat .seat-name{color:#896b28}.offline-seat .avatar{filter:saturate(.35)}.empty-seat{pointer-events:none;font-size:9px;color:#9aaa87;gap:6px}.empty-chair{width:36px;height:36px;display:grid;place-items:center;border:1px dashed #a7b59b;border-radius:13px;font-size:22px;font-weight:300;background:#f0f3e3bb}.waiting-settings{display:flex;align-items:center;justify-content:space-between;padding:15px 4px;border-top:1px solid #dde2cf;border-bottom:1px solid #dde2cf}.waiting-settings strong{display:block;font-size:14px;font-weight:500;margin-bottom:6px}.waiting-settings span{font-size:11px;color:#8b997b}.waiting-theme{margin-top:14px;font-size:12px;color:#6a8058;line-height:1.7}.waiting-packs{font-size:11px;color:#8b997c;margin-top:9px;line-height:1.8}.waiting-people{display:grid;grid-template-columns:1fr 1fr;gap:14px 20px;margin:22px 0}.waiting-people>div{display:flex;gap:8px;align-items:center;min-width:0}.waiting-people>div>span{font-size:11px;min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.waiting-people>div>span svg{color:#b09a55;margin-left:4px}.waiting-people small{font-size:9px;color:#a1a88c;white-space:nowrap}.waiting-people small.ready{color:#628453}.waiting-actions{display:flex;gap:11px;margin:23px 0 15px}.waiting-actions>.button{flex:1}.game-view{max-width:760px;margin:auto;padding:0 23px 20px}.game-meta{display:flex;align-items:center;justify-content:space-between;padding:12px 0 0;font-size:11px;color:#829175}.game-meta .text-button{font-size:11px}.meta-separator{color:#bdc5ae;margin:0 10px}.theme-ribbon{font-size:11px;color:#769367;text-align:center;padding:8px 12px 0;line-height:1.6}.game-view .mahjong-table{width:min(100%,320px);margin-top:6px;margin-bottom:15px}.center-discard{width:40px!important;height:53px!important;box-shadow:0 3px #c4b78f,1px 6px 6px #14332650!important}.center-discard .tile-word{font-size:24px!important}.turn-strip{display:flex;align-items:center;gap:8px;padding:11px 13px;background:#e6ead8;border-radius:8px;color:#748769;min-height:41px}.turn-strip strong{font-size:12px;font-weight:500;flex:1;line-height:1.6}.turn-dot{width:5px;height:5px;border-radius:50%;background:#8ca278;flex-shrink:0}.turn-strip.my-turn{background:#dce8ce;color:#456c3d}.turn-strip.my-turn .turn-dot{background:#4f7e42;box-shadow:0 0 0 3px #bacc9b60}.countdown{font-size:11px;font-variant-numeric:tabular-nums;display:flex;align-items:center;gap:4px;color:#89976e;white-space:nowrap}.turn-strip.my-turn .countdown{color:#66854e}.connection-banner,.auto-banner{display:flex;gap:8px;align-items:center;font-size:11px;line-height:1.7;background:#f3e7ca;color:#957747;padding:9px 12px;margin-top:10px;border-radius:7px}.connection-banner svg,.auto-banner svg{flex-shrink:0}.auto-banner{background:#e8ead8;color:#7a875f}.auto-banner>span{flex:1}.auto-banner button{background:#fffef3;padding:7px 10px;color:#647649;border-radius:5px;font-size:11px}.stage-note{font-size:11px;line-height:1.8;color:#849175;padding:10px 2px 0}.personal-desk{position:relative;background:#e6ddc7;border:1px solid #d9d0b6;border-bottom:4px solid #c7b894;border-radius:12px 12px 8px 8px;margin-top:17px;padding:16px 15px 8px;box-shadow:inset 0 2px 1px #fff9e866,0 4px 10px #4d634016}.expand-hand{position:absolute;right:15px;top:12px;display:flex;align-items:center;gap:5px;background:none;color:#8d8b68;font-size:10px;padding:5px;z-index:1}.hand-heading{display:flex;align-items:center;gap:10px;margin-bottom:17px;padding-right:76px}.hand-heading>span:first-child{font-size:12px;color:#6b7053;font-weight:500}.hand-count{font-size:10px;color:#959478;white-space:nowrap}.hand-hint{display:none}.hand-rack{display:flex;flex-wrap:wrap;align-items:flex-start;align-content:flex-start;gap:10px 2px;min-height:135px;padding:1px 1px 10px}.hand-token{position:relative;display:flex;align-items:center;gap:0;max-width:100%;padding-left:5px;flex-shrink:0;z-index:1}.tile-button{display:flex;align-items:center;justify-content:center;background:transparent;padding:0;border:0;touch-action:none;position:relative}.tile-face{display:inline-flex;position:relative;align-items:center;justify-content:center;flex-shrink:0;width:45px;height:60px;border:1px solid #fffcee;border-right:3px solid #e3d7b8;border-bottom:5px solid #d2c39b;border-radius:5px;background:#f9f3df;box-shadow:0 2px 1px #b4a57b,1px 4px 3px #93846235;color:#2b5238;-webkit-user-select:none;user-select:none}.tile-word{font-family:Songti SC,STSong,SimSun,serif;font-size:27px;font-weight:600;line-height:1.2;letter-spacing:0}.tile-face.long-text .tile-word{font-size:16px;writing-mode:vertical-rl;letter-spacing:1px}.tile-pack-mark{position:absolute;bottom:3px;right:4px;width:3px;height:3px;border-radius:50%;background:#ac5b46}.tile-button.is-selected .tile-face{transform:translateY(-5px);outline:2px solid #a7873b;outline-offset:1px;background:#fff7d9;box-shadow:0 4px #cbb981,1px 7px 7px #8c785547}.tile-button.is-selected .space-token,.tile-button.is-selected .break-token{background:#f7edcd;outline:1px solid #ae965a}.tile-button:disabled{opacity:1}.is-dragging{z-index:8!important;opacity:.9;filter:drop-shadow(2px 5px 5px #3f482e35)}.is-dragging .tile-face{outline:2px solid #a7873b}.insertion-point{position:absolute;left:-2px;top:0;width:8px;height:60px;background:transparent;padding:0;display:grid;place-items:center;z-index:2}.insertion-point span{display:block;width:2px;height:32px;background:#b1a47a25;border-radius:3px}.insertion-point:hover span,.insertion-point:focus-visible span{background:#64844b}.space-token{display:grid;place-items:center;width:24px;height:56px;border:1px dashed #bfb18b80;border-radius:4px;font-size:10px;color:#afa37e;background:#ede5ce66}.hand-token.token-space{padding-left:5px}.hand-token.token-break{flex-basis:100%;width:100%;height:19px;padding-left:5px;margin-top:-4px;margin-bottom:-2px}.token-break .insertion-point{height:22px}.token-break .insertion-point span{height:16px}.break-token{display:flex;align-items:center;gap:5px;font-size:9px;color:#a39a77;padding:2px 6px;border-radius:4px;border:1px dashed #c6ba9366;min-height:20px}.rack-end{display:flex;flex-direction:column;justify-content:center;align-items:center;background:none;color:#b0a482;font-size:9px;line-height:1.7;align-self:stretch;min-height:54px;min-width:28px;border-left:1px dashed #b9ab8050;margin-left:4px;padding:2px 4px}.rack-end span{font-size:17px;line-height:1.2;color:#aba17d}.editor-tools{display:flex;align-items:center;gap:1px;border-top:1px solid #d6cbaa;padding-top:7px;flex-wrap:wrap}.editor-tools button{display:inline-flex;align-items:center;gap:4px;font-size:10px;color:#838463;padding:8px 6px;min-height:33px;border-radius:5px;background:transparent}.editor-tools button:hover:not(:disabled){background:#dcd4b9}.editor-tools button:disabled{opacity:.3}.tool-divider{width:1px;height:13px;background:#c8bf9f;margin:0 4px}.editor-caption{font-size:9px;line-height:1.8;color:#aaa181;margin:3px 2px 0;min-height:17px}.editor-disabled .hand-rack{min-height:74px}.editor-disabled .hand-token{padding-left:3px}.game-actions{position:sticky;bottom:0;z-index:20;display:flex;gap:10px;margin:0 -3px;padding:15px 3px calc(14px + env(safe-area-inset-bottom));background:#f4f2e7f5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);align-items:center}.game-actions>.button:first-child{flex:1;min-height:48px}.hu-button{width:62px;min-height:49px;border-radius:9px;background:#a84f3f;color:#fff2d5;font-family:Songti SC,STSong,serif;font-size:26px;box-shadow:0 3px #813e32;padding:8px}.hu-button:hover:not(:disabled){background:#b95b49}.response-actions{display:flex;gap:8px;width:100%}.response-actions>.button{flex:1;min-height:47px;font-size:12px;padding:10px 8px}.response-actions>.button.primary{flex:1.3}.waiting-action{display:block;text-align:center;width:100%;font-size:12px;color:#8f9c7b;padding:7px 0}.quiet-auto{display:block;margin:0 auto;background:none;padding:6px;color:#a2a98e;font-size:10px}.expanded-hand .mahjong-table{width:190px;margin-bottom:8px}.expanded-hand .table-seat,.expanded-hand .table-seat:active{transform:translate(-50%,-50%) scale(.64)}.expanded-hand .table-calligraphy{font-size:30px}.expanded-hand .table-wall-count{font-size:7px}.expanded-hand .table-center-caption{display:none}.expanded-hand .center-discard{width:29px!important;height:40px!important}.expanded-hand .center-discard .tile-word{font-size:19px!important}.expanded-hand .hand-rack{min-height:245px}.expanded-hand .table-center{gap:3px}.vote-panel{margin-top:12px;background:#f9f6e9;border:1px solid #dbe1cb;border-radius:9px;padding:13px}.vote-panel-heading{display:flex;justify-content:space-between;gap:10px;font-size:11px;color:#7d8e6e;margin-bottom:14px}.vote-panel>.muted{margin-top:12px}.vote-panel .two-actions{margin-top:15px}.vote-panel .button{font-size:12px;min-height:40px}.river-list{display:flex;flex-wrap:wrap;gap:15px 22px;max-height:450px;overflow:auto;padding:5px 0 12px}.river-item{display:flex;gap:9px;align-items:center;min-width:165px;position:relative}.river-item .tile-face{width:34px;height:46px}.river-item .tile-word{font-size:22px}.river-item .tile-face.long-text .tile-word{font-size:14px}.river-item>div>strong{font-size:11px;font-weight:500;display:block;max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.river-item>div>span{display:block;font-size:9px;color:#94a081;margin-top:5px}.river-number{font-size:9px;color:#b0b99f;width:18px;text-align:right}.river-item.claimed{opacity:.5}.game-log{border-top:1px solid #e1e5d4;padding-top:17px;margin-top:15px;font-size:11px;color:#8c987b;line-height:1.8}.game-log summary{cursor:pointer;margin-bottom:10px;color:#718862}.game-log p{margin:6px 0}.seat-detail-modal{display:flex;flex-direction:column;align-items:center;gap:14px;padding:15px 0 25px}.seat-detail-modal h3{font-size:20px;font-weight:500}.seat-detail-modal p{font-size:12px;color:#879678}.demo-page{max-width:620px;margin:0 auto;padding:32px 24px 40px}.demo-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.demo-heading h1{font-family:Songti SC,STSong,serif;font-size:28px;margin-top:8px;font-weight:600}.demo-note{font-size:12px;line-height:1.9;color:#8b997c;margin:15px 0 24px;max-width:430px}.demo-controls{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11px;color:#8b997c;flex-wrap:wrap}.demo-controls label{display:flex;align-items:center;gap:8px}.demo-controls select{border:1px solid #d4ddc4;border-radius:6px;background:#f8f9ed;color:#4e7041;padding:7px 10px;font-size:12px}.demo-page .mahjong-table{width:min(100%,315px);margin-top:12px}.demo-actions{display:flex;gap:9px;margin-top:18px}.demo-actions>.primary{flex:1}.demo-actions .button{font-size:12px}.results-view{max-width:690px;margin:auto;padding:31px 24px 35px}.results-heading{display:flex;justify-content:space-between;align-items:center;gap:10px}.results-heading h1{font-family:Songti SC,STSong,serif;font-weight:600;font-size:28px;line-height:1.5;margin-top:7px}.results-intro{font-size:12px;color:#89977b;margin:11px 0 24px;line-height:1.8}.work-people{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:4px;margin:20px 0 23px}.work-people>button{display:flex;flex-direction:column;align-items:center;gap:7px;background:none;border-radius:10px;padding:7px 2px;position:relative;min-width:0}.work-people>button.selected{background:#e3ead4;box-shadow:inset 0 0 0 1px #b5c79c}.work-people>button>span{font-size:9px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.work-people>button>i{position:absolute;top:-4px;right:0;font-size:8px;line-height:1.3;font-style:normal;background:#b75742;color:#fff5d9;padding:2px 3px;border-radius:4px}.work-paper{background:#fffdf5;border:1px solid #e0e1cf;border-bottom:4px solid #d9d5bb;border-radius:12px;padding:22px 23px 18px;box-shadow:0 9px 21px #48613209}.work-byline{display:flex;gap:10px;align-items:center;margin-bottom:24px}.work-byline>div{flex:1;min-width:0}.work-byline h2{font-size:15px;font-weight:500;line-height:1.5;overflow-wrap:anywhere}.work-byline h2 small{font-size:9px;margin-left:7px;color:#9dab8a;font-weight:400}.work-byline>div>span{font-size:10px;color:#94a181;display:block;margin-top:5px}.work-page{font-size:10px;font-variant-numeric:tabular-nums;color:#a9b398;white-space:nowrap}.work-tiles{display:flex;flex-wrap:wrap;gap:10px 5px;align-items:flex-start;align-content:flex-start;min-height:144px;padding:5px 0 12px}.work-tiles .tile-face{width:42px;height:57px}.work-tiles .tile-word{font-size:25px}.work-space{width:22px;height:56px;flex-shrink:0}.work-break{height:0;flex-basis:100%}.compact-work{min-height:0;gap:8px 4px}.compact-work .tile-face{width:32px;height:44px;border-bottom-width:4px}.compact-work .tile-word{font-size:21px}.compact-work .long-text .tile-word{font-size:13px}.compact-work .work-space{width:16px;height:43px}.original-toggle{font-size:10px;margin-top:8px}.gift-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;border-top:1px solid #e5e8d8;padding-top:20px;margin-top:21px}.gift-button{display:flex;gap:10px;align-items:center;justify-content:center;min-height:62px;font-size:13px;border-radius:8px;background:#f5f3e9;border:1px solid #e7e5d7;color:#8a8d73}.gift-flower svg{color:#ba8272}.gift-egg svg{color:#b8a471}.gift-button.selected{background:#e8efdd;color:#516e43;border-color:#98b17f}.gift-button.selected.gift-flower svg{color:#b86d5b}.gift-hint{font-size:10px;color:#9ba88a;text-align:center;margin-top:11px}.own-work-note{border-top:1px solid #e5e8d8;padding-top:20px;margin-top:19px;color:#98a589;font-size:11px;line-height:1.8}.work-gift-results{display:flex;justify-content:center;gap:35px;padding-top:20px;border-top:1px solid #e5e8d8;margin-top:20px}.work-gift-results>span{font-size:12px;color:#879876;display:flex;align-items:center;gap:8px}.work-gift-results>span:first-child svg{color:#bd8c76}.work-gift-results>span:last-child svg{color:#b6a97a}.work-navigation{display:flex;justify-content:space-between;align-items:center;margin:12px 0 25px}.work-navigation>span{font-size:11px;color:#b0b9a2}.work-navigation .button{font-size:11px;padding:8px 5px;min-height:37px}.result-bottom>p{font-size:11px;line-height:1.9;text-align:center;color:#8c9b7b;margin-bottom:13px}.result-bottom>.fine-print{margin:14px 0 0}.waiting-next{padding:20px;background:#eaf0df;border-radius:9px}.history-list>article{border-bottom:1px solid #dde3d0}.history-summary{display:flex;justify-content:space-between;align-items:center;text-align:left;padding:17px 0;background:none;width:100%;gap:15px}.history-summary strong{font-size:13px;font-weight:500;display:block}.history-summary span{font-size:10px;color:#96a386;display:block;margin-top:7px}.history-summary>svg{color:#98a887}.history-works{padding:0 0 15px}.history-works>section{padding:18px 0;border-top:1px solid #e3e8d7}.history-works h3{font-size:12px;font-weight:500;margin-bottom:12px}.history-works h3 small{font-size:9px;color:#9aab88;font-weight:400;margin-left:6px}.history-works p{font-size:10px;color:#a0ad90;margin-top:10px}@media(min-width:850px){.game-view{max-width:760px;padding-left:50px;padding-right:50px}.game-view .mahjong-table{width:355px}.personal-desk{padding:21px 23px 11px}.hand-rack{gap:11px 5px;min-height:140px}.hand-heading{margin-bottom:20px}.hand-heading>span:first-child{font-size:13px}.hand-count{font-size:11px}.hand-hint{display:inline}.editor-tools{gap:8px}.editor-tools button{font-size:11px;padding:9px 7px}.editor-caption{font-size:10px}.tile-face{width:46px;height:62px}.hand-token{padding-left:6px}.results-view{padding-top:40px}.work-tiles{gap:12px 7px}.work-tiles .tile-face{width:47px;height:64px}.compact-work .tile-face{width:33px;height:45px}.in-room .app-header{max-width:1060px}.waiting-room .mahjong-table{width:360px}.game-actions{padding-top:18px}.game-meta{padding-top:16px}}@media(max-width:700px){.app-header{height:65px;padding:0 20px}.brand-mark{width:33px;height:40px;font-size:25px}.brand-name{font-size:15px;letter-spacing:1px}.brand-name small{font-size:8px;letter-spacing:3px}.brand,.header-actions{gap:9px}.header-small{font-size:10px}.account-button>span,.account-button>svg:not(.avatar){display:none}.account-button{padding:0}.account-button .avatar{width:32px;height:32px}.history-entry{display:inline-grid}.icon-button{width:33px;height:35px}.entrance-page{display:flex;flex-direction:column;max-width:450px;margin:0 auto 20px;box-shadow:none;border-radius:0}.entrance-story{padding:28px 25px 24px;min-height:262px}.entrance-story .small-kicker{font-size:9px}.entrance-story h1{font-size:30px;line-height:1.55;margin:14px 0 12px;letter-spacing:1px;position:relative;z-index:2}.entrance-story>p{font-size:10px;max-width:220px;line-height:1.9}.entrance-tiles{position:absolute;right:20px;top:65px;margin:0;gap:4px;padding:0;transform:rotate(11deg);z-index:1;opacity:.9}.entrance-tiles span{width:32px;height:47px;font-size:23px;border-bottom-width:5px;border-right-width:2px}.entrance-tiles span:nth-child(1){display:none}.entrance-tiles span:nth-child(2){transform:translateY(42px) rotate(-7deg)}.entrance-tiles span:nth-child(3){transform:translateY(3px) rotate(4deg)}.entrance-tiles span:nth-child(4){transform:translateY(51px) rotate(-3deg)}.try-table{font-size:11px;margin-top:13px;padding:8px 0;border-color:#72936b70;gap:8px}.entrance-details{display:none}.entrance-auth{padding:26px 25px 30px}.auth-welcome h2{font-size:18px}.auth-welcome p{font-size:11px;margin-bottom:22px}.auth-form .auth-tabs{margin-bottom:21px}.auth-form .field input{font-size:16px;min-height:46px}.auth-form .field{margin-bottom:15px}.auth-form .field>span{font-size:11px}.lobby-page{padding:30px 20px 35px}.lobby-heading{margin-bottom:27px;gap:10px}.lobby-heading h1{font-size:27px;margin:8px 0 10px}.lobby-heading .small-kicker{font-size:10px}.lobby-heading p{font-size:11px}.lobby-tile-still{margin:0 0 0 6px;gap:3px;transform:rotate(10deg)}.lobby-tile-still span{width:26px;height:39px;font-size:19px;border-radius:3px}.lobby-tile-still span:first-child{display:none}.lobby-entry{grid-template-columns:1fr;gap:13px;margin-bottom:32px}.join-by-code{min-height:44px}.join-by-code input{font-size:16px}.create-room{min-height:48px}.room-row{gap:12px;padding:19px 0}.room-thumbnail{width:48px;height:50px}.room-thumbnail span{width:34px;height:35px;font-size:20px}.room-row-content h3{font-size:14px}.room-row-content p{font-size:9px;gap:5px 9px}.room-tags span{font-size:9px;padding:3px 5px}.room-tags{gap:5px;margin-top:8px}.room-row-action{gap:9px}.room-row-action>span{font-size:10px}.room-row-action .button{font-size:11px;padding:8px 11px;min-height:34px}.room-topbar{padding:9px 13px;gap:5px}.room-topbar strong{font-size:16px}.room-topbar>div>button{font-size:11px}.connection-indicator{font-size:8px}.waiting-room{padding:22px 20px 30px}.waiting-title h1{font-size:24px}.waiting-title p{font-size:11px}.waiting-room .mahjong-table{width:min(100%,310px);margin-top:16px;margin-bottom:18px}.waiting-people{gap:14px 15px}.waiting-actions .button{font-size:13px}.game-view{padding:0 15px 14px}.game-view .mahjong-table{width:min(100%,290px);margin-top:7px;margin-bottom:14px}.game-meta{padding:10px 1px 0;font-size:10px}.game-meta .text-button{font-size:10px}.table-seat{width:66px;gap:2px}.table-seat .avatar{width:31px;height:31px}.seat-portrait{padding:2px}.seat-name{font-size:9px;max-width:60px}.seat-detail{font-size:8px}.turn-strip{padding:9px 11px;gap:7px;min-height:39px}.turn-strip strong{font-size:11px}.countdown{font-size:10px}.countdown svg{width:12px;height:12px}.personal-desk{margin-top:14px;padding:15px 10px 7px;border-radius:10px 10px 7px 7px}.hand-heading{margin-bottom:15px;gap:7px;padding-right:66px}.hand-heading>span:first-child{font-size:11px}.hand-count{font-size:9px}.expand-hand{right:8px;top:10px;font-size:9px;gap:3px;padding:4px}.expand-hand svg{width:13px;height:13px}.hand-rack{gap:10px 1px;min-height:135px}.tile-face{width:43px;height:58px}.tile-word{font-size:26px}.hand-token{padding-left:4px}.editor-tools button{font-size:9px;padding:8px 5px;gap:3px}.editor-tools button svg{width:14px;height:14px}.editor-caption{font-size:9px;line-height:1.8}.game-actions{gap:9px;padding-top:12px;padding-bottom:calc(12px + env(safe-area-inset-bottom))}.game-actions .button{font-size:13px}.game-actions .hu-button{font-size:25px;width:59px}.game-actions>.button:first-child{min-height:47px}.response-actions{gap:7px}.response-actions .button{font-size:12px;min-height:45px}.stage-note{font-size:10px;padding-top:8px}.quiet-auto{font-size:9px}.expanded-hand .mahjong-table{width:170px;margin-bottom:7px}.expanded-hand .table-seat{transform:translate(-50%,-50%) scale(.62)}.expanded-hand .hand-rack{min-height:225px}.modal-backdrop{padding:0;align-items:flex-end}.modal{max-height:92dvh;width:100%;border-radius:19px 19px 0 0}.modal-heading{padding:17px 20px 14px}.modal-heading h2{font-size:17px}.modal-body{padding:20px 21px calc(25px + env(safe-area-inset-bottom))}.modal .field input,.modal .field select{font-size:16px}.modal .hand-rack{min-height:140px}.modal .hand-editor{padding:12px 9px 8px;background:#e8dfc9;border-radius:8px;margin:12px 0 22px}.modal .hand-heading{padding-right:0}.modal .editor-caption{font-size:9px}.avatar-grid{gap:6px}.avatar-choice{padding:5px}.avatar-choice .avatar{width:40px;height:40px}.profile-preview{margin-bottom:23px}.gender-options label{flex:1;justify-content:center}.mode-choices strong{font-size:13px}.mode-choices span{font-size:9px}.pack-option p{font-size:10px}.pack-option strong{font-size:11px}.pack-samples{font-size:12px}.room-settings-fields .field-grid{gap:9px}.room-settings-fields .field-grid select{font-size:12px}.toast{top:73px;font-size:12px;padding:12px 14px;border-radius:9px}.demo-page{padding:25px 18px 30px}.demo-heading h1{font-size:25px}.demo-note{font-size:11px;margin:13px 0 20px}.demo-controls{font-size:10px}.demo-controls select{font-size:14px}.demo-page .mahjong-table{width:min(100%,290px);margin-top:12px}.demo-actions .button{font-size:11px;padding:10px 12px}.results-view{padding:25px 18px 30px}.results-heading h1{font-size:25px}.results-intro{font-size:11px;margin-top:10px;margin-bottom:19px}.results-heading .small-kicker{font-size:9px}.work-people{gap:3px;margin:20px 0}.work-people>button{gap:5px;padding:6px 2px;border-radius:8px}.work-people>button .avatar{width:30px;height:30px}.work-people>button>span{font-size:8px}.work-people>button>i{font-size:7px;right:-1px;top:-4px}.work-paper{padding:18px 16px 16px;border-radius:10px}.work-byline{margin-bottom:20px;gap:8px}.work-byline .avatar{width:35px;height:35px}.work-byline h2{font-size:14px}.work-byline>div>span{font-size:9px}.work-tiles{gap:10px 4px;min-height:138px}.work-tiles .tile-face{width:40px;height:55px}.work-tiles .tile-word{font-size:25px}.compact-work{min-height:0;gap:8px 4px}.compact-work .tile-face{width:31px;height:43px}.compact-work .tile-word{font-size:20px}.gift-actions{gap:9px;padding-top:17px;margin-top:18px}.gift-button{min-height:56px;font-size:12px;gap:7px}.gift-button svg{width:23px;height:23px}.own-work-note{font-size:10px}.work-gift-results{gap:26px}.work-gift-results>span{font-size:11px}.work-navigation{margin-bottom:20px}.result-bottom>p{font-size:10px}.work-page{font-size:9px}.river-list{gap:15px 10px}.river-item{min-width:145px}.river-item>div>strong{max-width:70px}.rules-copy{font-size:12px}.rules-copy .intro-copy{font-size:14px}.global-note{margin:8px 14px;font-size:10px;gap:10px;padding:10px 12px}}@media(max-width:360px){.app-header{padding:0 15px}.header-small{font-size:9px}.brand-name{font-size:14px}.header-actions{gap:5px}.game-view{padding-left:11px;padding-right:11px}.game-view .mahjong-table{width:270px}.personal-desk{padding-left:8px;padding-right:8px}.hand-token{padding-left:3px}.tile-face{width:41px;height:56px}.tile-word{font-size:25px}.hand-rack{gap:9px 1px}.rack-end{min-width:25px}.hand-heading{gap:5px}.editor-tools button{font-size:9px;padding-left:4px;padding-right:4px}.work-paper{padding:16px 12px}.results-view{padding-left:14px;padding-right:14px}.work-people>button .avatar{width:27px;height:27px}.work-tiles .tile-face{width:38px;height:53px}.work-tiles .tile-word{font-size:24px}.compact-work .tile-face{width:30px;height:42px}.compact-work .tile-word{font-size:20px}.modal-body{padding-left:17px;padding-right:17px}.avatar-grid{gap:4px}.avatar-choice .avatar{width:37px;height:37px}.entrance-story{padding-left:22px;padding-right:22px}.entrance-story h1{font-size:27px}.entrance-tiles{right:17px}.entrance-tiles span{width:27px;height:40px;font-size:21px}.lobby-heading h1{font-size:24px}.lobby-tile-still span{width:23px;height:35px;font-size:17px}.room-thumbnail{display:none}.room-row-content h3{font-size:14px}}@media(orientation:landscape)and (max-height:500px){.game-view{max-width:780px;display:grid;grid-template-columns:40% 60%;gap:0 15px;padding:0 28px 20px}.game-meta,.theme-ribbon,.connection-banner,.auto-banner,.turn-strip,.stage-note,.vote-panel{grid-column:1/-1}.game-view .mahjong-table{grid-column:1;grid-row:3/6;width:235px;max-width:100%;align-self:center}.personal-desk{grid-column:2;margin-top:13px}.game-actions{grid-column:2;position:static;padding-bottom:10px}.quiet-auto{grid-column:2}.hand-rack{min-height:128px}.game-meta{padding-top:10px}.turn-strip{grid-row:2;margin-top:8px}.modal{max-height:96dvh}.entrance-page{display:grid;grid-template-columns:1fr 1fr;max-width:none}.entrance-story{min-height:100%}.entrance-tiles{display:none}.entrance-auth{padding:24px}.app-header{height:58px}.results-view{max-width:700px}.results-heading h1{font-size:24px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media(min-width:360px)and (max-width:700px){.hand-rack .hand-token.token-tile{flex:0 0 calc((100% - 6px)/7);padding-left:3px}.hand-rack .token-tile .tile-button{width:100%;min-height:54px}.hand-rack .token-tile .tile-face{width:min(100%,40px);height:54px}.hand-rack .token-tile .tile-word{font-size:24px}.hand-rack .token-tile .long-text .tile-word{font-size:15px}.hand-rack{min-height:125px}.hand-rack .rack-end{min-height:50px}}.game-actions .mahjong-action,.response-actions .mahjong-action{min-height:56px;padding:5px 18px 7px;border:1px solid #c9c4a5;border-radius:9px;font-family:Songti SC,STSong,"Noto Serif SC",serif;font-size:34px;font-weight:700;line-height:1.1}.game-actions .eat-action{color:#ffe176;background:#326747;border-color:#315c3c;box-shadow:0 3px #244b31}.game-actions .eat-action:hover:not(:disabled){background:#3b7751}.game-actions .hu-action{color:#b6372f;background:#fff8e4;border-color:#d8caa2;box-shadow:0 3px #c8bc94}.game-actions .hu-action:hover:not(:disabled){background:#fffcef}.game-actions .mahjong-action:disabled{opacity:.35;box-shadow:none}.game-actions .pass-action{min-height:56px}.game-actions>.hu-action{width:70px;flex:0 0 70px}.auto-control{display:flex;align-items:center;gap:10px;margin-top:10px;padding:11px 12px;background:#e9eddd;border:1px solid #d5ddc4;border-radius:9px;color:#628055}.auto-control>svg{flex-shrink:0}.auto-control>div{flex:1;min-width:0}.auto-control strong{display:block;font-size:12px;font-weight:600}.auto-control span{display:block;font-size:10px;line-height:1.6;margin-top:3px;color:#859276}.auto-control .button{flex-shrink:0;min-height:44px;padding:10px 13px;font-size:12px}.auto-control-active{background:#f5ecd3;border-color:#d5bc7c;color:#8e6c2b}.auto-control-active span{color:#987e46}.auto-control-active .button{background:#386644}.hand-token.is-dragging{opacity:.22;z-index:auto}.drag-token-preview{pointer-events:none}.drag-token-preview .tile-face,.drag-token-preview .space-token,.drag-token-preview .break-token{width:100%;height:100%;min-width:0;box-sizing:border-box}.drag-token-preview .tile-face{box-shadow:0 8px 14px #23351d35}.drag-token-preview .tile-word{font-size:var(--drag-word-size, 26px)}.drag-token-preview .space-token,.drag-token-preview .break-token{display:flex;align-items:center;justify-content:center;background:#f0e8ce}.time-settings{margin-top:25px}.time-fields{border-top:1px solid #dce2cf}.time-field{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px 0;border-bottom:1px solid #dce2cf}.time-field-copy{min-width:0}.time-field-copy strong{display:block;font-size:12px;font-weight:500;color:#577048}.time-field-copy>span{display:block;font-size:10px;line-height:1.7;color:#8c987d;margin-top:5px}.time-field-copy small{display:block;font-size:9px;color:#a0ac90;margin-top:3px}.seconds-input{display:flex;align-items:center;flex-shrink:0;border:1px solid #cfd9bd;border-radius:7px;background:#fffef5;overflow:hidden}.seconds-input input{width:70px;padding:10px 4px 10px 11px;min-height:44px;font-size:16px;color:#547346;background:transparent;border:0;border-radius:0;font-variant-numeric:tabular-nums}.seconds-input>span{padding:0 10px 0 4px;font-size:11px;color:#94a082}.seconds-input:focus-within{outline:2px solid #8ca976;outline-offset:2px}.seconds-input input:focus{outline:none}.seconds-input.invalid{border-color:#b87361}.time-validation{color:#a05744;font-size:11px;line-height:1.7;margin-top:10px}.rules-inventory{margin-top:31px;padding-top:4px;border-top:1px solid #dbe2cd}.inventory-pack{border-bottom:1px solid #dbe2cd}.inventory-pack summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;padding:16px 2px;list-style:none}.inventory-pack summary::-webkit-details-marker{display:none}.inventory-pack summary:before{content:"+";color:#829872;font-size:18px;width:12px}.inventory-pack[open] summary:before{content:"−"}.inventory-pack summary strong{flex:1;font-weight:500;color:#587449;font-size:12px}.inventory-pack summary>span{font-size:10px;color:#92a180;white-space:nowrap}.inventory-pack>p{margin:0 0 13px;font-size:11px}.base-character-rows{padding:0 0 17px;display:grid;gap:5px}.base-character-row{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:5px}.base-character-row>span,.pack-character-list>span{display:flex;justify-content:center;align-items:center;min-height:35px;border-radius:4px;background:#f0eedf;border-bottom:2px solid #d5d1b9;color:#4e6941;font-family:Songti SC,STSong,serif;font-size:19px}.base-character-row.first-row{padding-bottom:7px;margin-bottom:2px;border-bottom:1px dashed #d7ddc7}.pack-character-list{display:flex;flex-wrap:wrap;gap:6px;padding-bottom:17px}.pack-character-list>span{min-width:31px;padding:3px 7px}@media(max-width:700px){.auto-control{gap:8px;padding:9px 10px}.auto-control>svg{width:18px}.auto-control .button{padding-left:11px;padding-right:11px}.auto-control span{font-size:9px}.base-character-row{gap:4px}.base-character-row>span{min-height:32px;font-size:18px}.time-field{gap:10px}.seconds-input input{width:63px}}@media(orientation:landscape)and (max-height:500px){.auto-control{grid-column:1 / -1}}.hu-confirm-copy{font-size:13px;line-height:1.9;color:#819072;margin-bottom:18px}.hu-confirm-copy strong{color:#577341;font-weight:600;white-space:nowrap}.hu-confirm-preview{padding:15px 14px 7px;background:#f1ecda;border:1px solid #dfd6b9;border-radius:9px;margin:17px 0 22px}.hu-confirm-preview>span{display:block;color:#9a9271;font-size:11px;margin-bottom:14px}.hu-confirm-preview .work-tiles{min-height:0}.win-arrange-note{line-height:1.8;margin-top:11px}.my-win-arrange{color:#718258;padding:12px 14px;background:#e9edda;border-left:3px solid #9bad77;border-radius:0 7px 7px 0}.game-meta-actions{display:flex;align-items:center;gap:16px}.completed-works>article+article{border-top:1px solid #dce2cf;margin-top:20px;padding-top:20px}.completed-work-heading{display:flex;align-items:center;gap:9px;margin-bottom:18px}.completed-work-heading strong{font-size:13px;font-weight:500;flex:1}.completed-work-heading>span{color:#9aa787;font-size:10px}.completed-works .work-tiles{min-height:0}.completed-works details{margin-top:8px}.completed-works summary{cursor:pointer;color:#8b9b79;font-size:11px;margin-bottom:15px}@media(max-width:700px){.game-meta-actions{gap:12px}.game-meta-actions .text-button{font-size:9px;gap:4px}.game-meta-actions .text-button svg{width:13px;height:13px}.hu-confirm-copy{font-size:12px}}.win-arrange-table-word{font-size:22px;letter-spacing:3px;white-space:nowrap}.expanded-hand .win-arrange-table-word{font-size:15px;letter-spacing:2px}.game-table-zone,.game-player-zone,.waiting-table-zone,.waiting-controls,.demo-table-zone,.demo-player-zone{display:contents}@media(min-width:1024px){.app-shell{max-width:none}.app-header,.in-room .app-header{width:100%;max-width:1440px;padding:0 40px}.room-topbar{max-width:1360px;margin:0 auto;padding:12px 8px;width:calc(100% - 80px)}.room-topbar strong{font-size:16px}.room-topbar .connection-indicator{font-size:11px}.entrance-page{width:calc(100% - 80px);max-width:1360px;margin:32px auto 52px;grid-template-columns:minmax(0,1.2fr) minmax(370px,.85fr);min-height:610px}.entrance-story{padding:48px clamp(42px,5vw,76px);display:flex;flex-direction:column;justify-content:center}.entrance-story h1{font-size:clamp(40px,3.6vw,54px);line-height:1.55;margin:20px 0 23px}.entrance-story>p{font-size:14px;line-height:1.9}.entrance-tiles{display:flex;margin:32px 0 28px}.entrance-tiles span{width:59px;height:78px;font-size:41px}.entrance-details{flex-direction:row;flex-wrap:wrap;gap:10px 21px;margin-top:25px;font-size:11px}.try-table{align-self:flex-start}.entrance-auth{padding:48px clamp(34px,4vw,62px);display:flex;flex-direction:column;justify-content:center}.entrance-auth>*{width:100%;max-width:390px;margin-left:auto;margin-right:auto}.entrance-auth .auth-welcome h2{font-size:24px}.entrance-auth .field input{min-height:48px}.lobby-page{max-width:1440px;padding:38px 40px 56px}.lobby-heading{align-items:center;margin-bottom:32px}.lobby-heading h1{font-size:38px}.lobby-heading p{font-size:14px}.lobby-entry{grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:26px;margin-bottom:40px}.lobby-entry .create-room{min-height:58px;font-size:16px}.join-by-code input{font-size:15px}.join-by-code .button{min-width:125px}.room-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:42px}.room-row{min-width:0;min-height:142px;gap:20px;padding:25px 0}.room-row-content{min-width:0}.room-row-content h3{font-size:17px}.room-row-action{margin-left:auto;flex-shrink:0}.room-list .empty-lobby{grid-column:1 / -1;min-height:310px}.lobby-footnote{margin-top:30px;font-size:12px}.game-view{max-width:1440px;padding:0 40px 30px;display:grid;grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr);gap:14px 36px;align-items:start}.game-meta,.game-view>.theme-ribbon,.game-view>.connection-banner{grid-column:1 / -1}.game-meta{padding:18px 0 1px;font-size:12px}.game-meta .text-button{font-size:12px}.game-meta-actions{gap:25px}.game-table-zone{display:block;grid-column:1;min-width:0;align-self:start;position:sticky;top:20px}.game-player-zone{display:flex;flex-direction:column;grid-column:2;min-width:0;padding-top:12px}.game-view .mahjong-table{width:min(100%,540px);max-width:none;margin:0 auto;grid-column:auto;grid-row:auto}.game-view .table-seat,.waiting-room .table-seat,.demo-page .table-seat{width:98px;gap:5px}.game-view .table-seat .avatar,.waiting-room .table-seat .avatar,.demo-page .table-seat .avatar{width:43px;height:43px}.game-view .seat-name,.waiting-room .seat-name,.demo-page .seat-name{font-size:12px;max-width:91px}.game-view .seat-detail,.waiting-room .seat-detail,.demo-page .seat-detail{font-size:10px}.game-view .table-calligraphy,.waiting-room .table-calligraphy,.demo-page .table-calligraphy{font-size:68px}.game-view .table-wall-count,.game-view .table-center-caption{font-size:12px}.game-player-zone .turn-strip{grid-row:auto;margin:0;min-height:48px;padding:12px 15px}.game-player-zone .turn-strip strong,.game-player-zone .countdown{font-size:13px}.game-player-zone .auto-control{margin-top:12px;padding:11px 14px}.game-player-zone .auto-control strong{font-size:13px}.game-player-zone .auto-control span{font-size:11px}.game-player-zone .stage-note{font-size:12px}.game-player-zone .vote-panel{margin-top:14px}.game-player-zone .personal-desk,.demo-player-zone .personal-desk{margin-top:16px;padding:24px 22px 14px;border-radius:12px 12px 8px 8px}.game-player-zone .hand-heading,.demo-player-zone .hand-heading{margin-bottom:22px}.game-player-zone .hand-heading>span:first-child,.demo-player-zone .hand-heading>span:first-child{font-size:14px}.game-player-zone .hand-rack,.demo-player-zone .hand-rack{gap:14px 6px;min-height:192px}.game-player-zone .hand-token.token-tile,.demo-player-zone .hand-token.token-tile{flex:0 0 calc((100% - 36px) / 7);min-width:0;padding-left:6px}.game-player-zone .token-tile .tile-button,.demo-player-zone .token-tile .tile-button{width:100%;min-height:70px}.game-player-zone .token-tile .tile-face,.demo-player-zone .token-tile .tile-face{width:min(100%,54px);height:70px}.game-player-zone .token-tile .tile-word,.demo-player-zone .token-tile .tile-word{font-size:32px}.game-player-zone .token-tile .long-text .tile-word,.demo-player-zone .token-tile .long-text .tile-word{font-size:19px}.game-player-zone .rack-end,.demo-player-zone .rack-end{flex:1 0 100%;flex-direction:row;justify-content:flex-end;align-items:center;gap:6px;min-height:22px;height:22px;margin:-6px 0 0;padding:0 7px;border:0}.game-player-zone .editor-tools,.demo-player-zone .editor-tools{gap:6px}.game-player-zone .editor-tools button,.demo-player-zone .editor-tools button{font-size:11px;min-height:38px;padding:9px 7px}.game-player-zone .editor-caption,.demo-player-zone .editor-caption{font-size:10px}.game-player-zone .game-actions{grid-column:auto;position:sticky;bottom:0;margin:0;padding:18px 0 14px;gap:13px}.game-player-zone .game-actions>.button:first-child{min-height:55px;font-size:15px}.game-player-zone .game-actions .mahjong-action{min-height:58px;font-size:36px}.game-player-zone .game-actions .pass-action{font-size:14px}.game-player-zone .waiting-action{font-size:12px}.game-view.expanded-hand{grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr)}.game-view.expanded-hand .mahjong-table{width:min(100%,370px);margin:0 auto}.game-view.expanded-hand .table-seat,.game-view.expanded-hand .table-seat:active{transform:translate(-50%,-50%)}.game-view.expanded-hand .table-calligraphy{font-size:46px}.game-view.expanded-hand .table-wall-count{font-size:11px}.game-view.expanded-hand .table-center-caption{display:block;font-size:10px}.game-view.expanded-hand .hand-rack{min-height:260px}.game-view.expanded-hand .center-discard{width:45px!important;height:60px!important}.game-view.expanded-hand .center-discard .tile-word{font-size:28px!important}.waiting-room{max-width:1440px;padding:32px 40px 45px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);column-gap:50px;align-items:center}.waiting-title{grid-column:1 / -1;text-align:left;margin:0 0 18px}.waiting-title h1{font-size:34px}.waiting-title p{font-size:14px}.waiting-table-zone{display:block;min-width:0}.waiting-room .mahjong-table{width:min(100%,530px);margin:0 auto}.waiting-controls{display:block;padding:10px 0 10px 35px;border-left:1px solid #dbe1ce;min-width:0}.waiting-settings{border-top:0;padding:0 0 20px;align-items:flex-start;gap:12px}.waiting-settings strong{font-size:18px}.waiting-settings>div>span{font-size:12px;line-height:1.8;margin-top:8px}.waiting-theme,.waiting-packs{font-size:12px;line-height:1.9;text-align:left}.waiting-people{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px 14px;margin:25px 0}.waiting-people>div{min-width:0}.waiting-people>div>span{font-size:12px}.waiting-people>div>small{font-size:10px}.waiting-actions{gap:12px}.waiting-actions .button{min-height:50px;font-size:14px}.waiting-controls>.fine-print{font-size:11px;line-height:1.9;text-align:left}.demo-page{max-width:1440px;padding:32px 40px 45px;display:grid;grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr);gap:0 36px;align-items:start}.demo-heading,.demo-note{grid-column:1 / -1}.demo-heading h1{font-size:34px}.demo-note{max-width:none;margin:14px 0 28px;font-size:13px}.demo-table-zone,.demo-player-zone{display:block;min-width:0}.demo-controls{padding:0 14px;font-size:12px}.demo-controls select{font-size:14px}.demo-page .mahjong-table{width:min(100%,520px);margin:12px auto 0}.demo-player-zone{padding-top:26px}.demo-player-zone .personal-desk{margin:0}.demo-actions{margin-top:20px;gap:13px}.demo-actions .button{min-height:51px;font-size:14px}.results-view{max-width:1280px;padding:36px 40px 45px;display:grid;grid-template-columns:230px minmax(0,1fr);gap:0 36px;align-items:start}.results-heading,.results-intro,.results-view>.connection-banner{grid-column:1 / -1}.results-heading h1{font-size:34px}.results-intro{margin-bottom:29px;font-size:13px}.work-people{grid-column:1;grid-row:span 3;display:flex;flex-direction:column;margin:0;gap:7px}.work-people>button{flex-direction:row;justify-content:flex-start;gap:12px;padding:11px 12px;width:100%}.work-people>button>span{font-size:12px}.work-people>button>i{position:static;margin-left:auto;font-size:9px;padding:4px 6px}.results-view>.work-paper,.results-view>.empty-copy,.results-view>.work-navigation,.results-view>.result-bottom{grid-column:2;min-width:0}.results-view .work-paper{padding:29px 32px 24px}.results-view .work-byline{margin-bottom:27px}.results-view .work-byline h2{font-size:18px}.results-view .work-tiles{min-height:175px;gap:13px 7px}.results-view .work-tiles .tile-face{width:50px;height:68px}.results-view .work-tiles .tile-word{font-size:30px}.results-view .work-tiles .long-text .tile-word{font-size:18px}.results-view .work-navigation{margin:15px 0 22px}.results-view .result-bottom>p{font-size:12px}.results-view .result-bottom>.button{min-height:49px;font-size:14px}}@media(min-width:1024px)and (max-height:760px){.entrance-page{margin-top:22px;min-height:550px}.entrance-story,.entrance-auth{padding-top:32px;padding-bottom:32px}.game-view .mahjong-table{width:min(100%,445px)}.game-player-zone{padding-top:4px}.game-player-zone .personal-desk{padding-top:19px;margin-top:12px}.game-player-zone .hand-rack{row-gap:12px;min-height:180px}.game-player-zone .hand-heading{margin-bottom:18px}.waiting-room .mahjong-table,.demo-page .mahjong-table{width:min(100%,440px)}.waiting-room,.demo-page{padding-top:25px}}@media(min-width:701px)and (max-width:1023px)and (orientation:landscape)and (max-height:500px){.game-view{max-width:none;display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:10px 18px;padding:0 22px 18px;align-items:start}.game-view>.game-meta,.game-view>.theme-ribbon,.game-view>.connection-banner{grid-column:1 / -1}.game-table-zone{display:block;grid-column:1;min-width:0;position:sticky;top:10px}.game-player-zone{display:flex;flex-direction:column;grid-column:2;min-width:0}.game-view .mahjong-table{grid-column:auto;grid-row:auto;width:min(100%,250px);margin:3px auto 0}.game-player-zone .turn-strip{grid-column:auto;grid-row:auto;margin:0;min-height:38px;padding:8px 10px}.game-player-zone .turn-strip strong,.game-player-zone .countdown{font-size:11px}.game-player-zone .auto-control{margin-top:9px;padding:7px 10px}.game-player-zone .auto-control strong{font-size:11px}.game-player-zone .auto-control span{font-size:9px}.game-player-zone .auto-control .button{min-height:38px;padding:8px 11px;font-size:11px}.game-player-zone .personal-desk{grid-column:auto;margin-top:11px;padding:15px 12px 8px}.game-player-zone .hand-heading{margin-bottom:15px}.game-player-zone .hand-heading>span:first-child{font-size:12px}.game-player-zone .game-actions{grid-column:auto;position:sticky;bottom:0;padding:12px 0 10px}.game-view.expanded-hand{grid-template-columns:minmax(0,.5fr) minmax(0,1.5fr)}.game-view.expanded-hand .mahjong-table{width:min(100%,175px)}.demo-page{max-width:none;display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:0 18px;padding:24px 22px}.demo-heading,.demo-note{grid-column:1 / -1}.demo-note{max-width:none;margin-bottom:20px}.demo-table-zone,.demo-player-zone{display:block;min-width:0}.demo-page .mahjong-table{width:min(100%,250px);margin:12px auto 0}.demo-controls{gap:5px;font-size:10px}.demo-player-zone .personal-desk{margin-top:0;padding:16px 12px 9px}.demo-actions{margin-top:12px}}
