/* ========================================================================== 
   NETBÁS V5.3.1 · PROFESSIONAL POLISH + CONTRAST SAFETY
   Loaded after app-v53.css so legacy component colors cannot accidentally
   leave light text on light surfaces.
   ========================================================================== */
:root{
  --nb531-text:#14251e;
  --nb531-muted:#65736b;
  --nb531-subtle:#7d8982;
  --nb531-border:#dfe5df;
  --nb531-surface:#ffffff;
  --nb531-soft:#f6f8f4;
  --nb531-dark:#123f31;
  --nb531-dark-muted:#d6e3dc;
}

/* Global readability */
body.site-body{color:var(--nb531-text);font-size:15.5px;line-height:1.62}
::selection{background:var(--accent);color:var(--ink)}
input,select,textarea{color:var(--nb531-text);caret-color:var(--brand)}
input::placeholder,textarea::placeholder{color:#7c8881;opacity:1}
:disabled{opacity:.62}

/* Explicit contrast for every common light surface. */
:where(.panel,.table-wrap,.account-sidebar,.sidebar,.product-card,.home-product-card,.value-card,.info-card-grid article,.process-grid article,.faq-list details,.growth-card,.account-card-row,.family-profile-card,.cms-edit-card,.pickup-admin-card,.plan-card-v51:not(.pro):not(.recommended),.featured-day-options-v51 span,.payment-choice>span,.seller-tool-card-v51,.referral-kpis-v511 article,.store-filter-v44,.account-quick-v49,.account-kpi){color:var(--nb531-text)}
:where(.panel,.table-wrap,.account-sidebar,.sidebar,.product-card,.home-product-card,.value-card,.info-card-grid article,.process-grid article,.faq-list details) :where(h1,h2,h3,h4,h5,h6){color:var(--nb531-text)}
.table,.table td{color:var(--nb531-text)}
.table th{color:#66746c}
.table-empty,.empty-state,.cell-sub,.table-sub{color:var(--nb531-muted)}

/* Dark surfaces always receive an explicit light text palette. */
:where(.hero-card,.legal-callout:not(.warning),.seller-sales-card,.account-home-hero-v49,.plan-card-v51.pro,.plan-selector-v51 .plan-card-v51.recommended,.featured-plan-banner-v51,.onboarding-intro-v49,.support-message.staff,.ticket-message.staff){color:#fff}
:where(.hero-card,.legal-callout:not(.warning),.seller-sales-card,.account-home-hero-v49,.plan-card-v51.pro,.plan-selector-v51 .plan-card-v51.recommended,.featured-plan-banner-v51,.onboarding-intro-v49,.support-message.staff,.ticket-message.staff) :where(h1,h2,h3,h4,strong,b){color:#fff}
:where(.hero-card,.legal-callout:not(.warning),.seller-sales-card,.account-home-hero-v49,.plan-card-v51.pro,.plan-selector-v51 .plan-card-v51.recommended,.featured-plan-banner-v51,.onboarding-intro-v49) :where(p,small){color:var(--nb531-dark-muted)}
:where(.seller-sales-card,.account-home-hero-v49,.onboarding-intro-v49) .eyebrow{color:#c9d9d1}

/* Buttons: never inherit unreadable text from a parent card. */
.btn{color:var(--nb531-text)}
.btn.primary,.btn.primary:hover{color:#fff}
.btn.accent,.btn.accent:hover{color:var(--ink)}
.btn.seller-outline{color:#fff}
.btn.seller-outline:hover{color:#fff}

/* Account and transactional surfaces */
.account-context-bar,.account-footer-v49{color:var(--nb531-text)}
.account-context-bar span{color:var(--nb531-muted)}
.account-context-bar strong,.account-context-bar nav a{color:var(--nb531-text)}
.account-home-hero-v49 .btn:not(.accent){color:#fff}
.account-home-hero-v49 .btn.accent{color:var(--ink)}
.account-sidebar{box-shadow:0 12px 34px rgba(18,51,40,.055)}
.account-nav a{min-height:46px}

/* Support conversations: staff replies are deliberately dark, customer replies light. */
.support-message:not(.staff),.ticket-message:not(.staff){color:var(--nb531-text)}
.support-message.staff header,.ticket-message.staff header{color:#edf5f1}
.support-message.staff p,.ticket-message.staff p{color:#fff}

/* Legal / trust content */
.legal-hero p{color:#5c6b63}
.legal-content p,.process-grid p,.info-card-grid p{color:#56655d}
.legal-callout:not(.warning) .eyebrow{color:#c6d8cf}
.legal-callout:not(.warning) h2{color:#fff}

/* More polished About page */
.about-trust-v531{display:grid;grid-template-columns:1.05fr .95fr;gap:18px;margin-top:22px}
.about-trust-v531>article{padding:28px;border:1px solid var(--nb531-border);border-radius:22px;background:#fff;box-shadow:0 10px 32px rgba(18,51,40,.045)}
.about-trust-v531>article:first-child{background:linear-gradient(145deg,#123f31,#1b5442);border-color:#123f31;color:#fff}
.about-trust-v531>article:first-child h2,.about-trust-v531>article:first-child strong{color:#fff}
.about-trust-v531>article:first-child p,.about-trust-v531>article:first-child li{color:#d6e4dc}
.about-trust-v531 h2{margin:7px 0 10px;font-size:26px;letter-spacing:-.8px}
.about-trust-v531 p{margin:0;color:var(--nb531-muted)}
.about-trust-v531 ul{display:grid;gap:9px;margin:18px 0 0;padding:0;list-style:none}
.about-trust-v531 li{display:flex;align-items:flex-start;gap:9px;color:#506057}
.about-trust-v531 li .fa-icon{margin-top:4px;color:var(--accent)}
.about-trust-v531>article:last-child li .fa-icon{color:var(--brand)}

/* Footer copy and links */
.footer-v481{color:#edf5f1}
.footer-v481 a{color:inherit}
.footer-v481 .footer-brand p,.footer-v481 .footer-bottom,.footer-v481 .footer-top>div>a{color:#c8d8d0}
.footer-newsletter-v481 input{background:#fff;color:var(--nb531-text)}
.footer-newsletter-v481 input::placeholder{color:#78857e}

@media(max-width:760px){
  body.site-body{font-size:15px}
  .about-trust-v531{grid-template-columns:1fr}
}

/* --------------------------------------------------------------------------
   V5.3.1 contrast guardrails
   Older component styles may set a child to white even after its parent was
   moved onto a light surface. These rules make the palette explicit at the
   text-node level rather than relying on inheritance.
   -------------------------------------------------------------------------- */
.badge{display:inline-flex;align-items:center;width:max-content;padding:4px 8px;border:1px solid #dfe5df;border-radius:999px;background:#f1f4f0;color:#526159;font-size:11px;font-weight:850;line-height:1.2}
.badge.success{background:var(--success-soft);border-color:#d0e8d8;color:var(--success)}
.badge.warning{background:var(--warning-soft);border-color:#f0dfb7;color:var(--warning)}
.badge.danger{background:var(--danger-soft);border-color:#efceca;color:var(--danger)}
.badge.info{background:var(--info-soft);border-color:#cee3ec;color:var(--info)}
.badge.muted{background:#f1f3ef;border-color:#e1e5df;color:#59665f}

:where(.panel,.table-wrap,.account-sidebar,.sidebar,.product-card,.home-product-card,.value-card,.info-card-grid article,.process-grid article,.faq-list details,.growth-card,.account-card-row,.family-profile-card,.cms-edit-card,.pickup-admin-card,.seller-tool-card-v51,.referral-kpis-v511 article,.store-filter-v44,.account-quick-v49,.account-kpi,.address-card-v47,.checkout-form-card,.checkout-summary,.offer-box,.inactive-summary,.buyer-welcome-card) :where(p,small,label,li,dd,dt){color:var(--nb531-muted)}
:where(.panel,.table-wrap,.account-sidebar,.sidebar,.product-card,.home-product-card,.value-card,.info-card-grid article,.process-grid article,.faq-list details,.growth-card,.account-card-row,.family-profile-card,.cms-edit-card,.pickup-admin-card,.seller-tool-card-v51,.referral-kpis-v511 article,.store-filter-v44,.account-quick-v49,.account-kpi,.address-card-v47,.checkout-form-card,.checkout-summary,.offer-box,.inactive-summary,.buyer-welcome-card) :where(strong,b,h1,h2,h3,h4,h5,h6){color:var(--nb531-text)}
:where(.panel,.table-wrap,.account-sidebar,.sidebar,.product-card,.home-product-card,.value-card,.info-card-grid article,.process-grid article,.faq-list details,.growth-card,.account-card-row,.family-profile-card,.cms-edit-card,.pickup-admin-card,.seller-tool-card-v51,.referral-kpis-v511 article,.store-filter-v44,.account-quick-v49,.account-kpi,.address-card-v47,.checkout-form-card,.checkout-summary,.offer-box,.inactive-summary,.buyer-welcome-card) a:not(.btn):not(.status-badge){color:var(--brand)}

/* Preserve intentional dark cards after the light-surface guardrails. */
:where(.hero-card,.legal-callout:not(.warning),.seller-sales-card,.account-home-hero-v49,.plan-card-v51.pro,.plan-selector-v51 .plan-card-v51.recommended,.featured-plan-banner-v51,.onboarding-intro-v49,.support-message.staff,.ticket-message.staff) :where(p,small,label,li,dd,dt){color:var(--nb531-dark-muted)}
:where(.hero-card,.legal-callout:not(.warning),.seller-sales-card,.account-home-hero-v49,.plan-card-v51.pro,.plan-selector-v51 .plan-card-v51.recommended,.featured-plan-banner-v51,.onboarding-intro-v49,.support-message.staff,.ticket-message.staff) :where(strong,b,h1,h2,h3,h4,h5,h6){color:#fff}

/* Accessible interaction states are part of readability too. */
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid rgba(90,126,24,.38);outline-offset:2px}
.btn:disabled,.btn[aria-disabled="true"]{background:#e7ebe6!important;border-color:#d8ded8!important;color:#6c7871!important;box-shadow:none!important}

/* Long labels and translated status text must wrap instead of disappearing. */
.status-badge,.badge,.mini-tag,.role-chip{max-width:100%;white-space:normal;text-align:center}
.table td,.table th{overflow-wrap:anywhere}
.account-nav a,.footer-v481 a{overflow-wrap:anywhere}
.about-trust-v531>article:first-child .eyebrow{color:#c9dcd2}
.btn.danger,.btn.danger:hover{color:#fff}
