/* VakantiesFrankrijk v10.1.21 — account routes, invoices and mobile audit. */

/* Private account screens do not need the public floating share control. */
body.woocommerce-account .vf900-share,
body.vf10120-settings-page .vf900-share{
  display:none!important;
}

/* One stable two-column account shell on desktop. */
html body.vf900-clean.woocommerce-account .vf910-page-content > .woocommerce,
html body.vf900-clean.woocommerce-account .woocommerce{
  display:grid!important;
  grid-template-columns:250px minmax(0,1fr)!important;
  align-items:start!important;
  gap:24px!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}
html body.vf900-clean.woocommerce-account .woocommerce-MyAccount-navigation{
  display:block!important;
  grid-column:1!important;
  width:100%!important;
  min-width:0!important;
  float:none!important;
  position:sticky!important;
  top:96px!important;
  margin:0!important;
}
html body.vf900-clean.woocommerce-account .woocommerce-MyAccount-content{
  display:block!important;
  grid-column:2!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  float:none!important;
  margin:0!important;
}
html body.vf900-clean.woocommerce-account.vf10121-account-no-nav .woocommerce{
  grid-template-columns:minmax(0,1fr)!important;
}
html body.vf900-clean.woocommerce-account.vf10121-account-no-nav .woocommerce-MyAccount-content{
  grid-column:1!important;
}

/* Free-plan gate: forms and links stay together and do not collapse. */
html body.vf900-clean .vf10118-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:10px!important;
}
html body.vf900-clean .vf10118-actions form{
  display:block!important;
  width:auto!important;
  margin:0!important;
}
html body.vf900-clean .vf10118-actions :is(a,button){
  min-height:44px!important;
}

