*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:#000;font-family:Arial,Helvetica,sans-serif;color:#fff;user-select:none}button,select,input,textarea{font-family:inherit}.viewport{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:#050505}.stage{position:relative;width:1366px;height:705px;overflow:hidden;background:#000;transform-origin:center center}.screen{position:absolute;inset:0;display:none;overflow:hidden}.screen.active{display:block}.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;pointer-events:none}.bg.contain{object-fit:contain}.videoFull{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;background:#000}.abs{position:absolute}.kbtn{position:absolute;border:0;background:transparent;padding:0;margin:0;display:block}.kbtn img{width:100%;height:100%;object-fit:fill;display:block;pointer-events:none}.kbtn:active{transform:translateY(1px)}.ktext{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;font-size:20px;text-shadow:0 2px 3px #000;pointer-events:none}.kselect{position:absolute;color:#fff;text-align:center;font-size:20px;z-index:120}.kselect.open{z-index:1200}.kselect .selHead{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background-size:100% 100%;text-shadow:0 2px 3px #000;cursor:pointer;padding:0 12px;line-height:1.1}.kselect .selOpts{position:absolute;left:0;top:calc(100% + 4px);bottom:auto;width:100%;max-height:260px;overflow:auto;z-index:1201;display:none}.kselect.open .selOpts{display:block}.kselect.openUp .selOpts{top:auto;bottom:calc(100% + 4px)}.kselect .selOpt{height:48px;display:flex;align-items:center;justify-content:center;background-size:100% 100%;cursor:pointer;color:#fff;text-shadow:0 2px 3px #000}.kselect .selOpt:hover{filter:brightness(1.13)}.overlay{position:absolute;inset:0;background:rgba(0,0,0,.88);display:none;align-items:center;justify-content:center;z-index:500}.overlay.show{display:flex}.popup{position:relative;background-size:100% 100%;background-repeat:no-repeat;color:#fff;text-shadow:0 2px 3px #000;overflow:visible}.popupInner{position:absolute;inset:0;padding:20px;overflow:visible}.scroll{overflow:auto}.label{font-size:20px;color:#fff;text-shadow:0 2px 3px #000}.stdBtn{border:0;color:#fff;font-size:20px;text-shadow:0 2px 3px #000;background-size:100% 100%;height:48px;cursor:pointer}.stdBtn:hover{filter:brightness(1.08)}.stdBtn:active{filter:brightness(1.18)}.checkRow{display:flex;align-items:center;height:30px;gap:8px;font-size:20px}.checkRow input{width:22px;height:22px}.gameScore{position:absolute;left:10px;top:10px;width:1346px;height:70px;display:flex;align-items:center;justify-content:center;gap:18px;font-size:20px}.scoreLabel{min-width:135px;text-align:center}.wheelArea{position:absolute;left:0;right:0;top:128px;height:360px}.wheelWrap{position:absolute;left:50%;top:50%;width:520px;height:520px;transform:translate(-50%,-50%)}#wheelFallback,#wheelCanvas{position:absolute;inset:0;width:100%;height:100%;display:block;border-radius:50%;background:transparent}#wheelFallback{object-fit:contain;pointer-events:none;z-index:0;visibility:hidden}#wheelCanvas{z-index:1;will-change:transform;backface-visibility:hidden;transform:translateZ(0)}#spinBtn{z-index:2}.instruction{position:absolute;inset:0;background:rgba(0,0,0,.8);z-index:90}.outlinedText{position:absolute;left:0;right:0;text-align:center;font-size:25px;color:red;text-shadow:-2px 0 #fff,0 2px #fff,2px 0 #fff,0 -2px #fff;top:435px}.fieldRow{display:flex;align-items:center;min-height:40px;margin:10px 0;gap:10px}.fieldRow label{width:30%;text-align:right;font-size:20px}.fieldRow input,.fieldRow textarea{flex:1;height:36px;font-size:18px;background:#fff;color:#000;border:1px solid #888;padding:4px}.fieldRow textarea{height:60px;resize:none}.listRow{min-height:46px;display:flex;align-items:center;gap:8px;padding:2px 0}.listRow .qText{flex:1;min-height:46px;display:flex;align-items:center;font-size:18px;text-align:left;overflow:hidden;padding:0 10px;line-height:1.12}.listEditBtn{flex:0 0 auto}.predefItem{display:flex;align-items:center;height:34px;font-size:18px;gap:8px}.historyRoot{position:absolute;inset:0;background:#1d1d1d;padding:12px;display:flex;flex-direction:column;gap:8px}.nativeBtn{background:#efefef;color:#111;border:2px solid #888;border-radius:2px;height:48px;font-size:16px;text-align:left;padding:8px 12px;white-space:normal}.toast{position:absolute;left:50%;bottom:26px;transform:translateX(-50%);background:rgba(0,0,0,.88);border:2px solid rgba(255,255,255,.35);border-radius:8px;padding:12px 18px;font-size:20px;display:none;z-index:1000}.toast.show{display:block}
.editToolbar{position:absolute;left:8px;top:8px;z-index:1700;background:rgba(0,0,0,.82);border:1px solid rgba(255,220,120,.55);border-radius:10px;padding:7px;display:flex;align-items:center;gap:6px;color:#fff;font-size:12px;text-shadow:none;box-shadow:0 6px 18px rgba(0,0,0,.45)}
.editToolbar button{height:28px;border:1px solid rgba(255,220,120,.55);background:#4b210c;color:#ffe6a6;border-radius:7px;padding:0 8px;font-size:12px;cursor:pointer}.editToolbar button.active{background:#f0b441;color:#241000;font-weight:bold}.editToolbar input{width:54px;height:26px;border-radius:6px;border:1px solid #73502b;background:#fff;color:#111;font-size:12px;padding:2px 4px}.editToolbar .editName{min-width:130px;max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#ffe6a6}.editToolbar .editHint{color:#d7c49e}
.editLayer{position:absolute;inset:0;z-index:1550;pointer-events:none}.editLayer.on{pointer-events:none}.editBox{position:absolute;display:none;border:2px dashed #00e5ff;background:rgba(0,229,255,.05);box-shadow:0 0 0 9999px rgba(0,0,0,0);cursor:move;pointer-events:auto}.editLayer.on .editBox{display:block}.editBox.selected{border:3px solid #ffe15a;background:rgba(255,225,90,.12);box-shadow:0 0 0 2px rgba(0,0,0,.35)}.editBoxLabel{position:absolute;left:0;top:-20px;max-width:250px;background:rgba(0,0,0,.78);color:#fff4b5;font:12px Arial;padding:2px 5px;border-radius:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none}.editResizeHandle{position:absolute;right:-10px;bottom:-10px;width:20px;height:20px;border-radius:5px;background:#ffe15a;border:2px solid #160702;z-index:4;cursor:nwse-resize;pointer-events:auto}.editOn .kbtn:active{transform:none}.editOn button,.editOn .kselect{cursor:move!important}
.creditTitle{position:absolute;top:14px;left:483px;width:400px;height:60px;text-align:center;font-size:40px;font-weight:bold}.creditBox{position:absolute;left:258px;bottom:82px;width:850px;height:400px;display:flex;gap:20px}.creditBtn{position:relative;flex:1;background:transparent;border:0;padding:0}.creditBtn img{width:100%;height:100%;object-fit:contain}.creditPopupHeader{font-size:40px;color:#8F6FA0;font-weight:bold;text-align:center;margin:0 0 5px}.creditLine{font-size:22px;color:#8F6FA0;text-align:center}.kvScroll::-webkit-scrollbar{width:12px}.kvScroll::-webkit-scrollbar-thumb{background:#8a8a8a}.modalArea{position:absolute;inset:0}
.stdBtn{display:inline-block;flex:0 0 auto;line-height:48px;padding:0 14px;box-sizing:border-box}
.kselect .selHead,.kselect .selOpt{box-sizing:border-box;padding:0 14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kselect .selOpts{z-index:300}.popupInner *{box-sizing:border-box}


/* FIX: roleta centralizada na xícara, mas editável */
#game .bg.contain{object-fit:fill!important}
#game .wheelArea{position:absolute!important;left:0!important;top:0!important;width:1366px!important;height:705px!important}
#game .wheelWrap{position:absolute;transform:none}
#gameBack{z-index:20}
#instruction{pointer-events:none}
#instruction #spinBtn2{pointer-events:auto}


/* FIX: popup Áreas e Dificuldades */
.filterPopupRoot{position:absolute;inset:0;padding:16px 34px 70px 34px;overflow:hidden}
.filterTitle{position:absolute;left:0;right:0;top:8px;text-align:center;font-size:22px;font-weight:bold;color:#fff;text-shadow:0 2px 3px #000;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.filterCols{position:absolute;left:34px;right:34px;top:56px;bottom:118px;display:grid;grid-template-columns:1fr 1fr;gap:34px;overflow:hidden}
.filterCol{min-width:0;display:flex;flex-direction:column;overflow:hidden}
.filterLabel{height:32px;font-size:20px;color:#fff;text-shadow:0 2px 3px #000}
.filterScroll{flex:1;min-height:0;overflow:auto;padding-right:10px}
.filterCheck{height:auto!important;min-height:30px;line-height:1.18;font-size:20px;gap:10px;align-items:flex-start!important;white-space:normal}
.filterCheck input{flex:0 0 auto;margin-top:2px}
.filterCheck span{display:block;overflow-wrap:anywhere;word-break:normal;max-width:100%}
.filterBtn{position:absolute;height:44px;line-height:44px;font-size:20px}
.filterStartBtn{left:95px;width:190px}
.filterCancelBtn{left:315px;width:200px}


/* EDIT: wheelWrap agora também é editável */
#wheelWrap{position:absolute!important;transform:none!important}
#game .wheelWrap.edit-wheel-active{outline:none}


/* FIX créditos visíveis */
.creditBox{position:absolute!important;left:258px!important;bottom:82px!important;width:850px!important;height:400px!important;display:block!important;overflow:visible!important}
.creditBtn{position:absolute!important;flex:none!important;background:transparent!important;border:0!important;padding:0!important}
.creditBtn img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important}


/* FIX v9: popup áreas/dificuldades editável + sem borda branca */
.stdBtn,.nativeBtn,.kbtn{border:0!important;outline:0!important;box-shadow:none!important}
.stdBtn:focus,.nativeBtn:focus,.kbtn:focus{outline:0!important;box-shadow:none!important}
.filterPopupRoot{position:absolute;inset:0;overflow:hidden}
.filterTitle{position:absolute;left:0;top:8px;width:1093px;height:34px;text-align:center;font-size:22px;font-weight:bold;color:#fff;text-shadow:0 2px 3px #000;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.filterLabel{position:absolute;font-size:20px;color:#fff;text-shadow:0 2px 3px #000;line-height:30px;overflow:visible}
#filterAreaLabel{left:34px;top:56px;width:260px;height:30px}
#filterDiffLabel{left:582px;top:56px;width:260px;height:30px}
.filterScroll{position:absolute;overflow-y:auto;overflow-x:hidden;box-sizing:border-box;padding:0 12px 76px 0;scrollbar-gutter:stable;min-height:40px}
#areaChecks{left:34px;top:88px;width:500px;height:318px}
#diffChecks{left:582px;top:88px;width:420px;height:318px}
.filterCheck{height:auto!important;min-height:31px;line-height:1.22;font-size:20px;gap:10px;align-items:flex-start!important;white-space:normal;margin:0 0 6px 0;padding-bottom:2px;box-sizing:border-box}
.filterCheck input{flex:0 0 auto;margin-top:1px;width:22px;height:22px}
.filterCheck span{display:block;max-width:calc(100% - 34px);overflow-wrap:anywhere;word-break:normal}
.filterEndSpacer{height:90px;min-height:90px}
.filterBtn{position:absolute!important;top:415px;height:44px!important;line-height:44px!important;font-size:20px;border:0!important;outline:0!important;box-shadow:none!important;background-color:transparent!important}
.filterStartBtn{left:95px;width:190px}
.filterCancelBtn{left:315px;width:200px}
.editableLayout{cursor:default}


/* FIX v10: remover borda branca dos botões */
button, .stdBtn, .nativeBtn, .kbtn{
  border:none!important;
  outline:none!important;
  box-shadow:none!important;
  -webkit-appearance:none!important;
  appearance:none!important;
}
button:focus, button:focus-visible,
.stdBtn:focus, .stdBtn:focus-visible,
.nativeBtn:focus, .nativeBtn:focus-visible,
.kbtn:focus, .kbtn:focus-visible{
  border:none!important;
  outline:none!important;
  box-shadow:none!important;
}
#introConfirm,#introCancel,
#filterStart,#filterCancel{
  background-image:none!important;
  background:rgba(118,43,0,.74)!important;
  border:none!important;
  outline:none!important;
  box-shadow:none!important;
}
#introConfirm:hover,#introCancel:hover,
#filterStart:hover,#filterCancel:hover{
  background:rgba(142,55,2,.82)!important;
}


/* EDIT v11: editor escondido por senha */
#editToolbar{display:none!important}
#stage.editorUnlocked #editToolbar{display:flex!important}


/* FIX v12: créditos sem borda no estado normal; borda só vem da imagem hover B */
.creditBtn,
.creditBtn:hover,
.creditBtn:focus,
.creditBtn:focus-visible{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
}
.creditBtn img{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}


/* MOBILE/TABLET RESPONSIVO v22 */
html,body{
  width:100%;
  min-width:0;
  height:100%;
  height:100dvh;
  overscroll-behavior:none;
  touch-action:manipulation;
  -webkit-text-size-adjust:100%;
  background:#120604;
}
.viewport{
  width:100vw!important;
  height:100vh!important;
  height:100dvh!important;
  overflow:hidden!important;
  position:fixed!important;
  inset:0!important;
  display:grid!important;
  place-items:center!important;
  background:#120604;
}
.stage{
  transform-origin:center center!important;
  will-change:transform;
  max-width:none!important;
  max-height:none!important;
}
button,.kbtn,.stdBtn,.nativeBtn,.kselect{
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
}
.kbtn img{pointer-events:none}
.mobileRotateOverlay{
  position:fixed;
  inset:0;
  z-index:9999;
  display:none;
  align-items:center;
  justify-content:center;
  padding:24px;
  background:
    radial-gradient(circle at 50% 20%,rgba(151,73,18,.42),rgba(10,4,1,.94) 62%),
    rgba(0,0,0,.92);
  color:#fff2c5;
  text-align:center;
  font-family:Georgia,serif;
}
.mobileRotateOverlay.show{display:flex}
.rotateCard{
  width:min(92vw,430px);
  padding:28px 24px;
  border:1px solid rgba(255,216,132,.42);
  border-radius:24px;
  background:rgba(54,20,6,.86);
  box-shadow:0 18px 60px rgba(0,0,0,.62);
  backdrop-filter:blur(8px);
}
.rotateIcon{
  font-size:70px;
  line-height:1;
  color:#ffd98a;
  filter:drop-shadow(0 5px 8px #000);
  margin-bottom:8px;
}
.rotateCard h2{
  margin:0 0 10px;
  font-size:31px;
  color:#ffe0a0;
}
.rotateCard p{
  margin:0 auto 18px;
  max-width:330px;
  font:17px/1.38 Arial,sans-serif;
  color:#fff4d2;
}
.rotateCard button{
  display:block;
  width:100%;
  min-height:50px;
  margin-top:10px;
  border:0;
  border-radius:14px;
  background:linear-gradient(180deg,#a44b12,#6f2802);
  color:#fff2c5;
  font:700 16px Arial,sans-serif;
  box-shadow:0 6px 0 #3b1301;
}
.rotateCard button:active{
  transform:translateY(4px);
  box-shadow:0 2px 0 #3b1301;
}
body.forcePortrait .mobileRotateOverlay{display:none!important}
body.isMobileLandscape .stage{
  box-shadow:none!important;
}
body.isMobileLandscape .toast,
body.isMobilePortrait .toast{
  font-size:18px;
  padding:12px 18px;
}
@media (max-width:900px) and (orientation:landscape){
  .viewport{background:#080301}
}
@media (max-width:900px) and (orientation:portrait){
  body:not(.forcePortrait) .stage{
    filter:blur(2px) brightness(.45);
    pointer-events:none;
  }
}
@supports (height:100dvh){
  .viewport{height:100dvh!important}
}


/* MOBILE v23: scroll + aviso mais visível */
.mobileScrollSpacer{
  display:none;
  width:1px;
  height:1px;
  pointer-events:none;
}
body.forcePortrait .viewport,
body.isMobileLandscape .viewport{
  overflow:auto!important;
  -webkit-overflow-scrolling:touch!important;
  overscroll-behavior:contain!important;
  display:block!important;
  place-items:unset!important;
}
body.forcePortrait .stage,
body.isMobileLandscape .stage{
  position:absolute!important;
  left:var(--stage-left,0px)!important;
  top:var(--stage-top,0px)!important;
  transform-origin:top left!important;
}
body.forcePortrait .mobileScrollSpacer,
body.isMobileLandscape .mobileScrollSpacer{
  display:block!important;
  position:absolute!important;
  left:0!important;
  top:0!important;
}
.mobileRotateOverlay{
  background:
    radial-gradient(circle at 50% 18%,rgba(255,169,63,.40),rgba(55,18,2,.82) 56%,rgba(0,0,0,.88) 100%)!important;
  color:#fff8df!important;
}
.rotateCard{
  background:linear-gradient(180deg,rgba(112,45,8,.98),rgba(47,17,3,.98))!important;
  border:2px solid rgba(255,226,151,.86)!important;
  box-shadow:0 22px 70px rgba(0,0,0,.70),0 0 0 6px rgba(255,207,111,.12)!important;
  backdrop-filter:none!important;
}
.rotateIcon{
  color:#fff0b8!important;
  text-shadow:0 4px 14px #000,0 0 18px rgba(255,215,112,.55)!important;
  opacity:1!important;
}
.rotateCard h2{
  color:#fff2bb!important;
  text-shadow:0 3px 8px #000!important;
}
.rotateCard p{
  color:#fffbea!important;
  text-shadow:0 2px 5px #000!important;
}
.rotateCard button{
  background:linear-gradient(180deg,#ffd782,#b95a10)!important;
  color:#2a0d00!important;
  text-shadow:none!important;
  box-shadow:0 6px 0 #5e2404,0 10px 22px rgba(0,0,0,.35)!important;
}
body:not(.forcePortrait).isMobilePortrait .stage{
  filter:blur(1px) brightness(.62)!important;
}
@media (pointer:coarse){
  .viewport::-webkit-scrollbar{width:10px;height:10px}
  .viewport::-webkit-scrollbar-thumb{background:rgba(255,205,115,.65);border-radius:999px}
  .viewport::-webkit-scrollbar-track{background:rgba(0,0,0,.25)}
}


/* MOBILE v24: pinch zoom liberado */
html,body{
  touch-action:pan-x pan-y pinch-zoom!important;
}
.viewport{
  touch-action:pan-x pan-y pinch-zoom!important;
}
.stage{
  touch-action:auto!important;
}
button,.kbtn,.stdBtn,.nativeBtn,.kselect{
  touch-action:manipulation;
}
body.forcePortrait .viewport,
body.isMobileLandscape .viewport{
  overflow:auto!important;
  -webkit-overflow-scrolling:touch!important;
}


/* MOBILE v25: aviso clicável em portrait */
.mobileRotateOverlay{
  pointer-events:auto!important;
  z-index:2147483000!important;
  transform:none!important;
}
.mobileRotateOverlay *{
  pointer-events:auto!important;
}
.rotateCard button{
  position:relative!important;
  z-index:2147483001!important;
  pointer-events:auto!important;
  cursor:pointer!important;
  touch-action:manipulation!important;
}
body:not(.forcePortrait).isMobilePortrait .mobileRotateOverlay{
  display:flex!important;
}
body:not(.forcePortrait).isMobilePortrait .stage{
  pointer-events:auto!important;
}


/* MOBILE v26: glow por toque nos botões */
@media (pointer:coarse){
  .kbtn.touchGlow,
  .stdBtn.touchGlow,
  .nativeBtn.touchGlow,
  .rotateCard button.touchGlow{
    filter:brightness(1.18) drop-shadow(0 0 12px rgba(255,222,132,.95)) drop-shadow(0 0 24px rgba(255,153,45,.62))!important;
    transform:translateY(2px) scale(1.025)!important;
  }
  .kbtn.touchGlow img{
    filter:brightness(1.22) drop-shadow(0 0 12px rgba(255,232,155,.95)) drop-shadow(0 0 28px rgba(255,162,49,.65))!important;
  }
  button.touchGlow img{
    filter:brightness(1.22) drop-shadow(0 0 12px rgba(255,232,155,.95))!important;
  }
}


/* MOBILE v27: palco centralizado no dispositivo */
body.forcePortrait .stage,
body.isMobileLandscape .stage{
  position:absolute!important;
  transform-origin:top left!important;
}
body.forcePortrait .viewport,
body.isMobileLandscape .viewport{
  scroll-behavior:auto!important;
}


/* MOBILE v28: centralização visual real em portrait */
body.forcePortrait .viewport,
body.isMobileLandscape .viewport{
  background:#303334!important;
}
body.forcePortrait .stage{
  box-shadow:0 0 0 1px rgba(255,255,255,.04)!important;
}
body.forcePortrait .screen.active{
  overflow:hidden!important;
}


/* MOBILE v29: centralização corrigida de verdade */
body.forcePortrait .stage,
body.isMobileLandscape .stage{
  left:var(--stage-left,0px)!important;
  top:var(--stage-top,0px)!important;
}
body.forcePortrait .viewport,
body.isMobileLandscape .viewport{
  position:fixed!important;
  inset:0!important;
}


/* FIX v31: dica sem fechar popup de pergunta */
.hintLayer{
  position:absolute;
  inset:0;
  z-index:999;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(0,0,0,.42);
  pointer-events:auto;
}
.hintCard{
  width:560px;
  min-height:210px;
  max-height:390px;
  padding:26px 34px 30px;
  border-radius:22px;
  border:2px solid rgba(255,226,151,.78);
  background:linear-gradient(180deg,rgba(100,42,9,.97),rgba(44,16,3,.98));
  color:#fff4cf;
  text-align:center;
  box-shadow:0 18px 55px rgba(0,0,0,.65),0 0 24px rgba(255,179,65,.18);
  text-shadow:0 2px 4px #000;
  font-family:Georgia,serif;
}
.hintCard h2{
  margin:0 0 16px;
  color:#ffe3a4;
  font-size:30px;
}
.hintText{
  max-height:220px;
  overflow:auto;
  margin:0 0 22px;
  padding:0 6px;
  color:#fff9e8;
  font:20px/1.35 Arial,sans-serif;
}
.hintOk{
  width:210px;
  height:52px;
  border:0;
  border-radius:14px;
  background:linear-gradient(180deg,#b15a18,#6d2604);
  color:#fff2c5;
  font:700 20px Arial,sans-serif;
  cursor:pointer;
  box-shadow:0 5px 0 #3b1301;
}
.hintOk:hover,.hintOk:active{
  filter:brightness(1.16);
}
@media (pointer:coarse){
  .hintCard{
    width:min(78vw,620px);
    max-height:72vh;
  }
  .hintText{
    font-size:22px;
    max-height:42vh;
  }
  .hintOk{
    min-height:56px;
  }
}


/* v11: filtro de matérias + bancos de Inglês 6º–9º */
.filterPopupWithSubjects #areaChecks{height:318px}
.filterPopupWithSubjects #diffChecks{height:318px}
.subjectFilterBox{position:absolute;left:55px;top:422px;width:983px;height:94px;padding:8px 14px;border-radius:14px;background:rgba(34,12,4,.34);border:1px solid rgba(255,235,190,.22);text-shadow:0 2px 3px #000}
.subjectFilterTitle{font-size:18px;font-weight:700;margin-bottom:7px}.subjectFilterTitle small{font-size:14px;font-weight:400;opacity:.88}
.subjectChecks{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.subjectChip{display:flex;align-items:center;gap:7px;min-height:31px;padding:4px 10px;border-radius:999px;background:rgba(255,255,255,.11);font-size:16px;cursor:pointer}.subjectChip input{width:19px;height:19px;margin:0}.subjectChip b{display:inline-flex;min-width:22px;height:22px;padding:0 6px;align-items:center;justify-content:center;border-radius:999px;background:rgba(0,0,0,.3);font-size:12px}.subjectChip.isEmpty{opacity:.48;cursor:not-allowed}.subjectSummary{position:absolute;right:14px;top:10px;max-width:430px;text-align:right;font-size:13px;opacity:.9}
.subjectStartBtn,.subjectCancelBtn{position:absolute!important;top:536px!important;height:46px!important;line-height:46px!important;background:rgba(118,43,0,.78)!important;border-radius:7px!important}.subjectStartBtn{left:338px!important;width:190px!important}.subjectCancelBtn{left:565px!important;width:200px!important}
.questionMeta{text-align:center;font-size:14px;letter-spacing:.02em;opacity:.82;margin-bottom:2px}.listMeta{font-size:13px;opacity:.72;font-weight:700}

/* FIX v24: formulário adicionar/editar — ações não sobrepõem o caminho da imagem */
#addEditContent{
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding:10px 18px 42px!important;
  scrollbar-gutter:stable;
}
#addEditContent .addEditForm{
  position:relative;
  width:100%;
  min-height:max-content;
  padding:0 0 34px;
}
#addEditContent .fieldRow{
  position:relative;
  min-height:48px;
  margin:10px 0;
  flex-wrap:nowrap;
}
#addEditContent .fieldRow label{
  flex:0 0 30%;
}
#addEditContent .addMetaBtn{
  flex:0 0 180px;
  width:180px;
}
#addEditContent .imagePathRow{
  margin-bottom:22px!important;
}
#addEditContent .formActions{
  min-height:54px;
  margin-top:22px!important;
  margin-bottom:30px!important;
  padding-top:0;
  isolation:isolate;
}
#addEditContent .formActions .stdBtn{
  height:52px!important;
}

/* FIX v25: formulário em fluxo normal + Nova Matéria visível + labels acessíveis */
#addEditContent{
  padding:8px 18px 12px!important;
}
#addEditContent .addEditForm{
  min-height:0!important;
  padding:0 0 8px!important;
}
#addEditContent .fieldRow{
  min-height:38px!important;
  margin:4px 0!important;
  gap:10px!important;
  flex-wrap:nowrap!important;
}
#addEditContent .fieldRow label,
#addEditContent .fieldRow .fieldLabel,
#addEditContent .fieldRow .fieldSpacer{
  flex:0 0 30%!important;
  width:30%!important;
  text-align:right;
  font-size:20px;
}
#addEditContent .selectFieldBox{
  flex:1;
  position:relative;
  height:38px;
  min-width:0;
}
#addEditContent .selectFieldBox .kselect{
  left:0!important;
  top:0!important;
  bottom:auto!important;
  width:100%!important;
  height:38px!important;
  position:absolute!important;
}
#addEditContent .fieldRow input{
  min-width:0;
  height:34px;
}
#addEditContent .subjectCreateRow{
  position:relative!important;
  visibility:visible!important;
  display:flex!important;
  opacity:1!important;
}
#addEditContent .addMetaBtn{
  position:static!important;
  left:auto!important;
  top:auto!important;
  right:auto!important;
  bottom:auto!important;
  flex:0 0 180px!important;
  width:180px!important;
  height:40px!important;
  line-height:40px!important;
}
#addEditContent .imagePathRow{
  margin-bottom:4px!important;
}
#addEditContent .formActions{
  min-height:48px!important;
  margin-top:6px!important;
  margin-bottom:0!important;
  padding-top:0!important;
  position:relative!important;
}
#addEditContent .formActions .stdBtn{
  position:static!important;
  left:auto!important;
  top:auto!important;
  right:auto!important;
  bottom:auto!important;
  width:auto!important;
  height:46px!important;
  line-height:46px!important;
}


