:root{color-scheme:dark;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-height:100vh;background:#0a0a0a;color:#fafafa}.shell{min-height:100vh;display:grid;place-items:center;padding:1rem}.game-container{background:#111827;border:1px solid #1f2937;border-radius:14px;padding:1.25rem;max-width:840px;width:100%;position:relative}.game-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.game-header h1{font-size:1.4rem;font-weight:700;color:#f87171;letter-spacing:-.02em}.level-badge{font-size:.75rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:#1f2937;color:#fbbf24;padding:.2rem .6rem;border-radius:6px;border:1px solid #374151}.game-layout{display:flex;gap:1rem}.stats-panel{width:180px;flex-shrink:0;display:flex;flex-direction:column;gap:.75rem}.player-stats{background:#1f2937;border-radius:10px;padding:.75rem;display:flex;flex-direction:column;gap:.5rem}.stat-bar{display:flex;align-items:center;gap:.4rem}.stat-label{font-size:.7rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:#9ca3af;width:22px;flex-shrink:0}.bar-track{flex:1;height:8px;background:#374151;border-radius:4px;overflow:hidden}.bar-fill{height:100%;border-radius:4px;transition:width .3s ease}.stat-value{font-size:.65rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:#d1d5db;width:36px;text-align:right;flex-shrink:0}.stat-row{display:flex;justify-content:space-between;font-size:.8rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:#d1d5db}.stat-row span:first-child{color:#9ca3af}.potion-btn{background:#7c3aed;color:#fff;border:none;border-radius:8px;padding:.45rem;font-size:.8rem;font-weight:600;cursor:pointer;transition:background .2s}.potion-btn:hover:not(:disabled){background:#6d28d9}.potion-btn:disabled{opacity:.4;cursor:default}.controls-hint{background:#0f172a;border-radius:8px;padding:.5rem .6rem;font-size:.65rem;color:#6b7280;line-height:1.6}.controls-hint p{margin:0}.dungeon-map{flex:1;display:flex;flex-direction:column;gap:0;background:#0f172a;border-radius:10px;padding:.5rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;-webkit-user-select:none;user-select:none}.map-row{display:flex;line-height:1}.tile{width:1.15rem;height:1.3rem;display:flex;align-items:center;justify-content:center;font-size:.75rem;transition:background .15s}.tile-unknown{background:#0a0a0a;color:transparent}.tile-wall{color:#374151}.tile-floor{color:#1f2937}.tile-visible.tile-wall{color:#4b5563}.tile-visible.tile-floor{color:#1e293b}.tile-exit{color:#fbbf24}.tile-player{color:#34d399;font-weight:900;text-shadow:0 0 6px rgba(52,211,153,.6)}.tile-monster{color:#ef4444;font-weight:700;text-shadow:0 0 4px rgba(239,68,68,.5)}.tile-loot{color:#fbbf24;font-weight:700;text-shadow:0 0 4px rgba(251,191,36,.4)}.tile-explored:not(.tile-visible) .tile-wall{color:#2d3748}.tile-explored:not(.tile-visible) .tile-floor{color:#171e2a}.tile-dim{opacity:.4}.message-log{margin-top:.75rem;background:#0f172a;border-radius:10px;padding:.5rem .75rem;max-height:110px;overflow-y:auto;display:flex;flex-direction:column;gap:.15rem}.msg{font-size:.72rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;padding:.1rem 0}.msg-info{color:#60a5fa}.msg-combat{color:#f87171}.msg-loot{color:#34d399}.msg-danger{color:#fbbf24}.overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#000000b3;display:grid;place-items:center;border-radius:14px;z-index:10}.overlay-card{background:#1f2937;border:1px solid #374151;border-radius:12px;padding:2rem;text-align:center}.overlay-card h2{font-size:1.5rem;margin-bottom:.5rem;color:#f87171}.overlay-card p{color:#d1d5db;margin-bottom:1rem;font-size:.9rem}.restart-btn{background:#f87171;color:#fff;border:none;border-radius:8px;padding:.5rem 1.5rem;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .2s}.restart-btn:hover{background:#ef4444}.message-log::-webkit-scrollbar{width:4px}.message-log::-webkit-scrollbar-track{background:transparent}.message-log::-webkit-scrollbar-thumb{background:#374151;border-radius:2px}
