/* Theme-aware illustration and control colours, shared by the DEV public pages. */
:root{
 --context-surface:#29352f;
 --icon-surface:#29352f;
 --portfolio-surface:#35443c;
 --on-accent:#111514;
 --chart-gold:#ffd047;
 --chart-blue:#94adc7;
 --chart-other:#809288;
 --negative:#e6a896;
 --control-border:#718179;
 --focus-ring:#ffd047;
 --wordmark-accent:#ffd047;
}
:root[data-theme=light]{
 --muted:#53645b;
 --teal:#08745c;
 --context-surface:#e7f0eb;
 --icon-surface:#e2eee7;
 --portfolio-surface:#e2eee7;
 --on-accent:#fff;
 --chart-gold:#8c6500;
 --chart-blue:#496d7f;
 --chart-other:#65756c;
 --negative:#a3472c;
 --control-border:#73847b;
 --focus-ring:#08745c;
 --wordmark-accent:#8c6500;
}

/* The context card used to retain its dark background after the text turned dark. */
.ai-message-context .ai-bubble{background:var(--context-surface);color:var(--ink)}
.ai-bubble p{color:var(--ink)}
.ai-message-label{color:var(--muted)}
.ai-bubble strong{color:var(--teal)}
.ai-avatar{background:var(--teal);color:var(--on-accent)}
.portfolio-avatar{background:var(--portfolio-surface);color:var(--teal)}
.recap-icon{background:var(--icon-surface);color:var(--teal)}
.solution-icon,.masthead .solution-icon{background:var(--icon-surface);color:var(--teal)}
.wordmark>span{color:var(--wordmark-accent)}

/* Keep series visible on either paper colour without changing the CTA yellow. */
.flow-sketch path:nth-child(2),.fire-sketch path:nth-child(3){stroke:var(--chart-gold)}
.flow-sketch path:nth-child(3),.fire-sketch path:nth-child(4){stroke:var(--chart-blue)}
.flow-sketch path:nth-child(4){stroke:var(--chart-other)}
.allocation-display svg>circle:first-child{stroke:var(--chart-other)}
.allocation-display svg>circle:nth-child(3){stroke:var(--chart-gold)}
.allocation-display li:nth-child(2) i{background:var(--chart-gold)}
.allocation-display li:nth-child(3) i{background:var(--chart-other)}
.overlap-viz circle:nth-child(2){stroke:var(--chart-gold);fill:var(--chart-gold)}
.income-bars>div:nth-child(3n) i{background:var(--chart-gold)}
.motion-account:nth-child(2) i{background:var(--chart-gold)}
.motion-account:nth-child(3) i{background:var(--chart-blue)}
.networth-ledger>div:nth-child(4) dd{color:var(--negative)}

/* Shared UI surfaces also adapt on calculator and feature entry points. */
.solutions-panel{background:var(--paper);color:var(--ink);border-color:var(--rule)}
.solutions-menu-item:hover{background:var(--surface)}
.solutions-group-label{color:var(--teal)}
.solutions-menu-item strong,.solutions-tools-link strong{color:var(--ink)}
.solutions-menu-item small,.solutions-tools-link small{color:var(--muted)}
.solutions-menu-shortcuts,.solution-badge,.demo-badge,.motion-story{border-color:var(--rule)}
.solution-tool-entry{background:var(--surface);color:var(--ink);border-color:var(--rule)}
.solution-tool-entry>a{color:var(--teal)}
.solution-tool-entry>span{color:var(--muted)}
.solution-tool-entry .solution-tool-secondary{color:var(--ink)}
.solution-tool-entry .solution-tool-primary{background:var(--yellow);color:#111514}
.demo-invitation{background:var(--surface);border-color:var(--rule)}
.closing{background:var(--soft);border-color:var(--rule)}
.marketing-plan-badge,.marketing-blog-filters button[aria-pressed=true],.tool-filters button[aria-pressed=true]{color:var(--on-accent)}
.tool-browser>input,.marketing-search input{border-color:var(--control-border)}
.tool-browser>input::placeholder,.marketing-search input::placeholder{color:var(--muted);opacity:1}
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible,
.solutions-nav summary:focus-visible,.tool-filters button:focus-visible,.tool-browser input:focus-visible,
.menu-toggle:focus-visible,.marketing-page button:focus-visible,.marketing-page input:focus-visible{outline-color:var(--focus-ring)}

/* Article charts use the same local palette while preserving their content. */
.marketing-article{--ww-yellow:var(--chart-gold);--ww-amber:var(--chart-gold);--ww-red:var(--negative);--ww-rose:var(--negative);--ww-slate:var(--chart-blue)}
@media print{
 :root{--paper:#fff;--surface:#f5f7f5;--soft:#edf3ef;--ink:#17221c;--muted:#53645b;--teal:#08745c;--context-surface:#e7f0eb;--icon-surface:#e2eee7;--portfolio-surface:#e2eee7;--on-accent:#fff;--chart-gold:#8c6500;--chart-blue:#496d7f;--chart-other:#65756c;--negative:#a3472c;--wordmark-accent:#8c6500}
}
