.learning-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.learning-choice{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:clamp(235px,29vh,300px);padding:32px;border:1px solid #cad9bd;border-radius:26px;background:linear-gradient(145deg,#f5f8eb,#e7efd8);text-decoration:none;color:#2f5c42;box-shadow:0 8px 26px #24463807;overflow:hidden;isolation:isolate}.learning-choice:after{content:'';position:absolute;right:-25px;top:-35px;width:235px;height:235px;border-radius:50%;background:#ffffff3b;z-index:-1}.learning-choice img{order:2;width:clamp(125px,14vw,175px);height:clamp(125px,14vw,175px);object-fit:contain;flex-shrink:0;margin-left:16px}.choice-copy{display:flex;flex-direction:column;gap:12px;max-width:290px;min-width:0}.learning-choice strong{font:700 clamp(24px,2.4vw,32px)/1.17 Georgia,serif;letter-spacing:-.2px}.choice-copy>span{font:16px/1.55 system-ui}.choice-copy .choice-start{display:inline-flex;align-items:center;gap:10px;font-weight:750;margin-top:12px;font-size:15px;color:#40683f}.learning-choice:hover{border-color:#83a276;box-shadow:0 10px 28px #24463814}.choice-semantics{background:linear-gradient(145deg,#fff6df,#f5e9ca);border-color:#e1d2b2;color:#795c35}.choice-semantics .choice-start{color:#806039}.choice-gist{background:linear-gradient(145deg,#edf6f7,#e0eef0);border-color:#c4d7dc;color:#3d6570}.choice-gist .choice-start{color:#436c73}.choice-power{background:linear-gradient(145deg,#f4eff8,#e9dfee);border-color:#d9c8e0;color:#69527c}.choice-power .choice-start{color:#705383}.learning-greeting{margin-bottom:26px}.realm-status{margin-top:24px;padding:19px 24px;background:#ecf2e5;border-radius:17px;border:1px solid #d8e3cd;display:flex;justify-content:space-between;align-items:center;gap:18px;color:#5b7552}.realm-status:empty{display:none}.realm-status p{font-size:14px;margin:0}.realm-policy{max-width:none;padding:25px 28px;margin:0 0 24px;border:1px solid #d5dfcc;border-radius:20px;background:#fffdf7}.policy-heading{display:flex;align-items:center;gap:14px;margin-bottom:10px}.policy-heading h3{font:700 22px Georgia,serif;margin:0}.policy-help{margin:0}.policy-help>summary{display:flex;align-items:center;justify-content:center;list-style:none;cursor:pointer;width:30px;height:30px;border:1px solid #9aaa8f;border-radius:50%;font:700 17px Georgia,serif;color:#607950;background:#edf3e7}.policy-help>summary::-webkit-details-marker{display:none}.policy-help-content{padding:24px;background:#f0f5e9;border:1px solid #c6d6bc;border-radius:15px;margin:15px 0;max-width:800px}.policy-help[open]{flex:1}.policy-help[open] .policy-help-content{position:relative}.policy-heading:has(.policy-help[open]){flex-wrap:wrap}.policy-help-content h4{font-size:20px}.policy-help-content dl{margin:0}.policy-help-content dt{font-weight:750;margin:15px 0 5px}.policy-help-content dd{margin:0;color:#506b49;line-height:1.6}.policy-help-content p{font-size:14px;line-height:1.6}.realm-policy .policy-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin:20px 0 5px}.policy-fields label{font-size:14px}.realm-policy>label{max-width:500px}.delayed-loading{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);z-index:10000;background:#28533c;color:#fff;padding:12px 21px;border-radius:28px;display:flex;gap:12px;align-items:center;font:600 15px/1.4 system-ui;box-shadow:0 6px 25px #24463826;pointer-events:none;max-width:calc(100vw - 32px)}.delayed-loading .loading-label{white-space:normal}.journey-complete{max-width:850px;margin:0 auto;padding:32px;text-align:center;background:#fffdf7;border:1px solid #d8dfc9;border-radius:24px;color:#28533c;font:18px/1.7 system-ui}.journey-complete h1{font:700 34px/1.3 Georgia}.celebration-mark{font-size:72px}.shield-trail{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;align-items:center;margin:24px 0}.shield{font-size:34px;color:#9ea995}.shield.earned{color:#c9913c}.journey-actions{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}.journey-actions button,.journey-actions a{padding:12px 18px;border-radius:12px;border:1px solid #b7c3a5;color:#28533c;background:#edf2e4;font:600 17px system-ui;text-decoration:none}.journey-actions .primary{background:#28533c;color:white}.completion-coins{font-weight:700}.save-signout{min-height:44px}
@media(max-width:950px){.learning-grid{gap:18px}.learning-choice{padding:25px;min-height:245px}.learning-choice img{width:120px;height:120px;margin-left:10px}.learning-choice strong{font-size:27px}.choice-copy>span{font-size:15px}.realm-policy .policy-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.learning-grid{grid-template-columns:1fr;gap:15px}.learning-choice{padding:25px;min-height:200px;border-radius:22px}.learning-choice img{width:125px;height:125px}.choice-copy{max-width:260px}.learning-choice strong{font-size:28px}.realm-status{align-items:flex-start;flex-direction:column;gap:12px;padding:18px 20px}.realm-policy{padding:22px 20px}.realm-policy .policy-fields{gap:12px}.policy-help-content{padding:18px}.journey-complete{padding:20px}.journey-complete h1{font-size:27px}.delayed-loading{bottom:15px;font-size:14px;padding:11px 18px}}
@media(max-width:380px){.learning-choice{padding:21px 18px;min-height:190px}.learning-choice img{width:92px;height:110px}.learning-choice strong{font-size:25px}.choice-copy>span{font-size:14px}.realm-policy .policy-fields{grid-template-columns:1fr}}
/* This stylesheet is shared with Phonics and Writing, so the real spinner is self-contained. */
.delayed-loading .spinner{display:block;width:18px;height:18px;flex:0 0 18px;border:2px solid #ffffff66;border-top-color:#fff;border-radius:50%;animation:journey-spin .8s linear infinite}@keyframes journey-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.delayed-loading .spinner{animation:none}}
/* Give the single loading indicator its own space instead of covering controls. */
.loading-dock{display:flex;align-items:center;justify-content:center;min-height:68px;margin-top:12px}.loading-dock>.delayed-loading{position:static;left:auto;bottom:auto;transform:none;margin:0;max-width:100%;z-index:auto}.loading-dock:empty{display:none}.journey-complete .loading-dock:empty,.access-card .loading-dock:empty{display:flex}.journey-complete{max-width:1000px;text-align:left;padding:28px 32px;margin:20px auto;box-shadow:0 8px 28px #24463806;overflow:hidden}.journey-complete h1{font:700 clamp(27px,3vw,35px)/1.2 AtlumioAdventure,'Trebuchet MS',sans-serif;letter-spacing:-.5px;margin:5px 0 0;color:#214f3f}.completion-layout{display:grid;grid-template-columns:minmax(0,1fr) 245px;gap:32px;align-items:center}.completion-copy{min-width:0}.completion-heading{display:flex;align-items:center;gap:14px;margin-bottom:18px}.completion-heading>svg{flex:0 0 48px}.completion-eyebrow{font:650 12px/1.4 system-ui;text-transform:uppercase;letter-spacing:1.2px;color:#7a9166}.journey-complete .completion-title{font:700 21px/1.4 system-ui;margin:0 0 8px;color:#375d44}.completion-review{font:16px/1.6 system-ui;margin:0 0 23px;max-width:50ch;color:#5c7654}.completion-progress{margin:20px 0}.completion-progress-label{display:flex;align-items:baseline;gap:10px;font:14px/1.5 system-ui;color:#6e8263}.completion-progress-label strong{font-size:20px;color:#497044}.completion-progress-track{display:flex;gap:6px;margin-top:9px;max-width:440px}.completion-step{height:9px;flex:1;border-radius:6px;background:#e8edde;border:1px solid #d7e1cb}.completion-step.is-complete{background:#7b9b63;border-color:#6f9359}.completion-wallet{display:flex;gap:11px;align-items:center;margin:22px 0}.completion-wallet>div{display:flex;gap:4px;flex-direction:column;font:14px/1.5 system-ui;color:#7d8068}.completion-wallet strong{font-size:17px;color:#8f7333}.journey-complete .journey-actions{justify-content:flex-start;gap:11px;margin:22px 0 0}.journey-complete .journey-actions button,.journey-complete .journey-actions a{font:700 16px/1.4 system-ui;min-height:48px;min-width:115px;padding:12px 20px}.completion-realm{position:relative;display:flex;align-items:center;flex-direction:column;text-align:center;gap:9px;padding:20px 15px 24px;border:1px solid #d3dcc3;border-radius:22px;background:linear-gradient(#eff5e6,#e4ecd5);text-decoration:none;color:#385f3d;box-shadow:0 5px 17px #33552908;overflow:hidden}.completion-realm:hover{border-color:#87a374;background:#e8f0dc}.completion-realm-art{position:relative;display:grid;place-items:center;align-self:stretch;height:170px;overflow:hidden;border-radius:14px;background:linear-gradient(#eaf4df,#dbe9c7)}.completion-realm-art img{object-fit:contain;filter:drop-shadow(0 6px 4px #35552e20);max-width:100%;height:158px;width:158px}.completion-realm-name{font:700 12px/1.5 system-ui;text-transform:uppercase;letter-spacing:1.4px;color:#83966c;margin-top:5px}.completion-realm strong{font:700 18px/1.4 system-ui}.completion-realm>span:last-child{font:14px/1.4 system-ui;color:#6b8160}.completion-companion{text-align:center;border-radius:22px;background:#f0f4e7;padding:25px 20px;align-self:stretch;display:flex;flex-direction:column;align-items:center;justify-content:center}.completion-companion img{width:140px;height:140px;object-fit:contain}.completion-companion p{font:14px/1.6 system-ui;color:#6b8160;margin:12px 0 0;max-width:20ch}.completion-loading{min-height:120px;padding:16px}.completion-loading .loading-dock{margin:0;min-height:88px}.journey-error{font:14px/1.5 system-ui;color:#895a3e;margin:16px 0 0}.journey-complete .loading-dock{margin-top:10px;min-height:60px}
@media(max-width:700px){.journey-complete{padding:24px 22px}.completion-layout{grid-template-columns:1fr;gap:22px}.completion-heading{gap:11px}.journey-complete h1{font-size:29px}.completion-eyebrow{font-size:11px}.journey-complete .completion-title{font-size:20px}.completion-review{font-size:15px;margin-bottom:19px}.completion-realm{display:grid;grid-template-columns:115px minmax(0,1fr);gap:6px 15px;text-align:left;align-items:center;padding:15px}.completion-realm-art{grid-row:1/4;height:115px}.completion-realm-art img{width:108px;height:108px}.completion-realm-name{margin:0}.completion-realm strong{font-size:17px}.completion-companion{flex-direction:row;gap:17px;align-self:auto;padding:17px;text-align:left}.completion-companion img{width:83px;height:83px}.completion-companion p{margin:0;max-width:28ch}.journey-complete .journey-actions{margin-top:19px}.journey-complete .journey-actions button,.journey-complete .journey-actions a{flex:1;font-size:16px;padding:12px 16px}.journey-complete .loading-dock{min-height:55px}.loading-dock{min-height:65px}}


.adult-area{max-width:540px;margin:30px auto;padding:26px;border:1px solid #abc8b8;border-radius:18px;background:#f4faf6}.adult-area form{display:grid;gap:14px}.adult-area>button{margin-top:16px}.adult-notice{color:#a22d25}.recovery-code{display:block;white-space:normal;overflow-wrap:anywhere;font-size:1.2rem;padding:18px;background:white;border:1px solid #c4d9cb;border-radius:10px;margin:20px 0}.setup-checklist{padding:20px;border:1px solid #c4d9cb;border-radius:15px;background:#f4faf6;margin:20px 0}.setup-checklist ol{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.setup-checklist li{display:flex;gap:10px;align-items:center}.setup-checklist li>span{font-weight:bold;color:#245b49}.setup-checklist button{background:transparent;text-align:left;text-decoration:underline}.writing-history article{padding:12px 0;border-top:1px solid #d8e4dc}.writing-text{white-space:pre-wrap}.pupil-feedback-link{margin:18px 0}.adult-area :focus-visible,.setup-checklist :focus-visible{outline:3px solid #245b49;outline-offset:3px}@media(max-width:600px){.setup-checklist ol{grid-template-columns:1fr}.adult-area{padding:18px;margin:15px 0}}
