/* Dedicated learning workspace: side controls on desktop, sticky navigation and actions on mobile. */
html{scroll-padding-top:22px}
.checklist-page{background:#f3f1e9;min-width:0}
.learning-layout{display:grid;grid-template-columns:minmax(205px,1fr) minmax(0,760px) minmax(230px,1fr);align-items:start;gap:clamp(16px,2vw,36px);max-width:1590px;margin:auto;padding:24px clamp(16px,2vw,36px);min-height:100dvh}
.left-rail,.right-rail{min-width:0;position:sticky;top:24px;align-self:start}
.left-rail{display:flex;flex-direction:column;align-items:stretch;gap:28px;padding-top:8px}
.learning-brand{align-self:flex-start;max-width:100%}.learning-brand .brand-name{white-space:normal;line-height:1.5;font-size:.7rem}
.rail-label,.move-label{font-size:.69rem;line-height:1.5;letter-spacing:.11em;font-weight:800;color:#a07842;margin:0 0 10px}
.phase-tabs{display:flex;flex-direction:column;align-items:stretch;border:0;background:transparent;gap:8px}
.phase-tab{width:100%;border:1px solid #d3dacc;text-align:left;padding:14px 16px;border-radius:5px;background:#fff;font-size:.92rem;color:#40564a}
.phase-tab.is-active{border-color:#2b5a43;background:#173d32;color:#fff}.phase-tab.is-active:after{display:none}.phase-tab:hover{border-color:#41694f}
.phase-explainer{padding:18px 17px;background:#e5ebdf;border-left:3px solid #b88e55}.phase-explainer p:not(.rail-label){font-size:.82rem;line-height:1.55;margin:0 0 12px}.phase-explainer p.phase-disclaimer{font-size:.73rem;color:#637365;margin:0}
.rail-back{font-size:.8rem;color:#32634d;text-decoration:none;align-self:start;border-bottom:1px solid currentColor;padding-bottom:3px}
.learning-main{min-width:0;padding:30px 0 80px}.learning-intro{padding:0 4px 24px}.learning-intro h1{font:500 clamp(2.5rem,4.3vw,4rem)/1.1 Georgia,serif;letter-spacing:-.045em;margin:0 0 16px}.learning-intro h1 em{color:#ac8145}.learning-intro>p:not(.eyebrow){font-size:.94rem;color:#4b6053;max-width:690px;margin-bottom:17px;line-height:1.7}.learning-intro>p:not(.eyebrow).phase-current{padding:14px 18px;background:#e7ece5;border-left:3px solid #467358;color:#294534;font-size:.83rem;margin-bottom:0}.phase-current span{display:block;color:#587166;margin-top:4px}
.learning-questions{background:#fff;border:1px solid #d9dfd4;box-shadow:0 12px 45px rgba(20,41,35,.06)}
.learning-questions .tool-body{padding:30px 28px 34px}.learning-questions .universal{margin-bottom:38px}
.learning-questions .group-heading{margin-bottom:19px}
.learning-questions .question-list{gap:9px}
.learning-questions .question{position:relative;border-radius:5px;min-width:0}
.learning-questions .question[hidden]{display:none}
.learning-questions .question-main{padding:15px 16px 7px;min-height:0}
.learning-questions .question-copy{padding:0 0 4px}
.learning-questions .question-title{font-size:.95rem;line-height:1.48}
.learning-questions .question-detail{font-size:.81rem;line-height:1.57}
.learning-questions .question-actions{margin:0 15px 12px 55px;display:flex;justify-content:flex-end}
.learning-questions .question-hide{background:none;border:0;padding:5px 2px;color:#648071;font-weight:650;font-size:.73rem}
.learning-questions .question-hide:hover{color:#173d32;text-decoration:underline}
.learning-questions .question-example{margin:0 15px 15px 55px;padding:10px 12px;background:#edf3ed;border-radius:4px;color:#365642;font-size:.8rem;line-height:1.55}
.learning-questions .question-example summary{cursor:pointer;font-weight:700}
.learning-questions .question-example p{margin:8px 0 0;font-size:.79rem}
.learning-questions .phase-hint-inline{padding:12px 15px;margin:0 0 19px;background:#f2efe5;border-left:3px solid #ba9660;color:#5a5e4f;font-size:.8rem;line-height:1.65}
.learning-questions .phase-panel[hidden]{display:none}
.learning-questions .phase-intro{border-top:1px solid #e4e4db;padding-top:28px}
.fair-play-note{font-size:.77rem;line-height:1.6;color:#67766c;margin:20px 4px}
.rail-actions{border:1px solid #d9dfd4;background:#fff;padding:22px 20px;box-shadow:0 11px 34px rgba(20,41,35,.06)}
.rail-actions .progress{text-align:left;min-width:0}.rail-actions .progress strong{font-size:.93rem;color:#183c30}
.rail-actions .progress-track{margin-top:12px;height:7px}
.completion-message{font-size:.8rem;color:#607164;line-height:1.55;margin:17px 0}
.completion-message.is-complete{color:#25533a;font-weight:700}
.rail-actions .button{width:100%;white-space:normal;min-height:48px;text-align:center;padding:12px 11px;font-size:.78rem;gap:5px}
.rail-actions .button[hidden]{display:none}
.reset-note{font-size:.73rem;line-height:1.55;color:#6a7a6d;margin:9px 0 19px}
.hidden-manager{border-top:1px solid #dce4d9;margin-top:19px;padding-top:18px;font-size:.81rem;color:#3b5b49}
.hidden-manager summary{cursor:pointer;font-weight:730}
.hidden-manager>p{font-size:.75rem;color:#66766b;line-height:1.55;margin:12px 0}
.hidden-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;border-bottom:1px solid #e2e7df;padding:9px 0}
.hidden-row span{font-size:.72rem;line-height:1.5;overflow-wrap:anywhere}.hidden-row button,.restore-all{border:1px solid #adc2ad;background:#fff;color:#285d3d;padding:7px 9px;border-radius:4px;font-size:.71rem;font-weight:700}.restore-all{margin-top:13px}.restore-all:disabled{opacity:.5}
@media(max-width:1190px){.learning-layout{grid-template-columns:minmax(175px,.85fr) minmax(0,680px) minmax(200px,.85fr);gap:15px;padding:16px}.rail-actions{padding:17px 12px}.phase-tab{padding:13px 10px}.learning-questions .tool-body{padding:24px 18px}.learning-main{padding-top:20px}}
@media(max-width:900px){html{scroll-padding-top:147px}.learning-layout{display:flex;flex-direction:column;gap:0;padding:0;max-width:none}.left-rail{position:sticky;z-index:30;top:0;background:#f7f5ee;box-shadow:0 4px 15px rgba(20,41,35,.08);display:block;align-self:stretch;padding:9px 16px 0}.learning-brand{display:inline-flex;margin-bottom:8px}.learning-brand .brand-mark{width:31px;height:31px;font-size:1.55rem}.learning-brand .brand-name{font-size:.67rem}.left-rail .phase-navigation{margin:0 -16px}.left-rail .rail-label{display:none}.phase-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;background:#f4f3ee}.phase-tab{border-radius:0;border:1px solid #e0e1d5;border-bottom:0;text-align:center;padding:13px 2px;font-size:.82rem}.phase-explainer,.rail-back{display:none}.learning-main{width:min(100% - 32px,760px);margin:auto;padding:23px 0 176px}.learning-intro{padding:0 0 19px}.learning-intro h1{font-size:clamp(2.3rem,6vw,3.3rem)}.learning-questions .tool-body{padding:23px 21px}.right-rail{position:fixed;z-index:40;left:0;right:0;top:auto;bottom:0;background:#fff;border-top:1px solid #ccd7c8;padding:11px max(16px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom));box-shadow:0 -8px 30px rgba(14,43,26,.11)}.rail-actions{width:min(100%,760px);margin:auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(130px,.9fr);gap:3px 13px;align-items:center;padding:0;border:0;box-shadow:none}.rail-actions .move-label,.rail-actions .reset-note,.rail-actions .next-phase,.rail-actions .hidden-manager{display:none}.rail-actions .progress{grid-column:1}.rail-actions .completion-message{grid-column:1;grid-row:2;max-height:36px;overflow:hidden;font-size:.7rem;line-height:1.35;margin:1px 0}.rail-actions .next-move{grid-column:2;grid-row:1 / 3;min-height:52px}.rail-actions .hidden-manager{display:block;position:static;grid-column:1 / -1;grid-row:3;max-height:50vh;overflow:auto;width:100%;background:#fff;border:0;border-top:1px solid #e2e7df;box-shadow:none;padding:5px 0 0;margin:3px 0 0;max-width:none}.hidden-manager:not([open]){max-height:none}.hidden-manager summary{font-size:.75rem}.learning-main{padding-bottom:230px}.learning-intro .phase-current span{display:block}.phase-actions-mobile{display:block}}
@media(max-width:550px){.learning-main{width:calc(100% - 24px)}.learning-questions .tool-body{padding:19px 12px 25px}.learning-questions .group-heading{gap:8px}.learning-questions .group-icon{display:none}.learning-questions .question-main{padding:12px 11px 7px;gap:9px}.learning-questions .check-visual{width:23px;height:23px;flex-basis:23px}.learning-questions .question-title{font-size:.87rem}.learning-questions .question-detail{font-size:.77rem}.learning-questions .question-actions,.learning-questions .question-example{margin-left:43px}.learning-questions .phase-intro h3{font-size:1.13rem}.learning-intro h1{font-size:2.5rem}.learning-intro>p:not(.eyebrow){font-size:.85rem}.right-rail{padding-left:12px;padding-right:12px}.rail-actions{grid-template-columns:minmax(0,1fr) minmax(135px,1.1fr)}.rail-actions .button{font-size:.73rem;line-height:1.3;padding:9px}.rail-actions .progress strong{font-size:.77rem}.rail-actions .completion-message{font-size:.65rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.learning-questions .group-heading h2{font-size:1.27rem;margin:0 0 6px;letter-spacing:-.025em;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-weight:730}
.learning-questions .phase-intro h2{font-size:1.4rem;line-height:1.3;letter-spacing:-.028em;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-weight:740;margin:0 0 7px}

@media(max-width:550px){.learning-intro h1{font-size:2.05rem;margin-bottom:9px}.learning-intro .eyebrow{margin-bottom:6px}.learning-intro>p:not(.eyebrow){font-size:.79rem;line-height:1.55;margin-bottom:9px}.learning-intro>p:not(.eyebrow).phase-current{padding:9px 11px;font-size:.76rem}.learning-intro .phase-current span{font-size:.72rem;line-height:1.45}.learning-main{padding-top:14px}.learning-intro{padding-bottom:13px}}

.phase-help-mobile{display:none}
@media(max-width:900px){.phase-help-mobile{display:block;font-size:.78rem;color:#325341;border-top:1px solid #d5dfd2;padding:8px 12px;background:#edf2ea}.phase-help-mobile summary{cursor:pointer;font-weight:720}.phase-help-mobile p{font-size:.75rem;line-height:1.6;margin:9px 0 3px;color:#4e6457}}
/* Compact P2 checklist: questions first, guidance only on request. */
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.learning-main{padding-top:0}.learning-questions .tool-body{padding-top:18px}.learning-questions .universal{margin-bottom:8px}.learning-questions .question-main{padding:15px 16px;align-items:center}.learning-questions .question-title{font-size:.98rem}.learning-questions .question-actions{justify-content:flex-start;align-items:center;gap:7px;margin:0 15px 12px 54px;flex-wrap:wrap}.learning-questions .question-hide{background:#eaf1e8;color:#2b6247;border:1px solid #bdd0be;border-radius:5px;padding:6px 9px;font-size:.76rem}.learning-questions .question-hide:hover{text-decoration:none;background:#dce8da}.question-extra{display:inline-block;border:1px solid #dbe3d7;background:#fff;border-radius:5px;color:#42634b;font-size:.75rem;padding:5px 9px}.question-extra summary{cursor:pointer;font-weight:700;list-style:none}.question-extra summary::-webkit-details-marker{display:none}.question-extra p{margin:8px 0 4px;max-width:380px;line-height:1.6}.learning-questions .question-example{background:#fff;border:1px solid #dbe3d7;padding:5px 9px;margin:0}.learning-questions .question-example p{font-size:.75rem}.learning-questions .question-list{margin-bottom:0}.learning-questions .question{margin-bottom:8px}.learning-questions .phase-panel{padding-top:8px}.learning-questions .phase-panel[hidden]{display:none}.phase-tab:disabled:not(.is-active){opacity:.42;background:#edf0e9;color:#75897d;cursor:not-allowed}.resume-phase{border:0;background:transparent;text-align:left;padding:6px 1px;color:#63776a;font-size:.73rem;text-decoration:underline}.right-rail .completion-message{display:none}.rail-actions .next-phase:disabled{opacity:.45;background:#e6e8df;color:#87998c;border-color:#e3e5dd;cursor:not-allowed}.learning-main .question-list{padding-left:0}.starter-only .question:not(.starter-question){display:none}
@media(max-width:900px){.learning-main{padding-top:12px}.learning-questions .tool-body{padding:16px 13px 25px}.learning-questions .question-main{padding:13px 10px}.learning-questions .question-actions{margin-left:39px}.phase-navigation .resume-phase{display:block;margin:4px auto;font-size:.7rem}.right-rail .next-phase{display:none}.learning-main{padding-bottom:145px}}

.rail-actions .button:disabled{opacity:.48;cursor:not-allowed}
