/* Sapphire, midnight and warm goal accents. Chart labels/patterns retain meaning. */
:root{--ink:#172444;--muted:#52617b;--teal:#2454ca;--navy:#142347;--border:#d7e0f0;color:var(--ink);background:#f2f5fc}
a{color:#234eb4}button:hover{background:#edf2ff;border-color:#9aaee1}.primary{background:#2454ca;border-color:#2454ca;color:white}.primary:hover{background:#193fa4;border-color:#193fa4;color:white}
button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,a:focus-visible{outline-color:#a54514}
.topbar{background:linear-gradient(115deg,#111d3b,#243c77);border-bottom:3px solid #8dded6}.brand strong,.brand-icon{color:#8de8dd}.top-actions button{border-color:#8194c4}.top-actions button:hover{background:#2f487e;color:white}.badge{border-color:#8194c4}
.notice,.welcome-assumptions{background:#eaf0ff;border-color:#617fbf}.panel{box-shadow:0 5px 22px #16295108}.welcome-card{border-top:5px solid #2454ca}.welcome-progress progress{accent-color:#2454ca}
.companion{background:#fff;border-color:#d0dbef;padding:22px}.companion-hero{background:linear-gradient(120deg,#172b58 0%,#284d9f 100%);border-radius:14px;padding:24px;margin-bottom:20px;color:white}.companion-hero h2{color:white}.companion-hero .eyebrow{color:#9af1e4!important}.companion-hero #companion-intro{color:#e1eaff}.companion-hero .chapter-timeline{border-color:#7893cc}.companion-hero .chapter-timeline li{border-color:#7893cc}.companion-hero .chapter-timeline strong{color:#ffd092}.companion-hero .chapter-timeline span{color:white}
.companion-hero .primary{background:#ffd092;border-color:#ffd092;color:#172444}.companion-hero .primary:hover{background:#ffbf6f;border-color:#ffbf6f;color:#172444}
.companion-hero button:focus-visible,.topbar button:focus-visible{outline-color:white}
.companion details{border-color:#d7e0f0}.companion input[type=checkbox]{accent-color:#2454ca}.companion input:not([type=checkbox]),.companion select,.companion textarea{border-color:#a4b6d8}.companion-return,#companion-return,.account-return{background:#edf2ff;border-color:#b4c5e9}#companion-workspace{border-color:#8da6d8}#companion-status,#life-status,#refine-status{color:#234eb4}.chapter-timeline strong{color:#234eb4}
.possibility-card{border-color:#c9d5ee;border-top:5px solid #5e80de;background:#f2f5ff}.possibility-card:nth-child(2){background:#eaf9f5;border-top-color:#23806a}.possibility-card:nth-child(3){background:#fff3e2;border-top-color:#ba671e}.possibility-card:nth-child(4){background:#f3efff;border-top-color:#7657b4}.possibility-card p{color:#3f4e68}.possibility-card:nth-child(3) button{border-color:#d4ad77}.favourite-card{border-color:#c9d5ee;background:#f7f9ff}.share-picture{background:#f5f7fd;border-color:#c9d5ee}
.experience-panel{border-top-color:#2454ca}.goal-tag{background:#fff3e2;border-left:4px solid #b26922;color:#513d27}.metric:first-child{background:linear-gradient(120deg,#172b58,#284d9f);border-color:#284d9f}.metric:first-child p,.metric:first-child span{color:#e1eaff}.metric:nth-child(2){background:#edf8f5;border-color:#bfded3}.metric:nth-child(3){background:#fff4e4;border-color:#ead5b5}.year-detail{background:#eff3ff}.assistant-message{background:#edf2ff}.voice-symbol,.mic-button{background:#e3f5f0}.asfa-guide{background:#f0f5ff;border-color:#b4c5e9}.asfa-budget{border-color:#c9d5ee}.policy-status{background:#edf2ff;color:#234eb4}.policy-notice,.fund-warning,.asfa-confirm,.staged{background:#fff2db;border-color:#d8b87f}
.high-contrast{--ink:#101b35;--muted:#27354f;--border:#7485aa;--teal:#193fa4}.high-contrast .companion-hero{background:#142347}.high-contrast .companion-hero p,.high-contrast .companion-hero h2,.high-contrast .companion-hero .chapter-timeline span{color:white}.high-contrast .companion-hero .chapter-timeline strong{color:#ffd092}.high-contrast .possibility-card,.high-contrast .favourite-card{border-color:#7485aa}.high-contrast .metric:first-child{background:#142347}.high-contrast .metric:first-child p,.high-contrast .metric:first-child span{color:white}
@media(max-width:600px){.companion{padding:16px}.companion-hero{padding:20px 16px}.companion-hero .chapter-timeline{margin-bottom:0}.companion-hero .chapter-timeline li{flex-basis:112px}}
@media print{.companion-hero,.metric:first-child,.high-contrast .companion-hero{background:white;color:#172444;border:1px solid #7485aa}.companion-hero h2,.companion-hero #companion-intro,.companion-hero .chapter-timeline strong,.companion-hero .chapter-timeline span,.metric:first-child p,.metric:first-child span{color:#172444}.companion-hero .eyebrow{color:#172444!important}}
