/* Shared responsive refinements. Page-specific rules preserve desktop layouts. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:110px}
img,video{max-width:100%}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
button,a{touch-action:manipulation}
:focus-visible{outline:2px solid #C9A96E;outline-offset:4px}
.acct-wrap.active:focus-within .acct-drop,.acct-wrap.active.mobile-open .acct-drop{opacity:1;pointer-events:auto;transform:translateY(0)}
.admin-menu-toggle{display:none}
.mobile-table-scroll{width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
.mobile-table-scroll:focus-visible{outline-offset:-3px}
@media(max-width:1024px){
  .page,.layout,.main,.main-col,.side-col,.panel,.prod-info,.prod-gallery,.ed-feat-body,.atps-body{min-width:0}
  .ft>*{min-width:0}
  .fpay,.fsoc,.fb{flex-wrap:wrap}
  [data-page="checkout"] .layout{grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:28px;padding:36px 24px}
  [data-page="admin_panel"] .layout{grid-template-columns:220px minmax(0,1fr)}
  [data-page="admin_panel"] .main{padding:28px}
  [data-page="admin_panel"] .sn-item{padding-inline:20px}
  [data-page="admin_panel"] .stat-card{padding:24px 18px}
}
@media(max-width:900px){
  body{cursor:auto}
  nav{padding-inline:16px;gap:12px}
  .nav-logo,.nl{flex-shrink:0}
  .nav-acts{gap:8px}
  .nav-acts>button,.search-icon-btn,.acct-btn,.wish-btn,.ham-btn,.nav-ham,.nav-bag-btn{min-width:44px;min-height:44px;justify-content:center}
  .nav-btn{min-height:44px}
  .search-wrap{position:static}
  .search-bar{position:absolute;top:100%;left:0;right:0;width:auto;max-height:0;background:#fff;visibility:hidden;transition:max-height .25s,visibility .25s;box-shadow:0 8px 14px #0001}
  .search-bar.open{width:auto;max-height:80px;visibility:visible;padding:12px 20px}
  .search-bar form{width:100%}
  nav .search-bar input,nav.solid .search-bar input{color:#0a0a0a;border-bottom-color:#999;font-size:16px;min-height:44px}
  nav .search-bar input::placeholder{color:#666}
  #cur,#cur2{display:none}
  input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),textarea,select{font-size:16px!important;min-width:0;max-width:100%}
  input[type="checkbox"],input[type="radio"]{flex-shrink:0}
  .auth-box{max-height:calc(100dvh - 24px);overscroll-behavior:contain}
  .auth-close,.modal-close,.mclose,.mob-close,.wish-close{min-width:44px;min-height:44px}
  .auth-social-btn{white-space:normal;letter-spacing:.08em;padding-inline:12px}
  #mobMenu,.mob-menu{max-width:calc(100vw - 20px);height:100dvh;overflow-y:auto;overscroll-behavior:contain;padding-bottom:max(32px,env(safe-area-inset-bottom))}
  #cpanel,.wish-panel{max-width:100vw;max-height:100dvh;overscroll-behavior:contain}
  .wish-body,.citems,#cbody{min-height:0;overflow-y:auto;overscroll-behavior:contain}
  .cft,#cfooter,.wish-foot{padding-bottom:max(24px,env(safe-area-inset-bottom))}
  .wish-card-btn{opacity:1}
  .wish-tooltip{display:none!important}
  .toast{left:16px;right:16px;bottom:max(20px,env(safe-area-inset-bottom));max-width:calc(100vw - 32px);width:auto;overflow-wrap:anywhere;line-height:1.6}
  .ft{gap:32px}
  .fcopy{line-height:1.8}
  .fcol ul li a{display:inline-block;padding-block:8px}
  [data-page="index"] nav{top:var(--announcement-height,36px)}
  [data-page="index"] .ann{display:block;font-size:11px;letter-spacing:.06em;line-height:1.6;padding:8px 16px}
  [data-page="index"] #hero,[data-page="about"] #hero{height:auto;min-height:100svh}
  [data-page="index"] .hc,[data-page="about"] .hc{padding-top:150px}
  [data-page="index"] .mc{max-height:calc(100dvh - 24px);overflow-y:auto;overscroll-behavior:contain}
  [data-page="index"] #nl-popup{max-height:calc(100dvh - 32px);overflow-y:auto;padding:40px 24px}
  [data-page="product"] .prod-thumbs{overflow-x:auto;padding-bottom:8px}
  [data-page="product"] .prod-thumb{flex-shrink:0}
  [data-page="product"] .prod-spec-label{width:35%;padding-right:12px;line-height:1.7}
  [data-page="product"] .prod-spec-val{min-width:0;overflow-wrap:anywhere}
  [data-page="checkout"] .layout{grid-template-columns:minmax(0,1fr);padding:28px 20px;gap:28px}
  [data-page="checkout"] .side-col{order:initial}
  [data-page="checkout"] .order-card{position:static}
  [data-page="checkout"] .prog{padding:16px 12px}
  [data-page="checkout"] .pline{width:28px;margin-inline:10px;flex-shrink:1}
  [data-page="checkout"] .pstep{letter-spacing:.12em;gap:7px;font-size:11px}
  [data-page="account"] .page{grid-template-columns:minmax(0,1fr);padding:28px 20px 60px}
  [data-page="account"] .sidebar-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0}
  [data-page="account"] .tab-btn{min-height:48px;width:100%;border-bottom:1px solid #ddd;border-right:0;padding:12px 8px;letter-spacing:.1em;font-size:12px}
  [data-page="account"] .tab-btn.active{border-bottom:2px solid #000}
  [data-page="account"] .order-no,[data-page="account"] .sidebar-email{overflow-wrap:anywhere}
  [data-page="account"] .order-head>div:first-child{min-width:0}
  [data-page="account"] .pts-ref-link{min-width:0}
  [data-page="admin_panel"] .topbar{height:auto;min-height:72px;padding:12px 20px;gap:12px;flex-wrap:wrap}
  [data-page="admin_panel"] .tb-right{gap:12px;flex-wrap:wrap}
  [data-page="admin_panel"] .tb-link{font-size:11px;letter-spacing:.1em}
  [data-page="admin_panel"] .tb-logout{min-height:44px;padding:10px 14px;letter-spacing:.12em}
  [data-page="admin_panel"] .admin-menu-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;background:#161616;color:#fff;border:1px solid #777;font:inherit;font-size:13px}
  [data-page="admin_panel"] .layout{display:block}
  [data-page="admin_panel"] .sidebar{display:none;border-right:0;border-bottom:1px solid var(--border);padding:16px 0}
  [data-page="admin_panel"] .sidebar.mobile-open{display:block}
  [data-page="admin_panel"] .sn-item{min-height:48px;padding:14px 24px;font-size:14px}
  [data-page="admin_panel"] .main{padding:28px 20px}
  [data-page="admin_panel"] .page-sub{line-height:1.8;letter-spacing:.12em}
  [data-page="admin_panel"] .form-card{padding:24px 20px}
  [data-page="admin_panel"] .form-card:has(>table){overflow-x:auto!important}
  [data-page="admin_panel"] .ptable,[data-page="admin_panel"] .ord-table{min-width:680px}
  [data-page="admin_panel"] .ord-table{min-width:1000px}
  [data-page="admin_panel"] .ptable th,[data-page="admin_panel"] .ptable td{padding:14px}
  [data-page="admin_panel"] .taction{flex-wrap:wrap}
  [data-page="admin_panel"] button{min-height:44px}
  [data-page="admin_panel"] .modal-bg{padding:12px;align-items:center}
  [data-page="admin_panel"] .modal-box,[data-page="admin_panel"] #atps-modal .modal-box{width:100%;max-height:calc(100dvh - 24px);padding:28px 20px!important;overscroll-behavior:contain}
  [data-page="admin_panel"] .modal-title{font-size:1.9rem;padding-right:28px;overflow-wrap:anywhere}
  [data-page="admin_panel"] .slide-row{grid-template-columns:minmax(0,1fr);padding:20px}
  [data-page="admin_panel"] .atps-prod-row{grid-template-columns:60px minmax(0,1fr);gap:12px;padding:20px 16px}
  [data-page="admin_panel"] .atps-prod-row>div:last-child{grid-column:2}
  [data-page="admin_panel"] .atps-prod-meta{overflow-wrap:anywhere;font-size:11px}
}
@media(max-width:600px){
  nav .nav-logo,nav .nl{font-size:1.5rem}
  .nav-acts{gap:2px}
  .nav-acts .nav-btn{font-size:11px;letter-spacing:.1em}
  .ft{grid-template-columns:minmax(0,1fr)}
  footer{padding:44px 20px 32px}
  .fpay{gap:10px}
  .auth-form-grid,.auth-social{grid-template-columns:minmax(0,1fr)}
  .auth-span{grid-column:auto}
  .auth-box{padding:36px 22px 28px;max-width:calc(100vw - 24px);margin-inline:12px}
  .auth-tab{letter-spacing:.14em;font-size:12px}
  .auth-divider span{white-space:normal;text-align:center;line-height:1.6}
  .ci{grid-template-columns:64px minmax(0,1fr) auto;gap:10px}
  .ci img{width:64px;height:80px}
  .wish-item{gap:12px}
  .wish-item img{width:60px;height:80px}
  .wish-item-info{min-width:0}
  .wish-item-name,.ci-name{overflow-wrap:anywhere}
  .ch,.wish-head{padding:20px}
  .citems,#cbody,.wish-body{padding-inline:20px}
  [data-page="index"] .hdesc{font-size:13px;letter-spacing:.1em;line-height:1.8}
  [data-page="index"] .hbtns{width:100%}
  [data-page="index"] .hbtns a{width:min(100%,320px);padding-inline:20px;text-align:center}
  [data-page="index"] .nlform input{min-width:0}
  [data-page="index"] .md{padding:24px 20px}
  [data-page="index"] .msizes{flex-wrap:wrap}
  [data-page="about"] .h-title{font-size:clamp(3rem,14vw,5rem);line-height:1}
  [data-page="about"] .h-tagline{font-size:13px;letter-spacing:.1em}
  [data-page="about"] .pm-phrase{font-size:clamp(2rem,9vw,3.5rem);overflow-wrap:anywhere}
  [data-page="editorial"] .ed-feat-meta,[data-page="editorial"] .article-meta{flex-wrap:wrap;gap:10px}
  [data-page="editorial"] .ed-feat-body{padding:28px 0}
  [data-page="editorial"] .article-title{font-size:clamp(1.9rem,8vw,2.7rem);overflow-wrap:anywhere}
  [data-page="editorial"] .article-body img{height:auto}
  [data-page="product"] .prod-main-img{aspect-ratio:3/4}
  [data-page="product"] .prod-name{overflow-wrap:anywhere}
  [data-page="product"] .pay-opt-label{white-space:normal;text-align:center}
  [data-page="checkout"] .order-card{padding:24px 20px}
  [data-page="checkout"] .pstep{flex-direction:column;font-size:10px;letter-spacing:.08em;text-align:center}
  [data-page="checkout"] .ps{width:100%;justify-content:space-between}
  [data-page="checkout"] .pline{flex:1;margin-inline:8px}
  [data-page="checkout"] .frow,[data-page="checkout"] .pfrow{grid-template-columns:minmax(0,1fr)}
  [data-page="checkout"] .promo-wrap input{width:0;min-width:0}
  [data-page="checkout"] .promo-wrap button{padding-inline:14px;font-size:11px;letter-spacing:.1em}
  [data-page="checkout"] .oi-info{min-width:0;overflow-wrap:anywhere}
  [data-page="checkout"] .btn-row{flex-direction:column}
  [data-page="checkout"] .btn-next,[data-page="checkout"] .btn-back{width:100%;min-height:48px;letter-spacing:.12em;font-size:12px}
  [data-page="checkout"] #success{padding:24px 0}
  [data-page="checkout"] .suc-order{overflow-wrap:anywhere}
  [data-page="checkout"] .suc-btns{width:100%}
  [data-page="checkout"] .suc-btns a{width:100%;padding-inline:18px}
  [data-page="account"] .order-card{padding:22px 16px}
  [data-page="account"] .order-no{font-size:12px;letter-spacing:.12em;line-height:1.7}
  [data-page="account"] .order-date{font-size:12px;letter-spacing:.04em}
  [data-page="account"] .order-head-actions{width:100%;justify-content:space-between}
  [data-page="account"] .order-help,[data-page="account"] .cancel-order{min-height:44px}
  [data-page="account"] .order-item{gap:16px;font-size:14px}
  [data-page="account"] .order-item>div{min-width:0;overflow-wrap:anywhere}
  [data-page="account"] .order-item>div:last-child{flex-shrink:0}
  [data-page="account"] .payment-line{flex-wrap:wrap;gap:4px 12px}
  [data-page="account"] .payment-line span:last-child{margin-left:auto;max-width:100%}
  [data-page="account"] .pts-hero{padding:28px 20px}
  [data-page="account"] .pts-tier-row{flex-wrap:wrap}
  [data-page="account"] .pts-how-grid{grid-template-columns:minmax(0,1fr)}
  [data-page="account"] .pts-how-desc{font-size:12px}
  [data-page="account"] .pts-ref-link-row{flex-direction:column}
  [data-page="account"] .pts-ref-copy{min-height:44px}
  [data-page="account"] .pts-hist-table{table-layout:fixed}
  [data-page="account"] .pts-hist-table td,[data-page="account"] .pts-hist-table th{overflow-wrap:anywhere;padding:12px 6px;font-size:12px;letter-spacing:.02em}
  [data-page="admin_panel"] .topbar{padding:12px 16px}
  [data-page="admin_panel"] .tb-logo{font-size:1.7rem}
  [data-page="admin_panel"] .tb-right{width:100%;justify-content:space-between}
  [data-page="admin_panel"] .main{padding:24px 16px}
  [data-page="admin_panel"] .stats-row{gap:12px}
  [data-page="admin_panel"] .stat-n{font-size:2.4rem}
  [data-page="admin_panel"] .stat-l{font-size:11px;letter-spacing:.1em;line-height:1.7}
  [data-page="admin_panel"] .form-card:not(:has(table)){padding:24px 16px!important}
  [data-page="admin_panel"] .btn-row>*{flex:1 1 100%;padding-inline:16px;letter-spacing:.12em}
  [data-page="admin_panel"] .btn-primary,[data-page="admin_panel"] .btn-secondary{max-width:100%;padding-inline:20px;letter-spacing:.12em;line-height:1.6}
  [data-page="admin_panel"] .draft-notice{flex-wrap:wrap}
  [data-page="admin_panel"] .layout-picker{grid-template-columns:minmax(0,1fr)}
  [data-page="admin_panel"] .mobile-stack{grid-template-columns:minmax(0,1fr)!important}
  [data-page="admin_panel"] .spec-edit-row,[data-page="admin_panel"] .hl-row{grid-template-columns:minmax(0,1fr) 44px}
  [data-page="admin_panel"] .spec-edit-row input:first-child{grid-column:1/-1}
  [data-page="admin_panel"] .spec-remove-btn{width:44px}
  [data-page="admin_panel"] .upload-zone{padding:24px 16px}
  [data-page="admin_login"]{padding:24px 16px;min-height:100svh}
  [data-page="admin_login"] .box{padding:40px 24px}
  [data-page="admin_login"] input,[data-page="admin_login"] button{min-height:48px}
}
@media(max-width:360px){
  nav{padding-inline:10px!important;gap:6px}
  .nav-acts>button,.search-icon-btn,.acct-btn,.wish-btn,.ham-btn,.nav-ham,.nav-bag-btn{min-width:40px}
  [data-page="account"] .page,[data-page="checkout"] .layout{padding-inline:12px}
}
@media(hover:none),(pointer:coarse){
  #cur,#cur2{display:none}
  body,button,a{cursor:auto}
  .wish-card-btn{opacity:1}
  .wish-tooltip{display:none!important}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-delay:0ms!important;transition-duration:.01ms!important}
}
@media(max-width:900px){
  .auth-submit,.auth-submit-btn,.auth-social-btn,.shop-link,.madd,.mwish,.wish-add-btn,.wish-rm-btn{min-height:44px}
  .ftag,.ft a,.article-body,.ed-card-title,.ed-card-meta{overflow-wrap:anywhere}
  [data-page="index"] .md{overflow-y:visible}
  [data-page="checkout"] .ship-opt{gap:12px}
  [data-page="checkout"] .ship-left{min-width:0}
  [data-page="checkout"] .ship-price{flex-shrink:0}
}
@media(max-width:600px){
  [data-page="checkout"] .step-nav{flex-direction:column}
  [data-page="checkout"] .ship-opt{padding:16px 14px}
  [data-page="checkout"] .ship-name,[data-page="checkout"] .ship-eta{font-size:12px;line-height:1.6;letter-spacing:.04em}
  [data-page="checkout"] label,[data-page="account"] .fg label{font-size:12px;letter-spacing:.1em;line-height:1.6}
  [data-page="editorial"] .article-pull{padding:20px}
  [data-page="editorial"] .article-caption{letter-spacing:.06em;font-size:12px;line-height:1.6}
}
@media(hover:none){
  .acct-wrap.active:not(.mobile-open) .acct-drop{opacity:0;pointer-events:none}
}
@media(max-width:900px){
  button,a{cursor:pointer}
  .nl-popup-close{min-width:44px;min-height:44px}
}
@media(max-width:600px){
  .nlform{flex-direction:column;border-bottom:0;max-width:100%}
  .nlform input{width:100%;min-height:48px;border-bottom:1px solid #ffffff4d;padding:14px 0}
  .nlform button{min-height:48px;padding:14px 0;text-align:left}
  [data-page="checkout"] .card-face{padding:22px 18px}
  [data-page="checkout"] .card-num{font-size:clamp(14px,4vw,20px);letter-spacing:.12em}
  [data-page="admin_panel"] .form-title{letter-spacing:.16em;line-height:1.7}
}
