/* Account presentation only; the existing login/register scripts keep ownership of authentication. */
.tdc-auth-content { display: flow-root; }
.tdc-auth-content .tdc-auth-card { width: calc(100% - 32px) !important; max-width: 520px !important; margin: 48px auto !important; padding: 24px !important; border: 1px solid var(--color-border) !important; border-radius: 8px !important; background: var(--color-surface-elevated) !important; color: var(--color-text-primary) !important; }
.tdc-auth-content .tdc-auth-card[hidden], .tdc-auth-content [data-login-password][hidden], .tdc-auth-content [data-login-email][hidden] { display: none !important; }
.tdc-auth-content .tdc-auth-guidance { min-height: 65px; display: flex; align-items: center; padding: 12px !important; border: 1px solid var(--color-border) !important; border-radius: 4px; font-size: 13px !important; line-height: 20px !important; color: var(--color-text-secondary) !important; background: var(--color-surface) !important; }
.tdc-auth-content #form-login .invalid-feedback, .tdc-auth-content #form-cadastro .invalid-feedback { color: #ef7777 !important; font-size: 13px !important; line-height: 20px !important; margin-top: 4px !important; display: block; }
.tdc-auth-content input.is-invalid { border-color: #ef7777 !important; }
.tdc-auth-content .tdc-registration-form fieldset { border: 0 !important; margin: 0 !important; padding: 0 !important; min-width: 0; }
.tdc-auth-content .tdc-registration-form fieldset[hidden] { display: none !important; }
.tdc-auth-content :is([data-register-first-guidance],[data-register-email-status])[hidden] { display: none !important; }
.tdc-auth-content .tdc-registration-form [data-register-details] > .form-group { margin-bottom: 16px !important; }
.tdc-auth-content .tdc-registration-card[data-register-step=details] [data-register-identity] .form-group:nth-of-type(2) { margin-bottom: 8px !important; }
.tdc-auth-content .tdc-register-email-status { font-size: 14px !important; line-height: 20px !important; color: var(--color-text-secondary) !important; margin: 0 0 16px !important; }
.tdc-reference-page[data-theme=dark] .tdc-auth-content input[type=date] { color-scheme: dark; }
.tdc-auth-content .tdc-password-policy { list-style: none !important; padding: 0 !important; margin: 8px 0 0 !important; }
.tdc-auth-content .tdc-password-policy li { display: flex; align-items: center; gap: 6px; font-size: 12px !important; line-height: 16px !important; color: var(--color-text-secondary) !important; margin: 0 0 4px !important; }
.tdc-auth-content .tdc-password-policy li:last-child { margin-bottom: 0 !important; }
.tdc-auth-content .tdc-password-policy li[data-met=true] { color: #4ade80 !important; }
.tdc-auth-content .tdc-policy-mark { display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; width: 14px; height: 14px; border: 1.5px solid currentColor !important; border-radius: 50% !important; }
.tdc-auth-content [data-met=true] .tdc-policy-mark { border: 0 !important; background: currentColor; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m20 6-11 11-5-5'/%3E%3C/svg%3E") center / contain no-repeat; }
.tdc-auth-content .tdc-registration-form .tdc-phone-group { display: flex !important; flex-wrap: nowrap !important; }
.tdc-auth-content .tdc-phone-prefix { display: flex; align-items: center; flex-shrink: 0; height: 44px; padding: 0 12px !important; border: 1px solid var(--color-border) !important; border-right: 0 !important; border-radius: 4px 0 0 4px !important; background: var(--color-surface); font-size: 14px !important; }
.tdc-auth-content .tdc-registration-form .tdc-phone-group input { border-radius: 0 4px 4px 0 !important; }
.tdc-auth-content .tdc-field-label { display: block; margin-bottom: 4px !important; font-size: 14px !important; font-weight: 500 !important; line-height: 20px !important; }
.tdc-auth-content .tdc-document-types { display: flex; gap: 12px; }
.tdc-auth-content .tdc-document-types button { flex: 1; height: 44px; border: 2px solid var(--color-border) !important; border-radius: 8px !important; background: var(--color-surface) !important; color: var(--color-text-primary) !important; font-size: 14px !important; font-weight: 500 !important; }
.tdc-auth-content .tdc-document-types button[aria-checked=true] { border-color: #eab308 !important; background: rgb(66 32 6 / .25) !important; color: #facc15 !important; }
.tdc-auth-content .tdc-registration-form #Identity { font-family: ui-monospace,monospace !important; letter-spacing: .1em; }
.tdc-auth-content .tdc-register-review { margin: 0 0 16px !important; font-size: 12px !important; line-height: 18px !important; }
.tdc-auth-content .tdc-registration-form select:has(option[value=""]:checked) { color: var(--color-placeholder) !important; }
.tdc-auth-content .tdc-registration-card[data-register-step=details] .tdc-register-actions { margin-top: 0 !important; }
.tdc-auth-content .tdc-auth-submit:disabled { opacity: .5 !important; cursor: not-allowed; }
.tdc-auth-content .tdc-registration-form .tdc-password-group input { padding-right: 44px !important; }
.tdc-auth-content .tdc-registration-form .tdc-password-toggle { display: flex; align-items: center; border: 0 !important; }
.tdc-auth-content .tdc-registration-form [data-register-identity] .form-group { margin-bottom: 16px !important; }
.tdc-auth-content .tdc-registration-form [data-register-identity] .form-group:nth-of-type(2) { margin-bottom: 12px !important; }
.tdc-auth-content .tdc-register-actions { margin-top: 8px !important; }
.tdc-auth-content .tdc-register-continue { display: inline-flex !important; align-items: center; height: 36px !important; padding: 0 16px !important; border: 0 !important; border-radius: 999px !important; background: var(--color-brand) !important; color: white !important; font-size: 12px !important; font-weight: 600 !important; cursor: pointer; }
.tdc-auth-content .tdc-register-continue:disabled { opacity: .5 !important; cursor: not-allowed; }
.tdc-auth-content .tdc-register-summary { margin-bottom: 24px !important; overflow-wrap: anywhere; color: var(--color-text-secondary); font-size: 14px !important; }
.tdc-auth-content .tdc-register-summary p { margin: 0 0 4px !important; }
.tdc-auth-content .tdc-register-summary button { margin-top: 4px !important; color: var(--color-text-primary); background: transparent; text-decoration: underline; cursor: pointer; }
.tdc-auth-content .tdc-registration-form .row { display: grid !important; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; margin: 0 0 20px !important; }
.tdc-auth-content .tdc-registration-form .form-group { width: auto !important; padding: 0 !important; margin: 0 !important; }
.tdc-auth-content .tdc-registration-form label { display: block; margin-bottom: 4px !important; color: var(--color-text-primary) !important; font-size: 14px !important; font-weight: 500 !important; line-height: 20px !important; }
.tdc-auth-content .tdc-registration-form .input-group:not(.tdc-phone-group) { display: block !important; position: relative; }
.tdc-auth-content .tdc-registration-form :is(input:not([type=hidden]),select) { display: block; width: 100% !important; min-width: 0; height: 44px !important; margin: 0 !important; padding: 0 12px !important; border: 1px solid var(--color-border) !important; border-radius: 4px !important; background: var(--color-surface) !important; color: var(--color-text-primary) !important; font-size: 16px !important; line-height: 24px !important; }
.tdc-auth-content .tdc-registration-form input::placeholder { color: var(--color-placeholder) !important; opacity: 1; }
.tdc-auth-content .tdc-registration-form input:-webkit-autofill { -webkit-text-fill-color: var(--color-text-primary) !important; caret-color: var(--color-text-primary); box-shadow: 0 0 0 1000px var(--color-surface) inset !important; }
.tdc-auth-content .tdc-registration-form .tdc-password-group input { padding-right: 44px !important; }
.tdc-auth-content .tdc-password-toggle { position: absolute; right: 0; top: 0; z-index: 4; height: 44px; padding: 0 12px !important; background: transparent; color: var(--color-text-secondary); font-size: 13px !important; cursor: pointer; }
.tdc-auth-content .tdc-registration-form > .right { float: none !important; display: block !important; width: 100% !important; text-align: left !important; }
.tdc-auth-content .tdc-auth-submit { display: block !important; width: 100% !important; height: 44px !important; padding: 0 16px !important; border: 0 !important; border-radius: 4px !important; background: var(--color-brand) !important; color: white !important; font-size: 16px !important; font-weight: 500 !important; text-transform: none !important; cursor: pointer; }
.tdc-auth-content .tdc-auth-submit:hover { opacity: .9; }
.tdc-auth-content :is(input,select,button,a):focus-visible { outline: 2px solid var(--color-focus); outline-offset: 2px; }
@media (min-width:768px) { .tdc-auth-content .tdc-auth-card { margin: 64px auto !important; padding: 32px !important; } }
@media (max-width:600px) { .tdc-auth-content .tdc-registration-form .row { grid-template-columns: minmax(0,1fr); } }
.tdc-auth-content .tdc-registration-form select.form-select { appearance: none !important; padding-right: 36px !important; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%239ca3af' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") !important; background-position: right 12px center !important; background-repeat: no-repeat !important; background-size: 16px 16px !important; }
