@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600;700&family=Noto+Sans+KR:wght@400;450;500;600;700&family=Noto+Serif+KR:wght@400;500;600;700&display=swap";.home-how-to{margin-top:26px;padding-top:23px;border-top:1px solid #c6a66b44;color:#f2ecdf}.home-how-to-heading>span{color:#cfb581;font-size:12px;font-weight:600}.home-how-to h2{margin:5px 0 18px;font-size:clamp(17px,1.6vw,21px);font-weight:600;letter-spacing:-.04em}.home-how-to-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;list-style:none;margin:0;padding:0}.home-how-to-steps li{min-width:0}.home-how-to-visual{height:46px;display:flex;align-items:center;gap:7px;color:#d3b985;margin-bottom:10px}.home-how-to-mini-card{display:grid;place-items:center;width:32px;height:43px;background:#f7eedc;border:1px solid #d4ba81;border-radius:4px;transform:rotate(7deg)}.home-how-to h3{display:flex;align-items:baseline;gap:6px;margin:0 0 8px;font-size:14px;line-height:1.5;word-break:keep-all}.home-how-to h3>span{font-size:11px;color:#cfb581;font-variant-numeric:tabular-nums}.home-how-to-steps p{font-size:12px;line-height:1.85;color:#d0cbd5;word-break:keep-all}.home-how-to-rule{margin-top:15px;font-size:11px;line-height:1.7;color:#c6b5d0}.home-how-to-start{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:20px}.home-how-to-start .primary{min-height:46px;font-size:13px;padding:11px 18px}.home-how-to-start>span{font-size:11px;color:#c6b5d0}.home-how-to-goal{margin-top:14px;color:#c6b5d0;font-size:11px;line-height:1.8;word-break:keep-all}@media(max-width:1050px)and (min-width:701px),(max-width:450px){.home-how-to-steps{gap:12px}.home-how-to h3{gap:4px;font-size:12px}.home-how-to-steps p{font-size:11px}.home-how-to-visual{gap:3px}.home-how-to-visual>.gem{width:25px;height:25px}}@media(max-width:700px){.home-how-to{margin-top:20px;padding-top:18px}.home-how-to-steps{grid-template-columns:1fr;gap:16px}.home-how-to-steps li{display:grid;grid-template-columns:88px minmax(0,1fr);column-gap:14px}.home-how-to-visual{grid-row:1 / 3;align-self:center;margin-bottom:0;justify-content:center}.home-how-to h3{font-size:14px;margin-bottom:3px}.home-how-to-steps p{font-size:12px;line-height:1.7}.home-how-to-start{gap:9px}.home-how-to-start .primary{width:100%;justify-content:center}.home-how-to-start>span{width:100%;text-align:center}}.public-lobby>.lobby-chat-dock{grid-column:1;grid-row:2;min-width:0;align-self:start}.lobby-chat-dock .room-chat.is-docked{position:static;inset:auto;z-index:auto;width:100%;min-width:0}.lobby-chat-dock .room-chat.is-docked .room-chat-panel{width:100%;max-height:none;margin:0;border-color:#d8cdbb;background:#fffdf9;border-radius:12px;box-shadow:0 5px 20px #0f102124}.lobby-chat-dock .room-chat.is-docked .room-chat-heading{padding:16px}.lobby-chat-dock .room-chat.is-docked .room-chat-heading h2{font-size:16px}.lobby-chat-dock .room-chat.is-docked .room-chat-history{height:260px;padding:14px 16px}.lobby-chat-dock .room-chat.is-docked .room-chat-message p{font-size:13px}.lobby-chat-dock .room-chat.is-docked .room-chat-form{padding:12px 16px}.lobby-chat-dock .room-chat.is-docked textarea{font-size:16px}.lobby-chat-dock .room-chat.is-docked .room-chat-compose-bottom small{flex-basis:auto;font-size:10px}.lobby-chat-dock .room-chat.is-docked .room-chat-send{width:auto;min-height:40px;padding:8px 16px}@media(max-width:700px){.lobby.public-lobby.has-room>.lobby-chat-dock{order:1}.lobby.public-lobby.has-room>.entry-panel{order:2}.lobby-chat-dock .room-chat.is-docked .room-chat-history{height:210px}}.lobby.public-lobby{grid-template-columns:minmax(0,1fr) minmax(340px,410px);grid-template-rows:auto 1fr auto;align-content:start;align-items:start;gap:26px 42px;padding-top:38px}.public-lobby>.lobby-story{grid-column:1;grid-row:1;min-width:0;min-height:0;padding:0}.public-lobby .lobby-story .lobby-art{display:none}.public-lobby .lobby-story .tiny-ornament{margin-bottom:8px}.public-lobby .lobby-story h1{font-size:clamp(26px,2.9vw,36px);line-height:1.5}.public-lobby .lobby-title p{margin-top:13px}.public-lobby .lobby-details{margin-top:18px;margin-bottom:0;flex-wrap:wrap}.public-lobby>.entry-panel{grid-column:2;grid-row:1 / 3;align-self:start;min-width:0;padding:30px 26px 24px}.public-lobby .entry-panel .panel-emblem{display:none}.public-lobby>.public-room-directory{grid-column:1;grid-row:2;min-width:0;padding-top:24px}.public-lobby>.room-directory:not(.public-room-directory){grid-column:1 / -1;grid-row:3;margin-top:8px}.public-lobby .entry-tabs{gap:10px;margin-top:20px}.public-lobby .room-visibility-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:22px 0 0;padding:0;border:0;min-width:0}.public-lobby .room-visibility-choice legend{margin-bottom:10px;font-size:12px;font-weight:500;color:#dcd2e5}.public-lobby .room-visibility-choice label{position:relative;display:flex;align-items:flex-start;gap:8px;margin:0;padding:12px 10px;border:1px solid #a392b444;border-radius:7px;background:#14142244;cursor:pointer;min-width:0}.public-lobby .room-visibility-choice label.selected{border-color:#d4b884;background:#d4b88412}.public-lobby .room-visibility-choice input{position:absolute;width:1px;height:1px;opacity:0;padding:0}.public-lobby .room-visibility-choice label:has(input:focus-visible){outline:2px solid var(--gold-light);outline-offset:3px}.public-lobby .room-visibility-choice label>svg{color:var(--gold-light);flex:0 0 auto}.public-lobby .room-visibility-choice strong{display:block;font-size:12px;font-weight:600}.public-lobby .room-visibility-choice small{display:block;font-size:10px;line-height:1.6;color:var(--muted);margin-top:5px;word-break:keep-all}.public-lobby .room-visibility-choice .visibility-check{position:absolute;right:7px;top:8px;width:12px;height:12px}.public-lobby .optional-label{margin-left:5px;font-size:10px;color:var(--muted)}.public-lobby .room-capacity-choice{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px}.public-lobby .room-capacity-choice label{margin:0}.public-lobby .room-capacity-choice select{width:110px;height:40px;padding:0 12px;border:1px solid #696073;border-radius:5px;color:var(--ivory);background:#131522;font:inherit;font-size:13px}.public-lobby .nickname-error,.public-lobby .public-room-error{margin:10px 0;color:#efb4ac;font-size:12px;line-height:1.6}.public-lobby .public-room-directory .room-directory-heading{margin-bottom:18px}.public-lobby .public-room-directory h2{font-size:23px}.public-lobby .public-room-directory .room-directory-heading p{line-height:1.7}.public-lobby .public-room-directory .room-refresh{padding:10px}.public-lobby .public-room-directory .room-refresh span{display:none}.public-lobby .public-room-list{display:flex;flex-direction:column;gap:9px}.public-lobby .public-room-row{display:grid;grid-template-columns:minmax(0,1fr) 50px 76px;align-items:center;gap:14px;padding:17px 16px;border:1px solid #cab3882c;border-radius:9px;background:#27243599}.public-lobby .public-room-row.has-seats{border-left:3px solid #c7a779;padding-left:14px}.public-lobby .public-room-identity{min-width:0}.public-lobby .public-room-identity .room-status{display:flex;align-items:center;gap:5px;font-size:10px}.public-lobby .public-room-identity .room-status i{width:5px;height:5px;border-radius:50%;background:currentColor}.public-lobby .public-room-identity h3{margin:7px 0 8px;color:var(--ivory);font-size:14px;font-weight:500;line-height:1.5;word-break:keep-all;overflow-wrap:anywhere}.public-lobby .public-room-identity p{display:flex;align-items:center;flex-wrap:wrap;gap:4px;font-size:10px;color:var(--muted);overflow-wrap:anywhere}.public-lobby .public-room-identity p svg{flex-shrink:0}.public-lobby .public-room-identity p span{color:#91889e}.public-lobby .public-room-occupancy{text-align:center}.public-lobby .public-room-occupancy strong{display:flex;justify-content:center;align-items:center;gap:3px;font-size:17px;font-weight:500}.public-lobby .public-room-occupancy strong svg{display:none}.public-lobby .public-room-occupancy strong span{color:var(--muted);font-size:13px}.public-lobby .public-room-occupancy small{display:block;margin-top:7px;font-size:10px;color:var(--muted);white-space:nowrap}.public-lobby .public-room-actions{display:flex;flex-direction:column;align-items:stretch;gap:9px}.public-lobby .public-room-actions>button{display:flex;align-items:center;justify-content:center;gap:5px;min-height:32px;margin:0;padding:7px 5px;font-size:11px;white-space:nowrap}.public-lobby .public-room-actions .text-button{min-height:24px;padding:3px;color:#c5bdd0}.public-lobby .public-room-actions .room-current{text-align:center;font-size:11px}.public-lobby .public-room-empty{display:flex;flex-direction:column;align-items:center;gap:12px;padding:36px 20px}.public-lobby .public-room-empty svg{color:var(--gold)}.public-lobby .public-room-empty strong{font-size:14px;font-weight:500;color:#e2d7e8}.public-lobby .public-room-empty span{font-size:12px;line-height:1.7}.public-lobby .public-room-hint{margin:0 0 14px;font-size:11px;line-height:1.7;color:var(--muted)}.public-lobby .waiting-room-title{overflow-wrap:anywhere;line-height:1.6}.public-lobby .waiting-room-meta{display:flex;justify-content:center;flex-wrap:wrap;gap:16px;margin:12px 0;color:var(--gold-light);font-size:12px}.public-lobby .waiting-room-meta span,.public-lobby .own-room-visibility{display:inline-flex;align-items:center;gap:5px}.public-lobby .own-room-visibility{margin:-2px 0 10px;color:var(--muted);font-size:10px}.public-lobby .room-list-card>p{flex-wrap:wrap}.public-lobby .lobby-seat{min-width:0;min-height:56px;height:auto;gap:8px;padding:6px 0}.public-lobby .lobby-seat .avatar,.public-lobby .lobby-seat .empty-avatar{flex-shrink:0}.public-lobby .lobby-seat .lobby-seat-name{min-width:0;overflow-wrap:anywhere;line-height:1.6}.public-lobby .lobby-seat .lobby-bot-badge{display:inline-flex;align-items:center;gap:3px;flex:0 0 auto;padding:3px 5px;border:1px solid #af9fd14a;border-radius:4px;color:#d3c8e8;background:#bba7e015;font-size:10px}.public-lobby .lobby-seat .bot-add-button,.public-lobby .lobby-seat .bot-remove-button{display:inline-flex;align-items:center;justify-content:center;gap:4px;flex:0 0 auto;min-height:32px;padding:7px 9px;margin:0;font-size:11px;white-space:nowrap}.public-lobby .lobby-seat .bot-remove-button{color:#c6b7ca;padding-left:4px;padding-right:0}.public-lobby .bot-practice-hint{display:flex;align-items:flex-start;gap:7px;margin:-8px 0 21px;color:var(--muted);font-size:11px;line-height:1.7}.public-lobby .bot-practice-hint svg{flex-shrink:0;margin-top:2px;color:var(--gold)}.public-lobby .room-bot-count{display:inline-flex;align-items:center;justify-content:center;gap:3px}@media(max-width:900px){.lobby.public-lobby{grid-template-columns:minmax(0,1fr) minmax(320px,350px);gap:24px;padding:30px 24px}.public-lobby>.entry-panel{padding:25px 20px 20px}.public-lobby .public-room-row{grid-template-columns:minmax(0,1fr) 72px;gap:10px}.public-lobby .public-room-occupancy{grid-column:1;grid-row:2;display:flex;align-items:center;gap:10px}.public-lobby .public-room-occupancy strong{font-size:14px}.public-lobby .public-room-occupancy small{margin:0}.public-lobby .public-room-actions{grid-column:2;grid-row:1 / 3}}@media(max-width:700px){.lobby.public-lobby{display:flex;align-items:stretch;flex-direction:column;gap:25px;padding:26px 18px}.public-lobby>.lobby-story{order:0;text-align:left;align-items:flex-start}.public-lobby .lobby-story h1{font-size:26px}.public-lobby .lobby-story h1 br{display:none}.public-lobby .lobby-story h1 em{margin-left:7px}.public-lobby>.entry-panel{order:2;width:100%;max-width:none}.public-lobby>.public-room-directory,.public-lobby>.room-directory:not(.public-room-directory){margin:0;padding-top:23px}.public-lobby>.public-room-directory{order:1}.public-lobby>.room-directory:not(.public-room-directory){order:3}.public-lobby.has-room>.entry-panel{order:1}.public-lobby.has-room>.public-room-directory{order:2}.public-lobby .public-room-directory h2{font-size:21px}.public-lobby .public-room-row{grid-template-columns:minmax(0,1fr) 52px 74px;gap:10px}.public-lobby .public-room-occupancy{grid-column:auto;grid-row:auto;display:block}.public-lobby .public-room-occupancy small{margin-top:6px}.public-lobby .public-room-actions{grid-column:auto;grid-row:auto}}.game-log .game-log-disclosure{min-width:0}.game-log .game-log-disclosure-summary{display:grid;grid-template-columns:minmax(0,1fr) 15px;grid-template-rows:auto auto;align-items:center;column-gap:6px;row-gap:2px;min-height:40px;padding:3px 2px;border-radius:4px;cursor:pointer;list-style:none}.game-log .game-log-disclosure-summary::-webkit-details-marker{display:none}.game-log .game-log-disclosure-summary::marker{content:""}.game-log .game-log-disclosure-summary:focus-visible{outline:2px solid #537d6c;outline-offset:3px}.game-log-disclosure-heading{display:flex;align-items:center;gap:5px;min-width:0;color:#786449;font-size:11px;font-weight:600;line-height:1.2}.game-log-disclosure-heading>svg{flex-shrink:0}.game-log-disclosure-count{color:#9a8c77;font-size:10px;font-variant-numeric:tabular-nums;font-weight:500}.game-log-disclosure-latest{grid-column:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#928572;font-size:10px;line-height:1.3}.game-log-disclosure-chevron{grid-column:2;grid-row:1 / 3;color:#9d8c70;transition:transform .16s ease}.game-log-disclosure[open]>summary .game-log-disclosure-chevron{transform:rotate(180deg)}.game-log-disclosure-content{padding-top:8px}@media(prefers-reduced-motion:reduce){.game-log-disclosure-chevron{transition:none}}.parnas-scene{position:fixed;top:0;right:0;bottom:0;left:0;z-index:145;overflow:hidden;contain:strict;pointer-events:none;-webkit-user-select:none;user-select:none;--scene-accent: #b89955;font-family:inherit}.parnas-scene *,.parnas-scene *:before,.parnas-scene *:after{box-sizing:border-box;pointer-events:none}.parnas-scene-flight{position:absolute;left:0;top:0;width:0;height:0;will-change:transform,opacity;animation:parnas-scene-flight .65s cubic-bezier(.22,.55,.32,1) both;animation-delay:var(--scene-delay, 0ms)}.parnas-scene-gem-flight>.gem{position:absolute;inset:-15px auto auto -15px;filter:drop-shadow(0 3px 3px #30211350)}.parnas-scene-gem-trail{position:absolute;left:-4px;top:7px;width:8px;height:29px;border-radius:50%;background:linear-gradient(var(--scene-accent),transparent);opacity:.32;transform:rotate(24deg);transform-origin:50% 0}.parnas-scene-card-flight{animation-duration:.72s}.parnas-scene-card{position:absolute;width:var(--scene-card-width, 70px);aspect-ratio:2 / 3;left:calc(var(--scene-card-width, 70px) / -2);top:calc(var(--scene-card-width, 70px) * -.75);overflow:hidden;isolation:isolate;border:1px solid #d4bc83;border-radius:6px;background:#f4ecdc;box-shadow:0 5px 15px #352b2940,0 0 0 2px #fff9e76e}.parnas-scene-card>.art,.parnas-scene-court-seal>.art{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:hidden}.parnas-scene-card>.art>svg,.parnas-scene-court-seal>.art>svg{display:block;width:100%;height:100%}.parnas-scene-card-gem{position:absolute;right:5px;top:5px;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#282735ae;border:1px solid #d9c999a3}.parnas-scene-card-score{position:absolute;left:7px;top:5px;color:#fff8e9;font:600 22px/1.1 Georgia,serif;text-shadow:0 1px 4px #291d1d}.parnas-scene-card-foil{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(116deg,transparent 25%,#fff9e841 45%,#fff9e811 54%,transparent 68%);transform:translate(-110%);animation:parnas-scene-foil .72s ease-out both}.parnas-scene-card-back{display:flex;align-items:center;justify-content:center;color:#eadba6;background:radial-gradient(ellipse at 50% 30%,#3c5360,#273645 74%)}.parnas-scene-card-back-line{position:absolute;top:5px;right:5px;bottom:5px;left:5px;border:1px solid #b8a4748c;border-radius:3px}.parnas-scene-card-back-line:after{content:"";position:absolute;width:35px;height:35px;border:1px solid #b8a4748c;left:50%;top:50%;transform:translate(-50%,-50%) rotate(45deg)}.parnas-scene-card-back-mark{position:absolute;bottom:10px;font:11px Georgia,serif;color:#d9c593}.parnas-scene-landing{position:absolute;width:0;height:0;opacity:0;animation:parnas-scene-land .37s ease-out both;animation-delay:var(--scene-delay, 0ms)}.parnas-scene-landing-ring{position:absolute;inset:-21px auto auto -31px;width:62px;height:42px;border:1px solid var(--scene-accent);border-radius:50%;box-shadow:inset 0 0 15px color-mix(in srgb,var(--scene-accent) 20%,transparent)}.parnas-scene-label{position:absolute;bottom:25px;left:0;transform:translate(-50%);white-space:nowrap;padding:5px 9px;color:#fff9ee;background:#393329ed;border:1px solid #c8ae746e;border-radius:5px;font-size:11px;font-weight:600;line-height:1.3;box-shadow:0 3px 10px #1c182522}.parnas-scene-court{position:absolute;width:0;height:0;animation:parnas-scene-court 1.08s ease-out both}.parnas-scene-court-seal{position:absolute;left:-35px;top:-46px;width:70px;height:70px;overflow:hidden;border:1px solid #dbc589;border-radius:50%;background:#eee6d5;box-shadow:0 0 0 3px #fff9e58c,0 5px 20px #312b3040}.parnas-scene-court-seal>.art{opacity:.76}.parnas-scene-court-seal>svg{position:absolute;left:19px;top:20px;color:#fff6d8;filter:drop-shadow(0 1px 3px #2c2430)}.parnas-scene-court-orbit{position:absolute;left:-51px;top:-62px;width:102px;height:102px;border:1px solid var(--scene-accent);border-left-color:transparent;border-right-color:transparent;border-radius:50%;opacity:.65;animation:parnas-scene-orbit 1.08s cubic-bezier(.16,.6,.22,1) both}.parnas-scene-court-orbit-inner{inset:-57px auto auto -46px;width:92px;height:92px;border-top-color:transparent;border-bottom-color:transparent;border-left-color:#c8aa6b;border-right-color:#c8aa6b;animation-direction:reverse}.parnas-scene-court-score{position:absolute;left:0;top:16px;transform:translate(-50%);display:flex;align-items:baseline;gap:2px;padding:3px 10px;color:#fff5d8;background:#514537;border:1px solid #c9b27a;border-radius:20px;font:24px/1.1 Georgia,serif;box-shadow:0 3px 12px #342a3226}.parnas-scene-court-score small{font:10px/1.1 sans-serif}.parnas-scene-court-title{position:absolute;top:58px;left:0;transform:translate(-50%);width:max-content;max-width:170px;padding:5px 10px;border:1px solid #cbb7818c;border-radius:4px;color:#fcf8ec;background:#39332ded;text-align:center;text-wrap:balance;font-size:11px;font-weight:600;line-height:1.4}.parnas-scene-turn-frame{position:absolute;border-radius:14px;border:1px solid #91b39f;box-shadow:0 0 0 3px #9bbf9d24,inset 0 0 18px #a6c3a318;animation:parnas-scene-turn .68s ease-out both}.parnas-scene-reduced .parnas-scene-landing,.parnas-scene-reduced .parnas-scene-court,.parnas-scene-reduced .parnas-scene-turn-frame{animation:parnas-scene-reduced .18s linear both;animation-delay:0ms}.parnas-scene-reduced .parnas-scene-court-orbit{animation:none}@keyframes parnas-scene-flight{0%{transform:translate3d(var(--scene-from-x),var(--scene-from-y),0) rotate(0);opacity:0}8%{opacity:1}44%{transform:translate3d(var(--scene-arc-x),var(--scene-arc-y),0) rotate(var(--scene-tilt));opacity:1}84%{opacity:1}to{transform:translate3d(var(--scene-to-x),var(--scene-to-y),0) rotate(0);opacity:0}}@keyframes parnas-scene-foil{20%{transform:translate(-110%)}85%,to{transform:translate(110%)}}@keyframes parnas-scene-land{0%{opacity:0;transform:translateY(2px)}30%{opacity:1;transform:translateY(0)}70%{opacity:1}to{opacity:0;transform:translateY(-7px)}}@keyframes parnas-scene-court{0%{opacity:0;transform:translateY(7px)}24%,72%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-5px)}}@keyframes parnas-scene-orbit{0%{transform:rotate(-30deg);opacity:0}20%{opacity:.65}to{transform:rotate(35deg);opacity:0}}@keyframes parnas-scene-turn{0%{opacity:0}32%{opacity:1}to{opacity:0}}@keyframes parnas-scene-reduced{0%,70%{opacity:1}to{opacity:0}}@media(prefers-reduced-motion:reduce){.parnas-scene-flight{display:none}.parnas-scene-card-foil,.parnas-scene-court-orbit{animation:none}.parnas-scene-landing,.parnas-scene-court,.parnas-scene-turn-frame{animation:parnas-scene-reduced .18s linear both;animation-delay:0ms}}.inactivity-result{text-align:center;padding:8px 0 20px}.inactivity-result-icon{display:grid;place-items:center;width:68px;height:68px;margin:0 auto 18px;border:1px solid #ddcfb3;border-radius:50%;color:#897247;background:#f3ecde}.inactivity-result h3{margin:0 0 12px;font-size:19px;line-height:1.55;color:#554c3d;word-break:keep-all}.inactivity-result p{margin:0;color:#5a6f60;font-size:13px;line-height:1.7}.inactivity-result .inactivity-result-note{margin-top:12px;color:#8c806c;font-size:12px;word-break:keep-all}.app.game-active .game-toolbar{min-height:64px;padding-block:7px;gap:10px}.app.game-active .turn-indicator{flex:1 1 auto;gap:10px;font-size:15px}.app.game-active .turn-announcement{overflow-wrap:anywhere;animation:turn-arrive .5s ease-out}.app.game-active .turn-countdown{display:flex;align-items:center;gap:8px;margin-left:auto;padding:5px 10px;border:1px solid #c6d8cd;background:#f0f7f2;border-radius:9px;flex-shrink:0}.app.game-active .turn-countdown small{color:#486b5b;font-size:11px}.app.game-active .turn-countdown time{font-size:32px;line-height:1.05;letter-spacing:-1px;margin:0}.app.game-active .is-urgent .turn-countdown{border-color:#dc9e88;background:#fff0e7}.app.game-active .is-urgent .turn-countdown small{color:#9e3926}.app.game-active .game-tools{flex-shrink:0;flex-wrap:wrap;justify-content:flex-end;gap:10px}.app.game-active .game-tools .text-button,.app.game-active .game-menu summary{font-size:12px}.app.game-active .game-menu>div{z-index:90;gap:12px;width:220px;max-width:calc(100vw - 28px)}.app.game-active .game-menu>div .text-button{min-height:36px;text-align:left}.app.game-active .game-toolbar.my-turn .turn-announcement{color:#245d49}.app.game-active .player-panel.current{border-color:#3c8466;box-shadow:0 0 0 3px #4b92602b,0 5px 16px #315e4220;background:#f0f8f0;animation:current-seat-arrive .6s ease-out}.app.game-active .player-panel.current .player-status{font-weight:800;color:#226346}.app.game-active:has(.game-toolbar.my-turn) .personal-assets{border-color:#6b987e}.app.game-active .player-resource-heading,.app.game-active .player-meta{font-size:12px}.app.game-active .affordable-legend{font-size:11px;white-space:normal;text-align:right}.app.game-active .game-activity{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;min-height:48px;margin:0 0 12px;padding:7px 10px;background:#f3efe5;border:1px solid #e0d6c4;border-radius:9px;color:#534836;transition:background-color .2s,border-color .2s}.app.game-active .game-activity.is-fresh{background:#eaf4ed;border-color:#83a88f}.app.game-active .game-activity-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:#fffdf6;flex-shrink:0;color:#867043}.app.game-active .is-fresh .game-activity-icon{animation:action-arrive .65s ease-out;color:#36704c}.app.game-active .game-activity-copy{display:grid;flex:1;min-width:100px;gap:2px;font-size:13px;line-height:1.45;overflow-wrap:anywhere}.app.game-active .game-activity-copy small{font-size:10px;color:#776e5e}.app.game-active .game-activity-detail{display:flex;align-items:center;flex-wrap:wrap;gap:7px;font-size:13px}.app.game-active .game-activity-detail>span{display:inline-flex;align-items:center;gap:3px}.app.game-active .game-activity-detail small{font-size:10px;color:#776e5e}.app.game-active .game-activity-points{padding:3px 6px;background:#fff8d9;color:#7b591c;border-radius:5px}@keyframes turn-arrive{0%{opacity:.55;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}@keyframes current-seat-arrive{0%{box-shadow:0 0 0 6px #4b926055}to{box-shadow:0 0 0 3px #4b92602b,0 5px 16px #315e4220}}@keyframes action-arrive{0%{transform:translateY(4px)}35%{transform:translateY(-3px)}to{transform:translateY(0)}}@media(max-width:1180px){.app.game-active .turn-countdown{gap:4px;padding:5px 7px}.app.game-active .turn-countdown small{display:none}.app.game-active .game-tools{gap:8px}}@media(min-width:861px){.app.game-active .nobles-row>.noble{max-width:calc(var(--card-h) * .7);justify-self:center}}@media(max-width:860px){.app.game-active .game-toolbar{flex-wrap:wrap}.app.game-active .turn-indicator{flex-basis:100%;font-size:15px}.app.game-active .turn-countdown small{display:inline}.app.game-active .turn-countdown time{font-size:30px}.app.game-active .game-tools{width:100%;justify-content:flex-end}.app.game-active .game-activity{gap:5px 8px;padding:7px 8px;margin-bottom:10px}.app.game-active .game-activity-detail{margin-left:auto}.app.game-active .affordable-legend{font-size:10px;max-width:55%}}@media(prefers-reduced-motion:reduce){.app.game-active .turn-announcement,.app.game-active .player-panel.current,.app.game-active .is-fresh .game-activity-icon{animation:none}.app.game-active .game-activity{transition:none}}.victory-scene{width:min(820px,calc(100vw - 28px));max-width:none;max-height:calc(100dvh - 28px);padding:0;overflow:auto;border:1px solid #b6a17a;border-radius:18px;background:#171a26;color:#f8eedb;box-shadow:0 30px 120px #0009}.victory-scene[open]{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.victory-scene::backdrop{background:#080d1ae8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.victory-portrait{min-width:0;overflow:hidden;background:#101321}.victory-portrait .portrait-reveal{width:100%;aspect-ratio:3/4;border-radius:0;margin:0}.victory-portrait .portrait-reveal-score,.victory-portrait .portrait-reveal-caption{display:none}.victory-address{align-self:center;min-width:0;padding:32px;animation:victory-enter .65s ease both}.victory-kicker{display:flex;gap:8px;align-items:center;font-size:12px;letter-spacing:.16em;color:#d4ba86}.victory-address h2{margin:22px 0 30px;font-family:var(--serif);font-size:clamp(24px,3vw,34px);overflow-wrap:anywhere;color:#fff5df}.victory-address h2 small{display:block;font-family:var(--sans);font-size:13px;color:#cbc1b4;margin-top:9px;font-weight:400}.victory-speaker{color:#e5c68c;font-size:13px;margin:0 0 12px}.victory-address blockquote{margin:0;font-family:var(--serif);font-size:18px;line-height:1.9;word-break:keep-all;overflow-wrap:anywhere}.victory-continue{width:100%;display:flex;justify-content:space-between;align-items:center;padding:13px 16px;margin-top:30px;background:#dfc694;color:#25202a;border:1px solid #f0d8a9;border-radius:7px;font-weight:700}.victory-continue:focus-visible{outline:3px solid #fff;outline-offset:4px}@keyframes victory-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media(max-width:600px){.victory-scene[open]{grid-template-columns:1fr}.victory-portrait{display:flex;justify-content:center;background:radial-gradient(ellipse at center,#3e4050,#171a26 70%)}.victory-portrait .portrait-reveal{width:min(100%,32.25dvh)}.victory-address{padding:18px 22px 22px}.victory-kicker{margin:0}.victory-address h2{margin:12px 0 18px;font-size:24px}.victory-address blockquote{font-size:15px;line-height:1.7}.victory-continue{margin-top:20px}}@media(prefers-reduced-motion:reduce){.victory-address{animation:none}}:root{font-family:Noto Sans KR,sans-serif;color:#eee9dc;background:#122c26;font-synthesis:none;--bg: #122c26;--deep: #0d211d;--surface: #17352c;--gold: #c6a66b;--gold-light: #e1c18a;--ivory: #eee9dc;--muted: #a1b0a4;--line: rgba(198, 166, 107, .22);--white: #dce5df;--blue: #5d99e9;--green: #57b99c;--red: #df7878;--black: #919798;--serif: "Noto Serif KR", Georgia, serif}*{box-sizing:border-box}body{margin:0;min-width:360px}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer}button:disabled{cursor:default}button:focus-visible,a:focus-visible{outline:2px solid var(--gold-light);outline-offset:5px}button{transition:background .18s,transform .18s,border-color .18s,box-shadow .18s}button:not(:disabled):active{transform:translateY(1px)}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}button svg{flex-shrink:0}button:disabled:not(.noble):not(.development-card){opacity:.43}input{width:100%;height:50px;background:#0e251f;border:1px solid #3b5143;border-radius:5px;padding:0 16px;color:var(--ivory);font-size:14px;outline:none}input::placeholder{color:#82958a}input:focus{border-color:var(--gold);box-shadow:0 0 0 3px #c6a66b18}label{display:block;font-size:12px;font-weight:500;color:#d6dacd;margin:23px 0 10px}.app{min-height:100vh;background:radial-gradient(ellipse at 25% 38%,#24463766,transparent 64%)}.app:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.027;z-index:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' opacity='.7' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}.site-header{height:85px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 42px;position:relative;z-index:2;background:#112b2599}.wordmark{display:flex;align-items:center;gap:13px;color:#dfc289}.wordmark span{font:500 32px/1 Cormorant Garamond,Georgia,serif;letter-spacing:5px}.header-motto{display:flex;align-items:center;gap:23px;font-family:var(--serif);font-size:12px;color:#c7c5ad;letter-spacing:1px}.header-motto i{width:48px;height:1px;background:linear-gradient(90deg,transparent,#a68d54)}.header-motto i:last-child{transform:rotate(180deg)}.header-actions{display:flex;align-items:center;gap:26px}.connection{display:flex;align-items:center;gap:7px;color:#a89780;font-size:11px}.connection.connected{color:#a3bba5}.text-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;background:transparent;padding:8px 0;color:#d1c3a2;font-size:12px;white-space:nowrap}.text-button:hover:not(:disabled){color:var(--gold-light)}.icon-button{border:1px solid transparent;background:transparent;border-radius:5px;min-width:32px;min-height:32px;display:inline-flex;align-items:center;justify-content:center;color:var(--muted)}.icon-button:hover:not(:disabled){color:var(--ivory);background:#ffffff0b}.primary,.secondary{border:1px solid #d3b47b;border-radius:5px;min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:0 21px;font-size:13px;font-weight:600;white-space:nowrap}.primary{background:linear-gradient(115deg,#dbbb80,#bd9b5f);color:#172a20;box-shadow:inset 0 1px #ffffff45,0 4px 10px #0002}.primary:hover:not(:disabled){background:linear-gradient(115deg,#e5c68e,#cbaa6a);box-shadow:0 5px 20px #c6a66b22}.secondary{background:transparent;border-color:#7e714e;color:#dac49c}.secondary:hover:not(:disabled){background:#c6a66b12}.full{width:100%}.muted{color:var(--muted);font-size:13px;line-height:1.8}.fine-print{font-size:10px;color:#82978a;text-align:center;line-height:1.8;margin-top:24px}.art{background:#283b32}.gem{display:inline-block;vertical-align:middle;flex-shrink:0;filter:drop-shadow(0 1px 1px #0003)}.status-dot{width:6px;height:6px;background:#67776b;border-radius:50%;display:inline-block;flex-shrink:0}.status-dot.online{background:#88b994;box-shadow:0 0 8px #81bf8940}.lobby{max-width:1250px;margin:0 auto;min-height:calc(100vh - 85px);padding:60px 42px 30px;position:relative;display:grid;grid-template-columns:1fr 420px;align-content:center;column-gap:100px}.lobby-story{min-height:615px;position:relative;padding-top:10px}.tiny-ornament{color:var(--gold);font-size:18px;display:block;margin-bottom:17px}.lobby h1{font-family:var(--serif);font-size:43px;font-weight:400;line-height:1.55;letter-spacing:-1.5px}.lobby h1 em{font-style:normal;color:#e0c18a}.lobby-title p{font-size:13px;line-height:1.9;color:#aab6a7;margin-top:19px;font-weight:400}.lobby-art{height:280px;position:relative;margin-top:29px;margin-left:25px}.showcase-card{width:173px;height:222px;position:absolute;border:1px solid #b99b66;border-radius:8px;box-shadow:0 12px 35px #0007;overflow:hidden;background:#ede5d5}.showcase-card .art{height:177px;width:100%;background-size:400% 500%}.showcase-back{transform:rotate(-14deg);left:20px;top:5px}.showcase-front{transform:rotate(12deg);left:173px;top:20px}.showcase-card>.gem{position:absolute;right:13px;top:12px;filter:drop-shadow(0 3px 5px #0007)}.showcase-num{position:absolute;top:9px;left:11px;font-family:Cormorant Garamond,serif;font-weight:600;font-size:30px;color:#f5ebd7;text-shadow:0 1px 5px #000}.showcase-cost{height:44px;display:flex;align-items:center;justify-content:center;gap:9px;color:#2b3b30;font-size:14px;font-weight:600}.showcase-seal{width:64px;height:64px;position:absolute;bottom:25px;left:115px;border:5px double #b19a5d;border-radius:50%;background:#273e2b;box-shadow:0 8px 15px #0005;display:flex;align-items:center;justify-content:center;transform:rotate(-10deg)}.lobby-details{display:flex;gap:20px;color:#c2c5b4;font-size:12px;align-items:center;margin-top:4px}.lobby-details span{display:flex;gap:8px;align-items:center}.lobby-details i{height:3px;width:3px;background:#9d9269;border-radius:50%}.entry-panel{align-self:center;position:relative;padding:38px 32px 25px;border:1px solid #9b865d70;background:linear-gradient(150deg,#233e30a0,#142a2390);box-shadow:0 16px 70px #0002;border-radius:10px}.entry-panel:before,.entry-panel:after{content:"";position:absolute;width:15px;height:15px;pointer-events:none;border:1px solid #b29b66}.entry-panel:before{top:7px;left:7px;border-right:0;border-bottom:0}.entry-panel:after{bottom:7px;right:7px;border-left:0;border-top:0}.panel-emblem{width:54px;height:54px;border:1px solid #b8a06570;transform:rotate(45deg);margin:0 auto 31px;display:flex;align-items:center;justify-content:center;color:var(--gold)}.panel-emblem>svg{transform:rotate(-45deg)}.entry-panel h2{font-family:var(--serif);font-size:20px;text-align:center;font-weight:500;letter-spacing:-.8px;margin-bottom:12px}.entry-panel>.muted{text-align:center;font-size:12px}.entry-tabs{display:flex;border-bottom:1px solid #5c655052;margin-top:31px;gap:20px}.entry-tabs button{border:0;background:none;font-size:12px;color:#9baa9b;flex:1;padding:13px 0;position:relative}.entry-tabs button.active{color:var(--gold-light)}.entry-tabs button.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--gold)}.entry-panel form>.primary{margin-top:25px}.entry-foot{padding-top:24px;margin-top:25px;border-top:1px solid #7882632b;text-align:center;font-size:11px;color:#c3c9b7}.entry-foot .status-dot{margin-right:7px}.entry-foot small{display:block;color:#8fa18e;font-size:10px;margin-top:8px}.code-input{text-transform:uppercase;letter-spacing:3px}.code-input::placeholder{letter-spacing:0}.lobby-footer{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:16px;padding-top:30px;margin-top:10px;border-top:1px solid var(--line);color:#7f9485;font-size:10px}.lobby-footer span:first-child{font-family:Cormorant Garamond,serif;letter-spacing:3px;font-size:12px}.room-code{margin-top:23px;display:flex;flex-direction:column;align-items:center;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:10px}.room-code>span{font-size:10px;letter-spacing:1px;color:var(--muted)}.room-code strong{font-family:Cormorant Garamond,Georgia,serif;color:var(--gold-light);font-size:34px;letter-spacing:7px;line-height:1}.room-code .secondary{min-height:34px;font-size:11px;margin-top:4px}.lobby-seats{display:grid;gap:8px;margin:20px 0 23px}.lobby-seat{height:53px;display:flex;align-items:center;gap:11px;border-bottom:1px solid #aab09212;font-size:12px;color:#859b8a}.lobby-seat.occupied{color:#e4e6d7}.lobby-seat>span:nth-child(2){flex:1}.lobby-seat small{font-size:10px;color:#a4af9b}.lobby-seat svg{color:var(--gold)}.empty-avatar{width:34px;height:34px;border:1px dashed #6f806155;border-radius:50%;display:flex;align-items:center;justify-content:center}.empty-avatar svg{color:#677b67}.avatar{height:39px;width:39px;border-radius:50%;border:1px solid #ac985b90;flex-shrink:0}.lobby-seat .avatar{width:34px;height:34px}.leave-button{display:flex;margin:13px auto 0;font-size:10px}.waiting-message{font-size:12px;color:var(--gold);text-align:center;padding:14px;background:#ac96600a;border:1px solid var(--line);border-radius:5px}.copy-fallback{font-size:10px;height:35px}.error-toast{position:fixed;top:99px;left:50%;transform:translate(-50%);background:#573f2b;border:1px solid #c59866;color:#fff1dd;max-width:90vw;z-index:100;box-shadow:0 8px 24px #0004;padding:9px 12px 9px 19px;display:flex;gap:16px;align-items:center;border-radius:6px;font-size:13px}.error-toast .icon-button{color:#ead6b2;flex-shrink:0}.connecting{padding:100px;text-align:center}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;max-width:1440px;margin:auto;gap:32px;padding:26px 38px 134px;position:relative}.board{min-width:0}.board-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.board-heading h1{font-family:var(--serif);font-weight:500;font-size:22px;letter-spacing:-.8px}.board-heading h1 span{font:500 10px Cormorant Garamond,Georgia,serif;color:#9baa94;letter-spacing:2.8px;margin-left:14px}.round-label{font-size:9px;letter-spacing:1.8px;color:#a4b09a;display:flex;gap:9px;align-items:center}.round-label b{font-family:Cormorant Garamond,serif;font-size:22px;color:var(--gold-light);font-weight:500}.round-label em{font-size:10px;font-style:normal;letter-spacing:0;color:var(--gold-light);padding:4px 7px;border:1px solid var(--line);border-radius:3px}.section-caption{display:flex;align-items:center;gap:7px;font-size:11px;color:#d4d4b9;margin-bottom:12px}.section-caption>svg{color:var(--gold)}.section-caption small{margin-left:auto;font-size:10px;color:#98ab98}.nobles-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:13px}.noble{height:84px;border:1px solid #ac936460;background:#e8e0cb;position:relative;display:flex;border-radius:5px;overflow:hidden;color:#25382d;padding:0;text-align:left;box-shadow:0 3px 9px #0002;cursor:default;min-width:0}.noble>.art{width:38%;height:100%;flex-shrink:0}.noble-info{padding:10px 8px;display:flex;flex-direction:column;justify-content:space-between;flex:1}.noble-info>div:first-child{display:flex;align-items:center;gap:5px}.noble-info>div:first-child svg{color:#947333}.noble-info>div:first-child b{font:600 25px/1 Cormorant Garamond,serif}.noble-info>div:first-child small{font-size:9px}.noble .costs{gap:7px;flex-wrap:wrap}.noble .cost{gap:2px;font-size:11px}.noble .cost .gem{width:13px;height:13px}.noble-name{position:absolute;left:0;right:0;bottom:0;background:#13291dec;color:#daccac;font-size:8px;text-align:center;padding:4px;opacity:0;transition:opacity .15s}.noble:hover .noble-name{opacity:1}.noble.eligible{cursor:pointer;outline:2px solid var(--gold);outline-offset:3px}.market{margin-top:22px;display:flex;flex-direction:column;gap:16px}.market-row{display:grid;grid-template-columns:74px minmax(0,1fr);gap:22px;align-items:center}.cards-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.development-card{aspect-ratio:1.13;border:1px solid #a2956b;border-radius:6px;padding:0;overflow:hidden;position:relative;background:#e8e2d0;box-shadow:0 4px 9px #0004;color:#23362d;min-width:0;display:block;width:100%;isolation:isolate}.development-card>.art{position:absolute;top:0;right:0;bottom:30px;left:0;background-size:400% 440%}.development-card:after{content:"";position:absolute;left:0;right:0;top:0;height:40%;background:linear-gradient(#06181199,transparent);pointer-events:none;z-index:0}.development-card:hover{transform:translateY(-3px)!important;border-color:#ead39a;box-shadow:0 6px 17px #0005}.development-card.selected{outline:2px solid #e9cc8c;outline-offset:4px;transform:translateY(-3px);box-shadow:0 0 24px #d2b97a25}.card-top{position:absolute;top:8px;left:10px;right:9px;display:flex;justify-content:space-between;align-items:center;z-index:2}.card-score{font:600 31px/.95 Cormorant Garamond,Georgia,serif;text-shadow:0 1px 4px #0006;color:#fff2d7}.card-score small{font-family:Noto Sans KR,sans-serif;font-size:9px;margin-left:3px;font-weight:400;color:#efead9}.card-bonus{width:34px;height:34px;background:#152d22b0;border:1px solid #e9d9ab60;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 3px #0003}.card-bonus .gem{height:24px;width:24px}.card-bottom{height:31px;position:absolute;bottom:0;left:0;right:0;padding:0 9px;background:linear-gradient(110deg,#efe8d7,#e4dac1);display:flex;align-items:center;justify-content:space-between}.costs{display:flex;gap:8px;align-items:center}.cost{display:inline-flex;align-items:center;gap:3px;font-family:Noto Sans KR,sans-serif;font-size:12px;line-height:1}.cost b{font-weight:600}.cost .gem{width:15px;height:15px}.buyable-dot{height:5px;width:5px;background:#356d51;border-radius:50%;position:absolute;right:4px;bottom:4px}.deck{height:calc(100% - 8px);min-height:100px;max-height:146px;border:1px solid #a58b5960;border-radius:6px;background:#204336;box-shadow:3px 3px #14291e,4px 4px #8d865a80,6px 6px #13281e,7px 7px #8d865a60,0 7px 13px #0004;padding:5px;color:#c7b278;position:relative;overflow:hidden}.deck:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;opacity:.11;background:repeating-linear-gradient(45deg,transparent 0 12px,#c6a66b 12px 13px,transparent 13px 26px)}.deck-3{background:#283b44}.deck-2{background:#514528}.deck-1{background:#204638}.deck-border{border:1px solid #a18a5350;position:relative;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border-radius:2px;padding:7px 0}.deck-border:before,.deck-border:after{content:"✦";position:absolute;font-size:8px;color:#bdab7080;left:4px}.deck-border:before{top:2px}.deck-border:after{bottom:2px;left:auto;right:4px}.deck strong{font-family:Cormorant Garamond,Georgia,serif;font-size:24px;font-weight:400;line-height:1;letter-spacing:3px}.deck small{font-size:9px;color:#c2b99a}.deck-gem{margin-bottom:0}.deck-gem .gem{opacity:.68;width:24px;height:24px}.empty-card{border:1px dashed #acaf7933;border-radius:5px;aspect-ratio:1.13;display:flex;align-items:center;justify-content:center;color:#80957e;font-size:10px}.bank-section{border-top:1px solid var(--line);margin-top:25px;padding-top:16px}.bank{display:flex;justify-content:space-between;max-width:810px;margin:19px auto 0;padding:0 15px}.token-column{display:flex;flex-direction:column;align-items:center;gap:11px;min-width:68px}.token-column>span{font-size:10px;color:#c8cebd;white-space:nowrap}.token-column>span small{font-size:9px;color:#96a58e}.token{width:62px;height:62px;border:4px solid #acb6a770;outline:1px solid #0005;outline-offset:1px;border-radius:50%;background:radial-gradient(circle at 40% 30%,#71807b,#283b32);display:flex;align-items:center;justify-content:center;position:relative;box-shadow:0 3px #101e16,0 5px #6c806759,0 8px 14px #0004,inset 0 0 0 2px #ffffff16;transition:.2s}.token:after{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:3px;border:1px dashed #ffffff2a;border-radius:50%;pointer-events:none}.token-blue{background:radial-gradient(circle at 40% 30%,#36618a,#1a364f);border-color:#497699}.token-green{background:radial-gradient(circle at 40% 30%,#367759,#184a37);border-color:#4c8a68}.token-red{background:radial-gradient(circle at 40% 30%,#99534b,#572823);border-color:#a57168}.token-black{background:radial-gradient(circle at 40% 30%,#4d5757,#1d2a29);border-color:#697475}.token-gold{background:radial-gradient(circle at 40% 30%,#b6a16a,#726133);border-color:#c7af71}.token:disabled{opacity:.8!important}.token:not(:disabled):hover{transform:translateY(-4px)}.token.token-selected{transform:translateY(-6px);outline:2px solid #e0c288;outline-offset:5px;box-shadow:0 6px 20px #c6a66b25}.stock-count{position:absolute;right:-6px;bottom:-5px;min-width:21px;height:21px;display:flex;align-items:center;justify-content:center;font-family:Cormorant Garamond,serif;font-size:17px;font-weight:600;color:#ead7ac;background:#1b3227;border-radius:50%;border:1px solid #7e825675;z-index:1}.selected-count{position:absolute;left:-5px;top:-8px;color:#173524;font-size:12px;width:21px;height:21px;display:flex;align-items:center;justify-content:center;background:#e1c289;border-radius:50%;font-weight:700;z-index:1}.table-sidebar{border-left:1px solid var(--line);padding-left:25px;min-width:0}.sidebar-heading{display:flex;justify-content:space-between;align-items:center;margin:4px 0 19px}.sidebar-heading h2{font-family:var(--serif);font-size:19px;font-weight:500}.sidebar-heading>span{font-size:10px;color:#a0b09b}.players{display:flex;flex-direction:column;gap:12px}.player-panel{padding:13px 12px 12px;border:1px solid #84916a37;border-radius:6px;background:#0e271f55;position:relative}.player-panel.current{border-color:#c0a269a0;background:linear-gradient(110deg,#c6a66b13,transparent)}.player-heading{display:flex;align-items:center;gap:9px}.player-heading>div:not(.avatar){flex:1}.player-heading strong{font-size:12px;font-weight:500;display:block;max-width:125px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-heading strong small{font-size:9px;background:#c3ac6930;padding:1px 4px;border-radius:3px;margin-left:3px;color:#e0c798}.player-status{font-size:9px;color:#8ba08c;display:block;margin-top:3px}.current .player-status{color:#c9b374}.player-score{font-family:Cormorant Garamond,serif;font-size:30px;color:var(--gold-light);white-space:nowrap}.player-score small{font-size:14px;color:#8ea087}.player-inventory{display:flex;align-items:center;justify-content:space-between;margin-top:13px;color:#dddcca;font-size:10px;gap:4px}.player-inventory>span:not(.inventory-label){display:inline-flex;gap:4px;align-items:center}.player-inventory b{font-weight:400;min-width:5px}.player-inventory .inventory-label{font-size:9px;color:#98a98e;margin-right:4px}.player-inventory.discounts{margin-top:9px}.discounts i{width:9px;height:11px;border-radius:2px;box-shadow:1px 1px #ffffff50}.discounts button{border:0;background:none;color:#a7b39a;font-size:10px;display:flex;align-items:center;gap:3px;padding:0}.score-track{height:2px;background:#90a17e18;margin-top:12px}.score-track>div{height:2px;background:#c6a66b;transition:width .3s}.turn-panel{margin:19px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:17px 3px}.turn-panel>div{display:flex;align-items:center;gap:10px}.turn-panel svg{color:#bca16b}.turn-panel strong{font-family:var(--serif);font-size:15px;font-weight:500;color:#d4c49e}.turn-panel p{font-size:11px;line-height:1.9;color:#9caf98;margin:9px 0 0 30px;word-break:keep-all}.turn-panel.my-turn{background:#c6a66b08}.turn-panel .secondary{margin-top:12px}.reserved-section h3,.activity h3{font-size:11px;font-weight:500;color:#c4cbb5;display:flex;gap:7px;align-items:center;margin-bottom:11px}.reserved-section h3 span{margin-left:auto;color:#95a58d;font-size:10px}.reserved-section h3 svg{color:#aa985f}.reserved-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.reserved-empty{aspect-ratio:1;border:1px dashed #9ca67638;border-radius:4px;display:flex;align-items:center;justify-content:center;color:#788c7070}.small-card{aspect-ratio:1}.small-card .card-bottom{height:21px;padding:0 4px}.small-card .card-bottom .costs{gap:3px}.small-card .cost{font-size:8px;gap:1px}.small-card .cost .gem{width:9px;height:9px}.small-card .card-top{left:5px;top:5px;right:4px}.small-card .card-score{font-size:21px}.small-card .card-score small{display:none}.small-card .card-bonus{width:22px;height:22px}.small-card .card-bonus .gem{width:16px;height:16px}.small-card>.art{bottom:21px}.activity{margin-top:22px}.activity-list{max-height:184px;overflow:auto;scrollbar-width:thin;scrollbar-color:#6b79534d transparent}.activity-list>div{display:flex;gap:8px;border-bottom:1px solid #88956d1c;padding:9px 0}.log-mark{width:4px;height:4px;background:#9ca377;margin-top:6px;border-radius:50%;flex-shrink:0}.activity-list p{font-size:10px;color:#acbca1;line-height:1.7;flex:1;word-break:keep-all}.activity-list small{font-size:8px;line-height:2;color:#819477}.table-code{border-top:1px solid var(--line);margin-top:15px;padding-top:13px;display:flex;justify-content:space-between;align-items:center;gap:6px;flex-wrap:wrap}.table-code>span{font-size:9px;color:#8f9f89}.table-code b{color:#c9c7ac;letter-spacing:1px;margin-left:6px;font-size:11px;font-weight:400}.table-code .text-button{font-size:9px}.table-code .text-button svg{width:12px;height:12px}.action-dock{position:fixed;bottom:0;left:0;right:0;z-index:10;background:#0d241fef;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid #aa955354;box-shadow:0 -8px 28px #071b1418}.dock-inner{max-width:1440px;margin:auto;min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 38px}.dock-message{display:flex;gap:15px;align-items:center;min-width:0}.dock-symbol{display:flex;align-items:center;justify-content:center;height:42px;width:42px;border:1px solid var(--line);border-radius:50%;color:var(--gold);flex-shrink:0}.dock-message strong{font-family:var(--serif);font-weight:500;color:#e1d7b9;font-size:15px;line-height:1.5}.dock-message p{font-size:10px;color:#95a68f;line-height:1.8;margin-top:6px}.dock-actions{display:flex;gap:11px;align-items:center;flex-shrink:0}.dock-actions .primary{min-width:178px}.dock-actions .secondary{font-size:11px;gap:6px}.dock-actions .secondary>span{font-size:9px;color:#aeb28f}.pass-button{font-size:9px;color:#a7af9b}.modal{padding:0;width:calc(100% - 32px);max-width:490px;background:#19362b;color:var(--ivory);border:1px solid #a28f616e;border-radius:10px;box-shadow:0 30px 100px #0009;max-height:calc(100dvh - 48px);overflow:auto}.modal.wide{max-width:680px}.modal::backdrop{background:#04170fe0;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.modal-content{padding:30px}.modal-title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.modal-title h2{font-family:var(--serif);font-size:21px;font-weight:500;line-height:1.6}.modal-title .icon-button{align-self:flex-start}.rule-intro{font-size:13px;line-height:1.8;color:#a9b99f}.rule-grid{display:grid;grid-template-columns:1fr 1fr;gap:27px 28px;margin:26px 0}.rule-number{font-family:Cormorant Garamond,serif;font-size:25px;color:var(--gold)}.rule-grid h3{font-size:13px;font-weight:500;margin:9px 0}.rule-grid p{font-size:12px;line-height:1.9;color:#b2beaa;word-break:keep-all}.rule-note{display:flex;gap:12px;align-items:flex-start;border-top:1px solid var(--line);padding:20px 0 25px}.rule-note svg{flex-shrink:0;color:var(--gold);margin-top:4px}.rule-note p{font-size:11px;line-height:1.9;color:#b9c4ac}.return-list{display:flex;flex-direction:column;margin:20px 0}.return-list>div{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:12px}.return-list>div>span{flex:1}.return-list small{font-size:10px;color:var(--muted)}.return-list b{min-width:14px;text-align:center}.return-list .icon-button{border:1px solid var(--line)}.noble-choices{display:grid;gap:16px;margin:25px 0 5px}.noble-choices .noble{height:95px}.noble-choices .noble>.art{width:90px}.noble-choices .noble-info{padding:12px 18px}.noble-choices .noble-name{opacity:1;left:auto;right:12px;bottom:auto;top:15px;background:none;color:#344437;font-size:12px}.collection-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:20px}.collection-grid .card-score{font-size:24px}.empty-message{text-align:center;color:var(--muted);padding:45px 0}.winner-icon{color:var(--gold);text-align:center;margin:28px auto 18px}.winner-name{font-family:var(--serif);text-align:center;font-size:23px;font-weight:500;color:var(--gold-light)}.results-list{margin:30px 0}.results-list>div{display:flex;justify-content:space-between;font-size:12px;border-bottom:1px solid var(--line);padding:15px 0;color:#bac7b1}.results-list b{color:var(--gold-light)}@media(min-width:1500px){.lobby{padding-top:70px;padding-bottom:40px}.lobby-story{min-height:640px}.lobby h1{font-size:47px}.lobby-art{margin-top:42px}.game-layout{gap:36px;padding-top:32px}.market{gap:18px}.development-card{aspect-ratio:1.2}.bank{margin-top:22px}}@media(max-width:1150px){.site-header{padding:0 25px;height:74px}.header-motto{display:none}.lobby{column-gap:45px;grid-template-columns:1fr 375px;padding:45px 35px 25px;min-height:calc(100vh - 74px)}.lobby h1{font-size:35px}.lobby-art{margin-left:0;transform:scale(.9);transform-origin:left center}.entry-panel{padding:32px 26px 24px}.entry-panel h2{font-size:18px}.game-layout{grid-template-columns:minmax(0,1fr) 240px;gap:22px;padding:22px 24px 126px}.table-sidebar{padding-left:20px}.market-row{grid-template-columns:55px minmax(0,1fr);gap:15px}.cards-row{gap:11px}.deck{min-height:85px}.deck-gem{display:none}.development-card{aspect-ratio:1.02}.card-top{left:7px;right:6px}.card-score{font-size:27px}.card-bonus{width:28px;height:28px}.card-bonus .gem{width:21px;height:21px}.card-bottom{padding:0 6px}.costs{gap:5px}.cost{font-size:10px;gap:2px}.cost .gem{width:12px;height:12px}.board-heading h1 span{display:none}.nobles-row{gap:10px;grid-template-columns:repeat(auto-fit,minmax(105px,1fr))}.noble{height:74px}.noble-info{padding:8px 6px}.noble .costs{gap:4px}.noble .cost{font-size:10px}.noble .cost .gem{width:11px;height:11px}.bank{padding:0}.token{width:53px;height:53px}.token>.gem{width:32px;height:32px}.token-column{min-width:50px}.token-column>span{font-size:9px}.token-column>span small{display:none}.player-panel{padding:11px 9px}.player-inventory{gap:3px}.player-inventory .inventory-label{margin-right:0;font-size:8px}.player-inventory>span:not(.inventory-label){gap:2px}.player-inventory .gem{width:11px;height:11px}.player-heading .avatar{width:34px;height:34px}.player-score{font-size:26px}.player-heading strong{font-size:11px;max-width:90px}.turn-panel strong{font-size:13px}.turn-panel p{font-size:10px;margin-left:0}.dock-inner{padding:15px 24px}.dock-message strong{font-size:13px}.dock-symbol{display:none}.dock-actions .primary{min-width:150px;font-size:12px}.dock-actions{gap:8px}.dock-actions .secondary{padding:0 12px}.dock-actions .secondary>span{display:none}.dock-message p{max-width:370px}.small-card .costs{gap:2px}.small-card .cost{font-size:7px}.small-card .cost .gem{width:7px;height:7px}}@media(max-width:820px){.site-header{height:70px;padding:0 22px}.wordmark span{font-size:28px;letter-spacing:4px}.wordmark>svg{width:19px}.header-actions{gap:19px}.connection span{display:none}.lobby{grid-template-columns:1fr 350px;gap:28px;padding:40px 24px 24px}.lobby h1{font-size:29px}.lobby-title p{font-size:11px}.lobby-story{min-height:520px}.lobby-art{transform:scale(.72);height:240px}.lobby-details{font-size:10px;gap:10px}.entry-panel{padding:31px 24px 23px}.entry-panel h2{font-size:18px}.game-layout{display:flex;flex-direction:column;padding:24px 22px 150px;gap:30px}.table-sidebar{display:grid;grid-template-columns:1fr 1fr;gap:14px 24px;border-left:0;border-top:1px solid var(--line);padding:20px 0 0}.sidebar-heading{grid-column:1/-1;margin:0}.players{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.player-heading strong{max-width:150px}.turn-panel{margin:0;border-top:0}.activity{margin:0;grid-column:1/-1}.activity-list{max-height:100px}.table-code{grid-column:1/-1;margin:0}.development-card{aspect-ratio:1.15}.card-top{left:10px;top:9px}.card-score{font-size:30px}.card-bonus{width:33px;height:33px}.card-bonus .gem{width:25px;height:25px}.market-row{grid-template-columns:60px 1fr;gap:16px}.cards-row{gap:13px}.costs{gap:8px}.cost{font-size:11px}.cost .gem{width:14px;height:14px}.bank{max-width:600px}.noble{height:80px}.noble .costs{gap:6px}.noble-info{padding:10px}.noble .cost{font-size:11px}.noble .cost .gem{width:13px;height:13px}.small-card{aspect-ratio:1.2}.small-card .card-top{left:6px;top:5px}.small-card .card-bonus{width:23px;height:23px}.small-card .card-score{font-size:22px}.small-card .card-bonus .gem{width:17px;height:17px}.small-card .cost{font-size:9px}.small-card .cost .gem{width:10px;height:10px}.dock-inner{padding:14px 22px;gap:16px;min-height:90px}.dock-message p{font-size:9px;max-width:260px}.dock-actions .primary{min-width:145px}.dock-actions .secondary,.dock-actions .primary{min-height:42px}.pass-button{display:inline-flex}}@media(max-width:650px){.site-header{height:66px;padding:0 19px}.wordmark{gap:8px}.wordmark span{font-size:26px;letter-spacing:3px}.header-actions{gap:13px}.header-actions .text-button{font-size:10px;gap:5px}.header-actions .text-button svg{width:15px;height:15px}.lobby{display:flex;flex-direction:column;align-items:center;padding:32px 23px 23px;gap:0;min-height:calc(100dvh - 66px)}.lobby-story{min-height:0;width:100%;text-align:center;display:flex;flex-direction:column;align-items:center;padding:0}.tiny-ornament{margin-bottom:10px;font-size:15px}.lobby h1{font-size:30px;line-height:1.5}.lobby-title p{font-size:11px;margin-top:14px;line-height:1.85}.lobby-art{height:184px;width:290px;transform:scale(.65);transform-origin:center top;margin:23px 0 -50px -45px;text-align:left}.lobby-details{gap:17px;margin:0 0 27px;font-size:10px}.lobby-details svg{width:13px;height:13px}.entry-panel{width:100%;max-width:420px;padding:30px 24px 24px}.entry-panel .panel-emblem{display:none}.entry-panel h2{font-size:18px}.entry-panel>.muted{font-size:11px}.entry-tabs{margin-top:18px}.entry-tabs button{font-size:11px}.entry-panel label{margin-top:19px}.entry-foot{margin-top:20px;padding-top:18px}.lobby-footer{flex-direction:column;margin-top:30px;gap:10px;padding-top:21px;width:100%;font-size:8px}.lobby-footer span:first-child{font-size:10px}.room-code{margin-top:18px}.game-layout{padding:20px 15px 158px;gap:25px}.board-heading{margin-bottom:20px}.board-heading h1{font-size:19px}.round-label{font-size:8px;letter-spacing:1px}.round-label b{font-size:20px}.round-label em{font-size:8px}.section-caption{font-size:10px;margin-bottom:10px}.section-caption small{font-size:9px}.nobles-row{display:flex;gap:9px;overflow-x:auto;padding:2px 1px 5px;scrollbar-width:thin;scrollbar-color:#9b986355 transparent}.noble{min-width:142px;height:69px;flex:1}.noble .costs{gap:5px}.noble .cost{font-size:10px}.noble .cost .gem{width:11px;height:11px}.noble-info{padding:7px}.noble-name{display:none}.market{gap:14px;margin-top:17px}.market-row{grid-template-columns:33px minmax(0,1fr);gap:9px}.cards-row{gap:7px}.development-card{aspect-ratio:.7;border-radius:4px}.development-card>.art{bottom:39px;background-size:400% 440%}.card-top{top:6px;left:5px;right:4px;align-items:flex-start}.card-score{font-size:24px}.card-score small{display:none}.card-bonus{width:23px;height:23px}.card-bonus .gem{width:17px;height:17px}.card-bottom{height:40px;padding:5px;align-items:center;justify-content:flex-start}.costs{gap:5px;flex-wrap:wrap}.card-bottom .costs{display:grid;grid-template-columns:repeat(2,1fr);column-gap:7px;row-gap:4px}.cost{font-size:10px;gap:3px}.cost .gem{height:11px;width:11px}.deck{min-height:80px;height:calc(100% - 10px);padding:3px;box-shadow:2px 2px #102819,3px 3px #8d865a80}.deck-border{gap:13px;padding:4px 0}.deck strong{font-size:18px;letter-spacing:0}.deck small{font-size:8px}.deck-border:before,.deck-border:after{display:none}.bank-section{padding-top:14px;margin-top:22px}.bank{margin-top:18px;gap:8px}.token{width:44px;height:44px;border-width:3px}.token>.gem{width:28px;height:28px}.stock-count{height:18px;min-width:18px;font-size:14px;right:-5px;bottom:-5px}.token-column{min-width:0;gap:12px}.token-column>span{font-size:8px}.selected-count{width:18px;height:18px;font-size:10px;top:-6px;left:-5px}.table-sidebar{gap:14px}.sidebar-heading h2{font-size:17px}.sidebar-heading>span{font-size:9px}.players{gap:9px}.player-panel{padding:10px 8px}.player-heading{gap:6px}.player-heading .avatar{width:30px;height:30px}.player-heading strong{font-size:10px;max-width:80px}.player-heading strong small{font-size:8px;margin:0}.player-score{font-size:24px}.player-score small{font-size:11px}.player-status{font-size:8px}.player-inventory{font-size:9px}.player-inventory .inventory-label{display:none}.discounts button{font-size:9px}.player-inventory .gem{width:12px;height:12px}.turn-panel strong{font-size:12px}.turn-panel>div{gap:7px}.turn-panel svg{width:16px;height:16px}.turn-panel p{font-size:9px}.reserved-section h3{font-size:10px}.reserved-row{gap:5px}.reserved-row .card-top{left:4px;top:4px;right:3px}.reserved-row .card-bonus{width:18px;height:18px}.reserved-row .card-bonus .gem{width:12px;height:12px}.reserved-row .card-score{font-size:18px}.small-card{aspect-ratio:.85}.small-card .card-bottom{height:29px;padding:3px}.small-card>.art{bottom:29px}.small-card .card-bottom .costs{column-gap:4px;row-gap:2px}.small-card .cost .gem{width:8px;height:8px}.small-card .cost{font-size:8px;gap:1px}.dock-inner{padding:12px 16px 15px;flex-wrap:wrap;gap:12px;min-height:120px}.dock-message{width:100%}.dock-message strong{font-size:12px}.dock-message p{font-size:9px;margin-top:3px;max-width:none}.dock-actions{width:100%;justify-content:flex-end}.dock-actions .primary,.dock-actions .secondary{flex:1;min-height:40px;font-size:11px}.dock-actions .icon-button{min-width:32px}.modal-content{padding:24px}.modal-title h2{font-size:18px}.rule-grid{gap:22px;grid-template-columns:1fr}.rule-number{float:left;margin-right:12px;font-size:24px}.rule-grid h3{margin:3px 0 11px}.rule-grid p{clear:both;font-size:11px}.rule-grid{margin-top:23px}.rule-note p{font-size:10px}.collection-grid{grid-template-columns:repeat(3,1fr);gap:10px}.collection-grid .development-card{aspect-ratio:.9}.return-list>div{gap:8px}.return-list small{display:block;font-size:9px;margin-top:3px}.noble-choices .noble{min-width:0}.noble-choices .noble-name{display:block}.error-toast{top:76px;font-size:11px;padding:8px 10px 8px 14px;gap:5px;width:calc(100% - 30px)}}@media(min-width:821px){.development-card:not(.small-card){aspect-ratio:auto;height:clamp(108px,calc((100dvh - 480px) / 3),155px)}.collection-grid .development-card{height:auto;aspect-ratio:1.1}.game-layout{padding-top:22px}.board-heading{margin-bottom:18px}.market{gap:14px;margin-top:18px}.bank-section{margin-top:20px;padding-top:13px}.bank{margin-top:16px}.player-heading strong{font-size:13px}.player-inventory{font-size:11px}.section-caption,.turn-panel p{font-size:12px}.activity-list p{font-size:11px}}@media(min-width:821px){.development-card:not(.small-card){height:clamp(108px,calc((100dvh - 510px) / 3),148px)}.collection-grid .development-card{height:auto;aspect-ratio:1.1}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}}.player-meta{display:flex;justify-content:space-between;color:#99ab91;font-size:9px;margin-top:10px}.player-meta+.score-track{margin-top:8px}.art{background:none!important;overflow:hidden}.art>svg{display:block;width:100%;height:100%}.turn-banner{max-width:1364px;margin:14px auto 0;padding:13px 20px;display:flex;align-items:center;gap:16px;border:1px solid #86987c66;border-radius:8px;background:#122a24;color:#d4ddcc}.turn-banner.active{border-color:#e5ca87;background:#32462a;color:#fff2cb;box-shadow:0 0 22px #e8c87518}.turn-banner strong{font-size:16px}.turn-banner>span{font-size:12px;margin-left:auto}.turn-banner button{font-size:11px;white-space:nowrap}.game-layout{max-width:1440px}.table-sidebar .bank-section{margin:0 0 24px;padding:0 0 18px;border-top:0;border-bottom:1px solid var(--line);grid-column:1/-1}.table-sidebar .bank{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 9px;margin-top:18px}.table-sidebar .token{width:60px;height:60px}.table-sidebar .token-column>span{font-size:10px}.table-sidebar .section-caption small{margin-left:auto;font-size:11px}.nobles-row{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.noble{min-height:94px}.noble>.art{width:32%}.noble-info{padding:9px 7px}.card-requirements{display:flex;gap:5px;flex-wrap:wrap}.card-requirements>span{display:inline-flex;align-items:center;gap:2px;font-size:11px;white-space:nowrap;color:#283d31}.card-requirements i{display:grid;place-items:center;width:16px;height:21px;border:1px solid #263c3266;border-radius:2px;color:#24342e;box-shadow:2px 2px #21392f44}.card-requirements small{font-size:9px}.card-requirements .met{color:#286f39}.noble .card-requirements{padding-bottom:2px}.nobles-section .section-caption{flex-wrap:wrap}.personal-assets{margin-top:24px;padding:18px;border:1px solid #81947566;border-radius:9px;background:#163229}.personal-assets.current{border-color:#d8bd7a}.personal-assets .section-caption strong{margin-left:auto;color:#f4d58a;font-size:13px}.my-token-row{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-bottom:18px}.my-token-row>div{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:center;padding:9px 4px;border-radius:6px;background:#091f1977}.my-token-row span{font-size:10px}.my-token-row b{font-size:19px;color:#f0e6cd}.owned-stacks{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:12px}.stack-label{display:flex;align-items:center;justify-content:center;gap:6px;font-size:11px;padding:6px 0}.stack-cards{max-height:none;overflow:visible;padding:2px 1px 12px;scrollbar-width:thin}.empty-stack{display:block;text-align:center;opacity:.4}.player-panel .owned-stacks{gap:4px;margin-top:7px}.player-panel .stack-label{font-size:9px;gap:3px}.player-panel .stack-cards{max-height:none;overflow:visible}.player-panel .player-meta{gap:6px;flex-wrap:wrap;font-size:10px}.player-meta strong{color:#efd294}.player-panel.self .avatar{position:relative;overflow:visible}.player-panel.self.current .avatar:after{content:"";position:absolute;top:-5px;right:-5px;bottom:-5px;left:-5px;border:2px dashed #f5d382;border-radius:50%;animation:turn-orbit 7s linear infinite;pointer-events:none}@keyframes turn-orbit{to{transform:rotate(360deg)}}.return-progress{padding:12px;background:#d3b97622;border:1px solid #e4c88666;border-radius:6px;color:#f6d795;font-size:13px;line-height:1.8}.modal-error{background:#6d2e2b;padding:10px;border-radius:5px;color:#fff;font-size:13px}.modal .secondary.full{margin-top:12px}.spectator-list{font-size:11px;color:#c3cdb6;line-height:1.8;margin:10px 0;overflow-wrap:anywhere}.order-roll-panel{padding:14px 0;display:grid;gap:9px}.order-roll-panel p{font-size:13px;color:#e7d4a6}.order-roll-panel small{font-size:10px;line-height:1.6;color:#adbda2}.order-roll-panel ol{display:flex;gap:12px;flex-wrap:wrap;list-style-position:inside}.order-roll-panel li{font-size:12px}.order-roll-panel li span{font-size:28px;vertical-align:middle;margin:0 5px}.entry-tabs button{flex:1;white-space:nowrap;font-size:12px}.action-dock .pass-button{display:inline-flex;border:1px solid #c7b17177;border-radius:6px;padding:10px;color:#efd9a4}@media(min-width:821px){.development-card:not(.small-card){height:auto;aspect-ratio:1.2;max-height:168px}.cards-row{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:1100px){.turn-banner{margin:12px 22px 0;flex-wrap:wrap;gap:7px 12px}.turn-banner>span{margin-left:0}.turn-banner button{margin-left:auto}}@media(max-width:820px){.table-sidebar .bank{grid-template-columns:repeat(6,minmax(0,1fr))}.table-sidebar .token{width:46px;height:46px}.table-sidebar .token .gem{width:28px;height:28px}.personal-assets{padding:12px}.my-token-row span{display:none}.table-sidebar{display:flex;flex-direction:column}.turn-banner strong{font-size:14px}.turn-banner>span{font-size:11px}.noble{min-width:166px}.owned-card{font-size:9px;padding-left:4px;padding-right:4px}}@media(max-width:480px){.turn-banner{margin:8px 12px 0;padding:10px}.table-sidebar .token{width:42px;height:42px}.table-sidebar .token-column>span{font-size:8px}.table-sidebar .bank{gap:14px 5px}.my-token-row{gap:4px}.my-token-row .gem{width:23px;height:23px}.my-token-row b{font-size:16px}.owned-stacks{gap:4px}.personal-assets .section-caption{flex-wrap:wrap}.entry-tabs button{font-size:11px}.turn-banner button{padding:2px;font-size:10px}}@media(prefers-reduced-motion:reduce){.player-panel.self.current .avatar:after{animation:none}}.turn-banner{position:sticky;top:0;z-index:30}@media(min-width:821px){.game-layout{grid-template-columns:minmax(0,1fr) 340px;gap:26px;padding-bottom:44px}.table-sidebar{padding-left:22px}.table-sidebar .bank-section{padding:15px;border:1px solid #a08c5955;border-radius:9px;background:#112c25}.table-sidebar .action-dock{position:static;inset:auto;z-index:auto;border-top:1px solid var(--line);border-radius:0;background:none;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;margin-top:18px}.table-sidebar .dock-inner{display:block;padding:14px 0 0;min-height:0}.table-sidebar .dock-symbol{display:none}.table-sidebar .dock-message strong{font-size:13px}.table-sidebar .dock-message p{font-size:11px;margin:5px 0 12px}.table-sidebar .dock-actions{display:flex;flex-wrap:wrap;gap:8px}.table-sidebar .dock-actions .primary{order:1;width:100%;min-width:0;min-height:42px}.table-sidebar .dock-actions .secondary{order:2;flex:1;min-width:130px;min-height:38px}.table-sidebar .dock-actions .icon-button{order:3;width:38px;height:38px}.table-sidebar .dock-actions .pass-button{order:4;flex:1;justify-content:center;font-size:11px;min-height:38px}.table-sidebar .bank{gap:18px 7px}.turn-panel{margin-top:16px}}@media(min-width:821px)and (max-width:1100px){.game-layout{grid-template-columns:minmax(0,1fr) 290px;padding-left:20px;padding-right:20px;gap:16px}.table-sidebar{padding-left:14px}.table-sidebar .bank-section{padding:10px}.table-sidebar .token{width:52px;height:52px}}.player-panel .owned-stacks.with-tokens{grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;margin-top:13px}.player-panel .with-tokens .stack-label{flex-direction:column;gap:4px;font-size:13px;padding-bottom:3px}.player-panel .with-tokens .stack-label .gem{width:23px;height:23px}.player-panel .with-tokens .stack-label small{font-size:9px;font-weight:400;margin-left:2px;color:#b5c3ad}.stack-card-count{font-size:10px;color:#ced3b6;text-align:center;padding:4px 0 6px;border-top:1px solid #bfd0ad22}.player-collection-link{margin-top:9px;font-size:10px;gap:5px}.player-panel .with-tokens .empty-stack{display:none}.player-panel .player-meta{margin-top:14px}.player-panel .score-track{margin-top:9px}.my-token-row>div{display:grid;grid-template-columns:26px minmax(0,1fr);gap:3px 6px;align-content:center;text-align:left}.my-token-row>div>.gem{grid-row:1 / 3}.my-token-row>div>span{font-size:9px;white-space:nowrap}.my-token-row>div>b{grid-column:2;line-height:1.1}@media(max-width:820px){.my-token-row>div{display:flex;justify-content:center}.my-token-row>div>span{display:none}}.owned-card-wrap{position:relative}.owned-card-wrap+.owned-card-wrap{margin-top:-50%}.owned-card-wrap .development-card{width:100%}.owned-card-wrap:hover{z-index:2}.player-panel .owned-card-wrap .development-card{aspect-ratio:.8;height:auto;min-height:0;max-height:none;border-radius:3px}.player-panel .owned-card-wrap .art{top:0;right:0;bottom:0;left:0}.player-panel .owned-card-wrap .card-bottom{display:none}.player-panel .owned-card-wrap .card-top{top:3px;left:3px;right:3px}.player-panel .owned-card-wrap .card-score{font-size:13px}.player-panel .owned-card-wrap .card-score small{display:none}.player-panel .owned-card-wrap .card-bonus{width:15px;height:15px}.player-panel .owned-card-wrap .card-bonus .gem{width:11px;height:11px}.player-panel .owned-card-wrap+.owned-card-wrap{margin-top:-65%}.art>img{display:block;width:100%;height:100%;object-fit:cover}.token{border-color:#8e744b;border-style:double;background:radial-gradient(circle at 36% 26%,#9b9d88,#3d4942 70%);box-shadow:0 3px #463b28,0 5px #211f17,0 8px 14px #0005,inset 0 0 0 1px #e4cf9055,inset 0 0 8px #050e0a88}.token:after{top:3px;right:3px;bottom:3px;left:3px;border-color:#d8bb7766;border-style:dotted}.token-blue{background:radial-gradient(circle at 36% 26%,#415a6b,#182d3c 70%)}.token-green{background:radial-gradient(circle at 36% 26%,#486655,#213d30 70%)}.token-red{background:radial-gradient(circle at 36% 26%,#81544b,#482931 70%)}.token-black{background:radial-gradient(circle at 36% 26%,#545053,#25262b 70%)}.token-gold{background:radial-gradient(circle at 36% 26%,#ae935f,#64502f 70%)}.token>.gem{filter:drop-shadow(0 2px 1px #0009)}:root{background:#171726;--bg: #171726;--deep: #111220;--surface: #25243a;--gold: #c7a779;--gold-light: #ead0a0;--ivory: #f2ebdf;--muted: #b1adc0;--line: #c8a97a35;color:var(--ivory)}.app{background:radial-gradient(ellipse at 18% 20%,#57416445,transparent 55%),radial-gradient(ellipse at 85% 80%,#2e447e30,transparent 60%)}.site-header{background:#181727bb;border-color:var(--line)}.wordmark span{display:flex;align-items:baseline;gap:13px;font-family:var(--serif);font-size:26px;letter-spacing:.13em}.wordmark small{font:500 11px Cormorant Garamond,serif;letter-spacing:.27em;color:#b8a18a}.header-motto,.connection,.section-caption small,.player-status,.player-meta,.player-score small,.fine-print{color:#b6aec0}.entry-panel{background:linear-gradient(145deg,#30283a,#1a1b2d);border-color:#ad8e6655;box-shadow:0 20px 80px #08071255}.entry-panel:before,.entry-panel:after{border-color:#d4b884}input{background:#131522;border-color:#696073}input::placeholder{color:#9c94aa}label,.token-column>span{color:#dcd2e5}.entry-tabs button.active{color:#f1d6a6;border-color:#dbc093}.primary{background:linear-gradient(120deg,#ead1a7,#bea075);color:#292034}.primary:hover:not(:disabled){background:#f5dfb7}.secondary{background:#ffffff04;border-color:#a392b45c;color:#e2d7e8}.showcase-card{border-color:#ddc195;background:#272138;box-shadow:0 22px 55px #08050caa}.showcase-cost{background:linear-gradient(110deg,#f0e3d3,#d6c7b3);color:#30263c}.showcase-seal{background:#352634;border-color:#b79268}.turn-banner{background:#222033;border-color:#77618188}.turn-banner.active{background:linear-gradient(100deg,#51415f,#292639);border-color:#d9bd88;box-shadow:0 4px 24px #0e091933}.personal-assets,.player-panel,.table-sidebar .bank-section{background:#211f32;border-color:#a190aa44}.personal-assets.current,.player-panel.current{border-color:#d9b988;background:linear-gradient(135deg,#30283c,#211f32)}.my-token-row>div{background:#14142188}.card-bonus{background:#1e192bd9;border-color:#e5c89388}.development-card{background:#e6dbcb;border-color:#b99c78}.development-card:after{background:linear-gradient(#140d2677,transparent)}.card-bottom{background:linear-gradient(105deg,#f0e6d8,#dcd0bd);color:#2d2337}.card-story-name{position:absolute;left:0;right:0;bottom:31px;padding:13px 5px 5px;color:#fff2dc;background:linear-gradient(transparent,#161023da);text-shadow:0 1px 3px #000;font-family:var(--serif);font-size:10px;line-height:1.3;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none}.player-panel .card-story-name{display:none}.small-card .card-story-name{bottom:21px;font-size:8px;padding-bottom:3px}.noble{background:linear-gradient(120deg,#e6d8c4,#efe5d4);color:#33263b;border-color:#c5a37188}.noble-name{background:#241930eb;color:#f0d8ad}.deck{background:linear-gradient(145deg,#34283d,#1d1b2d);border-color:#ae917355}.deck-2{background:linear-gradient(145deg,#24394b,#1c2137)}.deck-3{background:linear-gradient(145deg,#504034,#282132)}.deck-border{border-color:#bea47255}.stock-count{background:#262033;border-color:#b89a6a;color:#f1d9aa}.gem-illustrated{border-radius:28%}.token .gem-illustrated{width:43px;height:43px;border-radius:50%}.token{background:radial-gradient(circle at 36% 26%,#8e8064,#2a2532 72%);border-color:#a68a5f}.token-blue{background:radial-gradient(circle at 36% 26%,#4b6189,#20243d 72%)}.token-green{background:radial-gradient(circle at 36% 26%,#50765f,#1c3332 72%)}.token-red{background:radial-gradient(circle at 36% 26%,#946071,#452636 72%)}.token-black{background:radial-gradient(circle at 36% 26%,#625c78,#242332 72%)}.token-gold{background:radial-gradient(circle at 36% 26%,#ba9d61,#5a432c 72%)}.modal{background:#231f32;border-color:#a88a655c}.rule-note,.return-list>div,.reserve-slot{background-color:#17142266}.card-lore{color:#c6b7d1;font-family:var(--serif);font-size:11px;line-height:1.7;margin:8px 0 12px}.table-sidebar .action-dock{background:transparent}@media(max-width:820px){.wordmark span{font-size:22px}.wordmark small{display:none}.table-sidebar .action-dock{background:#201c2ff5}.table-sidebar .token .gem-illustrated{width:30px;height:30px}.card-story-name{font-size:8px;bottom:40px;padding-bottom:3px}.small-card .card-story-name{bottom:29px}}.gem-illustrated,.token .gem-illustrated{border-radius:0}.gem-illustrated{overflow:visible;filter:drop-shadow(0 1px 1px #09051755)}.cost .gem-illustrated{filter:drop-shadow(0 0 1px #29203b99)}.noble-name{opacity:1;right:auto;width:32%;padding:3px 2px;font-size:8px;line-height:1.35}.noble>.art>svg{filter:none}.room-delete-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end;margin-top:24px}.room-limit-note{margin:12px 0 0;color:var(--muted);font-size:12px;text-align:center}.room-directory{grid-column:1 / -1;width:100%;border-top:1px solid #cbb48333;padding:30px 0 12px}.room-directory-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px}.room-directory-kicker{color:var(--gold);font-size:10px;letter-spacing:.22em}.room-directory h2{margin:7px 0;font-size:24px}.room-directory h2 small{font-family:sans-serif;color:var(--gold);font-size:15px;margin-left:8px}.room-directory-heading p{margin:0;color:var(--muted);font-size:12px}.room-refresh{display:inline-flex;gap:8px;align-items:center;flex-shrink:0}.room-directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.room-list-card{min-width:0;padding:22px;border:1px solid #cab38838;border-radius:12px;background:#27243588}.room-list-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.room-status{font-size:11px;color:#c9b784}.room-status.playing{color:#b5c5a9}.room-status.finished{color:#b6a6c8}.room-list-code{font-family:monospace;font-size:12px;letter-spacing:.08em;color:#b6adc5}.room-list-card h3{font-family:inherit;font-weight:500;font-size:16px;margin:18px 0 12px;overflow-wrap:anywhere}.room-list-card>p{display:flex;align-items:center;gap:6px;color:#cec4d3;font-size:12px}.room-list-card>p span{color:var(--muted)}.room-list-actions{display:flex;align-items:center;gap:15px;min-height:38px;margin-top:18px}.room-list-actions .secondary{padding:8px 15px;font-size:12px}.room-list-actions .text-button{font-size:12px;gap:5px}.lobby .room-list-actions .delete-room-button{display:inline-flex;margin:0 0 0 auto}.room-current{font-size:12px;color:var(--gold)}.room-directory-empty{padding:32px 18px;border:1px dashed #cbb48333;border-radius:10px;text-align:center;color:var(--muted);font-size:13px}.room-replace-warning{font-size:13px;line-height:1.7;color:#e1b5b1}.room-replacement-options{border:0;padding:0;margin:24px 0}.room-replacement-options legend{margin-bottom:10px;font-size:13px}.room-replacement-options label{display:flex;align-items:center;gap:12px;padding:15px;margin:8px 0;border:1px solid #cbb48344;border-radius:8px;cursor:pointer}.room-replacement-options label:has(input:checked){border-color:var(--gold);background:#cbb48312}.room-replacement-options input{width:18px;height:18px;margin:0;accent-color:#dbc390;flex-shrink:0}.room-replacement-options strong,.room-replacement-options small{display:block}.room-replacement-options strong{font-size:14px;font-weight:500}.room-replacement-options small{margin-top:5px;color:var(--muted);font-size:12px}@media(max-width:800px){.room-directory-grid{grid-template-columns:1fr}.room-directory h2{font-size:20px}.room-directory-heading{align-items:flex-start}.room-refresh{padding:10px}.room-refresh span{display:none}}.delete-room-button{color:#d7aaa9}.lobby .delete-room-button{margin:12px auto 0;display:block}.header-actions{gap:20px}.page-loading{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;background:#171726ed;color:#ead0a0}@media(max-width:1200px){.header-motto{display:none}}@media(max-width:650px){.site-header{height:auto;min-height:68px;flex-wrap:wrap;gap:7px 12px;padding:12px 16px}.header-actions{gap:13px;margin-left:auto}.header-actions .connection{display:none}.header-actions .text-button{font-size:11px;gap:4px}.header-actions .text-button>svg{width:13px;height:13px}.wordmark{gap:7px}.wordmark span{font-size:20px;letter-spacing:.05em}}.data-notice-link{display:block;margin:16px auto 32px;font-size:11px;opacity:.7}.app.game-active{--ink: #302d37;--muted: #77727a;--gold: #8d6d3f;--line: #ddd5c9;--card-h: clamp(128px, calc((100dvh - 346px) / 3), 196px);--card-w: calc(var(--card-h) * .7);--serif: "Noto Serif KR", "Noto Sans KR", serif;color:var(--ink);background:#f5f2eb;min-height:100dvh;max-width:none;padding:0 18px 18px;margin:0;color-scheme:light}.game-active .text-button{color:#6e675e;font-size:11px}.game-active .primary{background:#3c6258;color:#fff;border:1px solid #3c6258;box-shadow:none}.game-active .secondary{background:#f9f6ef;border-color:#cec3b2;color:#544833}.game-active .icon-button{color:#625a4e;border-color:#ded6c8}.game-active .muted{color:var(--muted)}.game-active button:focus-visible,.game-active summary:focus-visible{outline:3px solid #286f69;outline-offset:3px}.game-toolbar{max-width:1700px;margin:0 auto 8px;min-height:44px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px}.turn-indicator{display:flex;align-items:center;gap:8px;font-size:12px;min-width:0}.turn-light{height:7px;width:7px;border-radius:50%;background:#a8a4a0;flex-shrink:0}.my-turn .turn-light{background:#33836d;box-shadow:0 0 0 4px #33836d15;animation:turn-pulse 2s ease-in-out infinite}.turn-indicator time{font-variant-numeric:tabular-nums;font-size:20px;color:#3a685b;font-weight:700;margin-left:5px}.turn-indicator time.urgent{color:#be4438}.game-tools{display:flex;align-items:center;gap:12px;font-size:11px;color:#82796b}.game-tools .text-button{padding:3px 0}.game-tools svg{width:13px;height:13px}.game-menu{position:relative}.game-menu summary{cursor:pointer}.game-menu>div{position:absolute;right:0;top:26px;min-width:200px;padding:16px;background:#fff;border:1px solid var(--line);border-radius:9px;box-shadow:0 8px 25px #41372118;z-index:8;display:grid;gap:10px}.game-active .game-layout{max-width:1700px;display:grid;grid-template-columns:minmax(172px,210px) minmax(0,1fr) minmax(172px,210px);gap:14px;margin:0 auto;padding:0;align-items:start}.game-active .board{min-width:0;padding:12px;background:#fffdfa;border:1px solid #e0d8cb;border-radius:14px;box-shadow:0 3px 16px #5c493609}.game-active .board-heading{display:flex;justify-content:space-between;align-items:center;padding:0 0 9px;margin:0;min-height:0;border:0}.game-active .player-bot-badge{display:inline-block;border:1px solid #bccbc6;border-radius:4px;padding:1px 4px;margin-left:4px;color:#41675d;font:600 9px/1.2 Noto Sans KR,sans-serif;vertical-align:middle}.game-active .board-heading h1{min-width:0;overflow-wrap:anywhere;font-size:17px;line-height:1.35;margin:0;color:#655037;letter-spacing:1px}.game-active .board-heading h1 span{font-size:8px;letter-spacing:2px;margin-left:8px;color:#a29684}.affordable-legend{font-size:9px;color:#527b66;white-space:nowrap}.game-active .market-court{display:grid;grid-template-columns:minmax(0,1fr) minmax(154px,20%);gap:16px;align-items:start}.game-active .market{display:grid;gap:9px;min-width:0}.game-active .market-row{display:grid;grid-template-columns:34px minmax(0,1fr);gap:9px;margin:0;min-width:0}.game-active .cards-row{display:grid;grid-template-columns:repeat(4,minmax(0,var(--card-w)));gap:9px;justify-content:center;min-width:0}.game-active .development-card,.game-active .development-card:not(.small-card){width:100%;height:var(--card-h);min-height:0;max-height:none;aspect-ratio:.7;border-radius:7px;border:1px solid #bfa986;box-shadow:0 2px 6px #4a392422;transform:none}.game-active .development-card>.art{top:0;right:0;bottom:27px;left:0;width:auto;height:auto}.game-active .development-card .art>svg{width:100%;height:100%;display:block}.game-active .development-card:after{background:linear-gradient(#21182466,transparent);height:40%}.game-active .development-card.affordable{border:2px solid #458668;box-shadow:0 0 0 2px #45866818,0 2px 7px #45866815}.game-active .development-card.selected{outline:2px solid #3e8267;outline-offset:2px}.game-active .card-top{top:6px;left:7px;right:6px}.game-active .card-score{font-size:27px;color:#fff8e8;line-height:1;text-shadow:0 1px 5px #000a}.game-active .card-score small{font-size:8px}.game-active .card-bonus{width:27px;height:27px;background:#201b2bcc;border-color:#f9dfa577}.game-active .card-bonus .gem{width:23px;height:23px}.game-active .card-story-name{font-size:9px;bottom:27px;line-height:1.4;padding:12px 3px 4px;display:block}.game-active .card-bottom{height:27px;padding:0 5px;background:#f5eddf;color:#3c3540}.game-active .card-bottom .costs{gap:4px;flex-wrap:nowrap;justify-content:flex-start}.game-active .card-bottom .cost{gap:1px;font-size:10px;line-height:1}.game-active .card-bottom .gem{width:13px;height:13px}.game-active .cost.covered{color:#4b8268;opacity:.58;text-decoration:none}.game-active .buyable-dot{width:6px;height:6px;background:#4c876b;box-shadow:none;position:absolute;right:3px;top:3px}.game-active .deck{height:var(--card-h);width:34px;min-height:0;padding:4px;border:1px solid #ae9980;border-radius:5px;background:#50454d;color:#ead4ab}.game-active .deck-2{background:#45576a}.game-active .deck-3{background:#6d5644}.game-active .deck-border{height:100%;width:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:7px;border:1px solid #ead4ab33}.game-active .deck strong{font-size:18px;font-weight:400}.game-active .deck small{font-size:8px;white-space:nowrap}.game-active .empty-card{height:var(--card-h);aspect-ratio:.7;border:1px dashed #d7cdbd;background:#f6f3ed;border-radius:7px;display:grid;place-items:center;color:#9b9080;font-size:10px}.game-active .nobles-section{margin:0;padding:0;min-width:0;border:0;background:none}.game-active .section-caption{font-size:11px;gap:5px;margin:0 0 7px;padding:0;color:#816b49}.game-active .nobles-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.game-active .noble{display:block;aspect-ratio:.66;height:auto;min-height:0;max-height:none;width:100%;position:relative;background:#f5eddf;border:1px solid #c8b592;border-radius:6px;color:#494035;padding:0;overflow:hidden;box-shadow:0 2px 5px #66512c15}.game-active .noble>.art{position:absolute;top:0;right:0;bottom:48px;left:0;width:100%;height:auto}.game-active .noble>.art>svg{width:100%;height:100%;object-fit:cover}.noble-score{position:absolute;top:5px;left:5px;display:flex;align-items:center;gap:2px;color:#fff6db;filter:drop-shadow(0 1px 2px #20182a)}.noble-score b{font-size:22px;font-family:Georgia,serif;font-weight:400}.noble-score small{font-size:8px}.game-active .noble-info{position:absolute;bottom:0;left:0;right:0;padding:4px 3px 5px;display:grid;gap:3px;height:48px}.game-active .noble-name{position:static;background:none;opacity:1;color:#665239;font-size:8px;padding:0;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.noble-condition-label{font-size:7px;color:#8c7b66;text-align:center}.game-active .noble .card-requirements{display:flex;gap:3px;justify-content:center;flex-wrap:nowrap;margin:0}.game-active .card-requirements>span{font-size:9px;gap:1px;background:none;padding:0;line-height:1;white-space:nowrap}.game-active .card-requirements i{width:10px;height:13px;border-radius:1px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #5f657733}.game-active .card-requirements i svg{width:7px;height:10px}.game-active .card-requirements small{display:none}.game-active .noble.eligible{border:2px solid #56886e;box-shadow:0 0 0 2px #56886e20}.court-note{font-size:9px;line-height:1.7;text-align:center;color:#958674;margin:9px 0 0}.game-active .bank-section{display:flex;align-items:center;gap:12px;margin:10px 0 0;padding:8px 10px;background:#f0ede5;border:1px solid #e1d9cc;border-radius:8px;min-width:0}.bank-heading{display:grid;gap:4px;white-space:nowrap}.bank-heading strong{font-size:11px;color:#6e5f49}.bank-heading small{font-size:9px;color:#938572}.game-active .bank{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;flex:1;padding:0;min-width:0}.game-active .token-column{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:0}.game-active .token-column>span{font-size:8px;white-space:nowrap;color:#7a6e5a;letter-spacing:0}.game-active .token{width:40px;height:35px;margin:0;padding:0;position:relative;border:0;box-shadow:none;background:none;border-radius:7px;overflow:visible}.game-active .token:before,.game-active .token:after{display:none}.game-active .token .gem{width:32px;height:32px;filter:drop-shadow(0 2px 2px #44331822)}.game-active .token-selected{background:#d5e6d7;box-shadow:0 0 0 2px #639571}.game-active .stock-count{width:15px;height:15px;right:-2px;bottom:-1px;background:#fff;border:1px solid #c9bea8;color:#635136;font-size:10px;display:grid;place-items:center;line-height:1;box-shadow:0 1px 3px #0001}.game-active .selected-count{left:-3px;top:-4px;width:16px;height:16px;background:#3e7860;color:#fff;font-size:10px;border:0}.bank-actions{display:grid;gap:4px;text-align:center}.bank-actions>.primary{padding:8px 9px;font-size:10px;min-height:0;white-space:nowrap}.bank-actions>div{display:flex;justify-content:center;gap:10px}.game-active .bank-actions .text-button{font-size:9px;padding:0}.game-active .personal-assets{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:16px;margin:10px 0 0;padding:9px 10px;border:1px solid #d7cbba;border-radius:8px;background:#fffdfa;min-width:0;box-shadow:none}.game-active .personal-assets.current{border-color:#729b80;box-shadow:0 0 0 1px #729b8033}.personal-resource-area{min-width:0}.personal-heading{display:flex;gap:14px;align-items:center;font-size:10px;color:#756b5d;margin-bottom:7px}.personal-heading>strong{font-size:12px;color:#52432e}.personal-score{display:flex;align-items:center;gap:3px;color:#86652b}.personal-score b{font-size:14px}.game-active .my-token-row{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;margin:0;padding:0}.game-active .my-token-row>div{display:grid;grid-template-columns:25px 1fr;gap:2px 3px;padding:2px;background:none;border:0;min-width:0;align-items:center}.game-active .my-token-row>div>b{font-size:14px;color:#3c3840}.game-active .my-token-row>div>small{grid-column:1/-1;font-size:8px;text-align:center;color:#8c8071;white-space:nowrap}.owned-heading{display:flex;align-items:center;justify-content:space-between;font-size:8px;color:#897c6d;margin:5px 0 3px}.game-active .owned-heading .text-button{font-size:8px;padding:0}.game-active .owned-stacks{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;min-width:0;margin:0;padding:0;border:0;overflow:visible}.game-active .owned-stack{min-width:0}.game-active .stack-label{gap:3px;justify-content:center;padding:0;margin-bottom:3px;font-size:9px;color:#6b6257}.game-active .stack-label .gem{width:13px;height:13px}.game-active .stack-label b{font-size:9px}.game-active .stack-cards{min-height:30px;display:flex;align-items:flex-start;justify-content:center;overflow:visible;padding:0;gap:0}.game-active .owned-card-wrap{width:35px;flex:0 0 35px;position:relative}.game-active .owned-card-wrap+.owned-card-wrap{margin:0 0 0 -29px}.game-active .owned-card-wrap .development-card{height:49px;width:35px;border-radius:3px;border-width:1px;aspect-ratio:.7;box-shadow:0 1px 3px #0002}.game-active .owned-card-wrap .development-card>.art{top:0;right:0;bottom:0;left:0}.game-active .owned-card-wrap .card-top{top:3px;left:3px;right:3px}.game-active .owned-card-wrap .card-score{font-size:12px}.game-active .owned-card-wrap .card-score small,.game-active .owned-card-wrap .card-bottom,.game-active .owned-card-wrap .card-story-name{display:none}.game-active .owned-card-wrap .card-bonus{width:10px;height:10px;border:0;background:none}.game-active .owned-card-wrap .card-bonus .gem{width:10px;height:10px}.game-active .empty-stack{min-height:28px;height:28px;display:grid;place-items:center;color:#c3b8a4;border:1px dashed #e1d9ce;border-radius:3px;width:100%;font-size:14px}.game-active .reserved-section{border:0;border-left:1px solid #e5ddcf;padding:0 0 0 12px;margin:0;background:none;min-width:0}.game-active .reserved-section h3{font-size:10px;margin:0 0 8px;color:#6c5b42;display:flex;gap:4px;align-items:center}.game-active .reserved-section h3 span{margin-left:auto;font-size:9px;color:#9d8c75}.game-active .reserved-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin:0}.game-active .reserved-row .development-card{width:100%;height:auto;aspect-ratio:.7;min-height:0;border-radius:4px}.game-active .reserved-row .development-card>.art{top:0;right:0;bottom:15px;left:0}.game-active .reserved-row .card-top{top:3px;left:3px;right:3px}.game-active .reserved-row .card-score{font-size:18px}.game-active .reserved-row .card-score small{display:none}.game-active .reserved-row .card-bonus{width:16px;height:16px}.game-active .reserved-row .card-bonus .gem{width:14px;height:14px}.game-active .reserved-row .card-story-name{display:none}.game-active .reserved-row .card-bottom{height:15px;padding:0 2px}.game-active .reserved-row .costs{gap:1px}.game-active .reserved-row .cost{font-size:7px;gap:0}.game-active .reserved-row .card-bottom .gem{width:8px;height:8px}.game-active .reserved-empty{height:auto;aspect-ratio:.7;min-height:0;width:100%;background:#f6f2e9;border:1px dashed #d8cdbb;border-radius:4px;color:#bba98c}.owned-nobles{display:flex;gap:5px;margin-top:7px}.owned-nobles>span{display:flex;gap:3px;align-items:center;font-size:9px;color:#8d713f}.owned-nobles .art{width:22px;height:29px;border:1px solid #c7af80;border-radius:3px;overflow:hidden}.game-active .player-column{display:grid;gap:12px;min-width:0;padding-top:0}.game-active .player-panel{border:1px solid #ded6c8;border-radius:12px;background:#fffdf9;box-shadow:0 3px 12px #55402607;padding:14px 12px 10px;margin:0;position:relative;min-width:0;overflow:hidden}.game-active .player-panel.self{background:#f8fbf7;border-color:#b9cbb5}.game-active .player-panel.current{border:2px solid #729c7c;padding:13px 11px 9px;box-shadow:0 0 0 3px #7395770c}.game-active .player-panel.current:before{display:none}.game-active .player-panel.current:after{content:"";position:absolute;left:12px;right:12px;bottom:0;height:2px;background:linear-gradient(90deg,transparent,#599071,transparent);animation:turn-pulse 2s ease-in-out infinite}.game-active .player-panel.forfeited{opacity:.5}.game-active .player-heading{display:flex;align-items:center;gap:7px;padding:0;margin:0 0 12px}.game-active .avatar{width:36px;height:44px;border:1px solid #c6b798;border-radius:18px;flex-shrink:0;overflow:hidden}.game-active .avatar>svg{width:100%;height:100%}.player-identity{min-width:0;flex:1}.game-active .player-heading strong{display:block;font-size:12px;line-height:1.5;color:#473d32;overflow-wrap:anywhere}.game-active .player-heading strong small{color:#527b59;font-size:8px;white-space:nowrap}.game-active .player-status{display:block;font-size:9px;color:#988b78;margin-top:3px}.game-active .current .player-status{color:#3e7f58;font-weight:700}.game-active .player-score{display:grid;text-align:right;margin:0;line-height:1.2;min-width:30px;color:#8c7146}.game-active .player-score b{font-family:Georgia,serif;font-size:26px;font-weight:400}.game-active .player-score small{font-size:8px;white-space:nowrap;color:#9c917f}.player-resource-heading{font-size:9px;color:#827763;display:flex;justify-content:space-between;align-items:center;border-top:1px solid #e8e1d7;padding-top:9px;margin:9px 0 7px}.player-resource-heading>b{color:#655640;font-size:10px}.player-resource-heading>small{font-size:8px;color:#aaa08f}.player-gem-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1px}.player-gem-grid>span,.player-discount-grid>span{display:flex;flex-direction:column;align-items:center;gap:3px;color:#51483e;font-size:10px}.player-gem-grid .gem{width:24px;height:24px}.player-discount-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px}.player-discount-grid>span{flex-direction:row;justify-content:center;font-size:10px}.game-active .player-meta{display:flex;justify-content:space-between;align-items:center;gap:5px;font-size:9px;color:#a08d71;margin:13px 0 4px;padding:0}.game-active .player-meta>span{display:flex;align-items:center;gap:3px}.game-active .player-collection-link{font-size:9px;padding:6px 0;justify-content:center;width:100%;color:#7e725e}.game-active .kick-button{font-size:8px;color:#a58e78;padding:0;display:block;margin:0 auto 6px}.game-active .score-track{height:2px;background:#ede7dc;margin-top:7px}.game-active .score-track>div{background:#b49c6c}.game-active .activity{padding:8px 10px;border:1px solid #e1d8c9;border-radius:8px;font-size:10px;background:#fffdf8;color:#8e7c60}.game-active .activity summary{cursor:pointer}.game-active .activity-list{max-height:none;overflow:visible}.game-active .activity-list>div{padding:6px 0;border-color:#eee7dc;color:#6b6257}.game-active .activity-list p{color:#6b6257;font-size:10px}.game-active .modal{background:#fffdf9;border:1px solid #c8b493;border-radius:14px;color:#3f3830;box-shadow:0 20px 90px #28233244;max-width:min(650px,95vw)}.game-active .modal-title h2{color:#58492e}.game-active .modal::backdrop{background:#39343b77;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.game-active .return-list>div{background:#f5f1e9;color:#5a4d3d;border-color:#e3d6c3}.game-active .return-progress{background:#eef5ed;color:#56724f;border-color:#d2dfca}.game-active .noble-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:14px}.game-active .noble-choices .noble{width:100%;height:auto;max-width:180px;aspect-ratio:.68}.game-active .noble-choices .noble>.art{width:100%;height:auto;top:0;right:0;bottom:60px;left:0}.game-active .noble-choices .noble-info{height:60px}.game-active .noble-choices .card-requirements>span{font-size:12px}.game-active .noble-choices .noble-name{font-size:11px}.purchase-preview{display:grid;grid-template-columns:145px minmax(0,1fr);gap:20px;align-items:start}.game-active .purchase-preview>.development-card{height:207px;width:145px}.game-active .card-lore{font-size:11px;line-height:1.7;color:#8c7d66;margin:0 0 12px;padding:0;border:0}.purchase-details table{border-collapse:collapse;width:100%;font-size:11px}.purchase-details caption{font-size:11px;text-align:left;margin-bottom:8px;color:#79634b;font-weight:600}.purchase-details th,.purchase-details td{padding:5px;border-bottom:1px solid #eee5d6;text-align:right}.purchase-details th:first-child{text-align:left}.purchase-details tbody th{display:flex;align-items:center;gap:4px;font-weight:400}.purchase-details thead{font-size:9px;color:#9b8c76}.actual-payment{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:12px 0 6px;font-size:11px;color:#367255}.actual-payment>span{display:flex;align-items:center;gap:3px}.payment-note{font-size:9px;color:#a29683;line-height:1.6}.payment-shortfall{font-size:10px;color:#b25343}.purchase-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.game-active .purchase-actions button{font-size:12px;padding:11px 16px}.game-active .collection-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:12px}.game-active .collection-grid .development-card{height:auto;aspect-ratio:.7;width:100%}.turn-settings{display:grid;grid-template-columns:1fr 120px;align-items:center;gap:8px;margin:18px 0;font-size:12px;color:#d6c4a2}.turn-settings select{background:#242234;color:#e4d4b6;border:1px solid #8f7b5355;border-radius:5px;padding:7px}.turn-settings small{grid-column:1/-1;font-size:10px;color:#9b9181;line-height:1.6}.lobby-seat .kick-button{font-size:10px;color:#be9c89;padding:2px 4px}@keyframes turn-pulse{50%{opacity:.45}}@media(min-width:1600px){.app.game-active{--card-h: clamp(150px, calc((100dvh - 350px) / 3), 215px)}.game-active .market-court{grid-template-columns:minmax(0,1fr) 200px}.game-active .nobles-row{gap:10px}}@media(max-width:1180px)and (min-width:861px){.app.game-active{padding:0 10px 12px;--card-h: clamp(120px, calc((100dvh - 350px) / 3), 158px)}.game-active .game-layout{grid-template-columns:160px minmax(0,1fr) 160px;gap:9px}.game-active .board{padding:9px}.game-active .market-court{grid-template-columns:minmax(0,1fr) 136px;gap:9px}.game-active .market-row{grid-template-columns:27px 1fr;gap:6px}.game-active .deck{width:27px}.game-active .cards-row,.game-active .nobles-row{gap:6px}.game-active .card-bottom .cost{font-size:9px}.game-active .card-bottom .gem{width:11px;height:11px}.game-active .card-bottom .costs{gap:2px}.bank-heading{display:none}.game-active .personal-assets{grid-template-columns:1fr 150px;gap:8px}.game-active .player-panel{padding:10px 8px}.game-active .player-panel.current{padding:9px 7px}.game-active .player-heading{gap:5px}.game-active .avatar{width:30px;height:38px}.game-active .player-heading strong{font-size:11px}.player-gem-grid .gem{width:20px;height:20px}.personal-heading,.game-tools{gap:9px}.game-tools .room-label{display:none}}@media(max-width:860px){.app.game-active{padding:0 10px 12px;--card-h: clamp(126px, 24vw, 190px);--card-w: calc(var(--card-h) * .7)}.game-toolbar{position:sticky;top:0;z-index:10;background:#f5f2eb;flex-wrap:wrap;padding:8px 0;gap:4px}.turn-indicator{font-size:11px}.game-tools{gap:12px;width:100%;justify-content:space-between}.game-tools .text-button,.game-tools .room-label{font-size:9px}.game-tools svg{width:10px}.game-active .game-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}.game-active .board{grid-column:1/-1;grid-row:1;padding:8px}.game-active .player-column{grid-row:2;gap:8px}.game-active .market-court{grid-template-columns:minmax(0,1fr);gap:12px}.game-active .nobles-section{grid-row:1;display:grid;grid-template-columns:65px 1fr;gap:6px}.game-active .nobles-section .section-caption{display:block;font-size:9px;margin-top:5px}.game-active .nobles-row{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.game-active .noble{aspect-ratio:.65}.game-active .noble>.art{top:0;right:0;bottom:42px;left:0}.game-active .noble-info{height:42px;padding:3px 1px;gap:2px}.game-active .noble-name{font-size:7px}.game-active .noble .card-requirements{gap:2px}.game-active .card-requirements>span{font-size:8px}.game-active .card-requirements i{width:8px;height:11px}.noble-score b{font-size:17px}.noble-score svg{width:10px}.court-note{display:none}.game-active .market{gap:7px}.game-active .market-row{grid-template-columns:26px minmax(0,1fr);gap:6px}.game-active .deck{width:26px}.game-active .cards-row{gap:6px}.game-active .bank-section{gap:6px;padding:8px 6px;flex-wrap:wrap}.bank-heading{display:none}.game-active .bank{flex-basis:65%;gap:4px}.game-active .bank-actions{min-width:90px}.game-active .token-column>span{font-size:7px}.game-active .token{width:33px;height:32px}.game-active .token .gem{width:28px;height:28px}.game-active .stock-count{right:-1px}.game-active .personal-assets{grid-template-columns:1fr 145px;gap:8px;padding:8px}.personal-heading{gap:8px;font-size:8px}.personal-heading>strong{font-size:11px}.personal-score b{font-size:12px}.game-active .my-token-row>div{grid-template-columns:22px 1fr;gap:1px}.game-active .my-token-row .gem{width:22px;height:22px}.game-active .my-token-row>div>b{font-size:13px}.game-active .my-token-row>div>small{font-size:7px}.game-active .reserved-section{padding-left:7px}.game-active .reserved-section h3{font-size:9px}.game-active .board-heading h1{font-size:14px}.game-active .board-heading h1 span{font-size:6px}.affordable-legend{font-size:8px}}@media(max-width:520px){.app.game-active{--card-h: 128px;padding:0 6px 10px}.game-active .game-layout{gap:7px}.game-active .board{padding:7px}.game-active .card-top{top:5px;left:4px;right:3px}.game-active .card-score{font-size:22px}.game-active .card-bonus{width:22px;height:22px}.game-active .card-bonus .gem{width:18px;height:18px}.game-active .card-bottom{padding:0 3px;height:24px}.game-active .card-bottom .costs{gap:2px}.game-active .card-bottom .cost{font-size:9px}.game-active .card-bottom .gem{width:11px;height:11px}.game-active .development-card>.art{bottom:24px}.game-active .card-story-name{font-size:7px;bottom:24px}.game-active .nobles-section{grid-template-columns:1fr;gap:2px}.game-active .nobles-section .section-caption{display:flex;margin:0 0 2px}.game-active .nobles-row{gap:5px}.game-active .noble{aspect-ratio:.63}.game-active .noble .card-requirements{gap:1px}.game-active .card-requirements>span{font-size:8px}.game-active .noble-name{font-size:7px}.game-active .personal-assets{grid-template-columns:1fr;gap:8px}.game-active .personal-resource-area{position:relative}.game-active .reserved-section{border:0;border-top:1px solid #eee4d5;padding:8px 0 0;display:grid;grid-template-columns:90px 1fr;gap:8px}.game-active .reserved-row{grid-template-columns:repeat(3,43px)}.game-active .owned-nobles{grid-column:1/-1}.game-active .my-token-row{gap:6px}.game-active .my-token-row>div>small{font-size:8px}.game-active .personal-heading{font-size:10px;gap:13px}.game-active .player-panel{padding:10px 8px}.game-active .player-panel.current{padding:9px 7px}.game-active .player-heading strong{font-size:11px}.game-active .player-score b{font-size:24px}.game-active .player-heading{gap:6px}.game-active .avatar{width:31px;height:39px}.player-gem-grid .gem{width:21px;height:21px}.game-active .modal{padding:0}.purchase-preview{grid-template-columns:95px minmax(0,1fr);gap:12px}.game-active .purchase-preview>.development-card{height:140px;width:95px}.purchase-details table{font-size:10px}.purchase-details tbody th span{display:none}.purchase-details caption,.game-active .card-lore{font-size:10px}.game-active .purchase-actions button{font-size:11px;padding:9px 12px}}@media(prefers-reduced-motion:reduce){.game-active *,.game-active *:before,.game-active *:after{animation:none!important;transition:none!important}}.game-active .south-table{display:grid;grid-template-columns:minmax(0,1fr) 185px;gap:12px;align-items:start;margin-top:10px}.game-active .south-table .personal-assets{margin:0;grid-template-columns:minmax(0,1fr) 145px;gap:10px}.game-log{min-width:0;border-left:1px solid #e4dccf;padding-left:12px;color:#786c59}.game-log-heading{display:flex;align-items:center;gap:5px;font-size:10px;font-weight:600;margin:0 0 7px;color:#7c694c}.game-log-heading svg{width:12px;height:12px}.game-log-list{list-style:none;margin:0;padding:0;display:grid;gap:5px}.game-log-entry{display:flex;align-items:flex-start;gap:5px;font-size:9px;line-height:1.5;min-width:0}.game-log-icon{display:flex;align-items:center;justify-content:center;border-radius:4px;background:#f0ebe2;color:#9c8866;width:20px;height:20px;flex-shrink:0;margin-top:1px}.game-log-icon svg{width:12px;height:12px}.log-buy .game-log-icon{background:#e9f3ed;color:#5a8b6b}.log-noble .game-log-icon{background:#f7edce;color:#ad873e}.log-reserve .game-log-icon{background:#efeaf6;color:#8776a2}.log-take .game-log-icon{background:#e9f0f6;color:#6487a5}.game-log-content{min-width:0;flex:1;position:relative;padding-right:0}.game-log-action{margin:0;line-height:1.5;overflow-wrap:anywhere}.game-log-action strong{color:#5a4b35;font-weight:600;margin-right:3px}.game-log-points{color:#658567;font-size:8px;margin-left:3px}.game-log-tokens{display:inline-flex;flex-wrap:wrap;align-items:center;gap:3px;margin-top:1px;font-size:8px}.game-log-tokens>small{font-size:7px;color:#a19683}.game-log-token{display:inline-flex;align-items:center;gap:1px}.game-log-token .gem{width:12px;height:12px}.game-log-token b{font-size:8px;font-weight:500}.game-log-time{font-size:7px;color:#aca28f;margin-left:5px;white-space:nowrap}.game-log-history{font-size:8px;margin-top:7px}.game-log-history>summary{cursor:pointer;color:#9d8664}.game-log-history[open]>.game-log-list{margin-top:10px}.game-log-turn{display:flex;align-items:center;gap:4px;font-size:9px;border-top:1px solid #e5ddce;margin:7px 0 0;padding-top:6px;color:#528465}.game-log-turn svg{width:12px;height:12px}.game-active .owned-stack{position:relative}.game-active .owned-stack:has(.owned-card-wrap):hover,.game-active .owned-stack:focus-within{z-index:30}.game-active .owned-stack:has(.owned-card-wrap):hover .stack-cards,.game-active .owned-stack:focus-within .stack-cards{position:absolute;left:0;bottom:0;width:min(460px,65vw);min-height:118px;padding:8px;flex-wrap:wrap;gap:5px;justify-content:flex-start;align-content:flex-start;background:#fffcf7;border:1px solid #c5b394;border-radius:8px;box-shadow:0 8px 25px #59412733}.game-active .owned-stack:nth-child(n+4):hover .stack-cards,.game-active .owned-stack:nth-child(n+4):focus-within .stack-cards{left:auto;right:0}.game-active .owned-stack:has(.owned-card-wrap):hover .owned-card-wrap,.game-active .owned-stack:focus-within .owned-card-wrap{width:76px;flex:0 0 76px;margin:0}.game-active .owned-stack:has(.owned-card-wrap):hover .development-card,.game-active .owned-stack:focus-within .development-card{width:76px;height:109px}.game-active .owned-stack:has(.owned-card-wrap):hover .development-card>.art,.game-active .owned-stack:focus-within .development-card>.art{top:0;right:0;bottom:20px;left:0}.game-active .owned-stack:has(.owned-card-wrap):hover .card-bottom,.game-active .owned-stack:focus-within .card-bottom{display:flex;height:20px;padding:0 3px}.game-active .owned-stack:has(.owned-card-wrap):hover .card-bottom .costs,.game-active .owned-stack:focus-within .card-bottom .costs{gap:2px}.game-active .owned-stack:has(.owned-card-wrap):hover .card-bottom .cost,.game-active .owned-stack:focus-within .card-bottom .cost{font-size:8px}.game-active .owned-stack:has(.owned-card-wrap):hover .card-bottom .gem,.game-active .owned-stack:focus-within .card-bottom .gem{width:10px;height:10px}.game-active .owned-stack:has(.owned-card-wrap):hover .card-score,.game-active .owned-stack:focus-within .card-score{font-size:20px}.game-active .owned-stack:has(.owned-card-wrap):hover .card-bonus,.game-active .owned-stack:focus-within .card-bonus{width:20px;height:20px}.game-active .owned-stack:has(.owned-card-wrap):hover .card-bonus .gem,.game-active .owned-stack:focus-within .card-bonus .gem{width:19px;height:19px}.game-active .owned-stack:has(.owned-card-wrap):hover .card-story-name,.game-active .owned-stack:focus-within .card-story-name{display:block;bottom:20px;font-size:7px}.purchased-card-flight{position:fixed;z-index:100;pointer-events:none;transform-origin:top left;animation:purchase-flight .72s cubic-bezier(.2,.65,.25,1) both}.game-active .purchased-card-flight .development-card{width:100%;height:100%;box-shadow:0 14px 36px #60432b66}@keyframes purchase-flight{0%{transform:translate(0) scale(1);filter:brightness(1.18)}20%{filter:brightness(1.3)}90%{opacity:1}to{transform:translate(var(--fly-x),var(--fly-y)) scale(var(--fly-scale));opacity:.8;filter:brightness(1)}}.app.game-active{--card-h: clamp(122px, calc((100dvh - 390px) / 3), 196px)}@media(max-width:1180px)and (min-width:861px){.game-active .south-table{grid-template-columns:minmax(0,1fr) 155px;gap:9px}.game-active .south-table .personal-assets{grid-template-columns:1fr}.game-active .south-table .reserved-section{border:0;border-top:1px solid #eee4d5;padding:6px 0 0;display:grid;grid-template-columns:90px 1fr;gap:6px}.game-active .south-table .reserved-row{grid-template-columns:repeat(3,38px)}.game-active .game-log{padding-left:8px}.game-log-entry{font-size:8px}.game-active .personal-heading{gap:9px}}@media(max-width:860px){.app.game-active{--card-h: clamp(128px, 24vw, 190px)}.game-active .south-table{grid-template-columns:1fr}.game-active .south-table .personal-assets{grid-template-columns:minmax(0,1fr) 150px}.game-active .game-log{border:0;border-top:1px solid #e5ddce;padding:9px 0 0}.game-log-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.game-log-history .game-log-list{grid-template-columns:1fr}.game-log-entry{font-size:10px}.game-log-heading{font-size:11px}.game-log-time{font-size:8px}.game-log-turn{font-size:10px}}@media(max-width:520px){.app.game-active{--card-h: 128px}.game-active .south-table .personal-assets,.game-active .game-log-list{grid-template-columns:1fr}.game-log-entry{font-size:10px}.game-log-content{display:flex;align-items:center;flex-wrap:wrap;gap:2px 5px}.game-log-time{margin-left:auto}}@media(hover:none){.game-active .owned-stack:has(.owned-card-wrap):hover .stack-cards{position:static;width:auto;min-height:30px;padding:0;flex-wrap:nowrap;gap:0;background:none;border:0;box-shadow:none}.game-active .owned-stack:has(.owned-card-wrap):hover .owned-card-wrap{width:35px;flex:0 0 35px}.game-active .owned-stack:has(.owned-card-wrap):hover .owned-card-wrap+.owned-card-wrap{margin-left:-29px}.game-active .owned-stack:has(.owned-card-wrap):hover .development-card{height:49px;width:35px}.game-active .owned-stack:has(.owned-card-wrap):hover .development-card>.art{top:0;right:0;bottom:0;left:0}.game-active .owned-stack:has(.owned-card-wrap):hover .card-bottom,.game-active .owned-stack:has(.owned-card-wrap):hover .card-story-name{display:none}.game-active .owned-stack:has(.owned-card-wrap):hover .card-score{font-size:12px}.game-active .owned-stack:has(.owned-card-wrap):hover .card-bonus,.game-active .owned-stack:has(.owned-card-wrap):hover .card-bonus .gem{width:10px;height:10px}}.app.game-active{--card-h: clamp(110px, calc((100dvh - 425px) / 3), 190px)}.game-active .market{margin:0;justify-content:center}.game-active .market-row{width:max-content;max-width:100%;justify-self:center;grid-template-columns:34px minmax(0,1fr)}.game-active .deck{max-height:none;aspect-ratio:auto}.game-active .deck-border:before,.game-active .deck-border:after{display:none}.game-active .noble{aspect-ratio:.58}.game-active .noble-name{width:100%;right:0;font-size:9px}.game-active .noble .art{overflow:hidden}.game-active .bank-section{min-height:0;height:auto}.game-active .token,.game-active .token-column{min-height:0}.game-active .bank{margin:0}.game-active .bank-actions .primary{height:auto;min-height:0;line-height:1.4}.game-active .bank-actions .text-button{min-height:0;line-height:1.4}.game-active .token-column>span{margin:0;line-height:1.4}.game-active .south-table{grid-template-columns:minmax(0,1fr) 215px}.game-log-content{display:flex;flex-wrap:wrap;align-items:center;gap:1px 5px}.game-log-action{display:inline;line-height:1.4}.game-log-time{margin-left:auto}.game-log-tokens{margin:0}.game-log-list{gap:5px}.game-log-turn{padding-top:5px;margin-top:6px}.game-active .personal-heading{gap:10px}.game-active .personal-assets .stack-cards{height:49px}.game-active .owned-stack:has(.owned-card-wrap):hover .stack-cards,.game-active .owned-stack:focus-within .stack-cards{height:auto}@media(min-width:861px)and (max-width:1180px){.app.game-active{--card-h: clamp(110px, calc((100dvh - 450px) / 3), 155px)}.game-active .market-row{grid-template-columns:27px 1fr}.game-active .south-table{grid-template-columns:minmax(0,1fr) 190px}.game-active .noble{aspect-ratio:.53}}@media(max-width:860px){.app.game-active{--card-h: clamp(128px, 24vw, 190px)}.game-active .market-row{width:100%;grid-template-columns:26px 1fr}.game-active .south-table{grid-template-columns:1fr}.game-active .noble{aspect-ratio:.6}.game-active .noble-name{font-size:7px}}@media(max-width:520px){.app.game-active{--card-h: 128px}}@media(min-width:861px){.game-active .market-court{grid-template-columns:minmax(0,1fr) minmax(195px,29%);gap:14px}.game-active .nobles-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.game-active .noble{aspect-ratio:.56}.game-active .noble-name{font-size:8px}.game-active .noble-info{height:44px;padding:3px 2px}.game-active .noble>.art{bottom:44px}.game-active .noble-condition-label{font-size:7px}.game-active .noble .card-requirements{gap:2px}.game-active .noble .card-requirements>span{font-size:8px}.game-active .court-note{font-size:8px}}.mobile-resources{display:none}@media(max-width:860px){.app.game-active{padding-bottom:calc(82px + env(safe-area-inset-bottom))}.game-active .mobile-resources{position:fixed;bottom:0;left:0;right:0;z-index:40;width:100%;display:grid;grid-template-columns:1.1fr repeat(6,1fr);gap:4px;padding:9px 12px max(9px,env(safe-area-inset-bottom));border:0;border-top:1px solid #c9b99d;background:#fffdf8f5;box-shadow:0 -4px 18px #5b4a3212;color:#625338;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.mobile-resources>span{display:grid;grid-template-columns:20px 1fr;align-items:center;gap:3px;justify-content:center}.mobile-resources>span:first-child{display:flex;flex-direction:column;gap:4px;justify-content:center}.mobile-resources b{font-size:12px}.mobile-resources small{grid-column:1/-1;font-size:8px;white-space:nowrap;color:#98876e}.mobile-resources>span:first-child b{font-size:17px;color:#7d6231}.game-active .affordable-legend{max-width:130px;white-space:normal;text-align:right;line-height:1.5}}.game-active .player-panel .avatar,.game-active .player-panel.self .avatar{width:38px;height:38px;min-width:38px;border-radius:50%;overflow:hidden;aspect-ratio:1;clip-path:circle(50%);border:1px solid #c6b798}.game-active .player-panel .avatar:after{display:none}.back-to-board{display:none}.asset-arrival{animation:assets-arrived .85s ease-out}@keyframes assets-arrived{0%,45%{background:#e4f1de;box-shadow:0 0 0 3px #7ba16a66}to{background:#fffdfa;box-shadow:none}}.kick-vote-panel{position:fixed;top:60px;left:50%;transform:translate(-50%);z-index:60;width:min(430px,calc(100vw - 24px));padding:16px 18px;background:#fffaf1;color:#58462f;border:1px solid #c4a577;border-radius:12px;box-shadow:0 12px 35px #35271733;font-size:12px}.kick-vote-panel>div:first-child{display:flex;align-items:center;gap:8px}.kick-vote-panel>div:first-child>span{margin-left:auto;font-variant-numeric:tabular-nums;color:#9f7e4a}.kick-vote-panel p{margin:10px 0;font-size:12px}.kick-vote-panel p small{display:block;font-size:10px;color:#9b886f;margin-top:5px}.kick-vote-panel>small{font-size:10px;color:#9b886f}.vote-buttons{display:flex;justify-content:flex-end;gap:8px}.vote-buttons button{padding:7px 17px;font-size:12px}.kick-vote-panel .primary{background:#52755d;color:#fff}.kick-vote-panel .secondary{background:#f5eddf;color:#735f43;border-color:#cabb9f}@media(max-width:860px){.game-active .mobile-resources{height:calc(60px + env(safe-area-inset-bottom));padding:6px 10px calc(6px + env(safe-area-inset-bottom));border-top:1px solid #c9b99d}.game-active .mobile-resources .hud-summary{gap:1px}.game-active .mobile-resources .hud-summary b{font-size:15px}.game-active .mobile-resources .hud-summary small{font-size:7px}.game-active .back-to-board{display:inline-flex;font-size:8px;padding:0;margin-left:auto}.game-active .personal-heading{flex-wrap:wrap;scroll-margin-top:80px}.game-active .personal-assets{scroll-margin-top:88px;scroll-margin-bottom:75px}.game-active .board-heading{scroll-margin-top:80px}.game-active .player-panel .avatar,.game-active .player-panel.self .avatar{width:31px;height:31px;min-width:31px}}.game-active .bank-section{justify-content:center}.game-active .bank-heading{margin-right:auto}.game-active .bank{flex:0 1 340px;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;width:340px}.game-active .bank-actions{margin-left:auto}@media(max-width:860px){.game-active .bank{flex:1 1 210px;width:auto;max-width:340px;gap:3px}.game-active .bank-actions{margin-left:3px}}.game-active .room-chat-trigger,.game-active .room-chat-send{background:#52755d;border-color:#52755d}.game-active .room-chat-message.is-mine p{background:#e8f0e5}.game-active .left-players .left-reserved{display:block;min-width:0;padding:12px 10px;border:1px solid #ded6c8;border-radius:12px;background:#fffdf9}.game-active .left-reserved h3{font-size:11px;margin-bottom:9px}.game-active .left-reserved .reserved-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.game-active .left-reserved .reserved-empty{display:grid;place-items:center}.game-active .south-table .personal-assets{grid-template-columns:minmax(0,1fr)}@media(max-width:860px){.game-active .room-chat{bottom:calc(72px + env(safe-area-inset-bottom))}.game-active .room-chat-panel{max-height:calc(100dvh - 145px - env(safe-area-inset-bottom))}}.game-active .game-chat-dock{min-width:0}.game-active .room-chat.is-docked{position:static;inset:auto;z-index:auto;min-width:0;width:100%}.game-active .room-chat.is-docked .room-chat-panel{width:100%;max-height:none;margin:0;border:1px solid #ded6c8;border-radius:12px;background:#fffdf9;box-shadow:0 3px 12px #55402607}.room-chat.is-docked .room-chat-heading{padding:12px 10px;gap:6px;border-color:#e8e0d3}.room-chat.is-docked .room-chat-heading h2{font-size:13px;color:#514230}.room-chat.is-docked .room-chat-heading p{font-size:10px;color:#84745c}.room-chat.is-docked .room-chat-history{height:230px;min-height:120px;padding:10px 8px}.room-chat.is-docked .room-chat-meta{flex-wrap:wrap;gap:3px 5px}.room-chat.is-docked .room-chat-meta strong{min-width:0;max-width:100%;font-size:11px}.room-chat.is-docked .room-chat-meta time{font-size:9px}.room-chat.is-docked .room-chat-message p{font-size:12px;padding:7px 8px;line-height:1.6}.room-chat.is-docked .room-chat-form{padding:9px 8px;border-color:#e8e0d3}.room-chat.is-docked textarea{min-height:68px;font-size:12px}.room-chat.is-docked .room-chat-compose-bottom{align-items:flex-end;flex-wrap:wrap;gap:6px}.room-chat.is-docked .room-chat-compose-bottom small{flex-basis:100%;font-size:9px}.room-chat.is-docked .room-chat-send{width:100%;justify-content:center;min-height:36px}.room-chat.is-docked .room-chat-retention{font-size:9px;margin-bottom:8px;color:#796d5d;opacity:1}@media(max-width:860px){.game-active .game-layout:has(.game-chat-dock)>.player-column{display:contents}.game-active .game-layout:has(.game-chat-dock) .left-players>.player-panel{grid-column:1}.game-active .game-layout:has(.game-chat-dock) .right-players>.player-panel{grid-column:2}.game-active .game-layout:has(.game-chat-dock) .player-column>.player-panel:nth-child(1){grid-row:2}.game-active .game-layout:has(.game-chat-dock) .player-column>.player-panel:nth-child(2){grid-row:3}.game-active .game-layout:has(.game-chat-dock) .left-reserved{grid-column:1;grid-row:4}.game-active .game-chat-dock{grid-column:1 / -1;grid-row:5;margin-bottom:88px}.room-chat.is-docked .room-chat-history{height:220px}.room-chat.is-docked textarea{font-size:16px}.room-chat.is-docked .room-chat-compose-bottom small{flex-basis:auto}.room-chat.is-docked .room-chat-send{width:auto;min-height:40px;padding:8px 16px}}.game-active{--face-title-size: 10px;--face-score-size: 27px;--face-cost-size: 10px}.prestige-white{--prestige-tint: #eddc9c}.prestige-blue{--prestige-tint: #65bcf3}.prestige-green{--prestige-tint: #66d4a3}.prestige-red{--prestige-tint: #f59070}.prestige-black{--prestige-tint: #b59be9}.game-active .prestige-frame{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;border-radius:inherit;padding:2px;pointer-events:none;background:linear-gradient(125deg,#d7b87d,var(--prestige-tint),#fff4d6,var(--prestige-tint),#a38a57);background-size:350% 350%;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:prestige-edge 7s ease-in-out infinite}.game-active .market .prestige-card{box-shadow:0 0 8px color-mix(in srgb,var(--prestige-tint) 32%,transparent),0 2px 6px #4a392422}.glass-sheen{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;overflow:hidden;border-radius:inherit;pointer-events:none;box-shadow:inset 0 0 0 1px #e4f3ff55}.development-card>.glass-sheen{bottom:30px}.glass-sheen:after{content:"";position:absolute;top:-50%;right:-100%;bottom:-50%;left:-100%;background:linear-gradient(112deg,transparent 35%,#dae9ff08 42%,#ffffff65 47%,#dbf8ff20 49%,#ffffff38 51%,transparent 58%);transform:translate(-45%);animation:glass-reflection 7.5s ease-in-out infinite}@keyframes glass-reflection{0%,15%{transform:translate(-45%);opacity:0}25%{opacity:.85}55%{transform:translate(45%);opacity:.65}65%,to{transform:translate(45%);opacity:0}}@media(prefers-reduced-motion:reduce){.glass-sheen:after{animation:none;opacity:0}}@keyframes prestige-edge{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@media(prefers-reduced-motion:reduce){.game-active .prestige-frame{animation:none}}@media(min-width:861px){.app.game-active{--card-h: clamp(148px, calc((100dvh - 390px) / 3), 195px)}.game-active .market-court{grid-template-columns:minmax(0,1fr) clamp(250px,22vw,326px);gap:22px;align-items:stretch}.game-active .nobles-section{border-left:1px solid #d9cdb8;padding-left:22px}}.game-active .market{display:block;margin:0;min-width:0}.game-active .market-court .section-caption{height:23px;margin:0 0 10px;display:flex;align-items:center;font-size:11px}.game-active .market-tiers{display:grid;gap:12px}.game-active .market-row{width:100%;max-width:100%;grid-template-columns:27px minmax(0,1fr);gap:8px}.game-active .cards-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.game-active .market .deck{width:27px}.game-active .nobles-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 8px;padding:0;overflow:visible}.game-active .nobles-row>.noble{grid-column:span 2}.game-active .court-count-5>.noble:nth-child(3){grid-column:2 / span 2;grid-row:2}.game-active .court-count-5>.noble:nth-child(4){grid-column:1 / span 2;grid-row:3}.game-active .court-count-5>.noble:nth-child(5){grid-column:3 / span 2;grid-row:3}.game-active .court-count-3>.noble:last-child,.game-active .court-count-1>.noble{grid-column:2 / span 2}.game-active .noble{aspect-ratio:auto;height:var(--card-h);min-width:0;width:100%;border-radius:8px;border:1px solid #b9a27c;background:#faf4e9;box-shadow:0 3px 8px #654b2c14;transition:border-color .18s,box-shadow .18s}.game-active .noble:hover{border-color:#8d7048;box-shadow:0 4px 13px #654b2c25}.game-active .nobles-row>.noble{isolation:isolate}.game-active .legendary-card .card-top,.game-active .legendary-card .card-story-name,.game-active .legendary-card .card-bottom{z-index:2}.game-active .noble>.art{top:0;right:0;bottom:30px;left:0}.game-active .noble-info{height:30px;grid-template-columns:1fr;padding:5px;align-content:center;gap:5px;background:linear-gradient(#fffaf2,#f5eddc)}.game-active .noble-name,.game-active .market .card-story-name{display:block;position:absolute;left:0;right:0;bottom:30px;width:100%;padding:18px 4px 6px;background:linear-gradient(transparent,#191520c9 48%,#191520e8);font-family:var(--serif);font-size:var(--face-title-size);font-weight:500;line-height:1.4;color:#fff8e7;text-shadow:0 1px 3px #141019;white-space:normal;word-break:keep-all;overflow-wrap:anywhere;text-overflow:clip;text-align:center;opacity:1}.game-active .market .development-card>.art{bottom:30px}.game-active .market .card-bottom{height:30px}.game-active .market .card-bottom .cost,.game-active .noble .card-requirements>span{font-size:var(--face-cost-size);line-height:1;gap:2px}.game-active .market .card-bottom .gem,.game-active .noble .card-requirements .gem{width:14px;height:14px}.game-active .card-requirements b{font:inherit;font-weight:700}.game-active .noble .card-requirements>span b{font:600 var(--face-cost-size)/1 "Noto Sans KR",sans-serif}.game-active .noble-info>.card-requirements{display:flex}.game-active .market .card-score,.game-active .noble-score b{font:600 var(--face-score-size)/1 "Cormorant Garamond",Georgia,serif}.game-active .market .card-score small,.game-active .noble-score small{font:400 9px/1 Noto Sans KR,sans-serif}.game-active .noble .card-requirements{gap:7px}.game-active .noble .card-requirements>span{gap:3px;font-size:var(--face-cost-size);color:#675b4b}.game-active .noble .card-requirements i{width:12px;height:16px}.game-active .noble .card-requirements .met{color:#367255}.noble-qualified{position:absolute;right:6px;top:6px;width:21px;height:21px;display:grid;place-items:center;background:#3c6258;color:#fff;border-radius:50%}.game-active .noble-score{top:6px;left:7px}.game-active .noble-score b{font-size:var(--face-score-size)}.game-active .noble-score svg{width:14px}.game-active .noble-score small{font-size:9px}.game-active .card-popover{position:fixed;z-index:80;width:min(380px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow-y:auto;padding:16px;background:#fffdf8;color:#463e33;border:1px solid #cbb797;border-radius:13px;box-shadow:0 12px 45px #38271130,0 2px 8px #38271112;outline:none;animation:card-popover-in .14s ease-out}.card-popover>header{display:flex;align-items:center;gap:12px;margin-bottom:13px}.card-popover h2{font:600 15px var(--serif);color:#57452d;margin:0;flex:1}.card-popover .icon-button{flex:none;width:27px;height:27px;min-height:0;padding:4px;background:none}.game-active .card-popover .purchase-preview{display:grid;grid-template-columns:86px minmax(0,1fr);gap:12px}.game-active .card-popover .purchase-preview>.development-card{width:86px;height:123px;pointer-events:none}.game-active .card-popover .card-lore{font-size:10px;line-height:1.65;margin-bottom:12px}.card-popover .purchase-details caption,.card-popover .purchase-details table{font-size:10px}.card-popover .purchase-details th,.card-popover .purchase-details td{padding:4px 2px}.card-popover .purchase-details tbody th span{display:none}.card-popover .purchase-details .gem{width:19px;height:19px}.card-popover .actual-payment{gap:6px;padding-top:9px}.card-popover .payment-note{display:none}.game-active .card-popover .purchase-actions{margin-top:14px;gap:8px}.game-active .card-popover .purchase-actions button{font-size:11px;padding:9px 10px;flex:1;justify-content:center;min-height:36px}.game-active .card-popover .primary{background:#3c6258;border-color:#3c6258;color:#fff}.game-active .card-popover .muted{font-size:11px}.noble-preview-art{height:180px;position:relative;overflow:hidden;border-radius:7px}.noble-preview-art>.art,.noble-preview-art svg{width:100%;height:100%}.noble-preview-art>span{position:absolute;top:10px;left:10px;display:flex;gap:5px;align-items:center;color:#fff;text-shadow:0 1px 3px #302333}.noble-preview-heading{display:flex;justify-content:space-between;align-items:center;margin:15px 0 10px;font-size:12px;color:#756044}.noble-preview-heading small{font-size:10px;color:#8e8375}.game-active .card-popover .card-requirements{justify-content:center;gap:22px}.game-active .card-popover .card-requirements>span{font-size:17px;gap:6px}.game-active .card-popover .card-requirements i{width:19px;height:25px}.game-active .card-popover .card-requirements .gem{width:22px;height:22px}.noble-preview-note{font-size:11px;line-height:1.7;color:#8c7b64;margin:14px 0 0}.game-active .card-popover.portrait-popover{width:min(370px,calc(100vw - 24px),calc((100dvh - 300px)*.75));padding:0;border-color:#b49b73;border-radius:14px;box-shadow:0 20px 65px #21172555,0 0 0 4px #fcf4e126}.portrait-popover>header{position:absolute;z-index:8;top:10px;right:10px;margin:0}.portrait-popover>header h2{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.portrait-popover>header .icon-button{width:30px;height:30px;border:1px solid #f8ecd577;border-radius:50%;color:#fff8ec;background:#1c172acf;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.portrait-reveal{position:relative;aspect-ratio:3 / 4;isolation:isolate;overflow:hidden;background:#242030;border-radius:13px 13px 0 0}.portrait-reveal>.art,.portrait-reveal>.art>svg{display:block;width:100%;height:100%}.portrait-reveal-score{position:absolute;z-index:5;top:12px;left:12px;display:flex;align-items:center;gap:5px;padding:4px 9px;color:#fff6e3;background:#231b2cb3;border:1px solid #f5e0b855;border-radius:30px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.portrait-reveal-score b{font:600 26px/1 Cormorant Garamond,Georgia,serif}.portrait-reveal-score small{font-size:10px}.portrait-reveal-caption{position:absolute;z-index:5;bottom:0;left:0;right:0;padding:38px 18px 16px;color:#fff9ed;background:linear-gradient(transparent,#171323c4 48%,#171323e8);text-shadow:0 2px 6px #0009}.portrait-reveal-caption small{font-size:10px;letter-spacing:.16em;color:#efdcb7}.portrait-reveal-caption h3{margin:5px 0 0;font:600 19px/1.4 var(--serif);word-break:keep-all}.portrait-reveal-details{padding:14px 18px 15px}.portrait-popover .noble-preview-heading{margin-top:0}.game-active .portrait-popover .card-lore{font-size:11px;margin:0 0 10px}.game-active .portrait-popover>.purchase-actions{margin:0;padding:0 18px 16px}.game-active .portrait-popover>p.muted{margin:0;padding:0 18px 14px}.portrait-popover .purchase-details table{width:100%}.portrait-popover .noble-preview-note{font-size:10px;line-height:1.65;margin-top:10px}.portrait-popover .portrait-motion{--portrait-detail: 1}@keyframes card-popover-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.game-active .card-popover{animation:none}}@media(max-width:1180px)and (min-width:861px){.game-active .game-layout{grid-template-columns:150px minmax(0,1fr) 150px;gap:8px}.game-active .market-court{grid-template-columns:minmax(0,1fr) 250px;gap:22px}}@media(max-width:860px){.game-active .nobles-section{display:block;padding:12px;border:1px solid #ded4c4;border-radius:10px;background:#f8f3e9}.game-active .nobles-section .section-caption{display:flex;justify-content:center;margin-bottom:9px;font-size:11px}.game-active .nobles-row{width:min(100%,276px);margin:auto;gap:12px 8px}.game-active .noble{height:180px;min-width:0}.game-active .noble-name{font-size:10px}.game-active .card-popover{max-height:calc(100dvh - 96px)}}@media(max-width:520px){.game-active .market .card-bottom .costs{flex-wrap:wrap;justify-content:center;gap:1px 2px}}@media(max-width:860px){.game-active .nobles-section{padding:8px}.game-active .nobles-section .section-caption{justify-content:flex-start;margin-bottom:6px;height:18px}.game-active .nobles-row{width:100%;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.game-active .nobles-row>.noble:nth-child(n){grid-column:auto;grid-row:auto;height:122px}.game-active .nobles-row .noble>.art{top:0;right:0;bottom:23px;left:0}.game-active .nobles-row .noble-name{bottom:23px;padding:12px 2px 4px;font-size:9px;line-height:1.3}.game-active .nobles-row .noble-info{height:23px;padding:2px 1px}.game-active .nobles-row .card-requirements{justify-content:center;flex-wrap:nowrap;gap:2px}.game-active .nobles-row .card-requirements>span{gap:1px;font-size:10px}.game-active .nobles-row .card-requirements .gem{width:10px;height:12px}.game-active .nobles-row .noble-score{top:4px;left:4px;gap:1px}.game-active .nobles-row .noble-score b{font-size:17px}.game-active .nobles-row .noble-score svg{width:10px}.game-active .nobles-row .noble-score small,.game-active .nobles-row .portrait-motion{display:none}}.portrait-motion{pointer-events:none}.portrait-water-layer{animation:portrait-water-flow 9s ease-in-out infinite}.portrait-hair-layer{animation:portrait-hair-sway 7.5s ease-in-out infinite;transform-origin:50px 45px}.legend-motion .portrait-hair-layer{animation-name:portrait-hair-soft}.portrait-sheen-band{animation:portrait-silk 12s ease-in-out infinite}.portrait-cloth-light{opacity:.55}.legend-motion .portrait-cloth-light{opacity:.3}.portrait-subject-light{animation:portrait-light 6s ease-in-out infinite}.legend-motion .portrait-subject-light{animation-name:portrait-light-soft}.apex-motion .portrait-subject-light{animation:portrait-light-intense 4.5s ease-in-out infinite}.apex-motion .portrait-cloth-light{opacity:.65}.apex-motion .portrait-sheen-band{animation-duration:8s}.apex-motion .portrait-flame-layer{animation-duration:2.6s}.apex-motion .portrait-lunar-layer{animation:portrait-light-intense 4.5s ease-in-out infinite}.portrait-flame-layer{animation:portrait-flame 3.8s ease-in-out infinite}.portrait-lunar-layer{animation:portrait-light-soft 5s ease-in-out infinite}.owned-stacks .portrait-motion{display:none}@keyframes portrait-water-flow{0%,to{transform:translate(0)}50%{transform:translate(.4px,-.4px)}}@keyframes portrait-hair-sway{0%,to{transform:translate(0)}45%{transform:translate(.4px,-.1px)}75%{transform:translate(-.15px,.05px)}}@keyframes portrait-hair-soft{0%,to{transform:translate(0)}50%{transform:translate(.3px,-.08px)}}@keyframes portrait-silk{0%,12%{transform:translate(-25px)}72%,to{transform:translate(140px)}}@keyframes portrait-light{0%,to{opacity:.05}50%{opacity:.45}}@keyframes portrait-light-soft{0%,to{opacity:.03}50%{opacity:.25}}@keyframes portrait-light-intense{0%,to{opacity:.16}50%{opacity:.85}}@keyframes portrait-flame{0%,to{transform:translate(0);opacity:.55}40%{transform:translate(.15px,-.3px);opacity:.8}70%{transform:translate(-.1px,.1px);opacity:.65}}@media(prefers-reduced-motion:reduce){.portrait-motion{display:none}}
