/* Dark mode overrides. Loaded after theme.css. Gated on prefers-color-scheme,
   so light mode renders exactly as before (zero regression).
   Covers the hardcoded light surfaces/text in styles.css + configurator.css,
   mapped to an off-black mint family. The deep-green hero/journey sections
   already read well on dark and are left alone except for minor contrast. */
{
  :root{
    --ink:#e8f1ea;--green:#7fd9c4;--accent:#7fd9c4;--sage:#123b33;--muted:#9db8ac;
    --paper:#0e1a16;--soft:#13241f;--line:#26463c;--white:#0e1a16;
    --teal:#3fd0b4;--coral:#ff9d7f;--reference-shadow:0 2px 20px rgba(0,0,0,.45)
  }
  body{color:var(--ink)!important;background:#0e1a16!important}
  .site-header{background:#13241fd9!important;border-color:#26463c!important}
  .nav-links a{color:#9db8ac!important}.nav-links a:hover{color:#7fd9c4!important}
  .language-menu{background:#13241f!important;border-color:#26463c!important;box-shadow:0 12px 40px rgba(0,0,0,.4)!important}
  .language-menu button:hover,.language-menu button[aria-current=true]{background:#0f332c!important}
  .button,.button-small{background:#1b4332!important;border-color:#1b4332!important;color:#e8f1ea!important}
  .button:hover{background:#2c5649!important;box-shadow:none!important}
  .serene{color:#5fd9c0!important}.muted{color:#9db8ac!important}
  .eyebrow,.mini-label,.text-link{color:#7fd9c4!important}
  .status-dot,.small-dot{background:#3fd0b4!important}
  .hero{background:transparent}
  .hero-description,.section-intro{color:#9db8ac!important}
  .hero-facts>div{border-color:#26463c!important}.hero-facts>div>span:last-child{color:#9db8ac!important}
  .fact-mark{color:#5fd9c0!important}
  .care-card,.care-mint{background:#13241f!important}
  .care-card>p:not(.mini-label){color:#9db8ac!important}
  .card-icon,.card-icon svg{color:#3fd0b4!important;stroke:#3fd0b4!important}
  .care-note{color:#9db8ac!important}
  .section-heading h2{color:var(--ink)}
  .stay-card{background:#13241f!important}.stay-copy p,.stay-price span{color:#9db8ac!important}
  .fine-print{color:#8c9187!important}
  .plan-card{background:#13241f!important;border-color:#26463c!important;box-shadow:var(--reference-shadow)!important}
  .plan-card.is-selected{background:#0f332c!important;border-color:#3fd0b4!important;box-shadow:0 0 0 1px #3fd0b4!important}
  .plan-name,.plan-card li{color:#9db8ac!important}.plan-card li::before{color:#7fd9c4!important}
  .plan-description{color:#9db8ac!important}
  .plan-tag{background:#3fd0b4!important;color:#0e1a16!important}
  .plan-select{border-color:#3fd0b4!important;color:#e8f1ea!important;background:#13241f!important}
  .plan-select:hover{background:#0f332c!important}
  .is-selected .plan-select,.is-selected .plan-select:hover{background:#1b4332!important;border-color:#1b4332!important;color:#e8f1ea!important}
  .plan-service-label{color:#9db8ac!important;border-color:#26463c!important}
  .about-section{background:#122620!important}
  .about-description p,.about-values p{color:#9db8ac!important}.about-values>div>span{color:#5fd9c0!important}
  .family-options span{border-color:#2c5a4d!important;color:#9db8ac!important;background:transparent!important}
  .contact-section{background:#122620!important}.contact-section p:not(.eyebrow){color:#9db8ac!important}
  .contact-caption{color:#8c9187!important}
  .faq-list details,.faq-list details:first-child{border-color:#26463c!important}
  .faq-list summary{color:#e8f1ea!important}.faq-list summary::after{color:#7fd9c4!important}
  .faq-list details>p{color:#9db8ac!important}
  footer{background:#0b1410!important}.footer-top .brand{color:#e8f1ea!important}
  .footer-top>p,.footer-link,.footer-disclaimer,.footer-bottom{color:#9db8ac!important}
  .footer-disclaimer{border-color:#ffffff20!important}.footer-top .brand-cn{color:#7fbfa8!important}
  .quote-builder{background:#13241f!important}
  .quote-controls h3{color:#e8f1ea!important}.quote-intro,.quote-summary>p{color:#9db8ac!important}
  .quote-summary{background:#0f332c!important}
  .quote-line,.quote-total>span,.summary-label{color:#9db8ac!important}
  .quote-line{border-color:transparent}
  .quote-total strong{color:#5fd9c0!important}
  .quote-controls label>span{color:#b8c9bd!important}
  input:not([type=checkbox]),select{border-color:#26463c!important;background:#0e1a16!important;color:#e8f1ea!important}
  input[type=checkbox]{accent-color:#7fd9c4!important}
  .extras{border-color:#26463c!important}.extras input:not([type=checkbox]){background:#0e1a16!important}
  /* Journey deep section: keep dark, just brighten text slightly */
  .journey-section{background:#0e1a16!important}
  .journey-heading>p{color:#9db8ac!important}
  .stage-tab{color:#9db8ac!important}.stage-tab[aria-selected=true]{color:#e5edcb!important;border-color:#3fd0b4!important}
  .stage-number{color:#7fd9c4!important}.stage-time{color:#9db8ac!important}
  .stage-panel .stage-description,.stage-services li{color:#9db8ac!important}
  .stage-services h4{color:#c6e4d7!important}
  .journey-footnote>span{color:#9db8ac!important}
  .stage-arrows button{color:#c6e4d7!important;border-color:#26463c!important}
  /* Configurator (plan pages) */
  body[data-page=configure]{background:#0e1a16!important;color:#e8f1ea!important}
  .plan-local-nav{background:#13241fd9!important;border-color:#26463c!important}
  .back-to-plans,.config-heading h1>span,.config-heading>div:last-child,.step-description,
  .gallery-caption>span,.gallery-description,.gallery-assurances,.custom-number>span:first-child,
  .number-with-unit>span,.config-tax-note,.config-exclusions,.review-selections>div>span,
  .config-final-total>span,.bar-plan>span,.bar-plan a,.bar-total>span{color:#9db8ac!important}
  .config-heading h1,.config-step legend,.config-review h2,.detail-section-heading h2,.detail-other-plans h2{color:#e8f1ea!important}
  .gallery-stage{background:#0f332c!important}
  .gallery-thumbs button{background:#0e1a16!important}
  .gallery-thumbs button[aria-pressed=true]{border-color:#3fd0b4!important;box-shadow:0 0 0 1px #3fd0b4!important}
  .config-option{background:#0e1a16!important;border-color:#26463c!important;box-shadow:var(--reference-shadow)!important;color:#e8f1ea!important}
  .config-option:hover{border-color:#3fd0b4!important}
  .config-option.selected{background:#0f332c!important;border-color:#3fd0b4!important;box-shadow:0 0 0 1px #3fd0b4!important}
  .option-text>strong{color:#e8f1ea!important}.option-text>span{color:#9db8ac!important}
  .option-price{color:#ffb497!important}
  .option-check{color:#7fd9c4!important}
  .number-with-unit input,.extra-number>input{background:#0e1a16!important;color:#e8f1ea!important}
  .config-review{background:#13241f!important;border-color:#26463c!important;box-shadow:var(--reference-shadow)!important}
  .review-selections,.review-breakdown,.service-scope,.detail-stage-list,.detail-stage-list details{border-color:#26463c!important}
  .review-selections strong,.config-final-total strong,.bar-total>strong{color:#5fd9c0!important}
  .configuration-bar{background:#13241ff0!important;border-color:#26463c!important;box-shadow:0 -4px 20px rgba(0,0,0,.4)!important}
  .detail-service-section,.detail-other-plans{background:#122620!important}
  .detail-feature-grid>article,.other-plan{background:#0e1a16!important;border-color:#26463c!important;box-shadow:var(--reference-shadow)!important}
  .detail-feature-grid h3,.detail-stage-list summary>strong{color:#e8f1ea!important}
  .detail-feature-grid li,.detail-feature-grid li::before,.detail-stage-body>p,.detail-stage-body li{color:#9db8ac!important}
  .detail-journey{background:#0e1a16!important}
  .service-scope h3{color:#e8f1ea!important}.service-scope p{color:#9db8ac!important}
  .other-plan>strong{color:#e8f1ea!important}.other-plan>span:last-child{color:#7fd9c4!important}
  .other-plan:hover{border-color:#3fd0b4!important}
  .detail-stage-list summary>span{color:#9db8ac!important}.detail-stage-list summary>b{color:#7fd9c4!important}
  .detail-stage-body h4{color:#c6e4d7!important}
  /* Dialog + toast */
  dialog{background:#13241f!important;color:#e8f1ea!important;box-shadow:0 30px 100px rgba(0,0,0,.6)!important}
  dialog h2{color:#e8f1ea!important}.dialog-close{background:#0f332c!important;color:#e8f1ea!important}
  .dialog-intro,.consent>span,dialog label>span,#privacy-dialog>p:not(.eyebrow),#inquiry-success p{color:#9db8ac!important}
  .attached-quote{background:#0f332c!important;color:#7fd9c4!important}
  .success-icon{background:#0f332c!important;color:#7fd9c4!important}
  .toast{background:#1b4332!important;color:#e8f1ea!important}
  #reference-number{color:#5fd9c0!important}
}
