.portal-disclosure{background:#fffdf8;border:1px solid #d8e0d5;border-radius:16px;margin:20px 0;overflow:hidden}.portal-disclosure-toggle{text-align:left;color:#234e40;cursor:pointer;width:100%;font:inherit;background:0 0;border:0;justify-content:space-between;align-items:center;gap:20px;padding:22px 26px;display:flex}.portal-disclosure-toggle>span:first-child{gap:6px;display:grid}.portal-disclosure-toggle strong{font-size:1.125rem;font-weight:650}.portal-disclosure-toggle small{color:#6b756c;font-size:.875rem;line-height:1.5}.portal-disclosure-action{white-space:nowrap;align-items:center;gap:12px;font-size:.875rem;font-weight:600;display:flex}.portal-disclosure-action b{background:#edf1e7;border-radius:50%;place-items:center;width:30px;height:30px;font-size:1.125rem;font-weight:400;display:grid}.portal-disclosure-toggle:hover{background:#f3f5ed}.portal-disclosure-toggle:focus-visible{outline-offset:-4px;outline:3px solid #527a68}.portal-disclosure-content{padding:0 24px 24px}.portal-disclosure-content .journey-inventory{box-shadow:none;border:0;margin:0}.portal-disclosure-content .learning-hub{display:block}.portal-disclosure-content .lessons-panel{margin:0}.portal-disclosure-content .completed-wide{margin-top:0}.portal-section-loading,.portal-section-error{color:#557364;margin:0;padding:24px 0;font-size:1rem}.portal-section-error button{color:#234e40;cursor:pointer;background:#fff;border:1px solid #c8d5c8;border-radius:8px;margin-left:16px;padding:8px 14px}.portal-on-demand-area{margin-top:32px}.portal-on-demand-area>p{color:#6b756c;font-size:.875rem}.journey-layout>.portal-disclosure{grid-column:1/-1;width:100%;margin-bottom:0}@media (max-width:600px){.portal-disclosure-toggle{gap:12px;padding:18px}.portal-disclosure-content{padding:0 16px 18px}.portal-disclosure-toggle strong{font-size:1rem}.portal-disclosure-action{gap:8px}}.portal-on-demand-area .portal-hub-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px;margin-top:22px;display:grid}.portal-hub-grid>.portal-disclosure{min-width:0;margin:0}.portal-hub-grid .portal-disclosure-toggle{gap:14px;min-height:112px;padding:22px}.portal-hub-grid .portal-disclosure-toggle>span:first-child{min-width:0}.portal-hub-grid .portal-disclosure-toggle small{text-wrap:pretty}@media (max-width:760px){.portal-on-demand-area .portal-hub-grid{grid-template-columns:minmax(0,1fr);gap:14px}.portal-hub-grid .portal-disclosure-toggle{min-height:96px;padding:18px}}#lesson-library{scroll-margin-top:96px}.portal-signin-page{min-height:100vh;color:#24342b;background:#f4f2eb;place-items:center;min-height:100svh;padding:40px 24px;display:grid}.portal-signin-shell{width:min(460px,100%)}.portal-signin-brand{letter-spacing:.12em;justify-content:flex-start;align-items:center;gap:12px;margin-bottom:46px;font:800 12px/1.4 Manrope,sans-serif;display:flex}.portal-signin-card{background:#fffefa;border:1px solid #dcded5;border-radius:24px;padding:46px 44px 42px}.portal-signin-title p{color:#7a6740;letter-spacing:.14em;text-transform:uppercase;margin:0 0 18px;font:800 12px/1.5 Manrope,sans-serif}.portal-signin-title h1{letter-spacing:-.05em;margin:0;font:900 46px/1.08 Manrope,sans-serif}.portal-signin-access{margin-top:42px}.portal-signin-access h2{letter-spacing:-.025em;min-height:30px;margin:0 0 20px;font:600 23px/1.3 Manrope,sans-serif}.portal-signin-access .google-login{justify-content:flex-start;margin:0}.portal-signin-access .login-error{margin:18px 0 0}.portal-signin-access>button{color:#24342b;cursor:pointer;background:#fff;border:1px solid #ced5ce;border-radius:10px;margin-top:16px;padding:12px 16px}@media (max-width:520px){.portal-signin-page{padding:32px 20px}.portal-signin-card{border-radius:22px;padding:34px 28px}.portal-signin-title h1{font-size:clamp(34px,9.6vw,44px)}.portal-signin-access{margin-top:34px}.portal-signin-access h2{font-size:22px}}.portal-welcome-wish{color:var(--rp-ink-2,#47534d);max-width:36em;margin:8px 0 20px;font-size:14px;line-height:1.6}.trial-day-notice{margin:0 0 var(--rp-6);padding:var(--rp-5) var(--rp-6);border:var(--rp-border);border-radius:var(--rp-radius-lg);background:var(--rp-sheet);color:var(--rp-ink);box-shadow:none}.trial-day-notice-heading{justify-content:space-between;align-items:flex-start;gap:var(--rp-4);display:flex}.trial-day-notice .trial-day-eyebrow{align-items:center;gap:var(--rp-2);margin:0 0 var(--rp-2);color:var(--rp-muted);font:500 var(--rp-text-xs)/1 var(--rp-sans);letter-spacing:.14em;display:flex}.trial-day-notice .trial-day-eyebrow:before{content:"";background:var(--rp-pen);border-radius:50%;width:6px;height:6px}.trial-day-notice h3{color:var(--rp-ink);font:500 var(--rp-text-xl)/var(--rp-leading-tight) var(--rp-serif);letter-spacing:-.005em;margin:0}.trial-day-notice-heading>a{align-items:center;gap:var(--rp-1);min-height:36px;padding:0 var(--rp-3);border:1px solid var(--rp-line-strong);border-radius:var(--rp-radius-sm);color:var(--rp-ink);font:500 var(--rp-text-sm) var(--rp-sans);transition:border-color var(--rp-fast) var(--rp-ease),background-color var(--rp-fast) var(--rp-ease);background:0 0;flex-shrink:0;text-decoration:none;display:inline-flex}.trial-day-notice-heading>a:hover{border-color:var(--rp-brand);background:var(--rp-paper)}.trial-day-notice-heading>a:focus-visible{box-shadow:var(--rp-focus);outline:0}.trial-day-notice>p{margin:var(--rp-3) 0 0;color:var(--rp-ink-2);font-size:var(--rp-text-md);line-height:var(--rp-leading)}.trial-day-list{gap:var(--rp-2);margin:var(--rp-4) 0;flex-wrap:wrap;padding:0;list-style:none;display:flex}.trial-day-list>li{min-width:76px;padding:var(--rp-2) var(--rp-3);border:1px solid var(--rp-line-strong);border-radius:var(--rp-radius);background:var(--rp-paper);color:var(--rp-muted);font:500 var(--rp-text-xs)/1.2 var(--rp-sans);letter-spacing:.06em;text-transform:uppercase;align-items:baseline;gap:6px;display:flex}.trial-day-list strong{color:var(--rp-brand);font:500 22px/1 var(--rp-serif);letter-spacing:0;font-variant-numeric:tabular-nums}.trial-day-notice .trial-day-limit{padding-top:var(--rp-3);border-top:var(--rp-border);color:var(--rp-muted);font-size:var(--rp-text-sm);margin-top:0}@media (max-width:600px){.trial-day-notice{padding:var(--rp-4)}.trial-day-notice-heading{gap:var(--rp-3)}.trial-day-notice h3{font-size:19px}.trial-day-notice-heading>a{min-height:32px;padding:0 var(--rp-2);font-size:var(--rp-text-xs)}.trial-day-list>li{min-width:0}}.portal-page.redpen{background:var(--rp-paper);font-family:var(--rp-sans)}.portal-page.redpen .shell{width:min(1040px,100% - 48px);padding:var(--rp-7) 0 var(--rp-8)}.portal-page.redpen .today-agenda{padding:0 0 var(--rp-7);margin:0 0 var(--rp-6);border-bottom:var(--rp-border)}.portal-page.redpen .today-date{color:var(--rp-muted);font-size:var(--rp-text-sm);margin:0}.portal-page.redpen .today-date span{color:var(--rp-muted);opacity:.7}.portal-page.redpen .today-agenda h1{max-width:none;margin:var(--rp-2) 0 var(--rp-5);font:500 var(--rp-text-2xl)/var(--rp-leading-tight) var(--rp-serif);letter-spacing:-.01em;color:var(--rp-ink)}.portal-page.redpen .today-list{border-top:var(--rp-border);margin:0;padding:0;list-style:none}.portal-page.redpen .today-list>li{border-bottom:var(--rp-border)}.portal-page.redpen .today-list>li>:is(a,div,button){gap:var(--rp-4);width:100%;padding:var(--rp-4) var(--rp-2);color:inherit;font:inherit;text-align:left;cursor:default;background:0 0;border:0;border-radius:0;grid-template-columns:112px minmax(0,1fr) auto;align-items:baseline;margin:0;text-decoration:none;display:grid}.portal-page.redpen .today-list>li>:is(a,button){cursor:pointer;transition:background-color var(--rp-fast) var(--rp-ease)}.portal-page.redpen .today-list>li>:is(a,button):hover{background:var(--rp-sunk)}.portal-page.redpen .today-label{color:var(--rp-muted);font-size:var(--rp-text-xs);letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.portal-page.redpen .today-title{min-width:0;font-size:var(--rp-text-lg);color:var(--rp-ink);font-weight:500;line-height:1.4}.portal-page.redpen .today-title small{color:var(--rp-muted);font-size:var(--rp-text-sm);margin-top:2px;font-weight:400;display:block}.portal-page.redpen .today-tag{color:var(--rp-brand);font-size:var(--rp-text-sm);white-space:nowrap;font-weight:500}.portal-page.redpen .today-tag .portal-navigation-status{display:inline-flex}.portal-page.redpen .today-tag.is-done{color:var(--rp-done);font-weight:400}.portal-page.redpen .today-tag.is-pen,.portal-page.redpen .is-late .today-label{color:var(--rp-pen)}.portal-page.redpen .today-list>li.is-done .today-title{color:var(--rp-muted);text-decoration:line-through;-webkit-text-decoration-color:var(--rp-line-strong);text-decoration-color:var(--rp-line-strong)}.portal-page.redpen .today-list>li.is-late small{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.portal-page.redpen .today-list>li.is-late{background:linear-gradient(90deg,var(--rp-pen) 0 2px,transparent 2px)}.portal-page.redpen .today-actions{align-items:center;gap:var(--rp-3);margin-top:var(--rp-5);flex-wrap:wrap;display:flex}.portal-page.redpen .today-primary{min-height:42px;padding:0 var(--rp-5);border-radius:var(--rp-radius-sm);background:var(--rp-brand);color:var(--rp-on-brand);font-size:var(--rp-text-md);transition:background-color var(--rp-fast) var(--rp-ease);align-items:center;font-weight:500;text-decoration:none;display:inline-flex}.portal-page.redpen .today-primary:hover{background:var(--rp-brand-hover)}.portal-page.redpen .today-secondary{min-height:42px;padding:0 var(--rp-4);border:1px solid var(--rp-line-strong);border-radius:var(--rp-radius-sm);color:var(--rp-ink);font:500 var(--rp-text-md) var(--rp-sans);cursor:pointer;background:0 0}.portal-page.redpen .today-secondary:hover{background:var(--rp-sunk)}.portal-page.redpen .today-head{gap:var(--rp-6);margin:0 0 var(--rp-5);grid-template-columns:116px minmax(0,1fr);align-items:center;display:grid}.portal-page.redpen .today-head .today-agenda-copy,.portal-page.redpen .today-head h1{margin-bottom:0}.portal-page.redpen .today-head .day-calendar{aspect-ratio:auto;width:116px;padding:0 0 var(--rp-2);border:1px solid var(--rp-ink);border-radius:var(--rp-radius-sm);background:var(--rp-sheet);box-shadow:none;color:var(--rp-ink);cursor:pointer;transition:border-color var(--rp-fast) var(--rp-ease);flex-direction:column;justify-content:flex-start;justify-self:start;align-items:center;margin:8px 0 0;display:flex;position:relative}.portal-page.redpen .today-head .day-calendar:before,.portal-page.redpen .today-head .day-calendar:after{display:none}.portal-page.redpen .today-head .day-calendar:hover{border-color:var(--rp-brand)}.portal-page.redpen .today-head .day-calendar:focus-visible{box-shadow:var(--rp-focus);outline:0}.portal-page.redpen .today-head .calendar-rings{pointer-events:none;justify-content:space-between;padding:0 30px;display:flex;position:absolute;top:-8px;left:0;right:0}.portal-page.redpen .today-head .calendar-rings i{background:var(--rp-ink);width:6px;height:15px;box-shadow:none;border:0;border-radius:3px}.portal-page.redpen .today-head .calendar-weekday{background:var(--rp-brand);width:100%;color:var(--rp-on-brand);font:600 11px/1 var(--rp-sans);letter-spacing:.1em;text-transform:uppercase;border-radius:3px 3px 0 0;padding:10px 0 8px;font-style:normal;display:block}.portal-page.redpen .today-head .day-calendar>span:not(.calendar-rings){color:var(--rp-pen);font:600 10px/1 var(--rp-sans);letter-spacing:.18em;margin:10px 0 0}.portal-page.redpen .today-head .day-calendar>strong{min-width:0;color:var(--rp-ink);font:500 58px/1 var(--rp-serif);letter-spacing:-.02em;margin:2px 0 6px}.portal-page.redpen .today-head .day-calendar>small{border-top:1px dashed var(--rp-line-strong);width:calc(100% - 20px);color:var(--rp-ink-2);font:500 12px/1.2 var(--rp-sans);letter-spacing:.06em;margin:0;padding-top:7px;display:block}.portal-page.redpen .shell{counter-reset:ly-chapter}.portal-page.redpen .section-heading{counter-increment:ly-chapter;justify-content:space-between;align-items:flex-end;gap:var(--rp-4);margin:var(--rp-8) 0 var(--rp-5);padding:var(--rp-4) 0 0;border-top:1px solid var(--rp-ink);border-bottom:0;display:flex}.portal-page.redpen .section-heading>div:before{content:counter(ly-chapter,decimal-leading-zero);margin:0 0 var(--rp-3);color:var(--rp-pen);font:500 var(--rp-text-md)/1 var(--rp-serif);letter-spacing:.08em;display:block}.portal-page.redpen .section-heading h2{font:500 clamp(28px,3.2vw,38px)/1.08 var(--rp-serif);letter-spacing:-.018em;text-transform:none;color:var(--rp-ink);margin:0}.portal-page.redpen .section-heading .updated{color:var(--rp-muted);font:400 var(--rp-text-xs) var(--rp-sans);letter-spacing:0;text-transform:none}.portal-page.redpen .progress-grid{gap:var(--rp-4)}.portal-page.redpen .progress-card{background:var(--rp-sheet);color:var(--rp-ink);border:var(--rp-border);border-radius:var(--rp-radius-lg);box-shadow:none;padding:var(--rp-5)}.portal-page.redpen .progress-card:hover{box-shadow:none;border-color:var(--rp-line-strong);transform:none}.portal-page.redpen .progress-card :is(span,small){font-family:var(--rp-sans);letter-spacing:0;text-transform:none}.portal-page.redpen .progress-card .lesson-progress>span,.portal-page.redpen .attendance-progress>span{color:var(--rp-muted);font-size:var(--rp-text-xs);font-weight:500}.portal-page.redpen .progress-card :is(strong,b){font-family:var(--rp-sans);color:var(--rp-ink);letter-spacing:-.01em}.portal-page.redpen .progress-copy strong{font-size:var(--rp-text-xl);font-weight:600}.portal-page.redpen .progress-copy b{font-size:28px;font-weight:500}.portal-page.redpen .progress-card p{color:var(--rp-muted);font-size:var(--rp-text-sm)}.portal-page.redpen .progress-card .track{background:var(--rp-sunk);border-radius:3px;height:6px}.portal-page.redpen .progress-card .track span{background:var(--rp-brand);border-radius:3px}.portal-page.redpen .attendance-donut{box-shadow:none}.portal-page.redpen .attendance-donut:after{background:var(--rp-sheet)}.portal-page.redpen .attendance-donut b{font-family:var(--rp-sans);color:var(--rp-ink);font-weight:600}.portal-page.redpen .attendance-donut small{color:var(--rp-muted)}.portal-page.redpen .attendance-progress strong{font-size:var(--rp-text-xl);font-weight:600}.portal-page.redpen .attendance-progress small{color:var(--rp-muted)}.portal-page.redpen .portal-disclosure{border:0;border-top:var(--rp-border);border-bottom:var(--rp-border);box-shadow:none;margin-top:var(--rp-5);background:0 0;border-radius:0}.portal-page.redpen .portal-disclosure+.portal-disclosure{border-top:0;margin-top:0}.portal-page.redpen .portal-disclosure-toggle{padding:var(--rp-4) var(--rp-2);font-family:var(--rp-sans);background:0 0;border-radius:0}.portal-page.redpen .portal-disclosure-toggle:hover{background:var(--rp-sunk)}.portal-page.redpen .portal-disclosure-toggle{padding:var(--rp-5) var(--rp-2)}.portal-page.redpen .portal-disclosure-toggle strong{font:500 var(--rp-text-xl)/1.3 var(--rp-serif);letter-spacing:-.01em;color:var(--rp-ink)}.portal-page.redpen .portal-disclosure-toggle small{color:var(--rp-muted);font-size:var(--rp-text-sm)}.portal-page.redpen .portal-disclosure-action{color:var(--rp-brand);font:500 var(--rp-text-sm) var(--rp-sans)}.portal-page.redpen .portal-disclosure-action b{border:1px solid var(--rp-line-strong);color:var(--rp-ink);background:0 0}.portal-page.redpen .homework-journey{background:var(--rp-sheet);border:var(--rp-border);border-radius:var(--rp-radius-lg);box-shadow:none;font-family:var(--rp-sans)}.portal-page.redpen .journey-heading :is(h2,h3,strong){font-family:var(--rp-serif);letter-spacing:0;color:var(--rp-ink);font-weight:500}.portal-page.redpen .homework-journey .journey-heading h3{margin:var(--rp-1) 0 var(--rp-1);letter-spacing:-.012em;font-size:clamp(24px,2.6vw,30px);line-height:1.15}.portal-page.redpen .journey-eyebrow{color:var(--rp-muted);font:500 var(--rp-text-xs) var(--rp-sans);letter-spacing:.02em;text-transform:none}.portal-page.redpen .course-day-detail{background:var(--rp-paper);border:var(--rp-border);border-radius:var(--rp-radius);box-shadow:none;color:var(--rp-ink)}.portal-page.redpen .course-day-detail-head h3{font:500 var(--rp-text-xl) var(--rp-serif);color:var(--rp-ink)}.portal-page.redpen .course-day-detail .kicker{color:var(--rp-muted);font:500 var(--rp-text-xs) var(--rp-sans);letter-spacing:.02em}.portal-page.redpen .map-task-status.late{color:var(--rp-pen)}.portal-page.redpen .map-task-status.done{color:var(--rp-done)}.portal-page.redpen .homework-journey :is(.course-day-detail,.journey-player-card){background:var(--rp-sheet);border:var(--rp-border);box-shadow:none}.portal-page.redpen .homework-journey .course-day-detail-head b,.portal-page.redpen .homework-journey .map-skill-pill{background:var(--rp-sunk);color:var(--rp-ink-2);border:0}.portal-page.redpen .homework-journey :is(.map-task-status,.task-status-text),.portal-page.redpen .homework-journey .completed .task-status-text{color:var(--rp-muted);background:0 0;border-color:#0000;padding-inline:0}.portal-page.redpen .homework-journey :is(.map-task-status.done,.completed .task-status-text){color:var(--rp-done)}.portal-page.redpen .homework-journey .map-task-status.late{color:var(--rp-pen)}.portal-page.redpen .homework-journey :is(.journey-heading p,.journey-progress>span,.journey-player-card span,.journey-player-card small,.course-day-date,.course-day-tasks small,.course-day-tasks>a>span){color:var(--rp-muted)}.portal-page.redpen .homework-journey :is(.journey-progress strong,.journey-player-card strong,.course-day-detail-head h3,.course-day-tasks>a,.course-day-tasks>a strong){color:var(--rp-ink)}.portal-page.redpen .homework-journey .course-day-detail .kicker{color:var(--rp-muted)}.portal-page.redpen .homework-journey .journey-progress>div{background:var(--rp-sunk)}.portal-page.redpen .homework-journey .course-day-tasks>:is(a,div){border-top-color:var(--rp-line)}.portal-page.redpen :is(.portal-navigation-status-copy,.map-skill-pill,.course-day-detail-head b,.lesson-summary-popover,.social-links a,.journey-player-card){font-family:var(--rp-sans)}.portal-page.redpen .map-skill-pill{background:var(--rp-sunk);color:var(--rp-ink-2);letter-spacing:0;text-transform:none;border:0}.portal-page.redpen>footer{color:var(--rp-muted);border-top:var(--rp-border);font-family:var(--rp-sans);font-size:var(--rp-text-sm);background:0 0}.portal-page.redpen>footer .social-links a{border:1px solid var(--rp-line-strong);color:var(--rp-ink-2);background:0 0}.portal-page.redpen .portal-refresh-note{background:var(--rp-sheet);border:var(--rp-border);color:var(--rp-ink-2);font-family:var(--rp-sans)}@media (max-width:760px){.portal-page.redpen .shell{width:calc(100% - 32px);padding-top:var(--rp-5)}.portal-page.redpen .today-agenda h1{margin-bottom:var(--rp-4)}.portal-page.redpen .today-list>li>:is(a,div,button){padding:var(--rp-3) var(--rp-1);grid-template-columns:minmax(0,1fr) auto;row-gap:2px}.portal-page.redpen .today-label{grid-column:1/-1}.portal-page.redpen .today-actions>*{flex:auto;justify-content:center}.portal-page.redpen .section-heading{margin-top:var(--rp-7)}.portal-page.redpen .today-head{gap:var(--rp-4);grid-template-columns:88px minmax(0,1fr)}.portal-page.redpen .today-head .day-calendar{width:88px}.portal-page.redpen .today-head .calendar-rings{padding:0 20px}.portal-page.redpen .today-head .day-calendar>strong{font-size:42px}.portal-page.redpen .today-head .calendar-weekday{letter-spacing:.06em;font-size:9px}}@media (prefers-reduced-motion:reduce){.portal-page.redpen *{transition:none!important}}.portal-page.redpen .progress-card.tutor-progress-card .lesson-progress>span{color:var(--rp-muted)}.portal-page.redpen .homework-journey{--dh-sea:#c4cad4;--dh-shadow:#2a2e36;--dh-ochre:#c29a4e}.portal-page.redpen .homework-journey :is(button:focus-visible,.journey-viewport:focus-visible){outline-color:var(--rp-brand)}.portal-page.redpen .homework-journey .journey-world{border:2px solid var(--rp-ink);background:var(--rp-paper)}.portal-page.redpen .homework-journey .journey-toolbar{background:var(--rp-brand);color:var(--rp-on-brand)}.portal-page.redpen .homework-journey .journey-toolbar>span>i{color:var(--rp-mark)}.portal-page.redpen .homework-journey .journey-toolbar button{background:var(--rp-sheet);border-color:var(--rp-mark);border-radius:var(--rp-radius-sm);color:var(--rp-ink)}.portal-page.redpen .homework-journey .journey-toolbar button:hover{background:var(--rp-mark)}.portal-page.redpen .homework-journey .journey-toolbar .journey-motion-toggle{border-color:color-mix(in srgb,var(--rp-on-brand) 45%,transparent);color:var(--rp-on-brand);background:0 0}.portal-page.redpen .homework-journey .journey-viewport{background:var(--dh-sea);scrollbar-color:var(--rp-line-strong) var(--rp-sunk)}.portal-page.redpen .homework-journey .journey-route-shadow{stroke:color-mix(in srgb,var(--dh-shadow) 55%,transparent)}.portal-page.redpen .homework-journey .journey-route-base{stroke:var(--rp-sheet)}.portal-page.redpen .homework-journey .journey-route-dashes{stroke:var(--rp-line-strong)}.portal-page.redpen .homework-journey .journey-route-done{stroke:var(--rp-done)}.portal-page.redpen .homework-journey .journey-day{border-color:var(--rp-paper);background:var(--rp-sheet);color:var(--rp-ink-2);box-shadow:3px 3px 0 var(--rp-line-strong)}.portal-page.redpen .homework-journey .journey-day.is-complete{background:var(--rp-done);color:var(--rp-paper);box-shadow:3px 3px #2c4228}.portal-page.redpen .homework-journey .journey-day.is-unfinished{background:var(--rp-sheet);border-color:var(--rp-pen);color:var(--rp-pen);box-shadow:3px 3px #6e2414}.portal-page.redpen .homework-journey .journey-day.is-rest{border-color:var(--rp-paper);color:#3e5376;background:#e3e5e8}.portal-page.redpen .homework-journey .journey-day.is-today{background:var(--rp-brand);border-color:var(--rp-paper);color:var(--rp-on-brand);box-shadow:3px 3px 0 #0f1626,0 0 0 5px var(--rp-pen)}.portal-page.redpen .homework-journey .journey-day.is-selected,.portal-page.redpen .homework-journey .journey-day.is-selected.is-today{outline-color:var(--rp-ink)}.portal-page.redpen .homework-journey .journey-day:is(:hover,:focus-visible){box-shadow:3px 3px 0 var(--dh-shadow),0 0 0 5px var(--rp-mark)}.portal-page.redpen .homework-journey .journey-day-mark{border-color:var(--rp-sheet);background:var(--rp-muted)}.portal-page.redpen .homework-journey .is-complete>.journey-day-mark{background:var(--rp-done)}.portal-page.redpen .homework-journey .is-unfinished>.journey-day-mark{background:var(--rp-pen)}.portal-page.redpen .homework-journey .is-rest>.journey-day-mark{background:#3e5376}.portal-page.redpen .homework-journey .journey-test-mark{background:var(--rp-ink-2);border-color:var(--rp-sheet);box-shadow:3px 3px 0 var(--dh-shadow)}.portal-page.redpen .homework-journey .journey-test-mark.is-earned{background:var(--dh-ochre);border-color:var(--rp-mark)}.portal-page.redpen .homework-journey .is-eoc>.journey-test-mark{background:var(--rp-pen);border-color:var(--rp-mark)}.portal-page.redpen .homework-journey .journey-player>.journey-player-label{background:var(--rp-ink);border-color:var(--rp-mark);color:var(--rp-mark)}.portal-page.redpen .homework-journey .journey-player>i{color:var(--rp-ink);text-shadow:none}.portal-page.redpen .homework-journey .journey-held-tool{background:var(--dh-ochre);border-color:var(--rp-mark);color:var(--rp-ink)}.portal-page.redpen .homework-journey .journey-day-tooltip{background:var(--rp-sheet);border-color:var(--rp-line-strong);color:var(--rp-ink)}.portal-page.redpen .homework-journey .journey-finish{background:var(--rp-ink);border-color:var(--rp-mark);color:var(--rp-mark)}.portal-page.redpen .homework-journey .journey-finish.is-conquered{background:var(--rp-mark);color:var(--rp-ink)}.portal-page.redpen .homework-journey .journey-legend{color:var(--rp-ink-2)}.portal-page.redpen .homework-journey .journey-legend .complete{background:var(--rp-done);color:var(--rp-paper)}.portal-page.redpen .homework-journey .journey-legend .unfinished{background:var(--rp-pen);color:var(--rp-paper)}.portal-page.redpen .homework-journey .journey-legend .future{background:var(--rp-sunk);color:var(--rp-ink-2)}.portal-page.redpen .homework-journey .journey-legend .rest{color:var(--rp-paper);background:#3e5376}.portal-page.redpen.portal-tutor .hero.tutor-hero{gap:var(--rp-6);padding:0 0 var(--rp-5);border:0;border-bottom:var(--rp-rule);box-shadow:none;background:0 0;border-radius:0;grid-template-columns:116px minmax(0,1fr)}.portal-page.redpen.portal-tutor .tutor-hero .hero-copy h1{font:500 var(--rp-text-2xl)/var(--rp-leading-tight) var(--rp-serif);letter-spacing:-.018em;color:var(--rp-ink)}.portal-page.redpen.portal-tutor .tutor-hero .hero-copy p{color:var(--rp-muted);font:400 var(--rp-text-md)/var(--rp-leading) var(--rp-sans)}.portal-page.redpen.portal-tutor .tutor-hero .hero-copy .eyebrow{font-size:var(--rp-text-xs);letter-spacing:0;text-transform:none}.portal-page.redpen.portal-tutor .tutor-identity-mark{width:116px;min-height:150px;padding:var(--rp-3);gap:var(--rp-1);border:var(--rp-border);border-radius:var(--rp-radius);background:var(--rp-sheet);box-shadow:none;transform:none}.portal-page.redpen.portal-tutor .tutor-identity-mark>span:first-child{font:600 var(--rp-text-xs) var(--rp-sans);color:var(--rp-brand);letter-spacing:.04em}.portal-page.redpen.portal-tutor .tutor-identity-mark>strong{font:600 var(--rp-text-md)/1.3 var(--rp-sans);color:var(--rp-ink)}.portal-page.redpen.portal-tutor .tutor-identity-mark>small{font:400 10px/1.4 var(--rp-sans);letter-spacing:0;color:var(--rp-muted)}.portal-page.redpen.portal-tutor .tutor-identity-mark>.journey-sprite{width:56px;height:56px}.portal-page.redpen.portal-tutor .tutor-progress-card .track{background:var(--rp-sunk)}.portal-page.redpen.portal-tutor .tutor-progress-card .track>span{background:var(--rp-brand);min-width:0}.portal-page.redpen.portal-tutor .tutor-progress-card .progress-copy :is(strong,b){font-family:var(--rp-sans);color:var(--rp-ink);font-weight:600}.portal-page.redpen.portal-tutor :is(.tutor-classroom-card,.tutor-lesson-archive,.reminder-panel,.task-panel){background:var(--rp-sheet);border:var(--rp-border);border-radius:var(--rp-radius-lg);box-shadow:none}.portal-page.redpen.portal-tutor :is(.tutor-classroom-heading h3,.tutor-replay-head h3,.tutor-lesson-archive h3,.reminder-head h3){font:500 var(--rp-text-xl)/1.3 var(--rp-serif);color:var(--rp-ink)}.portal-page.redpen.portal-tutor .lesson-space-link{border:var(--rp-border);border-radius:var(--rp-radius);box-shadow:none;background:var(--rp-paper);color:var(--rp-ink)}.portal-page.redpen.portal-tutor .lesson-space-link small{color:var(--rp-muted)}.portal-page.redpen.portal-tutor .lesson-space-link.meet i{background:var(--rp-brand);color:var(--rp-on-brand)}.portal-page.redpen.portal-tutor .tutor-quest{--tutor-sea:#c4cad4;background:var(--rp-sheet);border:var(--rp-border);border-radius:var(--rp-radius-lg);color:var(--rp-ink);font-family:var(--rp-sans)}.portal-page.redpen.portal-tutor .tutor-quest-heading{padding:var(--rp-5);border-color:var(--rp-line)}.portal-page.redpen.portal-tutor .tutor-quest h3{font:500 clamp(24px,2.6vw,30px)/1.2 var(--rp-serif);color:var(--rp-ink);letter-spacing:-.012em}.portal-page.redpen.portal-tutor .tutor-quest p{color:var(--rp-muted);font-size:var(--rp-text-md)}.portal-page.redpen.portal-tutor .tutor-quest .kicker{color:var(--rp-muted);font:500 var(--rp-text-xs) var(--rp-sans);letter-spacing:.02em}.portal-page.redpen.portal-tutor .tutor-total strong{font:600 28px var(--rp-sans)}.portal-page.redpen.portal-tutor .tutor-total small{font-size:var(--rp-text-sm)}.portal-page.redpen.portal-tutor .tutor-quest progress{background:var(--rp-sunk);height:6px;accent-color:var(--rp-brand)}.portal-page.redpen.portal-tutor .tutor-quest progress::-webkit-progress-bar{background:var(--rp-sunk)}.portal-page.redpen.portal-tutor .tutor-quest progress::-webkit-progress-value{background:var(--rp-brand)}.portal-page.redpen.portal-tutor .tutor-region-nav{gap:var(--rp-2);padding:var(--rp-4) var(--rp-5) 0;flex-wrap:wrap;display:flex}.portal-page.redpen.portal-tutor .tutor-region-nav button{align-items:center;gap:var(--rp-2);min-height:44px;padding:var(--rp-2) var(--rp-3);border:1px solid var(--rp-line-strong);border-radius:var(--rp-radius-sm);color:var(--rp-ink);font:500 var(--rp-text-sm) var(--rp-sans);cursor:pointer;background:0 0;display:flex}.portal-page.redpen.portal-tutor .tutor-region-nav small{font-size:var(--rp-text-xs);color:var(--rp-muted)}.portal-page.redpen.portal-tutor .tutor-region-nav button:hover{background:var(--rp-sunk)}.portal-page.redpen.portal-tutor .tutor-region-nav button[aria-pressed=true]{background:var(--rp-brand);border-color:var(--rp-brand);color:var(--rp-on-brand)}.portal-page.redpen.portal-tutor .tutor-region-nav button[aria-pressed=true] small{color:inherit}.portal-page.redpen.portal-tutor .tutor-world-layout{gap:var(--rp-5);padding:var(--rp-5);grid-template-columns:minmax(0,1fr) 260px}.portal-page.redpen.portal-tutor .tutor-world-layout>div{min-width:0}.portal-page.redpen.portal-tutor .tutor-world-bar{border:2px solid var(--rp-ink);background:var(--rp-brand);color:var(--rp-on-brand);padding:var(--rp-3);border-bottom:0;flex-wrap:wrap}.portal-page.redpen.portal-tutor .tutor-world-bar strong{font:500 var(--rp-text-lg) var(--rp-serif)}.portal-page.redpen.portal-tutor .tutor-world-bar button{background:var(--rp-sheet);min-height:44px;color:var(--rp-ink);border:1px solid var(--rp-line-strong);border-radius:var(--rp-radius-sm);font:500 var(--rp-text-sm) var(--rp-sans)}.portal-page.redpen.portal-tutor .tutor-archipelago-scroll{border:2px solid var(--rp-ink);background:var(--tutor-sea);scrollbar-color:var(--rp-line-strong) var(--rp-sunk)}.portal-page.redpen.portal-tutor .tutor-archipelago{--ground:var(--rp-done-line);--trail:var(--rp-mark);--building:var(--rp-sheet);--leaf:var(--rp-done);min-width:660px}.portal-page.redpen.portal-tutor :is(.tutor-island,.tutor-ocean g[class^=land-]){--ground:var(--rp-done-line);--trail:var(--rp-mark);--building:var(--rp-sheet);--leaf:var(--rp-done)}.portal-page.redpen.portal-tutor .tutor-ocean .land-eoc{--ground:var(--rp-muted);--building:var(--rp-line-strong)}.portal-page.redpen.portal-tutor .tutor-island-sign{background:var(--rp-paper);border-color:var(--rp-ink-2);color:var(--rp-ink);box-shadow:3px 4px 0 var(--rp-line-strong)}.portal-page.redpen.portal-tutor .tutor-island-sign strong{font:600 var(--rp-text-md)/1.3 var(--rp-sans)}.portal-page.redpen.portal-tutor .tutor-island-hit:is(:hover,.is-selected) .tutor-island-sign{border-color:var(--rp-pen);box-shadow:0 0 0 2px var(--rp-paper),3px 4px 0 var(--rp-ink-2)}.portal-page.redpen.portal-tutor .tutor-island-meter{background:var(--rp-line)}.portal-page.redpen.portal-tutor .tutor-island-meter i{background:var(--rp-done)}.portal-page.redpen.portal-tutor :is(.tutor-world-player small,.tutor-station-player small){background:var(--rp-ink);color:var(--rp-mark);border-color:var(--rp-mark);font-family:var(--rp-sans)}.portal-page.redpen.portal-tutor .tutor-ocean-label{color:var(--rp-brand);text-shadow:none;font-family:var(--rp-sans)}.portal-page.redpen.portal-tutor :is(.tutor-warrior-card,.tutor-weapons>div,.tutor-eoc-note){background:var(--rp-paper);border:var(--rp-border);border-radius:var(--rp-radius);color:var(--rp-ink-2);box-shadow:none}.portal-page.redpen.portal-tutor .tutor-warrior-card strong{font:500 var(--rp-text-xl)/1.3 var(--rp-serif)}.portal-page.redpen.portal-tutor .tutor-weapons>div.earned{background:var(--rp-done-soft);border-color:var(--rp-done-line);color:var(--rp-done)}.portal-page.redpen.portal-tutor .tutor-inventory h4{font:500 var(--rp-text-xl) var(--rp-serif)}.portal-page.redpen.portal-tutor .tutor-inventory h4 span{color:var(--rp-muted)}.portal-page.redpen.portal-tutor .tutor-region-detail{margin:0 var(--rp-5) var(--rp-5);background:var(--rp-paper);border:var(--rp-border);border-radius:var(--rp-radius);scroll-margin-top:var(--rp-5)}.portal-page.redpen.portal-tutor .tutor-region-detail>header{border-color:var(--rp-line);padding:var(--rp-5);background:0 0}.portal-page.redpen.portal-tutor .tutor-resource-filters{gap:var(--rp-2);flex-wrap:wrap;display:flex}.portal-page.redpen.portal-tutor .tutor-resource-filters button{min-height:44px;padding:var(--rp-2) var(--rp-3);border:1px solid var(--rp-line-strong);border-radius:var(--rp-radius-sm);color:var(--rp-ink);font:500 var(--rp-text-sm) var(--rp-sans);box-shadow:none;background:0 0}.portal-page.redpen.portal-tutor .tutor-resource-filters button.active{background:var(--rp-brand);color:var(--rp-on-brand);border-color:var(--rp-brand)}.portal-page.redpen.portal-tutor .tutor-stations{padding:var(--rp-5);gap:var(--rp-4);grid-template-columns:repeat(2,minmax(0,1fr))}.portal-page.redpen.portal-tutor .tutor-station{background:var(--rp-sheet);border:var(--rp-border);border-radius:var(--rp-radius);box-shadow:none;padding:var(--rp-4)}.portal-page.redpen.portal-tutor .tutor-station.is-current{outline:2px solid var(--rp-brand);outline-offset:2px;padding-top:76px}.portal-page.redpen.portal-tutor .tutor-station.is-complete{background:var(--rp-done-soft);border-color:var(--rp-done-line)}.portal-page.redpen.portal-tutor .tutor-station-number{background:var(--rp-sunk);border-radius:var(--rp-radius-sm);color:var(--rp-ink-2);font:600 var(--rp-text-lg) var(--rp-sans);border:0}.portal-page.redpen.portal-tutor .tutor-station :is(a,strong){color:var(--rp-brand);font:500 var(--rp-text-md)/1.55 var(--rp-sans)}.portal-page.redpen.portal-tutor .tutor-station small{color:var(--rp-muted);font-size:var(--rp-text-sm)}.portal-page.redpen.portal-tutor .tutor-gate{color:var(--rp-muted)}.portal-page.redpen.portal-tutor .tutor-gate h4{font:500 var(--rp-text-xl) var(--rp-serif);color:var(--rp-ink)}.portal-page.redpen.portal-tutor .tutor-control-center{gap:var(--rp-4)}.portal-page.redpen.portal-tutor .tutor-control-center>article{min-height:0;padding:var(--rp-5);border:var(--rp-border);border-radius:var(--rp-radius-lg);box-shadow:none;background:var(--rp-sheet)!important}.portal-page.redpen.portal-tutor .tutor-control-center h3{font:500 var(--rp-text-xl)/1.3 var(--rp-serif);color:var(--rp-ink);letter-spacing:0}.portal-page.redpen.portal-tutor .tutor-control-center .kicker{font:500 var(--rp-text-xs) var(--rp-sans);color:var(--rp-muted);letter-spacing:.02em}.portal-page.redpen.portal-tutor .tutor-control-center article>div:first-child>p{font-size:var(--rp-text-sm)}.portal-page.redpen.portal-tutor .tutor-quality-donut{margin:var(--rp-5) auto;box-shadow:none}.portal-page.redpen.portal-tutor .tutor-quality-donut:after{background:var(--rp-sheet)}.portal-page.redpen.portal-tutor .tutor-quality-donut strong{font:600 32px var(--rp-sans);color:var(--rp-ink)}.portal-page.redpen.portal-tutor .tutor-quality-donut small{font-size:var(--rp-text-xs)}.portal-page.redpen.portal-tutor :is(.tutor-quality-note,.tutor-skill-row,.tutor-feedback-item){background:var(--rp-paper);border:var(--rp-border);border-radius:var(--rp-radius);box-shadow:none;transform:none}.portal-page.redpen.portal-tutor .tutor-skill-row{padding:var(--rp-3);grid-template-columns:8px minmax(0,1fr) auto}.portal-page.redpen.portal-tutor .tutor-skill-row small{white-space:normal;font-size:var(--rp-text-xs);color:var(--rp-muted);overflow:visible}.portal-page.redpen.portal-tutor .tutor-skill-row i{background:var(--rp-line)}.portal-page.redpen.portal-tutor :is(.tutor-skill-bullet,.tutor-skill-row i b){background:var(--rp-brand)}.portal-page.redpen.portal-tutor :is(.tutor-quality-note strong,.tutor-skill-row strong,.tutor-skill-row em,.tutor-feedback-item strong){font:500 var(--rp-text-sm)/1.5 var(--rp-sans);color:var(--rp-ink)}.portal-page.redpen.portal-tutor .tutor-quality-note span{font:500 var(--rp-text-xs) var(--rp-sans);color:var(--rp-muted);letter-spacing:0;text-transform:none}.portal-page.redpen.portal-tutor .tutor-feedback-item{grid-template-columns:minmax(0,1fr) auto}.portal-page.redpen.portal-tutor .tutor-feedback-item>span{color:var(--rp-muted);font:400 var(--rp-text-xs) var(--rp-sans);background:0 0;border-radius:0;grid-column:1/-1;justify-self:start;padding:0}.portal-page.redpen.portal-tutor .tutor-feedback-item p{font-size:var(--rp-text-sm);color:var(--rp-muted);line-height:1.55}.portal-page.redpen.portal-tutor .tutor-feedback-item>b{font:600 var(--rp-text-sm) var(--rp-sans);color:var(--rp-done)}.portal-page.redpen.portal-tutor :is(button,a,[tabindex="0"]):focus-visible{outline:2px solid var(--rp-brand);outline-offset:3px;box-shadow:none}@media (max-width:1200px){.portal-page.redpen.portal-tutor .tutor-world-layout{grid-template-columns:1fr}.portal-page.redpen.portal-tutor .tutor-inventory{gap:var(--rp-4);grid-template-columns:1fr 1fr;display:grid}.portal-page.redpen.portal-tutor .tutor-weapons{grid-area:1/2/span 4;margin:0}.portal-page.redpen.portal-tutor .tutor-control-center{grid-template-columns:1fr 1fr}.portal-page.redpen.portal-tutor .tutor-feedback-stream{grid-column:1/-1}}@media (max-width:760px){.portal-page.redpen.portal-tutor .hero.tutor-hero{gap:var(--rp-4);grid-template-columns:88px minmax(0,1fr)}.portal-page.redpen.portal-tutor .tutor-identity-mark{width:88px;padding:var(--rp-2);min-height:140px}.portal-page.redpen.portal-tutor .tutor-identity-mark>strong{font-size:var(--rp-text-sm)}.portal-page.redpen.portal-tutor .tutor-identity-mark>small{font-size:9px}.portal-page.redpen.portal-tutor .tutor-control-center{grid-template-columns:1fr}.portal-page.redpen.portal-tutor .tutor-feedback-stream{grid-column:auto}.portal-page.redpen.portal-tutor .tutor-stations{grid-template-columns:1fr}.portal-page.redpen.portal-tutor .tutor-world-layout{padding:var(--rp-4)}.portal-page.redpen.portal-tutor .tutor-region-detail{margin:0 var(--rp-4) var(--rp-4);scroll-margin-top:80px}.portal-page.redpen.portal-tutor .tutor-region-detail>header{padding:var(--rp-4)}.portal-page.redpen.portal-tutor .tutor-inventory{display:block}.portal-page.redpen.portal-tutor .tutor-weapons{margin-top:var(--rp-4)}}@media (max-width:440px){.portal-page.redpen.portal-tutor .hero.tutor-hero{grid-template-columns:1fr}.portal-page.redpen.portal-tutor .tutor-identity-mark{gap:var(--rp-3);grid-template-columns:auto 48px 1fr;width:100%;min-height:0;display:grid}.portal-page.redpen.portal-tutor .tutor-identity-mark>.journey-sprite{width:48px;height:48px}.portal-page.redpen.portal-tutor .tutor-identity-mark>small{display:none}.portal-page.redpen.portal-tutor .tutor-region-nav{padding-inline:var(--rp-4)}.portal-page.redpen.portal-tutor .tutor-region-nav button{flex:130px;justify-content:space-between}}main.portal-signin-page.redpen{background:var(--rp-paper);color:var(--rp-ink);font-family:var(--rp-sans)}main.portal-signin-page.redpen .portal-signin-shell{width:min(420px,100%)}main.portal-signin-page.redpen .portal-signin-card{box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}main.portal-signin-page.redpen .portal-signin-brand{margin-bottom:var(--rp-8);color:var(--rp-ink);font:600 12px/1.4 var(--rp-sans);letter-spacing:.04em}main.portal-signin-page.redpen .portal-signin-title p{margin:0 0 var(--rp-2);color:var(--rp-muted);font:400 var(--rp-text-sm)/1.4 var(--rp-sans);letter-spacing:0;text-transform:none}main.portal-signin-page.redpen .portal-signin-title h1{font:500 clamp(34px,6vw,44px)/1.1 var(--rp-serif);letter-spacing:-.015em;color:var(--rp-ink);margin:0}main.portal-signin-page.redpen .portal-signin-access{margin-top:var(--rp-6);padding-top:var(--rp-5);border-top:var(--rp-border)}main.portal-signin-page.redpen .portal-signin-access h2{min-height:0;margin:0 0 var(--rp-4);color:var(--rp-ink-2);font:400 var(--rp-text-lg)/1.4 var(--rp-sans);letter-spacing:0}main.portal-signin-page.redpen .portal-signin-access .login-error{padding:var(--rp-3) var(--rp-4);background:var(--rp-pen-soft);border-radius:var(--rp-radius-sm);color:var(--rp-pen);font-size:var(--rp-text-sm);border:0}main.portal-signin-page.redpen .portal-signin-access>button,main.portal-signin-page.redpen .tutor-login-cancel{min-height:42px;padding:0 var(--rp-4);border:1px solid var(--rp-line-strong);border-radius:var(--rp-radius-sm);color:var(--rp-ink);font:500 var(--rp-text-sm) var(--rp-sans);background:0 0}main.portal-signin-page.redpen #book-choice-title{margin:0 0 var(--rp-1);font:500 var(--rp-text-xl) var(--rp-serif);color:var(--rp-ink)}main.portal-signin-page.redpen .portal-signin-access section>p{margin:0 0 var(--rp-4);color:var(--rp-muted);font-size:var(--rp-text-sm)}main.portal-signin-page.redpen .tutor-login-books{margin-bottom:var(--rp-4);border-top:var(--rp-border);gap:0;display:grid}main.portal-signin-page.redpen .tutor-login-books button{min-height:48px;padding:0 var(--rp-2);border:0;border-bottom:var(--rp-border);box-shadow:none;color:var(--rp-ink);font:500 var(--rp-text-md) var(--rp-sans);text-align:left;background:0 0;border-radius:0}main.portal-signin-page.redpen .tutor-login-books button:hover{background:var(--rp-sunk)}.portal-class-switch{justify-content:flex-end;padding:8px 16px;display:flex}.portal-class-switch button{border:1px solid var(--rp-line-strong);color:var(--rp-ink);cursor:pointer;background:0 0;border-radius:6px;padding:8px 12px}
