/* v60: stable settings layout, legible theme previews and unified sign-in controls. */
#settings.panel.active{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:14px}
#settings>.topHero,#settings>.settingsCard,#settings>.holidayPreference,#settings>.settingsVersion{grid-column:1;min-width:0;width:100%;margin:0;align-self:start}
#settings>.settingsCard{padding:clamp(16px,2.2vw,23px);border-radius:22px;background:radial-gradient(ellipse at 100% 0,color-mix(in srgb,var(--primary) 7%,transparent),transparent 45%),linear-gradient(145deg,color-mix(in srgb,var(--card) 97%,var(--primary) 3%),var(--card));box-shadow:0 11px 30px color-mix(in srgb,#000 8%,transparent)}
#settings>.settingsCard:hover{transform:none}
#settings .settingsCardHeader{display:flex;align-items:center;min-width:0;gap:12px;margin-bottom:17px;padding-bottom:14px;border-color:color-mix(in srgb,var(--border) 70%,transparent)}
#settings .settingsCardHeader>div{flex:1;min-width:0}
#settings .settingsSectionIcon{width:40px;height:40px;flex-basis:40px;border-radius:13px}
#settings .settingsSectionTag{margin-left:auto}
#settings .accountAccessGrid{align-items:start;grid-auto-rows:max-content}
#settings .accountAccessGrid>.settingsMiniCard{align-self:start;height:auto;min-height:0}
#settings .accountAccessGrid>.passwordSettingsCard{order:1}
#settings .accountAccessGrid>.twoFactorSettingsCard{order:2}
#settings .appearanceSettingsCard .themeGrid{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;align-items:start}
#settings .appearanceSettingsCard .themeCategory{min-width:0;padding:14px;border:1px solid var(--border);border-radius:17px;background:color-mix(in srgb,var(--surface) 52%,var(--card))}
#settings .appearanceSettingsCard .themeCategoryHeader{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 11px;padding:0 0 9px;border-bottom:1px solid color-mix(in srgb,var(--border) 66%,transparent)}
#settings .appearanceSettingsCard .themeCategoryHeader h3{font-size:14px;letter-spacing:-.015em}
#settings .appearanceSettingsCard .themeCategoryHeader span{font-size:10px;color:var(--muted)}
#settings .appearanceSettingsCard .themeCategoryGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,158px),1fr));align-items:stretch;gap:9px}
#settings .appearanceSettingsCard .themeCard{display:flex;min-width:0;min-height:105px;height:auto;gap:8px;padding:9px;border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--card) 88%,var(--surface));box-shadow:none;transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease}
#settings .appearanceSettingsCard .themeCard:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--primary) 48%,var(--border));box-shadow:0 8px 19px color-mix(in srgb,var(--primary) 10%,transparent)}
#settings .appearanceSettingsCard .themePreview{height:44px;min-height:44px;border-radius:9px}
#settings .appearanceSettingsCard .themeCardLabel{position:relative;display:flex;align-items:center;min-height:21px;padding-right:26px}
#settings .appearanceSettingsCard .themeCardLabel strong{font-size:11px;line-height:1.3;overflow-wrap:anywhere}
#settings .appearanceSettingsCard .themeCheck{top:auto;right:0;bottom:auto;display:grid;width:20px;height:20px;transform:scale(.82)}
#settings .appearanceSettingsCard .themeCard.active .themeCheck{transform:scale(1)}
#settings .appearanceSettingsCard .themeCard.active{border-color:color-mix(in srgb,var(--primary) 68%,var(--border));background:color-mix(in srgb,var(--primary) 7%,var(--card));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--primary) 20%,transparent)}
#settings .appearanceSettingsCard .themeCard.active:after{content:none!important}
#settings .appearanceSettingsCard .themeCard.isDisabled{opacity:.48;filter:saturate(.52);cursor:not-allowed}
#settings .appearanceSettingsCard .themeCard.isDisabled:hover{transform:none;box-shadow:none}
#settings .appearanceSettingsCard .themeUnavailable{margin-left:5px;font-size:9px;color:var(--muted)}
#settings .themeActions{margin-top:12px}
#settings .settingsVersion{justify-self:end;max-width:max-content;padding:7px 11px}