/* Responsive invoices / payments renderer. */
html body.vf900-clean .vf10121-orders-panel{
  width:100%!important;
  min-width:0!important;
  padding:0!important;
}
html body.vf900-clean .vf10121-orders-head{
  margin:0 0 18px!important;
  padding:0 0 18px!important;
  border-bottom:1px solid rgba(104,35,64,.12)!important;
}
html body.vf900-clean .vf10121-orders-head h1{
  margin:7px 0 8px!important;
  color:var(--vf-wine-dark)!important;
  font-family:var(--vf-serif)!important;
  font-size:clamp(31px,4vw,46px)!important;
  font-weight:500!important;
  line-height:1.05!important;
}
html body.vf900-clean .vf10121-orders-head p{
  margin:0!important;
  color:#675a5f!important;
}
html body.vf900-clean .vf10121-orders-empty{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:18px!important;
  width:100%!important;
  min-height:132px!important;
  padding:22px!important;
  border:1px solid rgba(104,35,64,.13)!important;
  border-radius:14px!important;
  background:#fffaf5!important;
  box-shadow:0 10px 24px rgba(50,28,36,.06)!important;
}
html body.vf900-clean .vf10121-orders-empty > span{
  display:grid!important;
  place-items:center!important;
  width:46px!important;
  height:46px!important;
  border-radius:50%!important;
  background:#f2e4e9!important;
  color:#682340!important;
  font-size:22px!important;
}
html body.vf900-clean .vf10121-orders-empty h2{
  margin:0 0 5px!important;
  color:var(--vf-wine-dark)!important;
  font-family:var(--vf-serif)!important;
  font-size:25px!important;
  font-weight:500!important;
}
html body.vf900-clean .vf10121-orders-empty p{margin:0!important;color:#675a5f!important}
html body.vf900-clean .vf10121-orders-list{
  display:grid!important;
  gap:12px!important;
}
html body.vf900-clean .vf10121-order-card{
  display:grid!important;
  grid-template-columns:minmax(180px,.8fr) minmax(260px,1.35fr) auto!important;
  align-items:center!important;
  gap:20px!important;
  padding:18px!important;
  border:1px solid rgba(104,35,64,.13)!important;
  border-radius:13px!important;
  background:#fffdfb!important;
  box-shadow:0 8px 20px rgba(50,28,36,.045)!important;
}
html body.vf900-clean .vf10121-order-card__top{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
}
html body.vf900-clean .vf10121-order-card small,
html body.vf900-clean .vf10121-order-meta small{
  display:block!important;
  margin:0 0 3px!important;
  color:#8a777f!important;
  font-size:10px!important;
  font-weight:750!important;
  letter-spacing:.05em!important;
  text-transform:uppercase!important;
}
html body.vf900-clean .vf10121-order-card strong{
  color:var(--vf-wine-dark)!important;
  font-size:14px!important;
}
html body.vf900-clean .vf10121-order-status{
  display:inline-flex!important;
  align-items:center!important;
  min-height:28px!important;
  padding:0 10px!important;
  border-radius:999px!important;
  background:#f3e6eb!important;
  color:#682340!important;
  font-size:10px!important;
  font-weight:800!important;
  white-space:nowrap!important;
}
html body.vf900-clean .vf10121-order-status.is-completed{background:#e7f4ed!important;color:#245f3d!important}
html body.vf900-clean .vf10121-order-status.is-cancelled,
html body.vf900-clean .vf10121-order-status.is-failed{background:#fae8e8!important;color:#8d2f36!important}
html body.vf900-clean .vf10121-order-meta{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:16px!important;
}
html body.vf900-clean .vf10121-order-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:flex-end!important;
  gap:8px!important;
}
html body.vf900-clean .vf10121-orders-pagination{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:12px!important;
  margin:18px 0 0!important;
}

/* Settings labels and controls must remain readable after plugin markup changes. */
html body.vf900-clean.vf10120-settings-page .vf10120-settings-form :is(label,.hp-field__label){
  min-height:18px!important;
  color:#351822!important;
  font-size:12px!important;
  font-weight:750!important;
}
html body.vf900-clean.vf10120-settings-page .vf10120-settings-form .hp-form__footer{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
}

/* Mobile account audit: full-width content, horizontally scrollable account tabs,
   one-column forms and buttons that never overlap. */
@media(max-width:900px){
  html body.vf900-clean.woocommerce-account .vf910-page{
    width:min(100% - 24px,1180px)!important;
  }
  html body.vf900-clean.woocommerce-account .vf910-page-content{
    padding:14px!important;
  }
  html body.vf900-clean.woocommerce-account .vf910-page-content > .woocommerce,
  html body.vf900-clean.woocommerce-account .woocommerce{
    grid-template-columns:minmax(0,1fr)!important;
    gap:14px!important;
  }
  html body.vf900-clean.woocommerce-account .woocommerce-MyAccount-navigation{
    grid-column:1!important;
    position:static!important;
    width:100%!important;
    padding:8px!important;
    overflow:hidden!important;
  }
  html body.vf900-clean.woocommerce-account .woocommerce-MyAccount-navigation ul{
    display:flex!important;
    flex-wrap:nowrap!important;
    gap:7px!important;
    width:100%!important;
    overflow-x:auto!important;
    overscroll-behavior-x:contain!important;
    scroll-snap-type:x proximity!important;
    scrollbar-width:thin!important;
    padding:0 0 4px!important;
  }
  html body.vf900-clean.woocommerce-account .woocommerce-MyAccount-navigation li{
    flex:0 0 auto!important;
    scroll-snap-align:center!important;
  }
  html body.vf900-clean.woocommerce-account .woocommerce-MyAccount-navigation a{
    min-height:40px!important;
    padding:0 13px!important;
    white-space:nowrap!important;
  }
  html body.vf900-clean.woocommerce-account .woocommerce-MyAccount-content{
    grid-column:1!important;
    width:100%!important;
    padding:18px!important;
  }
  html body.vf900-clean .vf549-section-head,
  html body.vf900-clean .vf549-account-hero,
  html body.vf900-clean .vf10118-grid,
  html body.vf900-clean .vf10118-grid--three,
  html body.vf900-clean .vf550-form-grid--2,
  html body.vf900-clean .vf550-form-grid--3,
  html body.vf900-clean .vf550-form-grid--4,
  html body.vf900-clean .vf550-form-grid--5,
  html body.vf900-clean .vf550-check-grid{
    grid-template-columns:minmax(0,1fr)!important;
  }
  html body.vf900-clean .vf549-section-head{
    align-items:flex-start!important;
    flex-direction:column!important;
  }
  html body.vf900-clean .vf549-section-head > a{
    width:100%!important;
  }
  html body.vf900-clean .vf10121-order-card{
    grid-template-columns:minmax(0,1fr)!important;
    gap:14px!important;
  }
  html body.vf900-clean .vf10121-order-actions{
    justify-content:flex-start!important;
  }
}

@media(max-width:620px){
  html body.vf900-clean.woocommerce-account .vf910-page{
    width:calc(100% - 16px)!important;
    padding-top:12px!important;
  }
  html body.vf900-clean.woocommerce-account .vf910-page-header{
    padding:18px!important;
  }
  html body.vf900-clean.woocommerce-account .vf910-page-header h1{
    font-size:36px!important;
  }
  html body.vf900-clean.woocommerce-account .vf910-page-content{
    padding:8px!important;
    border-radius:13px!important;
  }
  html body.vf900-clean.woocommerce-account .woocommerce-MyAccount-content{
    padding:14px!important;
    border-radius:13px!important;
  }
  html body.vf900-clean .vf10118-actions,
  html body.vf900-clean .vf10118-actions form,
  html body.vf900-clean .vf10118-actions :is(a,button),
  html body.vf900-clean .vf10121-order-actions,
  html body.vf900-clean .vf10121-order-actions :is(a,button){
    width:100%!important;
  }
  html body.vf900-clean .vf10121-orders-empty{
    grid-template-columns:minmax(0,1fr)!important;
    align-items:start!important;
    padding:18px!important;
  }
  html body.vf900-clean .vf10121-orders-empty > a{
    width:100%!important;
  }
  html body.vf900-clean .vf10121-order-card__top{
    align-items:flex-start!important;
    flex-direction:column!important;
  }
  html body.vf900-clean .vf10121-order-meta{
    grid-template-columns:minmax(0,1fr)!important;
  }
  html body.vf900-clean .vf10121-orders-pagination{
    flex-wrap:wrap!important;
  }
  html body.vf900-clean.vf10120-settings-page .vf10120-settings-form .hp-form__footer,
  html body.vf900-clean.vf10120-settings-page .vf10120-settings-form .hp-form__footer :is(a,button,input){
    width:100%!important;
  }
}
