*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;overflow:hidden;background:#1a1a2e;font-family:system-ui,-apple-system,sans-serif;color:#e0e0e0}#app{width:100%;height:100%;display:flex;flex-direction:column;position:relative}#game{flex:1;width:100%;display:block}#hud{position:absolute;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:.5rem 1rem;background:#0009;font-size:.875rem;z-index:10}#hud span{white-space:nowrap}#controls{position:absolute;bottom:0;right:0;display:flex;gap:.5rem;padding:.5rem 1rem;z-index:10}#controls button{padding:.4rem .75rem;border:1px solid #555;border-radius:4px;background:#1e1e32cc;color:#e0e0e0;font-size:.8rem;cursor:pointer}#controls button:hover{background:#3c3c5ae6}#pause-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:none;justify-content:center;align-items:center;background:#000000b3;font-size:3rem;font-weight:700;color:#fff;z-index:20;pointer-events:none}.lb-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;justify-content:center;align-items:center;z-index:25;pointer-events:auto;font-family:Courier New,Courier,monospace}.lb-table{position:relative;background:#000000d9;border:2px solid #444;border-radius:8px;padding:20px 32px;min-width:400px;max-width:520px}.lb-close{position:absolute;top:8px;right:8px;background:none;border:none;color:#888;font-size:1.4rem;cursor:pointer;line-height:1;padding:2px 6px;border-radius:4px}.lb-close:hover{color:#fff;background:#ffffff1a}.lb-header{text-align:center;font-size:1.5rem;font-weight:700;color:#ffd166;margin-bottom:16px;letter-spacing:3px}.lb-row{display:flex;align-items:center;gap:16px;height:34px;line-height:34px;font-size:1.1rem;color:#e0e0e0;padding:0 6px;white-space:nowrap}.lb-row-highlight{color:#06d6a0;font-weight:700}.lb-row-entering{color:#ffd166}.lb-row-player{background:#ffd16614;border-radius:4px}.lb-rank{min-width:2ch;text-align:right}.lb-name{min-width:5ch;text-align:left}.lb-score{flex:1;text-align:right}.lb-char{color:#ffd166}.lb-cursor{color:#ffd166;animation:lb-blink 1.06s step-end infinite}.lb-placeholder{color:#666}.lb-empty{justify-content:center;color:#888;font-style:italic}.lb-status{position:relative;display:flex;justify-content:center;align-items:center;min-height:120px;font-family:Courier New,Courier,monospace}.lb-loading{color:#ffd166;font-size:1rem;animation:lb-pulse 1.2s ease-in-out infinite}.lb-error{color:#ef476f;font-size:.9rem}.lb-submitting{color:#ffd166;margin-left:4px;animation:lb-pulse 1s ease-in-out infinite}.lb-row-error{color:#ef476f;margin-left:4px;font-weight:700}.lb-scroll-hint{text-align:center;color:#666;font-size:.75rem;margin-top:6px;letter-spacing:4px}@keyframes lb-blink{0%,49%{opacity:1}50%,to{opacity:0}}@keyframes lb-pulse{0%,to{opacity:1}50%{opacity:.4}}
