/* Bound grid/flex min-content widths instead of clipping overflowing page content. */
html,body,#app,main{width:100%;max-width:100%;min-width:0}
.product-page{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}
.product-page>*,.quick-layout>*,.account-layout>*,.checkout-layout>*,.two-fields>*,.product-summary,.product-gallery,.gallery-main,.account-tools,.wallet-overview,.combo-card{min-width:0;max-width:100%}
.gallery-main img{width:100%;height:auto;object-fit:contain}
.gallery-thumbs{width:100%;display:grid;grid-template-columns:repeat(auto-fit,minmax(48px,1fr));gap:8px;min-width:0}
.gallery-thumbs button{width:100%;min-width:0;padding:4px;aspect-ratio:1}
.gallery-thumbs img{width:100%;height:100%;object-fit:contain}
.product-summary p,.product-summary h1,.order-list,.wallet-records,.combo-product,.wallet-recipient,.form-stack label{overflow-wrap:anywhere}
.purchase-row{min-width:0;max-width:100%}.purchase-row input{flex:0 0 64px;min-width:0}.purchase-row .button{flex:1;min-width:0;width:auto;white-space:normal}
input,select,textarea,fieldset{min-width:0;max-width:100%}
.account-security-fields{display:grid;gap:16px;border:1px solid #dedbe2;padding:18px;margin:10px 0}.account-security-fields legend{font-size:14px;padding:0 7px}
.account-security-card{padding:18px 0;border-top:1px solid #dedbe2;text-align:left}.account-security-card .wallet-recipient{font-size:13px;line-height:1.8}
.bank-account-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:12px;margin:16px 0}.bank-account{min-width:0;padding:16px;border:1px solid #dedbe2}.bank-account-actions{display:flex;gap:24px;flex-wrap:wrap;margin-top:12px}.bank-account-list .wallet-note{margin:0}
.wallet-actions{flex-wrap:wrap}.wallet-actions>span{min-width:0}.wallet-overview .wallet-cards>div{min-width:0}.wallet-cards strong{overflow-wrap:anywhere}
.quick-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
@media(max-width:767px){
 .product-page,.quick-layout,.account-layout,.checkout-layout{grid-template-columns:minmax(0,1fr)}
 .product-page{width:100%;padding:12px 16px 36px;gap:14px}.product-summary{padding-top:12px}.product-summary h1{font-size:28px;line-height:1.25}
 .product-summary .description{max-width:100%;white-space:normal}.gallery-thumbs{grid-template-columns:repeat(auto-fit,minmax(45px,1fr))}
 .header{width:100%;gap:8px;padding-left:14px;padding-right:14px}.header-left,.header-tools{min-width:0;flex-shrink:1}.header .brand{min-width:0;flex-shrink:0}.header .brand img{max-width:104px}.header-tools{gap:2px;justify-content:flex-end}.header .icon{padding:6px}
 .page-wrap{max-width:100%;padding-left:16px;padding-right:16px}.account-layout{gap:30px}.page-hero{max-width:100%;padding-left:16px;padding-right:16px}
 .two-fields{grid-template-columns:minmax(0,1fr)}.form-stack input,.form-stack select,.form-stack textarea{font-size:16px}
 .wallet-actions .button{min-height:46px}.wallet-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.wallet-cards strong{font-size:22px}.combo-product{gap:10px}.combo-product span{min-width:0}.combo-product b{flex-shrink:0}
 .veil{max-width:100vw}.modal,.drawer{max-width:100vw;min-width:0}.modal form{max-width:100%}.account-security-fields{padding:14px}
 .spec-table{width:100%;table-layout:fixed}.spec-table td{overflow-wrap:anywhere}.order-list-header{flex-wrap:wrap;gap:10px}
 .collection-toolbar{max-width:100%;min-width:0}.collection-toolbar>*{min-width:0}.collection-toolbar select{flex:1 1 110px}
}
@media(max-width:359px){.header .brand{letter-spacing:2px;font-size:22px}.header .brand img{max-width:88px}.header svg{width:21px;height:21px}.header-left{width:18%}.header-tools{width:35%}.product-summary h1{font-size:25px}}
