/* Escala de leitura. Somente tipografia/espaçamento; mantém fluxos, cores e componentes. */
body{font-size:1rem;line-height:1.65}
body :is(button,.botao-link){font-size:.8125rem;line-height:1.45;white-space:normal}
body :is(input,textarea,select){font-size:.9375rem;line-height:1.55}
body label{font-size:.8125rem;line-height:1.6}
.page-heading h1{font-size:clamp(1.625rem,2.1vw,1.875rem);line-height:1.3}
body :is(.page-heading p,.class-tile p,.activity-tile p,.settings-card>p,.compact-form p,.editor-atividade .cabecalho-secao p,.quick-panel>p,.auth-layout .apresentacao>p){font-size:.9375rem;line-height:1.65}
body :is(.eyebrow,.page-heading .eyebrow,.workspace-tag,.section-heading .eyebrow,.class-tile .eyebrow){font-size:.75rem;letter-spacing:.08em;line-height:1.5}
.welcome-banner{min-height:216px;padding:28px 32px}
body .welcome-banner h2{font-size:1.6875rem;line-height:1.35}
body .welcome-banner p{font-size:.9375rem;line-height:1.65;max-width:520px}
body .welcome-banner .eyebrow{font-size:.8125rem}
body :is(.welcome-banner button,.section-heading .button-quiet,.recent-item .button-quiet,.activity-actions button,.quick-link,.quick-link small){font-size:.8125rem;line-height:1.5}
body :is(.stat-card>span,.stat-card small,.recent-item small,.sidebar-foot,.sidebar-foot small){font-size:.8125rem;line-height:1.6}
.stat-card{min-height:128px;padding:19px 21px}
body .stat-card strong{font-size:1.8125rem}
body :is(.recent-item strong,.person-name,.people-table td,.quick-link,.nav-item){font-size:.875rem;line-height:1.6}
body .recent-symbol{flex-shrink:0}
body .recent-item{gap:12px}
body .recent-item .button-quiet{white-space:nowrap}
body .quick-link small{margin-top:6px}
body :is(.topbar-context,#view-breadcrumb,.account-name,.topbar-actions #btn-sair,.class-switch-label select){font-size:.8125rem}
body .nav-item{min-height:44px;padding-block:10px}
body :is(.toolbar label,.toolbar input,.toolbar select,.toolbar-note,.class-code,.class-tile-foot>span:last-child,.people-table th,.person-details,.people-table td:last-child,.settings-card dt,.settings-card dd){font-size:.875rem;line-height:1.6}
body :is(.class-tile h2,.activity-tile h2,.section-heading h2,.answer-materials h3){font-size:1.125rem;line-height:1.45}
body :is(.status,.entregue,.risco,.badge-muted,.vazio,.texto-menor,.loading-line,.auth-hint,.auth-footnote,.auth-recovery-link,.mensagem){font-size:.875rem;line-height:1.6}
body :is(.class-tile,.activity-tile){gap:12px}
body :is(.detail-tabs button,.back-link,.correction-toolbar label,.correction-toolbar input,.correction-toolbar select,.configuracoes .check,.questao-editor-topo strong,.questao-editor-topo button,.opcao-editor>span){font-size:.875rem;line-height:1.6}
body .detail-tabs button{padding:10px 13px;min-height:44px;font-size:.8125rem}
body .correction-layout{grid-template-columns:260px minmax(0,1fr)}
body :is(.submission-list,.correction-content){max-height:max(560px,var(--correction-height,560px))}
body .submission-list .resposta-card h3{font-size:.9375rem;line-height:1.65}
body .submission-list button{font-size:.8125rem;line-height:1.55;padding:10px;min-height:42px}
body :is(.correction-content>p,.correction-content label,.correction-content summary,.correction-content .resposta-card small,.correction-content .workflow-actions button,.ai-assist strong,.ai-assist p,.batch-heading strong,.batch-heading p,.batch-heading button,#batch-status,#batch-results){font-size:.875rem;line-height:1.65}
body :is(.correction-content .resposta-card,.correction-content .resposta-card h4,.correction-content textarea,.review-question p,.feedback-json,.published-feedback p){font-size:1rem;line-height:1.8}
body .correction-content .resposta-card small{margin-top:10px}
body .review-question{gap:20px}
body .ai-assist p{margin-top:8px}
body :is(.ai-preview-dialog>p,.ai-preview-consent,.ai-preview-items summary,.ai-preview-items pre,.ai-preview-actions button){font-size:.9375rem;line-height:1.75}
body :is(.answer-intro #atividade-descricao,.answer-intro .aviso-simples,.questao-resposta h3,.questao-resposta textarea,.alternativas label,.answer-layout details p){font-size:1.0625rem;line-height:1.8}
body :is(.answer-progress strong,.answer-progress span,.answer-layout summary,.answer-layout #rascunho-status,.answer-layout #btn-salvar-rascunho,.answer-layout #btn-entregar,.material-file-info small,.material-download){font-size:.875rem;line-height:1.6}
body .answer-layout #rascunho-controles{gap:12px}
body .answer-layout #rascunho-status{min-width:0}
body .material-file-info strong{font-size:1rem;line-height:1.6}
body .material-filetype{font-size:.8125rem;flex-shrink:0}
body :is(.notification-controls label,.notification-controls button,.notification-read,.notification-more,.notification-open,.notification-status,.notification-item small){font-size:.8125rem;line-height:1.65}
body .notification-item strong{font-size:1rem;line-height:1.55}
body .notification-item p{font-size:.9375rem;line-height:1.7;margin-block:8px}
body .notification-item{padding:14px}
body .notification-list{gap:10px}
body :is(.chat-bar-text strong,.chat-launcher-label,.chat-check,.chat-toolbar label,.chat-class-label,.chat-toolbar select,.chat-class-label select,.chat-teacher-row,.chat-subtle-button,.chat-author,.chat-meta,.chat-notice,.chat-history-pager){font-size:.8125rem;line-height:1.6}
body .chat-bar-text small{font-size:.75rem;line-height:1.6}
body :is(.chat-bubble,.chat-compose input,.chat-compose button){font-size:.9375rem;line-height:1.7}
body .chat-remove{font-size:.75rem}
body .chat-launcher{padding:12px 17px}
body .chat-compose{align-items:flex-end}
body :is(.auth-tabs button,.auth-card label,.auth-card input,.auth-card form>button,.auth-card>.back-link,#recovery-fields>small){font-size:.9375rem;line-height:1.65}
body .auth-hint{margin-bottom:22px}
html:not([data-theme=dark]) :is(.page-heading p,.class-tile p,.activity-tile p,.settings-card>p,.quick-panel>p,.recent-item small,.stat-card>span,.stat-card small,.eyebrow,.page-heading .eyebrow,.workspace-tag,.sidebar-foot,.sidebar-foot small,.auth-hint,.auth-footnote,.auth-layout .apresentacao>p,.toolbar-note,.notification-status,.notification-item small,.correction-content .resposta-card small,.chat-meta){color:#596579}
html:not([data-theme=dark]) .ai-assist p{color:#655a79}
@media(max-width:1100px){body .correction-layout{grid-template-columns:240px minmax(0,1fr)}.dashboard-columns{grid-template-columns:minmax(0,1.4fr) minmax(240px,1fr)}}
@media(max-width:900px){.dashboard-columns{grid-template-columns:1fr}.banner-art{margin-right:0}.topbar-context{display:none}.topbar-actions{gap:10px}}
@media(max-width:700px){body .correction-layout{grid-template-columns:1fr}.app-main{padding-inline:18px}body .page-heading{align-items:flex-start;flex-wrap:wrap;gap:15px}body .welcome-banner{padding:22px}body .welcome-banner h2{font-size:1.5rem}body .welcome-banner p{font-size:1rem}body .page-heading h1{font-size:1.625rem}body .answer-progress>div{flex-wrap:wrap;gap:8px}body :is(.auth-card input,.correction-content textarea,.questao-resposta textarea,.toolbar input,.toolbar select,.correction-toolbar input,.correction-toolbar select,.chat-compose input){font-size:1rem}body .class-tile-foot{flex-wrap:wrap}body .material-link{flex-wrap:wrap}body .material-file-info{flex:1;min-width:0}body .material-download{margin-left:auto}body .topbar-actions #btn-sair{font-size:.8125rem}body .correction-content{padding:22px 16px}body .ai-preview-actions{flex-wrap:wrap}body .notification-item-actions{gap:12px}body .auth-layout .apresentacao>p{font-size:1rem}}
@media(max-width:380px){.app-topbar{padding-inline:12px;gap:8px}.topbar-location{gap:6px}#view-breadcrumb{max-width:92px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-actions{gap:6px}.topbar-actions .account-avatar{display:none}.notification-center{gap:5px}.recent-item{flex-wrap:wrap}.recent-item .button-quiet{margin-left:auto}}
@media(max-width:700px){body .correction-content{max-height:none}body .submission-list{max-height:300px}}

/* Densidade próxima à referência de 90%, com navegador em 100%. Conteúdo de respostas permanece 16–17 px. */
@media(min-width:701px){.app-main{padding:32px 34px 60px}.page-heading{margin-bottom:23px}.welcome-banner{margin-bottom:22px}.stats-grid{gap:16px;margin-bottom:24px}.dashboard-columns{gap:20px}.dashboard-columns>.card{padding:22px}.detail-content{padding:26px}.class-tile,.activity-tile{padding:23px;min-height:195px}.toolbar{margin-bottom:21px}}
body .recent-item{padding-block:14px}body .quick-link{padding-block:13px}body .activity-actions button{padding:7px 10px;min-height:34px}

/* Referência explícita aprovada: visual do print a 90% com navegador em 100%.
   Zoom de layout nativo mantém texto selecionável, fluxo e rolagem. */
body{zoom:.9;min-height:calc(100dvh / .9)}
