/* =========================================================
   Airbrush Some Stuff V162 — final contrast repair
   Loaded after the legacy/editorial/neon layers so surface text
   always matches the actual surface it sits on.
   ========================================================= */
:root{
  --v162-dark:#061016;
  --v162-panel:#08171d;
  --v162-panel-2:#0b2028;
  --v162-white:#f7fbfc;
  --v162-copy:#b9cbd1;
  --v162-muted:#93aab2;
  --v162-teal:#12e5df;
  --v162-ink:#101a1f;
  --v162-copy-dark:#45565d;
  --v162-paper:#fffaf1;
  --v162-line:rgba(18,229,223,.18);
}

/* Never let the global neon heading rule paint white type onto light V110 sections. */
body.v149-theme .v110-projects.light{color:var(--v162-ink)!important}
body.v149-theme .v110-projects.light :is(h1,h2,h3,h4,strong,b){color:var(--v162-ink)!important;-webkit-text-fill-color:var(--v162-ink)!important}
body.v149-theme .v110-projects.light :is(p,li){color:var(--v162-copy-dark)!important;-webkit-text-fill-color:var(--v162-copy-dark)!important}
body.v149-theme .v110-projects.light .v110-single-copy span{color:#007f91!important;-webkit-text-fill-color:#007f91!important}
body.v149-theme .v110-projects.light .v110-single-copy a{color:#031013!important;-webkit-text-fill-color:#031013!important}

/* Editorial light cards: lock all readable text to dark values. */
body.v149-theme :is(
  .pc-tool-grid a,
  .opportunity-card,
  .fundraiser-card,
  .season-card,
  .content-columns article,
  .use-case-grid article,
  .learn-article-grid a,
  .school-model-grid article,
  .school-opportunity-grid article,
  .design-service-grid article,
  .file-guide article,
  .prep-knowledge-grid article,
  .method-detail-grid article,
  .price-guide-grid article:not(.price-feature),
  .learn-topic-grid article,
  .knowledge-grid article,
  .event-setup-strip article,
  .event-questions article,
  .file-delivery-grid article,
  .bundle-grid article,
  .fundraiser-models article,
  .decision-tree a,
  .cs106-service,
  .puzzle-panel,
  .print-pack,
  .dtf-design-note,
  .v97-card:not(.dark),
  .v97-metric,
  .v97-table-wrap,
  .v97-training article,
  .v97-summary div
){color:var(--v162-ink)!important}
body.v149-theme :is(
  .pc-tool-grid a,
  .opportunity-card,
  .fundraiser-card,
  .season-card,
  .content-columns article,
  .use-case-grid article,
  .learn-article-grid a,
  .school-model-grid article,
  .school-opportunity-grid article,
  .design-service-grid article,
  .file-guide article,
  .prep-knowledge-grid article,
  .method-detail-grid article,
  .price-guide-grid article:not(.price-feature),
  .learn-topic-grid article,
  .knowledge-grid article,
  .event-setup-strip article,
  .event-questions article,
  .file-delivery-grid article,
  .bundle-grid article,
  .fundraiser-models article,
  .decision-tree a,
  .cs106-service,
  .puzzle-panel,
  .print-pack,
  .dtf-design-note,
  .v97-card:not(.dark),
  .v97-metric,
  .v97-table-wrap,
  .v97-training article,
  .v97-summary div
) :is(h1,h2,h3,h4,h5,strong,b,label){color:var(--v162-ink)!important;-webkit-text-fill-color:var(--v162-ink)!important;opacity:1!important}
body.v149-theme :is(
  .pc-tool-grid a,
  .opportunity-card,
  .fundraiser-card,
  .season-card,
  .content-columns article,
  .use-case-grid article,
  .learn-article-grid a,
  .school-model-grid article,
  .school-opportunity-grid article,
  .design-service-grid article,
  .file-guide article,
  .prep-knowledge-grid article,
  .method-detail-grid article,
  .price-guide-grid article:not(.price-feature),
  .learn-topic-grid article,
  .knowledge-grid article,
  .event-setup-strip article,
  .event-questions article,
  .file-delivery-grid article,
  .bundle-grid article,
  .fundraiser-models article,
  .decision-tree a,
  .cs106-service,
  .puzzle-panel,
  .print-pack,
  .dtf-design-note,
  .v97-card:not(.dark),
  .v97-metric,
  .v97-table-wrap,
  .v97-training article,
  .v97-summary div
) :is(p,li,span,small){color:var(--v162-copy-dark)!important;-webkit-text-fill-color:var(--v162-copy-dark)!important;opacity:1!important}

/* Dark planning/forms. The older editorial sheet turned these white while the newer neon layer kept their type white. */
body.v149-theme :is(.project-form,.tool-form,.pc-wizard-form,.capacity-calculator,.deadline-tool){
  background:linear-gradient(145deg,#08171d,#061016)!important;
  color:var(--v162-white)!important;
  border:1px solid var(--v162-line)!important;
  box-shadow:0 22px 64px rgba(0,0,0,.28)!important;
}
body.v149-theme :is(.project-form,.tool-form,.pc-wizard-form,.capacity-calculator,.deadline-tool) :is(h1,h2,h3,h4,strong,b){color:var(--v162-white)!important;-webkit-text-fill-color:var(--v162-white)!important;opacity:1!important}
body.v149-theme :is(.project-form,.tool-form,.pc-wizard-form,.capacity-calculator,.deadline-tool) :is(p,li){color:var(--v162-copy)!important;-webkit-text-fill-color:var(--v162-copy)!important;opacity:1!important}
body.v149-theme :is(.project-form,.tool-form,.pc-wizard-form,.capacity-calculator,.deadline-tool) label{color:#d2e1e5!important;-webkit-text-fill-color:#d2e1e5!important;opacity:1!important}
body.v149-theme :is(.project-form,.tool-form,.pc-wizard-form,.capacity-calculator,.deadline-tool) .eyebrow{color:var(--v162-teal)!important;-webkit-text-fill-color:var(--v162-teal)!important}
body.v149-theme :is(.project-form,.tool-form,.pc-wizard-form,.capacity-calculator,.deadline-tool) :is(input,select,textarea){background:#0b171d!important;color:#fff!important;-webkit-text-fill-color:#fff!important;border:1px solid #29454e!important;caret-color:#fff!important}
body.v149-theme :is(.project-form,.tool-form,.pc-wizard-form,.capacity-calculator,.deadline-tool) :is(input,textarea)::placeholder{color:#8ea3aa!important;-webkit-text-fill-color:#8ea3aa!important;opacity:1!important}
body.v149-theme :is(.project-form,.tool-form,.pc-wizard-form,.capacity-calculator,.deadline-tool) select option{background:#0b171d!important;color:#fff!important}

/* Group-order / process cards were especially vulnerable to white-on-cream overrides. Keep them dark and explicit. */
body.v149-theme :is(.process-roadmap,.group-order-checklist,.fundraiser-knowledge,.quote-factors,.production-file-table,.learn-latest,.what-next-section){color:var(--v162-white)!important}
body.v149-theme :is(.process-roadmap,.group-order-checklist,.fundraiser-knowledge,.quote-factors,.production-file-table,.learn-latest,.what-next-section) :is(h1,h2,h3,h4,strong,b){color:var(--v162-white)!important;-webkit-text-fill-color:var(--v162-white)!important;opacity:1!important}
body.v149-theme :is(.process-roadmap,.group-order-checklist,.fundraiser-knowledge,.quote-factors,.production-file-table,.learn-latest,.what-next-section) :is(p,li){color:var(--v162-copy)!important;-webkit-text-fill-color:var(--v162-copy)!important;opacity:1!important}
body.v149-theme .what-next-grid article,
body.v149-theme .check-grid article,
body.v149-theme .process-roadmap-grid article{background:var(--v162-panel)!important;color:var(--v162-white)!important;border:1px solid rgba(18,229,223,.16)!important}
body.v149-theme :is(.what-next-grid article,.check-grid article,.process-roadmap-grid article) :is(h3,strong,span){color:var(--v162-white)!important;-webkit-text-fill-color:var(--v162-white)!important;opacity:1!important}
body.v149-theme :is(.what-next-grid article,.check-grid article,.process-roadmap-grid article) p{color:#afc2c8!important;-webkit-text-fill-color:#afc2c8!important;opacity:1!important}
body.v149-theme :is(.what-next-grid article,.check-grid article,.process-roadmap-grid article) :is(b,.eyebrow){color:var(--v162-teal)!important;-webkit-text-fill-color:var(--v162-teal)!important}

/* Calculation / summary cards always use readable dark-surface copy. */
body.v149-theme :is(.calculator-card,.school-checklist,.design-proof-card,.pc-wizard-intro,.price-feature,.group-roster-card,.pricing-rule,.deadline-clock){color:var(--v162-white)!important}
body.v149-theme :is(.calculator-card,.school-checklist,.design-proof-card,.pc-wizard-intro,.price-feature,.group-roster-card,.pricing-rule,.deadline-clock) :is(h1,h2,h3,h4,strong,b){color:var(--v162-white)!important;-webkit-text-fill-color:var(--v162-white)!important}
body.v149-theme :is(.calculator-card,.school-checklist,.design-proof-card,.pc-wizard-intro,.price-feature,.group-roster-card,.pricing-rule,.deadline-clock) :is(p,li,span){color:#afc2c8!important;-webkit-text-fill-color:#afc2c8!important}
body.v149-theme :is(.calculator-card,.school-checklist,.design-proof-card,.pc-wizard-intro,.price-feature,.group-roster-card,.pricing-rule,.deadline-clock) :is(small,.eyebrow,.text-link){color:var(--v162-teal)!important;-webkit-text-fill-color:var(--v162-teal)!important}

/* DTF collection/dialog: keep the intentionally pale art canvas dark-text, while its dark copy panel stays white-text. */
body.v149-theme .dtf-dialog-art{color:var(--v162-ink)!important}
body.v149-theme .dtf-dialog-copy :is(h1,h2,h3,strong,b){color:#fff!important;-webkit-text-fill-color:#fff!important}
body.v149-theme .dtf-dialog-copy p{color:#c5d2d6!important;-webkit-text-fill-color:#c5d2d6!important}

/* Footer: increase low-contrast muted copy without making every link pure white. */
body.v149-theme .site-footer.v141-simple-footer :is(p,span,small){color:#afc1c7!important;-webkit-text-fill-color:#afc1c7!important}
body.v149-theme .site-footer.v141-simple-footer a{color:#edf7f8!important;-webkit-text-fill-color:#edf7f8!important}
body.v149-theme .v141-footer-directory :is(h2,h3,h4,strong){color:#fff!important;-webkit-text-fill-color:#fff!important}
body.v149-theme .v141-footer-directory a{color:#dce9ec!important;-webkit-text-fill-color:#dce9ec!important}
body.v149-theme .v141-footer-directory a:hover{color:var(--v162-teal)!important;-webkit-text-fill-color:var(--v162-teal)!important}

/* Accessibility: text that was intentionally muted must still clear a useful visual threshold. */
body.v149-theme:not(.page-kids-zone) main :is(.muted,.subtle,.helper,.fine-print,.note){opacity:1!important}

/* Inputs on explicit light form utilities need dark text rather than inherited white text. */
body.v149-theme :is(.v97-form-light,.v97-sample-tools) :is(input,select,textarea){background:#fff!important;color:#111b20!important;-webkit-text-fill-color:#111b20!important}
body.v149-theme :is(.v97-form-light,.v97-sample-tools) :is(input,textarea)::placeholder{color:#66777e!important;-webkit-text-fill-color:#66777e!important;opacity:1!important}

@media(max-width:720px){
  body.v149-theme :is(.project-form,.tool-form,.pc-wizard-form,.capacity-calculator,.deadline-tool){box-shadow:none!important}
}
