/**
 * Photoprompt customer account / WooCommerce dashboard.
 * Keep the whole account surface inside the Photoprompt palette in both themes.
 */
body.pp-account-route{
  --pp-account-bg:var(--pp-bg);
  --pp-account-panel:var(--pp-surface);
  --pp-account-panel-2:var(--pp-surface-2);
  --pp-account-text:var(--pp-text);
  --pp-account-muted:var(--pp-text-muted);
  --pp-account-border:var(--pp-border-soft);
  --pp-account-accent:#CD542F;
  --pp-account-accent-hover:#B94727;
  background:var(--pp-account-bg)!important;
  color:var(--pp-account-text)!important;
}

html[data-pp-theme='dark'] body.pp-account-route{
  --pp-account-panel:#17191B;
  --pp-account-panel-2:#202327;
  --pp-account-text:#F5F1EC;
  --pp-account-muted:#C8C2BA;
  --pp-account-border:rgba(245,241,236,.14);
  --pp-account-accent:#D65B32;
  --pp-account-accent-hover:#E56A40;
}

body.pp-account-route #main,
body.pp-account-route #primary,
body.pp-account-route .site-main,
body.pp-account-route .ct-container,
body.pp-account-route .ct-container-full{
  background:var(--pp-account-bg)!important;
  color:var(--pp-account-text)!important;
}

body.pp-account-route .woocommerce{
  display:grid!important;
  grid-template-columns:minmax(220px,258px) minmax(0,1fr)!important;
  gap:clamp(28px,4vw,72px)!important;
  align-items:start!important;
  width:min(100% - 32px,1540px)!important;
  margin-inline:auto!important;
  padding:clamp(34px,5vw,76px) 0 clamp(70px,8vw,120px)!important;
}

body.pp-account-route .woocommerce::before,
body.pp-account-route .woocommerce::after{display:none!important}