/* v34: suporte a questões discursivas */
#addEditContent textarea{
  min-width:0;
  min-height:58px;
  padding:7px 9px;
  font-size:18px;
  line-height:1.25;
  background:#fff;
  color:#000;
  border:1px solid #888;
  resize:vertical;
}
#discursiveFields[hidden],#objectiveFields[hidden]{display:none!important}
.discursiveControls{
  display:flex;
  flex-direction:column;
  gap:12px;
  width:100%;
  margin-top:4px;
}
.discursiveReveal{
  width:100%;
  min-height:48px;
  font-size:18px!important;
}
.expectedAnswer{
  padding:14px 18px;
  border:1px solid rgba(255,235,190,.55);
  border-radius:10px;
  background:rgba(38,14,4,.72);
  color:#fff3d0;
  font-size:18px;
  line-height:1.35;
  text-align:left;
  white-space:pre-wrap;
  text-shadow:0 2px 3px #000;
}
.expectedAnswer[hidden]{display:none!important}
.discursiveJudgeRow{
  display:grid;
  grid-template-columns:1fr 1fr .72fr;
  gap:10px;
}
.discursiveJudge,.discursiveHint{
  min-height:52px;
  font-size:19px!important;
}
.correctManual{filter:brightness(1.08)}
.wrongManual{filter:brightness(.92)}

