:root{color:#17211b;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#f6f7f4;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}.app-shell{grid-template-columns:264px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#f8faf8;background:#17211b;flex-direction:column;gap:28px;height:100vh;padding:24px;display:flex;position:sticky;top:0}.brand,.card__header,.row,.section__header,.topbar,.sidebar__footer,.card-actions{align-items:center;display:flex}.brand{gap:12px}.brand--button{color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;padding:0}.brand__mark{color:#17211b;background:#b9e769;border:1px solid #ffffff2e;border-radius:8px;place-items:center;width:42px;height:42px;font-weight:800;display:grid}.brand strong,.brand span,.sidebar__footer span{display:block}.brand span,.sidebar__footer span{color:#aeb9b0;font-size:13px}.sidebar__nav{gap:6px;display:grid}.sidebar__nav a{color:#dfe7df;border-radius:8px;padding:10px 12px;text-decoration:none}.sidebar__nav a:hover{background:#ffffff14}.sidebar__nav a.is-active{color:#0f2a1d;background:#eaf5df}.sidebar__footer{justify-content:space-between;gap:12px;margin-top:auto}.main{padding:32px}.topbar{justify-content:space-between;gap:20px;margin-bottom:28px}.topbar h1,.section h2{letter-spacing:0;margin:0}.topbar h1{font-size:32px;line-height:1.15}.eyebrow{color:#68746b;letter-spacing:0;text-transform:uppercase;margin:0 0 6px;font-size:12px;font-weight:800}.section{gap:16px;margin-top:28px;display:grid}.section__header{justify-content:space-between;gap:16px}.metric-grid,.policy-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.card{background:#fff;border:1px solid #dfe5dd;border-radius:8px;box-shadow:0 1px 2px #17211b0d}.card__header{justify-content:space-between;gap:12px;padding:18px 18px 0}.card__header svg{color:#3d6b52;flex:none}.card__title{letter-spacing:0;margin:0;font-size:17px;line-height:1.35}.card__content{gap:14px;padding:18px;display:grid}.card__content p{color:#566158;margin:0;line-height:1.65}.button{cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:38px;padding:0 14px;font-weight:700;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.button:disabled{cursor:not-allowed;opacity:.55}.button--default{color:#fff;background:#24543b}.button--default:hover:not(:disabled){background:#173c2a}.button--secondary{color:#17211b;background:#dfe8d4}.button--outline{color:#203228;background:#fff;border-color:#cad5cc}.button--ghost{color:inherit;background:0 0}.button--ghost:hover:not(:disabled){background:#17211b12}.button--danger{color:#fff;background:#9b1c1c}.button--sm{min-height:32px;padding:0 10px;font-size:13px}.button--icon{width:38px;padding:0}.badge{color:#465047;background:#f7f8f5;border:1px solid #d8dfd6;border-radius:999px;align-items:center;width:fit-content;min-height:24px;padding:0 9px;font-size:12px;font-weight:800;display:inline-flex}.badge--green{color:#255c32;background:#ecf8ed;border-color:#bddbbf}.badge--amber{color:#765a12;background:#fff8df;border-color:#ead79a}.badge--red{color:#8d1d1d;background:#fff1f1;border-color:#efb5b5}.badge--blue{color:#214a76;background:#edf5ff;border-color:#b9cee8}.landing-page,.auth-page{background:linear-gradient(#f6f7f4eb,#f6f7f4eb),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cg fill='none' stroke='%23dfe5dd' stroke-width='1'%3E%3Cpath d='M0 40h160M0 80h160M0 120h160M40 0v160M80 0v160M120 0v160'/%3E%3C/g%3E%3C/svg%3E");min-height:100vh}.landing-nav,.auth-nav{justify-content:space-between;align-items:center;gap:18px;width:min(1180px,100% - 40px);margin:0 auto;padding:20px 0;display:flex}.landing-nav__actions,.landing-actions{flex-wrap:wrap;gap:10px;display:flex}.landing-hero{color:#fff;background-color:#0000;background-image:linear-gradient(90deg,#17211be6,#17211b 58%,#17211b),url(https://images.unsplash.com/photo-1522202176988-66273c2fd55f?auto=format&fit=crop&w=1600&q=80);background-position:50%;background-repeat:repeat,repeat;background-size:cover;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;border-radius:8px;grid-template-columns:minmax(0,1fr) 360px;align-items:end;gap:28px;width:min(1180px,100% - 40px);min-height:640px;margin:0 auto;padding:84px 0 48px;display:grid;overflow:hidden}.landing-hero__copy{gap:18px;max-width:700px;padding-left:clamp(24px,5vw,64px);display:grid}.landing-hero h1{letter-spacing:0;margin:0;font-size:clamp(42px,6vw,76px);line-height:1.02}.landing-hero p{color:#eef5ed;max-width:640px;margin:0;font-size:17px;line-height:1.8}.landing-hero__panel{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1f;border:1px solid #ffffff2e;border-radius:8px;gap:12px;margin-right:clamp(20px,4vw,48px);padding:18px;display:grid}.landing-hero__panel div{gap:4px;display:grid}.landing-hero__panel span{color:#cfe3cf;font-size:12px;font-weight:800}.landing-hero__panel strong{font-size:15px;line-height:1.5}.landing-section{gap:24px;width:min(1180px,100% - 40px);margin:0 auto;padding:58px 0;display:grid}.landing-section--band{background:#edf3eb;width:100%;padding:58px max(20px,50% - 590px)}.landing-section__header{gap:8px;display:grid}.landing-section h2{letter-spacing:0;margin:0;font-size:34px;line-height:1.2}.landing-feature-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.landing-feature{background:#fff;border:1px solid #dfe5dd;border-radius:8px;gap:12px;padding:20px;display:grid}.landing-feature svg{color:#24543b}.landing-feature strong{font-size:18px}.landing-feature p{color:#566158;margin:0;line-height:1.65}.landing-process{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.landing-process div{background:#fff;border-radius:8px;gap:12px;padding:18px;display:grid}.landing-process span{color:#fff;background:#24543b;border-radius:999px;place-items:center;width:34px;height:34px;font-weight:900;display:grid}.auth-page{align-content:start;padding:0 0 40px;display:grid}.auth-layout{grid-template-columns:minmax(300px,.9fr) minmax(320px,440px);align-items:center;gap:28px;width:min(1000px,100% - 40px);margin:56px auto 0;display:grid}.auth-copy{gap:14px;display:grid}.auth-copy h1{letter-spacing:0;margin:0;font-size:clamp(36px,5vw,58px);line-height:1.08}.auth-copy p{color:#566158;margin:0;line-height:1.75}.auth-hero{color:#fff;background-color:#0000;background-image:linear-gradient(135deg,#17211beb,#20543bd6),url(https://images.unsplash.com/photo-1522202176988-66273c2fd55f?auto=format&fit=crop&w=1400&q=80);background-position:50%;background-repeat:repeat,repeat;background-size:cover;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;border-radius:8px;align-self:stretch;align-items:center;min-height:560px;padding:42px;display:grid}.auth-hero__copy{gap:18px;max-width:620px;display:grid}.auth-hero h1{letter-spacing:0;margin:0;font-size:clamp(36px,5vw,64px);line-height:1.05}.auth-hero p{color:#dfe8df;max-width:560px;margin:0;line-height:1.75}.brand--auth{margin-bottom:20px}.hero-points{flex-wrap:wrap;gap:10px;display:flex}.hero-points span{background:#ffffff17;border:1px solid #ffffff2e;border-radius:8px;align-items:center;gap:8px;padding:8px 10px;font-weight:800;display:inline-flex}.auth-card{width:min(100%,440px)}.auth-icon{background:#eaf5df;border-radius:8px;place-items:center;width:44px;height:44px;display:grid}.stack,.field,.status-layout,.opportunity-list,.track-list,.session-list{gap:14px;display:grid}.field{gap:7px}.label{color:#313b34;font-size:13px;font-weight:800}.input,.field select,.textarea{color:#17211b;background:#fff;border:1px solid #cbd6cf;border-radius:8px;width:100%}.input,.field select{height:40px;padding:0 11px}.textarea{resize:vertical;padding:10px 11px}.input:focus,.field select:focus,.textarea:focus{border-color:#3d6b52;outline:3px solid #3d6b5224}.field__hint,.muted{color:#738078;font-size:13px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.form-grid__wide{grid-column:1/-1}.segmented{background:#f2f5ef;border:1px solid #cbd6cf;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;display:grid}.segmented button{cursor:pointer;background:0 0;border:0;border-radius:6px;height:32px}.segmented button.is-active{color:#fff;background:#24543b}.check-row{color:#3f4a42;align-items:flex-start;gap:10px;line-height:1.5;display:flex}.check-row input{margin-top:4px}.check-row--chip{background:#fff;border:1px solid #dbe3d9;border-radius:8px;align-items:center;min-height:38px;padding:8px 10px}.check-row--chip input{margin-top:0}.checkbox-group,.privacy-panel,.terms-checks,.attachment-list{gap:10px;display:grid}.checkbox-group>strong,.privacy-panel>strong{color:#313b34;font-size:13px}.learning-check-list{flex-wrap:nowrap;gap:14px;padding-bottom:2px;display:flex;overflow-x:auto}.learning-check-list .check-row{white-space:nowrap;flex:none;align-items:center}.learning-check-list .check-row input{margin-top:0}.checkbox-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.privacy-panel{background:#f8faf6;border:1px solid #dfe5dd;border-radius:8px;padding:14px}.privacy-panel p{color:#566158;margin:0;line-height:1.65}.policy-list{color:#566158;gap:8px;margin:0;padding-left:18px;font-size:13px;line-height:1.65;display:grid}.terms-document{background:#fbfcf8;border:1px solid #dfe5dd;border-radius:8px;max-height:520px;padding:18px;overflow:auto}.terms-document h2,.terms-document h3,.terms-document p,.terms-document ol,.terms-document ul{margin:0}.terms-document{color:#3f4a42;gap:14px;font-size:13px;line-height:1.75;display:grid}.terms-document h2{color:#253329;font-size:18px;line-height:1.4}.terms-document h3{color:#253329;margin-top:8px;font-size:15px;line-height:1.45}.terms-document h4{color:#253329;margin-top:6px;font-size:14px;line-height:1.45}.terms-document ol,.terms-document ul{gap:6px;padding-left:20px;display:grid}.terms-document li>ol{margin-top:6px}.terms-definition-list{gap:8px;display:grid}.terms-definition-list__item{background:#fff;border:1px solid #dfe5dd;border-radius:8px;grid-template-columns:minmax(120px,180px) minmax(0,1fr);gap:10px;padding:10px 12px;display:grid}.terms-definition-list__item strong{color:#253329}.terms-definition-list__item p{overflow-wrap:anywhere}.terms-document table{table-layout:fixed;border-collapse:collapse;background:#fff;border:1px solid #dfe5dd;border-radius:8px;width:100%;overflow:hidden}.terms-document th,.terms-document td{text-align:left;vertical-align:top;overflow-wrap:anywhere;border-bottom:1px solid #e8ede5;padding:8px 10px}.terms-document th{color:#253329;background:#eef4ec;font-weight:700}.terms-checks__header{gap:4px;margin-bottom:2px;display:grid}.terms-checks__header p{color:#566158;margin:0;font-size:13px;line-height:1.6}.file-drop{color:#4d5b51;cursor:pointer;background:#fbfcfa;border:1px dashed #aebbac;border-radius:8px;align-items:center;gap:10px;min-height:54px;padding:12px;display:flex;position:relative}.file-drop input{cursor:pointer;opacity:0;position:absolute;inset:0}.attachment-list{grid-template-columns:repeat(2,minmax(0,1fr))}.attachment-list span{color:#3f4a42;overflow-wrap:anywhere;background:#eef4ea;border-radius:8px;padding:8px 10px;font-size:13px}.stepper{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:18px;display:grid}.stepper--compact{margin-top:12px;margin-bottom:0}.stepper__item{color:#768178;background:#fff;border:1px solid #dfe5dd;border-radius:8px;align-items:center;gap:8px;min-width:0;padding:10px;display:flex}.stepper--compact .stepper__item{color:#dfe8df;background:#ffffff17;border-color:#ffffff2e}.stepper__item span{color:#3e4a42;background:#e6ece4;border-radius:999px;flex:none;place-items:center;width:26px;height:26px;font-weight:900;display:grid}.stepper__item strong{overflow-wrap:anywhere;min-width:0;font-size:13px}.stepper__item.is-current{color:#17211b;background:#f3f9ed;border-color:#8cba62}.stepper__item.is-done span,.stepper__item.is-current span{color:#fff;background:#24543b}.form-error,.notice--red{color:#8d1d1d}.notice--amber{color:#8a5200}.notice--green{color:#24543b}.form-hint{color:#42513f;background:#f8fbf3;border:1px solid #d9e4c8;border-radius:8px;gap:8px;padding:12px;font-size:13px;line-height:1.55;display:grid}.form-hint strong{color:#253329}.form-hint ul{gap:4px;margin:0;padding-left:18px;display:grid}.profile-summary,.detail-grid{grid-template-columns:92px minmax(0,1fr);gap:8px 12px;display:grid}.profile-summary span,.detail-grid span{color:#718076;font-size:13px}.profile-summary strong,.detail-grid strong{overflow-wrap:anywhere;min-width:0;font-size:14px}.policy-box{background:#f8faf6;border:1px solid #dfe5dd;border-radius:8px;gap:10px;padding:14px;display:grid}.dashboard-switcher,.tabs{flex-wrap:wrap;gap:8px;display:flex}.section__lead{color:#5f6b62;max-width:720px;margin:6px 0 0;line-height:1.65}.dashboard-context,.workspace-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.dashboard-context{background:#fff;border:1px solid #dfe5dd;border-radius:8px;padding:12px}.dashboard-context div,.workspace-summary div{gap:4px;min-width:0;display:grid}.dashboard-context span,.workspace-summary span{color:#718076;font-size:12px;font-weight:800}.dashboard-context strong,.workspace-summary strong{overflow-wrap:anywhere;min-width:0}.workspace-summary div{background:#fff;border:1px solid #dfe5dd;border-radius:8px;padding:14px}.workspace-summary strong{font-size:22px;line-height:1.15}.request-workspace,.course-workspace,.course-main,.lesson-workspace,.contract-workspace,.profile-workspace,.workspace-shell{gap:14px;display:grid}.workspace-shell--lesson{padding-top:18px}.contract-steps{gap:10px;display:grid}.contract-step{background:#fff;border:1px solid #dfe5dd;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;padding:14px;display:grid}.contract-step>span{color:#66736a;background:#f2f6ef;border-radius:999px;place-items:center;width:30px;height:30px;display:grid}.contract-step strong{color:#17211b;display:block}.contract-step p{color:#66736a;margin:4px 0 0;line-height:1.6}.contract-step.is-done{background:#f7fbf4;border-color:#b8dca0}.contract-step.is-done>span{color:#24543b;background:#eaf5df}.contract-step.is-current{background:#fffaf0;border-color:#fedf89}.contract-step.is-current>span{color:#b54708;background:#fef0c7}.request-layout,.course-layout{grid-template-columns:minmax(300px,.36fr) minmax(0,.64fr);align-items:start;gap:14px;display:grid}.request-list-card,.course-list-card,.lesson-list-card{position:sticky;top:24px}.request-list,.course-list,.lesson-list{gap:8px;display:grid}.request-list__item,.course-list__item,.lesson-list__item{color:#243028;cursor:pointer;text-align:left;background:#fff;border:1px solid #dfe5dd;border-radius:8px;gap:8px;width:100%;padding:12px;transition:background .12s,border-color .12s,box-shadow .12s;display:grid}.lesson-list--preview .lesson-list__item{cursor:default}.request-list__item:hover,.course-list__item:hover,.lesson-list__item:hover,.request-list__item.is-selected,.course-list__item.is-selected,.lesson-list__item.is-selected{background:#f5faf2;border-color:#8eb98b;box-shadow:0 1px #24543b1f}.request-list__item strong,.course-list__item strong,.lesson-list__item strong{font-size:14px;line-height:1.45}.request-list__item span,.course-list__item em,.lesson-list__item small{color:#66736a;font-size:12px;font-style:normal;line-height:1.45}.request-list__status,.course-list__item>span{justify-content:space-between;align-items:center;gap:8px;display:flex}.request-detail-card .card__title{margin-top:8px;font-size:22px}.course-overview{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.course-overview div,.student-info-grid>div{background:#fbfcfa;border:1px solid #dfe5dd;border-radius:8px;gap:6px;padding:12px;display:grid}.course-overview span{color:#718076;font-size:12px;font-weight:800}.course-overview strong,.student-info-grid strong{overflow-wrap:anywhere;min-width:0}.student-info-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.student-info-grid p{margin:0}.course-lesson-preview{gap:12px;display:grid}.lesson-pair-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.lesson-summary-card{min-height:142px;color:inherit;text-align:left;background:#fbfcfa;border:1px solid #dfe5dd;border-radius:8px;gap:8px;padding:12px;display:grid}button.lesson-summary-card{cursor:pointer}button.lesson-summary-card:hover{background:#f5faf2;border-color:#8eb98b;box-shadow:0 8px 24px #24543b1a}.lesson-summary-card.has-alert{background:#fff7f6;border-color:#f4a7a2}.lesson-summary-card--empty{color:#66736a;background:#f8faf7}.lesson-summary-card__head,.lesson-summary-card__badges{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.lesson-summary-card__head>span{color:#66736a;text-transform:uppercase;font-size:12px;font-weight:900}.lesson-summary-card strong{color:#17211b;font-size:16px;line-height:1.45}.lesson-summary-card small{color:#66736a;line-height:1.5}.lesson-course-header{background:#fff;border:1px solid #dfe5dd;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:16px;padding:16px 18px;display:flex}.lesson-course-header h2{margin:0;font-size:24px}.lesson-course-header p:not(.eyebrow){color:#66736a;margin:6px 0 0}.lesson-list__item{grid-template-columns:auto minmax(0,1fr);align-items:center}.lesson-list__item span{color:#24543b;background:#eaf5df;border-radius:8px;place-items:center;width:48px;height:34px;font-size:12px;font-weight:900;display:grid}.lesson-list__item strong,.lesson-list__item small,.lesson-list__badges{grid-column:2}.lesson-list__badges{flex-wrap:wrap;gap:6px;display:flex}.lesson-list__item.has-alert{background:#fff7f6;border-color:#f4a7a2}.lesson-list__item.has-alert span{color:#b42318;background:#fee4e2}.card-lead{color:#66736a;margin:4px 0 0;font-size:12px;line-height:1.5}.row{flex-wrap:wrap;gap:8px}.card-actions{flex-wrap:wrap;gap:10px}.lesson-layout{grid-template-columns:minmax(280px,360px) minmax(0,1fr);align-items:start;gap:14px;min-height:calc(100vh - 240px);display:grid}.lesson-layout--single{grid-template-columns:1fr}.lesson-list-card .card__content{gap:12px;max-height:calc(100vh - 260px);display:grid;overflow:auto}.bulk-schedule-tool{background:#fbfcfa;border:1px solid #dfe5dd;border-radius:8px;gap:12px;padding:14px;display:grid}.bulk-schedule-tool__header,.bulk-schedule-footer{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.bulk-schedule-tool__header p,.bulk-schedule-footer span{color:#66736a;margin:3px 0 0;font-size:12px;line-height:1.5}.bulk-schedule-footer .bulk-error{color:#9f1f1f;font-weight:800}.bulk-schedule-controls{grid-template-columns:minmax(120px,.35fr) minmax(180px,.65fr);align-items:start;gap:10px;display:grid}.bulk-schedule-slots{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.bulk-schedule-slot{grid-template-columns:minmax(90px,.9fr) minmax(110px,1fr);align-items:end;gap:8px;display:grid}.lesson-detail{max-height:calc(100vh - 48px);position:sticky;top:24px;overflow:auto}.reflection-grid{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}.reflection-date-row{grid-template-columns:minmax(0,1fr) minmax(0,1.45fr);align-items:end;gap:12px;display:grid}.field-action-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.field-stack{gap:8px;display:grid}.field-stack .button{justify-self:start}.save-footer{justify-items:start;gap:8px;display:grid}.required-note,.autosave-note{color:#68766e;margin:0;font-size:13px;line-height:1.6}.required-note{color:#9f1f1f;font-weight:800}.required-note--ok{color:#1b6f43}.empty-state .card__content{text-align:center;place-items:center;padding:42px 18px}.empty-state h3{margin:0}.inline-loading{color:#59645c;align-items:center;gap:8px;font-weight:700;display:inline-flex}.inline-loading svg{animation:.9s linear infinite spin}.dev-actions{justify-content:flex-end;display:flex}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=920px){.landing-hero,.auth-layout,.landing-feature-grid,.landing-process{grid-template-columns:1fr}.landing-hero{min-height:auto;padding:56px 20px 24px}.landing-hero__copy{padding-left:0}.landing-hero__panel{margin:0}.app-shell{grid-template-columns:1fr}.sidebar{height:auto;position:static}.sidebar__nav{grid-template-columns:repeat(3,minmax(0,1fr))}.metric-grid,.policy-grid,.lesson-layout,.request-layout,.course-layout,.lesson-board,.course-overview,.student-info-grid,.bulk-schedule-controls,.bulk-schedule-slots,.bulk-schedule-slot{grid-template-columns:1fr}.request-list-card,.course-list-card{position:static}}@media (width<=640px){.landing-nav,.auth-nav{flex-direction:column;align-items:flex-start}.landing-nav__actions,.landing-actions{width:100%}.landing-nav__actions .button,.landing-actions .button{flex:1}.main{padding:20px}.topbar,.section__header{flex-direction:column;align-items:flex-start}.topbar h1{font-size:25px}.form-grid,.checkbox-grid,.terms-definition-list__item,.stepper,.attachment-list,.field-action-row,.reflection-date-row,.reflection-grid,.dashboard-context,.workspace-summary,.sidebar__nav{grid-template-columns:1fr}.tabs{width:100%}.dashboard-switcher .button,.tabs .button{flex:1}}
