/* Presentation only: shared light palette and action hierarchy, no chart/Agent logic. */
:root{--ui-green:#235b46;--ui-green-dark:#194936;--ui-soft:#e9f2e9;--ui-line:#bfd3c3;--ui-ink:#2e4037;--ui-muted:#52615a;--ui-page:#fffcf6;--ui-radius:14px}
#soulmap-context-preview,.frame{--ink:var(--ui-ink);--sub:var(--ui-muted);--line:#d7e0d4;--accent:var(--ui-green)}
#soulmap-context-preview#soulmap-context-preview :is(.mi-phone,.mi-scroll,.cp-phone,.cx-scroll){color:var(--ui-ink)}
#soulmap-context-preview#soulmap-context-preview :is(.mi-row-copy small,.mi-home-foot,.sp-pet-meta p,.cp-note,.td-footnote,.rm-boundary,.pc-note,.agent-muted){color:var(--ui-muted);font-size:13px;line-height:1.7}
#soulmap-context-preview#soulmap-context-preview :is(button,summary):focus-visible,.frame :is(button,summary,a):focus-visible{outline:3px solid #78a68a;outline-offset:3px}
#soulmap-context-preview#soulmap-context-preview button:active,.frame button:active{filter:brightness(.94)}
#soulmap-context-preview#soulmap-context-preview button:disabled,.frame button:disabled{opacity:.55;cursor:default}

/* Primary actions. Navigation and ordinary cards deliberately remain lighter. */
#soulmap-context-preview#soulmap-context-preview :is(.ui-v2-primary,.cp-primary,[data-agent-start],[data-pc-send],.rm-primary),
.frame :is(.ui-v2-primary,.btn:not(.ghost)){background:var(--ui-green)!important;color:#fff!important;border:1px solid var(--ui-green)!important;border-radius:var(--ui-radius);min-height:46px;padding:12px 16px;font-size:15px;font-weight:600;line-height:1.5;box-shadow:0 3px 8px #235b4614;text-shadow:none}
#soulmap-context-preview#soulmap-context-preview :is(.ui-v2-primary,.cp-primary,[data-agent-start],[data-pc-send]):hover,.frame .ui-v2-primary:hover{background:var(--ui-green-dark)!important}

/* Secondary detail / profile / original-chart entrances. */
#soulmap-context-preview#soulmap-context-preview :is(.ui-v2-secondary,.sm-chart-entry,.pc-open,.sp-text-button,.cx-entry,.mi-row,.td-primary,.rm-explore-entry),
.frame :is(.ui-v2-secondary,.btn.ghost){background:var(--ui-soft)!important;color:var(--ui-green)!important;border:1px solid var(--ui-line)!important;border-radius:var(--ui-radius);min-height:46px;padding:12px 16px;font-size:14px;font-weight:600;line-height:1.6;text-shadow:none;box-shadow:none}
#soulmap-context-preview#soulmap-context-preview :is(.ui-v2-secondary,.sm-chart-entry,.pc-open,.sp-text-button,.cx-entry,.mi-row):hover,.frame .ui-v2-secondary:hover{background:#dcebdc!important;border-color:#86aa91!important}
#soulmap-context-preview#soulmap-context-preview .mi-row{margin:0 0 12px;min-height:78px;gap:13px}
#soulmap-context-preview#soulmap-context-preview .mi-row-copy b{font-size:16px;color:var(--ui-green)}
#soulmap-context-preview#soulmap-context-preview .mi-row-copy small{font-weight:400}
#soulmap-context-preview#soulmap-context-preview :is(.mi-arrow,.mi-icon){color:var(--ui-green);flex-shrink:0}
#soulmap-context-preview#soulmap-context-preview .sp-text-button{display:inline-flex;justify-content:center;align-items:center;margin-top:8px;max-width:100%}
#soulmap-context-preview#soulmap-context-preview .cx-entry{display:flex;align-items:center;gap:10px;width:100%;margin:12px 0;text-align:left}
.ui-v2-shortcuts{display:grid;gap:10px;margin:0 0 20px}
.ui-v2-shortcuts button{width:100%;text-align:left}

/* Archive controls and selected member. The data/store implementation is unchanged. */
#soulmap-context-preview#soulmap-context-preview .sm-profile-controls{display:grid;grid-template-columns:1fr;gap:10px;margin:4px 20px 22px}
#soulmap-context-preview#soulmap-context-preview .sm-profile-controls[hidden]{display:none}
#soulmap-context-preview#soulmap-context-preview .sm-profile-controls button{text-align:center;width:100%}
#soulmap-context-preview#soulmap-context-preview .sm-profile-controls p:empty{display:none}
#soulmap-context-preview#soulmap-context-preview .sm-profile-dialog{background:#fffcf6;border-color:var(--ui-line);padding:18px;max-width:min(360px,90vw);color:var(--ui-ink)}
#soulmap-context-preview#soulmap-context-preview .ui-v2-profile-option{background:#f3f7f0;color:var(--ui-green);border:1px solid var(--ui-line);border-radius:var(--ui-radius);padding:14px;line-height:1.7;min-height:54px}
#soulmap-context-preview#soulmap-context-preview .ui-v2-profile-option[aria-pressed="true"]{background:var(--ui-green);color:#fff;border-color:var(--ui-green);box-shadow:0 0 0 3px #235b4618}
#soulmap-context-preview#soulmap-context-preview .sm-birth-basis{background:#f6f8f1;border-color:var(--ui-line);color:var(--ui-ink)}
#soulmap-context-preview#soulmap-context-preview .sm-birth-basis summary{color:var(--ui-green);min-height:38px;line-height:1.7}

/* Tertiary/back actions retain their original labels and handlers. */
#soulmap-context-preview#soulmap-context-preview :is(.mi-link,.cp-plain,.np-back,.np-origin,.td-inline,.td-date,.rm-link,.rm-preference,.rm-back,[data-back],[data-navigation-back]),.frame :is(.back,.mobile-dismiss){background:transparent;color:var(--ui-green);border:0;min-height:44px;padding:10px 8px;line-height:1.5;font-size:14px}
#soulmap-context-preview#soulmap-context-preview .td-people button{background:var(--ui-soft);border:1px solid var(--ui-line);border-radius:12px;color:var(--ui-green);min-height:44px}
#soulmap-context-preview#soulmap-context-preview .td-people button[aria-pressed="true"]{background:var(--ui-green);border-color:var(--ui-green);color:#fff}
#soulmap-context-preview#soulmap-context-preview :is(.stage41-chart-tabs button,.pc-topics button,.professional-chat .pc-questions button){background:#f1f6ed;border:1px solid var(--ui-line);border-radius:12px;color:var(--ui-green);min-height:44px;font-size:14px;padding:10px}
#soulmap-context-preview#soulmap-context-preview :is(.stage41-chart-tabs button,.pc-topics button)[aria-pressed="true"]{background:var(--ui-green);color:#fff;border-color:var(--ui-green);font-weight:600}
#soulmap-context-preview#soulmap-context-preview .stage41-nav{background:#fffcf6;border-color:#d7e1d6;padding-block:5px}
#soulmap-context-preview#soulmap-context-preview .stage41-nav button{color:var(--ui-muted)!important;border-radius:13px;min-height:52px;font-size:12px;margin:0 3px}
#soulmap-context-preview#soulmap-context-preview .stage41-nav button:is([aria-current="page"],.active){color:var(--ui-green)!important;background:var(--ui-soft)!important;font-weight:700}

/* Preserve the spirit image, four entrances and their existing positions. */
#soulmap-context-preview#soulmap-context-preview .sp-keywords{display:flex;gap:7px;flex-wrap:wrap}
#soulmap-context-preview#soulmap-context-preview .sp-keywords span{background:#f0f4e9;border:1px solid #cedac7;color:#354e3e;font-size:13px;font-weight:500;line-height:1.6;padding:5px 10px;max-width:100%;white-space:normal;overflow-wrap:anywhere}
#soulmap-context-preview#soulmap-context-preview .sp-skill{background:#e9f2e9f2;border:1px solid var(--ui-line);border-radius:12px;color:var(--ui-green);min-height:44px;text-shadow:none}
#soulmap-context-preview#soulmap-context-preview .sp-skill :is(span,b){color:var(--ui-green);text-shadow:none}

/* Existing companion analysis: distinct cards, exact original values. */
.frame .persona-context{background:#f5f8ef;border:1px solid var(--ui-line);border-radius:18px;padding:16px;box-shadow:none;color:var(--ui-ink)}
.frame .persona-context h2{font:600 18px/1.55 system-ui,sans-serif;margin:0 0 12px;color:var(--ui-green)}
.frame .persona-context .minerow{font-size:13px;line-height:1.7;border-color:#dce5d8;padding:8px 0;color:var(--ui-ink)}
.frame .persona-card{margin-top:12px;border-radius:var(--ui-radius);background:#fffef9;overflow:hidden;border:1px solid var(--ui-line)}
.frame .persona-card summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;cursor:pointer;width:100%;border-radius:12px;min-height:46px;padding:12px 14px;font-size:15px;line-height:1.5;box-sizing:border-box}
.frame .persona-card summary::-webkit-details-marker{display:none}
.frame .persona-card[open] summary{border-bottom-left-radius:0;border-bottom-right-radius:0}
.frame .persona-card[open] summary span{transform:rotate(90deg)}
.frame .persona-content{padding:10px 14px 14px;font-size:14px;line-height:1.85;overflow-wrap:anywhere}
.frame .persona-content p{margin:4px 0;color:var(--ui-ink)}
.frame .persona-content .persona-caption{font-size:12px;color:var(--ui-muted)}
.frame .persona-content small{display:block;color:var(--ui-muted);font-size:12px}
.frame .dialogue-page [role="log"] .dialogue-bubble{background:#fffdf8;border:1px solid #e0e5da;border-radius:15px;color:var(--ui-ink);line-height:1.85}
.frame .dialogue-page [role="log"] .dialogue-bubble.user{background:var(--ui-soft);border-color:var(--ui-line)}
.frame .mobile-composer textarea{color:var(--ui-ink);background:#fffefa;border-color:var(--ui-line)}
.frame .western-param-tabs button{min-height:44px;border-radius:12px}
.frame :is(.choice-row button,.western-param-tabs button)[aria-selected="true"],.frame .choice-row button[aria-pressed="true"]{background:var(--ui-green)!important;color:#fff!important;border-color:var(--ui-green)!important}
@media(max-width:359px){#soulmap-context-preview#soulmap-context-preview .sp-keywords span{font-size:12px;padding:4px 7px}.frame .persona-context{padding:12px}}
@media(prefers-reduced-motion:reduce){#soulmap-context-preview button,.frame button{transition:none!important}}