.authMethodsSettingsCard .authMethodsLoading{display:grid;gap:10px;max-width:480px}
.authMethodsSettingsCard .authMethodsLoading[hidden],#authMethodsContent[hidden]{display:none!important}
.authMethodsLoading .tableSkeleton{height:38px;border-radius:12px}
.authMethodsLoading .tableSkeleton.medium{width:68%}
.authMethodsGrid{display:grid;grid-template-columns:minmax(240px,.82fr) minmax(0,1.4fr);align-items:start;gap:12px}
.authMethodPanel{min-width:0;align-self:start;padding:15px;border:1px solid var(--border);border-radius:17px;background:color-mix(in srgb,var(--surface) 45%,var(--card))}
.authMethodPanelHeading{display:flex;align-items:center;gap:10px;margin:0 0 13px}
.authMethodPanelHeading>span:last-child{display:grid;min-width:0;gap:4px}
.authMethodPanelHeading b{font-size:13px;letter-spacing:-.01em}
.authMethodPanelHeading small{font-size:10px;line-height:1.45;color:var(--muted)}
.authMethodIcon,.passkeyRowIcon{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border:1px solid color-mix(in srgb,var(--primary) 27%,var(--border));border-radius:12px;background:color-mix(in srgb,var(--primary) 9%,var(--card));color:var(--primary)}
.authMethodIcon .iconSvg,.passkeyRowIcon .iconSvg{width:17px;height:17px}
.authAddButton{width:100%;min-height:39px!important}
.authMethodList,.providerSettingsList{display:grid;gap:7px;margin-top:11px}
.authMethodEmpty,.authMethodsError{padding:11px 12px;border:1px dashed var(--border);border-radius:12px;background:color-mix(in srgb,var(--surface) 53%,transparent);color:var(--muted);font-size:10px;line-height:1.55}
.authMethodsError{display:grid;gap:4px;border-style:solid;border-color:color-mix(in srgb,var(--danger) 28%,var(--border))}
.authMethodsError b{color:var(--text);font-size:11px}
.authMethodUnavailable{color:var(--muted);font-size:9px;text-align:right}
.passkeySettingsRow{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px;border:1px solid var(--border);border-radius:12px;background:var(--card)}
.passkeyRowIcon{width:32px;height:32px;flex-basis:32px;border-radius:10px}
.passkeySettingsRow>span:nth-child(2){display:grid;min-width:0;gap:4px}
.passkeySettingsRow b,.providerSettingsCopy b{font-size:11px;overflow-wrap:anywhere}
.passkeySettingsRow small,.providerSettingsCopy small{font-size:9px;color:var(--muted);line-height:1.4;overflow-wrap:anywhere}
.providerSettingsList{grid-template-columns:repeat(2,minmax(0,1fr))}
.providerSettingsRow{display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;padding:9px;border:1px solid var(--border);border-radius:12px;background:var(--card);transition:border-color .17s ease,background .17s ease}
.providerSettingsRow.isLinked{border-color:color-mix(in srgb,var(--ok) 30%,var(--border));background:color-mix(in srgb,var(--ok) 4%,var(--card))}
.providerSettingsRow.isUnavailable{opacity:.7}
.providerSettingsGlyph,.loginMethodGlyph{display:grid;place-items:center;width:29px;height:29px;border:1px solid var(--border);border-radius:9px;background:color-mix(in srgb,var(--surface) 85%,var(--card));color:var(--text);font-size:11px;font-weight:800;letter-spacing:-.04em}
.provider-google{color:#4285f4}.provider-apple{color:var(--text);font-size:15px}.provider-microsoft{color:#54a9ff}.provider-github{color:var(--text);font-size:9px}.provider-facebook{color:#4c8bf5;font-size:16px}.provider-discord{color:#8296ff}.provider-steam{color:#9ba6b7}
.providerSettingsCopy{display:grid;min-width:0;gap:3px}
.providerSettingsStatus{grid-column:2;grid-row:2;color:var(--muted);font-size:8px}
.authMethodAction{min-height:29px;padding:5px 9px;border:1px solid color-mix(in srgb,var(--primary) 27%,var(--border));border-radius:9px;background:color-mix(in srgb,var(--primary) 8%,var(--surface));color:var(--text);font:inherit;font-size:9px;font-weight:750;white-space:nowrap;cursor:pointer;transition:background .16s ease,border-color .16s ease,transform .16s ease}
.authMethodAction:hover{transform:translateY(-1px);border-color:var(--primary);background:color-mix(in srgb,var(--primary) 14%,var(--surface))}
.authMethodAction.isLinked{border-color:color-mix(in srgb,var(--danger) 24%,var(--border));background:color-mix(in srgb,var(--danger) 5%,var(--surface))}
.authMethodsPrivacy{margin:12px 0 0;color:var(--muted);font-size:10px;line-height:1.55}
.authModalIntro{display:flex;align-items:flex-start;gap:11px;margin-bottom:14px;padding:12px;border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--surface) 55%,var(--card))}
.authModalIntro>div{display:grid;gap:4px}.authModalIntro b{font-size:12px}.authModalIntro p{margin:0;color:var(--muted);font-size:11px;line-height:1.5}

