.learning-pulse{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 26px}.pulse-card,.progress-insights{min-width:0;border:1px solid var(--line);border-radius:14px;background:var(--white);color:var(--ink);box-shadow:0 8px 22px rgba(28,55,36,.045)}.pulse-card{padding:18px;display:flex;flex-direction:column;min-height:190px}.pulse-card-top{display:flex;align-items:center;gap:9px;margin-bottom:15px}.pulse-icon{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:var(--lav);color:var(--purple);font-size:16px;font-weight:700}.pulse-eyebrow,.insights-period{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.13em}.pulse-card h2{font:700 17px/1.3 var(--display);letter-spacing:-.035em;margin:0 0 7px}.pulse-card p{color:var(--muted);font-size:12px;line-height:1.55;margin:0 0 16px}.pulse-action{display:inline-flex;align-items:center;justify-content:space-between;gap:15px;width:max-content;max-width:100%;margin-top:auto;padding:9px 12px;border:1px solid var(--line);border-radius:9px;background:var(--paper);color:var(--purple);font:700 11px var(--font);text-decoration:none;cursor:pointer;transition:transform .18s,border-color .18s,background .18s}.pulse-action:hover{transform:translateY(-1px);border-color:var(--purple2);background:var(--lav)}.goal-reading{display:flex;align-items:baseline;gap:6px;margin:0 0 10px}.goal-reading strong{font:800 33px/1 var(--display);letter-spacing:-.06em}.goal-reading span{font-size:12px;color:var(--muted)}.goal-track,.mastery-track{height:8px;border-radius:99px;background:var(--lav);overflow:hidden}.goal-track span,.mastery-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--purple),var(--purple2));transition:width .35s ease}.goal-card p{margin:10px 0 12px}.review-card{min-height:190px}.smart-review-list{display:grid;gap:7px}.review-topic{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px;text-align:left;border:1px solid var(--line);border-radius:9px;background:var(--paper);color:var(--ink);cursor:pointer;transition:border-color .2s,transform .2s}.review-topic:hover{transform:translateY(-1px);border-color:var(--purple2)}.review-topic>span{min-width:0;display:grid;gap:3px}.review-topic b{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.review-topic small{font-size:9px;color:var(--muted)}.review-topic i{font-style:normal;color:var(--purple);font-size:16px}.review-empty,.mastery-empty{font-size:11px!important;color:var(--muted)!important;line-height:1.6;margin:0!important}.progress-insights{margin:14px 0 0;padding:20px}.progress-insights .block-heading{margin-bottom:16px;align-items:center}.progress-insights .block-heading h2{color:var(--ink)}.mastery-chart{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 28px}.mastery-row{min-width:0}.mastery-row-label{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:7px}.mastery-row-label>span{display:grid;gap:3px;min-width:0}.mastery-row-label b{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mastery-row-label small{font-size:10px;color:var(--muted)}.mastery-row-label strong{font-size:12px;color:var(--purple);white-space:nowrap}.mastery-track{height:7px}.mastery-track span[data-level="low"]{background:linear-gradient(90deg,#d39a50,#e5b86e)}.mastery-track span[data-level="mid"]{background:linear-gradient(90deg,var(--purple),var(--purple2))}.mastery-track span[data-level="high"]{background:linear-gradient(90deg,#438e66,#83bf8b)}.lesson-mini-test{margin:16px 0;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink)}.mini-test-intro{display:flex;align-items:center;justify-content:space-between;gap:18px}.mini-test-intro h4{font:700 16px/1.3 var(--display);margin:5px 0}.mini-test-intro p{font-size:11px;color:var(--muted);margin:0;line-height:1.5}.mini-test-start,.mini-test-next{flex:none;border:1px solid var(--purple);border-radius:8px;padding:10px 13px;background:var(--purple);color:#fff;font:700 11px var(--font);cursor:pointer}.mini-test-start:hover,.mini-test-next:not(:disabled):hover{filter:brightness(1.07);transform:translateY(-1px)}.mini-test-session{margin-top:15px;padding-top:14px;border-top:1px solid var(--line)}.mini-test-progress{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;font-weight:700}.mini-test-session h5{font:700 15px/1.5 var(--display);margin:12px 0}.mini-test-answers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.mini-test-answers button{padding:10px;text-align:left;border:1px solid var(--line);border-radius:8px;background:var(--white);color:var(--ink);font:500 11px/1.5 var(--font);cursor:pointer}.mini-test-answers button:hover:not(:disabled){border-color:var(--purple2)}.mini-test-answers button.correct{border-color:#4b9a68;background:color-mix(in srgb,#4b9a68 14%,var(--white))}.mini-test-answers button.incorrect{border-color:#c87667;background:color-mix(in srgb,#c87667 12%,var(--white))}.mini-test-session>p{color:var(--muted);font-size:11px;line-height:1.6}.mini-test-next{display:block;margin-left:auto}.mini-test-next:disabled{opacity:.55;cursor:not-allowed}.lesson-mini-test [hidden]{display:none!important}
@media(max-width:900px){.learning-pulse{grid-template-columns:repeat(2,minmax(0,1fr))}.review-card{grid-column:1/-1}.review-card .smart-review-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.learning-pulse{grid-template-columns:1fr;gap:9px;margin-bottom:20px}.pulse-card{min-height:0;padding:15px}.pulse-card h2{font-size:16px}.pulse-card p{font-size:11px;margin-bottom:12px}.pulse-card-top{margin-bottom:11px}.review-card{grid-column:auto}.review-card .smart-review-list,.mastery-chart{grid-template-columns:1fr}.progress-insights{padding:15px}.progress-insights .block-heading{align-items:flex-start}.insights-period{font-size:9px}.mini-test-intro{align-items:flex-start;flex-direction:column}.mini-test-answers{grid-template-columns:1fr}.mini-test-start{width:100%}}
.flashcard-step.is-review-due{border-color:var(--purple2);box-shadow:0 0 0 2px color-mix(in srgb,var(--purple2) 16%,transparent)}.flashcard-step.is-review-due .flashcard-step-status{color:var(--purple2);font-weight:800}
