/* Complementa o visual original; nunca oculta campos obrigatórios. */
.dnn-auth-shell *, .dnn-auth-wrap *, .dnn-auth-grid > *, .woocommerce-EditAccountForm .form-row { box-sizing: border-box; min-width: 0; }
.dnn-auth-grid .full { grid-column: 1 / -1; }
.dnn-optional-details { clear: both; width: 100%; min-width: 0; border: 1px solid #d6e3df; border-radius: 12px; padding: 12px 14px; margin: 12px 0; background: #f8fbfa; color: #173c32; }
.dnn-optional-details summary { cursor: pointer; font-weight: 600; line-height: 1.5; overflow-wrap: anywhere; }
.dnn-optional-details[open] summary { margin-bottom: 14px; }
.dnn-optional-details::after { content: ''; display: table; clear: both; }
.dnn-password-toggle { background: transparent; border: 0; color: #126044; cursor: pointer; text-align: left; font: inherit; font-size: 13px; padding: 8px 0; min-height: 36px; }
.dnn-auth-form input, .dnn-auth-form select { max-width: 100%; }
.dnn-auth-form label, .dnn-auth-readonly strong { overflow-wrap: anywhere; }
.dnn-password-toggle:focus-visible, .dnn-optional-details summary:focus-visible { outline: 2px solid #12795a; outline-offset: 3px; }
@media (max-width: 620px) {
    .dnn-auth-grid { grid-template-columns: minmax(0, 1fr) !important; }
    .dnn-auth-form input, .dnn-auth-form select { font-size: 16px; }
    .dnn-extra-profile .form-row { width: 100% !important; float: none !important; }
    .dnn-optional-details { padding: 12px; }
}
/* Mesmo contraste escuro dos formulários originais. */
.dnn-auth-page, .dnn-auth-page *, .dnn-optional-details { box-sizing: border-box; }
.dnn-auth-page .dnn-optional-details,
body.dnn-fluid-checkout .dnn-optional-details,
.woocommerce-EditAccountForm .dnn-optional-details { background: #0b1424; border-color: #243247; color: #dbe4f0; }
.dnn-auth-page .dnn-optional-details summary,
body.dnn-fluid-checkout .dnn-optional-details summary,
.woocommerce-EditAccountForm .dnn-optional-details summary { color: #dbe4f0; }
.woocommerce-EditAccountForm .dnn-optional-details label { color: #dbe4f0; }
.dnn-auth-page .dnn-password-toggle,
.woocommerce-EditAccountForm .dnn-password-toggle { color: #22d3ee; }
.dnn-auth-card { min-width: 0; }
@media (max-width: 620px) {
    .dnn-auth-page { padding-left: 10px; padding-right: 10px; }
    .dnn-auth-card { padding: 18px; }
    .dnn-person-block { padding: 10px; }
}
/* 4.2: campos complementares têm seu próprio layout, inclusive em desktop/tablet. */
.dnn-extra-profile { grid-column: 1 / -1; }
.dnn-extra-profile[open] > .dnn-extra-content { display: grid !important; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; width: 100%; }
.dnn-extra-profile:not([open]) > .dnn-extra-content { display: none !important; }
.dnn-extra-profile .dnn-extra-content > .form-row { float: none !important; clear: none !important; width: 100% !important; min-width: 0; margin: 0 !important; }
.dnn-extra-profile .dnn-extra-content > .form-row-wide { grid-column: 1 / -1; }
form.checkout .dnn-inactive-person, .dnn-extra-profile[hidden] { display: none !important; }
#dnn-cep-status { display: block; margin-top: 8px; color: #a5f3fc; font-size: 13px; line-height: 1.5; }
.dnn-google-access { margin: 18px 0; padding: 16px; border: 1px solid #334155; border-radius: 12px; }
body.dnn-fluid-checkout form.checkout #dnn-order-review-panel { grid-column: 2; grid-row: 1; width: 100%; min-width: 0; align-self: start; }
body.dnn-fluid-checkout #dnn-order-review-panel #order_review_heading,
body.dnn-fluid-checkout #dnn-order-review-panel #order_review { float: none !important; position: static !important; width: 100% !important; box-sizing: border-box; margin: 0 !important; }
body.dnn-fluid-checkout #dnn-order-review-panel #order_review { border-top-left-radius: 0; border-top-right-radius: 0; }
@media (max-width: 900px) { body.dnn-fluid-checkout form.checkout #dnn-order-review-panel { grid-column: 1 / -1; grid-row: auto; } }
@media (max-width: 620px) { .dnn-extra-profile[open] > .dnn-extra-content { grid-template-columns: minmax(0,1fr); } }