.loginAuthMethods{margin-top:19px;padding-top:16px;border-top:1px solid rgba(137,153,185,.14)}
.loginAuthMethods[hidden]{display:none!important}
.loginMethodsHeading{display:flex;align-items:center;gap:10px;margin-bottom:11px;color:#8491a4;font-size:10px;font-weight:700}
.loginMethodsRule{height:1px;flex:1;background:rgba(137,153,185,.13)}
.loginPasskeyButton,.loginProviderButton{display:flex;align-items:center;min-width:0;min-height:42px;gap:9px;padding:8px 10px;border:1px solid #2b3545;border-radius:12px;background:rgba(15,21,31,.72);color:#e9edf5;text-decoration:none;text-align:left;cursor:pointer;transition:transform .16s ease,border-color .16s ease,background .16s ease,opacity .16s ease}
.loginPasskeyButton{width:100%;min-height:52px;padding:9px 11px;margin-bottom:8px}
.loginPasskeyButton>.passkeyGlyph{width:34px;height:34px;flex:0 0 34px;border-color:rgba(132,145,255,.25);background:rgba(115,130,255,.1);color:#aeb9ff}
.loginPasskeyButton>.passkeyGlyph .loginIcon{width:17px;height:17px}
.loginPasskeyButton>span:nth-child(2){display:grid;min-width:0;gap:3px}
.loginPasskeyButton b,.loginProviderButton b{font-size:10px}
.loginPasskeyButton small,.loginProviderButton small{font-size:8px;color:#8996aa;line-height:1.35}
.loginPasskeyButton>svg:last-child{width:15px;height:15px;margin-left:auto;color:#8c9ab0}
.loginProviderGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.loginProviderButton:hover,.loginPasskeyButton:hover{transform:translateY(-1px);border-color:#5869a4;background:rgba(28,37,54,.88)}
.loginProviderButton.isUnavailable{opacity:.43;cursor:not-allowed}
.loginProviderButton:disabled:hover,.loginPasskeyButton:disabled:hover{transform:none;border-color:#2b3545;background:rgba(15,21,31,.72)}
.loginProviderCopy{display:grid;min-width:0;gap:3px}
.providerGlyph{width:27px;height:27px;flex:0 0 27px;border-radius:8px;border-color:#354056;background:rgba(255,255,255,.035);font-size:10px}
.loginMethodsLoading{grid-column:1/-1;color:#7d8b9f;font-size:10px}
.loginMethodsFootnote{margin:9px 0 0;color:#6f7c90;font-size:9px;line-height:1.45}
.loginPasskeyButton:focus-visible,.loginProviderButton:focus-visible,.authMethodAction:focus-visible{outline:2px solid #8591ff;outline-offset:2px}
.loginPasskeyButton:disabled{opacity:.75;cursor:wait}

@media(max-width:850px){.authMethodsGrid{grid-template-columns:minmax(0,1fr)}.providerSettingsList{grid-template-columns:repeat(2,minmax(0,1fr))}#settings .appearanceSettingsCard .themeCategoryGrid{grid-template-columns:repeat(auto-fill,minmax(min(100%,140px),1fr))}}
@media(max-width:560px){#settings.panel.active{gap:11px}#settings>.settingsCard{padding:15px;border-radius:18px}#settings .settingsCardHeader{align-items:flex-start;gap:10px}#settings .settingsSectionTag{display:none}#settings .appearanceSettingsCard .themeCategoryGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}#settings .appearanceSettingsCard .themeCard{min-height:98px;padding:8px}.providerSettingsList{grid-template-columns:1fr}.authMethodPanel{padding:12px}.loginProviderGrid{gap:6px}.loginProviderButton{gap:7px;padding:7px}.loginPasskeyButton{min-height:49px}}
@media(max-width:360px){#settings .appearanceSettingsCard .themeCategoryGrid{grid-template-columns:1fr}.loginProviderGrid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){#settings>.settingsCard,.themeCard,.loginPasskeyButton,.loginProviderButton,.authMethodAction{transition:none!important;animation:none!important}#settings .appearanceSettingsCard .themeCard:hover,.loginPasskeyButton:hover,.loginProviderButton:hover,.authMethodAction:hover{transform:none}}
