/* 은퇴각 2026-10-18 사용자 확정 A안 — Deep Green + Sunset Amber.
   Single source for approved colors. Loaded after frozen Vercel-origin CSS.
   Only appearance/accessibility changes; no calculator DOM or model changes.
   Amber on bright backgrounds is decoration, never small body text.
*/
:root{
 --brand-green:#1B6B5C;
 --brand-amber:#E8A33D;
 --brand-cream:#FAF7F0;
 --brand-dark-amber:#8F5200;
 --brand-dark-surface:#12322D;
 --brand-muted:#536B61;
 --ink:#12322D;--ink2:#284A43;--soft:#536B61;
 --paper:#FAF7F0;--white:#FFFFFF;--line:#E4E8DF;
 --mint:#EFF4ED;--mint2:#C7E0D2;
 --teal:#1B6B5C;--orange:#E8A33D;--gold:#E8A33D;
 --readable-muted:#536B61;--readable-secondary:#536B61;
 accent-color:var(--brand-green);
}
body{background:var(--brand-cream);color:var(--brand-dark-surface)}
/* Visible only on keyboard focus; provides a WCAG bypass for repeated navigation. */
.skip-link{position:fixed;z-index:9999;top:10px;left:12px;transform:translateY(-180%);
 padding:11px 16px;background:var(--brand-dark-surface);color:#FFF;
 border:2px solid var(--brand-amber);border-radius:9px;font-weight:750;
 text-decoration:none;box-shadow:0 8px 22px rgba(18,50,45,.2)}
.skip-link:focus-visible{transform:none;outline:3px solid var(--brand-green);outline-offset:3px}
#main-content:focus{outline:none}

