:root{--bg:#15171c;--panel:#15171cdb;--panel-solid:#1e2128;--line:#333844;--text:#eef0f4;--muted:#9aa1ae;--accent:#ffd400;--font:"Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Malgun Gothic", "Noto Sans KR", sans-serif}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--text);font-family:var(--font);-webkit-text-size-adjust:100%;overscroll-behavior:none;margin:0;overflow:hidden}canvas{touch-action:none;-webkit-user-select:none;user-select:none;display:block;position:fixed;inset:0}button,input{font:inherit;color:inherit}button{cursor:pointer;border:1px solid var(--line);background:var(--panel-solid);touch-action:manipulation;border-radius:10px;font-weight:700}button:hover{background:#2a2e38}button:active{transform:translateY(1px)}button:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.hud{pointer-events:none;padding:max(10px, env(safe-area-inset-top)) max(10px, env(safe-area-inset-right)) max(10px, env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left));flex-direction:column;justify-content:space-between;display:flex;position:fixed;inset:0}.hud[hidden]{display:none}.hud>*{pointer-events:auto}.hud-top{pointer-events:none;flex-wrap:wrap;align-self:flex-start;gap:6px;display:flex}.chip{background:var(--panel);border:1px solid var(--line);white-space:nowrap;border-radius:999px;padding:5px 11px;font-size:13px;font-weight:600}.chip.status{color:var(--accent)}.chip[hidden]{display:none}.hud-bottom{pointer-events:none;flex-direction:column;align-items:center;gap:8px;display:flex}.hud-bottom>*{pointer-events:auto}.context-row{pointer-events:none;flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.context-row button{pointer-events:auto;background:var(--accent);border-color:var(--accent);color:#1b1600;padding:9px 16px}.context-row button:hover{background:#ffe24d}.action-bar{background:var(--panel);border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:8px;width:min(680px,100%);padding:8px;display:flex}.action-buttons{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.action-buttons button{min-height:42px;padding:6px 4px;font-size:15px}.chat-form{gap:6px;display:flex}.chat-form input{border:1px solid var(--line);background:#0f1115;border-radius:10px;flex:1;min-width:0;height:40px;padding:0 12px;font-size:16px}.chat-form button{padding:0 16px}.modal-backdrop{background:#0a0b0e8c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:var(--bg);border:1px solid var(--line);border-radius:16px;flex-direction:column;gap:14px;width:min(380px,100%);padding:24px;display:flex}.modal h1{overflow-wrap:anywhere;margin:0;font-size:22px;font-weight:800}.modal p{color:var(--muted);margin:0;font-size:14px;line-height:1.5}.modal input{border:1px solid var(--line);background:#0f1115;border-radius:10px;height:46px;padding:0 14px;font-size:16px}.modal button{background:var(--accent);border-color:var(--accent);color:#1b1600;height:46px;font-size:16px}.modal button:hover{background:#ffe24d}.gender-group{border:0;grid-template-columns:1fr 1fr;gap:8px;margin:0;padding:0;display:grid}.gender-group legend{color:var(--muted);padding:0 0 8px;font-size:14px}.gender-option{cursor:pointer;position:relative}.gender-option input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.gender-option span{border:1px solid var(--line);background:#0f1115;border-radius:10px;justify-content:center;align-items:center;height:46px;font-weight:700;display:flex}.gender-option input:checked+span{border-color:var(--accent);color:var(--accent)}.gender-option input:focus-visible+span{outline:2px solid var(--accent);outline-offset:1px}.player-menu{background:var(--panel-solid);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:8px;min-width:150px;padding:10px;font-size:14px;display:flex;position:fixed}.player-menu strong{overflow-wrap:anywhere}.player-menu span{color:var(--muted);font-size:12px}.player-menu button{color:#ff9d9d;padding:8px 10px}@media (max-width:480px){.action-buttons button{min-height:44px;font-size:14px}.chip{padding:4px 9px;font-size:12px}}