/* Navigation: no WooCommerce blue, no white-on-white entries. */
body.pp-account-route .woocommerce-MyAccount-navigation{
  float:none!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  border:1px solid var(--pp-account-border)!important;
  background:var(--pp-account-panel)!important;
  box-shadow:0 22px 55px rgba(0,0,0,.08)!important;
  overflow:hidden!important;
}
html[data-pp-theme='dark'] body.pp-account-route .woocommerce-MyAccount-navigation{
  box-shadow:0 28px 70px rgba(0,0,0,.30)!important;
}
body.pp-account-route .woocommerce-MyAccount-navigation ul{
  list-style:none!important;
  margin:0!important;
  padding:0!important;
}
body.pp-account-route .woocommerce-MyAccount-navigation li{
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-bottom:1px solid var(--pp-account-border)!important;
  background:transparent!important;
}
body.pp-account-route .woocommerce-MyAccount-navigation li:last-child{border-bottom:0!important}
body.pp-account-route .woocommerce-MyAccount-navigation a{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  min-height:54px!important;
  padding:0 18px 0 52px!important;
  background:var(--pp-account-panel)!important;
  color:var(--pp-account-text)!important;
  -webkit-text-fill-color:var(--pp-account-text)!important;
  font:650 14px/1.15 var(--pp-sans)!important;
  letter-spacing:-.01em!important;
  text-decoration:none!important;
  border:0!important;
  transition:background .2s ease,color .2s ease,padding .25s var(--pp-ease)!important;
}
body.pp-account-route .woocommerce-MyAccount-navigation a::before{
  color:var(--pp-account-muted)!important;
  opacity:.88!important;
}
body.pp-account-route .woocommerce-MyAccount-navigation li:not(.is-active) a:hover,
body.pp-account-route .woocommerce-MyAccount-navigation li:not(.is-active) a:focus-visible{
  background:var(--pp-account-panel-2)!important;
  color:var(--pp-account-text)!important;
  -webkit-text-fill-color:var(--pp-account-text)!important;
  padding-left:56px!important;
}
body.pp-account-route .woocommerce-MyAccount-navigation li.is-active a{
  background:var(--pp-account-accent)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-weight:760!important;
}
body.pp-account-route .woocommerce-MyAccount-navigation li.is-active a::before{color:#fff!important;opacity:1!important}
body.pp-account-route .woocommerce-MyAccount-navigation li.is-active a::after{
  content:'';
  position:absolute;
  inset:0 auto 0 0;
  width:4px;
  background:#F5F1EC;
  opacity:.72;
}

/* Content area. */
body.pp-account-route .woocommerce-MyAccount-content{
  float:none!important;
  width:auto!important;
  min-width:0!important;
  margin:0!important;
  padding:clamp(6px,1vw,12px) 0 0!important;
  background:transparent!important;
  border:0!important;
  color:var(--pp-account-text)!important;
  -webkit-text-fill-color:var(--pp-account-text)!important;
  box-shadow:none!important;
}
body.pp-account-route .woocommerce-MyAccount-content :where(h1,h2,h3,h4,h5,h6,strong,b,label,legend,th,td,p,li,address,small){
  color:var(--pp-account-text)!important;
  -webkit-text-fill-color:var(--pp-account-text)!important;
}
body.pp-account-route .woocommerce-MyAccount-content p,
body.pp-account-route .woocommerce-MyAccount-content li,
body.pp-account-route .woocommerce-MyAccount-content address{
  max-width:920px;
  line-height:1.65!important;
}
body.pp-account-route .woocommerce-MyAccount-content a:not(.button):not(.woocommerce-button){
  color:var(--pp-account-text)!important;
  -webkit-text-fill-color:var(--pp-account-text)!important;
  text-decoration-color:var(--pp-account-accent)!important;
  text-decoration-thickness:1px!important;
  text-underline-offset:.18em!important;
}
body.pp-account-route .woocommerce-MyAccount-content a:not(.button):not(.woocommerce-button):hover{
  color:var(--pp-account-accent)!important;
  -webkit-text-fill-color:var(--pp-account-accent)!important;
}

/* Messages and cards. */
body.pp-account-route :where(.woocommerce-message,.woocommerce-info,.woocommerce-error){
  margin:0 0 22px!important;
  padding:18px 20px!important;
  border:1px solid var(--pp-account-border)!important;
  border-left:4px solid var(--pp-account-accent)!important;
  background:var(--pp-account-panel)!important;
  color:var(--pp-account-text)!important;
  -webkit-text-fill-color:var(--pp-account-text)!important;
}
body.pp-account-route .woocommerce-error{border-left-color:#D65347!important}

body.pp-account-route :where(.woocommerce-Addresses .woocommerce-Address,.woocommerce-customer-details,address,.woocommerce-order-details,.woocommerce-order-downloads){
  background:var(--pp-account-panel)!important;
  border:1px solid var(--pp-account-border)!important;
  color:var(--pp-account-text)!important;
  padding:clamp(20px,2.5vw,34px)!important;
  box-shadow:none!important;
}

/* Tables. */
body.pp-account-route table.shop_table,
body.pp-account-route table.woocommerce-orders-table,
body.pp-account-route table.woocommerce-table{
  width:100%!important;
  border:1px solid var(--pp-account-border)!important;
  border-collapse:collapse!important;
  background:var(--pp-account-panel)!important;
  color:var(--pp-account-text)!important;
}
body.pp-account-route table :where(th,td){
  padding:15px 16px!important;
  border-color:var(--pp-account-border)!important;
  background:transparent!important;
  color:var(--pp-account-text)!important;
  -webkit-text-fill-color:var(--pp-account-text)!important;
}
body.pp-account-route table thead th{
  background:var(--pp-account-panel-2)!important;
  font:700 10px/1.2 var(--pp-mono)!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
}

/* Forms and account actions. */
body.pp-account-route :where(input:not([type='checkbox']):not([type='radio']),textarea,select){
  background:var(--pp-account-panel)!important;
  border:1px solid var(--pp-account-border)!important;
  color:var(--pp-account-text)!important;
  -webkit-text-fill-color:var(--pp-account-text)!important;
  min-height:48px!important;
  border-radius:0!important;
}
body.pp-account-route :where(input,textarea)::placeholder{
  color:var(--pp-account-muted)!important;
  -webkit-text-fill-color:var(--pp-account-muted)!important;
  opacity:.7!important;
}
body.pp-account-route :where(input,textarea,select):focus{
  border-color:var(--pp-account-accent)!important;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--pp-account-accent) 18%,transparent)!important;
  outline:0!important;
}
body.pp-account-route :where(.button,.woocommerce-button,button.button,input.button){
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:46px!important;
  padding:0 18px!important;
  border:1px solid var(--pp-account-accent)!important;
  border-radius:0!important;
  background:var(--pp-account-accent)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font:700 11px/1 var(--pp-mono)!important;
  letter-spacing:.045em!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  box-shadow:none!important;
}
body.pp-account-route :where(.button,.woocommerce-button,button.button,input.button):hover,
body.pp-account-route :where(.button,.woocommerce-button,button.button,input.button):focus-visible{
  background:var(--pp-account-accent-hover)!important;
  border-color:var(--pp-account-accent-hover)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}

/* Radio/checkbox states: remove browser blue. */
body.pp-account-route input[type='checkbox'],
body.pp-account-route input[type='radio']{accent-color:var(--pp-account-accent)!important}

