.pre-calculus-understand { width:100%; min-height:0; height:100%; display:block; overflow:hidden; }
.pre-calculus-understand__panel { height:100%; min-height:0; display:grid; grid-template-rows:auto minmax(0,1fr); gap:var(--space-2); }
.pre-calculus-understand__panel-header { display:flex; align-items:baseline; justify-content:space-between; gap:var(--space-4); }
.pre-calculus-understand__panel-header h3 { margin:0; font-size:clamp(1rem,1.5vw,var(--text-lg)); line-height:var(--leading-tight); }
.pre-calculus-understand__eyebrow { color:var(--mode-soft-text); font-size:var(--text-xs); font-weight:var(--weight-bold); letter-spacing:.04em; text-transform:uppercase; }
.pre-calculus-understand__panel-body { min-height:0; display:grid; gap:var(--space-2); align-content:start; overflow:hidden; padding-right:0; }
.pre-calculus-understand__graph-host { min-height:200px; position:relative; }
.pre-calculus-understand__car { font-size:30px; dominant-baseline:middle; pointer-events:none; transform-box:fill-box; transform-origin:center; transform:scaleX(-1); }
.pre-calculus-understand__journey-note { position:absolute; z-index:4; top:var(--space-3); right:var(--space-3); width:min(330px,calc(100% - 2 * var(--space-3))); padding:var(--space-3); border:2px solid var(--mode-accent); border-radius:var(--radius-lg); background:var(--surface-base); color:var(--text-primary); font-weight:var(--weight-semibold); line-height:var(--leading-normal); box-shadow:0 8px 24px rgba(0,0,0,.12); }
.pre-calculus-understand__journey-note[hidden] { display:none; }
.pre-calculus-understand__sign-line { cursor:pointer; transition:stroke-width .16s ease, opacity .16s ease, filter .16s ease; }
.pre-calculus-understand__sign-line:hover,.pre-calculus-understand__sign-line:focus-visible { stroke-width:5; }
.pre-calculus-understand__sign-line:focus-visible { outline:none; filter:drop-shadow(0 0 3px var(--focus-ring)); }
.pre-calculus-understand__sign-line--selected { stroke-width:6; opacity:1; filter:drop-shadow(0 0 4px var(--mode-accent)); }
.pre-calculus-understand__action-row,.pre-calculus-understand__choice-row { display:flex; flex-wrap:wrap; align-items:center; gap:var(--space-1); }
.pre-calculus-understand__action-row .diagram-primitives__slider { flex:1 1 260px; }
.pre-calculus-understand__button { min-height:var(--touch-target-min); padding:0 var(--space-3); border:1px solid var(--border-default); border-radius:var(--radius-md); background:var(--surface-base); color:var(--text-primary); font:inherit; font-weight:var(--weight-semibold); cursor:pointer; }
.pre-calculus-understand__button--primary,.pre-calculus-understand__button[aria-pressed="true"] { border-color:var(--mode-accent); background:var(--mode-soft); color:var(--mode-soft-text); }
.pre-calculus-understand__button:focus-visible,.pre-calculus-understand input:focus-visible { outline:3px solid var(--focus-ring); outline-offset:2px; }
.pre-calculus-understand__status,.pre-calculus-understand__takeaway { margin:0; padding:var(--space-2) var(--space-3); border-radius:var(--radius-md); background:var(--mode-soft); color:var(--mode-soft-text); font-size:var(--text-sm); line-height:var(--leading-snug); }
.pre-calculus-understand__question { min-height:92px; display:grid; place-items:center; gap:var(--space-2); padding:var(--space-4); border:2px solid var(--mode-accent); border-radius:var(--radius-lg); background:var(--mode-soft); color:var(--mode-soft-text); text-align:center; font-size:clamp(1.05rem,2.2vw,1.45rem); }
.pre-calculus-understand__question strong { font-size:1.05em; }
.pre-calculus-understand__summary-grid { display:grid; grid-template-columns:1fr 1fr; gap:var(--space-2); min-width:0; }
.pre-calculus-understand[data-pre-calculus-activity="vertical_limit"] .pre-calculus-understand__action-row { display:grid; grid-template-columns:minmax(180px,1fr) auto; align-items:end; }
.pre-calculus-understand[data-pre-calculus-activity="vertical_limit"] .pre-calculus-understand__choice-row { flex-wrap:nowrap; }
.pre-calculus-understand[data-pre-calculus-activity="curve_question"] .pre-calculus-understand__question { min-height:70px; padding:var(--space-3); }
.pre-calculus-understand__formula-card { display:grid; gap:var(--space-1); padding:var(--space-4); border:2px solid var(--mode-accent); border-radius:var(--radius-lg); background:var(--surface-base); text-align:center; }
.pre-calculus-understand__formula-main { font-size:clamp(1.35rem,2.6vw,1.9rem); font-weight:var(--weight-bold); color:var(--text-primary); }
.pre-calculus-understand__formula-words { color:var(--text-secondary); font-weight:var(--weight-semibold); }
.pre-calculus-understand__formula-example { color:var(--mode-soft-text); font-weight:var(--weight-bold); }

