.login-roles{display:grid;gap:10px;margin:20px 0 4px}.login-role{width:100%;display:flex;align-items:center;gap:12px;text-align:left;border:1px solid var(--line);background:var(--card);border-radius:13px;padding:13px;cursor:pointer;color:var(--ink)}.login-role>span{font-size:23px}.login-role div{display:grid;gap:2px}.login-role b{font-size:13px}.login-role small{font-size:10px;color:var(--muted)}.login-role.active{border-color:var(--p);background:var(--soft);box-shadow:0 0 0 2px #6d28d910}.login-role:focus-visible{outline:3px solid #8b5cf655;outline-offset:2px}
:root{--p:#6d28d9;--p2:#8b5cf6;--ink:#1d1830;--muted:#756f86;--bg:#faf9fc;--card:#fff;--line:#ece8f3;--soft:#f3effd;--ok:#16845b;--warn:#b7791f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,sans-serif;color:var(--ink);background:var(--bg);line-height:1.5}a{text-decoration:none;color:inherit}button,input,select{font:inherit}button{cursor:pointer}.wrap{width:min(1160px,calc(100% - 40px));margin:auto}.top{position:sticky;top:0;z-index:20;background:rgba(250,249,252,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(236,232,243,.9)}.nav{height:76px;display:flex;align-items:center;gap:34px}.brand{display:flex;align-items:center;gap:10px;min-width:max-content}.brand-mark{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,var(--p),var(--p2));color:#fff;font-weight:800;box-shadow:0 8px 20px #6d28d933}.brand b{display:block;font-size:15px;letter-spacing:.08em;line-height:1.15;max-width:310px}.brand small{display:block;font-size:9px;letter-spacing:.18em;color:var(--muted);margin-top:3px}nav{display:flex;gap:26px;flex:1}nav a{font-size:14px;color:#5f596d;font-weight:600}nav a:hover{color:var(--p)}.nav-actions{display:flex;gap:9px}.btn{border:0;border-radius:12px;padding:11px 17px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:9px;transition:.2s;white-space:nowrap}.btn:hover{transform:translateY(-1px)}.btn.primary{background:var(--p);color:#fff;box-shadow:0 8px 18px #6d28d925}.btn.primary:hover{background:#5b21b6}.btn.ghost{background:transparent;color:#514b60}.btn.soft{background:var(--soft);color:var(--p)}.btn.white{background:#fff;color:var(--p)}.btn.big{padding:14px 20px;border-radius:13px}.btn.small{padding:8px 12px;font-size:12px;border-radius:9px}.btn.full{width:100%}.menu{display:none;background:none;border:0;font-size:25px}.hero{padding:80px 0 70px;background:radial-gradient(circle at 80% 20%,#e8ddff 0,transparent 32%),linear-gradient(180deg,#fbfaff,#f8f6fb)}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}.eyebrow{font-size:10px;font-weight:800;letter-spacing:.16em;color:#716b7e}.eyebrow.purple{color:var(--p)}.hero-brand-name{font-size:clamp(28px,4vw,48px);font-weight:900;letter-spacing:-.045em;color:#cdb8ff;margin:12px 0 2px;line-height:1}.hero-brand-name::after{content:"";display:block;width:74px;height:4px;border-radius:99px;background:linear-gradient(90deg,var(--p),var(--p2));margin-top:10px}h1{font-size:clamp(42px,5.3vw,68px);line-height:1.03;letter-spacing:-.055em;margin:15px 0 22px}h1 em{font-style:normal;color:var(--p)}h2{font-size:32px;line-height:1.1;letter-spacing:-.035em;margin:8px 0 12px}h3{margin:6px 0;font-size:18px}p{color:var(--muted)}.hero-text{font-size:17px;max-width:600px}.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin:28px 0}.trust{display:flex;gap:18px;flex-wrap:wrap;color:#716b7e;font-size:12px;font-weight:600}.hero-dashboard{background:#211b31;border:1px solid #392f4d;border-radius:25px;padding:24px;color:#fff;box-shadow:0 28px 70px #26173d2e;transform:rotate(1deg)}.dash-top{display:flex;justify-content:space-between;font-size:12px;color:#bcb3cd}.live{color:#bba0ff}.mini-number{background:#2a233c;border:1px solid #403650;padding:18px;border-radius:17px;margin:18px 0}.mini-number small,.mini-number strong{display:block}.mini-number small{color:#bcb3cd}.mini-number strong{font-size:35px;margin:3px 0 8px}.progress{height:7px;background:#e9e4f2;border-radius:20px;overflow:hidden}.hero-dashboard .progress{background:#4a4058}.progress i{display:block;height:100%;border-radius:20px;background:linear-gradient(90deg,var(--p),var(--p2))}.mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.mini-grid div{background:#2a233c;border:1px solid #403650;padding:15px;border-radius:15px}.mini-grid span,.mini-grid small{display:block;color:#a9a0b9;font-size:10px}.mini-grid b{display:block;font-size:21px;margin:4px 0}.mini-grid small{color:#9fe0c4}.activity{margin-top:12px;padding:15px;background:#2a233c;border-radius:15px;display:grid;gap:10px;font-size:11px}.activity span{display:flex;gap:8px;align-items:center;color:#d9d2e4}.activity i{font-style:normal;width:22px;height:22px;border-radius:7px;background:#45385b;display:grid;place-items:center}.activity small{margin-left:auto;color:#958ba5}.section{padding:75px 0}.section.alt{background:#f2eff7}.section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:28px}.section-head.center{text-align:center;display:block}.section-head.center p{max-width:650px;margin:0 auto}.text-link{color:var(--p);font-weight:700;font-size:13px}.course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.course-card{background:var(--card);border:1px solid var(--line);border-radius:19px;overflow:hidden;transition:.2s;box-shadow:0 7px 24px #24153a08}.course-card:hover{transform:translateY(-4px);box-shadow:0 18px 35px #24153a12}.course-cover{height:145px;background:linear-gradient(135deg,#2c2341,#7351a9);display:flex;align-items:center;justify-content:space-between;padding:18px}.course-card:nth-child(2) .course-cover{background:linear-gradient(135deg,#173b54,#4d83a7)}.course-card:nth-child(3) .course-cover{background:linear-gradient(135deg,#39422c,#85966a)}.course-icon{font-size:47px}.pill{font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;background:#ffffff25;color:#fff;padding:7px 9px;border-radius:99px}.course-body{padding:21px}.course-body h3{font-size:20px}.course-body p{font-size:13px;min-height:58px}.course-meta{display:flex;gap:14px;color:#7d7688;font-size:11px;font-weight:600;margin:15px 0}.course-meta.large{font-size:13px}.course-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:15px}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.feature{background:#fff;border:1px solid var(--line);padding:24px;border-radius:17px}.feature>span{font-size:27px}.feature h3{margin-top:17px}.feature p{font-size:13px}.feature a{color:var(--p);font-size:12px;font-weight:700}.cta{background:linear-gradient(120deg,#241b36,#6d28d9);color:#fff;padding:50px 0}.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:30px}.cta p{color:#d9d1e7}.cta .eyebrow{color:#cdbbfa}.page-head{padding:75px 0 35px}.page-head .hero-brand-name{font-size:clamp(28px,4vw,48px);font-weight:900;letter-spacing:-.045em;color:#cdb8ff;margin:12px 0 2px;line-height:1}.hero-brand-name::after{content:"";display:block;width:74px;height:4px;border-radius:99px;background:linear-gradient(90deg,var(--p),var(--p2));margin-top:10px}h1{font-size:52px}.page-head p{max-width:700px}.catalog-tools{display:flex;gap:12px;margin-bottom:24px}.search{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:11px;padding:0 12px;flex:1;max-width:500px}.search input{border:0;outline:0;padding:12px 4px;width:100%;background:transparent}.catalog-tools select{border:1px solid var(--line);background:#fff;border-radius:11px;padding:0 14px;color:#5f596d}.empty{padding:70px;text-align:center;background:#fff;border:1px dashed #d8d0e6;border-radius:18px}.empty>span{font-size:38px;font-weight:800;color:var(--p)}.course-hero{padding:65px 0;background:linear-gradient(135deg,#f0eafd,#faf9fc)}.back{font-size:12px;font-weight:700;color:#6f687c}.detail-grid{display:grid;grid-template-columns:1fr 330px;gap:55px;align-items:center;margin-top:30px}.detail-grid .hero-brand-name{font-size:clamp(28px,4vw,48px);font-weight:900;letter-spacing:-.045em;color:#cdb8ff;margin:12px 0 2px;line-height:1}.hero-brand-name::after{content:"";display:block;width:74px;height:4px;border-radius:99px;background:linear-gradient(90deg,var(--p),var(--p2));margin-top:10px}h1{font-size:52px}.course-preview{background:#241c35;border-radius:24px;padding:35px;color:#fff;min-height:290px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;box-shadow:0 25px 50px #2b183d22}.big-icon{font-size:75px;margin-bottom:15px}.course-preview span{color:#bdb3cc;font-size:11px}.course-preview strong{font-size:25px;margin-top:12px}.detail-content{display:grid;grid-template-columns:1fr 310px;gap:45px}.lesson-list{margin-top:22px;border:1px solid var(--line);border-radius:16px;background:#fff;overflow:hidden}.lesson{display:flex;align-items:center;gap:15px;padding:17px;border-bottom:1px solid var(--line)}.lesson:last-child{border:0}.lesson>span{width:35px;height:35px;border-radius:10px;background:var(--soft);color:var(--p);display:grid;place-items:center;font-size:11px;font-weight:800}.lesson div{flex:1}.lesson small,.person small{display:block;color:#918a9b;font-size:11px}.lesson i{font-style:normal;color:#aaa}.side-card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:22px;display:grid;gap:13px;align-self:start}.side-card>span{font-size:12px;color:#5f596d}.side-card .btn{margin-top:8px}.auth{min-height:calc(100vh - 200px);display:grid;place-items:center;padding:60px 20px}.auth-card{width:min(440px,100%);background:#fff;border:1px solid var(--line);border-radius:22px;padding:34px;box-shadow:0 18px 50px #2917400c}.auth-brand{display:flex;justify-content:center;margin-bottom:22px}.auth-card .hero-brand-name{font-size:clamp(28px,4vw,48px);font-weight:900;letter-spacing:-.045em;color:#cdb8ff;margin:12px 0 2px;line-height:1}.hero-brand-name::after{content:"";display:block;width:74px;height:4px;border-radius:99px;background:linear-gradient(90deg,var(--p),var(--p2));margin-top:10px}h1{font-size:34px;letter-spacing:-.04em}.auth-card>p{font-size:13px}.auth-card form{display:grid;gap:14px;margin-top:25px}.auth-card label,.profile-form label{display:grid;gap:6px;font-size:11px;font-weight:800;color:#5c5668}.auth-card input,.profile-form input{border:1px solid #ddd7e6;border-radius:10px;padding:12px 13px;outline:none;background:#fff}.auth-card input:focus,.profile-form input:focus{border-color:var(--p);box-shadow:0 0 0 3px #6d28d915}.auth-foot{text-align:center;font-size:12px;color:#7b7485;margin-top:20px}.auth-foot a{color:var(--p);font-weight:700}.demo-login b,.demo-login span{display:block}.success,.error{padding:11px;border-radius:9px;font-size:11px}.success{background:#e9f8f0;color:#117249}.error{background:#fff0f0;color:#a83232}footer{background:#191421;color:#fff;padding:48px 0 20px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.footer-grid p{max-width:400px;color:#a79eaf;font-size:12px}.footer-grid strong{display:block;margin-bottom:12px}.footer-grid a,.footer-grid span{display:block;color:#a79eaf;font-size:12px;margin:8px 0}.footer-bottom{border-top:1px solid #312b39;margin-top:35px;padding-top:16px;color:#807789;font-size:10px}.process{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.process>div{background:#fff;border:1px solid var(--line);padding:23px;border-radius:17px}.process span{color:var(--p);font-weight:800}.process p,.role-grid p{font-size:12px}.role-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.role-grid a{background:#fff;border:1px solid var(--line);padding:28px;border-radius:18px}.role-grid a>span{font-size:35px}.role-grid b{font-size:12px;color:var(--p)}
.panel-layout{min-height:100vh;display:grid;grid-template-columns:245px 1fr;background:#f6f4f9}.sidebar{background:#211a2e;color:#fff;padding:22px 15px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.side-brand{display:flex;align-items:center;gap:10px;padding:5px 10px 28px}.side-brand b{display:block}.side-brand small{font-size:8px;letter-spacing:.12em;color:#a9a0b7}.sidebar nav{display:grid;gap:5px}.sidebar nav a{color:#a9a0b7;padding:12px 13px;border-radius:10px;font-size:12px;display:flex;gap:11px;align-items:center}.sidebar nav a.active,.sidebar nav a:hover{background:#332747;color:#fff}.logout{margin-top:auto;background:#2e253b;color:#c8bfd3;border:0;border-radius:10px;padding:11px}.panel-main{padding:30px 34px;min-width:0}.panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px}.panel-header .hero-brand-name{font-size:clamp(28px,4vw,48px);font-weight:900;letter-spacing:-.045em;color:#cdb8ff;margin:12px 0 2px;line-height:1}.hero-brand-name::after{content:"";display:block;width:74px;height:4px;border-radius:99px;background:linear-gradient(90deg,var(--p),var(--p2));margin-top:10px}h1{font-size:34px;margin:5px 0}.profile{display:flex;gap:9px;align-items:center}.profile>span{width:35px;height:35px;border-radius:50%;background:var(--soft);color:var(--p);display:grid;place-items:center;font-weight:800}.profile b,.profile small{display:block}.profile b{font-size:12px}.profile small{font-size:9px;color:#8d8698}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.stat{background:#fff;border:1px solid var(--line);padding:18px;border-radius:15px}.stat span,.stat small{display:block;color:#8c8597;font-size:10px}.stat b{display:block;font-size:28px;margin:4px 0}.stat small{color:#19805b}.panel-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:16px;margin-bottom:16px}.panel-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:21px}.full-card{min-height:500px}.wide{min-width:0}.card-title{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:20px}.card-title h2{font-size:19px}.study-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:15px;background:#f8f6fb;border-radius:13px;padding:18px}.study-icon{width:55px;height:55px;background:#e8ddff;border-radius:14px;display:grid;place-items:center;font-size:28px}.study-card span{font-size:11px;color:#756e80}.study-card h3{font-size:15px}.study-card small{font-size:9px;color:#8b8395}.timeline{display:grid;gap:15px}.timeline span{display:grid;grid-template-columns:32px 1fr;column-gap:10px}.timeline i{grid-row:span 2;width:29px;height:29px;border-radius:9px;background:var(--soft);color:var(--p);display:grid;place-items:center;font-style:normal}.timeline b{font-size:11px}.timeline small{font-size:9px;color:#90899a}.mini-course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.mini-course{background:#faf9fc;border:1px solid var(--line);padding:15px;border-radius:12px}.mini-course>span{font-size:25px}.mini-course b,.mini-course small{display:block;font-size:11px}.mini-course .progress{margin:10px 0 5px}.mini-course small{color:#8e8797;font-size:9px}table{width:100%;border-collapse:collapse;font-size:11px}th{text-align:left;color:#8c8496;font-size:9px;text-transform:uppercase;letter-spacing:.06em}td,th{padding:13px 9px;border-bottom:1px solid var(--line)}td small{display:block;color:#968e9e;font-size:9px}.status{display:inline-flex;padding:5px 8px;border-radius:99px;font-size:9px;font-weight:800}.status.ok{background:#e7f7ef;color:#14774f}.status.wait{background:#fff5df;color:#9a6619}.bars{height:210px;display:flex;align-items:end;gap:14px;padding:20px 15px;border-radius:12px;background:linear-gradient(180deg,#faf9fc,#f1edf7)}.bars span{background:linear-gradient(180deg,var(--p2),var(--p));border-radius:7px 7px 3px 3px;flex:1;position:relative;min-height:30px}.bars b{position:absolute;bottom:-22px;left:50%;transform:translateX(-50%);font-size:9px;color:#8e8797}.quick{display:grid;gap:9px}.quick a{padding:11px;background:#faf9fc;border:1px solid var(--line);border-radius:9px;font-size:11px;font-weight:700}.quick a:hover{border-color:#cfc1e6;color:var(--p)}.table-actions{display:flex;justify-content:space-between;gap:12px;margin-bottom:15px}.count{font-size:11px;color:#8b8494}.table-btn{border:0;background:var(--soft);color:var(--p);padding:7px 10px;border-radius:7px;font-size:10px;font-weight:700}.people{display:grid;grid-template-columns:1fr 1fr;gap:10px}.person{display:flex;align-items:center;gap:11px;border:1px solid var(--line);padding:12px;border-radius:11px}.person>span{width:35px;height:35px;border-radius:10px;background:var(--soft);color:var(--p);display:grid;place-items:center;font-weight:800}.person div{flex:1}.person b{font-size:11px}.person em{font-style:normal;font-size:9px;color:#16845b}.content-builder{display:grid;gap:10px}.builder-item,.settings-list>div{display:flex;align-items:center;gap:15px;border:1px solid var(--line);padding:16px;border-radius:12px}.builder-item>span{width:35px;height:35px;display:grid;place-items:center;background:var(--soft);color:var(--p);border-radius:9px;font-size:10px;font-weight:800}.builder-item div{flex:1}.builder-item b,.builder-item small{display:block;font-size:11px}.builder-item small{color:#8f8797;font-size:9px}.feature-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}.feature-list>div{border:1px solid var(--line);padding:17px;border-radius:12px}.feature-list span{font-weight:800;color:var(--p);margin-right:10px}.feature-list b,.feature-list small{display:block;margin-left:35px}.feature-list b{font-size:11px}.feature-list small{font-size:9px;color:#8e8797}.certificate-demo{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center}.certificate{min-height:270px;border:6px double #d5c4f4;background:#fcfbff;padding:35px;text-align:center;display:grid;place-items:center}.certificate span{font-size:11px;letter-spacing:.15em;color:var(--p);font-weight:800}.certificate small{font-size:9px;letter-spacing:.1em}.certificate h3{font-family:Georgia,serif;font-size:26px}.certificate strong{font-size:10px}.payment-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.payment-grid div{border:1px solid var(--line);border-radius:12px;padding:20px}.payment-grid span{display:block;color:var(--p)}.payment-grid b{display:block;font-size:30px}.payment-grid small{font-size:10px;color:#8b8495}.notice{padding:14px;background:#f7f3ff;color:#665d73;border-radius:10px;font-size:11px;margin-top:18px}.settings-list{display:grid;gap:10px}.settings-list>div b{font-size:12px;width:180px}.settings-list>div span{flex:1;font-size:10px;color:#8c8496}.classroom{display:grid;grid-template-columns:260px 1fr;border:1px solid var(--line);border-radius:15px;overflow:hidden;background:#fff;min-height:500px}.classroom aside{background:#241c34;color:#fff;padding:17px}.classroom aside>b{font-size:12px;display:block;padding:8px}.class-lesson{display:block;width:100%;text-align:left;border:0;background:transparent;color:#b8afc3;padding:10px;border-radius:8px;font-size:10px;margin-top:3px}.class-lesson.selected,.class-lesson:hover{background:#382b4c;color:#fff}.class-lesson small{display:block;color:#82768e;font-size:8px;margin-top:3px}.lesson-view{padding:25px}.video-placeholder{height:250px;background:linear-gradient(135deg,#2b213b,#5d447c);border-radius:13px;color:#fff;display:grid;place-items:center;align-content:center;gap:5px}.video-placeholder span{width:54px;height:54px;border-radius:50%;background:#fff;color:var(--p);display:grid;place-items:center}.video-placeholder b{font-size:13px}.video-placeholder small{font-size:9px;color:#c7bdce}.lesson-actions{display:flex;justify-content:space-between;margin-top:25px}.exam-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.exam{border:1px solid var(--line);border-radius:13px;padding:20px}.exam>span:first-child{font-size:30px}.exam b,.exam p{display:block}.exam b{font-size:13px}.exam p{font-size:10px}.exam .btn{margin-top:15px}.cert-list,.notifications{display:grid;gap:10px}.cert-row,.notifications>div{display:flex;align-items:center;gap:14px;border:1px solid var(--line);padding:15px;border-radius:12px}.cert-row>span{font-size:28px}.cert-row div,.notifications div{flex:1}.cert-row b,.cert-row small,.notifications b,.notifications p,.notifications small{display:block}.cert-row b,.notifications b{font-size:11px}.cert-row small,.notifications p,.notifications small{font-size:9px;color:#8d8697}.cert-row.muted{opacity:.65}.notifications>div>span{width:34px;height:34px;background:var(--soft);color:var(--p);display:grid;place-items:center;border-radius:9px}.profile-form{max-width:600px;display:grid;grid-template-columns:1fr 1fr;gap:15px}.profile-form label:nth-child(3),.profile-form label:nth-child(4){grid-column:auto}.profile-form button{grid-column:1/-1;justify-self:start}
@media(max-width:900px){.hero-grid,.detail-grid,.detail-content,.panel-grid{grid-template-columns:1fr}.course-grid,.feature-grid{grid-template-columns:1fr 1fr}.process{grid-template-columns:1fr 1fr}.hero-dashboard{max-width:650px}.panel-layout{grid-template-columns:75px 1fr}.sidebar{padding:15px 10px}.side-brand div,.sidebar nav a span{display:none}.sidebar nav a{justify-content:center;font-size:18px}.panel-main{padding:24px}.stat-grid{grid-template-columns:1fr 1fr}.mini-course-grid{grid-template-columns:1fr}.certificate-demo{grid-template-columns:1fr}.people,.feature-list,.exam-grid{grid-template-columns:1fr}}
@media(max-width:650px){.wrap{width:min(100% - 28px,1160px)}.nav{height:66px}.nav>nav,.nav-actions{display:none}.menu{display:block;margin-left:auto}.menu-open .nav>nav,.menu-open .nav-actions{display:flex;position:absolute;top:66px;left:0;right:0;background:#fff;padding:15px;flex-direction:column;border-bottom:1px solid var(--line)}.menu-open .nav>nav{gap:12px}.hero{padding:55px 0}.hero-grid{gap:35px}.hero-brand-name{font-size:clamp(28px,4vw,48px);font-weight:900;letter-spacing:-.045em;color:#cdb8ff;margin:12px 0 2px;line-height:1}.hero-brand-name::after{content:"";display:block;width:74px;height:4px;border-radius:99px;background:linear-gradient(90deg,var(--p),var(--p2));margin-top:10px}h1{font-size:42px}.page-head .hero-brand-name{font-size:clamp(28px,4vw,48px);font-weight:900;letter-spacing:-.045em;color:#cdb8ff;margin:12px 0 2px;line-height:1}.hero-brand-name::after{content:"";display:block;width:74px;height:4px;border-radius:99px;background:linear-gradient(90deg,var(--p),var(--p2));margin-top:10px}h1{font-size:40px}.course-grid,.feature-grid,.role-grid{grid-template-columns:1fr}.section{padding:55px 0}.section-head{align-items:start;gap:12px;flex-direction:column}.cta-inner{display:grid}.footer-grid{grid-template-columns:1fr 1fr}.detail-grid .hero-brand-name{font-size:clamp(28px,4vw,48px);font-weight:900;letter-spacing:-.045em;color:#cdb8ff;margin:12px 0 2px;line-height:1}.hero-brand-name::after{content:"";display:block;width:74px;height:4px;border-radius:99px;background:linear-gradient(90deg,var(--p),var(--p2));margin-top:10px}h1{font-size:42px}.panel-layout{grid-template-columns:1fr}.sidebar{position:relative;height:auto;padding:10px;display:block}.side-brand{padding:3px 5px 10px}.side-brand div{display:block}.side-brand b{display:block;font-size:11px;line-height:1.15;max-width:190px}.side-brand small{display:block;font-size:8px;letter-spacing:.12em;margin-top:3px}.sidebar nav{display:flex;overflow:auto}.sidebar nav a{font-size:10px;white-space:nowrap}.sidebar nav a span{display:inline}.logout{position:absolute;right:10px;top:11px;margin:0}.panel-main{padding:18px 14px}.panel-header{align-items:start}.profile{display:none}.stat-grid{grid-template-columns:1fr 1fr}.stat b{font-size:22px}.study-card{grid-template-columns:auto 1fr}.study-card .btn{grid-column:1/-1}.mini-course-grid{grid-template-columns:1fr}.catalog-tools{display:grid}.catalog-tools select{height:44px}.classroom{grid-template-columns:1fr}.classroom aside{display:none}.lesson-actions{flex-direction:column;gap:8px}.profile-form{grid-template-columns:1fr}.profile-form label:nth-child(n){grid-column:1}.payment-grid{grid-template-columns:1fr 1fr}.table-actions{align-items:start;flex-direction:column}.panel-card{padding:16px}table{min-width:620px;display:block;overflow:auto}.full-card{overflow:hidden}.process{grid-template-columns:1fr}.auth{padding:35px 12px}.auth-card{padding:25px}}

/* GAAI EAD — tema escuro responsivo */
:root{
  --p:#8b5cf6;
  --p2:#a78bfa;
  --ink:#f4f0ff;
  --muted:#aaa2b9;
  --bg:#0d0b12;
  --card:#17131f;
  --line:#2b2535;
  --soft:#241c32;
  --ok:#45c58a;
  --warn:#e5b45c;
}
html{background:var(--bg)}
body{color:var(--ink);background:var(--bg)}
.top{background:rgba(13,11,18,.88);border-bottom-color:rgba(53,45,66,.85)}
.brand small,nav a,.eyebrow,.trust,.course-meta,.back{color:#a9a1b5}
nav a:hover,.text-link,.eyebrow.purple,.feature a,.role-grid a b{color:var(--p2)}
.btn.ghost{color:#d0c9dc}
.btn.soft{background:var(--soft);color:#c8b5ff}
.btn.white{background:#fff;color:#5b21b6}
.hero{background:radial-gradient(circle at 80% 20%,#30204f 0,transparent 34%),linear-gradient(180deg,#15101d,#0d0b12)}
h1,h2,h3{color:var(--ink)}
p{color:var(--muted)}
.hero-text{color:#b9b1c4}.hero-image{position:relative;min-height:365px;border-radius:28px;overflow:hidden;border:1px solid #ffffff18;box-shadow:0 28px 70px #00000055;background:#241b36}.hero-image img{width:100%;height:365px;display:block;object-fit:cover}.hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#24163dcc 0%,#24163d35 34%,transparent 72%)}.hero-image-badge{position:absolute;z-index:2;left:22px;bottom:22px;display:grid;gap:2px;padding:12px 15px;border-radius:13px;background:#171021d9;border:1px solid #ffffff1c;color:#fff;backdrop-filter:blur(8px)}.hero-image-badge b{font-size:13px;letter-spacing:.08em}.hero-image-badge span{font-size:11px;color:#c9bdd9}
.section{background:var(--bg)}
.section.alt{background:#121019}
.course-card,.feature,.empty,.lesson-list,.side-card,.auth-card,.panel-card,.stat,.mini-course,.search,.catalog-tools select,.process>div,.role-grid>a,.study-card,.settings-list>div,.builder-item,.person,.exam,.cert-row,.notifications>div{background:var(--card);border-color:var(--line);color:var(--ink)}
.course-card{box-shadow:0 12px 30px rgba(0,0,0,.22)}
.course-card:hover{box-shadow:0 20px 42px rgba(0,0,0,.34)}
.course-body p,.feature p,.process p,.role-grid p,.auth-card>p,.auth-foot,.course-meta{color:var(--muted)}
.course-bottom{border-top-color:var(--line)}
.search input,.catalog-tools select{color:var(--ink)}
.search input::placeholder{color:#756d82}
.catalog-tools select{background:var(--card)}
.catalog-tools select option{background:var(--card);color:var(--ink)}
.empty{border-color:#403653}
.course-hero{background:linear-gradient(135deg,#1b1427,#0d0b12)}
.lesson{border-bottom-color:var(--line)}
.lesson-list{background:var(--card)}
.lesson small,.person small,.builder-item small,.cert-row small,.notifications p,.notifications small{color:#8e879b}
.lesson i{color:#6f687a}
.lesson>span,.feature-list>div,.payment-grid div,.table-btn,.quick a,.mini-course .progress,.study-card,.notice,.demo-login,.notifications>div>span{background:var(--soft)}
.side-card>span,.side-card p{color:#aaa2b9}
.auth-card input,.profile-form input{background:#100d16;color:var(--ink);border-color:#3a3247}
.auth-card input::placeholder,.profile-form input::placeholder{color:#746b81}
.auth-card input:focus,.profile-form input:focus{border-color:var(--p);box-shadow:0 0 0 3px rgba(139,92,246,.16)}

.success{background:#12281f;color:#70d6a8}
.error{background:#32181c;color:#ff9caa}
.role-grid>a{display:block;padding:24px;border:1px solid var(--line);border-radius:17px}
.role-grid>a:hover{border-color:#57466f;transform:translateY(-2px)}
.panel-layout{background:#0d0b12}
.sidebar{background:#17121f;border-right:1px solid #2b2535}
.panel-main{background:#0d0b12}
.panel-header .eyebrow{color:#a79db4}
.profile{color:#d7d0df}
.profile small{color:#8d8498}
.stat span,.stat small,.mini-course small,.count,th{color:#8f8799}
td,th{border-bottom-color:var(--line);color:#d8d1df}
td small{color:#8f8799}
.status.ok{background:#123225;color:#6de0a7}
.status.wait{background:#352b18;color:#e8bf67}
.quick a{border-color:var(--line);color:#d8d0e2}
.quick a:hover{border-color:#59486f;color:#c4aaff}
.bars{background:linear-gradient(180deg,#181420,#100d16)}
.table-btn{color:#c6b0ff}
.content-builder .builder-item,.settings-list>div{background:var(--card)}
.settings-list>div span,.feature-list small,.payment-grid small{color:#8f8799}
.notice{color:#bdb4c9}
.certificate{background:#17131f;border-color:#5d487d;color:var(--ink)}
.certificate p{color:#aaa2b9}
.classroom{background:var(--card);border-color:var(--line)}
.lesson-view{background:var(--card)}
.video-placeholder{background:linear-gradient(135deg,#20172e,#493263)}
.exam p{color:var(--muted)}
footer{background:#09070d}
.menu{color:#eee7f7}
.menu-open .nav>nav,.menu-open .nav-actions{background:#17121f;border-bottom-color:var(--line)}
@media(max-width:650px){.menu-open .nav>nav a{color:#d8d0e2}.panel-main{background:#0d0b12}}
.notice-list{display:grid;gap:10px}.notice-item{display:grid;grid-template-columns:38px 1fr;gap:11px;border:1px solid var(--line);border-radius:12px;padding:12px;background:var(--card)}.notice-icon{width:38px;height:38px;border-radius:10px;background:var(--soft);display:grid;place-items:center}.notice-item h3{font-size:13px;margin:3px 0}.notice-item p{font-size:10px;margin:4px 0}.notice-item small{font-size:8px;color:#938b9d}.notice-list-large{max-width:900px}.notice-form{display:grid;gap:13px;padding:18px;background:#faf9fc;border:1px solid var(--line);border-radius:14px;margin-bottom:18px}.notice-form label{display:grid;gap:6px;font-size:11px;font-weight:800;color:#5c5668}.notice-form input,.notice-form select,.notice-form textarea{border:1px solid #ddd7e6;border-radius:10px;padding:11px 12px;outline:none;background:#fff;resize:vertical}.notice-form input:focus,.notice-form select:focus,.notice-form textarea:focus{border-color:var(--p);box-shadow:0 0 0 3px #6d28d915}.form-grid{display:grid;grid-template-columns:2fr 1fr;gap:12px}.notice-admin-list{display:grid;gap:10px}.notice-admin-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}.table-btn.danger{background:#fff0f0;color:#a83232}.course-admin-card{display:flex;justify-content:space-between;gap:18px;align-items:start;border:1px solid var(--line);border-radius:15px;padding:20px;background:#fff}.course-admin-card h3{font-size:18px}.course-admin-card p{font-size:11px;max-width:700px}.course-copy{margin-top:25px}.course-copy h3{margin-top:22px}.course-copy ul{padding-left:20px;color:var(--muted);font-size:12px}.course-copy li{margin:8px 0}.empty.compact{padding:25px}
@media(max-width:650px){.form-grid{grid-template-columns:1fr}.notice-admin-row{grid-template-columns:1fr}.course-admin-card{display:grid}}

.preline{white-space:pre-line}

/* GAAI EAD — experiência de curso / sala de aula */
.learning-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.learning-steps>div{border:1px solid var(--line);border-radius:14px;padding:16px;background:var(--soft);display:grid;gap:4px}.learning-steps b{color:var(--p2);font-size:12px}.learning-steps span{font-weight:800;font-size:13px}.learning-steps small{color:var(--muted);font-size:10px}.classroom-top{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:22px}.classroom-top p{max-width:700px}.classroom-progress{width:230px;min-width:190px}.classroom-progress b{font-size:24px;display:block}.classroom-progress span,.classroom-progress small{display:block;color:var(--muted);font-size:10px}.classroom-progress .progress{margin:8px 0}.classroom-shell{display:grid;grid-template-columns:330px 1fr;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--card)}.classroom-shell aside{border-right:1px solid var(--line);padding:15px;background:var(--soft);max-height:650px;overflow:auto}.classroom-shell aside>b{display:block;font-size:11px;padding:5px 8px 12px}.class-lesson{width:100%;display:grid;grid-template-columns:34px 1fr;text-align:left;gap:9px;align-items:start;border:0;border-radius:10px;background:transparent;color:var(--ink);padding:11px 8px;margin:2px 0}.class-lesson:hover,.class-lesson.selected{background:var(--card)}.class-lesson>span{width:28px;height:28px;border-radius:8px;background:var(--card);color:var(--p2);display:grid;place-items:center;font-size:9px;font-weight:800}.class-lesson div{font-size:11px;line-height:1.35}.class-lesson small{display:block;color:var(--muted);font-size:8px;margin-top:3px}.lesson-view{padding:35px;min-height:500px}.lesson-kicker{font-size:9px;font-weight:800;letter-spacing:.16em;color:var(--p2)}.lesson-view h2{margin-top:8px}.lesson-view>p{max-width:760px}.material-placeholder{border:1px dashed #514264;border-radius:15px;background:var(--soft);padding:35px;text-align:center;display:grid;gap:6px;margin-top:25px}.material-placeholder span{font-size:35px}.material-placeholder b{font-size:14px}.material-placeholder small{color:var(--muted);font-size:10px}.builder-intro{border:1px solid var(--line);background:var(--soft);border-radius:13px;padding:14px;margin-bottom:10px;display:flex;justify-content:space-between;gap:15px}.builder-intro b{font-size:12px}.builder-intro span{font-size:10px;color:var(--muted)}.course-copy li{margin:9px 0}.course-copy .notice{margin-top:22px}.notice-form{background:var(--card);color:var(--ink)}
@media(max-width:900px){.learning-steps{grid-template-columns:1fr 1fr}.classroom-shell{grid-template-columns:260px 1fr}.classroom-top{align-items:start;flex-direction:column}.classroom-progress{width:100%}}
@media(max-width:650px){.learning-steps{grid-template-columns:1fr}.classroom-shell{grid-template-columns:1fr}.classroom-shell aside{max-height:330px;border-right:0;border-bottom:1px solid var(--line)}.lesson-view{padding:22px}.builder-intro{display:grid}.course-preview{min-height:220px}}
/* Home — composição inspirada no layout aprovado, preservando a paleta escura GAAI EAD */
.hero-home{padding:0;background:#0d0b12}
.hero-home-inner{position:relative;min-height:430px;display:grid;grid-template-columns:1fr 1.15fr;align-items:stretch;overflow:hidden;border-radius:0 0 26px 26px}
.hero-copy{position:relative;z-index:3;display:flex;flex-direction:column;justify-content:center;padding:58px 20px 58px 34px;background:linear-gradient(90deg,#171021 0%,#171021f5 62%,#171021b5 100%)}
.hero-copy .hero-brand-name{font-size:clamp(32px,4.4vw,56px);margin:10px 0 5px;color:#cdb8ff}
.hero-copy h1{font-size:clamp(42px,5.2vw,67px);margin:10px 0 8px;max-width:650px}
.hero-subtitle{font-size:clamp(22px,2.5vw,31px);color:#cbb9f5;margin:0 0 14px;letter-spacing:-.03em}
.hero-copy .hero-text{font-size:16px;max-width:560px}
.hero-visual{position:relative;min-height:430px;overflow:hidden;margin-left:-20px}
.hero-visual img{width:100%;height:100%;min-height:430px;display:block;object-fit:cover}
.hero-visual-shade{position:absolute;inset:0;background:linear-gradient(90deg,#171021 0%,#17102145 26%,transparent 60%),linear-gradient(0deg,#0d0b1240,transparent 35%)}
.hero-side-points{position:absolute;right:28px;top:58px;display:grid;gap:24px;color:#efe9fa;font-size:13px;z-index:2;text-shadow:0 2px 12px #000}
.hero-side-points span{display:flex;gap:11px;align-items:center}
.hero-side-points span:first-letter{color:#bba0ff}
.hero-side-points b{font-weight:600}
.featured-course{padding-top:62px}
.featured-course-card{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--card);box-shadow:0 16px 40px #00000020}
.featured-course-card .course-card{display:grid;grid-template-columns:285px 1fr;min-height:190px;border:0;border-radius:0;box-shadow:none;background:transparent}
.featured-course-card .course-cover{height:auto;min-height:190px;border-radius:0}
.featured-course-card .course-body{padding:28px 30px}
.featured-course-card .course-body p{max-width:760px;min-height:auto}
.featured-course-card .course-meta{margin:13px 0}
.featured-course-card .course-bottom{padding-top:14px}
.benefits{padding-top:62px;padding-bottom:72px}
.benefit-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.benefit{text-align:center;padding:20px 12px}
.benefit>span{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;margin:0 auto 15px;background:var(--soft);color:#c5aaff;font-size:24px;font-weight:800;border:1px solid #4a3a60}
.benefit h3{font-size:14px;margin:0 0 7px}
.benefit p{font-size:11px;margin:0}
@media(max-width:900px){.hero-home-inner{grid-template-columns:1fr}.hero-copy{background:linear-gradient(90deg,#171021f7,#171021d9);min-height:430px}.hero-visual{position:absolute;inset:0;margin:0;z-index:0}.hero-copy{z-index:2}.hero-side-points{right:18px;top:22px;font-size:11px}.featured-course-card .course-card{grid-template-columns:220px 1fr}.benefit-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:650px){.hero-home-inner{min-height:560px}.hero-copy{padding:45px 22px 42px;justify-content:flex-end}.hero-visual{min-height:560px}.hero-visual img{min-height:560px}.hero-side-points{top:22px;right:15px;gap:10px}.hero-side-points span{background:#171021bb;border:1px solid #ffffff18;border-radius:9px;padding:7px 9px}.featured-course-card .course-card{display:block}.featured-course-card .course-cover{min-height:150px;height:150px}.featured-course-card .course-body{padding:20px}.benefit-grid{grid-template-columns:1fr 1fr}.benefit:last-child{grid-column:1/-1}}
/* Avaliações, pagamentos e contato da plataforma */
.testimonials{padding-top:62px;padding-bottom:70px}.section-lead{max-width:650px;margin:8px auto 0}.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.testimonial{border:1px solid var(--line);border-radius:18px;padding:24px;background:var(--card);display:grid;gap:13px}.testimonial .stars{color:#c5aaff;letter-spacing:2px}.testimonial p{font-size:13px;line-height:1.7;margin:0;color:var(--ink)}.testimonial b{display:block;font-size:12px}.testimonial small{display:block;color:var(--muted);font-size:9px;margin-top:4px}.payment-section{padding-top:58px;padding-bottom:62px}.payment-info{display:grid;grid-template-columns:1fr 1.5fr;gap:30px;align-items:center}.payment-methods{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.payment-methods>div,.payment-admin-methods>div{border:1px solid var(--line);border-radius:14px;padding:18px;background:var(--card);display:grid;gap:5px}.payment-methods span{font-size:24px;color:#c5aaff}.payment-methods b{font-size:13px}.payment-methods small,.payment-admin-methods span{font-size:9px;color:var(--muted)}.footer-contact{font-size:11px}.footer-contact a{color:#c5aaff}.payment-admin-methods{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0}.testimonial-admin-list{display:grid;gap:12px}.testimonial-admin-row{display:grid;grid-template-columns:1fr auto;gap:15px;align-items:center;border:1px solid var(--line);border-radius:14px;padding:16px;background:var(--card)}.testimonial-admin-row span,.testimonial-admin-row small{display:block;color:var(--muted);font-size:9px}.testimonial-admin-row p{margin:8px 0;font-size:12px}@media(max-width:900px){.testimonial-grid{grid-template-columns:1fr 1fr}.payment-info{grid-template-columns:1fr}.payment-methods{grid-template-columns:1fr 1fr}.payment-admin-methods{grid-template-columns:1fr}}@media(max-width:650px){.testimonial-grid{grid-template-columns:1fr}.payment-methods{grid-template-columns:1fr}.testimonial-admin-row{grid-template-columns:1fr}}

/* Institucional — Quem somos */
.about-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:22px;align-items:stretch}.about-card{background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.09);border-radius:24px;padding:34px;box-shadow:0 18px 50px rgba(0,0,0,.18)}.about-card.featured{border-color:rgba(167,139,250,.28);background:linear-gradient(145deg,rgba(109,40,217,.16),rgba(255,255,255,.035))}.about-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:16px;background:rgba(167,139,250,.14);color:#c4b5fd;font-weight:800;font-size:22px;margin-bottom:24px}.about-card h2{font-size:clamp(1.5rem,3vw,2.15rem);line-height:1.12;margin:10px 0 18px}.about-card p,.ceo-card p{color:var(--muted);line-height:1.75}.ceo-section{padding-top:70px;padding-bottom:70px}.ceo-card{display:grid;grid-template-columns:minmax(260px,340px) 1fr;gap:34px;align-items:center;border:1px solid rgba(167,139,250,.24);border-radius:28px;padding:38px;background:linear-gradient(120deg,rgba(109,40,217,.14),rgba(255,255,255,.025))}.ceo-photo{width:100%;border-radius:22px;overflow:hidden;box-shadow:0 18px 45px rgba(61,34,115,.22);background:#24105c}.ceo-photo img{display:block;width:100%;height:auto;aspect-ratio:649/365;object-fit:cover}.ceo-card h2{font-size:clamp(2rem,4vw,3rem);margin:8px 0 4px}.ceo-card h3{margin:0 0 18px;color:#c4b5fd;font-size:1rem;font-weight:700}.ceo-card .eyebrow{display:inline-block}
@media(max-width:760px){.about-grid{grid-template-columns:1fr}.ceo-card{grid-template-columns:1fr;text-align:center;padding:24px}.ceo-photo{max-width:520px;margin:auto}.ceo-card p{text-align:left}.about-card{padding:25px}}

/* Identidade visual GAAI — claro por padrão, escuro opcional */
:root{
  --p:#7c3aed;--p2:#a78bfa;--ink:#211a2d;--muted:#6f6880;--bg:#ffffff;--card:#ffffff;--line:#e8e1f2;--soft:#f2eaff;--header:#ffffffee;--hero-bg:#fbf9ff;--hero-ink:#211a2d;--hero-muted:#6f6880;
}
html[data-theme="dark"]{
  --p:#a78bfa;--p2:#c4b5fd;--ink:#f6f2fb;--muted:#b7aec6;--bg:#0e0b14;--card:#17121f;--line:#30263d;--soft:#281d39;--header:#110d18ee;--hero-bg:#0e0b14;--hero-ink:#f8f5ff;--hero-muted:#b7aec6;
}
body{background:var(--bg);color:var(--ink);transition:background .25s,color .25s}
.top{background:var(--header);border-bottom-color:var(--line)}
.brand-logo{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;position:relative;flex:0 0 auto;background:linear-gradient(145deg,#8b5cf6,#6d28d9);color:#fff;box-shadow:0 9px 22px #7c3aed30;overflow:hidden}
.brand-logo::after{content:"";position:absolute;width:30px;height:10px;border-radius:50%;border:2px solid #fff;opacity:.95;transform:rotate(-9deg)}
.brand-logo-cap{position:absolute;font-size:15px;transform:translateY(-6px) rotate(45deg);color:#fff}
.brand-logo-text{position:absolute;bottom:4px;font-size:8px;font-weight:900;letter-spacing:.06em;color:#fff}
.brand-mark{display:none}
.theme-controls{display:flex;align-items:center;gap:4px;padding:4px;border:1px solid var(--line);background:var(--soft);border-radius:12px}
.theme-btn{width:34px;height:34px;border:0;border-radius:9px;background:transparent;color:var(--muted);display:grid;place-items:center;font-size:15px;cursor:pointer;transition:.2s}
.theme-btn.active{background:var(--card);color:var(--p);box-shadow:0 2px 8px #00000012}
.theme-btn:hover{transform:translateY(-1px);color:var(--p)}
nav a{color:var(--muted)}
.btn.ghost{color:var(--ink)}
.btn.soft{background:var(--soft);color:var(--p)}
.hero-home{padding:0;background:var(--hero-bg)}
.hero-home-inner{min-height:455px;border-radius:0 0 30px 30px;box-shadow:0 18px 45px #5b21b608}
.hero-copy{padding:62px 35px 62px 42px;background:linear-gradient(135deg,#fff 0%,#faf7ff 68%,#f1eaff 100%)}
html[data-theme="dark"] .hero-copy{background:linear-gradient(135deg,#17121f 0%,#17121f 65%,#241a34 100%)}
.hero-copy .hero-brand-name{color:#8b5cf6}
.hero-copy h1{color:#211a2d}
html[data-theme="dark"] .hero-copy h1{color:#f8f5ff}
.hero-subtitle{color:#7c3aed}
html[data-theme="dark"] .hero-subtitle{color:#c4b5fd}
.hero-copy .hero-text{color:#6f6880}
html[data-theme="dark"] .hero-copy .hero-text{color:#b7aec6}
.hero-copy .eyebrow{color:#7c3aed}
.hero-visual{margin-left:0;border-left:1px solid #e7dcf5}
html[data-theme="dark"] .hero-visual{border-left-color:#30263d}
.hero-visual img{object-position:center}
.hero-visual-shade{background:linear-gradient(90deg,#7c3aed22 0%,transparent 32%),linear-gradient(0deg,#120b1d25,transparent 35%)}
.hero-side-points{right:24px;top:48px;color:#fff}
.featured-course-card,.course-card,.feature,.testimonial,.side-card,.lesson-list,.empty,.auth-card,.search,.catalog-tools select{background:var(--card);border-color:var(--line);color:var(--ink)}
.section.alt{background:color-mix(in srgb,var(--soft) 65%,var(--bg))}
.feature p,.course-body p,.benefit p,.testimonial p,.about-card p,.ceo-card p{color:var(--muted)}
.about-card,.ceo-card{background:linear-gradient(145deg,color-mix(in srgb,var(--p) 8%,var(--card)),var(--card));border-color:color-mix(in srgb,var(--p) 25%,var(--line))}
html[data-theme="dark"] .about-card,html[data-theme="dark"] .ceo-card{background:linear-gradient(145deg,#21182d,#17121f)}
.footer-grid .brand-logo{box-shadow:none}
@media(max-width:900px){.theme-controls{order:-1}.nav-actions{gap:6px}.hero-copy{background:linear-gradient(135deg,#ffffffee,#f4edffea)}html[data-theme="dark"] .hero-copy{background:linear-gradient(135deg,#17121ff2,#17121fdd)}}
@media(max-width:650px){.nav-actions{display:none}.menu-open .nav-actions{display:flex;position:absolute;top:66px;left:0;right:0;background:var(--card);padding:12px;flex-wrap:wrap;border-bottom:1px solid var(--line);z-index:25}.menu-open .nav-actions .theme-controls{margin-right:auto}.brand b{font-size:12px;max-width:230px}.brand small{font-size:8px}.hero-copy{padding:45px 22px 42px}}

/* ===== GAAI EAD — layout fiel ao protótipo aprovado ===== */
:root{--ref-navy:#27165f;--ref-purple:#7138d4;--ref-lilac:#a978ff;--ref-pale:#f7f4ff;--ref-text:#241760}
html[data-theme="light"] body{background:#fff;color:var(--ref-text)}
.wrap{width:min(1320px,calc(100% - 48px))}
.top{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);border-bottom:1px solid #eee9fa;box-shadow:0 2px 14px #25145a0a}
.nav{height:70px;gap:34px}.gaai-brand{gap:12px}.brand-logo{width:48px;height:48px;background:transparent!important;box-shadow:none!important;border-radius:0;color:#2d1767;overflow:visible}.brand-logo svg{width:48px;height:48px}.gaai-brand b{font-size:24px;letter-spacing:-.03em;color:#2d1767;line-height:1}.gaai-brand small{font-size:9px;letter-spacing:0;color:#4b3978;margin-top:3px}.main-nav{justify-content:center;gap:29px}.main-nav a{font-size:12px;color:#241760;font-weight:600;position:relative;padding:25px 0}.main-nav a:hover{color:#7138d4}.main-nav a:first-child:after{content:"";position:absolute;height:2px;left:0;right:0;bottom:14px;background:#5f35b6}.nav-actions{align-items:center;margin-left:auto}.theme-controls{padding:2px;border-color:#e8e0f7;background:#f8f5ff}.theme-btn{width:30px;height:30px}.btn.compact{padding:9px 15px}.profile-link{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:600;color:#2b1767;max-width:230px}.profile-link>span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-avatar{width:29px;height:29px;border-radius:50%;background:#2b1767;color:#fff;display:grid;place-items:center;font-size:9px}
.reference-hero{padding:0;background:#1d123f}.reference-hero-bg{background:linear-gradient(90deg,#21134d 0%,#2c1b62 48%,#382172 100%)}.reference-hero-inner{height:365px;position:relative;overflow:hidden;display:grid;grid-template-columns:43% 57%;max-width:1536px;width:100%}.reference-hero-copy{position:relative;z-index:3;padding:34px 20px 34px max(24px,calc((100vw - 1320px)/2));display:flex;flex-direction:column;justify-content:center;color:#fff;background:linear-gradient(90deg,#251653 0%,#251653f4 70%,#25165300 100%)}.hero-chip{align-self:flex-start;padding:7px 13px;border-radius:9px;background:linear-gradient(135deg,#6e36d5,#9158ef);font-size:12px;font-weight:800}.reference-hero h1{font-size:clamp(40px,4.2vw,58px);line-height:.98;margin:13px 0 8px;letter-spacing:-.045em;color:#fff}.reference-hero h1 em{color:#9b6bff}.reference-hero h2{font-size:24px;margin:0 0 10px;color:#c9b1ff;letter-spacing:-.025em}.reference-hero p{font-size:13px;line-height:1.55;color:#fff;margin:0 0 18px}.hero-button{align-self:flex-start;background:linear-gradient(90deg,#c5a7ff,#a57cf8);color:#27165f;border-radius:22px;padding:11px 21px;font-size:12px}.hero-button:hover{background:#d3bdff}.reference-hero-photo{position:absolute;right:0;top:0;width:66%;height:100%;overflow:hidden}.reference-hero-photo:before{content:"";position:absolute;z-index:2;inset:0;background:linear-gradient(90deg,#251653 0%,#251653b8 9%,transparent 35%)}.reference-hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.reference-courses{padding:25px 0 20px;background:#fff}.reference-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:13px}.reference-title h2,.reference-center-title h2{font-size:22px;letter-spacing:-.03em;color:#2d1767;margin:0}.reference-title i,.reference-center-title i{display:block;width:34px;height:2px;background:#9b6bff;margin-top:8px}.reference-title>a{font-size:11px;color:#3d35c5}.reference-course-list{display:grid;gap:12px}.reference-course-card{display:grid!important;grid-template-columns:270px 1fr 155px!important;align-items:stretch;min-height:155px!important;border:1px solid #ddd6ef!important;border-radius:11px!important;box-shadow:none!important;overflow:hidden;background:#fff!important}.reference-course-card:hover{transform:none;box-shadow:0 8px 25px #3014690d!important}.reference-course-card .course-cover{height:100%!important;min-height:155px!important;padding:0!important;position:relative;background:linear-gradient(135deg,#2b185c,#7246a7)!important}.fuel-art{position:absolute;inset:0;display:grid;place-items:center;background:radial-gradient(circle at 70% 35%,#d6b58a55,transparent 30%),linear-gradient(125deg,#1b1631,#5a3a75)}.fuel-art span{font-size:58px;filter:drop-shadow(0 8px 12px #0005)}.reference-course-card .pill{position:absolute;left:15px;top:15px;background:linear-gradient(135deg,#6f35d2,#8b4fe6);font-size:12px;padding:9px 19px;border-radius:13px;z-index:2}.reference-course-card .course-body{padding:16px 20px!important}.reference-course-card .course-body h3{font-size:18px;color:#2b1767;margin:0 0 9px}.reference-course-card .course-body p{font-size:11px;color:#3f3475;line-height:1.65;max-width:760px;margin:10px 0 0}.reference-course-card .course-meta{font-size:10px;color:#5145a6;gap:24px;margin:0;flex-wrap:wrap}.course-action{display:grid;place-items:center;padding:18px}.course-action .btn{border-radius:24px;padding:11px 24px;font-size:12px;background:linear-gradient(90deg,#6530ca,#7b3bd6)}
.reference-benefits{padding:24px 0 28px;background:linear-gradient(180deg,#faf8ff,#fff)}.reference-center-title{text-align:center;margin-bottom:14px}.reference-center-title i{margin:8px auto 0}.reference-benefit-grid{grid-template-columns:repeat(5,1fr);gap:26px}.reference-benefit-grid .benefit{padding:0 10px}.reference-benefit-grid .benefit>span{width:48px;height:48px;background:#eee4ff;color:#5e2bd0;border:0;font-size:22px;margin-bottom:9px}.reference-benefit-grid h3{font-size:12px;color:#2b1767}.reference-benefit-grid p{font-size:10px;color:#4d4179;max-width:190px;margin:0 auto}.reference-about-strip{padding:34px 0;background:#faf8ff;border-top:1px solid #eee9fa}.reference-about-strip>.wrap{display:flex;justify-content:space-between;align-items:center;gap:25px}.reference-about-strip h2{font-size:24px;color:#2b1767}.reference-about-strip p{font-size:12px;margin:0}.site-footer{background:linear-gradient(90deg,#28175c,#32196c);color:#fff;padding:0}.footer-bar{height:82px;display:flex;align-items:center;gap:50px}.footer-brand .brand-logo{color:#c4a5ff}.footer-brand b{color:#fff}.footer-brand small{color:#c8b8ea}.footer-links{display:flex;gap:30px;margin:auto;font-size:10px;color:#e7def7}.footer-secure{display:flex;align-items:center;gap:9px;font-size:10px}.footer-secure>span{font-size:22px}.footer-secure b,.footer-secure small{display:block}.footer-secure small{color:#c8b8ea}.footer-sub{border-top:1px solid #ffffff16;padding:10px 0 14px;display:flex;justify-content:space-between;font-size:9px;color:#bfaedf}
html[data-theme="dark"] .top{background:#120d1a;border-bottom-color:#2f2540}.html{}html[data-theme="dark"] .brand-logo,html[data-theme="dark"] .gaai-brand b,html[data-theme="dark"] .main-nav a{color:#d7c3ff}html[data-theme="dark"] .gaai-brand small{color:#a99abd}html[data-theme="dark"] .reference-courses{background:#100c17}html[data-theme="dark"] .reference-title h2,html[data-theme="dark"] .reference-center-title h2,html[data-theme="dark"] .reference-course-card .course-body h3,html[data-theme="dark"] .reference-benefit-grid h3,html[data-theme="dark"] .reference-about-strip h2{color:#eee6ff}html[data-theme="dark"] .reference-course-card{background:#17121f!important;border-color:#30263d!important}html[data-theme="dark"] .reference-course-card .course-body p,html[data-theme="dark"] .reference-benefit-grid p{color:#b7aec6}html[data-theme="dark"] .reference-benefits,html[data-theme="dark"] .reference-about-strip{background:#0e0b14;border-color:#30263d}
@media(max-width:1050px){.main-nav{gap:16px}.main-nav a{font-size:11px}.profile-link>span:nth-child(2){display:none}.reference-hero-inner{grid-template-columns:52% 48%}.reference-hero-photo{width:62%}.reference-course-card{grid-template-columns:220px 1fr 130px!important}.reference-benefit-grid{gap:10px}}
@media(max-width:820px){.nav{height:66px}.main-nav{display:none}.menu{display:block;margin-left:auto}.nav-actions{margin-left:0}.menu-open .main-nav{display:flex;position:absolute;left:0;right:0;top:66px;padding:14px 24px;background:var(--card);border-bottom:1px solid var(--line);flex-wrap:wrap;z-index:60}.menu-open .main-nav a{padding:8px}.reference-hero-inner{height:500px;display:block}.reference-hero-copy{height:100%;padding:40px 28px;justify-content:flex-end;background:linear-gradient(90deg,#251653ed,#251653a8)}.reference-hero-photo{width:100%}.reference-course-card{grid-template-columns:190px 1fr!important}.course-action{grid-column:2;padding:0 20px 18px;place-items:start}.reference-benefit-grid{grid-template-columns:repeat(3,1fr)}.footer-links{display:none}.footer-bar{justify-content:space-between}}
@media(max-width:560px){.wrap{width:min(100% - 28px,1320px)}.gaai-brand b{font-size:19px}.brand-logo,.brand-logo svg{width:40px;height:40px}.nav-actions .theme-controls{display:flex}.nav-actions .profile-link,.nav-actions>.btn{display:none}.reference-hero-inner{height:530px}.reference-hero-copy{padding:34px 20px}.reference-hero h1{font-size:42px}.reference-hero h2{font-size:21px}.reference-hero-photo img{object-position:62% center}.desktop-only{display:none}.reference-title h2{font-size:20px}.reference-title>a{font-size:10px}.reference-course-card{display:block!important}.reference-course-card .course-cover{height:150px!important}.reference-course-card .course-body{padding:18px!important}.course-action{padding:0 18px 18px}.reference-benefit-grid{grid-template-columns:1fr 1fr}.reference-benefit-grid .benefit:last-child{grid-column:1/-1}.reference-about-strip>.wrap{display:block}.reference-about-strip .btn{margin-top:18px}.footer-bar{height:auto;padding:24px 0}.footer-secure{margin-left:auto}.footer-sub{display:grid;gap:4px}.testimonial-grid{grid-template-columns:1fr}}

/* Identidade oficial fornecida pelo Grupo Andréa Alves Insights */
.brand-logo{width:52px;height:52px;display:grid;place-items:center;flex:0 0 auto;border-radius:10px!important;overflow:hidden!important;background:#2d0d72!important;box-shadow:none!important;color:inherit!important}
.brand-logo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.footer-brand .brand-logo{background:#2d0d72!important;border:1px solid rgba(255,255,255,.14)}
.side-brand .brand-logo{width:44px;height:44px;border-radius:9px!important}
.auth-brand .brand-logo{width:54px;height:54px}
html[data-theme="dark"] .brand-logo{color:inherit}
@media(max-width:560px){.brand-logo{width:44px;height:44px}.brand-logo img{width:100%;height:100%}}

/* =========================================================
   GAAI EAD - correções de contraste, logo e gestão administrativa
   ========================================================= */
.brand-logo::before,.brand-logo::after{display:none!important;content:none!important}
.brand-logo{background:transparent!important;border-radius:0!important;overflow:visible!important;width:58px!important;height:58px!important}
.brand-logo img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;border-radius:0!important}
.side-brand .brand-logo{width:50px!important;height:50px!important}
.footer-brand .brand-logo{background:transparent!important;border:0!important}

.panel-layout{background:#f6f3fb!important;color:#251943!important}
.panel-main{background:#f6f3fb!important;color:#251943!important}
.panel-header h1,.panel-card h2,.panel-card h3,.panel-card b,.panel-card label,.panel-main{color:#251943}
.panel-card,.stat,.admin-form,.content-column,.course-selector,.admin-course-row,.material-admin-row{background:#fff!important;color:#251943!important;border-color:#e6def5!important}
.panel-card p,.panel-card small,.stat small,.admin-course-row small,.material-admin-row small{color:#6e6480!important}
.panel-theme{display:flex;align-items:center;gap:16px}

.admin-form{display:grid;gap:14px;border:1px solid var(--line);border-radius:16px;padding:18px}
.admin-form label,.course-selector label{display:grid;gap:7px;font-size:12px;font-weight:700;color:#37275d}
.admin-form input,.admin-form textarea,.admin-form select,.course-selector select,.inline-admin-form input{width:100%;border:1px solid #dcd4eb;border-radius:10px;background:#fff;color:#251943;padding:11px 12px;outline:none}
.admin-form input:focus,.admin-form textarea:focus,.admin-form select:focus,.course-selector select:focus,.inline-admin-form input:focus{border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed18}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-grid.three{grid-template-columns:repeat(3,1fr)}
.form-check{display:flex;align-items:center;gap:9px}.form-check input{width:17px;height:17px}.form-check label{display:block}
.form-actions,.row-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.admin-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.9fr);gap:22px;align-items:start}
.admin-course-list,.material-admin-list{display:grid;gap:10px}
.admin-course-row,.material-admin-row{display:flex;align-items:center;gap:13px;border:1px solid var(--line);border-radius:13px;padding:11px}
.admin-course-row>div:nth-child(2),.material-admin-row>div:nth-child(2){flex:1;min-width:0}.admin-course-row b,.admin-course-row small,.material-admin-row b,.material-admin-row small,.material-admin-row a{display:block}.material-admin-row a{font-size:11px;color:#6d28d9;font-weight:700;margin-top:4px}
.admin-thumb{width:95px!important;min-width:95px!important;height:64px!important;min-height:64px!important;border-radius:9px!important;overflow:hidden!important;padding:0!important;background:#eee!important}
.course-cover img{width:100%;height:100%;object-fit:cover;display:block}
.reference-course-card .course-cover{background:#24164d!important}.reference-course-card .course-cover img{position:absolute;inset:0}
.course-detail-hero{padding:48px 0;background:linear-gradient(135deg,#f6f0ff,#fff)}.course-detail-grid{display:grid;grid-template-columns:1fr 440px;gap:38px;align-items:center}.course-detail-grid .eyebrow{display:block;margin-top:24px}.course-detail-grid h1{font-size:clamp(34px,4vw,52px);margin:10px 0 15px}.detail-cover{border-radius:22px;overflow:hidden;box-shadow:0 20px 50px #2c155426}.detail-cover-image{height:285px!important;min-height:285px!important;padding:0!important}.detail-cover-image img{object-fit:cover}
.course-selector{margin-bottom:18px}.course-selector label{max-width:650px}.admin-content-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,1fr);gap:22px}.content-column{border:1px solid var(--line);border-radius:16px;padding:16px}.content-column h3{margin:0 0 14px}.inline-admin-form{display:grid;grid-template-columns:1fr auto;gap:8px;margin-bottom:14px}
.material-type-icon{width:40px;height:40px;border-radius:10px;background:#f0e8ff;color:#6325ce;display:grid;place-items:center;font-weight:900;flex:0 0 auto}.student-materials{display:grid;gap:9px;margin:18px 0}.student-material{display:flex;align-items:center;gap:12px;border:1px solid var(--line);background:var(--card);border-radius:12px;padding:12px;color:var(--ink)}.student-material>span{width:38px;height:38px;border-radius:10px;background:var(--soft);display:grid;place-items:center;color:var(--p);font-weight:900}.student-material>div{flex:1}.student-material b,.student-material small{display:block}.student-material small{color:var(--muted)}.student-material em{font-style:normal;color:var(--p);font-size:11px;font-weight:800}
.preline{white-space:pre-line}
.success,.error{padding:10px 12px;border-radius:10px;margin-top:8px;font-size:12px;font-weight:700}.success{background:#e8f8ef;color:#146c43}.error{background:#fff0f0;color:#a12626}

html[data-theme="dark"] .panel-layout,html[data-theme="dark"] .panel-main{background:#0f0b16!important;color:#f5f0ff!important}
html[data-theme="dark"] .panel-header h1,html[data-theme="dark"] .panel-card h2,html[data-theme="dark"] .panel-card h3,html[data-theme="dark"] .panel-card b,html[data-theme="dark"] .panel-card label,html[data-theme="dark"] .panel-main{color:#f5f0ff!important}
html[data-theme="dark"] .panel-card,html[data-theme="dark"] .stat,html[data-theme="dark"] .admin-form,html[data-theme="dark"] .content-column,html[data-theme="dark"] .course-selector,html[data-theme="dark"] .admin-course-row,html[data-theme="dark"] .material-admin-row{background:#191321!important;color:#f5f0ff!important;border-color:#382c49!important}
html[data-theme="dark"] .panel-card p,html[data-theme="dark"] .panel-card small,html[data-theme="dark"] .stat small,html[data-theme="dark"] .admin-course-row small,html[data-theme="dark"] .material-admin-row small{color:#c1b7cf!important}
html[data-theme="dark"] .admin-form label,html[data-theme="dark"] .course-selector label{color:#efe7ff!important}
html[data-theme="dark"] .admin-form input,html[data-theme="dark"] .admin-form textarea,html[data-theme="dark"] .admin-form select,html[data-theme="dark"] .course-selector select,html[data-theme="dark"] .inline-admin-form input{background:#100c17;color:#f5f0ff;border-color:#443653}
html[data-theme="dark"] .course-detail-hero{background:linear-gradient(135deg,#171020,#0f0b16)}

@media(max-width:980px){.admin-split,.admin-content-grid,.course-detail-grid{grid-template-columns:1fr}.course-detail-grid{gap:20px}.detail-cover{order:-1}.form-grid.three{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.form-grid,.form-grid.three{grid-template-columns:1fr}.admin-course-row,.material-admin-row{align-items:flex-start;flex-wrap:wrap}.row-actions{width:100%}.admin-thumb{width:100%!important;height:150px!important}.inline-admin-form{grid-template-columns:1fr}.panel-theme .profile{display:none}}

/* Navegação contínua entre site, área do aluno e administração */
.profile-link{display:flex;align-items:center;gap:9px;color:var(--ink)!important}
.profile-link>span:last-child{display:grid;line-height:1.08}
.profile-link b{font-size:12px;font-weight:800;max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hello-label{font-size:9px;color:var(--muted);font-weight:600;letter-spacing:.02em}
.panel-site-nav{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.panel-site-nav a{font-size:11px;font-weight:800;color:var(--p);background:var(--soft);border:1px solid var(--line);padding:7px 10px;border-radius:9px}
.panel-site-nav a:hover{background:var(--p);color:#fff;border-color:var(--p)}
.side-site-links{display:grid!important;gap:3px;margin-top:12px;padding-top:13px;border-top:1px solid rgba(255,255,255,.12)}
.side-site-links>small{padding:0 12px 6px;font-size:8px;font-weight:800;letter-spacing:.13em;opacity:.6}
.side-site-links>a{display:flex!important}
html[data-theme="dark"] .profile-link{color:#f5f0ff!important}
html[data-theme="dark"] .panel-site-nav a{background:#241a34;border-color:#443653;color:#d5bfff}
@media(max-width:820px){.panel-site-nav{display:none}}

/* =========================================================
   Checkout e pagamentos Asaas
   ========================================================= */
.course-title-line{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.enrolled-course{border-color:#cfc0ee!important;box-shadow:0 10px 30px #6d28d912!important}.payment-head{padding-bottom:22px}.payment-section{padding-top:20px}.checkout-grid{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:28px;align-items:start}.payment-course-summary{display:grid;grid-template-columns:210px 1fr;gap:18px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:14px;margin-bottom:18px}.payment-course-summary .course-cover{height:125px!important;border-radius:13px!important;overflow:hidden;padding:0!important}.payment-course-summary .course-cover img{width:100%;height:100%;object-fit:cover}.payment-course-summary>div:last-child{display:grid;gap:5px}.payment-course-summary b{font-size:18px}.payment-course-summary span{font-size:12px;color:var(--muted)}.payment-course-summary strong,.checkout-price{font-size:24px;color:var(--p);display:block}.payment-methods{display:grid;gap:11px}.payment-method{width:100%;display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:12px;text-align:left;background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:15px;padding:15px;transition:.2s}.payment-method:hover{border-color:var(--p2);transform:translateY(-1px);box-shadow:0 10px 25px #6d28d912}.payment-method>span{width:44px;height:44px;border-radius:12px;background:var(--soft);color:var(--p);display:grid;place-items:center;font-size:21px;font-weight:900}.payment-method div{display:grid;gap:2px}.payment-method small{color:var(--muted)}.payment-method em{font-style:normal;color:var(--p);font-size:12px;font-weight:800}.payment-result-card{position:sticky;top:96px;background:var(--card);border:1px solid var(--line);border-radius:19px;padding:22px;box-shadow:0 15px 40px #3215500c}.payment-result-card>h2{margin-top:8px}.payment-lock{width:48px;height:48px;background:var(--soft);border-radius:13px;display:grid;place-items:center}.payment-config-warning{background:#fff8e8;border:1px solid #efd9a3;border-radius:14px;padding:14px;margin-bottom:16px}.payment-config-warning b{color:#8c5a08}.payment-config-warning p{margin:5px 0 0;font-size:12px}.payment-status{display:inline-flex;padding:6px 9px;border-radius:99px;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.payment-status.pending{background:#fff5d9;color:#936300}.pix-box{display:grid;gap:10px;margin:16px 0}.pix-box img{width:210px;max-width:100%;margin:auto;border-radius:12px;background:#fff;padding:9px;border:1px solid var(--line)}.pix-box label{display:grid;gap:6px;font-size:11px;font-weight:800}.pix-box textarea{width:100%;min-height:82px;resize:none;border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:10px;padding:10px;font:11px/1.35 monospace}.payment-loading,.payment-success-mini,.payment-success{display:grid;gap:10px;text-align:center;justify-items:center}.payment-loading>span{font-size:38px;animation:spin 1s linear infinite}.payment-success-mini>span,.payment-success>span{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#e8f8ef;color:#157a50;font-size:30px;font-weight:900}.payment-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.payment-success{max-width:680px;margin:auto;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:42px}.checkout-shell{max-width:850px}.checkout-summary{display:grid;grid-template-columns:320px 1fr;gap:24px;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:18px;align-items:center}.checkout-summary .course-cover{height:210px!important;border-radius:14px!important;overflow:hidden;padding:0!important}.checkout-summary>div:last-child{display:grid;gap:11px}.payment-admin-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:18px;padding:14px;background:var(--soft);border-radius:13px}.payment-admin-head>div{display:flex;gap:10px;align-items:center}.payment-admin-head p{margin:0;font-size:12px}.payment-admin-list{display:grid;gap:9px}.payment-admin-row{display:grid;grid-template-columns:1.1fr 1.4fr auto auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:13px;padding:12px;background:var(--card)}.payment-admin-row b,.payment-admin-row small{display:block}.payment-admin-row small{color:var(--muted)}@keyframes spin{to{transform:rotate(360deg)}}
html[data-theme="dark"] .payment-config-warning{background:#2b2416;border-color:#57451e}html[data-theme="dark"] .payment-config-warning b{color:#f1ca72}
@media(max-width:900px){.checkout-grid{grid-template-columns:1fr}.payment-result-card{position:static}.payment-course-summary{grid-template-columns:160px 1fr}.payment-admin-row{grid-template-columns:1fr 1fr}.payment-admin-row .status,.payment-admin-row .table-btn{justify-self:start}}
@media(max-width:600px){.payment-course-summary,.checkout-summary{grid-template-columns:1fr}.payment-course-summary .course-cover,.checkout-summary .course-cover{height:175px!important}.payment-method{grid-template-columns:44px 1fr}.payment-method em{grid-column:2}.payment-admin-head{display:grid}.payment-admin-row{grid-template-columns:1fr}.payment-success{padding:28px 18px}}

/* =========================================================
   REVISÃO FINAL — contraste, navegação selecionada e CEO
   ========================================================= */
html[data-theme="light"] .panel-layout,
html[data-theme="light"] .panel-main{background:#f4f2f8!important;color:#211633!important}
html[data-theme="light"] .panel-header h1,
html[data-theme="light"] .panel-card h2,
html[data-theme="light"] .panel-card h3,
html[data-theme="light"] .panel-card b,
html[data-theme="light"] .panel-card label,
html[data-theme="light"] .stat b,
html[data-theme="light"] .card-title h2,
html[data-theme="light"] .card-title h3{color:#211633!important}
html[data-theme="light"] .panel-card,
html[data-theme="light"] .stat,
html[data-theme="light"] .admin-form,
html[data-theme="light"] .content-column,
html[data-theme="light"] .course-selector,
html[data-theme="light"] .admin-course-row,
html[data-theme="light"] .material-admin-row,
html[data-theme="light"] .payment-admin-row{background:#fff!important;color:#211633!important;border-color:#ddd6eb!important}
html[data-theme="light"] .panel-card p,
html[data-theme="light"] .panel-card small,
html[data-theme="light"] .stat span,
html[data-theme="light"] .stat small,
html[data-theme="light"] .admin-course-row small,
html[data-theme="light"] .material-admin-row small,
html[data-theme="light"] .payment-admin-row small{color:#625970!important}
html[data-theme="light"] .quick a{background:#fff!important;color:#2f2145!important;border:1px solid #d9d0e8!important;opacity:1!important;font-weight:750!important}
html[data-theme="light"] .quick a:hover,
html[data-theme="light"] .quick a:focus-visible{background:#f2ecff!important;color:#5521ba!important;border-color:#8b5cf6!important;box-shadow:0 6px 18px rgba(109,40,217,.12)!important}
html[data-theme="light"] .table-btn{background:#f1ebff!important;color:#5521ba!important;border:1px solid #d6c9f5!important;opacity:1!important}
html[data-theme="light"] .table-btn:hover{background:#6d28d9!important;color:#fff!important;border-color:#6d28d9!important}
html[data-theme="light"] .table-btn.danger{background:#fff0f1!important;color:#a9252d!important;border-color:#f0c7ca!important}

.sidebar{background:linear-gradient(180deg,#171120 0%,#20162f 100%)!important;color:#fff!important}
.sidebar nav{gap:4px!important}
.sidebar nav>a,
.side-site-links>a{color:#eee8f8!important;opacity:1!important;border:1px solid transparent!important;background:transparent!important;font-weight:650!important;transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease!important}
.sidebar nav>a:hover,
.sidebar nav>a:focus-visible,
.side-site-links>a:hover,
.side-site-links>a:focus-visible{background:#2f2342!important;color:#fff!important;border-color:#4b3867!important;transform:translateX(2px)!important}
.sidebar nav>a.active,
.side-site-links>a.active{background:linear-gradient(135deg,#6d28d9,#8b5cf6)!important;color:#fff!important;border-color:#9b77ff!important;box-shadow:0 8px 22px rgba(77,38,140,.32)!important;font-weight:800!important}
.side-site-links>small{color:#cfc4dc!important;opacity:1!important}
.logout{color:#fff!important;background:#2d2140!important;border:1px solid #443259!important;opacity:1!important}
.logout:hover{background:#43295f!important}

.panel-site-nav a{color:#5422b6!important;background:#eee7fb!important;border-color:#d8caef!important;opacity:1!important}
.panel-site-nav a:hover,.panel-site-nav a:focus-visible{color:#fff!important;background:#6d28d9!important;border-color:#6d28d9!important}

.admin-form input,.admin-form textarea,.admin-form select,
.course-selector select,.inline-admin-form input{opacity:1!important}
html[data-theme="light"] .admin-form input,
html[data-theme="light"] .admin-form textarea,
html[data-theme="light"] .admin-form select,
html[data-theme="light"] .course-selector select,
html[data-theme="light"] .inline-admin-form input{background:#fff!important;color:#211633!important;border-color:#cfc5df!important}
html[data-theme="light"] .admin-form input::placeholder,
html[data-theme="light"] .admin-form textarea::placeholder,
html[data-theme="light"] .inline-admin-form input::placeholder{color:#8b8297!important;opacity:1!important}

/* Foto institucional da CEO: sem bordas pretas, centralizada e com enquadramento natural */
.ceo-photo{aspect-ratio:1/1!important;background:transparent!important;border:0!important;border-radius:24px!important;overflow:hidden!important;box-shadow:0 18px 45px rgba(61,34,115,.18)!important;max-width:420px!important;margin-inline:auto!important}
.ceo-photo img{display:block!important;width:100%!important;height:100%!important;aspect-ratio:auto!important;object-fit:cover!important;object-position:center 34%!important;background:transparent!important}

/* Logo oficial encaixada sem quadrado destacado */
.brand-logo{background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;overflow:visible!important}
.brand-logo img{object-fit:contain!important;background:transparent!important;border:0!important;box-shadow:none!important}

html[data-theme="dark"] .quick a{background:#21182d!important;color:#f1ebfa!important;border-color:#443454!important;opacity:1!important}
html[data-theme="dark"] .quick a:hover{background:#35234c!important;color:#fff!important;border-color:#7d55b0!important}
html[data-theme="dark"] .table-btn{background:#2a1e39!important;color:#d9c2ff!important;border:1px solid #4b375f!important}
html[data-theme="dark"] .table-btn:hover{background:#6d28d9!important;color:#fff!important}

@media(max-width:820px){
  .sidebar nav>a,.side-site-links>a{min-height:42px!important;align-items:center!important}
  .ceo-photo{max-width:360px!important}
}

/* =========================================================
   Fale conosco e recuperação de senha
   ========================================================= */
.footer-contact-mini{display:flex;align-items:center;gap:10px;margin-left:auto}.footer-contact-mini a{display:inline-flex;align-items:center;gap:7px;color:#fff;font-size:10px;font-weight:800;padding:8px 10px;border:1px solid rgba(255,255,255,.16);border-radius:10px;background:rgba(255,255,255,.06)}.footer-contact-mini a:hover{background:rgba(255,255,255,.12)}.footer-contact-mini svg{width:17px;height:17px;fill:currentColor;display:block}
.contact-head{padding-bottom:28px}.contact-section{padding-top:28px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.contact-card{display:grid;grid-template-columns:62px 1fr auto;align-items:center;gap:16px;border:1px solid var(--line);background:var(--card);border-radius:20px;padding:22px;color:var(--ink);box-shadow:0 12px 32px rgba(45,22,83,.06);transition:.2s}.contact-card:hover{transform:translateY(-2px);box-shadow:0 18px 38px rgba(45,22,83,.1);border-color:#bda9ef}.contact-icon{width:58px;height:58px;border-radius:16px;display:grid;place-items:center;background:var(--soft);color:var(--p)}.contact-icon svg{width:29px;height:29px;fill:currentColor}.contact-card small{font-size:10px;font-weight:900;letter-spacing:.12em;color:var(--p)}.contact-card h2{font-size:20px;margin:3px 0 4px;word-break:break-word}.contact-card p{margin:0;font-size:12px}.contact-card>b{font-size:22px;color:var(--p)}.whatsapp-card .contact-icon{background:#e9f8ef;color:#178a4d}.whatsapp-card small{color:#178a4d}.contact-unavailable{opacity:.82}.forgot-link{text-align:right;margin-top:-4px}.forgot-link a{font-size:11px;font-weight:800;color:var(--p)}.forgot-link a:hover{text-decoration:underline}.settings-form{margin-bottom:18px}.settings-readonly{margin-top:8px}
html[data-theme="dark"] .contact-card{background:#191321;border-color:#382c49;color:#f5f0ff}html[data-theme="dark"] .contact-card h2{color:#fff}html[data-theme="dark"] .contact-card p{color:#c1b7cf}html[data-theme="dark"] .contact-icon{background:#251b35}
@media(max-width:820px){.contact-grid{grid-template-columns:1fr}.footer-contact-mini span{display:none}.footer-contact-mini a{padding:8px}.footer-contact-mini{gap:6px}}
@media(max-width:560px){.contact-card{grid-template-columns:52px 1fr}.contact-card>b{display:none}.contact-icon{width:50px;height:50px}.contact-card h2{font-size:17px}.footer-contact-mini{margin-left:0}}

/* ===== GAAI EAD: painel administrativo completo / contraste final ===== */
html[data-theme="light"] .panel-main,
html[data-theme="light"] .panel-card,
html[data-theme="light"] .stat,
html[data-theme="light"] .content-column,
html[data-theme="light"] .admin-form,
html[data-theme="light"] .admin-course-row,
html[data-theme="light"] .material-admin-row,
html[data-theme="light"] .person,
html[data-theme="light"] .quick a,
html[data-theme="light"] .settings-list > div{color:#211633!important}
html[data-theme="light"] .quick a{background:#fff!important;border:1px solid #d8cfee!important;color:#38215f!important;opacity:1!important;font-weight:750!important}
html[data-theme="light"] .quick a:hover{background:#f1ebff!important;border-color:#8b5cf6!important;color:#4c1d95!important}
.sidebar nav a{color:#e8e0f7!important;opacity:1!important}
.sidebar nav a:hover{background:rgba(255,255,255,.08)!important;color:#fff!important}
.sidebar nav a.active{background:linear-gradient(135deg,#6d28d9,#8b5cf6)!important;color:#fff!important;box-shadow:0 10px 24px #6d28d933!important}
.main-nav a.active{color:#5b21b6!important;font-weight:800!important}
.side-divider{margin:18px 12px 7px;padding-top:15px;border-top:1px solid rgba(255,255,255,.12);font-size:9px;font-weight:900;letter-spacing:.16em;color:#b8aacd}
.site-editor h3{margin:22px 0 3px;padding-top:14px;border-top:1px solid var(--line)}
.site-editor h3:first-of-type{border-top:0;margin-top:0}
.compact-form{margin-bottom:15px}.lesson-text{background:var(--soft);border:1px solid var(--line);border-radius:14px;padding:18px;margin:12px 0 18px;color:var(--ink);line-height:1.75}
.media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:20px}.media-card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:12px;display:grid;gap:10px}.media-preview{height:130px;border-radius:12px;background:var(--soft);display:grid;place-items:center;overflow:hidden}.media-preview img{width:100%;height:100%;object-fit:cover}.media-preview span{font-size:36px}.media-card b,.media-card small,.media-card a{display:block}.media-card small{color:var(--muted)}.media-card p{font-size:12px;margin:4px 0}.media-card a{color:var(--p);font-size:12px;font-weight:800}.admin-course-picker{display:grid;gap:6px;margin:10px 0 14px;font-size:12px;font-weight:800}.admin-course-picker select{padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--ink)}.admin-people .person{align-items:flex-start}.admin-people .row-actions{margin-left:auto}
.assessment-list{display:grid;gap:8px;margin-top:14px}.assessment-admin-item{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:12px;padding:12px;text-align:left}.assessment-admin-item b,.assessment-admin-item small{display:block}.assessment-admin-item small{color:var(--muted)}.assessment-admin-item.selected{border-color:var(--p2);background:var(--soft)}.question-list{display:grid;gap:8px;margin-top:14px}.question-list article{display:flex;gap:10px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:11px;background:var(--card)}.question-list article>span{width:30px;height:30px;border-radius:9px;background:var(--soft);display:grid;place-items:center;color:var(--p);font-weight:900}.question-list article>div{flex:1}.question-list small{display:block;color:var(--muted)}
.student-assessments,.certificate-list{display:grid;gap:12px}.assessment-card,.certificate-card{display:flex;align-items:center;gap:16px;border:1px solid var(--line);background:var(--card);border-radius:16px;padding:17px}.assessment-card>div:first-child,.certificate-card>div{flex:1}.assessment-card h3{margin:4px 0}.assessment-card p{margin:2px 0;font-size:12px}.certificate-card>span{width:46px;height:46px;border-radius:13px;background:var(--soft);color:var(--p);display:grid;place-items:center;font-size:24px}.certificate-card b,.certificate-card small{display:block}.certificate-card small{color:var(--muted)}.assessment-form{display:grid;gap:15px}.assessment-form fieldset{border:1px solid var(--line);border-radius:16px;background:var(--card);padding:16px}.assessment-form legend{font-weight:800;padding:0 7px}.assessment-form fieldset label{display:flex;gap:9px;align-items:flex-start;padding:10px;border-radius:10px;cursor:pointer}.assessment-form fieldset label:hover{background:var(--soft)}.assessment-form fieldset input{margin-top:4px}.verify-card{max-width:760px;text-align:center;background:var(--card);border:1px solid var(--line);border-radius:24px;padding:48px;box-shadow:0 20px 60px #32155012}.verify-icon{width:70px;height:70px;border-radius:50%;background:#e7f8ef;color:#16845b;display:grid;place-items:center;font-size:36px;margin:0 auto 15px}.verify-card h1{font-size:40px}.verify-card .settings-list{text-align:left;margin-top:24px}
html[data-theme="dark"] .media-card,html[data-theme="dark"] .assessment-card,html[data-theme="dark"] .certificate-card,html[data-theme="dark"] .assessment-form fieldset,html[data-theme="dark"] .question-list article,html[data-theme="dark"] .assessment-admin-item{background:#191321;color:#f5f0ff;border-color:#382c49}html[data-theme="dark"] .assessment-admin-item.selected{background:#25193a;border-color:#8b5cf6}html[data-theme="dark"] .lesson-text{background:#17111f;color:#efe7ff;border-color:#382c49}
@media(max-width:900px){.media-grid{grid-template-columns:1fr 1fr}.assessment-card,.certificate-card{align-items:flex-start;flex-wrap:wrap}.assessment-card>.btn,.certificate-card>.row-actions{width:100%}}
@media(max-width:600px){.media-grid{grid-template-columns:1fr}.verify-card{padding:28px 18px}.verify-card h1{font-size:32px}}
.admin-control-note{background:linear-gradient(135deg,#ede7ff,#f8f6ff);border:1px solid #d8c9ff;border-radius:16px;padding:16px 18px;margin-bottom:16px;color:#2e1a5f}.admin-control-note b{font-size:16px}.admin-control-note p{margin:5px 0 0;color:#5a4d75;font-size:12px}html[data-theme="dark"] .admin-control-note{background:#20172d;border-color:#493462;color:#f4edff}html[data-theme="dark"] .admin-control-note p{color:#cbbdde}
.verify-search{max-width:680px}.verify-search form{display:grid;grid-template-columns:1fr auto;gap:10px;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:18px}.verify-search label{display:grid;gap:6px;font-size:12px;font-weight:800}.verify-search input{border:1px solid var(--line);border-radius:10px;padding:12px;background:var(--bg);color:var(--ink)}@media(max-width:600px){.verify-search form{grid-template-columns:1fr}}

/* Status de publicação / produção */
.system-readiness{margin-top:22px;display:grid;gap:14px}.system-readiness h3{margin:0;color:var(--ink)}.system-readiness code{background:var(--soft);color:var(--p);padding:4px 7px;border-radius:7px;font-weight:800}html[data-theme="dark"] .system-readiness h3{color:#f5f0ff}

/* Privacidade, LGPD e perfil pedagógico */
.legal-consents{display:grid;gap:10px;margin:14px 0 18px}.consent-row{display:grid!important;grid-template-columns:auto 1fr;gap:10px;align-items:start;padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:var(--card)}.consent-row input{width:18px;height:18px;margin-top:2px}.consent-row span{font-size:11px;line-height:1.45}.consent-row a,.legal-document a{color:var(--p2);font-weight:800}.consent-row.optional{opacity:.9}.legal-head{padding-bottom:34px}.legal-document{max-width:900px}.legal-document h2{margin-top:28px;font-size:20px}.legal-document p{line-height:1.75;color:var(--muted)}.legal-note{margin-top:30px;padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--card)}.legal-note p{margin-bottom:0}.legal-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:20px 0}.legal-cards>div{padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--card)}.legal-cards p{margin:7px 0 0}.login-roles{grid-template-columns:repeat(3,1fr)}@media(max-width:760px){.legal-cards,.login-roles{grid-template-columns:1fr}}

/* Login responsivo: impede que o tamanho do conteúdo expanda o formulário. */
.auth-card{width:min(760px,100%);min-width:0}
.auth-card form,.auth-card form>*,.auth-card label{min-width:0;max-width:100%}
.auth-card input:not([type="checkbox"]):not([type="hidden"]){width:100%;min-width:0}
.login-roles{grid-template-columns:repeat(3,minmax(0,1fr));min-width:0}
.login-role{min-width:0;max-width:100%;white-space:normal}
.login-role>div{min-width:0;overflow-wrap:anywhere}
.login-role>span{flex-shrink:0}
.auth-card .auth-brand .brand{min-width:0;max-width:100%}
.auth-card .auth-brand .brand>span{min-width:0;overflow-wrap:anywhere}
.auth-card>h1{font-size:clamp(26px,5vw,34px);line-height:1.2}
@media(max-width:760px){.login-roles{grid-template-columns:minmax(0,1fr)}}

.certificate-config-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.certificate-config-form label{display:grid;gap:6px;min-width:0}.certificate-config-form input{min-width:0;max-width:100%;padding:10px;border-radius:8px;border:1px solid var(--line);background:var(--card);color:var(--ink)}.certificate-config-form input[type=checkbox]{width:auto}.certificate-config-form p{grid-column:1/-1}.certificate-card>div{min-width:0;overflow-wrap:anywhere}.certificate-card{flex-wrap:wrap}.certificate-config-form small{color:var(--muted)}@media(max-width:700px){.certificate-config-form{grid-template-columns:1fr}}

.report-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;align-items:end}.report-filters label{display:grid;gap:5px;min-width:0}.report-filters input,.report-filters select{width:100%;min-width:0;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--ink)}.report-totals{display:flex;flex-wrap:wrap;gap:14px;margin:20px 0}.report-totals .stat{min-width:180px;flex:1}.report-totals b{font-size:23px}.report-table{max-width:100%;overflow-x:auto;margin:20px 0}.report-table table{min-width:740px;width:100%}.report-table th,.report-table td{padding:12px;text-align:left;white-space:normal;overflow-wrap:anywhere}.report-table td{max-width:300px}

/* Gestão de alunos: colunas e cartões contidos no painel. */
.admin-users-layout{grid-template-columns:minmax(280px,.85fr) minmax(0,1.15fr);gap:24px}
.admin-users-layout>div,.admin-users-layout .admin-form,.admin-users-layout .admin-course-picker{min-width:0;max-width:100%}
.admin-users-layout .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.admin-users-layout label,.admin-users-layout input,.admin-users-layout select{min-width:0;max-width:100%}
.admin-users-layout .admin-course-picker select{width:100%;text-overflow:ellipsis}
.admin-users-layout .admin-people{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,330px),1fr));gap:14px;min-width:0;align-items:stretch}
.admin-users-layout .person{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:start;gap:10px 12px;min-width:0;max-width:100%;padding:16px}
.admin-users-layout .person>span{width:38px;height:38px;flex-shrink:0}
.admin-users-layout .person>div{min-width:0;max-width:100%}
.admin-users-layout .person b{display:block;font-size:13px;line-height:1.45;overflow-wrap:anywhere}
.admin-users-layout .person small{font-size:12px;line-height:1.5;overflow-wrap:anywhere;margin-top:3px}
.admin-users-layout .person .row-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;width:100%;margin:4px 0 0;padding-top:12px;border-top:1px solid var(--line);align-self:end}
.admin-users-layout .person .table-btn{flex:0 1 auto;min-width:82px;max-width:100%;min-height:34px;white-space:normal;overflow-wrap:anywhere}
@media(max-width:1180px){.admin-users-layout{grid-template-columns:minmax(0,1fr)}}
@media(max-width:520px){.admin-users-layout .form-grid{grid-template-columns:minmax(0,1fr)}.admin-users-layout .person .row-actions{justify-content:flex-start}.admin-users-layout .person .table-btn{flex:1 1 90px}}
/* Mantém a navegação e o cabeçalho dentro da largura da tela. */
.panel-layout,.sidebar{min-width:0;max-width:100%}
.sidebar{overflow-y:auto}
.panel-header{gap:12px;flex-wrap:wrap}
.panel-header>div{min-width:0;max-width:100%}
@media(max-width:650px){.panel-layout{grid-template-columns:minmax(0,1fr)}.sidebar nav{max-width:100%;min-width:0}.panel-header h1{overflow-wrap:anywhere}}


/* QA responsivo — 08/10/2026: cabeçalho, navegação, cards, tabelas e contraste. */
.panel-layout{grid-template-columns:245px minmax(0,1fr)}
.panel-main,.panel-card,.panel-card>div,.panel-grid,.panel-grid>*,.admin-split,.admin-split>*,.admin-content-grid,.admin-content-grid>*,.stat-grid,.stat,.quick,.card-title,.row-actions,.profile,.panel-theme{min-width:0}
.panel-grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}
.stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.card-title,.panel-header,.row-actions{flex-wrap:wrap}
.card-title>*,.profile>div,.side-brand>div{min-width:0}
.profile b,.side-brand b,.panel-header h1,.panel-card h2,.panel-card h3,.stat b{overflow-wrap:anywhere}
.profile b{max-width:18rem}
.panel-card .form-grid>*,.panel-card .admin-form>*,.panel-card label{min-width:0;max-width:100%}
.panel-card input:not([type=checkbox]):not([type=radio]),.panel-card select,.panel-card textarea{max-width:100%}
.quick a,.admin-course-row>div,.material-admin-row>div{min-width:0;overflow-wrap:anywhere}
.report-totals .stat{min-width:min(100%,180px)}
.report-table{width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;border:1px solid var(--line);border-radius:12px}
.report-table table{margin:0;min-width:740px}
.report-table th,.report-table td{font-size:12px;line-height:1.5}
.report-table th{font-weight:800}
.report-scroll-hint{font-size:12px;margin-bottom:-10px;color:var(--muted)}
html[data-theme="light"] .report-table th,html[data-theme="light"] .report-table td,html[data-theme="light"] .report-table a{color:#312540!important}
html[data-theme="light"] .report-table th{color:#59446e!important;background:#f3ecff!important}
html[data-theme="light"] .report-table tbody tr:nth-child(even){background:#faf8ff}
html[data-theme="dark"] .report-table th,html[data-theme="dark"] .report-table td{color:#f0e9fa!important}
html[data-theme="dark"] .report-table th{background:#2c213b!important}
.mobile-panel-toggle{display:none}
@media(max-width:900px){
  .panel-layout{grid-template-columns:75px minmax(0,1fr)}
  .panel-grid{grid-template-columns:minmax(0,1fr)}
  .stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:650px){
  .panel-layout{grid-template-columns:minmax(0,1fr)}
  .panel-main{padding:18px 14px 25px}
  .panel-header{align-items:flex-start}
  .panel-header h1{font-size:clamp(26px,7.5vw,36px);line-height:1.15}
  .panel-theme{gap:7px;flex-wrap:wrap}
  .sidebar{display:flex;flex-direction:column;gap:8px;max-height:none;padding:14px;height:auto;overflow:visible}
  .sidebar .side-brand{padding:0;gap:10px;min-height:40px;align-items:center}
  .sidebar .side-brand>div,.sidebar .side-brand b,.sidebar .side-brand small{display:block}
  .sidebar .side-brand b{font-size:13px}
  .sidebar .logout{position:absolute;right:14px;top:14px;margin:0;min-height:38px}
  .sidebar .side-brand{padding-right:86px}
  .mobile-panel-toggle{display:block;width:100%;min-height:42px;padding:10px 14px;border-radius:10px;border:1px solid #655280;background:#312044;color:#fff;text-align:left;font-size:13px;font-weight:800;cursor:pointer}
  .sidebar:not(.mobile-nav-open) nav{display:none!important}
  .sidebar.mobile-nav-open nav{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:3px!important;width:100%!important;max-width:100%!important;overflow:visible!important;max-height:none!important;padding:6px 0!important}
  .sidebar.mobile-nav-open nav a{display:flex!important;width:100%!important;justify-content:flex-start!important;text-align:left!important;min-width:0!important;white-space:normal!important;padding:10px 12px!important;font-size:13px!important;line-height:1.3!important}
  .sidebar.mobile-nav-open nav a span{display:inline!important;min-width:0!important;overflow-wrap:anywhere}
  .sidebar.mobile-nav-open nav .side-divider{display:block!important}
  .panel-card{padding:16px;max-width:100%}
  .stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .report-filters{grid-template-columns:minmax(0,1fr)}
  .report-totals{display:grid;grid-template-columns:minmax(0,1fr)}
  .report-filters .btn{width:100%}
  .footer-bar{height:auto;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:20px 0}
  .footer-brand{min-width:0;flex:1 1 160px}
  .footer-contact-mini{margin:0;min-width:0;flex:0 0 auto;gap:6px}
  .footer-contact-mini a{flex:0 0 auto}
  .footer-sub{overflow-wrap:anywhere}
}
@media(max-width:360px){
  .footer-bar{justify-content:flex-start}
  .footer-brand{flex:1 1 100%}
  .footer-contact-mini{width:auto}
  .panel-card{padding:13px}
  .stat-grid{gap:8px}
  .stat{padding:13px}
  .stat b{font-size:24px}
}

/* Mensagens de configuração e números grandes não devem estourar em celulares. */
.system-readiness,.settings-list,.settings-list>div{min-width:0;max-width:100%}
.settings-list>div>b{min-width:0;max-width:100%;overflow-wrap:anywhere}
.settings-list>div>span{min-width:0;max-width:100%;overflow-wrap:anywhere;word-break:break-word}
html[data-theme="light"] .settings-list>div>span{color:#594e65!important}
html[data-theme="dark"] .settings-list>div>span{color:#d0c5dd!important}
@media(max-width:600px){
  .settings-list>div{display:grid;grid-template-columns:minmax(0,1fr);gap:5px;padding:12px}
  .settings-list>div>b{width:auto!important}
  .settings-list>div>span{flex:none;width:auto}
  .system-readiness h3{font-size:clamp(17px,5vw,21px);overflow-wrap:anywhere}
}


/* Formulários de autenticação: roxo legível no tema claro e escuro. */
.auth-card form input:not([type="checkbox"]):not([type="hidden"]),
.auth-card form input:not([type="checkbox"]):not([type="hidden"]):focus{
  background:#51238e;
  color:#fff;
  border:1px solid #9664d5;
  caret-color:#fff;
  color-scheme:dark;
  -webkit-text-fill-color:#fff;
}
.auth-card form input:not([type="checkbox"]):not([type="hidden"])::placeholder{
  color:#e0cff9;
  opacity:1;
  -webkit-text-fill-color:#e0cff9;
}
.auth-card form input:not([type="checkbox"]):not([type="hidden"]):focus{
  border-color:#d9b9ff;
  box-shadow:0 0 0 3px rgba(157,101,238,.27);
}
.auth-card form input:not([type="checkbox"]):not([type="hidden"]):-webkit-autofill,
.auth-card form input:not([type="checkbox"]):not([type="hidden"]):-webkit-autofill:focus{
  -webkit-box-shadow:0 0 0 1000px #51238e inset;
  -webkit-text-fill-color:#fff;
  caret-color:#fff;
}
.auth-card form label:not(.consent-row){color:var(--ink)}
.auth-card .password-field{display:block;position:relative;min-width:0;width:100%}
.auth-card form .password-field>input{
  width:100%;
  padding-right:102px;
}
.auth-card form .password-visibility-toggle{
  position:absolute;
  top:50%;
  right:7px;
  transform:translateY(-50%);
  min-width:79px;
  min-height:34px;
  padding:6px 9px;
  border:1px solid #b391e9;
  border-radius:7px;
  background:#7041b2;
  color:#fff;
  font-size:12px;
  font-weight:800;
  line-height:1.2;
  cursor:pointer;
}
.auth-card form .password-visibility-toggle:hover{background:#8051c8}
.auth-card form .password-visibility-toggle:focus-visible{
  outline:3px solid #d9b9ff;
  outline-offset:2px;
}
@media(max-width:420px){
  .auth-card form .password-field>input{padding-right:94px}
  .auth-card form .password-visibility-toggle{min-width:73px;font-size:11px}
}

/* Solicitações de acesso administrativo — visíveis e responsivas. */
.auth-card .admin-request-option{display:flex;flex-direction:row;align-items:flex-start;gap:11px;padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--soft);color:var(--ink);cursor:pointer}
.auth-card .admin-request-option>input[type=checkbox]{width:18px;min-width:18px;height:18px;margin:3px 0 0;accent-color:#7c3aed}
.auth-card .admin-request-option>span{display:grid;gap:3px;min-width:0}
.auth-card .admin-request-option b{font-size:12px;color:var(--ink)}
.auth-card .admin-request-option small{font-size:11px;line-height:1.5;color:var(--muted);font-weight:500}
.admin-approval-section{margin-bottom:18px;display:grid;gap:14px}
.admin-approval-item{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--card)}
.admin-approval-item>div:first-child{display:grid;gap:3px;min-width:0;flex:1 1 240px;overflow-wrap:anywhere}
.admin-approval-item small{font-size:11px;color:var(--muted)}
.admin-approval-item .row-actions{display:flex;flex-wrap:wrap;gap:8px}
@media(max-width:600px){.admin-approval-item{align-items:stretch;flex-direction:column}.admin-approval-item .row-actions{width:100%}.admin-approval-item .row-actions button{flex:1 1 125px}}


/* Minha conta: exclusão protegida de usuário/aluno */
.account-summary{border:1px solid var(--line);background:var(--soft);border-radius:14px;padding:16px;margin:16px 0}
.account-summary p{margin:6px 0;color:var(--ink);overflow-wrap:anywhere}
.account-danger-zone{margin-top:20px;padding:20px;border:1px solid #b94a67;border-radius:14px;background:var(--card);color:var(--ink)}
.account-danger-zone h3{color:#a81f49}
.account-danger-zone p{color:var(--muted);max-width:80ch}
.delete-account-form{max-width:560px;display:grid;gap:15px;margin-top:18px}
.delete-account-form>label:not(.account-confirm-checkbox){display:grid;gap:7px;min-width:0;font-size:13px;font-weight:700;color:var(--ink)}
.delete-account-form input:not([type=checkbox]){width:100%;min-width:0;background:#51238e;color:#fff;border:1px solid #9664d5;border-radius:10px;padding:12px;outline:none;caret-color:#fff;color-scheme:dark}
.delete-account-form input:not([type=checkbox])::placeholder{color:#e0cff9;opacity:1}
.delete-account-form input:not([type=checkbox]):focus-visible{outline:3px solid #b391e9;outline-offset:1px}
.delete-account-form .password-field{position:relative;display:block;min-width:0}
.delete-account-form .password-field>input{padding-right:103px}
.delete-account-form .password-visibility-toggle{position:absolute;right:7px;top:50%;transform:translateY(-50%);padding:6px 10px;min-height:35px;min-width:78px;border:1px solid #b391e9;border-radius:7px;background:#7041b2;color:#fff;font-weight:800;font-size:12px}
.delete-account-form .password-visibility-toggle:focus-visible{outline:3px solid #d9b9ff}
.account-confirm-checkbox{display:flex;gap:9px;align-items:flex-start;font-size:13px;color:var(--ink)}
.account-confirm-checkbox input{margin:4px 0 0;accent-color:#6d28d9;width:17px;min-width:17px;height:17px}
.account-delete-btn{width:fit-content;max-width:100%;background:#a9234b;color:#fff;border:1px solid #a9234b;font-weight:800;padding:13px 18px;border-radius:10px}
.account-delete-btn:hover{background:#821b39;color:#fff}
.account-delete-btn:disabled{opacity:.55;cursor:wait}
html[data-theme="dark"] .account-danger-zone h3{color:#ff97b1}
html[data-theme="dark"] .account-danger-zone{border-color:#a34f6c}
@media(max-width:600px){.account-danger-zone{padding:15px}.account-delete-btn{width:100%}}

/* PIX EMV: QR Code escaneável, copia e cola e campos acessíveis em telas pequenas */
.payment-result-card .pix-recipient{font-size:12px;line-height:1.8;overflow-wrap:anywhere;color:var(--ink)}
.payment-result-card .pix-recipient b{color:var(--ink)}
.pix-qr-box{display:grid;place-items:center;gap:9px;margin:16px 0;padding:15px;border:1px solid var(--line);background:var(--card);border-radius:15px;text-align:center}
.pix-qr-img{width:min(100%,270px);height:auto;aspect-ratio:1;object-fit:contain;background:#fff;padding:9px;border:1px solid #eee;border-radius:10px}
.pix-qr-box small{color:var(--muted);font-size:11px;line-height:1.5}
.pix-copy-label{display:grid;gap:8px;margin:16px 0 9px;font-size:13px;color:var(--ink);text-align:left}
.pix-copy-label textarea{display:block;width:100%;min-width:0;max-width:100%;box-sizing:border-box;min-height:86px;background:#51238e;color:#fff;border:1px solid #9a71df;border-radius:10px;font-size:12px;line-height:1.55;letter-spacing:.02em;overflow-wrap:anywhere;word-break:break-all;padding:12px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;outline-offset:3px;caret-color:#fff;color-scheme:dark}
.pix-copy-label textarea:focus-visible{outline:3px solid #a77df0}
.pix-key-fallback{margin:16px 0;padding:13px;border:1px solid var(--line);border-radius:12px;min-width:0}
.pix-key-fallback summary{font-size:12px;cursor:pointer;color:var(--ink);font-weight:700}
.pix-key-fallback input{box-sizing:border-box;display:block;width:100%;min-width:0;margin:12px 0 9px;background:#51238e;border:1px solid #9a71df;color:#fff;border-radius:8px;padding:11px;overflow-wrap:anywhere}
.pix-confirm-note{font-size:12px;line-height:1.65;color:var(--muted);text-align:left}
@media(max-width:600px){.pix-qr-box{padding:10px}.pix-qr-img{width:min(100%,260px)}.payment-result-card .pix-recipient{font-size:11px}.pix-copy-label textarea{font-size:11px}}

/* Cadastros independentes: aluno ou administrador aguardando liberação. */
.registration-choices{display:grid;gap:13px;margin:22px 0}
.registration-choice{width:100%;display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:13px;padding:18px;border:1px solid var(--line);border-radius:15px;background:var(--card);color:var(--ink);transition:border-color .15s,box-shadow .15s}
.registration-choice:hover,.registration-choice:focus-visible{border-color:var(--p);box-shadow:0 0 0 3px #6d28d91a;outline:none}
.registration-choice-icon{display:grid;place-items:center;font-size:24px;width:46px;height:46px;border-radius:12px;background:var(--soft)}
.registration-choice b,.registration-choice small{display:block;overflow-wrap:anywhere}
.registration-choice b{font-size:14px;color:var(--ink)}
.registration-choice small{font-size:11px;line-height:1.5;color:var(--muted);margin-top:3px}
.registration-mode-note{display:grid;gap:4px;padding:14px 16px;margin:15px 0;border:1px solid var(--line);border-radius:12px;background:var(--soft)}
.registration-mode-note b{color:var(--ink);font-size:13px}
.registration-mode-note small{color:var(--muted);font-size:11px;line-height:1.5}
.admin-approval-item strong{color:var(--ink)}
@media(max-width:600px){.registration-choice{grid-template-columns:40px minmax(0,1fr) auto;padding:13px;gap:9px}.registration-choice-icon{width:40px;height:40px;font-size:21px}.registration-choice b{font-size:12px}}


/* ===========================================================
   REVISÃO RESPONSIVA 2026-10: um menu consistente e sem cortes.
   Regras intencionalmente ao fim do CSS para substituir versões
   móveis antigas sem alterar o desenho aprovado no computador.
   =========================================================== */
.top .nav-expand{display:contents}
.top .menu{touch-action:manipulation}
html,body{max-width:100%;min-width:0}
body{overflow-x:clip}
main,.section,.page-head,.panel-layout,.panel-main,.site-footer{min-width:0;max-width:100%}
img,video,iframe,canvas{max-width:100%}
img{height:auto}
.panel-main :is(h1,h2,h3,p,small,a,span){overflow-wrap:break-word}
.panel-main .panel-card,.panel-main .stat,.panel-main .panel-grid>*,.panel-main .form-grid>*{min-width:0}
.admin-approval-item>div:first-child,.registration-choice>span,.payment-result-card{min-width:0;overflow-wrap:anywhere}
@media(max-width:1024px){
  /* O menu móvel é UM painel, reunindo links, login, perfil e tema.
     Evita a sobreposição de duas caixas absolute no CSS legado. */
  .top{position:sticky;top:0;z-index:100;overflow:visible}
  .top .nav{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:12px;min-height:70px;height:auto;padding-top:8px;padding-bottom:8px}
  .top .nav>.gaai-brand{grid-column:1;min-width:0;max-width:100%;display:flex;align-items:center;gap:10px}
  .top .nav>.gaai-brand>span{display:block;min-width:0;max-width:100%}
  .top .nav>.gaai-brand b{display:block;font-size:clamp(18px,3.3vw,22px);line-height:1.1;overflow-wrap:normal}
  .top .nav>.gaai-brand small{display:block;font-size:clamp(9px,1.7vw,11px);line-height:1.4;color:#5c457c}
  .top .nav>.gaai-brand .brand-logo,.top .nav>.gaai-brand .brand-logo svg{width:clamp(40px,7vw,52px);height:clamp(40px,7vw,52px);flex-shrink:0}
  .top .menu{grid-column:2;grid-row:1;display:grid!important;place-items:center;min-width:46px;min-height:46px;flex-shrink:0;margin-left:0!important;padding:6px 10px;border:1px solid var(--line);border-radius:12px;background:var(--soft);color:var(--p)!important;font-size:27px;line-height:1}
  .top .menu:focus-visible{outline:3px solid #a87df5;outline-offset:2px}
  .top .nav-expand{display:none!important;position:absolute!important;top:100%;left:50%!important;right:auto!important;transform:translateX(-50%);width:100vw;max-width:100vw;max-height:calc(100dvh - 69px);overflow-y:auto;overscroll-behavior:contain;flex-direction:column;gap:0;padding:10px clamp(14px,4vw,26px) 18px;background:var(--card);border-top:1px solid var(--line);border-bottom:1px solid var(--line);box-shadow:0 20px 35px #1c103b44;z-index:150}
  body.menu-open .top .nav-expand{display:flex!important}
  .top .nav-expand .main-nav,body.menu-open .top .nav-expand .main-nav{
    position:static!important;top:auto!important;left:auto!important;right:auto!important;
    transform:none!important;display:grid!important;grid-template-columns:minmax(0,1fr)!important;
    flex:none!important;align-items:stretch!important;justify-content:stretch!important;
    gap:3px!important;padding:0!important;margin:0!important;
    width:100%!important;max-width:100%!important;background:transparent!important;
    border:0!important;box-shadow:none!important;flex-wrap:nowrap!important;
  }
  .top .nav-expand .main-nav>a,body.menu-open .top .nav-expand .main-nav>a{
    position:relative;display:flex!important;align-items:center;min-height:46px;
    width:100%!important;padding:12px 14px!important;margin:0!important;
    border:0!important;border-radius:10px;box-shadow:none!important;
    background:transparent;color:var(--ink)!important;font-size:14px!important;
    line-height:1.45;font-weight:650;text-decoration:none;white-space:normal!important;
    overflow-wrap:anywhere;letter-spacing:normal;
  }
  .top .nav-expand .main-nav>a:first-child::after{display:none!important;content:none!important}
  .top .nav-expand .main-nav>a.active,.top .nav-expand .main-nav>a:focus-visible{
    background:var(--soft)!important;color:var(--p)!important;outline-offset:-2px;
  }
  .top .nav-expand .nav-actions,body.menu-open .top .nav-expand .nav-actions{
    position:static!important;top:auto!important;left:auto!important;right:auto!important;
    display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between;
    gap:10px;flex-wrap:wrap;width:100%;margin:12px 0 0!important;padding:14px 0 0!important;
    background:transparent!important;border:0!important;border-top:1px solid var(--line)!important;box-shadow:none!important;
  }
  .top .nav-expand .nav-actions>.btn,.top .nav-expand .nav-actions .profile-link{
    display:inline-flex!important;max-width:100%;min-height:42px;
  }
  .top .nav-expand .nav-actions>.btn{min-width:110px}
  .top .nav-expand .nav-actions .theme-controls{display:flex!important;margin:0!important;order:0!important}
  .top .nav-expand .nav-actions .profile-link{margin-left:auto;overflow-wrap:anywhere}
  html[data-theme="dark"] .top .nav>.gaai-brand small{color:#c2afd8}
  /* Painéis completos no tablet: não esconder nomes em ícones isolados. */
  .panel-layout{grid-template-columns:minmax(0,1fr)!important;width:100%}
  .panel-layout>.sidebar{position:relative!important;top:auto!important;display:flex!important;flex-direction:column!important;gap:9px;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;padding:12px clamp(12px,3vw,22px)!important}
  .panel-layout>.sidebar .side-brand{display:flex!important;align-items:center!important;gap:10px;padding:0 95px 0 0!important;min-height:42px}
  .panel-layout>.sidebar .side-brand>div,.panel-layout>.sidebar .side-brand b,.panel-layout>.sidebar .side-brand small{display:block!important;max-width:100%;white-space:normal}
  .panel-layout>.sidebar .side-brand b{font-size:13px}
  .panel-layout>.sidebar .mobile-panel-toggle{display:block!important;min-height:44px;width:100%;text-align:left}
  .panel-layout>.sidebar:not(.mobile-nav-open) nav{display:none!important}
  .panel-layout>.sidebar.mobile-nav-open nav{
    display:grid!important;grid-template-columns:minmax(0,1fr)!important;
    min-width:0!important;width:100%!important;max-width:100%!important;
    max-height:none!important;overflow:visible!important;gap:3px!important;padding:5px 0!important;
  }
  .panel-layout>.sidebar.mobile-nav-open nav a{
    display:flex!important;justify-content:flex-start!important;align-items:center!important;
    width:100%;min-height:43px;padding:10px 12px!important;
    font-size:13px!important;line-height:1.45!important;white-space:normal!important;
    text-align:left!important;overflow-wrap:anywhere;
  }
  .panel-layout>.sidebar.mobile-nav-open nav a span{display:inline!important;min-width:0!important;overflow-wrap:anywhere}
  .panel-layout>.sidebar .logout{position:absolute!important;top:12px!important;right:clamp(12px,3vw,22px)!important;min-height:42px;margin:0!important}
  .panel-layout>.panel-main{padding:clamp(14px,2.5vw,28px)!important;width:100%;min-width:0}
  .panel-grid{grid-template-columns:minmax(0,1fr)!important}
  .panel-header{flex-wrap:wrap;align-items:flex-start;gap:12px}
  .panel-theme{flex-wrap:wrap;max-width:100%}
  .stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .admin-split,.admin-users-layout,.admin-content-grid{grid-template-columns:minmax(0,1fr)!important}
  .panel-card .form-grid,.admin-form .form-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}
  .panel-card .row-actions{max-width:100%;flex-wrap:wrap}
  .panel-card .row-actions>*{max-width:100%}
}
@media(max-width:650px){
  .wrap{width:calc(100% - 28px)!important;max-width:100%}
  .top .nav{min-height:64px;column-gap:8px}
  .top .nav>.gaai-brand{gap:8px}
  .top .nav>.gaai-brand b{font-size:clamp(18px,5.1vw,23px)!important;line-height:1.05}
  .top .nav>.gaai-brand small{font-size:clamp(9px,2.5vw,11px)!important;line-height:1.3}
  .top .nav>.gaai-brand .brand-logo,.top .nav>.gaai-brand .brand-logo svg{width:clamp(38px,12vw,48px)!important;height:clamp(38px,12vw,48px)!important}
  .top .nav-expand{max-height:calc(100dvh - 64px);padding:8px 14px 16px}
  .top .nav-expand .main-nav>a{font-size:14px!important}
  .top .nav-expand .nav-actions{gap:10px}
  .top .nav-expand .nav-actions>.btn{display:inline-flex!important}
  .top .nav-expand .nav-actions .profile-link>span:nth-child(2){display:block!important;min-width:0}
  .top .nav-expand .nav-actions .profile-link{max-width:100%}
  .hero-home-inner,.reference-hero-inner{min-width:0;max-width:100%;overflow:hidden;border-radius:0 0 20px 20px}
  .hero-copy,.reference-hero-copy{max-width:100%;min-width:0;padding:35px 20px 34px!important;gap:8px}
  .hero-copy h1,.reference-hero h1,.reference-hero-copy h1,.hero h1{
    font-size:clamp(31px,8.7vw,44px)!important;
    line-height:1.11!important;letter-spacing:-.045em!important;
    max-width:100%;margin:8px 0 12px;overflow-wrap:break-word;
  }
  .hero-copy h2,.reference-hero h2,.reference-hero-copy h2{font-size:clamp(19px,5.5vw,26px)!important;line-height:1.25!important;overflow-wrap:anywhere}
  .hero-copy p,.reference-hero-copy p{font-size:clamp(13px,3.6vw,16px);line-height:1.65}
  .hero-home .btn,.reference-hero .btn,.hero-copy .btn{max-width:100%;white-space:normal;min-height:44px;text-align:center}
  .reference-hero-photo,.hero-visual{max-width:100%}
  .hero-side-points{max-width:calc(100% - 24px);flex-wrap:wrap}
  .section,.payment-section{padding-top:30px;padding-bottom:40px}
  .section-head,.reference-section-heading{display:flex;flex-wrap:wrap;align-items:flex-start;gap:10px}
  .section-head h2,.reference-section-heading h2{font-size:clamp(25px,7vw,34px);line-height:1.16;overflow-wrap:anywhere}
  .section-head a,.text-link{max-width:100%;white-space:normal}
  .course-grid,.feature-grid,.role-grid,.reference-benefit-grid,.testimonial-grid{grid-template-columns:minmax(0,1fr)!important}
  .reference-course-card,.featured-course-card .course-card{
    display:grid!important;grid-template-columns:minmax(0,1fr)!important;
    min-width:0!important;max-width:100%!important;overflow:hidden;
  }
  .reference-course-card>*,.featured-course-card .course-card>*{min-width:0;max-width:100%}
  .reference-course-card .course-action{grid-column:1/-1!important;padding:14px!important}
  .reference-course-card .course-action .btn{width:100%;white-space:normal}
  .course-card img,.reference-course-card img{max-width:100%;object-fit:cover}
  .checkout-grid,.payment-grid,.payment-course-summary,.checkout-summary,.payment-admin-row{grid-template-columns:minmax(0,1fr)!important;min-width:0}
  .payment-result-card{position:static!important;padding:16px;min-width:0}
  .payment-result-card .pix-copy-label textarea{min-width:0;max-width:100%;font-size:12px;word-break:break-all}
  .pix-qr-img{width:min(100%,260px)}
  .auth-card{max-width:100%;padding:clamp(16px,5vw,24px)!important}
  .auth-card>h1{font-size:clamp(25px,6.8vw,34px)!important;line-height:1.15!important}
  .login-roles,.registration-choices{grid-template-columns:minmax(0,1fr)!important}
  .registration-choice{min-width:0}
  .panel-layout>.panel-main{padding:14px!important}
  .panel-header h1{font-size:clamp(24px,7vw,32px)!important}
  .panel-main .panel-card{padding:14px!important;max-width:100%;min-width:0}
  .panel-main .full-card{min-height:0;overflow:visible}
  .panel-card .form-grid,.admin-form .form-grid,.report-filters,.report-totals{grid-template-columns:minmax(0,1fr)!important}
  .panel-main .card-title{flex-direction:column;align-items:flex-start;gap:8px}
  .panel-card .row-actions>*{min-height:40px}
  .panel-main .people,.panel-main .reference-course-list,.panel-main .certificate-list{min-width:0;max-width:100%}
  .panel-main :is(.person,.admin-course-row,.material-admin-row,.certificate-card,.assessment-card){min-width:0;max-width:100%;flex-wrap:wrap}
  .report-table,.panel-main table{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain}
  .panel-main table{display:block;min-width:0!important;width:100%}
  .panel-main table :is(td,th){white-space:normal}
  .stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px}
  .stat{padding:13px;overflow-wrap:anywhere}
  .stat b{font-size:clamp(20px,6vw,27px)!important}
  .footer-bar{gap:16px}
  .footer-brand{max-width:100%}
  .footer-links{display:flex!important;flex-wrap:wrap;gap:10px 16px;width:100%;margin:0}
  .footer-links a{font-size:12px;line-height:1.5;min-height:34px}
}
@media(max-width:370px){
  .top .nav>.gaai-brand b{font-size:17px!important}
  .top .nav>.gaai-brand small{font-size:9px!important}
  .top .nav>.gaai-brand .brand-logo,.top .nav>.gaai-brand .brand-logo svg{width:36px!important;height:36px!important}
  .stat-grid{grid-template-columns:minmax(0,1fr)!important}
  .hero-copy h1,.reference-hero h1{font-size:clamp(28px,9vw,34px)!important}
}
@media(min-width:1025px){
  .top .nav-expand{display:contents!important}
  .top .menu{display:none!important}
}

/* FIX NR: imagem inteira na capa, sem cortar letras (como o N da NR-20).
   A moldura permanece do mesmo tamanho no desktop, tablet e celular. */
.reference-course-card .course-cover img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
}

/* Rótulo E-MAIL sempre legível em uma linha: mobile e desktop.
   O endereço eletrônico continua podendo ajustar sua largura sem cortar o card. */
.email-card > div{min-width:0;}
.email-card small,
.footer-contact-mini a[aria-label="Enviar e-mail"] > span{
  display:inline-block;
  white-space:nowrap;
  word-break:normal;
  overflow-wrap:normal;
  hyphens:none;
}
@media(max-width:560px){
  .email-card h2{
    min-width:0;
    max-width:100%;
    font-size:clamp(13px,4vw,17px);
    line-height:1.35;
    overflow-wrap:anywhere;
    word-break:normal;
  }
}

/* Aviso de manutenção — responsivo, centralizado e acima de todos os painéis. */
body.gaai-maintenance-active{overflow:hidden!important}
.gaai-maintenance-screen{position:fixed;inset:0;z-index:200000;display:grid;place-items:center;padding:clamp(16px,4vw,36px);background:linear-gradient(145deg,#180d33,#34206d 54%,#59349e);overflow:auto}
.gaai-maintenance-card{width:min(100%,620px);padding:clamp(26px,5vw,52px);background:#fff;color:#29164d;text-align:center;border:1px solid #e7dff7;border-radius:24px;box-shadow:0 24px 80px #13092580}
.gaai-maintenance-symbol{display:grid;place-items:center;width:70px;height:70px;margin:0 auto 14px;border-radius:22px;background:#f1eafd;color:#6231b1;font-size:40px}
.gaai-maintenance-eyebrow{font-size:12px;letter-spacing:.18em;font-weight:900;color:#7033be}
.gaai-maintenance-card h1{font-size:clamp(28px,5.6vw,42px);line-height:1.12;letter-spacing:-.03em;margin:12px 0}
.gaai-maintenance-card p{font-size:clamp(16px,3.6vw,20px);line-height:1.55;font-weight:700;color:#483076}
.gaai-maintenance-card small{display:block;font-size:14px;line-height:1.65;color:#605473}
.gaai-maintenance-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:24px}
.gaai-maintenance-actions .btn{max-width:100%;white-space:normal;min-height:45px}
.gaai-maintenance-check{display:block;margin-top:20px;font-size:12px;color:#6f6480}
.gaai-maintenance-settings{margin:18px 0;padding:18px;border:1px solid var(--line);border-radius:14px}
.gaai-maintenance-settings h3{margin:0 0 8px}
.gaai-maintenance-settings p{max-width:760px;line-height:1.6}
.gaai-maintenance-settings>.btn{margin-top:14px}
@media(max-width:400px){.gaai-maintenance-card{border-radius:16px;padding:24px 18px}.gaai-maintenance-symbol{width:58px;height:58px;font-size:33px}}

/* Capa do curso: upload direto com prévia, sem cortar textos da arte. */
.course-cover-upload{display:grid;grid-template-columns:minmax(150px,220px) minmax(0,1fr);align-items:start;gap:16px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--card);margin:8px 0 16px;max-width:100%;min-width:0}
.course-cover-preview-frame{display:grid;place-items:center;width:100%;aspect-ratio:16/10;min-width:0;padding:8px;border:1px dashed var(--line);border-radius:10px;background:var(--soft);overflow:hidden}
.course-cover-preview-frame img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.course-cover-preview-frame img[hidden],.course-cover-preview-frame span[hidden]{display:none!important}
.course-cover-preview-frame span{font-size:12px;color:var(--muted);text-align:center;line-height:1.5}
.course-cover-inputs{min-width:0;display:grid;gap:9px}
.course-cover-inputs label{display:block;margin:0;font-size:13px;font-weight:700}
.course-cover-inputs input{display:block;width:100%;min-width:0;max-width:100%;box-sizing:border-box}
.course-cover-inputs input[type=file]{padding:10px;font-size:13px}
.course-cover-inputs small{display:block;color:var(--muted);font-size:12px;line-height:1.5}
#course-cover-file-msg{min-width:0;overflow-wrap:anywhere;font-size:12px}
@media(max-width:650px){.course-cover-upload{grid-template-columns:minmax(0,1fr)}.course-cover-preview-frame{max-width:340px;margin:0 auto}.course-cover-inputs{width:100%}}

/* Contato do desenvolvedor: ao final das ferramentas administrativas/pedagógicas. */
.sidebar nav .developer-support{display:grid;gap:6px;min-width:0;margin:16px 2px 8px;padding:14px 12px;border-radius:12px;border:1px solid rgba(183,153,243,.38);background:rgba(139,92,246,.13);overflow-wrap:anywhere}
.sidebar nav .developer-support>b{display:block;color:#ffffff;font-size:12px;line-height:1.45;font-weight:800}
.sidebar nav .developer-support>small{display:block;color:#ded2f2;font-size:11px;line-height:1.45}
.sidebar nav .developer-support>a{display:flex;align-items:flex-start;gap:7px;color:#ffffff!important;font-size:11px;line-height:1.5;white-space:normal;overflow-wrap:anywhere;padding:6px 4px!important;min-width:0;border-radius:8px}
.sidebar nav .developer-support>a span{display:inline!important;min-width:0;overflow-wrap:anywhere;white-space:normal}
.sidebar nav .developer-support>a:hover,.sidebar nav .developer-support>a:focus-visible{background:rgba(255,255,255,.12)!important;text-decoration:underline}
@media(min-width:651px) and (max-width:900px){
  .sidebar nav .developer-support{padding:10px 7px;margin:10px 0}
}
@media(max-width:650px){
  .sidebar.mobile-nav-open nav .developer-support{display:grid!important;width:100%;max-width:100%;box-sizing:border-box}
  .sidebar nav .developer-support>a{min-height:0!important;font-size:12px!important}
}

.sidebar nav .developer-support>.developer-copyright{display:block;border-top:1px solid rgba(183,153,243,.3);padding-top:8px;margin-top:4px;color:#dfd3f2;font-size:10px;line-height:1.45;overflow-wrap:anywhere}
@media(min-width:651px) and (max-width:900px){
  .sidebar nav .developer-support{padding:8px 3px}
  .sidebar nav .developer-support>b,.sidebar nav .developer-support>small,.sidebar nav .developer-support>a,.sidebar nav .developer-support>.developer-copyright{font-size:9px;overflow-wrap:anywhere}
}

/* Atendimento do desenvolvedor: headset sempre visível, inclusive no mobile. */
.sidebar nav .developer-support>.developer-support-heading{display:flex;align-items:center;gap:8px;min-width:0}
.sidebar nav .developer-support-heading svg{display:block;flex:0 0 20px;width:20px;height:20px;stroke:#d9c7ff}
.sidebar nav .developer-support-heading span{display:block;min-width:0;overflow-wrap:anywhere}
.sidebar nav .developer-support>.developer-copyright{white-space:normal;overflow-wrap:anywhere}
@media(min-width:651px) and (max-width:900px){
  .sidebar nav .developer-support-heading{gap:5px}
  .sidebar nav .developer-support-heading svg{width:15px;height:15px;flex-basis:15px}
}

/* Ícones temáticos pequenos para navegação, com contraste acessível. */
.nav-icon-link{display:inline-flex!important;align-items:center;gap:8px;min-width:0}
.nav-icon-link>.nav-item-icon{display:block;flex:0 0 17px;width:17px;height:17px;stroke:currentColor;fill:none}
.nav-icon-link>span{min-width:0}
html[data-theme="light"] .nav-icon-link>.nav-item-icon{color:#34165d}
html[data-theme="dark"] .nav-icon-link>.nav-item-icon{color:#ead9ff}
html[data-theme="light"] .sidebar nav>a.nav-icon-link>.nav-item-icon{box-sizing:content-box;color:#35175e;background:#f4ebff;padding:3px;border-radius:7px}
html[data-theme="dark"] .sidebar nav>a.nav-icon-link>.nav-item-icon{box-sizing:content-box;color:#f6eaff;background:#5e3d92;padding:3px;border-radius:7px}
.sidebar nav>a.nav-icon-link.active>.nav-item-icon{color:#271447!important;background:#fff!important}
html[data-theme="dark"] .sidebar nav>a.nav-icon-link.active>.nav-item-icon{color:#29184b!important;background:#f2e6ff!important}
.main-nav>a.nav-icon-link,.panel-site-nav>a.nav-icon-link,.footer-links>a.nav-icon-link{gap:6px}
@media(max-width:900px){
  .sidebar nav>a.nav-icon-link{gap:5px}
  .sidebar nav>a.nav-icon-link>.nav-item-icon{flex-shrink:0}
}
@media(max-width:650px){
  .sidebar.mobile-nav-open nav>a.nav-icon-link{justify-content:flex-start!important}
  .sidebar.mobile-nav-open nav>a.nav-icon-link>span{display:inline!important;white-space:normal;overflow-wrap:anywhere}
  .main-nav>a.nav-icon-link{width:100%;justify-content:flex-start}
}

/* Contraste definitivo das abas do cabeçalho do painel (admin, aluno, pedagoga).
   Sobrescreve as regras globais anteriores que deixavam SVGs claros sobre
   botões claros no tema escuro. Aplicável mesmo antes do JS decorar os links. */
html[data-theme="light"] .panel-layout .panel-site-nav a{
  background:#ffffff!important;color:#32134d!important;
  border:1px solid #bca4e2!important;opacity:1!important;
  text-shadow:none!important;
}
html[data-theme="dark"] .panel-layout .panel-site-nav a{
  background:#302044!important;color:#f8f3ff!important;
  border:1px solid #8668aa!important;opacity:1!important;
  text-shadow:none!important;
}
html[data-theme="light"] .panel-layout .panel-site-nav a:hover,
html[data-theme="light"] .panel-layout .panel-site-nav a:focus-visible{
  background:#ece1ff!important;border-color:#7046a9!important;color:#270d49!important;
}
html[data-theme="dark"] .panel-layout .panel-site-nav a:hover,
html[data-theme="dark"] .panel-layout .panel-site-nav a:focus-visible{
  background:#503272!important;border-color:#c6a0f8!important;color:#fff!important;
}
html[data-theme="light"] .panel-layout .panel-site-nav a .nav-item-icon,
html[data-theme="light"] .panel-layout .panel-site-nav a.nav-icon-link>.nav-item-icon{
  color:#35115c!important;stroke:#35115c!important;fill:none!important;
  opacity:1!important;visibility:visible!important;filter:none!important;
}
html[data-theme="dark"] .panel-layout .panel-site-nav a .nav-item-icon,
html[data-theme="dark"] .panel-layout .panel-site-nav a.nav-icon-link>.nav-item-icon{
  color:#f8eaff!important;stroke:#f8eaff!important;fill:none!important;
  opacity:1!important;visibility:visible!important;filter:none!important;
}
.panel-layout .panel-site-nav a.nav-icon-link{display:inline-flex!important;align-items:center;gap:8px;line-height:1.3}
.panel-layout .panel-site-nav a .nav-item-icon{width:18px!important;height:18px!important;flex:0 0 18px!important;stroke-width:2.3!important}


/* CAPAS DOS CURSOS — encaixe integral, inclusive depois do envio de nova imagem.
   Nunca ampliar a imagem com "cover": as bordas devem permanecer visíveis em
   catálogo, detalhes, matrículas, administração e prévia de edição. */
.course-cover,
.reference-course-card .course-cover,
.admin-course-row .course-cover,
.payment-course-summary .course-cover,
.detail-cover-image {
  padding:0!important;
  overflow:hidden!important;
  background:#f1edf9!important;
  align-items:center;
  justify-content:center;
}
html[data-theme="dark"] .course-cover,
html[data-theme="dark"] .reference-course-card .course-cover,
html[data-theme="dark"] .admin-course-row .course-cover,
html[data-theme="dark"] .payment-course-summary .course-cover,
html[data-theme="dark"] .detail-cover-image {
  background:#241a35!important;
}
.course-cover img,
.reference-course-card .course-cover img,
.detail-cover-image img,
.admin-course-row .admin-thumb img,
.payment-course-summary .course-cover img,
.course-cover-preview-frame img {
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:50% 50%!important;
}

/* Formato escolhido no painel: preencher toda a moldura SEM descartar pixels.
   A opção fill redimensiona vertical/horizontalmente para a área do card;
   contain preserva as proporções originais, podendo criar margens. */
.course-cover.fit-fill img,
.reference-course-card .course-cover.fit-fill img,
.payment-course-summary .course-cover.fit-fill img,
.admin-course-row .course-cover.fit-fill img,
.detail-cover-image.fit-fill img,
.course-cover-preview-frame[data-fit="fill"] img{
  object-fit:fill!important;
  object-position:center!important;
}
.course-cover.fit-contain img,
.reference-course-card .course-cover.fit-contain img,
.payment-course-summary .course-cover.fit-contain img,
.admin-course-row .course-cover.fit-contain img,
.detail-cover-image.fit-contain img,
.course-cover-preview-frame[data-fit="contain"] img{
  object-fit:contain!important;
  object-position:center!important;
}

/* Central de suporte do desenvolvedor — GAAI EAD
   Inspirada na organização do painel Duda Beer, com paleta roxa/lilás GAAI. */
.sidebar nav>a.dev-help-nav{
  margin-top:14px!important;
  border:1px solid rgba(193,165,252,.34)!important;
  background:rgba(139,92,246,.12)!important;
  color:#f3ecff!important;
  font-weight:700;
  padding:12px 13px!important;
  border-radius:12px;
}
.sidebar nav>a.dev-help-nav:hover,
.sidebar nav>a.dev-help-nav:focus-visible,
.sidebar nav>a.dev-help-nav.active{
  background:linear-gradient(135deg,#6636b8,#4a2485)!important;
  border-color:#bb9af6!important;
  color:#fff!important;
  opacity:1!important;
}
.sidebar nav>a.dev-help-nav .nav-item-icon{
  stroke:currentColor!important;
  color:inherit!important;
  opacity:1!important;
}
.dev-help-page{width:min(100%,1080px);min-width:0;margin-inline:auto;padding-bottom:24px}
.dev-help-lead{max-width:800px;margin:0 0 24px;font-size:clamp(14px,1.55vw,17px);line-height:1.65;color:var(--muted)}
.dev-help-card{
  padding:clamp(20px,3.5vw,38px);
  background:linear-gradient(145deg,#fff 0%,#faf7ff 100%);
  border:1px solid #dbcaf8;border-radius:22px;
  box-shadow:0 18px 50px rgba(68,33,116,.09);
  color:#29183d;
}
.dev-help-identity{display:flex;align-items:center;gap:16px;min-width:0}
.dev-help-symbol{
  width:60px;height:60px;flex:0 0 60px;display:grid;place-items:center;
  color:#6d28d9;background:#efe6ff;border:1px solid #ddc9fc;border-radius:18px;
}
.dev-help-symbol svg{width:32px;height:32px;display:block;stroke:currentColor}
.dev-help-overline{display:block;font-size:clamp(10px,1.1vw,12px);font-weight:850;letter-spacing:.075em;color:#6937ad}
.dev-help-identity h2{font-size:clamp(19px,2.1vw,27px);line-height:1.22;color:#281446;margin:7px 0 0;overflow-wrap:anywhere}
.dev-help-description{font-size:clamp(14px,1.5vw,16px);line-height:1.7;margin:20px 0 26px;color:#4b3d5f;max-width:870px}
.dev-help-buttons{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}
.dev-help-button{
  display:flex;align-items:center;justify-content:center;gap:14px;min-width:0;min-height:90px;
  text-align:left;border-radius:15px;padding:17px 18px;transition:transform .18s,box-shadow .18s;
  border:1px solid transparent;text-decoration:none!important;
}
.dev-help-button:hover,.dev-help-button:focus-visible{transform:translateY(-2px);box-shadow:0 12px 30px rgba(88,36,157,.17);outline-offset:3px}
.dev-help-button-icon{flex:0 0 28px;width:28px;display:grid;place-items:center}
.dev-help-button-icon svg{width:27px;height:27px;display:block;stroke:currentColor}
.dev-help-button>span:last-child{display:grid;gap:3px;min-width:0}
.dev-help-button strong{font-size:clamp(13px,1.55vw,17px);line-height:1.3;overflow-wrap:anywhere}
.dev-help-button small{font-size:clamp(11px,1.2vw,13px);line-height:1.4;overflow-wrap:anywhere}
.dev-help-whatsapp{background:linear-gradient(120deg,#7541cb,#602bb3)!important;color:#fff!important;border-color:#602bb3!important}
.dev-help-whatsapp strong,.dev-help-whatsapp small,.dev-help-whatsapp svg{color:#fff!important;stroke:#fff!important}
.dev-help-email{background:#f0e8fd!important;border-color:#d6c2f9!important;color:#4b2488!important}
.dev-help-email strong,.dev-help-email small,.dev-help-email svg{color:#4b2488!important;stroke:#4b2488!important}
.dev-help-direct-email{font-size:clamp(12px,1.2vw,14px);color:#4b3d5f;margin:22px 0 0;overflow-wrap:anywhere}
.dev-help-direct-email a{color:#6733ba;text-decoration:underline;text-underline-offset:3px;font-weight:700;overflow-wrap:anywhere}
.dev-help-copyright{border-top:1px solid #dbcdf1;margin-top:24px;padding-top:21px;font-size:12px;color:#6a5c7c}
html[data-theme="dark"] .dev-help-card{
  background:linear-gradient(140deg,#20152e,#16101e 90%)!important;
  border-color:#57416f;color:#f6f0ff;box-shadow:0 20px 60px rgba(0,0,0,.18);
}
html[data-theme="dark"] .dev-help-symbol{background:#39254f;border-color:#704b9a;color:#dbc7ff}
html[data-theme="dark"] .dev-help-symbol svg{stroke:#dbc7ff}
html[data-theme="dark"] .dev-help-overline{color:#d8b9ff}
html[data-theme="dark"] .dev-help-identity h2{color:#f7f1ff}
html[data-theme="dark"] .dev-help-description,html[data-theme="dark"] .dev-help-direct-email{color:#d2c3e2}
html[data-theme="dark"] .dev-help-whatsapp{background:linear-gradient(120deg,#9d6bf2,#7b46d7)!important;color:#180b2d!important;border-color:#bd94ff!important}
html[data-theme="dark"] .dev-help-whatsapp strong,html[data-theme="dark"] .dev-help-whatsapp small,html[data-theme="dark"] .dev-help-whatsapp svg{color:#160927!important;stroke:#160927!important}
html[data-theme="dark"] .dev-help-email{background:#332246!important;border-color:#76579b!important;color:#f0e1ff!important}
html[data-theme="dark"] .dev-help-email strong,html[data-theme="dark"] .dev-help-email small,html[data-theme="dark"] .dev-help-email svg{color:#f0e1ff!important;stroke:#f0e1ff!important}
html[data-theme="dark"] .dev-help-direct-email a{color:#e3c8ff}
html[data-theme="dark"] .dev-help-copyright{border-color:#51415f;color:#baaacd}
@media(max-width:700px){
  .dev-help-buttons{grid-template-columns:minmax(0,1fr)}
  .dev-help-card{border-radius:16px}
  .dev-help-button{min-height:78px;justify-content:flex-start}
  .dev-help-identity{align-items:flex-start;gap:12px}
  .dev-help-symbol{width:48px;height:48px;flex-basis:48px;border-radius:13px}
  .dev-help-symbol svg{width:25px;height:25px}
}
@media(max-width:360px){
  .dev-help-identity{flex-wrap:wrap}
  .dev-help-card{padding:16px}
  .dev-help-button{padding:13px;gap:9px}
}

/* Respiro entre a última aba de suporte e o botão Sair na barra lateral.
   Não interfere na posição absoluta do botão no menu móvel. */
@media(min-width:651px){
  .panel-layout > .sidebar nav > a.dev-help-nav{
    margin-bottom:18px!important;
  }
}

/* GAAI · Monitor de pessoas online — painel administrativo */
.presence-shortcut{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  border:1px solid #cbb7f2;background:#f1eaff;color:#4d2186!important;
  border-radius:12px;padding:11px 14px;min-height:44px;font-size:12px;
  font-weight:750;text-decoration:none!important;white-space:nowrap;
}
.presence-shortcut:hover,.presence-shortcut:focus-visible{background:#e5d7ff;border-color:#8d61d1;outline-offset:3px}
.presence-dot{width:12px;height:12px;border-radius:50%;display:inline-block;flex:0 0 12px}
.presence-dot.online{background:#18a76b;box-shadow:0 0 0 3px rgba(24,167,107,.17)}
.presence-dot.offline{background:#92929e;box-shadow:0 0 0 3px rgba(146,146,158,.14)}
.presence-panel{max-width:1050px;min-width:0}
.presence-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:18px}
.presence-stat{display:flex;align-items:center;gap:16px;min-width:0;padding:20px;border:1px solid #dfd2f5;border-radius:14px;background:#f9f6ff}
.presence-stat .presence-dot{width:16px;height:16px;flex-basis:16px}
.presence-stat>div{display:grid;min-width:0}
.presence-stat b{font-size:clamp(24px,3vw,34px);line-height:1.12;color:#3f2366}
.presence-stat small{color:#615474;font-size:12px}
.presence-explanation{line-height:1.65;color:var(--muted);font-size:13px;margin:0 0 18px}
.presence-filters{display:grid;grid-template-columns:1fr 1fr minmax(180px,1.4fr);gap:12px;margin-bottom:18px}
.presence-filters label{display:grid;gap:6px;min-width:0;color:var(--ink);font-size:12px;font-weight:750}
.presence-filters select,.presence-filters input{
  width:100%;min-width:0;min-height:44px;padding:9px 12px;
  border:1px solid #d6c8ec;border-radius:10px;background:var(--card);color:var(--ink);
  font-size:13px;
}
.presence-list{display:grid;gap:10px;min-width:0}
.presence-person{
  display:grid;grid-template-columns:14px minmax(0,1fr) auto;
  gap:15px;align-items:start;padding:17px 18px;
  border:1px solid var(--line);background:var(--card);border-radius:13px;min-width:0;
}
.presence-person>.presence-dot{margin-top:6px}
.presence-person-info{display:grid;gap:5px;min-width:0}
.presence-person-info strong{font-size:15px;color:var(--ink);overflow-wrap:anywhere}
.presence-person-info small{font-size:12px;color:var(--muted);overflow-wrap:anywhere}
.presence-person-info span{font-size:12px;line-height:1.5;color:var(--muted);overflow-wrap:anywhere}
.presence-state{display:inline-flex;align-items:center;border-radius:99px;padding:6px 10px;font-size:11px;font-weight:750;white-space:nowrap}
.presence-state.connected{background:#e6f7ef;color:#11663e}
.presence-state.disconnected{background:#efeff2;color:#5e5e69}
.presence-empty{border:1px dashed var(--line);border-radius:12px;padding:22px;text-align:center;color:var(--muted)}
html[data-theme="dark"] .presence-shortcut{background:#392454;border-color:#74519c;color:#f0e3ff!important}
html[data-theme="dark"] .presence-shortcut:hover,html[data-theme="dark"] .presence-shortcut:focus-visible{background:#493169}
html[data-theme="dark"] .presence-stat{background:#281b39;border-color:#5b4279}
html[data-theme="dark"] .presence-stat b{color:#f7f0ff}
html[data-theme="dark"] .presence-stat small{color:#c6b2dd}
html[data-theme="dark"] .presence-filters select,html[data-theme="dark"] .presence-filters input{border-color:#564266}
html[data-theme="dark"] .presence-state.connected{background:#153d30;color:#91e8b5}
html[data-theme="dark"] .presence-state.disconnected{background:#382f40;color:#d1c5d8}
@media(max-width:900px){.presence-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.presence-filters label:last-child{grid-column:1/-1}}
@media(max-width:650px){.presence-shortcut{white-space:normal}.presence-summary{gap:8px}.presence-stat{gap:10px;padding:13px}.presence-person{grid-template-columns:14px minmax(0,1fr);gap:10px;padding:14px}.presence-state{grid-column:2;justify-self:start}.presence-filters{grid-template-columns:minmax(0,1fr)}.presence-filters label:last-child{grid-column:auto}}

/* Logo institucional de 6cm ao lado direito na página Quem somos.
   O cabeçalho mantém os tamanhos antigos de marca e navegação. */
.about-page-head .about-intro-grid{
  display:grid;grid-template-columns:minmax(0,1fr) 6cm;
  gap:clamp(18px,4vw,56px);align-items:center;min-width:0;
}
.about-page-head .about-intro-copy{min-width:0;overflow-wrap:break-word}
.about-page-head .about-intro-copy h1{max-width:100%;overflow-wrap:break-word}
.about-page-head .about-intro-copy p{max-width:700px;line-height:1.65}
.about-page-head .about-intro-logo{
  width:6cm;height:6cm;max-width:100%;min-width:0;
  display:grid;place-items:center;justify-self:end;
  border:1px solid #e9dff7;border-radius:24px;
  background:linear-gradient(145deg,#fff,#f7f1ff);
  padding:16px;box-shadow:0 16px 35px rgba(93,40,149,.13);
}
.about-page-head .about-intro-logo img{
  display:block;width:100%;height:100%;object-fit:contain;object-position:center;
}
html[data-theme="dark"] .about-page-head .about-intro-logo{
  background:linear-gradient(145deg,#2e1e40,#1b1428);border-color:#5d4679;
}
/* Sem alterar o corpo da fonte, o cabeçalho ganha altura automática
   apenas se o nome institucional completo precisar de mais linhas. */
@media(min-width:1025px){
  .top .nav{height:auto;min-height:70px}
  .top .nav>.gaai-brand{min-width:0;flex:0 1 auto}
  .top .nav>.gaai-brand>span{min-width:0;max-width:310px}
  .top .nav>.gaai-brand b{white-space:normal;overflow-wrap:normal}
}
@media(min-width:761px) and (max-width:1024px){
  .about-page-head .about-intro-grid{grid-template-columns:minmax(0,1fr) 6cm;gap:22px}
}
@media(max-width:760px){
  .about-page-head .about-intro-grid{grid-template-columns:minmax(0,1fr);gap:18px}
  .about-page-head .about-intro-logo{justify-self:end}
}
@media(max-width:370px){
  .about-page-head .about-intro-logo{border-radius:18px;padding:12px}
}

/* Título institucional: retorno ao tamanho discreto da marca original.
   Mantém logo, navegação, slogan e página Quem somos inalterados. */
.top .nav>.gaai-brand b{
  font-size:15px!important;
  line-height:1.3!important;
  letter-spacing:0!important;
  white-space:normal;
  overflow-wrap:normal;
}
@media(max-width:1024px){
  .top .nav>.gaai-brand b{font-size:14px!important;line-height:1.3!important}
}
@media(max-width:650px){
  .top .nav>.gaai-brand b{font-size:12px!important;line-height:1.3!important}
}

/* Sigla institucional em uma única linha, sem alterar as fontes ou a logo.
   Todo o restante do cabeçalho mantém as dimensões já aprovadas. */
.top .nav>.gaai-brand b .gaai-acronym{
  display:inline-block;
  white-space:nowrap!important;
  vertical-align:baseline;
}
.top .nav>.gaai-brand b .gaai-dot{
  display:inline-block;
  font-size:.72em;
  color:#7c3aed;
  vertical-align:middle;
  margin:0 5px;
}
.top .nav>.gaai-brand b .gaai-dot::before{content:"●"}
html[data-theme="dark"] .top .nav>.gaai-brand b .gaai-dot{color:#c4b5fd}

/* Cabeçalho: o nome institucional inteiro permanece na primeira linha em PC e tablet.
   O limite antigo de 310px forçava GAAI ● EAD a cair para a linha de baixo. */
@media(min-width:651px){
  .top .nav>.gaai-brand>span{max-width:none!important;min-width:0}
  .top .nav>.gaai-brand b{
    max-width:none!important;
    white-space:nowrap!important;
    overflow-wrap:normal!important;
  }
}
@media(min-width:1025px) and (max-width:1249px){
  /* Em notebooks compactos, menus ficam abaixo da marca sem comprimir o título. */
  .top .nav{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-rows:auto auto;
    gap:2px 16px;
    min-height:70px;height:auto;
    padding-top:7px;padding-bottom:9px;
    align-items:center;
  }
  .top .nav>.gaai-brand{grid-column:1/-1;grid-row:1;justify-self:start;max-width:100%}
  .top .nav>.nav-expand{display:contents!important}
  .top .nav .main-nav{
    grid-column:1;grid-row:2;min-width:0;
    justify-content:flex-start;gap:clamp(10px,1.6vw,24px);
  }
  .top .nav .main-nav>a{padding:11px 0}
  .top .nav .nav-actions{grid-column:2;grid-row:2;min-width:0}
}
@media(min-width:1250px){
  .top .nav{gap:clamp(12px,1.8vw,26px)}
  .top .nav>.gaai-brand{flex:0 0 auto;min-width:max-content;max-width:100%}
  .top .nav .main-nav{
    flex:1 1 auto;min-width:0;
    gap:clamp(10px,1.4vw,25px);
  }
  .top .nav .nav-actions{flex:0 0 auto;min-width:0}
}

/* Identidade do cabeçalho: NOME INTEIRO na mesma linha.
   A largura fixa de 310px no CSS antigo causava a quebra vista na foto. */
.top .nav>.gaai-brand{min-width:0}
.top .nav>.gaai-brand>.gaai-header-identity{
  display:block;min-width:0;max-width:none!important;
}
.top .nav>.gaai-brand .gaai-one-line{
  display:block;max-width:none!important;width:max-content;
  white-space:nowrap!important;overflow-wrap:normal!important;
  word-break:normal!important;hyphens:none;
  font-size:15px!important;line-height:1.25!important;
  letter-spacing:0!important;
}
.top .nav>.gaai-brand .gaai-tagline{
  display:block;font-size:16px!important;font-style:italic!important;
  font-weight:650;letter-spacing:.01em;line-height:1.45!important;
  margin-top:5px;max-width:none!important;
  text-transform:none!important;
}
@media(min-width:1025px){
  /* Marca ocupa a primeira faixa; menu mantém o tamanho original na segunda. */
  .top .nav{
    display:grid!important;grid-template-columns:minmax(0,1fr) auto;
    grid-template-rows:auto auto;column-gap:18px;row-gap:2px;
    align-items:center;height:auto!important;min-height:70px;
    padding-top:8px;padding-bottom:8px;
  }
  .top .nav>.gaai-brand{
    grid-column:1/-1;grid-row:1;display:flex;align-items:center;
    gap:12px;max-width:100%;width:max-content;
  }
  .top .nav>.nav-expand{display:contents!important}
  .top .nav>.nav-expand>.main-nav{
    grid-column:1;grid-row:2;display:flex;flex-wrap:wrap;
    justify-content:flex-start;align-items:center;min-width:0;gap:5px 24px;
  }
  .top .nav>.nav-expand>.main-nav>a{
    font-size:12px!important;padding:10px 0!important;
  }
  .top .nav>.nav-expand>.nav-actions{
    grid-column:2;grid-row:2;min-width:0;justify-content:flex-end;
    margin-left:0;gap:9px;
  }
}
@media(min-width:651px) and (max-width:1024px){
  .top .nav>.gaai-brand .gaai-one-line{font-size:14px!important}
  .top .nav>.gaai-brand .gaai-tagline{font-size:15px!important}
}
@media(max-width:650px){
  /* Coloca o nome sobre toda a largura útil, abaixo da faixa logo/menu.
     Assim ele continua legível, em UMA linha, sem sair pela direita. */
  .top .nav{align-items:start}
  .top .nav>.gaai-brand{
    grid-column:1/-1;grid-row:1;
    width:100%;max-width:100%;display:grid!important;
    grid-template-columns:auto minmax(0,1fr);
    grid-template-rows:48px auto;
    column-gap:8px;row-gap:5px;align-items:center;
  }
  .top .nav>.gaai-brand .brand-logo{grid-column:1;grid-row:1}
  .top .nav>.gaai-brand>.gaai-header-identity{
    grid-column:1/-1;grid-row:2;width:100%;max-width:100%!important;
  }
  .top .nav>.gaai-brand .gaai-one-line{
    font-size:clamp(10px,3vw,12px)!important;
    letter-spacing:-.02em!important;
  }
  .top .nav>.gaai-brand .gaai-tagline{
    font-size:14px!important;line-height:1.4!important;margin-top:4px;
  }
  .top .menu{grid-column:2;grid-row:1;align-self:start;justify-self:end;z-index:1}
}
@media(max-width:370px){
  .top .nav>.gaai-brand .gaai-one-line{font-size:10px!important}
}

/* Ajuste exclusivo do cabeçalho GAAI EAD (13/10/2026).
   Sigla equidistante, Início sem risco e navegação centrada no desktop.
   Cores, fontes, logotipo, slogan e outros componentes permanecem iguais. */
.top .nav>.gaai-brand b .gaai-acronym{
  display:inline-flex!important;
  align-items:center;
  gap:8px;
  white-space:nowrap!important;
  vertical-align:middle;
}
.top .nav>.gaai-brand .gaai-acronym .gaai-dot{
  display:block;
  flex:0 0 7px;
  width:7px;
  height:7px;
  border-radius:50%;
  margin:0!important;
  background:currentColor;
  font-size:0;
  line-height:0;
}
.top .nav>.gaai-brand .gaai-acronym .gaai-dot::before{
  content:none!important;
}
.top .nav .main-nav>a:first-child,
.top .nav .main-nav>a:first-child span{
  text-decoration:none!important;
  border-top:0!important;
}
.top .nav .main-nav>a:first-child::after{
  display:none!important;
  content:none!important;
}
@media(min-width:1025px){
  .top .nav>.gaai-brand{
    grid-column:1;
    grid-row:1;
    justify-self:start;
  }
  .top .nav>.nav-expand>.nav-actions{
    grid-column:2;
    grid-row:1;
    justify-self:end;
    align-self:center;
  }
  .top .nav>.nav-expand>.main-nav{
    grid-column:1/-1;
    grid-row:2;
    width:100%;
    min-width:0;
    display:flex!important;
    flex-wrap:wrap;
    justify-self:stretch;
    justify-content:center!important;
    align-items:center;
    margin-inline:auto!important;
  }
  .top .nav>.nav-expand>.main-nav>a{flex:0 0 auto}
}

/* GAAI-CABECALHO-MOBILE-LADO */
@media (max-width:650px) {
  .top .nav {
    grid-template-columns:minmax(0,1fr) 46px!important;
    align-items:center!important;
    column-gap:8px!important;
  }

  .top .nav>.gaai-brand {
    grid-column:1!important;
    grid-row:1!important;
    display:grid!important;
    grid-template-columns:40px minmax(0,1fr)!important;
    grid-template-rows:auto!important;
    gap:8px!important;
    align-items:center!important;
    width:100%!important;
    min-width:0!important;
  }

  .top .nav>.gaai-brand .brand-logo {
    grid-column:1!important;
    grid-row:1!important;
    width:40px!important;
    height:40px!important;
  }

  .top .nav>.gaai-brand .brand-logo :is(img,svg) {
    width:100%!important;
    height:100%!important;
  }

  .top .nav>.gaai-brand>.gaai-header-identity {
    grid-column:2!important;
    grid-row:1!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }

  .top .nav>.gaai-brand .gaai-one-line {
    width:100%!important;
    max-width:100%!important;
    white-space:normal!important;
    overflow-wrap:normal!important;
    font-size:clamp(9px,2.6vw,11px)!important;
    line-height:1.3!important;
  }

  .top .nav>.gaai-brand .gaai-tagline {
    font-size:clamp(10px,2.8vw,12px)!important;
    line-height:1.3!important;
    margin-top:3px!important;
  }

  .top .menu {
    grid-column:2!important;
    grid-row:1!important;
    align-self:center!important;
    justify-self:end!important;
  }
}

/* GAAI_FIX_EXCLUSAO_MOBILE_20261013 */
@media (max-width:650px) {

  .account-danger-zone,
  .delete-account-form {
    box-sizing:border-box!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }

  .account-danger-zone {
    padding:14px!important;
    overflow-wrap:break-word;
  }

  .delete-account-form {
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:14px!important;
  }

  .delete-account-form > label {
    box-sizing:border-box!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }

  .delete-account-form .password-field {
    display:block!important;
    position:relative!important;
    box-sizing:border-box!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }

  .delete-account-form input:not([type=checkbox]) {
    box-sizing:border-box!important;
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }

  .delete-account-form .password-field > input {
    padding-right:100px!important;
  }

  .delete-account-form .password-visibility-toggle {
    position:absolute!important;
    right:6px!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    box-sizing:border-box!important;
    min-width:72px!important;
    max-width:90px!important;
    padding:6px 8px!important;
    white-space:nowrap!important;
  }

  .delete-account-form .account-confirm-checkbox {
    display:grid!important;
    grid-template-columns:20px minmax(0,1fr)!important;
    align-items:start!important;
    gap:10px!important;
    width:100%!important;
    min-width:0!important;
  }

  .delete-account-form .account-confirm-checkbox input {
    width:18px!important;
    min-width:18px!important;
    height:18px!important;
    margin:3px 0 0!important;
  }

  .delete-account-form .account-confirm-checkbox span {
    min-width:0!important;
    max-width:100%!important;
    white-space:normal!important;
    overflow-wrap:break-word!important;
  }

  .delete-account-form .account-delete-btn {
    box-sizing:border-box!important;
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    font-size:clamp(12px,3.8vw,15px)!important;
    line-height:1.4!important;
    padding:13px 10px!important;
    text-align:center!important;
  }
}
