/* Bleu nuit / ardoise / champagne. Screen only: documents keep their print colors. */
@media screen {
:root{color-scheme:dark;--night-bg:#101923;--night-surface:#192735;--night-raised:#223446;--night-text:#f1eee7;--night-muted:#bec9d3;--night-gold:#e0c18b;--night-border:#65788b;--bg:var(--night-bg);--ink:var(--night-text);--muted:var(--night-muted);--white:var(--night-surface);--navy:#142337;--teal:var(--night-gold);--line:#425568;--mint:#b7e4d3;--negative:#ffb4a5;--negative-bg:#3b2529;--positive-bg:#163b34;background:var(--night-bg);color:var(--night-text)}
html body,html body.courses-page{background:var(--night-bg);color:var(--night-text)}
body{background-image:radial-gradient(ellipse at 85% 0%,#24384966,transparent 52%)}
a{color:var(--night-gold)}
h1,h2,h3,h4,.editorial-main h1,.reader-article h3,.grouped-paths h3,.reader-prose strong,.field-label,.method-content h3,.balance-number strong,.module-purpose strong{color:var(--night-text)}
/* Navigation remains quiet; links and keyboard focus stay conspicuous. */
.topbar,body .topbar{background:#101923;border-top-color:#c7a66e;border-bottom-color:#425568;color:var(--night-text)}
.topbar .brand,.topbar .course-topnav a,.courses-page .topbar .brand,.courses-page .topbar .course-topnav a{color:var(--night-text)}
.topbar .brand-mark,.courses-page .topbar .brand-mark{background:#233447;color:var(--night-gold);border-color:#c7a66e}
.courses-page .topbar .course-topnav a:hover,.course-topnav a[aria-current=page],.topbar a:hover{color:var(--night-gold)}
.editorial-footer,footer{background:#0c141d;color:var(--night-muted);border-color:#425568}.editorial-footer a,.legal-footer a{color:var(--night-gold)}
/* Reading, guides, offers and calculators share the same surface palette. */
.panel,.property,.document-card,.course-card,.course-offer,.offer,.offer-card,.offer-upgrade,.home-last,.journey li,.resource-links a,.lesson-section,.lesson,.exercise,.worksheet,.module-sources,.lesson-nav,.path-links a,.advisor-note,.start-here,.course-finder,.finder-card,.learning-feature,.reader-section,.reader-chart,.reader-overview,.reader-case,.sensitivity,.airbnb-layout fieldset,.airbnb-results,.input-section,.input-section .field,.input-section .number-field,.lmnp-table-mobile article,.pdf-library a,.concierge-options,.lesson-section details,.reader-case-grid>div,.course-lab,.lab-metrics>div,.visual-reading>div{background:var(--night-surface);color:var(--night-text);border-color:#425568;box-shadow:none}
.offer-complete,.featured{background:#1e3040;border-color:#c7a66e}
.private-note,.preparation-note,.offer-state,.launch,.chip,.doc-access,.example-box,.fee-help p,.fee-total,.table-wrap th,thead th,th,.irl-table th,.lmnp-comparison tbody tr:nth-child(even),.input-section>summary,.grouped-paths .topic-group,.reader-flow li,.reader-key,.reader-prose .reader-callout,.reader-prose .reader-example,.reader-legend,.reader-action,.lab-explanation,.visual-takeaway,.learning-intro aside,.learning-action,.artisan-example,.legal-draft,.method-content,.negotiation-control,.metrics>div,.lab-bar-track,.bar-track{background:var(--night-raised);color:var(--night-text);border-color:#425568}
.course-inclusions,.pack-panel,.pack-content,.proof-panel,.result-panel,.fee-answer,.cashflow-card,.metric,.result-focus,.free-strip,.path-discovery,.learning-roadmap,.start-grid a{background:#203548;color:var(--night-text);border-color:#52697e}
.pack-content{background:#1a2b3c}.cashflow-card{background:linear-gradient(125deg,#203548,#172938)}
.pack-panel h2,.pack-panel h3,.proof-panel h2,.fee-answer strong,.cashflow-top h2,.reader-key h3{color:var(--night-text)}
.file-button,.card,#status{background:var(--night-raised);color:var(--night-text);border-color:var(--night-border)}.card span,.note{color:var(--night-muted)}.card[aria-pressed=true]{border-color:var(--night-gold)}.error,.danger{color:#ffb4a5}
/* The room estimator has its own ID-level light background in business.css. */
#travaux-estimator{background:var(--night-surface);color:var(--night-text);border:1px solid #526477}
#travaux-estimator .works-room{background:#142331;color:var(--night-text);border-color:#65788b}
#travaux-estimator legend,#travaux-estimator summary,#travaux-estimator h3,#travaux-estimator .works-field>span{color:var(--night-text)}
#travaux-estimator .field-explanation{color:var(--night-muted)}
#travaux-estimator .works-totals>div{padding:14px;background:var(--night-raised);color:var(--night-text);border:1px solid #526477;border-radius:8px}
#travaux-estimator .works-totals strong{color:var(--night-gold)}
#travaux-estimator th,#travaux-estimator td{color:var(--night-text);border-color:#65788b}
#travaux-estimator input,#travaux-estimator select{background:#111e2b;color:var(--night-text);border-color:#8296aa}
#insurance-monthly{display:block;color:var(--night-gold);font-weight:650;margin:8px 0}
#insurance-choice{display:block;margin-top:8px;line-height:1.65;color:var(--night-muted)}
#insurance-choice a{color:var(--night-gold)}
/* Secondary copy is deliberately bright enough for small text. */
.quiet,.intro,.hint,small,.topbar-note,.editorial-hero figcaption,.editorial-visual figcaption,.editorial-photo figcaption,.benefit-row span,.benefit-row .benefit-link small,.document-card p,.resource-links span,.offer-card .offer-limit,.offer-closed,.offer-status,.pack-status,.pack-list span,.pack-format,.finder-card span,.reader-updated,.reader-toc nav a,.reader-prose .reader-intro,.reader-chart figcaption,.reader-article .quiet,.source-note,.scenario-fields small,.field-explanation,.input-section .hint,.input-section .field-explanation,.suffix,.derived-row,.auto-fields small,.grouped-paths .topic-context,.path-discovery .topic-context,.learning-intro aside p,.business-banner p,.metrics span,.metrics small,.chart-scale,.lab-metrics dt,.lab-chart figcaption span,.module-content .chart-key,.module-content .lab-method p,.module-content .lab-local-note,#cashflow-comment,.cashflow-bottom span,.balance-number span,.comparison-heading>p,td .detail,.negotiation-scale,.cash-metrics dt,.start-grid span,.legal-list dd{color:var(--night-muted)}
.eyebrow,.module-content .eyebrow,.path-discovery .eyebrow,.offer-card .offer-kicker,.offer-card .offer-amount,.offer-prices strong,.finder-group,.finder-card small,.advisor-note strong,.card-index,.card-bottom a,.reader-toc nav a>span,.reader-number,.reader-key-icon,.reader-example::before,.reader-checklist li>span:first-child,.visual-reading h3 span,.fee-help summary,.lmnp-table-mobile dt,.journey li::before,.journey li a::before,.result-panel strong,.metric strong,.pack-price strong,.proof-panel aside>strong,.course-inclusions strong,.works-totals strong,.negotiation-heading output,.section-number,.module-sources a{color:var(--night-gold)}
/* Fields: contrast also applies to the edge, placeholder and selection state. */
input,select,textarea,.editorial-main input,.editorial-main select,.editorial-main textarea,.input-wrap input,input[type=text],.number-field input,.number-field select,.works-field input,.works-field select,.course-finder input{background:#111e2b;color:var(--night-text);border-color:#8296aa;accent-color:var(--night-gold)}
input::placeholder,textarea::placeholder{color:#aebdca;opacity:1}
input:hover,select:hover,textarea:hover,.input-wrap input:hover{background:#172838;border-color:#b7c5d2}
input[type=range],#negotiation{background:#52697e;accent-color:var(--night-gold)}
input[type=checkbox],input[type=radio]{accent-color:var(--night-gold)}
button,.button,.button.secondary,.offer-card .button,.irl-table button,.project-list button,.scenario-button,.lesson-nav button,.path-tabs a,.learning-shortcuts a,.free-strip .learning-shortcuts a,#travaux-estimator button{background:#23394b;color:var(--night-text);border-color:#8296aa}
.button.course-primary,.course-primary,.offer-complete .button,.course-inclusions .course-primary,.pack-panel .button,.proof-panel .button,#travaux-estimator button[data-apply="central"]{background:var(--night-gold);color:#142337;border-color:var(--night-gold)}
.button.course-primary:hover,.course-primary:hover,.offer-complete .button:hover,.pack-panel .button:hover{background:#efdab2;color:#142337}
.button:hover,button:hover,.offer-card .button:hover,.irl-table button:hover,.project-list button:hover,.lesson-nav button:hover,.finder-card:hover,.reader-toc a:hover,.reader-toc a[aria-current],.journey li a:hover,.learning-shortcuts a:hover,.start-grid a:hover{background:#334d63;color:var(--night-text)}
.project-list button[aria-pressed=true],.path-tabs a[aria-current=page]{background:var(--night-gold);color:#142337;border-color:var(--night-gold)}
/* Status never relies on color alone: existing labels and signs are retained. */
.error-message,.validation,#errors,.reader-prose .reader-warning,.learning-pitfall,.decision-card{background:#3b2529;color:#ffb4a5;border-color:#dc8d80}
.success-message,.lab-metrics .is-positive,.cashflow-card.positive .cashflow-value strong{color:#a7e5ca}
.lab-metrics .is-negative,.cashflow-card.negative .cashflow-value strong,.button.danger,.scenario-button.negative,#travaux-estimator [role="alert"]{color:#ffb4a5}
.decision-card.passes{background:#163b34;border-color:#6fb89c}.decision-card.passes h2,.decision-card.passes .eyebrow{color:#a7e5ca}.decision-card h2,.decision-card .eyebrow{color:#ffb4a5}
.source,.access-badge{background:#25465b;color:#cce9fa}.dpe{background:#493b1c;color:#ffe3a2}
.bar,.lab-bar{background:#8ed5bd}.bar.outflow,.lab-bar.is-negative{background:#e5a092}
.lmnp-comparison tbody th{color:var(--night-text)}.lmnp-comparison thead th,.lmnp-table-mobile h3{background:#294257;color:var(--night-text)}
td,th,.lmnp-comparison tbody td,.lmnp-comparison tbody th,.irl-table td,.irl-table th{border-color:#526477}td:first-child{color:var(--night-text)}tfoot,tfoot td,#startup-summary tr:nth-last-child(2),.rental-table tbody tr:nth-child(3){background:#243b4b;color:var(--night-text)}
/* Existing illustrations contain their own dark lettering. Keep their canvas light. */
.reader-chart img,#car-result svg,.charts-grid svg,.lesson-visual img{background:#f1f4f7;color:#142337;border-radius:6px}.lab-chart{background:var(--night-surface);color:var(--night-text)}.lab-chart figcaption span{color:var(--night-muted)}
.skip-link{background:var(--night-gold);color:#142337;z-index:10000}
body :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid #f6d89e;outline-offset:4px;box-shadow:0 0 0 2px #101923}
::selection{background:#e0c18b;color:#142337}
}
/* Accessibility improvements apply to every theme and viewport. */
.skip-link{position:absolute;left:16px;top:-200px;padding:12px 16px;z-index:10000}.skip-link:focus{top:16px}
html{scroll-padding-top:2rem}main{scroll-margin-top:1rem}main:focus{outline:none}
button,.button,input:not([type=checkbox]):not([type=radio]):not([type=range]),select,summary{min-height:44px}
button,.button{white-space:normal}summary{cursor:pointer}
.table-wrap:focus-visible{outline:3px solid #e0c18b;outline-offset:4px}
@media(max-width:700px){.reader-layout{grid-template-columns:1fr}.reader-toc,.lesson-nav{position:static}.reader-toc nav{max-height:none}.topbar{position:static}.topbar .course-topnav a{font-size:1rem}.workspace{grid-template-columns:1fr}main,section,article,form,fieldset{min-width:0}.reader-actions{min-width:0}.table-wrap{max-width:100%;overflow:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important}}
@media(forced-colors:active){.button,button,input,select,textarea{border:1px solid ButtonText}a{text-decoration:underline}:focus-visible{outline:3px solid Highlight!important}.brand-mark{border:1px solid CanvasText}}

/* Explicit surfaces prevent inherited dark-theme text on light components. */
@media screen {
body .option-picker,body .option-panel,body .ceiling-reference{background:#192735;color:#f1eee7;border-color:#8296aa}
body .option-picker{border:1px solid #8296aa}body .option-panel{border-left-color:#e0c18b}
body .option-picker label,body .option-panel label,body .option-panel strong{color:#f1eee7}
body #rental-results td:last-child{background:#163b34;color:#f1eee7}
body .works-financing+small{color:#bec9d3}
body input[type=checkbox]{appearance:none;-webkit-appearance:none;display:inline-block;width:22px;height:22px;min-width:22px;min-height:22px;padding:0;flex:none;vertical-align:middle;background:#111e2b;border:2px solid #bec9d3;border-radius:4px;cursor:pointer}
body input[type=checkbox]:checked{background-color:#e0c18b;border-color:#e0c18b;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M4 10l4 4 8-9' fill='none' stroke='%23101923' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
body input[type=checkbox]:disabled{cursor:not-allowed;opacity:.65}
body svg[data-chart-surface=light]{background:#f1f4f7;color:#142337;border:1px solid #8296aa;border-radius:6px}
body svg[data-chart-surface=light] text{fill:#142337;font-family:system-ui,sans-serif;font-size:15px}
body svg[data-chart-surface=dark]{background:#192735;color:#f1eee7;border:1px solid #8296aa;border-radius:6px}
body svg[data-chart-surface=dark] text{fill:#f1eee7}
}
@media(forced-colors:active){body input[type=checkbox]{appearance:auto;-webkit-appearance:auto;background-image:none;border-color:ButtonText}body svg[data-chart-surface] text{fill:CanvasText}}

.field-guide{display:block;font-size:.8rem;font-weight:400;margin:5px 0 3px;text-decoration:underline}.project-return{position:sticky;top:8px;z-index:40;padding:12px 16px;margin:0 0 20px;background:#192735;border:1px solid #e0c18b;border-radius:6px}.project-return a{color:#f1eee7;font-weight:650}.project-return a:focus-visible{outline:3px solid #e0c18b}@media print{.project-return,.field-guide{display:none}}

.works-financing{flex-wrap:wrap}.works-financing .field-guide{flex-basis:100%;margin-left:30px}

@media screen{.fiscal-warning,.reader-prose .fiscal-warning{padding:20px;border:1px solid #e0c18b;border-left:4px solid #e0c18b;border-radius:6px;background:#302c24;color:#f1eee7;margin:18px 0}.fiscal-warning h3,.reader-prose .fiscal-warning h3{color:#f3d9a8}.fiscal-warning a{color:#f3d9a8}}
