/* Central Professor Jonathas · v5.0.5
   Camada final de padronização visual e responsiva. */

:root{
  --pjs-navy-950:#040d18;
  --pjs-navy-900:#061426;
  --pjs-navy-850:#081a2e;
  --pjs-navy-800:#0a2139;
  --pjs-blue-600:#176fe3;
  --pjs-blue-500:#2588f2;
  --pjs-blue-300:#79baff;
  --pjs-gold-500:#e6b84d;
  --pjs-gold-300:#f4d47e;
  --pjs-ink:#10243a;
  --pjs-muted:#7893aa;
  --pjs-line-dark:rgba(106,166,222,.18);
  --pjs-line-light:#dbe7f2;
  --pjs-radius-sm:12px;
  --pjs-radius:18px;
  --pjs-radius-lg:26px;
  --pjs-shadow:0 22px 62px rgba(0,0,0,.22);
}

html{scroll-behavior:smooth}
body{min-width:320px}
button,input,select,textarea{font:inherit}
a,button{transition:color .16s,border-color .16s,background .16s,transform .16s,box-shadow .16s}
:where(a,button,input,select,textarea):focus-visible{outline:3px solid rgba(67,157,255,.44);outline-offset:2px}
.btn{border-radius:12px;font-weight:800;letter-spacing:.005em}
.btn.primary{background:linear-gradient(135deg,var(--pjs-blue-500),#0d58c6);border-color:#2e8ff2;box-shadow:0 9px 22px rgba(18,105,215,.24)}
.btn.gold{background:linear-gradient(135deg,#f0c85e,#c79427);border-color:#efc967;color:#14243a;box-shadow:0 9px 22px rgba(211,164,49,.17)}
.btn.glass{background:rgba(255,255,255,.055);border-color:rgba(126,184,237,.24);color:#e7f4ff}
.btn:not(:disabled):hover{transform:translateY(-1px)}

/* Superfícies públicas: uma única navegação e proporção. */
.public-professional{background:var(--pjs-navy-900);color:#e9f4ff}
.public-professional .public-nav,.public-schedule-page .public-nav{
  position:sticky;top:0;z-index:60;min-height:72px;height:auto;
  background:rgba(5,17,31,.94);border-bottom:1px solid rgba(89,153,214,.17);
  backdrop-filter:blur(18px);box-shadow:0 10px 34px rgba(0,0,0,.14)
}
.public-professional .public-nav .logo,.public-schedule-page .public-nav .logo{color:#f1f7fd}
.public-professional .public-links a,.public-schedule-page .public-links a{color:#9fb7cc}
.public-professional .public-links a:hover,.public-schedule-page .public-links a:hover{color:#fff}
.public-professional .public-menu-btn,.public-schedule-page .public-menu-btn{color:#dcecff;border-color:rgba(105,169,226,.22);background:#0a2139}
.public-professional .public-mobile-menu,.public-schedule-page .public-mobile-menu{
  position:fixed;left:12px;right:12px;top:72px;z-index:70;padding:12px;
  border:1px solid rgba(98,163,223,.21);border-radius:18px;background:rgba(5,18,33,.98);
  box-shadow:0 22px 60px rgba(0,0,0,.4);backdrop-filter:blur(18px)
}
.public-professional .public-mobile-menu a,.public-schedule-page .public-mobile-menu a{color:#d7e8f6;border-color:rgba(89,148,201,.13)}
.public-professional .public-main{width:min(100%,1440px)}

/* Agendamento v5: nativo, sem depender de texto dentro de uma arte. */
.public-schedule-page{background:
  radial-gradient(circle at 85% 8%,rgba(28,113,218,.16),transparent 28%),
  linear-gradient(180deg,#05111f,#061426 48%,#07182a);color:#eaf4fd}
.schedule-public-main{width:min(100%,1440px);max-width:none;padding:28px clamp(16px,3.5vw,52px) 72px}
.schedule-native-hero{isolation:isolate;grid-template-columns:minmax(0,1.08fr) minmax(330px,.62fr);min-height:540px;border-radius:32px;border-color:rgba(81,151,219,.23);background:
  radial-gradient(circle at 82% 16%,rgba(31,132,245,.32),transparent 31%),
  radial-gradient(circle at 13% 88%,rgba(230,184,77,.08),transparent 30%),
  linear-gradient(130deg,#07192c 0%,#0a2949 56%,#061527 100%)}
.schedule-native-hero:after{content:"";position:absolute;z-index:-1;inset:auto -9% -47% 33%;height:480px;border-radius:50%;background:rgba(20,103,204,.1);filter:blur(60px)}
.schedule-hero-copy{padding:clamp(34px,5vw,76px)}
.schedule-eyebrow{display:inline-flex;align-items:center;gap:9px;padding:8px 11px;border:1px solid rgba(93,165,230,.24);border-radius:999px;background:rgba(8,39,70,.65);color:#c7ddf0;font-size:.72rem;font-weight:850;letter-spacing:.065em;text-transform:uppercase}
.schedule-live-dot{width:8px;height:8px;border-radius:50%;background:#39d897;box-shadow:0 0 0 5px rgba(57,216,151,.11)}
.schedule-hero-copy h1{max-width:810px;font-size:clamp(3rem,5.5vw,5.35rem);line-height:.96;letter-spacing:-.052em}
.schedule-hero-copy>p{max-width:710px;font-size:1.08rem;color:#afc7dc}
.schedule-hero-pills span{border-color:rgba(101,171,234,.21);background:rgba(5,30,53,.72)}
.schedule-hero-pills span:before{content:"✓";margin-right:6px;color:#5fdba5}
.schedule-hero-primary{min-width:215px;justify-content:center}
.schedule-hero-visual{min-height:520px;overflow:hidden}
.schedule-hero-visual:before{content:"";position:absolute;inset:12% 7% 0;border:1px solid rgba(110,178,238,.13);border-radius:220px 220px 30px 30px;background:linear-gradient(180deg,rgba(16,77,133,.36),rgba(7,27,47,.1))}
.schedule-hero-visual img{max-height:520px;width:min(108%,540px);border-radius:26px 26px 0 0;box-shadow:0 24px 56px rgba(0,0,0,.22)}
.schedule-visual-badge{position:absolute;z-index:4;right:22px;top:31px;display:grid;gap:2px;padding:11px 13px;border:1px solid rgba(101,176,238,.22);border-radius:14px;background:rgba(5,26,47,.86);box-shadow:0 15px 34px rgba(0,0,0,.22);backdrop-filter:blur(10px)}
.schedule-visual-badge strong{font-size:.76rem;color:#f2f8fd}.schedule-visual-badge span{font-size:.66rem;color:#7fa6c6}
.schedule-formula{position:absolute;z-index:3;right:30px;bottom:25px;color:rgba(180,218,250,.2);font-size:1.3rem;font-weight:900;letter-spacing:.15em}
.schedule-how{margin:14px 0 46px}.schedule-how article{min-height:72px;border-color:rgba(81,144,204,.17);background:rgba(7,29,50,.84)}
.schedule-how article>span{background:linear-gradient(135deg,#2588f2,#0c55bd);box-shadow:0 8px 20px rgba(13,93,199,.24)}
.schedule-anchor{padding:2px 0}.schedule-section-heading{margin-bottom:20px}.schedule-section-heading h2{color:#f4f9fd;letter-spacing:-.025em}.schedule-section-heading p{color:#8ea9c1}
.schedule-secure-note{gap:9px;min-width:245px}.schedule-secure-note>img{width:46px;height:46px;object-fit:contain;border-radius:12px;background:#0c2c4c}.schedule-secure-note>span{display:grid}.schedule-secure-note>span strong{display:block;width:auto;height:auto;background:none;color:#eef7ff}.schedule-secure-note small{color:#7897b2;font-size:.65rem}
.schedule-booking-grid{gap:20px}.schedule-picker-card,.schedule-form-card{border-color:rgba(88,151,209,.2);background:linear-gradient(145deg,rgba(8,31,53,.985),rgba(5,20,36,.985));box-shadow:0 22px 62px rgba(0,0,0,.18)}
.schedule-picker-card,.schedule-form-card{padding:26px}.schedule-form-card{top:90px}
.schedule-mode-card{min-height:92px}.schedule-mode-card.active{border-color:#3998f2;box-shadow:0 0 0 3px rgba(42,143,237,.09),0 14px 28px rgba(0,0,0,.12)}
.schedule-day{border-color:rgba(84,148,207,.18)}.schedule-day>header{background:#0a2743}.schedule-slot{min-height:91px}.schedule-slot.selected{border-color:var(--pjs-gold-500);box-shadow:inset 0 0 0 1px rgba(230,184,77,.3),0 8px 21px rgba(0,0,0,.12)}
.schedule-request-form input,.schedule-request-form select,.schedule-request-form textarea{min-height:46px;border-radius:11px}.schedule-request-form textarea{min-height:108px}
.schedule-help{border-color:rgba(87,150,209,.18);background:linear-gradient(120deg,#081e35,#0b2d4e)}
.schedule-footer{margin-top:22px;padding-inline:4px}.schedule-footer .pjs-footer-links{justify-content:flex-end}

/* Central: corrige componentes claros perdidos dentro da interface escura. */
body:not(.public){background:radial-gradient(circle at 76% -8%,rgba(24,118,229,.13),transparent 30%),linear-gradient(180deg,#061426,#061222 58%,#050f1c);color:#e8f3fc}
body:not(.public) .shell{grid-template-columns:280px minmax(0,1fr);transition:grid-template-columns .18s}
body:not(.public) .sidebar{background:linear-gradient(180deg,#06172a,#071d33 55%,#061426);border-right:1px solid rgba(92,153,210,.14);box-shadow:18px 0 55px rgba(0,0,0,.12)}
body:not(.public) .nav-btn{min-height:43px;border:1px solid transparent;border-radius:12px}
body:not(.public) .nav-btn:hover{border-color:rgba(94,157,215,.14);background:#0a2a48}
body:not(.public) .nav-btn.active{border-color:rgba(49,143,231,.2);background:linear-gradient(90deg,#0d3a65,#0a2947);box-shadow:inset 3px 0 var(--pjs-gold-500)}
body:not(.public) .topbar{height:72px;background:rgba(5,18,33,.88);border-color:rgba(91,151,207,.15);backdrop-filter:blur(18px);box-shadow:0 8px 28px rgba(0,0,0,.11)}
body:not(.public) .content{width:100%;max-width:1540px;padding:25px 28px 64px}
body:not(.public) .hero{border:1px solid rgba(92,155,213,.18);box-shadow:0 20px 52px rgba(0,0,0,.18)}
body:not(.public) .card,body:not(.public) .feature{background:linear-gradient(145deg,#081d32,#071728);box-shadow:0 10px 29px rgba(0,0,0,.1)}
body:not(.public) .list-row{border-color:rgba(91,151,207,.13)}
body:not(.public) .field input,body:not(.public) .field select,body:not(.public) .field textarea{min-height:43px;border-color:rgba(93,155,211,.24);background:#06182a;color:#edf6fd}
body:not(.public) .field textarea{min-height:94px}
body:not(.public) .field input::placeholder,body:not(.public) .field textarea::placeholder{color:#597792}
body:not(.public) .field input:focus,body:not(.public) .field select:focus,body:not(.public) .field textarea:focus{border-color:#3b98ed;box-shadow:0 0 0 3px rgba(47,143,232,.12)}
body:not(.public) .modal{border:1px solid rgba(91,151,207,.2);background:#071a2e;color:#e8f3fc;box-shadow:0 30px 90px rgba(0,0,0,.48)}
body:not(.public) .modal-head,body:not(.public) .modal-foot{background:#081d32;border-color:rgba(91,151,207,.16)}
body:not(.public) .modal-body{background:linear-gradient(180deg,#071a2e,#061525)}
body:not(.public) .responsive-table-wrap tr{background:#081d32;border-color:rgba(91,151,207,.17);box-shadow:none}
body:not(.public) .responsive-table-wrap td+td{border-color:rgba(91,151,207,.12)}
body:not(.public) .responsive-table-wrap td:before{color:#7898b3}
body:not(.public) .card,body:not(.public) .feature{border-color:rgba(88,148,204,.16)}
body:not(.public) .empty{color:#7897b1}
body:not(.public) .table-wrap{border-radius:16px}
body:not(.public) table th{white-space:nowrap}
body:not(.public) .agenda-control-strip article,body:not(.public) .agenda-reservation-row{border-color:rgba(89,151,209,.18);background:linear-gradient(145deg,#081d32,#07182a)}
body:not(.public) .agenda-interactive .day{border-color:rgba(89,151,209,.18);background:#07182a}
body:not(.public) .agenda-interactive .day-head{border-color:rgba(89,151,209,.14);color:#dcecff}
body:not(.public) .agenda-interactive .event{border-radius:9px;background:#0a2743}

@media(min-width:1051px){body:not(.public).sidebar-collapsed .shell{grid-template-columns:84px minmax(0,1fr)}}

/* Gabaritos e correção v5. */
.omr-dashboard{display:grid;grid-template-columns:1.1fr .9fr;gap:16px}
.omr-hero{position:relative;overflow:hidden;border:1px solid rgba(91,158,219,.18);border-radius:23px;padding:25px;background:radial-gradient(circle at 94% 0,rgba(39,139,236,.19),transparent 36%),linear-gradient(145deg,#082440,#06182b)}
.omr-hero h3{font-size:1.65rem;margin:7px 0 9px}.omr-hero p{max-width:620px;color:#86a4bd;line-height:1.55}.omr-hero .actions{margin-top:17px}
.omr-kpis{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.omr-kpi{display:grid;align-content:center;min-height:105px;padding:16px;border:1px solid rgba(90,151,207,.16);border-radius:17px;background:#081d33}.omr-kpi strong{font-size:1.7rem;color:#f1f8fd}.omr-kpi span{font-size:.72rem;color:#7594ae;margin-top:4px}
.omr-assessment-list{display:grid;gap:10px}.omr-assessment-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:16px;border:1px solid rgba(93,154,210,.16);border-radius:17px;background:#081d32}.omr-assessment-card h4{margin:0 0 5px}.omr-assessment-card p{margin:0;color:#7695af;font-size:.76rem}.omr-assessment-card .actions{justify-content:flex-end}
.question-editor-grid{display:grid;gap:9px}.question-editor-row{display:grid;grid-template-columns:52px minmax(180px,1fr) 106px 92px 128px auto;gap:8px;align-items:end;padding:10px;border:1px solid rgba(91,151,207,.15);border-radius:14px;background:#081d32}.question-editor-row .field label{font-size:.62rem}.question-number{display:grid;place-items:center;height:43px;border-radius:11px;background:#0d5fc8;color:#fff;font-weight:900}.question-total{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 15px;border:1px solid rgba(91,151,207,.17);border-radius:14px;background:#081d32}.question-total strong{color:#f2c75b}.question-total.is-invalid{border-color:rgba(242,101,101,.42)}
.omr-workspace{display:grid;grid-template-columns:minmax(260px,.58fr) minmax(0,1.42fr);gap:14px}.omr-source-panel,.omr-review-panel{border:1px solid rgba(91,151,207,.16);border-radius:18px;padding:16px;background:#071a2d}.omr-dropzone{display:grid;place-items:center;min-height:190px;padding:19px;text-align:center;border:1px dashed rgba(91,164,227,.36);border-radius:15px;background:#08213a;cursor:pointer}.omr-dropzone:hover{border-color:#3e9df2}.omr-dropzone input{display:none}.omr-dropzone strong,.omr-dropzone span{display:block}.omr-dropzone strong{color:#edf7ff}.omr-dropzone span{margin-top:5px;color:#7899b5;font-size:.72rem}.omr-preview{width:100%;max-height:480px;object-fit:contain;border-radius:13px;border:1px solid rgba(91,151,207,.18);background:#03101d}.omr-confidence{display:flex;align-items:center;gap:8px;margin-top:10px;font-size:.72rem;color:#84a1ba}.omr-confidence-meter{flex:1;height:7px;overflow:hidden;border-radius:999px;background:#112f4d}.omr-confidence-meter i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#e6b84d,#34d491)}
.omr-review-table .omr-ambiguous{background:rgba(208,145,35,.11)}.omr-review-table .omr-correct{color:#4cdf9b}.omr-review-table .omr-wrong{color:#ff8e8e}.omr-review-table input,.omr-review-table select{min-width:74px}.omr-review-summary{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;align-items:center;margin-top:12px;padding:13px;border:1px solid rgba(91,151,207,.16);border-radius:14px;background:#081e34}.omr-review-summary strong{font-size:1.18rem;color:#f1c75e}

/* Portal mantém leitura clara, mas com os mesmos raios e espaçamentos. */
.public-portal{background:#f3f7fb}.public-portal .public-main{width:min(100%,1320px)}
.public-portal .card,.public-portal .feature{border-color:var(--pjs-line-light);border-radius:18px;box-shadow:0 8px 28px rgba(35,71,105,.055)}
.public-portal .portal-app-nav{border-radius:18px}

@media(max-width:1100px){
  body:not(.public) .shell{grid-template-columns:1fr}
  .schedule-native-hero{grid-template-columns:minmax(0,1fr) minmax(280px,.48fr)}
  .schedule-hero-copy h1{font-size:clamp(2.8rem,6vw,4.4rem)}
  .omr-dashboard{grid-template-columns:1fr}.omr-workspace{grid-template-columns:1fr}
  .question-editor-row{grid-template-columns:48px minmax(160px,1fr) 92px 82px}.question-editor-row .question-calc,.question-editor-row .question-remove{grid-column:auto}
}

@media(max-width:900px){
  .schedule-public-main{padding:14px 12px 48px}
  .schedule-native-hero{display:grid!important;grid-template-columns:1fr!important;padding:0!important;border:1px solid rgba(86,151,213,.2)!important;border-radius:24px!important;background:radial-gradient(circle at 80% 8%,rgba(28,126,232,.22),transparent 28%),linear-gradient(150deg,#071b30,#082846)!important;box-shadow:var(--pjs-shadow)!important;overflow:hidden!important}
  .schedule-native-hero:before{display:block!important}
  .schedule-hero-copy{display:block!important;padding:31px 22px 18px!important}
  .schedule-hero-copy h1{font-size:clamp(2.35rem,10vw,3.5rem);margin-top:15px}
  .schedule-hero-copy>p{font-size:.94rem;line-height:1.58}
  .schedule-hero-copy .actions{display:grid;grid-template-columns:1fr;margin-top:18px}.schedule-hero-copy .actions>*{width:100%;justify-content:center}
  .schedule-hero-pills{display:grid;grid-template-columns:1fr 1fr}.schedule-hero-pills span:last-child{grid-column:1/-1}
  .schedule-hero-visual{display:flex!important;min-height:310px;padding:0 10px}.schedule-hero-visual:before{inset:5% 10% 0}.schedule-hero-visual img{max-height:330px;width:min(92%,390px)}
  .schedule-visual-badge{top:8px;right:12px}.schedule-formula{bottom:15px;right:15px;font-size:1rem}
  .schedule-how{display:grid!important;grid-template-columns:1fr!important;margin:12px 0 30px!important}
  .schedule-section-heading{margin-top:0}.schedule-picker-card,.schedule-form-card{padding:17px}.schedule-form-card{position:static}
  .schedule-mobile-art{display:none!important}
  .omr-assessment-card{grid-template-columns:1fr}.omr-assessment-card .actions{justify-content:flex-start}
}

@media(max-width:760px){
  body:not(.public) .topbar{min-height:64px;height:auto;padding:9px 11px}
  body:not(.public) .content{padding:13px 10px calc(86px + env(safe-area-inset-bottom))}
  body:not(.public) .hero{border-radius:20px}
  body:not(.public) .card,body:not(.public) .feature{border-radius:16px;padding:14px}
  .public-professional .public-nav,.public-schedule-page .public-nav{min-height:64px;padding:9px 12px;flex-wrap:nowrap}
  .public-professional .public-nav .logo,.public-schedule-page .public-nav .logo{flex:1 1 auto;min-width:0}.public-professional .public-nav .logo span,.public-schedule-page .public-nav .logo span{white-space:nowrap}
  .public-professional .public-nav>.actions,.public-schedule-page .public-nav>.actions{display:flex;width:auto;overflow:visible}.public-professional .public-nav>.actions .btn:first-child,.public-schedule-page .public-nav>.actions .btn:first-child{display:none}
  .public-professional .public-nav>.actions .btn,.public-schedule-page .public-nav>.actions .btn{min-height:40px;padding:8px 11px;font-size:.7rem}
  .public-professional .public-mobile-menu,.public-schedule-page .public-mobile-menu{top:66px}
  .schedule-native-hero{border-radius:21px!important}.schedule-hero-copy{padding:26px 17px 14px!important}.schedule-eyebrow{font-size:.61rem;line-height:1.25}
  .schedule-hero-copy h1{font-size:clamp(2.05rem,10.8vw,2.8rem);line-height:1}.schedule-hero-pills{grid-template-columns:1fr}.schedule-hero-pills span:last-child{grid-column:auto}
  .schedule-hero-visual{min-height:270px}.schedule-hero-visual img{max-height:285px}
  .schedule-how article{min-height:0}.schedule-section-heading h2{font-size:1.72rem}.schedule-section-heading p{font-size:.84rem}.schedule-secure-note{display:none}
  .schedule-mode-grid{grid-template-columns:1fr}.schedule-day-slots{grid-template-columns:1fr 1fr!important}.schedule-slot{min-height:84px}
  .schedule-help{margin:25px 0;padding:19px;border-radius:18px}
  .omr-kpis{grid-template-columns:1fr 1fr}.omr-hero{padding:19px}.omr-hero h3{font-size:1.35rem}
  .question-editor-row{grid-template-columns:42px minmax(0,1fr) 82px}.question-editor-row .question-answer{grid-column:2}.question-editor-row .question-value{grid-column:3}.question-editor-row .question-calc{grid-column:2/4}.question-editor-row .question-remove{grid-column:1/-1}.question-editor-row .question-remove .btn{width:100%}
  .omr-source-panel,.omr-review-panel{padding:12px}.omr-review-table{min-width:720px}
}

@media(max-width:480px){
  .public-professional .public-nav .logo span,.public-schedule-page .public-nav .logo span{font-size:.75rem}.public-professional .public-nav>.actions .btn,.public-schedule-page .public-nav>.actions .btn{padding-inline:9px}
  .schedule-public-main{padding-inline:8px}.schedule-hero-copy h1{font-size:clamp(1.92rem,10.6vw,2.45rem)}.schedule-hero-visual{min-height:240px}.schedule-hero-visual img{max-height:255px}
  .schedule-visual-badge{display:none}.schedule-formula{font-size:.82rem}.schedule-day-slots{gap:6px!important}.schedule-slot{padding:10px}.schedule-slot i{font-size:.57rem}
  .omr-kpis{grid-template-columns:1fr}.question-editor-row{grid-template-columns:38px minmax(0,1fr)}.question-editor-row .question-value{grid-column:2}.question-editor-row .question-calc{grid-column:1/-1}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* =========================================================
   v5.0.3 · CENTRAL MOBILE NATIVA PJS
   O celular deixa de exibir posters como interface principal.
   ========================================================= */
@media(max-width:900px){
  body:not(.public){
    background:
      radial-gradient(circle at 86% -8%,rgba(37,136,242,.18),transparent 27%),
      radial-gradient(circle at 8% 15%,rgba(230,184,77,.055),transparent 23%),
      linear-gradient(180deg,#04101d 0%,#061426 42%,#050f1c 100%);
  }

  /* As páginas principais passam a usar o hero nativo do sistema no mobile. */
  body:not(.public) .central-home-clickart,
  body:not(.public) .central-professional-clickart,
  body:not(.public) .central-academic-clickart,
  body:not(.public) .central-personal-clickart,
  body:not(.public) .central-finance-clickart{display:none!important}

  body:not(.public) .hero-home.pjs-art-mobile-fallback,
  body:not(.public) .hero-professional.pjs-art-mobile-fallback,
  body:not(.public) .hero-academic-overview.pjs-art-mobile-fallback,
  body:not(.public) .hero-personal.pjs-art-mobile-fallback,
  body:not(.public) .hero-finance.pjs-art-mobile-fallback{display:grid!important}

  body:not(.public) .hero-home.pjs-art-mobile-fallback,
  body:not(.public) .hero-professional.pjs-art-mobile-fallback,
  body:not(.public) .hero-academic-overview.pjs-art-mobile-fallback,
  body:not(.public) .hero-personal.pjs-art-mobile-fallback,
  body:not(.public) .hero-finance.pjs-art-mobile-fallback{
    position:relative;
    overflow:hidden;
    grid-template-columns:minmax(0,1.18fr) minmax(112px,.58fr)!important;
    gap:12px!important;
    min-height:245px!important;
    padding:20px!important;
    border:1px solid rgba(79,154,225,.25)!important;
    border-radius:25px!important;
    color:#eef7ff!important;
    background:
      radial-gradient(circle at 87% 9%,rgba(43,145,245,.29),transparent 31%),
      radial-gradient(circle at 8% 100%,rgba(230,184,77,.09),transparent 29%),
      linear-gradient(145deg,#06182b 0%,#092847 58%,#061425 100%)!important;
    box-shadow:0 19px 48px rgba(0,0,0,.24)!important;
  }
  body:not(.public) .hero-home.pjs-art-mobile-fallback:before,
  body:not(.public) .hero-professional.pjs-art-mobile-fallback:before,
  body:not(.public) .hero-academic-overview.pjs-art-mobile-fallback:before,
  body:not(.public) .hero-personal.pjs-art-mobile-fallback:before,
  body:not(.public) .hero-finance.pjs-art-mobile-fallback:before{
    content:"π   ∑   √x";
    position:absolute;right:15px;top:11px;
    font-size:.68rem;font-weight:900;letter-spacing:.14em;
    color:rgba(244,212,126,.23);pointer-events:none;
  }
  body:not(.public) .hero-home.pjs-art-mobile-fallback:after,
  body:not(.public) .hero-professional.pjs-art-mobile-fallback:after,
  body:not(.public) .hero-academic-overview.pjs-art-mobile-fallback:after,
  body:not(.public) .hero-personal.pjs-art-mobile-fallback:after,
  body:not(.public) .hero-finance.pjs-art-mobile-fallback:after{display:none!important}

  body:not(.public) .pjs-art-mobile-fallback .visual-hero-copy{align-self:center;min-width:0}
  body:not(.public) .pjs-art-mobile-fallback .visual-hero-copy .kicker{
    display:inline-flex!important;align-items:center;min-height:25px;
    padding:5px 8px;border-radius:999px;
    border:1px solid rgba(230,184,77,.22);
    background:rgba(4,19,34,.48);
    color:#f2ca66!important;font-size:.58rem!important;letter-spacing:.08em!important;
  }
  body:not(.public) .pjs-art-mobile-fallback .visual-hero-copy h2{
    margin:10px 0 8px!important;font-size:clamp(1.52rem,6.8vw,2rem)!important;
    line-height:1.03!important;letter-spacing:-.035em;color:#f4f9fd!important;
  }
  body:not(.public) .pjs-art-mobile-fallback .visual-hero-copy p{
    margin:0!important;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;
    overflow:hidden;color:#a9c1d6!important;font-size:.76rem!important;line-height:1.5!important;
  }
  body:not(.public) .pjs-art-mobile-fallback .visual-hero-side{
    position:relative;display:flex!important;align-self:stretch;align-items:flex-end;justify-content:center;min-width:0;
  }
  body:not(.public) .pjs-art-mobile-fallback .visual-hero-art{
    width:100%!important;height:100%!important;min-height:190px!important;max-height:220px!important;
    margin:0!important;border:1px solid rgba(100,169,232,.17)!important;border-radius:19px!important;
    background:#061629!important;box-shadow:none!important;overflow:hidden!important;
  }
  body:not(.public) .pjs-art-mobile-fallback .visual-hero-art img{
    width:100%!important;height:100%!important;min-height:190px!important;object-fit:cover!important;
    object-position:center 24%!important;filter:saturate(.96) contrast(1.03);
  }
  body:not(.public) .hero-home.pjs-art-mobile-fallback .visual-hero-art img{object-position:64% 22%!important}
  body:not(.public) .hero-finance.pjs-art-mobile-fallback .visual-hero-art img,
  body:not(.public) .hero-personal.pjs-art-mobile-fallback .visual-hero-art img{object-position:center 28%!important}
  body:not(.public) .pjs-art-mobile-fallback .visual-hero-meta{
    position:absolute;right:8px;bottom:8px;z-index:3;min-width:0;width:auto!important;
    padding:7px 9px!important;border-radius:11px!important;
    border:1px solid rgba(106,172,231,.22)!important;background:rgba(3,17,31,.84)!important;
    box-shadow:0 9px 24px rgba(0,0,0,.22);backdrop-filter:blur(10px);
  }
  body:not(.public) .pjs-art-mobile-fallback .visual-clock{text-align:right!important;margin:0!important}
  body:not(.public) .pjs-art-mobile-fallback .visual-clock strong{font-size:.92rem!important;color:#fff}
  body:not(.public) .pjs-art-mobile-fallback .visual-clock span{font-size:.52rem!important;color:#86a6c2!important}
  body:not(.public) .pjs-art-mobile-fallback .hero-actions{
    display:flex!important;flex-wrap:wrap!important;width:auto!important;gap:6px!important;margin-top:12px!important;
  }
  body:not(.public) .pjs-art-mobile-fallback .hero-actions .btn{
    flex:0 1 auto!important;width:auto!important;min-height:36px!important;padding:8px 10px!important;
    border-radius:10px!important;font-size:.66rem!important;
  }

  /* Home: comandos viram uma faixa de atalhos, não uma grade pesada. */
  body:not(.public) .pjs-command-dock{
    display:flex!important;gap:8px!important;overflow-x:auto!important;scroll-snap-type:x proximity;
    margin-top:12px!important;padding:8px!important;border-radius:18px!important;
    scrollbar-width:none;background:rgba(7,25,44,.84)!important;
  }
  body:not(.public) .pjs-command-dock::-webkit-scrollbar{display:none}
  body:not(.public) .pjs-command-dock button{
    flex:0 0 132px!important;min-height:64px!important;scroll-snap-align:start;
    padding:9px 10px!important;border:1px solid rgba(92,151,207,.12)!important;
    background:linear-gradient(145deg,rgba(10,37,64,.82),rgba(6,24,42,.84))!important;
    border-radius:13px!important;
  }
  body:not(.public) .pjs-command-dock button>span{width:31px!important;height:31px!important;border-radius:10px!important}
  body:not(.public) .pjs-command-dock strong{font-size:.7rem!important}
  body:not(.public) .pjs-command-dock small{font-size:.55rem!important;color:#7898b4!important}

  /* Áreas principais em carrossel horizontal: reduz a altura da home. */
  body:not(.public) .pjs-area-section{margin-top:20px!important}
  body:not(.public) .pjs-area-section .section-heading{margin-bottom:10px!important}
  body:not(.public) .pjs-area-showcase{
    display:flex!important;gap:10px!important;overflow-x:auto!important;scroll-snap-type:x mandatory;
    padding:1px 4px 9px 1px!important;margin-right:-10px;scrollbar-width:none;
  }
  body:not(.public) .pjs-area-showcase::-webkit-scrollbar{display:none}
  body:not(.public) .pjs-area-tile{
    flex:0 0 min(78vw,310px)!important;min-height:205px!important;height:205px!important;
    scroll-snap-align:start;border-radius:19px!important;
  }
  body:not(.public) .pjs-area-tile img{left:0!important;right:0!important;width:100%!important;height:100%!important;object-position:64% 20%!important}
  body:not(.public) .pjs-area-tile:before{background:linear-gradient(180deg,rgba(4,15,28,.03) 9%,rgba(4,15,28,.2) 40%,rgba(4,15,28,.96) 78%)!important}
  body:not(.public) .pjs-area-copy{
    position:absolute!important;left:0!important;right:0!important;bottom:0!important;width:auto!important;min-height:0!important;
    padding:62px 14px 13px!important;background:none!important;display:block!important;
  }
  body:not(.public) .pjs-area-copy .kicker{font-size:.55rem!important}
  body:not(.public) .pjs-area-copy h3{font-size:1rem!important;margin:3px 0!important}
  body:not(.public) .pjs-area-copy p{display:none!important}
  body:not(.public) .pjs-area-link{font-size:.62rem!important}

  body:not(.public) .pjs-pulse-grid{gap:8px!important}
  body:not(.public) .pjs-pulse{min-height:82px!important;border-radius:15px!important;padding:10px!important;gap:8px!important}
  body:not(.public) .pjs-pulse>span{width:34px!important;height:34px!important;border-radius:11px!important}
  body:not(.public) .pjs-pulse strong{font-size:1.1rem!important}
  body:not(.public) .pjs-pulse p{font-size:.59rem!important}

  /* Títulos e cartões recebem ritmo de aplicativo. */
  body:not(.public) .section{margin-top:17px}
  body:not(.public) .section-head{gap:7px}
  body:not(.public) .section-head h3{font-size:.96rem;color:#edf6fd}
  body:not(.public) .card,body:not(.public) .feature{border-color:rgba(91,151,207,.14);background:linear-gradient(145deg,#081d32,#061625)}
  body:not(.public) .empty{padding:20px 12px}
}

@media(max-width:760px){
  body:not(.public){padding-bottom:calc(82px + env(safe-area-inset-bottom))!important}
  body:not(.public) .content{
    width:100%!important;max-width:none!important;
    padding:11px 10px calc(24px + env(safe-area-inset-bottom))!important;
  }

  /* Topbar mais limpo e com a logo oficial, enquanto o personagem fica no conteúdo. */
  body:not(.public) .pjs-app-topbar{
    min-height:60px!important;padding:max(7px,env(safe-area-inset-top)) 10px 7px!important;
    background:linear-gradient(180deg,rgba(4,16,30,.985),rgba(5,20,36,.965))!important;
    border-bottom:1px solid rgba(230,184,77,.13)!important;
    box-shadow:0 9px 28px rgba(0,0,0,.18)!important;
  }
  body:not(.public) .topbar-route{gap:7px!important}
  body:not(.public) .topbar-pjs-logo{
    width:38px!important;height:38px!important;object-fit:contain!important;border-radius:10px!important;
    padding:2px;background:#061321!important;border:1px solid rgba(230,184,77,.31)!important;
  }
  body:not(.public) .mobile-menu,body:not(.public) .mobile-back:not(.hidden){
    width:38px!important;height:38px!important;flex-basis:38px!important;
    border:1px solid rgba(98,157,212,.18)!important;background:#08213a!important;color:#d7e9f8!important;
  }
  body:not(.public) .topbar-route-copy .kicker{font-size:.49rem!important;color:#6caee8!important;letter-spacing:.08em!important}
  body:not(.public) #pageTitle{font-size:.84rem!important;color:#f1f7fc!important}

  /* Bottom navigation é a navegação principal do app no celular. */
  body:not(.public) .app-bottom-nav{
    left:8px!important;right:8px!important;bottom:max(7px,env(safe-area-inset-bottom))!important;
    height:66px!important;padding:5px!important;border-radius:19px!important;
    border:1px solid rgba(88,157,219,.25)!important;
    background:linear-gradient(180deg,rgba(6,25,44,.975),rgba(4,17,31,.985))!important;
    box-shadow:0 17px 44px rgba(0,0,0,.43),inset 0 1px rgba(255,255,255,.025)!important;
  }
  body:not(.public) .app-bottom-item{border-radius:13px!important;color:#6f91ad!important}
  body:not(.public) .app-bottom-item.active{
    color:#f3cb68!important;background:linear-gradient(180deg,rgba(29,119,222,.25),rgba(12,62,111,.18))!important;
    box-shadow:inset 0 0 0 1px rgba(78,157,228,.18)!important;
  }
  body:not(.public) .app-bottom-item.active>span:last-child{color:#eaf4fd!important}
  body:not(.public) .app-nav-icon{width:20px!important;height:20px!important}
  body:not(.public) .app-bottom-item>span:last-child{font-size:.53rem!important}

  body:not(.public) .hero-home.pjs-art-mobile-fallback,
  body:not(.public) .hero-professional.pjs-art-mobile-fallback,
  body:not(.public) .hero-academic-overview.pjs-art-mobile-fallback,
  body:not(.public) .hero-personal.pjs-art-mobile-fallback,
  body:not(.public) .hero-finance.pjs-art-mobile-fallback{
    grid-template-columns:minmax(0,1fr) 116px!important;
    min-height:225px!important;padding:17px!important;border-radius:22px!important;
  }
  body:not(.public) .pjs-art-mobile-fallback .visual-hero-art{min-height:176px!important;max-height:196px!important;border-radius:16px!important}
  body:not(.public) .pjs-art-mobile-fallback .visual-hero-art img{min-height:176px!important}
  body:not(.public) .pjs-art-mobile-fallback .visual-hero-copy h2{font-size:clamp(1.38rem,6.5vw,1.75rem)!important}
  body:not(.public) .pjs-art-mobile-fallback .visual-hero-copy p{-webkit-line-clamp:3;font-size:.7rem!important}

  body:not(.public) .pjs-support-card{grid-template-columns:38px 1fr 14px!important;padding:11px 12px!important;border-radius:15px!important}
  body:not(.public) .pjs-support-card>span{width:36px!important;height:36px!important;border-radius:11px!important}
  body:not(.public) .pjs-support-card h3{font-size:.79rem!important}
  body:not(.public) .pjs-support-card p{font-size:.62rem!important}

  /* Cards de áreas secundárias também deixam de parecer desktop espremido. */
  body:not(.public) .professional-split-grid,
  body:not(.public) .school-hub-grid{grid-template-columns:1fr!important;gap:9px!important}
  body:not(.public) .professional-split-card,
  body:not(.public) .hub-action-card{border-radius:17px!important}

  body:not(.public) .grid.grid-4{gap:8px!important}
  body:not(.public) .grid.grid-4 .stat{min-height:88px!important;padding:11px!important}
  body:not(.public) .grid.grid-4 .stat .value{font-size:1.24rem!important}
  body:not(.public) .grid.grid-4 .stat .label{font-size:.64rem!important}
}

@media(max-width:520px){
  body:not(.public) .hero-home.pjs-art-mobile-fallback,
  body:not(.public) .hero-professional.pjs-art-mobile-fallback,
  body:not(.public) .hero-academic-overview.pjs-art-mobile-fallback,
  body:not(.public) .hero-personal.pjs-art-mobile-fallback,
  body:not(.public) .hero-finance.pjs-art-mobile-fallback{
    grid-template-columns:minmax(0,1fr) 104px!important;gap:9px!important;padding:15px!important;min-height:214px!important;
  }
  body:not(.public) .pjs-art-mobile-fallback .visual-hero-copy h2{font-size:1.32rem!important}
  body:not(.public) .pjs-art-mobile-fallback .visual-hero-copy p{font-size:.66rem!important;line-height:1.42!important}
  body:not(.public) .pjs-art-mobile-fallback .visual-hero-art{min-height:164px!important;max-height:180px!important}
  body:not(.public) .pjs-art-mobile-fallback .visual-hero-art img{min-height:164px!important}
  body:not(.public) .pjs-art-mobile-fallback .hero-actions{display:grid!important;grid-template-columns:1fr!important}
  body:not(.public) .pjs-art-mobile-fallback .hero-actions .btn{width:100%!important;justify-content:center!important}
  body:not(.public) .pjs-command-dock button{flex-basis:122px!important}
  body:not(.public) .pjs-area-tile{flex-basis:76vw!important;height:194px!important;min-height:194px!important}
  body:not(.public) .pjs-pulse small{font-size:.54rem!important}
}

/* v5.0.3 · login e detalhes finais do mobile interno */
@media(max-width:900px){
  body:not(.public) .pjs-login-mobile-art{display:none!important}
  body:not(.public) .login-form-wrap{
    position:relative;isolation:isolate;overflow:hidden;
    min-height:100dvh!important;
    padding:clamp(86px,18vh,150px) 16px 28px!important;
    background:
      radial-gradient(circle at 88% 8%,rgba(37,136,242,.22),transparent 25%),
      radial-gradient(circle at 7% 92%,rgba(230,184,77,.07),transparent 25%),
      linear-gradient(180deg,#04101d,#061426 58%,#050f1c)!important;
  }
  body:not(.public) .login-form-wrap:before{
    content:"";position:absolute;z-index:-1;right:18px;top:22px;width:112px;height:112px;
    border-radius:28px;border:1px solid rgba(230,184,77,.22);
    background:url('/assets/brand/pjs-avatar-hero.webp') 69% 23%/185% auto no-repeat,#07192c;
    box-shadow:0 18px 40px rgba(0,0,0,.25);opacity:.9;
  }
  body:not(.public) .login-form-wrap:after{
    content:"π   √x   ∑";position:absolute;left:18px;top:43px;z-index:-1;
    color:rgba(112,181,244,.24);font-size:.78rem;font-weight:900;letter-spacing:.17em;
  }
  body:not(.public) .login-card{
    width:min(430px,100%);padding:23px 19px!important;border-radius:23px!important;
    border:1px solid rgba(91,157,218,.22)!important;
    background:linear-gradient(150deg,rgba(9,31,53,.98),rgba(6,22,39,.99))!important;
    box-shadow:0 24px 58px rgba(0,0,0,.31)!important;
  }
  body:not(.public) .login-card .brand-logo{
    width:62px;height:62px;object-fit:contain;background:#061321!important;padding:3px;
    border:1px solid rgba(230,184,77,.31);border-radius:16px!important;
  }
  body:not(.public) .login-card h2{font-size:1.55rem;color:#f3f8fd}
  body:not(.public) .login-card .field input{min-height:48px;border-radius:12px}
  body:not(.public) .login-card>.btn{min-height:48px;border-radius:12px}
  body:not(.public) .hero-finance.pjs-art-mobile-fallback .visual-hero-meta{display:none!important}
  body:not(.public) .finance-art-toolbar{display:block!important;margin-top:9px}
  body:not(.public) .finance-art-toolbar .finance-month{width:100%;margin:0}
}

/* v5.0.5 · Portal do Aluno — acesso mobile em tela cheia */
.portal-mobile-access-card{display:contents}
@media(max-width:900px){
  body.public-portal.portal-login-active{
    min-height:100svh;
    background:#eaf3ff;
    overflow:hidden;
  }
  body.public-portal.portal-login-active .portal-nav{display:none!important}
  body.public-portal.portal-login-active .public-main{
    width:100%!important;
    max-width:none!important;
    min-height:100svh;
    margin:0!important;
    padding:0!important;
  }
  body.public-portal.portal-login-active .portal-login-art{
    position:relative!important;
    width:100%!important;
    height:100svh!important;
    min-height:100svh!important;
    margin:0!important;
    overflow:hidden!important;
    border:0!important;
    border-radius:0!important;
    background:#eaf3ff!important;
    box-shadow:none!important;
  }
  body.public-portal.portal-login-active .portal-login-art>img,
  body.public-portal.portal-login-active .portal-art-access{display:none!important}
  body.public-portal.portal-login-active .portal-art-login{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    max-width:none!important;
    height:100%!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    pointer-events:none!important;
  }
  body.public-portal.portal-login-active .portal-mobile-art{
    position:absolute!important;
    inset:0!important;
    z-index:0;
    display:block!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    border:0!important;
    border-radius:0!important;
    background:#eaf3ff!important;
    box-shadow:none!important;
  }
  body.public-portal.portal-login-active .portal-mobile-art:after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,transparent 52%,rgba(6,36,79,.05) 67%,rgba(5,26,55,.22) 100%);
    pointer-events:none;
  }
  body.public-portal.portal-login-active .portal-mobile-art>img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-height:100%!important;
    object-fit:cover!important;
    object-position:38% top!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
  body.public-portal.portal-login-active .portal-mobile-access-card{
    position:absolute;
    left:max(12px,env(safe-area-inset-left));
    right:max(12px,env(safe-area-inset-right));
    bottom:max(12px,env(safe-area-inset-bottom));
    z-index:5;
    display:block;
    padding:17px 16px 14px;
    border:1px solid rgba(185,211,239,.94);
    border-radius:24px;
    background:rgba(255,255,255,.965);
    box-shadow:0 20px 55px rgba(4,35,79,.24),inset 0 1px 0 rgba(255,255,255,.95);
    backdrop-filter:blur(18px) saturate(1.08);
    -webkit-backdrop-filter:blur(18px) saturate(1.08);
    pointer-events:auto;
  }
  body.public-portal.portal-login-active .portal-mobile-login-copy{display:block!important;margin:0 0 12px}
  body.public-portal.portal-login-active .portal-mobile-login-copy .kicker{
    margin:0 0 3px;
    color:#1166cc!important;
    font-size:.62rem;
    letter-spacing:.1em;
  }
  body.public-portal.portal-login-active .portal-mobile-login-copy h2{
    margin:0;
    color:#082857;
    font-size:1.35rem;
    line-height:1.08;
  }
  body.public-portal.portal-login-active .portal-mobile-login-copy p{
    margin:5px 0 0;
    color:#58718a;
    font-size:.76rem;
  }
  body.public-portal.portal-login-active .portal-art-login .field,
  body.public-portal.portal-login-active .portal-art-login .portal-art-submit,
  body.public-portal.portal-login-active .portal-art-login .portal-art-msg{
    position:static!important;
    width:auto!important;
    height:auto!important;
    margin:9px 0 0!important;
  }
  body.public-portal.portal-login-active .portal-art-login .field label{
    position:static!important;
    display:block!important;
    width:auto!important;
    height:auto!important;
    margin:0 0 5px!important;
    padding:0!important;
    overflow:visible!important;
    clip:auto!important;
    white-space:normal!important;
    color:#37556f;
    font-size:.67rem;
    font-weight:800;
  }
  body.public-portal.portal-login-active .portal-art-login .field input{
    width:100%!important;
    height:46px!important;
    min-height:46px!important;
    padding:0 13px!important;
    border:1px solid #c8d9e9!important;
    border-radius:13px!important;
    background:#f9fcff!important;
    color:#102c48!important;
    font-size:.95rem!important;
    box-shadow:inset 0 1px 1px rgba(16,50,84,.025)!important;
  }
  body.public-portal.portal-login-active .portal-art-login .field input:focus{
    border-color:#1f72de!important;
    box-shadow:0 0 0 3px rgba(31,114,222,.12)!important;
  }
  body.public-portal.portal-login-active .portal-art-login .portal-art-submit{
    width:100%!important;
    min-height:48px!important;
    margin-top:12px!important;
    border-radius:14px!important;
    background:linear-gradient(135deg,#1268e8,#0b56c9)!important;
    border-color:#1268e8!important;
    color:#fff!important;
    font-size:.83rem!important;
    font-weight:900!important;
    letter-spacing:.02em;
    text-transform:none!important;
    box-shadow:0 10px 24px rgba(18,104,232,.23)!important;
  }
  body.public-portal.portal-login-active .portal-art-login .portal-art-msg{
    min-height:0!important;
    justify-content:flex-start!important;
    text-align:left!important;
    color:#27577f!important;
    font-size:.72rem!important;
  }
  body.public-portal.portal-login-active .portal-art-login .portal-art-msg:empty{display:none!important}
  body.public-portal.portal-login-active .portal-mobile-first-access{
    display:block!important;
    margin-top:9px;
    border-top:1px solid #e2ebf3;
    padding-top:9px;
    color:#547087;
    font-size:.68rem;
  }
  body.public-portal.portal-login-active .portal-mobile-first-access summary{
    width:max-content;
    cursor:pointer;
    color:#1768bd;
    font-weight:850;
    list-style:none;
  }
  body.public-portal.portal-login-active .portal-mobile-first-access summary::-webkit-details-marker{display:none}
  body.public-portal.portal-login-active .portal-mobile-first-access p{margin:7px 0 0;line-height:1.45}
}
@media(max-width:430px){
  body.public-portal.portal-login-active .portal-mobile-access-card{
    left:max(9px,env(safe-area-inset-left));
    right:max(9px,env(safe-area-inset-right));
    bottom:max(9px,env(safe-area-inset-bottom));
    padding:14px 13px 12px;
    border-radius:21px;
  }
  body.public-portal.portal-login-active .portal-mobile-login-copy h2{font-size:1.2rem}
  body.public-portal.portal-login-active .portal-mobile-login-copy p{font-size:.71rem}
  body.public-portal.portal-login-active .portal-art-login .field input{height:43px!important;min-height:43px!important;font-size:.9rem!important}
  body.public-portal.portal-login-active .portal-art-login .portal-art-submit{min-height:45px!important}
}
@media(max-width:900px) and (max-height:700px){
  body.public-portal.portal-login-active{overflow:auto}
  body.public-portal.portal-login-active .portal-login-art{min-height:700px!important;height:700px!important}
  body.public-portal.portal-login-active .portal-mobile-access-card{padding-top:12px;padding-bottom:10px}
  body.public-portal.portal-login-active .portal-mobile-login-copy p{display:none}
  body.public-portal.portal-login-active .portal-mobile-first-access{display:none!important}
}


/* v5.0.6 · imagem em tela toda para Central e Divulgação */
body:not(.public) .pjs-login-screen-full{grid-template-columns:1fr!important;min-height:100svh;background:#061120}
body:not(.public) .pjs-fullscreen-login-art{position:relative;min-height:100svh;height:100svh;padding:0!important;overflow:hidden;background:#061120!important;display:block!important}
body:not(.public) .pjs-fullscreen-login-art>img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center center!important}
body:not(.public) .pjs-login-overlay-card{position:absolute;right:max(24px,env(safe-area-inset-right));top:50%;transform:translateY(-50%);z-index:5;display:flex;justify-content:flex-end;width:min(100%,520px);pointer-events:none}
body:not(.public) .pjs-overlay-login-card{width:min(430px,calc(100vw - 48px));margin:0;background:rgba(7,22,39,.9)!important;border:1px solid rgba(110,167,225,.26)!important;box-shadow:0 24px 72px rgba(0,0,0,.36)!important;backdrop-filter:blur(18px) saturate(1.08);-webkit-backdrop-filter:blur(18px) saturate(1.08);pointer-events:auto}
body:not(.public) .pjs-overlay-login-card .small.muted,body:not(.public) .pjs-overlay-login-card p{color:#bcd0e3!important}
body:not(.public) .pjs-overlay-login-card a{color:#ffd57a}
body:not(.public) .pjs-fullscreen-login-art .pjs-login-start{left:auto;right:max(26px,env(safe-area-inset-right));top:auto;bottom:max(26px,env(safe-area-inset-bottom));width:160px;height:52px;border-radius:14px}
@media(max-width:900px){
  body:not(.public) .pjs-fullscreen-login-art{height:100svh!important;min-height:100svh!important}
  body:not(.public) .pjs-fullscreen-login-art>img{display:none!important}
  body:not(.public) .pjs-fullscreen-login-art{background:#061120!important}
  body:not(.public) .pjs-fullscreen-login-art:before{content:"";position:absolute;inset:0;background:url('/assets/central/central-login-hero-mobile.webp') center center/cover no-repeat}
  body:not(.public) .pjs-fullscreen-login-art:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(5,25,53,.12) 68%,rgba(4,20,43,.34) 100%)}
  body:not(.public) .pjs-login-overlay-card{left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right));top:auto;bottom:max(12px,env(safe-area-inset-bottom));transform:none;width:auto}
  body:not(.public) .pjs-overlay-login-card{width:100%;padding:18px 16px 14px!important;border-radius:24px!important;background:rgba(255,255,255,.965)!important;border:1px solid rgba(185,211,239,.94)!important;box-shadow:0 20px 55px rgba(4,35,79,.24),inset 0 1px 0 rgba(255,255,255,.95)!important}
  body:not(.public) .pjs-overlay-login-card .kicker{color:#1166cc!important;font-size:.62rem;letter-spacing:.1em}
  body:not(.public) .pjs-overlay-login-card h2{color:#082857!important;font-size:1.35rem;line-height:1.08}
  body:not(.public) .pjs-overlay-login-card p,body:not(.public) .pjs-overlay-login-card .small.muted{color:#58718a!important}
  body:not(.public) .pjs-overlay-login-card .field label{color:#37556f!important;font-size:.67rem;font-weight:800}
  body:not(.public) .pjs-overlay-login-card .field input{height:43px!important;min-height:43px!important;font-size:.9rem!important;background:#fff!important;color:#17212b!important;border-color:#b9cee7!important}
  body:not(.public) .pjs-overlay-login-card .btn.primary{min-height:45px!important}
  body:not(.public) .pjs-fullscreen-login-art .pjs-login-start{right:max(14px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom));width:132px;height:46px}
}
.pjs-public-hero-fullscreen{display:block}
.pjs-campaign-hero-full{display:block!important;margin:0!important}
.pjs-campaign-hero-full .pjs-service-eyebrow{display:none}
.pjs-fullscreen-art-frame{position:relative!important;min-height:min(100svh,980px);height:min(100svh,980px);border-radius:0!important;border:0!important;overflow:hidden!important;box-shadow:none!important;background:#071426!important}
.pjs-fullscreen-art-frame picture,.pjs-fullscreen-art-frame img{display:block;width:100%;height:100%!important}
.pjs-fullscreen-art-frame img{object-fit:cover!important;object-position:center center!important;aspect-ratio:auto!important}
.pjs-fullscreen-art-actions{position:absolute;left:max(24px,env(safe-area-inset-left));right:max(24px,env(safe-area-inset-right));bottom:max(24px,env(safe-area-inset-bottom));z-index:6;display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}
.public-professional .public-main{padding-top:0!important}
.public-professional .section:first-of-type{margin-top:22px}
@media(max-width:900px){
  .pjs-campaign-hero-full{display:none!important}
  .pjs-mobile-hero-fullscreen{display:block!important;margin:0!important;padding:0!important;background:transparent!important;border:0!important}
  .pjs-mobile-hero-art-full{position:relative;display:block!important;margin:0!important;padding:0!important;height:100svh!important;min-height:100svh!important;border-radius:0!important;border:0!important;background:#071426!important;box-shadow:none!important;overflow:hidden!important}
  .pjs-mobile-hero-art-full>img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center center!important;border:0!important;border-radius:0!important;box-shadow:none!important}
  .pjs-mobile-hero-art-full:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 56%,rgba(5,26,55,.18) 72%,rgba(4,20,43,.44) 100%)}
  .pjs-mobile-fullscreen-actions{position:absolute;left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom));z-index:4;display:grid!important;grid-template-columns:1fr;gap:9px;padding:16px;border:1px solid rgba(185,211,239,.94);border-radius:24px;background:rgba(255,255,255,.965);box-shadow:0 20px 55px rgba(4,35,79,.24),inset 0 1px 0 rgba(255,255,255,.95);backdrop-filter:blur(18px) saturate(1.08);-webkit-backdrop-filter:blur(18px) saturate(1.08)}
  .pjs-mobile-fullscreen-actions .btn{width:100%;justify-content:center}
  .public-professional .public-main{width:100%!important;max-width:none!important;margin:0!important;padding:0 0 calc(30px + env(safe-area-inset-bottom))!important}
  .public-professional .section:first-of-type{margin-top:18px}
}


/* v5.0.7 · Divulgação mobile com apps/atalhos clicáveis */
.pjs-mobile-image-hotspots{display:none}
@media(max-width:900px){
  .pjs-mobile-hero-art-full{position:relative}
  .pjs-mobile-image-hotspots{display:block;position:absolute;inset:0;z-index:3;pointer-events:none}
  .pjs-mobile-hotspot{position:absolute;display:block;pointer-events:auto;border-radius:22px;background:transparent;outline:0;transition:background .16s ease, box-shadow .16s ease, transform .16s ease}
  .pjs-mobile-hotspot:hover,.pjs-mobile-hotspot:focus-visible{background:rgba(39,133,255,.10);box-shadow:inset 0 0 0 2px rgba(255,193,63,.9),0 0 18px rgba(29,115,255,.24);transform:translateY(-1px)}
  .pjs-mobile-hotspot.hm-aulas{left:3.5%;top:50.3%;width:33.4%;height:11.4%}
  .pjs-mobile-hotspot.hm-ensino-medio{left:40.1%;top:50.4%;width:31.8%;height:11.5%}
  .pjs-mobile-hotspot.hm-reforco{left:74.0%;top:50.3%;width:22.6%;height:11.3%}
  .pjs-mobile-hotspot.hm-materiais{left:11.2%;top:64.0%;width:38.4%;height:12.3%}
  .pjs-mobile-hotspot.hm-projetos{left:57.1%;top:64.0%;width:35.8%;height:12.3%}
  .pjs-mobile-hotspot.hm-agendar{left:4.4%;top:87.8%;width:44.2%;height:8.0%;border-radius:999px}
  .pjs-mobile-hotspot.hm-whatsapp{left:51.7%;top:87.8%;width:43.2%;height:8.0%;border-radius:999px}
  .pjs-mobile-fullscreen-actions{z-index:4}
}
@media(min-width:901px){
  .pjs-fullscreen-art-frame .pjs-art-hotspots{z-index:4}
  .pjs-fullscreen-art-actions{z-index:5}
}


/* v5.0.10 · imersão visual ampliada, principalmente divulgação e agendamento */
.public-professional .public-nav,.public-schedule-page .public-nav{background:rgba(3,14,26,.74)!important;border-bottom:1px solid rgba(112,160,204,.14)!important;backdrop-filter:blur(18px) saturate(1.08);-webkit-backdrop-filter:blur(18px) saturate(1.08);box-shadow:0 8px 30px rgba(0,0,0,.18)}
.public-professional .public-nav .actions .btn,.public-schedule-page .public-nav .actions .btn{box-shadow:0 10px 30px rgba(0,0,0,.16)}
.public-professional .public-main,.public-schedule-page .public-main{padding-top:10px!important}
.pjs-fullscreen-art-frame:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,12,24,.16),rgba(2,12,24,.1) 35%,rgba(2,12,24,.36) 100%);z-index:1;pointer-events:none}
.pjs-fullscreen-art-frame .pjs-art-hotspots,.pjs-fullscreen-art-actions{position:absolute}
.pjs-fullscreen-art-actions{left:max(18px,env(safe-area-inset-left));right:max(18px,env(safe-area-inset-right));justify-content:flex-end}

.schedule-immersive-hero{position:relative;margin:0 0 24px}
.schedule-immersive-shell{position:relative;display:grid;grid-template-columns:minmax(300px,.72fr) minmax(340px,.95fr);gap:24px;align-items:center;min-height:calc(100svh - 96px);padding:14px 0 4px}
.schedule-immersive-shell:before{content:"";position:absolute;inset:0;border-radius:34px;background:radial-gradient(circle at 14% 18%,rgba(41,134,247,.22),transparent 28%),radial-gradient(circle at 78% 16%,rgba(236,184,73,.12),transparent 22%),linear-gradient(145deg,#061426,#082242 58%,#07182c);box-shadow:0 28px 90px rgba(0,0,0,.22);z-index:0}
.schedule-immersive-shell:after{content:"";position:absolute;inset:1px;border-radius:33px;border:1px solid rgba(115,173,228,.16);pointer-events:none;z-index:0}
.schedule-immersive-copy,.schedule-immersive-stage{position:relative;z-index:1}
.schedule-immersive-copy{padding:clamp(26px,4vw,60px)}
.schedule-immersive-copy h1{font-size:clamp(3rem,5vw,5rem);line-height:.95;letter-spacing:-.055em;color:#f6fbff;max-width:660px;margin:14px 0 16px}
.schedule-immersive-copy p{max-width:620px;font-size:1.04rem;line-height:1.72;color:#bfd3e7}
.schedule-immersive-copy .actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.schedule-immersive-stage{display:grid;place-items:center;min-height:calc(100svh - 128px);padding:24px 22px 24px 0}
.schedule-immersive-stage:before{content:"";position:absolute;inset:4% 8% 4% 2%;background:url('/assets/divulgacao/agendar-aula-mobile.webp') center center/cover no-repeat;opacity:.20;filter:blur(28px) saturate(1.08);transform:scale(1.08);border-radius:34px}
.schedule-immersive-poster{position:relative;height:min(86svh,980px);aspect-ratio:9/16;border-radius:34px;overflow:hidden;background:#06182d;border:1px solid rgba(123,179,233,.24);box-shadow:0 30px 80px rgba(0,0,0,.34),0 0 0 10px rgba(255,255,255,.03)}
.schedule-immersive-poster img{width:100%;height:100%;display:block;object-fit:cover}
.schedule-image-hotspots{position:absolute;inset:0;z-index:3;pointer-events:none}
.schedule-image-hotspot{position:absolute;display:block;border-radius:24px;pointer-events:auto;background:transparent;transition:background .16s ease, box-shadow .16s ease, transform .16s ease;outline:0}
.schedule-image-hotspot:hover,.schedule-image-hotspot:focus-visible{background:rgba(39,133,255,.09);box-shadow:inset 0 0 0 2px rgba(255,198,74,.88),0 0 20px rgba(39,133,255,.25);transform:translateY(-1px)}
.schedule-image-hotspot.sh-how{left:3.5%;top:28.7%;width:93%;height:14%}
.schedule-image-hotspot.sh-modalidades{left:4.1%;top:43.7%;width:46.2%;height:21%}
.schedule-image-hotspot.sh-horarios{left:51.5%;top:43.7%;width:44.5%;height:21%}
.schedule-image-hotspot.sh-portal{left:4.1%;top:65.4%;width:46.2%;height:11.6%}
.schedule-image-hotspot.sh-ajuda{left:51.5%;top:65.4%;width:44.5%;height:11.6%}
.schedule-image-hotspot.sh-cta{left:8.5%;top:79.7%;width:82.7%;height:6.2%;border-radius:999px}
.schedule-immersive-dock{position:absolute;left:26px;right:26px;bottom:26px;z-index:4;display:none;gap:9px;padding:16px;border-radius:26px;border:1px solid rgba(185,211,239,.94);background:rgba(255,255,255,.965);box-shadow:0 20px 55px rgba(4,35,79,.24),inset 0 1px 0 rgba(255,255,255,.95);backdrop-filter:blur(18px) saturate(1.08);-webkit-backdrop-filter:blur(18px) saturate(1.08)}
.schedule-immersive-dock .btn{flex:1 1 0;justify-content:center}
.schedule-how{margin-top:16px}
@media(min-width:901px){
  .schedule-immersive-dock{display:flex}
  .schedule-public-main{max-width:1440px!important;padding-left:16px!important;padding-right:16px!important}
}
@media(max-width:900px){
  .public-professional .public-main,.public-schedule-page .public-main{padding-top:0!important}
  .schedule-public-main{padding:0 0 calc(34px + env(safe-area-inset-bottom))!important;max-width:none!important}
  .schedule-immersive-hero{margin:0 0 18px}
  .schedule-immersive-shell{display:block;min-height:100svh;padding:0;background:#061426;border-radius:0!important}
  .schedule-immersive-shell:before,.schedule-immersive-shell:after{border-radius:0;inset:0}
  .schedule-immersive-copy{display:none}
  .schedule-immersive-stage{min-height:100svh;padding:0}
  .schedule-immersive-stage:before{inset:0;opacity:.16;border-radius:0;filter:blur(22px) saturate(1.08)}
  .schedule-immersive-poster{height:100svh;width:100%;aspect-ratio:auto;border-radius:0;border:0;box-shadow:none}
  .schedule-immersive-poster img{object-fit:cover;object-position:center top}
  .schedule-immersive-dock{display:grid;grid-template-columns:1fr;left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom));padding:14px;border-radius:24px}
  .schedule-how{display:none!important}
  .schedule-anchor{padding:0 12px}
  .schedule-section-heading{padding-top:4px}
}
@media(max-width:520px){
  .pjs-fullscreen-art-actions{left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom));display:grid;grid-template-columns:1fr;gap:8px}
  .pjs-fullscreen-art-actions .btn{width:100%;justify-content:center}
  .schedule-immersive-dock{padding:12px}
  .schedule-anchor{padding-inline:9px}
}


/* v5.0.10 · restaura a divulgação desktop para o visual anterior (v5.0.7) */
@media(min-width:901px){
  body.public-professional:not(.public-schedule-page) .public-nav{
    background:rgba(4,15,28,.90)!important;
    border-bottom:1px solid rgba(112,160,204,.14)!important;
    backdrop-filter:blur(18px)!important;
    -webkit-backdrop-filter:blur(18px)!important;
    box-shadow:none!important;
  }
  body.public-professional:not(.public-schedule-page) .public-nav .actions .btn{box-shadow:none!important}
  body.public-professional:not(.public-schedule-page) .public-main{padding-top:0!important}
  body.public-professional:not(.public-schedule-page) .pjs-fullscreen-art-frame:before{display:none!important;content:none!important}
  body.public-professional:not(.public-schedule-page) .pjs-fullscreen-art-actions{
    left:max(24px,env(safe-area-inset-left))!important;
    right:max(24px,env(safe-area-inset-right))!important;
    bottom:max(24px,env(safe-area-inset-bottom))!important;
    justify-content:flex-end!important;
  }
}


/* v5.0.14 · 1ª unidade professor anterior */
.portal-u1-old-teacher{margin:8px 0 10px!important;font-size:.78rem;line-height:1.45}


/* v5.0.15 · divulgação desktop volta para a arte horizontal antiga e maior */
@media(min-width:901px){
  body.public-professional:not(.public-schedule-page) .public-main{max-width:1520px!important;padding-top:8px!important;padding-left:16px!important;padding-right:16px!important}
  body.public-professional:not(.public-schedule-page) .pjs-public-hero-fullscreen{display:block}
  body.public-professional:not(.public-schedule-page) .pjs-campaign-hero-full{display:block!important;margin:0!important}
  body.public-professional:not(.public-schedule-page) .pjs-fullscreen-art-frame{height:auto!important;min-height:0!important;aspect-ratio:auto!important;border-radius:30px!important;border:1px solid rgba(100,158,218,.16)!important;overflow:hidden!important;box-shadow:0 24px 68px rgba(0,0,0,.24)!important;background:#061426!important}
  body.public-professional:not(.public-schedule-page) .pjs-fullscreen-art-frame picture,body.public-professional:not(.public-schedule-page) .pjs-fullscreen-art-frame img{width:100%!important;height:auto!important;display:block!important;max-height:none!important;object-fit:contain!important;object-position:center top!important}
  body.public-professional:not(.public-schedule-page) .pjs-fullscreen-art-frame:before{display:none!important;content:none!important}
  body.public-professional:not(.public-schedule-page) .pjs-fullscreen-art-actions{display:none!important}
  body.public-professional:not(.public-schedule-page) .pjs-art-hotspots{z-index:5}
  body.public-professional:not(.public-schedule-page) .section:first-of-type{margin-top:14px!important}
}


/* v5.0.16 · divulgação mobile sem painel cobrindo a arte + avisos no topo */
@media(max-width:900px){
  body.public-professional:not(.public-schedule-page) .pjs-mobile-fullscreen-actions{display:none!important}
  body.public-professional:not(.public-schedule-page) .pjs-mobile-hero-art-full{height:auto!important;min-height:0!important;overflow:visible!important}
  body.public-professional:not(.public-schedule-page) .pjs-mobile-hero-art-full>img{display:block!important;width:100%!important;height:auto!important;min-height:0!important;object-fit:contain!important;object-position:center top!important}
  body.public-professional:not(.public-schedule-page) .pjs-mobile-hero-art-full:after{display:none!important;content:none!important}
  body.public-professional:not(.public-schedule-page) .pjs-mobile-image-hotspots{inset:0!important}
}
.portal-notices-top{margin-top:12px!important;margin-bottom:10px!important}
.portal-notices-top .notice{box-shadow:0 12px 28px rgba(15,62,110,.08)}
@media(max-width:760px){
  .portal-notices-top{margin-top:8px!important}
  .portal-notices-top .grid{grid-template-columns:1fr!important;gap:8px!important}
  .portal-notices-top .notice{padding:13px 14px!important;border-radius:15px!important}
}


/* v5.1.0 · hotspots calibrados pelas artes reais */
@media(max-width:900px){
  .pjs-mobile-hotspot.hm-aulas{left:3.7%!important;top:49.2%!important;width:29.6%!important;height:12.1%!important}
  .pjs-mobile-hotspot.hm-ensino-medio{left:34.4%!important;top:49.2%!important;width:29.6%!important;height:12.1%!important}
  .pjs-mobile-hotspot.hm-reforco{left:64.9%!important;top:49.2%!important;width:30.8%!important;height:12.1%!important}
  .pjs-mobile-hotspot.hm-materiais{left:14.3%!important;top:61.8%!important;width:33.2%!important;height:11.8%!important}
  .pjs-mobile-hotspot.hm-projetos{left:48.4%!important;top:61.8%!important;width:33.4%!important;height:11.8%!important}
  .pjs-mobile-hotspot.hm-agendar{left:7.4%!important;top:91.0%!important;width:40.6%!important;height:5.7%!important;border-radius:999px!important}
  .pjs-mobile-hotspot.hm-whatsapp{left:50.8%!important;top:91.0%!important;width:42.4%!important;height:5.7%!important;border-radius:999px!important}
}
.schedule-image-hotspot.sh-presencial{left:4.4%;top:56.0%;width:44.7%;height:8.1%}
.schedule-image-hotspot.sh-online{left:4.4%;top:64.0%;width:44.7%;height:9.5%}
.schedule-image-hotspot.sh-horarios{left:51.2%;top:50.4%;width:44.2%;height:23.0%}
.schedule-image-hotspot.sh-portal{left:4.4%;top:75.2%;width:44.7%;height:11.7%}
.schedule-image-hotspot.sh-ajuda{left:51.2%;top:75.2%;width:44.2%;height:11.7%}
.schedule-image-hotspot.sh-cta{left:15.0%;top:89.1%;width:70.0%;height:4.8%;border-radius:999px}

/* v5.1.0 · Comunicação & Analytics */
.comm-hero{position:relative;overflow:hidden;border:1px solid rgba(86,151,213,.22);border-radius:28px;min-height:250px;background:#061426;box-shadow:0 24px 68px rgba(0,0,0,.24)}
.comm-hero>img{display:block;width:100%;height:100%;min-height:250px;object-fit:cover;object-position:center}
.comm-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,18,34,.92),rgba(4,18,34,.45) 48%,rgba(4,18,34,.08))}
.comm-hero-overlay{position:absolute;z-index:2;left:clamp(22px,4vw,58px);top:50%;transform:translateY(-50%);max-width:520px}.comm-hero-overlay h2{font-size:clamp(2rem,4vw,3.6rem);margin:8px 0;color:#fff}.comm-hero-overlay p{color:#c1d6e9;line-height:1.6}
.comm-workspace{display:grid;grid-template-columns:minmax(250px,.34fr) minmax(0,1fr);gap:16px;min-height:650px}
.comm-chat-list,.comm-chat-panel{border:1px solid rgba(80,148,214,.2);border-radius:22px;background:linear-gradient(155deg,#071d33,#061426);box-shadow:0 20px 55px rgba(0,0,0,.18);overflow:hidden}
.comm-chat-list{padding:18px}.comm-search{width:100%;margin:10px 0 12px;min-height:42px;border-radius:12px;background:#0a2743!important;border-color:rgba(101,171,234,.2)!important;color:#eef7ff!important}
#commChatListItems{display:grid;gap:7px;max-height:575px;overflow:auto;padding-right:4px}.comm-chat-item{display:grid;grid-template-columns:46px 1fr auto;gap:10px;align-items:center;text-align:left;width:100%;padding:10px;border:1px solid transparent;border-radius:15px;background:rgba(8,34,59,.74);color:#eaf5ff;cursor:pointer}.comm-chat-item:hover,.comm-chat-item.active{border-color:#238cff;background:linear-gradient(135deg,rgba(21,91,169,.54),rgba(8,37,66,.92))}.comm-chat-item>img{width:46px;height:46px;border-radius:14px;object-fit:cover;border:1px solid rgba(238,188,72,.35)}.comm-chat-item>span{min-width:0;display:grid}.comm-chat-item strong{font-size:.84rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.comm-chat-item small{color:#8fabca;font-size:.67rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.comm-chat-item>b{display:grid;place-items:center;min-width:22px;height:22px;border-radius:999px;background:#1678ef;font-size:.65rem}
.comm-chat-panel{display:grid;grid-template-rows:auto minmax(360px,1fr) auto;min-width:0}.comm-chat-panel>header,.portal-chat-box>header{display:flex;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid rgba(90,151,207,.17);background:rgba(5,24,43,.9)}.comm-chat-panel>header>img,.portal-chat-box>header>img{width:48px;height:48px;border-radius:14px;object-fit:cover;border:1px solid rgba(234,183,68,.45)}.comm-chat-panel>header>div,.portal-chat-box>header>div{flex:1;display:grid}.comm-chat-panel>header h3{margin:0;color:#f5fbff}.portal-chat-box>header strong{color:#f5fbff}.portal-chat-box>header span{color:#87a8c5;font-size:.72rem}
.chat-wallpaper{position:relative;min-height:0;overflow:hidden;background:#06162a}.chat-wallpaper:before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(4,20,38,.91),rgba(4,20,38,.94)),url('/assets/chat/chat-wallpaper.webp') center/cover no-repeat;opacity:.72}.chat-messages{position:relative;z-index:1;height:100%;max-height:560px;min-height:380px;overflow:auto;padding:20px;display:flex;flex-direction:column;gap:9px;scroll-behavior:smooth}
.chat-message{display:flex;align-items:flex-end;gap:7px;max-width:min(82%,740px)}.chat-message.mine{align-self:flex-end;justify-content:flex-end}.chat-message.other{align-self:flex-start}.chat-message-avatar{width:34px;height:34px;border-radius:12px;object-fit:cover;border:1px solid rgba(58,143,233,.35)}.chat-bubble{min-width:80px;padding:10px 12px;border-radius:16px 16px 16px 5px;background:linear-gradient(145deg,#102f4d,#0b223a);border:1px solid rgba(110,170,223,.2);box-shadow:0 8px 24px rgba(0,0,0,.14);color:#eef7ff}.chat-message.mine .chat-bubble{border-radius:16px 16px 5px 16px;background:linear-gradient(145deg,#1058ad,#0b3a76);border-color:rgba(65,148,244,.45)}.chat-author{display:block;margin-bottom:4px;color:#58a7ff;font-size:.68rem}.chat-text{white-space:pre-wrap;line-height:1.48;font-size:.88rem}.chat-bubble footer{display:flex;justify-content:flex-end;align-items:center;gap:5px;margin-top:5px;color:#87a4be;font-size:.6rem}.chat-read-state{color:#46a4ff;font-weight:900}.chat-empty{margin:auto;display:grid;justify-items:center;gap:6px;color:#8caac5;text-align:center}.chat-empty img{width:72px;height:72px;border-radius:20px;opacity:.78}.chat-empty strong{color:#e9f4fd}
.comm-attachment{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:9px;align-items:center;width:100%;max-width:430px;text-align:left;margin-top:8px;padding:8px 10px;border:1px solid rgba(111,171,224,.22);border-radius:12px;background:rgba(4,21,39,.58);color:#edf7ff;cursor:pointer}.comm-attachment:hover{border-color:#318fe8;background:rgba(12,53,92,.72)}.comm-attachment img{width:38px;height:38px;border-radius:10px;object-fit:cover}.comm-attachment span{display:grid;min-width:0}.comm-attachment strong{font-size:.75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.comm-attachment small{font-size:.6rem;color:#8aa7c0}.comm-attachment b{font-size:1rem;color:#75b7f5}.notice-files{display:grid;gap:6px;margin-top:9px}.notice-files .comm-attachment{margin:0;background:rgba(255,255,255,.64);color:#183451;border-color:rgba(79,132,185,.25)}.notice-files .comm-attachment small{color:#657f98}
.chat-composer{padding:12px 14px;background:#071b30;border-top:1px solid rgba(88,151,209,.18)}.chat-math-tools{display:flex;gap:6px;overflow-x:auto;padding-bottom:8px}.chat-math-tools button{flex:0 0 auto;border:1px solid rgba(95,163,224,.25);border-radius:999px;background:#0b2e50;color:#cce6ff;min-width:42px;height:30px;cursor:pointer;font-weight:800}.chat-math-tools button:hover{border-color:#f0bd49;color:#fff}.chat-compose-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:end}.chat-compose-row textarea{resize:none;min-height:46px;max-height:110px;background:#0a2846!important;color:#f0f7fd!important;border-color:rgba(104,166,222,.22)!important}.chat-attach-btn{display:grid;place-items:center;width:46px;height:46px;border-radius:13px;background:#0b2b4b;border:1px solid rgba(93,160,221,.23);cursor:pointer;font-size:1.2rem}.chat-attach-btn input{display:none}
.portal-chat-section{overflow:hidden}.portal-chat-tabs{display:flex;gap:8px;overflow-x:auto;padding:2px 0 12px}.portal-chat-tab{display:grid;grid-template-columns:42px minmax(100px,1fr);gap:9px;align-items:center;min-width:210px;text-align:left;padding:9px 10px;border:1px solid #d9e5ef;border-radius:14px;background:#fff;cursor:pointer}.portal-chat-tab.active{border-color:#2680e5;box-shadow:0 0 0 3px rgba(38,128,229,.09)}.portal-chat-tab img{width:42px;height:42px;border-radius:12px;object-fit:cover}.portal-chat-tab span{display:grid}.portal-chat-tab strong{color:#12304f;font-size:.78rem}.portal-chat-tab small{color:#70879b;font-size:.62rem}.portal-chat-box{overflow:hidden;border-radius:18px;border:1px solid #d7e4ef;background:#061426}.portal-chat-box .chat-messages{max-height:520px}.portal-chat-box .chat-composer{margin:0}.public-portal .portal-chat-box .btn.primary{color:#fff}
.comm-public-kpis .feature strong{font-size:1.9rem}.comm-chart-legend{display:flex;justify-content:flex-end;gap:14px;font-size:.68rem;color:#8199ae;margin-bottom:7px}.comm-chart-legend i{width:9px;height:9px;border-radius:3px;display:inline-block}.comm-chart-legend i.public,.comm-chart-day i.public{background:#2d8ef3}.comm-chart-legend i.portal,.comm-chart-day i.portal{background:#e6b84b}.comm-chart{height:220px;display:flex;align-items:end;gap:4px;padding:8px 2px 0;border-bottom:1px solid rgba(117,151,182,.18);overflow-x:auto}.comm-chart-day{height:100%;min-width:22px;flex:1;display:grid;grid-template-rows:1fr auto;gap:4px;align-items:end;text-align:center}.comm-chart-bars{height:185px;display:flex;align-items:end;justify-content:center;gap:2px}.comm-chart-bars i{display:block;width:7px;border-radius:4px 4px 1px 1px;min-height:0}.comm-chart-day span{font-size:.52rem;color:#7890a6}.comm-click-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.comm-click-grid>div{padding:18px;border:1px solid rgba(101,151,196,.17);border-radius:14px;background:rgba(7,30,53,.04)}.comm-click-grid strong{display:block;font-size:1.8rem;color:#1678ef}.comm-click-grid span{font-size:.72rem;color:#71879a}.comm-progress{height:7px;margin-top:7px;border-radius:999px;background:#e5edf4;overflow:hidden}.comm-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#1b79e8,#42a7ff)}
.compact-select{min-height:36px;padding:6px 9px;border-radius:10px}
@media(max-width:900px){.comm-hero{border-radius:0;margin-inline:-12px}.comm-hero-overlay{left:20px;right:20px}.comm-hero-overlay p{display:none}.comm-workspace{grid-template-columns:1fr;min-height:0}.comm-chat-list{max-height:340px}.comm-chat-panel{min-height:640px}.chat-message{max-width:92%}.chat-messages{min-height:360px;max-height:500px;padding:14px}.portal-chat-section{padding:14px!important}.portal-chat-tabs{margin-inline:-2px}.comm-chart{min-width:520px}.comm-chart-day{min-width:20px}.comm-public-kpis{grid-template-columns:1fr!important}.notice-files .comm-attachment{max-width:none}}
@media(max-width:520px){.chat-composer{padding:10px}.chat-compose-row{grid-template-columns:auto minmax(0,1fr) auto}.chat-compose-row .btn{min-width:56px;padding-inline:10px;font-size:.7rem}.chat-attach-btn{width:42px;height:42px}.chat-text{font-size:.83rem}.comm-chat-panel>header{padding:10px}.comm-chat-list{padding:12px}.portal-chat-tab{min-width:185px}.comm-click-grid{grid-template-columns:1fr 1fr}}

/* v5.1.0 · hotspots desktop da divulgação recalibrados na arte 1536×1024 */
@media(min-width:901px){
 body.public-professional:not(.public-schedule-page) .pjs-hotspot.hs-inicio{left:30.1%;top:2.3%;width:4.6%;height:4.5%}
 body.public-professional:not(.public-schedule-page) .pjs-hotspot.hs-trajetoria{left:35.7%;top:2.3%;width:7.1%;height:4.5%}
 body.public-professional:not(.public-schedule-page) .pjs-hotspot.hs-publicacoes{left:43.3%;top:2.3%;width:7.2%;height:4.5%}
 body.public-professional:not(.public-schedule-page) .pjs-hotspot.hs-metodologia{left:51.5%;top:2.3%;width:8.1%;height:4.5%}
 body.public-professional:not(.public-schedule-page) .pjs-hotspot.hs-portal-top{left:61.5%;top:2.3%;width:9.5%;height:4.5%}
 body.public-professional:not(.public-schedule-page) .pjs-hotspot.hs-agendar-top{left:72.9%;top:2.3%;width:8.8%;height:4.5%}
 body.public-professional:not(.public-schedule-page) .pjs-hotspot.hs-contato-top{left:82.8%;top:2.3%;width:6.1%;height:4.5%}
 body.public-professional:not(.public-schedule-page) .pjs-hotspot.hs-service-aulas{left:78.7%;top:12.0%;width:19.0%;height:9.4%}
 body.public-professional:not(.public-schedule-page) .pjs-hotspot.hs-service-medio{left:78.7%;top:22.5%;width:19.0%;height:8.7%}
 body.public-professional:not(.public-schedule-page) .pjs-hotspot.hs-service-reforco{left:78.7%;top:32.0%;width:19.0%;height:8.8%}
 body.public-professional:not(.public-schedule-page) .pjs-hotspot.hs-service-materiais{left:78.7%;top:41.4%;width:19.0%;height:8.9%}
 body.public-professional:not(.public-schedule-page) .pjs-hotspot.hs-service-projetos{left:78.7%;top:50.9%;width:19.0%;height:9.1%}
 body.public-professional:not(.public-schedule-page) .pjs-hotspot.hs-agendar{left:3.2%;top:69.9%;width:17.2%;height:6.1%}
 body.public-professional:not(.public-schedule-page) .pjs-hotspot.hs-whatsapp{left:21.3%;top:69.9%;width:17.4%;height:6.1%}
 body.public-professional:not(.public-schedule-page) .pjs-hotspot.hs-trabalho{left:39.6%;top:69.9%;width:20.9%;height:6.1%}
 body.public-professional:not(.public-schedule-page) .pjs-hotspot.hs-instagram{left:21.4%;top:81.5%;width:18.1%;height:4.7%}
 body.public-professional:not(.public-schedule-page) .pjs-hotspot.hs-site{left:21.4%;top:87.3%;width:18.1%;height:4.7%}
 body.public-professional:not(.public-schedule-page) .pjs-hotspot.hs-whatsapp-foot{left:40.2%;top:81.5%;width:20.2%;height:4.7%}
 body.public-professional:not(.public-schedule-page) .pjs-hotspot.hs-email{left:40.2%;top:87.3%;width:20.2%;height:4.7%}
 body.public-professional:not(.public-schedule-page) .pjs-hotspot.hs-lattes{left:61.2%;top:80.6%;width:20.9%;height:11.7%}
 body.public-professional:not(.public-schedule-page) .pjs-hotspot.hs-portal-qr{left:83.0%;top:80.1%;width:14.6%;height:13.2%}
}


/* v5.1.1 · Portal em abas + home operacional + chat recolhido + agendamento limpo */
.schedule-immersive-dock{display:none!important}
.portal-view[hidden]{display:none!important}.portal-view{animation:portalViewIn .18s ease both}@keyframes portalViewIn{from{opacity:.35;transform:translateY(5px)}to{opacity:1;transform:none}}
.portal-view-heading{margin:22px 0 10px}.portal-view-heading h2{margin:4px 0 0;color:#12304f}.portal-view-heading p{margin:6px 0 0}.portal-home-view>.portal-hero{margin-top:10px}.portal-home-block{margin-top:16px}.portal-home-heading{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:10px}.portal-home-heading h2{margin:4px 0 0;color:#12304f}
.portal-shortcut-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.portal-shortcut-grid button{display:flex;align-items:center;gap:10px;text-align:left;padding:14px;border:1px solid #dce7f1;border-radius:17px;background:linear-gradient(145deg,#fff,#f6faff);cursor:pointer;box-shadow:0 8px 24px rgba(27,84,143,.06)}.portal-shortcut-grid button:hover{border-color:#a8c9eb;transform:translateY(-1px)}.portal-shortcut-grid button .portal-nav-icon{flex:0 0 auto;width:36px;height:36px!important;border-radius:11px;background:#eaf4ff;color:#176bd3}.portal-shortcut-grid button span:last-child{display:grid;gap:2px}.portal-shortcut-grid button strong{color:#113454}.portal-shortcut-grid button small{color:#71869a;font-size:.68rem}
.portal-next-grid{align-items:stretch}.portal-next-card,.portal-pending-card{height:100%}.portal-next-card>h3{font-size:1.3rem;margin:6px 0}.portal-next-delivery{margin-top:14px;padding:12px;border-radius:14px;background:#f5f9fd;border:1px solid #dbe8f3;display:grid;gap:3px}.portal-next-delivery span,.portal-next-delivery small{font-size:.7rem;color:#72879a}.portal-pending-list{display:grid;gap:8px}.portal-pending-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid #edf2f6}.portal-pending-row:last-child{border-bottom:0}.portal-pending-row>div{display:grid;gap:3px}.portal-pending-row span{font-size:.72rem;color:#70879b}.portal-see-all{margin-top:12px}.portal-material-row{align-items:flex-start}.material-files{display:grid;gap:7px;margin-top:10px}.material-files-label{font-weight:800;color:#46637e}.material-files .comm-attachment{max-width:100%;width:100%}
.chat-math-details{margin-bottom:9px;border:1px solid rgba(95,163,224,.18);border-radius:13px;background:#08243f;overflow:hidden}.chat-math-details summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;color:#d9edff;font-weight:850}.chat-math-details summary::-webkit-details-marker{display:none}.chat-math-details summary:after{content:'⌄';color:#f1c255;font-size:1rem}.chat-math-details[open] summary:after{content:'⌃'}.chat-math-details summary small{font-size:.62rem;font-weight:600;color:#89a9c5}.chat-math-details .chat-math-tools{padding:0 10px 8px;display:flex;flex-wrap:wrap;overflow:visible}.chat-math-hint{padding:0 11px 10px;color:#8daac3;font-size:.65rem;line-height:1.45}.chat-math-hint code{color:#f4cb6a;background:#061a2f;border-radius:6px;padding:2px 4px}
@media(max-width:900px){.portal-view-heading{padding:0 12px;margin-top:16px}.portal-home-block{margin-inline:12px}.portal-home-view>.portal-hero{margin-top:0}.portal-shortcut-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.portal-shortcut-grid button{padding:11px;border-radius:15px}.portal-shortcut-grid button:last-child:nth-child(odd){grid-column:1/-1}.portal-next-grid{grid-template-columns:1fr!important;margin-inline:12px!important}.portal-home-heading{align-items:center}.portal-view>.section{margin-left:12px;margin-right:12px}.portal-view#portalViewChat .portal-chat-section{margin-left:12px;margin-right:12px}.portal-chat-section{padding:0!important;border-radius:20px}.portal-chat-section>.section-head,.portal-chat-section>.portal-chat-tabs{padding-left:14px;padding-right:14px}.portal-chat-section>.section-head{padding-top:14px}.portal-chat-box{border-radius:18px 18px 0 0;border-left:0;border-right:0;border-bottom:0}.portal-chat-box .chat-messages{max-height:calc(100svh - 360px);min-height:330px}.chat-math-details summary small{display:none}.chat-math-details .chat-math-tools{max-height:150px;overflow-y:auto}}
@media(max-width:430px){.portal-shortcut-grid button small{display:none}.portal-shortcut-grid button{min-height:58px}.portal-pending-row{align-items:flex-start}.portal-home-heading h2{font-size:1.15rem}}
@media(min-width:901px){.public-portal .portal-app-nav.with-chat{grid-template-columns:repeat(6,minmax(0,1fr))}.public-portal .portal-app-nav.reinforcement-nav.with-chat{grid-template-columns:repeat(6,minmax(0,1fr))}}

/* v5.1.2 · Comunicação separada, bolha flutuante, presença e Analytics ampliado */
.nav-btn-priority{position:relative;background:linear-gradient(135deg,rgba(14,77,135,.24),rgba(9,42,72,.15));border-color:rgba(73,143,205,.18)!important}
.nav-unread-badge{margin-left:auto;display:grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#e53935;color:#fff;font-size:.64rem;font-weight:950;box-shadow:0 0 0 3px rgba(229,57,53,.12)}
body.sidebar-collapsed .nav-unread-badge{position:absolute;right:3px;top:3px;min-width:18px;height:18px;font-size:.55rem;padding:0 4px}

.comm-float-button{position:fixed;right:24px;bottom:24px;z-index:120;width:62px;height:62px;border:1px solid rgba(72,154,232,.42);border-radius:22px;background:linear-gradient(145deg,#0b72e7,#0752a8);color:#fff;display:grid;place-items:center;cursor:pointer;box-shadow:0 18px 48px rgba(0,48,102,.38),inset 0 1px 0 rgba(255,255,255,.22);transition:.18s}
.comm-float-button:hover{transform:translateY(-2px);box-shadow:0 22px 56px rgba(0,48,102,.46),inset 0 1px 0 rgba(255,255,255,.25)}
.comm-float-icon .nav-icon{width:29px;height:29px}.comm-float-icon .nav-icon svg{width:27px;height:27px}
.comm-float-count{position:absolute;right:-7px;top:-7px;min-width:25px;height:25px;padding:0 6px;display:grid;place-items:center;border-radius:999px;background:#e53935;border:3px solid #061426;color:#fff;font-size:.66rem;font-weight:950}
.comm-float-presence{position:absolute;left:-2px;bottom:-2px;width:16px;height:16px;border-radius:50%;border:3px solid #061426;background:#788b9d}.comm-float-presence.online{background:#22c889;box-shadow:0 0 0 4px rgba(34,200,137,.13)}.comm-float-presence.offline{background:#758696}
.comm-float-panel{position:fixed;right:24px;bottom:96px;z-index:119;width:min(390px,calc(100vw - 28px));max-height:min(720px,calc(100svh - 120px));overflow:auto;border-radius:25px;border:1px solid rgba(105,166,222,.25);background:linear-gradient(160deg,#071f38,#061426 75%);box-shadow:0 28px 80px rgba(0,0,0,.42);color:#eef7ff;padding:16px}.comm-float-panel>header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.comm-float-panel h3{margin:2px 0 0;color:#fff}.comm-float-close{width:34px;height:34px;border-radius:12px;border:1px solid rgba(114,169,219,.24);background:#0a2b4a;color:#d8ebfb;font-size:1.25rem;cursor:pointer}.comm-float-statuses{margin-bottom:10px}.comm-float-summary{display:flex;justify-content:space-between;align-items:center;padding:9px 10px;border-radius:12px;background:rgba(255,255,255,.045);font-size:.72rem;color:#8eacc6}.comm-float-summary strong{color:#fff}.comm-float-chats{display:grid;gap:6px;margin:10px 0;max-height:340px;overflow:auto}.comm-float-chat{width:100%;display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px;border:1px solid transparent;border-radius:14px;background:rgba(10,41,70,.58);color:#eaf5ff;text-align:left;cursor:pointer}.comm-float-chat:hover,.comm-float-chat.unread{border-color:rgba(44,133,224,.48);background:rgba(13,58,99,.8)}.comm-float-chat>img{width:40px;height:40px;border-radius:12px;object-fit:cover}.comm-float-chat>span{display:grid;min-width:0}.comm-float-chat strong,.comm-float-chat small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.comm-float-chat strong{font-size:.76rem}.comm-float-chat small{font-size:.61rem;color:#86a7c3}.comm-float-chat>b{min-width:21px;height:21px;padding:0 5px;display:grid;place-items:center;border-radius:999px;background:#e53935;font-size:.6rem}.comm-float-open{width:100%;justify-content:center}
.comm-status-stack{display:grid;gap:8px}.comm-status-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px;border-radius:16px;border:1px solid rgba(94,159,218,.18);background:rgba(8,35,61,.6)}.comm-status-row.compact{display:grid;gap:8px;padding:9px}.comm-status-name{display:flex;align-items:center;gap:9px;min-width:0}.comm-status-name>span{display:grid}.comm-status-name strong{color:#eef8ff;font-size:.8rem}.comm-status-name small{color:#84a5c0;font-size:.64rem}.comm-status-dot{width:11px;height:11px;border-radius:50%;background:#74889b;flex:0 0 auto}.comm-status-dot.online{background:#22c889;box-shadow:0 0 0 4px rgba(34,200,137,.1)}.comm-status-controls{display:flex;gap:7px;flex-wrap:wrap}.comm-status-controls select{min-height:34px;padding:5px 8px;border-radius:10px;background:#0a2b49!important;color:#dcedfa!important;border:1px solid rgba(100,165,224,.2)!important;font-size:.67rem}.comm-status-row.compact .comm-status-controls select{flex:1 1 120px}.comm-status-card{background:linear-gradient(150deg,#071f37,#07182b)!important}
.comm-chat-item:has(>b){border-color:rgba(229,57,53,.24);background:linear-gradient(135deg,rgba(52,52,73,.6),rgba(9,37,65,.92))}.comm-chat-item:has(>b) strong{color:#fff}
.comm-hero-compact{min-height:220px}.comm-hero-compact>img{min-height:220px}.comm-hero-compact .comm-hero-overlay h2{font-size:clamp(1.8rem,3vw,3rem)}

.analytics-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 16px;border-radius:16px;border:1px solid rgba(94,149,198,.17);background:rgba(9,32,55,.045)}.analytics-toolbar>div{display:grid;gap:3px}.analytics-toolbar .muted{font-size:.7rem}.analytics-funnel-rows,.analytics-split-bars{display:grid;gap:12px;margin-top:12px}.analytics-funnel-rows>div,.analytics-split-bars>div{position:relative;display:grid;grid-template-columns:1fr auto;gap:8px;padding-bottom:10px}.analytics-funnel-rows span,.analytics-split-bars span{font-size:.75rem;color:#71889b}.analytics-funnel-rows strong,.analytics-split-bars strong{color:#153958}.analytics-funnel-rows i,.analytics-split-bars i{grid-column:1/-1;height:9px;border-radius:999px;background:#e8eff5;overflow:hidden;position:relative}.analytics-funnel-rows i:after,.analytics-split-bars i:after{content:"";position:absolute;inset:0 auto 0 0;width:var(--w);border-radius:inherit;background:linear-gradient(90deg,#1579ec,#46a8ff)}.analytics-split-bars>div:nth-child(2) i:after{background:linear-gradient(90deg,#e4aa31,#f3cc64)}.analytics-never{background:rgba(236,170,44,.055)}.analytics-portal-split .notice{margin-top:16px}.analytics-hero:after{background:linear-gradient(90deg,rgba(4,18,34,.94),rgba(4,18,34,.55) 55%,rgba(4,18,34,.12))}

.portal-professor-status{display:inline-flex!important;align-items:center;gap:6px;width:max-content;color:#668198!important;font-size:.68rem!important}.portal-professor-status i{width:9px;height:9px;border-radius:50%;background:#7f91a1}.portal-professor-status.online i{background:#22c889;box-shadow:0 0 0 3px rgba(34,200,137,.12)}.portal-professor-status.unavailable{color:#9a6e6a!important}.portal-professor-status.unavailable i{background:#dc655c}.portal-chat-head-status{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.portal-nav-item{position:relative}.portal-nav-chat-badge,.portal-shortcut-chat-badge{position:absolute;right:6px;top:5px;min-width:20px;height:20px;padding:0 5px;display:grid;place-items:center;border-radius:999px;background:#e53935;color:#fff;font-size:.58rem;font-weight:950;box-shadow:0 0 0 2px #fff}.portal-shortcut-grid button{position:relative}.portal-shortcut-chat-badge{right:7px;top:7px}.portal-chat-tab{grid-template-columns:42px minmax(100px,1fr) auto}.portal-chat-tab.has-unread{border-color:#ebb5b2;background:#fffafb}.portal-chat-unread{min-width:22px;height:22px;padding:0 5px;display:grid;place-items:center;border-radius:999px;background:#e53935;color:#fff;font-size:.6rem}.portal-chat-unread-total.hidden{display:none!important}

@media(max-width:900px){
 .comm-float-button{right:14px;bottom:calc(82px + env(safe-area-inset-bottom));width:56px;height:56px;border-radius:19px}.comm-float-panel{right:10px;bottom:calc(148px + env(safe-area-inset-bottom));max-height:calc(100svh - 180px)}
 .comm-status-row{align-items:flex-start;display:grid}.comm-status-controls{width:100%}.comm-status-controls select{flex:1 1 0}.analytics-toolbar{margin-inline:12px;align-items:flex-start}.analytics-funnel-rows strong{font-size:.78rem}.portal-chat-head-status{justify-content:flex-start}.portal-professor-status{font-size:.64rem!important}
}
@media(max-width:520px){.comm-float-panel{width:calc(100vw - 20px)}.comm-status-controls{display:grid;grid-template-columns:1fr 1fr}.comm-status-controls select{min-width:0;width:100%}.analytics-toolbar{display:grid}.analytics-toolbar select{width:100%}.portal-nav-chat-badge{right:3px;top:3px;min-width:18px;height:18px;font-size:.52rem}}

/* v5.1.3 · Portal estilo Central + chat de grupos + prévia de imagens */
body.public-portal.portal-app-active{background:#eef4f9;overflow:hidden}
body.public-portal.portal-app-active>.portal-nav{display:none!important}
body.public-portal.portal-app-active>.public-main{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;min-height:100svh}
.portal-app-shell{display:grid;grid-template-columns:272px minmax(0,1fr);min-height:100svh;height:100svh;background:#eef4f9}
.portal-side-panel{position:relative;z-index:60;display:flex;flex-direction:column;min-width:0;height:100svh;padding:18px 14px;background:linear-gradient(180deg,#06172a,#071d33 55%,#061426);border-right:1px solid rgba(92,153,210,.16);box-shadow:16px 0 44px rgba(8,38,67,.12);color:#fff;overflow:auto}
.portal-side-brand{display:grid;grid-template-columns:54px minmax(0,1fr);gap:11px;align-items:center;padding:4px 5px 18px;margin-bottom:8px;border-bottom:1px solid rgba(123,171,214,.14)}
.portal-side-brand>img{width:54px;height:54px;border-radius:17px;object-fit:cover;border:1px solid rgba(255,196,69,.28);box-shadow:0 8px 24px rgba(0,0,0,.22)}
.portal-side-brand>div{display:grid;min-width:0}.portal-side-brand span{font-size:.58rem;color:#79a8cf;text-transform:uppercase;letter-spacing:.1em;font-weight:900}.portal-side-brand strong{margin-top:3px;color:#f6fbff;font-size:.92rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portal-side-brand small{color:#89a9c4;font-size:.62rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.portal-side-nav{position:static!important;top:auto!important;margin:0!important;padding:3px!important;display:flex!important;flex-direction:column!important;grid-template-columns:none!important;grid-auto-flow:row!important;gap:5px!important;overflow:visible!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;backdrop-filter:none!important}
.portal-side-nav .portal-nav-item{width:100%;min-width:0!important;min-height:48px;display:grid!important;grid-template-columns:34px minmax(0,1fr) auto!important;align-items:center;gap:9px;padding:8px 10px!important;text-align:left;border:1px solid transparent;border-radius:13px;background:transparent;color:#9fbcd4;cursor:pointer;text-decoration:none;position:relative}
.portal-side-nav .portal-nav-item:hover{background:rgba(31,112,196,.11);border-color:rgba(76,149,220,.14);color:#fff}.portal-side-nav .portal-nav-item.active{background:linear-gradient(135deg,rgba(31,112,230,.24),rgba(21,79,145,.17));border-color:rgba(76,149,230,.29);color:#fff;box-shadow:inset 3px 0 0 #f0b736}
.portal-side-nav .portal-nav-icon{width:32px;height:32px!important;border-radius:10px;background:rgba(20,78,130,.65);color:#78b9ff;display:grid;place-items:center}.portal-side-nav .portal-nav-icon svg{width:19px;height:19px}.portal-side-nav .portal-nav-item>span:nth-child(2){display:grid;gap:1px;min-width:0}.portal-side-nav .portal-nav-item strong{font-size:.77rem!important;color:inherit!important;max-width:none!important}.portal-side-nav .portal-nav-item small{font-size:.57rem;color:#7399ba}.portal-side-nav .portal-nav-item.active small{color:#9ebbd2}
.portal-side-nav .portal-nav-chat-badge{position:static!important;right:auto;top:auto;box-shadow:none;border:2px solid #07192c}
.portal-side-footer{margin-top:auto;padding:14px 5px 4px;border-top:1px solid rgba(110,159,201,.12);display:grid;gap:10px}.portal-side-footer .btn{width:100%;justify-content:center;background:#0d2d49;border-color:#214f73;color:#dceeff}
.portal-side-backdrop{display:none;border:0;padding:0;background:rgba(4,18,31,.52)}
.portal-app-stage{height:100svh;overflow-y:auto;overflow-x:hidden;min-width:0;scroll-behavior:smooth}
.portal-internal-topbar{position:sticky;top:0;z-index:45;min-height:68px;padding:10px 22px;display:flex;align-items:center;gap:12px;background:rgba(248,251,254,.92);border-bottom:1px solid #dbe7f1;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 5px 22px rgba(30,78,124,.05)}
.portal-menu-btn{display:none;width:42px;height:42px;border-radius:12px;border:1px solid #cfddea;background:#fff;color:#153d63;font-size:1.2rem;cursor:pointer}.portal-internal-topbar>div:nth-child(2){display:grid;min-width:0}.portal-internal-topbar>div:nth-child(2)>strong{color:#143451;font-size:.86rem}.portal-internal-topbar>div:nth-child(2)>span{font-size:.63rem;color:#73899b}.portal-topbar-actions{margin-left:auto;display:flex;align-items:center;gap:10px}
.portal-app-pages{padding:24px 26px 44px;max-width:1540px;margin:0 auto}.portal-view[hidden]{display:none!important}.portal-view-heading{margin:0 0 18px}.portal-view-heading h2{margin:3px 0 0;color:#12314f;font-size:clamp(1.45rem,2.2vw,2.15rem)}
.portal-shortcut-grid-v513{grid-template-columns:repeat(6,minmax(0,1fr))}.portal-shortcut-grid-v513 button{min-height:84px}.portal-shortcut-grid-v513 button .portal-nav-icon{width:42px;height:42px!important}
.portal-work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.portal-work-card{padding:18px;border:1px solid #d9e5f0;border-radius:20px;background:linear-gradient(145deg,#fff,#f7fbff);box-shadow:0 10px 30px rgba(32,88,143,.07)}.portal-work-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.portal-work-card>header>div>span{font-size:.62rem;color:#1670d6;text-transform:uppercase;letter-spacing:.08em;font-weight:900}.portal-work-card h3{margin:4px 0 0;color:#113451;font-size:1rem}.portal-work-card>p{color:#5e7890;line-height:1.55;font-size:.8rem}.portal-work-members{display:grid;gap:3px;padding:10px 0;border-top:1px solid #edf2f6;border-bottom:1px solid #edf2f6}.portal-work-members strong{font-size:.65rem;color:#315572}.portal-work-members span{font-size:.72rem;color:#6f8497}.portal-work-status-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:12px 0 9px}.portal-work-status,.portal-work-chat-state{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:.61rem;font-weight:900}.portal-work-status{background:#eaf3ff;color:#1767c0}.portal-work-status.status-producao{background:#e8f8f0;color:#18764f}.portal-work-status.status-ajustes{background:#fff4d7;color:#8c6400}.portal-work-status.status-apresentacao{background:#f0eaff;color:#6245a6}.portal-work-status.status-finalizado{background:#edf0f3;color:#617080}.portal-work-chat-state.open{background:#e9f9f2;color:#13704a}.portal-work-chat-state.closed{background:#fff0ef;color:#a6423b}.portal-work-timeline{display:grid;gap:7px;margin-bottom:12px}.portal-work-timeline>div{display:grid;grid-template-columns:78px 1fr;gap:8px;align-items:start}.portal-work-timeline span{font-size:.62rem;color:#7b8fa1}.portal-work-timeline strong{font-size:.69rem;color:#34536d;font-weight:750}
.work-schedule-summary{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:7px}.work-group-row{align-items:flex-start}.span-2{grid-column:1/-1}

/* Chat ocupa a página toda */
.portal-chat-view{height:calc(100svh - 68px);margin:-24px -26px -44px!important;background:#071426;overflow:hidden}.portal-chat-page{height:100%;display:grid;grid-template-columns:310px minmax(0,1fr);background:#071426}.portal-chat-conversations{min-width:0;display:flex;flex-direction:column;border-right:1px solid rgba(112,169,220,.16);background:linear-gradient(180deg,#071b30,#061426);overflow:hidden}.portal-chat-list-head{padding:17px 14px 12px;display:flex;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px solid rgba(105,160,210,.13)}.portal-chat-list-head h3{margin:3px 0 0;color:#f4faff}.portal-chat-tabs{display:flex!important;flex-direction:column!important;gap:5px!important;overflow-y:auto!important;overflow-x:hidden!important;padding:10px!important;margin:0!important}.portal-chat-tab{width:100%;min-width:0!important;grid-template-columns:44px minmax(0,1fr) auto!important;border-color:rgba(111,166,216,.12)!important;background:rgba(8,31,54,.72)!important}.portal-chat-tab.active{border-color:#318fe8!important;background:#0d3154!important;box-shadow:inset 3px 0 0 #f2bd42!important}.portal-chat-tab.has-unread{background:#112f4c!important;border-color:rgba(234,107,97,.36)!important}.portal-chat-tab strong{color:#eef7ff!important}.portal-chat-tab small{color:#89a7c1!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portal-chat-box-full{height:100%;border:0!important;border-radius:0!important;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;min-height:0}.portal-chat-box-full>header{min-height:72px}.portal-chat-title-wrap{display:grid;gap:2px}.portal-chat-title-wrap>strong{font-size:.9rem}.portal-chat-title-wrap>span{display:block}.portal-chat-group-meta{font-size:.65rem!important;color:#9ab4cb!important}.portal-chat-group-meta b{color:#f2c45d}.portal-chat-group-meta em{font-style:normal;color:#74cba3}.portal-chat-lock{display:flex;align-items:center;gap:10px;padding:8px 15px;background:#40201f;color:#ffd8d5;border-bottom:1px solid #65312e;font-size:.72rem}.portal-chat-lock span{color:#e9aaa6}.portal-chat-box-full .chat-wallpaper{min-height:0}.portal-chat-box-full .chat-messages{height:100%!important;min-height:0!important;max-height:none!important}.portal-chat-box-full .chat-composer{margin:0;border-radius:0}.portal-chat-box-full .chat-compose-row textarea:disabled{opacity:.55;cursor:not-allowed}.portal-chat-box-full .chat-attach-btn:has(input:disabled){opacity:.45;pointer-events:none}

/* Chat flutuante dentro dos portais */
.portal-chat-float{position:fixed;right:22px;bottom:20px;z-index:120;display:grid;justify-items:end;gap:10px}.portal-chat-float-button{position:relative;display:flex;align-items:center;gap:9px;min-width:118px;height:58px;padding:7px 14px 7px 7px;border:1px solid rgba(65,143,226,.34);border-radius:20px;background:linear-gradient(145deg,#0b2d4d,#071b31);color:#f3f9ff;box-shadow:0 18px 45px rgba(5,35,65,.28);cursor:pointer}.portal-chat-float-button>img{width:44px;height:44px;border-radius:14px;object-fit:cover}.portal-chat-float-button>span{font-size:.75rem;font-weight:900}.portal-float-unread{position:absolute;right:-6px;top:-7px;min-width:24px;height:24px;padding:0 6px;display:grid;place-items:center;border-radius:999px;background:#e83f3a;color:#fff;border:3px solid #eef4f9;font-size:.58rem}.portal-chat-float-panel{width:min(370px,calc(100vw - 28px));max-height:min(620px,75svh);display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;border:1px solid rgba(91,151,208,.25);border-radius:22px;background:#071b30;box-shadow:0 28px 80px rgba(2,18,34,.36)}.portal-chat-float-panel>header{display:flex;align-items:center;justify-content:space-between;padding:13px 14px;border-bottom:1px solid rgba(103,160,211,.14)}.portal-chat-float-panel>header>div{display:grid;gap:4px}.portal-chat-float-panel>header strong{color:#f5fbff}.portal-chat-float-panel>header button{width:32px;height:32px;border-radius:10px;border:1px solid rgba(114,171,222,.2);background:#0d2e4a;color:#cfe5f7;font-size:1.2rem;cursor:pointer}.portal-chat-float-list{display:grid;align-content:start;gap:4px;padding:8px;overflow:auto}.portal-float-chat-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:9px;text-align:left;padding:9px;border:1px solid transparent;border-radius:14px;background:transparent;color:#eaf5fd;cursor:pointer}.portal-float-chat-row:hover,.portal-float-chat-row.has-unread{background:#0d3151;border-color:rgba(92,159,220,.18)}.portal-float-chat-row img{width:42px;height:42px;border-radius:12px;object-fit:cover}.portal-float-chat-row span{display:grid;min-width:0}.portal-float-chat-row strong{font-size:.73rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portal-float-chat-row small{font-size:.59rem;color:#89a7c1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portal-float-chat-row>b{min-width:22px;height:22px;padding:0 5px;display:grid;place-items:center;border-radius:999px;background:#e83f3a;color:#fff;font-size:.57rem}.portal-float-open-all{margin:8px 10px 11px;justify-content:center}

/* Imagem enviada pode ser vista no próprio portal */
.comm-attachment-block{display:grid;gap:6px;max-width:430px}.comm-image-preview{position:relative;display:block;width:min(100%,360px);padding:0;overflow:hidden;border:1px solid rgba(111,171,224,.22);border-radius:14px;background:#071b30;cursor:zoom-in}.comm-image-preview>img{display:block;width:100%;max-height:260px;aspect-ratio:16/10;object-fit:cover;background:#10263a}.comm-image-preview>span{position:absolute;right:7px;bottom:7px;padding:5px 8px;border-radius:999px;background:rgba(3,18,32,.78);color:#fff;font-size:.56rem;font-weight:850;backdrop-filter:blur(8px)}.comm-image-preview.preview-error{display:none}.comm-attachment-block>.comm-attachment{margin-top:0!important}.notice-files .comm-attachment-block,.material-files .comm-attachment-block{max-width:100%}.notice-files .comm-image-preview,.material-files .comm-image-preview{max-width:320px}.comm-image-lightbox{position:fixed;inset:0;z-index:400;display:grid;place-items:center;padding:24px}.comm-image-lightbox-backdrop{position:absolute;inset:0;border:0;background:rgba(1,10,19,.88);backdrop-filter:blur(8px)}.comm-image-lightbox figure{position:relative;z-index:1;max-width:min(1100px,95vw);max-height:92vh;margin:0;display:grid;gap:8px}.comm-image-lightbox figure>img{display:block;max-width:100%;max-height:84vh;object-fit:contain;border-radius:18px;background:#071426;box-shadow:0 30px 100px rgba(0,0,0,.52)}.comm-image-lightbox figcaption{text-align:center;color:#d8e8f5;font-size:.72rem}.comm-image-lightbox-close{position:absolute;right:-12px;top:-12px;z-index:2;width:38px;height:38px;border-radius:999px;border:1px solid rgba(255,255,255,.26);background:#0a2742;color:#fff;font-size:1.4rem;cursor:pointer}

@media(max-width:1100px){.portal-shortcut-grid-v513{grid-template-columns:repeat(3,minmax(0,1fr))}.portal-work-grid{grid-template-columns:1fr}}
@media(max-width:900px){
 body.public-portal.portal-app-active{overflow:hidden}.portal-app-shell{display:block;height:100svh}.portal-side-panel{position:fixed;left:0;top:0;bottom:0;width:min(84vw,310px);height:100svh;transform:translateX(-105%);transition:transform .2s ease;z-index:160;box-shadow:22px 0 60px rgba(0,0,0,.28)}.portal-side-panel.open{transform:translateX(0)}.portal-side-backdrop{display:block;position:fixed;inset:0;z-index:150;opacity:0;pointer-events:none;transition:.2s}.portal-side-backdrop.open{opacity:1;pointer-events:auto}.portal-app-stage{height:100svh}.portal-menu-btn{display:grid;place-items:center}.portal-internal-topbar{min-height:62px;padding:9px 12px}.portal-topbar-actions .portal-professor-status{display:none!important}.portal-topbar-actions .btn{display:none}.portal-app-pages{padding:14px 12px 28px}.portal-home-block{margin-inline:0!important}.portal-view>.section{margin-left:0!important;margin-right:0!important}.portal-shortcut-grid-v513{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-shortcut-grid-v513 button{min-height:70px}.portal-work-grid{grid-template-columns:1fr}.portal-chat-view{height:calc(100svh - 62px);margin:-14px -12px -28px!important}.portal-chat-page{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}.portal-chat-conversations{border-right:0;border-bottom:1px solid rgba(112,169,220,.16);max-height:124px}.portal-chat-list-head{padding:8px 10px}.portal-chat-list-head h3{font-size:.88rem}.portal-chat-list-head .kicker{display:none}.portal-chat-tabs{flex-direction:row!important;overflow-x:auto!important;overflow-y:hidden!important;padding:7px!important}.portal-chat-tab{min-width:190px!important;width:190px}.portal-chat-box-full>header{min-height:62px;padding:9px 12px}.portal-chat-box-full .chat-messages{padding:12px}.portal-chat-float{right:12px;bottom:max(12px,env(safe-area-inset-bottom))}.portal-chat-float-button{min-width:58px;width:58px;height:58px;padding:7px;border-radius:18px}.portal-chat-float-button>span{display:none}.portal-chat-float-panel{width:min(360px,calc(100vw - 24px))}.comm-image-lightbox{padding:12px}.comm-image-lightbox-close{right:4px;top:4px}.portal-work-timeline>div{grid-template-columns:68px 1fr}}
@media(max-width:430px){.portal-shortcut-grid-v513{grid-template-columns:1fr 1fr}.portal-shortcut-grid-v513 button small{display:block}.portal-side-brand{grid-template-columns:48px 1fr}.portal-side-brand>img{width:48px;height:48px}.portal-chat-tab{min-width:172px!important;width:172px}.portal-chat-float-panel{max-height:70svh}}


/* v5.1.3 · configuração dedicada do site e trabalhos atuais sem chat */
.site-settings-card .compact-list{margin-top:12px}.site-settings-card .list-row{padding:9px 0}.site-settings-card .list-row:first-child{border-top:0}

/* v5.1.4 — Portal da Escola com menu inferior clássico + histórico de atividades */
.public-portal .portal-classic-shell{height:100svh;min-height:100svh;background:#eef4f9;overflow:hidden;color:#102a43}
.portal-classic-topbar{height:70px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 22px;background:rgba(255,255,255,.97);border-bottom:1px solid #d9e6f1;box-shadow:0 7px 22px rgba(26,73,112,.06);position:relative;z-index:45}
.portal-classic-brand{display:flex;align-items:center;gap:11px;min-width:0}.portal-classic-brand img{width:48px;height:48px;border-radius:15px;object-fit:cover;border:1px solid #d9e6f1}.portal-classic-brand>div{display:grid;gap:2px;min-width:0}.portal-classic-brand strong{font-size:.88rem;color:#0a2b49;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portal-classic-brand span{font-size:.66rem;color:#6e8599;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portal-classic-actions{display:flex;align-items:center;gap:9px;flex:0 0 auto}
.portal-classic-stage{height:calc(100svh - 70px);overflow:auto;overscroll-behavior:contain}.portal-classic-shell .portal-app-pages{padding:18px 22px 112px;max-width:1460px;margin:0 auto}.portal-classic-shell .portal-view{min-height:calc(100svh - 200px)}
.public-portal .portal-classic-shell .portal-app-nav.portal-bottom-nav{position:fixed!important;left:50%!important;right:auto!important;top:auto!important;bottom:max(10px,env(safe-area-inset-bottom))!important;transform:translateX(-50%);z-index:135;width:min(790px,calc(100vw - 22px));margin:0!important;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:5px;padding:7px;border:1px solid rgba(93,137,177,.22);border-radius:22px;background:rgba(255,255,255,.97);box-shadow:0 18px 50px rgba(20,59,94,.22);backdrop-filter:blur(18px);overflow:visible}
.public-portal .portal-classic-shell .portal-app-nav.portal-bottom-nav.with-chat{grid-template-columns:repeat(6,minmax(0,1fr))!important}
.portal-classic-shell .portal-bottom-nav .portal-nav-item{position:relative;min-width:0!important;min-height:60px;padding:7px 5px!important;display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:4px;border-radius:16px;border:0;background:transparent;color:#5a748c}.portal-classic-shell .portal-bottom-nav .portal-nav-item.active{background:#eaf4ff;color:#0d67c7;box-shadow:inset 0 0 0 1px #c9e1f8}.portal-classic-shell .portal-bottom-nav .portal-nav-icon{width:23px;height:23px}.portal-classic-shell .portal-bottom-nav .portal-nav-item strong{font-size:.61rem!important;line-height:1.05;text-align:center}.portal-classic-shell .portal-bottom-nav .portal-nav-chat-badge{position:absolute;top:4px;right:14px;min-width:19px;height:19px;padding:0 4px;display:grid;place-items:center;border-radius:999px;background:#e43f38;color:#fff;font-size:.52rem;border:2px solid #fff}
.portal-classic-shell .portal-chat-view{height:calc(100svh - 70px - 104px);min-height:560px;margin:0!important;border:1px solid rgba(90,145,195,.2);border-radius:22px;overflow:hidden;box-shadow:0 18px 50px rgba(11,45,76,.14)}.portal-classic-shell .portal-chat-page{grid-template-columns:285px minmax(0,1fr)}.portal-classic-shell .portal-chat-box-full>header{min-height:68px}.portal-classic-shell .portal-chat-box-full .chat-composer{padding-bottom:max(10px,env(safe-area-inset-bottom))}.portal-classic-shell .portal-chat-float{bottom:104px}.portal-chat-page-open .portal-chat-float{display:none!important}
.portal-shortcut-grid-v514{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.portal-shortcut-grid-v514 button{position:relative;min-height:88px;display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:12px;text-align:left;padding:14px;border:1px solid #d7e5f1;border-radius:18px;background:linear-gradient(145deg,#fff,#f6faff);color:#153d60;cursor:pointer;box-shadow:0 8px 24px rgba(35,83,123,.05)}.portal-shortcut-grid-v514 button:hover{transform:translateY(-1px);border-color:#b9d6ef}.portal-shortcut-grid-v514 button.shortcut-priority{border-color:#c4dff7;background:linear-gradient(145deg,#eef7ff,#fff)}.portal-shortcut-grid-v514 button.shortcut-chat{border-color:#d6c47b}.portal-shortcut-grid-v514 button>span:not(.portal-nav-icon){display:grid;gap:4px;min-width:0}.portal-shortcut-grid-v514 button strong{font-size:.82rem}.portal-shortcut-grid-v514 button small{font-size:.66rem;color:#70879a}.portal-shortcut-grid-v514 .portal-shortcut-chat-badge{position:absolute;right:9px;top:9px;min-width:22px;height:22px;padding:0 5px;display:grid;place-items:center;border-radius:999px;background:#e43f38;color:#fff;font-size:.56rem}
.activity-summary-grid .feature{text-align:center}.activity-summary-grid .feature strong{display:block;font-size:1.85rem;color:#146ecb}.activity-summary-grid .feature p{margin:5px 0 0;color:#6f8496;font-size:.71rem}
.activity-history-list{display:grid;gap:8px;margin-top:12px}.activity-history-row{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:15px;align-items:center;padding:13px 14px;border:1px solid #dbe7f1;border-radius:15px;background:#fbfdff}.activity-history-main{min-width:0;display:grid;gap:7px}.activity-history-title{display:flex;gap:8px;align-items:center;min-width:0}.activity-history-title>span{flex:0 0 auto;font-size:.58rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em;color:#3b78ad;background:#eaf4fd;padding:5px 7px;border-radius:8px}.activity-history-title strong{font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.activity-history-meta{display:flex;flex-wrap:wrap;gap:6px 12px;font-size:.61rem;color:#768b9d}.activity-history-meta .caderno-tag{color:#9a6a0d;background:#fff3cf;border:1px solid #edd890;border-radius:999px;padding:2px 7px}.activity-history-result{display:grid;grid-template-columns:auto auto;gap:2px 10px;align-items:center;justify-content:end;text-align:right}.activity-history-result>strong{font-size:1.15rem;color:#123f66}.activity-history-result>small{grid-column:1/-1;color:#778b9c;font-size:.58rem}.activity-status{display:inline-flex;align-items:center;justify-content:center;width:max-content;padding:5px 8px;border-radius:999px;font-size:.57rem;font-weight:850;background:#e8eef3;color:#546c80}.activity-status.ok{background:#e4f7ec;color:#267049}.activity-status.warn{background:#fff3d7;color:#8b6208}.activity-status.error{background:#fee8e6;color:#a33f38}
.notebook-evolution-grid{display:grid;gap:14px}.notebook-chart-card{border:1px solid #d9e6f1;border-radius:19px;background:#fff;padding:15px;overflow:hidden}.notebook-chart-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.notebook-chart-card h3{margin:4px 0 0}.notebook-chart-scroll{overflow-x:auto;margin-top:8px}.notebook-chart{display:block;width:100%;min-width:560px;height:auto}.notebook-gridline{stroke:#dfeaf3;stroke-width:1}.notebook-axis-label,.notebook-x-label{fill:#71889c;font-size:10px}.notebook-line{fill:none;stroke:#176fc9;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.notebook-point{fill:#f0bd3e;stroke:#0f5ca2;stroke-width:3}.notebook-chart-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:6px;margin-top:6px}.notebook-chart-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 8px;padding:8px 9px;border-radius:10px;background:#f4f8fb;font-size:.61rem}.notebook-chart-list span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notebook-chart-list strong{color:#145b98}.notebook-chart-list small{grid-column:1/-1;color:#788c9d}
body:not(.public) .student-activity-profile .notebook-chart-card,body:not(.public) .student-activity-profile .activity-history-row{background:#0a2138;border-color:#173f60}body:not(.public) .student-activity-profile .notebook-gridline{stroke:#244863}body:not(.public) .student-activity-profile .notebook-axis-label,body:not(.public) .student-activity-profile .notebook-x-label{fill:#8fa9bd}body:not(.public) .student-activity-profile .activity-history-title strong,body:not(.public) .student-activity-profile .activity-history-result>strong{color:#e7f5ff}body:not(.public) .student-activity-profile .activity-history-meta,body:not(.public) .student-activity-profile .activity-history-result>small{color:#91a9bc}body:not(.public) .student-activity-profile .notebook-chart-list>div{background:#0d2a45;color:#d9ebf7}
@media(max-width:900px){.portal-classic-topbar{height:62px;padding:7px 10px}.portal-classic-brand img{width:44px;height:44px;border-radius:13px}.portal-classic-brand strong{font-size:.76rem}.portal-classic-brand span{font-size:.58rem}.portal-classic-actions .portal-professor-status{display:none!important}.portal-classic-stage{height:calc(100svh - 62px)}.portal-classic-shell .portal-app-pages{padding:12px 10px 104px}.public-portal .portal-classic-shell .portal-app-nav.portal-bottom-nav{bottom:max(7px,env(safe-area-inset-bottom))!important;width:calc(100vw - 12px);padding:5px;gap:1px;border-radius:19px}.portal-classic-shell .portal-bottom-nav .portal-nav-item{min-height:56px;padding:6px 2px!important}.portal-classic-shell .portal-bottom-nav .portal-nav-icon{width:21px;height:21px}.portal-classic-shell .portal-bottom-nav .portal-nav-item strong{font-size:.52rem!important;max-width:56px}.portal-classic-shell .portal-bottom-nav .portal-nav-chat-badge{top:2px;right:5px}.portal-shortcut-grid-v514{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-shortcut-grid-v514 button{min-height:78px;grid-template-columns:36px minmax(0,1fr);padding:11px}.portal-classic-shell .portal-chat-view{height:calc(100svh - 62px - 90px);min-height:0;border-radius:15px}.portal-classic-shell .portal-chat-page{grid-template-columns:1fr;grid-template-rows:116px minmax(0,1fr)}.portal-classic-shell .portal-chat-conversations{max-height:none}.portal-classic-shell .portal-chat-list-head{display:none}.portal-classic-shell .portal-chat-tabs{height:116px;align-items:stretch}.portal-classic-shell .portal-chat-tab{height:94px}.portal-classic-shell .portal-chat-float{right:10px;bottom:92px}.activity-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.activity-history-row{grid-template-columns:1fr;gap:9px}.activity-history-result{display:flex;justify-content:space-between;text-align:left}.activity-history-result>small{margin-left:auto}.notebook-chart-card{padding:11px}.notebook-chart-list{grid-template-columns:1fr}}
@media(max-width:430px){.portal-classic-brand>div span{max-width:230px}.portal-classic-actions .btn{padding:7px 9px}.portal-shortcut-grid-v514{grid-template-columns:1fr 1fr}.activity-history-title{align-items:flex-start}.activity-history-title strong{white-space:normal}.activity-history-result{flex-wrap:wrap}.activity-history-result>small{width:100%;margin-left:0}}
.student-profile-hero{display:grid;grid-template-columns:72px minmax(0,1fr);gap:14px;align-items:center;padding:14px 16px;border:1px solid rgba(88,147,198,.2);border-radius:18px;background:linear-gradient(145deg,rgba(12,51,84,.96),rgba(7,29,50,.98));color:#eaf6ff}.student-profile-avatar{width:72px;height:72px;display:grid;place-items:center;border-radius:22px;background:linear-gradient(145deg,#176dc2,#0b3f72);border:2px solid #efbd46;color:#fff;font-size:1.35rem;font-weight:950;letter-spacing:.04em}.student-profile-hero h2{margin:4px 0 5px;color:#fff}.student-profile-hero .muted{color:#9eb8cd!important}

/* v5.1.5 — Instalação, notificações inteligentes e planos de estudo */
.portal-install-card,.portal-notify-summary,.portal-notification-settings{margin:1rem 0;border:1px solid rgba(51,131,255,.2);background:linear-gradient(135deg,rgba(10,32,67,.97),rgba(16,55,104,.94));color:#fff;box-shadow:0 18px 45px rgba(4,17,38,.14)}
.portal-install-head,.portal-notify-summary{display:flex;align-items:center;justify-content:space-between;gap:1rem}.portal-install-head img{width:76px;height:76px;object-fit:contain}.portal-install-head h2,.portal-notify-summary h3,.portal-notification-settings h3{color:#fff;margin:.15rem 0}.portal-install-head p,.portal-notify-summary p,.portal-notification-settings .muted{color:rgba(255,255,255,.78)}
.portal-platform-pick{display:flex;gap:.65rem;margin:1rem 0}.portal-platform-pick button{border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.08);color:#fff;border-radius:16px;padding:.75rem 1rem;font-weight:800;cursor:pointer}.portal-platform-pick button.active{background:#fff;color:#0a2a59;border-color:#fff}
.portal-install-steps{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:.85rem 1rem}.portal-install-steps ol{margin:.25rem 0 .5rem;padding-left:1.35rem}.portal-install-steps li{margin:.45rem 0;line-height:1.45}.portal-install-card .btn.ghost{color:#fff;border-color:rgba(255,255,255,.35);background:transparent}.portal-install-actions{margin-top:.85rem;flex-wrap:wrap}
.portal-notify-summary{padding:1rem 1.15rem}.portal-notify-summary>div:first-child{max-width:700px}.portal-notify-summary .actions{flex-wrap:wrap;justify-content:flex-end}
.portal-notification-settings{padding:1.1rem}.notify-pref-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin-top:.9rem}.notify-pref{display:flex;gap:.7rem;align-items:flex-start;background:rgba(255,255,255,.08);padding:.8rem;border-radius:15px;border:1px solid rgba(255,255,255,.1);cursor:pointer}.notify-pref input{margin-top:.18rem;accent-color:#e5b74f}.notify-pref span{display:grid;gap:.15rem}.notify-pref small{color:rgba(255,255,255,.72);line-height:1.35}.notify-pref-select{cursor:default;justify-content:space-between;align-items:center}.notify-pref-select select{min-width:190px;background:#fff;color:#102b50;border:0;border-radius:10px;padding:.55rem}
.portal-todo-card{border-top:4px solid #286ee8}.portal-todo-list{display:grid;gap:.55rem}.portal-todo-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem .9rem;border-radius:14px;background:var(--surface-soft,#f5f8fd);border:1px solid rgba(21,73,137,.1)}.portal-todo-row>div{display:grid;gap:.2rem}.portal-todo-row span{font-size:.82rem;color:var(--muted,#627187)}.portal-todo-row.done{opacity:.72}.portal-todo-row.done strong{text-decoration:line-through}.btn.green{background:#15835d;color:#fff;border-color:#15835d}
.study-plan-section{border-top:4px solid #d6a93a}.recovery-plan-section{border-top:4px solid #d86c42}.study-plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin-top:.8rem}.study-plan-card{border:1px solid rgba(32,84,151,.13);border-radius:17px;padding:1rem;background:linear-gradient(180deg,#fff,#f8fbff)}.study-plan-card.recovery{background:linear-gradient(180deg,#fff,#fff8f3)}.study-plan-card header{display:flex;justify-content:space-between;align-items:flex-start;gap:.8rem;margin-bottom:.7rem}.study-plan-card header span:first-child{font-size:.78rem;color:var(--muted,#627187);font-weight:700}.study-plan-card h4{margin:.15rem 0;font-size:1rem}.study-plan-card p{margin:.55rem 0;line-height:1.45}.study-links{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;margin-top:.7rem}.study-links .pill{border:0;cursor:pointer}.study-attachments{display:grid;gap:.55rem;margin-top:.7rem}
.study-admin-panel{margin-top:1rem;border-radius:18px;border:1px solid rgba(32,84,151,.16);padding:1rem;background:#f7faff}.study-admin-panel h3{margin:.2rem 0 .8rem}.study-admin-options{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.study-admin-options>div{display:grid;align-content:start;gap:.4rem;border:1px solid rgba(32,84,151,.12);background:#fff;border-radius:14px;padding:.75rem}.study-admin-options label{display:flex;gap:.45rem;align-items:flex-start;font-size:.86rem}.study-existing-files{grid-column:1/-1;display:grid;gap:.35rem;background:#fff;border:1px solid rgba(32,84,151,.12);border-radius:14px;padding:.75rem}.study-existing-files label{display:flex;justify-content:space-between;gap:.7rem;font-size:.84rem}.recovery-admin-section{border-top:4px solid #d86c42}
.analytics-notification-health .notice{margin-top:.8rem}.analytics-rank{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:rgba(31,99,214,.1);font-weight:900;color:#1f63d6}

@media(max-width:700px){.portal-install-head,.portal-notify-summary{align-items:flex-start;flex-direction:column}.portal-install-head img{position:absolute;right:1.2rem;width:56px;height:56px}.portal-install-head{position:relative;padding-right:60px}.notify-pref-grid,.study-plan-grid,.study-admin-options{grid-template-columns:1fr}.notify-pref-select{align-items:flex-start;flex-direction:column}.notify-pref-select select{width:100%}.portal-todo-row{align-items:flex-start;flex-direction:column}.portal-todo-row .btn{width:100%}.portal-notify-summary .actions{justify-content:flex-start}.portal-install-actions .btn{flex:1 1 140px}}

/* v5.1.6 — Chat mais usável, sem alterar o menu do Portal do Aluno */
.chat-composer-v516{position:relative;padding:9px 11px!important;background:#071b30;border-top:1px solid rgba(88,151,209,.18)}
.chat-compose-row-v516{display:grid;grid-template-columns:44px 58px minmax(0,1fr) auto;gap:7px;align-items:end}
.chat-compose-row-v516 textarea{height:44px;min-height:44px!important;max-height:118px!important;padding:11px 12px!important;line-height:1.35;border-radius:14px!important;overflow-y:auto}
.chat-compose-row-v516 .chat-attach-btn{width:44px;height:44px;border-radius:14px}
.chat-math-popover{position:relative;margin:0!important;border:0!important;border-radius:0!important;background:transparent!important;overflow:visible!important}
.chat-math-popover>summary{height:44px;min-width:58px;padding:5px 8px!important;display:grid!important;grid-template-columns:auto 1fr;place-items:center;align-content:center;column-gap:4px;border:1px solid rgba(95,163,224,.26);border-radius:14px;background:#0b2b4b;color:#dcedff!important;line-height:1;user-select:none}
.chat-math-popover>summary:after{display:none!important}.chat-math-popover>summary b{font-size:1.12rem;color:#f2c45d}.chat-math-popover>summary span{font-size:.56rem;font-weight:900;text-transform:uppercase;letter-spacing:.03em}
.chat-math-popover-panel{position:absolute;z-index:180;left:0;bottom:52px;width:min(540px,calc(100vw - 36px));max-height:min(310px,45svh);overflow:auto;padding:11px;border:1px solid rgba(94,162,225,.32);border-radius:17px;background:rgba(5,25,45,.98);box-shadow:0 18px 50px rgba(0,0,0,.38);backdrop-filter:blur(16px)}
.chat-math-popover:not([open]) .chat-math-popover-panel{display:none}.chat-math-popover-title{display:flex;align-items:end;justify-content:space-between;gap:10px;margin-bottom:8px;color:#edf7ff}.chat-math-popover-title small{font-size:.6rem;color:#8eabc5}.chat-math-popover .chat-math-tools{display:grid!important;grid-template-columns:repeat(7,minmax(42px,1fr));gap:6px;overflow:visible!important;padding:0!important}.chat-math-popover .chat-math-tools button{width:100%;min-width:0;height:34px;border-radius:10px}.chat-math-popover .chat-math-hint{padding:9px 1px 0!important}
.chat-send-v516{height:44px;min-width:78px;border-radius:14px!important;display:flex!important;align-items:center;justify-content:center;gap:5px;padding:0 13px!important}.chat-send-v516>span{font-size:.9rem}.chat-send-v516>b{font-size:.68rem}.chat-send-v516.sending{opacity:.7}.chat-file-name-v516{min-height:0;margin:4px 4px 0;color:#9bb5ca!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.portal-chat-box-full .chat-messages,.comm-chat-panel-v516 .chat-messages{padding:14px 16px;gap:7px}.portal-chat-box-full .chat-message,.comm-chat-panel-v516 .chat-message{max-width:min(86%,760px)}
body.public-portal.portal-chat-page-open .portal-chat-float{display:none!important}

/* Central · presença e leitura */
.comm-workspace-v516{grid-template-columns:minmax(240px,290px) minmax(420px,1fr) minmax(250px,310px);min-height:680px;align-items:stretch}
.comm-chat-panel-v516{min-height:680px;grid-template-rows:auto minmax(0,1fr) auto}.comm-chat-panel-v516 .chat-wallpaper{min-height:0}.comm-chat-panel-v516 .chat-messages{height:100%;max-height:none;min-height:0}
.comm-presence-panel{border:1px solid rgba(80,148,214,.2);border-radius:22px;background:linear-gradient(155deg,#071d33,#061426);box-shadow:0 20px 55px rgba(0,0,0,.18);padding:15px;color:#eaf5ff;overflow:auto}.comm-presence-panel .section-head h3{color:#f1f8ff}.comm-presence-panel>.muted{display:block;margin:0 0 12px;color:#8eabc3!important;font-size:.67rem;line-height:1.45}
.comm-presence-summary{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:11px}.comm-presence-summary>div{display:grid;gap:2px;padding:10px;border:1px solid rgba(91,154,211,.16);border-radius:13px;background:rgba(11,43,74,.7)}.comm-presence-summary strong{font-size:1.25rem;color:#fff}.comm-presence-summary span{font-size:.57rem;color:#8fabc2}
.comm-presence-list{display:grid;gap:7px}.comm-presence-row{display:grid;grid-template-columns:40px minmax(0,1fr);gap:9px;align-items:start;padding:9px;border:1px solid rgba(94,153,207,.12);border-radius:14px;background:rgba(8,32,55,.72)}.comm-presence-avatar{position:relative;width:40px;height:40px;display:grid;place-items:center;border-radius:13px;background:linear-gradient(145deg,#1769c4,#0d3c70);border:1px solid rgba(240,191,71,.35);font-weight:950}.comm-presence-avatar i{position:absolute;right:-2px;bottom:-2px;width:12px;height:12px;border:2px solid #071b30;border-radius:50%;background:#6f8292}.comm-presence-avatar i.online{background:#21c985;box-shadow:0 0 0 2px rgba(33,201,133,.13)}.comm-presence-row>div{display:grid;min-width:0;gap:2px}.comm-presence-row strong{font-size:.72rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.comm-presence-row small{font-size:.57rem;color:#84a4bd}.comm-read-label{margin-top:4px;font-size:.56rem;color:#829db4}.comm-read-label.read{color:#51b6ff}.comm-read-label.unread{color:#d6a95a}.comm-read-label.neutral{color:#70899d}

@media(max-width:1180px){.comm-workspace-v516{grid-template-columns:minmax(230px,280px) minmax(0,1fr)}.comm-presence-panel{grid-column:1/-1;max-height:330px}.comm-presence-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){
 .comm-workspace-v516{grid-template-columns:1fr;min-height:0}.comm-chat-panel-v516{min-height:72svh}.comm-presence-list{grid-template-columns:1fr 1fr}
 /* Mantém o menu inferior atual; só compacta o interior do Chat */
 .portal-classic-shell .portal-chat-view{height:calc(100svh - 62px - 82px)!important;min-height:0;border-radius:14px}
 .portal-classic-shell .portal-chat-page-v516{grid-template-columns:1fr!important;grid-template-rows:78px minmax(0,1fr)!important}
 .portal-classic-shell .portal-chat-conversations{height:78px;min-height:78px;max-height:78px!important;border-right:0;border-bottom:1px solid rgba(112,169,220,.16)}
 .portal-classic-shell .portal-chat-list-head{display:none!important}
 .portal-classic-shell .portal-chat-tabs{height:78px!important;display:flex!important;flex-direction:row!important;align-items:center!important;gap:6px!important;padding:6px 7px!important;overflow-x:auto!important;overflow-y:hidden!important;scroll-snap-type:x proximity}
 .portal-classic-shell .portal-chat-tab{flex:0 0 min(205px,72vw);width:auto!important;height:64px!important;min-height:64px!important;padding:6px 8px!important;scroll-snap-align:start}.portal-classic-shell .portal-chat-tab img{width:38px;height:38px;border-radius:11px}.portal-classic-shell .portal-chat-tab strong{font-size:.71rem!important}.portal-classic-shell .portal-chat-tab small{font-size:.57rem!important}
 .portal-classic-shell .portal-chat-header-v516{min-height:55px!important;padding:7px 10px!important}.portal-classic-shell .portal-chat-header-v516>img{width:39px;height:39px;border-radius:11px}.portal-classic-shell .portal-chat-title-wrap>strong{font-size:.76rem}.portal-classic-shell .portal-chat-title-wrap>span{font-size:.58rem!important}
 .portal-classic-shell .portal-chat-box-full .chat-messages{padding:10px 9px 12px!important;min-height:0!important;max-height:none!important}.portal-classic-shell .chat-message{max-width:94%!important}.portal-classic-shell .chat-message-avatar{width:27px;height:27px;border-radius:9px}.portal-classic-shell .chat-bubble{padding:8px 10px;border-radius:14px}.portal-classic-shell .chat-text{font-size:.8rem;line-height:1.42}
 .portal-classic-shell .chat-composer-v516{padding:7px 7px max(7px,env(safe-area-inset-bottom))!important}.portal-classic-shell .chat-compose-row-v516{grid-template-columns:40px 48px minmax(0,1fr) 46px;gap:5px}.portal-classic-shell .chat-compose-row-v516 .chat-attach-btn{width:40px;height:40px;border-radius:12px}.portal-classic-shell .chat-math-popover>summary{height:40px;min-width:48px;padding:3px 5px!important;border-radius:12px}.portal-classic-shell .chat-math-popover>summary span{display:none}.portal-classic-shell .chat-math-popover>summary b{font-size:1.22rem}.portal-classic-shell .chat-compose-row-v516 textarea{height:40px;min-height:40px!important;padding:9px 10px!important;border-radius:12px!important}.portal-classic-shell .chat-send-v516{width:46px;min-width:46px;height:40px;padding:0!important;border-radius:12px!important}.portal-classic-shell .chat-send-v516>b{display:none}.portal-classic-shell .chat-send-v516>span{font-size:1rem}.portal-classic-shell .chat-math-popover-panel{position:fixed;left:8px;right:8px;bottom:calc(82px + 57px + env(safe-area-inset-bottom));width:auto;max-height:38svh}.portal-classic-shell .chat-math-popover .chat-math-tools{grid-template-columns:repeat(6,minmax(40px,1fr))}.portal-classic-shell .chat-math-popover-title small{display:none}
 .portal-classic-shell .portal-chat-float{bottom:92px}.portal-chat-page-open .portal-chat-float,body.public-portal.portal-chat-page-open .portal-chat-float{display:none!important}
}
@media(max-width:560px){.comm-presence-list{grid-template-columns:1fr}.comm-presence-summary{grid-template-columns:1fr 1fr}.chat-math-popover .chat-math-tools{grid-template-columns:repeat(5,minmax(40px,1fr))}}

/* v5.1.7 — notificações obrigatórias + foto de perfil aprovada */
.portal-notification-gate{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:18px;background:rgba(2,12,25,.82);backdrop-filter:blur(15px)}
.portal-notification-gate-card{width:min(620px,100%);max-height:calc(100vh - 36px);overflow:auto;border:1px solid rgba(71,151,235,.32);border-radius:28px;padding:24px;background:radial-gradient(circle at 86% 5%,rgba(29,112,220,.28),transparent 34%),linear-gradient(145deg,#0b2745,#061828);box-shadow:0 30px 90px rgba(0,0,0,.45);color:#eef8ff;text-align:left}
.portal-notification-gate-card>img{width:76px;height:76px;object-fit:contain;float:right;margin:0 0 10px 16px}.portal-notification-gate-card h2{margin:6px 0 8px;color:#fff;font-size:clamp(1.45rem,4vw,2rem)}.portal-notification-gate-card p{line-height:1.55;color:#b9d0e3}.portal-gate-enable{width:100%;justify-content:center;margin-top:14px;min-height:48px}
.notify-required-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin-top:.9rem}.notify-required{cursor:default;align-items:center}.notify-required .notify-lock{font-size:1.15rem}.notify-required>b{margin-left:auto;font-size:.63rem;text-transform:uppercase;letter-spacing:.08em;color:#f0c96b;background:rgba(238,189,70,.12);border:1px solid rgba(238,189,70,.25);padding:4px 7px;border-radius:999px}
.student-photo-card{display:grid;grid-template-columns:96px minmax(0,1fr);gap:18px;align-items:center;margin:1rem 0;border:1px solid rgba(62,139,221,.2);background:linear-gradient(145deg,rgba(248,252,255,.98),rgba(235,246,255,.98))}.student-photo-avatar-wrap{width:96px;height:96px}.student-avatar-default{width:100%;height:100%;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle at 35% 28%,#2c8df1,#104b8b 58%,#082b50);border:3px solid #e9bd55;box-shadow:0 8px 28px rgba(12,69,125,.23),inset 0 0 0 3px rgba(255,255,255,.13);color:#fff;font-weight:950;font-size:1.55rem;letter-spacing:.03em}.student-profile-photo{width:100%;height:100%;display:block;object-fit:cover;border-radius:50%;border:3px solid #e9bd55;background:#0b3158}.student-profile-photo.pending{filter:saturate(.88);opacity:.9}.student-photo-copy h3{margin:4px 0 5px}.student-photo-copy p{margin:0 0 7px;color:#49677f}.student-photo-actions{margin-top:10px}
.student-profile-avatar>.student-avatar-default{width:100%;height:100%;border:0;border-radius:inherit;box-shadow:none}.student-profile-avatar>.student-profile-photo{border:0;border-radius:inherit}.student-photo-approval-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.student-photo-approval{display:grid;grid-template-columns:92px minmax(0,1fr);gap:12px;align-items:center}.student-photo-approval-preview{width:92px;height:92px}.student-photo-approval h3{margin:4px 0}.student-photo-approval .student-avatar-default,.student-photo-approval .student-profile-photo{border-radius:22px}
body:not(.public) .student-photo-card{background:linear-gradient(145deg,#0b2b49,#071e34);border-color:#18476c;color:#eaf6ff}body:not(.public) .student-photo-copy p{color:#9db6ca}
@media(max-width:760px){.notify-required-list{grid-template-columns:1fr}.portal-notification-gate{padding:10px}.portal-notification-gate-card{padding:18px;border-radius:22px;max-height:calc(100vh - 20px)}.portal-notification-gate-card>img{width:58px;height:58px}.student-photo-card{grid-template-columns:74px minmax(0,1fr);gap:12px}.student-photo-avatar-wrap{width:74px;height:74px}.student-avatar-default{font-size:1.15rem}.student-photo-approval-grid{grid-template-columns:1fr}.student-photo-approval{grid-template-columns:78px minmax(0,1fr)}.student-photo-approval-preview{width:78px;height:78px}}

/* v5.1.7 — chat dinâmico, presença compacta, teclado matemático e avatar padrão */
.comm-page-head-v517{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:12px}.comm-page-head-v517 h2{margin:2px 0 4px}.comm-page-head-v517 p{margin:0;color:var(--muted);font-size:.78rem}.comm-status-collapsible{min-width:290px;max-width:520px;border:1px solid rgba(75,141,204,.18);border-radius:16px;background:rgba(7,28,49,.7);overflow:hidden}.comm-status-collapsible>summary{cursor:pointer;list-style:none;padding:10px 13px;color:#d9ebfb;font-size:.7rem;font-weight:900}.comm-status-collapsible>summary::-webkit-details-marker{display:none}.comm-status-collapsible>summary:after{content:'⌄';float:right;color:#f0c35a}.comm-status-collapsible[open]>summary:after{content:'⌃'}.comm-status-collapsible #commStatusPage{padding:0 10px 10px}
.comm-workspace-v517{display:grid;grid-template-columns:minmax(250px,300px) minmax(0,1fr);gap:12px;min-height:680px;height:min(790px,calc(100svh - 190px));align-items:stretch}.comm-chat-list-v517{min-height:0;border:1px solid rgba(77,145,209,.18);border-radius:20px;background:linear-gradient(180deg,#071d33,#061426);overflow:hidden;display:grid;grid-template-rows:auto auto minmax(0,1fr)}.comm-chat-list-head-v517{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 12px 8px}.comm-chat-list-head-v517>div{display:grid;gap:2px}.comm-chat-list-head-v517 strong{color:#f2f8ff;font-size:.82rem}.comm-chat-list-head-v517 span{color:#86a4bd;font-size:.58rem}.comm-filter-unread{border:1px solid rgba(107,166,218,.2);background:#0a2946;color:#a9c3d9;border-radius:999px;padding:6px 9px;font-size:.58rem;font-weight:850;cursor:pointer}.comm-filter-unread.active{background:#e9b84d;color:#122b42;border-color:#e9b84d}.comm-search-wrap{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:center;margin:0 10px 8px;padding:0 9px;border:1px solid rgba(102,161,214,.15);border-radius:12px;background:#08233d}.comm-search-wrap>span{color:#7ea2c0}.comm-search-wrap .comm-search{border:0!important;background:transparent!important;padding:8px 2px!important;box-shadow:none!important;color:#eaf4fc!important;min-width:0}.comm-chat-list-items-v517{overflow:auto;padding:3px 7px 9px;display:grid;align-content:start;gap:4px}
.comm-chat-item{grid-template-columns:46px minmax(0,1fr) auto!important;gap:9px!important;min-height:56px;padding:6px 7px!important;border-radius:14px!important}.comm-chat-item.has-unread{background:linear-gradient(135deg,rgba(30,75,116,.82),rgba(9,37,65,.96))!important}.comm-chat-item>span:nth-child(2){min-width:0;display:grid;gap:2px}.comm-chat-item>span:nth-child(2)>strong{font-size:.72rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.comm-chat-item>span:nth-child(2)>small{font-size:.56rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.comm-chat-unread-badge{min-width:22px;height:22px;padding:0 5px;display:grid;place-items:center;border-radius:999px;background:#e33f3b;color:white;font-size:.56rem}.comm-inline-online{color:#36d48e;font-weight:900}.comm-chat-avatar{position:relative;width:44px;height:44px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;overflow:visible}.comm-chat-avatar>img,.comm-chat-avatar>.student-avatar-default{width:44px;height:44px;border-radius:50%!important;object-fit:cover}.comm-chat-avatar.header,.comm-chat-header-avatar .comm-chat-avatar{width:48px;height:48px}.comm-chat-avatar.header>img,.comm-chat-avatar.header>.student-avatar-default{width:48px;height:48px}.comm-avatar-online{position:absolute;right:-1px;bottom:1px;width:12px;height:12px;border:2.5px solid #061426;border-radius:50%;background:#647a8b;z-index:5}.comm-avatar-online.online{background:#20d27d;box-shadow:0 0 0 3px rgba(32,210,125,.12)}.comm-chat-avatar>em{position:absolute;right:-5px;top:-5px;min-width:17px;height:17px;padding:0 4px;display:grid;place-items:center;border-radius:999px;background:#18a86b;color:#fff;border:2px solid #071b30;font-style:normal;font-size:.48rem;font-weight:950}
.comm-chat-panel-v517{position:relative;min-width:0;min-height:0;overflow:hidden;display:grid;grid-template-rows:auto minmax(0,1fr) auto;border:1px solid rgba(79,146,209,.19);border-radius:20px;background:#061426;box-shadow:0 18px 48px rgba(0,0,0,.16)}.comm-chat-header-v517{min-height:62px!important;padding:7px 10px!important;display:grid!important;grid-template-columns:50px minmax(0,1fr) auto!important;gap:9px!important;background:linear-gradient(180deg,#09233d,#071b30)!important}.comm-chat-header-avatar{display:grid;place-items:center}.comm-chat-header-title{min-width:0;display:grid!important;gap:0!important}.comm-chat-header-title>span{font-size:.52rem;color:#6fa1c8;text-transform:uppercase;letter-spacing:.07em;font-weight:900}.comm-chat-header-title h3{margin:1px 0!important;font-size:.84rem!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.comm-chat-header-title small{font-size:.55rem;color:#829fb7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.comm-chat-live-actions{display:flex;align-items:center;gap:5px}.comm-live-pill{height:31px;display:flex;align-items:center;gap:5px;padding:0 9px;border:1px solid rgba(103,164,216,.18);border-radius:999px;background:#0a2b49;color:#a7c1d8;font-size:.57rem;font-weight:850;cursor:pointer}.comm-live-pill i{width:8px;height:8px;border-radius:50%;background:#657d90}.comm-live-pill i.online,.comm-live-pill.is-online i{background:#20d27d;box-shadow:0 0 0 3px rgba(32,210,125,.11)}.comm-live-pill.is-online{color:#7de4b1;border-color:rgba(32,210,125,.22)}.comm-live-pill.read.has-read{color:#62baff}.comm-live-pill:hover{border-color:#d7ab4b;color:#fff}.comm-chat-wallpaper-v517{min-height:0!important}.chat-messages-v517{height:100%!important;min-height:0!important;max-height:none!important;padding:13px 14px 16px!important;gap:6px!important}.chat-messages-v517 .chat-message{max-width:min(78%,760px)}.chat-messages-v517 .chat-bubble{padding:8px 10px;border-radius:15px}.chat-messages-v517 .chat-text{font-size:.82rem;line-height:1.42}.chat-messages-v517 .chat-bubble footer{font-size:.54rem;margin-top:3px}.comm-people-drawer{position:absolute;z-index:190;top:67px;right:8px;width:min(350px,calc(100% - 16px));max-height:calc(100% - 138px);overflow:auto;border:1px solid rgba(100,165,222,.28);border-radius:17px;background:rgba(5,24,43,.98);box-shadow:0 22px 65px rgba(0,0,0,.4);backdrop-filter:blur(16px);padding:8px}.comm-people-drawer-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 7px 9px;background:rgba(5,24,43,.96)}.comm-people-drawer-head>div{display:grid}.comm-people-drawer-head strong{color:#f3f9ff;font-size:.76rem}.comm-people-drawer-head span{color:#89a7be;font-size:.56rem}.comm-people-drawer-head button{width:30px;height:30px;border:1px solid rgba(109,168,220,.2);border-radius:10px;background:#0b2e4e;color:#d9ebf9;font-size:1rem;cursor:pointer}.comm-presence-list-compact{gap:4px}.comm-presence-list-compact .comm-presence-row{grid-template-columns:38px minmax(0,1fr);padding:7px;border-radius:12px}.comm-presence-list-compact .comm-presence-avatar{width:38px;height:38px;border-radius:50%;background:transparent;border:0}.comm-presence-list-compact .comm-presence-avatar>.student-avatar-default,.comm-presence-list-compact .comm-presence-avatar>.student-profile-photo{width:38px;height:38px;border-radius:50%!important}.comm-presence-list-compact .comm-presence-row strong{font-size:.68rem}.comm-presence-list-compact .comm-presence-row small,.comm-presence-list-compact .comm-read-label{font-size:.53rem}
.chat-composer-v517{position:relative;padding:7px 8px max(7px,env(safe-area-inset-bottom))!important;background:#071b30;border-top:1px solid rgba(88,151,209,.17)}.chat-compose-row-v517{display:grid;grid-template-columns:42px 48px minmax(0,1fr) 44px;gap:5px;align-items:end}.chat-compose-row-v517 textarea{height:42px;min-height:42px!important;max-height:112px!important;padding:10px 11px!important;line-height:1.35;border-radius:13px!important;overflow-y:auto;background:#0a2846!important;color:#f4f9fd!important}.chat-tool-btn,.chat-math-open,.chat-send-v517{width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(99,162,218,.23);border-radius:13px;background:#0b2b4b;color:#deedfa;cursor:pointer}.chat-tool-btn input{display:none}.chat-attach-btn-v517>span{font-size:1.08rem}.chat-math-open{width:48px;grid-template-columns:auto auto;gap:2px;padding:0 6px}.chat-math-open b{color:#f0c35a;font-size:1.15rem}.chat-math-open span{font-size:.48rem;font-weight:950;text-transform:uppercase}.chat-send-v517{width:44px;border-color:#207fe2;background:linear-gradient(145deg,#1987ef,#0e5fc1);color:#fff;font-size:1rem}.chat-send-v517:hover{filter:brightness(1.08)}.chat-send-v517:disabled{opacity:.5}.chat-file-chip{max-width:100%;width:max-content;margin:0 0 5px 2px;padding:4px 8px;border-radius:9px;background:#0d3458;color:#a9c7df;font-size:.55rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chat-math-launcher{position:relative}.chat-math-sheet{position:fixed;inset:0;z-index:10050;display:grid;align-items:end;justify-items:center}.chat-math-backdrop{position:absolute;inset:0;border:0;background:rgba(2,12,23,.64);backdrop-filter:blur(5px);cursor:default}.chat-math-sheet-card{position:relative;width:min(760px,calc(100vw - 28px));max-height:min(610px,76svh);display:grid;grid-template-rows:auto auto auto minmax(0,1fr) auto;overflow:hidden;border:1px solid rgba(101,170,230,.3);border-radius:24px 24px 0 0;background:linear-gradient(160deg,#092b4a,#06182b);box-shadow:0 -22px 70px rgba(0,0,0,.42);color:#edf7ff}.chat-math-sheet-card>header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 15px 9px}.chat-math-sheet-card>header>div{display:grid}.chat-math-sheet-card>header strong{font-size:.9rem}.chat-math-sheet-card>header small{font-size:.58rem;color:#8cacc5}.chat-math-close{width:32px;height:32px;border:1px solid rgba(104,166,221,.2);border-radius:10px;background:#0e3659;color:#dcecf8;font-size:1.1rem;cursor:pointer}.chat-math-search-row{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:center;margin:0 13px 8px;padding:0 9px;border:1px solid rgba(100,164,221,.18);border-radius:12px;background:#061d33}.chat-math-search-row span{color:#7ca1bf}.chat-math-search-row input{border:0!important;background:transparent!important;color:#eef7ff!important;box-shadow:none!important;padding:8px 2px!important;min-width:0}.chat-math-categories{display:flex;gap:5px;overflow-x:auto;padding:0 13px 9px}.chat-math-categories button{flex:0 0 auto;border:1px solid rgba(103,164,218,.18);border-radius:999px;background:#0a2a48;color:#9db9cf;padding:6px 9px;font-size:.55rem;font-weight:850;cursor:pointer}.chat-math-categories button.active{background:#e7b64b;border-color:#e7b64b;color:#102942}.chat-math-grid{display:grid;grid-template-columns:repeat(6,minmax(76px,1fr));gap:6px;overflow:auto;padding:0 13px 12px;align-content:start}.chat-math-grid button{min-height:52px;display:grid;place-items:center;align-content:center;gap:2px;border:1px solid rgba(99,162,218,.16);border-radius:12px;background:#0a2946;color:#eef7ff;cursor:pointer;min-width:0}.chat-math-grid button:hover{border-color:#e7b64b;background:#103654}.chat-math-grid button strong{font-size:.78rem}.chat-math-grid button small{width:100%;font-size:.46rem;color:#779ab8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 3px}.chat-math-sheet-card>footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 13px;border-top:1px solid rgba(97,158,211,.13);color:#86a4bc;font-size:.53rem}.chat-math-sheet-card>footer code{color:#f0c764;background:#061426;border-radius:7px;padding:4px 6px}.math-keyboard-open{overflow:hidden}
.portal-chat-tab-avatar,.portal-chat-header-avatar{position:relative;display:grid;place-items:center;flex:0 0 auto}.portal-chat-tab-avatar{width:42px;height:42px}.portal-chat-tab-avatar img{width:42px!important;height:42px!important;border-radius:50%!important}.portal-chat-tab-avatar i,.portal-chat-header-avatar i{position:absolute;right:-1px;bottom:0;width:11px;height:11px;border:2px solid #071b30;border-radius:50%;background:#647c90}.portal-chat-tab-avatar i.online,.portal-chat-header-avatar i.online{background:#20d27d;box-shadow:0 0 0 3px rgba(32,210,125,.12)}.portal-chat-header-avatar{width:44px;height:44px}.portal-chat-header-avatar img{width:44px;height:44px;border-radius:50%;object-fit:cover;border:1px solid rgba(234,183,68,.45)}.portal-chat-header-v517{min-height:57px!important;padding:6px 10px!important;display:flex!important;align-items:center;gap:9px}.portal-chat-header-v517 .portal-chat-title-wrap{gap:0}.portal-chat-header-v517 .portal-chat-title-wrap>strong{font-size:.78rem}.portal-chat-header-v517 .portal-chat-title-wrap>span{font-size:.55rem!important}.portal-chat-wallpaper-v517{min-height:0}.portal-chat-page-v517 .chat-messages-v517{padding:11px 10px 13px!important}.portal-chat-page-v517 .chat-message{max-width:min(88%,720px)}
.student-avatar-default{position:relative;overflow:hidden;isolation:isolate;display:grid!important;place-items:center!important;background:radial-gradient(circle at 34% 26%,#2d91f3 0,#145fba 42%,#082d55 76%)!important}.student-avatar-default:after{content:"";position:absolute;inset:auto -20% -45% -20%;height:72%;border-radius:50%;background:rgba(255,255,255,.08);z-index:-1}.student-avatar-glyph{position:absolute;inset:0;display:grid;place-items:center;opacity:.42}.student-avatar-glyph svg{width:66%;height:66%;fill:none;stroke:#cfe9ff;stroke-width:2.2;stroke-linecap:round}.student-avatar-default>b{position:absolute;left:6px;bottom:4px;display:grid;place-items:center;min-width:25px;height:17px;padding:0 4px;border-radius:999px;background:rgba(4,26,49,.8);color:#fff;font-size:.5rem;letter-spacing:.04em;border:1px solid rgba(255,255,255,.18)}.student-avatar-default>i{position:absolute;right:6px;top:4px;color:#f3ca61;font-style:normal;font-size:.7rem;font-weight:950;text-shadow:0 1px 4px rgba(0,0,0,.3)}.comm-chat-avatar .student-avatar-default>b,.comm-chat-avatar .student-avatar-default>i,.comm-presence-avatar .student-avatar-default>b,.comm-presence-avatar .student-avatar-default>i{transform:scale(.85)}
@media(min-width:901px){.chat-math-sheet{align-items:center}.chat-math-sheet-card{border-radius:24px;max-height:min(620px,82svh)}.portal-chat-page-v517{grid-template-columns:290px minmax(0,1fr)}.portal-chat-page-v517 .portal-chat-conversations{min-width:0}.portal-chat-page-v517 .portal-chat-box-full{grid-template-rows:auto auto minmax(0,1fr) auto}}
@media(max-width:1100px){.comm-workspace-v517{grid-template-columns:minmax(220px,270px) minmax(0,1fr)}.comm-chat-live-actions{gap:3px}.comm-live-pill{padding:0 7px}.chat-math-grid{grid-template-columns:repeat(5,minmax(70px,1fr))}}
@media(max-width:900px){.comm-page-head-v517{display:grid}.comm-status-collapsible{min-width:0;width:100%}.comm-workspace-v517{grid-template-columns:1fr;height:auto;min-height:0}.comm-chat-list-v517{max-height:230px}.comm-chat-panel-v517{height:72svh;min-height:580px}.comm-chat-header-v517{grid-template-columns:48px minmax(0,1fr) auto!important}.comm-chat-header-title small{display:none}.comm-live-pill{width:33px;padding:0;justify-content:center;font-size:0}.comm-live-pill i{margin:0}.comm-live-pill.read{font-size:.55rem;width:auto;padding:0 7px}.comm-people-drawer{top:62px;max-height:calc(100% - 130px)}.chat-math-sheet-card{width:100%;max-height:72svh;border-radius:22px 22px 0 0}.chat-math-grid{grid-template-columns:repeat(4,minmax(64px,1fr));gap:5px}.chat-math-grid button{min-height:48px}.chat-math-sheet-card>footer{display:none}
 .portal-classic-shell .portal-chat-page-v517{grid-template-columns:1fr!important;grid-template-rows:60px minmax(0,1fr)!important}.portal-classic-shell .portal-chat-page-v517 .portal-chat-conversations{height:60px;min-height:60px;max-height:60px!important;border-right:0;border-bottom:1px solid rgba(112,169,220,.16)}.portal-classic-shell .portal-chat-page-v517 .portal-chat-list-head{display:none!important}.portal-classic-shell .portal-chat-page-v517 .portal-chat-tabs{height:60px!important;display:flex!important;flex-direction:row!important;align-items:center!important;gap:5px!important;padding:4px 6px!important;overflow-x:auto!important;overflow-y:hidden!important}.portal-classic-shell .portal-chat-page-v517 .portal-chat-tab{flex:0 0 min(188px,66vw);width:auto!important;height:52px!important;min-height:52px!important;padding:4px 6px!important}.portal-classic-shell .portal-chat-page-v517 .portal-chat-tab-avatar,.portal-classic-shell .portal-chat-page-v517 .portal-chat-tab-avatar img{width:34px!important;height:34px!important}.portal-classic-shell .portal-chat-page-v517 .portal-chat-tab strong{font-size:.66rem!important}.portal-classic-shell .portal-chat-page-v517 .portal-chat-tab small{font-size:.51rem!important}.portal-classic-shell .portal-chat-header-v517{min-height:49px!important;height:49px!important;padding:4px 8px!important}.portal-classic-shell .portal-chat-header-avatar,.portal-classic-shell .portal-chat-header-avatar img{width:35px;height:35px}.portal-classic-shell .portal-chat-header-v517 .portal-chat-title-wrap>strong{font-size:.7rem}.portal-classic-shell .portal-chat-header-v517 .portal-professor-status{font-size:.48rem;padding:2px 5px}.portal-classic-shell .portal-chat-page-v517 .chat-messages-v517{padding:8px 7px 10px!important;gap:5px!important}.portal-classic-shell .portal-chat-page-v517 .chat-message{max-width:93%!important}.portal-classic-shell .portal-chat-page-v517 .chat-bubble{padding:7px 9px}.portal-classic-shell .portal-chat-page-v517 .chat-text{font-size:.76rem}.portal-classic-shell .portal-chat-page-v517 .chat-composer-v517{padding:5px 6px max(5px,env(safe-area-inset-bottom))!important}.portal-classic-shell .portal-chat-page-v517 .chat-compose-row-v517{grid-template-columns:38px 43px minmax(0,1fr) 40px;gap:4px}.portal-classic-shell .portal-chat-page-v517 .chat-tool-btn,.portal-classic-shell .portal-chat-page-v517 .chat-math-open,.portal-classic-shell .portal-chat-page-v517 .chat-send-v517{height:38px;border-radius:11px}.portal-classic-shell .portal-chat-page-v517 .chat-tool-btn{width:38px}.portal-classic-shell .portal-chat-page-v517 .chat-math-open{width:43px}.portal-classic-shell .portal-chat-page-v517 .chat-math-open span{display:none}.portal-classic-shell .portal-chat-page-v517 .chat-send-v517{width:40px}.portal-classic-shell .portal-chat-page-v517 textarea{height:38px;min-height:38px!important;padding:8px 9px!important;border-radius:11px!important}.portal-classic-shell .portal-chat-page-v517 .chat-file-chip{font-size:.5rem;margin-bottom:3px}.portal-chat-page-open .portal-chat-float,body.public-portal.portal-chat-page-open .portal-chat-float{display:none!important}}
@media(max-width:560px){.comm-chat-panel-v517{height:70svh;min-height:530px}.comm-chat-list-v517{max-height:190px}.comm-chat-header-v517{grid-template-columns:44px minmax(0,1fr) auto!important}.comm-chat-avatar.header,.comm-chat-avatar.header>img,.comm-chat-avatar.header>.student-avatar-default{width:42px;height:42px}.comm-chat-header-title h3{font-size:.77rem!important}.comm-live-pill.read{font-size:0;width:34px;padding:0}.comm-live-pill.read:after{content:'✓✓';font-size:.58rem}.chat-messages-v517 .chat-message{max-width:91%}.chat-compose-row-v517{grid-template-columns:38px 43px minmax(0,1fr) 40px}.chat-tool-btn,.chat-math-open,.chat-send-v517{height:39px;border-radius:11px}.chat-tool-btn{width:38px}.chat-math-open{width:43px}.chat-math-open span{display:none}.chat-send-v517{width:40px}.chat-compose-row-v517 textarea{height:39px;min-height:39px!important;padding:8px 9px!important}.chat-math-grid{grid-template-columns:repeat(3,minmax(72px,1fr))}.chat-math-sheet-card{max-height:76svh}.chat-math-categories{padding-bottom:7px}.student-photo-avatar-wrap .student-avatar-default>b{font-size:.55rem}}

/* v5.1.7 — refinamento final do chat e teclado matemático */
.chat-math-quick{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;padding:0 13px 8px}.chat-math-quick>span{font-size:.52rem;font-weight:950;letter-spacing:.05em;text-transform:uppercase;color:#789ab6}.chat-math-quick>div{display:flex;gap:5px;overflow-x:auto;scrollbar-width:none}.chat-math-quick>div::-webkit-scrollbar{display:none}.chat-math-quick button{flex:0 0 auto;min-width:42px;height:30px;padding:0 8px;border:1px solid rgba(232,185,80,.28);border-radius:9px;background:rgba(231,182,75,.09);color:#f4d781;cursor:pointer}.chat-math-quick button strong{font-size:.64rem}.chat-math-quick button:hover{background:rgba(231,182,75,.18);border-color:#e7b64b}
.comm-chat-header-v517{position:relative}.comm-chat-mobile-back{display:none;width:34px;height:34px;border:1px solid rgba(98,160,216,.2);border-radius:11px;background:#0b2c4b;color:#dcedfb;font-size:1.05rem;place-items:center;cursor:pointer}.comm-chat-list-v517,.comm-chat-panel-v517{transition:opacity .18s ease,transform .18s ease}
@media(max-width:900px){
 .chat-math-sheet{align-items:end;pointer-events:none;padding-bottom:calc(50px + env(safe-area-inset-bottom))}.chat-math-backdrop{pointer-events:auto;background:transparent;backdrop-filter:none}.chat-math-sheet-card{pointer-events:auto;width:calc(100% - 10px);max-height:48svh;margin:0 5px;border-radius:18px;box-shadow:0 -12px 42px rgba(0,0,0,.44)}.chat-math-sheet-card>header{padding:9px 11px 6px}.chat-math-sheet-card>header small{display:none}.chat-math-search-row{margin:0 10px 6px}.chat-math-search-row input{padding:6px 2px!important}.chat-math-quick{padding:0 10px 6px}.chat-math-categories{padding:0 10px 6px}.chat-math-grid{padding:0 10px 8px;grid-template-columns:repeat(4,minmax(60px,1fr));max-height:25svh}.chat-math-grid button{min-height:42px;border-radius:10px}.chat-math-grid button strong{font-size:.68rem}.chat-math-grid button small{display:none}.math-keyboard-open{overflow:auto}
 .comm-chat-mobile-back{display:grid}.comm-chat-header-v517{grid-template-columns:34px 46px minmax(0,1fr) auto!important;gap:6px!important}.comm-workspace-v517.chat-focus .comm-chat-list-v517{display:none}.comm-workspace-v517.chat-focus .comm-chat-panel-v517{height:min(78svh,760px);min-height:560px}.comm-workspace-v517:not(.chat-focus) .comm-chat-panel-v517{min-height:520px}.comm-people-drawer{width:min(92vw,340px)}
}
@media(max-width:560px){.chat-math-grid{grid-template-columns:repeat(3,minmax(72px,1fr));max-height:24svh}.chat-math-sheet{padding-bottom:calc(47px + env(safe-area-inset-bottom))}.chat-math-quick{grid-template-columns:1fr}.chat-math-quick>span{display:none}.comm-workspace-v517.chat-focus .comm-chat-panel-v517{height:76svh;min-height:530px}}

/* v5.1.8 — chat mobile inspirado na usabilidade/visual do WhatsApp + notificações limpas */
.central-notify-btn{position:relative;width:38px;height:38px;display:grid;place-items:center;border:1px solid #d3e0eb;border-radius:12px;background:#fff;cursor:pointer;font-size:1rem}.central-notify-btn i{position:absolute;right:5px;top:5px;width:8px;height:8px;border-radius:50%;background:#d99a32;box-shadow:0 0 0 2px #fff}.central-notify-btn.active{background:#eaf8f1;border-color:#9dd6bc}.central-notify-btn.active i{background:#16a36a}.central-notify-btn.blocked{background:#fff0ef;border-color:#efb4af}.central-notify-btn.blocked i{background:#d94b43}.central-notify-btn.attention{animation:pjsNotifyPulse 2s ease-in-out infinite}@keyframes pjsNotifyPulse{50%{box-shadow:0 0 0 5px rgba(39,132,224,.08)}}
.portal-notify-top-btn{width:38px;height:38px;display:grid;place-items:center;border:1px solid #d6e3ee;border-radius:12px;background:#fff;color:#173d60;cursor:pointer}.portal-notification-settings{z-index:520!important}.portal-notification-settings:not(.hidden){position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);width:min(520px,calc(100vw - 24px));max-height:min(78svh,650px);overflow:auto;margin:0!important;padding:18px!important;border:1px solid #cedde9!important;border-radius:22px!important;box-shadow:0 30px 90px rgba(4,29,52,.34)!important;background:#fff!important}.notify-required-compact{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;margin:10px 0;border-radius:14px;background:#eef7ff;color:#31516d;font-size:.72rem}.notify-required-compact strong{color:#1471c9}.notify-pref-select{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:9px!important}.notify-pref-select select{width:100%}

/* Visual de mensageiro familiar */
.comm-chat-panel-v517,.portal-chat-box-full{background:#0b141a!important}.comm-chat-header-v517,.portal-chat-header-v517{background:#202c33!important;border-bottom:1px solid rgba(255,255,255,.06)!important}.comm-chat-wallpaper-v517,.portal-chat-wallpaper-v517{background:#0b141a!important}.comm-chat-wallpaper-v517:before,.portal-chat-wallpaper-v517:before{background:linear-gradient(rgba(11,20,26,.91),rgba(11,20,26,.94)),url('/assets/chat/chat-wallpaper.webp') center/cover no-repeat!important;opacity:.32!important}.chat-messages-v517{padding:12px 5.2% 14px!important;gap:4px!important}.chat-messages-v517 .chat-message{max-width:min(78%,760px);gap:5px}.chat-messages-v517 .chat-bubble{background:#202c33!important;border:0!important;border-radius:8px!important;padding:7px 9px 6px!important;box-shadow:0 1px 1px rgba(0,0,0,.22)!important}.chat-messages-v517 .chat-message.mine .chat-bubble{background:#005c4b!important;border-radius:8px!important}.chat-messages-v517 .chat-text{font-size:.88rem!important;line-height:1.45!important;color:#e9edef!important}.chat-messages-v517 .chat-author{font-size:.67rem;color:#53bdeb}.chat-messages-v517 .chat-bubble footer{margin-top:2px!important;color:#8696a0!important}.chat-messages-v517 .chat-message.mine .chat-read-state{color:#53bdeb!important}.chat-message-avatar{width:30px!important;height:30px!important;border-radius:50%!important;border:0!important}.chat-composer-v517{padding:7px 8px max(7px,env(safe-area-inset-bottom))!important;background:#202c33!important;border-top:0!important}.chat-compose-row-v517{display:grid!important;grid-template-columns:42px 46px minmax(0,1fr) 44px!important;gap:5px!important;align-items:end!important}.chat-compose-row-v517 textarea{height:42px;min-height:42px!important;max-height:112px!important;padding:10px 13px!important;border:0!important;border-radius:22px!important;background:#2a3942!important;color:#e9edef!important;box-shadow:none!important;line-height:1.35}.chat-compose-row-v517 textarea::placeholder{color:#8696a0}.chat-tool-btn,.chat-math-open,.chat-send-v517{height:42px!important;border:0!important;border-radius:50%!important;display:grid!important;place-items:center!important}.chat-tool-btn{width:42px!important;background:transparent!important;color:#aebac1!important}.chat-math-open{width:46px!important;background:transparent!important;color:#aebac1!important}.chat-math-open b{font-size:1.05rem}.chat-math-open span{font-size:.51rem}.chat-send-v517{width:42px!important;background:#00a884!important;color:white!important;box-shadow:none!important}.chat-send-v517:hover{background:#06b895!important}.chat-file-chip{margin:0 0 5px 4px!important;width:max-content;max-width:80%;border-radius:999px!important;background:#2a3942!important;color:#d9e3e8!important}
.chat-mobile-select{margin:auto;min-height:220px;display:grid;place-content:center;justify-items:center;text-align:center;gap:5px;color:#8696a0}.chat-mobile-select strong{color:#e9edef;font-size:1rem}.chat-mobile-select span{font-size:.72rem}

/* Teclado matemático: fórmula renderizada, nunca código LaTeX visível */
.chat-math-sheet-card{background:#111b21!important;border-color:rgba(255,255,255,.08)!important}.chat-math-sheet-card>header strong{color:#e9edef}.chat-math-sheet-card>header small{color:#8696a0}.chat-math-search-row{background:#202c33!important;border-color:transparent!important}.chat-math-search-row input{color:#e9edef!important}.chat-math-categories button{background:#202c33!important;color:#aebac1!important;border-color:transparent!important}.chat-math-categories button.active{background:#005c4b!important;color:#fff!important}.chat-math-grid button,.chat-math-quick button{background:#202c33!important;border-color:rgba(255,255,255,.06)!important;color:#e9edef!important}.chat-math-grid button:hover,.chat-math-quick button:hover{background:#2a3942!important;border-color:#00a884!important}.chat-math-expression{min-height:23px;display:grid;place-items:center;font-size:.78rem;font-weight:800;color:#f4f7f8;white-space:nowrap}.chat-math-expression mjx-container{margin:0!important;font-size:112%!important;pointer-events:none}.chat-math-grid button small,.chat-math-quick button small{display:block;margin-top:2px;color:#8696a0!important;font-size:.48rem!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-math-sheet-card>footer{color:#8696a0!important}.chat-math-sheet-card>footer code{display:none!important}

/* Portal: lista de conversas -> conversa, como mensageiro no celular */
.portal-chat-mobile-back{display:none;width:38px;height:38px;border:0;border-radius:50%;background:transparent;color:#e9edef;font-size:1.6rem;place-items:center;cursor:pointer}.portal-chat-tab-avatar{position:relative}.portal-chat-tab-avatar>i{position:absolute;right:0;bottom:0;width:11px;height:11px;border-radius:50%;background:#667781;border:2px solid #111b21}.portal-chat-tab-avatar>i.online{background:#25d366}

@media(max-width:900px){
 body.central-chat-focus{overflow:hidden}
 .comm-workspace-v517:not(.chat-focus) .comm-chat-panel-v517{display:none!important}
 .comm-workspace-v517:not(.chat-focus){display:block!important}.comm-workspace-v517:not(.chat-focus) .comm-chat-list-v517{max-height:none!important;min-height:calc(100svh - 195px);border-radius:16px!important}.comm-chat-list-items-v517{max-height:calc(100svh - 315px)!important}
 .comm-workspace-v517.chat-focus .comm-chat-panel-v517{position:fixed!important;inset:0!important;z-index:1000!important;width:100vw!important;height:100svh!important;min-height:0!important;border:0!important;border-radius:0!important;grid-template-rows:58px minmax(0,1fr) auto!important}.comm-workspace-v517.chat-focus .comm-chat-list-v517{display:none!important}.comm-chat-header-v517{min-height:58px!important;height:58px!important;padding:5px 7px!important;grid-template-columns:36px 42px minmax(0,1fr) auto!important}.comm-chat-mobile-back{display:grid!important;border:0!important;background:transparent!important;font-size:1.55rem}.comm-chat-header-title>span{display:none}.comm-chat-header-title h3{font-size:.82rem!important}.comm-chat-header-title small{display:block!important;font-size:.56rem!important;color:#8696a0!important}.comm-chat-live-actions{gap:2px}.comm-live-pill{border:0!important;background:transparent!important;padding:0 5px!important;width:auto!important}.comm-live-pill.read{font-size:0!important}.comm-live-pill.read:after{content:'✓✓';font-size:.62rem;color:#53bdeb}.comm-people-drawer{top:58px!important;right:5px!important;max-height:calc(100svh - 120px)!important;background:#111b21!important}
 .chat-messages-v517{padding:9px 3.5% 11px!important}.chat-messages-v517 .chat-message{max-width:88%!important}.chat-messages-v517 .chat-text{font-size:.9rem!important}.chat-message-avatar{display:none!important}
 .chat-compose-row-v517{grid-template-columns:38px 42px minmax(0,1fr) 42px!important;gap:3px!important}.chat-tool-btn{width:38px!important}.chat-math-open{width:42px!important}.chat-math-open span{display:none!important}.chat-send-v517{width:42px!important}
 .chat-math-sheet{align-items:end!important;padding:0!important;z-index:1100!important}.chat-math-backdrop{background:rgba(0,0,0,.2)!important}.chat-math-sheet-card{width:100%!important;max-height:58svh!important;margin:0!important;border-radius:18px 18px 0 0!important;padding-bottom:max(5px,env(safe-area-inset-bottom))}.chat-math-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;max-height:31svh!important}.chat-math-grid button{min-height:54px!important;padding:4px!important}.chat-math-quick{grid-template-columns:1fr!important}.chat-math-quick>span{display:none!important}

 body.public-portal.portal-chat-page-open{overflow:hidden!important}.portal-chat-page-open .portal-chat-view{position:fixed!important;inset:0 0 calc(60px + env(safe-area-inset-bottom)) 0!important;z-index:135!important;height:auto!important;margin:0!important;background:#0b141a!important}.portal-chat-page-v517{height:100%!important;display:block!important;background:#0b141a!important}.portal-chat-page-v517:not(.chat-focus) .portal-chat-box-full{display:none!important}.portal-chat-page-v517:not(.chat-focus) .portal-chat-conversations{display:flex!important;width:100%;height:100%!important;max-height:none!important;border:0!important;background:#111b21!important}.portal-chat-page-v517:not(.chat-focus) .portal-chat-list-head{display:flex!important;min-height:62px;padding:12px 15px!important;background:#202c33!important}.portal-chat-page-v517:not(.chat-focus) .portal-chat-tabs{height:auto!important;display:flex!important;flex-direction:column!important;gap:0!important;padding:0!important;overflow-y:auto!important;overflow-x:hidden!important}.portal-chat-page-v517:not(.chat-focus) .portal-chat-tab{flex:none!important;width:100%!important;height:68px!important;min-height:68px!important;padding:8px 12px!important;border:0!important;border-radius:0!important;background:#111b21!important;border-bottom:1px solid rgba(255,255,255,.055)!important;grid-template-columns:48px minmax(0,1fr) auto!important}.portal-chat-page-v517:not(.chat-focus) .portal-chat-tab.active{box-shadow:none!important}.portal-chat-page-v517:not(.chat-focus) .portal-chat-tab strong{font-size:.82rem!important;color:#e9edef!important}.portal-chat-page-v517:not(.chat-focus) .portal-chat-tab small{font-size:.63rem!important;color:#8696a0!important}.portal-chat-page-v517:not(.chat-focus) .portal-chat-tab-avatar,.portal-chat-page-v517:not(.chat-focus) .portal-chat-tab-avatar img{width:46px!important;height:46px!important;border-radius:50%!important}
 .portal-chat-page-v517.chat-focus .portal-chat-conversations{display:none!important}.portal-chat-page-v517.chat-focus .portal-chat-box-full{display:grid!important;width:100%;height:100%!important;grid-template-rows:58px auto minmax(0,1fr) auto!important}.portal-chat-mobile-back{display:grid!important}.portal-chat-header-v517{min-height:58px!important;height:58px!important;padding:5px 8px!important;gap:6px!important}.portal-chat-header-avatar,.portal-chat-header-avatar img{width:40px!important;height:40px!important;border-radius:50%!important}.portal-chat-header-v517 .portal-chat-title-wrap>strong{font-size:.8rem!important}.portal-chat-header-v517 .portal-chat-title-wrap>span{font-size:.55rem!important}.portal-chat-header-v517 .portal-professor-status{font-size:.52rem!important}.portal-chat-page-v517.chat-focus .chat-messages-v517{padding:9px 3.5% 11px!important}.portal-chat-page-v517.chat-focus .chat-message{max-width:88%!important}.portal-chat-page-v517.chat-focus .chat-composer-v517{padding:6px 7px max(6px,env(safe-area-inset-bottom))!important}.portal-chat-page-v517.chat-focus .chat-compose-row-v517{grid-template-columns:38px 42px minmax(0,1fr) 42px!important}.portal-chat-page-v517.chat-focus .chat-tool-btn{width:38px!important}.portal-chat-page-v517.chat-focus .chat-math-open{width:42px!important}.portal-chat-page-v517.chat-focus .chat-send-v517{width:42px!important}
 .portal-notification-settings:not(.hidden){top:auto!important;bottom:10px!important;transform:translateX(-50%)!important;max-height:72svh!important;border-radius:20px!important}
}

/* v5.1.8 final — no celular, a conversa usa a tela inteira; o menu do Portal reaparece ao voltar para a lista. */
@media(max-width:900px){
 body.public-portal.portal-chat-conversation-open .portal-bottom-nav{display:none!important}
 body.public-portal.portal-chat-conversation-open .portal-chat-view{inset:0!important}
 body.public-portal.portal-chat-conversation-open .portal-chat-page-v517.chat-focus .portal-chat-box-full{height:100svh!important}
 #centralChatOnlinePill{font-size:0!important;min-width:28px!important;padding:0 4px!important}
 #centralChatOnlinePill i{width:10px!important;height:10px!important;margin:0!important;background:#667781!important}
 #centralChatOnlinePill.is-online i{background:#25d366!important;box-shadow:0 0 0 2px rgba(37,211,102,.13)!important}
 #centralChatReadPill{min-width:28px!important;padding:0 4px!important}
}

/* v5.1.9 — Chat Mobile 2.0 + teclado matemático visual */
:root{--chat-vv-height:100dvh;--chat-vv-top:0px}
.comm-chat-panel-v517{--chat-bg:#06182b;--chat-head:#0b2a49;--chat-surface:#123b5f;--chat-input:#123553;--chat-mine:#175f9a;--chat-accent:#f0b83f;--chat-accent-2:#2f8eea;--chat-text:#f3f8fc;--chat-muted:#9cb5c9;--chat-wall-tint:rgba(4,22,39,.82)}
.public-portal:not(.public-reinforcement-portal) .portal-chat-box-full{--chat-bg:#07182d;--chat-head:#102c4c;--chat-surface:#163d61;--chat-input:#153957;--chat-mine:#1d63e2;--chat-accent:#efb73e;--chat-accent-2:#55a8ff;--chat-text:#f4f8ff;--chat-muted:#a9bdd0;--chat-wall-tint:rgba(6,22,42,.80)}
.public-reinforcement-portal .portal-chat-box-full{--chat-bg:#071d27;--chat-head:#0b3039;--chat-surface:#16434b;--chat-input:#153b43;--chat-mine:#0d766f;--chat-accent:#64c8d7;--chat-accent-2:#36a7b8;--chat-text:#f1fbfc;--chat-muted:#a4c2c7;--chat-wall-tint:rgba(5,28,36,.80)}
.comm-chat-panel-v517,.portal-chat-box-full{background:var(--chat-bg)!important;color:var(--chat-text)!important}
.comm-chat-header-v517,.portal-chat-header-v517{background:var(--chat-head)!important}
.comm-chat-wallpaper-v517,.portal-chat-wallpaper-v517{position:relative;background:var(--chat-bg)!important;overflow:hidden}
.comm-chat-wallpaper-v517:before,.portal-chat-wallpaper-v517:before{content:"";position:absolute!important;inset:0!important;background-image:linear-gradient(var(--chat-wall-tint),var(--chat-wall-tint)),url('/assets/chat/chat-wallpaper.webp')!important;background-position:center!important;background-size:cover!important;background-repeat:no-repeat!important;opacity:.72!important;pointer-events:none}
.comm-chat-wallpaper-v517 .chat-messages-v517,.portal-chat-wallpaper-v517 .chat-messages-v517{position:relative;z-index:1}
.chat-messages-v517 .chat-bubble{background:var(--chat-surface)!important;color:var(--chat-text)!important}
.chat-messages-v517 .chat-message.mine .chat-bubble{background:var(--chat-mine)!important}
.chat-messages-v517 .chat-text{color:var(--chat-text)!important}.chat-messages-v517 .chat-bubble footer{color:var(--chat-muted)!important}
.chat-messages-v517 .chat-message.mine .chat-read-state{color:var(--chat-accent-2)!important}
.chat-composer-v517{background:var(--chat-head)!important;position:relative;z-index:40;transition:transform .16s ease,bottom .16s ease}
.chat-compose-row-v517 textarea{background:var(--chat-input)!important;color:var(--chat-text)!important}
.chat-compose-row-v517 textarea::placeholder{color:var(--chat-muted)!important}.chat-tool-btn,.chat-math-open{color:var(--chat-muted)!important}.chat-send-v517{background:var(--chat-accent-2)!important}.public-reinforcement-portal .chat-send-v517{background:var(--chat-accent-2)!important}
.chat-math-drafts{display:flex;gap:6px;flex-wrap:wrap;max-height:84px;overflow:auto;padding:0 4px}.chat-math-drafts:empty{display:none}.chat-math-draft-chip{display:inline-flex;align-items:center;gap:3px;padding:3px 5px 3px 9px;border:1px solid color-mix(in srgb,var(--chat-accent) 45%,transparent);border-radius:999px;background:color-mix(in srgb,var(--chat-input) 85%,black);color:var(--chat-text);max-width:100%}.chat-math-chip-expression{min-width:34px;max-width:240px;overflow:hidden;border:0;background:transparent;color:inherit;padding:2px 3px;cursor:pointer}.chat-math-chip-expression mjx-container{margin:0!important;font-size:94%!important}.chat-math-chip-remove{width:24px;height:24px;border:0;border-radius:50%;background:rgba(255,255,255,.09);color:var(--chat-muted);font-size:1rem;line-height:1;cursor:pointer}
.chat-math-photomath{display:grid;grid-template-rows:auto auto auto minmax(0,1fr) auto;gap:8px;width:min(760px,calc(100vw - 22px));max-height:min(690px,78dvh);padding:10px 11px 9px!important;background:color-mix(in srgb,var(--chat-bg) 96%,#000)!important;border:1px solid color-mix(in srgb,var(--chat-accent-2) 25%,transparent)!important}.chat-math-photomath>header{display:flex;align-items:center;justify-content:space-between;gap:10px}.chat-math-photomath>header>div{display:grid;gap:1px}.chat-math-photomath>header strong{color:var(--chat-text)!important}.chat-math-photomath>header small{color:var(--chat-muted)!important}.chat-math-message-context{display:grid;gap:2px;padding:6px 10px;border-radius:12px;background:color-mix(in srgb,var(--chat-head) 78%,transparent);border:1px solid rgba(255,255,255,.06);min-height:44px}.chat-math-message-context>span{text-transform:uppercase;font-size:.48rem;font-weight:900;letter-spacing:.09em;color:var(--chat-muted)}.chat-math-message-context>strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.69rem;color:var(--chat-text)}
.chat-math-editor{display:grid;gap:7px;padding:8px;border-radius:15px;background:color-mix(in srgb,var(--chat-input) 82%,black);border:1px solid color-mix(in srgb,var(--chat-accent) 28%,transparent)}.chat-math-editor-preview{height:58px;display:grid;place-items:center;overflow:auto;border-radius:10px;background:rgba(255,255,255,.035);color:var(--chat-text);font-size:1.1rem}.chat-math-editor-preview mjx-container{margin:0!important;font-size:118%!important}.chat-math-placeholder{font-size:.68rem;color:var(--chat-muted);font-weight:700}.chat-math-editor-actions{display:grid;grid-template-columns:38px 38px 38px 58px minmax(120px,1fr);gap:5px}.chat-math-editor-actions button{min-height:34px;border:0;border-radius:9px;background:color-mix(in srgb,var(--chat-head) 78%,white 3%);color:var(--chat-text);font-weight:850;cursor:pointer}.chat-math-editor-actions button.primary{background:var(--chat-accent-2);color:white}.chat-math-editor-actions button:disabled{opacity:.4}
.chat-math-keyboard-layout{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(200px,.72fr);gap:8px;min-height:0}.chat-math-keypad{display:grid;grid-template-columns:repeat(5,minmax(42px,1fr));gap:5px}.chat-math-keypad button,.chat-math-template-grid button{min-height:42px;border:1px solid rgba(255,255,255,.06);border-radius:10px;background:color-mix(in srgb,var(--chat-head) 82%,white 2%);color:var(--chat-text);font-size:.92rem;font-weight:850;cursor:pointer;box-shadow:0 1px 0 rgba(255,255,255,.025) inset}.chat-math-keypad button:active,.chat-math-template-grid button:active{transform:scale(.97);background:color-mix(in srgb,var(--chat-accent-2) 25%,var(--chat-head))}.chat-math-template-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.chat-math-template-grid button span{font-size:.75rem}
.chat-math-more{min-height:0;border-top:1px solid rgba(255,255,255,.06);padding-top:5px}.chat-math-more>summary{cursor:pointer;color:var(--chat-muted);font-size:.65rem;font-weight:850;padding:3px 1px;list-style:none}.chat-math-more>summary::-webkit-details-marker{display:none}.chat-math-more[open]{overflow:auto}.chat-math-more .chat-math-search-row{margin-top:4px}.chat-math-more .chat-math-grid{max-height:190px;overflow:auto}.chat-math-more .chat-math-expression{font-size:.7rem}.chat-math-more .chat-math-expression mjx-container{font-size:100%!important}.chat-math-photomath>footer{font-size:.57rem;color:var(--chat-muted)!important;text-align:center}

@media(max-width:900px){
 .comm-workspace-v517.chat-focus .comm-chat-panel-v517{top:var(--chat-vv-top)!important;bottom:auto!important;height:var(--chat-vv-height)!important;min-height:0!important;inset-inline:0!important}
 body.public-portal.portal-chat-conversation-open .portal-chat-view{top:var(--chat-vv-top)!important;bottom:auto!important;height:var(--chat-vv-height)!important;min-height:0!important}
 body.public-portal.portal-chat-conversation-open .portal-chat-page-v517.chat-focus .portal-chat-box-full{height:var(--chat-vv-height)!important;max-height:var(--chat-vv-height)!important;min-height:0!important}
 .native-keyboard-active .chat-messages-v517{padding-bottom:16px!important}.native-keyboard-active .chat-composer-v517{box-shadow:0 -8px 24px rgba(0,0,0,.18)}
 .math-keyboard-active{position:relative!important}.math-keyboard-active .chat-composer-v517{position:fixed!important;left:0!important;right:0!important;bottom:var(--math-kb-height,330px)!important;z-index:1115!important;box-shadow:0 -8px 28px rgba(0,0,0,.28)}.math-keyboard-active .chat-wallpaper{padding-bottom:calc(var(--math-kb-height,330px) + var(--chat-composer-height,58px))!important}
 .chat-math-sheet{position:fixed!important;inset:auto 0 0 0!important;height:var(--math-kb-height,330px)!important;align-items:stretch!important;padding:0!important;z-index:1110!important;background:transparent!important}.chat-math-backdrop{display:none!important}.chat-math-photomath{width:100%!important;height:100%!important;max-height:none!important;margin:0!important;border-radius:18px 18px 0 0!important;padding:8px 8px max(7px,env(safe-area-inset-bottom))!important;grid-template-rows:auto auto auto minmax(0,1fr) auto!important;gap:5px!important}.chat-math-photomath>header small{display:none}.chat-math-message-context{min-height:36px;padding:4px 8px}.chat-math-editor{padding:6px;gap:5px}.chat-math-editor-preview{height:46px;font-size:.95rem}.chat-math-editor-actions{grid-template-columns:34px 34px 34px 48px minmax(96px,1fr);gap:4px}.chat-math-editor-actions button{min-height:30px;font-size:.64rem}.chat-math-keyboard-layout{grid-template-columns:1fr 112px;gap:5px;overflow:hidden}.chat-math-keypad{grid-template-columns:repeat(5,minmax(38px,1fr));gap:4px}.chat-math-keypad button{min-height:38px;font-size:.84rem;border-radius:8px}.chat-math-template-grid{grid-template-columns:1fr;gap:4px;overflow:auto}.chat-math-template-grid button{min-height:34px;border-radius:8px;font-size:.64rem}.chat-math-template-grid button:nth-child(n+7){display:none}.chat-math-more{position:absolute;left:8px;right:8px;bottom:calc(100% + 6px);max-height:42dvh;padding:8px;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:color-mix(in srgb,var(--chat-bg) 97%,black);box-shadow:0 -16px 46px rgba(0,0,0,.28)}.chat-math-more:not([open]){position:static;max-height:none;padding:0;border:0;background:transparent;box-shadow:none}.chat-math-more[open]>summary{margin-bottom:4px}.chat-math-more .chat-math-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;max-height:25dvh!important}.chat-math-more .chat-math-grid button{min-height:48px!important}.chat-math-photomath>footer{display:none}
 .chat-math-drafts{max-height:58px;overflow-x:auto;overflow-y:hidden;flex-wrap:nowrap;padding-bottom:3px}.chat-math-draft-chip{flex:0 0 auto}.chat-math-chip-expression{max-width:170px}
 .chat-compose-row-v517{grid-template-columns:38px 40px minmax(0,1fr) 42px!important}.chat-compose-row-v517 textarea{font-size:16px!important;max-height:96px!important}.chat-math-open{width:40px!important}.chat-tool-btn{width:38px!important}
}
@media(max-width:430px){.chat-math-keyboard-layout{grid-template-columns:minmax(0,1fr) 92px}.chat-math-keypad button{min-height:36px}.chat-math-template-grid button{font-size:.58rem}.chat-math-editor-preview{height:42px}.chat-math-editor-actions{grid-template-columns:30px 30px 30px 44px minmax(88px,1fr)}.chat-math-editor-actions button{padding:0 3px}}
.chat-date-separator{position:sticky;top:5px;z-index:3;display:flex;justify-content:center;margin:7px 0}.chat-date-separator span{display:inline-flex;align-items:center;min-height:25px;padding:4px 10px;border-radius:8px;background:color-mix(in srgb,var(--chat-head) 90%,transparent);box-shadow:0 1px 4px rgba(0,0,0,.18);color:var(--chat-muted);font-size:.58rem;font-weight:800;letter-spacing:.02em}
.chat-messages-v517 .chat-bubble{position:relative}.chat-messages-v517 .chat-message.mine .chat-bubble:after{content:"";position:absolute;right:-5px;top:0;border-top:7px solid var(--chat-mine);border-right:6px solid transparent}.chat-messages-v517 .chat-message.other .chat-bubble:before{content:"";position:absolute;left:-5px;top:0;border-top:7px solid var(--chat-surface);border-left:6px solid transparent}.chat-messages-v517 .chat-bubble footer{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:4px!important;min-height:13px}.chat-messages-v517 .chat-bubble footer time{font-size:.5rem!important}.chat-messages-v517 .chat-read-state{font-size:.62rem!important;letter-spacing:-.08em}.chat-messages-v517 .chat-text mjx-container{max-width:100%;overflow-x:auto;overflow-y:hidden;padding:1px 0}.chat-messages-v517 .chat-text{overflow-wrap:anywhere}
@media(max-width:900px){.chat-messages-v517{scroll-padding-bottom:90px}.chat-date-separator{top:3px}.chat-messages-v517 .chat-message{margin-block:1px!important}.chat-messages-v517 .chat-bubble{padding:7px 9px 5px!important}.chat-messages-v517 .chat-text{font-size:.91rem!important;line-height:1.42!important}}

/* v5.2.0 · Chat com conteúdo do Portal + respostas específicas */
.chat-composer-v520{position:relative}.chat-composer-v520 .chat-compose-row-v517{grid-template-columns:42px 42px 42px minmax(0,1fr) 44px!important;align-items:end}.chat-composer-v520 .chat-tool-btn,.chat-composer-v520 .chat-math-open{width:42px!important;height:42px!important;min-height:42px!important;border-radius:50%!important;display:grid!important;place-items:center!important}.chat-composer-v520 .chat-portal-open{border:1px solid color-mix(in srgb,var(--chat-accent) 38%,transparent);background:color-mix(in srgb,var(--chat-head) 88%,white 2%);color:var(--chat-text);cursor:pointer}.chat-composer-v520 .chat-portal-open span{font-size:1.05rem}.chat-composer-v520 .chat-portal-open:after{content:"Portal";position:absolute;opacity:0;pointer-events:none}.chat-composer-v520 textarea{min-width:0}
.chat-reply-draft{display:grid;grid-template-columns:3px minmax(0,1fr) 30px;gap:9px;align-items:center;margin:0 2px 7px;padding:7px 8px;border-radius:12px;background:color-mix(in srgb,var(--chat-input) 86%,black);border:1px solid rgba(255,255,255,.07);box-shadow:0 5px 18px rgba(0,0,0,.12)}.chat-reply-draft.hidden{display:none}.chat-reply-draft>i{align-self:stretch;border-radius:99px;background:var(--chat-accent-2)}.chat-reply-draft>div{display:grid;min-width:0;gap:1px}.chat-reply-draft small{font-size:.51rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:var(--chat-muted)}.chat-reply-draft strong{font-size:.7rem;color:var(--chat-accent);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-reply-draft span{font-size:.66rem;color:var(--chat-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-reply-draft>button{width:28px;height:28px;border:0;border-radius:50%;background:rgba(255,255,255,.07);color:var(--chat-muted);font-size:1.08rem;cursor:pointer}
.chat-bubble{position:relative}.chat-reply-action{position:absolute;top:50%;transform:translateY(-50%);right:calc(100% + 8px);width:28px;height:28px;border:1px solid rgba(255,255,255,.08);border-radius:50%;background:color-mix(in srgb,var(--chat-head) 94%,black);color:var(--chat-muted);display:grid;place-items:center;opacity:0;pointer-events:none;cursor:pointer;transition:.16s ease;box-shadow:0 5px 16px rgba(0,0,0,.18)}.chat-message.other .chat-reply-action{left:calc(100% + 8px);right:auto}.chat-message:hover .chat-reply-action,.chat-reply-action:focus-visible{opacity:1;pointer-events:auto}.chat-reply-quote{display:grid;width:100%;gap:2px;text-align:left;margin:-2px 0 7px;padding:6px 8px;border:0;border-left:3px solid var(--chat-accent-2);border-radius:7px;background:rgba(0,0,0,.16);color:inherit;cursor:pointer}.chat-reply-quote strong{font-size:.62rem;color:var(--chat-accent)}.chat-reply-quote span{font-size:.63rem;color:color-mix(in srgb,var(--chat-text) 78%,var(--chat-muted));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-message-highlight .chat-bubble{animation:chatReplyHighlight 1.05s ease}@keyframes chatReplyHighlight{0%,100%{box-shadow:0 8px 24px rgba(0,0,0,.14)}35%{box-shadow:0 0 0 3px color-mix(in srgb,var(--chat-accent) 55%,transparent),0 8px 24px rgba(0,0,0,.2)}}
.chat-resource-cards{display:grid;gap:6px;margin-top:7px}.chat-resource-card{display:grid;grid-template-columns:36px minmax(0,1fr) 18px;align-items:center;gap:8px;width:min(100%,390px);padding:8px 9px;text-align:left;border:1px solid rgba(255,255,255,.09);border-radius:11px;background:rgba(0,0,0,.15);color:inherit;cursor:pointer}.chat-resource-card:hover,.chat-resource-card.chat-resource-peek{border-color:color-mix(in srgb,var(--chat-accent) 55%,transparent);background:color-mix(in srgb,var(--chat-head) 68%,transparent)}.chat-resource-icon{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:color-mix(in srgb,var(--chat-accent) 14%,rgba(255,255,255,.03));font-size:1rem}.chat-resource-card>span:nth-child(2){display:grid;min-width:0;gap:1px}.chat-resource-card small{font-size:.49rem;text-transform:uppercase;letter-spacing:.07em;font-weight:900;color:var(--chat-accent)}.chat-resource-card strong{font-size:.7rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-resource-card em{font-style:normal;font-size:.57rem;color:var(--chat-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-resource-card>b{color:var(--chat-muted);font-size:1.1rem}
.chat-portal-drafts{display:flex;gap:5px;overflow-x:auto;padding:0 3px}.chat-portal-drafts:empty{display:none}.chat-portal-draft{flex:0 0 auto;max-width:240px;display:grid;grid-template-columns:auto minmax(0,1fr) 23px;align-items:center;gap:5px;padding:4px 5px 4px 8px;border:1px solid color-mix(in srgb,var(--chat-accent) 30%,transparent);border-radius:999px;background:color-mix(in srgb,var(--chat-head) 85%,black);color:var(--chat-text)}.chat-portal-draft>span{font-size:.78rem}.chat-portal-draft strong{font-size:.59rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-portal-draft button{width:22px;height:22px;border:0;border-radius:50%;background:rgba(255,255,255,.08);color:var(--chat-muted);cursor:pointer}
.chat-portal-sheet{position:fixed;inset:0;z-index:10070;display:grid;place-items:center;padding:16px}.chat-portal-sheet.hidden{display:none}.chat-portal-backdrop{position:absolute;inset:0;border:0;background:rgba(0,8,18,.67);backdrop-filter:blur(5px)}.chat-portal-card{position:relative;width:min(620px,calc(100vw - 28px));max-height:min(650px,82dvh);display:grid;grid-template-rows:auto auto auto minmax(0,1fr) auto;overflow:hidden;border:1px solid color-mix(in srgb,var(--chat-accent) 30%,transparent);border-radius:20px;background:color-mix(in srgb,var(--chat-bg) 97%,#000);color:var(--chat-text);box-shadow:0 26px 80px rgba(0,0,0,.42)}.chat-portal-card>header{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:13px 14px 9px}.chat-portal-card>header>div{display:grid;gap:2px}.chat-portal-card>header strong{font-size:.9rem}.chat-portal-card>header small{font-size:.59rem;color:var(--chat-muted)}.chat-portal-card>header>button{width:30px;height:30px;border:0;border-radius:50%;background:rgba(255,255,255,.07);color:var(--chat-text);font-size:1.05rem;cursor:pointer}.chat-portal-search{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:center;margin:0 13px 8px;padding:0 9px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:var(--chat-input)}.chat-portal-search input{border:0!important;background:transparent!important;box-shadow:none!important;color:var(--chat-text)!important;padding:9px 2px!important}.chat-portal-filter{display:flex;gap:5px;overflow-x:auto;padding:0 13px 9px}.chat-portal-filter button{flex:0 0 auto;border:1px solid rgba(255,255,255,.08);border-radius:999px;background:var(--chat-head);color:var(--chat-muted);padding:6px 10px;font-size:.56rem;font-weight:850;cursor:pointer}.chat-portal-filter button.active{background:var(--chat-accent-2);color:white;border-color:var(--chat-accent-2)}.chat-portal-list{overflow:auto;padding:0 12px 10px;display:grid;gap:6px;align-content:start}.chat-portal-item{display:grid;grid-template-columns:40px minmax(0,1fr) 24px;align-items:center;gap:8px;text-align:left;padding:8px;border:1px solid rgba(255,255,255,.07);border-radius:12px;background:color-mix(in srgb,var(--chat-head) 74%,transparent);color:var(--chat-text);cursor:pointer}.chat-portal-item:hover,.chat-portal-item.selected{border-color:color-mix(in srgb,var(--chat-accent) 55%,transparent);background:color-mix(in srgb,var(--chat-accent) 11%,var(--chat-head))}.chat-portal-item>span{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:rgba(255,255,255,.05);font-size:1rem}.chat-portal-item>div{display:grid;min-width:0;gap:1px}.chat-portal-item small{font-size:.49rem;text-transform:uppercase;color:var(--chat-accent);font-weight:900}.chat-portal-item strong{font-size:.72rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-portal-item em{font-style:normal;font-size:.57rem;color:var(--chat-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-portal-item>b{color:var(--chat-accent);font-size:1.1rem}.chat-portal-empty,.chat-portal-loading{min-height:150px;display:grid;place-items:center;align-content:center;gap:4px;text-align:center;color:var(--chat-muted);font-size:.68rem}.chat-portal-empty strong{color:var(--chat-text)}.chat-portal-card>footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 12px;border-top:1px solid rgba(255,255,255,.07)}.chat-portal-card>footer span{font-size:.56rem;color:var(--chat-muted)}.chat-portal-card>footer button{border:0;border-radius:9px;padding:8px 14px;background:var(--chat-accent-2);color:white;font-weight:850;cursor:pointer}.chat-portal-picker-open{overflow:hidden}
@media(max-width:900px){
 .chat-composer-v520 .chat-compose-row-v517{grid-template-columns:36px 36px 38px minmax(0,1fr) 42px!important;gap:5px!important}.chat-composer-v520 .chat-tool-btn,.chat-composer-v520 .chat-math-open{width:36px!important;height:36px!important;min-height:36px!important}.chat-composer-v520 .chat-math-open{width:38px!important}.chat-composer-v520{padding-inline:8px!important}.chat-reply-draft{margin-bottom:5px;padding:5px 7px}.chat-reply-action{display:none!important}.chat-reply-quote{margin-bottom:5px;padding:5px 7px}.chat-resource-card{grid-template-columns:32px minmax(0,1fr) 16px;padding:7px}.chat-resource-icon{width:30px;height:30px}.chat-resource-card strong{font-size:.68rem}.chat-portal-sheet{place-items:end center;padding:0}.chat-portal-backdrop{background:rgba(0,8,18,.48);backdrop-filter:blur(2px)}.chat-portal-card{width:100%;max-height:72dvh;border-radius:18px 18px 0 0;padding-bottom:env(safe-area-inset-bottom)}.chat-portal-card>header{padding:11px 12px 8px}.chat-portal-filter{padding-inline:10px}.chat-portal-search{margin-inline:10px}.chat-portal-list{padding-inline:9px}.chat-portal-card>footer{padding-inline:10px}.chat-portal-drafts{padding-bottom:2px}
}

/* v5.2.0 — Chat + Conteúdos do Portal + Respostas + sino visível na Central mobile */
@media(max-width:760px){
  body:not(.public) .pjs-app-topbar .top-actions{
    display:flex!important;
    flex:0 0 auto!important;
    gap:0!important;
    margin-left:3px!important;
  }
  body:not(.public) .pjs-app-topbar .top-actions>#userEmail,
  body:not(.public) .pjs-app-topbar .top-actions>#userAvatar,
  body:not(.public) .pjs-app-topbar .top-actions>#logoutBtn{display:none!important}
  body:not(.public) #centralNotifyBtn{
    display:grid!important;
    width:38px!important;height:38px!important;min-width:38px!important;
    border-radius:12px!important;
    background:#08213a!important;
    border-color:rgba(98,157,212,.22)!important;
    color:#e9f4ff!important;
    box-shadow:none!important;
  }
  body:not(.public) #centralNotifyBtn.active{background:#0d3b32!important;border-color:rgba(37,211,102,.36)!important}
  body:not(.public) #centralNotifyBtn.blocked{background:#43201f!important;border-color:rgba(217,75,67,.4)!important}
  body:not(.public) #centralNotifyBtn i{box-shadow:0 0 0 2px #08213a!important}
  body:not(.public) #centralNotifyBtn.active i{box-shadow:0 0 0 2px #0d3b32!important}
  body:not(.public) #centralNotifyBtn.blocked i{box-shadow:0 0 0 2px #43201f!important}
}

/* v5.2.2 — Chat Portal claro + Math 2.0 + privacidade do site */
.site-visibility-box{display:grid;gap:9px;padding:13px;border:1px solid #dbe7f2;border-radius:16px;background:#f7fbff}.site-visibility-box>div:first-child{display:grid;gap:2px}.site-visibility-box>div:first-child strong{color:#173a5c}.site-visibility-box>div:first-child small{color:#6d8398}.site-visibility-toggle{display:flex!important;align-items:center;gap:9px;padding:9px 10px;border:1px solid #e0e9f2;border-radius:12px;background:#fff;cursor:pointer}.site-visibility-toggle input{width:18px!important;height:18px!important;margin:0!important;accent-color:#1268ff}.site-visibility-toggle span{font-weight:800;color:#244866;font-size:.78rem}

.chat-math-structure-builder{min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) 66px auto;gap:8px;padding:9px;border:1px solid color-mix(in srgb,var(--chat-accent-2) 28%,transparent);border-radius:15px;background:color-mix(in srgb,var(--chat-input) 88%,var(--chat-bg))}.chat-math-structure-builder>header{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:7px}.chat-math-structure-builder>header>button{width:32px;height:32px;border:0;border-radius:9px;background:color-mix(in srgb,var(--chat-head) 82%,white 3%);color:var(--chat-text);font-size:1.35rem;cursor:pointer}.chat-math-structure-builder>header>div{display:grid;gap:1px}.chat-math-structure-builder>header strong{font-size:.82rem;color:var(--chat-text)}.chat-math-structure-builder>header small{font-size:.57rem;color:var(--chat-muted)}.chat-math-structure-fields{min-height:0;overflow:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;align-content:start}.chat-math-structure-fields label{display:grid;gap:3px}.chat-math-structure-fields label>span{font-size:.56rem;font-weight:850;color:var(--chat-muted)}.chat-math-structure-fields input{width:100%;min-width:0;height:38px;padding:0 9px;border:1px solid color-mix(in srgb,var(--chat-accent-2) 22%,transparent);border-radius:9px;background:color-mix(in srgb,var(--chat-head) 82%,transparent);color:var(--chat-text);outline:0}.chat-math-structure-fields input:focus{border-color:var(--chat-accent-2);box-shadow:0 0 0 3px color-mix(in srgb,var(--chat-accent-2) 13%,transparent)}.chat-math-structure-preview{height:66px;display:grid;place-items:center;overflow:auto;border-radius:11px;background:rgba(255,255,255,.045);color:var(--chat-text)}.chat-math-structure-preview mjx-container{margin:0!important;font-size:125%!important}.chat-math-structure-builder>footer{display:flex;justify-content:flex-end;gap:7px}.chat-math-structure-builder>footer button{min-height:34px;padding:0 12px;border:0;border-radius:9px;background:color-mix(in srgb,var(--chat-head) 80%,white 3%);color:var(--chat-text);font-weight:850;cursor:pointer}.chat-math-structure-builder>footer button.primary{background:var(--chat-accent-2);color:#fff}.chat-math-structure-builder>footer button:disabled{opacity:.4;cursor:not-allowed}

/* O chat do Portal usa a própria paleta clara do Portal do Aluno. */
.public-portal:not(.public-reinforcement-portal) .portal-chat-box-full{--chat-bg:#eef5fb;--chat-head:#ffffff;--chat-surface:#ffffff;--chat-input:#f7fbff;--chat-mine:#dcecff;--chat-accent:#c99420;--chat-accent-2:#1268ff;--chat-text:#17324e;--chat-muted:#6f8599;--chat-wall-tint:rgba(238,245,251,.92);border-left:1px solid #dce7f1!important}.public-portal:not(.public-reinforcement-portal) .portal-chat-header-v517{border-bottom:1px solid #dce7f1!important;box-shadow:0 4px 18px rgba(38,85,132,.05)}.public-portal:not(.public-reinforcement-portal) .portal-chat-header-v517 .portal-chat-title-wrap>strong{color:#17324e!important}.public-portal:not(.public-reinforcement-portal) .portal-chat-header-v517 .portal-chat-title-wrap>span,.public-portal:not(.public-reinforcement-portal) .portal-chat-header-v517 .portal-professor-status{color:#71879b!important}.public-portal:not(.public-reinforcement-portal) .portal-chat-wallpaper-v517:before{opacity:.3!important;filter:saturate(.7)}.public-portal:not(.public-reinforcement-portal) .chat-messages-v517 .chat-bubble{border:1px solid #dfe9f2!important;box-shadow:0 5px 14px rgba(26,73,116,.07)!important}.public-portal:not(.public-reinforcement-portal) .chat-messages-v517 .chat-message.mine .chat-bubble{border-color:#c8ddf7!important}.public-portal:not(.public-reinforcement-portal) .chat-composer-v517{border-top:1px solid #dce7f1!important;box-shadow:0 -5px 20px rgba(31,77,119,.05)}.public-portal:not(.public-reinforcement-portal) .chat-compose-row-v517 textarea{border:1px solid #d6e4ef!important;box-shadow:none!important}.public-portal:not(.public-reinforcement-portal) .chat-tool-btn,.public-portal:not(.public-reinforcement-portal) .chat-math-open{background:#f4f8fc!important;border:1px solid #dce7f1!important;color:#466681!important}.public-portal:not(.public-reinforcement-portal) .chat-math-open b{color:#1268ff!important}.public-portal:not(.public-reinforcement-portal) .chat-send-v517{box-shadow:0 5px 14px rgba(18,104,255,.2)!important}

@media(min-width:901px){
 .chat-message .chat-bubble{padding-right:38px!important}.chat-bubble .chat-reply-action,.chat-message.other .chat-reply-action{top:6px!important;right:6px!important;left:auto!important;transform:none!important;background:color-mix(in srgb,var(--chat-head) 90%,transparent)!important;z-index:3}.chat-message:hover .chat-reply-action,.chat-reply-action:focus-visible{opacity:1!important;pointer-events:auto!important}
}

@media(max-width:900px){
 body.public-portal.portal-chat-page-open .portal-chat-view{background:#f4f8fd!important}.public-portal:not(.public-reinforcement-portal) .portal-chat-page-v517{background:#f4f8fd!important}.public-portal:not(.public-reinforcement-portal) .portal-chat-page-v517:not(.chat-focus) .portal-chat-conversations{background:#f8fbff!important}.public-portal:not(.public-reinforcement-portal) .portal-chat-page-v517:not(.chat-focus) .portal-chat-list-head{background:#fff!important;border-bottom:1px solid #dfe8f1!important}.public-portal:not(.public-reinforcement-portal) .portal-chat-page-v517:not(.chat-focus) .portal-chat-list-head h3{color:#17324e!important}.public-portal:not(.public-reinforcement-portal) .portal-chat-page-v517:not(.chat-focus) .portal-chat-tab{background:#fff!important;border-bottom:1px solid #e8eef4!important}.public-portal:not(.public-reinforcement-portal) .portal-chat-page-v517:not(.chat-focus) .portal-chat-tab.active{background:#eaf3ff!important}.public-portal:not(.public-reinforcement-portal) .portal-chat-page-v517:not(.chat-focus) .portal-chat-tab.has-unread{background:#f0f6ff!important}.public-portal:not(.public-reinforcement-portal) .portal-chat-page-v517:not(.chat-focus) .portal-chat-tab strong{color:#17324e!important}.public-portal:not(.public-reinforcement-portal) .portal-chat-page-v517:not(.chat-focus) .portal-chat-tab small{color:#71869a!important}
 .portal-chat-page-v517.chat-focus .chat-composer-v520 .chat-compose-row-v517,.comm-chat-panel-v517 .chat-composer-v520 .chat-compose-row-v517{grid-template-columns:36px 36px 40px minmax(0,1fr) 42px!important;gap:5px!important;align-items:end!important}.portal-chat-page-v517.chat-focus .chat-math-launcher,.comm-chat-panel-v517 .chat-math-launcher{display:block!important;min-width:40px!important;visibility:visible!important}.portal-chat-page-v517.chat-focus .chat-math-open,.comm-chat-panel-v517 .chat-math-open{display:grid!important;place-items:center!important;width:40px!important;height:40px!important;min-height:40px!important;visibility:visible!important;opacity:1!important}.portal-chat-page-v517.chat-focus .chat-math-open span,.comm-chat-panel-v517 .chat-math-open span{display:none!important}.portal-chat-page-v517.chat-focus .chat-compose-row-v517 textarea,.comm-chat-panel-v517 .chat-compose-row-v517 textarea{min-height:40px!important;max-height:110px!important;padding:10px 11px!important}
 .chat-math-structure-builder{grid-template-rows:auto minmax(0,1fr) 54px auto;gap:5px;padding:7px}.chat-math-structure-fields{grid-template-columns:1fr 1fr;gap:5px}.chat-math-structure-fields input{height:34px;font-size:.76rem}.chat-math-structure-preview{height:54px}.chat-math-structure-builder>footer button{min-height:32px;font-size:.62rem}.chat-math-free-editor{min-height:0;overflow:hidden}.chat-math-template-grid button{min-height:38px!important;font-size:.68rem!important}.chat-math-template-grid button small{display:none}
}
.site-visibility-toggle.hide-mode:has(input:checked){border-color:#b8d4f1;background:#eef6ff;box-shadow:inset 3px 0 0 #1268ff}.site-visibility-toggle.hide-mode:has(input:checked) span{color:#1259a8}.site-visibility-toggle.hide-mode:has(input:checked):after{content:'OCULTO';margin-left:auto;font-size:.52rem;font-weight:950;letter-spacing:.06em;color:#1268ff;background:#dbeeff;border-radius:999px;padding:4px 7px}

/* v5.2.2 · privacidade visual da arte pública
   A arte desktop antiga contém textos de Publicações e Currículo Lattes.
   Enquanto os controles de ocultação estiverem ativos, cobrimos somente
   esses trechos; desligar os controles restaura a arte integral. */
@media (min-width: 761px){
  .public-publications-hidden .pjs-fullscreen-art-frame::before{
    content:"";
    position:absolute;
    z-index:3;
    left:42.55%;
    top:1.55%;
    width:9.75%;
    height:4.9%;
    background:#001a35;
    border-radius:6px;
    pointer-events:none;
  }
  .public-lattes-hidden .pjs-fullscreen-art-frame::after{
    content:"Atendimento presencial e online";
    position:absolute;
    z-index:3;
    left:62.5%;
    top:81.15%;
    width:18.45%;
    height:13.2%;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:1.2%;
    box-sizing:border-box;
    text-align:center;
    color:#eef6ff;
    font-weight:700;
    font-size:clamp(10px,1vw,16px);
    letter-spacing:.02em;
    background:linear-gradient(135deg,#071f3a,#04182f);
    border-radius:8px;
    pointer-events:none;
  }
}

/* v5.2.4 — Chat final do Portal + Math refinado */
:root{
  --portal-classic-topbar-height:70px;
  --portal-chat-bottom-clearance:88px;
}

/* Wallpaper matemático alinhado à paleta do Portal */
.portal-chat-wallpaper-v517{
  position:relative!important;
  min-height:0!important;
  overflow:hidden!important;
  background:#edf5fc!important;
}
.portal-chat-wallpaper-v517:before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:
    linear-gradient(rgba(241,247,253,.82),rgba(238,246,252,.90)),
    url('/assets/chat/chat-wallpaper-portal.svg') center/cover no-repeat!important;
  opacity:1!important;
  filter:none!important;
  pointer-events:none!important;
}
.portal-chat-wallpaper-v517:after{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 15% 12%,rgba(18,104,255,.08),transparent 24%),
    radial-gradient(circle at 85% 18%,rgba(201,148,32,.09),transparent 20%);
  pointer-events:none;
}
.portal-chat-wallpaper-v517 .chat-messages-v517{position:relative!important;z-index:1!important}
.public-reinforcement-portal .portal-chat-wallpaper-v517{background:#071d27!important}
.public-reinforcement-portal .portal-chat-wallpaper-v517:before{
  background:linear-gradient(rgba(7,29,39,.90),rgba(7,29,39,.94)),url('/assets/chat/chat-wallpaper-portal.svg') center/cover no-repeat!important;
  filter:hue-rotate(160deg) saturate(.82) brightness(.58)!important;
}

/* Chat do aluno: paleta clara, bolhas limpas e leitura melhor */
.public-portal:not(.public-reinforcement-portal) .portal-chat-box-full{
  --chat-bg:#eef5fb;
  --chat-head:#ffffff;
  --chat-surface:#ffffff;
  --chat-input:#f8fbff;
  --chat-mine:#ddecff;
  --chat-accent:#c99420;
  --chat-accent-2:#1268ff;
  --chat-text:#17324e;
  --chat-muted:#6f8599;
  background:#eef5fb!important;
}
.public-portal:not(.public-reinforcement-portal) .portal-chat-header-v517{
  background:#fff!important;
  border-bottom:1px solid #dce7f1!important;
  box-shadow:0 5px 18px rgba(27,75,116,.05)!important;
}
.public-portal:not(.public-reinforcement-portal) .chat-messages-v517 .chat-bubble{
  background:#fff!important;
  color:#17324e!important;
  border:1px solid #dce8f2!important;
  box-shadow:0 4px 13px rgba(24,68,106,.07)!important;
}
.public-portal:not(.public-reinforcement-portal) .chat-messages-v517 .chat-message.mine .chat-bubble{
  background:#ddecff!important;
  border-color:#c9def7!important;
}
.public-portal:not(.public-reinforcement-portal) .chat-reply-quote{
  background:rgba(18,104,255,.06)!important;
  border-left-color:#1268ff!important;
}
.public-portal:not(.public-reinforcement-portal) .chat-composer-v517{
  background:rgba(255,255,255,.98)!important;
  border-top:1px solid #dce7f1!important;
  box-shadow:0 -7px 22px rgba(24,69,108,.06)!important;
}
.public-portal:not(.public-reinforcement-portal) .chat-compose-row-v517 textarea{
  background:#f8fbff!important;
  color:#17324e!important;
  border:1px solid #d5e3ef!important;
  box-shadow:none!important;
}
.public-portal:not(.public-reinforcement-portal) .chat-compose-row-v517 textarea::placeholder{color:#8ca0b2!important}
.public-portal:not(.public-reinforcement-portal) .chat-tool-btn,
.public-portal:not(.public-reinforcement-portal) .chat-math-open{
  background:#f4f8fc!important;
  color:#476984!important;
  border:1px solid #dce7f1!important;
}
.public-portal:not(.public-reinforcement-portal) .chat-math-open b{color:#1268ff!important}
.public-portal:not(.public-reinforcement-portal) .chat-send-v517{
  background:#1268ff!important;
  color:#fff!important;
  box-shadow:0 5px 14px rgba(18,104,255,.22)!important;
}

/* Área da conversa e composer não podem ficar escondidos por menu */
.portal-chat-box-full{
  min-height:0!important;
  overflow:hidden!important;
  grid-template-rows:auto auto minmax(0,1fr) auto!important;
}
.portal-chat-box-full .chat-wallpaper{min-height:0!important;overflow:hidden!important}
.portal-chat-box-full .chat-messages-v517{
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  scroll-padding-bottom:112px!important;
  padding:14px 14px 18px!important;
}
.portal-chat-box-full .chat-composer-v517{
  position:relative!important;
  z-index:7!important;
  flex:0 0 auto!important;
}
.portal-chat-box-full .chat-message{scroll-margin-top:70px;scroll-margin-bottom:110px}

/* Responder: botão não foge da área da mensagem no desktop */
@media(min-width:901px){
  .portal-chat-box-full .chat-bubble,
  .comm-chat-panel-v517 .chat-bubble{padding-right:39px!important}
  .portal-chat-box-full .chat-reply-action,
  .comm-chat-panel-v517 .chat-reply-action{
    top:7px!important;
    right:7px!important;
    left:auto!important;
    transform:none!important;
    opacity:.38!important;
    pointer-events:auto!important;
    background:color-mix(in srgb,var(--chat-head) 91%,transparent)!important;
  }
  .portal-chat-box-full .chat-message:hover .chat-reply-action,
  .comm-chat-panel-v517 .chat-message:hover .chat-reply-action,
  .chat-reply-action:focus-visible{opacity:1!important}
}

/* Lista de conversas do Portal usa a mesma paleta do aluno */
@media(max-width:900px){
  body.public-portal.portal-chat-page-open{overflow:hidden!important}
  body.public-portal.portal-chat-page-open .portal-chat-view{
    position:fixed!important;
    z-index:135!important;
    top:var(--portal-classic-topbar-height)!important;
    right:0!important;
    left:0!important;
    bottom:var(--portal-chat-bottom-clearance)!important;
    height:auto!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    background:#f4f8fd!important;
  }
  body.public-portal.portal-chat-page-open .portal-chat-page-v517{
    height:100%!important;
    min-height:0!important;
    background:#f4f8fd!important;
  }
  .public-portal:not(.public-reinforcement-portal) .portal-chat-page-v517:not(.chat-focus) .portal-chat-conversations{
    display:flex!important;
    width:100%!important;
    height:100%!important;
    max-height:none!important;
    background:#f8fbff!important;
    border:0!important;
  }
  .public-portal:not(.public-reinforcement-portal) .portal-chat-page-v517:not(.chat-focus) .portal-chat-list-head{
    display:flex!important;
    min-height:58px!important;
    padding:10px 14px!important;
    background:#fff!important;
    border-bottom:1px solid #dfe8f1!important;
  }
  .public-portal:not(.public-reinforcement-portal) .portal-chat-page-v517:not(.chat-focus) .portal-chat-list-head h3{color:#17324e!important}
  .public-portal:not(.public-reinforcement-portal) .portal-chat-page-v517:not(.chat-focus) .portal-chat-tabs{
    height:auto!important;
    display:flex!important;
    flex-direction:column!important;
    gap:0!important;
    padding:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
  }
  .public-portal:not(.public-reinforcement-portal) .portal-chat-page-v517:not(.chat-focus) .portal-chat-tab{
    flex:none!important;
    width:100%!important;
    min-width:0!important;
    height:68px!important;
    min-height:68px!important;
    padding:8px 12px!important;
    border:0!important;
    border-radius:0!important;
    background:#fff!important;
    border-bottom:1px solid #e7eef5!important;
    grid-template-columns:48px minmax(0,1fr) auto!important;
  }
  .public-portal:not(.public-reinforcement-portal) .portal-chat-page-v517:not(.chat-focus) .portal-chat-tab.active{background:#eaf3ff!important;box-shadow:none!important}
  .public-portal:not(.public-reinforcement-portal) .portal-chat-page-v517:not(.chat-focus) .portal-chat-tab.has-unread{background:#f2f7ff!important}
  .public-portal:not(.public-reinforcement-portal) .portal-chat-page-v517:not(.chat-focus) .portal-chat-tab strong{color:#17324e!important;font-size:.82rem!important}
  .public-portal:not(.public-reinforcement-portal) .portal-chat-page-v517:not(.chat-focus) .portal-chat-tab small{color:#71869a!important;font-size:.63rem!important}

  /* Conversa aberta: menu inferior some, mas o topo do Portal continua visível */
  body.public-portal.portal-chat-conversation-open .portal-bottom-nav{display:none!important}
  body.public-portal.portal-chat-conversation-open .portal-chat-view{
    top:var(--portal-classic-topbar-height)!important;
    bottom:0!important;
    height:auto!important;
    inset-inline:0!important;
  }
  .portal-chat-page-v517.chat-focus .portal-chat-conversations{display:none!important}
  .portal-chat-page-v517.chat-focus .portal-chat-box-full{
    display:grid!important;
    width:100%!important;
    height:100%!important;
    max-height:100%!important;
    min-height:0!important;
    grid-template-rows:58px auto minmax(0,1fr) auto!important;
  }
  .portal-chat-mobile-back{display:grid!important}
  .portal-chat-header-v517{
    min-height:58px!important;
    height:58px!important;
    padding:5px 8px!important;
  }
  .portal-chat-page-v517.chat-focus .chat-messages-v517{
    padding:10px 10px 16px!important;
    scroll-padding-bottom:104px!important;
  }
  .portal-chat-page-v517.chat-focus .chat-message{max-width:90%!important}
  .portal-chat-page-v517.chat-focus .chat-composer-v517{
    padding:7px 7px max(7px,env(safe-area-inset-bottom))!important;
  }
  .portal-chat-page-v517.chat-focus .chat-compose-row-v517,
  .comm-chat-panel-v517 .chat-compose-row-v517{
    grid-template-columns:36px 36px 40px minmax(0,1fr) 42px!important;
    gap:5px!important;
    align-items:end!important;
  }
  .portal-chat-page-v517.chat-focus .chat-tool-btn,
  .comm-chat-panel-v517 .chat-tool-btn{width:36px!important;height:40px!important;min-height:40px!important}
  .portal-chat-page-v517.chat-focus .chat-math-launcher,
  .comm-chat-panel-v517 .chat-math-launcher{display:block!important;visibility:visible!important;min-width:40px!important}
  .portal-chat-page-v517.chat-focus .chat-math-open,
  .comm-chat-panel-v517 .chat-math-open{
    display:grid!important;
    place-items:center!important;
    width:40px!important;
    height:40px!important;
    min-height:40px!important;
    opacity:1!important;
    visibility:visible!important;
  }
  .portal-chat-page-v517.chat-focus .chat-math-open span,
  .comm-chat-panel-v517 .chat-math-open span{display:none!important}
  .portal-chat-page-v517.chat-focus textarea,
  .comm-chat-panel-v517 textarea{
    min-height:40px!important;
    max-height:104px!important;
    padding:10px 11px!important;
    font-size:16px!important;
  }

  /* Teclado nativo: usa a área visível sem esconder o composer */
  body.public-portal.portal-chat-conversation-open .portal-chat-box-full.native-keyboard-active{
    height:calc(var(--chat-vv-height,100dvh) - var(--portal-classic-topbar-height))!important;
    max-height:calc(var(--chat-vv-height,100dvh) - var(--portal-classic-topbar-height))!important;
  }
  body.public-portal.portal-chat-conversation-open .portal-chat-box-full.native-keyboard-active .chat-messages-v517{padding-bottom:14px!important}
}

/* Math 2.1: primeiro as estruturas, depois a calculadora */
.chat-math-sheet-card{
  background:linear-gradient(180deg,color-mix(in srgb,var(--chat-head) 96%,white 4%),color-mix(in srgb,var(--chat-bg) 96%,white 4%))!important;
}
.chat-math-message-context{
  background:color-mix(in srgb,var(--chat-input) 91%,white 9%)!important;
  border:1px solid color-mix(in srgb,var(--chat-accent-2) 17%,transparent)!important;
}
.chat-math-editor{
  padding:10px!important;
  border:1px solid color-mix(in srgb,var(--chat-accent-2) 20%,transparent)!important;
  border-radius:15px!important;
  background:color-mix(in srgb,var(--chat-input) 90%,white 10%)!important;
}
.chat-math-editor-preview{
  min-height:62px!important;
  border:1px dashed color-mix(in srgb,var(--chat-accent-2) 28%,transparent)!important;
  border-radius:12px!important;
  background:rgba(255,255,255,.38)!important;
}
.chat-math-editor-preview mjx-container{font-size:140%!important}
.chat-math-editor-actions{grid-template-columns:38px 38px 38px 52px minmax(140px,1fr)!important;gap:6px!important}
.chat-math-editor-actions button{font-weight:850!important}
.chat-math-keyboard-layout{grid-template-columns:minmax(0,1fr) 138px!important;gap:8px!important}
.chat-math-keypad{grid-template-columns:repeat(5,minmax(46px,1fr))!important;gap:6px!important}
.chat-math-keypad button{
  min-height:46px!important;
  border-radius:11px!important;
  font-size:.9rem!important;
  font-weight:850!important;
  box-shadow:0 5px 11px rgba(0,0,0,.05)!important;
}
.chat-math-template-grid{grid-template-columns:1fr!important;gap:6px!important}
.chat-math-template-grid button{
  min-height:44px!important;
  border-radius:11px!important;
  padding:7px 9px!important;
}
.chat-math-template-grid button small{display:block!important;opacity:.7!important}
.chat-math-structure-fields{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.chat-math-structure-preview{background:rgba(255,255,255,.34)!important}
.chat-math-quick>div{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:6px!important}

@media(max-width:900px){
  .chat-math-sheet{align-items:end!important;padding:0!important;z-index:1100!important}
  .chat-math-sheet-card{
    width:100%!important;
    max-height:min(74dvh,650px)!important;
    margin:0!important;
    border-radius:20px 20px 0 0!important;
    padding-bottom:max(6px,env(safe-area-inset-bottom))!important;
  }
  .chat-math-editor{padding:8px!important}
  .chat-math-editor-preview{min-height:52px!important}
  .chat-math-keyboard-layout{grid-template-columns:minmax(0,1fr) 108px!important;gap:6px!important}
  .chat-math-keypad{grid-template-columns:repeat(5,minmax(38px,1fr))!important;gap:5px!important}
  .chat-math-keypad button{min-height:40px!important;font-size:.82rem!important;border-radius:9px!important}
  .chat-math-template-grid button{min-height:38px!important;padding:5px 7px!important;font-size:.65rem!important}
  .chat-math-template-grid button small{font-size:.48rem!important}
  .chat-math-editor-actions{grid-template-columns:31px 31px 31px 46px minmax(100px,1fr)!important;gap:4px!important}
  .chat-math-structure-builder{padding:7px!important}
  .chat-math-structure-fields{grid-template-columns:1fr 1fr!important;gap:5px!important}
  .chat-math-structure-fields input{height:36px!important;font-size:.76rem!important}
  .chat-math-quick>div{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:430px){
  .chat-math-keyboard-layout{grid-template-columns:minmax(0,1fr) 94px!important}
  .chat-math-keypad button{min-height:37px!important;font-size:.76rem!important}
  .chat-math-template-grid button{font-size:.58rem!important}
  .chat-math-structure-fields{grid-template-columns:1fr!important}
}
.public-portal:not(.public-reinforcement-portal) .chat-math-sheet-card{
  color:#17324e!important;
  border-color:#d5e3ef!important;
  box-shadow:0 -18px 55px rgba(28,70,106,.20)!important;
}
.public-portal:not(.public-reinforcement-portal) .chat-math-sheet-card>header strong{color:#17324e!important}
.public-portal:not(.public-reinforcement-portal) .chat-math-sheet-card>header small{color:#70879a!important}
.public-portal:not(.public-reinforcement-portal) .chat-math-close{background:#f1f6fb!important;color:#315a7c!important;border-color:#d7e4ef!important}
.public-portal:not(.public-reinforcement-portal) .chat-math-search-row{background:#f6faff!important;border-color:#d7e4ef!important}
.public-portal:not(.public-reinforcement-portal) .chat-math-search-row input{color:#17324e!important}
.public-portal:not(.public-reinforcement-portal) .chat-math-categories button{background:#f1f6fb!important;color:#4b6d89!important;border-color:#d8e5ef!important}
.public-portal:not(.public-reinforcement-portal) .chat-math-categories button.active{background:#1268ff!important;color:#fff!important;border-color:#1268ff!important}
.public-portal:not(.public-reinforcement-portal) .chat-math-grid button,
.public-portal:not(.public-reinforcement-portal) .chat-math-quick button{background:#fff!important;border-color:#dce7f1!important;color:#17324e!important}
.public-portal:not(.public-reinforcement-portal) .chat-math-grid button:hover,
.public-portal:not(.public-reinforcement-portal) .chat-math-quick button:hover{background:#eef6ff!important;border-color:#9cc5ef!important}
.public-portal:not(.public-reinforcement-portal) .chat-math-expression{color:#17324e!important}
.public-portal:not(.public-reinforcement-portal) .chat-math-grid button small,
.public-portal:not(.public-reinforcement-portal) .chat-math-quick button small{color:#7890a4!important}
.public-portal:not(.public-reinforcement-portal) .chat-math-keypad button,
.public-portal:not(.public-reinforcement-portal) .chat-math-template-grid button{background:#fff!important;color:#17324e!important;border-color:#d7e4ef!important}
.public-portal:not(.public-reinforcement-portal) .chat-math-keypad button:active,
.public-portal:not(.public-reinforcement-portal) .chat-math-template-grid button:active{background:#eaf4ff!important}
.public-portal:not(.public-reinforcement-portal) .chat-math-structure-builder{background:#f8fbff!important;border-color:#d4e3ef!important}
.public-portal:not(.public-reinforcement-portal) .chat-math-structure-fields input{background:#fff!important;color:#17324e!important;border-color:#d4e3ef!important}
.public-portal:not(.public-reinforcement-portal) .chat-math-structure-preview{background:#fff!important}
@media(max-width:900px){
  .chat-math-template-grid button:nth-child(n+7){display:block!important}
}

/* v5.2.4.1 — hotfix do Chat do Portal + Math 2.2
   A Central fica intacta. O Portal passa a usar o mesmo princípio de conversa em tela cheia da Central. */
.chat-math-home-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:6px;
}
.chat-math-home-actions button{
  min-height:36px;
  border:1px solid color-mix(in srgb,var(--chat-accent-2) 20%,transparent);
  border-radius:11px;
  background:color-mix(in srgb,var(--chat-head) 86%,white 6%);
  color:var(--chat-muted);
  font-weight:900;
  font-size:.68rem;
  cursor:pointer;
}
.chat-math-home-actions button.active{
  background:var(--chat-accent-2);
  border-color:var(--chat-accent-2);
  color:#fff;
}
.chat-math-photomath{
  display:flex!important;
  flex-direction:column!important;
  gap:7px!important;
  min-height:0!important;
}
.chat-math-free-editor,
.chat-math-structure-builder{
  flex:1 1 auto;
  min-height:0!important;
}
.chat-math-free-editor{
  display:flex;
  flex-direction:column;
  gap:8px;
  overflow:hidden;
}
.chat-math-free-editor .chat-math-keyboard-layout{
  flex:1 1 auto;
  min-height:0;
}
.chat-math-template-grid{
  align-content:start;
  overflow-y:auto!important;
  padding-right:2px;
}
.chat-math-photomath.formulas-focus .chat-math-free-editor,
.chat-math-photomath.formulas-focus .chat-math-structure-builder{
  display:none!important;
}
.chat-math-photomath.formulas-focus .chat-math-more{
  position:static!important;
  inset:auto!important;
  display:block!important;
  flex:1 1 auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:hidden!important;
  margin:0!important;
  padding:8px!important;
  border:1px solid color-mix(in srgb,var(--chat-accent-2) 18%,transparent)!important;
  border-radius:14px!important;
  background:color-mix(in srgb,var(--chat-input) 92%,white 8%)!important;
  box-shadow:none!important;
}
.chat-math-photomath.formulas-focus .chat-math-more>summary{display:none!important}
.chat-math-photomath.formulas-focus .chat-math-grid{
  max-height:none!important;
  height:calc(100% - 104px)!important;
  overflow:auto!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  padding-bottom:8px!important;
}
.chat-math-photomath.formulas-focus .chat-math-categories{
  padding-bottom:7px!important;
}
.chat-math-photomath.formulas-focus .chat-math-search-row{
  margin-top:0!important;
}
.public-portal:not(.public-reinforcement-portal) .chat-math-home-actions button{
  background:#f4f8fc!important;
  border-color:#d7e4ef!important;
  color:#4d6e89!important;
}
.public-portal:not(.public-reinforcement-portal) .chat-math-home-actions button.active{
  background:#1268ff!important;
  border-color:#1268ff!important;
  color:#fff!important;
}

@media(max-width:900px){
  /* Portal do Aluno: conversa aberta = tela cheia, exatamente como a Central. */
  body.public-portal.portal-chat-conversation-open{
    overflow:hidden!important;
  }
  body.public-portal.portal-chat-conversation-open .portal-classic-topbar,
  body.public-portal.portal-chat-conversation-open .portal-internal-topbar,
  body.public-portal.portal-chat-conversation-open .portal-bottom-nav,
  body.public-portal.portal-chat-conversation-open .portal-chat-float{
    display:none!important;
  }
  body.public-portal.portal-chat-conversation-open .portal-classic-stage,
  body.public-portal.portal-chat-conversation-open .portal-app-stage{
    height:100svh!important;
    min-height:0!important;
  }
  body.public-portal.portal-chat-conversation-open .portal-chat-view{
    position:fixed!important;
    inset:0!important;
    z-index:1000!important;
    width:100vw!important;
    height:100svh!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:#eef5fb!important;
  }
  body.public-portal.portal-chat-conversation-open .portal-chat-page-v517.chat-focus{
    display:block!important;
    width:100vw!important;
    height:100svh!important;
    min-height:0!important;
  }
  body.public-portal.portal-chat-conversation-open .portal-chat-page-v517.chat-focus .portal-chat-conversations{
    display:none!important;
  }
  body.public-portal.portal-chat-conversation-open .portal-chat-page-v517.chat-focus .portal-chat-box-full{
    position:fixed!important;
    inset:0!important;
    z-index:1001!important;
    display:grid!important;
    width:100vw!important;
    height:100svh!important;
    max-height:100svh!important;
    min-height:0!important;
    grid-template-rows:58px auto minmax(0,1fr) auto!important;
    border:0!important;
    border-radius:0!important;
  }
  body.public-portal.portal-chat-conversation-open .portal-chat-header-v517{
    position:relative!important;
    top:auto!important;
    min-height:58px!important;
    height:58px!important;
    z-index:8!important;
  }
  body.public-portal.portal-chat-conversation-open .portal-chat-wallpaper-v517{
    min-height:0!important;
    overflow:hidden!important;
  }
  body.public-portal.portal-chat-conversation-open #portalChatMessages{
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    overflow-y:auto!important;
    padding-bottom:18px!important;
    scroll-padding-bottom:108px!important;
  }
  body.public-portal.portal-chat-conversation-open #portalChatForm{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    width:100%!important;
    z-index:9!important;
    padding-bottom:max(7px,env(safe-area-inset-bottom))!important;
  }
  /* Quando o teclado nativo abre, usa somente a viewport visível. */
  body.public-portal.portal-chat-conversation-open .portal-chat-box-full.native-keyboard-active{
    height:var(--chat-vv-height,100dvh)!important;
    max-height:var(--chat-vv-height,100dvh)!important;
  }
  body.public-portal.portal-chat-conversation-open .portal-chat-box-full.native-keyboard-active #portalChatMessages{
    scroll-padding-bottom:72px!important;
  }

  /* Math 2.2: mais espaço para estruturas e fórmulas no celular. */
  .chat-math-photomath{
    height:100%!important;
    max-height:none!important;
  }
  .chat-math-home-actions button{min-height:34px;font-size:.63rem}
  .chat-math-template-grid{
    max-height:none!important;
  }
  .chat-math-photomath.formulas-focus .chat-math-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    height:calc(100% - 94px)!important;
  }
}

@media(max-width:430px){
  .chat-math-photomath.formulas-focus .chat-math-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

/* Portal: fixa cada filho na linha correta mesmo quando o aviso de chat está oculto.
   Sem isso o composer cai na linha flexível e cresce sobre a conversa. */
.portal-chat-box-full>.portal-chat-header-v517{grid-row:1!important}
.portal-chat-box-full>.portal-chat-lock{grid-row:2!important}
.portal-chat-box-full>.portal-chat-wallpaper-v517{grid-row:3!important}
.portal-chat-box-full>.chat-composer-v517{grid-row:4!important}

@media(max-width:900px){
  body.public.public-portal.portal-app-active.portal-chat-conversation-open .portal-classic-shell>.portal-app-nav.portal-bottom-nav,
  body.public.public-portal.portal-app-active.portal-chat-conversation-open .portal-classic-shell .portal-app-nav.portal-bottom-nav{
    display:none!important;
  }
  body.public.public-portal.portal-app-active.portal-chat-conversation-open .portal-chat-page-v517.chat-focus>.portal-chat-box-full{
    top:0!important;
    right:0!important;
    bottom:0!important;
    left:0!important;
    margin:0!important;
    transform:none!important;
  }
}

/* v5.2.4.2 — fórmulas renderizadas no balão + wallpaper visível no Portal */
.chat-math-render{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  max-width:100%;
  min-height:1.6em;
  margin:1px 2px;
  padding:1px 5px;
  vertical-align:middle;
  border-radius:7px;
  background:color-mix(in srgb,var(--chat-accent-2) 7%,transparent);
  color:inherit;
  overflow-x:auto;
  overflow-y:hidden;
}
.chat-math-render mjx-container{
  margin:0!important;
  max-width:100%;
  overflow-x:auto;
  overflow-y:hidden;
  font-size:112%!important;
}
.chat-math-fallback{
  font-family:"Cambria Math","STIX Two Math","Times New Roman",serif;
  font-weight:650;
  letter-spacing:.01em;
  white-space:normal;
  overflow-wrap:anywhere;
}
.chat-math-render-ready .chat-math-fallback{display:none!important}
.chat-text:has(>.chat-math-render:only-child) .chat-math-render{
  display:flex;
  width:max-content;
  max-width:100%;
  padding:5px 8px;
}
.chat-text:has(>.chat-math-render:only-child) .chat-math-render mjx-container{font-size:128%!important}
.public-portal:not(.public-reinforcement-portal) .chat-message.mine .chat-math-render{
  background:rgba(18,104,255,.07);
}
.public-portal:not(.public-reinforcement-portal) .chat-message.other .chat-math-render{
  background:rgba(35,96,145,.055);
}

/* O wallpaper matemático do Portal fica visível sem competir com as mensagens. */
.public-portal:not(.public-reinforcement-portal) .portal-chat-wallpaper-v517{
  background:#eaf3fb!important;
}
.public-portal:not(.public-reinforcement-portal) .portal-chat-wallpaper-v517:before{
  background:
    linear-gradient(rgba(241,247,253,.62),rgba(238,246,252,.72)),
    url('/assets/chat/chat-wallpaper-portal.svg') center/cover no-repeat!important;
  opacity:1!important;
  filter:saturate(.96) contrast(1.04)!important;
}
.public-portal:not(.public-reinforcement-portal) .portal-chat-wallpaper-v517:after{
  background:
    radial-gradient(circle at 15% 12%,rgba(18,104,255,.055),transparent 24%),
    radial-gradient(circle at 85% 18%,rgba(201,148,32,.06),transparent 20%)!important;
}
@media(max-width:900px){
  .chat-math-render{padding:1px 4px}
  .chat-math-render mjx-container{font-size:108%!important}
  .chat-text:has(>.chat-math-render:only-child) .chat-math-render mjx-container{font-size:122%!important}
  .public-portal:not(.public-reinforcement-portal) .portal-chat-wallpaper-v517:before{
    background:
      linear-gradient(rgba(241,247,253,.58),rgba(238,246,252,.69)),
      url('/assets/chat/chat-wallpaper-portal.svg') center/auto 112% no-repeat!important;
  }
}
.public-reinforcement-portal .portal-chat-wallpaper-v517:before{
  background:
    linear-gradient(rgba(7,29,39,.74),rgba(7,29,39,.82)),
    url('/assets/chat/chat-wallpaper-portal.svg') center/cover no-repeat!important;
  opacity:1!important;
  filter:hue-rotate(160deg) saturate(.9) brightness(.68)!important;
}

/* v5.2.5 — teclado matemático desktop amplo e organizado.
   Regras somente para computador: o mobile aprovado permanece intacto. */
@media (min-width:901px){
  .chat-math-sheet{
    align-items:center!important;
    justify-content:center!important;
    padding:26px!important;
  }
  .chat-math-backdrop{display:block!important}
  .chat-math-photomath{
    width:min(1120px,calc(100vw - 72px))!important;
    height:min(780px,calc(100dvh - 64px))!important;
    max-height:calc(100dvh - 64px)!important;
    margin:auto!important;
    padding:16px!important;
    gap:10px!important;
    border-radius:22px!important;
    box-shadow:0 28px 90px rgba(0,0,0,.34)!important;
    overflow:hidden!important;
  }
  .chat-math-photomath>header{min-height:46px!important}
  .chat-math-photomath>header strong{font-size:1.02rem!important}
  .chat-math-photomath>header small{font-size:.68rem!important}
  .chat-math-message-context{min-height:48px!important;padding:7px 11px!important}
  .chat-math-message-context>strong{font-size:.76rem!important}
  .chat-math-home-actions{
    grid-template-columns:190px 190px!important;
    justify-content:start!important;
    gap:8px!important;
  }
  .chat-math-home-actions button{min-height:42px!important;font-size:.74rem!important;border-radius:12px!important}
  .chat-math-free-editor{gap:10px!important}
  .chat-math-editor{padding:12px!important;gap:9px!important;border-radius:17px!important}
  .chat-math-editor-preview{min-height:82px!important;height:auto!important;padding:10px!important}
  .chat-math-editor-preview mjx-container{font-size:155%!important}
  .chat-math-editor-actions{grid-template-columns:44px 44px 44px 62px minmax(190px,1fr)!important;gap:7px!important}
  .chat-math-editor-actions button{min-height:40px!important;font-size:.72rem!important;border-radius:10px!important}
  .chat-math-keyboard-layout{
    grid-template-columns:minmax(560px,1.4fr) minmax(360px,.85fr)!important;
    gap:12px!important;
    overflow:hidden!important;
  }
  .chat-math-keypad{
    grid-template-columns:repeat(5,minmax(76px,1fr))!important;
    gap:8px!important;
    align-content:start!important;
  }
  .chat-math-keypad button{
    min-height:58px!important;
    font-size:1.03rem!important;
    border-radius:13px!important;
  }
  .chat-math-template-grid{
    grid-template-columns:repeat(2,minmax(160px,1fr))!important;
    gap:8px!important;
    align-content:start!important;
    overflow-y:auto!important;
    padding-right:5px!important;
  }
  .chat-math-template-grid button{
    min-height:56px!important;
    padding:8px 11px!important;
    font-size:.75rem!important;
    text-align:left!important;
  }
  .chat-math-template-grid button span{display:block!important;font-size:.78rem!important}
  .chat-math-template-grid button small{display:block!important;margin-top:2px!important;font-size:.57rem!important}
  .chat-math-structure-builder{padding:14px!important;gap:10px!important;border-radius:17px!important}
  .chat-math-structure-builder>header{grid-template-columns:42px minmax(0,1fr)!important}
  .chat-math-structure-builder>header>button{width:40px!important;height:40px!important}
  .chat-math-structure-builder>header strong{font-size:.92rem!important}
  .chat-math-structure-builder>header small{font-size:.65rem!important}
  .chat-math-structure-fields{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:10px!important;
  }
  .chat-math-structure-fields label>span{font-size:.63rem!important}
  .chat-math-structure-fields input{height:44px!important;font-size:.84rem!important;padding:0 11px!important}
  .chat-math-structure-preview{height:112px!important;min-height:112px!important}
  .chat-math-structure-preview mjx-container{font-size:155%!important}
  .chat-math-structure-builder>footer button{min-height:40px!important;padding:0 16px!important}
  .chat-math-photomath.formulas-focus .chat-math-more{padding:12px!important;border-radius:17px!important}
  .chat-math-photomath.formulas-focus .chat-math-search-row{min-height:44px!important;margin-bottom:8px!important}
  .chat-math-photomath.formulas-focus .chat-math-categories{gap:6px!important;overflow-x:auto!important;flex-wrap:nowrap!important}
  .chat-math-photomath.formulas-focus .chat-math-categories button{min-height:34px!important;white-space:nowrap!important}
  .chat-math-photomath.formulas-focus .chat-math-grid{
    height:calc(100% - 102px)!important;
    grid-template-columns:repeat(5,minmax(135px,1fr))!important;
    gap:8px!important;
    padding:4px 3px 12px!important;
  }
  .chat-math-photomath.formulas-focus .chat-math-grid button{
    min-height:70px!important;
    padding:8px!important;
    border-radius:12px!important;
  }
  .chat-math-photomath.formulas-focus .chat-math-expression{font-size:.82rem!important}
  .chat-math-photomath.formulas-focus .chat-math-grid button small{font-size:.58rem!important}
  .chat-math-quick>div{grid-template-columns:repeat(5,minmax(120px,1fr))!important}
}

/* v5.2.5 — acesso e segurança do aluno */
.portal-login-help{display:flex;justify-content:space-between;gap:8px;margin-top:9px;flex-wrap:wrap}
.portal-login-help button{border:0;background:transparent;color:#1768df;font:inherit;font-size:.7rem;font-weight:850;padding:3px 0;cursor:pointer;text-decoration:underline;text-decoration-color:rgba(23,104,223,.25);text-underline-offset:3px}
.portal-login-help button:hover{color:#0b4fa9}
.portal-recovery-box{display:grid;gap:9px;margin-top:11px;padding:12px;border:1px solid #d8e6f2;border-radius:14px;background:#f7fbff;box-shadow:0 10px 26px rgba(34,82,125,.07)}
.portal-recovery-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.portal-recovery-head>div{display:grid;gap:2px}.portal-recovery-head strong{color:#173a5c;font-size:.8rem}.portal-recovery-head span{color:#6e8498;font-size:.62rem}.portal-recovery-head>button{width:29px;height:29px;border:1px solid #dae6ef;border-radius:9px;background:#fff;color:#52718c;cursor:pointer;font-size:1rem}.portal-recovery-box .field{margin:0}.portal-recovery-box .btn{width:100%;justify-content:center}.portal-recovery-msg{min-height:16px;color:#506f88}.portal-recovery-msg strong{color:#115bb8;font-size:.82rem}
.portal-account-security{display:grid;gap:13px;border-color:#d9e7f2!important;background:linear-gradient(145deg,#fff,#f7fbff)!important}.portal-account-user{display:grid;grid-template-columns:auto minmax(0,1fr);gap:2px 12px;align-items:baseline;padding:12px 14px;border:1px solid #dfeaf3;border-radius:14px;background:#f8fbff}.portal-account-user>span{grid-row:1/3;font-size:.6rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em;color:#6e879b;align-self:center}.portal-account-user>strong{font-size:1rem;color:#145da8;overflow-wrap:anywhere}.portal-account-user>small{color:#73899b;font-size:.65rem}.portal-username-choose{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:end}.portal-username-choose .field{margin:0}.portal-username-choose .btn{min-height:43px}.portal-password-change{border-top:1px solid #e2eaf2;padding-top:9px}.portal-password-change>summary{cursor:pointer;font-weight:850;color:#265a85;font-size:.74rem}.portal-password-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:8px;align-items:end;margin-top:11px}.portal-password-grid .field{margin:0}.portal-password-grid .btn{min-height:43px}.access-approved-credential{display:grid;grid-template-columns:auto minmax(0,1fr);gap:7px 12px;margin:12px 0;padding:13px;border:1px solid rgba(70,145,205,.2);border-radius:14px;background:rgba(20,72,115,.08)}.access-approved-credential span{color:var(--muted);font-size:.64rem;font-weight:850;text-transform:uppercase}.access-approved-credential strong{font-size:.9rem;overflow-wrap:anywhere}
@media(max-width:700px){.portal-login-help{display:grid;grid-template-columns:1fr 1fr}.portal-login-help button{text-align:left}.portal-username-choose{grid-template-columns:1fr}.portal-password-grid{grid-template-columns:1fr}.portal-password-grid .btn,.portal-username-choose .btn{width:100%;justify-content:center}.portal-account-user{grid-template-columns:1fr}.portal-account-user>span{grid-row:auto}}

/* =========================================================
   v5.3.0 · CENTRAL REORGANIZADA + ÁREAS DAS TURMAS
   Navegação por contexto, capas de turma e paridade mobile.
   ========================================================= */
#appRoot .content{
  background:
    radial-gradient(circle at 92% 0,rgba(38,126,211,.07),transparent 27%),
    linear-gradient(180deg,#f3f7fb 0%,#edf3f8 100%);
}
#appRoot .content>.view-root,#appRoot #viewRoot{min-width:0}
#appRoot .content .card:not(.comm-chat-panel-v517):not(.comm-chat-list-v517){
  border-color:#d7e4ef;
  background:linear-gradient(145deg,#ffffff 0%,#f8fbfe 100%);
  box-shadow:0 10px 30px rgba(20,61,96,.055);
}
#appRoot .themed-card{border:1px solid #d6e5f0!important;background:linear-gradient(145deg,#fff,#f5f9fd)!important}

.area-entry-hero,.area-operational-hero{border-color:rgba(74,147,213,.28)!important;box-shadow:0 20px 50px rgba(5,30,53,.18)!important}
.area-today-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}
.area-today-strip>article{
  min-width:0;display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:10px;
  padding:13px 14px;border:1px solid #d5e3ee;border-radius:17px;background:linear-gradient(145deg,#fff,#f4f9fd);
  box-shadow:0 8px 24px rgba(22,66,102,.055);cursor:pointer;transition:.18s ease;
}
.area-today-strip>article:hover{transform:translateY(-2px);border-color:#a9c8e2;box-shadow:0 12px 28px rgba(22,66,102,.1)}
.area-today-strip>article>span{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:#e9f3fb;color:#135d9e;font-size:1.05rem}
.area-today-strip>article>div{min-width:0;display:grid;gap:1px}.area-today-strip small{text-transform:uppercase;letter-spacing:.055em;font-size:.55rem;font-weight:900;color:#71889b}.area-today-strip strong{font-size:1.14rem;color:#123c61;line-height:1.1}.area-today-strip p{margin:1px 0 0;font-size:.6rem;color:#6e8395;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.area-entry-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.compact-hub-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.hub-action-card.featured,.class-module-card.primary{border-color:rgba(199,151,39,.36)!important;background:linear-gradient(145deg,#fffdf7,#f7fbff)!important;box-shadow:inset 0 3px 0 rgba(213,166,53,.8),0 12px 30px rgba(22,65,101,.07)!important}

/* Seletor visual das turmas */
.class-area-selector{position:relative}
.class-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.class-photo-card{min-width:0;overflow:hidden;border:1px solid #d0e0ec;border-radius:23px;background:#fff;box-shadow:0 14px 34px rgba(15,54,86,.09);cursor:pointer;transition:.2s ease}
.class-photo-card:hover{transform:translateY(-3px);border-color:#9fc4e1;box-shadow:0 18px 40px rgba(15,54,86,.14)}
.class-photo-card-media{position:relative;height:230px;overflow:hidden;background:linear-gradient(145deg,#082b4a,#0b4b7a)}
.class-photo-card-media>img,.class-area-hero-photo>img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 42%}
.class-photo-card-badge{position:absolute;left:12px;bottom:12px;z-index:3;padding:6px 9px;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:rgba(4,24,42,.78);backdrop-filter:blur(8px);color:#fff;font-size:.62rem;font-weight:900}
.class-photo-card-body{display:grid;gap:9px;padding:14px 15px 15px}.class-photo-card-body>div:first-child{min-width:0}.class-photo-card-body small{color:#6d8395;font-size:.61rem;font-weight:850;text-transform:uppercase;letter-spacing:.045em}.class-photo-card-body h3{margin:3px 0 0;color:#123c61;font-size:1.08rem}.class-photo-card-body p{margin:0;color:#6b8092;font-size:.68rem;min-height:2.2em}.class-photo-card-actions{display:flex;gap:7px;flex-wrap:wrap}
.class-photo-fallback{position:absolute;inset:0;display:grid;place-items:center;align-content:center;gap:4px;padding:22px;text-align:center;color:#eaf5ff;background:radial-gradient(circle at 80% 18%,rgba(54,152,238,.25),transparent 30%),linear-gradient(145deg,#061a30,#0b3d67)}
.class-photo-fallback:before{content:'π  ∑  √x  △';font-size:.68rem;font-weight:900;letter-spacing:.16em;color:#e4bd58}.class-photo-fallback strong{font-size:clamp(1.25rem,2vw,1.75rem)}.class-photo-fallback span{font-size:.68rem;color:#aac4d9}.class-photo-fallback small{font-size:.57rem;color:#7296b3;margin-top:5px}

/* Área interna da turma */
.class-area-hero{position:relative;display:grid;grid-template-columns:minmax(300px,.95fr) minmax(0,1.05fr);min-height:300px;overflow:hidden;border-radius:27px;border:1px solid rgba(73,148,216,.27);background:linear-gradient(135deg,#06182a,#0a3559);box-shadow:0 22px 52px rgba(4,28,49,.18)}
.class-area-hero-photo{position:relative;min-height:300px;overflow:hidden;background:#092b49}.class-area-hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 58%,rgba(6,24,42,.68) 100%);pointer-events:none}.class-area-hero-copy{position:relative;z-index:2;align-self:center;padding:30px 32px;color:#eef7ff}.class-area-hero-copy .kicker{color:#e9bf58}.class-area-hero-copy h1{margin:6px 0 5px;font-size:clamp(2rem,4vw,3.25rem);line-height:1;color:#fff}.class-area-hero-copy p{color:#a7bfd3;margin:0 0 16px}.class-area-hero-copy .actions{display:flex;gap:8px;flex-wrap:wrap}
.class-module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.class-module-card{position:relative;min-height:150px;padding:17px;border:1px solid #d4e3ee;border-radius:19px;background:linear-gradient(145deg,#fff,#f5f9fd);box-shadow:0 9px 25px rgba(19,60,94,.06);cursor:pointer;transition:.18s ease}.class-module-card:hover{transform:translateY(-2px);border-color:#a6c8e2}.class-module-card>span{display:grid;width:38px;height:38px;place-items:center;border-radius:12px;background:#e9f3fb;color:#135e9e}.class-module-card .nav-icon{width:22px;height:22px}.class-module-card h3{margin:12px 0 6px;color:#153f61}.class-module-card p{margin:0;color:#6c8193;font-size:.69rem;line-height:1.5}
.class-now-strip{grid-template-columns:repeat(4,minmax(0,1fr))}
.class-photo-editor{display:grid;gap:12px}.class-photo-editor-preview{height:250px;overflow:hidden;border:1px solid #d7e4ee;border-radius:18px;background:#edf4f9;position:relative}.class-photo-editor-preview img{width:100%;height:100%;object-fit:cover}.class-photo-editor-actions{display:flex;gap:8px;flex-wrap:wrap}

/* Leitura de avisos */
.notice-read-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-bottom:13px}.notice-read-stats>div{padding:12px;border:1px solid #d9e6ef;border-radius:14px;background:#f6fafe}.notice-read-stats strong{display:block;color:#123f66;font-size:1.2rem}.notice-read-stats span{font-size:.6rem;color:#73889a}.notice-manager-row .actions{align-items:center}

@media(max-width:1100px){.area-today-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.class-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.compact-hub-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:900px){
  #appRoot .content{padding-bottom:calc(78px + env(safe-area-inset-bottom));background:linear-gradient(180deg,#edf4fa,#f6f9fc)}
  #appRoot .content>.section,#appRoot #viewRoot>.section{margin-top:12px}
  .area-entry-hero,.area-operational-hero{border-radius:22px!important;margin-bottom:0!important}
  .area-today-strip{display:flex;overflow-x:auto;gap:8px;scroll-snap-type:x proximity;padding-bottom:4px;scrollbar-width:none}.area-today-strip::-webkit-scrollbar{display:none}.area-today-strip>article{flex:0 0 min(210px,68vw);scroll-snap-align:start;min-height:78px;padding:11px 12px}
  .area-entry-grid,.compact-hub-grid{grid-template-columns:1fr!important}.school-hub-grid{gap:10px!important}.school-hub-grid .hub-action-card{min-height:118px!important}
  .class-photo-grid{grid-template-columns:1fr;gap:12px}.class-photo-card{border-radius:19px}.class-photo-card-media{height:210px}.class-photo-card-body{padding:12px 13px 14px}
  .class-area-hero{grid-template-columns:1fr;min-height:0;border-radius:22px}.class-area-hero-photo{height:230px;min-height:230px}.class-area-hero-photo:after{background:linear-gradient(0deg,rgba(5,24,42,.65),transparent 48%)}.class-area-hero-copy{padding:20px}.class-area-hero-copy h1{font-size:2rem}.class-module-grid{grid-template-columns:1fr 1fr;gap:9px}.class-module-card{min-height:136px;padding:14px}.class-now-strip{display:flex}
  .notice-read-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
  /* Chat da Central: mesma lógica estrutural do Portal no mobile. */
  body.central-chat-focus .pjs-app-topbar,body.central-chat-focus #appBottomNav,body.central-chat-focus #commFloatBtn,body.central-chat-focus #commFloatPanel{display:none!important}
  body.central-chat-focus #appRoot .main{padding:0!important;margin:0!important;min-height:100svh!important}
  body.central-chat-focus #appRoot .content{padding:0!important;margin:0!important;background:#07131f!important;min-height:100svh!important}
  body.central-chat-focus #viewRoot{height:100svh!important;overflow:hidden!important}
  body.central-chat-focus .comm-page-head-v517{display:none!important}
  body.central-chat-focus .comm-workspace-v517.chat-focus .comm-chat-panel-v517{z-index:1500!important}
  .comm-workspace-v517:not(.chat-focus) .comm-chat-list-v517{min-height:calc(100svh - 190px)!important;max-height:none!important}
  .comm-workspace-v517:not(.chat-focus) .comm-chat-list-items-v517{max-height:none!important;height:auto!important;overflow:auto!important}
}
@media(max-width:560px){
  .class-photo-card-media{height:190px}.class-module-grid{grid-template-columns:1fr}.class-module-card{min-height:112px}.class-area-hero-photo{height:205px;min-height:205px}.class-area-hero-copy{padding:17px}.class-area-hero-copy .actions .btn{flex:1 1 auto}.notice-read-stats{grid-template-columns:1fr}.area-today-strip>article{flex-basis:min(196px,72vw)}
}
.school-context-toolbar{gap:9px;align-items:end}.school-context-toolbar>div:first-child{min-width:210px}.school-context-toolbar #schoolBackClass{align-self:center}
@media(max-width:700px){.school-context-toolbar{display:grid!important;grid-template-columns:1fr auto!important;align-items:end!important}.school-context-toolbar>div:first-child{grid-column:1/-1}.school-context-toolbar .field{margin-left:0!important}.school-context-toolbar>div:last-child{align-self:center}}

/* v5.3.0.1 — usuário do aluno: troca livre entre opções sugeridas */
.portal-username-picker{display:grid;gap:10px;padding:12px 14px;border:1px solid #dfeaf3;border-radius:14px;background:linear-gradient(145deg,#fff,#f7fbff)}
.portal-username-picker-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.portal-username-picker-head>div{display:grid;gap:3px}.portal-username-picker-head strong{font-size:.78rem;color:#214e75}.portal-username-picker-head span{font-size:.64rem;color:#71879a;line-height:1.45}.portal-username-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.portal-username-option{display:grid;gap:3px;text-align:left;padding:11px 12px;border:1px solid #d8e7f2;border-radius:12px;background:#fff;color:#175d9d;cursor:pointer;transition:.18s ease}.portal-username-option:hover{transform:translateY(-1px);border-color:#8fc2ed;box-shadow:0 7px 16px rgba(37,103,157,.08)}.portal-username-option.selected{border-color:#1768df;background:#edf6ff;box-shadow:0 0 0 2px rgba(23,104,223,.10)}.portal-username-option span{font-size:.8rem;font-weight:900;overflow-wrap:anywhere}.portal-username-option small{font-size:.58rem;color:#6f8aa0}.portal-username-picker>.btn{justify-self:start}
@media(max-width:700px){.portal-username-picker-head{display:grid}.portal-username-picker-head .btn{width:100%;justify-content:center}.portal-username-options{grid-template-columns:1fr 1fr}.portal-username-picker>.btn{width:100%;justify-content:center}}
@media(max-width:420px){.portal-username-options{grid-template-columns:1fr}}

/* v5.3.0.1 — usuário escolhido uma única vez */
.portal-username-locked{display:grid;gap:4px;align-items:start}
.portal-username-locked strong{color:var(--navy,#0b1f3a)}
.portal-username-locked span{color:var(--muted,#64748b);line-height:1.45}

/* =========================================================
   v5.3.0.2 · RESTAURAÇÃO VISUAL DA CENTRAL PJS
   Mantém a reorganização funcional da v5.3.0, mas devolve
   a Central ao tema escuro azul-marinho/dourado aprovado.
   ========================================================= */
body:not(.public) #appRoot .content{
  background:
    radial-gradient(circle at 78% -7%,rgba(37,136,242,.13),transparent 30%),
    radial-gradient(circle at 8% 18%,rgba(230,184,77,.045),transparent 24%),
    linear-gradient(180deg,#061426 0%,#061222 58%,#050f1c 100%)!important;
  color:#e8f3fc;
}
body:not(.public) #appRoot .content .card:not(.comm-chat-panel-v517):not(.comm-chat-list-v517),
body:not(.public) #appRoot .themed-card{
  border-color:rgba(88,148,204,.16)!important;
  background:linear-gradient(145deg,#081d32,#071728)!important;
  box-shadow:0 10px 29px rgba(0,0,0,.10)!important;
  color:#e8f3fc;
}
body:not(.public) .area-today-strip>article{
  border-color:rgba(92,155,213,.17)!important;
  background:linear-gradient(145deg,#081f36,#07192b)!important;
  box-shadow:0 8px 24px rgba(0,0,0,.10)!important;
}
body:not(.public) .area-today-strip>article:hover{border-color:rgba(76,157,230,.42)!important;box-shadow:0 12px 30px rgba(0,0,0,.18)!important}
body:not(.public) .area-today-strip>article>span{background:linear-gradient(145deg,#0d3154,#0b2743)!important;color:#8fc8ff!important;border:1px solid rgba(99,169,231,.14)}
body:not(.public) .area-today-strip small{color:#7898b3!important}
body:not(.public) .area-today-strip strong{color:#f2f8fd!important}
body:not(.public) .area-today-strip p{color:#7893aa!important}

body:not(.public) .hub-action-card.featured,
body:not(.public) .class-module-card.primary{
  border-color:rgba(230,184,77,.26)!important;
  background:linear-gradient(145deg,#0a2239,#071829)!important;
  box-shadow:inset 0 3px 0 rgba(230,184,77,.72),0 12px 30px rgba(0,0,0,.12)!important;
}
body:not(.public) .class-photo-card{
  border-color:rgba(90,153,210,.18)!important;
  background:linear-gradient(145deg,#081d32,#071728)!important;
  box-shadow:0 14px 34px rgba(0,0,0,.18)!important;
}
body:not(.public) .class-photo-card:hover{border-color:rgba(72,157,236,.42)!important;box-shadow:0 18px 42px rgba(0,0,0,.25)!important}
body:not(.public) .class-photo-card-body small{color:#7898b3!important}
body:not(.public) .class-photo-card-body h3{color:#f1f7fd!important}
body:not(.public) .class-photo-card-body p{color:#8aa4bb!important}
body:not(.public) .class-photo-card-media{background:linear-gradient(145deg,#061426,#0a3153)!important}
body:not(.public) .class-photo-card-badge{border-color:rgba(230,184,77,.28)!important;background:rgba(5,20,35,.86)!important;color:#f3d377!important}

body:not(.public) .class-module-card{
  border-color:rgba(88,148,204,.16)!important;
  background:linear-gradient(145deg,#081d32,#071728)!important;
  box-shadow:0 9px 25px rgba(0,0,0,.10)!important;
}
body:not(.public) .class-module-card:hover{border-color:rgba(69,151,226,.40)!important}
body:not(.public) .class-module-card>span{background:#0c3154!important;color:#8fc8ff!important;border:1px solid rgba(99,169,231,.14)}
body:not(.public) .class-module-card h3{color:#edf6fd!important}
body:not(.public) .class-module-card p{color:#819db5!important}
body:not(.public) .class-photo-editor-preview{border-color:rgba(91,151,207,.18)!important;background:#06182a!important}

body:not(.public) .notice-read-stats>div{border-color:rgba(91,151,207,.16)!important;background:linear-gradient(145deg,#081d32,#071728)!important}
body:not(.public) .notice-read-stats strong{color:#f2f8fd!important}
body:not(.public) .notice-read-stats span{color:#7898b3!important}

/* componentes novos devem seguir a tipografia/superfícies escuras da Central */
body:not(.public) .section-heading h2,
body:not(.public) .class-area-selector h2{color:#eef7ff!important}
body:not(.public) .section-heading p,
body:not(.public) .class-area-selector .muted{color:#7898b3!important}

@media(max-width:900px){
  body:not(.public) #appRoot .content{
    background:
      radial-gradient(circle at 86% -8%,rgba(37,136,242,.18),transparent 27%),
      radial-gradient(circle at 8% 15%,rgba(230,184,77,.055),transparent 23%),
      linear-gradient(180deg,#04101d 0%,#061426 42%,#050f1c 100%)!important;
  }
  body:not(.public) .area-today-strip>article{background:linear-gradient(145deg,#081d32,#071728)!important}
}


/* v5.3.0.3 — hotfix visual da Central: cards resumidos e sino no tema PJS */
body:not(.public) .area-today-strip>article,
body:not(.public) .central-now-strip article{
  background:linear-gradient(145deg,#0a2038,#08192d) !important;
  border:1px solid rgba(88,146,203,.24) !important;
  box-shadow:0 14px 34px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.02) !important;
}
body:not(.public) .area-today-strip>article:hover,
body:not(.public) .central-now-strip article:hover{
  border-color:rgba(201,162,73,.42) !important;
  box-shadow:0 18px 38px rgba(0,0,0,.28), 0 0 0 1px rgba(201,162,73,.08) inset !important;
}
body:not(.public) .area-today-strip>article>span,
body:not(.public) .central-now-strip article>span{
  background:linear-gradient(145deg,#0d3154,#0a2540) !important;
  border:1px solid rgba(109,170,226,.18) !important;
  color:#9ad0ff !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04) !important;
}
body:not(.public) .area-today-strip small,
body:not(.public) .central-now-strip small{color:#8ba8c0 !important}
body:not(.public) .area-today-strip strong,
body:not(.public) .central-now-strip strong{color:#f4f8fc !important}
body:not(.public) .area-today-strip p,
body:not(.public) .central-now-strip p{color:#8aa0b5 !important}

body:not(.public) .topbar .central-notify-btn{
  background:linear-gradient(145deg,#0b2743,#091b31) !important;
  border:1px solid rgba(89,152,211,.24) !important;
  color:#f2f7fb !important;
  box-shadow:0 10px 24px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.04) !important;
}
body:not(.public) .topbar .central-notify-btn span{color:inherit !important}
body:not(.public) .topbar .central-notify-btn i{background:#d8a33d !important;box-shadow:0 0 0 2px #07192c !important}
body:not(.public) .topbar .central-notify-btn.active{background:linear-gradient(145deg,#0d3a2b,#0a2c22) !important;border-color:rgba(61,188,132,.34) !important;color:#e8fff5 !important}
body:not(.public) .topbar .central-notify-btn.active i{background:#2fc27f !important;box-shadow:0 0 0 2px #0a251d !important}
body:not(.public) .topbar .central-notify-btn.blocked{background:linear-gradient(145deg,#3a1817,#2a1111) !important;border-color:rgba(235,118,104,.34) !important;color:#ffeceb !important}
body:not(.public) .topbar .central-notify-btn.blocked i{background:#ef675e !important;box-shadow:0 0 0 2px #261011 !important}


/* v5.3.0.4 — liberar fotos em destaque */
body:not(.public) #commPendingPhotos,body:not(.public) #commReleasePhotos{border-color:rgba(201,162,73,.34)!important}
body:not(.public) #commPendingPhotos>span,body:not(.public) #commReleasePhotos>span{color:#e6bb59!important}

/* v5.3.1 — Múltiplas escolas + capas PJS + perfil do aluno no Chat */
.class-photo-default-cover{position:absolute!important;inset:0!important;padding:0!important;display:block!important;background:#07192c!important;overflow:hidden!important}
.class-photo-default-cover>img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}
.class-cover-tag{position:absolute;left:10px;bottom:10px;z-index:2;padding:5px 8px;border-radius:999px;background:rgba(5,24,43,.78);border:1px solid rgba(226,184,82,.35);color:#f0c65e;font-size:.56rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase;backdrop-filter:blur(8px)}

.school-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}
.school-card{overflow:hidden;border:1px solid rgba(85,151,211,.22);border-radius:23px;background:linear-gradient(155deg,#0a223b,#07192c);box-shadow:0 18px 42px rgba(0,0,0,.2);cursor:pointer;transition:.18s ease}
.school-card:hover{transform:translateY(-3px);border-color:rgba(219,177,72,.42);box-shadow:0 22px 48px rgba(0,0,0,.28)}
.school-card-media{position:relative;height:180px;overflow:hidden;background:linear-gradient(135deg,#0c2b4a,#07192c)}
.school-card-media>img{width:100%;height:100%;object-fit:cover;display:block}
.school-card-media.has-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(4,18,32,.5));pointer-events:none}
.school-cover-fallback{position:absolute;inset:0;display:grid;grid-template-columns:64px 1fr;gap:16px;align-items:center;padding:24px;background:radial-gradient(circle at 82% 18%,rgba(48,120,185,.24),transparent 34%),linear-gradient(135deg,#0d3154,#07192c);color:#fff}
.school-cover-fallback:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(111,175,230,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(111,175,230,.055) 1px,transparent 1px);background-size:28px 28px;pointer-events:none}
.school-cover-fallback>.nav-icon{position:relative;z-index:1;width:60px;height:60px;padding:15px;border-radius:18px;background:rgba(7,26,46,.7);border:1px solid rgba(224,181,73,.32);color:#efc461}
.school-cover-fallback>div{position:relative;z-index:1;display:grid;gap:4px;min-width:0}.school-cover-fallback small{font-size:.58rem;letter-spacing:.13em;color:#d5a93c;font-weight:950}.school-cover-fallback strong{font-size:1.08rem;line-height:1.15;color:#f4f8fc}.school-cover-fallback em{font-style:normal;color:#86a8c4;font-size:.66rem}
.school-card-badge{position:absolute;right:10px;top:10px;z-index:3;padding:6px 9px;border-radius:999px;background:rgba(5,22,40,.82);border:1px solid rgba(255,255,255,.12);color:#dcecff;font-size:.6rem;font-weight:900;backdrop-filter:blur(8px)}
.school-card-body{padding:15px;display:grid;gap:13px}.school-card-body small{color:#7f9db8;font-size:.63rem}.school-card-body h3{margin:2px 0 0;color:#f2f7fb;font-size:1rem}.school-card-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.school-card-stats span{padding:9px;border-radius:13px;background:#081b30;border:1px solid rgba(82,145,202,.14);color:#809bb3;font-size:.59rem}.school-card-stats strong{display:block;color:#eef6fd;font-size:.9rem}

.school-area-hero{position:relative;min-height:265px;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);overflow:hidden;border-radius:26px;border:1px solid rgba(81,145,202,.22);background:#07192c;box-shadow:0 22px 50px rgba(0,0,0,.22)}
.school-area-hero-media{position:relative;min-height:265px;overflow:hidden;background:#081c31}.school-area-hero-media>img{width:100%;height:100%;object-fit:cover;display:block}.school-area-hero-media .school-cover-fallback{position:absolute;inset:0}.school-area-hero-copy{display:flex;flex-direction:column;justify-content:center;padding:28px;background:linear-gradient(145deg,#0b2743,#07192c);color:#fff}.school-area-hero-copy h1{margin:5px 0 8px;color:#fff;font-size:clamp(1.35rem,2.5vw,2.1rem)}.school-area-hero-copy p{margin:0 0 18px;color:#85a6c2}
.school-tabs{display:flex;gap:8px;overflow-x:auto;margin:14px 0 4px;padding:4px 2px 8px;scrollbar-width:none}.school-tabs::-webkit-scrollbar{display:none}.school-tab{flex:0 0 auto;border:1px solid rgba(76,144,207,.22);border-radius:999px;background:#081d33;color:#8eabc3;padding:9px 13px;font-size:.65rem;font-weight:850;cursor:pointer}.school-tab:hover{border-color:rgba(214,172,69,.34);color:#eaf4fc}.school-tab.active{background:linear-gradient(145deg,#0e3559,#0a2845);border-color:rgba(224,181,73,.4);color:#f1c75d}.school-tab.add{border-style:dashed;color:#b9ccdc}
.school-photo-editor-preview{height:230px;position:relative;overflow:hidden;border-radius:18px;background:#07192c;border:1px solid rgba(83,151,210,.22)}.school-photo-editor-preview>img{width:100%;height:100%;object-fit:cover}.school-photo-editor-preview .school-cover-fallback{position:absolute;inset:0}
.school-student-summary{display:flex;align-items:end;gap:10px;padding:12px 0 16px}.school-student-summary strong{font-size:2rem;color:#f0c55b}.school-student-summary span{color:#829fb7;padding-bottom:4px}.school-student-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.school-student-row{width:100%;display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;text-align:left;padding:10px;border:0;border-bottom:1px solid rgba(84,147,202,.12);background:transparent;color:#e9f3fb;cursor:pointer}.school-student-row:hover{background:#0a2540}.school-student-row>span{width:30px;height:30px;display:grid;place-items:center;border-radius:10px;background:#0c2d4d;color:#8fc7f4;font-size:.63rem;font-weight:900}.school-student-row strong{font-size:.72rem}.school-student-row em{font-style:normal;color:#7fa0bc;font-size:.58rem}

.chat-profile-target{cursor:pointer!important;border-radius:12px;transition:.15s ease}.chat-profile-target:hover{background:rgba(65,139,205,.09)}.comm-chat-header-avatar.chat-profile-target{padding:3px}.chat-student-profile-link{cursor:pointer}.chat-student-profile-link:hover{background:rgba(39,118,186,.1)!important}.chat-student-profile-link:after{content:"Perfil →";margin-left:auto;color:#75a8d4;font-size:.55rem;font-weight:850}

@media(max-width:900px){
 .school-card-grid{grid-template-columns:1fr}.school-card-media{height:165px}.school-area-hero{grid-template-columns:1fr;min-height:0}.school-area-hero-media{min-height:195px;height:195px}.school-area-hero-copy{padding:17px}.school-area-hero-copy .actions{display:grid;grid-template-columns:1fr 1fr}.school-area-hero-copy .actions .btn:last-child{grid-column:1/-1}.school-student-groups{grid-template-columns:1fr}.school-card-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.school-cover-fallback{grid-template-columns:48px 1fr;padding:18px}.school-cover-fallback>.nav-icon{width:48px;height:48px;padding:12px}.school-tabs{margin-inline:-2px}.chat-student-profile-link:after{content:"›";font-size:1rem}
}
@media(max-width:520px){.school-card-media{height:150px}.school-card-body{padding:13px}.school-card-stats span{padding:8px 7px}.school-card-stats strong{font-size:.82rem}.school-area-hero-media{height:170px;min-height:170px}.school-photo-editor-preview{height:190px}}

/* v5.3.2 — Fotos aprovadas nos balões do Chat */
.chat-message.student-author{align-items:flex-end;gap:7px}
.chat-message-student-avatar{
  width:34px;height:34px;flex:0 0 34px;display:grid;place-items:center;
  border-radius:50%;overflow:hidden;align-self:flex-end;margin-bottom:2px;
  background:linear-gradient(145deg,#0d3154,#0a2540);
  border:1px solid rgba(232,188,81,.42);box-shadow:0 5px 14px rgba(0,0,0,.2)
}
.chat-message-student-avatar>.student-avatar-default,
.chat-message-student-avatar>.chat-message-student-photo{
  width:100%;height:100%;border:0!important;border-radius:50%!important;box-shadow:none!important;object-fit:cover
}
.chat-message-student-avatar .student-avatar-default>b{left:3px;bottom:2px;min-width:19px;height:13px;font-size:.4rem;padding:0 3px}
.chat-message-student-avatar .student-avatar-default>i{right:4px;top:2px;font-size:.55rem}
.chat-message-student-avatar .student-avatar-glyph svg{width:70%;height:70%}
.chat-author.chat-author-student{display:block;width:max-content;max-width:100%;color:#75baff;font-weight:900}
.central-chat-student-profile-trigger{cursor:pointer}
.central-chat-student-profile-trigger:hover{filter:brightness(1.08)}
.central-chat-student-profile-trigger:focus-visible{outline:2px solid #e9bd55;outline-offset:2px;border-radius:7px}
.portal-chat-student-identity{cursor:default}

/* Os avatares antigos continuam ocultos; o novo avatar do aluno é exibido somente quando o RPC identifica o autor escolar. */
.chat-messages-v517 .chat-message-student-avatar{display:grid!important}

@media(max-width:900px){
  .chat-message.student-author{gap:5px}
  .chat-message-student-avatar{width:30px;height:30px;flex-basis:30px;margin-bottom:1px}
  .chat-message-student-avatar .student-avatar-default>b{display:none}
  .chat-message-student-avatar .student-avatar-default>i{right:3px;top:1px;font-size:.48rem}
  .chat-messages-v517 .chat-message.student-author{max-width:94%!important}
}


/* v5.3.2.1 — agrupamento de mensagens consecutivas no chat */
.chat-messages-v517 .chat-message.other.chat-continuation{margin-left:41px;margin-top:-5px}
.chat-messages-v517 .chat-message.other.chat-continuation .chat-bubble:before{display:none}
.chat-messages-v517 .chat-message.other.chat-continuation .chat-bubble{border-top-left-radius:10px!important}
.chat-messages-v517 .chat-message.other.student-author.chat-continuation{margin-left:41px}
@media(max-width:900px){
  .chat-messages-v517 .chat-message.other.chat-continuation{margin-left:35px;margin-top:-5px}
  .chat-messages-v517 .chat-message.other.student-author.chat-continuation{margin-left:35px}
}

/* v5.3.3 — Comunicação por escola/turma + avisos avançados */
.comm-context-filter{display:grid;grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) auto;gap:10px;align-items:end;margin:0 0 12px;padding:12px;border:1px solid rgba(91,153,210,.2);border-radius:18px;background:linear-gradient(145deg,#0a2038,#08192d);box-shadow:0 12px 30px rgba(0,0,0,.16)}
.comm-context-filter .field{margin:0}.comm-context-filter label{color:#86a4bd}.comm-context-filter select{background:#07192d;color:#eaf4fc;border-color:rgba(100,161,216,.22)}
.comm-chat-context{display:block;margin:2px 0 1px;font-style:normal;font-size:.58rem;line-height:1.2;color:#7da2bf;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.notice-context-toolbar{align-items:end}.notice-target-panel{margin-top:0}.notice-target-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:7px}.notice-target-school{border:1px solid rgba(96,157,215,.18);border-radius:14px;padding:10px 11px;background:rgba(7,25,45,.55)}.notice-target-school legend{padding:0 6px;color:#9fc6e7;font-size:.7rem;font-weight:850}.notice-target-check{display:flex;align-items:center;gap:8px;padding:7px 4px;color:#d9e8f5;font-size:.74rem}.notice-target-check input{accent-color:#c7a149}.notice-manager-row.archived{opacity:.68}.notice-manager-row.archived .list-main strong{text-decoration:none;color:#9db0c0}
@media(max-width:800px){.comm-context-filter{grid-template-columns:1fr 1fr}.comm-context-filter .btn{grid-column:1/-1}.notice-target-grid{grid-template-columns:1fr}}
@media(max-width:560px){.comm-context-filter{grid-template-columns:1fr}.comm-context-filter .btn{grid-column:auto}.notice-context-toolbar{display:grid!important;grid-template-columns:1fr 1fr}.notice-context-toolbar .field.grow{min-width:0}.notice-context-toolbar #newNotice{grid-column:1/-1}.notice-context-toolbar #noticeReload{width:100%}}

/* v5.3.3.4 — Portal do Reforço alinhado ao Portal da Escola + agenda própria */
.portal-reinforcement-classic .portal-classic-stage{padding-bottom:96px}
.portal-reinforcement-classic .portal-home-view .public-hero{margin-bottom:18px}
.ref-portal-agenda{display:grid;gap:18px}
.ref-fixed-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}
.ref-fixed-card{display:grid;gap:5px;padding:16px;border-radius:18px;border:1px solid rgba(78,158,235,.22);background:linear-gradient(145deg,rgba(11,45,78,.98),rgba(7,27,49,.98));box-shadow:0 12px 32px rgba(3,20,37,.15)}
.ref-fixed-card span{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:#8fc7f4;font-weight:850}.ref-fixed-card strong{font-size:1.22rem;color:#fff}.ref-fixed-card small{color:#bfd6e9}
.ref-agenda-rules{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.ref-agenda-rules>div{display:grid;gap:6px;padding:14px;border-radius:15px;background:rgba(42,122,197,.08);border:1px solid rgba(42,122,197,.15)}.ref-agenda-rules strong{color:#0c416d}.ref-agenda-rules span{font-size:.8rem;line-height:1.45;color:#526b80}
.ref-agenda-list{display:grid;gap:9px}.ref-agenda-row{display:grid;grid-template-columns:112px minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:12px 14px;border-radius:16px;border:1px solid rgba(40,119,190,.14);background:#fff}.ref-agenda-date{display:grid;gap:2px}.ref-agenda-date strong{color:#0e4b7e}.ref-agenda-date span{font-size:.85rem;color:#687f91}.ref-agenda-main{display:grid;gap:3px}.ref-agenda-main>span,.ref-agenda-main>small{font-size:.78rem;color:#647c90}.ref-agenda-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.ref-requests-head{margin-top:8px}
.ref-agenda-dialog{border:0;border-radius:22px;padding:0;width:min(560px,calc(100vw - 28px));box-shadow:0 26px 80px rgba(2,18,32,.35);background:#fff}.ref-agenda-dialog::backdrop{background:rgba(2,15,28,.62);backdrop-filter:blur(3px)}.ref-agenda-dialog form{display:grid}.ref-agenda-dialog header,.ref-agenda-dialog footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;border-bottom:1px solid #e5edf4}.ref-agenda-dialog footer{border-bottom:0;border-top:1px solid #e5edf4;justify-content:flex-end}.ref-dialog-body{padding:18px;display:grid;gap:14px}.ref-dialog-close{border:0;background:transparent;font-size:1.5rem;cursor:pointer;color:#527086}.ref-agenda-dialog textarea{min-height:100px}
.reinforcement-agenda-requests .list-row{align-items:flex-start}
.comm-chat-avatar>img[src*="/assets/classes/turma-"]{object-position:center center!important;transform:none!important;background:#061a2d}
.class-photo-default-cover>img{object-position:center center!important}
@media(max-width:900px){.portal-reinforcement-classic .portal-classic-stage{padding-bottom:88px}.ref-agenda-rules{grid-template-columns:1fr}.ref-agenda-row{grid-template-columns:82px minmax(0,1fr);align-items:start}.ref-agenda-row>.pill{justify-self:start}.ref-agenda-actions{grid-column:1/-1;justify-content:flex-start}.ref-fixed-grid{grid-template-columns:1fr 1fr}.portal-reinforcement-classic .portal-shortcut-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.ref-fixed-grid{grid-template-columns:1fr}.portal-reinforcement-classic .portal-shortcut-grid{grid-template-columns:1fr 1fr}.ref-agenda-row{grid-template-columns:72px minmax(0,1fr);padding:11px}.ref-agenda-actions .btn{flex:1}}

/* v5.3.3.4 — Analytics 2.0 */
.comm-chart-legend i.school,.comm-chart-day i.school{background:#2fb887}
.comm-chart-legend i.reinforcement,.comm-chart-day i.reinforcement{background:#9b6df2}
.analytics-three-legend{flex-wrap:wrap;justify-content:flex-start}
.analytics-daily-chart{min-width:max(100%,calc(var(--chart-days,30) * var(--chart-day-min,22px)));scrollbar-width:thin}
.analytics-daily-chart .comm-chart-day{min-width:var(--chart-day-min,22px)}
.analytics-daily-chart .comm-chart-bars{gap:1px}
.analytics-daily-chart .comm-chart-bars i{width:6px}
.analytics-chart-note{margin-top:9px;font-size:.68rem;line-height:1.45;color:#7890a6}
.analytics-now-summary{display:flex;align-items:baseline;gap:8px;margin:6px 0 12px;padding:13px 15px;border-radius:14px;background:rgba(27,121,232,.08);border:1px solid rgba(27,121,232,.16)}
.analytics-now-summary strong{font-size:1.8rem;color:#1678ef}.analytics-now-summary span{font-size:.78rem;color:#71879a}
.analytics-now-page{display:grid;text-align:right;gap:2px}.analytics-now-page span{font-size:.72rem;font-weight:800}.analytics-now-page small{font-size:.61rem;color:#7890a6}
body:not(.public) .analytics-chart-note{color:#9eb4c8}
body:not(.public) .analytics-now-summary{background:rgba(47,139,255,.1);border-color:rgba(76,155,255,.22)}
body:not(.public) .analytics-now-summary span,body:not(.public) .analytics-now-page small{color:#9fb5ca}
@media(max-width:900px){.analytics-daily-card{overflow:hidden}.analytics-daily-card .analytics-daily-chart{overflow-x:auto;max-width:100%}.analytics-now-page{text-align:left}.analytics-now-card .list-row{align-items:flex-start}}
@media(max-width:520px){.analytics-three-legend{gap:8px 12px}.analytics-three-legend span{font-size:.62rem}.analytics-daily-chart .comm-chart-bars i{width:5px}}


/* v5.3.3.4 — solicitação de acompanhamento + diagnóstico */
.request-main{padding-top:18px}
.request-hero{max-width:1220px;margin:28px auto 8px;padding:32px;display:grid;grid-template-columns:minmax(0,1.55fr) minmax(260px,.65fr);gap:28px;align-items:center;border-radius:30px;background:linear-gradient(135deg,#071426,#0c2441);color:#fff;box-shadow:0 24px 70px rgba(2,12,27,.24)}
.request-hero-copy h1{font-size:clamp(2.15rem,4vw,4.4rem);line-height:.98;margin:8px 0 18px;max-width:900px}
.request-hero-copy>p{font-size:1.08rem;line-height:1.7;color:#c8d6ea;max-width:830px}
.request-flow-mini{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0}.request-flow-mini span{display:flex;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);padding:9px 12px;border-radius:999px;font-size:.92rem}.request-flow-mini b{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#e2b958;color:#071426}
.request-hero-card{min-height:340px;border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,.1),rgba(255,255,255,.04));border:1px solid rgba(255,255,255,.13);display:flex;flex-direction:column;align-items:center;text-align:center;padding:22px}.request-hero-card img{width:210px;height:230px;object-fit:contain;object-position:center bottom}.request-hero-card strong{font-size:1.12rem}.request-hero-card span{color:#c8d6ea;margin-top:7px;line-height:1.5}
.request-step{display:grid!important;place-items:center;width:42px;height:42px;border-radius:14px;background:#102a4c;color:#f0c866;font-weight:800;margin-bottom:13px}
.request-form-section{max-width:1140px}.request-form-head{display:flex;justify-content:space-between;gap:22px;align-items:flex-end;margin-bottom:18px}.request-form-head h2{margin:4px 0 6px}.request-form-head p{margin:0;color:var(--muted)}.request-secure{display:flex;align-items:center;gap:10px;background:#eef5ff;border:1px solid #d7e6f8;padding:10px 13px;border-radius:16px;min-width:255px}.request-secure img{width:42px;height:42px;object-fit:cover;border-radius:12px}.request-secure span{display:flex;flex-direction:column}.request-secure small{color:#66768b}
.request-form{padding:0;overflow:hidden}.request-form-block{padding:24px 26px;border-bottom:1px solid var(--line)}.request-form-title{display:flex;align-items:center;gap:12px;margin-bottom:18px}.request-form-title>span{display:grid;place-items:center;width:42px;height:42px;background:#0e2748;color:#f0c866;border-radius:14px;font-weight:800}.request-form-title>div{display:flex;flex-direction:column}.request-form-title strong{font-size:1.05rem}.request-form-title small{color:var(--muted);margin-top:2px}.request-form>.schedule-consent{margin:22px 26px 0}.request-submit-row{padding:22px 26px 26px;display:flex;gap:14px;align-items:center;flex-wrap:wrap}.request-submit-row>span{font-size:.9rem;color:var(--muted)}.hp-field{position:absolute!important;left:-9999px!important;opacity:0!important;pointer-events:none!important}
.request-success{padding:34px;text-align:center}.request-success-mark,.diagnostic-done-mark{width:70px;height:70px;margin:0 auto 14px;border-radius:24px;background:#dff6e9;color:#0c7a48;display:grid;place-items:center;font-size:2.2rem;font-weight:900}.request-success h2{font-size:2rem;margin:6px 0 10px}.request-success p{max-width:700px;margin:0 auto 16px;line-height:1.65}.request-success-info{max-width:700px;margin:18px auto;padding:15px 17px;border-radius:16px;background:#eef5ff;border:1px solid #d6e7fb;display:flex;flex-direction:column;text-align:left;gap:3px}.request-success .actions{justify-content:center;margin-top:20px}

.diagnostic-page{min-height:100vh;background:linear-gradient(180deg,#f7fbff,#edf4fb)}.diagnostic-main{padding:22px 18px 60px}.diagnostic-root{max-width:1120px;margin:0 auto}.diagnostic-shell{padding-top:12px}.diagnostic-header{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:16px}.diagnostic-header h1{font-size:clamp(2rem,4vw,3.3rem);margin:5px 0 8px;color:#0b1d34}.diagnostic-header p{max-width:800px;color:#5d6e82;line-height:1.6;margin:0}.diagnostic-counter{min-width:130px;text-align:center;padding:14px 18px;border-radius:18px;background:#0b203b;color:#fff}.diagnostic-counter strong{display:block;font-size:1.55rem;color:#f0c866}.diagnostic-counter span{font-size:.8rem;color:#c4d2e5}.diagnostic-progress{height:9px;background:#dfe9f4;border-radius:999px;overflow:hidden;margin:14px 0 22px}.diagnostic-progress span{display:block;height:100%;background:linear-gradient(90deg,#1b65a8,#e2b958);border-radius:999px;transition:width .2s ease}
.diagnostic-layout{display:grid;grid-template-columns:62px minmax(0,1fr);gap:18px;align-items:start}.diagnostic-nav{display:grid;gap:8px;position:sticky;top:90px}.diagnostic-nav button{width:48px;height:48px;border-radius:15px;border:1px solid #d4e1ef;background:#fff;color:#52657a;font-weight:800;cursor:pointer}.diagnostic-nav button.active{background:#0d2748;color:#fff;border-color:#0d2748}.diagnostic-nav button.done:not(.active){background:#e5f6ec;color:#16744d;border-color:#bce4cf}
.diagnostic-question-card{background:#fff;border:1px solid #dbe5f0;border-radius:26px;padding:28px;box-shadow:0 16px 42px rgba(12,40,73,.08)}.diagnostic-question-meta{display:flex;justify-content:space-between;gap:12px;align-items:center;color:#607085;font-size:.86rem}.diagnostic-question-meta span:last-child{background:#eef5ff;padding:6px 9px;border-radius:999px;color:#1a5a96}.diagnostic-question-card h2{font-size:clamp(1.35rem,2.4vw,2rem);line-height:1.35;color:#0b1d34;margin:18px 0 22px}.diagnostic-options{display:grid;gap:11px}.diagnostic-option{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:12px;padding:15px;border:1px solid #d9e4ef;border-radius:17px;cursor:pointer;background:#fbfdff;transition:.15s}.diagnostic-option:hover{border-color:#92b7db;background:#f3f8fd}.diagnostic-option.selected{border-color:#1d65a5;background:#eaf4ff;box-shadow:inset 0 0 0 1px #1d65a5}.diagnostic-option input{position:absolute;opacity:0}.diagnostic-letter{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:#edf2f8;color:#243f5d;font-weight:900}.diagnostic-option.selected .diagnostic-letter{background:#0d2748;color:#f0c866}.diagnostic-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:24px;padding-top:20px;border-top:1px solid #e3ebf3}.diagnostic-complete{max-width:760px;margin:80px auto;text-align:center;background:#fff;border:1px solid #dce7f1;border-radius:28px;padding:44px 34px;box-shadow:0 18px 50px rgba(10,37,68,.09)}.diagnostic-complete h1{font-size:2.5rem;margin:8px 0}.diagnostic-complete p{color:#5f7084;line-height:1.7}.diagnostic-complete .actions{justify-content:center;margin-top:20px}

/* Central: solicitação inicial */
.accomp-request-list .list-row{align-items:flex-start}.accomp-request-diagnostic{min-width:90px;text-align:right}.diag-skill-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.diag-skill-card{border:1px solid var(--line);border-radius:15px;padding:11px 12px}.diag-skill-card strong{display:flex;justify-content:space-between;gap:10px}.diag-skill-bar{height:7px;background:var(--line);border-radius:99px;overflow:hidden;margin-top:8px}.diag-skill-bar span{display:block;height:100%;background:linear-gradient(90deg,#2a76ba,#d6ad4f)}.diag-answer-row.correct{border-left:4px solid #3da06e}.diag-answer-row.wrong{border-left:4px solid #c95a5a}.accomp-detail-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.accomp-detail-meta>div{background:var(--surface-2);border:1px solid var(--line);padding:11px 12px;border-radius:14px}.accomp-detail-meta small{display:block;color:var(--muted);margin-bottom:3px}

@media(max-width:800px){
 .request-main{padding-top:4px}.request-hero{margin:12px;border-radius:24px;padding:24px 20px;grid-template-columns:1fr}.request-hero-copy h1{font-size:2.5rem}.request-hero-card{min-height:230px}.request-hero-card img{height:145px}
 .request-form-head{align-items:stretch;flex-direction:column}.request-secure{min-width:0}.request-form-block{padding:20px 18px}.request-form>.schedule-consent{margin:18px 18px 0}.request-submit-row{padding:18px;align-items:stretch;flex-direction:column}.request-submit-row .btn{width:100%}
 .diagnostic-main{padding:14px 12px 40px}.diagnostic-header{align-items:stretch;flex-direction:column}.diagnostic-counter{align-self:flex-start}.diagnostic-layout{grid-template-columns:1fr}.diagnostic-nav{position:static;display:flex;overflow:auto;padding-bottom:3px}.diagnostic-nav button{min-width:42px;width:42px;height:42px}.diagnostic-question-card{padding:20px 16px;border-radius:20px}.diagnostic-question-meta{align-items:flex-start;flex-direction:column}.diagnostic-actions{flex-wrap:wrap}.diagnostic-actions .small{order:3;width:100%;text-align:center}.diagnostic-actions .btn{flex:1}
 .diag-skill-grid,.accomp-detail-meta{grid-template-columns:1fr}
}
/* v5.3.3.4 — detalhe da solicitação e diagnóstico na Central */
.accomp-request-detail{display:grid;gap:14px}.accomp-request-detail .card{margin:0}.compact-info-grid>div{display:flex;flex-direction:column;gap:4px;border:1px solid var(--line);background:var(--surface-2);border-radius:14px;padding:12px}.compact-info-grid small{color:var(--muted)}
.diagnostic-skills{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.diagnostic-skill{border:1px solid var(--line);border-radius:14px;padding:12px;background:var(--surface-2)}.diagnostic-skill>div:first-child{display:flex;justify-content:space-between;gap:10px;align-items:center}.diagnostic-skill span{font-size:.82rem;color:var(--muted)}.diagnostic-skill-track{height:8px;background:var(--line);border-radius:99px;overflow:hidden;margin-top:9px}.diagnostic-skill-track i{display:block;height:100%;background:linear-gradient(90deg,#2a76ba,#d6ad4f);border-radius:inherit}
.diagnostic-answer-list{display:grid;gap:9px}.diagnostic-answer{border:1px solid var(--line);border-left-width:4px;border-radius:13px;padding:12px;background:var(--surface-2)}.diagnostic-answer.is-correct{border-left-color:#3da06e}.diagnostic-answer.is-wrong{border-left-color:#c95a5a}.diagnostic-answer-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.diagnostic-answer p{margin:7px 0;font-size:.92rem}.diagnostic-answer small{color:var(--muted)}
@media(max-width:720px){.diagnostic-skills,.compact-info-grid{grid-template-columns:1fr}.accomp-request-detail .section-head{align-items:flex-start}.diagnostic-answer-head{align-items:flex-start}}

/* v5.3.3.5 — Solicitação como continuação visual da Divulgação */
.request-hero-v535{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr);gap:28px;align-items:stretch;padding:clamp(28px,5vw,62px);border-radius:34px;background:linear-gradient(135deg,#071426 0%,#0b2038 55%,#123a62 100%);border:1px solid rgba(96,173,255,.18);box-shadow:0 30px 80px rgba(0,0,0,.28)}
.request-hero-v535:before{content:"";position:absolute;inset:auto -10% -55% 38%;height:110%;background:radial-gradient(circle,rgba(64,155,255,.22),transparent 64%);pointer-events:none}
.request-hero-v535 .request-hero-copy{position:relative;z-index:2;align-self:center}.request-hero-v535 .request-hero-copy h1{max-width:780px;color:#fff;font-size:clamp(2.15rem,5vw,4.4rem);line-height:.98;letter-spacing:-.045em}.request-hero-v535 .request-hero-copy>p{max-width:720px;color:#c9d7e8;font-size:clamp(1rem,1.45vw,1.16rem);line-height:1.72}.request-hero-v535 .request-flow-mini{margin:22px 0}.request-hero-v535 .public-hero-side{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:390px;padding:0}.request-hero-v535 .public-hero-art{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:center;overflow:hidden;border-radius:28px;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(5,16,29,.3));border:1px solid rgba(255,255,255,.09)}.request-hero-v535 .public-hero-art img{width:min(100%,480px);height:100%;object-fit:contain;object-position:center bottom}.request-analysis-card{position:relative;z-index:2;margin:0 16px 16px;padding:18px 20px;border-radius:20px;background:rgba(5,18,32,.88);border:1px solid rgba(232,193,93,.38);box-shadow:0 16px 36px rgba(0,0,0,.28);backdrop-filter:blur(12px)}.request-analysis-card strong{display:block;color:#f1ce6d;font-size:1.02rem}.request-analysis-card span,.request-analysis-card small{display:block;margin-top:7px;color:#d7e2ee;line-height:1.5}.request-analysis-card small{color:#b9c9da}.request-contact-cta{padding-bottom:34px}.request-contact-card{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px 30px;border-radius:26px;background:linear-gradient(135deg,#0a1d32,#103253);border:1px solid rgba(86,163,245,.2);box-shadow:0 18px 50px rgba(0,0,0,.2)}.request-contact-card h2{margin:.2rem 0 .5rem;color:#fff}.request-contact-card p{max-width:760px;margin:0;color:#c6d5e5;line-height:1.6}.request-whatsapp-btn{flex:0 0 auto;white-space:nowrap}
@media(max-width:900px){.request-hero-v535{grid-template-columns:1fr;padding:26px 20px;border-radius:24px;gap:16px}.request-hero-v535 .public-hero-side{min-height:390px}.request-hero-v535 .request-hero-copy h1{font-size:clamp(2.25rem,11vw,3.6rem)}.request-analysis-card{margin:0 10px 10px}.request-contact-card{align-items:flex-start;flex-direction:column;padding:24px 20px}.request-whatsapp-btn{width:100%;text-align:center}}

/* v5.3.3.5 — Portal do Aluno particular / Agenda / Desempenho */
.portal-chat-page.single-conversation{grid-template-columns:minmax(0,1fr)}
.portal-chat-page.single-conversation .portal-chat-box{min-width:0}
.portal-chat-page.single-conversation .single-chat-back{display:none}
.agenda-deadline-note{color:#8b5b13!important;font-weight:700}
.ref-agenda-row.status-cancelada{opacity:.78;background:#fff8f8;border-color:rgba(183,58,58,.2)}
.ref-agenda-row.status-concluida{background:#f7fafc;border-color:rgba(55,91,118,.14)}
.ref-fixed-card .btn{margin-top:8px;width:max-content;max-width:100%}
.profile-notification-summary{display:block}

.agenda-request-central-list{display:grid;gap:14px}
.agenda-request-central-card{border:1px solid rgba(53,128,191,.2);border-radius:20px;padding:16px;background:linear-gradient(145deg,rgba(9,31,54,.98),rgba(12,48,78,.96));color:#f4f8fc;box-shadow:0 12px 32px rgba(2,17,31,.14)}
.agenda-request-central-card header{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px}.agenda-request-central-card header h3{margin:2px 0 4px;color:#fff}.agenda-request-central-card header p{margin:0;color:#a9c5d9;font-size:.82rem}.agenda-request-central-card .kicker{color:#e1bb63}
.agenda-request-central-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.agenda-request-central-grid>div{display:grid;gap:4px;padding:12px;border:1px solid rgba(141,195,230,.14);border-radius:14px;background:rgba(255,255,255,.045)}.agenda-request-central-grid span{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:#8fb3ca}.agenda-request-central-grid strong{color:#f8fbfd}.agenda-request-central-grid small{color:#b7cad8;line-height:1.4}.agenda-request-central-grid select{margin-top:6px;background:#0a2035;color:#f4f8fc;border:1px solid rgba(144,193,226,.3);border-radius:10px;padding:8px;width:100%}
.agenda-request-central-actions{margin-top:14px}.agenda-request-central-actions .btn[disabled]{opacity:.45;cursor:not-allowed}
.reinforcement-followup .list-row{align-items:center}.followup-student-summary{background:rgba(38,120,191,.07);border-color:rgba(38,120,191,.16)}
.reinforce-followup-form textarea{min-height:88px}

@media(max-width:1000px){.agenda-request-central-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.agenda-request-central-grid{grid-template-columns:1fr}.agenda-request-central-card header{flex-direction:column}.agenda-request-central-actions .btn,.agenda-request-central-actions a.btn{width:100%;justify-content:center}.portal-chat-page.single-conversation .single-chat-back{display:inline-flex}.portal-chat-page.single-conversation .portal-chat-mobile-back.single-chat-back{visibility:hidden;width:0;padding:0;margin:0}}

/* ========================================================================== */
/* v5.3.4 · Flashcards 2.0                                                   */
/* ========================================================================== */
.public-portal .portal-classic-shell .portal-app-nav.portal-bottom-nav{
  grid-template-columns:none!important;grid-auto-flow:column;grid-auto-columns:minmax(82px,1fr);overflow-x:auto!important;overscroll-behavior-inline:contain;scrollbar-width:none
}
.public-portal .portal-classic-shell .portal-app-nav.portal-bottom-nav::-webkit-scrollbar{display:none}
.flashcard-study-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;margin-top:14px}
.flashcard-study-kpis>div{min-width:0;padding:13px 11px;border:1px solid rgba(95,143,184,.18);border-radius:15px;background:linear-gradient(145deg,#fbfdff,#f3f8fd);display:grid;gap:4px}
.flashcard-study-kpis span{font-size:.66rem;color:#6a8093;font-weight:800}.flashcard-study-kpis strong{font-size:1.08rem;color:#123e69;overflow-wrap:anywhere}
.flashcard-set-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.flashcard-set-card{display:flex;flex-direction:column;gap:12px;min-width:0;padding:18px;border:1px solid rgba(65,129,188,.2);border-radius:20px;background:linear-gradient(160deg,#fff,#f5f9fd);box-shadow:0 12px 34px rgba(19,57,91,.08)}
.flashcard-set-card header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.flashcard-set-card header span:first-child{font-size:.66rem;text-transform:uppercase;letter-spacing:.08em;color:#6c8195;font-weight:900}.flashcard-set-card h3{margin:4px 0 0;font-size:1.08rem}.flashcard-set-card>p{margin:0;color:#667d91;font-size:.8rem;line-height:1.55}.flashcard-set-card>.btn{margin-top:auto}.flashcard-set-card>small{color:#7890a5;font-size:.68rem}
.flashcard-set-progress{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.flashcard-set-progress div{padding:9px;border-radius:12px;background:#eef5fb;display:grid;gap:2px}.flashcard-set-progress span{font-size:.6rem;color:#6a8093}.flashcard-set-progress strong{font-size:.95rem;color:#174f83}
.flashcard-study-dialog{width:min(720px,calc(100vw - 22px));max-width:none;border:0;padding:0;border-radius:26px;background:transparent;overflow:visible}.flashcard-study-dialog::backdrop{background:rgba(4,14,26,.72);backdrop-filter:blur(8px)}
.flashcard-study-shell{overflow:hidden;border:1px solid rgba(122,167,206,.22);border-radius:26px;background:linear-gradient(160deg,#071b2f,#0a2948);box-shadow:0 35px 90px rgba(0,0,0,.38);color:#eff8ff}.flashcard-study-shell>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px 20px}.flashcard-study-shell>header>div{display:grid;gap:2px}.flashcard-study-shell>header span{font-size:.62rem;text-transform:uppercase;letter-spacing:.1em;color:#87acd0;font-weight:900}.flashcard-study-shell>header strong{font-size:1rem}.flashcard-close{width:38px;height:38px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(255,255,255,.06);color:#fff;font-size:1.4rem;cursor:pointer}
.flashcard-study-progress{height:5px;background:rgba(255,255,255,.08)}.flashcard-study-progress i{display:block;width:0;height:100%;background:linear-gradient(90deg,#57aef8,#f2c75d);transition:width .25s ease}
.flashcard-stage{min-height:410px;padding:24px;display:grid;place-items:center;perspective:1200px;touch-action:pan-y}
.flashcard-study-card{position:relative;width:min(470px,100%);height:320px;padding:0;border:0;background:transparent;cursor:pointer;transform-style:preserve-3d;transition:transform .42s cubic-bezier(.2,.7,.2,1);touch-action:pan-y}.flashcard-study-card.is-flipped{transform:rotateY(180deg)}
.flashcard-face{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:17px;padding:30px;border:1px solid rgba(130,184,231,.28);border-radius:25px;background:radial-gradient(circle at 85% 5%,rgba(77,156,230,.18),transparent 35%),linear-gradient(160deg,#0c3154,#09223b);box-shadow:0 22px 50px rgba(0,0,0,.28);backface-visibility:hidden;text-align:center}.flashcard-back{transform:rotateY(180deg);background:radial-gradient(circle at 15% 5%,rgba(244,197,88,.16),transparent 35%),linear-gradient(160deg,#12304d,#09223b)}
.flashcard-face small{font-size:.66rem;text-transform:uppercase;letter-spacing:.09em;color:#88b9e5;font-weight:900}.flashcard-face strong{font-size:clamp(1.25rem,4vw,2rem);line-height:1.28;color:#f6fbff}.flashcard-face em{font-style:normal;font-size:.72rem;color:#8ca9c2}
.flashcard-study-actions{display:grid;grid-template-columns:minmax(120px,1fr) auto minmax(120px,1fr);gap:10px;align-items:center;padding:0 20px 20px}.flashcard-study-actions>span{text-align:center;font-size:.62rem;color:#8da9c2}.flashcard-answer{min-height:46px;border-radius:14px;border:1px solid rgba(255,255,255,.12);font-weight:900;cursor:pointer}.flashcard-answer.correct{background:#0c694d;color:#dcfff2}.flashcard-answer.wrong{background:#6b2930;color:#ffe4e6}
.flashcard-session-result{width:min(490px,100%);display:grid;gap:18px;text-align:center}.flashcard-session-result>span{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:#77ddb5;font-weight:900}.flashcard-session-result h3{font-size:1.6rem;margin:0}.flashcard-result-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.flashcard-result-grid>div{padding:16px 10px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(255,255,255,.05);display:grid;gap:4px}.flashcard-result-grid strong{font-size:1.35rem}.flashcard-result-grid span{font-size:.66rem;color:#9ab4ca}
.flashcard-profile-topics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px}.flashcard-profile-topics>div{padding:11px 12px;border:1px solid rgba(72,130,181,.16);border-radius:13px;background:#f8fbfe;display:grid;gap:3px}.flashcard-profile-topics strong{font-size:.78rem}.flashcard-profile-topics span{font-size:.67rem;color:#6f8497}
@media(max-width:900px){.public-portal .portal-classic-shell .portal-app-nav.portal-bottom-nav{grid-auto-columns:minmax(64px,1fr)!important}.flashcard-study-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.flashcard-set-grid{grid-template-columns:1fr 1fr}.flashcard-stage{min-height:360px;padding:16px}.flashcard-study-card{height:290px}.flashcard-study-actions{grid-template-columns:1fr 1fr}.flashcard-study-actions>span{grid-column:1/-1;grid-row:2}}
@media(max-width:580px){.flashcard-study-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.flashcard-set-grid{grid-template-columns:1fr}.flashcard-study-dialog{width:calc(100vw - 12px)}.flashcard-study-shell{border-radius:21px}.flashcard-stage{min-height:340px;padding:12px}.flashcard-study-card{height:280px}.flashcard-face{padding:22px;border-radius:20px}.flashcard-study-actions{padding:0 12px 13px;gap:7px}.flashcard-profile-topics{grid-template-columns:1fr}}

/* v5.3.4 · Biblioteca / distribuição de conteúdos */
.study-distribution-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.study-distribution-grid>section{min-width:0;padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--soft)}.study-distribution-grid select[multiple]{width:100%;min-height:170px}.distribution-choice{display:flex;gap:10px;align-items:flex-start;padding:10px;border:1px solid var(--line);border-radius:13px;background:var(--card);margin-top:8px}.distribution-choice input{margin-top:3px}.distribution-choice span{display:grid;gap:3px}.distribution-choice small{color:var(--muted);line-height:1.35}.distribution-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:10px}.distribution-check-grid label,.distribution-scroll-list label{display:flex;align-items:center;gap:7px;padding:8px 9px;border-radius:10px;background:var(--card);font-size:.76rem}.distribution-scroll-list{display:grid;gap:6px;max-height:190px;overflow:auto;margin-top:10px}.library-usage-list{display:grid;gap:9px;margin-top:14px}.library-usage-list>div{padding:13px;border:1px solid var(--line);border-radius:14px;background:var(--soft);display:grid;grid-template-columns:auto 1fr;gap:5px 10px;align-items:center}.library-usage-list small{grid-column:2;color:var(--muted)}.library-resource-distribution-list{display:grid;gap:9px;margin-top:14px}.library-resource-distribution-list>article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:15px;background:var(--soft)}.library-resource-distribution-list>article>div:first-child{display:grid;gap:3px;min-width:0}.library-resource-distribution-list>article>div:first-child>span{font-size:.62rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:900}.library-resource-distribution-list>article small{color:var(--muted)}
@media(max-width:760px){.study-distribution-grid{grid-template-columns:1fr}.library-resource-distribution-list>article{grid-template-columns:1fr}.library-resource-distribution-list .actions{display:grid;grid-template-columns:1fr 1fr}.library-resource-distribution-list .actions .pill{grid-column:1/-1;justify-self:start}.library-resource-distribution-list .btn{justify-content:center}}

/* ========================================================================== */
/* v5.3.5 · Conteúdo público + SEO                                            */
/* ========================================================================== */
.public-seo-page{background:#061222;color:#f4f7fb;min-height:100vh}.public-seo-main{max-width:1240px;margin:0 auto;padding:34px 24px 64px}.public-seo-hero{position:relative;overflow:hidden;padding:clamp(28px,5vw,68px);border:1px solid rgba(133,174,222,.18);border-radius:32px;background:radial-gradient(circle at 88% 12%,rgba(214,173,74,.14),transparent 34%),linear-gradient(145deg,#0b2038,#071526);box-shadow:0 24px 70px rgba(0,0,0,.22);margin-bottom:28px}.public-seo-hero h1{font-size:clamp(2rem,5vw,4.1rem);line-height:1.02;max-width:960px;margin:10px 0 18px}.public-seo-hero>p,.public-seo-hero>div>p{font-size:clamp(1rem,1.7vw,1.22rem);line-height:1.72;max-width:850px;color:#cbd8e8}.public-profile-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,360px);align-items:center;gap:28px}.public-profile-hero img{width:100%;max-height:390px;object-fit:contain;filter:drop-shadow(0 22px 35px rgba(0,0,0,.28))}.public-content-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.public-content-card{display:flex;flex-direction:column;align-items:flex-start;gap:12px;min-height:260px}.public-content-card h2{font-size:1.25rem;line-height:1.25;margin:0}.public-content-card h2 a{color:inherit;text-decoration:none}.public-content-card .btn{margin-top:auto}.public-content-meta{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:.84rem;color:#91a6bf}.public-filter-links{flex-wrap:wrap}.public-learning-resource{display:grid;gap:18px}.public-learning-content{font-size:1.04rem;line-height:1.8}.public-learning-text{max-width:880px}.public-learning-text p:first-child{margin-top:0}.public-flashcard-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.public-flashcard-list details{padding:0;overflow:hidden}.public-flashcard-list summary{list-style:none;cursor:pointer;padding:18px 20px;font-weight:750;display:flex;align-items:center;gap:12px}.public-flashcard-list summary::-webkit-details-marker{display:none}.public-flashcard-list summary span{display:grid;place-items:center;width:30px;height:30px;border-radius:999px;background:rgba(214,173,74,.16);color:#e3c476;flex:0 0 auto}.public-flashcard-list details>div{padding:0 20px 18px;border-top:1px solid rgba(133,174,222,.12);color:#cbd8e8}.public-learning-cta{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:28px;border-radius:26px;background:linear-gradient(120deg,rgba(29,99,226,.16),rgba(214,173,74,.1));border:1px solid rgba(133,174,222,.18)}.public-learning-cta h2{margin:5px 0 8px}.public-learning-cta p{margin:0;color:#b9c9dc;max-width:760px}.public-series-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.public-series-card{display:flex;gap:20px;text-decoration:none;color:inherit;align-items:center;transition:transform .18s ease,border-color .18s ease}.public-series-card:hover{transform:translateY(-3px);border-color:rgba(214,173,74,.42)}.public-series-card>span{font-size:2rem;font-weight:900;color:#e3c476;min-width:70px;text-align:center}.public-series-card h2{margin:0 0 6px}.public-series-card p{margin:0;color:#aebed1;line-height:1.55}.public-seo-footer{max-width:1240px;margin:0 auto 20px}.public-content-empty{grid-column:1/-1;display:flex;flex-direction:column;gap:8px}.library-public-status{display:inline-flex;align-items:center;gap:5px}.seo-preview-card{border:1px solid rgba(133,174,222,.18);border-radius:18px;padding:16px;background:rgba(5,18,35,.58)}.seo-preview-card .seo-preview-title{color:#9ac0ff;font-size:1.05rem;font-weight:700}.seo-preview-card .seo-preview-url{color:#80b596;font-size:.82rem;margin:4px 0}.seo-preview-card .seo-preview-description{color:#b7c5d5;font-size:.9rem;line-height:1.45}.seo-public-url{word-break:break-all}
@media(max-width:900px){.public-content-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.public-profile-hero{grid-template-columns:1fr}.public-profile-hero img{max-height:300px}.public-flashcard-list{grid-template-columns:1fr}.public-learning-cta{align-items:flex-start;flex-direction:column}.public-series-grid{grid-template-columns:1fr}}
@media(max-width:600px){.public-seo-main{padding:18px 14px 44px}.public-seo-hero{border-radius:24px;padding:26px 20px}.public-content-grid{grid-template-columns:1fr}.public-series-card{gap:12px}.public-series-card>span{min-width:54px;font-size:1.6rem}}

/* v5.3.6 — Enquetes das Turmas */
.poll-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:16px}.poll-card,.portal-poll-card{border:1px solid rgba(120,150,190,.22);border-radius:20px;padding:18px;background:rgba(10,28,52,.72);box-shadow:0 12px 34px rgba(0,0,0,.12)}.poll-card header,.portal-poll-card header{display:flex;align-items:center;justify-content:space-between;gap:12px}.poll-card header>div,.portal-poll-card header>div{display:flex;gap:7px;flex-wrap:wrap}.poll-card h3,.portal-poll-card h3{margin:14px 0 8px}.poll-card p,.portal-poll-card p{margin:0 0 12px}.poll-progress>div,.poll-result-bar>div:last-child,.portal-poll-result>div:nth-child(2){height:9px;border-radius:999px;background:rgba(255,255,255,.09);overflow:hidden}.poll-progress>div>span,.poll-result-bar>div:last-child>span,.portal-poll-result>div:nth-child(2)>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#d7a83d,#69b7e6)}.poll-progress small{display:block;margin-top:7px}.poll-meta,.portal-poll-meta{display:flex;gap:12px;flex-wrap:wrap;font-size:.82rem;color:var(--muted);margin:12px 0}.poll-actions{margin-top:14px;flex-wrap:wrap}.poll-options-editor{margin-top:18px}.poll-option-edit{display:grid;grid-template-columns:30px 1fr 42px;gap:8px;align-items:center;margin:8px 0}.poll-option-edit>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:rgba(215,168,61,.15);font-weight:800}.poll-result-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:18px}.poll-result-bars{display:grid;gap:12px;margin:14px 0 20px}.poll-result-bar>div:first-child,.portal-poll-result>div:first-child{display:flex;justify-content:space-between;gap:12px;margin-bottom:6px}.portal-polls-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}.portal-poll-card{background:var(--surface,#fff);color:inherit}.portal-poll-options{display:grid;gap:9px;margin:14px 0}.portal-poll-option{display:flex;align-items:center;gap:10px;border:1px solid rgba(120,150,190,.22);border-radius:14px;padding:12px;cursor:pointer}.portal-poll-option.selected{border-color:#d7a83d;background:rgba(215,168,61,.08)}.portal-poll-option input{accent-color:#d7a83d}.portal-poll-results{border-top:1px solid rgba(120,150,190,.2);margin-top:16px;padding-top:14px}.portal-poll-result{margin-top:12px}.portal-poll-result small{display:block;margin-top:5px;color:var(--muted)}.poll-answered{font-weight:800;color:#3fa46a}
@media(max-width:700px){.poll-grid,.portal-polls-grid{grid-template-columns:1fr}.poll-card,.portal-poll-card{border-radius:16px;padding:15px}.poll-result-summary{grid-template-columns:1fr 1fr}.poll-result-summary .feature:last-child{grid-column:1/-1}.poll-option-edit{grid-template-columns:26px 1fr 38px}.poll-actions .btn{flex:1 1 calc(50% - 8px)}}

/* v5.3.6.1 · Estudo integrado / identidade PJS */
.study-view-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px}
.study-heading-avatar{width:82px;height:82px;object-fit:contain;filter:drop-shadow(0 8px 16px rgba(9,34,59,.18))}
.study-overview-card{border-color:rgba(19,64,108,.14);background:linear-gradient(145deg,#fff,#f5f9fd)}
.study-theme-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.study-theme-card{overflow:hidden;border:1px solid rgba(20,66,110,.16);border-radius:22px;background:linear-gradient(160deg,#fff 0%,#f7fbff 62%,#fff9e8 100%);box-shadow:0 14px 36px rgba(11,44,76,.08)}
.study-theme-card>header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:17px 18px;border-bottom:1px solid rgba(20,66,110,.1)}
.study-theme-card>header>div:nth-child(2){min-width:0}.study-theme-card>header span{font-size:.64rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#64809a}.study-theme-card>header h3{margin:3px 0 0;color:#0b2d50;font-size:1rem;line-height:1.25}
.study-theme-index{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:#0b3158;color:#fff;font-size:.72rem;font-weight:950;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}
.study-theme-symbol{min-width:54px;text-align:center;color:#b38722;font-size:1rem;font-weight:950}
.study-path{display:grid;gap:8px;padding:13px}
.study-step{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;text-align:left;padding:11px 12px;border:1px solid rgba(20,66,110,.12);border-radius:15px;background:#fff;color:#102f4d;cursor:pointer;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
.study-step:hover{transform:translateY(-1px);border-color:rgba(24,101,166,.3);box-shadow:0 8px 20px rgba(11,56,95,.07)}
.study-step>b{display:grid;place-items:center;width:29px;height:29px;border-radius:9px;background:#eaf4fc;color:#164f80;font-size:.7rem}
.study-step>span{display:grid;gap:2px}.study-step>span strong{font-size:.82rem}.study-step>span small{font-size:.66rem;color:#71869a}.study-step>em{font-style:normal;font-weight:950;color:#b58a2b;font-size:1rem}
.study-step.done{background:linear-gradient(90deg,#f7fbff,#fffaf0);border-color:rgba(184,140,42,.22)}.study-step.done>b{background:#0b3158;color:#fff}.study-step.done>em{color:#b58a2b}
.study-dialog-avatar{width:48px;height:48px;object-fit:contain;flex:0 0 auto;filter:drop-shadow(0 5px 10px rgba(0,0,0,.2))}
.study-summary-dialog,.study-quiz-dialog{width:min(760px,calc(100vw - 18px));max-width:none;border:0;padding:0;background:transparent}.study-summary-dialog::backdrop,.study-quiz-dialog::backdrop{background:rgba(5,22,39,.72);backdrop-filter:blur(8px)}
.study-summary-shell,.study-quiz-shell{overflow:hidden;border:1px solid rgba(118,166,207,.24);border-radius:25px;background:#f8fbff;color:#12314e;box-shadow:0 34px 90px rgba(2,19,35,.32)}
.study-summary-shell>header,.study-quiz-shell>header{display:flex;align-items:center;gap:12px;padding:15px 18px;background:linear-gradient(135deg,#092b4b,#0e416e);color:#fff}.study-summary-shell>header>div,.study-quiz-shell>header>div{display:grid;gap:2px;min-width:0;flex:1}.study-summary-shell>header span,.study-quiz-shell>header span{font-size:.61rem;letter-spacing:.1em;text-transform:uppercase;color:#abd0ef;font-weight:900}.study-summary-shell>header strong,.study-quiz-shell>header strong{font-size:1rem}
.study-summary-content{padding:24px;font-size:.98rem;line-height:1.72;background:linear-gradient(180deg,#fff,#f7fbff);max-height:68vh;overflow:auto}.study-summary-content br+br{display:block;content:"";margin-top:.48rem}
.study-summary-shell>footer{padding:0 18px 18px;background:#f7fbff;display:flex;justify-content:flex-end}
.study-quiz-progress{height:5px;background:#e5eef6}.study-quiz-progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,#2d79b6,#d9ad42);transition:width .2s ease}.study-quiz-stage{padding:22px;min-height:410px;background:linear-gradient(180deg,#fff,#f6faff)}
.study-quiz-question{display:grid;gap:16px}.study-quiz-question h3{margin:0;color:#0b2d50;font-size:clamp(1.05rem,3vw,1.4rem);line-height:1.45}.study-quiz-options{display:grid;gap:9px}.study-quiz-options button{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center;text-align:left;padding:12px 14px;border:1px solid rgba(19,69,111,.15);border-radius:14px;background:#fff;color:#163a5c;cursor:pointer}.study-quiz-options button:hover{border-color:#3a7db2;background:#f6fbff}.study-quiz-options button>b{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#eaf4fc;color:#164f80}.study-quiz-options button span{line-height:1.45}
.study-quiz-result{display:grid;gap:14px;place-items:center;text-align:center}.study-quiz-result>span{font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;color:#6e8498;font-weight:900}.study-quiz-result>h3{margin:0;color:#0b2d50}.study-quiz-result>strong{font-size:2.2rem;color:#b38322}.study-quiz-result details{width:100%;text-align:left;border:1px solid rgba(19,69,111,.13);border-radius:14px;background:#fff;padding:10px 12px}.study-quiz-result details>div{display:grid;gap:8px;margin-top:10px}.study-quiz-result details article{display:grid;gap:4px;padding:10px;border-radius:11px;background:#f7fafd}.study-quiz-result details article span,.study-quiz-result details article small{font-size:.72rem;color:#61788e}
.study-result-avatar{width:92px;height:92px;object-fit:contain;filter:drop-shadow(0 8px 18px rgba(8,42,70,.18))}
.math-frac{display:inline-grid;grid-template-rows:auto auto;vertical-align:middle;text-align:center;line-height:1;min-width:1.25em;margin:0 .08em;font-variant-numeric:lining-nums tabular-nums}.math-frac-num{padding:0 .12em .08em;border-bottom:1.7px solid currentColor}.math-frac-den{padding:.08em .12em 0}.flashcard-face .math-frac{font-size:1.1em}.study-summary-content .math-frac,.study-quiz-stage .math-frac{font-weight:850;color:#0b3158}
/* Flashcards agora usam exclusivamente a paleta do Portal PJS */
.flashcard-study-shell{border-color:rgba(185,220,247,.28);background:linear-gradient(155deg,#082541,#0b365e);color:#f8fbff}
.flashcard-study-progress{background:rgba(255,255,255,.08)}.flashcard-study-progress i{background:linear-gradient(90deg,#66b7ef,#d8ad43)}
.flashcard-face{overflow:hidden;border-color:rgba(31,92,143,.18);background:radial-gradient(circle at 92% 8%,rgba(216,173,67,.16),transparent 28%),linear-gradient(155deg,#ffffff,#eef6fc);box-shadow:0 22px 50px rgba(1,25,46,.24);color:#0b2d50}
.flashcard-back{background:radial-gradient(circle at 8% 8%,rgba(64,139,198,.13),transparent 28%),linear-gradient(155deg,#fffaf0,#ffffff)}
.flashcard-face small{color:#537995}.flashcard-face strong{position:relative;z-index:2;color:#0b2d50;max-width:94%;font-size:clamp(1.28rem,4.4vw,2.05rem);line-height:1.34}.flashcard-face em{position:relative;z-index:2;color:#6e8499}.flashcard-prof-avatar{position:absolute;right:-6px;bottom:-10px;width:112px;height:112px;object-fit:contain;opacity:.19;pointer-events:none;filter:saturate(.9)}
.flashcard-answer.correct{background:#dceefb;color:#0b3158;border-color:#82bce7}.flashcard-answer.wrong{background:#f8e9bd;color:#5f4612;border-color:#d7b45f}.flashcard-answer:hover{filter:brightness(.985)}
.flashcard-session-result>span{color:#d8b557}.flashcard-result-grid>div{border-color:rgba(255,255,255,.16);background:rgba(255,255,255,.07)}
.public-portal .portal-classic-shell .portal-app-nav.portal-bottom-nav{grid-template-columns:repeat(5,minmax(0,1fr))!important;grid-auto-flow:initial;grid-auto-columns:initial;overflow-x:hidden!important}
@media(max-width:900px){.study-theme-grid{grid-template-columns:1fr}.study-heading-avatar{width:68px;height:68px}.public-portal .portal-classic-shell .portal-app-nav.portal-bottom-nav{grid-template-columns:repeat(5,minmax(0,1fr))!important}.portal-bottom-nav .portal-nav-item strong{font-size:.59rem}.portal-bottom-nav .portal-nav-icon{transform:scale(.9)}}
@media(max-width:580px){.study-view-heading{grid-template-columns:1fr auto}.study-heading-avatar{width:56px;height:56px}.study-theme-card>header{padding:14px;grid-template-columns:auto minmax(0,1fr)}.study-theme-symbol{grid-column:2;justify-self:start;font-size:.84rem}.study-summary-content{padding:18px;font-size:.93rem}.study-quiz-stage{padding:15px;min-height:360px}.flashcard-prof-avatar{width:94px;height:94px;opacity:.16}.flashcard-face strong{font-size:clamp(1.28rem,7vw,1.8rem)}.public-portal .portal-classic-shell .portal-app-nav.portal-bottom-nav{gap:2px;padding-inline:4px!important}.portal-bottom-nav .portal-nav-item{padding-inline:2px!important}}

/* v5.3.6.1 · Perfil completo do aluno na Central */
.student-profile-complete{margin-top:14px}.student-grade-units{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.student-grade-unit{padding:13px;border:1px solid rgba(22,69,109,.14);border-radius:15px;background:#f8fbfe;display:grid;gap:9px}.student-grade-unit.empty-unit{align-content:start;color:#708396}.student-grade-unit>header{display:flex;justify-content:space-between;gap:8px;align-items:center}.student-grade-unit>header>b{font-size:1.2rem;color:#0b3158}.student-grade-unit>header small{font-size:.62rem;color:#73879a}.student-grade-unit>div{display:grid;gap:5px}.student-grade-unit>div>span{display:flex;justify-content:space-between;gap:8px;padding:5px 0;border-top:1px dashed rgba(19,66,105,.1)}.student-grade-unit em{font-style:normal;color:#6b8094;font-size:.7rem}.student-grade-unit>div strong{font-size:.78rem}.student-grade-recovery{color:#9a7420}.student-annual-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px}.student-annual-strip>div{padding:10px;border-radius:12px;background:#eef5fb;display:grid;gap:3px}.student-annual-strip span{font-size:.62rem;color:#6d8194}.student-annual-strip strong{font-size:.82rem;color:#173f66}.student-learning-topic-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:12px}.student-learning-topic-list>div{padding:10px 11px;border:1px solid rgba(21,69,110,.13);border-radius:12px;background:#fbfdff;display:grid;gap:3px}.student-learning-topic-list>div.quiz{background:#fffaf0}.student-learning-topic-list strong{font-size:.75rem}.student-learning-topic-list span{font-size:.65rem;color:#6d8092}
@media(max-width:800px){.student-grade-units{grid-template-columns:1fr}.student-annual-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.student-learning-topic-list{grid-template-columns:1fr}}
.portal-polls-home-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.portal-polls-home-grid>article{padding:14px;border:1px solid rgba(20,66,108,.14);border-radius:16px;background:linear-gradient(150deg,#fff,#fff9e8);display:grid;gap:7px}.portal-polls-home-grid>article>span{font-size:.61rem;text-transform:uppercase;letter-spacing:.08em;color:#8c6d23;font-weight:900}.portal-polls-home-grid>article strong{color:#0c3158}.portal-polls-home-grid>article p,.portal-polls-home-grid>article small{margin:0;color:#6d8092;font-size:.7rem}.portal-polls-home-grid>article .btn{justify-self:start;margin-top:3px}@media(max-width:780px){.portal-polls-home-grid{grid-template-columns:1fr}}
.study-library-three-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.study-library-row{align-items:flex-start}.study-library-row .actions{flex-wrap:wrap;justify-content:flex-end}.study-library-row .list-main{min-width:0}.study-library-row .list-main>span{color:var(--muted);font-size:.68rem}@media(max-width:1180px){.study-library-three-columns{grid-template-columns:1fr 1fr}.study-library-three-columns>.card:last-child{grid-column:1/-1}}@media(max-width:760px){.study-library-three-columns{grid-template-columns:1fr}.study-library-three-columns>.card:last-child{grid-column:auto}.study-library-row{display:grid;grid-template-columns:1fr}.study-library-row .actions{justify-content:flex-start}}

/* v5.3.6.1 — navegação lateral por áreas */
.nav-area-group{margin-top:8px;border-top:1px solid rgba(148,163,184,.12);padding-top:5px}
.nav-area-toggle{width:100%;border:0;background:transparent;color:var(--muted,#9fb0c4);display:flex;align-items:center;justify-content:space-between;padding:8px 12px 6px;font-size:.76rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}
.nav-area-toggle b{font-size:1rem;transition:transform .2s ease;color:#d6b55f}
.nav-area-group.nav-area-open .nav-area-toggle b{transform:rotate(180deg)}
.nav-area-items{display:none}
.nav-area-group.nav-area-open .nav-area-items{display:block}
.nav-subsection{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin:2px 8px 7px 43px;padding:5px 7px;border-left:2px solid rgba(214,181,95,.42)}
.nav-subsection>span{width:100%;font-size:.66rem;text-transform:uppercase;letter-spacing:.08em;color:#8293a8;font-weight:800;margin-bottom:1px}
.nav-sub-btn{border:1px solid rgba(148,163,184,.16);background:rgba(255,255,255,.035);color:#b9c5d3;border-radius:999px;padding:4px 8px;font-size:.72rem;cursor:pointer;line-height:1.2}
.nav-sub-btn:hover,.nav-sub-btn.active{background:rgba(214,181,95,.15);border-color:rgba(214,181,95,.48);color:#f7e8b2}
body.sidebar-collapsed .nav-area-toggle{justify-content:center;padding-inline:0}
body.sidebar-collapsed .nav-area-toggle span,body.sidebar-collapsed .nav-area-toggle b,body.sidebar-collapsed .nav-subsection{display:none}
body.sidebar-collapsed .nav-area-items{display:block}
@media(max-width:1050px){body.sidebar-collapsed .nav-area-toggle span,body.sidebar-collapsed .nav-area-toggle b{display:initial}body.sidebar-collapsed .nav-area-toggle{justify-content:space-between;padding-inline:12px}body.sidebar-collapsed .nav-subsection{display:flex}}
.public-content-detail{max-width:900px;margin:0 auto}.public-content-detail .lead{font-size:1.08rem;line-height:1.7}.public-content-body{white-space:normal;line-height:1.75;margin:24px 0;font-size:1rem}.public-fallback-items{margin-top:28px}.public-fallback-items>h2{margin-bottom:14px}

/* v5.3.6.1 — Flashcards mais largos, leitura matemática e resposta/exemplo separados */
.flashcard-study-dialog{width:min(930px,calc(100vw - 28px))}
.flashcard-stage{min-height:390px;padding:22px 28px}
.flashcard-study-card{width:min(700px,100%);height:300px}
.flashcard-face{padding:28px 42px;gap:14px}
.flashcard-question-text{max-width:88%!important;font-size:clamp(1.35rem,3.2vw,2.1rem)!important;line-height:1.38!important}
.flashcard-answer-layout{position:relative;z-index:2;width:min(92%,610px);display:grid;gap:15px;text-align:left}
.flashcard-answer-main{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;padding:13px 16px;border:1px solid rgba(20,69,110,.14);border-radius:16px;background:rgba(255,255,255,.82)}
.flashcard-answer-main>span,.flashcard-example>span{font-size:.62rem;font-weight:950;letter-spacing:.09em;text-transform:uppercase;color:#5a7893}
.flashcard-answer-main>strong{font-size:clamp(1.38rem,3.3vw,2.15rem);line-height:1.2;color:#0b3158;text-align:left;min-width:0}
.flashcard-example{display:grid;grid-template-columns:auto minmax(0,1fr);gap:13px;align-items:start;padding:12px 16px;border-left:4px solid #c9a34c;border-radius:11px;background:rgba(255,249,232,.88);color:#183b5d}
.flashcard-example>div{font-size:clamp(.94rem,2vw,1.08rem);line-height:1.5;min-width:0}
.flashcard-answer-layout .math-frac{font-size:1.16em}.flashcard-answer-main .math-frac{font-size:1.2em}
.flashcard-face .flashcard-prof-avatar{right:8px;bottom:-8px;width:102px;height:102px;opacity:.17}
@media(max-width:900px){.flashcard-study-card{width:min(640px,100%);height:310px}.flashcard-face{padding:26px 30px}.flashcard-answer-layout{width:94%}}
@media(max-width:580px){.flashcard-stage{min-height:370px;padding:12px}.flashcard-study-card{width:100%;height:330px}.flashcard-face{padding:22px 20px;gap:12px}.flashcard-question-text{max-width:96%!important;font-size:clamp(1.3rem,6.4vw,1.82rem)!important}.flashcard-answer-layout{width:100%;gap:10px}.flashcard-answer-main,.flashcard-example{grid-template-columns:1fr;gap:5px;padding:11px 13px}.flashcard-answer-main>strong{font-size:clamp(1.3rem,6vw,1.75rem)}.flashcard-example>div{font-size:.93rem;line-height:1.45}.flashcard-face .flashcard-prof-avatar{width:82px;height:82px;opacity:.13}}

/* v5.3.6.2 — Biblioteca de Estudo visível + chats por contexto */
.library-study-hub-v5362{background:linear-gradient(145deg,#f8fbff,#fffaf0);border-color:rgba(29,79,121,.16)}
.library-study-type-grid button{border:1px solid rgba(29,79,121,.14);background:#fff;border-radius:18px;padding:16px;display:grid;grid-template-columns:auto 1fr;grid-template-areas:"step count" "label label" "hint hint";gap:4px 10px;text-align:left;cursor:pointer;box-shadow:0 8px 24px rgba(13,49,84,.06)}
.library-study-type-grid button:hover{transform:translateY(-1px);border-color:#91bfe2}.library-study-type-grid button>span{grid-area:step;width:28px;height:28px;display:grid;place-items:center;border-radius:10px;background:#0b3158;color:#fff;font-weight:900}.library-study-type-grid button>strong{grid-area:count;font-size:1.55rem;color:#0b3158;justify-self:end}.library-study-type-grid button>b{grid-area:label;color:#173f66}.library-study-type-grid button>small{grid-area:hint;color:#6f8294}.library-study-type-grid button:nth-child(3)>span{background:#c7a246;color:#fff}
.portal-chat-list-head p{margin:4px 0 0;max-width:250px;color:#7f93a5;font-size:.65rem;line-height:1.35}.public-portal:not(.public-reinforcement-portal) .portal-chat-page-v517.school-conversation-list:not(.chat-focus) .portal-chat-box-full{background:#f4f8fd}.public-reinforcement-portal .portal-chat-page-v517.single-conversation .portal-chat-box-full{width:100%}
@media(max-width:900px){.library-study-type-grid{grid-template-columns:1fr!important}.public-portal:not(.public-reinforcement-portal) .portal-chat-page-v517.school-conversation-list:not(.chat-focus){grid-template-rows:minmax(0,1fr)!important}.public-portal:not(.public-reinforcement-portal) .portal-chat-page-v517.school-conversation-list:not(.chat-focus) .portal-chat-conversations{height:100%!important;max-height:none!important;min-height:0!important}.public-portal:not(.public-reinforcement-portal) .portal-chat-page-v517.school-conversation-list:not(.chat-focus) .portal-chat-list-head{display:flex!important}.public-portal:not(.public-reinforcement-portal) .portal-chat-page-v517.school-conversation-list:not(.chat-focus) .portal-chat-box-full{display:none!important}.public-reinforcement-portal .portal-chat-page-v517.single-conversation{grid-template-rows:minmax(0,1fr)!important}.public-reinforcement-portal .portal-chat-page-v517.single-conversation .portal-chat-box-full{display:grid!important}}
.central-student-name-link{border:0;background:transparent;padding:0;display:inline-flex;align-items:center;gap:5px;color:#123e66;cursor:pointer;text-align:left;font:inherit}.central-student-name-link strong{color:inherit;text-decoration:underline;text-decoration-color:rgba(31,92,143,.22);text-underline-offset:3px}.central-student-name-link>span{font-size:.7em;color:#b48a2c;opacity:.78}.central-student-name-link:hover strong{color:#0a5d9d;text-decoration-color:#c9a34c}.central-student-related-title{display:block;margin-top:3px;color:#445f78;font-size:.78rem}
.request-profile-hero{align-items:center}.request-profile-hero>img{max-height:410px;object-fit:contain;object-position:center bottom}.request-analysis-strip{margin-top:18px}.request-analysis-strip h2{max-width:820px}.request-analysis-strip .request-flow-mini{margin-top:20px}.public-request-page .request-form-section{max-width:1100px}.public-request-page .request-form{border:1px solid rgba(19,65,105,.13);box-shadow:0 18px 54px rgba(10,45,76,.08)}.public-request-page .request-form-block{background:#fff}.public-request-page .request-form-title>span{background:#0b3158;color:#f0c866}.public-request-page .request-contact-card{background:linear-gradient(135deg,#0b3158,#123f69)}
@media(max-width:900px){.request-profile-hero>img{max-height:280px}.request-analysis-strip{margin-top:10px}.public-request-page .request-form-head{padding-inline:2px}}
.central-student-name-inline{cursor:pointer;color:#123e66;text-decoration:underline;text-decoration-color:rgba(31,92,143,.22);text-underline-offset:3px}.central-student-name-inline:hover,.central-student-name-inline:focus{color:#0a5d9d;text-decoration-color:#c9a34c;outline:none}

/* v5.3.6.2 — menu lateral hierárquico da Central */
.nav-section{margin:5px 8px;border:1px solid rgba(148,163,184,.12);border-radius:14px;background:rgba(255,255,255,.025);overflow:hidden}
.nav-section-toggle{width:100%;min-height:44px;border:0;background:transparent;color:#c7d2df;display:grid;grid-template-columns:26px minmax(0,1fr) 18px;align-items:center;gap:8px;padding:8px 10px;text-align:left;cursor:pointer;font:inherit;font-size:.76rem;font-weight:800}
.nav-section-toggle:hover,.nav-section.nav-section-open>.nav-section-toggle{background:rgba(214,181,95,.10);color:#f4e6b7}.nav-section-toggle .nav-section-icon{display:grid;place-items:center}.nav-section-toggle .nav-section-icon .nav-icon{width:20px;height:20px}.nav-section-toggle>b{justify-self:end;color:#d6b55f;transition:transform .18s ease}.nav-section.nav-section-open>.nav-section-toggle>b{transform:rotate(90deg)}
.nav-section-items{display:none;padding:4px 8px 9px 42px;gap:5px}.nav-section.nav-section-open>.nav-section-items{display:grid}.nav-section-items .nav-sub-btn{width:100%;border-radius:10px;text-align:left;padding:7px 9px;background:transparent;border:1px solid transparent}.nav-section-items .nav-sub-btn:hover,.nav-section-items .nav-sub-btn.active{background:rgba(29,99,226,.12);border-color:rgba(87,146,221,.22);color:#eef6ff}.nav-section-items .nav-sub-featured{color:#f1cd73}
body.sidebar-collapsed .nav-section{margin:5px 4px;border-color:transparent;background:transparent;overflow:visible}.sidebar-collapsed .nav-section-toggle{grid-template-columns:1fr;padding:8px 0}.sidebar-collapsed .nav-section-toggle>span:not(.nav-section-icon),.sidebar-collapsed .nav-section-toggle>b,.sidebar-collapsed .nav-section-items{display:none!important}
@media(max-width:1050px){body.sidebar-collapsed .nav-section{margin:5px 8px;border-color:rgba(148,163,184,.12);background:rgba(255,255,255,.025);overflow:hidden}body.sidebar-collapsed .nav-section-toggle{grid-template-columns:26px minmax(0,1fr) 18px;padding:8px 10px}body.sidebar-collapsed .nav-section-toggle>span:not(.nav-section-icon),body.sidebar-collapsed .nav-section-toggle>b{display:initial!important}body.sidebar-collapsed .nav-section.nav-section-open>.nav-section-items{display:grid!important}}


/* v5.3.7 · Solicitar acompanhamento — redesign público completo */
.request-v537{background:radial-gradient(circle at 75% 1%,rgba(20,105,205,.17),transparent 31%),radial-gradient(circle at 7% 35%,rgba(214,173,74,.08),transparent 24%),linear-gradient(180deg,#040d19 0%,#06162a 48%,#050f1c 100%)!important;min-height:100vh}
.request-v537 .request-main{max-width:1320px;padding-top:26px}
.request-showcase{display:grid;grid-template-columns:minmax(0,1.03fr) minmax(390px,.97fr);gap:22px;align-items:stretch;padding:clamp(24px,4vw,52px);border:1px solid rgba(103,165,223,.2);border-radius:34px;background:radial-gradient(circle at 20% 10%,rgba(24,108,220,.20),transparent 34%),linear-gradient(145deg,#0a2039,#071425 68%);box-shadow:0 28px 80px rgba(0,0,0,.3);overflow:hidden;position:relative}
.request-showcase:after{content:"SOLICITAÇÃO · DIAGNÓSTICO · ANÁLISE";position:absolute;left:34px;bottom:18px;font-size:.72rem;letter-spacing:.22em;font-weight:900;color:rgba(255,255,255,.07);pointer-events:none}
.request-showcase-copy{display:flex;flex-direction:column;justify-content:center;min-width:0;position:relative;z-index:2;padding:8px 0 24px}
.request-eyebrow{display:inline-flex;align-items:center;gap:9px;width:max-content;max-width:100%;padding:7px 11px 7px 7px;border:1px solid rgba(214,173,74,.25);border-radius:999px;background:rgba(214,173,74,.08);color:#e9d59a;font-size:.78rem;font-weight:800;margin-bottom:20px}.request-eyebrow img{width:29px;height:29px;border-radius:50%;object-fit:cover}
.request-showcase h1{font-size:clamp(2.45rem,5.1vw,5rem);line-height:.96;letter-spacing:-.055em;margin:8px 0 20px;max-width:820px;color:#fff}.request-showcase h1 em{font-style:normal;color:#f0c866}
.request-showcase-copy>p{max-width:730px;margin:0;color:#c0d0e1;font-size:clamp(1rem,1.5vw,1.18rem);line-height:1.7}
.request-hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}.request-hero-actions .btn{min-height:48px;padding-inline:18px}
.request-hero-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.request-hero-pills span{padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.10);font-size:.75rem;color:#b9ccdf;font-weight:750}
.request-showcase-art{min-height:500px;border-radius:28px;overflow:hidden;position:relative;background:#07192c;border:1px solid rgba(255,255,255,.11);box-shadow:0 20px 55px rgba(0,0,0,.25)}.request-showcase-art picture,.request-showcase-art picture img{display:block;width:100%;height:100%}.request-showcase-art img{object-fit:cover;object-position:center;filter:saturate(.96) contrast(1.02)}
.request-showcase-art:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(3,13,24,.88) 100%);pointer-events:none}
.request-showcase-card{position:absolute;left:18px;right:18px;bottom:18px;z-index:2;display:flex;align-items:center;gap:12px;padding:14px 15px;border:1px solid rgba(240,200,102,.35);border-radius:18px;background:rgba(4,17,31,.9);backdrop-filter:blur(14px);box-shadow:0 15px 35px rgba(0,0,0,.26)}.request-showcase-icon{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border-radius:13px;background:#f0c866;color:#0a1d30;font-size:1rem;font-weight:950}.request-showcase-card div{display:grid;gap:3px}.request-showcase-card strong{color:#fff;font-size:.92rem}.request-showcase-card small{color:#abc0d3;line-height:1.4}
.request-decision-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0 28px}.request-decision-card{display:flex;align-items:flex-start;gap:12px;min-height:116px;padding:18px;border:1px solid rgba(102,158,210,.16);border-radius:20px;background:linear-gradient(145deg,rgba(10,32,56,.94),rgba(7,24,43,.94));box-shadow:0 12px 32px rgba(0,0,0,.1)}.request-decision-card.highlight{border-color:rgba(214,173,74,.35);background:linear-gradient(145deg,rgba(62,49,21,.34),rgba(9,30,51,.96))}.request-decision-card>span{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:11px;background:#0e3154;color:#87c4ff;font-weight:900}.request-decision-card.highlight>span{background:#f0c866;color:#10253c}.request-decision-card div{display:grid;gap:5px}.request-decision-card strong{font-size:.9rem;color:#fff}.request-decision-card small{font-size:.75rem;line-height:1.5;color:#91a9c0}
.request-important-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.42fr);gap:26px;align-items:center;padding:28px 30px;margin-bottom:34px;border-radius:26px;background:linear-gradient(135deg,rgba(13,44,75,.96),rgba(8,27,48,.96));border:1px solid rgba(214,173,74,.22)}.request-important-card h2{margin:5px 0 10px;color:#fff;font-size:clamp(1.45rem,2.2vw,2.1rem)}.request-important-card p{margin:0;color:#b7c9da;line-height:1.65}.request-important-card p strong{color:#f0d180}.request-important-badges{display:grid;gap:8px}.request-important-badges span{display:flex;align-items:center;gap:7px;padding:10px 12px;border-radius:13px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);font-size:.77rem;color:#afc2d5}.request-important-badges b{color:#f0c866}
.request-application-section{padding:6px 0 36px;scroll-margin-top:84px}.request-application-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:18px}.request-application-head h2{font-size:clamp(1.8rem,3vw,2.65rem);margin:5px 0 7px}.request-application-head p{margin:0;max-width:760px;color:#9fb3c7;line-height:1.6}.request-secure-dark{display:flex;align-items:center;gap:10px;min-width:255px;padding:10px 12px;border:1px solid rgba(91,154,211,.2);border-radius:16px;background:#081d33}.request-secure-dark img{width:42px;height:42px;border-radius:12px;object-fit:cover}.request-secure-dark span{display:grid;gap:2px}.request-secure-dark strong{font-size:.82rem;color:#edf7ff}.request-secure-dark small{font-size:.7rem;color:#819bb2}
.request-application-layout{display:grid;grid-template-columns:minmax(280px,.34fr) minmax(0,.66fr);gap:16px;align-items:start}.request-application-aside{position:sticky;top:86px;display:flex;flex-direction:column;min-height:560px;padding:24px;border-radius:26px;background:radial-gradient(circle at 95% 5%,rgba(214,173,74,.12),transparent 30%),linear-gradient(155deg,#0c2948,#081a2e);border:1px solid rgba(103,164,220,.22);box-shadow:0 18px 48px rgba(0,0,0,.15)}.request-aside-brand{display:flex;align-items:center;gap:12px;padding-bottom:18px;margin-bottom:20px;border-bottom:1px solid rgba(255,255,255,.08)}.request-aside-brand img{width:70px;height:70px;object-fit:contain;object-position:center bottom;border-radius:18px;background:rgba(255,255,255,.04)}.request-aside-brand div{display:grid;gap:3px}.request-aside-brand strong{color:#fff}.request-aside-brand small{font-size:.7rem;color:#8ca6bd}.request-application-aside h3{margin:0 0 14px;font-size:1.18rem}.request-application-aside ol{list-style:none;margin:0;padding:0;display:grid;gap:12px}.request-application-aside li{display:flex;align-items:flex-start;gap:10px}.request-application-aside li>span{display:grid;place-items:center;width:28px;height:28px;flex:0 0 28px;border-radius:9px;background:#123d67;color:#8fc9ff;font-size:.72rem;font-weight:900}.request-application-aside li div{display:grid;gap:3px}.request-application-aside li strong{font-size:.8rem;color:#eaf4fd}.request-application-aside li small{font-size:.7rem;line-height:1.45;color:#8199af}.request-aside-whatsapp{margin-top:auto;display:grid;gap:3px;padding:13px 14px;border-radius:15px;background:rgba(32,184,112,.10);border:1px solid rgba(50,198,130,.20);text-decoration:none}.request-aside-whatsapp span{font-size:.66rem;text-transform:uppercase;letter-spacing:.12em;color:#75d5a6;font-weight:900}.request-aside-whatsapp strong{color:#e7fff3;font-size:.8rem}
.request-root-v537{min-width:0}.request-form-v537{padding:0!important;overflow:hidden;border-radius:26px!important;background:linear-gradient(145deg,#091f37,#07182b)!important;border:1px solid rgba(103,164,220,.22)!important;box-shadow:0 18px 54px rgba(0,0,0,.18)!important}.request-form-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.08)}.request-form-progress span{display:grid;place-items:center;min-height:42px;background:#081a2e;color:#7590a9;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em}.request-form-progress span.active{color:#f0c866;background:#0d2845}.request-v537 .request-form-block{padding:26px 28px!important;background:transparent!important;border-bottom:1px solid rgba(255,255,255,.08)!important}.request-v537 .request-form-title>span{background:#11385f!important;color:#f0c866!important}.request-v537 .request-form-title strong{color:#f5f9fd}.request-v537 .request-form-title small{color:#7f99b1}.request-v537 .request-form-v537 .field label{color:#a9bed1!important}.request-v537 .request-form-v537 input,.request-v537 .request-form-v537 select,.request-v537 .request-form-v537 textarea{background:#061728!important;border:1px solid #1d4160!important;color:#f1f7fc!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.02)}.request-v537 .request-form-v537 input:focus,.request-v537 .request-form-v537 select:focus,.request-v537 .request-form-v537 textarea:focus{border-color:#348be1!important;box-shadow:0 0 0 3px rgba(52,139,225,.12)!important}.request-v537 .request-form-v537 input::placeholder,.request-v537 .request-form-v537 textarea::placeholder{color:#55748f}.request-inline-note{margin:14px 0 0;padding:10px 12px;border-radius:12px;background:rgba(22,108,190,.08);border:1px solid rgba(71,148,220,.14);color:#8fabbe;font-size:.72rem;line-height:1.5}.request-test-toggle{display:flex;align-items:end}.request-test-toggle .check{width:100%;min-height:48px;display:flex;align-items:center;padding:11px 12px;border-radius:12px;border:1px solid #1d4160;background:#061728}.request-consent-v537{margin:20px 28px 0!important;color:#8ba5bb!important}.request-consent-v537 a{color:#8fc5ff}.request-message-v537{margin:8px 28px 0}.request-submit-v537{padding:20px 28px 28px!important;border-top:0!important}.request-submit-v537 .btn{min-height:50px}.request-submit-v537>span{max-width:360px!important;color:#7893aa!important;font-size:.72rem!important;line-height:1.45}
.request-contact-v537{margin-top:8px;background:radial-gradient(circle at 90% 20%,rgba(57,199,130,.11),transparent 28%),linear-gradient(135deg,#0a253f,#0d3658)!important}
.request-v537 .request-success{background:linear-gradient(145deg,#0a263f,#081b30)!important;border:1px solid rgba(83,178,132,.25)!important;color:#eef8f3}.request-v537 .request-success-info{background:rgba(30,130,85,.10)!important;border-color:rgba(58,185,125,.22)!important;color:#bde3cf}.request-v537 .request-success p{color:#a8bed1}
@media(max-width:1050px){.request-showcase{grid-template-columns:1fr minmax(330px,.75fr)}.request-decision-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.request-application-layout{grid-template-columns:1fr}.request-application-aside{position:relative;top:auto;min-height:0}.request-application-aside ol{grid-template-columns:repeat(2,minmax(0,1fr))}.request-aside-whatsapp{margin-top:18px}}
@media(max-width:760px){.request-v537 .request-main{padding:14px 12px 42px}.request-showcase{grid-template-columns:1fr;padding:20px 16px 16px;border-radius:26px;gap:15px}.request-showcase-copy{padding:2px 2px 0}.request-eyebrow{margin-bottom:13px;font-size:.68rem}.request-showcase h1{font-size:clamp(2.25rem,12vw,3.5rem);margin-bottom:14px}.request-showcase-copy>p{font-size:.92rem;line-height:1.58}.request-hero-actions{display:grid;grid-template-columns:1fr;margin-top:20px}.request-hero-actions .btn{width:100%}.request-hero-pills{gap:6px;margin-top:14px}.request-hero-pills span{font-size:.64rem;padding:6px 8px}.request-showcase-art{min-height:390px;border-radius:21px}.request-showcase-art picture img{object-position:center 20%}.request-showcase-card{left:10px;right:10px;bottom:10px;padding:11px 12px}.request-showcase:after{display:none}.request-decision-grid{grid-template-columns:1fr 1fr;gap:8px;margin:12px 0 20px}.request-decision-card{min-height:0;padding:13px 11px;gap:8px;border-radius:16px}.request-decision-card>span{width:28px;height:28px;flex-basis:28px}.request-decision-card strong{font-size:.75rem}.request-decision-card small{font-size:.65rem}.request-important-card{grid-template-columns:1fr;padding:20px 17px;border-radius:20px;gap:17px}.request-important-card h2{font-size:1.45rem}.request-important-card p{font-size:.85rem}.request-application-head{align-items:stretch;flex-direction:column}.request-secure-dark{min-width:0}.request-application-aside{padding:18px;border-radius:20px}.request-aside-brand img{width:58px;height:58px}.request-application-aside ol{grid-template-columns:1fr}.request-form-v537{border-radius:20px!important}.request-v537 .request-form-block{padding:20px 16px!important}.request-form-progress span{min-height:38px;font-size:.59rem}.request-consent-v537{margin:16px 16px 0!important}.request-message-v537{margin-inline:16px}.request-submit-v537{padding:16px!important;display:grid!important;grid-template-columns:1fr!important}.request-submit-v537 .btn{width:100%}.request-contact-v537{margin-top:0;border-radius:20px!important}.request-whatsapp-btn{width:100%;text-align:center}}
@media(max-width:420px){.request-decision-grid{grid-template-columns:1fr}.request-showcase-art{min-height:350px}.request-showcase-card small{font-size:.66rem}.request-v537 .public-nav .actions .btn{font-size:.64rem}}
.accomp-contact-actions{border-color:rgba(38,190,120,.22)!important;background:linear-gradient(145deg,rgba(12,58,43,.18),var(--surface, #fff))!important}.accomp-contact-actions .actions{gap:8px;flex-wrap:wrap}
.accomp-contact-actions{border-color:rgba(38,190,120,.22)!important;background:linear-gradient(145deg,rgba(12,58,43,.18),var(--surface,#fff))!important}.accomp-contact-actions .actions{gap:8px;flex-wrap:wrap}

/* v5.3.7.1 · Perfil global em seletores e contextos */
.student-select-profile-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}
.student-select-profile-row select{min-width:0;width:100%}
.student-select-profile-btn{white-space:nowrap;align-self:stretch;display:inline-flex;align-items:center;justify-content:center}
.profile-context-strip{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 12px;margin-bottom:10px;border:1px solid rgba(78,157,220,.22);border-radius:14px;background:linear-gradient(135deg,rgba(23,52,83,.07),rgba(215,171,77,.08))}
.profile-context-strip>span{font-size:.76rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted,#667085)}
@media(max-width:640px){.student-select-profile-row{grid-template-columns:1fr}.student-select-profile-btn{width:100%;min-height:42px}}

/* v5.3.8 · Solicitações de acompanhamento — operação na Central */
.accomp-request-row{position:relative;border:1px solid rgba(74,142,205,.12);border-radius:16px;padding:12px 13px!important;margin-bottom:8px;background:linear-gradient(135deg,rgba(31,95,154,.035),rgba(255,255,255,.01))}.accomp-request-row.is-ready{border-color:rgba(213,169,68,.3);background:linear-gradient(135deg,rgba(213,169,68,.08),rgba(39,104,164,.045))}.accomp-request-name{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.accomp-request-name .pill{font-size:.58rem}.accomp-whatsapp-quick{border-color:rgba(39,181,111,.28)!important;background:rgba(39,181,111,.08)!important;color:#23865a!important}.accomp-request-row .actions{gap:7px;flex-wrap:wrap}@media(max-width:700px){.accomp-request-row{align-items:stretch!important}.accomp-request-row .actions{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.accomp-request-row .actions>.pill{grid-column:1/-1;width:max-content}.accomp-request-row .actions .btn{width:100%}}


/* v5.4.0 — Comunicação final: áudio nativo no Chat */
.chat-audio-recorder{display:contents}.chat-audio-btn{position:relative}.chat-audio-btn.recording{background:#8d2130!important;border-color:#d64d60!important;color:#fff!important;animation:pjsAudioPulse 1.15s ease-in-out infinite}.chat-audio-btn.ready{background:color-mix(in srgb,var(--chat-accent-2) 18%,var(--chat-head))!important;border-color:var(--chat-accent-2)!important}.chat-audio-status{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:34px;padding:7px 10px;margin-bottom:5px;border-radius:11px;background:color-mix(in srgb,var(--chat-accent-2) 12%,var(--chat-head));border:1px solid color-mix(in srgb,var(--chat-accent-2) 28%,transparent);color:var(--chat-text);font-size:.72rem;font-weight:800}.chat-audio-status.hidden{display:none!important}.chat-audio-status button{border:0;background:transparent;color:var(--chat-muted);font-size:1.2rem;cursor:pointer}.comm-audio-card{width:min(330px,74vw);display:grid;gap:8px;padding:10px;border-radius:14px;background:color-mix(in srgb,var(--chat-surface) 92%,transparent);border:1px solid color-mix(in srgb,var(--chat-accent-2) 18%,transparent)}.comm-audio-meta{display:flex;align-items:center;gap:8px}.comm-audio-meta>span{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--chat-accent-2) 18%,transparent)}.comm-audio-meta>div{display:grid;gap:1px}.comm-audio-meta strong{font-size:.76rem}.comm-audio-meta small{font-size:.6rem;color:var(--chat-muted)}.comm-audio-card audio{display:block;width:100%;height:34px}.comm-audio-card.audio-error:after{content:'Não foi possível carregar este áudio.';font-size:.62rem;color:#cc5362}.comm-attachment-block.is-audio .comm-audio-download{margin-top:5px;min-height:34px;opacity:.85}.comm-attachment-block.is-audio .comm-audio-download img{width:20px;height:20px}.chat-compose-row-v517{grid-template-columns:36px 36px 40px 40px minmax(0,1fr) 42px!important}.portal-chat-page-v517.chat-focus .chat-composer-v520 .chat-compose-row-v517,.comm-chat-panel-v517 .chat-composer-v520 .chat-compose-row-v517{grid-template-columns:36px 36px 40px 40px minmax(0,1fr) 42px!important}
@keyframes pjsAudioPulse{0%,100%{box-shadow:0 0 0 0 rgba(214,77,96,.05)}50%{box-shadow:0 0 0 6px rgba(214,77,96,.16)}}
@media(max-width:520px){.chat-compose-row-v517,.portal-chat-page-v517.chat-focus .chat-composer-v520 .chat-compose-row-v517,.comm-chat-panel-v517 .chat-composer-v520 .chat-compose-row-v517{grid-template-columns:34px 34px 38px 38px minmax(0,1fr) 40px!important;gap:4px!important}.comm-audio-card{width:min(300px,76vw)}}

/* v5.5.7.32 · Escola — contexto único de turma + grupos de avaliação */
.school-context-toolbar .school-context-title{min-width:220px}
.school-context-toolbar .school-turma-picker{min-width:250px;margin-left:auto}
.school-context-toolbar .school-date-picker{min-width:160px}
.school-context-toolbar .school-unit-pill{align-self:center;display:flex;align-items:center}
.school-tabs-organized{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px!important;border-bottom:0!important;padding-bottom:0!important;overflow:visible!important}
.school-tab-group{min-width:0;border:1px solid rgba(114,164,209,.14);border-radius:16px;background:rgba(6,24,42,.58);padding:10px}
.school-tab-group-label{margin:0 0 8px 2px;color:#7f9bb3;font-size:.65rem;line-height:1;text-transform:uppercase;letter-spacing:.08em;font-weight:900}
.school-tab-group-buttons{display:flex;gap:7px;flex-wrap:wrap;align-items:center}
.school-tab-group .tab{margin:0}
@media(max-width:900px){
 .school-tabs-organized{grid-template-columns:1fr}
}
@media(max-width:700px){
 .school-context-toolbar{grid-template-columns:1fr 1fr!important;gap:9px!important}
 .school-context-toolbar .school-context-title{grid-column:1/-1;min-width:0}
 .school-context-toolbar #schoolBackClass{grid-column:1/-1;justify-self:start}
 .school-context-toolbar .school-turma-picker{grid-column:1/-1;min-width:0;margin-left:0!important}
 .school-context-toolbar .school-date-picker{min-width:0}
 .school-context-toolbar .school-unit-pill{justify-self:end}
 .school-tabs-organized{margin-inline:-2px;display:grid!important;overflow:visible!important}
 .school-tab-group{padding:9px}
 .school-tab-group-buttons{flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
 .school-tab-group-buttons::-webkit-scrollbar{display:none}
 .school-tab-group .tab{flex:0 0 auto}
}
.school-inner-turma-field{display:none!important}

/* v5.5.7.33 · Aulas Particulares — rotina separada de atalhos gerais */
.private-lessons-actions-v55733{display:grid;gap:18px}
.private-hub-section{display:grid;gap:12px;padding:16px;border:1px solid rgba(94,157,210,.16);border-radius:20px;background:linear-gradient(145deg,rgba(8,31,53,.74),rgba(12,42,70,.48))}
.private-hub-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.private-hub-section-head h3{margin:3px 0 0;font-size:1rem;color:#eef6ff}
.private-hub-section-kicker{display:block;font-size:.64rem;line-height:1;text-transform:uppercase;letter-spacing:.09em;font-weight:900;color:#d9bb69}
.private-primary-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.private-primary-grid .hub-action-card{min-height:168px}
.private-hub-shortcuts{background:rgba(8,25,43,.38);border-style:dashed;border-color:rgba(132,158,181,.17)}
.private-hub-shortcuts .private-hub-section-kicker{color:#8298ad}
.private-shortcut-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.private-shortcut-grid .hub-action-card{position:relative;min-height:142px;opacity:.88;background:rgba(255,255,255,.025)!important;border-color:rgba(143,166,187,.13)!important;box-shadow:none!important}
.private-shortcut-grid .hub-action-card:hover{opacity:1;border-color:rgba(214,181,95,.28)!important}
.hub-shortcut-tag{position:absolute;right:10px;top:10px;padding:4px 7px;border-radius:999px;border:1px solid rgba(151,171,190,.18);background:rgba(255,255,255,.04);color:#879caf;font-size:.56rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
@media(max-width:1100px){.private-primary-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.private-shortcut-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:760px){.private-hub-section{padding:13px;border-radius:17px}.private-hub-section-head{align-items:center}.private-primary-grid,.private-shortcut-grid{grid-template-columns:1fr!important}.private-primary-grid .hub-action-card,.private-shortcut-grid .hub-action-card{min-height:0}.hub-shortcut-tag{position:static;width:max-content;margin-top:4px}}


/* v5.5.7.34 · Solicitações & Alunos em abas próprias */
.reinforcement-tabs-shell{display:grid;gap:12px;padding:15px 16px!important;background:linear-gradient(145deg,rgba(7,29,50,.78),rgba(10,42,70,.58))!important;border-color:rgba(101,161,213,.18)!important}
.reinforcement-tabs-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}
.reinforcement-tabs-head h3{margin:3px 0 0;color:#eef6ff}
.reinforcement-section-tabs{display:flex!important;align-items:center;gap:7px!important;overflow-x:auto!important;padding:3px 1px 5px!important;border-bottom:0!important;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.reinforcement-section-tabs::-webkit-scrollbar{display:none}
.reinforcement-section-tabs .tab{flex:0 0 auto;display:inline-flex;align-items:center;gap:7px;min-height:42px;margin:0!important;padding:9px 12px!important;border:1px solid rgba(130,169,202,.13)!important;border-radius:12px!important;background:rgba(255,255,255,.025)!important;color:#aebfd0!important;white-space:nowrap}
.reinforcement-section-tabs .tab b{min-width:22px;height:22px;padding:0 6px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:rgba(255,255,255,.08);color:#d7e5f2;font-size:.65rem}
.reinforcement-section-tabs .tab:hover{border-color:rgba(214,181,95,.3)!important;color:#f1f6fa!important}
.reinforcement-section-tabs .tab.active{background:linear-gradient(135deg,rgba(29,99,226,.25),rgba(214,181,95,.10))!important;border-color:rgba(214,181,95,.42)!important;color:#fff!important;box-shadow:inset 0 -2px 0 rgba(214,181,95,.88)}
.reinforcement-section-tabs .tab.active b{background:#d6b55f;color:#071426}
.reinforcement-tab-pane[hidden]{display:none!important}
.reinforcement-tab-pane{animation:reinforcementPaneIn .18s ease-out}
.reinforcement-old-requests{border-style:dashed!important;opacity:.94}
@keyframes reinforcementPaneIn{from{opacity:.35;transform:translateY(4px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.reinforcement-tab-pane{animation:none!important}}
@media(max-width:700px){.reinforcement-tabs-shell{padding:12px!important;border-radius:16px}.reinforcement-tabs-head{align-items:flex-start;flex-direction:column;gap:4px}.reinforcement-tabs-head>.small{font-size:.68rem}.reinforcement-section-tabs{margin-inline:-2px!important}.reinforcement-section-tabs .tab{min-height:40px;padding:8px 10px!important;font-size:.75rem}}
/* v5.5.7.36 — histórico de aulas, extensão, arquivo e streak */
.history-filter-bar{display:grid;grid-template-columns:minmax(220px,1fr) minmax(180px,.35fr);gap:12px;margin:14px 0}.history-row{align-items:center}.history-row .list-main small{display:block;margin-top:5px}.reinforcement-history-v55736 .finance-amount{display:flex;gap:6px;align-items:center}.habit-streak{display:flex;align-items:center;gap:7px;margin:8px 0 10px;padding:8px 10px;border-radius:12px;background:rgba(232,193,93,.10);border:1px solid rgba(232,193,93,.18)}.habit-streak span{font-size:1.1rem}.habit-streak strong{font-size:1.15rem}.habit-streak small{color:var(--muted,#74889a)}.extension-project-switcher .extension-project-picker,.hero-extension .extension-project-picker{max-width:520px}.extension-load-more{justify-content:center;margin-top:12px}.archive-context-filter{min-width:180px}.archive-groups{display:grid;gap:20px}.archive-group{padding-top:4px}.archive-group+.archive-group{border-top:1px solid rgba(130,150,170,.18);padding-top:18px}.archive-group-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:10px}.archive-group-head h3{margin:.2rem 0 0}.academic-deadlines-v55736 .list-time{min-width:82px}.reinforcement-finance-v55736 .profile-summary-grid{margin-bottom:12px}
@media(max-width:760px){.history-filter-bar{grid-template-columns:1fr}.history-row{align-items:flex-start}.history-row>.actions{width:100%;justify-content:flex-start;flex-wrap:wrap}.archive-context-filter{min-width:0;width:100%}.archive-context-filter select{width:100%}.archive-group .table-wrap{overflow:visible}.extension-project-switcher .field{width:100%}}
