@font-face{font-family:IndustrySettings;src:url('fonts/industry-demi.otf') format('opentype');font-display:swap}
#game-settings button,#game-settings a{font-family:IndustrySettings,system-ui,sans-serif;transition:transform 160ms ease,opacity 160ms ease}
#game-settings button:hover,#game-settings a:hover{transform:scale(1.05)}
#game-settings button:focus-visible,#game-settings a:focus-visible{outline:2px solid #00a6b7;outline-offset:4px}
#game-settings .settings-menu{position:fixed;z-index:50;left:max(16px,env(safe-area-inset-left));top:max(12px,env(safe-area-inset-top));width:44px;height:44px;display:grid;place-items:center;padding:0;color:#001d3e;opacity:1;background:transparent;border:0;transition:transform 160ms ease,opacity 160ms ease,color 180ms ease}
#game-settings .settings-menu:hover{opacity:1}
#game-settings [hidden]{display:none!important}
.settings-dialog{width:min(330px,calc(100vw - 40px));max-height:calc(100dvh - 48px);overflow:auto;margin:auto;padding:36px 30px 28px;border:2px solid #f5fcff;border-radius:24px;background:linear-gradient(#e9f5f9,#d8e7ef);color:#001d3e;box-shadow:0 12px 32px #001d3e40,inset 0 -3px 0 #b9d4e180;text-align:center;font-family:IndustrySettings,system-ui,sans-serif}
.settings-dialog::backdrop{background:rgba(0,29,62,.6)}
.settings-dialog[open]{position:fixed;inset:0;z-index:40;animation:none;height:fit-content}
.settings-dialog h2{font-size:25px;margin:4px 0 30px}
#game-settings .settings-close{position:absolute;right:10px;top:8px;font-family:system-ui;font-size:28px;width:40px;height:40px;line-height:30px;padding:0;background:transparent;border:0}
#game-settings .settings-mute{display:block;width:100%;min-height:48px;margin-bottom:24px;border:1px solid #00a6b7;border-radius:11px;background:linear-gradient(#16b8c6,#009aae);box-shadow:inset 0 1px 0 #ffffff70;color:white;font-size:17px}
.settings-privacy{display:inline-block;padding:10px 4px;color:#001d3e;text-decoration:underline;text-underline-offset:4px;font-size:14px;cursor:pointer}
.settings-policy-note{font-size:12px;color:#567688;margin:12px 0 0}
@keyframes settings-enter{from{opacity:0;transform:translateY(10px) scale(.97)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){#game-settings button,#game-settings a{transition:none}.settings-dialog[open]{animation:none}}
.offline-ad-dialog p{font-size:17px;line-height:1.5;margin:0 0 28px}
.offline-ad-dialog button{font:16px IndustrySettings,system-ui;color:white;background:linear-gradient(#16b8c6,#009aae);border:1px solid #00a6b7;border-radius:11px;padding:14px 18px;transition:transform 160ms ease}
.offline-ad-dialog button:hover{transform:scale(1.05)}

.modal-handoff-backdrop{position:fixed;inset:0;background:rgba(0,29,62,.6);z-index:35;touch-action:none}
/* The editable Rive shell supplies the surface; this layer contains content only. */
.settings-dialog.shared-shell-content{background:transparent;border-color:transparent;box-shadow:none;overflow:visible}

.modal-input-shield{position:fixed;inset:0;z-index:35;touch-action:none;background:transparent}
#game-settings .settings-delete{display:block;position:relative;width:100%;height:52px;padding:0;margin:0 0 14px;border:0;background:transparent;color:#001d3e;font-size:14px}
.settings-delete canvas{width:100%;height:52px;display:block}
.settings-delete-fallback{position:absolute;inset:0;display:grid;place-items:center}
.data-deletion-dialog{width:min(420px,calc(100vw - 56px));padding:28px 24px;max-height:calc(100dvh - 40px)}
.data-deletion-dialog.shared-shell-content{overflow:auto}
.data-deletion-dialog h2{font-size:24px;margin:4px 0 18px}
.data-deletion-dialog p{font:16px/1.45 IndustrySettings,system-ui,sans-serif;margin:12px 0;text-align:left}
.data-deletion-dialog .deletion-note{font-size:13px;color:#456477}
.deletion-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}
.deletion-actions button{flex:1;min-width:130px;padding:14px 10px;border:1px solid #00a6b7;border-radius:11px;color:white;background:linear-gradient(#16b8c6,#009aae);box-shadow:inset 0 1px 0 #ffffff70;font:15px IndustrySettings,system-ui;transition:transform 160ms ease,filter 160ms ease}
.deletion-actions button:hover:not(:disabled){transform:scale(1.035);filter:brightness(1.08)}
.deletion-actions .deletion-confirm{background:linear-gradient(#ff3670,#ef0047);border-color:#ef0047}
.deletion-actions button:disabled{opacity:.5;cursor:wait}
.deletion-actions button:focus-visible{outline:3px solid #001d3e;outline-offset:3px}
/* Keep Cancel available on short phones; only the explanatory copy scrolls. */
.data-deletion-dialog[open]{display:flex!important;flex-direction:column;overflow:hidden}
.data-deletion-dialog .deletion-copy{min-height:0;overflow-y:auto;overscroll-behavior:contain;flex:1 1 auto}
.data-deletion-dialog h2,.data-deletion-dialog [role="status"],.data-deletion-dialog [role="alert"],.data-deletion-dialog .deletion-actions{flex-shrink:0}
/* Host text entry; keep the authored Rive leaderboard behind the shared shell. */
@font-face{font-family:IndustryProfile;src:url('fonts/industry-medium.ttf') format('truetype');font-weight:500;font-style:normal;font-display:swap}
.leaderboard-profile-dialog{box-sizing:border-box;padding-inline:30px;font-family:IndustryProfile,system-ui,sans-serif;font-weight:500;text-align:center}
@font-face{font-family:IndustryProfile;src:url('fonts/industry-bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
.leaderboard-profile-dialog h2{font-family:IndustryProfile,system-ui,sans-serif;font-weight:700;padding:0;text-align:center;width:100%}
.leaderboard-profile-dialog input,.leaderboard-profile-dialog p,.leaderboard-profile-dialog label{text-align:center}
.leaderboard-profile-dialog .settings-close{position:absolute;right:10px;top:8px;background:transparent;border:0;color:#001d3e;font-size:28px;width:40px;height:40px}
.leaderboard-profile-dialog label{display:block;text-align:center}
.leaderboard-profile-dialog input{box-sizing:border-box;width:100%;margin-top:8px;padding:12px;border:1px solid #9cbfce;border-radius:10px;background:#f5fcff;color:#001d3e;font:500 18px IndustryProfile,system-ui}
.leaderboard-profile-dialog p{font-size:14px;line-height:1.45}
.leaderboard-profile-dialog form{width:100%;margin:0}
.leaderboard-profile-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;width:100%;margin:20px 0 6px}
.leaderboard-profile-dialog form button{min-width:0;min-height:44px;padding:10px 8px;margin:0;border:1px solid #00a6b7;border-radius:11px;color:white;background:linear-gradient(#16b8c6,#009aae);box-shadow:inset 0 1px 0 #ffffff70;font:500 16px/1.2 IndustryProfile,system-ui}
.leaderboard-profile-dialog button{display:inline-flex;align-items:center;justify-content:center;text-align:center;font-family:IndustryProfile,system-ui,sans-serif;font-weight:500;transition:transform 160ms ease,filter 160ms ease}
.leaderboard-profile-dialog button:hover:not(:disabled){transform:scale(1.035);filter:brightness(1.08)}
.leaderboard-profile-dialog button:focus-visible,.leaderboard-profile-dialog input:focus-visible{outline:2px solid #001d3e;outline-offset:3px}
.leaderboard-profile-dialog button:disabled{opacity:.5;cursor:wait}

/* Inline footer name editor, aligned to the authored LeaderboardRow text box. */
.leaderboard-name-editor{position:fixed;margin:0;z-index:1}
.leaderboard-name-editor[hidden]{display:none}
.leaderboard-name-editor input{box-sizing:border-box;width:100%;height:100%;padding:6px 12px;border:0;border-radius:6px;background:#fff;color:#001d3e;font:500 16px IndustryProfile,system-ui;text-align:center;outline:none;box-shadow:none}
.leaderboard-name-editor input:focus{background:#fff;box-shadow:none}
.leaderboard-name-editor input:disabled{opacity:.65}
