/* Keep parent controls within the viewport without clipping their contents. */
.account-page,.account-page section,.account-page form,.account-page fieldset{min-width:0}
.account-page .account-card,.account-page .table-scroll{max-width:100%}
.account-page .table-scroll{width:100%;min-width:0}
.account-page input,.account-page select,.account-page textarea,.account-page .button{max-width:100%;min-width:0}
.account-page .checkbox input{min-width:20px;flex-shrink:0}
.account-page .button{white-space:normal;overflow-wrap:anywhere;text-align:center}
.account-page label,.account-page summary,.account-page li,.account-page h2,.account-page h3{overflow-wrap:anywhere}
.account-page .billing-plans>article,.account-page .profile-actions>*{min-width:0;max-width:100%}
.account-page p,.account-page a,.account-page pre{overflow-wrap:anywhere}
.account-page pre{white-space:pre-wrap;word-break:break-word}
/* Reviews are appended to body, outside .account-page. */
.upgrade-review,.upgrade-review *{box-sizing:border-box;min-width:0}
.upgrade-review{max-width:calc(100% - 24px);overflow-wrap:anywhere}
.upgrade-review form{max-width:100%}
.upgrade-review .button{max-width:100%;white-space:normal;overflow-wrap:anywhere}
.upgrade-review .checkbox input{flex:0 0 20px;max-width:20px}
@media(max-width:700px){
 /* Keep focused fields at a readable size on iPhone without disabling zoom. */
 .account-page input,.account-page select,.account-page textarea,.upgrade-review input,.upgrade-review select,.upgrade-review textarea{font-size:16px}
 .account-page .account-card{padding:18px}
 .account-page .billing-plans article{padding:16px}
 .account-page .profile-actions>.button{flex:1 1 180px}
 .upgrade-review{width:calc(100% - 24px);padding:18px;max-height:90vh;max-height:90dvh}
 .upgrade-review dl{grid-template-columns:minmax(0,1fr)}
 .upgrade-review dd{text-align:left}
 .upgrade-review .button{display:block;width:100%;margin-top:10px}
 .legal-dialog-bar{flex-wrap:wrap}
 .legal-dialog-content{overflow-wrap:anywhere}
 .account-page .account-grid{grid-template-columns:minmax(0,1fr)}
 .site-header.has-mobile-menu .brand{min-width:0;flex-shrink:1}
 .site-header.has-mobile-menu .brand>span:last-child{white-space:normal}
 .account-page .parent-child-title{min-width:0;max-width:100%}
 .account-page table[data-mobile-cards]{display:block;width:100%;min-width:0}
 .account-page table[data-mobile-cards] thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 .account-page table[data-mobile-cards] tbody{display:block;width:100%}
 .account-page table[data-mobile-cards] tbody tr{display:block;width:100%;border:1px solid var(--line);border-radius:12px;margin:12px 0;padding:6px}
 .account-page table[data-mobile-cards] td{display:block;width:100%;min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere;border:0;padding:8px 10px}
 .account-page table[data-mobile-cards] td::before{content:attr(data-label);display:block;color:var(--muted);font-size:12px;font-weight:700;margin-bottom:3px}
}
