:root{--frame-shell-padding:clamp(8px, 1.5vw, 16px);--font-pixel:"Dotum", "Malgun Gothic", sans-serif;--font-pixel-mono:Consolas, "Courier New", monospace;color:#f8f3fb;font-family:var(--font-pixel);font-synthesis:none;text-rendering:optimizespeed;background-color:#000}.local-guest-label{color:#b7dfe9;letter-spacing:.08em;font-size:12px}.title-band__inner:has(.local-guest-label){flex-direction:column;align-items:center;gap:6px;display:flex}.local-storage-error{color:#eaf2ff;text-align:center;padding:40px}.local-storage-error button{color:#11202c;cursor:pointer;background:#c5f0ff;border:0;border-radius:8px;padding:12px 24px}*{box-sizing:border-box}html{min-height:100%;font-size:clamp(14px,11px + .28vw,22px)}body{background:#000;min-height:100svh;margin:0}button,input,textarea,select{font:inherit}img{max-width:100%;display:block}#root{min-height:100svh;padding:var(--frame-shell-padding);background:#000;place-items:center;display:grid}html,body,#root{background:#000;width:100%;height:100%;min-height:0;margin:0;padding:0;overflow:hidden}html{font-size:16px}#root{display:block}.game-viewport{padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);background:#000;place-items:center;display:grid;position:fixed;inset:0;overflow:hidden}.game-frame-slot{flex:none;position:relative}.game-frame{transform-origin:0 0;width:1280px;height:720px;position:absolute;top:0;left:0}.game-design{--game-vw:12.8px;--game-vh:7.2px;--frame-shell-padding:0px;width:100%;height:100%;container:game-design/size}.game-design .main-screen{aspect-ratio:16/9;--frame-inner-inset:0px;--frame-available-width:1280px;--frame-available-height:720px;--battle-console-height:128px;width:100%;max-width:none;height:100%;min-height:0;max-height:none;padding:0}.game-viewport[data-orientation-blocked=true] .game-frame-slot{visibility:hidden;pointer-events:none}.orientation-notice{text-align:center;color:#edf6ff;background:#000;flex-direction:column;justify-content:center;align-items:center;gap:18px;padding:32px;font-family:system-ui,Malgun Gothic,sans-serif;display:flex;position:absolute;inset:0}.orientation-notice svg{color:#edd18b;width:96px;height:80px}.orientation-notice h1{word-break:keep-all;margin:0;font-size:21px;line-height:1.5}.orientation-notice p{color:#bccada;word-break:keep-all;margin:0;font-size:15px;line-height:1.7}.orientation-notice span{color:#7f91a5;word-break:keep-all;max-width:290px;font-size:12px;line-height:1.7}.game-design .adventure-screen{--battle-sprite-width:156px;--battle-sprite-height:148px;--battle-unit-width:220px}.game-design .adventure-stage__background{background-position:bottom;background-size:cover;bottom:80px}.game-design .adventure-stage:after{content:"";pointer-events:none;background:#0d1a2a;border-top:1px solid #415770;height:80px;position:absolute;bottom:0;left:0;right:0}.game-design .adventure-allies,.game-design .adventure-enemies{z-index:auto;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;align-items:stretch;gap:12px;width:calc(50% - 44px);max-width:none;display:grid;top:0;bottom:0}.game-design .adventure-allies{left:28px;right:auto}.game-design .adventure-enemies{left:auto;right:28px}.game-design .adventure-ally,.game-design .adventure-enemy{width:100%;min-width:0;height:100%;position:relative}.game-design .adventure-player__sprite-wrap--ally,.game-design .adventure-player__sprite-wrap--enemy{top:calc(var(--map-ground-y) - var(--battle-model-lift,0px));width:var(--battle-model-width,min(var(--battle-sprite-width), 100%));height:var(--battle-model-height,var(--battle-sprite-height));position:absolute;bottom:auto;left:50%;transform:translate(-50%,-100%)}.game-design .adventure-player__sprite-wrap[data-combatant-id]{min-width:44px;min-height:44px;z-index:var(--battle-model-layer,2)}.game-design .digimon-status{width:100%;height:56px;position:absolute;bottom:8px}.game-design .digimon-status[data-active=true]:before{padding:1px 6px;inset:auto auto calc(100% + 2px) 4px}.game-design .adventure-hud{gap:32px;height:64px;top:16px;left:28px;right:28px}.game-design .adventure-inventory-strip{flex:auto;max-width:70%;max-height:64px;overflow-y:auto}.game-design .adventure-summary-card{flex:none;max-width:26%}.game-design .battle-action-panel{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;inset:96px 28px}.game-design .battle-action-panel__left{max-width:580px;max-height:100%;overflow:auto}.game-design .battle-action-panel__tooltip{max-height:100%;overflow:auto}.game-design .battle-action-panel__close{margin-left:auto}.game-design .battle-scene-3d__status{max-width:50%;top:82px}.game-design .digimon-status{max-width:260px;left:50%;transform:translate(-50%)}.game-design .digimon-status__name{font-size:14px;top:5px}.game-design .digimon-status__level{font-size:12px}.game-design .digimon-status__hp{top:27px}.game-design .digimon-status__hp-text{font-size:12px;top:9px}.game-design .battle-command{font-size:16px}.game-design .battle-console__message-text{font-size:14px}.game-design .battle-console__message-header{font-size:12px}.game-design .battle-action-panel .battle-skill,.game-design .battle-action-panel__eyebrow{font-size:16px}.game-design .battle-item-popover,.game-design .capture-info-popover,.game-design .level-up-stats{background:#102034fa;border:1px solid #698095;border-radius:8px;width:430px;min-height:0;max-height:388px;padding:12px;bottom:calc(100% + 96px);right:28px;overflow-y:auto;box-shadow:0 10px 28px #0006}.game-design .level-up-stats{width:300px;left:28px;right:auto}.game-design .battle-item-row{min-height:48px;font:14px/1.4 var(--battle-ui-font);background:#22364c;border-radius:5px}.game-design .party-screen{background-color:#0b1729}.game-design .party-screen__current{flex-direction:column;gap:16px;min-height:0;display:flex}.game-design .party-screen__current-image{flex:none;width:180px;height:180px;position:relative;top:auto;left:auto}.game-design .party-screen__current-card{width:100%}.login-screen{color:#e8f4ff;width:100%;height:100%;font-family:var(--font-pixel);background:radial-gradient(at 50% 30%,#16374f 0,#091a2a 47%,#050c17 100%);place-items:center;display:grid;position:relative;overflow:hidden}.login-screen__grid{pointer-events:none;opacity:.25;background-image:linear-gradient(#3d9fbb44 1px,#0000 1px),linear-gradient(90deg,#3d9fbb44 1px,#0000 1px);background-size:48px 48px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 80%);mask-image:linear-gradient(#0000,#000 80%)}.login-panel{text-align:center;background:linear-gradient(150deg,#142a3ce8,#0b1524f5);border:1px solid #4c7e96;border-radius:14px;width:440px;padding:36px 40px 24px;position:relative;box-shadow:0 24px 80px #0009,inset 0 1px #a6e7ff15}.login-panel__logo{object-fit:contain;width:310px;height:148px;margin:0 auto 18px}.login-panel__divider{color:#79cbe5;letter-spacing:3px;align-items:center;gap:12px;font:10px Consolas,monospace;display:flex}.login-panel__divider:before,.login-panel__divider:after{content:"";background:#31546a;flex:1;height:1px}.login-panel h1{letter-spacing:-.5px;margin:24px 0;font-size:22px;font-weight:600}.login-button{cursor:pointer;border-radius:7px;justify-content:center;align-items:center;gap:12px;width:100%;min-height:52px;padding:12px 20px;font-size:16px;font-weight:700;transition:background .15s,border-color .15s;display:flex}.login-button--google{color:#26313d;background:#f5f8fc;border:1px solid #fff}.login-button--google:hover{background:#dfeefa}.login-button--google svg{flex:none;width:22px;height:22px}.login-button--guest{color:#b9edfc;background:#123246;border:1px solid #3e829b;margin-top:12px}.login-button--guest:hover{background:#1b465c;border-color:#73cfe8}.login-button--guest span{color:#83d8e9;margin-left:6px}.login-button:disabled{cursor:wait;opacity:.55}.login-button:focus-visible{outline-offset:4px;outline:3px solid #f3c677}.login-panel__status{color:#91acbe;word-break:keep-all;min-height:36px;margin:20px 0 0;font-size:12px;line-height:1.5}.profile-controls{justify-content:center;align-items:center;gap:12px;display:flex}.profile-controls button{color:#b9ecff;cursor:pointer;background:#123246;border:1px solid #3e6d85;border-radius:4px;padding:4px 10px;font-size:11px}.profile-controls button:focus-visible{outline-offset:3px;outline:2px solid #f3c677}.profile-controls__error{color:#ffc194;max-width:340px;font-size:11px}