/* v35: correção automática de questões discursivas */
.discursiveAnswerLabel{
  font-size:18px;
  text-align:left;
  color:#fff3d0;
  text-shadow:0 2px 3px #000;
}
.discursiveAnswerInput{
  width:100%;
  min-height:54px;
  padding:10px 14px;
  border:2px solid rgba(255,235,190,.7);
  border-radius:8px;
  background:#fff;
  color:#111;
  font-size:21px;
  outline:none;
  user-select:text;
}
.discursiveAnswerInput:focus{
  border-color:#fff3d0;
  box-shadow:0 0 0 3px rgba(255,243,208,.2);
}
.discursiveToleranceNote{
  margin-top:-5px;
  color:#ffe8b0;
  font-size:14px;
  line-height:1.25;
  text-align:left;
  text-shadow:0 1px 2px #000;
}
.discursiveAnswerActions{
  display:grid;
  grid-template-columns:1fr .45fr;
  gap:10px;
}
.discursiveSubmit,.discursiveHint{
  min-height:52px;
  font-size:19px!important;
}
.discursiveEditHelp{
  margin:-2px 0 6px 30%;
  padding-left:10px;
  max-width:70%;
  color:#f2d8a0;
  font-size:14px;
  line-height:1.3;
  text-align:left;
}

