/* Interface de acesso empresarial (D93). */
.account-dialog { box-sizing: border-box; width: min(620px, calc(100vw - 32px)); max-height: calc(100vh - 64px); padding: 32px; border: 1px solid #46516a; border-radius: 14px; background: #171b25; color: #eef0f7; box-shadow: 0 24px 100px #0009; font: 14px/1.5 system-ui, sans-serif; overflow-y: auto; }
.account-dialog::backdrop { background: #0a0d15ed; }
.account-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.account-brand { color: #baa4ff; font-size: 11px; letter-spacing: .16em; font-weight: 700; }
.account-dialog h1 { font-size: 26px; line-height: 1.2; margin: 20px 0 10px; }
.account-dialog h2 { font-size: 18px; margin-top: 28px; }
.account-description { color: #b4bccf; }
.account-dialog button { cursor: pointer; color: #edf0f8; background: #2b3345; border: 1px solid #4a5774; border-radius: 7px; padding: 10px 14px; font: inherit; margin: 5px 5px 5px 0; white-space: normal; height: auto; }
.account-dialog button.primary { background: #7451d3; border-color: #a084f0; }
.account-dialog button:disabled { opacity: .5; cursor: wait; }
.account-dialog button:hover { filter: brightness(1.15); }
.account-dialog :focus-visible { outline: 2px solid #c8b5ff; outline-offset: 3px; }
.account-form { display: grid; gap: 16px; margin: 18px 0; }
.account-form label { display: grid; gap: 6px; font-weight: 500; }
.account-form input, .account-form select { box-sizing: border-box; width: 100%; min-height: 42px; padding: 9px 12px; background: #0e121c; border: 1px solid #4a5774; border-radius: 6px; color: #f3f4fa; font: inherit; }
.account-status { min-height: 1px; color: #95e2b8; white-space: pre-wrap; }
.account-status:empty { display: none; }
.account-status.account-error { padding: 12px; background: #562c38; color: #ffe3e8; border-radius: 6px; }
.account-qr { display: block; width: 220px; height: 220px; object-fit: contain; background: white; margin: 20px auto; padding: 12px; }
.account-codes { user-select: text; line-height: 1.8; padding: 16px; background: #0e121c; border: 1px solid #46516a; border-radius: 8px; font-size: 14px; }
.account-dialog details code { display: block; padding: 12px; overflow-wrap: anywhere; user-select: text; }
.account-dialog .account-danger { color: #ffc4c8; border-color: #b85561; }
.account-row { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; padding: 14px 0; border-bottom: 1px solid #364055; overflow-wrap: anywhere; }
.account-row strong { width: 100%; }
.account-row span, .account-row small { flex: 1 1 100%; color: #bcc4d7; }
.account-links { display: flex; flex-wrap: wrap; gap: 4px; }
.enterprise #profile-copy, .enterprise #profile-code { display: none; }
@media(max-width:480px) { .account-dialog { padding: 20px; } .account-dialog h1 { font-size: 23px; } }
