:root{font-family:DM Sans,Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#25232a;background:#f4f1eb;font-synthesis:none;text-rendering:optimizeLegibility;--bg: #f4f1eb;--surface: #fffdf9;--surface-2: #f8f5ef;--surface-3: #eee9e1;--text: #25232a;--muted: #716d76;--border: #e3ddd4;--accent: #8f2f49;--accent-dark: #6f1f36;--accent-soft: #f3e6e9;--sidebar: #18181b;--violet: #5d5fef;--green: #17846b;--orange: #d9782d;--shadow: 0 16px 50px rgba(37, 28, 31, .07);--radius: 22px}:root[data-theme=dark]{color-scheme:dark;--bg: #111114;--surface: #1b1b20;--surface-2: #222228;--surface-3: #2a292f;--text: #f4f1eb;--muted: #aaa6b0;--border: #35343c;--accent: #d06582;--accent-dark: #ef8ca7;--accent-soft: #3b222b;--sidebar: #0b0b0d;--shadow: 0 16px 50px rgba(0, 0, 0, .24)}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{margin:0;min-width:320px;min-height:100vh;background:var(--bg);color:var(--text);overflow-x:hidden}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,.brand{font-family:Manrope,DM Sans,sans-serif}h1{letter-spacing:-.045em}h2,h3{letter-spacing:-.025em}input,textarea,select{width:100%;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:12px;padding:12px 14px;outline:none;transition:border-color .2s,box-shadow .2s}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 14%,transparent)}textarea{resize:vertical}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid color-mix(in srgb,var(--violet) 60%,white);outline-offset:3px}button:disabled{cursor:not-allowed;opacity:.48}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:10px;left:10px;z-index:200;background:var(--surface);padding:10px 14px;border-radius:8px;transform:translateY(-150%);transition:transform .2s}.skip-link:focus{transform:translateY(0)}.reduce-motion *,.reduce-motion *:before,.reduce-motion *:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;z-index:50;width:258px;display:flex;flex-direction:column;padding:30px 20px 22px;background:var(--sidebar);color:#f5f2ed}.brand{display:flex;align-items:center;gap:12px;margin:0 8px 36px;color:#fff}.brand>span:last-child{display:grid;gap:1px}.brand strong{font-size:17px;letter-spacing:-.03em}.brand small{color:#9c98a1;font-family:DM Sans,sans-serif;font-size:11px;font-weight:500}.brand-mark{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:12px;color:#fff;background:linear-gradient(145deg,#a83a59,#6f1f36);font-family:Manrope,sans-serif;font-weight:800;box-shadow:inset 0 1px #fff3,0 8px 18px #8f2f494d}.brand-mark.large{width:52px;height:52px;border-radius:16px;font-size:22px}.main-nav{display:grid;gap:5px}.main-nav a{display:flex;align-items:center;gap:13px;min-height:46px;padding:0 13px;color:#a9a5ae;border-radius:12px;font-size:14px;font-weight:500;transition:background .18s,color .18s,transform .18s}.main-nav a svg{width:19px;height:19px}.main-nav a:hover{color:#fff;background:#26262b;transform:translate(2px)}.main-nav a.active{color:#fff;background:linear-gradient(90deg,#8f2f49e6,#8f2f499e);box-shadow:inset 3px 0 #e69ab0}.main-nav .admin-nav-link{margin-top:7px;color:#f2c35a;background:#f2c35a12;border:1px solid rgba(242,195,90,.18)}.main-nav .admin-nav-link:hover{color:#ffe6a7;background:#f2c35a21}.main-nav .admin-nav-link.active{color:#231c0d;background:linear-gradient(135deg,#f4ce72,#d99b31);box-shadow:inset 3px 0 #fff0b9}.sidebar-card{margin-top:auto;display:flex;align-items:center;gap:10px;padding:13px;background:#242429;border:1px solid #323238;border-radius:14px}.sidebar-card svg{width:18px;color:#f2b84b}.sidebar-card div{display:grid;min-width:0}.sidebar-card strong{font-size:12px}.sidebar-card span{color:#99959f;font-size:11px}.independent-note{margin:16px 7px 0;color:#77737c;font-size:9px;line-height:1.45}.independent-note.light{color:#ffffff8c;margin:0}.main-content{min-height:100vh;margin-left:258px;outline:none}.mobile-header,.bottom-nav,.menu-backdrop{display:none}.page{width:min(1420px,100%);margin:0 auto;padding:48px clamp(28px,4vw,72px) 70px;animation:page-in .4s ease both}@keyframes page-in{0%{opacity:0;transform:translateY(8px)}}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:30px;margin-bottom:34px}.page-header h1{max-width:780px;margin-bottom:10px;font-size:clamp(34px,4vw,55px);line-height:1.05}.page-header p{max-width:720px;margin-bottom:0;color:var(--muted);font-size:16px;line-height:1.65}.page-header>svg{width:44px;height:44px;color:var(--accent)}.eyebrow{display:inline-flex;align-items:center;gap:7px;margin-bottom:10px;color:var(--accent);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.eyebrow svg{width:14px;height:14px}.eyebrow.light{color:#f1b2c4}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:0 18px;border:0;border-radius:12px;cursor:pointer;font-weight:700;font-size:13px;transition:transform .18s,box-shadow .18s,background .18s}.button:hover:not(:disabled){transform:translateY(-2px)}.button svg{width:17px;height:17px}.button.primary{color:#fff;background:linear-gradient(135deg,#9b3653,var(--accent-dark));box-shadow:0 10px 24px #6f1f3633}.button.soft{color:var(--accent);background:var(--accent-soft)}.button.ghost{color:var(--muted);background:transparent;border:1px solid var(--border)}.button.dark{color:#fff;background:#222126}.button.danger{color:#fff;background:#a52d46}.button.full{width:100%}.text-link{display:inline-flex;align-items:center;gap:7px;color:var(--accent);font-size:13px;font-weight:800}.text-link svg{width:15px}.text-link:hover{color:var(--accent-dark)}.card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.card-heading h2{margin-bottom:0;font-size:20px}.card-heading>svg{width:22px;color:var(--accent)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin:56px 0 24px}.section-heading h2{margin:0;font-size:29px}.section-heading>p{max-width:440px;margin:0;color:var(--muted);line-height:1.55}.subject-pill{display:inline-flex;align-items:center;min-height:26px;padding:0 10px;color:var(--subject);background:color-mix(in srgb,var(--subject) 10%,var(--surface));border:1px solid color-mix(in srgb,var(--subject) 25%,transparent);border-radius:999px;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.progress-wrap{display:grid;gap:7px}.progress-label{display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}.progress-label strong{color:var(--text)}.progress-track{height:7px;overflow:hidden;background:var(--surface-3);border-radius:99px}.progress-fill{display:block;height:100%;border-radius:inherit;transition:width .6s ease}.mini-label{display:inline-flex;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(500px,1.08fr) minmax(560px,.92fr);background:var(--surface)}.login-showcase{position:relative;overflow:hidden;min-height:100vh;display:flex;flex-direction:column;justify-content:space-between;padding:46px clamp(40px,5vw,78px);color:#fff;background:radial-gradient(circle at 72% 38%,rgba(164,55,85,.42),transparent 25%),radial-gradient(circle at 8% 88%,rgba(93,95,239,.24),transparent 30%),#17161b}.login-showcase:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;opacity:.55;background-image:radial-gradient(rgba(255,255,255,.2) .7px,transparent .7px);background-size:28px 28px;-webkit-mask-image:linear-gradient(140deg,black,transparent 72%);mask-image:linear-gradient(140deg,black,transparent 72%)}.login-brand,.login-showcase-copy,.login-showcase>.independent-note{position:relative;z-index:3}.login-brand{display:flex;align-items:center;gap:13px}.login-brand>span:last-child{display:grid}.login-brand strong{font:800 17px Manrope}.login-brand small{color:#ffffff80;font-size:10px}.login-showcase-copy{max-width:590px;margin:auto 0}.login-showcase-copy h1{margin:7px 0 22px;font-size:clamp(52px,6vw,86px);line-height:.95}.login-showcase-copy h1 em{color:#e69ab0;font-style:normal}.login-showcase-copy>p{max-width:530px;color:#ffffffad;font-size:16px;line-height:1.7}.login-features{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:30px}.login-features>div{display:flex;align-items:center;gap:11px;padding:14px;background:#ffffff0e;border:1px solid rgba(255,255,255,.09);border-radius:14px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.login-features svg{flex:0 0 auto;width:19px;color:#f0a5ba}.login-features span{display:grid}.login-features strong{font-size:12px}.login-features small{color:#ffffff7a;font-size:9px;line-height:1.4}.login-orbit{position:absolute;z-index:1;right:-165px;bottom:-135px;width:450px;height:450px;border:1px solid rgba(255,255,255,.08);border-radius:50%}.login-orbit:before,.login-orbit:after,.login-orbit i{content:"";position:absolute;top:50%;right:50%;bottom:50%;left:50%;border:1px solid rgba(255,255,255,.07);border-radius:50%;transform:translate(-50%,-50%)}.login-orbit:before{width:330px;height:330px}.login-orbit:after{width:210px;height:210px}.login-orbit i:nth-child(1){width:90px;height:90px;background:#8f2f494d;box-shadow:0 0 80px #8f2f4959}.login-orbit span,.login-orbit b,.login-orbit em{position:absolute;display:grid;place-items:center;width:44px;height:30px;background:#ffffff14;border:1px solid rgba(255,255,255,.1);border-radius:9px;font-size:10px;font-style:normal}.login-orbit span{left:50px;top:130px}.login-orbit b{left:165px;top:33px}.login-orbit em{left:92px;top:284px}.login-panel{min-height:100vh;display:grid;place-items:center;padding:38px clamp(34px,6vw,82px);background:var(--surface)}.login-form{width:min(590px,100%);animation:page-in .45s ease both}.login-kicker{display:inline-flex;align-items:center;gap:7px;margin-bottom:14px;color:var(--accent);font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.login-kicker svg{width:15px}.login-form>h2{margin-bottom:10px;font-size:clamp(30px,4vw,44px);line-height:1.08}.login-form>h2+p{margin-bottom:28px;color:var(--muted);line-height:1.6}.login-name-field{display:grid;gap:8px;margin-bottom:25px;font-size:12px;font-weight:800}.login-name-field>div{position:relative}.login-name-field svg{position:absolute;z-index:2;left:14px;top:14px;width:17px;color:var(--muted)}.login-name-field input{height:47px;padding-left:42px;background:var(--surface-2)}.level-picker{margin:0;padding:0;border:0}.level-picker legend{font-size:13px;font-weight:800}.level-picker>p{margin:3px 0 12px;color:var(--muted);font-size:10px}.level-picker>div{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.level-picker button{position:relative;min-height:67px;display:grid;align-content:center;gap:2px;padding:10px 12px;text-align:left;color:var(--muted);background:var(--surface-2);border:1px solid var(--border);border-radius:12px;cursor:pointer;transition:border-color .18s,background .18s,transform .18s}.level-picker button:hover{transform:translateY(-2px)}.level-picker button>span{color:var(--text);font:800 14px Manrope}.level-picker button small{font-size:9px}.level-picker button svg{position:absolute;right:8px;top:8px;width:14px}.level-picker button.selected{color:var(--accent);background:var(--accent-soft);border-color:var(--accent)}.level-picker button.selected>span{color:var(--accent)}.level-info{display:flex;gap:9px;margin-top:13px;padding:10px 12px;color:var(--violet);background:color-mix(in srgb,var(--violet) 7%,var(--surface));border-radius:10px}.level-info svg{flex:0 0 auto;width:16px}.level-info span{display:grid;color:var(--muted);font-size:9px;line-height:1.45}.level-info strong{color:var(--text);font-size:10px}.login-error{margin:13px 0 0;color:#c9435c;font-size:11px;font-weight:700}.login-submit{width:100%;min-height:49px;margin-top:20px}.login-privacy{display:flex;align-items:center;justify-content:center;gap:6px;margin:13px 0 0;color:var(--muted);font-size:9px}.login-privacy svg{width:13px}.onboarding-page{min-height:100vh;display:grid;grid-template-columns:minmax(350px,.85fr) minmax(560px,1.15fr);background:var(--surface)}.onboarding-visual{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;min-height:100vh;padding:48px clamp(36px,5vw,76px);color:#fff;background:radial-gradient(circle at 25% 30%,rgba(186,79,108,.34),transparent 28%),radial-gradient(circle at 90% 85%,rgba(93,95,239,.28),transparent 30%),#17161c}.onboarding-visual:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(rgba(255,255,255,.22) .7px,transparent .7px);background-size:26px 26px;-webkit-mask-image:linear-gradient(to bottom,black,transparent 70%);mask-image:linear-gradient(to bottom,black,transparent 70%)}.onboarding-brand,.visual-copy,.onboarding-visual .independent-note{position:relative;z-index:2}.onboarding-brand{display:flex;align-items:center;gap:13px;font-family:Manrope,sans-serif}.visual-copy{max-width:520px}.visual-copy h1{margin-bottom:20px;font-size:clamp(44px,5vw,72px);line-height:.98}.visual-copy p{max-width:440px;color:#ffffffb0;font-size:16px;line-height:1.65}.orbit{position:absolute;z-index:1;width:420px;height:420px;border:1px solid rgba(255,255,255,.1);border-radius:50%}.orbit:after{content:"";position:absolute;width:12px;height:12px;border-radius:50%;background:#d79aab;box-shadow:0 0 25px #d79aab}.orbit-one{right:-230px;top:10%}.orbit-one:after{top:85px;left:45px}.orbit-two{left:-290px;bottom:-90px;width:580px;height:580px}.orbit-two:after{right:74px;top:90px;background:#8d8fff}.onboarding-panel{align-self:center;width:min(720px,100%);margin:auto;padding:50px clamp(32px,7vw,90px)}.step-dots{display:flex;gap:8px;margin-bottom:40px}.step-dots span{width:34px;height:4px;border-radius:99px;background:var(--surface-3)}.step-dots span.active{background:var(--accent)}.onboarding-step{animation:page-in .35s ease both}.onboarding-step h2{margin:4px 0 10px;font-size:clamp(29px,4vw,42px)}.onboarding-step>p{margin-bottom:30px;color:var(--muted);line-height:1.6}.icon-kicker{display:inline-flex;align-items:center;gap:8px;color:var(--accent);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.icon-kicker svg{width:16px}.field-label{display:grid;gap:8px;margin-bottom:22px;font-size:13px;font-weight:700}.field-label span,.field-label small{color:var(--muted);font-weight:400}.choice-block{margin-top:24px}.selected-level-callout{display:flex;align-items:center;justify-content:space-between;margin:-12px 0 18px;padding:10px 13px;color:var(--muted);background:var(--surface-2);border:1px solid var(--border);border-radius:11px;font-size:11px}.selected-level-callout strong{color:var(--accent);font:800 15px Manrope}.choice-block>.field-label{display:flex;align-items:center;margin-bottom:10px}.choice-block svg{width:16px}.segmented{display:flex;gap:8px}.segmented button{flex:1;min-height:44px;border:1px solid var(--border);border-radius:11px;background:var(--surface);cursor:pointer;font-weight:700}.segmented button.selected{color:var(--accent);background:var(--accent-soft);border-color:var(--accent)}.tag-grid{display:flex;flex-wrap:wrap;gap:9px}.tag-grid button{display:inline-flex;align-items:center;gap:5px;min-height:38px;padding:0 13px;color:var(--muted);background:var(--surface);border:1px solid var(--border);border-radius:99px;cursor:pointer}.tag-grid button svg{width:14px}.tag-grid button.selected{color:var(--accent);border-color:var(--accent);background:var(--accent-soft);font-weight:700}.subject-picks{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:28px;padding-top:24px;border-top:1px solid var(--border)}.subject-picks>div{display:grid;gap:9px}.subject-picks strong{font-size:13px}.subject-picks label{color:var(--muted);font-size:13px}.subject-picks input{width:auto}.diagnostic-list{display:grid;gap:14px}.diagnostic-list fieldset{margin:0;padding:14px;border:1px solid var(--border);border-radius:14px}.diagnostic-list legend{padding:0 5px;font-weight:700;font-size:13px}.diagnostic-list legend span{display:inline-grid;place-items:center;width:22px;height:22px;margin-right:8px;color:#fff;background:var(--accent);border-radius:50%;font-size:10px}.mini-options{display:flex;flex-wrap:wrap;gap:7px;margin-top:7px}.mini-options label{padding:8px 10px;color:var(--muted);background:var(--surface-2);border-radius:8px;cursor:pointer;font-size:12px}.mini-options label.selected{color:var(--accent);background:var(--accent-soft);font-weight:700}.mini-options input{width:auto;margin-right:5px}.diagnostic-result{display:grid;gap:3px;margin-top:16px;padding:13px 15px;color:var(--green);background:color-mix(in srgb,var(--green) 10%,var(--surface));border-radius:12px;font-size:12px}.diagnostic-result span{color:var(--muted)}.onboarding-actions{display:flex;justify-content:space-between;align-items:center;margin-top:32px}.hero-card{position:relative;overflow:hidden;min-height:350px;display:grid;grid-template-columns:1.35fr .65fr;align-items:center;padding:clamp(36px,5vw,66px);color:#fff;background:radial-gradient(circle at 77% 35%,rgba(171,80,107,.4),transparent 28%),radial-gradient(circle at 93% 110%,rgba(93,95,239,.25),transparent 32%),#1a191e;border-radius:28px;box-shadow:0 30px 70px #16111433}.hero-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(rgba(255,255,255,.16) .8px,transparent .8px);background-size:25px 25px;-webkit-mask-image:linear-gradient(90deg,transparent,black);mask-image:linear-gradient(90deg,transparent,black);pointer-events:none}.hero-copy,.hero-graphic{position:relative;z-index:2}.hero-copy h1{max-width:680px;margin:8px 0 18px;font-size:clamp(42px,5vw,72px);line-height:.98}.hero-copy h1 em{color:#e4a4b6;font-style:normal}.hero-copy p{max-width:560px;margin-bottom:27px;color:#ffffffb3;font-size:16px;line-height:1.65}.hero-actions{display:flex;flex-wrap:wrap;gap:10px}.hero-actions .button.soft{color:#fff;background:#ffffff17;border:1px solid rgba(255,255,255,.13)}.hero-graphic{min-height:260px;display:grid;place-items:center}.planet-ring{display:grid;place-items:center;width:215px;height:215px;border:1px solid rgba(255,255,255,.14);border-radius:50%;animation:slow-spin 30s linear infinite}.planet-ring:before{content:"";position:absolute;width:175px;height:175px;border:1px dashed rgba(255,255,255,.1);border-radius:50%}.planet{display:grid;place-items:center;align-content:center;width:120px;height:120px;background:linear-gradient(145deg,#a94260,#6e2239);border-radius:50%;box-shadow:inset -18px -15px 30px #0000002e,0 0 70px #a139554d;animation:slow-spin 30s linear infinite reverse}.planet span{font-family:Manrope;font-size:28px;font-weight:800}.planet small{color:#ffffffa6}@keyframes slow-spin{to{transform:rotate(360deg)}}.floating-chip{position:absolute;display:inline-flex;align-items:center;gap:5px;padding:7px 10px;color:#ffffffd1;background:#ffffff14;border:1px solid rgba(255,255,255,.12);border-radius:9px;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);font-size:11px;font-weight:700}.floating-chip svg{width:13px}.chip-one{left:4%;top:20%}.chip-two{right:0;top:28%}.chip-three{right:8%;bottom:12%}.status-strip{position:relative;z-index:3;width:calc(100% - 60px);display:grid;grid-template-columns:repeat(3,1fr);margin:-22px auto 28px;background:var(--surface);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow)}.status-strip>div{display:flex;align-items:center;gap:12px;min-width:0;padding:18px 25px}.status-strip>div+div{border-left:1px solid var(--border)}.status-strip p{display:grid;min-width:0;margin:0}.status-strip small{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.06em}.status-strip strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.status-icon{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border-radius:11px}.status-icon svg{width:17px}.status-icon.wine{color:var(--accent);background:var(--accent-soft)}.status-icon.violet{color:var(--violet);background:color-mix(in srgb,var(--violet) 10%,var(--surface))}.status-icon.orange{color:var(--orange);background:color-mix(in srgb,var(--orange) 10%,var(--surface))}.status-icon.green{color:var(--green);background:color-mix(in srgb,var(--green) 10%,var(--surface))}.home-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:22px}.session-card,.challenge-card,.progress-overview{padding:26px}.session-timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:25px 0 20px}.session-timeline>div{position:relative;min-width:0;padding-top:10px;border-top:3px solid var(--step)}.session-timeline span{display:grid;place-items:center;width:31px;height:31px;color:var(--step);background:color-mix(in srgb,var(--step) 10%,var(--surface));border-radius:9px;font-size:10px;font-weight:800}.session-timeline p{display:grid;margin:9px 0 0}.session-timeline strong{font-size:12px}.session-timeline small{overflow:hidden;color:var(--muted);font-size:10px;line-height:1.35}.challenge-card{background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--orange) 6%,var(--surface)))}.challenge-card .mini-label{margin:26px 0 9px}.challenge-question{min-height:58px;font-family:Manrope;font-size:17px;font-weight:700;line-height:1.45}.progress-overview{margin-top:22px}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:26px}.metric-grid>div{display:grid;gap:4px}.metric-number{font-family:Manrope;font-size:30px;font-weight:800}.metric-grid small{min-height:30px;color:var(--muted);font-size:11px}.growth-note{display:flex;align-items:center;gap:6px;color:var(--accent);font-size:11px;font-weight:700}.growth-note svg{width:14px}.header-stat{display:grid;grid-template-columns:auto auto;align-items:center;column-gap:10px;padding:14px 18px;background:var(--surface);border:1px solid var(--border);border-radius:15px;box-shadow:var(--shadow)}.header-stat svg{grid-row:span 2;color:var(--accent)}.header-stat strong{font:800 21px Manrope}.header-stat span{color:var(--muted);font-size:10px}.dashboard-hero{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:28px;padding:26px 30px}.week-ring{--progress: 0deg;display:grid;place-items:center;flex:0 0 auto;width:116px;height:116px;border-radius:50%;background:conic-gradient(var(--accent) var(--progress),var(--surface-3) 0)}.week-ring:before{content:"";position:absolute;width:92px;height:92px;background:var(--surface);border-radius:50%}.week-ring div{position:relative;display:grid;text-align:center}.week-ring strong{font:800 24px Manrope}.week-ring small{color:var(--muted);font-size:10px}.week-copy h2{margin-bottom:6px}.week-copy p{color:var(--muted);margin-bottom:16px}.week-copy .progress-wrap{max-width:420px}.streak-box{min-width:145px;display:grid;grid-template-columns:auto auto;align-items:center;justify-content:center;column-gap:7px;padding:18px;background:color-mix(in srgb,var(--orange) 8%,var(--surface));border-radius:16px;text-align:center}.streak-box svg{color:var(--orange)}.streak-box strong{font:800 25px Manrope}.streak-box span,.streak-box small{grid-column:span 2}.streak-box span{font-size:12px;font-weight:700}.streak-box small{color:var(--muted);font-size:9px}.dashboard-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:20px 0}.stat-card{display:flex;align-items:center;gap:13px;padding:18px}.stat-card p{display:grid;margin:0}.stat-card strong{font:800 23px Manrope}.stat-card p span{color:var(--muted);font-size:10px}.dashboard-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:20px}.mastery-card,.weekly-card{padding:26px}.mastery-list{display:grid;gap:21px;margin-top:25px}.mastery-title{display:flex;align-items:center;gap:8px;margin-bottom:8px;font-size:12px}.mastery-title>span:last-child{margin-left:auto;color:var(--muted);font-size:10px}.subject-dot{width:9px;height:9px;border-radius:50%}.check-list{display:grid;gap:10px;margin:22px 0;padding:0;list-style:none}.check-list li{display:flex;align-items:center;gap:11px;padding:11px;background:var(--surface-2);border-radius:12px}.check-list li>span{display:grid;place-items:center;width:28px;height:28px;color:var(--muted);background:var(--surface-3);border-radius:50%}.check-list svg{width:15px}.check-list div{display:grid}.check-list strong{font-size:12px}.check-list small{color:var(--muted);font-size:10px}.check-list li.done>span{color:#fff;background:var(--green)}.roadmap-page .page-header{margin-bottom:20px}.roadmap-legend{display:flex;flex-wrap:wrap;gap:18px;color:var(--muted);font-size:11px}.roadmap-legend span{display:flex;align-items:center;gap:6px}.roadmap-legend i{width:9px;height:9px;border-radius:50%}.roadmap-legend .current{background:var(--accent)}.roadmap-legend .future{border:2px solid var(--muted)}.roadmap-legend .horizon{background:var(--violet)}.roadmap-track{width:min(950px,100%);margin:38px auto}.roadmap-year{display:grid;grid-template-columns:60px 1fr}.roadmap-node{position:relative;display:flex;justify-content:center}.roadmap-node>span{position:relative;z-index:2;display:grid;place-items:center;width:41px;height:41px;color:var(--muted);background:var(--surface);border:2px solid var(--border);border-radius:50%}.roadmap-node svg{width:17px}.roadmap-node>i{position:absolute;top:40px;bottom:0;width:2px;background:var(--border)}.roadmap-year.current .roadmap-node>span{color:#fff;background:var(--accent);border-color:var(--accent);box-shadow:0 0 0 8px var(--accent-soft)}.roadmap-year.horizon .roadmap-node>span{color:#fff;background:var(--violet);border-color:var(--violet)}.roadmap-card{overflow:hidden;margin:0 0 22px 12px;box-shadow:none}.roadmap-year.open .roadmap-card{box-shadow:var(--shadow);border-color:color-mix(in srgb,var(--accent) 25%,var(--border))}.roadmap-toggle{width:100%;min-height:96px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:18px 22px;text-align:left;background:none;border:0;cursor:pointer}.year-number{color:var(--border);font:800 30px Manrope}.roadmap-toggle>span:nth-child(2){display:grid}.roadmap-toggle small{color:var(--accent);font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.roadmap-toggle strong{font-size:25px}.roadmap-toggle em{color:var(--muted);font-size:12px;font-style:normal}.roadmap-toggle svg{color:var(--muted);transition:transform .2s}.roadmap-year.open .roadmap-toggle svg{transform:rotate(180deg)}.roadmap-details{display:grid;grid-template-columns:1fr 1fr;gap:22px;padding:0 24px 26px 82px;border-top:1px solid var(--border);animation:page-in .25s ease}.roadmap-details>div:not(.roadmap-notes){padding-top:22px}.roadmap-details h3{display:flex;align-items:center;gap:7px;font-size:13px}.roadmap-details h3 svg{width:16px;color:var(--accent)}.roadmap-details ul{display:grid;gap:7px;margin:0;padding-left:17px;color:var(--muted);font-size:12px;line-height:1.45}.roadmap-notes{grid-column:span 2;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.roadmap-notes p{display:grid;gap:4px;margin:0;padding:12px;color:var(--muted);background:var(--surface-2);border-radius:11px;font-size:11px;line-height:1.45}.roadmap-notes strong{color:var(--text)}.roadmap-details .button{justify-self:start}.honesty-banner{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;padding:22px 25px;color:#fff;background:#242329;border-radius:18px}.honesty-banner>svg:first-child{color:#e7a0b4}.honesty-banner>svg:last-child{color:#7cd9be}.honesty-banner strong{font-family:Manrope}.honesty-banner p{margin:3px 0 0;color:#aaa6b0;font-size:12px;line-height:1.5}.filter-bar{display:flex;justify-content:space-between;gap:16px;padding:12px;margin-bottom:22px;box-shadow:none}.filter-tabs{display:flex;flex-wrap:wrap;gap:5px}.filter-tabs button{min-height:38px;padding:0 14px;color:var(--muted);background:transparent;border:0;border-radius:9px;cursor:pointer;font-size:12px;font-weight:700}.filter-tabs button.active{color:var(--accent);background:var(--accent-soft)}.search-field{position:relative;width:min(240px,100%)}.search-field svg{position:absolute;left:12px;top:11px;width:16px;color:var(--muted)}.search-field input{padding-left:36px;background:var(--surface-2);border:0}.lesson-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.lesson-card{position:relative;display:flex;flex-direction:column;min-height:285px;padding:23px;box-shadow:none;transition:transform .2s,box-shadow .2s,border-color .2s}.lesson-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:color-mix(in srgb,var(--accent) 25%,var(--border))}.lesson-card.completed{background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--green) 5%,var(--surface)))}.lesson-card-top{display:flex;justify-content:space-between;align-items:center}.done-label{display:inline-flex;align-items:center;gap:5px;color:var(--green);font-size:10px;font-weight:700}.done-label svg{width:14px}.lesson-index{margin:24px 0 7px;color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.1em}.lesson-card h2{margin-bottom:9px;font-size:19px;line-height:1.25}.lesson-card>p{flex:1;color:var(--muted);font-size:12px;line-height:1.55}.lesson-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px;color:var(--muted);font-size:10px}.lesson-meta svg{width:14px}.lesson-card .text-link{margin-top:17px}.empty-state{min-height:50vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.empty-state>svg{width:52px;height:52px;color:var(--accent)}.empty-state p{color:var(--muted)}.back-link{display:inline-flex;align-items:center;gap:7px;margin-bottom:22px;color:var(--muted);font-size:12px;font-weight:700}.back-link svg{width:16px}.lesson-hero{display:grid;grid-template-columns:1fr 300px;gap:28px;align-items:end;padding:34px;color:#fff;background:radial-gradient(circle at 85% 10%,rgba(93,95,239,.2),transparent 30%),#1c1b20}.lesson-level{margin-left:8px;color:#a9a5ae;font-size:10px}.lesson-hero h1{margin:15px 0 10px;font-size:clamp(34px,4.5vw,57px);line-height:1}.lesson-hero>div:first-child>p{max-width:750px;color:#b5b1ba;line-height:1.6}.lesson-objective{display:grid;grid-template-columns:auto 1fr;gap:4px 9px;padding:18px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:15px}.lesson-objective .target-icon{grid-row:span 2;display:grid;place-items:center;width:34px;height:34px;color:#efa6ba;background:#8f2f4959;border-radius:10px}.lesson-objective strong{font-size:11px}.lesson-objective span:last-child{color:#aaa6b0;font-size:10px;line-height:1.45}.lesson-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:22px;margin-top:22px}.lesson-content{overflow:hidden;box-shadow:none}.lesson-content>section{display:grid;grid-template-columns:60px 1fr;gap:10px;padding:30px}.lesson-content>section+section{border-top:1px solid var(--border)}.section-number{color:var(--border);font:800 24px Manrope}.lesson-content h2{margin-bottom:15px;font-size:21px}.lesson-content p{color:var(--muted);font-size:14px;line-height:1.75}.prereq-list,.mistake-list,.summary-list{display:grid;gap:9px;padding:0;list-style:none}.prereq-list li,.mistake-list li,.summary-list li{display:flex;align-items:flex-start;gap:8px;color:var(--muted);font-size:13px}.prereq-list svg,.summary-list svg{flex:0 0 auto;width:16px;color:var(--green)}.mistake-list svg{flex:0 0 auto;width:16px;color:var(--orange)}.guided-example{padding:20px;background:var(--surface-2);border-left:3px solid var(--violet);border-radius:0 15px 15px 0}.guided-example>span{display:flex;gap:8px;font-weight:800;font-size:12px}.guided-example>span svg{width:16px;color:var(--violet)}.guided-example ol{display:grid;gap:7px;padding-left:20px;color:var(--muted);font-size:13px}.guided-example .example-answer{display:flex;gap:8px;margin:15px 0 0;padding:12px;color:var(--green);background:color-mix(in srgb,var(--green) 8%,var(--surface));border-radius:10px}.example-answer svg{flex:0 0 auto;width:16px}.interactive-box{display:grid;grid-template-columns:auto 1fr;gap:10px;padding:17px;color:var(--text);background:color-mix(in srgb,var(--orange) 7%,var(--surface));border:1px solid color-mix(in srgb,var(--orange) 20%,var(--border));border-radius:14px}.interactive-box>svg{width:19px;color:var(--orange)}.interactive-box p{margin:0;color:var(--text);font-weight:700}.interactive-box details{grid-column:2;color:var(--muted);font-size:12px}.interactive-box summary{color:var(--accent);cursor:pointer;font-weight:700}.interactive-box details span{display:block;margin-top:8px;line-height:1.5}.lesson-sidebar{display:grid;align-content:start;gap:15px}.sticky-card{position:sticky;top:24px;padding:22px}.sticky-card>svg{color:var(--accent)}.sticky-card h2{margin:13px 0 7px;font-size:18px}.sticky-card p{color:var(--muted);font-size:12px;line-height:1.5}.sticky-card .button+.button{margin-top:8px}.completed-callout{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:10px;color:var(--green);font-size:12px;font-weight:800}.completed-callout svg{width:17px}.next-card{display:grid;gap:7px;padding:18px;box-shadow:none}.next-card small{color:var(--muted);text-transform:uppercase}.next-card strong{font-size:13px}.exercise-count{display:grid;text-align:right}.exercise-count strong{font:800 38px Manrope}.exercise-count span{color:var(--muted);font-size:10px}.exercise-filters{display:flex;align-items:center;gap:10px;margin-bottom:18px;padding:10px 14px;box-shadow:none}.exercise-filters>span{display:flex;align-items:center;gap:7px;margin-right:7px;font-size:12px;font-weight:800}.exercise-filters svg{width:16px}.exercise-filters select{width:auto;min-width:170px;padding:9px 34px 9px 12px}.review-switch{display:flex;align-items:center;gap:7px;margin-left:auto;color:var(--muted);font-size:11px}.review-switch input{width:auto}.context-banner{display:flex;align-items:center;gap:8px;margin-bottom:18px;padding:12px 14px;color:var(--violet);background:color-mix(in srgb,var(--violet) 8%,var(--surface));border-radius:12px;font-size:12px;font-weight:700}.context-banner svg{width:17px}.exercise-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:20px;align-items:start}.exercise-card{overflow:hidden;min-height:550px;padding:28px;box-shadow:none}.exercise-top{display:flex;justify-content:space-between;align-items:center}.exercise-top>div{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:9px;text-transform:uppercase}.exercise-top i{width:1px;height:14px;margin:0 4px;background:var(--border)}.exercise-top b{width:14px;height:4px;background:var(--surface-3);border-radius:99px}.exercise-top b.filled{background:var(--orange)}.exercise-top small{margin-left:5px}.exercise-progress{height:3px;margin:20px -28px 28px;background:var(--surface-3)}.exercise-progress span{display:block;height:100%;background:var(--accent);transition:width .3s}.exercise-position{color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.1em}.exercise-card>h2{max-width:760px;margin:15px 0 26px;font-size:clamp(21px,2.5vw,31px);line-height:1.35}.answer-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.answer-options label{display:flex;align-items:center;gap:10px;min-height:56px;padding:10px 13px;color:var(--muted);background:var(--surface-2);border:1px solid transparent;border-radius:12px;cursor:pointer;font-size:13px;transition:border .18s,background .18s}.answer-options label:hover{border-color:var(--border)}.answer-options label.selected{color:var(--text);background:var(--accent-soft);border-color:var(--accent);font-weight:700}.answer-options input{position:absolute;width:1px;height:1px;margin:-1px;clip-path:inset(50%);opacity:0;pointer-events:none}.answer-options label>span{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;color:var(--muted);background:var(--surface);border:1px solid var(--border);border-radius:8px;font-size:10px}.answer-options label.selected>span{color:#fff;background:var(--accent);border-color:var(--accent)}.written-answer{display:grid;gap:7px}.written-answer>span{font-size:11px;font-weight:700}.written-answer input,.written-answer textarea{font-size:14px}.ordering-input{display:grid;gap:13px}.ordered-zone{min-height:70px;display:flex;flex-wrap:wrap;align-items:center;gap:7px;padding:12px;background:var(--surface-2);border:1px dashed var(--border);border-radius:13px}.ordered-zone em{color:var(--muted);font-size:12px}.ordered-zone span{display:flex;align-items:center;gap:6px;padding:7px 10px;background:var(--surface);border:1px solid var(--border);border-radius:9px;font-size:12px}.ordered-zone b{display:grid;place-items:center;width:20px;height:20px;color:#fff;background:var(--accent);border-radius:6px;font-size:9px}.order-options{display:flex;flex-wrap:wrap;gap:8px}.order-options button{padding:9px 12px;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:9px;cursor:pointer}.order-options button:disabled{text-decoration:line-through}.hints-box{display:grid;gap:7px;margin-top:17px}.hints-box p{display:flex;align-items:center;gap:8px;margin:0;padding:8px 10px;color:var(--muted);background:color-mix(in srgb,var(--orange) 6%,var(--surface));border-radius:9px;font-size:11px}.hints-box span{display:grid;place-items:center;flex:0 0 21px;width:21px;height:21px;color:#fff;background:var(--orange);border-radius:50%;font-weight:800}.answer-result{display:grid;grid-template-columns:auto 1fr;gap:11px;margin-top:18px;padding:16px;border-radius:13px}.answer-result>svg{width:22px}.answer-result strong{font-family:Manrope}.answer-result p{margin:5px 0;color:var(--muted);font-size:12px;line-height:1.55}.answer-result small{display:block;margin:8px 0;color:var(--muted)}.answer-result span{font-size:11px}.answer-result.correct{color:var(--green);background:color-mix(in srgb,var(--green) 8%,var(--surface))}.answer-result.incorrect{color:var(--accent);background:var(--accent-soft)}.exercise-actions{display:flex;align-items:center;gap:8px;margin-top:22px}.exercise-actions .button.primary{margin-left:auto}.exercise-side{padding:22px;box-shadow:none}.exercise-side h2{margin-bottom:17px;font-size:20px}.question-dots{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.question-dots button{aspect-ratio:1;padding:0;color:var(--muted);background:var(--surface-2);border:1px solid transparent;border-radius:8px;cursor:pointer;font-size:10px}.question-dots button.current{color:#fff;background:var(--accent)}.question-dots button.passed:not(.current){color:var(--green);border-color:color-mix(in srgb,var(--green) 30%,transparent)}.question-dots button.missed:not(.current){color:var(--accent);border-color:color-mix(in srgb,var(--accent) 30%,transparent)}.side-tip{display:flex;gap:9px;margin-top:23px;padding:13px;color:var(--violet);background:color-mix(in srgb,var(--violet) 7%,var(--surface));border-radius:11px}.side-tip svg{flex:0 0 auto;width:17px}.side-tip p{display:grid;gap:3px;margin:0;color:var(--muted);font-size:10px;line-height:1.45}.side-tip strong{color:var(--text)}.exercise-side-nav{display:flex;justify-content:space-between;margin-top:20px}.exercise-side-nav button{display:grid;place-items:center;width:36px;height:36px;color:var(--muted);background:var(--surface-2);border:0;border-radius:9px;cursor:pointer}.exercise-side-nav svg{width:16px}.project-template-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.project-template{position:relative;display:flex;flex-direction:column;padding:23px;box-shadow:none}.project-number{position:absolute;top:15px;right:18px;color:var(--surface-3);font:800 34px Manrope}.project-template h3{margin:15px 0 8px;padding-right:24px;font-size:18px}.project-template>p{color:var(--muted);font-size:12px;line-height:1.5}.skill-tags{display:flex;flex-wrap:wrap;gap:6px}.skill-tags span{padding:5px 8px;color:var(--muted);background:var(--surface-2);border-radius:7px;font-size:9px;font-weight:700}.project-template>details{margin:17px 0}.project-template summary,.saved-project summary{color:var(--accent);cursor:pointer;font-size:11px;font-weight:800}.template-details{padding-top:12px}.template-details h4{margin:13px 0 6px;font-size:11px}.template-details p,.template-details li{color:var(--muted);font-size:10px;line-height:1.45}.template-details ol,.template-details ul{display:grid;gap:5px;padding-left:17px}.template-details ul{padding:0;list-style:none}.template-details li svg{width:13px;color:var(--green);vertical-align:middle;margin-right:5px}.community-idea{display:flex;gap:6px;padding:8px;background:color-mix(in srgb,var(--green) 7%,var(--surface));border-radius:8px}.community-idea svg{flex:0 0 auto;width:14px}.project-template>.button{margin-top:auto}.saved-project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.saved-project{position:relative;padding:20px;box-shadow:none}.saved-project h3{padding-right:55px}.saved-project>p{color:var(--muted);font-size:12px}.saved-project>small{display:block;margin:12px 0;color:var(--muted)}.status-badge{position:absolute;top:18px;right:18px;padding:5px 7px;border-radius:99px;color:var(--orange);background:color-mix(in srgb,var(--orange) 10%,var(--surface));font-size:8px;font-weight:800;text-transform:uppercase}.status-badge.terminé{color:var(--green)}.project-images,.image-previews{display:flex;gap:7px;margin:12px 0;overflow-x:auto}.project-images img,.image-previews img{width:90px;height:65px;object-fit:cover;border-radius:8px;border:1px solid var(--border)}.saved-project details p{margin:8px 0;font-size:11px;line-height:1.45}.project-form-section{display:grid;grid-template-columns:.65fr 1.35fr;gap:36px;margin-top:58px;padding:30px}.form-intro h2{margin:10px 0 8px;font-size:28px}.form-intro>p{color:var(--muted);line-height:1.6}.portfolio-tip{display:flex;gap:10px;margin-top:25px;padding:13px;color:var(--orange);background:color-mix(in srgb,var(--orange) 7%,var(--surface));border-radius:12px}.portfolio-tip svg{flex:0 0 auto;width:18px}.portfolio-tip p{display:grid;margin:0;color:var(--muted);font-size:11px}.portfolio-tip strong{color:var(--text)}.project-form{display:grid;gap:14px}.project-form label{display:grid;gap:6px;color:var(--text);font-size:11px;font-weight:700}.project-form label small{color:var(--muted);font-weight:400}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.upload-zone{position:relative;place-items:center;padding:18px;color:var(--muted)!important;background:var(--surface-2);border:1px dashed var(--border);border-radius:13px;text-align:center;cursor:pointer}.upload-zone svg{color:var(--accent)}.upload-zone input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.upload-zone span{font-size:9px;font-weight:400}.form-message{display:flex;gap:7px;align-items:center;margin:0;color:var(--green);font-size:11px}.form-message svg{width:16px}.project-form .button{justify-self:start}.quality-banner{display:flex;align-items:center;gap:14px;margin-top:22px;padding:20px;color:#fff;background:#232228;border-radius:16px}.quality-banner>svg{color:#efa6ba}.quality-banner strong{font-family:Manrope}.quality-banner p{margin:2px 0 0;color:#aaa6b0;font-size:11px}.orientation-hero{position:relative;overflow:hidden;min-height:350px;display:grid;grid-template-columns:1fr 320px;align-items:center;padding:clamp(38px,5vw,66px);color:#fff;background:radial-gradient(circle at 78% 44%,rgba(143,47,73,.5),transparent 23%),radial-gradient(circle at 95% 115%,rgba(93,95,239,.3),transparent 32%),#1a191e}.orientation-hero h1{margin:6px 0 18px;font-size:clamp(40px,5.5vw,70px);line-height:1}.orientation-hero p{max-width:700px;color:#b4b0b9;line-height:1.65}.compass-graphic{position:relative;display:grid;place-items:center;width:230px;height:230px;margin:auto;border:1px solid rgba(255,255,255,.13);border-radius:50%}.compass-graphic:before,.compass-graphic:after{content:"";position:absolute;background:#ffffff1f}.compass-graphic:before{width:1px;height:100%}.compass-graphic:after{width:100%;height:1px}.compass-graphic>span{position:absolute;top:12px;color:#c8c4cc;font-size:11px}.compass-graphic i{position:absolute;width:150px;height:150px;border:1px dashed rgba(255,255,255,.11);border-radius:50%}.compass-graphic strong{position:relative;z-index:2;display:grid;place-items:center;width:80px;height:80px;font-size:46px;color:#f0a9bd;background:#8f2f494d;border-radius:50%}.compass-graphic small{position:absolute;bottom:20px;color:#aaa6b0}.principle-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.principle-grid article{padding:21px;box-shadow:none}.principle-grid svg{width:22px;color:var(--accent)}.principle-grid h3{margin:14px 0 7px;font-size:15px}.principle-grid p{margin:0;color:var(--muted);font-size:11px;line-height:1.55}.verified-badge{display:flex;align-items:center;gap:8px;padding:10px 13px;color:var(--green);background:color-mix(in srgb,var(--green) 8%,var(--surface));border-radius:12px}.verified-badge svg{width:18px}.verified-badge span{display:grid;color:var(--muted);font-size:9px}.verified-badge strong{color:var(--green)}.changing-warning{display:flex;gap:10px;margin-bottom:16px;padding:15px;color:var(--orange);background:color-mix(in srgb,var(--orange) 8%,var(--surface));border:1px solid color-mix(in srgb,var(--orange) 20%,var(--border));border-radius:13px}.changing-warning svg{flex:0 0 auto;width:20px}.changing-warning p{margin:0;color:var(--muted);font-size:12px;line-height:1.55}.changing-warning strong{color:var(--text)}.fact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.fact-card{display:flex;flex-direction:column;padding:22px;box-shadow:none}.fact-card>div{display:flex;align-items:center;gap:6px;color:var(--accent);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.fact-card>div svg{width:14px}.fact-card h3{margin:15px 0 7px;font-size:16px}.fact-card>p{flex:1;color:var(--muted);font-size:12px;line-height:1.65}.fact-card>small{margin-top:9px;color:var(--muted);font-size:9px}.recheck-card{display:grid;grid-template-columns:.65fr 1.35fr;gap:25px;margin-top:15px;padding:22px;box-shadow:none}.recheck-card>div{display:flex;gap:9px}.recheck-card svg{flex:0 0 auto;width:18px;color:var(--accent)}.recheck-card h3{font-size:16px}.recheck-card ul{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0;padding:0;list-style:none}.recheck-card li{display:flex;gap:6px;color:var(--muted);font-size:10px}.career-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.career-card{position:relative;min-height:190px;padding:20px;box-shadow:none}.career-card>span{position:absolute;right:15px;top:12px;color:var(--surface-3);font:800 28px Manrope}.career-card>svg{width:20px;color:var(--accent)}.career-card h3{margin:19px 0 6px;font-size:15px}.career-card p{color:var(--muted);font-size:11px;line-height:1.5}.career-card small{color:var(--accent);font-size:9px;font-weight:700}.openai-link{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;margin-top:14px;padding:19px 22px;box-shadow:none;transition:transform .2s}.openai-link:hover{transform:translateY(-2px)}.openai-link>svg:first-child{color:var(--accent)}.openai-link div{display:grid}.openai-link .eyebrow{margin:0}.openai-link strong{font-family:Manrope}.openai-link small{color:var(--muted)}.other-routes{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:22px;margin-top:56px;padding:28px;color:#fff;background:#232228}.other-routes>svg{color:#efa6ba}.other-routes h2{margin-bottom:7px}.other-routes p{margin:0;color:#aaa6b0;font-size:12px;line-height:1.6}.sources-list>div:nth-child(2){display:grid;grid-template-columns:1fr 1fr;gap:8px}.sources-list a{display:flex;justify-content:space-between;gap:9px;padding:13px 14px;color:var(--muted);background:var(--surface);border:1px solid var(--border);border-radius:10px;font-size:11px}.sources-list a svg{flex:0 0 auto;width:14px;color:var(--accent)}.sources-list>p{display:flex;align-items:center;gap:7px;margin-top:14px;color:var(--muted);font-size:10px}.sources-list>p svg{width:14px}.settings-message{display:flex;align-items:center;gap:8px;margin-bottom:16px;padding:12px 15px;color:var(--green);background:color-mix(in srgb,var(--green) 8%,var(--surface));border-radius:11px;font-size:12px}.settings-message svg{width:17px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.settings-group{padding:25px;box-shadow:none}.settings-heading{display:flex;gap:14px;margin-bottom:25px}.settings-heading>span{color:var(--border);font:800 25px Manrope}.settings-heading h2{margin-bottom:3px;font-size:20px}.settings-heading p{margin:0;color:var(--muted);font-size:11px}.settings-group .field-label{margin-top:16px}.settings-group input[type=range]{padding:0;accent-color:var(--accent);box-shadow:none}.theme-picker{display:grid;grid-template-columns:1fr 1fr;gap:10px}.theme-picker button{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:1px 8px;padding:13px;text-align:left;color:var(--muted);background:var(--surface-2);border:1px solid var(--border);border-radius:11px;cursor:pointer}.theme-picker svg{grid-row:span 2;width:19px}.theme-picker small{font-size:9px}.theme-picker button.selected{color:var(--accent);background:var(--accent-soft);border-color:var(--accent)}.toggle-row{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:20px}.toggle-row>span{display:grid}.toggle-row strong{font-size:12px}.toggle-row small{color:var(--muted);font-size:9px}.toggle-row input{width:auto;accent-color:var(--accent)}.data-actions{display:flex;flex-wrap:wrap;gap:9px}.privacy-note{margin:18px 0 0;padding:11px;color:var(--muted);background:var(--surface-2);border-radius:9px;font-size:10px;line-height:1.5}.signout-button{margin-top:12px}.danger-group{border-color:color-mix(in srgb,var(--accent) 28%,var(--border))}.confirm-reset{display:flex;gap:11px;padding:14px;background:var(--accent-soft);border-radius:12px}.confirm-reset>svg{flex:0 0 auto;color:var(--accent)}.confirm-reset strong{font-size:12px}.confirm-reset p{color:var(--muted);font-size:10px}.confirm-reset div div{display:flex;gap:7px}.admin-header{align-items:end}.admin-header .button{flex:0 0 auto}.admin-live-bar{display:flex;align-items:center;gap:9px;margin-bottom:18px;padding:11px 14px;color:var(--green);background:color-mix(in srgb,var(--green) 8%,var(--surface));border:1px solid color-mix(in srgb,var(--green) 18%,var(--border));border-radius:12px;font-size:11px}.admin-live-bar>span{width:8px;height:8px;background:var(--green);border-radius:50%;box-shadow:0 0 0 5px color-mix(in srgb,var(--green) 12%,transparent)}.admin-live-bar small{margin-left:auto;color:var(--muted)}.admin-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.admin-kpis article{position:relative;min-height:145px;display:grid;align-content:end;padding:19px;box-shadow:none}.admin-kpis article>svg{position:absolute;right:17px;top:17px;width:22px;color:var(--accent)}.admin-kpis small{color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.admin-kpis strong{overflow:hidden;margin:4px 0 2px;font:800 28px Manrope;text-overflow:ellipsis;white-space:nowrap}.admin-kpis span{color:var(--muted);font-size:10px}.admin-data-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.admin-data-card,.admin-table-card,.admin-list-card{padding:21px;box-shadow:none}.admin-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.admin-section-heading h2{margin:0;font-size:19px}.admin-section-heading .eyebrow{margin-bottom:4px}.admin-section-heading>svg{width:21px;color:var(--accent)}.admin-count{color:var(--muted);font-size:10px;font-weight:700}.admin-details{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:0}.admin-details>div{padding:11px 0;border-top:1px solid var(--border)}.admin-details>div:nth-child(odd){padding-right:14px}.admin-details>div:nth-child(2n){padding-left:14px;border-left:1px solid var(--border)}.admin-details .wide{grid-column:span 2;padding-right:0}.admin-details dt{margin-bottom:3px;color:var(--muted);font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.admin-details dd{margin:0;font-size:12px;font-weight:700;line-height:1.45}.admin-table-card{margin-top:14px}.admin-table-scroll{overflow-x:auto}.admin-table-card table{width:100%;border-collapse:collapse;font-size:11px}.admin-table-card th{padding:0 12px 9px;color:var(--muted);font-size:8px;text-align:left;text-transform:uppercase;letter-spacing:.06em}.admin-table-card td{min-width:105px;padding:11px 12px;border-top:1px solid var(--border)}.admin-table-card td:first-child{white-space:nowrap}.admin-table-card td strong,.admin-table-card td small{display:block}.admin-table-card td small{margin-top:2px;color:var(--muted);font-size:8px}.admin-answer{max-width:210px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.result-pill{display:inline-flex;min-height:24px;align-items:center;padding:0 9px;border-radius:99px;font-size:9px;font-weight:800}.result-pill.success{color:var(--green);background:color-mix(in srgb,var(--green) 10%,var(--surface))}.result-pill.error{color:var(--accent);background:var(--accent-soft)}.admin-empty{padding:28px;color:var(--muted);background:var(--surface-2);border-radius:12px;font-size:11px;text-align:center}.admin-data-grid.lower{margin-bottom:0}.admin-subject-list{display:grid;gap:8px}.admin-subject-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;background:var(--surface-2);border-radius:10px}.admin-subject-list>div>span{padding-left:9px;border-left:3px solid var(--subject-color);font-size:11px;font-weight:800}.admin-subject-list>div>div{display:grid;justify-items:end}.admin-subject-list small{color:var(--muted);font-size:8px}.admin-completion-list{display:grid;grid-template-columns:1fr 1fr;gap:14px}.admin-completion-list>div{padding:12px;background:var(--surface-2);border-radius:11px}.admin-completion-list strong{font-size:11px}.admin-completion-list p{margin:7px 0 0;color:var(--muted);font-size:9px}.admin-completion-list ul{max-height:130px;overflow:auto;margin:8px 0 0;padding-left:16px;color:var(--muted);font-size:9px;line-height:1.6}@media(max-width:1180px){.login-page{grid-template-columns:.85fr 1.15fr}.login-showcase{padding-left:40px;padding-right:40px}.login-showcase-copy h1{font-size:58px}.login-features{grid-template-columns:1fr}.sidebar{width:224px}.main-content{margin-left:224px}.sidebar{padding-left:14px;padding-right:14px}.page{padding-left:30px;padding-right:30px}.hero-card{grid-template-columns:1fr 260px}.hero-copy h1{font-size:52px}.lesson-grid,.project-template-grid,.dashboard-stats,.principle-grid{grid-template-columns:1fr 1fr}.onboarding-page{grid-template-columns:.75fr 1.25fr}.admin-kpis{grid-template-columns:1fr 1fr}}@media(max-width:900px){.login-page{display:block}.login-showcase{min-height:330px;padding:28px 34px}.login-showcase-copy{margin:45px 0 30px;max-width:650px}.login-showcase-copy h1{font-size:49px}.login-showcase-copy>p{margin-bottom:0}.login-features{display:none}.login-panel{min-height:auto;padding:44px 30px 60px}.login-orbit{opacity:.55}.sidebar{width:258px;transform:translate(-105%);transition:transform .25s ease;box-shadow:15px 0 50px #00000040}.sidebar.open{transform:translate(0)}.main-content{margin-left:0;padding-top:64px;padding-bottom:64px}.mobile-header{position:fixed;z-index:45;inset:0 0 auto;height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 20px;background:color-mix(in srgb,var(--surface) 92%,transparent);border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.mobile-header .brand{margin:0;color:var(--text)}.brand.compact{font-size:14px}.brand.compact .brand-mark{width:32px;height:32px;flex-basis:32px;border-radius:10px}.icon-button{display:grid;place-items:center;width:39px;height:39px;color:var(--text);background:var(--surface-2);border:1px solid var(--border);border-radius:10px}.icon-button svg{width:19px}.menu-backdrop{position:fixed;z-index:40;top:0;right:0;bottom:0;left:0;display:block;background:#00000073;border:0}.bottom-nav{position:fixed;z-index:38;inset:auto 0 0;min-height:64px;display:grid;grid-template-columns:repeat(5,1fr);padding:6px max(6px,env(safe-area-inset-right)) max(6px,env(safe-area-inset-bottom)) max(6px,env(safe-area-inset-left));background:color-mix(in srgb,var(--surface) 95%,transparent);border-top:1px solid var(--border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.bottom-nav a{display:grid;place-items:center;align-content:center;gap:3px;min-width:0;color:var(--muted);font-size:8px}.bottom-nav svg{width:18px}.bottom-nav a.active{color:var(--accent);font-weight:800}.onboarding-page{display:block;background:var(--surface)}.onboarding-visual{min-height:280px;padding:30px}.visual-copy{margin-top:55px}.visual-copy h1{font-size:45px}.visual-copy p{margin-bottom:0}.onboarding-panel{padding-top:40px;padding-bottom:50px}.hero-card{grid-template-columns:1fr}.hero-graphic{position:absolute;right:-80px;bottom:-80px;opacity:.48}.hero-copy{max-width:75%}.home-grid,.dashboard-grid,.lesson-layout{grid-template-columns:1fr}.lesson-sidebar{grid-template-columns:1fr 1fr}.sticky-card{position:static}.exercise-layout{grid-template-columns:1fr}.exercise-side{display:grid;grid-template-columns:1fr auto;gap:10px 20px}.exercise-side .eyebrow,.exercise-side h2,.question-dots,.side-tip{grid-column:1}.exercise-side-nav{grid-column:2;grid-row:1 / 5;flex-direction:column;margin:0}.project-form-section,.orientation-hero{grid-template-columns:1fr}.compass-graphic{position:absolute;right:-70px;bottom:-80px;opacity:.4}.orientation-hero>div:first-child{position:relative;z-index:2;max-width:80%}.career-grid{grid-template-columns:1fr 1fr}.settings-grid{grid-template-columns:1fr}}@media(max-width:640px){.login-showcase{min-height:285px;padding:23px 20px}.login-brand .brand-mark{width:38px;height:38px;flex-basis:38px;border-radius:12px}.login-showcase-copy{margin:34px 0 24px}.login-showcase-copy h1{margin-bottom:12px;font-size:39px}.login-showcase-copy>p{font-size:12px;line-height:1.55}.login-showcase>.independent-note,.login-orbit{display:none}.login-panel{padding:34px 16px 48px}.login-form>h2{font-size:30px}.login-form>h2+p{margin-bottom:22px;font-size:13px}.level-picker>div{grid-template-columns:1fr 1fr}.level-picker button{min-height:61px}.login-privacy{align-items:flex-start;text-align:center}.page{padding:28px 15px 45px}.page-header{display:grid;margin-bottom:24px}.page-header h1{font-size:36px}.page-header p{font-size:14px}.page-header .button{justify-self:start}.card{border-radius:17px}.button{min-height:43px}.section-heading{display:grid;margin-top:42px}.section-heading h2{font-size:24px}.onboarding-visual{min-height:230px;padding:24px}.onboarding-brand{font-size:14px}.visual-copy{margin-top:30px}.visual-copy h1{font-size:37px;margin-bottom:10px}.visual-copy p{font-size:13px}.onboarding-visual .independent-note{display:none}.onboarding-panel{padding:30px 18px}.step-dots{margin-bottom:28px}.onboarding-step h2{font-size:30px}.subject-picks{grid-template-columns:1fr;gap:16px}.mini-options{display:grid}.diagnostic-list fieldset{padding:12px 9px}.onboarding-actions .button{padding:0 13px}.hero-card{min-height:465px;padding:29px 23px;border-radius:22px;align-items:start}.hero-copy{max-width:100%}.hero-copy h1{font-size:43px}.hero-copy p{font-size:14px}.hero-actions{display:grid}.hero-graphic{right:-42px;bottom:-103px;opacity:.35;transform:scale(.75)}.status-strip{width:calc(100% - 18px);grid-template-columns:1fr;margin-top:-13px}.status-strip>div{padding:13px 17px}.status-strip>div+div{border-left:0;border-top:1px solid var(--border)}.home-grid{gap:14px}.session-timeline{grid-template-columns:1fr 1fr}.progress-overview{margin-top:14px}.metric-grid{grid-template-columns:1fr 1fr;gap:20px}.dashboard-hero{grid-template-columns:auto 1fr;padding:20px}.week-ring{width:86px;height:86px}.week-ring:before{width:67px;height:67px}.week-ring strong{font-size:18px}.streak-box{grid-column:span 2}.dashboard-stats{gap:9px}.stat-card{padding:13px}.stat-card strong{font-size:18px}.stat-card .status-icon{display:none}.roadmap-year{grid-template-columns:35px 1fr}.roadmap-node>span{width:31px;height:31px}.roadmap-node>i{top:30px}.roadmap-card{margin-left:8px}.roadmap-toggle{grid-template-columns:1fr auto;min-height:80px;padding:14px}.year-number{display:none}.roadmap-details{grid-template-columns:1fr;padding:0 15px 18px}.roadmap-details>div,.roadmap-notes{grid-column:1}.roadmap-notes{grid-template-columns:1fr}.honesty-banner{grid-template-columns:auto 1fr}.honesty-banner>svg:last-child{display:none}.filter-bar{display:grid}.filter-tabs{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}.filter-tabs button{flex:0 0 auto}.search-field{width:100%}.lesson-grid,.project-template-grid,.saved-project-grid{grid-template-columns:1fr}.lesson-card{min-height:250px}.lesson-hero{grid-template-columns:1fr;padding:23px}.lesson-hero h1{font-size:38px}.lesson-objective{display:none}.lesson-content>section{grid-template-columns:1fr;padding:22px 18px}.section-number{font-size:16px}.lesson-sidebar{grid-template-columns:1fr}.exercise-filters{display:grid}.exercise-filters>span{margin:0}.exercise-filters select{width:100%}.review-switch{margin:5px 0}.exercise-card{min-height:0;padding:20px 16px}.exercise-progress{margin-left:-16px;margin-right:-16px}.exercise-top{align-items:flex-start}.exercise-top>div{flex-wrap:wrap;justify-content:flex-end}.exercise-card>h2{font-size:22px}.answer-options{grid-template-columns:1fr}.exercise-actions{flex-wrap:wrap}.exercise-actions .button{flex:1;padding:0 10px}.exercise-actions .button.primary{flex:1 0 100%;order:3;margin:0}.exercise-side{display:none}.form-row{grid-template-columns:1fr}.project-form-section{padding:20px 16px}.project-form .button{width:100%}.orientation-hero{min-height:460px;padding:28px 22px}.orientation-hero>div:first-child{max-width:100%}.orientation-hero h1{font-size:42px}.compass-graphic{opacity:.2}.principle-grid,.fact-grid,.career-grid,.recheck-card,.recheck-card ul{grid-template-columns:1fr}.other-routes{grid-template-columns:auto 1fr;padding:20px}.other-routes>svg:last-child{display:none}.sources-list>div:nth-child(2){grid-template-columns:1fr}.openai-link{grid-template-columns:auto 1fr}.openai-link>svg:last-child{display:none}.settings-group{padding:20px 16px}.theme-picker{grid-template-columns:1fr}.data-actions{display:grid}.data-actions .button{width:100%}.confirm-reset div div{display:grid}.admin-header .button{width:100%}.admin-live-bar{align-items:flex-start;flex-wrap:wrap}.admin-live-bar small{width:100%;margin-left:17px}.admin-kpis{grid-template-columns:1fr 1fr;gap:9px}.admin-kpis article{min-height:122px;padding:15px}.admin-kpis article>svg{top:13px;right:13px}.admin-kpis strong{font-size:21px}.admin-data-grid{grid-template-columns:1fr}.admin-data-card,.admin-table-card,.admin-list-card{padding:17px 14px}.admin-details{grid-template-columns:1fr}.admin-details>div:nth-child(odd),.admin-details>div:nth-child(2n),.admin-details .wide{grid-column:1;padding:10px 0;border-left:0}.admin-completion-list{grid-template-columns:1fr}}
