@import "https://fonts.googleapis.com/css2?family=Press+Start+2P&display=swap";*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{background:#000;width:100%;height:100%;overflow:hidden}button{cursor:pointer;font-family:inherit}a{text-decoration:none}.app-root{width:100vw;height:100vh;font-family:"\"Press Start 2P\"",monospace;position:relative;overflow:hidden}.setup-overlay{width:100vw;height:100vh;image-rendering:pixelated;background:radial-gradient(#1a3a1a 0%,#0a1a0a 100%);justify-content:center;align-items:center;display:flex}.setup-box{background:#0d0d0d;border:4px solid #fff;outline:4px solid #000;flex-direction:column;align-items:center;gap:24px;width:90%;max-width:480px;padding:40px 48px;display:flex;box-shadow:8px 8px #000}.setup-title{color:#fff;text-shadow:3px 3px #000;letter-spacing:2px;font-family:"\"Press Start 2P\"",monospace;font-size:20px}.setup-sub{color:#aaa;text-align:center;font-family:"\"Press Start 2P\"",monospace;font-size:8px;line-height:1.8}.avatar-preview{justify-content:center;align-items:center;width:72px;height:72px;display:flex}.avatar-circle{border:4px solid #000;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;transition:background-color .15s;display:flex}.avatar-dot{border-radius:50%;width:14px;height:14px}.name-input{color:#fff;letter-spacing:1px;background:#1a1a1a;border:3px solid #555;outline:none;width:100%;padding:10px 14px;font-family:"\"Press Start 2P\"",monospace;font-size:10px;transition:border-color .15s}.name-input:focus{border-color:#fff}.name-input::placeholder{color:#555}.color-grid{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.color-btn{border:3px solid #000;border-radius:50%;outline:3px solid #0000;width:36px;height:36px;transition:outline-color .1s,transform .1s}.color-btn:hover{transform:scale(1.15)}.color-btn.selected{outline-color:#fff;transform:scale(1.2)}.enter-btn{color:#000;letter-spacing:1px;background:#fff;border:none;width:100%;padding:12px 24px;font-family:"\"Press Start 2P\"",monospace;font-size:10px;transition:background .15s,transform .1s;box-shadow:4px 4px #555}.enter-btn:hover:not(:disabled){background:#ddd;transform:translate(-2px,-2px);box-shadow:6px 6px #555}.enter-btn:active:not(:disabled){transform:translate(2px,2px);box-shadow:2px 2px #555}.enter-btn:disabled{color:#888;cursor:not-allowed;box-shadow:none;background:#444}.controls-hint{color:#555;text-align:center;font-family:"\"Press Start 2P\"",monospace;font-size:6px;line-height:2}.hud-online{color:#fff;z-index:100;pointer-events:none;background:#000000bf;border:2px solid #fff3;align-items:center;gap:8px;padding:8px 12px;font-family:"\"Press Start 2P\"",monospace;font-size:8px;display:flex;position:fixed;top:12px;right:12px}.online-dot{background:#2ecc71;border-radius:50%;width:8px;height:8px;animation:1.5s infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.dialogue-overlay{z-index:200;background:#000000bf;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.dialogue-box{background:#0d0d0d;border:4px solid #fff;outline:4px solid #000;flex-direction:column;width:min(700px,95vw);max-height:80vh;display:flex;overflow-y:auto;box-shadow:8px 8px #000}.dialogue-box-large{width:min(1100px,96vw);height:94vh;overflow-y:hidden}.dialogue-header{border-bottom:3px solid #333;align-items:center;gap:10px;padding:14px 18px;display:flex}.dialogue-badge{font-size:16px;line-height:1}.dialogue-app-name{color:#fff;letter-spacing:1px;flex:1;font-family:"\"Press Start 2P\"",monospace;font-size:12px}.dialogue-close{color:#aaa;background:0 0;border:2px solid #555;justify-content:center;align-items:center;width:28px;height:28px;font-size:14px;transition:color .15s,border-color .15s;display:flex}.dialogue-close:hover{color:#fff;border-color:#fff}.dialogue-screenshot-area{background:#111;border-bottom:3px solid #222;flex-direction:column;align-items:center;min-height:180px;display:flex;position:relative}.dialogue-screenshot-fill{background:#000;flex:1;justify-content:center;align-items:center;min-height:0;display:flex;overflow:hidden}.dialogue-screenshot-img{object-fit:cover;width:100%;max-height:240px;display:block}.dialogue-screenshot-img-fill{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:100%;display:block}.dialogue-screenshot-placeholder{border:3px dashed #333;flex-direction:column;justify-content:center;align-items:center;gap:10px;width:100%;min-height:180px;display:flex}.dialogue-screenshot-placeholder span{font-family:"\"Press Start 2P\"",monospace;font-size:9px}.placeholder-hint{color:#555!important;font-size:7px!important}.screenshot-nav{align-items:center;gap:12px;padding:6px;display:flex}.screenshot-nav button{color:#fff;background:#222;border:2px solid #555;padding:4px 8px;font-family:"\"Press Start 2P\"",monospace;font-size:10px;transition:background .1s}.screenshot-nav button:hover:not(:disabled){background:#444}.screenshot-nav button:disabled{opacity:.3;cursor:default}.screenshot-nav span{color:#aaa;font-family:"\"Press Start 2P\"",monospace;font-size:8px}.dialogue-text{cursor:pointer;min-height:60px;padding:16px 20px}.dialogue-text p{color:#ddd;white-space:pre-wrap;font-family:"\"Press Start 2P\"",monospace;font-size:9px;line-height:2}.cursor-blink{animation:.7s step-start infinite blink}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.tech-stack{flex-wrap:wrap;gap:8px;padding:0 20px 16px;display:flex}.tech-tag{color:inherit;border:2px solid;padding:4px 8px;font-family:"\"Press Start 2P\"",monospace;font-size:7px}.dialogue-footer{border-top:3px solid #222;flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:12px 18px;display:flex}.tech-stack-inline{flex-wrap:wrap;padding:0}.dialogue-actions{border-top:3px solid #222;flex-wrap:wrap;gap:12px;padding:14px 20px;display:flex}.btn-primary{color:#000;background:#fff;border:none;padding:10px 18px;font-family:"\"Press Start 2P\"",monospace;font-size:9px;transition:transform .1s,box-shadow .1s;box-shadow:3px 3px #555}.btn-primary:hover{transform:translate(-1px,-1px);box-shadow:4px 4px #555}.btn-secondary{color:#aaa;background:#1a1a1a;border:2px solid #555;padding:10px 18px;font-family:"\"Press Start 2P\"",monospace;font-size:9px;transition:color .15s,border-color .15s;box-shadow:3px 3px #000}.btn-secondary:hover{color:#fff;border-color:#fff}.hud-bar{z-index:100;align-items:center;gap:10px;display:flex;position:fixed;top:12px;right:12px}.hud-bar .hud-online{pointer-events:none;position:static}.hud-retro-btn{color:#000;letter-spacing:1px;background:#f1c40f;border:none;padding:8px 14px;font-family:"\"Press Start 2P\"",monospace;font-size:8px;transition:transform .1s,box-shadow .1s;box-shadow:3px 3px #000}.hud-retro-btn:hover{transform:translate(-2px,-2px);box-shadow:5px 5px #000}.hud-retro-btn:active{transform:translate(1px,1px);box-shadow:2px 2px #000}.retro-root{z-index:300;background:#0d0f12;flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.retro-header{background:#131720;border-bottom:3px solid #1e2530;flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;padding:16px 24px;display:flex}.retro-back-btn{color:#aaa;white-space:nowrap;cursor:pointer;background:#1e2530;border:2px solid #333;padding:10px 16px;font-family:"\"Press Start 2P\"",monospace;font-size:9px;transition:color .15s,border-color .15s;box-shadow:3px 3px #000}.retro-back-btn:hover{color:#fff;border-color:#fff}.retro-header-center{flex-direction:column;align-items:center;gap:6px;display:flex}.retro-title{color:#fff;text-shadow:3px 3px #000;letter-spacing:1px;margin:0;font-family:"\"Press Start 2P\"",monospace;font-size:18px}.retro-subtitle{color:#777;margin:0;font-family:system-ui,-apple-system,sans-serif;font-size:13px}.retro-header-count{color:#aaa;white-space:nowrap;align-items:center;gap:8px;font-family:"\"Press Start 2P\"",monospace;font-size:9px;display:flex}.retro-tab-bar{background:#0d0f12;border-bottom:3px solid #1e2530;flex-shrink:0;display:flex}.retro-tab{color:#555;cursor:pointer;background:0 0;border:none;border-bottom:4px solid #0000;flex:1;justify-content:center;align-items:center;gap:10px;padding:16px 12px;transition:color .15s,border-bottom-color .15s,background .15s;display:flex}.retro-tab:hover:not(.retro-tab-active){color:#888;background:#131720}.retro-tab-active{background:#131720}.retro-tab-emoji{font-size:20px;line-height:1}.retro-tab-label{letter-spacing:.5px;font-family:"\"Press Start 2P\"",monospace;font-size:9px}.retro-tab-count{color:#888;text-align:center;background:#2a2d36;border-radius:3px;min-width:24px;padding:4px 9px;font-family:"\"Press Start 2P\"",monospace;font-size:8px;transition:background .15s,color .15s}.retro-active-column{flex-direction:column;flex:1;display:flex;overflow:hidden}.retro-notes-list{scrollbar-width:thin;scrollbar-color:#333 transparent;flex-direction:column;flex:1;gap:12px;padding:16px;display:flex;overflow-y:auto}.retro-notes-list::-webkit-scrollbar{width:6px}.retro-notes-list::-webkit-scrollbar-track{background:0 0}.retro-notes-list::-webkit-scrollbar-thumb{background:#333;border-radius:3px}.retro-empty{color:#444;text-align:center;margin-top:32px;font-family:system-ui,-apple-system,sans-serif;font-size:14px;line-height:1.8}.retro-note{background:#1a1d24;border:1px solid #2a2d36;border-left:5px solid;flex-direction:column;gap:10px;padding:14px 16px;animation:.2s ease-out note-in;display:flex}@keyframes note-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.retro-note-text{color:#e8e8e8;white-space:pre-wrap;word-break:break-word;margin:0;font-family:system-ui,-apple-system,sans-serif;font-size:15px;line-height:1.6}.retro-note-footer{justify-content:space-between;align-items:center;gap:8px;display:flex}.retro-note-author{opacity:.8;font-family:"\"Press Start 2P\"",monospace;font-size:7px}.retro-note-delete{color:#666;cursor:pointer;background:0 0;border:1px solid #444;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:18px;line-height:1;transition:color .1s,border-color .1s;display:flex}.retro-note-delete:hover{color:#e74c3c;border-color:#e74c3c}.retro-input-area{background:#0d0f12;border-top:2px solid #1e2530;flex-direction:column;flex-shrink:0;gap:10px;padding:16px;display:flex}.retro-textarea{color:#ddd;resize:none;box-sizing:border-box;background:#1a1d24;border:2px solid #333;outline:none;width:100%;padding:12px 14px;font-family:system-ui,-apple-system,sans-serif;font-size:15px;line-height:1.6;transition:border-color .15s}.retro-textarea:focus{border-color:#666}.retro-textarea::placeholder{color:#3a3d46}.retro-add-btn{color:#000;background:var(--accent,#2ecc71);letter-spacing:.5px;cursor:pointer;border:none;padding:13px;font-family:"\"Press Start 2P\"",monospace;font-size:9px;transition:transform .1s,box-shadow .1s,opacity .15s;box-shadow:3px 3px #000}.retro-add-btn:hover:not(:disabled){transform:translate(-1px,-1px);box-shadow:4px 4px #000}.retro-add-btn:active:not(:disabled){transform:translate(1px,1px);box-shadow:2px 2px #000}.retro-add-btn:disabled{opacity:.35;cursor:not-allowed;box-shadow:none}.npc-overlay{z-index:250;background:#000000a6;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.npc-box{background:#0d0d0d;border:4px solid #c8f;outline:4px solid #000;flex-direction:column;width:min(860px,100%);max-height:90vh;display:flex;overflow:hidden;box-shadow:8px 8px #000,0 0 60px #a050dc40}.npc-header{background:#1a0030;border-bottom:3px solid #c8f;flex-shrink:0;align-items:center;gap:12px;padding:16px 22px;display:flex}.npc-emoji{font-size:22px;line-height:1}.npc-name{letter-spacing:1px;flex:1;font-family:"\"Press Start 2P\"",monospace;font-size:12px}.npc-col-tag{letter-spacing:.5px;border:2px solid;padding:5px 10px;font-family:"\"Press Start 2P\"",monospace;font-size:8px}.npc-close{color:#96b;cursor:pointer;background:0 0;border:2px solid #536;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;transition:color .15s,border-color .15s;display:flex}.npc-close:hover{color:#fff;border-color:#fff}.npc-text-area{cursor:pointer;flex-shrink:0;padding:24px 28px}.npc-text{color:#e0e0e0;white-space:pre-wrap;margin:0;font-family:system-ui,-apple-system,sans-serif;font-size:17px;line-height:1.75}.npc-input-section{border-top:2px solid #2a1a3a;flex-direction:column;flex-shrink:0;gap:14px;padding:20px 24px;display:flex}.npc-col-label{color:#c8f;align-items:center;gap:10px;font-family:"\"Press Start 2P\"",monospace;font-size:9px;display:flex}.npc-note-count{color:#fff;background:#5a1888;border-radius:2px;padding:3px 9px;font-family:"\"Press Start 2P\"",monospace;font-size:8px}.npc-notes-list{scrollbar-width:thin;scrollbar-color:#5a1888 transparent;flex-wrap:wrap;gap:8px;max-height:140px;display:flex;overflow-y:auto}.npc-note-chip{background:#1e0a32;border:2px solid;align-items:center;gap:10px;max-width:100%;padding:8px 12px;display:flex}.npc-note-chip span{color:#ddd;word-break:break-word;font-family:system-ui,-apple-system,sans-serif;font-size:14px;line-height:1.5}.npc-note-del{color:#7a3a9a;cursor:pointer;background:0 0;border:none;flex-shrink:0;font-size:20px;line-height:1;transition:color .1s}.npc-note-del:hover{color:#e74c3c}.npc-input-row{align-items:flex-start;gap:10px;display:flex}.npc-textarea{color:#ddd;resize:none;background:#1a0030;border:2px solid #5a1888;outline:none;flex:1;padding:12px 14px;font-family:system-ui,-apple-system,sans-serif;font-size:16px;line-height:1.6;transition:border-color .15s}.npc-textarea:focus{border-color:#c8f}.npc-textarea::placeholder{color:#4a2a5a;font-size:15px}.npc-add-btn{color:#000;white-space:nowrap;cursor:pointer;background:#c8f;border:none;padding:14px 18px;font-family:"\"Press Start 2P\"",monospace;font-size:9px;transition:transform .1s,box-shadow .1s,opacity .15s;box-shadow:3px 3px #000}.npc-add-btn:hover:not(:disabled){transform:translate(-1px,-1px);box-shadow:4px 4px #000}.npc-add-btn:disabled{opacity:.3;cursor:not-allowed;box-shadow:none}.npc-footer{border-top:3px solid #2a1a3a;flex-shrink:0;justify-content:flex-end;align-items:center;gap:12px;padding:16px 22px;display:flex}.npc-btn-primary{color:#000;cursor:pointer;background:#c8f;border:none;padding:13px 22px;font-family:"\"Press Start 2P\"",monospace;font-size:10px;transition:transform .1s,box-shadow .1s;box-shadow:3px 3px #000}.npc-btn-primary:hover{transform:translate(-1px,-1px);box-shadow:4px 4px #000}.npc-btn-secondary{color:#96b;cursor:pointer;background:#1a0030;border:2px solid #5a1888;padding:12px 18px;font-family:"\"Press Start 2P\"",monospace;font-size:9px;transition:color .15s,border-color .15s;box-shadow:3px 3px #000}.npc-btn-secondary:hover{color:#c8f;border-color:#c8f}
