.online-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;align-items:center}
.btn.online-btn{font-size:20px;padding:9px 20px;min-height:46px}
.account-status{min-height:20px;font:14px/1.4 Arial,sans-serif!important;max-width:500px;color:#e0efff!important}
#menu,#overScreen{overflow-y:auto;overscroll-behavior:contain;gap:10px}
.online-dialog{box-sizing:border-box;width:min(94vw,520px);max-height:88dvh;margin:auto;padding:24px;color:#fff;background:#12305e;border:4px solid #fff;border-radius:18px;box-shadow:0 14px 45px #06152c99;font:16px/1.45 Arial,sans-serif;overflow-y:auto;touch-action:pan-y;user-select:text;scrollbar-color:#719dd5 #12305e;scrollbar-width:thin}
.online-dialog::backdrop{background:rgba(4,15,36,.78)}
.online-dialog[open]{animation:online-enter .22s cubic-bezier(.16,1,.3,1)}
.online-dialog *{box-sizing:border-box}.online-dialog [hidden],[hidden]{display:none!important}
.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}
.dialog-heading h2{font:36px/1.05 'Lilita One',sans-serif;color:#ffd23f;margin:0}
.close-dialog{display:grid;place-items:center;min-width:44px;height:44px;background:#1c4b83;color:#fff;border:0;border-radius:10px;cursor:pointer}
.close-dialog svg{width:24px;stroke:currentColor;stroke-width:3;fill:none}
.online-dialog p{font:16px/1.45 Arial,sans-serif;margin:12px 0;color:#e0efff}
.online-dialog label{display:block;font-weight:700;margin:18px 0 6px}
.online-dialog input{display:block;width:100%;min-height:48px;font:20px Arial,sans-serif;padding:10px 12px;border:2px solid #bcd4f4;border-radius:9px;color:#12305e;background:#fff;caret-color:#1559c2;user-select:text;touch-action:manipulation}
.online-dialog input[type=password]{letter-spacing:6px;font-size:24px}
.online-dialog input::selection{background:#ffd23f;color:#12305e}
.online-dialog small{display:block;font:13px/1.4 Arial,sans-serif;margin-top:5px;color:#d3e5ff}
.online-dialog :focus-visible,.online-actions :focus-visible,.text-btn:focus-visible{outline:3px solid #ffd23f;outline-offset:4px}
.online-dialog input:focus-visible{outline-color:#ffd23f;outline-offset:2px}
.auth-tabs{display:flex;background:#092144;border-radius:10px;padding:4px;gap:4px}
.auth-tabs button{flex:1;background:transparent;color:#d3e5ff;border:0;border-radius:7px;min-height:44px;font:20px 'Lilita One',sans-serif;cursor:pointer}
.auth-tabs [aria-pressed=true]{background:#ffd23f;color:#12305e}
.online-dialog .online-submit{width:100%;margin:8px 0 6px;font-size:25px;min-height:50px;padding:9px 14px}
.online-dialog .form-error{font-size:14px;line-height:1.4;color:#ffcccb;min-height:0;margin:12px 0}
.online-dialog .form-error:empty{display:none}
.text-btn{font:15px/1.4 Arial,sans-serif;color:#fff;border:0;background:transparent;text-decoration:underline;text-underline-offset:4px;padding:10px 8px;min-height:44px;cursor:pointer}
.online-dialog .profile-name{font:30px 'Lilita One',sans-serif;color:#fff;overflow-wrap:anywhere}
.delete-toggle{display:block;margin:18px auto 0;color:#ffcccb}
.delete-confirm{background:#a92732;color:#fff;font:18px 'Lilita One',sans-serif;border:2px solid #fff;padding:10px;border-radius:8px;margin-top:16px;min-height:46px;width:100%;cursor:pointer}
.online-dialog button:disabled{opacity:.65;cursor:wait}
.close-dialog:hover{background:#2e609b}.auth-tabs button:hover:not([aria-pressed=true]){background:#1c4b83}.text-btn:hover{text-decoration-thickness:2px}
.ranking-dialog{width:min(94vw,640px)}
.ranking-intro{margin-top:0!important}.my-position:not(:empty){padding:12px;background:#ffd23f;color:#12305e;font-weight:700;border-radius:10px}
.ranking-scroll{overflow:auto;max-height:49dvh;overscroll-behavior:contain;touch-action:pan-y;scrollbar-color:#719dd5 #12305e}
.ranking-scroll table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
.ranking-scroll th{position:sticky;top:0;background:#12305e;font:17px 'Lilita One',sans-serif;color:#bfe3ff;text-align:left;padding:10px 8px;border-bottom:2px solid #5e83b3}
.ranking-scroll td{padding:12px 8px;vertical-align:middle;border-bottom:1px solid #45628c}
.ranking-scroll td:last-child,.ranking-scroll th:last-child{text-align:right;white-space:nowrap}
.ranking-scroll td:first-child{width:42px;color:#ffd23f;font:23px 'Lilita One',sans-serif}
.ranking-scroll td:nth-child(2){overflow-wrap:anywhere;max-width:260px;font-weight:700}
.ranking-scroll td:last-child{font:24px 'Lilita One',sans-serif}
.ranking-scroll small{font-weight:400;font-size:12px;margin-top:2px}
.ranking-scroll .is-me{background:#204c7b}.ranking-scroll .is-me td:nth-child(2){color:#ffd23f}
.ranking-footer{font-size:13px!important;margin-bottom:0!important}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@keyframes online-enter{from{transform:translateY(14px);opacity:.65}to{transform:translateY(0);opacity:1}}
@media(max-width:480px){.online-dialog{padding:18px 14px;border-width:3px}.dialog-heading h2{font-size:30px}.btn.online-btn{font-size:17px;padding:8px 13px}.online-actions{gap:8px}.account-status{font-size:12px!important}.ranking-scroll th,.ranking-scroll td{padding:10px 6px}.ranking-scroll td:last-child{font-size:21px}}
@media(max-height:620px){#menu,#overScreen{justify-content:flex-start;padding-top:24px;padding-bottom:24px}.screen h1{font-size:48px}.online-dialog{max-height:94dvh}.ranking-scroll{max-height:40dvh}}
@media(prefers-reduced-motion:reduce){.online-dialog[open]{animation:none}}