.web-locked{overflow:hidden}.web-locked> :not(#webAccess):not(script){visibility:hidden}#webAccess{position:fixed;inset:0;z-index:999999;display:grid;place-items:center;background:#0b344d;padding:24px;color:#163a50}#webAccess[hidden]{display:none}.access-card{width:min(100%,430px);background:#fff;border-radius:20px;padding:32px;box-shadow:0 20px 80px #0005}.access-card h1{font-size:26px;margin:0 0 16px}.access-card form{display:grid;gap:16px}.access-card form[hidden]{display:none}.access-card label,dialog label{display:grid;gap:6px}.access-card input,dialog input,dialog select{font:inherit;padding:12px;border:1px solid #ccdce8;border-radius:8px;width:100%}.access-card button,#webAccount button,dialog button{font:inherit;padding:10px 16px;border:0;border-radius:8px;background:#005b9a;color:white;cursor:pointer}#accessError{color:#a32222;white-space:pre-wrap}#webAccount{display:flex;gap:10px;align-items:center;justify-content:flex-end;background:#fff;padding:10px 24px;color:#163a50}#webAccount[hidden]{display:none}dialog{border:0;border-radius:14px;padding:28px;max-width:550px;width:90%}dialog::backdrop{background:#0008}#userList{max-height:260px;overflow:auto;margin-bottom:20px}#newUser{display:grid;gap:12px}#userMessage{white-space:pre-wrap}
[hidden]{display:none!important}
.account-session{margin:16px;color:#31566d;font-size:14px;line-height:1.6}#accountActions{display:grid;gap:12px;padding:0 16px 20px}#accountActions button{font:inherit;font-size:14px;font-weight:700;padding:13px 16px;border:1px solid #cbdde8;border-radius:10px;background:#005b9a;color:#fff;cursor:pointer;text-align:left}#accountActions #webLogout{background:#fff;color:#a52b36;border-color:#e8c6cb}#accountActions button:hover{filter:brightness(.95)}.menu-tabs{flex-wrap:wrap}
.live-status-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.sync-icon-button{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:1px solid rgba(255,255,255,.28);border-radius:50%;background:rgba(255,255,255,.09);color:#c5ebff;cursor:pointer;transition:background .18s,color .18s,transform .18s;flex-shrink:0}.sync-icon-button:hover{background:rgba(255,255,255,.2);color:#fff}.sync-icon-button:focus-visible{outline:2px solid #aee6ff;outline-offset:3px}.sync-icon-button:disabled{cursor:wait;opacity:.65}.sync-icon-button[aria-busy="true"] svg{animation:sync-turn 1s linear infinite}@keyframes sync-turn{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.sync-icon-button[aria-busy="true"] svg{animation:none}}