.nav{border-bottom-color:#E5E8DD}
.brand-icon,.hero h1 em,.eyebrow{color:var(--brand-green)}
.brand-icon{border-color:var(--brand-green)}
.eyebrow i{background:var(--brand-amber)}
.stage-card,.panel,.chart-panel,.compare-panel{border-color:#E4E8DF}
.stage-title,.question-head h2,.section-heading h3{color:var(--brand-dark-surface)}
.stage-title .step{background:var(--brand-green);color:white}
.mode:hover:not([aria-selected="true"]){border-color:var(--brand-green)}
.mode[aria-selected="true"],.stage-01-card .mode[aria-selected="true"]{
 background:var(--brand-green)!important;
 border-color:var(--brand-green)!important;color:#FFF;
}
.mode[aria-selected="true"] .sub{color:#F0F7F2;opacity:1}
.mode[aria-selected="true"] .arrow{color:#FFE0A5}
.mode[aria-selected="false"] .arrow{color:var(--brand-dark-amber)}
#question-panel input,#advanced-body input,#question-panel select,#advanced-body select{
 color:var(--brand-dark-surface);background-color:#FFF;
}
#question-panel input:focus-visible,#advanced-body input:focus-visible,
#question-panel select:focus-visible,#advanced-body select:focus-visible{
 border-color:var(--brand-green)!important;
}
button:focus-visible,input:focus-visible,textarea:focus-visible,
select:focus-visible,summary:focus-visible,
#question-panel:focus-visible,.result-panel:focus-visible,
#retirement-community button:focus-visible,
#retirement-community textarea:focus-visible{
 outline:3px solid var(--brand-green)!important;outline-offset:3px!important;
}
#advanced-settings .adv-btn .advanced-section-name{color:var(--brand-green)!important}
#advanced-settings .adv-btn svg{color:var(--brand-green)}
#advanced-settings .adv-btn:hover{color:var(--brand-green)}
.adv-result-btn,.action-btn.primary,.btn.primary{background:var(--brand-green);color:#FFF}
.adv-result-btn:hover,.action-btn.primary:hover,.btn.primary:hover{background:#145749}
.result-panel,.stage-result-card.result-panel{background:var(--brand-dark-surface)!important;color:#FFF}
.result-panel .result-number,.result-panel #main-value{color:#FFF}
.result-panel h2,.result-panel h2 span{color:#F0F6F2}
.result-tag.pending{
 color:#FFE1B0!important;border-color:var(--brand-amber)!important;
 background:rgba(232,163,61,.12)!important;
}
#experiment-result.lab-result{
 background:var(--brand-dark-surface)!important;
 border-color:var(--brand-dark-surface)!important;
 color:#F1F7F2!important;
}
#experiment-result.lab-result strong{color:#F1F7F2!important}
#experiment-result.lab-result strong:last-of-type{color:var(--brand-amber)!important}
#experiment-result .lab-arrow{color:var(--brand-amber)!important}
#experiment-result .lab-secondary{color:#DDEBE2!important}
.scenario-variable{border-color:#E1E8DE;background:#F9FAF6}
.scenario-variable.is-modified{
 border-color:var(--brand-green);
 background:#F2F7F0;
}
.scenario-variable-head output{color:var(--brand-green)}
.scenario-variable input[type="range"],.experiment-sliders input[type="range"]{
 accent-color:var(--brand-green)!important;
}
.scenario-variable.is-modified .scenario-variable-head output{
 color:var(--brand-dark-amber)!important;
}
.lab-reset:hover:not(:disabled){color:var(--brand-green)}
.lab-result:not(#experiment-result) strong{color:var(--brand-green)}
.target-focus .plus,.target-focus .target-breakdown .plus{
 color:var(--brand-dark-amber);
}
.lg.orange i,.lab-dot,.legend .orange i{background:var(--brand-amber)}
.lg i,.legend i{background:var(--brand-green)}
/* SVG chart paths are produced by the unchanged calculation controller.
   Override presentation attributes via CSS so numeric logic stays frozen. */
.chart-box svg [stroke="#B14D3C"],
.chart-box svg [stroke="#DA6946"],
.chart-box svg [stroke="#C97853"],
.chart-box svg [stroke="#E5A078"]{stroke:var(--brand-amber)}
.chart-box svg [fill="#B14D3C"],
.chart-box svg [fill="#DA6946"],
.chart-box svg [fill="#C97853"],
.chart-box svg [fill="#E5A078"]{fill:var(--brand-dark-amber)}
.chart-box svg [stroke="#1C7667"],
.chart-box svg [stroke="#347963"],
.chart-box svg [stroke="#5B9A84"]{stroke:var(--brand-green)}
.chart-box svg [fill="#1C7667"],
.chart-box svg [fill="#347963"],
.chart-box svg [fill="#5B9A84"]{fill:var(--brand-green)}
.chart-box svg stop[stop-color="#B9E4CB"]{stop-color:#C7E0D2}
.chart-box svg [stroke="#8662A9"],
.chart-box svg [stroke="#76519B"]{stroke:var(--brand-green)}
.chart-box svg [fill="#8662A9"],
.chart-box svg [fill="#76519B"]{fill:var(--brand-green)}
.chart-box svg [stroke="#5668C9"]{stroke:var(--brand-amber)}
.chart-box svg [fill="#5668C9"]{fill:var(--brand-dark-amber)}
.chart-box svg [fill="#657D70"],
.chart-box svg [fill="#7B9083"],
.chart-box svg [fill="#81938D"]{fill:var(--brand-muted)}

/* Community keeps the confirmed flat, two-tier conversation geometry. */
#retirement-community{color:var(--brand-dark-surface)}
#retirement-community .egc-head{
 background:#F4F6F0;border-bottom-color:#E3E8DD;
}
#retirement-community .egc-title{color:var(--brand-dark-surface)}
#retirement-community .egc-eyebrow{color:var(--brand-green)}
#retirement-community .egc-button{
 background:var(--brand-green);color:#FFF;
}
#retirement-community .egc-button:hover:not(:disabled){background:#145749}
#retirement-community .egc-textarea:focus-visible,
#retirement-community .egc-inlineform textarea:focus-visible{
 border-color:var(--brand-green);
}
#retirement-community .egc-ghost:hover:not(:disabled){
 color:var(--brand-green);
}
#retirement-community .egc-comments{
 border-left-color:#B6D7C5;
}
/* WCAG AA contrast corrections from the 2026-10-20 actual PC/mobile axe report.
   Secondary copy remains quiet but legible; no dimensional/layout changes. */
.target-focus .target-desc{color:#334D43;opacity:1}
.lab-tip{color:var(--brand-muted)}
#retirement-community .egc-meta,
#retirement-community .egc-info,
#retirement-community .egc-moretrigger{color:var(--brand-muted)}
/* The only approved amber text on light backgrounds is Dark Amber. */
#retirement-community .egc-help,
#retirement-community .egc-subtitle{color:var(--brand-muted)}
@media (prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 *,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important}
}
