.gm-game{z-index:20;background:var(--gm-board-bg);color:var(--gm-ink);font-family:var(--f-sans);flex-direction:column;display:flex;position:fixed;inset:0}.gm-top{background:var(--gm-surface);border-bottom:1px solid var(--gm-line);flex:none;align-items:center;gap:10px;height:58px;padding:0 10px;display:flex}.gm-body{flex:1;min-height:0;display:flex}.gm-stage{flex:1;min-width:0;position:relative;overflow:hidden}#gm-canvas{cursor:grab;width:100%;height:100%;display:block;position:absolute;inset:0}#gm-canvas:active{cursor:grabbing}#gm-canvas:focus{outline:none}#gm-canvas:focus-visible{outline:3px solid var(--gm-gold-deep);outline-offset:-3px}.gm-side{background:var(--gm-surface);border-left:1px solid var(--gm-line);flex-direction:column;flex:none;gap:22px;width:340px;padding:20px;display:flex;overflow-y:auto}.gm-side[hidden],#gm-minimob[hidden],#gm-minimob-panel[hidden]{display:none!important}.gm-mob:empty{display:none}.gm-mob{background:var(--gm-surface);border-top:1px solid var(--gm-line);padding-bottom:env(safe-area-inset-bottom);flex:none}.gm-game button{font-size:.8333rem;line-height:normal}.gm-game button:disabled{cursor:default}@media (hover:hover){.gm-hbg:hover{background:var(--gm-surface-2)!important}.gm-hbd:hover{border-color:var(--gm-ink)!important}}.gm-key:active{background:var(--gm-active)!important}.gm-dialog:focus{outline:none}.gm-sr{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.gm-defs{flex-direction:column;gap:12px;min-width:0;display:flex}.gm-defs:empty{display:none}.gm-defs__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;min-width:0;display:flex}.gm-defs__title{font:inherit;flex:none;margin:0;font-weight:700}.gm-defs__zone{flex:100%;min-width:0;max-width:100%;display:block;position:relative}.gm-defs--sheet .gm-defs__zone{flex:none}.gm-defs--sheet{height:min(85dvh,720px);overflow:hidden}.gm-defs--sheet:has(.gm-defs__lock){height:auto}.gm-defs__zone:after{content:"";border-right:2px solid var(--gm-ink-2);border-bottom:2px solid var(--gm-ink-2);pointer-events:none;width:7px;height:7px;position:absolute;top:50%;right:13px;transform:translateY(-70%)rotate(45deg)}.gm-defs__zone select{-webkit-appearance:none;appearance:none;border-radius:var(--gm-r-md);border:1.5px solid var(--gm-line-2);background:var(--gm-surface);width:100%;max-width:100%;min-height:44px;color:var(--gm-ink);font:700 .8125rem/1.2 var(--f-sans);text-overflow:ellipsis;white-space:nowrap;cursor:pointer;transition:border-color var(--gm-dur) var(--gm-ease);padding:0 32px 0 12px;display:block;overflow:hidden}.gm-defs__zone select:focus-visible{outline:3px solid var(--gm-gold-deep);outline-offset:2px}.gm-game .gm-defs__tabs{border-radius:var(--gm-r-md);background:var(--gm-surface-2);gap:4px;padding:4px;display:flex}.gm-game .gm-defs__tabs [role=tab]{border-radius:max(0px, calc(var(--gm-r-md) - 3px));min-width:0;min-height:44px;color:var(--gm-ink);font:700 .875rem/1 var(--f-sans);white-space:nowrap;cursor:pointer;transition:background-color var(--gm-dur) var(--gm-ease), color var(--gm-dur) var(--gm-ease);background:0 0;border:none;flex:1 1 0;padding:0 8px}.gm-game .gm-defs__tabs [aria-selected=true]{background:var(--gm-ink);color:var(--gm-bg)}.gm-game .gm-defs__tabs [role=tab]:focus-visible{outline:3px solid var(--gm-gold-deep);outline-offset:2px}.gm-defs__list{overscroll-behavior:contain;scrollbar-width:thin;max-height:clamp(240px,44vh,460px);margin:0 -12px;position:relative;overflow-y:auto;-webkit-mask-image:linear-gradient(#000 calc(100% - 28px),#0000);mask-image:linear-gradient(#000 calc(100% - 28px),#0000)}.gm-defs--sheet .gm-defs__list{flex:auto;min-height:0;max-height:none;margin:0 -12px}.gm-defs__ol{flex-direction:column;gap:2px;margin:0;padding:0 0 28px;list-style:none;display:flex}.gm-game .gm-def{grid-template-columns:calc(var(--gm-def-nw,2ch) + 2px) minmax(0, 1fr);border-radius:var(--gm-r-sm);width:100%;min-height:44px;color:var(--gm-ink);text-align:left;font:400 .9375rem/1.4 var(--f-sans);cursor:pointer;transition:background-color var(--gm-dur) var(--gm-ease);background:0 0;border:none;align-items:baseline;column-gap:12px;padding:10px 12px;display:grid;position:relative}.gm-def__n{font-variant-numeric:tabular-nums;text-align:right;font-weight:700}.gm-def__b{overflow-wrap:anywhere;flex-direction:column;gap:4px;min-width:0;display:flex}.gm-def__l{color:var(--gm-ink-2);white-space:nowrap}.gm-def[data-ok] .gm-def__t{color:var(--gm-ink-2)}.gm-def__a{font:700 .8125rem/1.2 var(--f-sans);letter-spacing:.04em;color:var(--gm-sage-deep);align-items:center;gap:6px;display:inline-flex}.gm-game .gm-def[aria-current=true]{background:var(--gm-sel)}.gm-def[aria-current=true]:before{content:"";background:var(--gm-ink);border-radius:0 2px 2px 0;width:3px;position:absolute;top:10px;bottom:10px;left:0}.gm-game .gm-def:focus-visible{outline:3px solid var(--gm-gold-deep);outline-offset:-3px}.gm-game .gm-def:active{background:var(--gm-sel)}@media (hover:hover){.gm-game .gm-def:hover{background:var(--gm-surface-2)}.gm-game .gm-def[aria-current=true]:hover{background:var(--gm-sel)}.gm-game .gm-defs__tabs [aria-selected=false]:hover{background:var(--gm-surface)}.gm-defs__zone select:hover{border-color:var(--gm-ink)}}.gm-defs__empty{color:var(--gm-ink-2);margin:0;padding:12px;font-size:.9375rem}.gm-defs__lock{border-radius:var(--gm-r-lg);background:var(--gm-surface-2);flex-direction:column;gap:8px;padding:20px;display:flex}.gm-defs__lockt{font:500 1.15rem/1.2 var(--f-serif);align-items:center;gap:8px;display:flex}.gm-defs__lock p{color:var(--gm-ink-2);margin:0 0 4px;font-size:.9375rem;line-height:1.45}@media (prefers-reduced-motion:reduce){.gm-def,.gm-defs__tabs [role=tab],.gm-defs__zone select{transition:none!important}}html[data-motion=reduce] .gm-def,html[data-motion=reduce] .gm-defs__tabs [role=tab],html[data-motion=reduce] .gm-defs__zone select{transition:none!important}.gm-av{font-weight:700;line-height:1;font-family:var(--f-sans);box-shadow:0 0 0 2px var(--gm-surface);border-radius:50%;flex:none;place-items:center;display:inline-grid}.gm-av.is-free{width:32px;height:32px;box-shadow:none;border:1.5px dashed var(--gm-line-2);background:0 0}.gm-room-bar{flex:none;align-items:center;gap:12px;min-width:0;display:flex}.gm-room-tag{border-radius:var(--gm-r-pill);background:var(--gm-surface-2);min-height:30px;color:var(--gm-ink);font:700 .8125rem/1 var(--f-sans);white-space:nowrap;align-items:center;gap:8px;padding:0 12px;display:inline-flex}.gm-room-dot{background:var(--gm-sage);border-radius:50%;flex:none;width:8px;height:8px}.gm-room-dot.is-wait{background:var(--gm-gold);animation:1.4s ease-in-out infinite gm-pulse}.gm-room-ppl{align-items:center;gap:12px;margin:0;padding:0;list-style:none;display:flex}.gm-room-ppl li{align-items:center;gap:6px;min-width:0;display:inline-flex}.gm-room-ppl.is-stack{gap:0}.gm-room-ppl.is-stack li{position:relative}.gm-room-ppl.is-stack li+li{margin-left:-6px}.gm-room-ppl.is-stack li[data-z="4"]{z-index:4}.gm-room-ppl.is-stack li[data-z="3"]{z-index:3}.gm-room-ppl.is-stack li[data-z="2"]{z-index:2}.gm-room-pn{text-overflow:ellipsis;white-space:nowrap;max-width:88px;font:700 .875rem/1 var(--f-sans);color:var(--gm-ink);overflow:hidden}.gm-game .gm-room-inv{border-radius:var(--gm-r-md);background:var(--gm-ink);min-height:46px;color:var(--gm-bg);font:700 .95rem/1 var(--f-sans);cursor:pointer;white-space:nowrap;border:none;align-items:center;gap:8px;padding:0 14px;display:inline-flex}.gm-game .gm-room-mob{border-radius:var(--gm-r-md);border:1.5px solid var(--gm-line-2);background:var(--gm-surface);min-height:46px;color:var(--gm-ink);font:700 .9rem/1 var(--f-sans);cursor:pointer;flex:none;align-items:center;gap:8px;padding:0 12px 0 10px;display:inline-flex}.gm-room-stack{align-items:center;display:inline-flex}.gm-room-stack .gm-av{position:relative}.gm-room-stack .gm-av+.gm-av{margin-left:-6px}.gm-room-stack .gm-av[data-z="4"]{z-index:4}.gm-room-stack .gm-av[data-z="3"]{z-index:3}.gm-room-stack .gm-av[data-z="2"]{z-index:2}.gm-room-wrap{z-index:4;place-items:center;padding:24px 16px;display:grid;position:absolute;inset:0;overflow-y:auto}.gm-room-wrap.is-over{background:color-mix(in srgb, var(--gm-board-bg) 82%, transparent)}.gm-room-wait{text-align:center;flex-direction:column;align-items:center;gap:8px;display:flex}.gm-room-wait .gm-skel{margin-bottom:8px}.gm-room-wait__t{font:500 1.35rem/1.2 var(--f-serif)}.gm-room-wait__s{color:var(--gm-ink-2);font-size:.95rem}.gm-room-card{border-radius:var(--gm-r-3xl);background:var(--gm-surface);border:1px solid var(--gm-line);width:min(460px,100%);box-shadow:var(--gm-shadow);flex-direction:column;gap:12px;padding:28px;display:flex}.gm-room-eyebrow{font:700 .75rem/1 var(--f-sans);letter-spacing:.16em;text-transform:uppercase;color:var(--gm-sage-deep)}.gm-room-eyebrow.is-err{color:var(--gm-danger)}.gm-room-title{font:500 1.6rem/1.15 var(--f-serif);text-wrap:balance;margin:0}.gm-room-sub{color:var(--gm-ink-2);margin:0;line-height:1.45}.gm-room-online{flex-wrap:wrap;gap:8px 16px;margin:4px 0 0;padding:0;list-style:none;display:flex}.gm-room-online li{align-items:center;gap:8px;font-weight:700;display:inline-flex}.gm-room-note{border-radius:var(--gm-r-md);background:var(--gm-gold-soft);color:var(--gm-ink);margin:0;padding:12px 14px;font-size:.9375rem;line-height:1.45}.gm-room-field{flex-direction:column;gap:6px;margin-top:8px;display:flex}.gm-room-field label{font-weight:700}.gm-room-input{border-radius:var(--gm-r-md);border:1.5px solid var(--gm-line-2);background:var(--gm-bg);width:100%;min-height:48px;color:var(--gm-ink);font:400 1rem/1.2 var(--f-sans);padding:0 14px}.gm-room-input:hover{border-color:var(--gm-ink-3)}.gm-room-input:focus-visible{outline:3px solid var(--gm-gold-deep);outline-offset:2px}.gm-room-input[aria-invalid=true]{border-color:var(--gm-danger)}.gm-room-help{color:var(--gm-ink-2);margin:0;font-size:.875rem;line-height:1.4}.gm-room-help.is-err{color:var(--gm-danger);font-weight:700}.gm-room-actions{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.gm-room-actions.is-end{justify-content:flex-end;margin-top:0}.gm-game .gm-room-btn{border-radius:var(--gm-r-md);border:1.5px solid var(--gm-ink);background:var(--gm-ink);min-height:48px;color:var(--gm-bg);font:700 .9375rem/1 var(--f-sans);cursor:pointer;white-space:nowrap;transition:background-color var(--gm-dur) var(--gm-ease), border-color var(--gm-dur) var(--gm-ease), color var(--gm-dur) var(--gm-ease);justify-content:center;align-items:center;gap:8px;padding:0 18px;text-decoration:none;display:inline-flex}.gm-game .gm-room-btn.is-ghost{border-color:var(--gm-line-2);color:var(--gm-ink);background:0 0}.gm-game .gm-room-btn.is-danger{border-color:var(--gm-danger);background:var(--gm-danger);color:var(--gm-bg)}.gm-game .gm-room-btn.is-danger.is-quiet{color:var(--gm-danger);background:0 0}.gm-game .gm-room-btn.is-quiet{text-underline-offset:3px;border-color:#0000;align-self:flex-start;margin-left:-6px;padding:0 6px;text-decoration:underline}.gm-game .gm-room-btn.is-sm{min-height:44px;padding:0 14px}.gm-game .gm-room-btn.is-wide{width:100%}.gm-game .gm-room-btn:disabled{cursor:default;opacity:.7}.gm-game .gm-room-btn:focus-visible{outline:3px solid var(--gm-gold-deep);outline-offset:2px}@media (hover:hover){.gm-game .gm-room-btn:not(.is-ghost):not(.is-danger):hover,.gm-game .gm-room-inv:hover{filter:brightness(1.15)}.gm-game .gm-room-btn.is-ghost:hover,.gm-game .gm-room-mob:hover{border-color:var(--gm-ink)}.gm-game .gm-room-btn.is-quiet:hover{background:var(--gm-surface-2);border-color:#0000}}.gm-room-pill{z-index:6;border-radius:var(--gm-r-xl);background:var(--gm-surface);border:1px solid var(--gm-line);max-width:min(420px,100% - 32px);box-shadow:var(--gm-shadow);color:var(--gm-ink);align-items:center;gap:10px;padding:10px 16px;font-size:.875rem;line-height:1.35;display:flex;position:absolute;bottom:16px;left:16px}.gm-room-pill__s{color:var(--gm-ink-2)}@media (width<=899px){.gm-room-pill{max-width:calc(100% - 120px);top:10px;bottom:auto;left:10px}}.gm-room-mh{font:500 1.6rem/1.15 var(--f-serif);margin:0}.gm-room-msub{color:var(--gm-ink-2);margin:-8px 0 0}.gm-room-sec{border-top:1px solid var(--gm-line);flex-direction:column;gap:10px;padding-top:16px;display:flex}.gm-room-h3{font:700 1rem/1.2 var(--f-sans);justify-content:space-between;align-items:baseline;gap:12px;margin:0;display:flex}.gm-room-count{color:var(--gm-ink-2);font-size:.875rem;font-weight:400}.gm-fam-lead{font:500 1.2rem/1.3 var(--f-serif);color:var(--gm-ink);margin:0}.gm-fam-txt{color:var(--gm-ink-2);margin:0;line-height:1.5}.gm-room-linkrow{gap:8px;display:flex}.gm-room-linkrow .gm-room-input{text-overflow:ellipsis;flex:1;min-width:0;font-size:.9375rem}.gm-room-coderow{flex-wrap:wrap;align-items:center;gap:4px 12px;display:flex}.gm-room-codev{flex:auto;justify-content:space-between;align-items:center;gap:12px;display:flex}.gm-room-codel{color:var(--gm-ink-2);font-size:.9375rem}.gm-room-code{font:700 1.25rem/1 var(--f-mono);letter-spacing:.08em;color:var(--gm-ink)}@media (width<=559px){.gm-room-codel{flex:100%}}.gm-room-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.gm-room-row{align-items:center;gap:12px;min-height:48px;display:flex}.gm-room-row__n{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:700;overflow:hidden}.gm-room-row.is-free .gm-room-row__n{color:var(--gm-ink-2);font-weight:400}.gm-room-badge{border-radius:var(--gm-r-pill);background:var(--gm-surface-2);color:var(--gm-ink-2);font:700 .75rem/1 var(--f-sans);flex:none;padding:4px 8px}.gm-room-badge.is-host{background:var(--gm-sage-soft);color:var(--gm-sage-deep)}@media (width<=479px){.gm-room-actions>*{flex:100%}.gm-room-card{padding:24px 20px}}@media (prefers-reduced-motion:reduce){.gm-room-dot.is-wait{animation:none}.gm-game .gm-room-btn{transition:none}}html[data-motion=reduce] .gm-room-dot.is-wait{animation:none}.gm-skel{background:linear-gradient(var(--gm-line) 1px, transparent 1px) 0 0 / 14px 14px, linear-gradient(90deg, var(--gm-line) 1px, transparent 1px) 0 0 / 14px 14px, var(--gm-surface);border:1.5px solid var(--gm-ink);border-radius:12px;width:168px;height:112px;animation:1.4s ease-in-out infinite gm-pulse}@keyframes gm-pulse{50%{opacity:.55}}@media (prefers-reduced-motion:reduce){.gm-skel{animation:none}}html[data-motion=reduce] .gm-skel{animation:none}
