:root{--green:#087852;--green-700:#056142;--green-100:#DDF5EA;--teal:#13A7A8;--teal-100:#DDF7F7;--navy:#092B59;--navy-700:#061F43;--blue:#1479B8;--gold:#FFB000;--gold-100:#FFF3D1;--ink:#17263A;--muted:#68778A;--line:#DFE7E3;--surface:#fff;--bg:#F3F8F6;--danger:#C43B4D;--danger-100:#FDE7EA;--shadow:0 12px 38px rgba(12,43,37,.09);--radius:20px;--radius-sm:12px;--sidebar:278px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--bg);font-family:Inter,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}body.public-body{background:#fff}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,select,textarea{font:inherit}button{cursor:pointer}svg{display:block}.container{width:min(1180px,calc(100% - 40px));margin-inline:auto}.section{padding:88px 0}.section-soft{background:linear-gradient(180deg,#F5FBF8 0%,#EDF8F4 100%)}.section-kicker{display:inline-flex;align-items:center;gap:8px;color:var(--green);font-size:.79rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.section-kicker:before{content:"";width:26px;height:3px;border-radius:3px;background:var(--gold)}.section-title{max-width:760px;margin:12px 0 14px;color:var(--navy);font-size:clamp(2rem,4vw,3.45rem);line-height:1.08;letter-spacing:-.045em}.section-lead{max-width:680px;margin:0;color:var(--muted);font-size:1.08rem}.center{text-align:center}.center .section-title,.center .section-lead{margin-inline:auto}.muted{color:var(--muted)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:0 20px;border:1px solid transparent;border-radius:13px;font-weight:750;transition:.2s ease;white-space:nowrap}.btn:hover{transform:translateY(-2px)}.btn-primary{color:#fff;background:linear-gradient(135deg,var(--green),#0A9567);box-shadow:0 9px 24px rgba(8,120,82,.22)}.btn-primary:hover{background:var(--green-700)}.btn-secondary{color:var(--navy);background:#fff;border-color:#CFDDD7}.btn-secondary:hover{border-color:var(--green);color:var(--green)}.btn-ghost{color:var(--green);background:var(--green-100)}.btn-danger{color:var(--danger);background:var(--danger-100)}.btn-sm{min-height:38px;padding:0 14px;font-size:.88rem}.icon-btn{width:40px;height:40px;border:1px solid var(--line);border-radius:11px;background:#fff;display:grid;place-items:center;color:var(--muted);transition:.2s}.icon-btn:hover{color:var(--green);border-color:var(--green);background:var(--green-100)}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.91);border-bottom:1px solid rgba(221,231,227,.8);backdrop-filter:blur(14px)}.site-nav{height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center}.brand img{width:218px;height:auto}.site-links{display:flex;align-items:center;gap:28px;color:#41536A;font-weight:650;font-size:.94rem}.site-links a:hover{color:var(--green)}.nav-actions{display:flex;gap:10px;align-items:center}.mobile-menu{display:none;border:0;background:transparent;font-size:1.6rem;color:var(--navy)}
.urgent-strip{background:var(--navy);color:#fff}.urgent-strip .container{min-height:42px;display:flex;align-items:center;gap:10px;font-size:.9rem}.urgent-badge{padding:3px 9px;border-radius:99px;background:var(--gold);color:var(--navy);font-size:.72rem;font-weight:900;text-transform:uppercase}.hero{position:relative;overflow:hidden;padding:88px 0 72px;background:radial-gradient(circle at 82% 18%,rgba(19,167,168,.16),transparent 25%),radial-gradient(circle at 7% 72%,rgba(255,176,0,.13),transparent 21%),linear-gradient(145deg,#F8FCFA 0%,#EFF9F5 55%,#fff 100%)}.hero:after{content:"";position:absolute;right:-150px;bottom:-240px;width:560px;height:560px;border:90px solid rgba(8,120,82,.04);border-radius:50%}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:68px}.hero-pill{display:inline-flex;align-items:center;gap:10px;padding:8px 13px;border:1px solid #BDE4D3;border-radius:99px;background:#fff;color:var(--green);font-weight:750;font-size:.86rem;box-shadow:0 5px 20px rgba(8,120,82,.08)}.hero-pill i{width:8px;height:8px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 5px var(--teal-100)}.hero h1{margin:22px 0 20px;color:var(--navy);font-size:clamp(2.85rem,5vw,5.05rem);line-height:.98;letter-spacing:-.06em}.hero h1 span{color:var(--green);position:relative}.hero p{max-width:620px;margin:0 0 30px;color:#536579;font-size:1.14rem}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-trust{display:flex;align-items:center;gap:14px;margin-top:28px;color:var(--muted);font-size:.88rem}.avatar-stack{display:flex}.avatar-stack span{width:32px;height:32px;margin-left:-7px;border:3px solid #fff;border-radius:50%;display:grid;place-items:center;background:var(--green-100);color:var(--green);font-size:.72rem;font-weight:850}.avatar-stack span:first-child{margin-left:0}.hero-visual{position:relative;min-height:510px;display:grid;place-items:center}.hero-card{position:relative;width:min(470px,100%);padding:29px;border:1px solid rgba(207,221,215,.9);border-radius:30px;background:rgba(255,255,255,.9);box-shadow:0 28px 75px rgba(8,58,43,.15);transform:rotate(1deg)}.hero-card:before{content:"";position:absolute;inset:-12px 22px auto;height:15px;border-radius:16px 16px 0 0;background:linear-gradient(90deg,var(--green),var(--teal),var(--gold));z-index:-1}.brand-preview{padding:12px 18px 22px;border-bottom:1px solid var(--line)}.brand-preview img{width:100%}.cycle-mini{margin-top:22px;padding:22px;border-radius:20px;background:linear-gradient(135deg,var(--navy),#10457D);color:#fff}.cycle-mini-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.cycle-mini h3{margin:5px 0;font-size:1.28rem}.cycle-mini p{margin:0;color:#C8D8EB;font-size:.9rem}.live-dot{display:flex;align-items:center;gap:7px;font-size:.76rem;font-weight:800}.live-dot:before{content:"";width:9px;height:9px;border-radius:50%;background:#58E5B3;box-shadow:0 0 0 5px rgba(88,229,179,.13)}.progress-bar{height:7px;margin-top:18px;border-radius:10px;background:rgba(255,255,255,.17);overflow:hidden}.progress-bar span{display:block;width:68%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--gold),#FFD76B)}.float-card{position:absolute;padding:14px 17px;border:1px solid var(--line);border-radius:15px;background:#fff;box-shadow:var(--shadow);font-weight:750;font-size:.88rem}.float-card b{display:block;color:var(--green);font-size:1.23rem}.float-a{top:48px;right:-15px;transform:rotate(-3deg)}.float-b{left:-20px;bottom:75px;transform:rotate(3deg)}
.stats-wrap{position:relative;z-index:3;margin-top:-30px}.stats{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:var(--shadow);overflow:hidden}.stat{padding:25px 28px;border-right:1px solid var(--line)}.stat:last-child{border-right:0}.stat strong{display:block;color:var(--navy);font-size:1.75rem;line-height:1}.stat span{color:var(--muted);font-size:.85rem}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:44px}.feature-card{padding:29px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;transition:.25s}.feature-card:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:#B8DCCC}.feature-icon{width:52px;height:52px;border-radius:15px;display:grid;place-items:center;background:var(--green-100);color:var(--green);font-size:1.5rem}.feature-card:nth-child(2) .feature-icon,.feature-card:nth-child(5) .feature-icon{background:var(--teal-100);color:#087F80}.feature-card:nth-child(3) .feature-icon,.feature-card:nth-child(6) .feature-icon{background:var(--gold-100);color:#A96F00}.feature-card h3{margin:20px 0 8px;color:var(--navy);font-size:1.15rem}.feature-card p{margin:0;color:var(--muted);font-size:.94rem}.courses-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-top:40px}.course-chip{position:relative;min-height:104px;padding:19px;border:1px solid var(--line);border-radius:16px;background:#fff;overflow:hidden;transition:.2s}.course-chip:hover{transform:translateY(-3px);box-shadow:0 10px 25px rgba(9,43,89,.08)}.course-chip:after{content:"";position:absolute;right:-25px;bottom:-35px;width:78px;height:78px;border-radius:50%;background:var(--course-color);opacity:.1}.course-number{display:block;color:var(--course-color);font-size:.72rem;font-weight:900;letter-spacing:.12em}.course-chip strong{display:block;margin-top:8px;color:var(--navy)}.course-chip small{color:var(--muted)}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:48px}.step{position:relative}.step:not(:last-child):after{content:"";position:absolute;top:25px;left:65px;right:-8px;border-top:2px dashed #B9D7CA}.step-number{position:relative;z-index:2;width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:var(--green);color:#fff;font-weight:900;box-shadow:0 9px 22px rgba(8,120,82,.22)}.step h3{margin:18px 0 7px;color:var(--navy);font-size:1rem}.step p{margin:0;color:var(--muted);font-size:.9rem}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:40px}.news-card{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.news-art{height:175px;display:flex;align-items:flex-end;padding:20px;background:linear-gradient(135deg,var(--navy),var(--green));color:#fff}.news-card:nth-child(2) .news-art{background:linear-gradient(135deg,var(--teal),#075F72)}.news-card:nth-child(3) .news-art{background:linear-gradient(135deg,#AA7012,var(--gold));color:var(--navy)}.news-date{padding:5px 9px;border-radius:8px;background:rgba(255,255,255,.16);font-size:.76rem;font-weight:750}.news-body{padding:22px}.news-body h3{margin:0 0 9px;color:var(--navy);font-size:1.08rem}.news-body p{margin:0;color:var(--muted);font-size:.91rem}.partners{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:44px}.partner-card{min-height:210px;padding:27px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;display:flex;align-items:center;gap:24px}.partner-card img{width:105px;max-height:125px;object-fit:contain}.partner-card h3{margin:0 0 5px;color:var(--navy)}.partner-card p{margin:0;color:var(--muted);font-size:.88rem}.partner-tag{display:inline-flex;margin-top:12px;padding:5px 9px;border-radius:7px;background:var(--green-100);color:var(--green);font-size:.72rem;font-weight:850}.site-footer{padding:58px 0 25px;background:var(--navy-700);color:#D7E3EF}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:60px}.footer-brand img{width:225px;filter:brightness(0) invert(1)}.footer-brand p{max-width:390px;color:#AFC1D3;font-size:.9rem}.site-footer h4{margin:0 0 14px;color:#fff}.footer-links{display:grid;gap:8px;color:#BFD0DE;font-size:.9rem}.footer-links a:hover{color:#fff}.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:40px;padding-top:22px;border-top:1px solid rgba(255,255,255,.12);color:#91A8BC;font-size:.82rem}.footer-bottom a{color:#FFD15A;font-weight:750}
.auth-page{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr;background:#fff}.auth-showcase{position:relative;overflow:hidden;padding:60px;display:flex;flex-direction:column;justify-content:space-between;color:#fff;background:radial-gradient(circle at 20% 18%,rgba(19,167,168,.32),transparent 30%),linear-gradient(145deg,var(--navy),var(--green-700))}.auth-showcase:after{content:"";position:absolute;right:-140px;bottom:-120px;width:430px;height:430px;border:70px solid rgba(255,255,255,.05);border-radius:50%}.auth-showcase .light-logo{width:250px;filter:brightness(0) invert(1)}.auth-copy{position:relative;z-index:2;max-width:590px}.auth-copy h1{margin:0 0 18px;font-size:clamp(2.7rem,5vw,5rem);line-height:1;letter-spacing:-.055em}.auth-copy p{color:#CFE0DE;font-size:1.05rem}.auth-points{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:28px}.auth-point{padding:14px;border:1px solid rgba(255,255,255,.13);border-radius:12px;background:rgba(255,255,255,.07);font-size:.86rem}.auth-credit{position:relative;z-index:2;color:#AFCBC6;font-size:.83rem}.auth-panel{padding:50px;display:grid;place-items:center}.auth-form{width:min(430px,100%)}.auth-form>a img{width:235px;margin:0 auto 35px}.auth-form h2{margin:0;color:var(--navy);font-size:2rem;letter-spacing:-.035em}.auth-form>p{margin:7px 0 28px;color:var(--muted)}.field{display:grid;gap:7px}.field+.field{margin-top:17px}.field label{color:#405267;font-size:.86rem;font-weight:750}.field input,.field select,.field textarea{width:100%;min-height:48px;padding:11px 13px;border:1px solid #D3DEDA;border-radius:12px;background:#fff;color:var(--ink);outline:0;transition:.2s}.field textarea{min-height:104px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--green);box-shadow:0 0 0 4px rgba(8,120,82,.1)}.input-wrap{position:relative}.input-wrap input{padding-left:43px}.input-prefix{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#819083}.password-toggle{position:absolute;right:12px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:var(--green);font-size:.78rem;font-weight:750}.form-row-between{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:17px 0 22px;font-size:.86rem}.check{display:flex;align-items:center;gap:8px}.check input{accent-color:var(--green)}.auth-form .btn{width:100%}.form-error{margin-top:6px;color:var(--danger);font-size:.8rem}.demo-box{margin-top:24px;padding:15px;border:1px dashed #B7CEC4;border-radius:12px;background:#F5FAF8;color:var(--muted);font-size:.8rem}.demo-box strong{color:var(--green)}
.app-body{background:var(--bg)}.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;z-index:60;width:var(--sidebar);display:flex;flex-direction:column;background:linear-gradient(180deg,#082B26 0%,#061E2D 100%);color:#D8E7E2;transition:.25s}.sidebar-brand{height:90px;padding:22px 24px;border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:center}.sidebar-brand img{width:218px;filter:brightness(0) invert(1)}.sidebar-context{margin:19px 17px 8px;padding:13px;border:1px solid rgba(255,255,255,.1);border-radius:13px;background:rgba(255,255,255,.06)}.sidebar-context small{display:block;color:#88AAA1;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em}.sidebar-context strong{display:block;margin-top:2px;color:#fff;font-size:.86rem}.nav-scroll{padding:10px 13px 24px;overflow-y:auto}.nav-label{margin:18px 12px 8px;color:#688C83;font-size:.65rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.side-link{display:flex;align-items:center;gap:12px;min-height:44px;padding:0 12px;border-radius:10px;color:#B8CEC8;font-size:.88rem;font-weight:630;transition:.17s}.side-link:hover{color:#fff;background:rgba(255,255,255,.07)}.side-link.active{color:#fff;background:linear-gradient(90deg,rgba(19,167,168,.3),rgba(8,120,82,.18));box-shadow:inset 3px 0 0 var(--gold)}.side-icon{width:22px;text-align:center;font-size:1.05rem}.sidebar-footer{margin-top:auto;padding:14px;border-top:1px solid rgba(255,255,255,.08)}.sidebar-footer .side-link{width:100%;border:0;background:transparent}.app-main{min-height:100vh;margin-left:var(--sidebar)}.topbar{position:sticky;top:0;z-index:40;height:76px;padding:0 30px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.9);backdrop-filter:blur(13px);display:flex;align-items:center;justify-content:space-between}.topbar-left{display:flex;align-items:center;gap:14px}.sidebar-toggle{display:none}.page-crumb{color:var(--muted);font-size:.8rem}.page-crumb strong{display:block;color:var(--navy);font-size:1rem}.topbar-actions{display:flex;align-items:center;gap:10px}.user-chip{display:flex;align-items:center;gap:10px;margin-left:4px;padding:6px 9px 6px 6px;border:1px solid var(--line);border-radius:13px;background:#fff}.user-avatar{width:35px;height:35px;border-radius:10px;display:grid;place-items:center;background:linear-gradient(145deg,var(--green),var(--teal));color:#fff;font-weight:850}.user-meta{line-height:1.2}.user-meta strong{display:block;color:var(--navy);font-size:.82rem}.user-meta small{color:var(--muted);font-size:.7rem}.app-content{padding:28px 30px 55px}.page-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:25px}.page-heading h1{margin:2px 0 4px;color:var(--navy);font-size:clamp(1.75rem,3vw,2.5rem);letter-spacing:-.045em}.page-heading p{margin:0;color:var(--muted);font-size:.93rem}.welcome-kicker{color:var(--green);font-size:.8rem;font-weight:850;text-transform:uppercase;letter-spacing:.09em}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.metric-card{padding:21px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 7px 24px rgba(8,48,38,.045)}.metric-top{display:flex;align-items:center;justify-content:space-between}.metric-icon{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;background:var(--green-100);color:var(--green);font-size:1.2rem}.metric-card.tone-blue .metric-icon{background:#E4F2FB;color:var(--blue)}.metric-card.tone-gold .metric-icon{background:var(--gold-100);color:#A96F00}.metric-card.tone-teal .metric-icon{background:var(--teal-100);color:#078081}.metric-delta{color:var(--green);font-size:.73rem;font-weight:800}.metric-card strong.value{display:block;margin-top:18px;color:var(--navy);font-size:1.8rem;line-height:1}.metric-card span.label{color:var(--muted);font-size:.82rem}.dash-grid{display:grid;grid-template-columns:1.55fr .85fr;gap:20px;margin-top:20px}.panel{border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 7px 24px rgba(8,48,38,.04)}.panel-head{padding:20px 21px 15px;display:flex;align-items:center;justify-content:space-between;gap:15px}.panel-head h2{margin:0;color:var(--navy);font-size:1.05rem}.panel-body{padding:0 21px 21px}.schedule-list,.announcement-list{display:grid;gap:10px}.schedule-row{padding:13px;border:1px solid var(--line);border-radius:12px;display:flex;align-items:center;gap:13px}.schedule-day{width:48px;text-align:center;color:var(--green);font-size:.7rem;font-weight:850;text-transform:uppercase}.schedule-info{flex:1}.schedule-info strong{display:block;color:var(--navy);font-size:.87rem}.schedule-info small{color:var(--muted)}.schedule-time{padding:5px 8px;border-radius:7px;background:var(--green-100);color:var(--green);font-size:.75rem;font-weight:800}.announcement-row{padding:14px;border-left:3px solid var(--green);border-radius:0 10px 10px 0;background:#F7FAF9}.announcement-row.urgent{border-left-color:var(--danger);background:#FFF8F8}.announcement-row.important{border-left-color:var(--gold);background:#FFFCF5}.announcement-row strong{display:block;color:var(--navy);font-size:.87rem}.announcement-row p{margin:3px 0 0;color:var(--muted);font-size:.79rem}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.quick-action{padding:17px;border:1px solid var(--line);border-radius:14px;background:#fff;transition:.2s}.quick-action:hover{border-color:#A8D3C0;transform:translateY(-2px);box-shadow:0 8px 20px rgba(8,120,82,.08)}.quick-action b{display:block;margin-top:12px;color:var(--navy);font-size:.86rem}.quick-action small{color:var(--muted);font-size:.74rem}.quick-icon{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:var(--green-100);color:var(--green)}
.flash{margin-bottom:20px;padding:13px 16px;border-radius:12px;display:flex;align-items:flex-start;gap:10px;font-size:.88rem}.flash-success{border:1px solid #BDE4D3;background:#EAF8F1;color:#096A49}.flash-error{border:1px solid #F1BAC2;background:#FFF0F2;color:#9A2938}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:17px}.search-form{position:relative;width:min(390px,100%)}.search-form input{width:100%;height:44px;padding:0 15px 0 42px;border:1px solid var(--line);border-radius:12px;background:#fff;outline:0}.search-form input:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(8,120,82,.09)}.search-form span{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--muted)}.table-card{overflow:hidden;border:1px solid var(--line);border-radius:17px;background:#fff}.table-wrap{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;white-space:nowrap}.data-table th{padding:13px 16px;background:#F7FAF9;color:#63766F;font-size:.69rem;font-weight:850;letter-spacing:.06em;text-align:left;text-transform:uppercase}.data-table td{padding:14px 16px;border-top:1px solid #EDF1EF;color:#405267;font-size:.84rem;max-width:260px;overflow:hidden;text-overflow:ellipsis}.data-table tbody tr:hover{background:#FAFCFB}.table-primary{display:flex;align-items:center;gap:10px}.table-avatar{width:35px;height:35px;border-radius:10px;display:grid;place-items:center;background:var(--green-100);color:var(--green);font-weight:850}.table-primary strong{display:block;color:var(--navy)}.badge{display:inline-flex;align-items:center;padding:4px 8px;border-radius:99px;background:#EEF3F1;color:#526860;font-size:.71rem;font-weight:800}.badge.active,.badge.published,.badge.approved,.badge.open{background:var(--green-100);color:var(--green)}.badge.draft,.badge.scheduled,.badge.configuration{background:#E7F1FA;color:var(--blue)}.badge.urgent,.badge.suspended,.badge.cancelled,.badge.observed{background:var(--danger-100);color:var(--danger)}.badge.important,.badge.closing,.badge.review{background:var(--gold-100);color:#9B6700}.table-actions{display:flex;gap:7px}.pagination-wrap{padding:14px 16px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:.8rem}.empty-state{padding:65px 25px;text-align:center}.empty-icon{width:62px;height:62px;margin:0 auto 16px;border-radius:19px;display:grid;place-items:center;background:var(--green-100);color:var(--green);font-size:1.6rem}.empty-state h3{margin:0;color:var(--navy)}.empty-state p{margin:6px auto 0;max-width:420px;color:var(--muted);font-size:.9rem}
.modal-backdrop{position:fixed;inset:0;z-index:100;padding:25px;display:none;place-items:center;background:rgba(3,22,32,.64);backdrop-filter:blur(4px)}.modal-backdrop.open{display:grid}.modal{width:min(820px,100%);max-height:calc(100vh - 50px);overflow:auto;border-radius:20px;background:#fff;box-shadow:0 30px 100px rgba(0,0,0,.3)}.modal-head{position:sticky;top:0;z-index:2;padding:21px 24px;border-bottom:1px solid var(--line);background:#fff;display:flex;justify-content:space-between;align-items:center}.modal-head h2{margin:0;color:var(--navy);font-size:1.15rem}.modal-body{padding:24px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.form-grid .field{margin:0}.field-wide{grid-column:1/-1}.modal-actions{position:sticky;bottom:0;padding:17px 24px;border-top:1px solid var(--line);background:#fff;display:flex;justify-content:flex-end;gap:10px}.field small{color:var(--muted)}
.classroom-toolbar{display:flex;gap:9px;overflow:auto;padding-bottom:8px;margin-bottom:20px}.filter-chip{padding:8px 13px;border:1px solid var(--line);border-radius:99px;background:#fff;color:var(--muted);font-size:.8rem;font-weight:750;white-space:nowrap}.filter-chip.active,.filter-chip:hover{border-color:var(--green);background:var(--green-100);color:var(--green)}.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.resource-card{padding:20px;border:1px solid var(--line);border-radius:17px;background:#fff;transition:.2s}.resource-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.resource-type{display:flex;align-items:center;justify-content:space-between}.resource-type span:first-child{width:43px;height:43px;border-radius:12px;display:grid;place-items:center;background:var(--green-100);color:var(--green)}.resource-card h3{margin:17px 0 6px;color:var(--navy);font-size:1rem}.resource-card p{min-height:42px;margin:0;color:var(--muted);font-size:.82rem}.resource-meta{display:flex;justify-content:space-between;gap:10px;margin-top:18px;padding-top:13px;border-top:1px solid var(--line);color:var(--muted);font-size:.73rem}.sheet-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:25px}.sheet-card{padding:17px;border:1px solid #BDE4D3;border-radius:15px;background:linear-gradient(145deg,#F7FCFA,#E9F8F1)}.sheet-card small{color:var(--green);font-weight:800;text-transform:uppercase}.sheet-card h3{margin:7px 0;color:var(--navy);font-size:.91rem}.sheet-card span{color:var(--muted);font-size:.75rem}.practice-wrap{max-width:880px;margin:auto}.practice-header{margin-bottom:20px;padding:24px;border-radius:19px;background:linear-gradient(135deg,var(--navy),var(--green-700));color:#fff}.practice-header h1{margin:4px 0}.practice-header p{margin:0;color:#C8DBD7}.practice-progress{height:7px;margin-top:18px;border-radius:10px;background:rgba(255,255,255,.16);overflow:hidden}.practice-progress span{display:block;height:100%;background:var(--gold);transition:.2s}.question-card{margin-bottom:15px;padding:23px;border:1px solid var(--line);border-radius:17px;background:#fff}.question-number{color:var(--green);font-size:.73rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.question-card h3{margin:9px 0 17px;color:var(--navy);font-size:1.05rem}.answer-list{display:grid;gap:9px}.answer-option{position:relative;display:flex;align-items:center;gap:11px;padding:12px 13px;border:1px solid var(--line);border-radius:11px;cursor:pointer;transition:.15s}.answer-option:hover{border-color:#9FD1BB;background:#F7FCFA}.answer-option:has(input:checked){border-color:var(--green);background:var(--green-100);color:var(--green);font-weight:700}.answer-option input{accent-color:var(--green)}.practice-submit{position:sticky;bottom:15px;padding:14px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.94);box-shadow:var(--shadow);display:flex;justify-content:space-between;align-items:center;backdrop-filter:blur(12px)}
.report-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.chart-bars{display:grid;gap:13px}.bar-row{display:grid;grid-template-columns:115px 1fr 30px;align-items:center;gap:10px;font-size:.8rem}.bar-track{height:10px;border-radius:10px;background:#EDF2F0;overflow:hidden}.bar-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--green),var(--teal))}.donut-wrap{display:flex;align-items:center;justify-content:center;gap:34px;padding:20px}.donut{width:150px;height:150px;border-radius:50%;background:conic-gradient(var(--green) 0 52%,var(--teal) 52% 77%,var(--gold) 77% 100%);display:grid;place-items:center}.donut:after{content:"";width:90px;height:90px;border-radius:50%;background:#fff}.legend{display:grid;gap:9px}.legend span{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:.8rem}.legend i{width:9px;height:9px;border-radius:50%}
@media(max-width:1100px){.site-links{display:none}.mobile-menu{display:block}.hero-grid{gap:30px}.float-a{right:0}.float-b{left:0}.courses-grid{grid-template-columns:repeat(3,1fr)}.partners{grid-template-columns:1fr}.metric-grid{grid-template-columns:1fr 1fr}.resource-grid{grid-template-columns:1fr 1fr}.sidebar{transform:translateX(-100%);box-shadow:25px 0 60px rgba(0,0,0,.22)}.sidebar.open{transform:translateX(0)}.app-main{margin-left:0}.sidebar-toggle{display:grid}.app-overlay{position:fixed;inset:0;z-index:55;display:none;background:rgba(3,22,32,.45)}.app-overlay.open{display:block}}
@media(max-width:820px){.section{padding:68px 0}.hero{padding-top:60px}.hero-grid{grid-template-columns:1fr}.hero-visual{min-height:450px}.stats{grid-template-columns:1fr 1fr}.stat:nth-child(2){border-right:0}.stat:nth-child(-n+2){border-bottom:1px solid var(--line)}.feature-grid,.news-grid{grid-template-columns:1fr 1fr}.courses-grid{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr 1fr}.step:nth-child(2):after{display:none}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.auth-page{grid-template-columns:1fr}.auth-showcase{display:none}.auth-panel{min-height:100vh}.dash-grid,.report-grid{grid-template-columns:1fr}.quick-grid{grid-template-columns:1fr 1fr}.sheet-strip{grid-template-columns:1fr}.page-heading{align-items:flex-start;flex-direction:column}.resource-grid{grid-template-columns:1fr 1fr}}
@media(max-width:580px){.container{width:min(100% - 28px,1180px)}.site-nav{height:70px}.brand img{width:185px}.nav-actions .btn-secondary{display:none}.hero{padding:45px 0 60px}.hero h1{font-size:3rem}.hero-visual{min-height:390px}.hero-card{padding:18px}.float-card{display:none}.stats-wrap{margin-top:-20px}.stats{grid-template-columns:1fr 1fr}.stat{padding:19px 17px}.stat strong{font-size:1.4rem}.feature-grid,.news-grid,.courses-grid,.steps{grid-template-columns:1fr}.step:after{display:none}.partners{grid-template-columns:1fr}.partner-card{flex-direction:column;text-align:center}.footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:auto}.footer-bottom{flex-direction:column}.auth-panel{padding:28px 20px}.auth-form>a img{width:210px}.topbar{height:68px;padding:0 15px}.user-meta{display:none}.app-content{padding:22px 15px 45px}.metric-grid{grid-template-columns:1fr 1fr;gap:11px}.metric-card{padding:15px}.metric-card strong.value{font-size:1.45rem}.quick-grid{grid-template-columns:1fr 1fr}.toolbar{align-items:stretch;flex-direction:column}.search-form{width:100%}.toolbar .btn{width:100%}.form-grid{grid-template-columns:1fr}.field-wide{grid-column:auto}.modal-backdrop{padding:0}.modal{max-height:100vh;height:100%;border-radius:0}.resource-grid{grid-template-columns:1fr}.practice-submit{gap:10px}.practice-submit span{font-size:.76rem}.bar-row{grid-template-columns:90px 1fr 25px}.donut-wrap{flex-direction:column}}
.question-image{width:100%;max-height:420px;margin:0 0 18px;border:1px solid var(--line);border-radius:14px;object-fit:contain;background:#f8fbfa}
.question-builder{display:grid;gap:10px}.builder-row{display:grid;grid-template-columns:auto 1fr 110px;gap:14px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:14px;background:#fff}.builder-row:has(input[type=checkbox]:checked){border-color:var(--green);background:#f5fbf8}.builder-row>input{width:20px;height:20px}.builder-question{display:grid;gap:4px}.builder-question span{color:var(--ink);line-height:1.45}.builder-question small{color:var(--muted)}.field.compact{gap:3px}.field.compact span{font-size:.75rem;color:var(--muted);font-weight:700}.field.compact input{min-height:40px}
.sticky-actions{position:sticky;bottom:12px;z-index:5;display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-top:18px;padding:12px 14px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.96);box-shadow:0 12px 35px rgba(24,49,40,.14);backdrop-filter:blur(10px)}
.activity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.activity-card{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff}.activity-card h3{margin:0}.activity-card p{margin:0;color:var(--muted)}.activity-card form{display:flex;gap:8px;width:100%;margin-top:auto}.activity-card input{min-width:0}.timer-card,.score-card{min-width:150px;padding:13px 18px;border-radius:16px;background:var(--green);color:#fff;text-align:center}.timer-card small,.score-card small{display:block;opacity:.8;text-transform:uppercase;letter-spacing:.08em;font-size:.68rem}.timer-card strong,.score-card strong{display:block;font-size:1.5rem;margin-top:3px}
.practice-question{display:grid;grid-template-columns:42px 1fr;gap:14px;margin-bottom:16px;padding:20px;border:1px solid var(--line);border-radius:18px;background:#fff}.practice-question .question-number{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--green);color:#fff;font-size:1rem;font-weight:900;letter-spacing:0}.question-content h3{margin:8px 0 16px;font-size:1.08rem;line-height:1.55}.question-tags{display:flex;flex-wrap:wrap;gap:6px}.question-tags span{padding:4px 8px;border-radius:999px;background:#edf7f2;color:var(--green);font-size:.72rem;font-weight:800}.options-grid{display:grid;gap:8px}.option-row{display:flex;align-items:center;gap:10px;padding:11px 12px;border:1px solid var(--line);border-radius:12px;cursor:pointer}.option-row:has(input:checked){border-color:var(--green);background:#f1faf6}.option-row input{width:18px;height:18px}.result-list{display:grid;gap:12px}.result-row{display:grid;grid-template-columns:38px 1fr;gap:12px;padding:14px;border-bottom:1px solid var(--line)}.result-row:last-child{border-bottom:0}.result-row h3{margin:0 0 8px;font-size:1rem}.result-row p{margin:5px 0;color:var(--ink)}.result-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;font-weight:900}.result-mark.correct{background:#e3f7ec;color:#087852}.result-mark.incorrect{background:#fde8eb;color:#b4233c}.result-mark.pending{background:#fff4d6;color:#8a5a00}
.info-public-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:28px}.info-public-card{padding:22px;border:1px solid var(--line);border-radius:18px;background:#fff}.info-public-card h3{margin-top:0}.info-public-card>a,.info-public-card>div{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none}.info-public-card small{color:var(--green)}.faq-list{margin-top:28px}.faq-list details{padding:15px 0;border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;font-weight:800}.faq-list p{color:var(--muted);line-height:1.65}
@media(max-width:900px){.activity-grid,.info-public-grid{grid-template-columns:1fr 1fr}.builder-row{grid-template-columns:auto 1fr}.builder-row .compact{grid-column:2}.practice-question{grid-template-columns:1fr}.practice-question .question-number{width:32px;height:32px}.sticky-actions{flex-wrap:wrap}.sticky-actions .muted{width:100%}}
@media(max-width:600px){.activity-grid,.info-public-grid{grid-template-columns:1fr}.timer-card,.score-card{width:100%}.activity-card form{flex-direction:column}.sticky-actions .btn{flex:1}.builder-row{padding:12px}}
.secret-box{padding:16px;border:1px dashed #9fcdb9;border-radius:13px;background:#f3faf7;text-align:center}.secret-box small{display:block;color:var(--muted);font-weight:800}.secret-box code{display:block;margin-top:6px;color:var(--green);font-size:1.08rem;letter-spacing:.12em;word-break:break-all}.uri-code{display:block;margin-top:8px;padding:10px;border-radius:8px;background:#eef3f1;word-break:break-all;font-size:.72rem}.recovery-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.recovery-grid code{padding:10px;border:1px solid var(--line);border-radius:8px;background:#f7faf9;text-align:center}.identity-card{display:grid;padding:14px;border-radius:12px;background:var(--green-100);margin-bottom:18px}.identity-card span{color:var(--muted);font-size:.83rem}.session-list{display:grid;gap:10px}.session-list article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--line);border-radius:12px}.session-list strong,.session-list small{display:block}.session-list strong{font-size:.8rem}.session-list small{color:var(--muted);font-size:.72rem}
.notification-button{position:relative;width:auto;min-width:40px;padding:0 10px}.notification-button b{position:absolute;top:-6px;right:-6px;display:grid;place-items:center;min-width:19px;height:19px;padding:0 4px;border-radius:99px;background:var(--danger);color:#fff;font-size:.63rem}.notification-list{display:grid}.notification-item{display:grid;grid-template-columns:12px 1fr;gap:12px;padding:17px 20px;border-bottom:1px solid var(--line)}.notification-item:hover{background:#f7faf9}.notification-item.unread{background:#f2faf6}.notification-dot{width:9px;height:9px;margin-top:7px;border-radius:50%;background:#bdcac5}.notification-item.unread .notification-dot{background:var(--green);box-shadow:0 0 0 4px var(--green-100)}.notification-item strong{color:var(--navy)}.notification-item p{margin:3px 0;color:var(--muted)}.notification-item small{color:var(--muted)}
.resource-progress{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.resource-progress summary{cursor:pointer;color:var(--green);font-size:.8rem;font-weight:800}.resource-progress form{display:grid;gap:9px;margin-top:10px}.resource-progress textarea{min-height:72px;padding:9px;border:1px solid var(--line);border-radius:9px;resize:vertical}.resource-progress .check{font-size:.78rem;color:var(--muted)}
