@charset "UTF-8";
:root{--bg:#f6f8f7;--surface:#fff;--ink:#233c35;--muted:#7b8782;--green:#17634c;--deep:#194f3e;--lime:#d7ebad;--sage:#edf4ee;--line:#e6ebe7;--purple:#75678c;--lavender:#f1eff7;--danger:#ae5144;--shadow:0 5px 24px #1e423307;--radius:19px;font-family:'DM Sans',sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none;font-size:14px}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button,a{touch-action:manipulation}button{color:inherit}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-decoration:none}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{font-family:'Manrope',sans-serif}h1{font-size:30px;line-height:1.35;letter-spacing:-1.15px;font-weight:800}h2{font-size:19px;letter-spacing:-.6px;line-height:1.4;font-weight:750}h3{font-size:15px;font-weight:750;letter-spacing:-.25px}p{line-height:1.7}.icon{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.skip-link{position:fixed;top:-60px;left:20px;padding:12px;background:var(--green);color:white;z-index:100}.skip-link:focus{top:15px}:focus-visible{outline:3px solid #82ac8a;outline-offset:4px}::selection{background:#d7ebad;color:#194f3e}button{border:0;background:none}.muted{color:var(--muted)}.small{font-size:12px}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:700;text-transform:uppercase;color:#809087}.row{display:flex;align-items:center;gap:12px}.between{justify-content:space-between}.stack{display:flex;flex-direction:column;gap:20px}.hidden{display:none!important}
.app-layout{min-height:100vh;display:grid;grid-template-columns:246px minmax(0,1fr)}.sidebar{position:fixed;inset:0 auto 0 0;width:246px;background:white;border-right:1px solid var(--line);padding:31px 23px 20px;display:flex;flex-direction:column;z-index:30}.brand{display:flex;align-items:center;gap:11px;padding:0 8px}.brand>img{width:40px;height:40px}.brand-name{font-family:'Manrope',sans-serif;font-size:23px;letter-spacing:-1px;font-weight:800;line-height:1.15}.brand-name span{font-size:18px;font-weight:400;color:#a7b1a8;margin:0 3px}.brand-sub{font-size:7px;letter-spacing:1.7px;color:#7b8d81;margin-top:5px;font-weight:700}.event-selector{margin:36px 0 31px;display:flex;gap:10px;padding:13px 10px;border:1px solid var(--line);border-radius:12px;align-items:center}.event-selector .event-icon{background:var(--sage);color:var(--green);width:33px;height:36px;border-radius:9px;display:grid;place-items:center}.event-selector strong{font-size:12px;font-weight:650;display:block}.event-selector small{font-size:10px;color:var(--muted);display:block;margin-top:4px}.event-selector>.icon{width:13px;margin-left:auto;color:#9da79f}.nav-label{font-size:9px;letter-spacing:1.7px;color:#98a19a;padding:0 15px;margin-bottom:13px;font-weight:600}.nav-list{display:flex;flex-direction:column;gap:7px}.nav-link{display:flex;align-items:center;gap:12px;text-align:left;padding:13px 15px;border-radius:10px;color:#7b8880;font-size:12px;font-weight:500;transition:background .2s,color .2s,transform .2s;position:relative}.nav-link:hover{background:#f7faf7;color:var(--green);transform:translateX(2px)}.nav-link.active{background:#edf4ed;color:var(--green);font-weight:650}.nav-link .icon{width:19px;height:19px}.nav-link.active:after{content:'';position:absolute;right:13px;width:5px;height:5px;border-radius:50%;background:var(--green)}.nav-link .count{margin-left:auto;border:1px solid #dce5dd;border-radius:5px;min-width:19px;text-align:center;padding:1px 4px;font-size:10px}.sidebar-bottom{margin-top:auto;padding-top:35px}.help-card{background:#f7f9f5;border:1px solid #e9eee6;border-radius:13px;padding:17px 15px;position:relative;overflow:hidden}.help-card .help-symbol{background:white;border:1px solid #e4eadd;display:grid;place-items:center;width:32px;height:32px;border-radius:10px;color:#6b845b;margin-bottom:13px}.help-card h3{font-family:'DM Sans',sans-serif;font-size:12px;letter-spacing:0;margin-bottom:6px}.help-card p{font-size:10px;line-height:1.65;color:#84917f;max-width:155px}.help-card button{margin-top:12px;padding:0;display:flex;gap:8px;align-items:center;color:var(--green);font-weight:650;font-size:10px}.help-card button .icon{width:13px}.demo-switch{border:1px dashed #dce5dd;border-radius:9px;font-size:10px;width:100%;padding:10px 6px;margin-top:16px;color:#6b7d70;display:flex;align-items:center;justify-content:center;gap:6px}.demo-switch .icon{width:14px;height:14px}.user-menu{display:flex;gap:11px;align-items:center;border-top:1px solid var(--line);margin-top:20px;padding:20px 3px 0;width:100%;text-align:left}.avatar{width:35px;height:35px;flex-shrink:0;background:#e7eee1;color:#71865d;border:3px solid #f5f7f1;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:700}.avatar.admin{background:#eee9f7;color:#75678c}.user-menu strong{display:block;font-size:11px;font-weight:600}.user-menu small{display:block;margin-top:4px;color:#9aa39c;font-size:9px}.user-menu>.icon{margin-left:auto;width:13px;color:#9aa39c}.workspace{grid-column:2;min-width:0}.topbar{height:83px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 39px;background:#ffffffb8;gap:16px}.breadcrumb{display:flex;align-items:center;gap:11px;color:#97a39a;font-size:11px}.breadcrumb strong{font-weight:500;color:#52655b}.breadcrumb .icon{width:12px;height:12px}.top-actions{display:flex;align-items:center;gap:20px}.top-congress{font-size:10px;color:#8c978f;border-right:1px solid var(--line);padding-right:22px}.icon-button{width:34px;height:34px;border:1px solid var(--line);border-radius:10px;display:grid;place-items:center;background:white;transition:background .2s}.icon-button:hover{background:var(--sage)}.icon-button .icon{width:16px;height:16px}.language-button{font-size:10px;display:flex;gap:5px;align-items:center;padding:8px 0}.language-button .icon{width:12px}.mobile-toggle{display:none}.content{max-width:1420px;margin:auto;padding:34px 39px 20px}.page-enter{animation:page-in .42s cubic-bezier(.2,.7,.25,1) both}@keyframes page-in{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}.page-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:28px}.page-heading .eyebrow{font-size:9px;margin-bottom:8px}.page-heading h1{margin-bottom:7px}.page-heading p{font-size:12px;color:#829087;line-height:1.65}.location-tag{display:flex;align-items:center;gap:7px;border:1px solid #e3e9e1;padding:9px 12px;border-radius:8px;font-size:9px;font-weight:500;color:#8c998c;white-space:nowrap;background:#fbfcf9}.location-tag .icon{width:13px;height:13px}.wave{display:inline-block;margin-left:5px;font-size:27px;transform:rotate(-8deg)}.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin-bottom:29px}.stat-card{border:1px solid var(--line);background:white;border-radius:13px;padding:18px 20px;display:flex;align-items:center;gap:16px;min-height:96px;box-shadow:var(--shadow)}.stat-icon{width:43px;height:43px;display:grid;place-items:center;border-radius:12px;background:#edf4ee;color:#689574;flex-shrink:0}.stat-icon.lavender{background:#f2eff8;color:#9b88b5}.stat-icon.sand{background:#f8f4e9;color:#b7a56d}.stat-card p{font-size:10px;color:#819087;line-height:1.4;margin-bottom:6px}.stat-value{font-family:'Manrope',sans-serif;font-size:23px;font-weight:800;letter-spacing:-1px;line-height:1.2}.stat-value small{font-family:'DM Sans',sans-serif;font-size:11px;letter-spacing:0;font-weight:400;color:#96a097;margin-left:4px}.stat-note{font-size:9px;color:#8b9a8b;margin-top:5px;display:flex;align-items:center;gap:4px}.stat-note .icon{width:10px;height:10px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr) 286px;gap:25px;align-items:start}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.section-heading h2{font-size:17px}.subtle-link{display:inline-flex;align-items:center;gap:6px;color:#7b8b7c;font-size:10px;padding:0}.subtle-link .icon{width:12px;height:12px}.subtle-link:hover{color:var(--green)}.course-stack{display:grid;gap:16px}.featured-card{background:#1c5a46;color:white;border-radius:16px;padding:25px 27px 23px;position:relative;overflow:hidden;min-height:273px;isolation:isolate;box-shadow:0 8px 25px #184a3e10}.course-topline{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:19px;position:relative;z-index:1}.pill{display:inline-flex;align-items:center;gap:5px;font-size:9px;font-weight:600;border-radius:5px;padding:5px 8px;line-height:1.2;white-space:nowrap}.pill .icon{width:11px;height:11px}.pill.light{color:#e6efde;background:#ffffff12;border:1px solid #ffffff16}.pill.green{background:#eaf3e9;color:#5e8460}.pill.purple{background:#efebf5;color:#8a769f}.pill.orange{background:#fbf3e2;color:#b18c4d}.pill.gray{background:#f0f3f1;color:#829088}.featured-card .course-kicker{color:#a3c1a4;font-size:9px;letter-spacing:1.5px;font-weight:500;margin-bottom:9px}.featured-card h2{font-size:27px;letter-spacing:-.9px;line-height:1.4;max-width:380px;font-weight:600;position:relative;z-index:1}.featured-card h2 strong{font-weight:800;display:block}.course-meta{display:flex;align-items:center;gap:15px;font-size:10px;color:#b0c8b7;margin-top:16px;position:relative;z-index:1}.course-meta span{display:flex;align-items:center;gap:5px}.course-meta .icon{width:13px;height:13px}.featured-card .course-bottom{display:flex;align-items:center;justify-content:space-between;position:relative;z-index:1;margin-top:23px}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid transparent;border-radius:8px;padding:11px 16px;font-size:11px;font-weight:600;line-height:1.4;min-height:39px;transition:transform .18s,background .18s,box-shadow .18s}.button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 12px #1844310e}.button:active:not(:disabled){transform:translateY(0)}.button .icon{width:15px;height:15px}.button.primary{background:var(--green);color:white}.button.primary:hover{background:#124e3c}.button.lime{background:var(--lime);color:#305536}.button.lime:hover{background:#e3f2c2}.button.secondary{border:1px solid #e1e7e1;background:white;color:#5c7562}.button.ghost{color:#85928b;background:none}.button.full{width:100%}.course-bottom>span{font-size:9px;color:#aac6b0;display:flex;align-items:center;gap:5px}.course-bottom>span .icon{width:11px}.botanical{position:absolute;right:-5px;top:45px;width:190px;height:230px;opacity:.55;z-index:0}.featured-card:after{content:'';position:absolute;width:260px;height:260px;border:1px solid #bfd4a012;border-radius:50%;right:-100px;top:-140px;z-index:0}.secondary-course{background:white;border:1px solid var(--line);border-radius:15px;padding:22px 24px;display:grid;grid-template-columns:57px minmax(0,1fr) auto;gap:17px;align-items:center;box-shadow:var(--shadow)}.course-monogram{width:57px;height:68px;border-radius:10px;background:#f2eff7;color:#8a79a3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}.course-monogram strong{font-family:'Manrope',sans-serif;font-size:25px;font-weight:500;line-height:1.2}.course-monogram small{font-size:8px;letter-spacing:1px}.secondary-course h3{font-size:15px;line-height:1.5;margin-top:7px;max-width:260px}.secondary-course .course-meta{color:#a3a99f;font-size:9px;margin-top:9px;gap:10px}.secondary-course .button{padding:9px 10px;font-size:10px;white-space:nowrap}.secondary-course .button .icon{width:12px}.side-panel{background:white;border:1px solid var(--line);border-radius:14px;padding:22px 21px;box-shadow:var(--shadow)}.side-panel h2{font-size:14px;line-height:1.5;margin-bottom:22px}.journey{display:flex;flex-direction:column;gap:0}.journey-step{display:flex;align-items:flex-start;gap:12px;position:relative;padding-bottom:25px}.journey-step:last-child{padding-bottom:0}.journey-step:not(:last-child):before{content:'';position:absolute;left:13px;top:27px;bottom:0;width:1px;background:#e4ebe0}.step-circle{width:27px;height:27px;display:grid;place-items:center;border-radius:50%;border:1px solid #e3e9e1;flex-shrink:0;background:#fafbf9;font-size:10px;color:#adb5aa;z-index:1}.step-circle .icon{width:12px;height:12px}.journey-step.done .step-circle{background:#e8f1e3;color:#6e975d;border-color:#e8f1e3}.journey-step.current .step-circle{background:#1e624a;color:#e0edcf;border-color:#1e624a;box-shadow:0 0 0 4px #edf4e9}.journey-step h3{font-size:10px;font-family:'DM Sans',sans-serif;font-weight:600;letter-spacing:0;margin:3px 0 5px}.journey-step p{font-size:9px;color:#92a08f;line-height:1.6}.journey-step.future h3{color:#9ca79b}.journey-step .inline-label{color:#6c8f66;display:inline-block;font-size:8px;margin-top:5px;background:#f1f6ed;padding:3px 6px;border-radius:4px}.tip-card{background:#f0eef5;border:1px solid #e8e4f0;border-radius:13px;padding:20px;margin-top:17px;color:#80738c}.tip-card .icon{width:20px;height:20px;margin-bottom:10px;color:#a18db0}.tip-card h3{font-size:12px;margin-bottom:7px;color:#6b6178}.tip-card p{font-size:10px;line-height:1.8;color:#958b9e}.before-start{margin-top:29px}.before-start .section-heading{margin-bottom:17px}.instruction-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:white;border:1px solid var(--line);border-radius:13px;padding:20px 4px;box-shadow:var(--shadow)}.instruction{padding:0 20px;display:flex;gap:12px;align-items:flex-start}.instruction+.instruction{border-left:1px solid var(--line)}.instruction>.icon{color:#9aac94;width:20px;height:20px;margin-top:2px}.instruction h3{font-family:'DM Sans',sans-serif;font-size:10px;margin-bottom:5px;letter-spacing:0;font-weight:600}.instruction p{font-size:9px;color:#9aa596;line-height:1.7}.page-footer{display:flex;justify-content:space-between;gap:15px;align-items:center;color:#a9b2a7;font-size:9px;border-top:1px solid var(--line);margin-top:32px;padding:19px 0 0}.footer-brand{display:flex;align-items:center;gap:9px;font-size:9px}.footer-brand .icon{width:14px;height:14px;color:#9caf92}.footer-links{display:flex;gap:15px}.footer-links button{padding:0;font-size:9px;color:#9ba797}.demo-label{display:inline-flex;gap:5px;align-items:center;font-size:8px;color:#aa9a76;letter-spacing:.1px}.demo-label:before{content:'';width:4px;height:4px;border-radius:50%;background:#c5b383}
.course-catalog{display:grid;grid-template-columns:1fr 1fr;gap:23px}.course-catalog .featured-card{min-height:320px}.course-catalog .featured-card.esl{background:#625773}.course-catalog .featured-card.esl .course-kicker{color:#d0c3db}.course-catalog .featured-card.esl .button.lime{background:#e5ddef;color:#665574}.course-catalog .featured-card.esl .course-meta,.course-catalog .featured-card.esl .course-bottom>span{color:#d7cce1}.course-catalog .featured-card h2{max-width:310px}.notice{border:1px solid #e5ebe3;border-radius:11px;background:#f2f6ee;display:flex;align-items:flex-start;gap:11px;padding:16px 19px;color:#6b8267;font-size:11px;line-height:1.7;margin-top:23px}.notice>.icon{width:16px;height:16px;margin-top:3px}.notice.warning{background:#fbf7ed;border-color:#ece5d3;color:#a38a5a}.notice p{font-size:11px}.empty-state{background:white;border:1px solid var(--line);border-radius:16px;padding:50px 25px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:13px}.empty-state>.icon{width:34px;height:34px;color:#91a783;margin-bottom:5px}.empty-state p{max-width:440px;color:var(--muted);font-size:12px}.empty-state h2{font-size:19px}.results-grid{display:grid;grid-template-columns:1fr 1fr;gap:23px}.result-card{background:white;border:1px solid var(--line);border-radius:17px;padding:25px}.result-card-head{display:flex;justify-content:space-between;align-items:center}.result-card h2{font-size:18px;margin:20px 0 9px}.result-card p{font-size:12px;color:var(--muted)}.result-circle{width:160px;height:160px;position:relative;margin:25px auto;display:grid;place-items:center}.result-circle svg{position:absolute;inset:0;width:160px;height:160px;transform:rotate(-90deg);fill:none;stroke-width:8}.result-circle .track{stroke:#edf2e9}.result-circle .fill{stroke:#7b9f6f;stroke-linecap:round;transition:stroke-dasharray .8s ease}.result-circle strong{font-size:36px;letter-spacing:-1.4px;font-family:'Manrope',sans-serif}.result-circle small{display:block;text-align:center;font-size:11px;color:#98a48f;margin-top:4px}.result-detail{border-top:1px solid var(--line);padding-top:16px;display:flex;justify-content:space-between;font-size:11px;color:#91a08c}.result-summary{text-align:center}.result-summary h1{font-size:29px}.result-summary p{max-width:460px;margin:12px auto 25px;color:#82917c}.result-summary .result-circle{width:190px;height:190px;margin:5px auto 27px}.result-summary .result-circle svg{width:190px;height:190px}.result-summary .result-circle strong{font-size:43px}.result-summary .result-meta{display:flex;justify-content:center;gap:35px;margin-bottom:30px}.result-meta strong{font-family:'Manrope',sans-serif;font-size:19px;display:block}.result-meta span{font-size:10px;color:#99a68f}.result-summary .row{justify-content:center}.result-summary>.icon{width:35px;height:35px;color:#70935d}.help-layout{display:grid;grid-template-columns:1.65fr 1fr;gap:24px}.panel{background:white;border:1px solid var(--line);border-radius:15px;padding:25px}.panel h2{margin-bottom:18px;font-size:17px}.faq-item{border-bottom:1px solid var(--line)}.faq-item:last-child{border-bottom:0}.faq-item summary{padding:19px 0;cursor:pointer;font-size:13px;font-weight:550;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:10px}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary .icon{width:15px;height:15px;color:#93a08c;transition:transform .25s}.faq-item[open] summary .icon{transform:rotate(180deg)}.faq-item p{font-size:12px;color:#8b9785;padding:0 23px 19px 0}.event-banner{width:100%;display:block;border:1px solid #eff1ec;border-radius:8px;margin-bottom:19px}.event-info p{font-size:12px;color:var(--muted);margin-bottom:15px}.event-info .row{font-size:11px;color:#8e9a87;margin:13px 0}.event-info .row .icon{width:16px;height:16px}.guide-steps{display:grid;gap:19px}.guide-steps p{font-size:12px;color:#8d9987;margin-top:6px}.guide-steps h3{font-size:13px}.guide-steps strong.number{width:29px;height:29px;border-radius:8px;background:var(--sage);display:grid;place-items:center;color:#719768;font-size:12px;flex-shrink:0}.quiz-toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:22px}.quiz-toolbar .subtle-link{font-size:11px}.saved-state{display:flex;align-items:center;gap:5px;font-size:10px;color:#8a9e83}.saved-state .icon{width:13px;height:13px}.quiz-layout{display:grid;grid-template-columns:minmax(0,1fr) 238px;gap:25px;align-items:start}.quiz-card{background:white;border:1px solid var(--line);border-radius:16px;padding:29px 30px}.quiz-progress-label{display:flex;justify-content:space-between;font-size:10px;color:#81927a;margin-bottom:10px}.progress-track{height:5px;border-radius:10px;overflow:hidden;background:#eef2e9}.progress-fill{height:100%;border-radius:10px;background:#82a56e;transition:width .4s ease}.question-category{margin:30px 0 12px;font-size:9px;letter-spacing:1.5px;color:#9aa991;font-weight:600;text-transform:uppercase}.question-title{font-size:21px;letter-spacing:-.55px;line-height:1.6;font-weight:650;white-space:pre-line}.question-hint{font-size:11px;color:#a0a995;margin-top:10px}.answers{display:grid;gap:11px;margin-top:26px}.answer-option{border:1px solid #e6ebe2;border-radius:11px;display:flex;align-items:center;gap:13px;padding:16px 17px;cursor:pointer;transition:border-color .18s,background .18s,transform .18s;position:relative;min-height:65px}.answer-option:hover{border-color:#b7cab0;background:#fafcf7;transform:translateX(2px)}.answer-option.selected{border-color:#7ba16d;background:#f1f7eb;box-shadow:0 0 0 1px #7ba16d16}.answer-option input{position:absolute;opacity:0;width:1px;height:1px}.answer-option:focus-within{outline:3px solid #a2bf91;outline-offset:3px}.answer-letter{width:30px;height:30px;border:1px solid #e3e9de;border-radius:8px;display:grid;place-items:center;font-size:11px;color:#a1ad97;background:#fff;flex-shrink:0}.selected .answer-letter{background:#dfeccd;border-color:#dfeccd;color:#5c8051}.answer-text{font-size:12px;line-height:1.8;color:#6b7b62;flex:1}.answer-check{width:17px;height:17px;border:1px solid #d7e1d0;border-radius:50%;display:grid;place-items:center;background:white;flex-shrink:0}.answer-check .icon{width:11px;height:11px;opacity:0}.selected .answer-check{background:#729962;border-color:#729962;color:white}.selected .answer-check .icon{opacity:1}.quiz-pagination{border-top:1px solid var(--line);margin-top:28px;padding-top:22px;display:flex;justify-content:space-between;gap:15px}.question-map{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin-top:18px}.question-index{aspect-ratio:1;border:1px solid #e6ebe0;border-radius:7px;background:#fafbf8;font-size:10px;color:#9ba78f;transition:background .2s,transform .2s}.question-index:hover{transform:translateY(-2px);border-color:#a4bd92}.question-index.answered{background:#e8f2dd;border-color:#e0eccf;color:#789966}.question-index.current{background:#2d684b;border-color:#2d684b;color:white;box-shadow:0 0 0 3px #ecf3e5}.map-legend{display:flex;gap:13px;margin-top:17px;font-size:8px;color:#9ca891}.map-legend span{display:flex;align-items:center;gap:5px}.map-legend i{width:6px;height:6px;background:#e4eddc;border-radius:2px}.map-legend span+span i{background:#2d684b}.map-summary{font-size:10px;color:#91a184;margin-top:18px;border-top:1px solid var(--line);padding-top:16px}.quiz-sidebar .notice{font-size:10px;margin-top:17px;padding:14px}.quiz-sidebar .notice p{font-size:10px}.quiz-sidebar .side-panel{padding:20px 17px}.quiz-sidebar .side-panel h3{font-size:12px}
.admin-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:27px}.admin-stats .stat-card{padding:18px 15px;gap:12px}.admin-stats .stat-icon{width:35px;height:38px}.admin-stats .stat-value{font-size:25px}.admin-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:23px;margin-bottom:25px}.admin-progress-row{padding:15px 0}.admin-progress-row+.admin-progress-row{border-top:1px solid var(--line)}.admin-progress-row h3{font-family:'DM Sans',sans-serif;font-size:12px;font-weight:600}.admin-progress-row p{font-size:10px;color:#9aa28f;margin-top:4px;margin-bottom:12px}.admin-progress-row .row{margin-bottom:9px}.admin-progress-row .row>strong{font-size:11px;color:#78966a}.admin-progress-row .progress-track{height:6px}.admin-progress-row.esl .progress-fill{background:#a99abb}.admin-progress-row.esl .row>strong{color:#9c8baa}.admin-note{background:#f4f7ef;padding:17px;border-radius:10px;display:flex;gap:11px;margin-top:20px}.admin-note .icon{width:18px;height:18px;color:#92a27f}.admin-note p{font-size:10px;color:#93a086}.table-panel{background:white;border:1px solid var(--line);border-radius:15px;overflow:hidden}.table-heading{padding:21px 23px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line)}.table-heading h2{font-size:15px}.table-heading h2 small{font-family:'DM Sans',sans-serif;font-weight:400;color:#a6afa0;font-size:10px;letter-spacing:0;margin-left:6px}.table-controls{padding:16px 22px;display:flex;justify-content:space-between;gap:15px;align-items:center;border-bottom:1px solid var(--line)}.search-field{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:8px;padding:9px 12px;background:#fff;min-width:240px}.search-field .icon{width:15px;height:15px;color:#a1ac98}.search-field input{border:0;outline:0!important;min-width:0;width:100%;font-size:11px;color:#69795f;background:none}.search-field input::placeholder{color:#adb5a6}.filter-select{border:1px solid var(--line);border-radius:8px;padding:9px 12px;background:white;font-size:10px;color:#829076;min-height:35px}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th{font-size:9px;letter-spacing:.35px;font-weight:500;color:#a1aa98;background:#fafbf8;padding:12px 22px}td{font-size:11px;color:#859279;padding:16px 22px;border-top:1px solid #f0f3ec}tbody tr:hover{background:#fcfdfb}.person-cell{display:flex;align-items:center;gap:10px}.person-cell .avatar{width:29px;height:29px;font-size:9px;border:0}.person-cell strong{display:block;font-size:11px;font-weight:550;color:#53684b}.person-cell small{font-size:9px;display:block;margin-top:4px;color:#a3ad99}.table-footer{border-top:1px solid var(--line);padding:15px 22px;display:flex;justify-content:space-between;align-items:center;font-size:9px;color:#a4ac9c}.table-action{display:flex;align-items:center;gap:5px;font-size:10px;color:#7b956b;padding:6px;border-radius:5px}.table-action:hover{background:var(--sage)}.table-action .icon{width:13px;height:13px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:18px}.field label{font-size:11px;font-weight:550;color:#7c8c70}.field input,.field select,.field textarea{border:1px solid #e1e7dc;border-radius:8px;padding:11px 12px;color:#526749;background:white;min-width:0;outline:none;font-size:12px}.field input:focus,.field select:focus,.field textarea:focus{border-color:#99b28b;box-shadow:0 0 0 3px #ebf2e5}.field small{font-size:10px;color:#a0ab93;line-height:1.5}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 17px}.form-grid .wide{grid-column:1/-1}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 0;margin-bottom:17px;border-bottom:1px solid var(--line)}.toggle-row strong{font-size:12px;font-weight:550}.toggle-row p{font-size:10px;color:#9ba68c;margin-top:4px}.switch{position:relative;width:36px;height:21px;flex-shrink:0}.switch input{width:100%;height:100%;opacity:0;position:absolute;inset:0;z-index:1;cursor:pointer;margin:0}.switch span{position:absolute;inset:0;background:#dce4d6;border-radius:20px;transition:background .2s}.switch span:after{content:'';position:absolute;width:15px;height:15px;border-radius:50%;background:white;left:3px;top:3px;transition:transform .2s;box-shadow:0 1px 3px #0001}.switch input:checked+span{background:#6e945c}.switch input:checked+span:after{transform:translateX(15px)}.switch input:focus-visible+span{outline:3px solid #bfd0af;outline-offset:4px}.bank-item{border-bottom:1px solid var(--line);padding:18px 0}.bank-item:last-child{border:0}.bank-item h3{font-size:12px;font-weight:600;line-height:1.8;white-space:pre-line}.bank-item ol{padding-left:22px;margin:12px 0}.bank-item li{font-size:11px;color:#94a086;line-height:1.8;margin-top:6px;padding-left:4px}.bank-item li.correct{color:#5f8752;font-weight:600}.bank-item .source{font-size:9px;color:#afb7a4}.csv-drop{border:1px dashed #cddbc3;background:#f8faf5;border-radius:12px;padding:27px 20px;text-align:center;position:relative;display:flex;flex-direction:column;align-items:center;gap:10px;margin-bottom:19px}.csv-drop>.icon{width:26px;height:26px;color:#8eaa7a}.csv-drop p{font-size:11px;color:#8d9f7e}.csv-drop input{max-width:100%;font-size:10px;color:#93a181}.import-preview{max-height:180px;overflow:auto;border:1px solid var(--line);border-radius:8px;margin-top:16px}.import-preview td,.import-preview th{padding:9px 12px;font-size:10px}.inline-error{font-size:11px;color:#b36d58;line-height:1.7;margin-top:13px}.login-page{min-height:100vh;display:grid;grid-template-columns:1.05fr 1fr;background:#fcfdf9}.login-art{background:#205c47;padding:50px 55px;color:white;display:flex;flex-direction:column;position:relative;overflow:hidden}.login-art .brand-sub{color:#bdd1b3}.login-art .brand-name span{color:#8fb493}.login-art .brand img{width:43px;height:43px}.login-art h1{font-size:49px;line-height:1.3;letter-spacing:-2px;max-width:430px;margin:auto 0 20px;z-index:1}.login-art h1 em{font-family:Georgia,serif;color:#d7e9b6;font-weight:400}.login-art>p{color:#b5ceb6;max-width:320px;font-size:13px;z-index:1}.login-art .botanical{right:-45px;top:200px;width:330px;height:410px;opacity:.4}.login-art .login-footer{margin-top:auto;padding-top:60px;font-size:10px;color:#92b597}.login-form{display:flex;flex-direction:column;justify-content:center;padding:65px 70px;max-width:590px;margin:auto;width:100%}.login-form h2{font-size:27px;margin:12px 0}.login-form>p{font-size:12px;color:#94a186;margin-bottom:28px}.login-form .notice{margin:0 0 25px}.login-form .brand{display:none}.login-form .demo-buttons{display:grid;gap:10px}.login-admin-link{margin-top:28px;font-size:10px;color:#8b9c7f;padding:0;text-align:center}.login-error{font-size:12px;color:#ae6754;margin:15px 0}.login-form .form-divider{height:1px;background:var(--line);margin:26px 0}
#toast-region{position:fixed;bottom:27px;left:calc(50% + 100px);transform:translateX(-50%);z-index:100;display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none}.toast{background:#294f3c;color:#f4f8ec;border-radius:11px;padding:13px 20px;font-size:12px;box-shadow:0 9px 30px #15371d26;display:flex;gap:9px;align-items:center;animation:toast-in .25s ease;max-width:min(500px,90vw);line-height:1.6}.toast.error{background:#875343}.toast .icon{width:16px;height:16px}@keyframes toast-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.modal-overlay{position:fixed;inset:0;background:#1e342d66;backdrop-filter:blur(4px);z-index:80;display:flex;align-items:center;justify-content:center;padding:25px;animation:fade-in .2s ease}.modal{background:white;border:1px solid #e9eee3;border-radius:19px;width:min(520px,100%);box-shadow:0 25px 90px #15271c2b;max-height:90vh;overflow:auto;animation:modal-in .25s ease}.modal.wide{width:min(760px,100%)}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:24px 27px 16px}.modal-header h2{font-size:19px}.modal-body{padding:8px 27px 27px}.modal-body>p{font-size:12px;color:#8c9b80;margin-bottom:18px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);margin-top:25px;padding-top:20px}.modal-body .result-summary{padding:5px 10px}.modal-body .result-summary p{font-size:12px}.modal-body .result-circle{width:150px;height:150px}.modal-body .result-circle svg{width:150px;height:150px}.modal-body .result-circle strong{font-size:34px}.profile-details{display:grid;gap:18px}.profile-details dt{font-size:10px;color:#9eaa92;margin-bottom:6px}.profile-details dd{font-size:13px;margin:0;color:#627a53}.profile-heading{display:flex;align-items:center;gap:13px;margin-bottom:24px}.profile-heading .avatar{width:48px;height:48px;font-size:17px}.profile-heading h3{font-size:16px}.profile-heading p{font-size:11px;color:#96a28a;margin-top:5px}.initial-loader{min-height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:20px}.initial-loader p{font-size:12px;color:#8ca07d}.loader-mark{width:38px;height:38px;border:2px solid #dce8d4;border-top-color:#7d9c6d;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fade-in{from{opacity:0}to{opacity:1}}@keyframes modal-in{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(min-width:1600px){.content{padding-top:42px}.featured-card{min-height:305px;padding:29px 32px}.featured-card h2{font-size:31px}.course-topline{margin-bottom:23px}.featured-card .course-bottom{margin-top:30px}.dashboard-grid{grid-template-columns:minmax(0,1fr) 310px}.stat-card{min-height:108px}.side-panel{padding:25px}.journey-step{padding-bottom:30px}.before-start{margin-top:33px}}
@media(max-width:1250px){.sidebar{width:220px;padding-left:17px;padding-right:17px}.app-layout{grid-template-columns:220px minmax(0,1fr)}.topbar{padding:0 27px}.content{padding:29px 27px 20px}.dashboard-grid{grid-template-columns:minmax(0,1fr) 250px;gap:20px}.featured-card{padding:23px}.featured-card h2{font-size:24px;max-width:320px}.botanical{right:-55px;opacity:.3}.secondary-course{grid-template-columns:45px 1fr;gap:13px;padding:18px}.secondary-course .button{grid-column:2;justify-self:start}.secondary-course .course-monogram{width:45px;height:60px;grid-row:1/3}.secondary-course h3{font-size:13px;max-width:none}.secondary-course .course-meta{margin-top:6px}.stat-card{gap:11px;padding:17px 14px}.stat-icon{width:35px;height:37px;border-radius:10px}.stat-value{font-size:21px}.stat-value small{font-size:10px}.side-panel{padding:20px 17px}.instruction{padding:0 14px;gap:9px}.admin-stats{gap:12px}.admin-stats .stat-card{gap:9px;padding:15px 12px}.admin-stats .stat-icon{width:29px;height:33px}.admin-stats .stat-icon .icon{width:17px;height:17px}}
@media(max-width:1050px){.app-layout{grid-template-columns:200px minmax(0,1fr)}.sidebar{width:200px;padding-left:13px;padding-right:13px}.brand-name{font-size:21px}.brand>img{width:34px;height:34px}.brand-sub{font-size:6px;letter-spacing:1.4px}.topbar{padding:0 23px}.content{padding:27px 23px 20px}.dashboard-grid{grid-template-columns:1fr}.dashboard-aside{display:grid;grid-template-columns:1.3fr 1fr;gap:17px}.dashboard-aside .side-panel h2{margin-bottom:20px}.dashboard-aside .tip-card{margin:0;display:flex;justify-content:center;flex-direction:column}.journey-step{padding-bottom:19px}.course-stack{grid-template-columns:1.2fr 1fr;gap:17px}.featured-card{min-height:285px}.featured-card h2{font-size:22px}.course-topline{margin-bottom:21px}.course-meta{font-size:9px;gap:10px}.featured-card .course-bottom>span{display:none}.secondary-course{display:flex;flex-direction:column;align-items:flex-start;gap:15px;padding:23px}.secondary-course .course-monogram{height:50px;width:43px}.secondary-course .course-meta{margin-top:14px}.secondary-course .button{margin-top:auto}.secondary-course h3{font-size:16px}.quiz-layout{grid-template-columns:minmax(0,1fr) 200px;gap:17px}.quiz-card{padding:25px 23px}.question-title{font-size:18px}.quiz-sidebar .side-panel{padding:18px 13px}.question-map{gap:5px}.admin-stats{grid-template-columns:repeat(2,1fr)}.admin-grid{grid-template-columns:1fr}.admin-grid>.panel:last-child{display:none}.top-congress{display:none}.help-layout{grid-template-columns:1fr}.settings-grid{gap:17px}.panel{padding:22px}.location-tag{display:none}.course-catalog .featured-card h2{font-size:22px}.login-art{padding:40px 35px}.login-art h1{font-size:41px}.login-form{padding:55px 40px}}
@media(max-width:760px){.app-layout{display:block}.sidebar{width:245px;transform:translateX(-100%);transition:transform .25s ease;box-shadow:5px 0 35px #1f392c15}.app-layout.menu-open .sidebar{transform:translateX(0)}.sidebar-shade{display:none;position:fixed;inset:0;background:#1b392b66;z-index:29}.menu-open .sidebar-shade{display:block}.mobile-toggle{display:grid;border:0;background:transparent;width:27px}.topbar{height:65px;padding:0 20px;position:sticky;top:0;z-index:20;backdrop-filter:blur(12px);background:#f9fbf8e8}.breadcrumb{gap:7px}.breadcrumb>span:first-of-type,.breadcrumb>.icon{display:none}.top-actions{gap:15px}.top-actions>.avatar{display:none}.content{padding:25px 20px 20px}.page-heading{margin-bottom:23px}.page-heading h1{font-size:26px}.page-heading p{font-size:11px;max-width:300px}.stats-grid{gap:9px;margin-bottom:25px}.stat-card{padding:13px 10px;display:block;min-height:100px;border-radius:11px}.stat-icon{display:none}.stat-card p{font-size:9px;margin-bottom:9px}.stat-value{font-size:23px}.stat-value small{font-size:9px;display:inline-block;margin-left:1px}.stat-note{font-size:8px}.dashboard-grid{gap:25px}.section-heading h2{font-size:16px}.section-heading .subtle-link{font-size:9px}.course-stack{grid-template-columns:1fr}.featured-card{min-height:273px;padding:23px}.featured-card h2{font-size:27px;max-width:310px}.featured-card .course-bottom>span{display:flex}.botanical{right:-20px;opacity:.45}.secondary-course{display:grid;grid-template-columns:49px 1fr auto;align-items:center;gap:13px;padding:20px 18px}.secondary-course .course-monogram{width:49px;height:61px;grid-row:auto}.secondary-course h3{font-size:13px;max-width:220px}.secondary-course .course-meta{font-size:8px;gap:9px;margin-top:8px}.secondary-course .button{grid-column:auto;padding:9px;font-size:0;min-height:34px;margin:0}.secondary-course .button .icon{width:14px;height:14px}.dashboard-aside{grid-template-columns:1fr 1fr;gap:13px}.dashboard-aside .side-panel h2{font-size:13px}.dashboard-aside .tip-card{padding:18px}.journey-step{gap:10px;padding-bottom:20px}.journey-step h3{font-size:10px}.journey-step p{font-size:9px}.journey-step .inline-label{font-size:7px}.tip-card h3{font-size:12px}.tip-card p{font-size:10px}.instruction-strip{padding:5px 18px;grid-template-columns:1fr}.instruction{padding:16px 0;gap:14px}.instruction+.instruction{border-left:0;border-top:1px solid var(--line)}.instruction h3{font-size:11px}.instruction p{font-size:10px}.before-start{margin-top:26px}.page-footer{font-size:8px;flex-wrap:wrap;padding-top:16px;gap:10px}.footer-brand{font-size:8px}.footer-links{gap:12px}.footer-links button{font-size:8px}#toast-region{left:50%;bottom:20px}.course-catalog,.results-grid,.settings-grid{grid-template-columns:1fr;gap:17px}.course-catalog .featured-card{min-height:285px}.course-catalog .featured-card h2{font-size:28px}.quiz-layout{grid-template-columns:1fr}.quiz-sidebar{grid-row:1}.quiz-sidebar .notice,.quiz-sidebar h3,.map-legend,.map-summary{display:none}.quiz-sidebar .side-panel{padding:12px 15px}.question-map{margin:0;grid-template-columns:repeat(10,1fr);gap:6px}.question-index{border-radius:5px;font-size:9px}.quiz-toolbar{margin-bottom:17px}.quiz-card{padding:24px 19px}.question-title{font-size:19px}.question-category{margin-top:24px}.answer-option{padding:14px 12px;gap:10px}.answer-text{font-size:12px}.answer-letter{width:26px;height:28px;font-size:10px}.answer-check{width:15px;height:15px}.quiz-pagination .button{padding:10px 12px;font-size:10px}.admin-stats .stat-card{display:flex;padding:17px 14px;min-height:90px}.admin-stats .stat-icon{display:grid}.admin-stats .stat-value{font-size:25px}.admin-stats .stat-card p{font-size:10px;margin-bottom:5px}.table-heading{padding:18px}.table-heading h2{font-size:13px}.table-controls{padding:14px;gap:10px}.search-field{min-width:0;flex:1;padding:9px}.filter-select{max-width:135px;padding:9px 7px;font-size:9px}.search-field input{font-size:10px}.table-heading .button{font-size:10px;padding:9px 11px}th,td{padding:13px 17px}.table-footer{padding:13px 17px}.admin-page-heading{align-items:flex-start}.admin-page-heading>.row{flex-direction:column;align-items:flex-end;gap:7px}.admin-page-heading .button{padding:9px 10px;font-size:9px}.admin-page-heading h1{font-size:25px}.help-layout{gap:18px}.modal-overlay{padding:15px}.modal{max-height:94vh;border-radius:15px}.modal-header{padding:20px 21px 13px}.modal-header h2{font-size:17px}.modal-body{padding:8px 21px 23px}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.modal-actions{flex-wrap:wrap}.login-page{display:block}.login-art{display:none}.login-form{min-height:100vh;padding:40px 28px;max-width:470px}.login-form .brand{display:flex;padding:0;margin-bottom:45px}.login-form h2{font-size:26px}.result-summary h1{font-size:25px}.result-summary .row{flex-wrap:wrap}.result-meta{gap:20px}.topbar .icon-button{width:31px;height:31px}.page-heading .wave{font-size:23px}.profile-heading h3{font-size:15px}}
@media(max-width:380px){.content{padding-left:15px;padding-right:15px}.featured-card h2{font-size:24px}.featured-card{padding:21px}.featured-card .course-bottom>span{display:none}.dashboard-aside{grid-template-columns:1fr}.dashboard-aside .tip-card{display:none}.secondary-course{grid-template-columns:43px 1fr auto;gap:11px}.secondary-course .course-monogram{width:43px}.secondary-course h3{font-size:12px}.secondary-course .course-meta{flex-wrap:wrap;gap:5px}.question-map{gap:5px}.stat-value{font-size:21px}}
/* Contraste y tamano de los textos que contienen indicaciones importantes. */
.sidebar{overflow-y:auto}
.page-heading p,.stat-card p,.stat-note,.instruction p,.journey-step p,.tip-card p,.help-card p,.question-hint,.saved-state,.map-summary,.result-card p,.panel>.muted,.faq-item p,.field small,.modal-body>p{color:#687b6c}
.nav-link{font-size:13px}.page-heading p{font-size:13px}.pill{font-size:10px}.stat-card p{font-size:11px}.stat-note{font-size:10px}.journey-step h3{font-size:11px}.journey-step p,.tip-card p,.instruction p{font-size:11px}.instruction h3{font-size:11px}.help-card p{font-size:11px}.answer-text{color:#445b3e}.course-meta{font-size:11px}.featured-card .course-meta{color:#d1e0ce}.question-hint{font-size:12px}.saved-state{font-size:11px}.table-action{font-size:11px}th{color:#65775e}td{color:#62775a}.person-cell small{color:#7d8f73}.field label{color:#5a7150}.field small{font-size:11px}.map-summary{font-size:11px}.quiz-progress-label{color:#617957}.modal-body>p{font-size:13px}.guide-steps p{color:#738568}.guide-steps h3{color:#435d39}
@media(max-width:760px){.page-heading p{font-size:12px}.nav-link{font-size:13px}.stat-card p,.stat-note{font-size:10px}.stat-card p{min-height:28px}.stat-note .icon{display:none}.pill{font-size:9px}.course-meta{font-size:10px}.journey-step h3,.journey-step p{font-size:10px}.help-card p{font-size:11px}.tip-card p{font-size:11px}.instruction h3{font-size:12px}.instruction p{font-size:11px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{.sidebar,.topbar,.page-footer,.button,.quiz-sidebar,.demo-label,.notice,.result-card button,#toast-region,#modal-root{display:none!important}.app-layout{display:block}.workspace{margin:0}.content{padding:20px;max-width:none}.results-grid{grid-template-columns:1fr 1fr}.result-card{break-inside:avoid}.page-heading{margin-bottom:30px}body{background:white}.print-note{display:block!important;font-size:10px;color:#666;margin-top:25px}}

/* Logo institucional: blanco sobre el panel verde, original sobre fondo claro. */
.login-art .brand.brand-gel-official{height:88px;min-height:88px;padding:0;position:relative;z-index:1}
.login-art .brand-gel-official>img{width:190px;height:auto;max-width:100%;filter:brightness(0) invert(1);flex-shrink:0}
.login-form .brand-gel-official>img{width:160px;height:auto;max-width:100%}
@media(max-width:760px){.login-form .brand.brand-gel-official{margin-bottom:26px}}
