:root{--p-cyan:oklch(.84 .12 188);--p-ink:oklch(.17 .025 248);--p-panel:oklch(.23 .035 246);--p-text:oklch(.94 .025 190);--p-muted:oklch(.77 .035 225);--p-amber:oklch(.84 .13 82);--surface:var(--p-ink);--panel:color-mix(in oklch,var(--p-panel) 88%,transparent);--text:var(--p-text);--muted:var(--p-muted);--accent:var(--p-cyan);--warning:var(--p-amber);--line:color-mix(in oklch,var(--accent) 30%,transparent);--radius:10px}*{box-sizing:border-box;margin:0;padding:0}html,body{position:fixed;inset:0;width:100%;height:100%;height:100dvh;overflow:hidden;overscroll-behavior:none;background:var(--surface)}body{font:16px/1.5 Trebuchet MS,Arial,sans-serif;color:var(--text);-webkit-font-smoothing:antialiased;user-select:none;-webkit-user-select:none}button,select{font:700 12px/1 Trebuchet MS,Arial,sans-serif;touch-action:manipulation}button,select{min-height:44px;border:1px solid var(--line);border-radius:var(--radius);color:var(--text);background:var(--panel);padding:0 13px;cursor:pointer;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:background-color .16s ease-out,border-color .16s ease-out,transform .12s ease-out}button:hover,select:hover{border-color:var(--accent);background:color-mix(in oklch,var(--p-panel) 75%,var(--accent) 25%)}button:active{transform:scale(.96)}button.selected{border-color:var(--accent);color:var(--accent);background:color-mix(in oklch,var(--p-panel) 72%,var(--accent) 28%)}button.warning.selected{border-color:var(--warning);color:var(--warning)}:focus-visible{outline:3px solid var(--warning);outline-offset:3px}#game{position:fixed;inset:0;width:100%;height:100%;display:block;background:#07111d;touch-action:none;cursor:grab}#game:active{cursor:grabbing}.hud{position:fixed;z-index:5;top:max(10px,env(safe-area-inset-top));left:10px;right:10px;display:flex;align-items:flex-start;justify-content:space-between;gap:10px;pointer-events:none}.hud>*{pointer-events:auto}.brand{min-height:44px;display:flex;align-items:center;gap:10px;padding:0 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font:900 15px/1 Courier New,monospace;letter-spacing:2px;color:var(--accent);white-space:nowrap}.brand small{font:700 10px/1 Trebuchet MS,Arial,sans-serif;letter-spacing:1px;color:var(--muted)}.phone-button{display:flex;align-items:center;gap:9px;min-width:112px;justify-content:center;color:var(--accent)}.phone-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}.phone-button svg circle{fill:currentColor;stroke:none}.toolbar{display:flex;gap:7px;flex-wrap:wrap}.places{width:190px;text-overflow:ellipsis}.zoom{position:fixed;z-index:5;right:12px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:8px}.zoom button{width:46px;padding:0;font-size:22px}.hint{position:fixed;z-index:4;left:50%;bottom:max(14px,env(safe-area-inset-bottom));transform:translate(-50%);padding:9px 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);color:var(--muted);font-size:12px;white-space:nowrap;pointer-events:none}#stick{position:fixed;z-index:5;left:18px;bottom:max(22px,calc(18px + env(safe-area-inset-bottom)));width:124px;height:124px;border:2px solid color-mix(in oklch,var(--accent) 45%,transparent);border-radius:50%;background:radial-gradient(circle,color-mix(in oklch,var(--p-panel) 75%,transparent),color-mix(in oklch,var(--p-ink) 80%,transparent));touch-action:none;display:none;align-items:center;justify-content:center}#knob{width:52px;height:52px;border-radius:50%;background:color-mix(in oklch,var(--accent) 62%,transparent);border:2px solid color-mix(in oklch,var(--accent) 75%,transparent);pointer-events:none}#mobileControls{display:none}.loading{position:fixed;z-index:20;inset:0;display:flex;align-items:center;justify-content:center;background:color-mix(in oklch,var(--p-ink) 94%,transparent);padding:24px}.loading-box{width:320px;text-align:center}.loading-title{font:900 18px/1.4 Courier New,monospace;letter-spacing:3px;color:var(--accent)}.loading-copy{margin-top:12px;color:var(--muted);font-size:14px}.track{height:5px;margin-top:20px;background:color-mix(in oklch,var(--p-panel) 80%,transparent);border-radius:5px;overflow:hidden}#progress{height:100%;width:0;background:var(--accent);transition:width .18s ease-out}#btnRetry{margin-top:20px}[hidden]{display:none!important}#btnDoor{position:fixed;z-index:6;left:50%;bottom:max(70px,calc(60px + env(safe-area-inset-bottom)));transform:translate(-50%);border-color:var(--warning);color:var(--warning);font-size:14px;padding:0 20px}#btnPvp{position:fixed;z-index:6;left:50%;bottom:max(118px,calc(108px + env(safe-area-inset-bottom)));transform:translate(-50%);background:var(--accent,#22d3ee);color:#06222b;border:none;border-radius:12px;font:800 15px/1 system-ui;letter-spacing:1px;padding:14px 26px;box-shadow:0 4px 18px #22d3ee73;animation:pvpPulse 1.6s ease-in-out infinite}@keyframes pvpPulse{0%,to{box-shadow:0 4px 18px #22d3ee73}50%{box-shadow:0 4px 28px #22d3eed9}}.panel{position:fixed;z-index:8;top:64px;right:12px;bottom:12px;width:290px;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--radius);background:color-mix(in oklch,var(--p-ink) 94%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);overflow:hidden}.panel header{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--line)}.panel header strong{font:900 13px/1 Courier New,monospace;letter-spacing:2px;color:var(--accent);flex:1}.panel header button{min-height:36px;padding:0 10px}.panel .tools{display:flex;gap:6px;padding:8px 12px;border-bottom:1px solid var(--line);flex-wrap:wrap}.panel .tools button{min-height:36px;padding:0 9px;font-size:11px}.baglist{flex:1;overflow-y:auto;padding:8px 12px;display:flex;flex-direction:column;gap:4px}.baglist,.cardgrid{overscroll-behavior-y:contain;touch-action:pan-y}.baggroup{font:700 11px/1 Courier New,monospace;letter-spacing:1px;color:var(--muted);margin:8px 0 2px}.bagitem{display:flex;align-items:center;gap:10px;padding:5px 6px;border:1px solid transparent;border-radius:8px;cursor:pointer;background:none;color:var(--text);font:700 12px/1.2 Trebuchet MS,Arial,sans-serif;text-align:left;min-height:44px;width:100%}.bagitem:hover{border-color:var(--line)}.bagitem.selected{border-color:var(--accent);background:color-mix(in oklch,var(--p-panel) 70%,var(--accent) 18%)}.bagitem img{width:44px;height:44px;object-fit:contain;image-rendering:auto;flex:none}.bagitem .meta{flex:1;min-width:0}.bagitem .meta small{display:block;color:var(--muted);font-weight:400}.bagitem .count{font:700 11px/1 Courier New,monospace;color:var(--accent)}.tabs{display:flex;gap:6px;padding:8px 12px 0}.tabs button{flex:1;min-height:36px;font-size:11px}.cardgrid{flex:1;overflow-y:auto;padding:10px 12px;display:grid;grid-template-columns:1fr 1fr;gap:8px;align-content:start}.card{position:relative;border:2px solid var(--line);border-radius:10px;padding:8px 6px 7px;text-align:center;background:color-mix(in oklch,var(--p-panel) 80%,transparent);min-height:110px;display:flex;flex-direction:column;align-items:center;gap:4px}.card img{width:52px;height:52px;object-fit:contain}.card .cname{font:700 10px/1.2 Trebuchet MS,Arial,sans-serif;text-transform:capitalize}.card .crarity{font:700 8px/1 Courier New,monospace;letter-spacing:1px;text-transform:uppercase}.card.r-comune{border-color:#7095a8}.card.r-rara{border-color:#00c1e9;border-color:oklch(.75 .15 220)}.card.r-epica{border-color:#b180fc}.card.r-leggendaria{border-color:var(--warning);box-shadow:0 0 12px color-mix(in oklch,var(--warning) 45%,transparent)}.card.locked{filter:grayscale(1) brightness(.45)}.card.locked img{opacity:.25}.card.locked .cname{color:var(--muted)}.collectionbar{padding:8px 12px;border-bottom:1px solid var(--line);font:700 11px/1.4 Courier New,monospace;color:var(--muted)}.collectionbar strong{color:var(--warning)}.toast{position:fixed;z-index:30;left:50%;top:22%;transform:translate(-50%) scale(.8);opacity:0;pointer-events:none;transition:opacity .25s,transform .25s;border:2px solid var(--warning);border-radius:14px;background:color-mix(in oklch,var(--p-ink) 94%,transparent);padding:16px 22px;text-align:center;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.toast.show{opacity:1;transform:translate(-50%) scale(1)}.toast img{width:84px;height:84px;object-fit:contain}.toast .tnew{font:900 11px/1 Courier New,monospace;letter-spacing:2px;color:var(--warning)}.toast .tname{font:900 16px/1.3 Trebuchet MS,Arial,sans-serif;text-transform:capitalize;margin-top:6px}.toast .trarity{font:700 10px/1 Courier New,monospace;letter-spacing:1px;text-transform:uppercase;margin-top:4px}.editbar{position:fixed;z-index:7;left:50%;top:max(64px,calc(64px + env(safe-area-inset-top)));transform:translate(-50%);padding:9px 16px;border:1px solid var(--warning);border-radius:var(--radius);background:color-mix(in oklch,var(--p-ink) 92%,transparent);color:var(--warning);font:700 12px/1.4 Trebuchet MS,Arial,sans-serif;white-space:nowrap;pointer-events:none}@media(max-width:760px){.panel{top:110px;width:min(290px,calc(100vw - 24px))}}@media(pointer:coarse){#stick{display:flex}.hint{display:none}}@media(max-width:760px){.hud{left:8px;right:8px;gap:8px}.brand{font-size:13px;padding:0 11px}.brand small{display:none}.phone-button{min-width:52px;padding:0 12px}.phone-button span{display:none}.zoom{right:8px}.zoom button{width:44px}}@media(pointer:coarse){.hud .phone-button{display:none}#mobileControls{position:fixed;z-index:5;right:max(14px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));width:132px;display:flex;flex-direction:column;gap:9px}#mobileControls #stick{position:relative;inset:auto;flex:0 0 124px;margin-left:auto}#mobileActions{display:flex;flex-direction:column;gap:8px}#mobileActions button{width:100%;padding:0 8px;font-size:11px;white-space:nowrap;background:color-mix(in oklch,var(--p-ink) 92%,transparent)}.phone-fab{display:flex;align-items:center;justify-content:center;gap:7px;color:var(--accent)}.phone-fab svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}.phone-fab svg circle{fill:currentColor;stroke:none}#btnDoor{left:8px;bottom:max(126px,calc(118px + env(safe-area-inset-bottom)));transform:none;max-width:calc(100vw - 172px);padding:0 8px;font-size:12px}#btnPvp{bottom:max(172px,calc(164px + env(safe-area-inset-bottom)));padding:12px 18px;font-size:13px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}html,body,#root{position:fixed;inset:0;width:100%;height:100%;height:100dvh;overflow:hidden}.editbar{display:flex;align-items:center;gap:10px;max-width:calc(100vw - 20px);white-space:normal;text-align:center;pointer-events:none}.editbar #editbarText{max-width:min(70vw,560px)}.editbar button{pointer-events:auto;min-height:38px;padding:8px 14px;font:800 12px Trebuchet MS,Arial,sans-serif}.editbar-confirm{border-color:var(--accent);color:var(--accent)}.objmenu{position:fixed;z-index:9;display:flex;flex-direction:column;gap:6px;min-width:170px;padding:10px;border:1px solid var(--line);border-radius:var(--radius);background:color-mix(in oklch,var(--p-ink) 96%,transparent);box-shadow:0 14px 40px #000a}.objmenu[hidden]{display:none}.objmenu strong{font:800 11px/1.2 Trebuchet MS,Arial,sans-serif;text-transform:capitalize;color:var(--accent);text-align:center}.objmenu button{min-height:42px}.objmenu-rename{display:flex;gap:6px}.objmenu-rename[hidden]{display:none}.objmenu-rename input{flex:1;min-width:0;min-height:38px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:#0e1b2c;color:var(--text);font-size:16px}.objmenu-rename button{min-height:38px;padding:8px 12px}.editbar{flex-wrap:wrap;justify-content:center}.editbar-resize{display:flex;gap:6px;pointer-events:auto}.editbar-resize button{min-height:38px;padding:8px 10px;font:800 11px Trebuchet MS,Arial,sans-serif}.cg-apps{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:8px 2px}.cg-app{display:flex;flex-direction:column;align-items:center;gap:6px;padding:16px 8px;border:1px solid var(--line);border-radius:16px;background:#0e1b2c;color:var(--text);min-height:110px;cursor:pointer;transition:transform .15s,border-color .15s}.cg-app:hover{transform:translateY(-2px);border-color:var(--accent)}.cg-app-icon{font-size:34px;line-height:1}.cg-app b{font:900 12px Trebuchet MS,Arial,sans-serif;text-align:center}.cg-app small{font-size:9px;color:var(--muted);text-align:center;line-height:1.3}@media(max-width:700px){.cg-apps{grid-template-columns:repeat(3,1fr);gap:8px}.cg-app{min-height:96px;padding:12px 6px}.cg-app-icon{font-size:28px}}#cgApp .cg-head{pointer-events:none}#cgApp .cg-nav{order:3;border-top:1px solid var(--line);border-bottom:0;padding-bottom:max(10px,env(safe-area-inset-bottom))}#cgApp .cg-shell{display:flex;flex-direction:column}#cgApp .cg-main{order:2}.cg-apps-bottom{min-height:100%;align-content:end}.cg-app-icon{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:14px;background:#0a1524;border:1px solid var(--line)}.cg-app-icon img{max-width:48px;max-height:48px;object-fit:contain;image-rendering:auto}.cg-close-tab{margin-left:auto;color:var(--warning);border-color:var(--warning)}@media(max-width:700px){.cg-app-icon{width:48px;height:48px}.cg-app-icon img{max-width:42px;max-height:42px}}.cg-apps{gap:18px 10px}.cg-app{background:transparent;border:0;min-height:0;padding:4px 2px;gap:8px}.cg-app:hover{transform:scale(1.05);border:0}.cg-app-icon{width:78px;height:78px;border-radius:20px;background:transparent;border:0;box-shadow:0 6px 18px #0007}.cg-app-icon img{width:78px;height:78px;max-width:none;max-height:none;object-fit:cover;border-radius:20px}.cg-app small{display:none}.cg-app b{font-size:11px;line-height:1.2}@media(max-width:700px){.cg-app-icon,.cg-app-icon img{width:68px;height:68px;border-radius:18px}}.chat-button{display:flex;align-items:center;justify-content:center;gap:7px;color:var(--accent)}.chat-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.hud .chat-button{padding:6px 10px;font-size:12px;border-radius:10px;border:1px solid rgba(255,255,255,.18);background:#0a101a8c}#chatBar{position:fixed;z-index:26;left:50%;bottom:max(18px,calc(14px + env(safe-area-inset-bottom)));transform:translate(-50%);display:flex;gap:8px;width:min(480px,calc(100vw - 24px));padding:8px;border:1px solid var(--line);border-radius:16px;background:color-mix(in oklch,var(--p-ink) 92%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 12px 40px #0009}#chatBar[hidden]{display:none}#chatInput{flex:1;min-width:0;min-height:44px;padding:0 14px;font-size:16px;font-family:Trebuchet MS,Arial,sans-serif;color:var(--text);background:#122236;border:1px solid var(--line);border-radius:11px;outline:none}#chatInput:focus{border-color:var(--accent)}#chatSend{min-height:44px;min-width:52px;padding:0 14px;font-size:16px;color:#06222b;background:var(--accent);border:none;border-radius:11px}@media(pointer:coarse){#chatBar{bottom:max(170px,calc(160px + env(safe-area-inset-bottom)))}}.npc-talk{position:fixed;z-index:6;left:50%;bottom:max(120px,calc(110px + env(safe-area-inset-bottom)));transform:translate(-50%);border-color:var(--accent);color:var(--accent);font-size:14px;padding:0 20px;box-shadow:0 6px 22px #0007}@media(pointer:coarse){.npc-talk{left:8px;bottom:max(178px,calc(168px + env(safe-area-inset-bottom)));transform:none;max-width:calc(100vw - 172px);padding:0 10px;font-size:12px}}#npcDialog{position:fixed;z-index:28;inset:0;display:flex;align-items:flex-end;justify-content:center;background:#02060e59;padding:12px;padding-bottom:max(20px,calc(16px + env(safe-area-inset-bottom)))}#npcDialog[hidden]{display:none}.npc-box{width:min(560px,100%);border:1px solid var(--line);border-radius:18px;background:color-mix(in oklch,var(--p-ink) 96%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 18px 60px #000b;padding:14px 16px;display:flex;flex-direction:column;gap:10px}.npc-head{display:flex;align-items:center}.npc-head strong{font:900 15px Courier New,monospace;letter-spacing:1px;flex:1}.npc-head button{min-height:34px;padding:0 10px}#npcText{min-height:52px;font-size:15px;line-height:1.5;color:var(--text)}#npcChoices{display:flex;flex-direction:column;gap:7px}#npcChoices button{min-height:44px;text-align:left;padding:10px 13px;font-size:13px;line-height:1.3}#npcChoices button.npc-next{align-self:flex-end;min-width:88px;text-align:center;color:var(--accent);border-color:var(--accent)}#npcChoices button.npc-bye{color:var(--warning);border-color:var(--warning)}.cg-netlist{display:flex;flex-direction:column;gap:4px;margin-top:6px}.cg-netrow{display:flex;align-items:center;gap:7px;padding:6px 8px;background:#ffffff0d;border-radius:9px;font-size:13px}.cg-netrow button{padding:3px 9px;font-size:11px;border-radius:8px;border:1px solid rgba(142,243,230,.4);background:transparent;color:var(--accent)}.cg-dot{width:8px;height:8px;border-radius:50%;background:#5b6779;flex:0 0 8px}.cg-dot.on{background:#4ade80;box-shadow:0 0 6px #4ade80b3}
