:root{--ink:#172d2b;--muted:#6c7975;--green:#17634e;--lime:#d4f58a;--paper:#f5f6f2;--line:#e3e8e1;--white:#fff;--shadow:0 12px 35px #173d2e08}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.5 'Segoe UI',Arial,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}button,a,input,select,textarea{outline-offset:4px}button{transition:background .18s,transform .18s}button:hover{filter:brightness(.97)}button:active{transform:translateY(1px)}svg{vertical-align:middle}button:disabled{cursor:not-allowed;opacity:.5}a{color:var(--green)}.app{display:grid;grid-template-columns:235px 1fr;min-height:100vh}.sidebar{padding:34px 20px 24px;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;width:235px;z-index:10}.brand{font-size:32px;letter-spacing:-1.7px;font-weight:750;display:flex;align-items:center;gap:10px;padding:0 13px}.brandmark{background:var(--green);color:var(--lime);width:35px;height:39px;border-radius:12px;display:grid;place-items:center;font-size:28px}.brand small{color:var(--green)}.tagline{font-size:10px;letter-spacing:2.4px;margin:4px 0 37px 58px;color:var(--muted)}.navlabel{font-size:10px;color:#89948f;letter-spacing:1.8px;margin:15px 14px 12px;font-weight:700}.nav{display:flex;flex-direction:column;gap:6px}.nav button{display:flex;align-items:center;gap:12px;text-align:left;border:0;background:transparent;padding:12px 14px;border-radius:9px;color:#697971;font-weight:550}.nav button.active{background:#eaf2e9;color:var(--green)}.nav button svg{width:19px;height:19px}.nav button .count{margin-left:auto;background:#d1e5d6;border-radius:5px;font-size:10px;padding:1px 6px}.sidebottom{margin-top:auto;padding-top:45px}.promo{background:#f1f5e9;border-radius:12px;padding:17px;font-size:12px}.promo strong{font-size:14px;display:block;margin:9px 0 5px}.promo p{color:var(--muted);margin:0 0 14px}.promo button{background:white;border:1px solid #dbe5d0;border-radius:7px;padding:8px;width:100%;font-size:12px;color:var(--green)}.sidefoot{font-size:10px;color:var(--muted);text-align:center;margin:22px 0 0}.content{grid-column:2;min-width:0}.topbar{height:85px;padding:0 40px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#fff9;gap:15px}.breadcrumb{color:var(--muted);font-size:12px}.breadcrumb b{color:var(--ink);font-weight:500}.topright{display:flex;align-items:center;gap:16px}.demo{font-size:10px;letter-spacing:.8px;padding:5px 8px;border:1px solid #cfdacb;border-radius:5px;color:#5c725d;white-space:nowrap}.profile{display:flex;align-items:center;gap:10px}.avatar{height:36px;width:36px;display:grid;place-items:center;border-radius:50%;background:#efdec5;color:#765c39;font-weight:650;flex-shrink:0}.profile strong{display:block;font-size:12px}.profile span{font-size:10px;color:var(--muted)}.role{border:0;background:transparent;color:var(--green);font-size:12px;max-width:125px}.main{max-width:1510px;margin:auto;padding:31px 40px 40px}.eyebrow{color:var(--green);font-size:10px;letter-spacing:2px;font-weight:700;text-transform:uppercase}.heading{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:24px}.heading h1{font-size:28px;letter-spacing:-1px;margin:4px 0 4px;font-weight:650}.heading p{color:var(--muted);margin:0;font-size:13px}.date{font-size:11px;color:var(--muted)}.btn{display:inline-flex;justify-content:center;align-items:center;gap:8px;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:8px;padding:10px 15px;font-size:12px;font-weight:600;text-decoration:none}.btn.primary{background:var(--green);border-color:var(--green);color:#fff}.btn.lime{background:var(--lime);border-color:var(--lime);color:#173d2f}.btn.ghost{background:transparent;border-color:transparent;color:var(--green)}.btn.small{padding:7px 11px;font-size:11px}.hero{border-radius:17px;background:#153e34;color:#fff;display:grid;grid-template-columns:1.15fr 1fr;overflow:hidden;min-height:246px;margin-bottom:25px;position:relative}.herotext{padding:30px 34px;z-index:1}.hero .eyebrow{color:var(--lime)}.hero h2{font-size:32px;line-height:1.18;letter-spacing:-1.1px;margin:14px 0 12px;font-weight:550}.hero h2 em{color:var(--lime);font-style:normal}.hero p{font-size:12px;color:#c1d2c9;max-width:345px;margin:0 0 20px}.heroart{position:relative;min-width:0;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#367a5840,transparent 70%)}.heroart svg{width:100%;height:230px;overflow:visible}.statrow{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:28px}.stat{border:1px solid var(--line);background:#fff;border-radius:11px;padding:17px 19px;display:flex;align-items:center;gap:15px}.stat .symbol{height:39px;width:39px;border-radius:11px;background:#f2f5ee;display:grid;place-items:center;color:var(--green)}.stat strong{font-size:22px;font-weight:650;letter-spacing:-.5px}.stat p{font-size:11px;color:var(--muted);margin:0}.stat .sub{margin-left:auto;font-size:10px;color:var(--green);background:#eef6e8;border-radius:6px;padding:4px 7px}.twocol{display:grid;grid-template-columns:minmax(0,1fr) 294px;gap:23px;align-items:start}.sectionhead{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;gap:10px}.sectionhead h2{font-size:17px;letter-spacing:-.3px;margin:0;font-weight:650}.sectionhead p{margin:4px 0 0;color:var(--muted);font-size:12px}.panel{background:#fff;border:1px solid var(--line);border-radius:12px;padding:21px;box-shadow:var(--shadow)}.coursegrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.course{border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden;box-shadow:var(--shadow)}.cover{height:133px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#e7ecdf}.cover svg{height:140px;width:100%}.cover .badge{position:absolute;left:13px;top:12px;background:#ffffffd9;color:#305044;backdrop-filter:blur(4px);font-size:9px;padding:4px 7px;border-radius:4px;letter-spacing:.7px;font-weight:650}.coursebody{padding:17px}.category{font-size:9px;letter-spacing:1.3px;text-transform:uppercase;color:var(--green);font-weight:700}.course h3{font-size:15px;line-height:1.4;margin:6px 0 9px;letter-spacing:-.2px}.meta{display:flex;gap:12px;color:var(--muted);font-size:10px;flex-wrap:wrap}.instructor{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:10px;margin:13px 0}.tinyavatar{background:#ece6db;border-radius:50%;width:23px;height:23px;display:grid;place-items:center;font-size:8px;color:#536859}.progresslabel{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;margin:13px 0 6px}.progress{height:5px;border-radius:4px;background:#edf0e9;overflow:hidden}.progress i{display:block;height:100%;background:#91b66f;border-radius:4px}.coursefooter{border-top:1px solid var(--line);margin-top:15px;padding-top:12px;display:flex;justify-content:space-between;align-items:center;gap:8px}.coursefooter .price{font-size:14px;font-weight:650}.coursefooter .price small{font-size:9px;color:var(--muted);font-weight:400;display:block}.agenda{padding:20px}.agenda h3{font-size:15px;margin:0 0 17px}.event{display:flex;gap:12px;padding:16px 0;border-top:1px solid var(--line)}.day{background:#f2f4ed;border-radius:8px;width:42px;min-width:42px;text-align:center;padding:5px;color:var(--green);align-self:start}.day small{display:block;font-size:8px;letter-spacing:1px}.day b{font-size:20px;line-height:1.2}.event h4{font-size:12px;margin:0 0 4px}.event p{font-size:10px;color:var(--muted);margin:0 0 7px}.pill{display:inline-block;font-size:9px;background:#edf4e8;color:#416a3a;border-radius:4px;padding:3px 6px}.pill.amber{background:#fff2d9;color:#8f641c}.financecard{background:#e9eedc;border-radius:12px;padding:22px;margin-top:18px;position:relative}.financecard .mini{font-size:9px;text-transform:uppercase;letter-spacing:1.5px;color:#66804f}.financecard h3{font-size:21px;line-height:1.2;letter-spacing:-.6px;margin:10px 0}.financecard p{font-size:11px;color:#68775c;margin:0 0 16px}.below{margin-top:27px;padding:19px 22px;display:flex;align-items:center;gap:15px;background:#fff;border:1px solid var(--line);border-radius:12px}.below strong{font-size:13px}.below p{font-size:11px;color:var(--muted);margin:3px 0 0}.below .btn{margin-left:auto}.toolbar{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.search{position:relative;flex:1;min-width:180px}.search input{width:100%;padding:11px 14px;border:1px solid var(--line);background:white;border-radius:8px}.filter{border:1px solid var(--line);border-radius:8px;background:white;padding:9px 13px;color:var(--muted);font-size:12px}.filter.active{background:var(--green);color:#fff;border-color:var(--green)}.catalog{grid-template-columns:repeat(3,minmax(0,1fr))}.empty{padding:38px;text-align:center;color:var(--muted);grid-column:1/-1}.notice{font-size:12px;padding:11px 14px;background:#eff4e8;border-radius:8px;color:#506345;margin:0 0 20px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:12px;font-weight:600}.field input,.field select,.field textarea{width:100%;padding:11px 12px;border:1px solid #d8e0d4;border-radius:7px;background:#fff;color:var(--ink)}.field textarea{resize:vertical;min-height:100px}.field.full{grid-column:1/-1}.formactions{display:flex;gap:10px;margin-top:20px;align-items:center;justify-content:flex-end}.muted{color:var(--muted);font-size:12px}.formnote{color:var(--muted);font-size:11px;margin-top:14px}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}th{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.5px;background:#f6f8f3;font-weight:600}td,th{padding:13px;border-bottom:1px solid var(--line);white-space:nowrap}.resultbox{background:#173f34;color:#fff;border-radius:12px;padding:27px;margin:0 0 20px}.resultbox small{font-size:11px;color:#bacabd}.resultbox strong{display:block;font-size:34px;letter-spacing:-1px;margin:9px 0}.resultdetails{display:flex;gap:25px;margin-top:20px}.resultdetails b{display:block;font-size:15px;margin-top:3px}.split{display:grid;grid-template-columns:1fr 1fr;gap:22px}.lessonstage{background:#183c33;color:#fff;border-radius:12px;padding:28px;min-height:285px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.lessonstage h2{font-size:29px;max-width:430px;line-height:1.25;letter-spacing:-.7px;margin:12px 0}.lessonstage p{color:#c6d9cd;font-size:12px}.lessonstage .bubble{position:absolute;right:-55px;top:10px;width:240px;height:240px;border:1px solid #a6c79630;border-radius:50%;box-shadow:0 0 0 35px #a6c79610,0 0 0 70px #a6c79608;pointer-events:none}.lessonitem{display:flex;width:100%;text-align:left;padding:13px 8px;gap:10px;border:0;border-bottom:1px solid var(--line);background:transparent;font-size:12px;align-items:center;color:var(--ink)}.lessonitem.selected{background:#f0f5e9;border-radius:6px;color:var(--green)}.lessonitem span:first-child{width:24px;height:24px;background:#eaf0e4;border-radius:50%;display:grid;place-items:center;font-size:10px;flex-shrink:0}.lessonitem small{margin-left:auto;color:var(--muted);font-size:10px}.members{display:flex;gap:9px;flex-wrap:wrap;margin-top:16px}.member{padding:8px 11px;background:#f4f6f1;border-radius:8px;font-size:11px}.docrow{display:flex;align-items:center;gap:15px;padding:19px 0;border-bottom:1px solid var(--line)}.docicon{width:43px;height:49px;border-radius:8px;background:#edf3e7;color:var(--green);display:grid;place-items:center;font-size:10px;font-weight:700;flex-shrink:0}.docrow h3{font-size:14px;margin:0 0 5px}.docrow p{font-size:11px;color:var(--muted);margin:0}.docrow .btn{margin-left:auto;flex-shrink:0}.view{animation:enter .25s ease}@keyframes enter{from{opacity:.4;transform:translateY(5px)}to{opacity:1;transform:none}}dialog{border:0;border-radius:16px;padding:0;max-width:560px;width:calc(100% - 32px);color:var(--ink);box-shadow:0 35px 120px #10291e44}dialog::backdrop{background:#102a245e;backdrop-filter:blur(4px)}.modalhead{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:22px 25px}.modalhead h2{font-size:20px;margin:0}.close{border:0;border-radius:50%;background:#f0f3ec;width:30px;height:30px;font-size:20px;color:var(--muted)}.modalbody{padding:24px 25px}.modalbody h3{margin-top:0}.modalbody ul{padding-left:20px;font-size:13px;line-height:1.9}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#173f34;color:white;padding:13px 20px;border-radius:9px;box-shadow:0 8px 40px #0002;z-index:100;font-size:13px;max-width:90%;display:none}.footer{margin-top:30px;display:flex;justify-content:space-between;color:#7e8981;font-size:10px;gap:15px}.menu{display:none}.stack{display:flex;flex-direction:column;gap:18px}
@media(min-width:1450px){.main{padding-top:38px}.hero{min-height:270px}.heroart svg{height:255px}.cover{height:157px}.hero h2{font-size:37px}}
@media(max-width:1150px){.sidebar{width:205px;padding-left:14px;padding-right:14px}.app{grid-template-columns:205px 1fr}.main{padding:26px}.topbar{padding:0 26px}.twocol{grid-template-columns:1fr 260px;gap:17px}.hero h2{font-size:28px}.herotext{padding:27px}.catalog{grid-template-columns:repeat(2,1fr)}.stat{padding:14px}.stat .sub{display:none}}
@media(max-width:950px){.twocol{grid-template-columns:1fr}.rightcol{display:grid;grid-template-columns:1fr 1fr;gap:18px}.financecard{margin:0}.hero{grid-template-columns:1.3fr 1fr}.hero h2{font-size:27px}.date{display:none}.stat{gap:10px}.split{grid-template-columns:1fr}.profile .profiletext{display:none}.heading h1{font-size:25px}}
@media(max-width:700px){.app{display:block}.sidebar{transform:translateX(-100%);transition:transform .2s;width:235px;box-shadow:20px 0 60px #19372a26}.sidebar.open{transform:translateX(0)}.menu{display:block;border:0;background:transparent;font-size:22px;color:var(--ink)}.topbar{height:68px;padding:0 18px}.topright{gap:8px}.breadcrumb{display:none}.main{padding:24px 18px}.demo{font-size:8px}.role{font-size:11px;max-width:105px}.hero{grid-template-columns:1fr}.heroart{display:none}.herotext{padding:27px}.hero h2{font-size:32px}.heading{align-items:flex-start}.heading h1{font-size:25px}.heading p{font-size:12px}.statrow{gap:8px}.stat{padding:13px 9px;display:block}.stat .symbol{display:none}.stat strong{font-size:23px}.stat p{font-size:10px}.coursegrid,.catalog{grid-template-columns:1fr}.cover{height:157px}.rightcol{grid-template-columns:1fr}.below{align-items:flex-start;flex-wrap:wrap}.below .btn{margin:0}.fields{grid-template-columns:1fr}.field.full{grid-column:auto}.docrow{gap:9px;flex-wrap:wrap}.docrow>div:nth-child(2){flex:1;min-width:170px}.footer{flex-wrap:wrap}.resultbox strong{font-size:28px}.heading .btn{padding:8px 10px}.sectionhead h2{font-size:16px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
/* Finova · Campus profesional */
.sidebar{overflow-y:auto;scrollbar-width:thin}.tagline{margin-bottom:22px}.nav{gap:3px}.nav button{padding:10px 13px;font-size:12px}.sidebottom{padding-top:24px}.topbar{gap:12px}.global-search{display:flex;gap:5px;max-width:310px;flex:1}.global-search input{width:100%;min-width:50px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:8px 11px;font-size:11px}.bell{position:relative}.bell:after{content:'';width:6px;height:6px;border-radius:50%;background:#a5be75;position:absolute;right:9px;top:7px}.bell.read:after{display:none}.kicker{font-size:11px;letter-spacing:1.5px;color:var(--green);text-transform:uppercase}.tabs{display:flex;gap:7px;flex-wrap:wrap;margin:18px 0}.tabs .filter{font-size:11px}.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.grid4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.feature{background:white;border:1px solid var(--line);border-radius:12px;padding:22px}.feature h3{font-size:17px;line-height:1.3;margin:12px 0 9px}.feature p{font-size:12px;color:var(--muted);margin:0 0 12px}.feature .num{color:var(--green);background:#eef3e6;width:32px;height:32px;border-radius:9px;display:grid;place-items:center}.sectionspaced{margin-top:30px}.publicintro{text-align:center;padding:20px 0 8px}.publicintro h2{font-size:27px;letter-spacing:-.8px;margin:7px}.publicintro p{font-size:13px;color:var(--muted);margin:10px auto 23px;max-width:550px}.faq details{border-top:1px solid var(--line);padding:17px 0}.faq summary{cursor:pointer;font-weight:600;font-size:13px}.faq p{font-size:12px;color:var(--muted);max-width:820px}.metricvalue{font-size:27px;letter-spacing:-1px;display:block;font-weight:650}.metriclabel{color:var(--muted);font-size:11px}.metricbottom{font-size:10px;color:var(--green);margin-top:10px}.calendar-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.weekday{text-align:center;font-size:10px;text-transform:uppercase;color:var(--muted);padding:9px 0}.calday{min-height:83px;padding:8px;border-top:1px solid var(--line);border-right:1px solid var(--line);font-size:11px}.calday:nth-child(7n){border-right:0}.calday.dim{background:#f8faf5;color:#b3bcb3}.calday.today{background:#f0f7e5}.daynumber{display:inline-grid;place-items:center;width:23px;height:23px;border-radius:50%;font-size:11px}.today .daynumber{background:var(--green);color:#fff}.calevent{display:block;border:0;text-align:left;line-height:1.3;font-size:9px;background:#e5efdc;border-radius:4px;padding:4px 5px;color:#405932;margin:5px 0 0;width:100%;overflow:hidden}.calevent.task{background:#f3e9d8;color:#7b6031}.timeline-item{display:flex;gap:16px;padding:17px 0;border-top:1px solid var(--line);align-items:center}.timeline-item .grow{flex:1}.timeline-item h3{margin:0 0 4px;font-size:14px}.timeline-item p{margin:0;color:var(--muted);font-size:11px}.pill.blue{background:#e6edf6;color:#405e79}.criterion{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:11px 0;font-size:12px;gap:16px}.criterion strong{color:var(--green);text-align:right}.activitytitle{display:flex;align-items:center;justify-content:space-between;gap:12px}.activitytitle h3{margin:0;font-size:16px}.activitytitle p{margin:5px 0;color:var(--muted);font-size:11px}.thread{background:#f4f6f1;border-radius:8px;padding:14px;margin:10px 0;font-size:12px}.thread b{font-size:11px}.thread p{margin:5px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.taskstatus{font-size:11px;color:var(--green);margin:8px 0}.quiz-q{margin-bottom:23px}.quiz-q p{font-size:13px;font-weight:600}.quiz-q label{display:block;padding:10px;border:1px solid var(--line);border-radius:7px;margin:7px 0;font-size:12px;cursor:pointer}.quiz-q input{accent-color:var(--green);margin-right:8px}.certificate{background:#fffdf6;padding:40px;border:8px double #9eaf85;text-align:center;position:relative;color:#274336}.certificate .certlogo{font-size:30px;letter-spacing:-1px;font-weight:750}.certificate .certlabel{letter-spacing:4px;font-size:10px;margin:20px 0}.certificate h3{font:30px/1.25 Georgia,serif;margin:16px 0}.certificate .recipient{font:italic 25px Georgia,serif;margin:20px 0;border-bottom:1px solid #bcc7a7;padding:0 0 14px}.certificate .certcourse{font-size:17px;font-weight:600}.certfooter{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:27px;font-size:10px;text-align:left}.certqr{width:82px;height:82px;flex-shrink:0}.certqr svg{width:100%;height:100%}.certstamp{color:#8a622b;font-size:9px;letter-spacing:1px;margin-top:20px}.reportbar{height:9px;border-radius:8px;background:#edf0e9;overflow:hidden;margin:6px 0 13px}.reportbar span{display:block;height:100%;background:#8da877}.occupation{font-size:11px;display:flex;justify-content:space-between}.notice.warn{background:#fff2d9;color:#82632c}.modalbody{max-height:75vh;overflow-y:auto}.search-result{display:block;width:100%;border:0;background:#f4f7ef;padding:14px;margin:8px 0;border-radius:8px;text-align:left;color:var(--ink)}.search-result small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.switchline{display:flex;gap:12px;flex-wrap:wrap;font-size:12px;align-items:center}.switchline label{display:flex;align-items:center;gap:5px}.switchline input{accent-color:var(--green)}.longtext{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.8}.pillbutton{border:1px solid var(--line);background:white;border-radius:7px;padding:6px 10px;font-size:11px;color:var(--green)}.pillbutton.saved{background:#edf4df}.library-controls{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.planoption{padding:14px;border:1px solid var(--line);border-radius:8px;font-size:12px;display:block;margin:9px 0}.planoption input{accent-color:var(--green);margin-right:8px}.notification{padding:16px 0;border-bottom:1px solid var(--line)}.notification h3{font-size:13px;margin:0 0 5px}.notification p{font-size:12px;color:var(--muted);margin:0 0 8px}.mutednote{font-size:10px;color:var(--muted)}
@media(max-width:1200px){.global-search{max-width:200px}.breadcrumb{display:none}.grid4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:950px){.grid3{grid-template-columns:1fr 1fr}.topright{gap:8px}.global-search{max-width:185px}.topbar{padding:0 20px}}
@media(max-width:700px){.topbar{flex-wrap:wrap;height:auto;min-height:105px;padding:12px 16px;gap:10px}.global-search{max-width:none;order:3;flex-basis:100%}.topright{margin-left:auto}.topright .demo{display:none}.grid3,.grid4{grid-template-columns:1fr}.calday{min-height:67px;padding:4px}.calevent{font-size:8px;padding:4px 3px}.calendarpanel{padding:11px}.calendar-top h2{font-size:16px}.timeline-item{flex-wrap:wrap}.timeline-item .btn{margin-left:58px}.certificate{padding:21px 12px}.certificate h3{font-size:24px}.certfooter{flex-wrap:wrap}.calendar-top .btn{padding:6px 9px}.calendar-grid .weekday{font-size:9px}.docrow .docactions{display:flex;gap:5px;width:100%;justify-content:flex-end}.docrow .docactions .btn{margin:0}.metricvalue{font-size:25px}}
@media print{body{background:white}.app,.toast{display:none!important}dialog{display:block!important;position:static!important;max-width:none!important;width:100%!important;max-height:none!important;box-shadow:none!important;margin:0!important}dialog:not([open]){display:none!important}.modalhead,.modalbody>.formactions,.modalbody>.formnote,.modalbody>.notice{display:none!important}.modalbody{max-height:none;overflow:visible;padding:0}.certificate{break-inside:avoid}dialog::backdrop{display:none}}
.statrow{grid-template-columns:repeat(3,minmax(0,1fr))}.stat{min-width:0}.grade-select{border:1px solid var(--line);border-radius:6px;background:white;padding:7px 9px;color:var(--ink);font-size:12px}.ratings{display:flex;gap:7px;margin-top:10px;flex-wrap:wrap}.ratings button{border:1px solid var(--line);border-radius:6px;background:#f3f6eb;color:var(--green);padding:7px 10px}.ratings button.active{background:var(--green);color:white}.heroart text{overflow:visible}
@media(max-width:700px){.paymentstats{grid-template-columns:1fr}.paymentstats .stat{padding:15px 18px;display:flex}.paymentstats .stat strong{font-size:24px!important}.sidebar:not(.open){visibility:hidden}.sidebar.open{visibility:visible}}

.staffbanner{background:#173f34;border-radius:14px;padding:25px 28px;color:#fff;margin-bottom:23px;display:flex;justify-content:space-between;gap:25px;align-items:center}.staffbanner h2{font-size:24px;letter-spacing:-.6px;margin:7px 0}.staffbanner p{color:#bdd0c2;font-size:12px;margin:0}.staffbanner .eyebrow{color:#d4f58a}.stafffilters{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:17px 0}.stafffilters select,.stafffilters input{border:1px solid var(--line);padding:9px 11px;border-radius:7px;background:#fff;color:var(--ink);font-size:12px}.stafffilters label{font-size:11px;color:var(--muted)}.stafffilters .field{flex:1;min-width:160px}.sessioncard{padding:20px;background:#fff;border:1px solid var(--line);border-radius:11px;margin:13px 0}.sessiontop{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.sessiontop h3{margin:6px 0;font-size:16px}.sessionmeta{display:flex;gap:14px;flex-wrap:wrap;font-size:11px;color:var(--muted);margin:8px 0 13px}.sessionactions{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.sessionnotes{padding:12px 14px;background:#f5f7f1;border-left:3px solid #9ab779;font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere;border-radius:4px}.pill.red{background:#f9e8e3;color:#954c37}.pill.gray{background:#eef0ee;color:#68756b}.academic-progress{display:flex;gap:18px;align-items:center;margin:18px 0}.academic-ring{width:76px;height:76px;border-radius:50%;background:conic-gradient(#699b64 var(--progress),#eef1e8 0);padding:8px;display:grid;place-items:center;flex-shrink:0}.academic-ring span{background:white;border-radius:50%;display:grid;place-items:center;width:60px;height:60px;font-weight:700;font-size:18px}.academic-progress p{font-size:11px;color:var(--muted);margin:3px 0}.attendance-table select{padding:6px;border:1px solid var(--line);border-radius:5px;font-size:11px;color:var(--ink);max-width:125px}.attendance-table input[type=number]{width:70px;padding:6px;border:1px solid var(--line);border-radius:5px;font-size:11px}.attendance-table td{padding:10px 8px}.wide-dialog{max-width:880px}.notewide{max-width:720px}.stafftabs{border-bottom:1px solid var(--line);padding-bottom:15px}.session-form .field input:disabled,.session-form .field select:disabled{background:#f1f3ee}.moneysummary{background:#173f34;color:white;padding:22px;border-radius:12px;margin:17px 0}.moneysummary strong{display:block;font-size:30px;letter-spacing:-1px;margin-top:7px}.moneysummary small{color:#c4d1bf}.salaryrow{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;margin-top:17px}.salaryrow b{display:block;font-size:16px}.salaryrow span{color:#c4d1bf;font-size:11px}.empty-icon{font-size:27px;color:#91a478;display:block;margin-bottom:12px}.student-cell{display:flex;align-items:center;gap:9px}.student-cell .tinyavatar{width:28px;height:28px}.student-cell strong{font-size:12px}.student-cell small{display:block;font-size:9px;color:var(--muted)}.issuecriteria{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:15px 0}.issuecriteria div{border:1px solid var(--line);padding:12px;border-radius:7px;font-size:11px}.issuecriteria b{display:block;font-size:15px;margin-top:5px}.dryseal{width:132px;height:132px;border-radius:50%;border:5px double #c4c6b7;background:radial-gradient(circle,#fbfcf5 0%,#ecede4 72%);box-shadow:inset 2px 2px 5px #ffffff,inset -2px -2px 5px #b6bcaa66,2px 3px 6px #9ca89220;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#919d87;text-shadow:1px 1px 0 #fff;font-size:8px;letter-spacing:1.2px;flex-shrink:0;padding:13px}.dryseal .sealstar{font-size:29px;line-height:1.1}.dryseal b{font-size:9px;line-height:1.3;max-width:100%;overflow-wrap:anywhere}.dryseal small{font-size:7px;letter-spacing:1px;margin:5px 0}.sealimage{width:132px;height:132px;object-fit:contain}.diploma{border:9px double #abb893;background:#fffef7;padding:37px 40px;color:#294438;text-align:center}.diploma .issuer{font-size:20px;font-weight:700;letter-spacing:1px}.diploma h2{font-family:Georgia,serif;font-size:35px;font-weight:400;letter-spacing:2px;margin:15px 0}.diploma .diplomaname{font:italic 30px Georgia,serif;padding:13px 0 20px;margin:10px auto 15px;border-bottom:1px solid #b6c1a5}.diploma .diplomacourse{font-size:21px;line-height:1.4;font-weight:650;margin:14px 0}.diploma .diplomameta{font-size:12px;color:#74806d}.diploma-bottom{display:grid;grid-template-columns:1fr 140px 1fr;align-items:center;gap:18px;margin-top:22px}.diploma-sign{font-size:10px;border-top:1px solid #aeb99f;padding-top:7px;align-self:end;margin-bottom:16px}.diploma-sign b{display:block;font-size:12px;margin-bottom:3px}.diploma-verify{display:flex;gap:12px;align-items:center;justify-content:center;margin-top:18px;font-size:9px;color:#77816e}.diploma-verify svg{width:65px;height:65px}.diploma-watermark{font-size:9px;letter-spacing:1.4px;color:#93704c;margin-top:18px}.institution-preview{display:flex;align-items:center;gap:18px;margin:18px 0;padding:18px;background:#f7f8f0;border-radius:9px}.institution-preview p{font-size:12px;color:var(--muted)}.paymentline{font-size:12px;padding:9px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:15px}.checksline{display:flex;gap:6px;align-items:center;font-size:11px}.checksline input{accent-color:var(--green)}.staff-footer{font-size:11px;color:var(--muted);margin-top:18px}.quick-link-row{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}
@media(max-width:700px){.staffbanner{padding:22px;align-items:flex-start;flex-direction:column;gap:15px}.staffbanner h2{font-size:23px}.sessiontop{flex-wrap:wrap}.stafftabs .filter{padding:8px 10px}.wide-dialog{width:calc(100% - 20px)}.diploma{padding:22px 13px}.diploma h2{font-size:26px}.diploma .diplomaname{font-size:23px}.diploma .diplomacourse{font-size:18px}.diploma-bottom{grid-template-columns:1fr;justify-items:center;gap:18px}.diploma-sign{width:85%;margin:0}.salaryrow{grid-template-columns:1fr}.institution-preview{flex-wrap:wrap}.issuecriteria{grid-template-columns:1fr 1fr}.sessionactions .btn{flex:1}.academic-ring{width:66px;height:66px;padding:6px}.academic-ring span{width:54px;height:54px}.stafffilters .field{min-width:130px}.modalbody{padding:18px}}
@media print{.diploma{break-inside:avoid;padding:25px 32px}.diploma-bottom{grid-template-columns:1fr 140px 1fr}.dryseal{-webkit-print-color-adjust:exact;print-color-adjust:exact}.diploma h2{font-size:30px}dialog.wide-dialog{max-width:none!important}.no-print{display:none!important}}
.student-roster{max-height:580px;overflow:auto}.student-roster th{position:sticky;top:0;z-index:1}.student-roster td:first-child{min-width:170px}

.portalmark{font-size:9px;letter-spacing:1.6px;text-transform:uppercase;color:var(--green);padding:8px 14px;background:#eff4e9;border-radius:6px;margin:0 12px 18px}.portalnavsub{margin:18px 14px 9px;color:#94a18e;font-size:9px;letter-spacing:1.3px}.rolehome{background:#173f34;color:white;padding:28px 30px;border-radius:15px;display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:23px}.rolehome h2{font-size:28px;letter-spacing:-.9px;margin:10px 0}.rolehome p{font-size:12px;color:#c5d4c5;margin:0;max-width:540px}.rolehome .eyebrow{color:#d4f58a}.cohorttag{font-size:10px;color:#59734b;background:#eff5e8;display:inline-block;border-radius:5px;padding:4px 8px}.cohortcard{position:relative;overflow:hidden}.cohortcard:before{content:'';height:4px;position:absolute;left:0;right:0;top:0;background:#99b47d}.cohortcard .category{margin-top:6px}.cohortcard h3{font-size:17px;line-height:1.35;margin:12px 0 8px}.cohortinfo{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:11px;margin:18px 0}.cohortinfo small{display:block;color:var(--muted);margin-bottom:3px}.cohortline{display:flex;justify-content:space-between;align-items:center;font-size:11px;margin:12px 0 6px;gap:15px}.cohortpick{border:1px solid var(--line);padding:17px;border-radius:10px;margin:12px 0;background:#fcfdf9}.cohortpick h4{margin:0 0 7px;font-size:14px}.cohortpick p{font-size:11px;color:var(--muted);margin:3px 0}.cohortpick .btn{margin-top:12px}.cohortempty{padding:36px;border:1px dashed #cbd8c0;border-radius:12px;text-align:center;color:var(--muted)}.summarylist{display:flex;flex-direction:column;gap:11px}.actionitem{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--line);padding:16px;border-radius:10px}.actionitem .grow{flex:1}.actionitem h3{font-size:13px;margin:0 0 4px}.actionitem p{font-size:11px;margin:0;color:var(--muted)}.actionitem .circle{border-radius:50%;background:#ecf3e4;color:var(--green);width:33px;height:33px;flex-shrink:0;display:grid;place-items:center}.weekgrid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.weekcol{background:#f6f8f2;border:1px solid var(--line);border-radius:8px;min-height:260px;padding:9px;min-width:0}.weekhead{font-size:11px;text-align:center;margin:4px 0 14px;color:var(--muted)}.weekhead b{font-size:21px;display:block;color:var(--ink)}.weekevent{width:100%;padding:10px 8px;background:#e6efd9;border:0;border-left:3px solid #8da975;border-radius:7px;font-size:10px;text-align:left;margin:0 0 9px;color:#365139;overflow-wrap:anywhere}.weekevent strong{display:block;margin:5px 0}.weekevent.past{background:#e8edf0;border-color:#8ea6af;color:#47616b}.weekevent.cancelled{background:#f0eeee;border-color:#bfaaaa;color:#87706a;text-decoration:line-through}.weekevent small{display:block;font-size:9px}.calday{min-height:105px}.calday .calevent.past{background:#e7edf0;color:#496571}.calday .calevent.cancelled{background:#efeeee;color:#907272;text-decoration:line-through}.calendarlegend{display:flex;gap:16px;flex-wrap:wrap;margin:15px 0;font-size:10px;color:var(--muted)}.legenddot{width:8px;height:8px;border-radius:50%;display:inline-block;margin-right:5px;background:#99b582}.legenddot.past{background:#98b0bc}.legenddot.cancelled{background:#bd9b9b}.calfilter{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0}.calfilter .field{flex:1;min-width:155px}.calendar-actions{display:flex;gap:7px;flex-wrap:wrap}.scheduleinfo{padding:13px 15px;background:#f0f5e9;border-radius:8px;font-size:12px;line-height:1.7}.dayspick{display:flex;gap:10px;flex-wrap:wrap;margin:7px 0}.dayspick label{font-size:12px;display:flex;align-items:center;gap:5px}.dayspick input{accent-color:var(--green)}.calendar-tabs{display:flex;gap:6px}.semesterbar{border-left:3px solid #aac389;padding-left:12px}.nextclass-label{font-size:10px;color:var(--green);text-transform:uppercase;letter-spacing:1px}.portal-metrics{margin-bottom:24px}.small-cohort-select{border:1px solid var(--line);background:white;border-radius:7px;padding:9px 12px;color:var(--green);font-size:12px;max-width:270px}.group-history{border-top:1px solid var(--line);padding:13px 0;font-size:12px}.group-history p{margin:5px 0;color:var(--muted)}
@media(max-width:1150px){.weekgrid{grid-template-columns:repeat(4,minmax(0,1fr))}.weekcol{min-height:190px}}
@media(max-width:700px){.rolehome{padding:24px;flex-direction:column;align-items:flex-start}.rolehome h2{font-size:24px}.cohortinfo{gap:9px}.weekgrid{grid-template-columns:1fr}.weekcol{min-height:80px;display:grid;grid-template-columns:50px 1fr;gap:9px;align-items:start}.weekhead{margin:5px 0}.weekevents{min-width:0}.weekevent{margin:0 0 5px}.calendar-top{flex-wrap:wrap}.calendar-top h2{order:-1;width:100%;text-align:center;margin-bottom:10px!important}.calday{min-height:85px}.cohortpick .coursefooter{flex-wrap:wrap}.actionitem{flex-wrap:wrap}.actionitem .btn{margin-left:47px}.calfilter .field{min-width:140px}.small-cohort-select{max-width:100%}.portalmark{margin:0 12px 10px}.staffbanner .small-cohort-select{width:100%}}

</style>
</head>
<body>