/* Defensive: neutralize common Woo/Blocksy blue states inside the account UI. */
body.pp-account-route .woocommerce-MyAccount-navigation :where(a,[class*='active']),
body.pp-account-route .woocommerce-MyAccount-content :where(a,button,input,select,textarea){
  caret-color:var(--pp-account-accent)!important;
}
body.pp-account-route :where(.woocommerce-Pagination a,.woocommerce-pagination a){
  color:var(--pp-account-text)!important;
  border-color:var(--pp-account-border)!important;
  background:var(--pp-account-panel)!important;
}
body.pp-account-route :where(.woocommerce-Pagination a,.woocommerce-pagination a):hover,
body.pp-account-route :where(.woocommerce-Pagination .current,.woocommerce-pagination .current){
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  background:var(--pp-account-accent)!important;
  border-color:var(--pp-account-accent)!important;
}

@media (max-width:820px){
  body.pp-account-route .woocommerce{
    grid-template-columns:1fr!important;
    gap:24px!important;
    width:min(100% - 24px,720px)!important;
    padding-top:24px!important;
  }
  body.pp-account-route .woocommerce-MyAccount-navigation ul{
    display:flex!important;
    overflow-x:auto!important;
    scroll-snap-type:x proximity!important;
    overscroll-behavior-inline:contain!important;
    scrollbar-width:none!important;
  }
  body.pp-account-route .woocommerce-MyAccount-navigation ul::-webkit-scrollbar{display:none!important}
  body.pp-account-route .woocommerce-MyAccount-navigation li{
    flex:0 0 auto!important;
    border-bottom:0!important;
    border-right:1px solid var(--pp-account-border)!important;
    scroll-snap-align:start!important;
  }
  body.pp-account-route .woocommerce-MyAccount-navigation a{
    min-height:50px!important;
    padding:0 16px!important;
    white-space:nowrap!important;
  }
  body.pp-account-route .woocommerce-MyAccount-navigation a::before{display:none!important}
  body.pp-account-route .woocommerce-MyAccount-navigation li:not(.is-active) a:hover{padding-left:16px!important}
  body.pp-account-route .woocommerce-MyAccount-navigation li.is-active a::after{
    inset:auto 0 0 0;
    width:auto;
    height:3px;
  }
  body.pp-account-route table.shop_table,
  body.pp-account-route table.woocommerce-orders-table{
    font-size:13px!important;
  }
}

@media (max-width:520px){
  body.pp-account-route .woocommerce{width:min(100% - 20px,720px)!important}
  body.pp-account-route .woocommerce-MyAccount-content{padding-top:0!important}
  body.pp-account-route :where(.woocommerce-message,.woocommerce-info,.woocommerce-error){padding:15px 16px!important}
}

/* ========================================================================
   v3.9.4 — account notices: no WooCommerce pictograms over copy.
   The pseudo icons (including the bell) collide with text in compact cards.
   ======================================================================== */
body.pp-account-route :where(.woocommerce-message,.woocommerce-info,.woocommerce-error)::before,
body.pp-account-route :where(.woocommerce-message,.woocommerce-info,.woocommerce-error)::after{
  display:none!important;
  content:none!important;
}
body.pp-account-route :where(.woocommerce-message,.woocommerce-info,.woocommerce-error){
  padding-left:20px!important;
}

/* ========================================================================
   v3.9.5 — customer dashboard final contrast audit
   ======================================================================== */
body.pp-account-route :where(.woocommerce-message,.woocommerce-info,.woocommerce-error){
  position:relative!important;
  padding-left:20px!important;
  color:var(--pp-account-text)!important;
  -webkit-text-fill-color:var(--pp-account-text)!important;
}
body.pp-account-route :where(.woocommerce-message,.woocommerce-info,.woocommerce-error)::before,
body.pp-account-route :where(.woocommerce-message,.woocommerce-info,.woocommerce-error)::after,
body.pp-account-route :where(.woocommerce-message,.woocommerce-info,.woocommerce-error) > :where(.icon,[class*='bell'],[class*='notice-icon']){
  display:none!important;
  content:none!important;
}
body.pp-account-route .woocommerce-MyAccount-content :where(.woocommerce-Button,.button){
  white-space:normal!important;
  text-align:center!important;
}


/* v3.10.2 — keep account UI on Photoprompt typography */
body.pp-account-route :where(.woocommerce-MyAccount-navigation,.woocommerce-MyAccount-content,.woocommerce-MyAccount-content *,button,input,select,textarea,label){
  font-family:var(--pp-sans,'Helvetica Neue',Helvetica,Arial,sans-serif)!important;
}
body.pp-account-route :where(.woocommerce-MyAccount-navigation a,.button,.woocommerce-button,button.button,input.button){
  font-family:var(--pp-mono,ui-monospace,SFMono-Regular,Menlo,monospace)!important;
}