/* v36: questões de Verdadeiro ou Falso */
#trueFalseFields[hidden]{display:none!important}
.trueFalseControls{
  display:flex;
  flex-direction:column;
  gap:12px;
  width:100%;
  margin-top:8px;
}
.trueFalseAnswerRow{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
  width:100%;
}
.trueFalseBtn{
  min-height:74px;
  height:74px;
  font-size:24px!important;
  font-weight:700;
  letter-spacing:.2px;
}
.trueFalseBtn:hover{filter:brightness(1.13)}
.trueFalseHint{
  align-self:center;
  width:42%;
  min-height:48px;
  font-size:18px!important;
}
.trueFalseEditHelp{
  margin:-2px 0 6px 30%;
  padding-left:10px;
  max-width:70%;
  color:#f2d8a0;
  font-size:14px;
  line-height:1.3;
  text-align:left;
}

/* v37: questões objetivas com 2 a 5 alternativas */
.objectiveAlternativeRow[hidden]{display:none!important}
.objectiveEditHelp{
  margin:-2px 0 6px 30%;
  padding-left:10px;
  max-width:70%;
  color:#f2d8a0;
  font-size:14px;
  line-height:1.3;
  text-align:left;
}


/* FIX vNext: popup de predefinição + dica 85% */
.predefStartPopup{height:100%;display:flex;flex-direction:column;gap:10px;padding:28px 26px 24px;box-sizing:border-box}
.predefStartTitle{font-size:22px;line-height:1.2;text-align:center;margin:8px 0 6px;color:#fff;text-shadow:0 2px 3px #000;word-break:break-word}
.predefStartLabel{font-size:18px;margin-top:2px}
.predefStartSelectBox{position:relative;height:50px;width:360px;max-width:100%}
.predefStartActions{display:flex;gap:14px;margin-top:12px}
.predefStartFootnote{font-size:14px;line-height:1.35;text-align:center;opacity:.95;margin-top:2px}
.hintPenalty{font-size:14px;line-height:1.35;text-align:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:8px;padding:8px 10px;margin-bottom:10px}


/* FIX final: botão salvar predefinição + popup mais alinhado */
#predefSaveBtn, .predefSaveBtn{
  border:none!important;
  outline:none!important;
  box-shadow:none!important;
  background-color:transparent!important;
  -webkit-appearance:none!important;
  appearance:none!important;
}
#predefSaveBtn:focus, #predefSaveBtn:focus-visible,
.predefSaveBtn:focus, .predefSaveBtn:focus-visible{
  border:none!important;
  outline:none!important;
  box-shadow:none!important;
}
#predefSaveBtn::-moz-focus-inner, .predefSaveBtn::-moz-focus-inner{
  border:0!important;
}

