/* Identidade visual exclusiva do ambiente Professor. */
body[data-access-role="teacher"]{
 --teacher-purple:#5637e9;
 --teacher-ink:#111747;
 --teacher-muted:#697196;
 --teacher-line:#e4e4ef;
 --teacher-shadow:0 12px 30px rgba(48,40,100,.065);
}

body[data-access-role="teacher"] .sidebar{background:#fff}
body[data-access-role="teacher"] .sidebar nav a.active{background:linear-gradient(90deg,#eeeaff,#f7f5ff);color:#4d31df;border-radius:10px;font-weight:800}
body[data-access-role="teacher"] .sidebar nav a.active::before{background:#5d3ee8}

/* Cabeçalhos ilustrados das áreas do professor. */
body[data-access-role="teacher"] :is(#avaliacoes-professor,#mensagens-escola,#calendario-escola,#mural-escola,#comunicados-escola,#documentos-escola)>.page-heading{
 display:grid!important;
 grid-template-columns:minmax(430px,1.35fr) minmax(210px,.62fr) auto;
 align-items:center;
 column-gap:24px;
 min-height:180px;
 padding:28px 30px!important;
 overflow:hidden;
 border:1px solid rgba(229,226,249,.75);
 border-radius:0 0 20px 20px!important;
 background:
  radial-gradient(circle at 73% 40%,rgba(111,77,238,.13),transparent 23%),
  linear-gradient(120deg,#fbfbff 0%,#f3f0ff 58%,#eeeaff 100%)!important;
 box-shadow:none!important;
}
body[data-access-role="teacher"] :is(#avaliacoes-professor,#mensagens-escola,#calendario-escola,#mural-escola,#comunicados-escola,#documentos-escola)>.page-heading::after{
 content:'';position:absolute;right:-65px;top:-95px;width:330px;height:255px;border-radius:50%;
 border:34px solid rgba(113,78,235,.065);transform:rotate(-22deg);pointer-events:none;
}
body[data-access-role="teacher"] :is(#avaliacoes-professor,#mensagens-escola,#calendario-escola,#mural-escola,#comunicados-escola,#documentos-escola)>.page-heading>div:first-child{position:relative;z-index:1;min-width:0}
body[data-access-role="teacher"] :is(#avaliacoes-professor,#mensagens-escola,#calendario-escola,#mural-escola,#comunicados-escola,#documentos-escola)>.page-heading h1{
 font-size:36px!important;line-height:1.08;letter-spacing:-.038em;color:var(--teacher-ink)!important;margin:8px 0 7px;
}
body[data-access-role="teacher"] :is(#avaliacoes-professor,#mensagens-escola,#calendario-escola,#mural-escola,#comunicados-escola,#documentos-escola)>.page-heading h1 span{color:#5f3de7!important}
body[data-access-role="teacher"] :is(#avaliacoes-professor,#mensagens-escola,#calendario-escola,#mural-escola,#comunicados-escola,#documentos-escola)>.page-heading .eyebrow{font-size:11px!important;color:#593ae4!important;letter-spacing:.15em}
body[data-access-role="teacher"] :is(#avaliacoes-professor,#mensagens-escola,#calendario-escola,#mural-escola,#comunicados-escola,#documentos-escola)>.page-heading>div:first-child>p:last-child{font-size:14px!important;color:#646c92}
body[data-access-role="teacher"] .teacher-hero-note{position:relative;z-index:1;display:flex;align-items:center;gap:15px;min-width:0;color:#363d72}
body[data-access-role="teacher"] .teacher-hero-note>i{flex:0 0 78px;width:78px;height:78px;border-radius:24px;display:grid;place-items:center;background:rgba(255,255,255,.62);border:1px solid rgba(255,255,255,.78);box-shadow:0 16px 30px rgba(88,56,205,.12);color:#6545e8;font-style:normal;font-size:34px;font-weight:900;transform:rotate(-5deg)}
body[data-access-role="teacher"] .teacher-hero-note p{margin:0;font-size:13px!important;line-height:1.42;color:#3e477c;max-width:190px}
body[data-access-role="teacher"] .teacher-hero-note p strong{display:block;color:#2f376b;font-size:14px}
body[data-access-role="teacher"] :is(#avaliacoes-professor,#mensagens-escola,#calendario-escola,#mural-escola,#comunicados-escola,#documentos-escola)>.page-heading .heading-actions{position:relative;z-index:1;align-self:end;justify-self:end;display:flex;align-items:center;justify-content:flex-end;gap:10px;min-width:max-content}
body[data-access-role="teacher"] :is(#avaliacoes-professor,#mensagens-escola,#calendario-escola,#mural-escola,#comunicados-escola,#documentos-escola)>.page-heading .button{min-height:45px;border-radius:10px;padding:0 17px;font-size:12px!important}
body[data-access-role="teacher"] :is(#avaliacoes-professor,#mensagens-escola,#calendario-escola,#mural-escola,#comunicados-escola,#documentos-escola)>.page-heading .button.primary{background:linear-gradient(135deg,#6847ed,#522fdc);box-shadow:0 9px 18px rgba(83,48,220,.22)}

/* Cartões de indicadores. */
body[data-access-role="teacher"] :is(.gradebook-summary,.school-message-metrics,.school-calendar-summary,.mural-admin-summary,.communication-admin-summary,.document-admin-summary){gap:13px;margin:14px 0 16px}
body[data-access-role="teacher"] :is(.gradebook-summary,.school-message-metrics,.school-calendar-summary,.mural-admin-summary,.communication-admin-summary,.document-admin-summary)>article{min-height:114px;padding:18px 20px;border:1px solid var(--teacher-line);border-radius:15px;background:#fff;box-shadow:var(--teacher-shadow)}
body[data-access-role="teacher"] :is(.gradebook-summary,.school-message-metrics,.school-calendar-summary,.mural-admin-summary,.communication-admin-summary,.document-admin-summary)>article>i{width:58px;height:58px;flex:0 0 58px;border-radius:14px;font-size:18px!important}
body[data-access-role="teacher"] :is(.gradebook-summary,.school-message-metrics,.school-calendar-summary,.mural-admin-summary,.communication-admin-summary,.document-admin-summary) article span{font-size:10px!important;letter-spacing:.06em;color:#687093}
body[data-access-role="teacher"] :is(.gradebook-summary,.school-message-metrics,.school-calendar-summary,.mural-admin-summary,.communication-admin-summary,.document-admin-summary) article strong{font-size:18px!important;line-height:1.2;color:var(--teacher-ink)}
body[data-access-role="teacher"] :is(.gradebook-summary,.school-message-metrics,.school-calendar-summary,.mural-admin-summary,.communication-admin-summary,.document-admin-summary) article small{font-size:11px!important;color:#7b82a2}

/* Avaliações. */
body[data-access-role="teacher"] #avaliacoes-professor .assessment-config{min-height:112px;padding:18px 20px;grid-template-columns:minmax(240px,.85fr) minmax(220px,1fr) 82px minmax(220px,1fr) 82px auto;border-radius:16px!important}
body[data-access-role="teacher"] #avaliacoes-professor .assessment-config>div:first-child{position:relative;padding-left:65px}
body[data-access-role="teacher"] #avaliacoes-professor .assessment-config>div:first-child::before{content:'◕';position:absolute;left:0;top:0;width:48px;height:48px;border-radius:12px;display:grid;place-items:center;background:#f0ecff;color:#5c3deb;font-size:22px}
body[data-access-role="teacher"] #avaliacoes-professor .assessment-config input{min-height:44px;border-radius:9px;font-size:12px!important}
body[data-access-role="teacher"] #avaliacoes-professor .gradebook-panel{padding:20px;border-radius:16px!important}
body[data-access-role="teacher"] #avaliacoes-professor .gradebook-toolbar{padding:0 0 16px;min-height:82px}
body[data-access-role="teacher"] #avaliacoes-professor .gradebook-row{min-height:67px}
body[data-access-role="teacher"] #avaliacoes-professor .gradebook-head{min-height:55px;background:#f7f6ff}

/* Mensagens. */
body[data-access-role="teacher"] #mensagens-escola .school-message-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
body[data-access-role="teacher"] #mensagens-escola .school-inbox{min-height:590px;border-radius:16px!important;box-shadow:var(--teacher-shadow)!important}
body[data-access-role="teacher"] #mensagens-escola #schoolConversationList>button{min-height:80px}
body[data-access-role="teacher"] #mensagens-escola .school-chat-body{background:linear-gradient(180deg,#fbfbff,#fff)}
body[data-access-role="teacher"] #mensagens-escola .school-chat-body p{font-size:12px!important}
body[data-access-role="teacher"] #mensagens-escola .school-reply textarea{font-size:12px!important}

/* Calendário: quadro, editor e agenda lado a lado em telas largas. */
body[data-access-role="teacher"] #calendario-escola .school-calendar-panel{border-radius:16px!important}
body[data-access-role="teacher"] #calendario-escola .school-calendar-grid{min-height:515px}
body[data-access-role="teacher"] #calendario-escola .school-calendar-grid>button{min-height:78px}
body[data-access-role="teacher"] #calendario-escola .school-event-form,body[data-access-role="teacher"] #calendario-escola .upcoming-school-events{border-radius:16px!important}

/* Mural, comunicados e documentos. */
body[data-access-role="teacher"] #mural-escola .image-permission-alert{min-height:61px}
body[data-access-role="teacher"] #mural-escola .mural-admin-layout{grid-template-columns:minmax(0,1.65fr) minmax(330px,.72fr)}
body[data-access-role="teacher"] #mural-escola .album-management,body[data-access-role="teacher"] #mural-escola .album-composer{border-radius:16px!important}
body[data-access-role="teacher"] #mural-escola .admin-album-cover{min-height:112px}
body[data-access-role="teacher"] #comunicados-escola .communication-admin-layout,body[data-access-role="teacher"] #documentos-escola .document-admin-layout{grid-template-columns:minmax(0,1.55fr) minmax(350px,.78fr)}
body[data-access-role="teacher"] #comunicados-escola .communication-admin-list,body[data-access-role="teacher"] #comunicados-escola .communication-admin-detail,body[data-access-role="teacher"] #documentos-escola .document-list-panel,body[data-access-role="teacher"] #documentos-escola .document-detail{border-radius:16px!important}
body[data-access-role="teacher"] #comunicados-escola #adminCommunicationList>button,body[data-access-role="teacher"] #documentos-escola #documentList>button{min-height:82px}

/* Diário: versão específica da referência do professor. */
body[data-access-role="teacher"] #diario-professor .teacher-journal-head{display:grid;grid-template-columns:minmax(420px,1.25fr) minmax(250px,.7fr) 190px;gap:26px;min-height:192px;margin:-18px -18px 0;padding:35px 32px 28px;background:radial-gradient(circle at 68% 40%,rgba(112,75,234,.14),transparent 25%),linear-gradient(120deg,#fbfbff,#f1eeff);overflow:hidden}
body[data-access-role="teacher"] #diario-professor>.back-link{position:relative;z-index:2;margin:0 0 -20px 14px;transform:translateY(13px)}
body[data-access-role="teacher"] #diario-professor .teacher-journal-head h1{font-size:40px!important}
body[data-access-role="teacher"] #diario-professor .teacher-diary-note{display:flex;align-items:center;gap:17px;color:#374075}
body[data-access-role="teacher"] #diario-professor .teacher-diary-note>i{width:88px;height:88px;border-radius:26px;display:grid;place-items:center;background:rgba(255,255,255,.62);box-shadow:0 14px 28px rgba(83,53,192,.11);font-style:normal;font-size:40px;color:#6344e7;transform:rotate(-6deg)}
body[data-access-role="teacher"] #diario-professor .teacher-diary-note p{max-width:175px;margin:0;font-size:13px!important;line-height:1.45;color:#3d4678}
body[data-access-role="teacher"] #diario-professor .journal-status{align-self:center;min-width:184px}
body[data-access-role="teacher"] #diario-professor .journal-steps{margin-top:0;min-height:88px}
body[data-access-role="teacher"] #diario-professor .journal-steps button{min-width:0;flex:1}
body[data-access-role="teacher"] #diario-professor .teacher-step-icon{width:38px!important;height:38px!important;border:0!important;border-radius:50%!important;background:#f0edff!important;color:#5838e7!important;box-shadow:none!important;font-size:17px!important}
body[data-access-role="teacher"] #diario-professor .journal-steps button.active .teacher-step-icon{background:#f0edff!important;color:#5838e7!important}
body[data-access-role="teacher"] #diario-professor .journal-heading-icon{display:none}
body[data-access-role="teacher"] #diario-professor .journal-heading-main{display:block}
body[data-access-role="teacher"] #diario-professor .journal-panel-heading{min-height:123px;padding:22px 28px}
body[data-access-role="teacher"] #diario-professor .roster-head,body[data-access-role="teacher"] #diario-professor .journal-roster article{grid-template-columns:minmax(280px,1.25fr) minmax(310px,1fr) minmax(280px,1.05fr);gap:18px}
body[data-access-role="teacher"] #diario-professor .roster-head::before,body[data-access-role="teacher"] #diario-professor .roster-head::after,body[data-access-role="teacher"] #diario-professor .journal-roster article::before,body[data-access-role="teacher"] #diario-professor .journal-roster article::after{display:none}
body[data-access-role="teacher"] #diario-professor .journal-pagination,body[data-access-role="teacher"] #diario-professor .journal-draft-button{display:none}
body[data-access-role="teacher"] #diario-professor .journal-footer-actions{width:auto;margin-left:auto}
body[data-access-role="teacher"] #diario-professor .attendance-choice button[data-status="present"]::before{content:'♙  '}
body[data-access-role="teacher"] #diario-professor .attendance-choice button[data-status="absent"]::before{content:'♙  '}
body[data-access-role="teacher"] #diario-professor .attendance-choice button[data-status="late"]::before{content:'◷  '}

@media(min-width:1400px){
 body[data-access-role="teacher"] #calendario-escola .school-calendar-layout{grid-template-columns:minmax(0,1.5fr) minmax(300px,.66fr) minmax(245px,.53fr)}
 body[data-access-role="teacher"] #calendario-escola .school-calendar-side{display:contents}
 body[data-access-role="teacher"] #calendario-escola .school-event-form{grid-column:2}
 body[data-access-role="teacher"] #calendario-escola .upcoming-school-events{grid-column:3}
}

@media(max-width:1180px){
 body[data-access-role="teacher"] :is(#avaliacoes-professor,#mensagens-escola,#calendario-escola,#mural-escola,#comunicados-escola,#documentos-escola)>.page-heading{grid-template-columns:minmax(420px,1fr) auto;min-height:165px}
 body[data-access-role="teacher"] .teacher-hero-note{display:none}
 body[data-access-role="teacher"] #avaliacoes-professor .assessment-config{grid-template-columns:1fr 1fr 80px}
 body[data-access-role="teacher"] #diario-professor .teacher-journal-head{grid-template-columns:1fr 185px}
 body[data-access-role="teacher"] #diario-professor .teacher-diary-note{display:none}
}

@media(max-width:760px){
 body[data-access-role="teacher"] :is(#avaliacoes-professor,#mensagens-escola,#calendario-escola,#mural-escola,#comunicados-escola,#documentos-escola)>.page-heading{display:flex!important;min-height:unset;padding:22px 17px!important}
 body[data-access-role="teacher"] :is(#avaliacoes-professor,#mensagens-escola,#calendario-escola,#mural-escola,#comunicados-escola,#documentos-escola)>.page-heading h1{font-size:29px!important}
 body[data-access-role="teacher"] :is(.gradebook-summary,.school-message-metrics,.school-calendar-summary,.mural-admin-summary,.communication-admin-summary,.document-admin-summary){grid-template-columns:1fr!important}
 body[data-access-role="teacher"] #diario-professor .teacher-journal-head{display:flex;min-height:unset;margin:-12px -12px 0;padding:30px 18px 20px}
 body[data-access-role="teacher"] #diario-professor .roster-head,body[data-access-role="teacher"] #diario-professor .journal-roster article{min-width:880px}
}
