.hall-entry{min-height:44px;padding:10px 16px;border:1px solid #60dafb;border-radius:12px;background:linear-gradient(120deg,#143c5b,#34205e);color:#f2fbff;font:700 14px/1.3 var(--font-body);cursor:pointer;box-shadow:0 0 16px #2f9bb01a;letter-spacing:0}
.hall-entry:hover{border-color:#fff;background:linear-gradient(120deg,#205575,#513176)}
.btn.hall-entry{background:linear-gradient(120deg,#143c5b,#34205e);color:#e5fbff;border:1px solid #60dafb;box-shadow:0 3px 0 #172a50,0 0 16px #2f9bb01a}
.btn.hall-entry:hover{background:linear-gradient(120deg,#205575,#513176);color:white;border-color:white}
.hall-entry:focus-visible,.hall-preview:focus-visible{outline:3px solid #ffd447;outline-offset:3px}
.hall-rail{position:fixed;left:10px;top:calc(env(safe-area-inset-top) + 7px);z-index:121;max-width:calc(100vw - 125px);font-size:12px}
.hall-active .language-switch,.hall-active .language-suggestion{visibility:hidden}
.hall-ready #startBoard{display:none}
.hall-ready .start-actions{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:10px;flex-shrink:0;margin:6px 0}
.hall-ready .start-actions .btn{min-width:0;min-height:48px;padding:10px 8px;font-size:14px;white-space:normal}
.hall-ready #startHelpBtn{flex-shrink:0}
.hall-preview{width:100%;flex-shrink:0;display:flex;flex-direction:column;gap:4px;padding:10px 12px;border:1px solid #7163a7;border-radius:12px;background:#13122ac7;color:#dce6ff;cursor:pointer;font:12px/1.4 var(--font-body);text-align:left}
.hall-preview strong{font-size:11px;color:#9beeff}
.hall-preview .preview-row{display:grid;grid-template-columns:24px minmax(0,1fr) max-content;align-items:baseline;gap:8px;font-size:15px;font-weight:500;line-height:1.5}
.hall-preview .preview-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hall-preview .preview-rank,.hall-preview .preview-score{font-variant-numeric:tabular-nums;white-space:nowrap;letter-spacing:0}
.hall-preview .preview-score{text-align:right}
.hall-preview .preview-champion{color:#ffe085;font-weight:700}
.hall-preview small{font-size:10px}
.result-cloud{width:100%;max-width:440px;flex-shrink:0;border:1px solid #3b7f92;background:#0c2539e8;border-radius:12px;padding:12px;font:12px/1.5 var(--font-body);text-align:left}
.result-cloud strong{color:#72eeff}.result-cloud p{margin:6px 0;color:#e0e6fa;font-size:12px;line-height:1.5;letter-spacing:0}
.cloud-confirm{display:flex;align-items:end;gap:8px;flex-wrap:wrap}
.cloud-confirm label{flex:1;min-width:100px;display:flex;flex-direction:column;font-size:11px;color:#d4d9ec}
.cloud-confirm input{width:100%;min-height:44px;background:#070c24;color:#fff;border:1px solid #6b82a8;border-radius:8px;padding:8px;font-size:16px}
.cloud-confirm button{font-size:12px}
.cloud-local-name{border:0;background:transparent;color:#c3dff4;text-decoration:underline;min-height:30px;cursor:pointer;width:100%;font:11px var(--font-body)}
#resultHallBtn{flex-shrink:0;margin:0;max-width:100%;font-size:12px;padding:11px 12px}
.hall-ready #overOverlay>.over-actions{gap:8px;flex-wrap:wrap;width:100%}
.hall-ready #overOverlay>.over-actions #restartBtn{font-size:13px;padding:11px 16px}
.hall-ready #overBoard .board-cloud{display:none}
@media(min-width:1120px) and (min-height:720px){.hall-rail{position:static;width:100%;max-width:none;flex-shrink:0;order:-1;font-size:13px;margin-bottom:8px}}
@media(max-width:420px){.hall-ready .start-card{padding:14px 12px;gap:6px}.hall-ready .start-card h2{font-size:25px}.hall-ready .start-actions .btn{font-size:12px}.hall-preview{padding:8px 10px}}
@media(max-height:650px){.hall-preview > span:not(.preview-champion){display:none}.hall-ready .start-card .welcome{display:none}.hall-ready #startOverlay .start-card{padding-top:12px;gap:5px}}