.predefStartPopup{
  height:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  gap:12px;
  padding:40px 28px 24px;
  box-sizing:border-box;
}
.predefStartTitle{
  width:100%;
  max-width:340px;
  font-size:20px;
  line-height:1.15;
  text-align:center;
  margin:0 0 4px;
  color:#fff;
  text-shadow:0 2px 3px #000;
  word-break:break-word;
}
.predefStartLabel{
  width:100%;
  max-width:360px;
  font-size:18px;
  margin-top:0;
  align-self:center;
}
.predefStartSelectBox{
  position:relative;
  height:50px;
  width:360px;
  max-width:100%;
}
.predefStartActions{
  width:100%;
  max-width:360px;
  display:flex;
  gap:14px;
  margin-top:8px;
}
.predefStartFootnote{
  width:100%;
  max-width:360px;
  font-size:13px;
  line-height:1.35;
  text-align:center;
  opacity:.96;
  margin-top:0;
}

.kselect .selHead.smallText{font-size:14px}


/* FIX extra: popup predef title + list edit button */
.predefStartPopup{
  padding:56px 24px 20px !important;
  gap:10px !important;
}
.predefStartTitle{
  max-width:320px !important;
  font-size:18px !important;
  line-height:1.1 !important;
  margin:2px auto 10px !important;
}
.predefStartFootnote{
  font-size:12px !important;
  line-height:1.25 !important;
}
.listRow{
  min-height:40px !important;
  gap:6px !important;
}
.listRow .qText{
  min-height:40px !important;
}
.listEditBtn{
  width:98px !important;
  height:34px !important;
}
.listEditBtn img{
  object-fit:fill;
}

/* Áreas especiais selecionáveis nas predefinições */
.predefSpecialBlock{
  margin:0 0 12px;
  padding:10px 12px;
  border:1px solid rgba(255,255,255,.22);
  background:rgba(20,8,3,.34);
  border-radius:8px;
}
.predefSpecialTitle{
  font-size:17px;
  font-weight:700;
  margin:0 0 6px;
  color:#ffe0a0;
  text-shadow:0 2px 3px #000;
}
.predefSpecialItem{
  display:inline-flex;
  width:auto;
  min-width:170px;
  margin-right:12px;
  padding-right:8px;
}
.predefSpecialItem input{
  width:20px;
  height:20px;
}
.predefEmpty{
  padding:14px 8px;
  font-size:17px;
  opacity:.9;
}


/* list filters and edit button refresh */
#listMode .selHead,
#listArea .selHead,
#listDiff .selHead{
  font-size:34px;
}
#listMode .selOpt,
#listArea .selOpt,
#listDiff .selOpt{
  font-size:34px;
  line-height:1;
}
.listRow{
  min-height:48px !important;
  gap:10px !important;
}
.listRow .qText{
  min-height:48px !important;
}
.listEditBtn{
  position:relative;
  flex:0 0 auto;
  width:112px !important;
  height:46px !important;
  border:1px solid rgba(255,220,170,.35);
  border-radius:8px;
  background:linear-gradient(180deg, rgba(123,55,10,.98) 0%, rgba(103,42,5,.98) 100%);
  color:#f8e7c2;
  font-size:28px;
  font-weight:700;
  line-height:1;
  text-shadow:0 2px 3px rgba(0,0,0,.6);
  box-shadow:inset 0 1px 0 rgba(255,230,190,.16), 0 2px 8px rgba(0,0,0,.18);
  cursor:pointer;
  padding:0;
}
.listEditBtn:hover{filter:brightness(1.08)}
.listEditBtn:active{transform:translateY(1px);filter:brightness(1.15)}


