/* Escola Brasileiro-Russa | Identidade V0.7.0
   Camada visual complementar. Não altera fluxos de negócio, API ou permissões. */
:root {
  --navy:#173b64;--navy-dark:#102e4e;--red:#ae5960;--red-dark:#96464d;
  --cream:#f6f8fb;--ink:#23364b;--muted:#66778b;--line:#e1e9f1;
  --paper:#fff;--shadow:0 12px 34px rgba(20,53,87,.075);
  --ebr-blue-soft:#eaf3fc;--ebr-green:#287c68;--ebr-gold:#cc9c47;
  --ebr-radius:19px;
}
html{scroll-padding-top:100px}
body{background:#f6f8fb;color:var(--ink);line-height:1.62;font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
h1,h2,h3{letter-spacing:-.035em}
h1{font-weight:780}
p{line-height:1.7}
:focus-visible{outline:3px solid #e5a83e;outline-offset:3px}
.container{width:min(1180px,calc(100% - 48px))}
.topbar{border-bottom:1px solid #e4ecf2;background:rgba(255,255,255,.97);box-shadow:0 3px 20px rgba(24,59,90,.035)}
.topbar .nav{min-height:86px;gap:24px}
.brand{gap:12px;flex-shrink:0}
.brand-symbol{width:55px;height:55px;display:block;object-fit:contain}
.brand-copy strong{font-size:17px;letter-spacing:-.025em;color:var(--navy);font-weight:780}
.brand-copy small{font-size:11px;letter-spacing:.025em;margin-top:4px;color:#728295}
.nav-links{gap:22px;align-items:center;color:#4f6379;font-weight:600}
.nav-links a{position:relative;padding:10px 0;font-size:13px;white-space:nowrap}
.nav-links a:hover{color:var(--navy)}
.nav-links a:hover:after{content:"";position:absolute;left:0;right:0;bottom:3px;height:2px;border-radius:8px;background:#d0a658}
.nav-actions{gap:9px}
.btn{border-radius:12px;box-shadow:none;transition:background-color .18s,border-color .18s,box-shadow .18s,transform .18s}
.btn:hover:not(:disabled){box-shadow:0 7px 19px rgba(17,53,89,.11)}
.btn-navy{background:#1b517f;color:#fff}
.btn-navy:hover{background:#153e65}
.btn-red{background:var(--navy);color:#fff;box-shadow:0 7px 18px rgba(19,61,100,.14)}
.btn-red:hover{background:#245981}
.btn-outline{border-color:#d2e0ea;color:var(--navy);background:#fff}
.btn-outline:hover{border-color:#a9c5d9;background:#f4f9fc}
.btn-quiet{color:var(--navy);background:#eff5fa}
.btn-quiet:hover{background:#e5f0fa}
.site-menu-toggle{display:none;border:1px solid #dce7f0;background:#fff;border-radius:11px;color:var(--navy);padding:9px 13px;font-weight:700}
/* Início: cor suave + tipografia + ilustração editorial, sem carnaval visual */
.hero{background:radial-gradient(circle at 88% 20%,#e6f2fc 0%,transparent 38%),linear-gradient(125deg,#f9fbfe 5%,#f2f7fb 63%,#edf6f3 100%);border-bottom:1px solid #eaf0f4}
.hero-grid{min-height:570px;gap:50px;padding-block:67px 78px}
.eyebrow,.overline,.section-kicker{color:#287b75;font-size:11px;letter-spacing:.13em;font-weight:800}
.eyebrow{background:#ebf6f3;border:1px solid #d3ebe3;color:#267460;letter-spacing:.065em;padding:8px 13px}
.hero h1{max-width:690px;font-size:clamp(44px,5.15vw,72px);color:#143b61;margin:20px 0 20px;line-height:1.06}
.hero h1 em{color:#287d73;font-weight:760}
.hero-content>p{color:#526982;font-size:17px;max-width:530px}
.hero-actions{margin-top:29px;gap:23px}
.hero-actions .btn{padding:15px 22px}
.text-link{color:#24577b}
.hero-metadata{margin-top:44px;font-size:12px;color:#657e91;line-height:1.6}
.sparkle{color:#c79a50}
.hero-visual{height:430px}
.hero-visual:before{width:390px;height:390px;transform:rotate(-15deg);border-radius:41% 59% 65% 35%;background:linear-gradient(145deg,#daeaf8,#e3f2ef)}
.circle-one{border-color:#c7dfed;width:465px;height:465px}
.circle-two{border-color:#e1edf5;width:540px;height:540px}
.study-card{transform:rotate(-2deg);border:1px solid #e1e9f1;box-shadow:0 30px 60px rgba(25,64,96,.13);height:340px;border-radius:22px}
.lesson-pill{background:#eaf5f1;color:#28765f;letter-spacing:.07em}
.russian-word{color:#194672;font-size:64px}
.translation{color:#297b6e}
.teacher-avatar{background:#e5eff9;color:#215880}
.floating-label{border-color:#dce8f0;box-shadow:0 10px 25px rgba(30,65,93,.09);max-width:65%;font-size:12px}
.floating-bottom{bottom:8px}
.symbol-rus{font-size:10px;background:#e9edf7;color:#205b92;border-radius:50%;padding:6px;font-weight:800;margin-right:5px}
.growth{color:#2d806e}
/* Landing content */
.benefits{padding-block:80px 92px}
.section-heading{margin-bottom:33px}
.section-heading h2{font-size:clamp(28px,3.4vw,40px);color:#173d65}
.section-heading p{color:#687d91}
.benefit-grid{gap:16px}
.benefit-card{min-height:248px;padding:27px;border:1px solid #e1ebf2;border-radius:20px;box-shadow:0 5px 22px rgba(17,50,80,.035)}
.benefit-card:hover{box-shadow:var(--shadow)}
.benefit-icon{border-radius:15px;width:50px;height:50px;margin-bottom:20px}
.benefit-blue{background:#e8f2fb;color:#24629d}
.benefit-purple{background:#eaf4ef;color:#327a60}
.benefit-red{background:#fff2e2;color:#a87732}
.benefit-card h3{color:#1b4369}
.benefit-card p{color:#60758a}
.upcoming{color:#8794a2}
.school-showcase-section{padding:80px 0 90px;background:#edf4fa}
.showcase-layout{gap:18px;grid-template-columns:minmax(260px,.9fr) minmax(300px,1.2fr)}
.showcase-grades{gap:10px}
.showcase-grade{background:#fff;border-color:#d9e6f0;min-height:61px;color:#234e78;box-shadow:0 3px 13px rgba(23,64,96,.025)}
.showcase-grade:hover,.showcase-grade.is-selected{background:#1b557f;border-color:#1b557f}
.showcase-details{background:#fff;border-color:#dce8f1;box-shadow:var(--shadow);border-radius:20px}
.showcase-details h3,.showcase-details h4{color:#1d476f}
.showcase-subject-list li{background:#f7fafc;border-color:#e8eef3}
.showcase-class{background:#eef5fa}
.disclaimer{color:#657788;max-width:960px;font-size:12px}
.courses-section{padding-block:85px 95px;background:#f9fbfe}
.course-list{max-width:1080px}
.course-card{border-color:#e0e8ef;border-radius:21px;box-shadow:var(--shadow)}
.course-art{background:radial-gradient(circle at 80% 20%,#3b86aa,transparent 55%),linear-gradient(155deg,#173f69,#275d77)}
.course-content{padding:30px 35px}
.course-content h3{color:#19456d}
.tag{background:#e7f4ee;color:#267658}
.tag-secondary{background:#eaf3fb;color:#50738e}
/* Portais: cabeçalhos simples, 3 atalhos grandes e informações legíveis */
.dashboard-section{background:#f5f8fc;padding:48px 0 96px}
.dashboard-heading,.classroom-heading{margin-bottom:25px}
.dashboard-heading h1,.classroom-heading h1{color:var(--navy);font-size:clamp(29px,4vw,42px);line-height:1.16}
.student-welcome{border-radius:23px;padding:32px 35px;margin-bottom:20px;background:linear-gradient(108deg,#e9f3fd,#f5fbff 68%,#eef7f1);border:1px solid #dbeaf4;position:relative;overflow:hidden;min-height:165px}
.student-welcome:after{content:"✦";font-size:145px;line-height:1;position:absolute;right:27%;top:-19px;color:#c6dfed;opacity:.4;pointer-events:none}
.student-welcome>*{position:relative;z-index:1}
.student-welcome h1{margin:8px 0;color:#173f6b}
.student-welcome p{font-size:14px;color:#5a7184}
.student-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-bottom:23px}
.shortcut-card{border:1px solid #e1eaf1;text-align:left;padding:18px 17px;background:#fff;display:flex;align-items:center;gap:13px;border-radius:17px;box-shadow:0 6px 19px rgba(25,65,100,.035);min-width:0;color:#224567}
.shortcut-card:hover{border-color:#aec9dc;transform:translateY(-1px);box-shadow:var(--shadow)}
.shortcut-card strong,.shortcut-card small{display:block}
.shortcut-card strong{font-size:15px;line-height:1.3}
.shortcut-card small{font-size:12px;color:#718295;margin-top:5px}
.shortcut-icon{width:49px;height:49px;flex:0 0 49px;display:grid;place-items:center;border-radius:14px;font-size:24px;font-weight:700}
.shortcut-blue{background:#e7f2fc;color:#2d75a7}
.shortcut-green{background:#e6f5ec;color:#327c61}
.shortcut-gold{background:#fff2dd;color:#b4853b}
.shortcut-arrow{color:#a0b5c5;margin-left:auto;font-size:17px}
.dashboard-grid{grid-template-columns:minmax(0,1.75fr) minmax(270px,.9fr);gap:21px;align-items:start}
.dashboard-main{padding:0;background:transparent;border:0;display:grid;gap:19px}
.student-panel,.profile-box,.welcome-box{background:#fff;padding:26px;border:1px solid #e0e9f0;border-radius:19px;box-shadow:0 5px 22px rgba(24,58,85,.035);min-width:0}
.student-panel .card-head{margin-bottom:18px}
.student-panel h2{font-size:21px;margin:3px 0 0;color:#20476a}
.section-kicker{display:block;color:#2f806a;letter-spacing:.1em}
.school-my-section{margin:0;border:1px solid #e0e9f0;padding:25px}
.school-path-card{background:#f6fafc;border-color:#deebf3;border-radius:14px}
.enrollment-card{border-color:#dde8f1;background:#f6fafd}
.enrollment-icon{border-radius:13px;background:#225b83}
.next-section{margin:0}
.next-section>summary{font-weight:760;color:#244d70;cursor:pointer;font-size:15px;list-style-position:inside}
.next-section .feature-list{margin-top:22px;padding-top:16px;border-top:1px solid #e8eff4}
.resource-hint{display:inline-block;margin-left:9px;color:#8c9aaa;font-size:11px;font-weight:600}
.dashboard-aside{gap:18px}
.welcome-box{background:linear-gradient(155deg,#1c5379,#19456b);color:#fff;padding:27px}
.welcome-box .section-kicker{color:#bcd9e6;font-size:10px;margin-top:12px}
.welcome-star{color:#f0ca81}
.welcome-box h3{font-size:24px}
.welcome-box p{color:#d8e6ed}
.profile-box{padding:25px}
.profile-role{background:#eaf4ee;color:#28775e}
/* Aula e professor */
.classroom-layout{gap:19px}
.classroom-menu,.classroom-content,.school-card,.management-panel{border-radius:18px}
.classroom-content,.classroom-menu{border:1px solid #e0e8f0;box-shadow:0 3px 18px rgba(27,60,88,.03)}
.staff-container{display:grid;grid-template-columns:233px minmax(0,1fr);align-items:start;column-gap:24px;row-gap:14px}
.staff-container>#staff-back,.staff-container>.classroom-heading{grid-column:1/-1}
.staff-container>.classroom-heading{background:linear-gradient(110deg,#e9f3fb,#f8fbfd 72%,#eef8f2);padding:30px 32px;border:1px solid #dbe8f1;border-radius:21px;margin:0 0 13px}
.staff-container>.classroom-heading h1{margin:10px 0 8px}
.staff-container>.classroom-heading p{margin:0;color:#64798d}
.staff-tabs{grid-column:1;grid-row:3 / span 5;display:flex;flex-direction:column;align-items:stretch;gap:8px;padding:20px 12px;min-width:0;background:#fff;border:1px solid #e0eaf2;border-radius:19px;position:sticky;top:107px}
.staff-menu-caption{display:block;color:#71899b;font-size:10px;letter-spacing:.1em;font-weight:800;padding:5px 11px 8px}
.staff-tabs .btn{display:flex;width:100%;justify-content:flex-start;text-align:left;border:0;padding:14px 15px;font-size:13px;box-shadow:none!important;min-height:48px;white-space:normal}
.staff-tabs .btn-navy{background:#e7f2fb;color:#18537e}
.staff-tabs .btn-outline{color:#536b80;background:transparent}
.staff-tabs .btn-outline:hover{background:#f3f8fb}
.staff-menu-footnote{padding:15px 13px 6px;margin-top:10px;border-top:1px solid #e6edf3;color:#365a74;line-height:1.4}
.staff-menu-footnote strong,.staff-menu-footnote small{display:block}
.staff-menu-footnote strong{font-size:12px}.staff-menu-footnote small{color:#8093a3;font-size:11px;margin-top:6px}
.staff-container>#panel-lessons,.staff-container>#panel-courses,.staff-container>#panel-school,.staff-container>#panel-people,.staff-container>#panel-reports{grid-column:2;grid-row:3;min-width:0;margin-top:0}
.staff-panel-intro{grid-column:1/-1;background:#fff;border:1px solid #e4ebf1;padding:24px 25px;border-radius:18px}
.staff-panel-intro h2{font-size:22px;color:#214f77;margin:6px 0 5px}
.staff-panel-intro p{font-size:13px;color:#677c90;margin:0}
.staff-grid{grid-template-columns:minmax(0,1fr)}
.staff-grid>.classroom-menu{width:100%;padding:25px}
.staff-grid>.classroom-menu label{font-weight:750}
.staff-grid>.classroom-menu select{margin:10px 0 16px}
.staff-list button{background:#f8fbfd;border:1px solid #e0e9f0;border-radius:12px;margin-top:8px;padding:13px 14px;text-align:left}
.staff-list button:hover{background:#edf6fc;border-color:#bdd2e1}
.management-panel{background:transparent}
.management-panel>.school-banner{margin-top:0}
.school-banner{background:linear-gradient(114deg,#1f527a,#246c83);border:1px solid #2c7192}
.school-banner h2{font-size:26px}
.school-banner .overline{color:#bcf2df}
.school-admin-grid{gap:16px}
.school-card{background:#fff;border:1px solid #e0eaf1;box-shadow:0 5px 20px rgba(22,57,91,.045)}
.school-record-row{gap:12px}
.school-record-actions .btn{min-width:65px}
.school-chips .school-chip{background:#edf5fa;color:#386581}
.school-edit-dialog,.auth-dialog{border-radius:20px;border:1px solid #dce8f0;box-shadow:0 30px 95px rgba(14,39,66,.23)}
.school-edit-dialog::backdrop,.auth-dialog::backdrop{background:rgba(15,37,63,.50);backdrop-filter:blur(3px)}
.school-dialog-header{background:#f7fafc;border-bottom-color:#e5edf3}
.school-dialog-header h2,.dialog-body h2{color:#1e507a}
.school-dialog-caption{color:#307e6b}
.school-dialog-x{background:#eaf1f7;color:#345d79}
.school-dialog-x:hover{background:#ddebf6}
.ebr-editor-dialog{width:min(770px,calc(100% - 28px));max-height:88dvh;overflow-y:auto}
.ebr-editor-dialog .school-dialog-body{padding:25px 27px 30px}
.ebr-editor-dialog .classroom-content{padding:0;border:0;box-shadow:none;background:transparent}
.ebr-editor-dialog textarea{width:100%;max-width:100%;padding:13px;border-radius:11px;border:1px solid #dbe5ed;background:#fff;font:inherit;color:var(--ink)}
.ebr-editor-dialog .form-field input,.ebr-editor-dialog .form-field select,.ebr-editor-dialog .form-field textarea{width:100%;min-width:0}
.ebr-editor-dialog .school-dialog-header{position:sticky;top:0;z-index:1}
.ebr-editor-dialog .school-dialog-body>.classroom-content>h2:first-child{font-size:21px;color:#1d527d}
.form-field input:focus,.school-dialog-body input:focus,.school-dialog-body textarea:focus,.school-dialog-body select:focus{border-color:#7ea9c7;box-shadow:0 0 0 3px #e4f0f9;outline:0}
.profile-dialog{width:min(730px,calc(100% - 28px))}
/* Rodapé: consistente e sem informações inventadas */
.footer{background:#133b5e;border:0}
.footer-inner{color:#d1dfeb;min-height:95px}
.footer-inner strong{color:#fff}
.footer-inner span{color:#a7c7d6}
/* Telas menores */
@media(max-width:1060px){.nav-links{gap:13px}.nav-links a{font-size:12px}.brand-copy strong{font-size:15px}}
@media(max-width:950px){
 .site-menu-toggle{display:inline-flex}
 .nav{position:relative}
 .nav-links{display:none;position:absolute;top:calc(100% - 1px);left:0;right:0;background:#fff;border:1px solid #dce7ef;border-radius:0 0 15px 15px;padding:14px 18px;box-shadow:0 20px 30px rgba(25,60,90,.09);gap:1px;z-index:40}
 .nav-links.is-open{display:flex;flex-direction:column;align-items:stretch}
 .nav-links a{padding:12px 10px;font-size:14px}
 .hero-grid{gap:16px}
 .staff-container{grid-template-columns:205px minmax(0,1fr);gap:16px}
 .staff-tabs{top:97px}
}
@media(max-width:760px){
 .container{width:min(100% - 28px,620px)}
 .topbar .nav{min-height:72px;gap:10px}
 .brand-symbol{width:43px;height:43px}
 .brand-copy strong{font-size:12px;letter-spacing:-.02em}
 .brand-copy small{font-size:9px}
 .nav-actions .btn{padding:9px;font-size:12px}
 .site-menu-toggle{font-size:12px;padding:9px}
 .hero-grid{padding-block:49px 54px;gap:25px}
 .hero h1{font-size:clamp(37px,10vw,50px)}
 .hero-visual{height:375px}
 .study-card{width:min(360px,86%);height:310px;padding:24px}
 .russian-word{font-size:55px}
 .floating-bottom{left:0;bottom:0;max-width:80%}
 .floating-top{top:-1px;right:0}
 .circle-two{max-width:100%}
 .benefits{padding-block:56px 65px}
 .benefit-grid{grid-template-columns:1fr;gap:12px}
 .benefit-card{min-height:0;padding:22px}
 .benefit-icon{margin-bottom:13px}
 .school-showcase-section,.courses-section{padding-block:54px 60px}
 .course-card{grid-template-columns:1fr}
 .course-art{min-height:145px}
 .course-art strong{font-size:60px}
 .dashboard-section{padding-top:22px}
 .student-welcome{padding:23px 20px;min-height:0;align-items:flex-start}
 .student-welcome:after{font-size:92px;right:8px;top:5px}
 .student-shortcuts{grid-template-columns:1fr;gap:9px}
 .shortcut-card{padding:12px 14px}
 .shortcut-icon{width:43px;height:43px;flex-basis:43px}
 .dashboard-grid{grid-template-columns:1fr;gap:17px}
 .student-panel{padding:19px}
 .dashboard-aside{grid-row:auto}
 .staff-container{display:block}
 .staff-container>#staff-back{margin-bottom:12px}
 .staff-container>.classroom-heading{margin-bottom:15px;padding:24px 20px}
 .staff-tabs{position:static;flex-direction:row;overflow-x:auto;gap:7px;white-space:nowrap;margin:0 0 15px;padding:9px;border-radius:13px}
 .staff-menu-caption,.staff-menu-footnote{display:none}
 .staff-tabs .btn{width:auto;flex:0 0 auto;min-height:43px;padding:11px 13px}
 .staff-panel-intro{padding:20px}
 .school-admin-grid{grid-template-columns:1fr}
 .showcase-layout{grid-template-columns:1fr}
 .footer-inner{padding-block:20px;flex-wrap:wrap}
 .profile-dialog .school-dialog-body{padding:16px}
}
@media(max-width:430px){
 .brand-copy small{display:none}
 .brand-copy strong{max-width:140px;line-height:1.22}
 .nav-actions{gap:3px}
 .nav-actions .btn{padding:9px 7px}
 .hero-visual{height:340px}
 .study-card{width:min(345px,93%);transform:none}
 .floating-label{font-size:10px;padding:8px}
 .showcase-grades{grid-template-columns:repeat(3,minmax(0,1fr))}
 .showcase-details{padding:18px}
 .student-welcome .btn{width:100%;margin-top:6px}
 .student-panel .card-head{align-items:flex-start;flex-wrap:wrap}
 .ebr-editor-dialog .school-dialog-body{padding:15px}
 .ebr-editor-dialog .staff-fields{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}

.auth-brand-symbol{display:block;width:54px;height:54px;margin:0 0 20px}
.ebr-attention{box-shadow:0 0 0 3px #d4e9f7,0 10px 28px rgba(23,60,100,.1)!important;transition:box-shadow .25s}
/* Cursos e módulos aparecem em painéis independentes; somente os formulários abrem em modais. */
#panel-courses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-content:start}
#panel-courses .admin-columns{display:block;min-width:0;margin-top:0}
#panel-courses .admin-columns>.classroom-menu{min-height:310px;width:100%;padding:24px}
#panel-courses .admin-columns .staff-list{margin-top:16px}
#panel-courses .admin-subsection{margin-top:0}
@media(max-width:980px){#panel-courses{grid-template-columns:1fr}}

/* v0.7.1 — Vitrine institucional independente (NÃO expõe série/disciplinas) */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.ebr-shopfront{background:#f9fbfd;color:#223a52}
.ebr-shopfront h1,.ebr-shopfront h2,.ebr-shopfront h3{font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:-.035em}
.ebr-store-hero{background:linear-gradient(115deg,#f4f8fc 10%,#eef6fa 69%,#eaf5f0 100%);position:relative;overflow:hidden;border-bottom:1px solid #e5edf3}
.ebr-store-hero:before{content:"";position:absolute;width:490px;height:490px;border:1px solid rgba(60,119,146,.1);border-radius:50%;right:-235px;top:-290px;pointer-events:none}
.ebr-store-hero-grid{display:grid;grid-template-columns:minmax(0,1.17fr) minmax(320px,.83fr);align-items:center;gap:54px;min-height:520px;padding-block:74px 78px}
.ebr-store-kicker{display:inline-flex;gap:9px;align-items:center;color:#25675a;background:#e3f2ed;border:1px solid #d1e7df;padding:8px 13px;border-radius:999px;font-size:10px;letter-spacing:.09em;font-weight:850}
.ebr-store-kicker span{color:#b88932;font-size:15px}
.ebr-store-hero h1{font-size:clamp(41px,4.8vw,63px);font-weight:790;line-height:1.11;color:#153e64;margin:20px 0;max-width:710px}
.ebr-store-hero h1 em{font-style:normal;color:#2c806d}
.ebr-store-hero-grid>div:first-child>p{font-size:17px;color:#5a7084;line-height:1.75;max-width:610px}
.ebr-store-buttons{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0 20px}
.ebr-store-buttons .btn{display:inline-flex;align-items:center;text-decoration:none;justify-content:center;padding:13px 20px}
.ebr-store-note{font-size:12px!important;color:#718194!important;margin:0}
.ebr-store-feature{background:#173f64;min-height:345px;padding:34px;display:flex;flex-direction:column;justify-content:center;color:#fff;border-radius:26px;position:relative;box-shadow:0 24px 56px rgba(21,58,85,.16);overflow:hidden}
.ebr-store-feature:before,.ebr-store-feature:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.16);border-radius:50%;width:270px;height:270px;right:-115px;top:-85px;pointer-events:none}
.ebr-store-feature:after{width:370px;height:370px;right:-160px;top:-120px}
.ebr-store-feature-kicker{font-size:10px;letter-spacing:.16em;font-weight:800;color:#a5d9ce;position:relative;z-index:1}
.ebr-store-feature-symbol{font-size:47px;line-height:1.1;margin:20px 0;color:#d9b86a;position:relative;z-index:1}
.ebr-store-feature h2{font-size:clamp(26px,3vw,39px);line-height:1.16;color:#fff;font-weight:770;margin:0 0 13px;position:relative;z-index:1}
.ebr-store-feature p{font-size:14px;color:#d3e1eb;max-width:310px;position:relative;z-index:1}
.ebr-store-feature-line{display:flex;gap:5px;position:relative;z-index:1;margin-top:16px}
.ebr-store-feature-line span{height:4px;border-radius:10px;width:38px;background:#69b89e}.ebr-store-feature-line span:nth-child(2){background:#edc779}.ebr-store-feature-line span:nth-child(3){background:#b4cddd}
.ebr-store-benefits{padding-block:78px 87px}
.ebr-store-section-heading{margin-bottom:24px;max-width:720px}.ebr-store-section-heading h2{font-size:clamp(27px,3.1vw,37px);margin:7px 0 10px;color:#1c456d}.ebr-store-section-heading p{font-size:15px;color:#62798d}
.ebr-store-benefits-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.ebr-store-benefits-grid article{border:1px solid #e0e9f0;background:#fff;border-radius:20px;padding:26px 25px;box-shadow:0 6px 28px rgba(20,60,90,.035)}
.ebr-store-benefits-grid h3{font-size:17px;color:#1d4466;margin:15px 0 8px}.ebr-store-benefits-grid p{font-size:13px;color:#66798c;margin:0}
.ebr-store-benefit-icon{width:47px;height:47px;border-radius:14px;display:grid;place-items:center;font-size:22px;font-weight:bold}
.ebr-i-blue{background:#e7f2fc;color:#37739e}.ebr-i-green{background:#e3f3ed;color:#2d8068}.ebr-i-gold{background:#fff3db;color:#b48a3e}
.ebr-store-catalog{padding:82px 0 88px;background:#f1f6fa;scroll-margin-top:96px;border-top:1px solid #e4ebf1;border-bottom:1px solid #e1eaf1}
.ebr-store-catalog-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:14px}
.ebr-store-catalog-head>div{max-width:730px}.ebr-store-catalog-head h2{font-size:clamp(30px,3.7vw,42px);margin:5px 0 8px;color:#18466f}.ebr-store-catalog-head p{font-size:14px;color:#6b7e91}
.ebr-store-search{min-width:270px;max-width:370px;display:flex;align-items:center;gap:10px;border:1px solid #d7e3ec;background:#fff;padding:0 14px;height:49px;border-radius:13px;box-shadow:0 2px 8px rgba(17,57,88,.025)}
.ebr-search-icon{font-size:24px;color:#56809f}.ebr-store-search:focus-within{outline:2px solid #7aa9c7;outline-offset:2px}
.ebr-store-search input{border:0!important;background:transparent;outline:0!important;width:100%;min-width:0;font:inherit;font-size:13px;color:#1d3e5c}
.ebr-store-catalog-count{font-size:12px;color:#6d8597;font-weight:700;margin:0 0 19px}
.ebr-store-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.ebr-product-card{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid #dde8ef;border-radius:20px;overflow:hidden;box-shadow:0 9px 26px rgba(22,64,91,.06);transition:transform .17s,box-shadow .17s}
.ebr-product-card:hover{transform:translateY(-2px);box-shadow:0 13px 30px rgba(22,64,91,.10)}
.ebr-product-top{height:130px;display:grid;place-items:center;background:linear-gradient(130deg,#e0eef7,#dfeeea)}
.ebr-product-card:nth-child(3n+2) .ebr-product-top{background:linear-gradient(130deg,#e9f2f8,#edf0e5)}
.ebr-product-card:nth-child(3n+3) .ebr-product-top{background:linear-gradient(130deg,#edf1f7,#e9f2f4)}
.ebr-product-icon{width:90px;height:90px;position:relative;border:1px solid rgba(36,96,127,.16);background:rgba(255,255,255,.65);border-radius:25px;display:grid;place-items:center;color:#235780;font-weight:800;font-size:27px;box-shadow:0 8px 20px rgba(39,77,105,.07)}
.ebr-product-icon strong{position:absolute;top:0;right:12px;color:#be9f5d;font-size:22px}
.ebr-product-body{display:flex;flex-direction:column;flex:1;padding:24px}.ebr-product-meta{display:flex;flex-wrap:wrap;gap:7px}
.ebr-product-card h3{font-size:19px;line-height:1.36;color:#18466a;margin:13px 0 10px;overflow-wrap:anywhere}.ebr-product-body>p{font-size:13px;line-height:1.65;color:#62778a;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden;min-height:65px}
.ebr-product-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:auto;padding-top:19px}.ebr-product-actions .btn{padding:11px 13px;font-size:12px;flex:1;white-space:normal}
.ebr-store-empty{grid-column:1/-1;border:1px dashed #b6cad9;background:#fff;border-radius:17px;text-align:center;padding:44px 24px;color:#526a7c}
.ebr-store-disclaimer{font-size:12px;color:#6d7f8d;margin:20px 0 0}
.ebr-store-how{padding-block:77px 93px;scroll-margin-top:96px}
.ebr-store-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.ebr-store-steps>div{border-top:1px solid #dce6ed;padding:20px 8px 10px 0}
.ebr-store-steps span{font-size:12px;font-weight:900;color:#2a806a}.ebr-store-steps h3{font-size:17px;color:#20466c;margin:10px 0 5px}.ebr-store-steps p{font-size:13px;color:#697d90}
.ebr-store-bottom-cta{margin-top:40px;border:1px solid #dfebf2;padding:25px 29px;border-radius:18px;background:#f2f7fb;display:flex;gap:24px;align-items:center;justify-content:space-between}
.ebr-store-bottom-cta h3{font-size:18px;color:#214c70;margin:0 0 6px}.ebr-store-bottom-cta p{font-size:13px;color:#698194;margin:0}
.ebr-course-detail-dialog{width:min(570px,calc(100% - 26px))}.ebr-course-detail-dialog .school-dialog-header h2{font-size:24px;overflow-wrap:anywhere}.ebr-course-detail-dialog .school-dialog-body p{font-size:15px;line-height:1.75;color:#586d7e}
.ebr-detail-meta{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:15px}.ebr-detail-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}
/* Portais: rótulos claros de contextos sem competir com o site institucional */
body.ebr-portal-mode .topbar{background:#fff;border-bottom:3px solid #d7e7f2}
body.ebr-portal-mode .brand:after{content:"PORTAL";display:inline-block;font-size:9px;font-weight:850;letter-spacing:.12em;color:#286950;background:#e9f6f1;border-radius:100px;padding:6px 8px;margin-left:9px}
body.ebr-portal-mode .nav-links{display:none}
.ebr-lesson-current{border-radius:10px;border:1px solid #dbeaf1;background:#f4f9fc;padding:10px 13px;font-size:12px;color:#35647d;margin-bottom:13px}
.ebr-staff-lessons-title{font-size:16px!important;color:#224c72;margin:27px 0 12px}
#staff-lessons{display:grid;gap:9px;max-height:360px;overflow-y:auto;padding:5px}
#staff-lessons>button{border:1px solid #d9e6ee;border-radius:12px;background:#fff;padding:14px 16px;color:#234e70;text-align:left;cursor:pointer}
#staff-lessons>button:hover{background:#eff7fa;border-color:#a8ccdd}
#staff-lessons>button strong,#staff-lessons>button small{display:block}#staff-lessons>button small{font-size:12px;color:#728394;margin-top:3px}
#school-subjects-list .school-record-actions .btn-navy{padding:9px 12px;font-size:12px}
@media(max-width:960px){.ebr-store-hero-grid{gap:26px}.ebr-store-products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.ebr-store-hero-grid{grid-template-columns:1fr;min-height:auto;padding-block:54px}.ebr-store-feature{min-height:260px}.ebr-store-benefits-grid,.ebr-store-steps{grid-template-columns:1fr}.ebr-store-catalog-head{flex-direction:column;align-items:stretch}.ebr-store-search{max-width:none}.ebr-store-products{grid-template-columns:1fr}.ebr-store-bottom-cta{flex-direction:column;align-items:flex-start}.ebr-shopfront h1{font-size:clamp(36px,8vw,52px)}.ebr-store-feature h2{font-size:28px}}
@media(max-width:440px){.ebr-store-buttons{flex-direction:column}.ebr-store-buttons .btn{width:100%}.ebr-product-actions{flex-direction:column}.ebr-product-actions .btn{width:100%}.ebr-store-benefits,.ebr-store-how{padding-block:52px}.ebr-store-catalog{padding-block:54px}.ebr-store-feature{padding:28px}.ebr-store-bottom-cta{padding:22px}}
@media(max-width:430px){
  .topbar .nav{flex-wrap:wrap;gap:7px 9px;padding-block:9px}
  .topbar .brand{flex:1 1 auto;min-width:0}
  .topbar .brand-symbol{width:39px;height:39px}
  .topbar .brand-copy strong{font-size:11px;max-width:none}
  .topbar .nav-actions{width:100%;display:flex;gap:9px;justify-content:flex-end}
  .topbar .nav-actions .btn{font-size:11px;padding:8px 12px}
  body.ebr-portal-mode .brand:after{font-size:8px;margin-left:2px}
}

/* V0.7.2 - acervo da escola modelo; visual discreto do painel pedagogico */
.ebr-model-import{grid-column:1/-1;display:grid;gap:17px;padding:24px 26px;margin-top:4px;border:1px solid #dae8ec;background:linear-gradient(125deg,#f7fbfd 0%,#f3f9f7 100%);border-radius:18px;box-shadow:0 6px 22px rgba(30,72,106,.045)}
.ebr-model-import.hidden{display:none!important}
.ebr-model-import .ebr-model-intro h3{font-size:21px!important;margin:5px 0 8px;color:#224c72}
.ebr-model-intro p{color:#586c7d;line-height:1.65;max-width:880px;margin:0}
.ebr-model-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.ebr-model-publish{display:inline-flex;align-items:center;gap:9px;font-size:14px;color:#284e67;padding:9px 12px;background:white;border:1px solid #dce7ee;border-radius:12px}
.ebr-model-publish input{width:17px;height:17px;accent-color:#237d6e}
.ebr-model-items{display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:11px;margin-top:12px}
.ebr-model-item{display:grid;grid-template-columns:1fr auto;gap:7px 9px;align-items:start;padding:14px;background:#fff;border:1px solid #e3edf1;border-radius:13px}
.ebr-model-item strong{font-size:13px;line-height:1.45;color:#234b67}
.ebr-model-item small{grid-column:1/-1;font-size:12px;color:#637684}
.ebr-model-status{padding:4px 8px;border-radius:20px;background:#f5efe2;color:#7d5d1f;font-size:10px;font-weight:750;white-space:nowrap}
.ebr-model-status-ready{background:#e5f4ec;color:#26734b}.ebr-model-status-existing{background:#eaf2fb;color:#315d88}
.ebr-model-status-missing,.ebr-model-status-ambiguous,.ebr-model-status-conflict{background:#ffedf0;color:#a63b49}
.ebr-model-summary{margin:0;color:#244964;font-size:13px;font-weight:650}
.ebr-model-warning{font-size:13px;color:#9b5233;margin:13px 0 0}
.ebr-model-message{min-height:20px;font-size:13px;color:#356a6a;margin:0}
@media(max-width:700px){.ebr-model-import{padding:16px}.ebr-model-items{grid-template-columns:1fr}.ebr-model-toolbar>.btn{width:100%}}

/* V0.7.3 · Prévia pedagógica segura e sem matrícula */
.ebr-preview-banner{display:flex;align-items:center;gap:14px;background:#eaf5f6;border:1px solid #a9d9d8;color:#1d4f58;padding:17px 20px;border-radius:16px;margin:24px 0 8px}
.ebr-preview-banner.hidden{display:none}
.ebr-preview-banner strong{display:block;font-size:16px;color:#164e61}
.ebr-preview-banner p{margin:5px 0 0;font-size:13px;line-height:1.55}
.ebr-preview-symbol{font-size:25px;color:#258c81}
.ebr-preview-tag{margin-left:auto;white-space:nowrap;border-radius:999px;background:#fff;border:1px solid #b9d9db;font-size:11px;letter-spacing:.05em;font-weight:800;padding:6px 9px}
.ebr-preview-all{margin:10px 0 2px!important}
.ebr-preview-help{display:block;color:#648095;font-size:12px;line-height:1.6;margin:7px 0 16px}
.ebr-lesson-review-row{display:flex;align-items:center;gap:8px;margin:10px 0;padding:8px;border:1px solid #e2e9ed;border-radius:12px;background:#f8fbfc}
.ebr-lesson-review-row .ebr-lesson-edit{flex:1;min-width:0;background:transparent;border:0;padding:4px 7px;margin:0;text-align:left}
.ebr-lesson-review-row .ebr-lesson-try{width:auto;flex-shrink:0;font-size:12px;white-space:nowrap;padding:9px 12px}
.ebr-editor-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ebr-editor-actions .btn{margin:0}
@media(max-width:700px){.ebr-preview-banner{flex-wrap:wrap;padding:16px}.ebr-preview-tag{margin-left:0}.ebr-lesson-review-row{flex-wrap:wrap}.ebr-lesson-review-row .ebr-lesson-try{width:100%}}
