/* GPC Buy Sale — centralized responsive layer for public and user pages */
*,*::before,*::after{box-sizing:border-box}
html{max-width:100%;overflow-x:hidden;-webkit-text-size-adjust:100%}
body.fv-public-body{max-width:100%;overflow-x:hidden}
.fv-public-body img,.fv-public-body svg,.fv-public-body video,.fv-public-body iframe{max-width:100%}
.fv-public-body input,.fv-public-body select,.fv-public-body textarea,.fv-public-body button{max-width:100%;font-family:inherit}

@media(max-width:980px){
  .fv-public-body .fv-nav-main{min-height:64px;padding:0 18px;gap:12px}
  .fv-public-body .fv-nav-actions,.fv-public-body .fv-category-nav{display:none!important}
  .fv-public-body .fv-mobile-toggle{display:grid!important;place-items:center;flex:0 0 42px;width:42px;height:42px;margin-left:auto;border:1px solid #d9e2ee;border-radius:10px;background:#fff;color:#1b4f9c;font-size:20px}
  .fv-public-body .fv-nav-search{min-width:0;flex:1;max-width:none}
  .fv-public-body .fv-logo{flex:0 0 auto}
  .fv-public-body .fv-mobile-panel{position:fixed!important;z-index:1500!important;top:64px!important;right:12px!important;left:12px!important;max-height:calc(100vh - 78px)!important;overflow-y:auto!important;padding:12px!important;border:1px solid #dce5ef!important;border-radius:14px!important;background:#fff!important;box-shadow:0 22px 55px rgba(18,38,68,.22)!important}
  .fv-public-body.mobile-nav-open .fv-mobile-panel{display:grid!important;gap:4px!important}
  .fv-public-body .fv-mobile-panel>a{min-height:44px!important;padding:0 13px!important;border-radius:9px!important;display:flex!important;align-items:center!important;color:#273b56!important;font-size:13px!important;font-weight:750!important}
  .fv-public-body .fv-mobile-panel>a:hover{background:#eef5ff!important;color:#1767dc!important}

  .fv-public-body .fv-site-main{width:100%!important;max-width:100%!important;margin:0!important;padding-left:18px!important;padding-right:18px!important}
  .fv-public-body .fv-site-main.has-user-workspace{padding:0!important}
  .fv-public-body .user-workspace-shell{display:block!important;width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;background:#f3f6fa!important}
  .fv-public-body .user-workspace-nav{position:fixed!important;z-index:1450!important;top:0!important;bottom:0!important;left:0!important;width:min(290px,86vw)!important;max-width:86vw!important;height:100vh!important;overflow-y:auto!important;transform:translateX(-105%)!important;transition:transform .22s ease!important;box-shadow:14px 0 40px rgba(15,30,52,.24)!important}
  .fv-public-body.user-panel-menu-open .user-workspace-nav{transform:translateX(0)!important}
  .fv-public-body.user-panel-menu-open:after{content:'';position:fixed;z-index:1400;inset:0;background:rgba(12,25,45,.42)}
  .fv-public-body .user-workspace-content{width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;padding:18px!important}
  .fv-public-body .user-panel-topbar{padding:0 16px!important}
  .fv-public-body .user-panel-menu{display:grid!important;place-items:center!important}

  .fv-public-body table{display:block;width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .fv-public-body :is(.table-wrap,.table-responsive,.responsive-table,.fv-table-wrap,.wallet-table-wrap,.orders-table-wrap,.transactions-table-wrap,.listings-table-wrap){display:block!important;width:100%!important;max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch}
  .fv-public-body :is(.table-wrap,.table-responsive,.responsive-table,.fv-table-wrap,.wallet-table-wrap,.orders-table-wrap,.transactions-table-wrap,.listings-table-wrap)>table{min-width:680px}
  .fv-public-body :is(.form-grid,.profile-grid,.settings-grid,.details-grid,.wallet-grid,.order-grid,.stats-grid,.feature-grid,.features,.steps,.blog-grid,.service-grid,.services-grid,.listing-grid,.listings-grid){grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .fv-public-body :is(.hero,.page-hero,.dashboard-hero,.wallet-hero,.profile-hero){max-width:100%!important}
  .fv-public-body :is(.modal,.promo-modal,.dialog,.popup,.offer-modal){width:min(620px,calc(100vw - 30px))!important;max-width:calc(100vw - 30px)!important;max-height:calc(100vh - 30px)!important;overflow-y:auto!important}
  .fv-public-body pre,.fv-public-body code{max-width:100%;overflow-x:auto;white-space:pre-wrap;overflow-wrap:anywhere}
}

@media(max-width:700px){
  .fv-public-body .fv-nav-main{padding:0 13px}
  .fv-public-body .fv-site-header .fv-logo{min-width:0!important;gap:9px!important}
  .fv-public-body .fv-site-header .fv-logo strong{display:inline!important;max-width:190px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;color:#172238!important;font-size:17px!important;font-weight:900!important;letter-spacing:-.2px!important}
  .fv-public-body .fv-mobile-panel{top:74px!important;right:13px!important;left:auto!important;width:min(320px,calc(100vw - 26px))!important;max-height:calc(100vh - 88px)!important;padding:10px!important;border-radius:14px!important}
  .fv-public-body.mobile-nav-open:before{content:'';position:fixed;z-index:1490;top:74px;right:0;bottom:0;left:0;background:rgba(15,30,52,.20);backdrop-filter:blur(1px)}
  .fv-public-body .fv-mobile-panel>a{min-height:48px!important;padding:0 15px!important;border-bottom:1px solid #edf1f6!important;border-radius:8px!important}
  .fv-public-body .fv-mobile-panel>a:last-child{border-bottom:0!important}
  .fv-public-body .fv-logo img{max-width:42px;max-height:42px}
  .fv-public-body .fv-nav-search{height:42px}
  .fv-public-body .fv-nav-search input{min-width:0!important;padding:0 11px!important;font-size:13px!important}
  .fv-public-body .fv-nav-search button{flex:0 0 46px!important;width:46px!important}
  .fv-public-body .fv-site-main:not(.has-user-workspace){padding-left:13px!important;padding-right:13px!important}
  .fv-public-body .user-workspace-content{padding:13px!important}
  .fv-public-body .user-panel-topbar{min-height:60px!important;padding:0 11px!important;gap:8px!important}
  .fv-public-body .user-panel-home strong,.fv-public-body .user-panel-person span,.fv-public-body .user-panel-chevron{display:none!important}
  .fv-public-body .user-panel-tools{gap:6px!important}
  .fv-public-body .user-panel-add,.fv-public-body .user-panel-bell{width:36px!important;height:36px!important;min-width:36px!important}
  .fv-public-body .user-account-menu{position:fixed!important;top:64px!important;right:10px!important;left:10px!important;width:auto!important;max-width:none!important}
  .fv-public-body .site-flash{left:12px!important;right:12px!important;max-width:none!important}

  /* User workspace: real mobile off-canvas navigation, not the tablet strip. */
  .fv-public-body .user-workspace-nav{display:flex!important;width:min(280px,82vw)!important;max-width:82vw!important;padding:18px 12px 28px!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain!important}
  .fv-public-body .user-workspace-brand{display:flex!important;width:100%!important;margin-bottom:18px!important;padding:0 10px!important}
  .fv-public-body .user-nav-label{display:block!important;width:auto!important;margin:10px 8px 8px!important}
  .fv-public-body .user-nav-label.account{margin-top:22px!important}
  .fv-public-body .user-workspace-nav nav{display:grid!important;width:100%!important;grid-template-columns:1fr!important;gap:4px!important}
  .fv-public-body .user-nav-main,.fv-public-body .user-nav-group summary{width:100%!important;min-width:0!important;min-height:44px!important;padding:0 11px!important;grid-template-columns:22px minmax(0,1fr) auto!important;gap:7px!important;white-space:normal!important}
  .fv-public-body .user-nav-group summary b{display:block!important}
  .fv-public-body .user-nav-group>div{display:grid!important;width:100%!important;padding:3px 0 7px 40px!important}
  .fv-public-body.user-panel-menu-open{overflow:hidden!important}

  .fv-public-body :is(.form-grid,.profile-grid,.settings-grid,.details-grid,.wallet-grid,.order-grid,.stats-grid,.feature-grid,.features,.steps,.blog-grid,.service-grid,.services-grid,.listing-grid,.listings-grid){grid-template-columns:1fr!important}
  .fv-public-body :is(.page-head,.page-header,.section-head,.card-head,.wallet-head,.profile-head,.dashboard-head,.actions-row,.form-actions,.promo-actions){align-items:stretch!important;flex-direction:column!important;gap:10px!important}
  .fv-public-body :is(.page-head,.page-header,.section-head,.card-head,.wallet-head,.profile-head,.dashboard-head) h1{font-size:clamp(24px,7vw,32px)!important;line-height:1.15!important}
  .fv-public-body :is(.card,.panel,.box,.section-card,.dashboard-card,.wallet-card,.profile-card){max-width:100%!important;padding-left:16px!important;padding-right:16px!important}
  .fv-public-body :is(form,.form-grid) input:not([type=checkbox]):not([type=radio]),.fv-public-body :is(form,.form-grid) select,.fv-public-body :is(form,.form-grid) textarea{width:100%!important;min-width:0!important}
  .fv-public-body :is(.form-actions,.promo-actions)>button,.fv-public-body :is(.form-actions,.promo-actions)>a{width:100%!important;justify-content:center!important}
  .fv-public-body .fv-footer{width:100%!important;max-width:100%!important;padding:38px 20px 22px!important;background:#0b1730!important;border-top:1px solid #22324d!important;overflow:hidden!important}
  .fv-public-body .fv-footer-grid{width:100%!important;max-width:100%!important;grid-template-columns:1fr 1fr!important;gap:28px 20px!important;padding:0!important}
  .fv-public-body .fv-footer-brand{grid-column:1/-1!important;min-width:0!important}
  .fv-public-body .fv-footer .fv-logo.footer{display:inline-flex!important;align-items:center!important;gap:10px!important;margin:0 0 14px!important;color:#fff!important}
  .fv-public-body .fv-footer .fv-logo.footer strong{display:inline!important;color:#fff!important;font-size:19px!important;line-height:1.2!important;white-space:normal!important}
  .fv-public-body .fv-footer .footer-eyebrow{max-width:100%!important;white-space:normal!important;line-height:1.35!important}
  .fv-public-body .fv-footer h4{display:block!important;margin:0 0 14px!important;color:#fff!important;font-size:12px!important;font-weight:800!important;letter-spacing:.5px!important}
  .fv-public-body .fv-footer a{color:#9eacc0!important;font-size:12px!important;line-height:1.4!important}
  .fv-public-body .fv-footer p{display:block!important;color:#91a0b5!important;font-size:11px!important;line-height:1.7!important}
  .fv-public-body .fv-footer .footer-trust-row{gap:7px!important}
  .fv-public-body .fv-footer .footer-trust-row span{color:#a8b7cc!important}
  .fv-public-body .fv-footer-bottom{width:100%!important;max-width:100%!important;align-items:flex-start!important;flex-direction:column!important;gap:8px!important;margin-top:30px!important;padding:18px 0 0!important;border-top:1px solid #22324d!important;color:#7f8fa7!important}
  .fv-public-body .lc-hero{padding:22px 18px!important}
  .fv-public-body .lc-hero h1{font-size:23px!important;overflow-wrap:anywhere}
  .fv-public-body .lc-meta{grid-template-columns:1fr!important}
  .fv-public-body .lc-head-actions{width:100%!important;display:grid!important;grid-template-columns:1fr 1fr!important}
  .fv-public-body .lc-pref-toggle{width:100%!important;min-width:0!important}
  .fv-public-body .lc-messages{min-height:340px!important;max-height:62vh!important}
}

@media(max-width:430px){
  .fv-public-body .fv-nav-search input::placeholder{font-size:0}
  .fv-public-body .fv-nav-search input::placeholder{color:transparent}
  .fv-public-body .fv-footer{padding:34px 17px 20px!important}
  .fv-public-body .fv-footer-grid{grid-template-columns:1fr!important;gap:0!important}
  .fv-public-body .fv-footer-brand{grid-column:auto!important;padding-bottom:24px!important}
  .fv-public-body .fv-footer-grid>div:not(.fv-footer-brand){padding:20px 0!important;border-top:1px solid rgba(255,255,255,.08)!important}
  .fv-public-body .fv-footer .footer-trust-row{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:7px!important}
  .fv-public-body .fv-footer .footer-trust-row span{width:auto!important;max-width:100%!important;white-space:nowrap!important}
  .fv-public-body :is(.modal,.promo-modal,.dialog,.popup,.offer-modal){width:calc(100vw - 20px)!important;max-width:calc(100vw - 20px)!important}
  .fv-public-body .lc-head-actions{grid-template-columns:1fr!important}
}

/* Homepage: Promoted & recent digital accounts */
@media(max-width:560px){
  .fv-public-body .mp-listing-section,.fv-public-body .mp-list{width:100%!important;max-width:100%!important;min-width:0!important;overflow:hidden!important}
  .fv-public-body .mp-list-row{box-sizing:border-box!important;width:100%!important;max-width:100%!important;min-width:0!important;grid-template-columns:48px minmax(0,1fr)!important;gap:12px!important;padding:16px 14px!important;overflow:hidden!important}
  .fv-public-body .mp-platform{grid-column:1!important;grid-row:1!important;width:48px!important;height:48px!important}
  .fv-public-body .mp-list-info{grid-column:2!important;grid-row:1!important;min-width:0!important;max-width:100%!important;overflow:hidden!important}
  .fv-public-body .mp-list-badges{display:flex!important;flex-wrap:wrap!important;gap:5px!important;max-width:100%!important;margin-bottom:8px!important}
  .fv-public-body .mp-list-badges span{max-width:100%!important;white-space:nowrap!important}
  .fv-public-body .mp-list-title{display:-webkit-box!important;max-width:100%!important;overflow:hidden!important;white-space:normal!important;overflow-wrap:anywhere!important;word-break:break-word!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;line-height:1.4!important;text-overflow:ellipsis!important}
  .fv-public-body .mp-list-meta{max-width:100%!important;gap:6px 12px!important;overflow:hidden!important}
  .fv-public-body .mp-list-price{grid-column:2!important;grid-row:2!important;min-width:0!important;padding-top:4px!important}
  .fv-public-body .mp-list-seller{display:none!important}
  .fv-public-body .mp-view{grid-column:1/-1!important;grid-row:3!important;display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;max-width:100%!important;min-height:42px!important;margin-top:2px!important;padding:10px 12px!important;overflow:visible!important}
}

@media(hover:none){
  .fv-public-body a,.fv-public-body button,.fv-public-body summary{touch-action:manipulation}
  .fv-public-body button,.fv-public-body [role=button],.fv-public-body summary{min-height:42px}
}