/* proportional edit button sizing */
.listRow{
  min-height:44px !important;
  gap:8px !important;
}
.listRow .qText{
  min-height:44px !important;
  font-size:18px !important;
  line-height:1.1 !important;
}
.listEditBtn{
  width:90px !important;
  height:38px !important;
  font-size:18px !important;
  font-weight:700 !important;
  border-radius:7px !important;
  align-self:center !important;
}

/* Mobile/tablet performance: the wheel is composited as a single GPU layer while spinning. */
#wheelCanvas{
  transform-origin:50% 50%;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
  contain:paint;
}
#wheelCanvas.wheelSpinning{
  will-change:transform;
}
@media (pointer:coarse){
  #wheelCanvas{
    image-rendering:auto;
  }
  #game .bg{
    backface-visibility:hidden;
    -webkit-backface-visibility:hidden;
  }
}

/* HISTÓRICO v2 — painel de sessões */
#history{background:radial-gradient(circle at 18% 0%,#5a2108 0,#2c1006 36%,#160704 100%)}
#history .historyRoot{position:absolute;inset:0;padding:20px 28px 22px;display:grid;grid-template-rows:94px 72px 58px minmax(0,1fr);gap:12px;background:linear-gradient(180deg,rgba(20,6,2,.14),rgba(5,2,1,.28));color:#fff}
.historyHeader{display:grid;grid-template-columns:150px minmax(0,1fr) auto;align-items:center;gap:18px;padding:0 4px 8px;border-bottom:1px solid rgba(255,177,91,.24)}
.historyHeading{min-width:0}.historyEyebrow{font-size:12px;font-weight:800;letter-spacing:2px;color:#f7a44a;margin-bottom:3px}.historyHeading h1{margin:0;font-size:31px;line-height:1;color:#fff}.historyHeading p{margin:7px 0 0;font-size:14px;color:#d7bfae}
.historyBackBtn,.historyPrimaryBtn,.historyDangerBtn,.historyCardBtn,.historyDetailBtn{border:1px solid rgba(255,174,84,.34)!important;border-radius:9px!important;color:#fff!important;font-weight:700!important;text-shadow:none!important;cursor:pointer;transition:transform .12s ease,filter .12s ease,background .12s ease}
.historyBackBtn{height:46px;padding:0 18px;background:rgba(67,23,6,.82)!important;font-size:16px}.historyHeaderActions{display:flex;gap:10px;align-items:center}.historyPrimaryBtn,.historyDangerBtn{height:44px;padding:0 16px;font-size:14px}.historyPrimaryBtn{background:linear-gradient(180deg,#a74b11,#6f2604)!important}.historyDangerBtn{background:rgba(72,20,12,.82)!important;border-color:rgba(255,112,90,.34)!important;color:#ffd2ca!important}.historyBackBtn:hover,.historyPrimaryBtn:hover,.historyCardBtn:hover,.historyDetailBtn:hover{filter:brightness(1.14)}.historyDangerBtn:hover{filter:brightness(1.18)}
.historyStats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.historyStat{min-width:0;border:1px solid rgba(255,178,97,.18);border-radius:12px;background:linear-gradient(180deg,rgba(91,31,7,.56),rgba(45,13,3,.58));padding:10px 14px;display:flex;flex-direction:column;justify-content:center}.historyStatValue{font-size:23px;line-height:1;font-weight:800;color:#fff}.historyStatLabel{margin-top:5px;font-size:12px;color:#d9b99f;text-transform:uppercase;letter-spacing:.7px}
.historyToolbar{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:12px;align-items:end}.historySearchWrap,.historySortWrap{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center;height:46px;border:1px solid rgba(255,178,97,.18);border-radius:10px;background:rgba(24,7,2,.58);padding:0 12px}.historySearchWrap span,.historySortWrap span{font-size:12px;font-weight:800;color:#e4b68d;text-transform:uppercase;letter-spacing:.6px}.historySearchWrap input,.historySortWrap select{min-width:0;height:34px;border:0!important;outline:0!important;border-radius:6px;background:rgba(255,255,255,.09);color:#fff;padding:0 11px;font-size:14px}.historySearchWrap input::placeholder{color:#9e897b}.historySortWrap select option{color:#111;background:#fff}
.historyList{min-height:0;overflow:auto;padding:2px 8px 4px 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:max-content;gap:12px;align-content:start}.historyList::-webkit-scrollbar{width:10px}.historyList::-webkit-scrollbar-thumb{background:rgba(220,113,37,.62);border-radius:999px}.historyList::-webkit-scrollbar-track{background:rgba(0,0,0,.18);border-radius:999px}
.historyCard{border:1px solid rgba(255,171,88,.22);border-radius:14px;background:linear-gradient(145deg,rgba(69,22,5,.88),rgba(29,8,2,.92));box-shadow:0 9px 20px rgba(0,0,0,.18);overflow:hidden}.historyCardTop{padding:14px 15px 10px;cursor:pointer}.historyCardTitleRow{display:flex;align-items:flex-start;gap:9px}.historyCardTitle{flex:1;min-width:0;margin:0;font-size:18px;line-height:1.2;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.historyModeBadge{flex:0 0 auto;border-radius:999px;background:#8f3c09;color:#ffe1bc;padding:5px 9px;font-size:11px;font-weight:800;max-width:125px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.historyDate{margin-top:5px;font-size:12px;color:#c8a995}.historyMetrics{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:11px}.historyMetric{background:rgba(255,255,255,.055);border-radius:8px;padding:7px 8px;min-width:0}.historyMetric strong{display:block;font-size:15px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.historyMetric span{display:block;margin-top:2px;font-size:10px;color:#bba08f;text-transform:uppercase;letter-spacing:.35px}.historyScores{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.historyScoreChip{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:5px 9px;background:rgba(255,168,78,.11);border:1px solid rgba(255,168,78,.16);font-size:11px;color:#eac5a7}.historyScoreChip b{color:#fff}.historyCardActions{display:grid;grid-template-columns:1.15fr 1fr .8fr .78fr;gap:7px;padding:9px 10px 10px;border-top:1px solid rgba(255,177,91,.12);background:rgba(0,0,0,.11)}.historyCardBtn{height:34px;font-size:11px;padding:0 8px;background:rgba(91,32,8,.78)!important}.historyCardBtn.export{background:rgba(113,51,10,.86)!important}.historyCardBtn.delete{background:rgba(74,20,14,.78)!important;border-color:rgba(255,112,90,.25)!important;color:#ffd0c7!important}
.historyEmpty{grid-column:1/-1;height:210px;border:1px dashed rgba(255,171,88,.25);border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#c8ad9a;background:rgba(26,8,2,.35)}.historyEmpty strong{font-size:20px;color:#fff;margin-bottom:6px}.historyEmpty span{font-size:14px;max-width:440px}
.historyDetail{height:100%;display:flex;flex-direction:column;gap:12px;padding:4px 2px}.historyDetailHead{display:flex;align-items:flex-start;gap:12px}.historyDetailHeadText{flex:1;min-width:0}.historyDetailTitle{font-size:25px;font-weight:800;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.historyDetailSub{margin-top:4px;font-size:13px;color:#ddbea7}.historyDetailSummary{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.historyDetailKpi{background:rgba(67,23,6,.5);border:1px solid rgba(255,180,100,.2);border-radius:9px;padding:8px 10px}.historyDetailKpi b{display:block;font-size:17px}.historyDetailKpi span{font-size:10px;color:#c8a690;text-transform:uppercase}.historyDetailTableWrap{flex:1;min-height:0;overflow:auto;border:1px solid rgba(255,180,100,.16);border-radius:10px;background:rgba(10,3,1,.34)}.historyDetailTable{width:100%;border-collapse:collapse;font-size:12px}.historyDetailTable th{position:sticky;top:0;z-index:1;background:#642504;color:#fff;padding:8px 7px;text-align:left}.historyDetailTable td{padding:7px;border-top:1px solid rgba(255,255,255,.08);vertical-align:top}.historyDetailTable tr.isCorrect td{background:rgba(56,130,75,.08)}.historyDetailTable tr.isWrong td{background:rgba(147,54,38,.08)}.historyDetailResult{font-weight:800}.historyDetailResult.ok{color:#8ed59e}.historyDetailResult.bad{color:#ff9e8f}.historyDetailActions{display:flex;gap:8px;flex-wrap:wrap}.historyDetailBtn{height:36px;padding:0 12px;font-size:12px;background:rgba(91,32,8,.85)!important}.historyDetailBtn.danger{background:rgba(76,20,13,.84)!important;color:#ffd0c7!important}.historyRenameBox,.historyConfirmBox{height:100%;display:flex;flex-direction:column;justify-content:center;gap:18px;padding:22px 36px}.historyRenameBox h2,.historyConfirmBox h2{margin:0;text-align:center;font-size:25px}.historyRenameBox p,.historyConfirmBox p{margin:0;text-align:center;color:#d7bcaa;line-height:1.35}.historyRenameBox input{height:50px;border:1px solid rgba(255,173,90,.38);border-radius:9px;background:#fff;color:#2b1006;font-size:18px;padding:0 14px}.historyDialogActions{display:flex;justify-content:center;gap:10px}.historyDialogActions button{min-width:150px}
@media (max-width:900px){.historyList{grid-template-columns:1fr}.historyHeader{grid-template-columns:125px minmax(0,1fr) auto}.historyHeading p{display:none}.historyHeading h1{font-size:27px}.historyStats{grid-template-columns:repeat(4,1fr)}}

/* HISTORY ANALYTICS v10 */
#history .historyRoot{grid-template-rows:86px 62px 48px minmax(0,1fr);gap:10px;padding:16px 22px 18px}
.historyWorkspace{min-height:0;display:grid;grid-template-columns:minmax(390px,.82fr) minmax(0,1.58fr);gap:12px;overflow:hidden}
#history .historyList{min-height:0;grid-template-columns:1fr;padding:1px 6px 3px 0;gap:9px}
#history .historyCard{border-radius:12px}
#history .historyCard.selected{border-color:rgba(255,183,95,.72);box-shadow:0 0 0 2px rgba(231,111,24,.22),0 10px 24px rgba(0,0,0,.24)}
#history .historyCard.selected .historyCardTop{background:linear-gradient(120deg,rgba(157,61,10,.18),rgba(255,255,255,.01))}
#history .historyCardTop{padding:11px 12px 9px}
#history .historyMetrics{margin-top:8px}
#history .historyCardActions{grid-template-columns:1fr 1fr 1fr .8fr .75fr;gap:5px;padding:7px 8px 8px}
#history .historyCardBtn{height:31px;padding:0 5px;font-size:10px}
#history .historyCardBtn.analyze{background:linear-gradient(180deg,#a95112,#723004)!important}
.historyAnalytics{min-width:0;min-height:0;border:1px solid rgba(255,175,89,.2);border-radius:14px;background:linear-gradient(150deg,rgba(47,14,3,.92),rgba(18,5,2,.94));box-shadow:0 12px 28px rgba(0,0,0,.2);padding:12px 13px;display:flex;flex-direction:column;overflow:hidden}
.historyAnalyticsEmpty{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#cdb19d;gap:7px}.historyAnalyticsEmpty strong{font-size:21px;color:#fff}.historyAnalyticsEmpty span{max-width:360px;font-size:13px}
.historyAnalyticsHead{display:flex;align-items:flex-start;gap:10px;padding:0 1px 9px;border-bottom:1px solid rgba(255,177,91,.14)}.historyAnalyticsHead>div{min-width:0;flex:1}.historyAnalyticsEyebrow{display:block;color:#f0a257;font-size:9px;font-weight:900;letter-spacing:1.4px;margin-bottom:2px}.historyAnalyticsHead h2{margin:0;font-size:19px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.historyAnalyticsHead p{margin:4px 0 0;color:#c3a48e;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.historyAnalyticsHead .historyDetailBtn{flex:0 0 auto;height:30px;font-size:10px;padding:0 10px}
.historyAnalyticsKpis{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:8px 0}.historyAnalyticsKpis>div{border:1px solid rgba(255,177,91,.13);border-radius:8px;background:rgba(255,255,255,.035);padding:7px 8px;min-width:0}.historyAnalyticsKpis b{display:block;font-size:15px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.historyAnalyticsKpis span{display:block;margin-top:2px;font-size:8px;color:#c1a28e;text-transform:uppercase;letter-spacing:.45px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.historyAnalyticsScroll{flex:1;min-height:0;overflow:auto;padding:0 5px 5px 0}.historyAnalyticsScroll::-webkit-scrollbar{width:8px}.historyAnalyticsScroll::-webkit-scrollbar-thumb{background:rgba(219,108,36,.56);border-radius:99px}.historyAnalyticsScroll::-webkit-scrollbar-track{background:rgba(0,0,0,.12);border-radius:99px}
.historyChartsGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.historyChartCard,.historyCompareCard,.historyTrendCard,.historyInsights,.historyCompareEmpty{border:1px solid rgba(255,177,91,.13);border-radius:10px;background:rgba(255,255,255,.025);padding:9px 10px}.historyChartTitle{font-size:11px;font-weight:800;color:#f7dcc7;margin-bottom:7px}.historyBars{display:flex;flex-direction:column;gap:5px}.historyBarRow{display:grid;grid-template-columns:68px minmax(0,1fr) 44px;gap:6px;align-items:center}.historyBarLabel{font-size:9px;color:#d5b9a3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.historyBarTrack{height:7px;border-radius:99px;background:rgba(255,255,255,.07);overflow:hidden}.historyBarTrack span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#7b3007,#e8751e)}.historyBarValue{text-align:right;font-size:9px;font-weight:800;color:#fff;white-space:nowrap}
.historySectionTitle{display:flex;align-items:baseline;gap:8px;margin-bottom:7px}.historySectionTitle b{font-size:11px;color:#f5d7c0}.historySectionTitle span{font-size:8.5px;color:#a98d7a;line-height:1.2}.historyCompareCard,.historyTrendCard,.historyInsights,.historyCompareEmpty{margin-top:7px}.historyCompareRows{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 10px}.historyCompareRow{min-width:0}.historyCompareLabel{font-size:8.5px;font-weight:800;color:#d9baa4;margin-bottom:3px}.historyCompareBars{display:flex;flex-direction:column;gap:2px}.historyCompareBars>div{display:grid;grid-template-columns:31px minmax(0,1fr) 45px;align-items:center;gap:4px}.historyCompareBars span{font-size:7.5px;color:#9f8878}.historyCompareBars i{display:block;height:5px;background:rgba(255,255,255,.06);border-radius:99px;overflow:hidden}.historyCompareBars i b{display:block;height:100%;border-radius:99px}.historyCompareBars i b.current{background:#dc6919}.historyCompareBars i b.average{background:#8f796a}.historyCompareBars strong{text-align:right;font-size:8px;color:#fff;font-weight:700}.historyCompareEmpty{display:flex;align-items:center;gap:9px;color:#bfa28e}.historyCompareEmpty b{font-size:11px;color:#f5d7c0}.historyCompareEmpty span{font-size:9px;line-height:1.25}
.historyTrendSvg{display:block;width:100%;height:92px}.historyTrendSvg .gridAxis{stroke:rgba(255,255,255,.12);stroke-width:1}.historyTrendSvg .gridLine{stroke:rgba(255,255,255,.06);stroke-width:1;stroke-dasharray:3 4}.historyTrendSvg .trendLine{fill:none;stroke:#e77723;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.historyTrendSvg .trendPoint{fill:#9e6c4d;stroke:#2b0b02;stroke-width:1.5}.historyTrendSvg .trendPoint.current{fill:#ffd08a;stroke:#e87920;stroke-width:2}.historyTrendSvg .trendLabel{fill:#8e7564;font-size:8px}
.historyInsightList{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.historyInsightItem{border-radius:7px;background:rgba(255,255,255,.035);padding:6px 7px;font-size:9px;color:#cdb3a0;line-height:1.28}.historyInsightItem b{color:#fff}.historyNoData{padding:12px;text-align:center;font-size:10px;color:#ad9381}
@media (max-width:1050px){.historyWorkspace{grid-template-columns:minmax(330px,.9fr) minmax(0,1.35fr)}.historyChartsGrid{grid-template-columns:1fr}.historyCompareRows{grid-template-columns:1fr}.historyInsightList{grid-template-columns:1fr}}


/* HISTORY v10 — visual cleanup */
#history .historyRoot{grid-template-rows:82px 62px 48px minmax(0,1fr);gap:10px;padding:14px 20px 16px}
#history .historyStats{grid-template-columns:repeat(4,1fr);gap:8px}
#history .historyStat{padding:10px 14px;border-radius:12px;background:rgba(83,28,7,.42);border:1px solid rgba(255,175,89,.14)}
#history .historyStatValue{font-size:18px}
#history .historyStatLabel{font-size:10px;letter-spacing:.6px}
#history .historyWorkspace{grid-template-columns:minmax(350px,.78fr) minmax(0,1.45fr);gap:10px}
#history .historyList{gap:8px;padding-right:4px}
#history .historyCard.clean{border-radius:12px;background:linear-gradient(135deg,rgba(88,26,5,.96),rgba(56,14,3,.94));box-shadow:0 6px 16px rgba(0,0,0,.16)}
#history .historyCard.clean .historyCardTop{padding:11px 12px 10px}
#history .historyMetrics.minimal{grid-template-columns:repeat(3,1fr);gap:7px;margin-top:8px}
#history .historyMetrics.minimal .historyMetric{padding:7px 8px}
#history .historyMetrics.minimal .historyMetric strong{font-size:14px}
#history .historyCardFoot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:9px;flex-wrap:wrap}
#history .historyScores.compact{gap:6px;display:flex;flex-wrap:wrap}
#history .historyScoreChip.more{opacity:.75}
#history .historyCardMeta{font-size:11px;color:#d6b5a0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px;text-align:right}
#history .historyCardActions.clean{grid-template-columns:1fr 1fr .9fr;padding:8px 10px;border-top:1px solid rgba(255,177,91,.1);background:rgba(255,255,255,.03)}
#history .historyCardBtn{height:32px;font-size:11px}
#history .historyCardBtn.subtle{background:rgba(255,255,255,.04)!important;color:#f0d2bb!important;border-color:rgba(255,177,91,.14)!important}
.historyAnalytics{padding:12px 12px 10px}
.historyAnalyticsHead.cleaner{align-items:center;padding-bottom:10px}
.historyAnalyticsHeadActions{display:flex;gap:6px;flex-wrap:wrap}
.historyAnalyticsHead .historyDetailBtn.ghost{background:rgba(255,255,255,.04)!important;color:#f4d9c7!important;border:1px solid rgba(255,177,91,.14)!important}
.historyAnalyticsKpis.cleaner{grid-template-columns:repeat(3,1fr);gap:7px;padding:9px 0}
.historyAnalyticsTabs{display:flex;gap:6px;padding:0 0 8px;border-bottom:1px solid rgba(255,177,91,.12);margin-bottom:8px;flex-wrap:wrap}
.historyTabBtn{height:30px;padding:0 12px;border-radius:999px;border:1px solid rgba(255,177,91,.16);background:rgba(255,255,255,.035);color:#e7c7b1;font-size:11px;font-weight:700;cursor:pointer}
.historyTabBtn.active{background:linear-gradient(180deg,#ad5516,#7a3407);color:#fff;border-color:rgba(255,189,108,.38)}
.historyAnalyticsScroll.compact{padding-right:2px}
.historySectionStack{display:flex;flex-direction:column;gap:8px}
.historyChartsGrid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}
.historyInsights.only{margin-top:0}
.historyInsightList.solo{grid-template-columns:1fr}
.historyQuickActionsBox{height:100%;display:flex;flex-direction:column;justify-content:center;gap:16px;padding:26px 34px}.historyQuickActionsBox h2{margin:0;text-align:center;font-size:24px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.historyQuickActionsBox p{margin:0;text-align:center;color:#d7bcaa}.historyQuickActionsGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.historyQuickActionsGrid button{height:42px;font-size:14px}
@media (max-width:1150px){#history .historyWorkspace{grid-template-columns:1fr}#history .historyCardMeta{max-width:none}.historyAnalyticsKpis.cleaner{grid-template-columns:repeat(3,1fr)}}


/* Question/hint images */
.questionPromptImageWrap{display:flex;justify-content:center;align-items:center;padding:4px 0 8px}.questionPromptImage{max-width:100%;width:min(520px,100%);max-height:210px;object-fit:contain;border-radius:16px;border:1px solid rgba(255,194,130,.28);background:rgba(255,255,255,.06);padding:8px;box-shadow:0 10px 24px rgba(0,0,0,.18)}
.hintMediaWrap{display:flex;justify-content:center;align-items:center;margin-top:10px}.hintMediaImage{max-width:100%;width:min(420px,100%);max-height:220px;object-fit:contain;border-radius:14px;border:1px solid rgba(255,194,130,.25);background:rgba(255,255,255,.04);padding:8px}
.imagePreviewRow{align-items:flex-start}.editorImagePreview{width:220px;max-width:100%;max-height:140px;object-fit:contain;border-radius:10px;border:1px solid rgba(255,184,113,.24);background:rgba(255,255,255,.05);padding:6px}

/* Editor: mídia separada da pergunta e da dica */
.editorMediaBlock{margin:12px 0;padding:12px 14px;border:1px solid rgba(255,185,110,.2);border-radius:12px;background:rgba(45,15,4,.32)}
.editorMediaTitle{font-size:18px;font-weight:800;color:#fff0df;margin-bottom:6px}
.editorMediaTitle span{font-size:12px;font-weight:600;color:#cba68c;text-transform:uppercase;letter-spacing:.55px;margin-left:5px}
.editorMediaHelp{font-size:13px;color:#d8bca8;margin:0 0 8px 30%;padding-left:10px;line-height:1.3}
.editorMediaBlock .fieldRow{margin:7px 0}
@media (max-width:900px){.editorMediaHelp{margin-left:0;padding-left:0}}