.activity-stage__content[data-pre-calculus-understand-active="true"] { grid-template-columns:minmax(210px,.52fr) minmax(0,1.48fr); gap:var(--space-5); align-items:stretch; }
.activity-stage__content[data-pre-calculus-understand-active="true"] .activity-copy { min-width:0; }
.activity-stage__content[data-pre-calculus-understand-active="true"] .activity-copy h2 { font-size:clamp(1.3rem,1.9vw,1.8rem); margin:var(--space-1) 0 var(--space-2); line-height:1.08; }
.activity-stage__content[data-pre-calculus-understand-active="true"] .activity-copy > p:not(.activity-overline) { font-size:var(--text-sm); line-height:var(--leading-normal); }
.activity-stage__content[data-pre-calculus-understand-active="true"] .activity-callout { margin-top:var(--space-2); padding:var(--space-2) var(--space-3); }
.activity-stage__content[data-pre-calculus-understand-active="true"] .activity-callout p { margin-top:var(--space-1); font-size:var(--text-sm); line-height:var(--leading-snug); }
.activity-stage__content[data-pre-calculus-understand-active="true"] .math-placeholder { min-height:0; height:100%; display:block; overflow:hidden; border:0; border-radius:0; background:transparent; }
.activity-stage__content[data-pre-calculus-understand-active="true"] .math-placeholder__grid,
.activity-stage__content[data-pre-calculus-understand-active="true"] .math-placeholder__formula,
.activity-stage__content[data-pre-calculus-understand-active="true"] .math-placeholder__caption { display:none; }

@media (max-width:900px) {
  .activity-stage__content[data-pre-calculus-understand-active="true"] { grid-template-columns:minmax(190px,.48fr) minmax(0,1.52fr); gap:var(--space-4); }
}
@media (max-width:680px) {
  .activity-stage__content[data-pre-calculus-understand-active="true"] { grid-template-columns:1fr; align-content:start; }
  .activity-stage__content[data-pre-calculus-understand-active="true"] .math-placeholder { min-height:390px; padding:0; }
  .pre-calculus-understand { min-height:390px; }
  .pre-calculus-understand__panel-body { overflow:auto; }
  .pre-calculus-understand__graph-host { min-height:260px; }
  .pre-calculus-understand__summary-grid { grid-template-columns:1fr; }
  .pre-calculus-understand[data-pre-calculus-activity="vertical_limit"] .pre-calculus-understand__action-row { display:flex; }
  .pre-calculus-understand[data-pre-calculus-activity="vertical_limit"] .pre-calculus-understand__choice-row { flex-wrap:wrap; }
  .pre-calculus-understand__panel-header { align-items:flex-start; flex-direction:column-reverse; gap:var(--space-1); }
}


.pre-calculus-understand--delta-intro .pre-calculus-understand__panel-body { overflow:hidden; align-content:stretch; }
.pre-calculus-understand__delta-layout { min-height:0; height:100%; display:grid; grid-template-columns:minmax(0,1.05fr) minmax(260px,.95fr); gap:var(--space-3); align-items:stretch; }
.pre-calculus-understand__delta-visual { min-width:0; min-height:0; display:flex; }
.pre-calculus-understand__delta-graph { min-width:0; min-height:230px; width:100%; height:100%; }
.pre-calculus-understand__delta-steps { min-width:0; min-height:0; display:grid; grid-template-rows:auto auto 1fr; gap:var(--space-2); align-content:stretch; }
.pre-calculus-understand__delta-step { min-width:0; padding:var(--space-2) var(--space-3); border:1px solid var(--border-default); border-radius:var(--radius-md); background:var(--surface-base); display:grid; gap:var(--space-1); align-content:center; }
.pre-calculus-understand__delta-step p { margin:0; line-height:var(--leading-snug); font-size:var(--text-sm); color:var(--text-secondary); }
.pre-calculus-understand__delta-step-heading { display:flex; align-items:center; gap:var(--space-2); color:var(--text-primary); }
.pre-calculus-understand__delta-step-number { width:1.7rem; height:1.7rem; border-radius:50%; display:grid; place-items:center; flex:0 0 auto; background:var(--mode-soft); color:var(--mode-soft-text); font-weight:var(--weight-bold); }
.pre-calculus-understand__delta-math-pair { display:grid; grid-template-columns:1fr 1fr; gap:var(--space-2); }
.pre-calculus-understand__delta-math,
.pre-calculus-understand__delta-example { min-width:0; text-align:center; font-weight:var(--weight-semibold); }
.pre-calculus-understand__delta-formula { min-width:0; text-align:center; font-size:clamp(1rem,1.6vw,1.3rem); font-weight:var(--weight-bold); color:var(--text-primary); }
.pre-calculus-understand__delta-example { padding-top:var(--space-1); color:var(--mode-soft-text); }
.pre-calculus-understand--delta-intro .math-typeset--display { margin:.05rem 0; }

@media (max-width:900px) {
  .pre-calculus-understand__delta-layout { grid-template-columns:minmax(0,1fr) minmax(240px,.9fr); gap:var(--space-2); }
  .pre-calculus-understand__delta-step { padding:var(--space-2); }
}
@media (max-width:680px) {
  .pre-calculus-understand--delta-intro .pre-calculus-understand__panel-body { overflow:auto; }
  .pre-calculus-understand__delta-layout { height:auto; grid-template-columns:1fr; }
  .pre-calculus-understand__delta-graph { min-height:260px; height:260px; }
  .pre-calculus-understand__delta-steps { grid-template-rows:auto; }
}
