/* Isolated learning styles; keep AP Typing's white and purple identity. */
.learning-page{max-width:1080px!important;padding-inline:24px!important}.learning-session{max-width:800px!important;padding-inline:24px!important}.learning-eyebrow{display:block;color:#665580;font-size:12px;font-weight:800;letter-spacing:.09em;margin-bottom:10px}.learning-muted,.learning-storage{font-size:14px;color:#686476}.learning-unit-progress{display:flex;gap:16px;align-items:center;margin:24px 0 32px;font-size:14px;color:#686476}.learning-progress{height:6px;flex:1;background:#eeeaf6;border-radius:10px;overflow:hidden;min-width:60px}.learning-progress i{display:block;height:100%;background:#6043d3;border-radius:10px;transition:width .25s}.learning-path{border:1px solid #e8e4ef;border-radius:20px;overflow:hidden}.learning-next{display:flex;gap:24px;background:#f8f6fd;padding:30px}.step-number{display:grid;place-items:center;flex:none;width:36px;height:36px;border:1px solid #ded6ef;border-radius:50%;font-size:13px;color:#75638e}.learning-next h2{font-size:28px;margin:0 0 8px}.learning-next p,.learning-path-row p{margin:0 0 16px;color:#686476}.learning-next .btn{display:block;margin-top:18px}.learning-time{font-size:14px;color:#686476}.learning-path-row{display:flex;gap:24px;align-items:center;padding:25px 30px;border-top:1px solid #e8e4ef}.learning-path-row>div{flex:1}.learning-path-row h2{font-size:18px;margin:0 0 6px}.learning-path-row p{font-size:14px;margin:0}.learning-options{margin:24px 0;border:1px solid #e8e4ef;border-radius:14px;padding:16px 20px}.learning-options summary,.learning-visual summary{cursor:pointer;min-height:32px;font-weight:700}.learning-tools,.learning-utility{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}.learning-recommend{display:flex;justify-content:space-between;align-items:center;gap:24px;border:1px solid #ded6ef;background:#faf8ff;border-radius:18px;padding:26px;margin:24px 0}.learning-recommend h2{font-size:22px;margin:0 0 5px}.learning-recommend p{margin:0;color:#686476}.learning-status{display:flex;gap:20px;flex-wrap:wrap;font-size:14px;color:#686476;margin:24px 0}.learning-unit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.learning-unit{border:1px solid #e8e4ef;border-radius:16px;padding:22px;display:flex;flex-direction:column}.learning-unit-top{display:flex;justify-content:space-between;font-size:12px;font-weight:700;color:#706681}.learning-unit h2{font-size:18px;line-height:1.45;margin:12px 0 8px}.learning-unit p{font-size:14px;color:#686476;margin:auto 0 16px}.learning-unit .learning-progress{flex:none;margin:0 0 14px}.learning-unit .btn{align-self:flex-start;min-height:40px}.learning-exams{border-top:1px solid #e8e4ef;padding-top:32px;margin-top:36px}.learning-exams p{color:#686476;max-width:740px;font-size:14px}.learning-session-top{display:flex;justify-content:space-between;gap:16px;align-items:center;font-size:13px;color:#686476;margin-bottom:16px}.learning-card{border:1px solid #e8e4ef;border-radius:22px;padding:32px;margin-top:24px;background:white}.learning-card h1{font-size:27px;line-height:1.3}.learning-explanation{font-size:16px;line-height:1.7;color:#575164;margin:14px 0 20px}.learning-prompt{font-size:18px;font-weight:650;line-height:1.6}.learning-input,.learning-matches select{width:100%;border:1px solid #cbc4d9;border-radius:12px;padding:13px 15px;font:inherit;font-size:16px;background:white;color:#272234;min-height:48px}.learning-answer-label{display:block;font-size:14px;margin:12px 0 8px;color:#686476}.learning-actions{display:flex;gap:12px;align-items:center;margin:20px 0}.learning-choices{border:0;padding:0;margin:16px 0}.learning-choices legend{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.learning-choices label{display:flex;gap:14px;padding:15px;border:1px solid #e0daea;border-radius:12px;margin:10px 0;cursor:pointer}.learning-choices input{accent-color:#6043d3;width:18px}.learning-matches label{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:center;margin:12px 0}.learning-sort{padding-left:24px}.learning-sort li{padding:12px 0;line-height:1.6}.learning-sort span{display:inline-block;width:calc(100% - 100px);vertical-align:middle}.learning-sort button{width:44px;height:44px;background:#faf8ff;border:1px solid #d7cfea;border-radius:8px;margin-left:4px;cursor:pointer;font-size:18px}.learning-feedback{margin-top:24px;padding:20px;border-radius:14px;background:#f6f3fd;border:1px solid #ded6ef}.learning-feedback h2{font-size:18px;margin:0 0 10px}.learning-feedback p{line-height:1.7}.learning-feedback.correct{background:#f0faf6;border-color:#b9dbcf}.learning-feedback.retry{background:#fff9ed;border-color:#ead8aa}.learning-selfcheck{display:flex;gap:14px;margin:18px 0;align-items:flex-start}.learning-selfcheck input{width:20px;height:20px;flex:none;accent-color:#6043d3}.learning-selfcheck small{display:block;font-size:14px;color:#686476;margin-top:5px}.learning-hint{font-size:14px;color:#665580;line-height:1.7}.learning-storage{font-size:12px;margin:24px 0 0}.learning-encounter{display:flex;gap:12px;align-items:center;font-size:14px;color:#686476;margin:12px 0 20px}.learning-challenge{padding:20px;border:1px solid #ded6ef;border-radius:14px;margin-top:24px}.learning-challenge>div{display:flex;gap:12px;align-items:center}.learning-challenge h2{font-size:17px}.learning-challenge label{display:block;margin:12px 0;font-size:16px}.learning-challenge .btn{margin-top:14px}.learning-challenge p{font-size:14px;line-height:1.7}#recapContinue{margin-top:22px}.learning-visual{border:1px solid #e8e4ef;border-radius:14px;padding:16px;margin:20px 0;background:#fff}.learning-visual figcaption{font-size:14px;font-weight:700;margin-bottom:12px}.learning-visual svg{width:100%;height:auto;display:block;overflow:visible;font-family:inherit;font-size:12px;fill:#474052}.learning-visual details{font-size:13px;color:#686476;margin-top:8px}.table-scroll{overflow:auto;max-width:100%;margin:16px 0}.table-scroll table{border-collapse:collapse;width:100%;font-size:14px}.table-scroll th,.table-scroll td{padding:12px;border:1px solid #e0daea;text-align:left}.table-scroll th{background:#f8f6fc}.table-scroll input{min-width:70px}.learning-finish{text-align:center;margin:40px auto;max-width:620px;border:1px solid #e8e4ef;border-radius:22px;padding:40px}.learning-finish h1{font-size:30px}.learning-finish p{line-height:1.7;color:#686476}.learning-finish .btn{margin:12px 6px}.concept-sprite{display:inline-block;flex:none;width:var(--sprite-size,40px);height:var(--sprite-size,40px);background-image:var(--sprite);background-size:400% 200%;background-repeat:no-repeat;background-position:0 0}.pose-run-contact{background-position:33.333% 0}.pose-run-passing{background-position:66.667% 0}.pose-run-airborne{background-position:100% 0}.pose-thinking{background-position:0 100%}.pose-hint{background-position:33.333% 100%}.pose-correct{background-position:66.667% 100%}.pose-unlock{background-position:100% 100%;animation:concept-unlock .65s ease-out 1}.pose-running{animation:concept-run var(--run-speed,.4s) step-end infinite}.word-field{position:relative;min-width:0}.word-runner{position:absolute;left:0;top:0;pointer-events:none;user-select:none;transition:transform .1s linear;width:40px;height:40px;z-index:1;contain:layout style}.word-answer{line-height:64px!important;padding-top:36px!important;min-height:128px;resize:vertical}.word-trace{line-height:4em!important;padding-top:40px!important}.word-mirror{position:absolute;left:-10000px;top:0;visibility:hidden;pointer-events:none;overflow-wrap:break-word}.typing-boxes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:30px 0}.typing-box{position:relative;display:flex;align-items:center;flex-direction:column;gap:10px;min-height:175px;background:white;border:1px solid #d8d0e9;border-bottom:6px solid #e6e0f1;border-radius:18px;padding:24px;cursor:pointer;color:#30283f;font:inherit}.typing-box-lid{display:block;width:80px;border:1px solid #d8d0e9;background:#f6f2fc;border-radius:10px;font-size:26px;transform-origin:bottom;transition:transform .3s}.typing-box.open .typing-box-lid{transform:perspective(150px) rotateX(45deg)}.typing-box>span{font-size:14px}.typing-box>.typing-box-lid{font-size:26px}.collection-open{position:relative;overflow:hidden;padding-top:12px}.concept-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:22px 0}.concept-tile{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;min-height:155px;padding:16px 10px;background:#fff;border:1px solid #e8e4ef;border-radius:16px;font:inherit;text-align:center;color:#30283f}.concept-tile b{font-size:14px}.concept-tile>span:last-child{font-size:12px;color:#686476}.concept-tile[data-learn]{cursor:pointer}.concept-locked{color:#8b8494;background:#fcfbfd}.concept-locked>span:first-child{display:grid;place-items:center;width:54px;height:54px;background:#eeeaf3;border-radius:45%;font-size:23px;font-weight:700}.concept-detail{display:flex;gap:24px;align-items:center;border:1px solid #d8d0e9;background:#faf8ff;border-radius:18px;padding:24px}.concept-detail p{line-height:1.7}.collection-burst{position:absolute;top:90px;left:50%;pointer-events:none}.collection-burst>span{position:absolute;display:flex;align-items:center;gap:4px;white-space:nowrap;color:#6043d3;font-size:13px;opacity:0}.learning-page .btn:active,.concept-tile[data-learn]:active{transform:scale(.98)}.learning-page .btn,.learning-session .btn{min-height:44px}.learning-page :focus-visible,.learning-session :focus-visible{outline:3px solid #8e75d9;outline-offset:4px}.learning-page .sel-grid{margin-top:20px}.learning-page .sel-card{padding:20px;box-shadow:none}.learning-page .locktag{font-size:12px}.learning-page .sel-card .meta{font-size:13px}.learning-page .sel-card .ic{display:none}body:has(.learning-session) .coach,body:has(.word-field) .coach{display:none!important}.learning-dashboard .dash-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.learning-dashboard .dash-pricing,.learning-dashboard .char-panel{margin-top:24px}.learning-dashboard .upgrade-nudge{padding:14px;background:white;border:1px solid #e8e4ef}.learning-dashboard .upgrade-nudge .m{display:none}
.collection-burst.animate>span{animation:box-burst 1.4s ease-out 1}
@keyframes concept-run{0%,100%{background-position:33.333% 0}33%{background-position:66.667% 0}66%{background-position:100% 0}}@keyframes concept-unlock{50%{transform:translateY(-5px)}100%{transform:translateY(0)}}@keyframes box-burst{0%{opacity:0;transform:translate(0,0) scale(.6)}20%{opacity:1}65%{opacity:1;transform:translate(var(--burst-x),-65px) rotate(var(--burst-r))}100%{opacity:0;transform:translate(var(--burst-x),35px)}}
@media(max-width:680px){.learning-page,.learning-session{padding-inline:18px!important}.learning-next,.learning-path-row{padding:22px 18px;gap:14px}.learning-path-row{flex-wrap:wrap}.learning-path-row .btn{margin-left:50px}.learning-next h2{font-size:24px}.learning-recommend{display:block;padding:22px}.learning-recommend .btn{margin-top:16px}.learning-unit-grid{grid-template-columns:1fr}.learning-status{gap:12px}.learning-card{padding:22px 18px;border-radius:16px}.learning-card h1{font-size:24px}.learning-session-top{flex-wrap:wrap;gap:8px}.learning-session-top>span:nth-child(2){max-width:60%;font-size:12px}.learning-matches label{grid-template-columns:1fr;gap:7px}.typing-boxes{gap:12px}.typing-box{padding:18px 10px}.concept-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.concept-detail{align-items:flex-start;gap:12px;padding:18px}.concept-detail .concept-sprite{--sprite-size:64px!important}.learning-finish{padding:25px 18px}.learning-finish h1{font-size:25px}.learning-unit-progress{align-items:flex-start;flex-direction:column;gap:8px}.learning-unit-progress .learning-progress{width:100%;flex:auto}.learning-dashboard .dash-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.learning-visual{padding:8px}.learning-visual svg{font-size:13px}}
@media(prefers-reduced-motion:reduce){.concept-sprite,.collection-burst>span{animation:none!important}.pose-running{background-position:0 0}.word-runner,.learning-progress i,.typing-box-lid{transition:none!important}.typing-box.open .typing-box-lid{transform:none}.collection-burst{display:none}.learning-page .btn:active,.concept-tile[data-learn]:active{transform:none}}
.learning-page .btn-secondary,.learning-session .btn-secondary,.learning-rubric .btn-secondary{background:white;color:#574675;border:1px solid #d8d0e9;box-shadow:none}.learning-page .btn-secondary:hover,.learning-session .btn-secondary:hover{background:#f7f3fc}.learning-rubric{margin-top:18px}.learning-rubric summary{font-weight:700;cursor:pointer;min-height:44px}.learning-rubric p{line-height:1.75}.learning-rubric small{font-size:14px;color:#686476}body:has(.learning-page),body:has(.learning-session){background:white}

body:has(.learning-page) .coach{display:none!important}.learning-unit .btn{min-height:44px}.learning-page summary,.learning-session summary{min-height:44px}

body:has(.learning-rubric) .coach{display:none!important}

.learning-visual svg{height:220px;max-height:240px}.sel-card:focus-visible{outline:3px solid #8e75d9;outline-offset:4px}

@media(prefers-reduced-motion:reduce){.confetti{display:none!important}}

.concept-locked{color:#716a7b}.q-actions button.hint-link{border:0;background:none;font:inherit;min-height:44px;text-align:left}

@media(max-width:680px){.learning-visual svg{font-size:20px}}
