/* 沿用应用紫色与系统字体，账号入口保留可读的白底表单。 */
[hidden] { display: none !important; }
body.account-view { align-items: flex-start; }
.account-loading { color: #fff; padding: 48px 24px; text-align: center; }
#account-panel { padding: 24px 16px; }
#account-panel:empty { display: none; }
.account-card { box-sizing: border-box; max-width: 420px; margin: 24px auto; padding: 28px; background: #fff; color: #292438; border-radius: 20px; font-family: inherit; line-height: 1.5; }
.account-avatar { display: block; width: 72px; height: 72px; margin: 0 0 16px; border-radius: 50%; }
.account-brand { color: #63508d; font-size: 14px; font-weight: 600; margin-bottom: 8px; }
.account-card h1 { font-size: 26px; line-height: 1.25; margin: 0 0 12px; }
.account-hint { color: #605b6b; font-size: 15px; margin: 0 0 24px; }
.account-card label { display: block; font-size: 15px; font-weight: 600; margin: 18px 0 6px; }
.account-card input, .account-card select { box-sizing: border-box; width: 100%; min-height: 46px; border: 1px solid #a8a0b7; border-radius: 8px; background: #fff; color: #292438; padding: 10px 12px; font: inherit; font-size: 16px; }
.account-card input { caret-color: #65439b; }
.account-help { color: #686170; font-size: 12px; margin: 6px 0 0; }
.password-field { display: flex; gap: 8px; }
.password-field input { min-width: 0; }
.password-field button { flex-shrink: 0; min-width: 56px; border: 1px solid #a8a0b7; border-radius: 8px; background: #fff; color: #54377b; font-size: 14px; }
.account-card button { cursor: pointer; font-family: inherit; min-height: 44px; }
.account-primary { width: 100%; padding: 12px 16px; color: #fff; background: #65439b; border: 0; border-radius: 10px; font-size: 16px; font-weight: 600; }
.account-link { display: block; width: 100%; background: transparent; border: 0; color: #593580; font-size: 14px; margin-top: 12px; }
.account-secondary { background: #fff; border: 1px solid #896eaf; color: #57387f; border-radius: 8px; padding: 8px 12px; font-size: 14px; }
.account-error { color: #aa243d; min-height: 22px; font-size: 14px; margin: 12px 0; }
.mic-guide { border-top: 1px solid #e4dfeb; margin-top: 24px; padding-top: 18px; }
.mic-guide h2 { margin: 0 0 8px; font-size: 16px; }
.mic-guide p { font-size: 13px; color: #605b6b; margin: 8px 0; }
#account-notice { position: fixed; z-index: 40; top: 16px; left: 50%; transform: translateX(-50%); width: min(420px, calc(100% - 32px)); padding: 12px 16px; border-radius: 12px; color: #35244f; background: #f1eafa; box-shadow: 0 6px 20px rgba(40,24,67,.16); line-height: 1.5; font-size: 14px; }
.account-current { color: #60536e; font-size: 14px; margin-bottom: 12px; overflow-wrap: anywhere; }
.account-current strong { color: #35244f; margin-left: 8px; font-weight: 600; }
.settings-account-actions { display: flex; flex-direction: column; }
.settings-account-actions a, .settings-account-actions button { display: flex; align-items: center; justify-content: space-between; min-height: 46px; width: 100%; padding: 10px 0; border: 0; border-top: 1px solid #eee7f4; background: transparent; color: #65439b; text-decoration: none; text-align: left; font: inherit; font-size: 14px; cursor: pointer; }
.settings-account-actions span { color: #8a6fa8; font-size: 18px; }
.settings-account-actions a:hover, .settings-account-actions button:hover { color: #43236d; }
button:disabled { cursor: wait; opacity: .65; }
:focus-visible { outline: 3px solid #7c3aed; outline-offset: 3px; }
::selection { background: #e8dafb; color: #35244f; }
.admin-header [data-private] { min-width: 0; }
@media (max-width: 400px) { .account-card { padding: 22px; margin: 12px auto; } #account-panel { padding: 12px; } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation: none !important; transition: none !important; } }
