:root{--c-green:#58A839;--c-blue:#0E6EA6;--c-red:#C84B18;--c-yellow:#C8941A;--c-tan:#EDE9E0;--c-light-tan:#F7F4EE;--c-green-pastel:color-mix(in srgb,var(--c-green) 12%,var(--c-light-tan));--c-blue-pastel:color-mix(in srgb,var(--c-blue) 10%,var(--c-light-tan));--c-red-pastel:color-mix(in srgb,var(--c-red) 12%,var(--c-light-tan));--c-yellow-pastel:color-mix(in srgb,var(--c-yellow) 14%,var(--c-light-tan));--c-bg:var(--c-light-tan);--c-bg2:#FFFFFF;--c-bg3:var(--c-tan);--c-text:#111827;--c-muted:#5C6878;--c-border:rgba(0,0,0,0.08);--c-grid:rgba(0,0,0,0.035);--c-nav:color-mix(in srgb,var(--c-light-tan) 92%,transparent);--c-fill:var(--c-green);--c-fill-text:var(--c-light-tan);--c-accent:#1E6B00;--c-accent-bg:var(--c-green-pastel);--c-accent-border:color-mix(in srgb,var(--c-green) 24%,transparent);--c-accent-glow:color-mix(in srgb,var(--c-green) 32%,transparent);--c-green-bg:var(--c-green-pastel);--c-blue-bg:var(--c-blue-pastel);--c-red-bg:var(--c-red-pastel);--c-yellow-bg:var(--c-yellow-pastel);--c-fill-subtle:var(--c-green-pastel);--c-orange:var(--c-red);--c-orange-bg:var(--c-red-pastel);--c-orange-border:color-mix(in srgb,var(--c-red) 25%,transparent);--c-sky:var(--c-blue);--c-sky-bg:var(--c-blue-pastel);--c-sky-border:color-mix(in srgb,var(--c-blue) 18%,transparent);--c-amber:var(--c-yellow);--c-amber-bg:var(--c-yellow-pastel);--c-amber-border:color-mix(in srgb,var(--c-yellow) 20%,transparent);--c-shadow-xs:0 1px 4px rgba(0,0,0,0.06),0 3px 12px rgba(0,0,0,0.04);--c-shadow-sm:0 4px 16px rgba(0,0,0,0.08),0 2px 6px rgba(0,0,0,0.04);--c-shadow-md:0 8px 32px rgba(0,0,0,0.10),0 4px 12px rgba(0,0,0,0.06);--c-font-display:var(--font-display),"Bricolage Grotesque",sans-serif;--c-font-mono:var(--font-mono),"JetBrains Mono",monospace}body,html{margin:0;padding:0}body{font-family:var(--c-font-display);color:var(--c-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.cortex-grid,body{background-color:var(--c-bg)}.cortex-grid{background-image:linear-gradient(var(--c-grid) 1px,transparent 1px),linear-gradient(90deg,var(--c-grid) 1px,transparent 1px);background-size:40px 40px}.c-card{background:var(--c-bg2);border:1px solid var(--c-border);border-radius:20px;box-shadow:var(--c-shadow-xs);padding:24px}.c-label{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--c-accent);font-family:var(--c-font-display)}.c-stat{font-family:var(--c-font-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.c-input{width:100%;box-sizing:border-box;padding:10px 14px;border-radius:10px;font-size:14px;font-weight:600;font-family:var(--c-font-display);background:var(--c-bg);color:var(--c-text);border:1px solid var(--c-border);outline:none;transition:border-color .15s,box-shadow .15s}.c-input:focus{border-color:var(--c-accent);box-shadow:0 0 0 3px var(--c-accent-bg)}.student-sidebar{display:flex}.student-mobile-header{display:none}@media (max-width:767px){.student-sidebar{display:none!important}.student-mobile-header{display:flex!important}}.c-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border-radius:11px;border:none;font-family:var(--c-font-display);font-size:14px;font-weight:800;cursor:pointer;transition:background .15s,color .15s,transform .1s,box-shadow .15s}.c-btn-primary{background:var(--c-fill);color:var(--c-fill-text)}.c-btn-primary:hover{box-shadow:0 0 0 3px var(--c-accent-glow)}.c-btn-secondary{background:var(--c-bg3);color:var(--c-muted);border:1px solid var(--c-border)}@keyframes cortex-rise{0%{transform:translateY(8px);opacity:0}to{transform:none;opacity:1}}.cortex-rise{animation:cortex-rise .35s ease-out both}@keyframes cortex-shake{0%,to{transform:translateX(0)}20%{transform:translateX(-5px)}40%{transform:translateX(5px)}60%{transform:translateX(-3px)}80%{transform:translateX(3px)}}.cortex-shake{animation:cortex-shake .4s ease-in-out}@keyframes spin{to{transform:rotate(1turn)}}.web-card{background:var(--c-bg2);border:1px solid var(--c-border);border-radius:16px;box-shadow:var(--c-shadow-xs)}.web-page-head{margin-bottom:28px}.web-page-head h1{font-size:32px;font-weight:800;letter-spacing:-.04em;margin:6px 0 10px;line-height:1.1}.web-page-head p{font-size:14px;color:var(--c-muted);margin:0;line-height:1.5}.kicker{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--c-accent);font-family:var(--c-font-display)}.mastery-journey{display:flex;align-items:center;gap:10px}.mastery-step{flex:1 1;min-width:112px;box-sizing:border-box}.mastery-arrow{width:34px;height:34px;border-radius:10px;background:var(--c-bg2);border:1px solid var(--c-border);display:flex;align-items:center;justify-content:center;color:var(--c-muted);flex:0 0 34px;box-shadow:var(--c-shadow-xs)}.progress-table-card{-webkit-overflow-scrolling:touch}.progress-ledger-table{min-width:760px}.progress-tracker-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px}.student-home-layout{display:grid;grid-template-columns:minmax(0,3fr) minmax(260px,2fr);grid-gap:18px;gap:18px;align-items:start;width:100%}.parent-overview-layout{display:grid;grid-template-columns:minmax(0,3fr) minmax(300px,2fr);grid-gap:18px;gap:18px;align-items:start}.parent-overview-main,.parent-overview-side{min-width:0;display:flex;flex-direction:column;gap:18px}.student-home-main,.student-home-side{min-width:0}.student-home-main,.student-home-side{display:flex;flex-direction:column;gap:18px}.daily-goal-today{position:relative;outline:2px solid var(--c-sky)}.daily-goal-calendar-cell,.daily-goal-today{outline-offset:2px}.daily-goal-calendar-cell:focus{outline:2px solid var(--c-sky)}.daily-goal-tooltip{position:absolute;z-index:8;bottom:calc(100% + 8px);width:210px;padding:10px 12px;border-radius:8px;background:var(--c-bg2);color:var(--c-text);border:1px solid var(--c-border);box-shadow:0 12px 28px rgba(16,24,40,.14);pointer-events:none;text-align:left;opacity:0;visibility:hidden;transform:translateY(4px);transition:opacity .12s ease,transform .12s ease,visibility .12s ease}.daily-goal-tooltip-date{margin-bottom:7px;font-size:11px;font-weight:900;line-height:1.2}.daily-goal-tooltip-date,.daily-goal-tooltip-title{color:var(--c-text);font-family:var(--c-font-display);letter-spacing:0}.daily-goal-tooltip-title{font-size:12px;font-weight:800;line-height:1.25}.daily-goal-tooltip-detail{margin-top:4px;color:var(--c-muted);font-family:var(--c-font-mono);font-size:10.5px;font-weight:700;line-height:1.35;letter-spacing:0}.daily-goal-calendar-cell:focus .daily-goal-tooltip,.daily-goal-calendar-cell:hover .daily-goal-tooltip{opacity:1;visibility:visible;transform:translateY(0)}.skill-checkin-marker,.skill-graph-point-marker{cursor:pointer;outline:none}.skill-checkin-tooltip,.skill-graph-point-tooltip{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .12s ease,visibility .12s ease}.skill-checkin-marker:focus .skill-checkin-tooltip,.skill-checkin-marker:hover .skill-checkin-tooltip,.skill-graph-point-marker:focus .skill-graph-point-tooltip,.skill-graph-point-marker:hover .skill-graph-point-tooltip{opacity:1;visibility:visible}.skill-checkin-tooltip-card{box-sizing:border-box;width:100%;height:100%;padding:9px 11px;border-radius:8px;background:var(--c-bg2);border:1px solid var(--c-border);box-shadow:0 12px 28px rgba(16,24,40,.14);color:var(--c-text)}@media (min-width:768px) and (max-width:1060px){.mastery-journey{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}.mastery-step{min-width:0;width:100%}.mastery-arrow{display:none}}@media (max-width:980px){.parent-overview-layout,.student-home-layout{grid-template-columns:1fr}.progress-tracker-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:767px){.learn-detail-col{display:none!important}.two-col-layout{grid-template-columns:1fr!important}.mastery-journey{align-items:stretch;flex-direction:column}.mastery-step{width:100%;box-sizing:border-box}.mastery-arrow{display:none}.progress-tracker-grid{grid-template-columns:1fr}}