/* Modo apresentador (segunda janela). Só existe com ?modo=apresentador. */
#ap[hidden] { display: none; }
body.modo-ap { background: #0b1520; color: #e8eef4; }
body.modo-ap #palco { display: none; }
#ap { position: fixed; inset: 0; display: flex; flex-direction: column; font-family: "Work Sans", system-ui, sans-serif; }
#ap button { font: 600 14px/1 "Work Sans", system-ui, sans-serif; color: #e8eef4; background: #1b2b3b; border: 1px solid #2c4258; padding: 9px 12px; cursor: pointer; border-radius: 4px; }
#ap button:hover { background: #24394e; }
#ap button.on { background: #005291; border-color: #3d86c6; }
.ap-top { display: flex; align-items: center; gap: 22px; padding: 10px 18px; background: #00182A; border-bottom: 1px solid #1e3245; flex-wrap: wrap; }
.ap-relogio { font-size: 34px; font-weight: 600; font-variant-numeric: tabular-nums; letter-spacing: -.02em; }
#ap .ap-decorrido { font-size: 24px; font-weight: 300; font-variant-numeric: tabular-nums; background: transparent; border-color: transparent; padding: 4px 8px; }
.ap-pos { font-size: 20px; font-weight: 300; }
.ap-pos b { font-weight: 700; }
.ap-bts { margin-left: auto; display: flex; gap: 6px; flex-wrap: wrap; }
.ap-main { flex: 1; min-height: 0; display: grid; grid-template-columns: 56fr 44fr; gap: 18px; padding: 16px 18px; }
.ap-col1, .ap-col2 { min-height: 0; display: flex; flex-direction: column; gap: 10px; }
.ap-rot { font-size: 13px; font-weight: 600; letter-spacing: .14em; color: #8fa6bb; text-transform: uppercase; }
.ap-tipo { font-weight: 300; letter-spacing: .04em; text-transform: none; }
.ap-moldura { position: relative; width: 100%; aspect-ratio: 16 / 9; overflow: hidden; background: #00182A; flex: 0 0 auto; }
.ap-moldura .slide { visibility: visible; transform-origin: 0 0; }
.ap-atual { cursor: pointer; outline: 2px solid #2c4258; }
.ap-prox { width: 78%; outline: 1px solid #2c4258; }
.ap-prox.mesmo { outline: 2px solid #B8A1CC; }
.ap-fim { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; font-size: 18px; letter-spacing: .14em; color: #8fa6bb; }
.ap-notas { flex: 1; min-height: 0; overflow-y: auto; background: #101e2b; border: 1px solid #1e3245; padding: 16px 20px 24px; position: relative; }
.ap-notas-bts { position: sticky; top: 0; float: right; display: flex; gap: 4px; }
.ap-txt { font-size: 30px; line-height: 1.38; font-weight: 400; }
.ap-txt .kw { color: #B8A1CC; font-weight: 700; }
.ap-vazio { color: #6d8296; font-style: italic; }
.ap-pend { background: #F5B700; color: #1a1300; font-weight: 600; font-size: 18px; padding: 10px 14px; margin-bottom: 14px; }
.ap-cred { margin-top: 22px; font-size: 13px; color: #8fa6bb; line-height: 1.5; }
.ap-widgets { display: flex; flex-direction: column; gap: 10px; overflow-y: auto; min-height: 0; }
.ap-w { background: #101e2b; border: 1px solid #1e3245; padding: 10px 14px; }
.ap-w[hidden] { display: none; }
.ap-wt { font-size: 13px; font-weight: 600; letter-spacing: .12em; color: #8fa6bb; margin-bottom: 8px; }
.ap-wt small { font-weight: 300; letter-spacing: .02em; margin-left: 8px; text-transform: none; }
.ap-wb { display: flex; gap: 6px; flex-wrap: wrap; align-items: center; }
.ap-quiz { border-color: #005291; }
.ap-eqs { display: grid; grid-template-columns: 1fr 1fr; gap: 6px 18px; margin-bottom: 10px; }
.ap-eq { display: flex; align-items: center; gap: 10px; font-size: 18px; }
.ap-eq .ap-en { flex: 1; font-weight: 300; cursor: text; }
.ap-eq b { font-size: 28px; font-variant-numeric: tabular-nums; min-width: 36px; text-align: right; }
.ap-eq.ult b { color: #B8A1CC; }
.ap-cv { font-size: 44px; font-weight: 800; font-variant-numeric: tabular-nums; margin-bottom: 8px; }
.ap-mv { font-size: 30px; font-weight: 800; min-width: 50px; text-align: center; font-variant-numeric: tabular-nums; }
