:root{--purple-900:#2c0a63;--purple-800:#3d0f85;--purple-700:#4f14a8;--purple-600:#6318cc;--purple-500:#7200f3;--purple-400:#8b2df5;--purple-300:#a59bfa;--purple-200:#be89f9;--purple-100:#e4d4ff;--purple-50:#f8f2ff;--accent-orange:#ff8044;--accent-coral:#ea492e;--accent-gold:#f9ad4d;--accent-green:#97c693;--ink-900:#17102b;--ink-800:#251f3d;--ink-700:#3a3355;--ink-500:#6e6688;--ink-300:#a29cc0;--ink-100:#e9e5f5;--white:#fff;--bg-app:#0f0a1f;--color-bg:var(--white);--color-bg-alt:var(--purple-50);--color-bg-dark:var(--bg-app);--color-text:var(--ink-900);--color-text-soft:var(--ink-500);--color-text-inverse:var(--white);--color-accent:var(--purple-500);--color-accent-strong:var(--purple-700);--color-border:var(--purple-100);--team-color-0:#8b2df5;--team-color-1:#ff8044;--team-color-2:#2fb6a4;--team-color-3:#ea492e;--team-color-4:#f9ad4d;--team-color-5:#5b6ee1;--team-color-6:#4caf6e;--team-color-7:#e0559b;--team-color-8:#2e9bd6;--font-display:"Fraunces", "Georgia", serif;--font-body:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"IBM Plex Mono", monospace;--content-max:1140px;--radius-sm:8px;--radius-md:14px;--radius-lg:24px;--shadow-soft:0 12px 40px #2c0a631f;--shadow-card:0 4px 20px #2c0a6314;--ease-out:cubic-bezier(.16, 1, .3, 1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3,h4{font-family:var(--font-display);margin:0;font-weight:600;line-height:1.1}p{margin:0;line-height:1.6}a{color:var(--color-accent-strong)}button{font-family:var(--font-body)}::selection{background:var(--purple-200);color:var(--ink-900)}.container{max-width:var(--content-max);margin:0 auto;padding:0 24px}.eyebrow{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.14em;color:var(--purple-500);font-size:.72rem;font-weight:600}.gradient-text{background:linear-gradient(120deg, var(--purple-700), var(--purple-400) 60%, var(--accent-orange));color:#0000;-webkit-background-clip:text;background-clip:text}.pill{background:var(--purple-50);color:var(--purple-700);border:1px solid var(--purple-100);border-radius:999px;align-items:center;gap:6px;padding:6px 14px;font-size:.8rem;font-weight:600;display:inline-flex}.btn{background:var(--purple-500);color:var(--white);cursor:pointer;transition:transform .2s var(--ease-out), background .2s;border:none;border-radius:999px;align-items:center;gap:8px;padding:12px 24px;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover{background:var(--purple-600);transform:translateY(-2px)}.btn.btn-ghost{color:var(--purple-600);border:1.5px solid var(--purple-300);background:0 0}.btn.btn-ghost:hover{background:var(--purple-50)}.card{background:var(--white);border-radius:var(--radius-md);box-shadow:var(--shadow-card);border:1px solid var(--purple-100)}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--purple-50)}::-webkit-scrollbar-thumb{background:var(--purple-300);border-radius:10px}.app-shell{flex-direction:column;min-height:100vh;display:flex}.navbar{z-index:100;-webkit-backdrop-filter:blur();backdrop-filter:blur();transition:background .25s var(--ease-out), backdrop-filter .25s;background:#fff0;position:sticky;top:0}.navbar-scrolled{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 1px 0 var(--purple-100);background:#ffffffd9}.navbar-inner{max-width:var(--content-max);justify-content:space-between;align-items:center;margin:0 auto;padding:16px 24px;display:flex}.navbar-brand{align-items:center;gap:8px;text-decoration:none;display:flex}.navbar-logo{width:auto;height:24px;display:block}.navbar-logo-prep{height:17px}.navbar-brand-sep{color:var(--purple-300);font-weight:700;line-height:1}.navbar-links{align-items:center;gap:28px;display:flex}.navbar-links a{color:var(--ink-700);font-size:.9rem;font-weight:600;text-decoration:none;transition:color .2s}.navbar-links a:hover{color:var(--purple-600)}.btn-small{padding:8px 16px;font-size:.85rem}.site-footer{background:var(--ink-900);color:var(--purple-100);margin-top:auto;padding:48px 0}.site-footer-inner{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:32px;display:flex}.site-footer-tag{color:var(--purple-300);margin-top:6px;font-size:.9rem}.footer-logo-chip{background:var(--white);border-radius:10px;align-items:center;gap:14px;padding:10px 16px;display:inline-flex}.footer-logo{width:auto;display:block}.footer-logo-mark{height:26px}.footer-logo-prep{height:20px}.footer-logo-sep{color:var(--purple-300);font-weight:700;line-height:1}.site-footer-note{max-width:380px;color:var(--ink-300);font-size:.85rem}.section{padding:100px 0}.section-alt{background:var(--color-bg-alt)}.section-dark{background:var(--ink-900);color:var(--white);padding:110px 0 90px}.section-dark .section-title{color:var(--white)}.section-heading{max-width:640px;margin-bottom:56px}.section-heading-left{margin-left:0}.section-title{color:var(--ink-900);margin:10px 0 16px;font-size:clamp(2rem,3.2vw,2.75rem)}.section-description{color:var(--ink-500);font-size:1.05rem}.section-dark .section-description{color:var(--purple-200)}.card-title{margin-bottom:4px;font-size:1.15rem}.card-title-spaced{margin-top:28px}.card-subtitle{color:var(--ink-500);margin-bottom:16px;font-size:.9rem}.card-footnote{color:var(--ink-300);margin-top:12px;font-size:.8rem}@media (width<=900px){.section{padding:72px 0}.navbar-links{gap:16px}.navbar-links a{font-size:.8rem}}@media (width<=640px){.navbar-inner{padding:14px 20px}.navbar-logo{height:22px}.navbar-logo-prep,.navbar-brand-sep{display:none}.navbar-links{-ms-overflow-style:none;scrollbar-width:none;gap:10px;max-width:62vw;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#000 85%,#0000 100%);mask-image:linear-gradient(90deg,#000 85%,#0000 100%)}.navbar-links::-webkit-scrollbar{display:none}.navbar-links a{white-space:nowrap;font-size:.72rem}}.hero{background:linear-gradient(180deg, var(--purple-50) 0%, var(--white) 100%);align-items:center;min-height:92vh;display:flex;position:relative;overflow:hidden}.hero-bg{position:absolute;inset:0;overflow:hidden}.hero-blob{filter:blur(60px);opacity:.5;border-radius:50%;position:absolute}.hero-blob-1{background:var(--purple-300);width:520px;height:520px;top:-180px;right:-120px}.hero-blob-2{background:var(--accent-gold);opacity:.25;width:400px;height:400px;bottom:-160px;left:-100px}.hero-grid{background-image:radial-gradient(circle, var(--purple-100) 1px, transparent 1px);opacity:.5;background-size:28px 28px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 80%);mask-image:linear-gradient(#000,#0000 80%)}.hero-inner{z-index:1;text-align:left;max-width:760px;position:relative}.hero-title{color:var(--ink-900);margin:18px 0 22px;font-size:clamp(2.6rem,6.5vw,5.2rem)}.hero-subtitle{color:var(--ink-700);max-width:560px;font-size:clamp(1.05rem,1.5vw,1.3rem)}.hero-scroll-cue{color:var(--purple-500);align-items:center;gap:12px;margin-top:64px;font-size:.85rem;font-weight:600;display:flex}.hero-scroll-cue-line{background:linear-gradient(180deg, var(--purple-400), transparent);width:1px;height:40px;animation:1.8s ease-in-out infinite scrollPulse}@keyframes scrollPulse{0%,to{opacity:.3}50%{opacity:1}}.story-scroll{background:var(--white);padding:60px 0 40px}.story-scroll-grid{grid-template-columns:1fr 1fr;align-items:start;gap:64px;display:grid}.story-scroll-steps{flex-direction:column;gap:30vh;padding:10vh 0 30vh;display:flex}.story-step{opacity:.28;max-width:460px;transition:opacity .4s var(--ease-out), transform .4s var(--ease-out);transform:translateY(6px)}.story-step h2,.story-step p{transition:color .4s var(--ease-out);color:var(--ink-300)}.story-step.is-active{opacity:1;transform:translateY(0)}.story-step.is-active h2{color:var(--ink-900)}.story-step.is-active p{color:var(--ink-500)}.story-step-index{font-family:var(--font-mono);color:var(--purple-300);font-size:.8rem;font-weight:600}.story-step h2{margin:10px 0 14px;font-size:1.9rem}.story-step p{font-size:1.02rem}.story-scroll-sticky{align-items:center;height:64vh;display:flex;position:sticky;top:18vh}.story-visual-frame{aspect-ratio:1;background:var(--purple-50);border-radius:var(--radius-lg);border:1px solid var(--purple-100);justify-content:center;align-items:center;width:100%;max-height:60vh;display:flex;position:relative;overflow:hidden}.story-visual-frame-inline{display:none}@media (width<=900px){.story-visual-frame-inline{aspect-ratio:auto;height:auto;max-height:none;padding:24px 16px;overflow:visible}.story-visual-frame-inline .story-visual{padding:8px}}.story-visual{justify-content:center;align-items:center;width:100%;height:100%;padding:32px;display:flex}.visual-panel{text-align:center;flex-direction:column;align-items:center;gap:20px;display:flex}.visual-caption{color:var(--ink-700);max-width:320px;font-size:.95rem}.handoff-row{align-items:center;gap:14px;display:flex}.handoff-badge{background:var(--purple-500);color:#fff;border-radius:12px;padding:14px 20px;font-size:.95rem;font-weight:700}.handoff-badge-alt{background:var(--accent-orange)}.program-flow{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.program-flow-stage{align-items:center;gap:12px;padding-bottom:20px;display:flex;position:relative}.program-flow-dot{background:var(--purple-500);color:#fff;z-index:1;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;font-size:.85rem;font-weight:700;display:flex}.program-flow-stage span{color:var(--ink-800);font-size:.95rem;font-weight:600}.program-flow-line{background:var(--purple-200);width:2px;height:20px;position:absolute;top:30px;left:15px}.teams-preview-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.teams-preview-grid-compact{grid-template-columns:repeat(3,1fr);gap:8px}.teams-preview-card{text-align:left;background:#fff;border:1.5px solid;border-radius:12px;flex-direction:column;gap:4px;padding:14px;display:flex}.teams-preview-card-compact{gap:2px;padding:8px}.teams-preview-card-compact strong{font-size:.7rem;line-height:1.2}.teams-preview-card-compact .teams-preview-dot{width:7px;height:7px;margin-bottom:2px}.teams-preview-dot{border-radius:50%;width:10px;height:10px;margin-bottom:4px}.teams-preview-card strong{color:var(--ink-900);font-size:.9rem}.teams-preview-area{color:var(--ink-500);font-size:.75rem}@media (width<=900px){.story-scroll-grid{grid-template-columns:1fr}.story-scroll-sticky{display:none}.story-visual-frame-inline{margin:16px 0;display:block}.story-scroll-steps{gap:60px;padding:0}.story-visual-frame{max-height:380px}.hero-title{font-size:clamp(2.2rem,10vw,3rem)}}.card{padding:28px}.onboarding-grid{grid-template-columns:1fr 1fr;gap:24px;display:grid}.onboarding-radar-wrap{width:100%;max-width:380px;margin:0 auto}.bar-row-list{flex-direction:column;gap:14px;display:flex}.bar-row-label{color:var(--ink-800);justify-content:space-between;margin-bottom:6px;font-size:.88rem;font-weight:600;display:flex}.bar-row-value{color:var(--ink-500);font-weight:600}.bar-row-track{border-radius:999px;width:100%;overflow:hidden}.bar-row-fill{transition:width .6s var(--ease-out);border-radius:999px}.growth-chart-card{padding:28px 28px 20px}.growth-view-toggle{background:var(--purple-50);border-radius:18px;flex-wrap:wrap;gap:4px;margin-bottom:20px;padding:4px;display:inline-flex}.view-toggle-btn{color:var(--ink-500);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:8px 16px;font-size:.85rem;font-weight:700;transition:background .2s,color .2s}.view-toggle-btn.is-active{color:var(--purple-600);box-shadow:var(--shadow-card);background:#fff}.growth-view-body{min-height:180px}.growth-view-note{border-top:1px solid var(--purple-50);color:var(--ink-500);max-width:760px;margin:18px 0 0;padding-top:16px;font-size:.85rem;line-height:1.55}.skill-toggle-row{flex-wrap:wrap;gap:8px;margin-bottom:24px;display:flex}.skill-toggle{border:1.5px solid var(--purple-100);color:var(--ink-500);cursor:pointer;background:#fff;border-radius:999px;padding:8px 14px;font-size:.82rem;font-weight:600;transition:all .15s}.skill-toggle:hover{border-color:var(--purple-300)}.chart-tooltip-row{color:var(--ink-700);flex-wrap:wrap;gap:16px;padding:10px 4px 4px;font-size:.82rem;display:flex}.chart-tooltip-item{align-items:center;gap:6px;display:flex}.chart-tooltip-item i{border-radius:50%;width:9px;height:9px;display:inline-block}.legend-row{justify-content:center;gap:18px;margin-top:8px;display:flex}.legend-item{color:var(--ink-700);align-items:center;gap:6px;font-size:.82rem;font-weight:600;display:flex}.legend-item i{border-radius:50%;width:10px;height:10px;display:inline-block}.team-race{padding:8px 4px 4px}.team-race-caption{color:var(--ink-500);max-width:520px;margin-bottom:20px;font-size:.85rem}.team-race-track-list{flex-direction:column;gap:16px;display:flex}.team-race-lane{grid-template-columns:150px 1fr;align-items:center;gap:12px;display:grid}.team-race-lane-label{align-items:center;gap:8px;min-width:0;display:flex}.team-race-lane-dot{border-radius:50%;flex-shrink:0;width:9px;height:9px}.team-race-lane-name{color:var(--ink-800);text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;font-weight:700;overflow:hidden}.team-race-lane-track{background:repeating-linear-gradient(90deg, var(--purple-50), var(--purple-50) 10px, #fbf8ff 10px, #fbf8ff 20px);border:1px solid var(--purple-100);border-radius:8px;height:40px;position:relative}.team-race-finish{font-size:1.05rem;line-height:1;position:absolute;top:50%;transform:translate(-50%,-50%)}.team-race-zero{border-left:1px dashed var(--ink-300);opacity:.75;width:0;position:absolute;top:5px;bottom:5px}.team-race-runner{flex-direction:column;align-items:flex-end;transition:left 1.1s cubic-bezier(.16,1,.3,1);display:flex;position:absolute;top:50%;transform:translate(calc(-100% - 14px),-50%)}.team-race-runner.is-leftward{align-items:flex-start;transform:translate(14px,-50%)}.team-race-pack{align-items:flex-end;display:flex}.team-race-figure{flex:none;display:block}.team-race-figure+.team-race-figure{margin-left:-5px}.team-race-runner-value{color:var(--purple-600);box-shadow:var(--shadow-card);white-space:nowrap;background:#fff;border-radius:999px;margin-top:-2px;padding:1px 6px;font-size:.68rem;font-weight:800}.team-race-legend{color:var(--ink-500);flex-wrap:wrap;gap:8px 22px;margin:0 0 18px;padding:0;font-size:.78rem;list-style:none;display:flex}.team-race-legend li{align-items:center;gap:7px;display:flex}.team-race-legend-icon{justify-content:center;align-items:center;min-width:15px;line-height:1;display:inline-flex}.team-race-legend-zero{border-left:1px dashed var(--ink-300);width:0;height:15px}.team-race-axis-row{grid-template-columns:150px 1fr;gap:12px;margin-top:-4px;display:grid}.team-race-axis{height:24px;position:relative}.team-race-axis-mark{flex-direction:column;align-items:center;gap:3px;display:flex;position:absolute;top:0;transform:translate(-50%)}.team-race-axis-tickline{background:var(--ink-300);width:1px;height:6px}.team-race-axis-label{color:var(--ink-500);white-space:nowrap;font-size:.68rem;font-weight:600}.team-race-axis-mark.is-zero .team-race-axis-tickline{background:var(--purple-500)}.team-race-axis-mark.is-zero .team-race-axis-label{color:var(--purple-600)}.team-race-axis-title{color:var(--ink-500);margin:8px 0 0;font-size:.72rem}@media (width<=640px){.team-race-lane{grid-template-columns:90px 1fr}.team-race-lane-name{font-size:.72rem}.team-race-axis-row{grid-template-columns:90px 1fr}.team-race-axis-label{font-size:.6rem}.team-race-figure{width:12px;height:14px}.growth-view-toggle{border-radius:14px}.view-toggle-btn{padding:7px 12px;font-size:.78rem}}.teams-overview-grid{grid-template-columns:repeat(2,1fr);gap:24px;display:grid}.team-card{color:inherit;transition:transform .25s var(--ease-out), box-shadow .25s;border-top:4px solid var(--team-accent);flex-direction:column;gap:10px;padding:26px;text-decoration:none;display:flex}.team-card:hover{box-shadow:var(--shadow-soft);transform:translateY(-4px)}.team-card-top{align-items:center;gap:8px;display:flex}.team-card-dot{border-radius:50%;width:9px;height:9px}.team-card-impact{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-500);font-size:.75rem;font-weight:700}.team-card-rank{color:var(--accent-orange);white-space:nowrap;background:#fff3ea;border-radius:999px;margin-left:auto;padding:3px 9px;font-size:.72rem;font-weight:800}.team-card-name{color:var(--ink-900);font-size:1.4rem}.team-card-tagline{color:var(--ink-700);font-size:.95rem;font-weight:600}.team-card-idea{color:var(--ink-500);flex:1;font-size:.9rem}.team-card-footer{border-top:1px solid var(--purple-100);justify-content:space-between;align-items:center;margin-top:12px;padding-top:14px;display:flex}.team-card-roster{align-items:center;display:flex}.team-card-avatar{background:var(--purple-200);color:#fff;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;margin-left:-8px;font-size:.75rem;font-weight:700;display:flex}.team-card-avatar:first-child{margin-left:0}.team-card-count{color:var(--ink-500);margin-left:10px;font-size:.78rem;font-weight:600}.team-card-delta{color:var(--purple-600);background:var(--purple-50);border-radius:999px;padding:4px 10px;font-size:.85rem;font-weight:700}.stats-row{grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:56px;display:grid}.stat-card{border-radius:var(--radius-md);background:#ffffff0f;border:1px solid #ffffff1a;flex-direction:column;gap:6px;padding:24px;display:flex}.stat-value{font-family:var(--font-display);background:linear-gradient(120deg, var(--purple-200), var(--accent-gold));color:#0000;-webkit-background-clip:text;background-clip:text;font-size:2.1rem;font-weight:700}.stat-label{color:var(--purple-200);font-size:.85rem;font-weight:600}.findings-grid{grid-template-columns:1.1fr .9fr;align-items:start;gap:48px;display:grid}.findings-list h3{color:#fff;margin-bottom:18px;font-size:1.3rem}.findings-list ul{flex-direction:column;gap:16px;margin:0;padding:0;list-style:none;display:flex}.findings-list li{color:var(--purple-100);padding-left:22px;font-size:.98rem;line-height:1.55;position:relative}.findings-list li:before{content:"→";color:var(--accent-gold);font-weight:700;position:absolute;left:0}.closing-statement{border-radius:var(--radius-lg);background:#ffffff0f;border:1px solid #ffffff1a;padding:32px}.closing-statement p{font-family:var(--font-display);color:#fff;font-size:1.3rem;line-height:1.5}.closing-signature{color:var(--purple-200);border-top:1px solid #ffffff26;flex-direction:column;gap:4px;margin-top:24px;padding-top:20px;font-size:.9rem;display:flex}.closing-signature strong{color:#fff}.team-hero{background:linear-gradient(180deg, var(--purple-50), var(--white));border-bottom:1px solid var(--purple-100);padding:64px 0 40px}.back-link{color:var(--ink-500);margin-bottom:24px;font-size:.85rem;font-weight:600;text-decoration:none;display:inline-block}.back-link:hover{color:var(--purple-600)}.team-hero-top{align-items:center;gap:12px;display:flex}.team-hero-name{margin:10px 0 12px;font-size:clamp(2rem,4vw,3rem)}.team-hero-tagline{color:var(--ink-700);margin-bottom:10px;font-size:1.15rem;font-weight:600}.team-hero-idea{max-width:640px;color:var(--ink-500)}.team-detail-grid{grid-template-columns:1.3fr 1fr;gap:24px;margin-bottom:24px;display:grid}.roster-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.roster-row{color:inherit;border-radius:10px;align-items:center;gap:12px;padding:10px;text-decoration:none;transition:background .15s;display:flex}.roster-row:hover{background:var(--purple-50)}.roster-avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-weight:700;display:flex}.roster-info{flex-direction:column;flex:1;display:flex}.roster-info strong{color:var(--ink-900);font-size:.95rem}.roster-role{color:var(--ink-500);font-size:.78rem}.roster-delta{color:var(--purple-600);font-size:.85rem;font-weight:700}.team-skills-breakdown{margin-top:8px}.skill-breakdown-grid{grid-template-columns:repeat(2,1fr);gap:20px 32px;margin-top:12px;display:grid}.skill-breakdown-item{flex-direction:column;gap:6px;display:flex}.skill-breakdown-name{color:var(--ink-800);font-size:.85rem;font-weight:600}.skill-breakdown-bar-track{background:var(--purple-50);border-radius:999px;width:100%;height:8px;overflow:hidden}.skill-breakdown-bar-fill{border-radius:999px;height:100%}.skill-breakdown-delta{color:var(--ink-500);font-size:.78rem}.skill-breakdown-delta em{color:var(--purple-600);font-style:normal;font-weight:600}.student-hero{background:linear-gradient(180deg, var(--purple-50), var(--white));border-bottom:1px solid var(--purple-100);padding:56px 0 36px}.student-hero-row{align-items:center;gap:18px;margin:10px 0 14px;display:flex}.student-hero-avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:60px;height:60px;font-size:1.4rem;font-weight:700;display:flex}.student-hero-name{font-size:clamp(1.7rem,3vw,2.3rem)}.student-hero-role{color:var(--ink-500);font-size:.95rem;font-weight:600}.student-hero-bio{max-width:600px;color:var(--ink-700)}.partial-data-note{color:var(--accent-coral);background:#fdf0ee;border-radius:999px;margin-top:14px;padding:6px 14px;font-size:.82rem;font-weight:600;display:inline-block}.self-reflection-card{margin-top:24px}.self-reflection-card .comment-item{font-size:.98rem;font-style:italic}.student-detail-grid{grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px;display:grid}.comment-list{flex-direction:column;gap:10px;margin-top:16px;display:flex}.comment-item{color:var(--ink-500);border-left:2px solid var(--purple-100);padding-left:14px;font-size:.88rem;font-style:italic}.comment-item-highlight{border-left-color:var(--purple-400);color:var(--ink-700);margin-top:16px}.glows-grows-card{margin-top:0}.glows-grows-grid{grid-template-columns:1fr 1fr;gap:32px;margin-top:12px;display:grid}.glow-heading{color:var(--purple-600);margin-bottom:10px;font-size:.95rem}.grow-heading{color:var(--accent-orange);margin-bottom:10px;font-size:.95rem}.glows-grows-grid ul{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.glows-grows-grid li{color:var(--ink-700);padding-left:18px;font-size:.9rem;line-height:1.5;position:relative}.glows-grows-grid li:before{content:"•";color:var(--purple-300);position:absolute;left:0}.empty-state{text-align:center;color:var(--ink-300);padding:40px 0}@media (width<=900px){.onboarding-grid,.team-detail-grid,.student-detail-grid,.teams-overview-grid{grid-template-columns:1fr}.stats-row{grid-template-columns:repeat(2,1fr)}.findings-grid,.skill-breakdown-grid,.glows-grows-grid{grid-template-columns:1fr}}.navbar-auth{flex-shrink:0;margin-left:8px}.auth-menu-toggle{border:1.5px solid var(--purple-100);cursor:pointer;color:var(--ink-700);background:#ffffffb3;border-radius:999px;align-items:center;gap:10px;padding:6px 14px 6px 6px;font-size:.85rem;font-weight:600;transition:border-color .2s,background .2s;display:inline-flex}.auth-menu-toggle:hover{border-color:var(--purple-300);background:var(--white)}.auth-menu-avatar{background:var(--purple-500);width:28px;height:28px;color:var(--white);border-radius:50%;justify-content:center;align-items:center;font-size:.8rem;font-weight:700;display:inline-flex}.auth-menu-name{text-overflow:ellipsis;white-space:nowrap;max-width:140px;overflow:hidden}.auth-menu-caret{border:solid var(--ink-500);border-width:0 1.5px 1.5px 0;padding:3px;transition:transform .2s;transform:rotate(45deg)}.auth-menu-caret.is-open{transform:rotate(-135deg)}.auth-menu-dropdown{background:var(--white);border:1px solid var(--purple-100);border-radius:var(--radius-md);min-width:240px;box-shadow:var(--shadow-soft);z-index:110;gap:10px;padding:16px;display:grid;position:absolute;top:calc(100% + 8px);right:0}.auth-menu-email{color:var(--ink-500);word-break:break-word;font-size:.85rem}.auth-menu-role{align-items:center;gap:8px;display:flex}.auth-menu-mode{color:var(--ink-300);font-size:.72rem}.auth-menu-dropdown a{color:var(--purple-600);font-size:.9rem;font-weight:600;text-decoration:none}.auth-menu-dropdown a:hover{text-decoration:underline}.auth-menu-logout{color:var(--accent-coral);cursor:pointer;background:0 0;border:none;justify-self:start;padding:0;font-size:.85rem;font-weight:600}.role-badge{text-transform:uppercase;letter-spacing:.06em;border-radius:999px;padding:3px 10px;font-size:.72rem;font-weight:700;display:inline-block}.role-student{background:var(--purple-100);color:var(--purple-700)}.role-teacher{color:#b4551a;background:#fdeee2}.role-admin{color:#2e7d46;background:#e7f0e9}.auth-page{background:linear-gradient(180deg, var(--purple-50) 0%, var(--white) 40%);padding:80px 0 100px}.auth-card{max-width:460px;margin:0 auto;padding:40px}.auth-heading{margin-bottom:24px}.auth-title{margin-bottom:8px;font-size:1.7rem}.auth-subtitle{color:var(--ink-500);font-size:.92rem}.auth-tabs{background:var(--purple-50);border-radius:999px;gap:4px;margin-bottom:20px;padding:4px;display:flex}.auth-tab{color:var(--ink-500);cursor:pointer;background:0 0;border:none;border-radius:999px;flex:1;padding:9px 12px;font-size:.88rem;font-weight:600}.auth-tab.is-active{background:var(--white);color:var(--purple-700);box-shadow:var(--shadow-card)}.auth-form{gap:14px;display:grid}.field{border:none;gap:6px;margin:0;padding:0;display:grid}.field span,.field legend{color:var(--ink-700);padding:0;font-size:.82rem;font-weight:600}.field input,.field select{border:1.5px solid var(--purple-100);border-radius:var(--radius-sm);width:100%;font-size:.95rem;font-family:var(--font-body);color:var(--ink-900);background:var(--white);padding:11px 14px;transition:border-color .2s,box-shadow .2s}.field input:focus,.field select:focus{border-color:var(--purple-500);outline:none;box-shadow:0 0 0 3px #7200f31f}.btn-block{justify-content:center;width:100%}.auth-divider{color:var(--ink-300);align-items:center;gap:12px;font-size:.8rem;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--purple-100);flex:1;height:1px}.auth-error{color:#a13b2e;border-radius:var(--radius-sm);background:#fdecea;border:1px solid #f5c6c0;margin-bottom:16px;padding:10px 14px;font-size:.85rem}.auth-note{color:var(--ink-500);font-size:.82rem}.auth-note code{font-family:var(--font-mono);background:var(--purple-50);border-radius:4px;padding:1px 5px;font-size:.78rem}.role-options{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.role-option{border:1.5px solid var(--purple-100);border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:6px;padding:10px 12px;font-size:.85rem;font-weight:600;transition:border-color .2s,background .2s;display:flex}.role-option:has(input:checked){border-color:var(--purple-500);background:var(--purple-50)}.auth-demo{border-top:1px dashed var(--purple-100);gap:10px;margin-top:24px;padding-top:20px;display:grid}.auth-demo-title{text-transform:uppercase;letter-spacing:.08em;color:var(--ink-500);font-size:.82rem;font-weight:700}.auth-demo-row{flex-wrap:wrap;gap:10px;display:flex}.demo-link{border:1.5px solid var(--purple-300);color:var(--purple-600);cursor:pointer;background:0 0;border-radius:999px;padding:8px 14px;font-size:.82rem;font-weight:600;transition:background .2s}.demo-link:hover{background:var(--purple-50)}.auth-demo-list{color:var(--ink-500);gap:4px;margin:0;padding-left:18px;font-size:.82rem;display:grid}.auth-demo-list code{font-family:var(--font-mono);font-size:.78rem}.auth-footer{text-align:center;margin-top:24px;font-size:.85rem}.privacy-panel-wrap{margin-bottom:32px}.privacy-panel{border-left:3px solid var(--purple-400);max-width:380px;padding:20px}.privacy-panel-readonly{border-left-color:var(--ink-300)}.privacy-options{gap:8px;display:grid}.privacy-option{border:1.5px solid var(--purple-100);border-radius:var(--radius-sm);cursor:pointer;grid-template-columns:18px 1fr;align-items:start;column-gap:10px;padding:10px 12px;transition:border-color .2s,background .2s;display:grid}.privacy-option:has(input:checked){border-color:var(--purple-500);background:var(--purple-50)}.privacy-option input{accent-color:var(--purple-600);margin-top:3px}.privacy-option strong{font-size:.9rem}.privacy-option small{color:var(--ink-500);grid-column:2;font-size:.8rem;line-height:1.4}.privacy-actions{align-items:center;gap:12px;margin-top:14px;display:flex}.privacy-saved{color:var(--accent-green);font-size:.85rem;font-weight:600}.privacy-error{color:var(--accent-coral);font-size:.85rem;font-weight:600}.privacy-note{color:var(--ink-500);font-size:.88rem}.privacy-lock{text-align:center;border:1.5px dashed var(--purple-200);padding:48px 32px}.roster-delta-private{color:var(--ink-300);text-transform:uppercase;letter-spacing:.05em;font-size:.72rem}.teammates-card{margin-top:28px}.teammate-list{flex-wrap:wrap;gap:10px;display:flex}.teammate-chip{border:1px solid var(--purple-100);background:var(--purple-50);color:var(--ink-700);border-radius:999px;align-items:center;gap:8px;padding:6px 14px 6px 6px;font-size:.85rem;font-weight:600;text-decoration:none;transition:border-color .2s,transform .2s;display:inline-flex}.teammate-chip:hover{border-color:var(--purple-300);transform:translateY(-1px)}@media (width<=640px){.auth-card{padding:28px 20px}.role-options{grid-template-columns:1fr}.auth-menu-name{display:none}}.admin-page{background:var(--purple-50);min-height:70vh;padding:56px 0 100px}.admin-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:24px;display:flex}.admin-head h1{margin-top:6px;font-size:clamp(2rem,3vw,2.5rem)}.admin-head-meta{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.admin-program-chip{background:var(--white);border:1px solid var(--purple-100);color:var(--ink-700);font-size:.8rem;font-weight:600;font-family:var(--font-mono);border-radius:999px;padding:4px 12px}.admin-tabs{flex-wrap:wrap;gap:6px;margin-bottom:28px;display:flex}.admin-tabs .admin-tab{border:1.5px solid var(--purple-100);background:var(--white);color:var(--ink-700);cursor:pointer;border-radius:999px;padding:9px 16px;font-size:.85rem;font-weight:600;transition:border-color .2s,background .2s,color .2s}.admin-tabs .admin-tab.is-active{border-color:var(--purple-500);background:var(--purple-500);color:var(--white)}.admin-tabs .admin-tab:hover:not(.is-active){border-color:var(--purple-300)}.admin-tab{gap:20px;display:grid}.admin-tab-head h2{margin-bottom:4px;font-size:1.5rem}.admin-tab-head p{max-width:640px;color:var(--ink-500);margin-bottom:20px;font-size:.95rem}.admin-tab-head code{font-family:var(--font-mono);background:var(--purple-100);color:var(--purple-700);border-radius:4px;padding:1px 6px;font-size:.8rem}.admin-box{gap:16px;padding:24px;display:grid}.admin-box-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.admin-box-desc{color:var(--ink-500);margin-top:4px;font-size:.88rem}.admin-box .card-title{margin:0}.admin-field{gap:6px;display:grid}.admin-field-label{color:var(--ink-700);font-size:.82rem;font-weight:600}.admin-field input,.admin-field textarea,.admin-field select,.admin-csv-input{border:1.5px solid var(--purple-100);border-radius:var(--radius-sm);width:100%;font-family:var(--font-body);color:var(--ink-900);background:var(--white);resize:vertical;padding:10px 12px;font-size:.92rem;transition:border-color .2s,box-shadow .2s}.admin-field input:focus,.admin-field textarea:focus,.admin-field select:focus,.admin-csv-input:focus{border-color:var(--purple-500);outline:none;box-shadow:0 0 0 3px #7200f31f}.admin-field-hint{color:var(--ink-300);font-size:.78rem}.admin-grid-2{grid-template-columns:1fr 1fr;gap:14px;display:grid}.admin-grid-3{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.admin-inline-actions{align-items:flex-end;gap:10px;display:flex}.admin-chapter,.admin-team{border:1px solid var(--purple-100);gap:14px;padding:18px;display:grid}.admin-chapter-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.admin-chapter-actions{gap:6px;display:flex}.btn-micro{padding:5px 10px;font-size:.78rem}.admin-danger{color:var(--accent-coral);border-color:#f3c4bc}.admin-team-swatch{border-radius:50%;width:14px;height:14px;display:inline-block}.admin-table{gap:8px;display:grid}.admin-table-head,.admin-table-row{grid-template-columns:1.1fr 2fr 1.2fr .6fr .6fr .5fr;align-items:center;gap:10px;display:grid}.admin-table-head-3{grid-template-columns:1.2fr 1.6fr 1fr .5fr}.admin-table-head-4{grid-template-columns:1.6fr 1fr 1.4fr 1fr}.admin-table-head span{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-300);font-size:.72rem;font-weight:700}.admin-table-row{border-radius:var(--radius-sm);background:var(--white);border:1px solid var(--purple-100);padding:10px}.admin-table-row input,.admin-table-row select{border:1.5px solid var(--purple-100);border-radius:var(--radius-sm);width:100%;font-size:.88rem;font-family:var(--font-body);color:var(--ink-900);padding:8px 10px}.admin-table-row input:focus,.admin-table-row select:focus{border-color:var(--purple-500);outline:none}.admin-id-input{font-family:var(--font-mono);font-size:.8rem!important}.admin-check{justify-content:center;display:inline-flex}.admin-check input{accent-color:var(--purple-600);width:auto}.admin-check-label{color:var(--ink-500);align-items:center;gap:6px;font-size:.85rem}.admin-acct{flex-direction:column;display:flex}.admin-acct strong{font-size:.9rem}.admin-acct small{color:var(--ink-300);font-size:.78rem}.admin-acct-status{min-height:1em;font-size:.78rem}.admin-finding{align-items:flex-start;gap:10px;display:flex}.admin-finding textarea{border:1.5px solid var(--purple-100);border-radius:var(--radius-sm);font-family:var(--font-body);resize:vertical;flex:1;padding:10px 12px;font-size:.92rem}.admin-csv-input{font-family:var(--font-mono);font-size:.8rem}.admin-csv-actions{align-items:center;gap:14px;display:flex}.admin-csv-actions input[type=file]{color:var(--ink-500);font-size:.82rem}.admin-diagnostics{flex-wrap:wrap;gap:12px;display:flex}.admin-diag{border-radius:var(--radius-sm);background:var(--purple-50);border:1px solid var(--purple-100);text-align:center;flex:1;min-width:110px;padding:14px}.admin-diag strong{color:var(--purple-700);font-size:1.5rem;display:block}.admin-diag span{color:var(--ink-500);font-size:.78rem}.admin-diag-coverage{color:var(--ink-500);font-size:.88rem}.admin-warning{border-radius:var(--radius-sm);color:#8a5a06;background:#fff7e8;border:1px solid #f5d9a0;padding:10px 14px;font-size:.85rem}.admin-downloads{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.admin-downloads-label{color:var(--ink-500);font-size:.8rem;font-weight:600}.admin-savebar{align-items:center;gap:12px;padding-top:8px;display:flex}.admin-empty{color:var(--ink-300);font-size:.9rem}.admin-error{border-radius:var(--radius-sm);color:#a13b2e;background:#fdecea;border:1px solid #f5c6c0;padding:10px 14px;font-size:.85rem}.admin-footnote{color:var(--ink-300);margin-top:32px;font-size:.82rem}.admin-denied{text-align:center;justify-items:center;gap:14px;max-width:520px;margin:60px auto;padding:40px;display:grid}.admin-denied-title{font-size:1.6rem}@media (width<=800px){.admin-grid-2,.admin-grid-3{grid-template-columns:1fr}.admin-table-head,.admin-table-row{grid-template-columns:1.2fr 1.5fr .5fr;font-size:.85rem}.admin-table-head span:nth-child(n+4),.admin-table-row>:nth-child(n+4){display:none}}#root{min-height:100svh}
