/* Forest and warm ivory palettes; photographic assets retain their natural colours. */
:root{color-scheme:light}.hero .hero-video{background:#09251c}
.theme-toggle{display:grid;place-items:center;flex-shrink:0;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;font-size:20px;color:var(--ink);background:transparent}
.theme-toggle:hover{background:#8ba77120}
html[data-theme=dark]{color-scheme:dark;--ink:#e0e9d6;--green:#335f46;--muted:#adbcaa;--cream:#101e18;--lime:#d0e497;--line:#354b3b}
html[data-theme=dark] body{background:var(--cream);color:var(--ink)}
html[data-theme=dark] .site-header{background:#11251b;border-color:var(--line)}
html[data-theme=dark] :is(.mission-strip,.impact-section,.plan-section){background:#172a20}
html[data-theme=dark] :is(.donation-card,.inline-contribution,dialog,.empty-state){background:#182b21;border-color:var(--line);color:var(--ink)}
html[data-theme=dark] :is(.bank-details,.availability,.amount-option,.amount-input){background:#20382a;border-color:#40583e;color:var(--ink)}
html[data-theme=dark] .amount-option.selected{background:#344b2d;border-color:#b3cf85}
html[data-theme=dark] :is(form input:not([type=checkbox]),form textarea){background:#12231a;color:#e0e9d6;border-color:#496044}
html[data-theme=dark] input::placeholder{color:#8a9d87}
html[data-theme=dark] .contribution-layout .donation-card{background:transparent}
html[data-theme=dark] .inline-contribution .amount-input #custom-amount{background:transparent;color:#e0e9d6}
html[data-theme=dark] .giving-tree{background:radial-gradient(ellipse at 50% 60%,#31432b,#16271d 75%)}
html[data-theme=dark] .tree-empty{background:#203527e8;color:#dce7d2}
html[data-theme=dark] :is(.donation-ledger-row,.plan-notice,.footer-bottom,.contribution-nature){border-color:var(--line)}
html[data-theme=dark] :is(.fine-print,.photo-credit,.source-note,.si-meaning,.verified-label){color:#a6b89e}
html[data-theme=dark] :is(.receipt-leaf,.giving-leaf){color:#21412c}
html[data-theme=dark] .brand-divider{background:#496044}
@media(max-width:650px){.header-actions{gap:8px}.theme-toggle{width:32px;height:32px;font-size:18px}.header-actions .button{max-width:112px;padding:9px 8px}}

/* Complete dark palette: explicit secondary text and readable light receipt leaves. */
html[data-theme=dark]{--muted:#bdcbb6;--line:#486044}
html[data-theme=dark] :is(.site-header nav,.language,.language button,.language button.active){color:#d0ddc7}
html[data-theme=dark] .site-header nav a:hover{color:#e2efba}
html[data-theme=dark] :is(.strip-inner div span,.progress-top small,.progress-bottom,.impact-stats span,.map-top,.handwritten,.donation-trust>span,.amount-option small,.input-label,.amount-input,.seed-equivalent,.availability p,.donor-date,.donor-value small,.footer-bottom,.boundary-credit,.ledger-heading>span,.donation-ledger-row time){color:#bdcbb6}
html[data-theme=dark] :is(.green-text,.step-number,.ledger-leaf){color:#c4dda4}
html[data-theme=dark] :is(.fine-print,.photo-credit,.source-note,.si-meaning,.verified-label,.donate-heading h2 .si-meaning,#transfer-form small){color:#b8c9ae}
html[data-theme=dark] .contribution-nature p{color:#dfebd1}
html[data-theme=dark] .contribution-nature{background:radial-gradient(ellipse,#30472c,transparent 72%)}
html[data-theme=dark] .contribution-layout #transfer-amount{color:#e0ca96}
html[data-theme=dark] .currency-pill{background:#30452f;color:#d4e1c6}
html[data-theme=dark] :is(.payment-status,.demo-journey){background:#213a29;border-color:#4b6743;color:#e3edd9}
html[data-theme=dark] .demo-totals strong{color:#e0edce}
html[data-theme=dark] .demo-pill{color:#eddaaa}
html[data-theme=dark] .donor-avatar{background:#32492e;color:#d7e7be}
html[data-theme=dark] .progress-track{background:#354a31}
html[data-theme=dark] .progress-track>span{background:#b2d47d}
html[data-theme=dark] .form-error{color:#ffb8a8!important}
html[data-theme=dark] :is(input,textarea,select):focus-visible{outline:2px solid #d0e497;outline-offset:3px}
html[data-theme=dark] input[type=file]::file-selector-button{background:#d0e497;color:#193c30;border:0;border-radius:4px;padding:8px 12px;margin-right:12px;cursor:pointer}
html[data-theme=dark] input[type=checkbox]{accent-color:#c5df95}
html[data-theme=dark] :is(.receipt-leaf strong,.receipt-leaf .leaf-amount,.receipt-leaf>span:not(.receipt-leaf-icon)){color:#21412b}
html[data-theme=dark] .receipt-leaf small{color:#405736}
html[data-theme=dark] .receipt-leaf .receipt-leaf-icon{color:#355d2c!important}
html[data-theme=dark] .receipt-leaf .si-meaning{color:#405736}
html[data-theme=dark] .dialog-close{color:#d5e2c8}
html[data-theme=dark] dialog :is(h2,h3,label){color:#e0e9d6}
/* A pale cartographic surface preserves province and seedling contrast. */
html[data-theme=dark] #island-map{background:#e8eedf;border-radius:18px;color:#24422e}
html[data-theme=dark] #island-map text{fill:#38553c}
html[data-theme=dark] :is(.map-legend,.map-legend>span){color:#c8d7bd}
html[data-theme=dark] :is(.empty-state,.donation-ledger-row,.plan-notice,.inline-contribution,.donation-card){border-color:#486044}
html[data-theme=dark] .button{background:#3f6d4c;color:#fff}
html[data-theme=dark] .button:hover{background:#507f5b}
html[data-theme=dark] .button.lime{background:#d0e497;color:#254130}
html[data-theme=dark] .button.lime:hover{background:#e0edb7}
html[data-theme=dark] a:focus-visible,html[data-theme=dark] button:focus-visible{outline-color:#d0e497}

/* Original full-colour wordmark needs an ivory surface on dark backgrounds. */
html[data-theme=dark] :is(.site-header .brand,.footer-top .brand)>img{background:#f4f6e9;border:1px solid #e0e7cf;border-radius:14px;padding:7px;object-fit:contain;box-sizing:content-box;box-shadow:0 3px 14px #0002;filter:none;opacity:1;flex-shrink:0}
html[data-theme=dark] .site-header .brand>img{width:100px;height:65px}
html[data-theme=dark] .footer-top .brand>img{width:100px;height:67px}
@media(max-width:650px){html[data-theme=dark] .site-header .brand>img{width:70px;height:47px;padding:5px;border-radius:10px}html[data-theme=dark] .site-header .brand{gap:8px}}

/* Multiply blending was tinting the entire logo into the dark header. */
html[data-theme=dark] :is(.site-header .brand,.footer-top .brand)>img{mix-blend-mode:normal;isolation:isolate;filter:none;opacity:1}

/* Transparent full-colour brand; depth comes from shadows, never a white tile. */
.brand .brand-logo-transparent{display:block;width:108px;height:72px;flex-shrink:0;overflow:visible;background:none;border:0;padding:0;filter:drop-shadow(0 3px 2px #0003);transform:perspective(600px) rotateY(-3deg)}
html[data-theme=dark] .brand .brand-logo-transparent{filter:drop-shadow(0 5px 3px #0008) drop-shadow(0 0 1px #e9f7bf99);background:none;mix-blend-mode:normal}
.footer-top .brand .brand-logo-transparent{width:108px;height:72px}
@media(max-width:650px){.site-header .brand .brand-logo-transparent{width:80px;height:54px}}

/* Reuse the intro's living emblem with the same colour, light and independent motion. */
.brand .living-brand-logo{filter:brightness(1.12) saturate(1.08) drop-shadow(0 4px 3px #0005);transform:perspective(600px) rotateY(-3deg)}
html[data-theme=dark] .brand .living-brand-logo{filter:brightness(1.12) saturate(1.08) drop-shadow(0 5px 3px #0008) drop-shadow(0 0 1px #c3e3a344)}
.brand .living-brand-logo .logo-leaf-sway{animation:logo-breeze-living 4.8s ease-in-out infinite}
.brand .living-brand-logo .logo-water-flow{animation:logo-current-living 5.7s ease-in-out infinite}
.brand .living-brand-logo .logo-sun-drift{animation:logo-sunlight 8s ease-in-out infinite}
@media(prefers-reduced-motion:reduce){.brand .living-brand-logo *{animation:none!important}.brand .living-brand-logo{transform:none}}


/* Bank card values and labels need their own dark-theme foreground colours. */
html[data-theme=dark] #bank-details{background:#20382a;border-color:#54704b;color:#f0f5e8}
html[data-theme=dark] #bank-details .bank-label{color:#c9d8be;font-weight:500}
html[data-theme=dark] #bank-details .bank-value{color:#f0f5e8;font-weight:700;opacity:1;overflow-wrap:anywhere}
html[data-theme=dark] #bank-details .bank-row{border-bottom-color:#50664a}
html[data-theme=dark] #bank-details .bank-copy-btn{background:#d0e497;color:#173b2a;border:1px solid #dcebb5}
html[data-theme=dark] #bank-details .bank-copy-btn:hover{background:#e3efc6}
html[data-theme=dark] #bank-details .bank-copy-btn:focus-visible{outline:2px solid #f0f5e8;outline-offset:3px}
