:root{color-scheme:dark;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--ink: #f4e8d8;--muted: #cbb8c4;--bg: #07040c;--panel: #160a16ee;--line: #ff7eb0;--cyan: #5ce1ff;--gold: #ffcc66;--exp: #ff5ea8;--energy: #4ad6ff;--hud: #120814f2}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:radial-gradient(1200px 700px at 50% -10%,#3a1648 0%,transparent 55%),repeating-linear-gradient(0deg,rgba(255,90,160,.04) 0 1px,transparent 1px 7px),var(--bg);color:var(--ink);font-family:"M PLUS Rounded 1c",sans-serif;overflow:hidden}#app{min-height:100dvh;display:grid;place-items:center}#stage{width:min(100vw,430px);height:100dvh;display:grid;place-items:center}#game-root{position:relative;width:100%;height:100%;max-width:390px;max-height:844px;aspect-ratio:390 / 844;background:#14081c;overflow:hidden;box-shadow:0 0 0 1px #ff4d9a55,0 20px 80px #ff2ea622,0 0 120px #5ce1ff11;touch-action:none}@media(max-width:480px){#game-root{max-width:none;max-height:none;width:100vw;height:100dvh;aspect-ratio:auto;box-shadow:none}}#phaser-host,#phaser-host canvas,#game-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;image-rendering:pixelated}#ui-root{position:absolute;inset:0;pointer-events:none;z-index:5}#ui-root button,#ui-root input,#ui-root .sheet,#ui-root .scrim,#ui-root .minimap-wrap{pointer-events:auto}.hud{position:absolute;top:var(--safe-top);left:0;right:0;height:76px;display:grid;grid-template-columns:54px 1fr 86px;gap:8px;align-items:center;padding:8px 10px 6px;background:linear-gradient(180deg,var(--hud),#120814cc 70%,transparent)}.face{width:52px;height:52px;padding:0;border:1px solid #ff7eb0;border-radius:10px;overflow:hidden;background:#241018}.face img{width:100%;height:100%;image-rendering:pixelated;display:block}.identity{display:flex;flex-direction:column;gap:4px;background:transparent;border:0;color:inherit;text-align:left;padding:0 2px;min-height:52px}.name-row{display:flex;gap:8px;align-items:baseline}.lv{font-family:DotGothic16,sans-serif;color:var(--cyan);font-size:13px}.name{font-weight:800;letter-spacing:.04em;font-size:15px}.gauge{display:grid;grid-template-columns:28px 1fr;gap:6px;align-items:center}.g-label{font-size:9px;letter-spacing:.08em;color:var(--muted)}.g-label.bolt{color:var(--energy);font-size:11px}.track{height:7px;border-radius:99px;background:#2a1824;border:1px solid #0008;overflow:hidden}.track i{display:block;height:100%;width:0}.track.exp i{background:linear-gradient(90deg,#ff3d8a,#ffb0d4)}.track.energy i{background:linear-gradient(90deg,#1aa7d6,#9af0ff)}.wallet{display:flex;flex-direction:column;gap:4px}.wallet button{display:flex;align-items:center;gap:6px;justify-content:flex-end;background:#1a1018cc;border:1px solid #5a3048;color:var(--ink);border-radius:999px;padding:2px 8px;min-height:24px;font-size:12px}.ico{width:12px;height:12px;display:inline-block;border-radius:50%}.ico.coin{background:radial-gradient(circle at 30% 30%,#fff3b0,#d4a017)}.ico.dia{background:linear-gradient(135deg,#b8f4ff,#2aa7e0);border-radius:2px;transform:rotate(45deg)}.chrome{position:absolute;top:calc(var(--safe-top) + 76px);left:8px;right:8px;display:flex;justify-content:space-between;align-items:flex-start}.tools{display:flex;flex-direction:column;gap:8px}.tools button,.actions button{border:1px solid #ff7eb088;background:#160a16dd;color:var(--ink);border-radius:12px;font-size:11px;font-weight:700;letter-spacing:.04em;box-shadow:0 4px #0006}.tools button{border-radius:14px}.minimap-wrap{position:relative;padding:0;border:1px solid #5ce1ff88;background:#0c0810ee;border-radius:12px;overflow:hidden}.minimap-wrap canvas{width:100%;height:100%;display:block;image-rendering:pixelated}.minimap-wrap .area{position:absolute;left:4px;bottom:3px;font-size:10px;background:#120814cc;padding:1px 5px;border-radius:6px}.actions{position:absolute;right:10px;bottom:calc(12px + var(--safe-bottom));display:flex;flex-direction:column;gap:10px}.actions button{white-space:nowrap;font-size:10px;letter-spacing:0;min-width:64px}#ui-root.hand-right .tools{order:2}#ui-root.hand-right .chrome{flex-direction:row-reverse}#ui-root.hand-right .actions{right:auto;left:10px}.toast{position:absolute;left:50%;bottom:120px;transform:translate(-50%);background:#120814f0;border:1px solid var(--gold);color:var(--gold);padding:8px 12px;border-radius:10px;font-size:13px;pointer-events:none;white-space:nowrap}.panel-host{position:absolute;inset:0}.scrim{position:absolute;inset:0;background:#07040ccc}.sheet{position:absolute;left:10px;right:10px;bottom:calc(10px + var(--safe-bottom));top:calc(var(--safe-top) + 88px);background:linear-gradient(180deg,#2a1020,transparent 40px),var(--panel);border:1px solid var(--line);border-radius:18px;display:flex;flex-direction:column;box-shadow:0 16px 40px #000a}.sheet.target,.sheet:not(.notebook){top:auto;max-height:min(70%,560px)}.sheet header{display:flex;justify-content:space-between;align-items:center;padding:12px 14px 8px}.sheet h2{margin:0;font-size:18px;font-family:DotGothic16,sans-serif}.close{width:40px;height:40px;border:0;background:transparent;color:var(--ink);font-size:24px}.sheet .body{padding:4px 16px 18px;overflow:auto;font-size:14px;line-height:1.6}.tabs{display:flex;gap:6px;overflow:auto;padding:0 12px 8px}.tabs button,.seg button,.phrases button,.actions-col button{border:1px solid #5a3048;background:#1a1018;color:var(--ink);border-radius:999px;padding:6px 10px;font-size:12px}.tabs button.on,.seg button.on{border-color:var(--cyan);color:var(--cyan)}.note{color:var(--muted);font-size:12px}.card{border:1px solid #5a3048;border-radius:12px;padding:10px 12px;background:#1a1018aa}.card.tracked{border-color:var(--exp)}.tag{color:var(--exp);font-size:11px;margin:0 0 4px}.profile{display:flex;gap:12px;align-items:center}.profile img{image-rendering:pixelated;border:1px solid var(--line);border-radius:8px}.list,.world{padding-left:18px}.world .here{color:var(--cyan)}.world .locked{color:#887888}.row{display:flex;justify-content:space-between;align-items:center;padding:8px 0}.seg,.phrases,.actions-col{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 12px}.actions-col{flex-direction:column}.chat-line{display:grid;gap:6px}.chat-line input{height:44px;border-radius:10px;border:1px solid #5a3048;background:#0c0810;color:var(--ink);padding:0 10px;font:inherit}button,input{font-family:inherit}button:active{transform:translateY(1px)}
