@import"https://fonts.googleapis.com/css2?family=Jua&family=Do+Hyeon&display=swap";@font-face{font-family:NexonMaplestory;src:local("Maplestory OTF Bold"),local("MaplestoryOTFBold"),local("Maplestory Bold"),url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_20-04@2.1/MaplestoryOTFBold.woff) format("woff");font-weight:700;font-style:normal;font-display:block}:root{color-scheme:light;--room-font-display: "NexonMaplestory", "Apple SD Gothic Neo", "Noto Sans KR", sans-serif;--room-bg-image: url(/assets/ui/non-game-stage-bg.png);--room-sky: #67bbff;--room-border: #4a7429;--room-border-dark: #2f4a1c;--room-border-soft: rgba(89, 128, 56, .6);--room-green: #a8de5a;--room-green-strong: #7fc44c;--room-text: #30481f;--room-text-soft: #4d6740;--room-shadow: rgba(41, 66, 26, .22);--radius-control: 14px;--radius-pill: 999px;--ink: #15332a;--good: #62d889;--bad: #ff8e78;--text-strong: #1f6243;--text-strong-soft: #173a2f;--text-primary: #284d40;--text-muted: #5c7668;--text-accent: #1d9460;--text-on-accent: #f8fffd;--text-brand: #25a35f;--text-brand-soft: #2f8555;--text-danger: #b15b47;--text-warn: #8a6428;--text-success: #2f7b58;--text-note: #5f9f79;--text-observed: #4fcb88;--surface-elevated: linear-gradient(180deg, rgba(248, 247, 240, .96), rgba(232, 244, 234, .95));--surface-card: rgba(247, 246, 239, .9);--surface-card-strong: rgba(241, 247, 239, .94);--surface-interactive: rgba(242, 247, 241, .94);--surface-interactive-hover: rgba(234, 245, 236, .98);--surface-input: linear-gradient(180deg, rgba(252, 251, 244, .98), rgba(238, 246, 239, .96));--surface-accent: linear-gradient(135deg, #188a52, #8cd96d);--surface-accent-soft: rgba(239, 248, 241, .95);--surface-accent-chip: rgba(216, 243, 223, .92);--surface-accent-chip-soft: rgba(220, 244, 226, .88);--surface-danger: rgba(255, 232, 224, .9);--surface-success: rgba(214, 240, 220, .96);--surface-warn: rgba(255, 241, 222, .86);--surface-warn-soft: rgba(251, 236, 207, .9);--surface-chip: rgba(230, 242, 234, .9);--surface-chip-soft: rgba(235, 245, 238, .94);--surface-subtle: rgba(246, 247, 242, .94);--border-strong: rgba(98, 196, 128, .34);--border-soft: rgba(167, 208, 178, .28);--border-card: rgba(159, 198, 171, .26);--border-table: rgba(162, 192, 173, .34);--border-accent: rgba(77, 166, 109, .34);--border-danger: rgba(218, 156, 132, .34);--border-success: rgba(118, 190, 134, .34);--border-warn: rgba(222, 181, 110, .38);--border-warn-soft: rgba(222, 181, 110, .28);--shadow-elevated: 0 24px 60px rgba(83, 148, 98, .18), 0 10px 26px rgba(55, 91, 66, .08);--shadow-soft: 0 16px 36px rgba(82, 144, 98, .14), 0 6px 14px rgba(55, 91, 66, .06);--control-fill: linear-gradient(180deg, rgba(252, 251, 244, .98), rgba(235, 244, 236, .94));--control-transition: transform .34s cubic-bezier(.22, 1, .36, 1), border-color .26s ease, box-shadow .32s ease, background-color .26s ease, background-position .42s ease, color .18s ease, filter .32s ease, opacity .18s ease}*,*:before,*:after{box-sizing:border-box}html,body,#app{inline-size:100%;block-size:100%;margin:0}body{overflow:hidden;background:var(--room-bg-image) center / cover no-repeat,linear-gradient(180deg,#73c4ff,#5db4ff);color:var(--room-text);font-family:var(--room-font-display);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}button,input,select,textarea{font:inherit}button{border:0;background:none;padding:0}img,svg,canvas{-webkit-user-drag:none}.app-root{position:relative;inline-size:100%;block-size:100%;overflow:hidden;background:var(--room-bg-image) center / cover no-repeat,linear-gradient(180deg,#73c4ff,#5db4ff)}.app-root,.app-root *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}input,textarea,select,[contenteditable=true],[contenteditable=plaintext-only]{-webkit-user-select:text!important;user-select:text!important;-webkit-touch-callout:default}.ambient{display:none!important}.overlay{position:fixed;inset:0;display:grid;place-items:center;padding:0;background:var(--room-bg-image) center / cover no-repeat,linear-gradient(180deg,#73c4ff,#5db4ff)}.panel{inline-size:min(100vw,calc(100dvh * 16 / 9));block-size:min(100dvh,56.25vw);max-inline-size:100vw;max-block-size:100dvh;aspect-ratio:16 / 9;position:relative;overflow:hidden;color:var(--room-text)}.panel:not(.panel--room){display:grid;gap:1.2cqw;overflow:hidden;color:var(--room-text)}.panel.panel--room{display:grid;grid-template-rows:auto minmax(0,1fr);gap:1.2cqw;padding:1.8cqw 4.05cqw 2.25cqw;background:linear-gradient(180deg,#ffffff14,#fff0 22%),var(--room-bg-image) center / cover no-repeat,linear-gradient(180deg,#73c4ff,#5db4ff);container-type:size;container-name:room-stage}.panel.panel--room:after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 3.2cqw #00000014;pointer-events:none}.panel.panel--room .panel-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:1.4cqw;margin:0;padding:0;position:relative;z-index:2}.panel.panel--room .panel-brand{display:grid;justify-items:start;gap:.22cqw;padding-top:.1cqw}.panel.panel--room .title{margin:0;font-family:var(--room-font-display);font-size:clamp(2.2rem,5.15cqw,4.85rem);line-height:.88;letter-spacing:-.085em;color:var(--room-green);-webkit-text-stroke:.14cqw #36541f;text-shadow:0 .12cqw 0 rgba(236,248,196,.96),0 .26cqw 0 #739b47,.13cqw .36cqw 0 #2f4b1d,0 .9cqw 1.1cqw rgba(52,82,30,.18)}.panel.panel--room .subtitle{margin:0;padding-left:.15cqw;font-family:var(--room-font-display);font-size:clamp(.96rem,1.55cqw,1.42rem);line-height:1.1;letter-spacing:-.05em;color:#3d5b2a;text-shadow:0 .05cqw 0 rgba(255,255,255,.38)}.panel.panel--room .panel-head .game-icon{display:none}.panel.panel--room .panel-head-actions{display:flex;align-items:flex-start;justify-content:flex-end;gap:.82cqw;padding-top:.28cqw}.panel.panel--room .panel-online-count,.panel.panel--room .panel-mini-btn{display:inline-flex;align-items:center;justify-content:center;min-block-size:4.48cqw;padding-block:.34cqw .26cqw;padding-inline:1.55cqw;border-radius:1.65cqw;border:.17cqw solid var(--room-border);background:linear-gradient(180deg,#fafff7fa,#dff8d6e6),linear-gradient(180deg,#ffffff47,#fff0);box-shadow:inset 0 .14cqw #ffffff80,0 .24cqw 0 var(--room-border),0 .72cqw 1.12cqw #3d58221f;color:var(--room-text);font-family:var(--room-font-display);font-size:clamp(.84rem,1.46cqw,1.28rem);letter-spacing:-.038em;line-height:1.08;text-align:center;white-space:nowrap}.panel.panel--room .panel-online-count{min-inline-size:13.2cqw}.panel.panel--room .panel-mini-btn{cursor:pointer}.panel.panel--room .panel-mini-btn--primary{min-inline-size:10.8cqw}.panel.panel--room .panel-mini-btn--invite{min-inline-size:7.8cqw}.panel.panel--room .panel-mini-btn--leave{min-inline-size:6.8cqw}.panel.panel--room .panel-mini-btn--settings{min-inline-size:6.95cqw}.panel.panel--room .panel-mini-btn.primary,.panel.panel--room .panel-mini-btn.success{background:linear-gradient(180deg,#b8ee77,#85cc4e 48%,#68b73f),linear-gradient(180deg,#fff3,#fff0)}.panel.panel--room .panel-mini-btn:disabled{opacity:.56}.room-view-shell{position:relative;min-block-size:0;padding-top:1.55cqw;z-index:1}.panel.panel--room .room-stage-meta{display:grid;gap:.38cqw;min-inline-size:0}.panel.panel--room .room-stage-nameplate{inline-size:100%;min-inline-size:0;min-block-size:5.4cqw;display:grid;justify-items:center;align-content:center;gap:.32cqw;padding:.84cqw .96cqw .88cqw;border-radius:1.48cqw;border:.12cqw solid #6d8d42;background:linear-gradient(180deg,#fffbe6fa,#eaf8cdeb);box-shadow:inset 0 0 0 .18cqw #d6ee95eb,inset 0 .12cqw #ffffff8f,0 .24cqw #5d8738,0 .72cqw .96cqw #4e6e2b24;color:#355327;font-family:var(--room-font-display);font-size:clamp(.9rem,1.52cqw,1.22rem);line-height:1;letter-spacing:-.05em;text-align:center;text-wrap:balance;text-shadow:0 .06cqw 0 rgba(255,255,255,.74),0 0 .45cqw rgba(255,255,255,.18)}.panel.panel--room .room-stage-name{color:#2f4a1d;inline-size:100%;font-size:1.1em;line-height:1.04;text-align:center}.panel.panel--room .room-stage-password{display:inline-flex;align-items:center;justify-content:center;max-inline-size:100%;min-block-size:1.78cqw;padding:.14cqw .72cqw;border-radius:999px;border:.08cqw solid rgba(103,140,63,.34);background:#f5ffebc7;color:#577044;font-size:.72em;line-height:1.08;opacity:1}.panel.panel--room .room-stage-sparks{display:inline-flex;align-items:center;gap:.22cqw;justify-content:center;transform:none;opacity:.78}.panel.panel--room .room-stage-sparks span{inline-size:.42cqw;block-size:.42cqw;border:.08cqw solid var(--room-border);background:#f6fff3f5;border-radius:999px}.panel.panel--room .room-stage-sparks span:nth-child(1),.panel.panel--room .room-stage-sparks span:nth-child(4){border-radius:.12cqw}.panel.panel--room .room-stage-notice,.panel.panel--room .room-summary-caption{display:none}.room-view-shell>.room-box,.room-view-shell>.overlay-chat-card{position:absolute;inset-block-start:1.85cqw;block-size:calc(100% - 1.85cqw);padding:1.72cqw 1.18cqw 1.12cqw;border-radius:2.1cqw;border:.18cqw solid var(--room-border);background:linear-gradient(180deg,#eaffeb70,#d7f8d540);box-shadow:inset 0 .12cqw #ffffff4d,0 .28cqw 0 var(--room-border),0 .9cqw 1.35cqw var(--room-shadow);-webkit-backdrop-filter:blur(1.8px);backdrop-filter:blur(1.8px);overflow:visible}.room-view-shell>.room-summary-box{inset-inline-start:0;inline-size:47.85%;display:grid;grid-template-rows:auto minmax(0,1fr);align-content:start;gap:.34cqw}.room-view-shell>.room-chat-card{inset-inline-end:0;inline-size:47.35%;display:grid;grid-template-rows:auto minmax(0,1fr) auto;align-content:start;gap:.5cqw}.room-view-shell>.room-box:before,.room-view-shell>.overlay-chat-card:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#ffffff47,#fff0 38%),linear-gradient(180deg,#e5ffe714,#d6f7d405);pointer-events:none}.room-view-shell>.room-box:after,.room-view-shell>.overlay-chat-card:after{content:"";position:absolute;inset:.22cqw;border-radius:inherit;box-shadow:inset 0 0 0 .1cqw #c2efb675;pointer-events:none}.room-view-shell>.room-box>*,.room-view-shell>.overlay-chat-card>*{position:relative;z-index:1}.room-summary-box>.room-head,.room-chat-card .chat-head{display:grid;justify-items:center;align-content:center;inline-size:calc(100% - 2.56cqw);max-inline-size:calc(100% - 2.56cqw);position:relative;inset-block-start:auto;inset-inline-start:auto;justify-self:center;transform:translateY(-58%);margin:0;padding:.72cqw 1.3cqw .76cqw;border-radius:1.7cqw 2.1cqw 1.02cqw 1.02cqw;border:.18cqw solid var(--room-border);background:linear-gradient(180deg,#f7fff6fa,#c9f4b9eb);box-shadow:inset 0 .12cqw #ffffff80,0 .24cqw 0 var(--room-border);color:var(--room-text);text-align:center}.room-summary-box>.room-head.room-summary-title{padding:.6cqw 1.18cqw .66cqw;overflow:visible;white-space:normal}.room-chat-card .chat-head{padding:.6cqw 1.18cqw .66cqw}.room-summary-heading{display:flex;align-items:center;justify-content:center;flex-wrap:nowrap;gap:.32cqw;inline-size:100%;min-inline-size:0}.room-summary-title-text{display:inline-flex;align-items:baseline;justify-content:center;gap:.32cqw;min-inline-size:0;max-inline-size:100%;flex:0 1 auto;overflow:hidden;color:#2f4a1d;font-family:var(--room-font-display);font-size:clamp(.92rem,1.52cqw,1.34rem);line-height:1.02;letter-spacing:-.055em;text-align:center;text-overflow:ellipsis;white-space:nowrap}.room-summary-title-count{flex:0 0 auto;color:#597048;font-size:.7em;line-height:1;letter-spacing:-.03em}.room-chat-card .chat-head h3{inline-size:100%;display:inline-flex;align-items:center;justify-content:center;font-size:clamp(.92rem,1.52cqw,1.34rem);line-height:1.02;text-align:center}.room-summary-box>.room-head,.room-chat-card .chat-head h3{margin:0;font-family:var(--room-font-display);letter-spacing:-.055em}.room-chat-card .chat-head small{display:none}.room-summary-roster,.room-summary-roster-scroll{block-size:100%;min-block-size:0}.room-summary-roster-scroll,.room-chat-card .chat-log{overflow:auto;border-radius:1.68cqw;border:.09cqw solid rgba(86,133,58,.44);background:linear-gradient(180deg,#f5fff529,#e3fce114);box-shadow:inset 0 0 0 .08cqw #ffffff1f}.room-summary-roster-scroll{margin-top:0}.room-summary-meta{justify-items:stretch;align-content:start;min-block-size:0;padding:.18cqw 0 .32cqw}.room-summary-roster-scroll{padding:.56cqw}.players{display:grid;gap:.88cqw}.player-card{display:flex;align-items:center;justify-content:space-between;gap:.8cqw;min-block-size:5.95cqw;padding:.86cqw 1.08cqw;border-radius:1.48cqw;border:.12cqw solid #5a8835;background:linear-gradient(180deg,#fffffffc,#f6fff7eb);box-shadow:inset 0 0 0 .22cqw #9de164,inset 0 .12cqw #ffffff85,0 .26cqw #598b35,0 .84cqw 1.05cqw #4161271f}.player-main{display:flex;align-items:center;gap:.3cqw;min-inline-size:0;flex:1 1 auto}.player-card .name{display:inline-flex;align-items:center;gap:.34cqw;min-inline-size:0;overflow:hidden}.player-level-chip,.player-level-name{padding:0;border:0;background:transparent;box-shadow:none;color:#2a431f;font-family:var(--room-font-display);line-height:1.05;letter-spacing:-.058em}.player-level-chip{font-size:clamp(.9rem,1.34cqw,1.14rem)}.player-level-name{font-size:clamp(.98rem,1.44cqw,1.22rem);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ready-badge,.bot-badge,.result-wait-badge,.host{display:none}.player-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:.4cqw;flex:0 0 auto}.room-action-btn{display:inline-flex;align-items:center;justify-content:center;min-inline-size:5.9cqw;min-block-size:2.95cqw!important;padding-inline:.8cqw!important;border-radius:1.16cqw!important;border:.14cqw solid var(--room-border)!important;background:linear-gradient(180deg,#fafff7f5,#e0f8dbe0),linear-gradient(180deg,#ffffff3d,#fff0)!important;box-shadow:inset 0 .1cqw #ffffff70,0 .2cqw 0 var(--room-border)!important;color:var(--room-text)!important;font-family:var(--room-font-display)!important;font-size:clamp(.66rem,.94cqw,.82rem)!important;letter-spacing:-.05em!important}.player-role-badge{display:inline-flex;align-items:center;justify-content:center;min-block-size:2.22cqw;padding:.12cqw .62cqw .1cqw;border-radius:999px;border:.08cqw solid rgba(80,118,155,.28);font-family:var(--room-font-display);font-size:clamp(.62rem,.84cqw,.74rem);line-height:1.06;letter-spacing:-.03em;white-space:nowrap}.player-role-badge--host{border-color:#467fbc61;background:linear-gradient(180deg,#e0f2fffa,#b0dcffeb);color:#24598e}.player-role-badge--ai{border-color:#5b8b4457;background:linear-gradient(180deg,#effce5fa,#c9ecafeb);color:#466b2f}.room-action-btn.danger,.btn.danger.room-action-btn{border-color:#9a6547!important;background:linear-gradient(180deg,#f8d6b7f5,#ecb282e0),linear-gradient(180deg,#ffffff38,#fff0)!important;color:#693726!important}.chat-log{display:flex;flex-direction:column;align-items:flex-start;gap:.58cqw;padding:.98cqw 1.06cqw}.chat-empty{color:#59704aa3;font-family:var(--room-font-display);font-size:clamp(.84rem,1.16cqw,1.02rem);letter-spacing:-.04em}.chat-line{max-inline-size:100%;padding:.1cqw 0;color:#36522c}.chat-line.system{display:block;padding:.5cqw .8cqw;border-radius:1.1cqw;line-height:1.38;background:#e7d2c28f}.chat-system-badge{display:inline-flex;align-items:center;justify-content:center;min-block-size:1.56cqw;margin-inline-end:.26cqw;padding:.06cqw .5cqw .04cqw;border-radius:999px;border:.08cqw solid rgba(168,111,79,.34);background:linear-gradient(180deg,#fff0e5fa,#f7ceb0eb);box-shadow:inset 0 .08cqw #ffffff70;color:#a3583f;font-family:var(--room-font-display);font-size:clamp(.62rem,.95cqw,.84rem);line-height:1.04;letter-spacing:-.045em;white-space:nowrap}.chat-meta,.chat-text{font-family:var(--room-font-display);font-size:clamp(.82rem,1.18cqw,1rem);line-height:1.28;letter-spacing:-.045em}.chat-meta{color:#38572b}.chat-meta:after{content:":";margin-inline-start:.12cqw}.chat-line.system .chat-meta,.chat-line.system .chat-text{color:#a35a43}.chat-line.system .chat-meta:after{content:":";margin-inline-start:.08cqw;margin-inline-end:.16cqw}.chat-text{color:#36522c;word-break:break-word}.chat-input-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.68cqw;padding:.42cqw;border-radius:1.42cqw;border:.14cqw solid rgba(82,125,50,.9);background:#d3f4cbb8;box-shadow:inset 0 0 0 .08cqw #ffffff2e}.chat-input-row input{inline-size:100%;min-inline-size:0;min-block-size:3.28cqw;padding-block:.16cqw;padding-inline:1.16cqw;border:.14cqw solid var(--room-border);border-radius:1.35cqw;background:#fffffffa;box-shadow:inset 0 .12cqw #ffffff80,0 .14cqw #4a722d33;color:#2f4722;font-family:var(--room-font-display);font-size:clamp(.84rem,1.16cqw,1rem);line-height:1.14;letter-spacing:-.04em}.chat-input-row input::placeholder{color:#727662ad}.chat-send-btn{display:inline-flex;align-items:center;justify-content:center;min-inline-size:6.2cqw;min-block-size:3.28cqw!important;padding-block:.16cqw!important;padding-inline:.88cqw!important;border-radius:1.35cqw!important;border:.14cqw solid var(--room-border)!important;background:linear-gradient(180deg,#bae977,#89d050 48%,#71bc42),linear-gradient(180deg,#ffffff38,#fff0)!important;box-shadow:inset 0 .11cqw #ffffff70,0 .22cqw 0 var(--room-border)!important;color:#27411f!important;font-family:var(--room-font-display)!important;font-size:clamp(.78rem,1.08cqw,.92rem)!important;letter-spacing:-.035em!important;line-height:1.08!important}.btn{display:inline-flex;align-items:center;justify-content:center;min-block-size:3.55cqw;padding-block:.18cqw .12cqw;padding-inline:1.25cqw;border-radius:1.35cqw;border:.14cqw solid var(--room-border);background:linear-gradient(180deg,#fafff7fa,#dff8d6e6),linear-gradient(180deg,#ffffff47,#fff0);box-shadow:inset 0 .14cqw #ffffff80,0 .22cqw 0 var(--room-border),0 .72cqw 1.12cqw #3d58221f;color:var(--room-text);font-family:var(--room-font-display);font-size:clamp(.82rem,1.12cqw,1rem);line-height:1.08;letter-spacing:-.035em;text-align:center;white-space:nowrap;cursor:pointer}.btn.primary,.btn.success{background:linear-gradient(180deg,#b8ee77,#85cc4e 48%,#68b73f),linear-gradient(180deg,#fff3,#fff0)}.btn.ghost{background:linear-gradient(180deg,#fafff7fa,#dff8d6e6),linear-gradient(180deg,#ffffff47,#fff0)}.btn:disabled{opacity:.56;cursor:not-allowed}input,select{inline-size:100%;min-inline-size:0;min-block-size:3.5cqw;padding-block:.2cqw;padding-inline:1.18cqw;border:.14cqw solid var(--room-border);border-radius:1.22cqw;background:linear-gradient(180deg,#fffffffa,#f3fff1f0),linear-gradient(180deg,#ffffff38,#fff0);box-shadow:inset 0 .12cqw #ffffff80,0 .14cqw #4a722d24;color:var(--room-text);font-family:var(--room-font-display);font-size:clamp(.82rem,1.1cqw,.98rem);line-height:1.14;letter-spacing:-.04em;outline:none}input::placeholder{color:#626d52b8}select{padding-inline-end:3.1cqw;appearance:none;-webkit-appearance:none;-moz-appearance:none}.select-shell{position:relative}.select-shell:after{content:"";position:absolute;inset-block-start:50%;inset-inline-end:1.25cqw;inline-size:.7cqw;block-size:.7cqw;border-inline-end:.14cqw solid currentColor;border-block-end:.14cqw solid currentColor;transform:translateY(-65%) rotate(45deg);color:#415929d6;pointer-events:none}.row{display:flex;flex-wrap:wrap;gap:.85cqw}.panel:is(.panel--compact,.panel--auth,.panel--lobby,.panel--results){grid-template-rows:auto minmax(0,1fr);gap:1.2cqw;padding:1.8cqw 2cqw 2.05cqw;background:linear-gradient(180deg,#ffffff1f,#ffffff08 25%,#fff0),var(--room-bg-image) center / cover no-repeat,linear-gradient(180deg,#73c4ff,#5db4ff);container-type:size}.panel:is(.panel--compact,.panel--auth,.panel--lobby,.panel--results):after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 3.2cqw #00000014;pointer-events:none}.panel:is(.panel--compact,.panel--auth,.panel--lobby,.panel--results) .panel-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:1.25cqw;margin:0;padding:0;position:relative;z-index:2}.panel:is(.panel--compact,.panel--auth,.panel--lobby,.panel--results) .panel-brand{display:grid;gap:.22cqw;padding-top:.1cqw}.panel:is(.panel--compact,.panel--auth,.panel--lobby,.panel--results) .title{margin:0;font-family:var(--room-font-display);font-size:clamp(2.2rem,5.05cqw,4.8rem);line-height:.88;letter-spacing:-.085em;color:var(--room-green);-webkit-text-stroke:.14cqw #36541f;text-shadow:0 .12cqw 0 rgba(236,248,196,.96),0 .26cqw 0 #739b47,.13cqw .36cqw 0 #2f4b1d,0 .9cqw 1.1cqw rgba(52,82,30,.18)}.panel:is(.panel--compact,.panel--auth,.panel--lobby,.panel--results) .subtitle{margin:0;padding-left:.15cqw;font-family:var(--room-font-display);font-size:clamp(.92rem,1.48cqw,1.3rem);line-height:1.1;letter-spacing:-.05em;color:#3d5b2a;text-shadow:0 .05cqw 0 rgba(255,255,255,.38)}.panel:is(.panel--compact,.panel--auth,.panel--lobby,.panel--results) .panel-head .game-icon{display:none}.panel:is(.panel--compact,.panel--auth,.panel--lobby,.panel--results) .panel-head-actions{display:flex;align-items:flex-start;justify-content:flex-end;gap:.78cqw;padding-top:.28cqw}.panel:is(.panel--compact,.panel--auth,.panel--lobby,.panel--results) .panel-online-count,.panel:is(.panel--compact,.panel--auth,.panel--lobby,.panel--results) .panel-mini-btn{display:inline-flex;align-items:center;justify-content:center;min-block-size:4.05cqw;padding-inline:1.45cqw;border-radius:1.58cqw;border:.17cqw solid var(--room-border);background:linear-gradient(180deg,#fafff7fa,#dff8d6e6),linear-gradient(180deg,#ffffff47,#fff0);box-shadow:inset 0 .14cqw #ffffff80,0 .24cqw 0 var(--room-border),0 .72cqw 1.12cqw #3d58221f;color:var(--room-text);font-family:var(--room-font-display);font-size:clamp(.82rem,1.38cqw,1.2rem);letter-spacing:-.05em;line-height:1;white-space:nowrap}.panel:is(.panel--compact,.panel--auth,.panel--lobby,.panel--results) .panel-online-count{min-inline-size:12.6cqw}.panel:is(.panel--compact,.panel--auth,.panel--lobby,.panel--results) .panel-mini-btn--settings{min-inline-size:6.8cqw}.panel.panel--compact{padding-inline:4.4cqw}.panel.panel--compact>.section-title,.panel.panel--compact>.waiting{justify-self:center;text-align:center;align-self:center}.auth-stage,.lobby-shell{display:grid;gap:1.45cqw;min-inline-size:0;min-block-size:0;block-size:100%}.auth-stage{grid-template-columns:minmax(0,1.05fr) minmax(0,.62fr);align-items:stretch}.entry-stage,.auth-only-stage{grid-template-columns:minmax(0,1fr);align-content:center;justify-items:center;padding:0 4.2cqw 2.6cqw}.auth-stage-side,.lobby-sidebar,.lobby-main-column{display:grid;gap:1.2cqw;min-inline-size:0;min-block-size:0}.lobby-shell{align-content:stretch}.lobby-start-screen{display:grid;place-items:center;block-size:100%;padding:.3cqw 4.2cqw 2.8cqw}.start-game-screen-card{inline-size:min(100%,58cqw);max-inline-size:58cqw;display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:1.05cqw;padding:1.8cqw 1.85cqw 1.95cqw;min-block-size:auto;align-self:center}.start-game-screen-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1cqw}.start-game-screen-head .section-title{font-size:clamp(1.42rem,2.18cqw,1.96rem)}.start-game-screen-head .guide{margin-top:.3cqw}.start-game-screen-back{min-inline-size:6.4cqw}.lobby-main-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,.78fr);gap:1.45cqw;min-inline-size:0;min-block-size:0;block-size:100%}.lobby-main-column{grid-template-rows:minmax(0,1fr)}.lobby-sidebar{grid-template-rows:minmax(0,1fr) auto;align-content:stretch}.panel:not(.panel--room) :is(.room-box,.result-box,.resume-box,.room-item,.lobby-inline-chat){position:relative;container-type:inline-size;border-radius:2.05cqw;border:.18cqw solid var(--room-border);background:linear-gradient(180deg,#eaffeb70,#d7f8d540);box-shadow:inset 0 .12cqw #ffffff4d,0 .28cqw 0 var(--room-border),0 .9cqw 1.35cqw var(--room-shadow);-webkit-backdrop-filter:blur(1.8px);backdrop-filter:blur(1.8px)}.panel:not(.panel--room) :is(.room-box,.result-box,.resume-box,.room-item,.lobby-inline-chat):before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,#ffffff42,#fff0 38%),linear-gradient(180deg,#e5ffe714,#d6f7d405);pointer-events:none}.panel:not(.panel--room) :is(.room-box,.result-box,.resume-box,.room-item,.lobby-inline-chat):after{content:"";position:absolute;inset:.22cqw;border-radius:inherit;box-shadow:inset 0 0 0 .1cqw #c2efb675;pointer-events:none}.panel:not(.panel--room) :is(.room-box,.result-box,.resume-box,.room-item,.lobby-inline-chat)>*{position:relative;z-index:1}.auth-stage-main,.result-box{display:grid;align-content:start;gap:1.15cqw;padding:1.9cqw 1.75cqw;min-inline-size:0;min-block-size:0}.result-box{grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;padding-inline-end:1.55cqw;background:radial-gradient(circle at 20% 18%,rgba(255,255,255,.32),transparent 24%),radial-gradient(circle at 82% 78%,rgba(213,243,175,.18),transparent 26%),linear-gradient(180deg,#f2fbf1e6,#e3f3dfd1)!important;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.result-layout{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:1cqw;min-inline-size:0;min-block-size:0;block-size:100%;align-items:stretch}.result-layout--solo{grid-template-columns:minmax(0,1fr)}.result-tabs{display:inline-flex;align-items:center;gap:.5cqw}.result-tab{display:inline-flex;align-items:center;justify-content:center;min-block-size:3.2cqw;padding:.28cqw 1.06cqw .22cqw;border-radius:999px;border:.12cqw solid rgba(88,136,58,.3);background:#fafff7d6;color:#537141;font-family:var(--room-font-display);font-size:clamp(.8rem,1cqw,.92rem);line-height:1.1;cursor:pointer}.result-tab.active{border-color:#528d3780;background:linear-gradient(180deg,#dff8ccfa,#bce591f0);color:#355127;box-shadow:inset 0 .08cqw #ffffff85,0 .14cqw #547a3238}.result-summary-stack,.result-standings-stack{min-inline-size:0;min-block-size:0;border-radius:1.7cqw;border:.12cqw solid rgba(88,136,58,.34);background:linear-gradient(180deg,#f8fff6e0,#ebf8e7cc),linear-gradient(180deg,#ffffff3d,#fff0);box-shadow:inset 0 .1cqw #ffffff8f,0 .18cqw #547a3247}.result-summary-stack{display:flex;flex-direction:column;gap:.95cqw;padding:1.12cqw 1.16cqw 1.2cqw;overflow:auto}.result-standings-stack{display:grid;grid-template-rows:auto minmax(0,1fr);gap:.68cqw;inline-size:100%;max-inline-size:100%;padding:.8cqw .82cqw .82cqw;overflow:hidden}.result-standings-scroll{min-block-size:0;overflow:auto;overscroll-behavior:contain;touch-action:pan-x pan-y}.result-summary-stack--solo,.result-standings-stack--solo{block-size:100%}.result-standings-title{margin:0;color:#3a5728;font-family:var(--room-font-display);font-size:clamp(.78rem,.98cqw,.9rem);letter-spacing:-.04em}.result-summary-head{display:grid;gap:.36cqw;padding-bottom:.1cqw;border-bottom:.08cqw solid rgba(98,139,68,.18)}.result-winner{margin:0;color:#41612d;font-family:var(--room-font-display);font-size:clamp(.94rem,1.18cqw,1.08rem);line-height:1.3;letter-spacing:-.04em}.auth-stage-note{display:grid;align-content:start;gap:.78cqw;padding:1.45cqw 1.3cqw}.entry-stage-main{inline-size:min(100%,54cqw);max-inline-size:54cqw;min-block-size:auto;align-self:center;justify-self:center;padding:2.15cqw 2.2cqw 2.3cqw}.auth-only-main{inline-size:min(100%,56cqw);max-inline-size:56cqw;min-block-size:auto;align-self:center;justify-self:center;padding:2.05cqw 2.2cqw 2.3cqw}.entry-stage-main.is-select{justify-items:center;align-content:center;text-align:center;gap:1.05cqw}.entry-stage-main.is-select .auth-stage-kicker,.entry-stage-main.is-select .section-title,.entry-stage-main.is-select .entry-guide,.entry-stage-main.is-select .auth-error{justify-self:center;text-align:center}.auth-stage-kicker{display:inline-flex;align-items:center;inline-size:fit-content;padding:.48cqw .92cqw;border-radius:999px;border:.14cqw solid rgba(85,125,51,.56);background:#eefce7bd;color:#5b7f3f;font-family:var(--room-font-display);font-size:clamp(.68rem,.98cqw,.86rem);letter-spacing:.04em;text-transform:uppercase}.section-title{margin:0;color:#2f481f;font-family:var(--room-font-display);font-size:clamp(1.32rem,2.3cqw,2.08rem);line-height:1.05;letter-spacing:-.055em}.guide,.count,.auth-stage-note p,.auth-stage-note strong,.lobby-level-line,.empty,.ranking-state,.result-duration,.result-mvp{margin:0;color:var(--room-text-soft);font-family:var(--room-font-display);font-size:clamp(.8rem,1.04cqw,.94rem);line-height:1.45;letter-spacing:-.035em}.empty{text-align:center}.auth-stage-note strong{color:var(--room-text);font-size:clamp(.94rem,1.22cqw,1.08rem);line-height:1.35}.auth-error{margin:0;color:#a55b42;font-family:var(--room-font-display);font-size:clamp(.8rem,1.02cqw,.94rem);letter-spacing:-.04em}.auth-form-stack,.auth-form-row,.auth-form-actions,.entry-actions,.entry-mode-grid,.auth-stage-points{min-inline-size:0}.auth-stage-points{display:grid;gap:.48cqw;margin:0;padding-left:1.15em;color:var(--room-text-soft);font-family:var(--room-font-display);font-size:clamp(.8rem,1.02cqw,.92rem);line-height:1.45;letter-spacing:-.04em}.auth-form-stack{display:grid;gap:.9cqw}.auth-form-row>*,.auth-form-actions>*,.entry-actions>*,.quick-match-row>*,.create-room-row>*{flex:1 1 14cqw}.auth-form-row{gap:.75cqw}.auth-only-main .auth-form-row input,.auth-only-main .auth-form-actions .btn,.entry-stage-main .entry-actions .btn{block-size:7.68cqw!important}.auth-stage-description{text-align:left}.auth-only-main .section-title{font-size:clamp(1.54rem,2.58cqw,2.24rem)}.auth-only-main .auth-stage-description{font-size:clamp(.9rem,1.12cqw,1rem)}.auth-only-main .auth-form-actions{gap:.6cqw}.auth-only-main .auth-form-actions>*{flex:1 1 0}.entry-mode-grid{display:grid;inline-size:100%;grid-template-columns:minmax(0,1fr);gap:.9cqw}.panel:not(.panel--room) .action-card{display:grid;align-content:center;gap:.42cqw;min-block-size:8.2cqw;padding:1.2cqw 1.35cqw;border-radius:1.6cqw;border:.14cqw solid rgba(86,129,54,.82);background:linear-gradient(180deg,#fafff7fa,#e5f8dde6),linear-gradient(180deg,#ffffff42,#fff0);box-shadow:inset 0 .14cqw #ffffff7a,0 .22cqw #547a32e6,0 .7cqw 1cqw #3d58221a;color:var(--room-text);cursor:pointer}.panel:not(.panel--room) .entry-mode-card{min-block-size:4.9cqw;padding:1.05cqw 1.4cqw;text-align:center}.entry-mode-card strong{color:#2a421e;font-family:var(--room-font-display);font-size:clamp(1.16rem,1.56cqw,1.4rem);line-height:1.08;letter-spacing:-.055em}.entry-mode-card span{display:none}.lobby-summary-box,.lobby-room-list-box,.lobby-start-box{display:grid;align-content:start;gap:1.05cqw;min-inline-size:0;min-block-size:0;padding:1.45cqw}.lobby-summary-box{grid-template-rows:auto minmax(0,1fr) auto;padding-block:1.35cqw 1.25cqw}.lobby-room-list-box{padding-top:3.4cqw}.lobby-room-list-box>.room-head{display:inline-flex;align-items:center;justify-content:center;inline-size:max-content;max-inline-size:calc(100% - 2.56cqw);position:absolute;inset-block-start:-.08cqw;inset-inline-start:1.28cqw;transform:translateY(-42%);margin:0;padding:.98cqw 1.55cqw .9cqw 1.2cqw;border-radius:1.7cqw 2.1cqw 1.02cqw 1.02cqw;border:.18cqw solid var(--room-border);background:linear-gradient(180deg,#f7fff6fa,#c9f4b9eb);box-shadow:inset 0 .12cqw #ffffff80,0 .24cqw 0 var(--room-border);color:var(--room-text);font-family:var(--room-font-display);font-size:clamp(1.08rem,1.84cqw,1.54rem);line-height:1.08;letter-spacing:-.04em}.lobby-header{display:grid;gap:.62cqw}.lobby-header .section-title{font-size:clamp(1.3rem,2.24cqw,1.94rem)}.lobby-level-line{color:#46643a;font-size:clamp(.92rem,1.24cqw,1.08rem)}.level-progress{block-size:1.58cqw;border-radius:999px;overflow:hidden;border:.12cqw solid rgba(81,119,49,.56);background:linear-gradient(180deg,#ffffffe0,#e2f4d6c7),#ffffff9e;box-shadow:inset 0 .08cqw #ffffff8c,0 .12cqw #547a3229}.level-progress-fill{block-size:100%;border-radius:inherit;background:linear-gradient(90deg,#c4f57d,#88d34d 58%,#6ebe41);box-shadow:inset 0 .08cqw #ffffff7a,0 0 .28cqw #82c7503d}.lobby-inline-chat{display:grid;grid-template-rows:minmax(0,1fr) auto;gap:.75cqw;min-block-size:17.2cqw;padding:1.05cqw}.lobby-inline-chat .chat-log{min-block-size:0;overflow:auto;border-radius:1.45cqw;border:.1cqw solid rgba(88,136,58,.42);background:linear-gradient(180deg,#f4fff42e,#e2fce214)}.resume-box{display:grid;gap:.7cqw;padding:1.15cqw 1.2cqw}.resume-box strong{color:#2e491e;font-family:var(--room-font-display);font-size:clamp(.96rem,1.24cqw,1.08rem);line-height:1.3;letter-spacing:-.045em}.resume-box .row>*{flex:1 1 11cqw}.lobby-room-list-scroll{display:grid;align-content:start;gap:.8cqw;min-block-size:0;overflow:auto;padding-right:.12cqw}.lobby-room-list-scroll.is-empty{place-content:center}.room-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.9cqw;align-items:center;padding:1.05cqw 1.08cqw}.room-main{display:grid;gap:.52cqw;min-inline-size:0}.room-topline{display:flex;align-items:center;gap:.55cqw;min-inline-size:0}.room-name{color:#2a421e;font-family:var(--room-font-display);font-size:clamp(.98rem,1.26cqw,1.12rem);line-height:1.2;letter-spacing:-.045em}.room-meta-row{display:flex;flex-wrap:wrap;gap:.42cqw}.room-meta-chip,.room-status-badge,.room-lock-badge{display:inline-flex;align-items:center;justify-content:center;min-block-size:1.72cqw;padding-inline:.6cqw;border-radius:999px;border:.08cqw solid rgba(86,125,53,.42);background:#f6fff4b8;color:#4d6840;font-family:var(--room-font-display);font-size:clamp(.66rem,.86cqw,.76rem);letter-spacing:-.04em}.room-status-badge.playing{background:#daf7c2cc;color:#40632d}.room-status-badge.waiting{background:#f6fff4b8}.room-status-badge.started{background:#dbf7c6db;color:#3f622c}.room-status-badge.countdown{background:#ffefd4d6;color:#8a6130}.room-status-badge.full{background:#ecf5d5e0;color:#607440}.room-status-badge.finished{background:#e8e6e0e6;color:#6b665a}.room-lock-badge{background:#ffeed6d1;color:#8b6333}.room-host{display:inline-flex;align-items:center;gap:.3cqw;color:#4d6740;font-family:var(--room-font-display);font-size:clamp(.72rem,.94cqw,.84rem);letter-spacing:-.04em}.room-item .player-level-chip.compact{display:inline-flex;align-items:center;justify-content:center;min-block-size:1.72cqw;padding-inline:.55cqw;border-radius:999px;border:.08cqw solid rgba(86,125,53,.42);background:#e8f8dbd1;color:#3f602f;font-family:var(--room-font-display);font-size:clamp(.64rem,.84cqw,.74rem)}.room-item>.btn{min-inline-size:6.8cqw}.lobby-start-box{align-content:center;min-block-size:0;padding-block:1.15cqw}.lobby-start-btn{inline-size:100%;min-block-size:5.35cqw;padding-block:.42cqw .3cqw;border-radius:1.5cqw;font-size:clamp(1.08rem,1.58cqw,1.36rem);line-height:1.08}.group-box{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:.6cqw;padding:.5cqw;border-radius:1.4cqw;background:#dbf6d499;border:.12cqw solid rgba(86,125,53,.38)}.group-box-tab{display:inline-flex;align-items:center;justify-content:center;block-size:3cqw;min-block-size:3cqw;padding-block:0;padding-inline:.9cqw;border-radius:1.1cqw;border:.12cqw solid transparent;background:transparent;color:#587147;font-family:var(--room-font-display);font-size:clamp(.8rem,1.04cqw,.94rem);letter-spacing:-.045em;cursor:pointer}.group-box-tab.active{border-color:#567d358f;background:linear-gradient(180deg,#fafff7fa,#dff8d6eb);box-shadow:inset 0 .08cqw #ffffff73,0 .18cqw #547a32bf;color:#2f471e}.start-game-pane{display:grid;gap:.95cqw}.start-game-pane h4{margin:0;color:#2f481f;font-family:var(--room-font-display);font-size:clamp(1rem,1.28cqw,1.14rem);letter-spacing:-.045em}.result-box h2{margin:0;color:#2f481f;font-family:var(--room-font-display);font-size:clamp(1.38rem,2.2cqw,2rem);line-height:1.05;letter-spacing:-.055em}.result-box>p{margin:0;color:var(--room-text-soft);font-family:var(--room-font-display);font-size:clamp(.84rem,1.08cqw,.98rem)}.result-highlight,.result-mvp{display:grid;gap:.34cqw;padding:1.04cqw 1.1cqw;border-radius:1.5cqw;border:.1cqw solid rgba(86,125,53,.38);background:linear-gradient(180deg,#f8fff6f0,#e8f7e3d6),linear-gradient(180deg,#ffffff2e,#fff0)}.result-highlight strong{color:#2f481f;font-family:var(--room-font-display);font-size:clamp(.96rem,1.28cqw,1.12rem);letter-spacing:-.045em}.result-highlight span{color:#4f6840;font-family:var(--room-font-display);font-size:clamp(.76rem,.98cqw,.88rem);line-height:1.35}.result-table-wrap,.ranking-table-wrap{inline-size:100%;max-inline-size:100%;min-inline-size:0;min-block-size:0;block-size:100%;overflow:auto;border-radius:1.5cqw;border:.1cqw solid rgba(88,136,58,.42);background:linear-gradient(180deg,#fbfff9f5,#eff8ece0),linear-gradient(180deg,#ffffff38,#fff0);box-shadow:inset 0 .1cqw #ffffff8a}.result-table{inline-size:max(100%,40rem);border-collapse:collapse;color:var(--room-text);font-family:var(--room-font-display);font-size:clamp(.74rem,.94cqw,.86rem);letter-spacing:-.035em}.result-table th,.result-table td{padding:.68cqw .62cqw;text-align:left;border-bottom:.08cqw solid rgba(86,125,53,.2)}.result-table thead th{position:sticky;inset-block-start:0;background:linear-gradient(180deg,#e0f8d3fa,#d0eebef5);color:#3d5d2a;z-index:1}.result-table tbody tr:nth-child(2n){background:#eaf7e38f}.result-table tbody tr.me{background:#d8f4c9d1}.result-actions{margin-top:auto;padding-bottom:.14cqw}.result-actions>*{flex:1 1 10cqw}.result-actions .btn{min-block-size:7.1cqw;padding-block:.42cqw .3cqw;padding-inline:1.38cqw;border-radius:1.42cqw;font-size:clamp(.88rem,1.18cqw,1.04rem);line-height:1.08}@container (max-width: 48rem){.result-box{overflow:hidden}.result-layout{grid-template-columns:minmax(0,1fr);block-size:auto}.result-standings-stack{min-block-size:18rem;max-block-size:22rem}.result-actions{margin-top:0}}.ranking-modal,.start-game-modal{display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:1.05cqh;inline-size:min(76cqw,calc(76cqh * 16 / 9));block-size:min(42.75cqw,62cqh);max-inline-size:calc(100vw - 48px);max-block-size:calc(100dvh - 48px);aspect-ratio:16 / 9;padding:1.55cqh 1.7cqw 1.45cqh;overflow:hidden;container-type:size;container-name:start-game-modal}.ranking-modal{grid-template-rows:auto minmax(0,1fr) auto;inline-size:min(86cqw,calc(100vw - 3rem));block-size:min(47.5cqw,68cqh);max-inline-size:96cqw;max-block-size:92cqh;aspect-ratio:16 / 10;gap:1.2cqh}.ranking-modal h3,.join-room-modal h3{margin:0;color:#2f481f;font-family:var(--room-font-display);font-size:clamp(1.12rem,1.48cqw,1.32rem);letter-spacing:-.05em}.ranking-modal p,.join-room-modal p{margin:0;color:var(--room-text-soft);font-family:var(--room-font-display);font-size:clamp(.82rem,1.04cqw,.94rem);line-height:1.45}.modal-backdrop{position:fixed;inset:0;display:grid;place-items:center;padding:20px;z-index:120;container-type:size;background:#00000094}.modal-card{inline-size:min(480px,calc(100vw - 40px));max-block-size:calc(100dvh - 40px);overflow:auto;padding:22px;container-type:inline-size;border-radius:28px;border:3px solid var(--room-border);background:linear-gradient(180deg,#f8fff7fe,#e1f9dbfb);color:var(--room-text);font-family:var(--room-font-display);box-shadow:0 20px 56px #0003}.modal-card.ranking-modal{inline-size:min(86cqw,calc(100vw - 3rem));overflow:hidden}.kick-modal{position:relative;isolation:isolate;background:radial-gradient(circle at 18% 16%,rgba(255,255,255,.86),transparent 23%),radial-gradient(circle at 82% 74%,rgba(202,239,160,.34),transparent 26%),repeating-linear-gradient(135deg,#ffffff29 0 16px,#e9f9df14 16px 32px),linear-gradient(180deg,#f8fff7fe,#e1f9dbfb);box-shadow:0 20px 56px #0003,inset 0 1px #ffffffeb,inset 0 -18px 28px #afdc7a14}.kick-modal:before,.kick-modal:after{content:"";position:absolute;pointer-events:none;z-index:0}.kick-modal:before{inset:0;background:linear-gradient(90deg,transparent 0%,rgba(122,177,71,.09) 20%,rgba(122,177,71,.09) 80%,transparent 100%);-webkit-mask:linear-gradient(180deg,rgba(0,0,0,.8),transparent 55%);mask:linear-gradient(180deg,rgba(0,0,0,.8),transparent 55%)}.kick-modal:after{inline-size:12rem;block-size:12rem;inset-inline-end:-3rem;inset-block-end:-5rem;border-radius:999px;background:radial-gradient(circle,rgba(185,228,130,.22),transparent 68%)}.kick-modal>*{position:relative;z-index:1}.kick-confirm-kicker{display:inline-flex;align-items:center;justify-content:center;margin-bottom:.8rem;padding:.28rem .68rem .24rem;border-radius:999px;border:1px solid rgba(92,143,52,.28);background:linear-gradient(180deg,#f0fbe7fa,#dcf2c5eb);color:#57793b;font-family:var(--room-font-display);font-size:.76rem;letter-spacing:.08em;line-height:1}.kick-modal h3{position:relative;display:inline-block;margin:0;color:#2f481f;text-shadow:0 2px 0 rgba(255,255,255,.45)}.kick-modal h3:after{content:"";display:block;inline-size:100%;block-size:.42rem;margin-top:-.2rem;border-radius:999px;background:linear-gradient(90deg,#b8e27485,#b8e27400)}.kick-confirm-message,.kick-confirm-note{position:relative;margin:0}.kick-confirm-message{margin-top:1rem;color:#355127}.kick-confirm-note{margin-top:.2rem;color:#537141}.kick-confirm-target{display:inline-flex;align-items:center;padding:.08em .38em .04em;border-radius:.6em;background:#e9f7cbd1;box-shadow:0 1px #7ab1472e;color:#2f6b2d}.kick-modal .modal-actions .room-action-btn{min-inline-size:11.8cqw;min-block-size:5.9cqw!important;padding-inline:1.4cqw!important;border-radius:1.5cqw!important;font-size:clamp(1rem,1.36cqw,1.18rem)!important;line-height:1.06!important}.settings-modal,.join-room-modal{inline-size:min(500px,calc(100vw - 40px))}.ranking-modal .modal-actions{margin-top:.2cqh}.ranking-modal .ranking-table-scroll{overscroll-behavior:contain;touch-action:pan-x pan-y;cursor:grab}.ranking-modal .ranking-table-scroll:active{cursor:grabbing}.ranking-modal .modal-actions .room-action-btn{min-inline-size:7.15cqw;min-block-size:3.48cqw!important;padding-block:.16cqw!important;padding-inline:.98cqw!important;border-width:.1cqw!important;border-radius:1.32cqw!important;box-shadow:inset 0 .07cqw #ffffff70,0 .14cqw 0 var(--room-border)!important;font-size:clamp(.9rem,1.08cqw,1.08rem)!important;line-height:1.04!important}.start-game-modal-backdrop{background:#08120ab8;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.start-game-modal{box-shadow:0 1.15cqh 3.1cqh #0000003d,0 0 0 .12cqh #567d352e}.start-game-modal-head{align-items:start;gap:1.2cqw}.start-game-modal-head h3{color:#2f481f;font-family:var(--room-font-display);font-size:clamp(1.3rem,2.1cqh,1.82rem);line-height:1.05;letter-spacing:-.05em}.start-game-modal-head p{margin-top:.32cqh;font-size:clamp(.82rem,1.15cqh,.98rem);line-height:1.35}.start-game-modal .modal-close{inline-size:clamp(44px,3.9cqh,60px);block-size:clamp(44px,3.9cqh,60px);border-width:.18cqh;font-size:clamp(1.05rem,1.8cqh,1.4rem);flex:0 0 auto}.start-game-group-box{align-self:start;gap:.82cqw;padding:.72cqw}.start-game-group-box .group-box-tab{block-size:7.56cqw;min-block-size:7.56cqw;padding-block:.18cqw;font-size:clamp(.9rem,1.1cqw,1rem);line-height:1.08}.start-game-pane{align-content:start;gap:.95cqw;min-block-size:0}.start-game-pane h4{font-size:clamp(1.04rem,1.34cqw,1.18rem);line-height:1.08}.start-game-pane .guide{font-size:clamp(.84rem,1.02cqw,.94rem);line-height:1.42}.start-game-action-grid{align-items:stretch;gap:.85cqw;flex-wrap:nowrap}.start-game-action-grid>*{flex:1 1 0;min-inline-size:0}.start-game-action-grid .btn{min-block-size:4.82cqw;padding-block:.18cqw .14cqw;padding-inline:.82cqw;font-size:clamp(.84rem,.96cqw,.92rem);white-space:normal;text-wrap:balance;word-break:keep-all;text-align:center;line-height:1.2}.start-game-match-btn{flex-direction:column;gap:.14cqw}.start-game-match-btn small{font-size:.82em;line-height:1.05}.start-game-create-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1.45fr) minmax(0,.78fr) auto;align-items:stretch;gap:.72cqw}.start-game-create-grid input,.start-game-create-grid select,.start-game-create-grid .btn{inline-size:100%;block-size:7.68cqw;min-block-size:7.68cqw;font-size:clamp(.88rem,1.02cqw,.96rem);line-height:1.12}.start-game-create-grid .select-shell{display:flex;align-items:stretch}.start-game-create-grid .select-shell select{block-size:100%}.start-game-create-grid input,.start-game-create-grid select{padding-block:.22cqw}.start-game-create-grid .btn{min-inline-size:9.2cqw;padding-block:.22cqw .16cqw;white-space:nowrap}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.modal-head h3,.modal-head p{margin:0}.modal-head p{color:#587147;font-size:13px}.modal-close{inline-size:40px;block-size:40px;border-radius:999px;border:2px solid var(--room-border);background:#ffffffeb;color:var(--room-text);font-family:var(--room-font-display);cursor:pointer}.settings-list{display:grid;gap:10px;margin-top:16px}.settings-list .settings-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-radius:18px;border:2px solid rgba(88,132,53,.34);background:#ffffffd1;color:var(--room-text);font-family:var(--room-font-display)}.settings-list .settings-item span{flex:1 1 auto;min-inline-size:0;text-align:left}.settings-list .settings-item strong{flex:0 0 auto;margin-left:auto;display:inline-flex;align-items:center;justify-content:flex-end;text-align:right;white-space:nowrap}.settings-item-static{cursor:default}.settings-item-single{justify-content:flex-start}.settings-item-single span{flex:0 1 auto}.settings-room-password{justify-content:flex-end;gap:.86cqw;background:linear-gradient(180deg,#f6ffeff5,#dbf3c9f0);box-shadow:inset 0 .12cqw #ffffff80,0 .16cqw #5b843a29}.settings-room-password span{color:#56703f}.settings-room-password strong{display:inline-flex;align-items:center;justify-content:center;min-inline-size:0;max-inline-size:min(60%,18rem);padding:.26cqw .72cqw .22cqw;border-radius:999px;border:.08cqw solid rgba(98,131,65,.36);background:#ffffffd1;box-shadow:inset 0 .08cqw #ffffff8f;color:#35551f;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-item strong{color:#4f7a31}.lobby-docs-backdrop{padding:3%}.lobby-docs-modal{inline-size:min(100%,94cqw);max-block-size:min(100%,92cqh);aspect-ratio:16 / 9;display:grid;grid-template-rows:auto minmax(0,1fr);gap:1.5cqw;padding:2.2cqw;overflow:hidden}.lobby-docs-modal-head{align-items:start}.lobby-docs-grid{min-block-size:0;overflow:auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,30cqw),1fr));gap:1.4cqw;padding-inline-end:.4cqw}.tutorial-doc,.codex-doc{display:grid;align-content:start;gap:1.1cqw;min-block-size:0}.codex-section{gap:.7cqw}.codex-table-wrap{block-size:auto;max-block-size:none}.codex-table{inline-size:max(100%,68rem)}.codex-table th,.codex-table td{vertical-align:top}.codex-badge{display:inline-flex;align-items:center;justify-content:center;padding:.26rem .62rem .22rem;border-radius:999px;border:.08rem solid rgba(77,166,109,.34);background:#d8f3dfeb;color:#2f8555;font-family:var(--room-font-display);font-size:clamp(.68rem,.88cqw,.82rem);line-height:1.1;white-space:nowrap}.codex-entity{display:flex;align-items:center;gap:.68rem;min-inline-size:0}.codex-thumb{inline-size:2.4rem;block-size:2.4rem;flex:0 0 auto;padding:.26rem;border-radius:.82rem;border:.08rem solid rgba(89,126,59,.34);background:#ffffffd6;box-shadow:inset 0 .08rem #ffffff94}.codex-entity-meta{display:grid;gap:.16rem;min-inline-size:0}.codex-entity-meta strong,.codex-entity-meta small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.codex-entity-meta strong{color:#2f481f;font-family:var(--room-font-display);font-size:clamp(.84rem,1.04cqw,.94rem);line-height:1.12}.codex-entity-meta small,.codex-cell-stack small{color:#5d7850;font-family:var(--room-font-display);font-size:clamp(.68rem,.84cqw,.76rem);line-height:1.28}.codex-cell-stack{display:grid;gap:.18rem}.codex-cell-stack span{color:#345228}.debug-panel{position:fixed;inset-block-start:1rem;inset-inline-start:1rem;z-index:10010;inline-size:min(24rem,calc(100vw - 2rem));max-block-size:calc(100dvh - 2rem);overflow:auto;display:grid;gap:.8rem;padding:.92rem;border-radius:1.2rem;border:.12rem solid rgba(79,132,55,.64);background:linear-gradient(180deg,#fbfff8e0,#e2f6d7c2),linear-gradient(180deg,#ffffff38,#fff0);box-shadow:inset 0 .1rem #ffffff8a,0 .24rem #456826eb,0 .9rem 1.5rem #2d451729;color:#2f4a1d;font-family:var(--room-font-display);pointer-events:none}.debug-panel *{pointer-events:none}.debug-panel-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.debug-panel-head strong{font-size:.96rem;line-height:1.08}.debug-panel-head span{display:inline-flex;align-items:center;justify-content:center;min-block-size:1.42rem;padding:.06rem .5rem .02rem;border-radius:999px;border:.08rem solid rgba(87,141,54,.3);background:#e9f7cbe0;color:#4e7a30;font-size:.68rem;letter-spacing:.08em}.debug-panel-section{display:grid;gap:.46rem;padding:.72rem .76rem;border-radius:.98rem;border:.08rem solid rgba(88,132,53,.28);background:#ffffff94}.debug-panel-section h3{margin:0;color:#38572b;font-size:.8rem;line-height:1.1}.debug-panel-rows{display:grid;gap:.38rem}.debug-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.12rem .6rem;align-items:start}.debug-label,.debug-note{color:#587147;font-size:.7rem;line-height:1.3}.debug-value{color:#2f481f;font-size:.76rem;line-height:1.2;text-align:right}.debug-note{grid-column:1 / -1}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.section-title,.waiting,.field-hint,.helper-text{margin:0;color:var(--room-text);font-family:var(--room-font-display)}.overlay-fade-enter-active,.overlay-fade-leave-active{transition:opacity .16s ease}.overlay-fade-enter-from,.overlay-fade-leave-to{opacity:0}@container room-stage (max-width: 980px){.panel.panel--room .title{font-size:clamp(2.1rem,5cqw,4.4rem)}.panel.panel--room .panel-online-count,.panel.panel--room .panel-mini-btn{min-block-size:4.05cqw;padding-inline:1.35cqw;font-size:clamp(.82rem,1.48cqw,1.24rem)}.panel.panel--room .room-stage-nameplate{font-size:clamp(.8rem,1.66cqw,1.34rem)}.player-level-chip{font-size:clamp(.84rem,1.2cqw,1rem)}.player-level-name{font-size:clamp(.92rem,1.34cqw,1.1rem)}}.game-icon[data-v-d2fcd663]{display:inline-block;vertical-align:middle;flex-shrink:0}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden}.app-root{position:relative;width:100%;height:100dvh;overflow:hidden;box-sizing:border-box;padding:0;border-radius:0;color:var(--ink);isolation:isolate;font-size:16px;font-family:var(--room-font-display);background:radial-gradient(circle at 14% 16%,rgba(187,255,241,.52),transparent 24%),radial-gradient(circle at 52% 26%,rgba(176,237,116,.28),transparent 28%),radial-gradient(circle at 86% 12%,rgba(255,233,146,.34),transparent 22%),linear-gradient(165deg,#58c9c8,#87db7a 52%,#efd86f)}.app-root,.app-root:before,.app-root:after{transition:background .36s ease,background-color .36s ease,opacity .28s ease}.orientation-lock{display:none}.orientation-lock-card{width:min(18rem,calc(100vw - 2rem));padding:1.25rem 1rem;border-radius:24px;border:1px solid var(--border-card);background:var(--surface-elevated);box-shadow:var(--shadow-elevated);text-align:center}.orientation-lock-card strong{display:block;color:var(--text-brand);font-size:1.05rem}.orientation-lock-card p{margin:.5rem 0 0;color:var(--text-muted);font-size:.82rem;line-height:1.4}.app-root:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.96;background:linear-gradient(180deg,rgba(255,255,255,.12),transparent 24%),radial-gradient(circle at 16% 18%,rgba(213,255,248,.18),transparent 20%),radial-gradient(circle at 82% 14%,rgba(255,241,181,.18),transparent 18%),repeating-linear-gradient(0deg,rgba(255,255,255,.045) 0 2px,transparent 2px 72px),repeating-linear-gradient(90deg,rgba(67,162,145,.055) 0 2px,transparent 2px 72px),repeating-linear-gradient(45deg,rgba(255,255,255,.12) 0 1.5px,transparent 1.5px 34px),repeating-linear-gradient(-45deg,rgba(47,141,124,.13) 0 1.5px,transparent 1.5px 34px),linear-gradient(180deg,#0d575814,#88b7430f 54%,#aa8f2d1a);animation:none}.app-root:after{content:"";position:absolute;left:-8%;right:-8%;bottom:-20%;height:42%;z-index:-1;pointer-events:none;opacity:1;filter:none;background:radial-gradient(ellipse at 8% 78%,rgba(32,124,111,.46) 0 26%,transparent 27%),radial-gradient(ellipse at 28% 84%,rgba(73,155,92,.56) 0 28%,transparent 29%),radial-gradient(ellipse at 50% 82%,rgba(205,181,88,.32) 0 18%,transparent 19%),radial-gradient(ellipse at 70% 86%,rgba(50,132,92,.5) 0 28%,transparent 29%),radial-gradient(ellipse at 92% 78%,rgba(31,104,95,.44) 0 24%,transparent 25%)}.ambient{display:none}.ambient-a{top:-90px;left:-40px;width:280px;height:280px;background:#cfeadf}.ambient-b{right:-70px;bottom:-90px;width:260px;height:260px;background:#f4ddb1}.alerts{position:fixed;top:10px;left:50%;transform:translate(-50%);z-index:9999;width:min(430px,calc(100vw - 24px));display:flex;flex-direction:column;gap:6px;pointer-events:none}.alerts *{pointer-events:none}.world-event-toast{position:fixed;top:54px;left:50%;z-index:9998;width:min(34rem,calc(100vw - 24px));padding:.92rem 1rem 1rem;border-radius:1.15rem;border:1px solid rgba(255,255,255,.18);background:radial-gradient(circle at top right,rgba(255,255,255,.18),transparent 36%),linear-gradient(135deg,#0a1917f0,#132d26e6);box-shadow:0 22px 50px #0f181357;transform:translate(-50%);overflow:hidden;pointer-events:none}.world-event-toast.tone-success{border-color:#96ebaf66}.world-event-toast.tone-neutral{border-color:#ffde7d66}.world-event-toast.tone-danger{border-color:#ffa79270}.world-event-toast-kicker{position:relative;z-index:1;display:inline-flex;margin-bottom:.45rem;padding:.22rem .5rem;border-radius:999px;background:#ffffff14;font-size:.68rem;font-weight:900;letter-spacing:.16em;color:#fff8e0e6}.world-event-toast-title,.world-event-toast-body{position:relative;z-index:1}.world-event-toast-title{display:block;font-size:clamp(1.02rem,.9rem + .18vw + .12vh,1.2rem);font-weight:900;color:#fffaf0}.world-event-toast-body{margin:.36rem 0 0;font-size:clamp(.82rem,.74rem + .12vw + .08vh,.94rem);line-height:1.45;color:#fff7e6e6}.world-event-toast-glow{position:absolute;right:-12%;top:-28%;width:9rem;height:9rem;border-radius:999px;background:radial-gradient(circle,rgba(255,240,178,.28),transparent 68%);pointer-events:none}.world-event-toast-enter-active,.world-event-toast-leave-active{transition:opacity .28s ease,transform .36s cubic-bezier(.22,1,.36,1)}.world-event-toast-enter-from,.world-event-toast-leave-to{opacity:0;transform:translate(-50%,-14px) scale(.98)}.alert-chip{border-radius:999px;padding:8px 10px;text-align:center;font-size:.8rem;box-shadow:0 2px #28364247;animation:popout var(--alert-duration, 2.2s) ease forwards}.alert-chip.success{color:#17362a;background:linear-gradient(180deg,#b1ebabf5,#5bbd6ef5)}.alert-chip.danger{background:linear-gradient(180deg,#f4af88f5,#d87b59f5)}.alert-chip.event{color:#3b2505;background:linear-gradient(180deg,#ffeaa6fa,#f5bb4dfa)}@keyframes popout{0%{opacity:0;transform:translateY(-8px)}10%{opacity:1;transform:translateY(0)}85%{opacity:1}to{opacity:0;transform:translateY(-8px)}}@keyframes canopyFloat{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(0,-10px,0) scale(1.03)}}@keyframes glowPulse{0%,to{opacity:.42}50%{opacity:.7}}.conn-banner{position:fixed;top:10px;right:10px;z-index:9999;display:flex;align-items:center;gap:8px;border-radius:999px;padding:5px 10px;font-size:.74rem;color:var(--text-primary);background:var(--surface-accent-soft);border:1px solid var(--border-strong);box-shadow:var(--shadow-soft);max-width:min(76vw,300px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conn-banner .dot{width:7px;height:7px;border-radius:999px;background:#ffd9a5;box-shadow:0 0 0 4px #ffe1b71f}.conn-banner.connected .dot{background:var(--good)}.conn-banner.disconnected .dot{background:#ffb38d}.conn-banner.connected{color:var(--text-accent)}.orientation-install-tip{margin:10px 0 0;padding:10px 12px;border-radius:14px;border:1px solid var(--border-card);background:color-mix(in srgb,var(--surface-card) 84%,transparent);color:var(--text-primary);font-size:.78rem;line-height:1.5;text-align:left}.game-layout{--edge-gap: clamp(10px, 1vw, 18px);--command-switch-clearance: 2.65rem;--hud-min: min(11rem, 100%);--panel-min: min(20rem, 100%);--chat-min: min(18rem, 100%);position:relative;width:100%;height:100dvh;min-height:0;z-index:1;overflow:hidden;background:radial-gradient(circle at 18% 16%,rgba(199,255,245,.28),transparent 20%),radial-gradient(circle at 82% 8%,rgba(255,234,160,.2),transparent 24%),linear-gradient(180deg,#eefaf7fa,#e7f8def7 48%,#f6ecb7f2)}.game-layout:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.62;background:repeating-linear-gradient(0deg,rgba(255,255,255,.045) 0 2px,transparent 2px 70px),repeating-linear-gradient(90deg,rgba(93,182,165,.05) 0 2px,transparent 2px 70px),repeating-linear-gradient(45deg,rgba(255,255,255,.11) 0 1.5px,transparent 1.5px 34px),repeating-linear-gradient(-45deg,rgba(74,168,148,.11) 0 1.5px,transparent 1.5px 34px)}.game-frame{position:absolute;inset:0;margin:auto;width:min(100vw,calc(100dvh * 16 / 9));height:min(100dvh,56.25vw);max-width:100%;max-height:100%;min-width:0;min-height:0;box-shadow:0 0 0 1px color-mix(in srgb,var(--border-card) 72%,transparent),0 28px 60px #7e9f962e,0 8px 24px #4d656214}.status-ribbon{position:absolute;inset:0;z-index:4;pointer-events:none}.game-main-grid{position:absolute;inset:0;min-height:0}.hud-cluster{position:absolute;display:flex;pointer-events:none}.hud-cluster-top-left{top:10px;left:10px;flex-direction:column;align-items:flex-start;gap:.22rem}.hud-cluster-top-center{top:10px;left:50%;transform:translate(-50%);align-items:center;gap:.7rem}.hud-cluster-bottom-right{right:3px;bottom:3px;align-items:flex-end}.hud-world-event-stack{display:flex;flex-direction:column;align-items:flex-start;gap:.16rem}.hud-readout-world-event{max-width:min(27rem,calc(100vw - 120px))}.hud-inline-world-event{min-width:0;width:100%}.hud-world-event-text{min-width:0;font-size:.92em;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hud-readout{display:inline-flex;align-items:center;gap:.24rem;line-height:1.04;min-width:0;padding:.16rem .4rem;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:#060e0c61;box-shadow:inset 0 1px #ffffff14;color:#fff}.hud-readout-resource{font-size:clamp(.82rem,.68rem + .22vw + .12vh,1.06rem);font-weight:900}.hud-readout-top-stat{font-size:clamp(.76rem,.64rem + .16vw + .1vh,.9rem)}.hud-readout-meta{font-size:clamp(.7rem,.58rem + .16vw + .1vh,.86rem);font-weight:800;letter-spacing:.01em}.hud-readout-ping{font-size:clamp(.78rem,.66rem + .18vw + .12vh,.96rem);font-weight:900;letter-spacing:.01em}.hud-readout-ping.connecting{opacity:.72}.hud-readout-ping.disconnected{opacity:.56}.hud-readout.observed{opacity:.88;background:#07120e75}@media(prefers-reduced-motion:reduce){.app-root,.app-root:before,.app-root:after,.app-root *,.app-root *:before,.app-root *:after{transition:none}}.hud-inline{display:inline-flex;align-items:center;gap:.28rem;min-width:0}.hud-label{opacity:.96;font-size:.92em;font-weight:800}.hud-meta-value{opacity:.94;font-size:.88em}.hud-value{white-space:nowrap}.hud-label,.hud-meta-value,.hud-value,.hud-inline-note,.delta-text{-webkit-text-stroke:.9px rgba(0,0,0,.96);paint-order:stroke fill}.delta-text{padding:.08rem .22rem;border-radius:999px;background:#080e0c57}.hud-inline-note{font-size:clamp(.62rem,.52rem + .12vw + .08vh,.74rem);font-weight:800;color:#fff}.status-icon{display:inline-flex;align-items:center;justify-content:center;width:clamp(10px,8px + .14vw + .06vh,12px);height:clamp(10px,8px + .14vw + .06vh,12px);color:var(--text-warn);filter:none}.hud-icon{width:clamp(12px,10px + .2vw + .08vh,15px);height:clamp(12px,10px + .2vw + .08vh,15px);filter:none}.hud-icon-heart{color:#ff8f9f}.hud-icon-gold{color:#ffd86b}.hud-icon-income{color:#87f7b3}.hud-icon-neutral{color:#f7f3e2}.hud-icon-mode{color:#c7f2ff}.hud-icon-network{color:#9fe7ff}.status-icon-heart{color:var(--bad)}.status-icon-gold{color:#ffe084}.status-icon-income{color:var(--text-observed)}.hud-delta-stack{display:flex;align-items:center;gap:.28rem;min-width:0}.delta-text{font-size:clamp(.72rem,.56rem + .2vw + .1vh,.9rem);font-weight:800}.delta-text.up{color:var(--text-observed)}.delta-text.down{color:#ffd0bf}.delta-float-enter-active,.delta-float-leave-active{transition:transform .8s ease,opacity .8s ease}.delta-float-enter-from,.delta-float-leave-to{opacity:0;transform:translateY(6px)}.battle-zone{position:absolute;inset:0;min-height:0}.canvas-shell{position:absolute;inset:0;border-radius:0;background:radial-gradient(circle at 16% 16%,rgba(204,255,245,.22),transparent 14%),radial-gradient(circle at 84% 14%,rgba(255,232,159,.16),transparent 16%),linear-gradient(180deg,#f2fcfafa 0 34%,#e5f8def5 34% 72%,#f7ecb5f2);padding:0;overflow:hidden}.canvas-shell:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.18),transparent 18%),radial-gradient(circle at 18% 10%,rgba(221,255,248,.12),transparent 16%),radial-gradient(circle at 50% 120%,rgba(31,116,98,.2),transparent 38%)}.canvas-shell:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.42;background:linear-gradient(135deg,#ffffff14,#fff0 42%),repeating-linear-gradient(0deg,rgba(255,255,255,.032) 0 2px,transparent 2px 68px),repeating-linear-gradient(90deg,rgba(64,160,139,.04) 0 2px,transparent 2px 68px),repeating-linear-gradient(45deg,rgba(255,255,255,.1) 0 1.5px,transparent 1.5px 30px),repeating-linear-gradient(-45deg,rgba(50,150,131,.11) 0 1.5px,transparent 1.5px 30px),radial-gradient(circle at 20% 16%,rgba(196,255,239,.12),transparent 14%),radial-gradient(circle at 84% 10%,rgba(255,232,155,.1),transparent 14%)}#game-main-canvas{position:relative;z-index:1;width:100%;height:100%;display:block}.command-deck{position:absolute;top:calc(var(--edge-gap) + var(--command-switch-clearance));bottom:calc(var(--edge-gap) + 3.4rem);right:var(--edge-gap);z-index:5;width:min(20.5rem,42vw,calc(100% - (var(--edge-gap) * 2)));max-block-size:calc(100% - (var(--edge-gap) * 2) - var(--command-switch-clearance) - 3.4rem);pointer-events:none}.game-command-dock{position:absolute;top:var(--edge-gap);right:var(--edge-gap);z-index:5;pointer-events:none}.game-chat-dock{position:absolute;left:50%;bottom:var(--edge-gap);transform:translate(-50%);z-index:5;width:min(18.5rem,calc(100% - (var(--edge-gap) * 2)));display:flex;justify-content:center;align-items:flex-end;pointer-events:none}.command-stack{width:100%;display:flex;flex-direction:column;gap:calc(var(--edge-gap) * .4);min-width:0;max-block-size:100%;pointer-events:none}.command-panel-switch{width:auto;display:grid;grid-auto-flow:column;grid-auto-columns:max-content;gap:calc(var(--edge-gap) * .45);min-width:0;pointer-events:auto}.switch-btn.btn.ghost{width:1.72rem;min-width:1.72rem;height:1.72rem;min-height:1.72rem;padding:0;border-radius:999px;background:var(--surface-elevated);color:var(--text-brand);border-color:var(--border-success);-webkit-backdrop-filter:none;backdrop-filter:none;display:inline-flex;align-items:center;justify-content:center;box-shadow:var(--shadow-soft)}.switch-btn.btn.ghost.active{width:1.86rem;min-width:1.86rem;height:1.86rem;min-height:1.86rem;background:var(--surface-accent);color:var(--text-on-accent);border-color:var(--border-accent);box-shadow:0 10px 22px #2c76463d}.deck-card,.build-modal{border-radius:1.28rem;border:.14rem solid rgba(80,120,47,.88);background:linear-gradient(180deg,#f8fff5f5,#e0f6d6e6),linear-gradient(180deg,#ffffff38,#fff0);box-shadow:inset 0 .12rem #ffffff80,0 .24rem #456826eb,0 .78rem 1.35rem #2d451724;color:#2f4a1d;font-family:var(--room-font-display)}.deck-card{display:flex;flex-direction:column;gap:.56rem;padding:.72rem;min-block-size:0;max-block-size:100%;overflow:hidden;pointer-events:auto}.deck-head,.chat-overlay-head{display:flex;align-items:center;justify-content:space-between;gap:.52rem}.deck-head h3,.chat-overlay-head h3,.build-modal-head h3{display:inline-flex;align-items:center;gap:.38rem;margin:0;color:#2b461a;font-family:var(--room-font-display);font-size:clamp(.88rem,.76rem + .18vw + .1vh,1.04rem);line-height:1.06;letter-spacing:-.05em}.deck-head small,.chat-overlay-head small,.build-modal-head small{margin:0;color:#5b7446;font-family:var(--room-font-display);font-size:clamp(.6rem,.52rem + .1vw + .06vh,.7rem);line-height:1.18;letter-spacing:-.03em}.guide,.lock-msg,.tower-title-line,.tower-level-line,.tower-economy-line,.tower-stat-line,.tower-next-line{margin:0;font-family:var(--room-font-display);letter-spacing:-.04em}.guide{color:#4d6840;font-size:clamp(.66rem,.56rem + .12vw + .08vh,.78rem);line-height:1.34}.lock-msg,.tower-limit-alert{padding:.44rem .6rem;border-radius:.82rem;border:.08rem solid rgba(170,121,64,.34);background:#ffecd0c2;color:#87592d}.watch-guide,.tower-limit-guide{padding:.42rem .58rem;border-radius:.8rem;background:#f0f9ead1}.tower-limit-guide.danger{color:#8d5a34;background:#ffedd6c7}.action-card{display:grid;align-content:center;gap:.22rem;min-block-size:3.4rem;padding:.62rem .72rem;border-radius:.96rem;border:.12rem solid rgba(86,129,54,.8);background:linear-gradient(180deg,#fbfff8fa,#e5f8ddeb),linear-gradient(180deg,#ffffff47,#fff0);box-shadow:inset 0 .12rem #ffffff80,0 .18rem #547a32e6,0 .56rem .9rem #3d58221a;color:#2f4a1d;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,opacity .18s ease}.action-card:hover:not(:disabled),.action-card:focus-visible:not(:disabled){transform:translateY(-1px);box-shadow:inset 0 .12rem #ffffff8a,0 .2rem #547a32e6,0 .94rem 1.36rem #3d582229}.action-card:disabled{opacity:.56;cursor:not-allowed}.action-card-neutral{background:linear-gradient(180deg,#fafff7fa,#e8f8e0e6),linear-gradient(180deg,#ffffff47,#fff0)}.summon-grid,.tower-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.68rem}.summon-grid,.spec-list{flex:1 1 auto;min-block-size:0;overflow:auto;align-content:start;padding-inline-end:.12rem}.summon-btn,.tower-btn{display:grid;grid-template-rows:auto auto auto;align-content:start;justify-items:start;gap:.22rem;text-align:left}.summon-btn{grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto;align-items:center;column-gap:.5rem;row-gap:.12rem;min-block-size:2.72rem;padding:.44rem .56rem}.summon-btn .icon-shell{grid-row:1 / span 2;inline-size:1.64rem;block-size:1.64rem;border-radius:.62rem}.summon-btn .mob-thumb{inline-size:.98rem;block-size:.98rem}.summon-btn>span,.summon-btn>small{grid-column:2}.summon-btn span,.tower-btn span,.summon-btn small,.tower-btn small{display:block;min-inline-size:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.summon-btn>span,.tower-btn>span{color:#2e491c;font-family:var(--room-font-display);font-size:clamp(.88rem,.72rem + .16vw + .08vh,1rem);line-height:1.08;letter-spacing:-.045em}.summon-btn>small,.tower-btn>small{color:#527042;font-family:var(--room-font-display);font-size:clamp(.68rem,.56rem + .1vw + .06vh,.76rem);line-height:1.12;letter-spacing:-.03em}.summon-btn>span{font-size:clamp(.76rem,.64rem + .12vw + .06vh,.88rem)}.summon-btn>small{font-size:clamp(.6rem,.5rem + .08vw + .04vh,.68rem)}.game-action-btn{position:relative}.game-action-btn.active{border-color:#4b903cf5;background:linear-gradient(180deg,#d3f6a9fa,#9bd95feb),linear-gradient(180deg,#ffffff3d,#fff0);box-shadow:inset 0 .12rem #ffffff8a,0 .2rem #487427eb,0 .94rem 1.4rem #58922d38}.game-action-btn.unaffordable{border-color:#a5714ea3;background:linear-gradient(180deg,#fff4edfa,#f2ddcee6),linear-gradient(180deg,#ffffff3d,#fff0);color:#8f6042}.game-action-btn-soft{background:linear-gradient(180deg,#fafff7fa,#dff8d6e6),linear-gradient(180deg,#ffffff47,#fff0)}.icon-shell{display:inline-flex;align-items:center;justify-content:center;inline-size:1.9rem;block-size:1.9rem;border-radius:.7rem;border:.08rem solid rgba(89,126,59,.34);background:#ffffffc2;box-shadow:inset 0 .08rem #ffffff8f}.unit-thumb{inline-size:1.28rem;block-size:1.28rem;object-fit:contain;image-rendering:auto}.mob-thumb{inline-size:1.18rem;block-size:1.18rem}.tower-thumb{inline-size:1.28rem;block-size:1.28rem}.spec-list{display:grid;gap:.46rem;min-block-size:0;max-block-size:none}.spec-item{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.42rem;min-block-size:2.46rem;padding:.34rem .44rem}.spec-item.active{border-color:#478b3bf5}.spec-item.dead{opacity:.56}.spec-item.offline{border-style:dashed}.spec-name{display:inline-flex;align-items:center;gap:.2rem;min-inline-size:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.spec-name .player-level-chip.spec{font-size:clamp(.62rem,.5rem + .08vw + .04vh,.72rem)}.spec-name .player-level-name{font-size:clamp(.72rem,.6rem + .12vw + .06vh,.84rem)}.spec-name>span:last-child{font-size:clamp(.64rem,.54rem + .08vw + .04vh,.74rem)}.spec-stats{display:inline-flex;align-items:center;gap:.18rem;flex-wrap:wrap;justify-content:flex-end;flex:0 0 auto}.spec-stat{display:inline-flex;align-items:center;gap:.18rem;min-block-size:1.24rem;min-inline-size:3rem;padding:.02rem .28rem;border-radius:999px;border:.08rem solid rgba(86,125,53,.34);background:#f8fff4d1;font-family:var(--room-font-display);font-size:.56rem;line-height:1.08;letter-spacing:-.035em}.spec-stat.life{color:#a04c41}.spec-stat.gold{color:#8b6722}.spec-stat.out,.spec-stat.offline{color:#8c6240;background:#ffefd4d1}.quick-return{inline-size:100%;min-block-size:2.38rem;padding-block:.1rem;padding-inline:.82rem;border-radius:1rem;font-size:clamp(.8rem,.68rem + .12vw + .08vh,.9rem);line-height:1.06}.chat-card{inline-size:100%;block-size:min(23.5rem,48dvh);max-block-size:min(23.5rem,48dvh)}.chat-overlay-head{flex:0 0 auto;margin-block-end:-.08rem}.chat-toggle-btn{min-inline-size:5.9cqw;min-block-size:2.95cqw!important;padding-inline:.8cqw!important;border-radius:1.16cqw!important;font-size:clamp(.66rem,.94cqw,.82rem)!important;line-height:1.08!important}.game-chat-log{flex:1 1 auto;min-block-size:0;max-block-size:none;overflow:auto}.chat-panel-input{flex:0 0 auto;margin-top:.08rem}.game-chat-dock .chat-input-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.68cqw;padding:.42cqw;border-radius:1.42cqw}.game-chat-dock .chat-log{gap:.24rem;padding:.18rem .14rem .04rem}.game-chat-dock .chat-line{inline-size:100%;padding:0}.game-chat-dock .chat-line.system{display:flex;flex-wrap:wrap;align-items:center;gap:.16rem;padding:.34rem .44rem;border-radius:.72rem;line-height:1.22}.game-chat-dock .chat-input-row input{min-block-size:3.28cqw;padding-block:.16cqw;padding-inline:1.16cqw;border-radius:1.35cqw;font-size:clamp(.84rem,1.16cqw,1rem);line-height:1.14;letter-spacing:-.04em}.game-chat-dock .chat-send-btn{min-inline-size:6.2cqw;min-block-size:3.28cqw!important;padding-block:.16cqw!important;padding-inline:.88cqw!important;border-radius:1.35cqw!important;font-size:clamp(.78rem,1.08cqw,.92rem)!important;line-height:1.08!important}.game-chat-dock .chat-system-badge{flex:0 0 auto;min-block-size:1.34rem;margin-inline-end:0;padding-inline:.38rem;font-size:clamp(.54rem,.44rem + .08vw + .04vh,.66rem)}.game-chat-dock .chat-meta,.game-chat-dock .chat-text{font-size:clamp(.66rem,.54rem + .12vw + .08vh,.76rem)}.game-chat-dock .chat-meta:after{margin-inline-start:.08rem;margin-inline-end:.12rem}.chat-closed-row{inline-size:100%;pointer-events:auto}.chat-preview{display:flex;align-items:center;min-block-size:2.34rem;padding:.36rem .54rem}.chat-preview-line{display:flex;align-items:center;gap:.16rem;min-inline-size:0;overflow:hidden;white-space:nowrap}.chat-preview .chat-meta{flex:0 0 auto;overflow:visible;text-overflow:clip;white-space:nowrap}.chat-preview .chat-text{flex:1 1 auto;min-inline-size:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.build-modal-backdrop{position:fixed;inset:0;z-index:60;display:grid;place-items:center;padding:1rem;background:#07110a7a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.build-modal{display:grid;gap:.84rem;inline-size:min(28rem,calc(100vw - 2rem));max-block-size:calc(100dvh - 2rem);overflow:auto}.build-modal-meta{display:grid;gap:.34rem}.build-preview-card{display:grid;gap:.58rem;padding:.68rem .74rem;border-radius:.92rem;border:.1rem solid rgba(89,129,56,.44);background:#f6ffefc7}.build-preview-head,.tower-btn-title,.tower-title{display:flex;align-items:center;gap:.46rem;min-inline-size:0}.build-preview-head{justify-content:space-between}.build-preview-head strong{flex:0 0 auto;color:#43652a;font-family:var(--room-font-display)}.build-preview-stats,.tower-change-list{display:flex;flex-wrap:wrap;gap:.36rem}.tower-change-pill,.tier-pill{display:inline-flex;align-items:center;justify-content:center;min-block-size:1.52rem;padding:.08rem .46rem .06rem;border-radius:999px;border:.08rem solid rgba(88,127,56,.34);background:#f8fff4d6;color:#49643a;font-family:var(--room-font-display);font-size:.64rem;line-height:1.08;letter-spacing:-.035em}.tower-preview-owned{background:#ddf6cde6;color:#3c6328}.build-preview-effect{color:#587247}.tower-btn{min-block-size:3.7rem}.tower-btn-title-full{justify-content:flex-start}.tower-btn-meta{color:#667c59}.tower-title-line,.tower-level-line,.tower-economy-line,.tower-stat-line,.tower-next-line{color:#425e32;font-size:clamp(.72rem,.6rem + .12vw + .06vh,.82rem);line-height:1.35}.tower-title-line{color:#2c481a;font-size:clamp(.78rem,.64rem + .14vw + .08vh,.9rem)}.tower-title{font-weight:700}.tower-refund-rate{color:#6c7d57}.tower-stat-list{margin-inline-start:.34rem}.tower-manage-modal .modal-actions,.confirm-modal .modal-actions{margin-top:.18rem}.tower-manage-modal .modal-actions .btn,.confirm-modal .modal-actions .btn{flex:1 1 0}@media(max-width:640px){.app-root{font-size:14px}.game-layout{--edge-gap: 8px;--command-switch-clearance: 2.35rem;height:100dvh}.hud-cluster-top-left{top:8px;left:8px}.hud-cluster-top-center{top:8px;gap:.5rem}.hud-readout-resource{font-size:clamp(.74rem,.62rem + .16vw + .1vh,.9rem)}.hud-readout-meta{font-size:clamp(.62rem,.52rem + .12vw + .08vh,.74rem)}.hud-readout-ping{font-size:clamp(.7rem,.58rem + .14vw + .1vh,.82rem)}.hud-readout-world-event{max-width:min(18rem,calc(100vw - 88px))}.hud-world-event-text{font-size:1em}.command-deck{top:calc(var(--edge-gap) + var(--command-switch-clearance));bottom:calc(var(--edge-gap) + 3rem);right:8px;width:min(17rem,calc(100% - 16px));max-block-size:calc(100% - 16px - var(--command-switch-clearance) - 3rem)}.game-chat-dock{left:8px;right:8px;bottom:8px;transform:none;width:auto}.game-command-dock{top:8px;right:8px}.command-stack,.chat-card{min-inline-size:100%;max-inline-size:100%}.command-panel-switch{width:auto}.switch-btn.btn.ghost{width:1.6rem;min-width:1.6rem;height:1.6rem;min-height:1.6rem}.switch-btn.btn.ghost.active{width:1.74rem;min-width:1.74rem;height:1.74rem;min-height:1.74rem}.deck-card{padding:.64rem}.chat-card{block-size:min(17.5rem,42dvh);max-block-size:min(17.5rem,42dvh)}.action-card{min-block-size:3rem;padding:.56rem .64rem}.chat-preview{min-block-size:2.6rem}.chat-head small,.deck-head small{display:none}.summon-grid,.tower-grid{grid-template-columns:minmax(0,1fr)}.hud-label{font-size:.88em}}@media(pointer:coarse),(max-width:820px){.app-root:before{background:linear-gradient(180deg,rgba(255,255,255,.08),transparent 20%),radial-gradient(circle at 16% 18%,rgba(213,255,248,.12),transparent 18%),radial-gradient(circle at 82% 14%,rgba(255,241,181,.1),transparent 16%),linear-gradient(180deg,#0d57580d,#88b7430a 54%,#aa8f2d0f)}.app-root:after{opacity:.68;background:radial-gradient(ellipse at 12% 80%,rgba(32,124,111,.34) 0 24%,transparent 25%),radial-gradient(ellipse at 50% 84%,rgba(205,181,88,.22) 0 16%,transparent 17%),radial-gradient(ellipse at 88% 80%,rgba(31,104,95,.32) 0 22%,transparent 23%)}.game-layout{background:linear-gradient(180deg,#eef9f4fc,#e6f4dffa 50%,#f3e9bff7)}.game-layout:before,.canvas-shell:before,.canvas-shell:after{display:none}.game-frame{box-shadow:none}.canvas-shell{background:linear-gradient(180deg,#f2fcf9fc 0 36%,#e6f6dffa 36% 72%,#f3e9bdf7)}.delta-float-enter-active,.delta-float-leave-active{transition:opacity .18s ease}.delta-float-enter-from,.delta-float-leave-to{transform:none}}@media(orientation:portrait){.orientation-lock{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:1rem;background:radial-gradient(circle at top,rgba(190,231,220,.28),transparent 42%),radial-gradient(circle at 20% 20%,rgba(255,226,183,.22),transparent 30%),#f7f5eff5}.app-root>:not(.orientation-lock){display:none!important}}
