.step{padding:30px}.step h2{margin-top:14px}.wizard{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}.wizard span{padding:8px 14px;border:1px solid var(--line);border-radius:30px;color:var(--muted);font-size:13px}.wizard span.active{color:var(--mint);border-color:var(--mint);background:#15362e}.fields,.material-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.fields{gap:16px 24px}label{display:block;font-size:14px;font-weight:600;margin:16px 0 7px}input:not([type=checkbox]),select{width:100%;padding:11px;background:#0c1424;color:var(--text);border:1px solid #34415a;border-radius:10px;font:inherit}textarea{min-height:80px;line-height:1.65}.material-grid>div:last-child textarea{min-height:390px}.navigation{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0 32px}.voice-info{margin-top:20px;padding:20px;border:1px solid #365064;border-radius:16px;background:#142838;font-size:14px}.voice-info p{font-size:13px}.page-title{align-items:flex-start}.page-title .badge{font-size:11px}.test-top{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:22px 0}.test-clock{font:800 38px Manrope;color:var(--mint);font-variant-numeric:tabular-nums}.test-clock.warning{color:var(--orange)}.paper{padding:clamp(22px,4vw,60px);border-radius:24px;background:#fffaf0;color:#193247;box-shadow:0 20px 50px #0003}.paper h2{font-size:20px;font-weight:600;color:#526374;margin-bottom:24px}.passage{font:500 clamp(22px,3vw,36px)/1.9 Arial,sans-serif;white-space:pre-wrap}.big-word{font:800 clamp(42px,12vw,150px)/1.5 Arial,sans-serif;text-align:center;overflow-wrap:anywhere}.paper p{color:#456171}#wordProgress,#attemptInfo{text-align:center}.test-controls{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0 40px}.test-status{color:var(--mint);font-size:17px;margin-bottom:8px}.question-options{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0}.question-options button.selected{border-color:var(--mint);background:#154336}.question-options button{min-width:150px}#questionText{font-size:clamp(26px,4vw,40px);margin:22px 0}.metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin:20px 0}.metric{padding:16px;border:1px solid var(--line);border-radius:12px}.metric strong{display:block;color:var(--mint);font:800 30px Manrope}.metric span{font-size:12px;color:var(--muted)}.alignment{font-size:20px;line-height:2.1;padding:20px;border:1px solid var(--line);border-radius:14px;max-height:440px;overflow:auto}.alignment span{padding:2px 5px;border-radius:4px;display:inline-block;margin:2px}.mark-match{background:#134936;color:#b5f9d4}.mark-different{background:#5f283a;color:#ffd4df}.mark-missing{background:#5d431b;color:#ffe4b4}.mark-notRead{background:#29384e;color:#d2dce9}.mark-extra{background:#3d2e62;color:#eadfff}.legend{font-size:12px;display:flex;gap:10px;flex-wrap:wrap}.legend span{padding:4px 8px;border-radius:4px}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13px;text-align:left}th,td{padding:12px 10px;border-bottom:1px solid var(--line);vertical-align:top}td select{min-width:170px;font-size:13px}#report h3{margin-top:32px}#questionReport .question-review{padding:12px 0;border-bottom:1px solid var(--line)}#questionReport select{max-width:260px;margin-top:8px}footer a{color:var(--cyan)}body:has(#test:not([hidden])) .page-title{display:none}#transcriptDetails{margin-top:14px;padding:12px;border:1px solid var(--line);border-radius:12px}#transcriptDetails p{white-space:pre-wrap}#reviewSetup dl{display:grid;grid-template-columns:auto 1fr;gap:8px 20px}#reviewSetup dt{color:var(--muted)}#reviewSetup dd{margin:0}#setupMessage{color:#ffcb86}.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.category-symbol{font:800 48px Manrope;color:var(--mint)}@media(max-width:850px){.fields,.material-grid{grid-template-columns:1fr}.category-grid{grid-template-columns:1fr}.step{padding:22px}.page-title{flex-wrap:wrap}.question-options button{min-width:0;flex:1}.passage{font-size:25px}#reviewSetup dl{grid-template-columns:1fr}#reviewSetup dd{margin-bottom:10px}}@media print{header,footer,.page-title,#setup,#test,.navigation,#applyTranscript,label[for=editTranscript],#editTranscript,.help,.legend{display:none!important}body{background:white!important;color:black!important}.shell{max-width:none;width:100%;padding:0}.panel{background:white;border:0;padding:0;box-shadow:none}.alignment{max-height:none;overflow:visible;color:black;font-size:14px}table{font-size:11px}.metric strong,.metric span{color:black}.metrics{break-inside:avoid}textarea,select{color:black;background:white;border:1px solid #ccc}#report{display:block!important}}
.step{text-transform:none;color:var(--text);font-size:16px;letter-spacing:normal;font-weight:400}

/* A leitura do texto ocupa o viewport, sem rolagem. */
body.text-focus{overflow:hidden}
body.text-focus header,body.text-focus footer,body.text-focus .page-title{display:none}
body.text-focus #test{position:fixed;inset:0;z-index:100;width:100%;height:100dvh;display:flex;flex-direction:column;gap:8px;padding:12px;background:#0b1020;overflow:hidden}
body.text-focus .test-top{margin:0;flex:0 0 auto}
body.text-focus .test-clock{font-size:30px}
body.text-focus #textScreen{display:flex;flex:1 1 0;flex-direction:column;min-height:0;overflow:hidden;padding:clamp(10px,2vw,24px);border-radius:16px;cursor:pointer}
body.text-focus #textScreen h2{flex:0 0 auto;font:500 12px/1.3 Arial,sans-serif;margin:0 0 8px;color:#637379;letter-spacing:0;text-transform:none}
body.text-focus #passageDisplay{flex:1 1 0;min-height:0;overflow:hidden;line-height:1.45;font-family:Arial,Helvetica,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere}
body.text-focus #textScreen[aria-pressed=true]{outline:4px solid #ffbd77;outline-offset:-4px}
body.text-focus #testControls{flex:0 0 auto;margin:0;gap:8px}
body.text-focus #testControls button{font-size:12px;padding:8px 12px;min-height:38px}
body.text-focus #status{flex:0 0 auto;font-size:12px;line-height:1.3;max-height:2.6em;overflow:hidden;margin:0}
body.text-focus #heard,body.text-focus #transcriptDetails{display:none!important}
@media(max-width:600px){body.text-focus #test{padding:8px;gap:6px}body.text-focus #testStage{font-size:10px}body.text-focus .test-clock{font-size:25px}}

/* Avisos do próprio aplicativo, com ações explícitas e foco acessível. */
.decision-dialog{width:min(500px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:28px;border:1px solid #3c4d68;border-radius:24px;background:linear-gradient(145deg,#18263d,#101b2d);color:#f4f7fc;box-shadow:0 28px 100px #0009;overflow:auto}
.decision-dialog::backdrop{background:#050b19b8;backdrop-filter:blur(5px)}
.decision-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:18px}.decision-icon{display:grid;place-items:center;width:48px;height:48px;background:#493b2b;border:1px solid #80603c;border-radius:14px;color:#ffbd77;font:800 26px Manrope,Arial,sans-serif}
.decision-dialog .decision-close{display:grid;place-items:center;min-height:36px;width:36px;padding:0;background:transparent;border:1px solid #34445e;color:#b9c8dc;border-radius:10px;font:400 24px Arial,sans-serif}
.decision-context{text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-weight:700;color:#83edc2}.decision-dialog h2{font:800 28px/1.2 Manrope,Arial,sans-serif;margin:10px 0 14px;letter-spacing:-.035em}.decision-dialog p{font-size:14px;line-height:1.65;color:#bac8db;margin:0 0 16px}.decision-dialog .decision-hint{padding:12px 14px;border:1px solid #3a485d;border-radius:12px;background:#10192b;font-size:12px;color:#aebed4}
.decision-time{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#aebed4;margin:16px 0}.decision-time strong{font:800 22px Manrope,Arial,sans-serif;color:#ffbd77;font-variant-numeric:tabular-nums}
.decision-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:22px}.decision-actions button{font-size:13px;min-height:46px;padding:12px 16px}.decision-actions .decision-primary{background:#ffbd77;border-color:#ffbd77;color:#2c1c0d}.decision-actions .quiet{background:#1b2940;border-color:#3b4d67}
body:has(.decision-dialog[open]){overflow:hidden}
@media(max-width:520px){.decision-dialog{padding:22px}.decision-dialog h2{font-size:25px}.decision-actions{flex-direction:column-reverse}.decision-actions button{width:100%}}

/* Ritmo visual mais compacto, sem reduzir a legibilidade do material. */
.category-symbol{font-size:30px;line-height:1.2}.card{min-height:245px;padding:22px}.card h2{font-size:23px;margin-top:18px}.intro{padding:40px 0 26px}.intro h1{font-size:clamp(34px,5vw,50px)}.step{padding:22px}.wizard span{font-size:11px;padding:6px 11px}.page-title{padding:22px 0 18px}.page-title h1{font-size:30px}.page-title .badge{font-size:10px;padding:4px 8px}.paper{padding:24px}.test-clock{font-size:28px}.big-word{font-size:clamp(40px,7vw,88px);line-height:1.4;letter-spacing:.02em}.word-meta{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.word-meta p{margin:0;font-size:13px}.voice-badge{padding:6px 10px;border:1px solid #bbcfc8;border-radius:999px;background:#e5eee9;color:#35564a;font-size:12px}.voice-badge[data-listening=true]{background:#dcf3e4;color:#1b694e;border-color:#94c7ac}.decision-icon{width:36px;height:36px;border-radius:10px;font-size:21px}.decision-dialog h2{font-size:24px}.decision-dialog{padding:23px}.decision-header{margin-bottom:14px}.test-controls button{font-size:13px;padding:10px 14px}.metrics .metric{padding:12px}.metric strong{font-size:25px}
@media(max-width:600px){.card{min-height:215px;padding:20px}.paper{padding:20px}.big-word{font-size:clamp(36px,10vw,65px)}.word-meta{gap:8px}.test-controls{gap:8px}.test-controls button{font-size:12px;padding:10px}.voice-badge{font-size:11px}.decision-dialog h2{font-size:22px}}

.material-suggestions{margin:18px 0 10px;padding:16px 18px;border:1px solid var(--line);border-radius:14px;background:#142438}
.material-suggestions label{margin:0 0 6px}
.material-choice-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:stretch}
.material-choice-row select{min-width:0}
.material-choice-row button:disabled{opacity:.55;cursor:default}
.material-suggestions .help{margin:10px 0 0}
#materialStatus{color:var(--mint)}
#materialStatus:empty{margin:0}
@media(max-width:560px){.material-choice-row{grid-template-columns:1fr}.material-choice-row button{justify-self:start}}

.reading-ready{text-align:center;padding:clamp(24px,8vw,72px)}
#readyNumber{display:block;color:#ffda56;font:800 clamp(80px,24vw,180px)/1.2 Manrope,Arial,sans-serif}
