:root{color:#14231e;font-synthesis:none;text-rendering:optimizelegibility;--ink:#14231e;--muted:#65746e;--green:#0b6b4f;--green-dark:#064633;--mint:#dff4ea;--lime:#c8ef69;--line:#dce5e1;--paper:#fff;--danger:#b83d46;--shadow:0 24px 65px #0c3a2c1a;background:#f2f6f4;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:radial-gradient(circle at 90% 0,#c8ef692e,#0000 25rem),#f2f6f4;min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.6}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #0b6b4f3b}img{max-width:100%}h1,h2,h3,p{text-wrap:pretty}.brand-mark{color:#fff;background:var(--green-dark);letter-spacing:-.05em;border-radius:15px;place-items:center;width:50px;height:50px;font-weight:900;display:grid;box-shadow:0 10px 24px #0646332e}.brand-mark.light{color:var(--green-dark);background:var(--lime)}.brand-mark.small{border-radius:12px;width:40px;height:40px;font-size:.85rem}.eyebrow,.kicker{color:var(--lime);letter-spacing:.13em;text-transform:uppercase;margin:0 0 12px;font-size:.73rem;font-weight:850}.eyebrow.dark,.kicker{color:var(--green)}.muted{color:var(--muted)}.small-copy{color:var(--muted);font-size:.8rem}.button{border:1px solid #0000;border-radius:11px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 16px;font-weight:780;transition:transform .16s,box-shadow .16s,background .16s;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-1px)}.button.primary{color:#17392f;background:var(--lime);box-shadow:0 10px 24px #7fa72629}.button.secondary{color:var(--green-dark);border-color:var(--line);background:#fff}.button.danger-outline{color:var(--danger);background:#fff7f7;border-color:#e7b9bd}.button.danger-outline:hover:not(:disabled){background:#fff0f1;border-color:#d98f95;box-shadow:0 8px 18px #b83d4614}.button.wide{width:100%}.text-button{color:var(--green);background:0 0;border:0;margin-top:17px;padding:0;font-weight:750}.text-button.subtle{color:#87938e;font-size:.76rem;display:block}.icon-button{border:1px solid var(--line);width:42px;height:42px;color:var(--muted);background:#fff;border-radius:12px;place-items:center;display:grid}.landing-page{background:#f4f7f5;min-height:100vh;overflow:hidden}.landing-header{z-index:20;color:#fff;grid-template-columns:1fr auto 1fr;align-items:center;gap:26px;min-height:82px;padding:14px max(24px,50vw - 640px);display:grid;position:absolute;top:0;left:0;right:0}.landing-header .app-brand{color:#fff;text-decoration:none}.landing-header .app-brand small{color:#ffffffa1}.landing-header .brand-mark{color:var(--green-dark);background:var(--lime);box-shadow:none}.landing-header>.button{justify-self:end;min-height:42px;text-decoration:none}.landing-nav{align-items:center;gap:28px;display:flex}.landing-nav a{color:#ffffffb8;font-size:.78rem;font-weight:760;text-decoration:none}.landing-nav a:hover{color:#fff}.landing-hero{color:#fff;background:radial-gradient(circle at 12% 90%,#c8ef6924,#0000 26rem),linear-gradient(125deg,#052e23 0%,#064633 56%,#0b5b45 100%);grid-template-columns:minmax(0,1.03fr) minmax(430px,.97fr);align-items:center;gap:clamp(32px,5vw,78px);min-height:780px;padding:142px max(24px,50vw - 640px) 92px;display:grid}.landing-hero-copy{z-index:2;position:relative}.landing-hero h1{letter-spacing:-.073em;max-width:760px;margin:0;font-size:clamp(3.7rem,7vw,6.6rem);line-height:.88}.landing-lead{color:#ffffffb3;max-width:680px;margin:28px 0 0;font-size:clamp(1rem,1.5vw,1.18rem);line-height:1.7}.landing-actions{flex-wrap:wrap;gap:11px;margin-top:32px;display:flex}.landing-cta{min-height:52px;padding:0 21px}.landing-ghost{color:#fff;background:#ffffff12;border-color:#ffffff38;min-height:52px;text-decoration:none}.landing-ghost:hover{background:#ffffff1f}.landing-stats{background:#ffffff1c;border:1px solid #ffffff21;border-radius:17px;grid-template-columns:repeat(3,1fr);gap:1px;max-width:650px;margin-top:54px;display:grid;overflow:hidden}.landing-stats>div{background:#04281e7a;padding:17px 18px}.landing-stats strong,.landing-stats span{display:block}.landing-stats strong{color:var(--lime);letter-spacing:-.04em;font-size:1.55rem}.landing-stats span{color:#ffffff94;margin-top:3px;font-size:.7rem}.landing-visual{min-height:570px;position:relative}.landing-visual:before{content:"";border:65px solid #c8ef6917;border-radius:50%;width:340px;height:340px;position:absolute;top:-70px;right:-90px}.landing-visual>img{object-fit:cover;object-position:64% center;border-radius:32px;width:100%;height:100%;position:absolute;inset:0;box-shadow:0 35px 80px #00000045}.landing-progress-card{z-index:2;color:var(--ink);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffeb;border:1px solid #ffffffb3;border-radius:18px;padding:23px;position:absolute;bottom:34px;left:-52px;right:44px;box-shadow:0 22px 50px #03251b33}.landing-card-label{color:var(--green);letter-spacing:.1em;text-transform:uppercase;font-size:.65rem;font-weight:850;display:block}.landing-progress-card>strong{letter-spacing:-.035em;margin-top:6px;font-size:1.3rem;display:block}.landing-progress-row,.landing-progress-foot{justify-content:space-between;align-items:center;gap:16px;display:flex}.landing-progress-row{color:var(--muted);margin-top:19px;font-size:.76rem}.landing-progress-row b{color:var(--green-dark)}.landing-progress-bar{background:#dce7e2;border-radius:99px;height:8px;margin-top:8px;overflow:hidden}.landing-progress-bar i{border-radius:inherit;background:linear-gradient(90deg,var(--green),#4fa77e);width:100%;height:100%;display:block}.landing-progress-foot{color:var(--muted);margin-top:11px;font-size:.67rem}.landing-progress-foot span:first-child{color:var(--green);align-items:center;gap:5px;font-weight:760;display:flex}.landing-section,.landing-modules,.landing-final{padding:clamp(78px,9vw,126px) max(24px,50vw - 640px)}.landing-section-head{grid-template-columns:minmax(0,1.1fr) minmax(260px,.6fr);align-items:end;gap:50px;margin-bottom:42px;display:grid}.landing-section-head h2,.landing-final h2{letter-spacing:-.062em;max-width:780px;margin:0;font-size:clamp(2.7rem,5vw,4.7rem);line-height:.95}.landing-section-head>p{color:var(--muted);margin:0;line-height:1.7}.landing-feature-grid{grid-template-columns:repeat(3,1fr);gap:15px;display:grid}.landing-feature-grid article{border:1px solid var(--line);background:#fff;border-radius:21px;min-height:285px;padding:28px;box-shadow:0 13px 36px #0c3a2c0e}.landing-icon{width:48px;height:48px;color:var(--green);background:var(--mint);border-radius:14px;place-items:center;display:grid}.landing-feature-grid h3{letter-spacing:-.035em;margin:43px 0 10px;font-size:1.35rem}.landing-feature-grid p{color:var(--muted);margin:0;font-size:.87rem;line-height:1.7}.landing-modules{color:#fff;background:#072f25}.light-heading .eyebrow{color:var(--lime)}.light-heading>p{color:#fff9}.landing-module-grid{grid-template-columns:1.35fr repeat(2,1fr);gap:14px;display:grid}.landing-module-grid article{background:#184a3d;border-radius:19px;min-height:275px;position:relative;overflow:hidden}.landing-module-grid article.featured{grid-row:span 2;min-height:565px}.landing-module-grid img{object-fit:cover;width:100%;height:100%;transition:transform .35s;position:absolute;inset:0}.landing-module-grid article:hover img{transform:scale(1.035)}.landing-module-grid article:after{content:"";background:linear-gradient(#0000 20%,#031c15ed);position:absolute;inset:0}.landing-module-grid article>div{z-index:2;padding:24px;position:absolute;bottom:0;left:0;right:0}.landing-module-grid article span{color:var(--lime);letter-spacing:.1em;text-transform:uppercase;font-size:.65rem;font-weight:850}.landing-module-grid h3{letter-spacing:-.035em;margin:7px 0 5px;font-size:1.35rem}.landing-module-grid p{color:#ffffffa1;margin:0;font-size:.78rem;line-height:1.55}.landing-project{background:#edf5f1;grid-template-columns:minmax(0,1.1fr) minmax(360px,.65fr);align-items:center;gap:clamp(45px,8vw,110px);display:grid}.landing-project-copy h2{letter-spacing:-.062em;max-width:760px;margin:0;font-size:clamp(2.7rem,5vw,4.7rem);line-height:.95}.landing-project-lead{max-width:760px;color:var(--muted);margin:25px 0 0;font-size:1rem;line-height:1.8}.landing-project-points{gap:13px;margin-top:32px;display:grid}.landing-project-points>div{grid-template-columns:30px 1fr;align-items:start;gap:11px;display:grid}.landing-project-points>div>span{width:28px;height:28px;color:var(--green);background:#fff;border-radius:9px;place-items:center;display:grid;box-shadow:0 7px 18px #0c3a2c12}.landing-project-points p{color:var(--muted);margin:2px 0 0;font-size:.86rem;line-height:1.65}.landing-project-points strong{color:var(--green-dark)}.landing-project-card{color:#fff;min-height:440px;box-shadow:var(--shadow);background:linear-gradient(145deg,#064633,#0b6b4f);border-radius:27px;flex-direction:column;justify-content:space-between;padding:clamp(30px,4vw,48px);display:flex;position:relative;overflow:hidden}.landing-project-card:after{content:"“";color:#c8ef691f;font-family:Georgia,serif;font-size:14rem;line-height:1;position:absolute;top:-34px;right:24px}.landing-project-card>span{z-index:1;color:var(--lime);letter-spacing:.11em;text-transform:uppercase;font-size:.68rem;font-weight:850;position:relative}.landing-project-card blockquote{z-index:1;letter-spacing:-.045em;margin:40px 0;font-size:clamp(1.55rem,3vw,2.3rem);font-weight:750;line-height:1.22;position:relative}.landing-project-card strong,.landing-project-card small{display:block}.landing-project-card small{color:#ffffff94;margin-top:5px;font-size:.72rem}.landing-roles{background:#fff}.landing-role-grid{border:1px solid var(--line);background:#f8faf9;border-radius:22px;grid-template-columns:repeat(3,1fr);display:grid}.landing-role-grid article{min-height:270px;padding:32px}.landing-role-grid article+article{border-left:1px solid var(--line)}.landing-role-grid article>span{color:var(--green);letter-spacing:.1em;font-size:.7rem;font-weight:850}.landing-role-grid h3{letter-spacing:-.035em;margin:80px 0 10px;font-size:1.45rem}.landing-role-grid p{color:var(--muted);margin:0;font-size:.85rem;line-height:1.7}.landing-final{color:#fff;box-shadow:var(--shadow);background:linear-gradient(125deg,#064633,#0b6b4f);border-radius:28px;justify-content:space-between;align-items:center;gap:50px;margin:26px max(24px,50vw - 640px) 80px;padding:clamp(40px,6vw,72px);display:flex}.landing-final>div:first-child>p:last-of-type{color:#ffffffa6;max-width:670px;margin:19px 0 0;line-height:1.7}.landing-email{color:var(--lime);margin-top:18px;font-weight:780;text-decoration:none;display:inline-block}.landing-email:hover{text-decoration:underline}.landing-contact-actions{gap:9px;min-width:245px;display:grid}.landing-contact-actions .button{width:100%;text-decoration:none}.landing-copy-button{color:#fff;background:#ffffff14;border-color:#ffffff38}.landing-copy-button:hover{background:#ffffff21}.landing-copy-status{color:#ffffff9e;text-align:center;min-height:16px;font-size:.65rem}.auth-back{color:var(--muted);background:0 0;border:0;align-items:center;gap:6px;margin:0 0 34px;padding:0;font-size:.76rem;font-weight:760;display:inline-flex}.auth-back:hover{color:var(--green)}.center-screen{place-items:center;min-height:100vh;padding:24px;display:grid}.loader-brand{align-items:center;gap:13px;display:flex}.loader-brand>span{color:#fff;background:var(--green-dark);border-radius:14px;place-items:center;width:48px;height:48px;font-weight:900;display:grid}.loader-brand strong,.loader-brand small{display:block}.loader-brand small{color:var(--muted);margin-top:2px}.loader-line{background:#dfe8e4;border-radius:99px;width:210px;height:4px;margin:22px auto 0;overflow:hidden}.loader-line i{border-radius:inherit;background:var(--green);width:45%;height:100%;animation:1.1s ease-in-out infinite alternate load;display:block}@keyframes load{to{transform:translate(125%)}}.setup-card{border:1px solid var(--line);width:min(100%,620px);box-shadow:var(--shadow);background:#fff;border-radius:28px;padding:clamp(28px,6vw,54px)}.setup-card.narrow{max-width:500px}.setup-card h1{letter-spacing:-.055em;margin:22px 0 12px;font-size:clamp(2rem,5vw,3.3rem);line-height:1}.setup-card>p{color:var(--muted)}.code-box{color:#dff4ea;background:#0d2d23;border-radius:13px;margin:24px 0;padding:18px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem;line-height:1.8}.auth-layout{grid-template-columns:minmax(0,1.15fr) minmax(430px,.85fr);min-height:100vh;display:grid}.auth-visual{color:#fff;background:linear-gradient(135deg,#043527f7,#054633d1),url(/assets/ladungssicherung.webp) 50%/cover;flex-direction:column;justify-content:space-between;min-height:100vh;padding:clamp(28px,5vw,70px);display:flex;position:relative;overflow:hidden}.auth-visual:after{content:"";border:100px solid #c8ef691a;border-radius:50%;width:500px;height:500px;position:absolute;top:-180px;right:-210px}.auth-brand{z-index:1;align-items:center;gap:13px;font-size:1.05rem;display:flex;position:relative}.auth-message{z-index:1;max-width:770px;position:relative}.auth-message h1{letter-spacing:-.075em;max-width:700px;margin:0;font-size:clamp(3.3rem,7vw,7rem);line-height:.91}.auth-message>p:last-child{color:#ffffffb3;max-width:560px;margin:26px 0 0;font-size:1.08rem}.auth-facts{z-index:1;flex-wrap:wrap;gap:8px;display:flex;position:relative}.auth-facts span{color:#ffffffbd;background:#ffffff12;border:1px solid #ffffff21;border-radius:9px;padding:8px 11px;font-size:.78rem;font-weight:700}.auth-panel{background:#fff;place-items:center;padding:32px 32px 84px;display:grid;position:relative}.auth-form-wrap{width:min(100%,440px)}.auth-form-wrap h2{letter-spacing:-.05em;margin:0;font-size:2.4rem}.auth-form-wrap>.muted{margin:10px 0 26px}.form-stack{gap:16px;margin-top:20px;display:grid}label{color:#3b4b45;font-size:.78rem;font-weight:760}input,select,textarea{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:11px}input,select{height:48px;padding:0 13px}textarea{resize:vertical;min-height:150px;padding:13px}label input,label select,label textarea{margin-top:7px;display:block}.notice{border-radius:11px;margin:16px 0;padding:12px 14px;font-size:.82rem;font-weight:680}.notice.error{color:#8d2931;background:#fff3f4;border:1px solid #edc8cb}.notice.success{color:#1f684d;background:#effaf5;border:1px solid #b9dfce}.legal-footer{width:min(1280px,100% - 38px);color:var(--muted);border-top:1px solid #214b3d1c;justify-content:space-between;align-items:center;gap:18px;margin:0 auto;padding:22px 0 30px;font-size:.72rem;display:flex}.legal-footer nav{flex-wrap:wrap;gap:15px;display:flex}.legal-footer a{color:var(--green);font-weight:740;text-decoration:none}.legal-footer a:hover{text-decoration:underline}.legal-footer.auth{width:auto;margin:0;padding:15px 0 0;position:absolute;bottom:18px;left:32px;right:32px}.legal-footer.auth>span{display:none}.legal-shell{background:radial-gradient(circle at 90% 0,#c8ef6933,#0000 25rem),#f2f6f4;min-height:100vh}.legal-header{background:#ffffffed;border-bottom:1px solid #214b3d1a;justify-content:space-between;align-items:center;gap:20px;min-height:76px;padding:12px max(22px,50vw - 550px);display:flex}.legal-document{width:min(100% - 32px,900px);margin:0 auto;padding:64px 0 70px}.legal-title{color:#fff;box-shadow:var(--shadow);background:linear-gradient(125deg,#064633,#17604c);border-radius:25px;margin-bottom:28px;padding:clamp(28px,5vw,48px)}.legal-title .eyebrow{color:var(--lime)}.legal-title h1{letter-spacing:-.06em;margin:0;font-size:clamp(2.7rem,7vw,5rem);line-height:.96}.legal-title>p:last-child{color:#ffffffb8;max-width:650px;margin:18px 0 0;line-height:1.65}.legal-sections{gap:13px;display:grid}.legal-sections section{border:1px solid var(--line);background:#fff;border-radius:17px;padding:clamp(22px,4vw,32px);box-shadow:0 10px 28px #133d2f0a}.legal-sections h2{color:var(--green-dark);letter-spacing:-.025em;margin:0 0 13px;font-size:1.24rem}.legal-sections p,.legal-sections address{color:#485a53;margin:0;font-size:.91rem;font-style:normal;line-height:1.75}.legal-sections p+p{margin-top:12px}.legal-sections a{color:var(--green);overflow-wrap:anywhere}.legal-version{background:var(--mint);border-radius:8px;width:-moz-fit-content;width:fit-content;padding:7px 10px;font-weight:760;color:var(--green-dark)!important;font-size:.72rem!important}.app-shell{min-height:100vh}.app-header{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffe6;border-bottom:1px solid #214b3d17;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;min-height:76px;padding:12px max(22px,50vw - 640px);display:grid;position:sticky;top:0}.app-brand{width:-moz-fit-content;width:fit-content;color:var(--ink);text-align:left;background:0 0;border:0;align-items:center;gap:11px;padding:0;display:flex}.app-brand strong,.app-brand small{display:block}.app-brand small{color:var(--muted);font-size:.7rem}.main-nav{background:#f0f5f2;border-radius:13px;gap:4px;padding:4px;display:flex}.main-nav button{min-height:38px;color:var(--muted);background:0 0;border:0;border-radius:9px;align-items:center;gap:7px;padding:0 13px;font-size:.8rem;font-weight:760;display:flex}.main-nav button.active{color:var(--green-dark);background:#fff;box-shadow:0 4px 14px #0e392b12}.user-area{justify-content:flex-end;align-items:center;gap:8px;display:flex}.user-chip{max-width:280px;color:var(--ink);text-align:left;background:0 0;border:0;align-items:center;gap:9px;padding:0;display:flex}.user-chip>span{width:38px;height:38px;color:var(--green-dark);background:var(--mint);border-radius:11px;flex:none;place-items:center;font-weight:850;display:grid}.user-chip strong,.user-chip small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.user-chip strong{font-size:.78rem}.user-chip small{color:var(--muted);font-size:.68rem}.app-main{width:min(1280px,100% - 38px);margin:0 auto;padding:30px 0 60px}.dashboard-hero{color:#fff;background:var(--green-dark);min-height:310px;box-shadow:var(--shadow);border-radius:28px;grid-template-columns:1fr auto;align-items:center;gap:30px;padding:clamp(30px,5vw,58px);display:grid;position:relative;overflow:hidden}.dashboard-hero.educator-hero{background:linear-gradient(125deg,#083d31,#17604c)}.dashboard-hero:after{content:"";border:68px solid #c8ef691c;border-radius:50%;width:330px;height:330px;position:absolute;top:-150px;right:-100px}.dashboard-hero>div{z-index:1;position:relative}.dashboard-hero h1{letter-spacing:-.066em;max-width:780px;margin:0;font-size:clamp(2.7rem,6vw,5.4rem);line-height:.95}.dashboard-hero p:last-child{color:#ffffffad;max-width:620px;margin:20px 0 0}.progress-orbit{background:conic-gradient(var(--lime) var(--value),#ffffff1f 0);border-radius:50%;place-items:center;width:180px;height:180px;display:grid}.progress-orbit:before{content:"";background:var(--green-dark);border-radius:50%;width:145px;height:145px}.progress-orbit>div{text-align:center;position:absolute}.progress-orbit strong,.progress-orbit span{display:block}.progress-orbit strong{letter-spacing:-.05em;font-size:2rem}.progress-orbit span{color:#fff9;font-size:.72rem}.content-section{padding-top:48px}.section-heading,.page-title{justify-content:space-between;align-items:end;gap:28px;margin-bottom:22px;display:flex}.section-heading.compact{align-items:center}.section-heading h2,.page-title h1{letter-spacing:-.052em;margin:0;font-size:clamp(2rem,4vw,3.2rem);line-height:1}.section-heading>p,.page-title>div>p:last-child{max-width:500px;color:var(--muted);margin:0}.participant-courses{margin-bottom:38px}.participant-course-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.participant-course{border:1px solid var(--line);background:#fff;border-radius:17px;padding:20px}.participant-course>div:first-child{justify-content:space-between;align-items:center;gap:12px;display:flex}.participant-course-badges{flex-wrap:wrap;gap:6px;display:flex}.participant-course time{color:var(--muted);font-size:.7rem}.participant-course h3{margin:18px 0 5px;font-size:1.15rem}.participant-course>p{color:var(--muted);margin:0;font-size:.78rem}.participant-course-progress{margin-top:17px}.participant-course-progress>span{background:#edf2f0;border-radius:99px;height:7px;display:block;overflow:hidden}.participant-course-progress i{border-radius:inherit;background:var(--green);height:100%;display:block}.participant-course-progress small{color:var(--muted);margin-top:7px;font-size:.68rem;display:block}.participant-attendance{border-top:1px solid var(--line);gap:0;margin-top:17px;padding-top:14px;display:grid!important}.participant-attendance-head{justify-content:space-between;align-items:center;gap:12px;padding-bottom:7px;display:flex}.participant-attendance-head strong{font-size:.75rem}.participant-attendance-head small{color:var(--muted);font-size:.64rem}.participant-attendance>div:not(.participant-attendance-head){border-top:1px solid #edf2f0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:7px 0;display:grid}.participant-attendance>div>span{text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.participant-attendance b{color:#66766f;background:#f0f3f2;border-radius:7px;padding:4px 7px;font-size:.61rem}.participant-attendance b.present{color:#07543e;background:#dff4ea}.participant-attendance b.partial,.participant-attendance b.excused{color:#775c18;background:#fff3cc}.participant-attendance b.absent{color:#96363d;background:#fde8ea}.online-module-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.module-empty-state{border:1px solid var(--line);background:#fff;border-radius:17px;align-items:center;gap:16px;margin-bottom:16px;padding:22px;display:flex}.module-empty-state h3{margin:0 0 6px;font-size:1.15rem}.module-empty-state p{max-width:700px;color:var(--muted);margin:0}.online-module{background:#fff;border:1px solid #1d4c3c1a;border-radius:20px;flex-direction:column;min-height:435px;transition:transform .2s,box-shadow .2s;display:flex;overflow:hidden;box-shadow:0 12px 35px #133d2f0e}.online-module:hover{transform:translateY(-4px);box-shadow:0 20px 45px #133d2f1c}.module-image{background:#dce5e1;height:175px;position:relative;overflow:hidden}.module-image:after{content:"";background:linear-gradient(#0000 45%,#05241b7a);position:absolute;inset:0}.module-image img{object-fit:cover;width:100%;height:100%;transition:transform .35s}.online-module:hover .module-image img{transform:scale(1.035)}.module-image>span{z-index:1;color:#fff;background:var(--accent);letter-spacing:.08em;border-radius:7px;padding:5px 8px;font-size:.68rem;font-weight:850;position:absolute;bottom:14px;left:16px}.module-card-body{flex-direction:column;flex:1;padding:20px;display:flex}.module-card-body h3{letter-spacing:-.03em;margin:0 0 8px;font-size:1.25rem}.module-card-body>p{color:var(--muted);margin:0;font-size:.84rem}.module-status{margin-top:auto;padding:18px 0 14px}.module-status>div{background:#edf2f0;border-radius:99px;height:6px;overflow:hidden}.module-status>div span{border-radius:inherit;background:var(--accent);height:100%;display:block}.module-status small{color:var(--muted);margin-top:6px;font-size:.68rem;display:block}.module-meta{flex-wrap:wrap;gap:7px;margin-top:auto;padding:18px 0 14px;display:flex}.module-meta span,.role-badge{width:-moz-fit-content;width:fit-content;color:var(--green-dark);background:var(--mint);border-radius:8px;padding:6px 9px;font-size:.68rem;font-weight:780;display:inline-flex}.module-button{width:100%;color:var(--accent);border-color:color-mix(in srgb,var(--accent) 22%,white);background:color-mix(in srgb,var(--accent) 8%,white)}.module-view{box-shadow:var(--shadow);background:#fff;border:1px solid #1d4c3c1a;border-radius:26px;overflow:hidden}.module-view-hero{color:#fff;min-height:390px;position:relative;overflow:hidden}.module-view-hero>img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.module-shade{background:linear-gradient(90deg,#042a1ff0 0%,#042a1fab 52%,#042a1f24 100%);position:absolute;inset:0}.module-view-copy{z-index:1;width:min(800px,75%);padding:clamp(28px,5vw,58px);position:relative}.back-button{color:#ffffffbf;background:0 0;border:0;align-items:center;gap:7px;margin-bottom:60px;padding:0;font-weight:730;display:flex}.module-view-copy>span{background:var(--module);letter-spacing:.08em;border-radius:8px;padding:6px 9px;font-size:.7rem;font-weight:850;display:inline-flex}.module-view-copy h1{letter-spacing:-.068em;margin:16px 0 12px;font-size:clamp(2.7rem,6vw,5.4rem);line-height:.92}.module-view-copy p{color:#ffffffb8;max-width:630px}.module-tabs{border-bottom:1px solid var(--line);gap:5px;padding:12px clamp(20px,4vw,44px);display:flex;overflow-x:auto}.module-tabs button{white-space:nowrap;min-height:40px;color:var(--muted);background:0 0;border:0;border-radius:9px;padding:0 13px;font-size:.8rem;font-weight:760}.module-tabs button.active{color:var(--green-dark);background:var(--mint)}.module-panel{padding:clamp(24px,5vw,52px)}.overview-layout{grid-template-columns:1.25fr .75fr;gap:42px;display:grid}.overview-layout h2{letter-spacing:-.045em;margin:0 0 14px;font-size:2.4rem}.overview-layout h3{margin:34px 0 14px}.lead-copy{color:var(--muted);font-size:1rem}.goal-list{gap:11px;margin:0;padding:0;list-style:none;display:grid}.goal-list li{grid-template-columns:26px 1fr;align-items:start;gap:10px;display:grid}.goal-list li>span{width:24px;height:24px;color:var(--green);background:var(--mint);border-radius:8px;place-items:center;display:grid}.notes-box{border:1px solid var(--line);background:#f8faf9;border-radius:16px;margin-top:35px;padding:20px}.notes-box h3{margin:0 0 12px}.notes-box button{margin-top:10px}.info-box{border:1px solid var(--line);background:#f8faf9;border-radius:16px;padding:20px}.info-box+.info-box{margin-top:11px}.info-box>span{color:var(--green);letter-spacing:.1em;text-transform:uppercase;font-size:.68rem;font-weight:850}.info-box strong{margin:7px 0 5px;display:block}.info-box p{color:var(--muted);margin:0;font-size:.82rem}.lesson-stack{gap:14px;display:grid}.lesson-card{border:1px solid var(--line);background:#fbfcfc;border-radius:17px;grid-template-columns:230px 1fr;gap:28px;padding:24px;display:grid}.lesson-head>span{color:var(--module);letter-spacing:.1em;text-transform:uppercase;font-size:.7rem;font-weight:850}.lesson-head h3{margin:8px 0;font-size:1.3rem;line-height:1.15}.lesson-head p{color:var(--muted);margin:0;font-size:.82rem}.lesson-details{grid-template-columns:1fr .8fr;gap:20px;display:grid}.lesson-details h4,.material-section h4{color:var(--green);letter-spacing:.08em;text-transform:uppercase;margin:0 0 9px;font-size:.72rem}.lesson-details ul{margin:0;padding-left:18px;font-size:.84rem}.lesson-details li+li{margin-top:6px}.activity{background:var(--mint);border-radius:13px;padding:15px}.activity p{color:#315247;margin:0;font-size:.82rem}.activity p+p{border-top:1px solid #0b6b4f26;margin-top:12px;padding-top:11px}.schedule-summary{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.schedule-summary span{color:var(--green-dark);background:#edf5f1;border-radius:9px;padding:8px 10px;font-size:.76rem;font-weight:740}.timeline{gap:9px;display:grid}.timeline-row{border:1px solid var(--line);border-radius:14px;grid-template-columns:120px 18px 1fr 40px;align-items:start;gap:13px;padding:16px;display:grid}.timeline-row.without-check{grid-template-columns:120px 18px 1fr}.timeline-row.pause{background:#f6f8f7}.timeline-row time{color:var(--green-dark);font-size:.8rem;font-weight:820}.timeline-row>i{background:var(--module);width:11px;height:11px;box-shadow:0 0 0 2px var(--module);border:3px solid #fff;border-radius:50%;margin-top:5px}.timeline-row.pause>i{background:#9ba9a3;box-shadow:0 0 0 2px #9ba9a3}.timeline-row strong{display:block}.timeline-row p{color:var(--muted);margin:4px 0 0;font-size:.8rem}.timeline-row div>span{color:var(--green-dark);background:var(--mint);border-radius:7px;margin-top:8px;padding:4px 7px;font-size:.67rem;font-weight:750;display:inline-flex}.step-check input{opacity:0;position:absolute}.step-check>span{color:#0000;background:#fff;border:1px solid #b8c7c1;border-radius:8px;place-items:center;width:27px;height:27px;display:grid}.step-check input:checked+span{color:#fff;border-color:var(--green);background:var(--green)}.materials-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.material-card{border:1px solid var(--line);break-inside:avoid;background:#fff;border-radius:17px;flex-direction:column;min-height:420px;padding:22px;display:flex}.material-card.solution{background:#f4fbf7;border-color:#bfd6cc}.material-visual{border-bottom:1px solid var(--line);background:#e9f1ed;border-radius:17px 17px 0 0;margin:-22px -22px 20px;overflow:hidden}.material-visual img{aspect-ratio:16/9;object-fit:cover;width:100%;display:block}.material-visual figcaption{color:var(--muted);background:#f7faf8;padding:8px 12px;font-size:.66rem;line-height:1.45}.material-type{width:-moz-fit-content;width:fit-content;color:var(--green-dark);background:var(--mint);letter-spacing:.08em;text-transform:uppercase;border-radius:7px;padding:5px 8px;font-size:.65rem;font-weight:850}.material-card>h3{margin:13px 0 6px;font-size:1.22rem}.material-card>p{color:var(--muted);margin:0 0 18px;font-size:.82rem}.material-section+.material-section{margin-top:16px}.material-section p,.material-section ol{color:#485751;font-size:.8rem}.material-section ol{margin:0;padding-left:19px}.material-section li+li{margin-top:6px}.print-checklist{color:#3f4d48;gap:7px;margin:0;padding:0;font-size:.8rem;list-style:none;display:grid}.print-checklist li:before{content:"□";color:var(--green);margin-right:8px;font-size:1rem}.prompt{margin-top:12px}.prompt strong{font-size:.8rem;display:block}.prompt i{border-bottom:1px solid #bdc9c4;height:27px;display:block}.text-print{min-height:36px;color:var(--green);background:0 0;justify-content:flex-start;margin-top:auto;padding-top:18px}.quiz-header{justify-content:space-between;align-items:end;gap:24px;margin-bottom:20px;display:flex}.quiz-header h2{letter-spacing:-.045em;margin:0;font-size:2.3rem}.quiz-header>div>p:last-child{color:var(--muted)}.last-result{color:#fff;background:var(--green-dark);border-radius:12px;min-width:150px;padding:13px}.last-result span,.last-result strong{display:block}.last-result span{color:#ffffffa1;font-size:.67rem}.last-result strong{margin-top:4px}.quiz-form{gap:14px;display:grid}.quiz-form fieldset{border:1px solid var(--line);background:#fff;border-radius:16px;margin:0;padding:22px}.quiz-form fieldset.correct{background:#f2faf6;border-color:#92cbb4}.quiz-form fieldset.wrong{background:#fff6f7;border-color:#e0a9ae}.quiz-form legend{width:100%;padding:0 0 14px;font-weight:760}.quiz-form legend span{color:var(--green);letter-spacing:.1em;text-transform:uppercase;margin-bottom:5px;font-size:.68rem;display:block}.quiz-form fieldset>label{cursor:pointer;border:1px solid #e5ebe8;border-radius:10px;grid-template-columns:20px 1fr;align-items:start;gap:9px;padding:10px;display:grid}.quiz-form fieldset>label+label{margin-top:7px}.quiz-form fieldset>label.answer-key{background:#e8f7ef;border-color:#7fc2a7}.quiz-preview fieldset>label{cursor:default}.quiz-preview input[type=radio]{pointer-events:none}.quiz-form input[type=radio]{width:16px;height:16px;accent-color:var(--green);margin:2px 0 0}.explanation{color:var(--muted);border-top:1px solid #1c483a1f;margin:14px 0 0;padding-top:13px;font-size:.82rem}.quiz-submit{flex-wrap:wrap;align-items:center;gap:10px;margin-top:6px;display:flex}.result-banner{border-radius:11px;align-items:center;gap:12px;padding:10px 14px;display:flex}.result-banner.passed{color:#175b41;background:#dff4ea}.result-banner.failed{color:#8d2931;background:#fde8ea}.result-banner strong{font-size:1.25rem}.page-title{align-items:center}.page-title h1{font-size:clamp(2.4rem,5vw,4.4rem)}.table-card{border:1px solid var(--line);background:#fff;border-radius:17px;overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid #e7ecea;padding:14px 16px;font-size:.8rem}th{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;background:#f7f9f8;font-size:.68rem}td strong,td small{display:block}td small{color:var(--muted);margin-top:3px}.status-pill{border-radius:8px;padding:5px 8px;font-size:.68rem;font-weight:760;display:inline-flex}.status-pill.active{color:#186044;background:#dff4ea}.status-pill.inactive{color:#96363d;background:#fde8ea}.status-pill.neutral{color:#54645e;background:#edf2f0}.table-empty{color:var(--muted);text-align:center;padding:30px}.invite-card{background:#eff8f3;border:1px solid #bcd9cc;border-radius:16px;grid-template-columns:1fr 1fr 180px auto;align-items:end;gap:12px;margin-bottom:16px;padding:18px;display:grid}.users-list{gap:9px;display:grid}.user-row{border:1px solid var(--line);background:#fff;border-radius:14px;grid-template-columns:46px minmax(190px,1.2fr) 160px 95px 140px auto;align-items:center;gap:13px;padding:14px;display:grid}.user-avatar{width:42px;height:42px;color:var(--green-dark);background:var(--mint);border-radius:12px;place-items:center;font-weight:850;display:grid}.user-row label small{color:var(--muted);margin-top:4px;font-size:.67rem;font-weight:500;display:block}.user-row input,.user-row select{height:40px}.toggle-label{text-align:center}.toggle-label>span{display:block}.toggle{width:42px;height:24px;margin:6px auto 0;position:relative}.toggle input{opacity:0;position:absolute}.toggle i{background:#c8d1cd;border-radius:99px;transition:all .18s;position:absolute;inset:0}.toggle i:after{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:all .18s;position:absolute;top:3px;left:3px;box-shadow:0 2px 5px #00000026}.toggle input:checked+i{background:var(--green)}.toggle input:checked+i:after{transform:translate(18px)}.user-login span,.user-login strong{display:block}.user-login span{color:var(--muted);font-size:.65rem}.user-login strong{margin-top:3px;font-size:.76rem}.account-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.settings-card{border:1px solid var(--line);background:#fff;border-radius:17px;padding:24px}.settings-card>svg{color:var(--green)}.settings-card h2{margin:13px 0 20px}.settings-card label{margin-top:14px;display:block}.settings-card button{margin-top:20px}.admin-center{padding-top:0}.admin-page-title{margin-bottom:18px}.admin-page-title h1{margin-bottom:10px}.admin-title-actions{align-items:end;gap:10px;display:flex}.admin-title-actions label{min-width:250px;color:var(--muted);font-size:.68rem;font-weight:760}.admin-title-actions select{background:#fff;min-height:44px;margin-top:6px}.admin-tabs{z-index:12;border:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff0;border-radius:15px;gap:6px;margin:0 0 22px;padding:8px;display:flex;position:sticky;top:76px;overflow-x:auto;box-shadow:0 10px 30px #0c3a2c0f}.admin-tabs button{white-space:nowrap;min-height:40px;color:var(--muted);background:0 0;border:0;border-radius:10px;padding:0 14px;font-size:.76rem;font-weight:780}.admin-tabs button.active{color:#fff;background:var(--green-dark)}.admin-loading,.admin-empty{color:var(--muted);text-align:center;padding:32px}.admin-empty.wide{grid-column:1/-1}.admin-section{gap:18px;display:grid}.admin-section-head{justify-content:space-between;align-items:end;gap:28px;display:flex}.admin-section-head h2{letter-spacing:-.05em;margin:0;font-size:clamp(2rem,4vw,3.5rem)}.admin-section-head>div>p:last-child{max-width:680px;color:var(--muted);margin-bottom:0}.organization-form{background:#fbfefc;border-color:#b9d6ca;grid-template-columns:1.35fr 1fr 1.25fr 150px 130px;align-items:end;gap:12px;display:grid}.organization-form .form-actions{grid-column:1/-1}.organization-grid{grid-template-columns:repeat(3,1fr);gap:13px;display:grid}.organization-card{border:1px solid var(--line);background:#fff;border-radius:17px;padding:22px;box-shadow:0 10px 28px #0c3a2c0a}.organization-card.selected{border-color:#83b9a5;box-shadow:0 0 0 3px #0b6b4f14,0 14px 35px #0c3a2c14}.organization-card-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.organization-card-top small{color:var(--muted)}.organization-card h3{margin:18px 0 6px;font-size:1.25rem}.organization-card>p{min-height:22px;color:var(--muted);margin:0;font-size:.78rem}.organization-card dl{grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0;display:grid}.organization-card dl div{background:#f5f8f6;border-radius:10px;padding:10px}.organization-card dt{color:var(--muted);font-size:.61rem}.organization-card dd{color:var(--green-dark);margin:4px 0 0;font-size:.9rem;font-weight:800}.admin-card{border:1px solid var(--line);background:#fff;border-radius:17px;padding:22px}.admin-card h2,.admin-card h3{letter-spacing:-.03em;margin:0}.admin-card-head{justify-content:space-between;align-items:start;gap:18px;margin-bottom:18px;display:flex}.admin-card-head .text-button{margin-top:0}.admin-stat-grid{grid-template-columns:repeat(4,1fr);gap:11px;display:grid}.admin-stat-grid button{text-align:left;border:1px solid var(--line);min-height:145px;color:var(--ink);background:linear-gradient(145deg,#fff,#f7faf8);border-radius:17px;padding:20px;transition:transform .16s,box-shadow .16s}.admin-stat-grid button:hover{transform:translateY(-2px);box-shadow:0 16px 35px #0c3a2c14}.admin-stat-grid strong{color:var(--green-dark);letter-spacing:-.05em;font-size:2rem;display:block}.admin-stat-grid span,.admin-stat-grid small{display:block}.admin-stat-grid span{margin-top:8px;font-size:.82rem;font-weight:800}.admin-stat-grid small{color:var(--green);margin-top:17px;font-size:.66rem}.admin-dashboard-grid{grid-template-columns:1fr 1fr;gap:14px;margin-top:14px;display:grid}.compact-course-list,.activity-list{gap:8px;display:grid}.compact-course-list article{background:#f6f9f7;border-radius:12px;grid-template-columns:1fr 90px 70px;align-items:center;gap:13px;padding:13px;display:grid}.compact-course-list strong,.compact-course-list span,.compact-course-list b,.compact-course-list small{display:block}.compact-course-list span,.compact-course-list small{color:var(--muted);font-size:.68rem}.compact-course-list b{color:var(--green-dark);font-size:1.1rem}.activity-list article{border-bottom:1px solid #edf1ef;grid-template-columns:10px 1fr auto;align-items:center;gap:11px;padding:10px 0;display:grid}.activity-list article>i{background:var(--lime);border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #eef8d7}.activity-list strong,.activity-list span{display:block}.activity-list strong{font-size:.78rem}.activity-list span,.activity-list time{color:var(--muted);font-size:.66rem}.admin-filters{border:1px solid var(--line);background:#f8faf9;border-radius:15px;gap:10px;padding:15px;display:grid}.admin-filters.five{grid-template-columns:minmax(200px,1.4fr) repeat(3,minmax(130px,.8fr)) 90px}.admin-filters.audit-filters{grid-template-columns:1fr 220px 100px}.filter-count{text-align:center;border-left:1px solid var(--line);place-content:center;display:grid}.filter-count strong,.filter-count span{display:block}.filter-count strong{color:var(--green-dark);font-size:1.25rem}.filter-count span{color:var(--muted);font-size:.65rem}.invite-card.expanded{grid-template-columns:1fr 1.2fr 160px 220px auto}.bulk-bar{background:#fff;border:1px solid #cbdad4;border-radius:14px;align-items:center;gap:12px;padding:12px 15px;display:flex}.bulk-bar>select{max-width:330px;margin-left:auto}.check-line{align-items:center;gap:8px;display:flex!important}.check-line input{width:17px;height:17px;accent-color:var(--green);flex:none;margin:0}.users-list.advanced{gap:11px}.user-row.advanced{grid-template-columns:22px 42px minmax(190px,1.15fr) 145px 90px minmax(150px,.8fr) minmax(145px,.7fr);align-items:start}.row-select{padding-top:11px}.row-select input{width:17px;height:17px;accent-color:var(--green)}.user-main input{height:40px;font-weight:780}.user-main span,.user-main small{color:var(--muted);margin-top:4px;font-size:.67rem;display:block}.user-courses{border:1px solid var(--line);background:#fafcfb;border-radius:11px;overflow:hidden}.user-courses summary{color:var(--green-dark);cursor:pointer;padding:11px;font-size:.72rem;font-weight:780}.user-courses>div{gap:8px;padding:0 11px 11px;display:grid}.user-courses .check-line{font-size:.69rem}.assigned-course-line{color:var(--green-dark);background:var(--mint);border-radius:8px;padding:7px 9px;font-size:.69rem;font-weight:750}.user-actions{gap:3px;display:grid}.user-actions .button{min-height:38px}.user-actions .text-button{text-align:left;margin-top:4px;font-size:.68rem}.danger-text{color:var(--danger)!important}.course-form{background:#fbfefc;border-color:#b9d6ca;gap:20px;display:grid}.course-main-fields{grid-template-columns:1.5fr 1fr 190px 1fr;gap:12px;display:grid}.course-pickers{grid-template-columns:.9fr 1.1fr;gap:13px;display:grid}.course-pickers fieldset{border:1px solid var(--line);background:#fff;border-radius:14px;margin:0;padding:16px}.course-pickers legend{color:var(--green-dark);padding:0 8px;font-size:.76rem;font-weight:820}.course-pickers fieldset>.check-line+.check-line,.member-picker .check-line+.check-line{margin-top:9px}.member-picker{max-height:240px;overflow-y:auto}.active-course{background:var(--mint);border-radius:12px;padding:13px}.form-actions{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.course-grid{grid-template-columns:repeat(3,1fr);gap:13px;display:grid}.course-card{border:1px solid var(--line);background:#fff;border-radius:17px;padding:21px}.course-card.archived{background:#f7f8f8;border-color:#d6dfdb}.course-card-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.course-card-top time{color:var(--muted);font-size:.7rem}.course-card h3{margin:18px 0 6px;font-size:1.25rem}.course-card>p{color:var(--muted);margin:0;font-size:.8rem}.course-card dl{grid-template-columns:1.4fr .8fr .6fr;gap:8px;margin:18px 0;display:grid}.course-card dl div{background:#f5f8f6;border-radius:10px;padding:10px}.course-card dt{color:var(--muted);font-size:.61rem}.course-card dd{margin:4px 0 0;font-size:.76rem;font-weight:780}.course-module-tags{flex-wrap:wrap;gap:5px;margin-bottom:18px;display:flex}.course-module-tags span{color:var(--green-dark);background:var(--mint);border-radius:7px;padding:5px 7px;font-size:.62rem;font-weight:740}.course-card-actions{gap:11px;padding-top:2px}.course-card-actions .button{min-width:114px}.course-card.enrollments-open{grid-column:1/-1}.enrollment-summary{background:#f6f9f7;border-radius:11px;flex-wrap:wrap;gap:7px 12px;margin:0 0 17px;padding:11px 12px;display:flex}.enrollment-dot{color:var(--muted);align-items:center;gap:6px;font-size:.66rem;font-weight:740;display:inline-flex}.enrollment-dot i{background:#95a49e;border-radius:50%;width:8px;height:8px}.enrollment-dot.active i{background:#0b6b4f}.enrollment-dot.completed i{background:#7bcf42}.enrollment-dot.withdrawn i{background:#c74a52}.enrollment-panel{background:#f8fbf9;border:1px solid #cbdad4;border-radius:14px;margin:20px -6px -6px;padding:19px}.enrollment-panel-head{justify-content:space-between;align-items:end;gap:20px;padding-bottom:15px;display:flex}.enrollment-panel-head h4{margin:4px 0 0;font-size:1.08rem}.enrollment-panel-head small{max-width:430px;color:var(--muted);text-align:right;font-size:.68rem;line-height:1.45}.enrollment-list{gap:9px;display:grid}.enrollment-row{border:1px solid var(--line);background:#fff;border-radius:12px;grid-template-columns:minmax(190px,1fr) 190px minmax(220px,1.2fr) auto;align-items:end;gap:10px;padding:13px;display:grid}.enrollment-person strong,.enrollment-person span,.enrollment-person small{display:block}.enrollment-person strong{font-size:.78rem}.enrollment-person span,.enrollment-person small{color:var(--muted);margin-top:3px;font-size:.65rem}.enrollment-row .button{white-space:nowrap;min-height:43px}.attendance-selectors{grid-template-columns:minmax(240px,1fr) minmax(240px,1fr) minmax(220px,.8fr);align-items:end;gap:13px;margin-bottom:14px;display:grid}.attendance-context{background:#f3f7f5;border-radius:11px;align-content:center;min-height:49px;padding:8px 13px;display:grid}.attendance-context small,.attendance-context span{color:var(--muted);font-size:.62rem}.attendance-context strong{margin:2px 0;font-size:.75rem}.attendance-sheet{gap:18px;display:grid}.attendance-sheet-head{justify-content:space-between;align-items:start;gap:25px;display:flex}.attendance-sheet-head h3{margin-top:5px;font-size:1.4rem}.attendance-sheet-head p:not(.kicker){max-width:620px;color:var(--muted);margin:8px 0 0;font-size:.75rem;line-height:1.5}.attendance-summary{grid-template-columns:repeat(3,90px);gap:7px;display:grid}.attendance-summary span{color:var(--muted);background:#f3f7f5;border-radius:10px;padding:10px;font-size:.61rem}.attendance-summary strong{color:var(--green-dark);margin-bottom:3px;font-size:1.15rem;display:block}.attendance-summary .confirmed{background:#dff4ea}.attendance-summary .open{background:#fff3cc}.attendance-session-fields{background:#f6f9f7;border-radius:14px;grid-template-columns:220px 250px minmax(260px,1fr);gap:11px;padding:14px;display:grid}.attendance-bulk{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.attendance-bulk small{color:var(--muted);margin-left:auto;font-size:.66rem}.attendance-list{gap:9px;display:grid}.attendance-row{border:1px solid var(--line);background:#fbfcfc;border-radius:13px;grid-template-columns:minmax(180px,1.1fr) 185px 150px 110px minmax(170px,1fr);align-items:end;gap:10px;padding:13px;display:grid}.attendance-row.confirmed{background:#fbfffd;border-color:#b9dccd}.attendance-person strong,.attendance-person span,.attendance-person small{display:block}.attendance-person strong{font-size:.76rem}.attendance-person span,.attendance-person small{color:var(--muted);margin-top:3px;font-size:.63rem}.attendance-person small{color:var(--danger);font-weight:760}.attendance-confirm{border:1px solid var(--line);background:#fff;border-radius:10px;min-height:44px;padding:0 10px}.attendance-confirm span{font-size:.7rem;font-weight:760}.attendance-save{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;padding-top:16px;display:flex}.attendance-save strong,.attendance-save small{display:block}.attendance-save strong{font-size:.78rem}.attendance-save small{color:var(--muted);margin-top:3px;font-size:.65rem}.status-pill.pending{color:#775c18;background:#fff3cc}.progress-table table{min-width:1060px}.print-report-header{display:none}.module-select{min-width:300px}.editor-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:15px;display:grid}.editor-main{gap:11px;display:grid}.editor-group{border:1px solid var(--line);background:#fff;border-radius:16px;overflow:hidden}.editor-group>summary{color:var(--green-dark);cursor:pointer;padding:18px 20px;font-weight:820;list-style-position:inside}.editor-group[open]>summary{border-bottom:1px solid var(--line);background:#f6faf8}.editor-body{gap:15px;padding:20px;display:grid}.editor-body textarea{min-height:96px}.content-admin input,.content-admin select,.content-admin textarea{font-weight:500;line-height:1.45}.content-admin textarea.goals-editor{min-height:210px}.editor-two,.editor-three{gap:12px;display:grid}.editor-two{grid-template-columns:repeat(2,1fr)}.editor-three{grid-template-columns:repeat(3,1fr)}.item-stack{gap:12px;display:grid}.editor-item{background:#fbfcfc;border:1px solid #dfe8e4;border-radius:14px;gap:12px;padding:17px;display:grid}.editor-item-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.editor-item-head .text-button{margin-top:0;font-size:.7rem}.schedule-editor-row{border:1px solid var(--line);background:#fbfcfc;border-radius:13px;grid-template-columns:150px 130px 1fr 1fr 1.4fr auto;align-items:end;gap:9px;padding:13px;display:grid}.schedule-editor-row textarea{min-height:48px}.schedule-editor-row .text-button{margin:0 0 12px}.material-section-editors{gap:10px;display:grid}.material-section-editors>section{background:#f0f6f3;border-radius:12px;gap:10px;padding:14px;display:grid}.small-button{width:-moz-fit-content;width:fit-content;min-height:38px}.editor-side{gap:13px;display:grid}.sticky-save{gap:12px;display:grid;position:sticky;top:150px}.sticky-save p{color:var(--muted);margin:0;font-size:.79rem}.sticky-save .button+.button{margin-top:0}.version-card>div{gap:8px;margin-top:15px;display:grid}.version-card article{border:1px solid var(--line);background:#fafcfb;border-radius:11px;padding:11px}.version-card article strong,.version-card article span,.version-card article small{display:block}.version-card article strong{font-size:.72rem}.version-card article span,.version-card article small{color:var(--muted);margin-top:4px;font-size:.66rem}.version-card article .text-button{margin-top:8px;font-size:.68rem}.audit-reference{color:var(--green-dark);font-weight:760}@media (max-width:1040px){.landing-header{grid-template-columns:1fr auto}.landing-nav{display:none}.landing-hero{grid-template-columns:1fr;padding-top:150px}.landing-hero-copy{max-width:850px}.landing-visual{min-height:520px;margin-left:52px}.landing-module-grid{grid-template-columns:repeat(2,1fr)}.landing-module-grid article.featured{grid-area:auto/span 2;min-height:440px}.landing-project{grid-template-columns:1fr}.landing-project-card{min-height:360px}.app-header{grid-template-columns:auto 1fr auto}.main-nav{justify-self:center}.user-chip>div{display:none}.online-module-grid{grid-template-columns:repeat(2,1fr)}.participant-course-grid,.lesson-card{grid-template-columns:1fr}.user-row{grid-template-columns:42px 1fr 150px 90px auto}.user-login{display:none}.invite-card{grid-template-columns:1fr 1fr}.admin-stat-grid{grid-template-columns:repeat(2,1fr)}.admin-dashboard-grid,.course-pickers,.editor-layout{grid-template-columns:1fr}.admin-filters.five{grid-template-columns:repeat(2,1fr)}.filter-count{border-left:0}.invite-card.expanded,.course-main-fields{grid-template-columns:repeat(2,1fr)}.user-row.advanced{grid-template-columns:22px 42px 1fr 140px 90px}.user-row.advanced .user-courses,.user-row.advanced .user-actions{grid-column:3/-1}.course-grid{grid-template-columns:repeat(2,1fr)}.enrollment-row{grid-template-columns:1fr 180px}.enrollment-row>label:nth-of-type(2),.enrollment-row .button{grid-column:2}.attendance-selectors,.attendance-session-fields{grid-template-columns:repeat(2,1fr)}.attendance-context,.attendance-session-fields>label:last-child{grid-column:1/-1}.attendance-row{grid-template-columns:1fr 180px 150px}.attendance-row>label:last-child{grid-column:2/-1}.schedule-editor-row{grid-template-columns:150px 130px 1fr}.sticky-save{position:static}}@media (max-width:760px){.landing-header{min-height:72px;padding:10px 14px}.landing-header .app-brand small{display:none}.landing-header>.button{min-height:40px;padding:0 12px;font-size:.72rem}.landing-hero{min-height:auto;padding:122px 18px 62px}.landing-hero h1{font-size:clamp(3rem,15vw,4.5rem)}.landing-lead{margin-top:22px}.landing-actions{flex-direction:column;align-items:stretch}.landing-actions .button{width:100%}.landing-stats{grid-template-columns:1fr;margin-top:37px}.landing-stats>div{grid-template-columns:54px 1fr;align-items:center;display:grid}.landing-stats span{margin:0}.landing-visual{min-height:400px;margin:0 0 35px}.landing-visual>img{border-radius:22px}.landing-progress-card{padding:18px;bottom:-35px;left:14px;right:14px}.landing-section,.landing-modules{padding:72px 18px}.landing-section-head{grid-template-columns:1fr;gap:18px;margin-bottom:30px}.landing-section-head h2,.landing-final h2{font-size:clamp(2.55rem,12vw,3.5rem)}.landing-feature-grid,.landing-module-grid,.landing-role-grid{grid-template-columns:1fr}.landing-feature-grid article{min-height:250px}.landing-module-grid article,.landing-module-grid article.featured{grid-column:auto;min-height:310px}.landing-project{padding:72px 18px}.landing-project-card{border-radius:22px;min-height:340px}.landing-project-card blockquote{font-size:1.75rem}.landing-role-grid article{min-height:235px}.landing-role-grid article+article{border-top:1px solid var(--line);border-left:0}.landing-role-grid h3{margin-top:55px}.landing-final{border-radius:23px;flex-direction:column;align-items:stretch;margin:16px 12px 55px;padding:34px 24px}.landing-contact-actions{min-width:0}.auth-layout{grid-template-columns:1fr}.auth-visual{display:none}.auth-panel{min-height:100vh;padding:24px 24px 96px}.legal-footer{flex-direction:column;align-items:flex-start;width:min(100% - 28px,1280px)}.legal-footer.auth{width:auto;bottom:17px;left:24px;right:24px}.legal-footer.auth nav{gap:12px}.legal-header{padding:11px 14px}.legal-header .button{min-height:40px;padding:0 12px;font-size:.75rem}.legal-document{width:min(100% - 20px,900px);padding:24px 0 45px}.legal-title{border-radius:20px}.app-header{grid-template-columns:1fr auto;padding:10px 14px}.main-nav{z-index:30;border:1px solid var(--line);justify-content:space-around;position:fixed;bottom:10px;left:10px;right:10px;box-shadow:0 10px 35px #0832252b}.main-nav button{flex-direction:column;flex:1;justify-content:center;gap:2px;min-height:48px;padding:3px 7px;font-size:.62rem}.main-nav svg{width:17px}.app-main{width:min(100% - 20px,1280px);padding-top:18px;padding-bottom:90px}.user-area .icon-button{display:none}.dashboard-hero{grid-template-columns:1fr;min-height:auto;padding:28px 22px}.progress-orbit{width:125px;height:125px}.progress-orbit:before{width:101px;height:101px}.section-heading,.page-title,.quiz-header{flex-direction:column;align-items:start}.online-module-grid{grid-template-columns:1fr}.module-view{border-radius:20px}.module-view-hero{min-height:420px}.module-shade{background:linear-gradient(#042a1f59,#042a1ff0)}.module-view-copy{width:100%;padding:25px 20px;position:absolute;bottom:0}.back-button{margin-bottom:110px}.module-panel{padding:24px 16px}.overview-layout,.lesson-details,.materials-grid,.account-grid{grid-template-columns:1fr}.timeline-row{grid-template-columns:86px 14px 1fr 30px;gap:8px;padding:12px 9px}.timeline-row.without-check{grid-template-columns:86px 14px 1fr}.invite-card{grid-template-columns:1fr}.user-row{grid-template-columns:42px 1fr auto}.user-row>label:nth-of-type(2),.user-row .toggle-label,.user-row>.button{grid-column:2/-1}.admin-page-title,.admin-section-head,.admin-title-actions{flex-direction:column;align-items:stretch}.admin-title-actions label{min-width:0}.admin-tabs{margin-left:-4px;margin-right:-4px;top:69px}.admin-stat-grid,.admin-dashboard-grid,.admin-filters.five,.admin-filters.audit-filters,.invite-card.expanded,.course-main-fields,.course-pickers,.course-grid,.organization-form,.organization-grid,.editor-two,.editor-three{grid-template-columns:1fr}.enrollment-panel-head{flex-direction:column;align-items:flex-start}.enrollment-panel-head small{text-align:left}.enrollment-row{grid-template-columns:1fr}.enrollment-row>label:nth-of-type(2),.enrollment-row .button{grid-column:auto}.attendance-selectors,.attendance-session-fields,.attendance-row{grid-template-columns:1fr}.attendance-context,.attendance-session-fields>label:last-child,.attendance-row>label:last-child{grid-column:auto}.attendance-sheet-head,.attendance-save{flex-direction:column;align-items:stretch}.attendance-summary{grid-template-columns:repeat(3,1fr)}.attendance-bulk{flex-direction:column;align-items:stretch}.attendance-bulk small{margin-left:0}.admin-stat-grid button{min-height:120px}.compact-course-list article{grid-template-columns:1fr 70px 60px}.bulk-bar{flex-direction:column;align-items:stretch}.bulk-bar>select{max-width:none;margin-left:0}.user-row.advanced{grid-template-columns:22px 42px 1fr}.user-row.advanced>label:nth-of-type(2),.user-row.advanced .toggle-label,.user-row.advanced .user-courses,.user-row.advanced .user-actions{grid-column:2/-1}.module-select{min-width:0}.schedule-editor-row{grid-template-columns:1fr}.schedule-editor-row .text-button{text-align:left;margin:0}}@media print{@page{size:A4;margin:14mm}body{color:#111;background:#fff;font-size:10pt}.app-header,.module-view-hero,.module-tabs,.button,.notice,.dashboard-hero,.legal-footer{display:none!important}.app-main{width:100%;padding:0}.module-view{box-shadow:none;border:0}.module-panel{padding:0}.lesson-card,.material-card,.timeline-row,.quiz-form fieldset{break-inside:avoid}.lesson-card{grid-template-columns:140px 1fr;padding:12px}.lesson-details{grid-template-columns:1fr .75fr}.materials-grid{grid-template-columns:1fr}.material-card{min-height:auto;padding:14px}.single-print .material-card:not(.print-target),.single-print .section-heading{display:none!important}.single-print .material-card.print-target{border:0;display:block}.content-section{padding:0}.table-card{border:0}.admin-tabs,.admin-filters,.bulk-bar,.editor-side,.no-print{display:none!important}.admin-section-head .form-actions{display:none}.progress-table table{min-width:0}.progress-table thead{display:table-header-group}.progress-table tr{break-inside:avoid}.progress-table th,.progress-table td{padding:7px;font-size:8pt;line-height:1.32}.progress-table .participant-start td{border-top:1.5pt solid #879c93;padding-top:10px}.progress-report-print .admin-page-title,.progress-report-print .print-heading{display:none!important}.progress-report-print .print-report-header{border-bottom:1.5pt solid #0b6b4f;margin:0 0 9mm;padding-bottom:5mm;display:block}.progress-report-print .print-report-header p{color:#0b6b4f;letter-spacing:.12em;text-transform:uppercase;margin:0 0 2mm;font-size:8.5pt;font-weight:800}.progress-report-print .print-report-header h1{letter-spacing:-.04em;margin:0;font-size:24pt;line-height:1}.progress-report-print .print-report-header div{color:#45564f;gap:7mm;margin-top:3mm;font-size:8.5pt;display:flex}.progress-report-print .print-report-header small{color:#65746e;margin-top:2mm;font-size:8pt;display:block}}
