/* Default storefront responsive behavior. Independent themes carry their own copy. */
html,body,main{min-width:0;width:100%}
main{overflow-wrap:anywhere}
.container{width:100%;min-width:0}
.product-card,.product-grid>*,.d-main>*,.user-shell>*,.member-hero>*,.member-grid>*{min-width:0}
input,select,textarea{min-width:0;max-width:100%}
.search-bar input,.glass-search input{min-width:0;flex-basis:0}
.search-bar button,.glass-search button{flex-shrink:0}
.product-title,.product-price,.product-stock,.footer-copy{overflow-wrap:anywhere}
.product-bottom{gap:8px;flex-wrap:wrap;margin-top:auto}
.product-bottom>div{min-width:0}
.tag-sales{max-width:calc(100% - 20px);overflow-wrap:anywhere}
.section-title{flex-wrap:wrap}
.user-wrap{width:100%;max-width:1200px;margin:32px auto 56px;padding:0 20px}
.user-content,.user-card-row code{min-width:0}
.user-card-row code{white-space:pre-wrap;overflow-wrap:anywhere}
.user-order-head,.user-order-summary,.user-membership{gap:12px}
.user-order-head>div,.user-order-summary>div,.user-membership>div{min-width:0;overflow-wrap:anywhere}
.user-order-head>span{flex-shrink:0}
.user-membership{flex-wrap:wrap}
.user-pagination,.product-pagination{flex-wrap:wrap}
.page-link{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 12px;border:1px solid var(--border);border-radius:var(--Rs);background:var(--card);color:var(--sub)}
.order-summary-row,.query-field{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.order-summary-row>span:first-child,.query-field>span:first-child{flex-shrink:0}
.order-summary-row>span:last-child,.query-field>span:last-child{min-width:0;overflow-wrap:anywhere;text-align:right}
.d-intro-body pre,.d-intro-body table{max-width:100%;overflow:auto;display:block}
.d-intro-body iframe,.d-intro-body video{max-width:100%}
.d-intro-body a{overflow-wrap:anywhere}
.pay-item{min-width:0;overflow-wrap:anywhere}
.result-card-head{flex-wrap:wrap}
.result-card-title{min-width:0;overflow-wrap:anywhere}
.result-sub{line-height:1.7;overflow-wrap:anywhere}
.nav-mobile{overflow-y:auto;overscroll-behavior:contain;padding-bottom:max(20px,env(safe-area-inset-bottom))}
body.front-menu-open,body.front-dialog-open{overflow:hidden}
.front-modal{padding:12px;overscroll-behavior:contain}
.front-dialog{max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);overflow-y:auto;overscroll-behavior:contain}
#noticePopupBox{max-height:calc(100vh - 36px);max-height:calc(100dvh - 36px);display:flex;flex-direction:column}
#noticePopupBox>div:first-child{flex-shrink:0}
#noticePopupBox>div:last-child{min-height:0;overflow-y:auto}
.notice-dialog{max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);overflow-y:auto;overscroll-behavior:contain}
#toast{max-width:calc(100vw - 32px)}
.toast-item{max-width:100%;overflow-wrap:anywhere}
button,a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible{outline:2px solid var(--c1);outline-offset:3px}
@media(max-width:992px){
  header{gap:12px}
  header .logo{flex:1;min-width:0;overflow-wrap:anywhere;line-height:1.3}
  .nav-right:empty{display:none}
  .nav-burger{flex-shrink:0;min-width:44px;min-height:44px}
  .nav-mobile a{min-height:48px;display:flex;align-items:center;flex-shrink:0}
}
@media(max-width:768px){
  .user-wrap{margin:20px auto 40px;padding:0 12px}
  .user-shell{grid-template-columns:minmax(0,1fr)}
  .user-shell .user-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;overflow:visible}
  .user-shell .user-nav a{justify-content:center;white-space:normal;min-width:0;min-height:44px;padding:8px 6px;gap:5px}
  .user-order-head,.user-order-summary{flex-wrap:wrap}
  .user-order-summary>div:last-child{margin-left:auto}
  .user-order-head>div{flex:1 1 180px}
  .user-pagination a{min-width:38px;min-height:38px;display:inline-flex;justify-content:center;align-items:center}
  .form-control,.glass-search input,.search-bar input{font-size:16px;min-height:44px}
  .btn,.btn-block,.buy-btn,.pay-item,.search-btn{min-height:44px}
  .user-card-row{align-items:flex-start!important}
  .user-card-row button{min-height:44px;flex-shrink:0}
  .user-membership>div{flex:1 1 230px}
  .member-balance .card-body{flex-wrap:wrap}
  .member-balance .card-body>.btn{width:100%}
  .member-summary .card-body>div:last-child{min-width:0}
  .member-top,.user-section-head{flex-wrap:wrap}
  .log-row{flex-wrap:wrap}
  .log-row>div{min-width:0;overflow-wrap:anywhere}
  .log-row>div:last-child{margin-left:auto}
  .help-bottom-actions{flex-wrap:wrap}
  .result-card-head,.result-card-body{padding:16px}
  .code-box{padding:14px;font-size:15px}
  #toast{max-width:none}
}
@media(max-width:380px){
  .user-shell .user-nav{grid-template-columns:repeat(2,minmax(0,1fr))}
  .search-btn{padding-left:14px;padding-right:14px}
  .glass-search{padding-left:12px}
  .glass-search button{padding-left:16px;padding-right:16px}
}
