/* Account access only. Existing authentication and recovery authority is unchanged. */
#loginScreen.theme-sky { background: #96d5f6 var(--sky-background) center / cover no-repeat; overflow: hidden; }
#loginScreen.theme-sky #accessShell {
    position: absolute; left: 0; right: 0; top: var(--access-visible-top,0px); height: var(--access-visible-height,100%); width: min(1100px,100%); margin: auto;
    display: grid; grid-template-columns: minmax(180px,.85fr) minmax(340px,1.15fr); align-items: center; gap: 20px;
    padding: 16px var(--theme-safe-right,10px) max(16px,env(safe-area-inset-bottom)) var(--theme-safe-left,10px);
    font: 16px/1.35 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
#loginScreen.theme-sky #accessBrand { min-width: 0; text-align: center; }
#loginScreen.theme-sky #accessBrand .sky-brand { width: 100%; height: auto; }
#loginScreen.theme-sky #accessBrand p { margin: 12px 0 0; color: #20567a; font-size: 11px; font-weight: 800; letter-spacing: 1.4px; white-space: nowrap; }
#loginScreen.theme-sky #LoginWindow {
    position: relative; inset: auto; width: 100%; height: auto; max-height: 100%; min-height: 0; padding: 14px; transform: none;
    display: flex; flex-direction: column; gap: 12px; overflow: hidden auto; touch-action: pan-y;
    border: 1.5px solid var(--sky-line); border-radius: 20px; background: #effafff5;
    color: var(--sky-ink); font: inherit; box-shadow: var(--sky-shadow);
}
#loginScreen.theme-sky #accessTabs { display: grid; grid-template-columns: 1fr 1fr; flex: 0 0 44px; gap: 4px; padding: 3px; border: 1px solid #bad5e6; border-radius: 13px; background: #dfedf6; }
#loginScreen.theme-sky #accessTabs button { min-height: 44px; border-radius: 9px; background: transparent; color: var(--sky-muted); font: 750 16px/1.2 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
#loginScreen.theme-sky #accessTabs button[aria-selected="true"] { background: #fff; color: #125f8a; box-shadow: 0 2px 5px #23587920; }
#loginScreen.theme-sky #accessTabs button:disabled { opacity: .65; }
#loginScreen.theme-sky :is(#LoginPart,#RegisterPart) { position: static; min-height: 0; flex: 0 0 auto; display: flex; flex-direction: column; gap: 10px; padding: 1px; overflow: visible; }
#loginScreen.theme-sky .accessField { display: grid; grid-template-columns: 82px minmax(0,1fr); align-items: center; flex: 0 0 auto; gap: 10px; color: var(--sky-muted); font-size: 14px; font-weight: 650; line-height: 18px; }
#loginScreen.theme-sky .inputField { box-sizing: border-box; width: 100%; min-width: 0; height: 44px; margin: 0; padding: 9px 10px; border: 1px solid #a7c8dd; border-radius: 10px; background: #fff; color: var(--sky-ink); font: 16px/24px -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; box-shadow: inset 0 1px 2px #254e6810; }
#loginScreen.theme-sky .inputField::placeholder { color: #597186; font-size: 14px; }
#loginScreen.theme-sky :is(button,input):focus-visible { outline: 2px solid #165f96; outline-offset: -2px; }
#loginScreen.theme-sky :is(#LoginResetA,#LoginSubmit,#RegisterSubmit,#RecoveryCancel,#RecoverySubmit) { position: static; min-height: 44px; margin: 0; padding: 8px 10px; width: auto; height: auto; font: 750 15px/1.25 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; text-shadow: none; text-decoration: none; letter-spacing: 0; }
#loginScreen.theme-sky #LoginResetA { color: var(--sky-ink); }
#loginScreen.theme-sky .accessActions { display: flex; gap: 8px; flex: 0 0 auto; }
#loginScreen.theme-sky .accessActions button { flex: 1; }
#loginScreen.theme-sky #RegisterGender { display: flex; flex: 0 0 auto; justify-content: flex-end; gap: 8px; padding: 0; margin: 0; width: auto; height: auto; }
#loginScreen.theme-sky #RegisterGender label { display: flex; align-items: center; justify-content: center; gap: 6px; min-height: 44px; min-width: 86px; padding: 0 10px; border: 1px solid #a7c8dd; border-radius: 10px; background: #fff; color: var(--sky-ink); font-size: 15px; }
#loginScreen.theme-sky #RegisterGender label:has(input:checked) { border-color: #187cac; background: #dff2ff; }
#loginScreen.theme-sky #RegisterGender input { width: 18px; height: 18px; margin: 0; accent-color: #147cac; }
#loginScreen.theme-sky :is(#authMessage,#recoveryMessage) { position: static; width: auto; flex: 0 0 auto; min-height: 0; max-height: 72px; overflow-y: auto; margin: 0; padding: 8px; border-radius: 9px; background: #fff2d7; color: #704d13; text-align: left; font: 14px/19px -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; overflow-wrap: anywhere; }
#loginScreen.theme-sky :is(#authMessage,#recoveryMessage):empty { display: none; }
#loginScreen.theme-sky #recoveryDialog { display: grid; place-items: center; left: 0; right: 0; width: 100%; top: var(--access-visible-top,0px); height: var(--access-visible-height,100%); bottom: auto; padding: 10px var(--theme-safe-right,10px) 10px var(--theme-safe-left,10px); }
#loginScreen.theme-sky #recoveryDialog .dialogShade { background: #153c6580; }
#loginScreen.theme-sky #recoveryForm { position: relative; inset: auto; width: min(500px,100%); height: auto; max-height: 100%; padding: 16px; transform: none; margin: 0; overflow-y: auto; border: 1.5px solid var(--sky-line); border-radius: 20px; background: #effaff; color: var(--sky-ink); font: 16px/1.35 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
#loginScreen.theme-sky #recoveryForm .simpleDialogTitle { position: static; margin: 0 0 8px; color: var(--sky-ink); font-size: 22px; font-weight: 800; }
#loginScreen.theme-sky #recoveryForm p { position: static; margin: 0 0 14px; color: var(--sky-muted); font-size: 15px; }
#loginScreen.theme-sky #recoveryForm .accessField { grid-template-columns: 1fr; gap: 6px; margin: 0 0 12px; }
#loginScreen.theme-sky #recoveryForm .accessActions { margin-top: 12px; }
#loginScreen.theme-sky.access-keyboard #accessShell { top: var(--access-visible-top,0px); bottom: auto; height: var(--access-visible-height,100%); grid-template-columns: minmax(0,1fr); padding-top: 6px; padding-bottom: 6px; max-width: 800px; }
#loginScreen.theme-sky.access-keyboard #accessBrand { display: none; }
#loginScreen.theme-sky.access-keyboard #LoginWindow { height: 100%; padding: 6px 12px; display: block; overflow-y: auto; }
#loginScreen.theme-sky.access-keyboard #accessTabs { display: none; }
#loginScreen.theme-sky.access-keyboard :is(#LoginPart,#RegisterPart) { overflow: visible; }
#loginScreen.theme-sky.access-keyboard #authMessage { margin-top: 8px; }
#loginScreen.theme-sky.access-keyboard .accessField { grid-template-columns: 120px minmax(0,1fr); }
@media (max-height:420px) {
    #loginScreen.theme-sky #LoginWindow { padding: 12px; gap: 8px; }
    #loginScreen.theme-sky :is(#LoginPart,#RegisterPart) { gap: 6px; }
}
@media (min-height:600px) {
    #loginScreen.theme-sky #LoginWindow { padding: 24px; gap: 22px; }
    #loginScreen.theme-sky :is(#LoginPart,#RegisterPart) { gap: 16px; }
    #loginScreen.theme-sky .accessField { grid-template-columns: 1fr; gap: 7px; font-size: 15px; }
    #loginScreen.theme-sky .inputField { height: 50px; }
    #loginScreen.theme-sky #accessBrand p { font-size: 13px; letter-spacing: 2px; }
}
@media (prefers-reduced-motion: reduce) {
    #loginScreen.theme-sky * { animation: none !important; transition: none !important; }
}
