/* Shared presentation language, adapted from the strategy deck to application UI. */
:root{
 --head:Montserrat,'Century Gothic',Futura,'Segoe UI','Helvetica Neue',Arial,sans-serif;
 --strategy-font:var(--head);
 --brand-label:#78428f; --brand-dark:#10141b; --brand-dark-text:#f5f7fa;
 --brand-muted-dark:#a3acba; --brand-border-dark:#232b38;
 --brand-heading-weight:700; --brand-radius:6px;
}
h1,h2,h3,.next-card h2,.lesson-content h1,.reading-panel h2,.reading-panel h3,
.section-heading h2,.form-section h2,.lesson-aside h3{
 font-family:var(--head);font-weight:var(--brand-heading-weight);letter-spacing:0;line-height:1.25;text-wrap:balance;overflow-wrap:anywhere;
}
h1{line-height:1.12}
.eyebrow,.side-card .eyebrow,.outcome .eyebrow,.reading-heading .eyebrow{
 display:flex;align-items:center;gap:12px;font-family:var(--head);font-size:.75rem;
 font-weight:700;text-transform:uppercase;letter-spacing:.2em;line-height:1.6;color:var(--brand-label);
}
.eyebrow:before{content:'';display:block;width:36px;height:5px;border-radius:3px;background:var(--gradient);flex:none}
.side-card .eyebrow:before,.outcome .eyebrow:before{width:22px;height:4px}
.next-card,.reading-direction{
 isolation:isolate;position:relative;overflow:hidden;background:var(--brand-dark);color:var(--brand-dark-text);
 border:1px solid var(--brand-border-dark);border-radius:var(--brand-radius);
}
.next-card:before,.reading-direction:before{content:'';position:absolute;inset:0;width:auto;height:auto;z-index:-1;
 background:radial-gradient(ellipse at 0 100%,#0077b850,transparent 65%),radial-gradient(ellipse at 100% 0,#b8001b40,transparent 65%);pointer-events:none}
.next-card .eyebrow,.reading-direction .eyebrow{color:var(--purple)}
.next-card .next-meta,.next-card p:not(.eyebrow):not(.next-meta){color:var(--brand-muted-dark)}
.next-card h2{font-weight:700}.step-art i{display:none}.step-art span{color:var(--brand-muted-dark)}
.reading-direction h2{font-size:1.5rem}.reading-direction p{color:var(--brand-muted-dark)}
.reading-role,.reading-scenario{position:relative;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.reading-role:before,.reading-scenario:before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--blue),var(--purple),var(--red));pointer-events:none}
.reading-panel h2,.reading-panel h3{font-size:1.25rem}
.reading-number,.section-number{font-family:var(--head);color:var(--brand-label);font-weight:700;letter-spacing:.08em;font-variant-numeric:tabular-nums}
.reading-panel .reading-number{font-size:.875rem}
.side-card,.program-card,.reading-panel,.criteria,.answer-form,.login-card,
.form-section>.stack,.advanced,.skill-picker,.attempt,.submitted-answer{border-radius:10px}
.button,.field input,.field textarea,.field select{border-radius:var(--brand-radius)}
.section-summary strong,.material-copy strong,.mentor strong{font-family:var(--head);font-weight:700;letter-spacing:0}
.section-heading h2{font-size:1.4rem}.side-card h3{font-size:1.1rem}
.form-section h2{font-size:1.4rem;margin-top:10px}.form-section .section-number{font-size:.875rem}
.source{font-family:var(--body)}
.lesson-content>h1{max-width:28ch}.metric-row strong,.big-stat,.step-art span{font-family:var(--body)}
/* Deck components retain their dark-surface label and numeric contrast. */
.mission-panel .eyebrow,.values-section .eyebrow,.value-panel .reading-number{color:var(--purple)}
.mission-panel .eyebrow,.values-section .eyebrow{letter-spacing:.3em}
.mission-panel .eyebrow:before,.values-section .eyebrow:before{width:46px;height:6px}
.value-panel h3{font-family:var(--head);letter-spacing:.1em;font-size:1rem}
@media(max-width:540px){
 .queue-row{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:start}
 .queue-row>div{min-width:0}.queue-row>.button{grid-column:2;margin-left:0;justify-self:start}
 .queue-row h2{text-wrap:wrap;overflow-wrap:break-word}
 .eyebrow,.side-card .eyebrow,.outcome .eyebrow{gap:10px;letter-spacing:.13em}
 .eyebrow:before{width:28px}.values-section{padding:24px}
 .reading-panel{gap:14px}.next-card h2{font-size:1.5rem}
}
@media print{
 .next-card,.reading-direction{background:white;color:black}.reading-direction p{color:black}
 .next-card:before,.reading-direction:before,.strategy-glow{display:none}
}
