/* V109 · jerarquía moderna, cercana y tranquila según intención comunicativa */
:root{
  --font-display-calm:"Avenir Next","Segoe UI Variable Display","SF Pro Display","Helvetica Neue",Arial,sans-serif;
  --font-body-calm:"Avenir Next","Segoe UI Variable Text","SF Pro Text","Helvetica Neue",Arial,sans-serif;
  --font-reflective:Charter,"Iowan Old Style",Georgia,serif;
  --text-heading-calm:#29465a;
  --text-body-calm:#536c79;
  --text-official-calm:#286b5b;
  --text-guidance-calm:#6b5b8e;
  --text-action-calm:#365f9f;
  --text-caution-calm:#93661f;
  --text-critical-calm:#a24e52;
}

body{color:var(--text-heading-calm);font-family:var(--font-body-calm);font-size:16px;line-height:1.58;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,h5,h6,.hero h2,.topbar h1,.module-title h3,.planning-dialog-head h2,.experience-guidance-head h4,.experience-360-copy h4{color:var(--text-heading-calm);font-family:var(--font-display-calm);font-weight:690;letter-spacing:-.03em}
p,li,label,.field label,.planning-dialog-intro,.planning-check,.experience-rubric-panel{color:var(--text-body-calm);font-family:var(--font-body-calm);line-height:1.62}
input,select,textarea,button{font-family:var(--font-body-calm)}
input,select,textarea{color:#304d5e;font-size:15px;line-height:1.55}

.topbar-badge,.pill.green,.verified-pill,.study-plan-source,.planning-dialog-sources a,.quality-assurance-band>div>span{color:var(--text-official-calm)}
.topbar-badge,.pill.green,.verified-pill{background:#edf8f3;border-color:#c9e4d9}

.mentor-kicker,.planning-dialog-head .mini,.experience-guidance-head span,.luma-platform-launcher b,.platform-context-visual span{color:var(--text-guidance-calm)}
.mentor-card,.planning-dialog-head,.platform-context-visual{border-color:#ddd4ea}

.btn,.nav-btn.active,.experience-guidance-button>span,.planning-window-btn span,.oa-triangulation-copy>span,.experience-character-planner>div>span{color:var(--text-action-calm)}
.btn:not(.ghost):not(.soft){color:#fff}

.warning,.pill.yellow,.signal-card.grow h4{color:var(--text-caution-calm)}
.warning{background:#fff9eb;border-color:#ead9ad}
#appErrorBox,.signal-card.support h4{color:var(--text-critical-calm)}

.mini,.nav-group,.mentor-kicker,.experience-guidance-head span,.experience-guidance-button>span,.quality-assurance-band>div>span,.platform-context-visual span{font-size:13px;font-weight:800;letter-spacing:.09em}
.nav-btn,.nav-hint,.topbar p,.planning-window-btn,.experience-guidance-button small,.planning-check,.content-item summary small,.oa-row p,.quality-assurance-band small{font-size:13px}
.card p,.notice,.warning,.helpbox,.roadmap-content p,.experience-rubric-panel p{font-size:14px}

blockquote,.reflection-quote,.evidence-quote{color:#5f5475;font-family:var(--font-reflective);font-size:17px;line-height:1.68}

.btn,.nav-btn,.experience-guidance-button,.planning-window-btn{font-weight:720;letter-spacing:-.005em}
.luma-platform-launcher small{color:#6d7e89;font-size:13px}

@media(max-width:620px){body{font-size:15px}.topbar h1{font-size:23px}.hero h2{font-size:clamp(30px,9vw,40px)}}
@media(prefers-contrast:more){:root{--text-heading-calm:#17384d;--text-body-calm:#354f5d;--text-official-calm:#175d4c;--text-guidance-calm:#564479;--text-action-calm:#244f91}}
