﻿/* ============================================================
   O MENINO CONCURSEIRO — V14.2.0
   Revisão Mobile Geral das páginas públicas
   Camada isolada: não altera regras de negócio nem JS crítico.
   ============================================================ */

@media (pointer:coarse){
  .btn,
  button,
  .navPrimary>a,
  .accountTrigger,
  .navCart,
  .mobileFilterToggle,
  .readerBtn,
  .readerSizeBtn,
  .simPreset,
  .simReviewFilter{min-height:44px}
}

@media(max-width:760px){
  html{scroll-padding-top:82px;-webkit-text-size-adjust:100%}
  body{min-width:0;overflow-x:hidden}
  body.navLocked{overscroll-behavior:none}
  body.hasPromoBar.navLocked::before{inset:104px 0 0}

  .container{width:calc(100% - 24px);max-width:1180px}
  .card{border-radius:18px}
  .btn{min-height:46px;padding:11px 14px}
  input,select,textarea{font-size:16px!important}
  textarea{max-width:100%;resize:vertical}
  .field input,.field select,.field textarea{width:100%;min-height:48px}
  .field textarea{padding:12px 13px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--text);outline:none}
  .field textarea:focus{border-color:#9fb8ca;box-shadow:0 0 0 3px #e6eef5}

  /* Cabeçalho: respeita telas estreitas e áreas seguras */
  .siteHeader{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}
  .navV11{width:calc(100% - 16px);min-width:0}
  .navV11 .brand{min-width:0}
  .navV11 .brandText{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .navPrimary{height:auto;max-height:calc(100dvh - 70px);padding-bottom:calc(28px + env(safe-area-inset-bottom));overscroll-behavior:contain}
  .hasPromoBar .navPrimary{max-height:calc(100dvh - 104px)}
  .accountDropdown{max-height:calc(100dvh - 92px);overflow:auto;overscroll-behavior:contain}

  /* Cabeçalhos e blocos gerais */
  .pageHead{padding:28px 0 30px}
  .pageHead h1{font-size:clamp(28px,8.5vw,34px);overflow-wrap:anywhere}
  .pageHead p{margin-bottom:0}
  .section{padding:34px 0}
  .sectionHead{margin-bottom:17px}
  .sectionHead h2{font-size:clamp(24px,7vw,29px)}
  .sectionHead p{max-width:100%}
  .eyebrow{max-width:100%;white-space:normal;line-height:1.35}
  .notice,.msg{overflow-wrap:anywhere}

  /* Modais públicos viram bottom sheet em smartphone */
  .modal{padding:0;place-items:end center}
  .modalBox{width:100%;max-width:none;max-height:92dvh;overflow:auto;border-radius:22px 22px 0 0;padding:20px 16px calc(18px + env(safe-area-inset-bottom));overscroll-behavior:contain}

  /* Tabelas: nunca espremem conteúdo até ficar ilegível */
  .tableWrap{width:100%;overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
  .tableWrap>.table{min-width:620px}
  .table th,.table td{white-space:normal;vertical-align:top}

  /* HOME */
  .hero{padding:36px 0 40px}
  .hero h1{font-size:clamp(33px,10vw,43px);line-height:1.03;overflow-wrap:anywhere}
  .hero p{font-size:15.5px}
  .hero .actions{grid-template-columns:1fr!important}
  .hero .actions .btn{grid-column:auto!important}
  .managedBanner{min-height:0;border-radius:20px;padding:20px;gap:16px}
  .managedBanner h2{font-size:25px;line-height:1.1}
  .managedBanner .btn{width:100%}
  .youtubeCarouselShell{border-radius:20px;padding:20px 14px}
  .youtubeCarouselHead{gap:8px;margin-bottom:15px}
  .youtubeCarouselHead h2{font-size:24px}
  .youtubeVideoCard{flex-basis:91%}
  .youtubeCarouselControls{gap:10px}
  .youtubeDots{min-width:0;overflow:hidden}
  .youtubeArrow{flex:0 0 44px}
  .radarHomeMini{border-radius:14px}
  .radarHomeMiniAction{display:none}

  /* LOJA */
  .mobileFilterToggle{position:relative;z-index:2}
  .shopFilters.mobileOpen{max-height:70dvh;overflow:auto;overscroll-behavior:contain}
  .shopMainLayout{min-width:0}
  .shopGrid{grid-template-columns:1fr!important}
  .product{min-width:0}
  .cover{height:165px;padding:18px}
  .cover h3{font-size:23px;max-width:86%}
  .productBody{padding:16px}
  .productBody p{font-size:13.5px}
  .priceRow{align-items:stretch;gap:10px}
  .priceRow .btn,.productCardActions .btn{width:100%}
  .shopSidebarInfo{padding:17px}
  .shopPagination{display:grid;grid-template-columns:1fr auto 1fr;width:100%}
  .shopPagination .btn{width:100%}

  /* ARSENAL */
  .arsenalHead{padding:28px 0 30px}
  .arsenalSection{padding-top:18px}
  .questionLayout{gap:12px}
  .arsenalFilters{inset:70px 0 0!important;padding:16px!important;max-height:calc(100dvh - 70px)!important;overflow:auto!important;overscroll-behavior:contain!important;border-radius:0!important;padding-bottom:calc(24px + env(safe-area-inset-bottom))!important}
  .hasPromoBar .arsenalFilters{inset:104px 0 0!important;max-height:calc(100dvh - 104px)!important}
  .arsenalFilters .sidebarTitle{position:sticky!important;top:-16px!important;margin:-16px -16px 12px!important;padding:16px!important;background:#fff!important;border-bottom:1px solid var(--line);z-index:5}
  .arsenalFilterStack{grid-template-columns:1fr!important}
  .arsenalFilterSummary,.arsenalFilterActions{grid-column:auto!important}
  .arsenalFilterActions{position:sticky;bottom:-16px;background:#fff;padding:12px 0 16px;z-index:4}
  .readerToolbar{top:74px;padding:8px;margin-bottom:10px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-inline:contain;scrollbar-width:none;white-space:nowrap}
  .hasPromoBar .readerToolbar{top:108px}
  .readerToolbar::-webkit-scrollbar{display:none}
  .readerToolbarLeft,.readerControls{flex:0 0 auto}
  .readerHint{display:none}
  .qcard{border-radius:14px}
  .examQuestionTop{padding:16px 14px 13px}
  .questionTop{gap:10px}
  .questionNumber{font-size:19px}
  .questionCounter{white-space:normal;text-align:center;flex:0 0 auto}
  .examMeta{padding:8px 14px}
  .examPaper{padding:20px 13px 18px}
  .qstatement,.qcommand{overflow-wrap:anywhere}
  .optionRow{grid-template-columns:minmax(0,1fr) 44px}
  .optionRow .option{min-width:0}
  .eliminateOption{width:44px;min-width:44px}
  .questionImages,.questionImageButton img{max-width:100%}
  .questionActions{padding:14px;gap:8px}
  .explain{margin:16px 14px;padding:16px}

  /* SIMULADOS */
  .simHead{padding-bottom:42px}
  .simMain{padding-top:28px}
  .simSetup{padding:18px 14px;margin-top:-44px;border-radius:18px}
  .simFormGrid{grid-template-columns:1fr!important}
  .simPresetRow{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:5px}
  .simPresetRow::-webkit-scrollbar{display:none}
  .simPreset{flex:0 0 auto;white-space:nowrap}
  .simSetupActions{gap:10px}
  .simSetupActions .btn{width:100%}
  .simControlBar{padding:14px}
  .simControlActions{width:100%;display:grid;grid-template-columns:1fr!important}
  .simControlActions .btn{width:100%}
  .simQuote{padding:14px 16px;font-size:13px;line-height:1.5}
  .simQuestion{min-height:0;padding:18px 13px}
  .simQuestionTop{align-items:flex-start;gap:10px;margin-bottom:18px}
  .simQBadge{padding:9px 14px}
  .simOptions{grid-template-columns:1fr!important}
  .simOptions .option{min-height:64px;padding:13px}
  .simNav{grid-template-columns:1fr 1fr;gap:8px}
  .simNav>.btn{width:100%}
  .simDots{grid-column:1/-1;max-height:76px;overflow:auto;padding:8px 2px}
  .simStats{padding:14px}
  .simStatsGrid{grid-template-columns:1fr 1fr!important;gap:8px}
  .simStat{min-height:88px;padding:9px}
  .simStat b{font-size:29px}
  .simHistoryCard{grid-template-columns:1fr!important;gap:10px}
  .simHistoryScore{justify-self:start;text-align:left}
  .simHistoryCard .btn{grid-column:auto;width:100%}
  .simReadyGrid{grid-template-columns:1fr!important}
  .simReadyCard{padding:17px;min-height:0}
  .simPremiumNotice{padding:14px}
  .simCorrectionPanel{padding:16px 13px}
  .simCorrectionFilters{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:5px}
  .simCorrectionFilters::-webkit-scrollbar{display:none}
  .simReviewFilter{flex:0 0 auto;white-space:nowrap}
  .simReviewMap{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}
  .simReviewItem{min-width:0;width:100%;height:42px;padding:3px}

  /* ÁREA DO ALUNO */
  .studentGridV124{gap:12px}
  .studentSideV124,.studentSide{top:70px;z-index:18;margin:0 -12px;padding:8px 12px;border-radius:0;border-left:0;border-right:0;box-shadow:0 6px 14px rgba(7,24,39,.05)}
  .hasPromoBar .studentSideV124,.hasPromoBar .studentSide{top:104px}
  .studentSide a{min-height:44px;display:inline-flex;align-items:center}
  .studentV124Head{gap:14px}
  .studentV124Head .actions,.studentV139SectionHead .actions{width:100%;display:grid;grid-template-columns:1fr}
  .studentV124Head .actions .btn,.studentV139SectionHead .actions .btn{width:100%}
  .studentSnapshotGrid,.studentV139ProgressGrid,.studentPlanStats,.studentSimMetrics,.studentSecurityGrid,.accountSecurityGrid,.accountSecurityGridV134{grid-template-columns:1fr 1fr!important}
  .studentFocusGrid,.studentQuickActionsV124,.studentAccessHub,.studentSubscriptionStrip,.studentContinueCard{grid-template-columns:1fr!important}
  .studentMainFocus,.studentPriorityCard,.studentContinueCard,.studentPerformanceHub,.studentAccessHub,.studentSecurityV124,.studentMaterialsV124{padding:16px}
  .studentContinueCard{gap:12px}
  .studentContinueIcon{width:44px;height:44px}
  .studentPerformanceBars{min-width:0}
  .studentQueueList,.studentAccessList,.materialList{min-width:0}
  .studentSubscriptionMain{min-width:0}
  .studentSubscriptionMeta{overflow-wrap:anywhere}

  /* RADAR */
  .radarHero{padding:34px 0 28px}
  .radarHero h1{font-size:clamp(30px,8.5vw,38px)}
  .radarHero p{font-size:15px}
  .radarFilters{grid-template-columns:1fr!important;padding:13px;gap:10px}
  .radarFilters .btn{width:100%}
  .radarGrid{grid-template-columns:1fr!important;gap:13px}
  .radarCardV2{border-radius:17px}
  .radarQuickFacts{grid-template-columns:1fr 1fr!important}
  .radarCardActions{grid-template-columns:1fr 1fr!important}
  .radarCardActions .btn{min-width:0;padding-left:8px;padding-right:8px}
  .radarContribute{padding:16px}
  .radarContributeHead{align-items:flex-start}
  .radarContributeForm .formGrid{grid-template-columns:1fr!important}
  .radarContributionActions{display:grid;grid-template-columns:1fr;gap:8px}
  .radarContributionActions .btn{width:100%}
  .radarModalBox{padding-bottom:calc(18px + env(safe-area-inset-bottom))}

  /* FEEDBACK */
  .feedbackLayout{grid-template-columns:1fr!important;gap:14px}
  .feedbackComposer{padding:17px}
  .feedbackHead{gap:10px}
  .feedbackComposer .formGrid{grid-template-columns:1fr!important}
  .feedbackSubmitRow{align-items:stretch;flex-direction:column;gap:10px}
  .feedbackSubmitRow .btn{width:100%}
  .feedbackFilePreview{max-width:100%;overflow-wrap:anywhere}
  .feedbackPrivacy{padding:14px}
  .feedbackSide{display:grid;gap:12px}

  /* Rodapé */
  .footerGrid{grid-template-columns:1fr!important}
  .footerGrid>div{min-width:0}
}

@media(max-width:430px){
  .container{width:calc(100% - 20px)}
  .navV11{width:calc(100% - 12px)}
  .pageHead h1{font-size:28px}
  .sectionHead h2{font-size:24px}
  .btn{width:100%}
  .navActions .navCart,.navActions .accountTrigger,.siteHeader .hamb{width:40px!important;min-width:40px!important}
  .navActions .btn{width:auto}

  .shopPagination{grid-template-columns:1fr 1fr}
  .shopPagination span{grid-column:1/-1;grid-row:1;text-align:center}

  .questionTop{flex-direction:column}
  .questionCounter{align-self:flex-start}
  .readerToolbar{margin-left:-2px;margin-right:-2px}

  .simStatsGrid{grid-template-columns:1fr 1fr!important}
  .simReviewMap{grid-template-columns:repeat(5,1fr)}

  .studentSnapshotGrid,.studentV139ProgressGrid,.studentPlanStats,.studentSimMetrics,.studentSecurityGrid,.accountSecurityGrid,.accountSecurityGridV134{grid-template-columns:1fr!important}

  .radarQuickFacts{grid-template-columns:1fr!important}
  .radarQuickFacts .radarFactDate{grid-column:auto!important}
  .radarCardActions{grid-template-columns:1fr!important}
  .radarModalFacts{grid-template-columns:1fr!important}
  .radarModalActions{grid-template-columns:1fr!important}
}

@media(max-width:350px){
  .navV11 .mark{width:34px;height:34px}
  .navActions{gap:2px}
  .navActions .navCart,.navActions .accountTrigger,.siteHeader .hamb{width:38px!important;height:38px!important;min-width:38px!important}
  .simReviewMap{grid-template-columns:repeat(4,1fr)}
}

/* ============================================================
   O MENINO CONCURSEIRO — V14.4.0
   POLIMENTO MOBILE FINAL
   - smartphones compactos (320–390 px)
   - teclado virtual / visualViewport
   - filtros longos e rolagem segura
   - simulados com navegação móvel mais acessível
   - tabelas/modais extensos
   - orientação horizontal
   ============================================================ */

:root{--omc-vvh:100dvh}

@media (pointer:coarse){
  button,.btn,a.btn,.option,.readerBtn,.readerSizeBtn,.simPreset,.simReviewFilter,.studentSide a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
}

@media(max-width:760px){
  input,select,textarea,[contenteditable="true"]{scroll-margin-top:96px;scroll-margin-bottom:132px}
  form,.formGrid,.field{min-width:0}

  /* Viewport real quando o teclado virtual estiver aberto. */
  .modalBox,.radarModalBox,.simResumeBox{
    max-height:min(92dvh,calc(var(--omc-vvh,100dvh) - 8px));
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
  }
  body.omcKeyboardOpen .modalBox,
  body.omcKeyboardOpen .radarModalBox,
  body.omcKeyboardOpen .simResumeBox{
    max-height:calc(var(--omc-vvh,100dvh) - 2px)!important;
    padding-bottom:12px!important;
  }
  body.omcKeyboardOpen .floatingCart,
  body.omcKeyboardOpen .cartToast{display:none!important}
  body.omcKeyboardOpen .simNav{position:static!important}
  body.omcKeyboardOpen .arsenalFilterActions{position:static!important}
  body.omcKeyboardOpen .shopFilters.mobileOpen{max-height:calc(var(--omc-vvh,100dvh) - 12px)!important}

  /* Filtros extensos: preserva ações sem esconder os últimos campos. */
  .arsenalFilters{scroll-padding-top:68px;scroll-padding-bottom:126px}
  .arsenalFilterStack{align-items:end}
  .arsenalFilterActions{bottom:0!important;margin:0 -2px;padding:12px 2px calc(12px + env(safe-area-inset-bottom))!important;border-top:1px solid var(--line)}
  .shopFilters.mobileOpen{scroll-padding:12px 0 28px;max-height:min(72dvh,calc(var(--omc-vvh,100dvh) - 90px))}

  /* Tabelas extensas: alvos de toque e leitura sem esmagar colunas. */
  .tableWrap{scroll-padding-inline:12px;padding-bottom:3px}
  .tableWrap>.table{min-width:580px}
  .table th,.table td{padding:11px 10px;line-height:1.4}
  .table td .btn,.table td button{min-height:42px}

  /* Arsenal: leitura e alternativas mais confortáveis. */
  .qcard{scroll-margin-top:132px}
  .examPaper{overflow:hidden}
  .qstatement,.qcommand,.optionText{word-break:normal;overflow-wrap:anywhere;hyphens:auto}
  .optionRow{align-items:stretch}
  .optionRow .option{min-height:58px;align-items:flex-start}
  .questionActions{padding-bottom:calc(14px + env(safe-area-inset-bottom))}
  .readerControls{scroll-snap-type:x proximity}
  .readerControls>*{scroll-snap-align:start}

  /* Simulado: botões anterior/próxima continuam acessíveis em provas longas. */
  .simNav{
    position:sticky;
    bottom:0;
    z-index:11;
    margin:12px -2px 0;
    padding:8px 2px calc(8px + env(safe-area-inset-bottom));
    background:rgba(247,249,252,.96);
    border-top:1px solid rgba(123,140,155,.18);
    backdrop-filter:blur(10px);
  }
  .simDots{flex-wrap:nowrap!important;justify-content:flex-start!important;overflow-x:auto!important;overflow-y:hidden!important;max-height:44px!important;padding:8px 4px!important;scrollbar-width:none;overscroll-behavior-inline:contain}
  .simDots::-webkit-scrollbar{display:none}
  .simDot{flex:0 0 12px;width:12px;height:12px}
  .simQuestion{scroll-margin-top:96px}
  .simOptions .option{touch-action:manipulation}

  /* Área do Aluno: menu horizontal e cards sem cortes laterais. */
  .studentSide,.studentSideV124{max-width:100%;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .studentSide::-webkit-scrollbar,.studentSideV124::-webkit-scrollbar{display:none}
  .studentSide a,.studentSideV124 a{flex:0 0 auto;white-space:nowrap}
  .studentPlanStrip,.studentEditalStrip,.studentNextQueue,.studentBooksPreview,.studentSubscriptionStrip{min-width:0;overflow:hidden}
  .studentPlanTags,.studentSubscriptionMeta,.studentSubscriptionAccess{max-width:100%;overflow-wrap:anywhere}
}

/* Aparelhos realmente estreitos: 360/375/390 e antigos de 320 px. */
@media(max-width:390px){
  .container{width:calc(100% - 16px)}
  .navV11{width:calc(100% - 10px)}
  .card{border-radius:15px}
  .pageHead{padding:24px 0 26px}
  .pageHead h1{font-size:27px;line-height:1.06}
  .section{padding:30px 0}
  .sectionHead h2{font-size:23px;line-height:1.12}

  .modalBox{padding-left:13px!important;padding-right:13px!important}

  .examQuestionTop{padding:14px 11px 12px}
  .examMeta{padding:8px 11px}
  .examPaper{padding:16px 10px}
  .qstatement{font-size:max(15px,calc(var(--reader-font,18px) - 2px));line-height:1.7}
  .qcommand{padding:13px 12px;margin:18px 0 7px}
  .optionRow{grid-template-columns:minmax(0,1fr) 40px}
  .optionRow .option{padding:12px 10px}
  .eliminateOption{width:40px!important;min-width:40px!important}
  .questionActions{padding-left:11px;padding-right:11px}
  .explain{margin-left:11px;margin-right:11px;padding:14px}

  .simQuestion{padding:16px 10px}
  .simQuestionTop{margin-bottom:14px}
  .simQBadge{padding:8px 12px;font-size:12px}
  .simOptions .option{min-height:58px;padding:11px 10px}
  .simNav{gap:6px}
  .simNav>.btn{padding:10px 8px;font-size:12px}
  .simStats{padding:11px}
  .simStat{min-height:78px;padding:8px}
  .simStat b{font-size:25px}

  .studentMainFocus,.studentPriorityCard,.studentContinueCard,.studentPerformanceHub,.studentAccessHub,.studentSecurityV124,.studentMaterialsV124,.studentSimHub{padding:13px!important}
  .studentSnapshot{padding:13px!important}
  .studentSnapshot b{font-size:24px}
  .studentSide,.studentSideV124{margin-left:-8px;margin-right:-8px;padding-left:8px;padding-right:8px}
}

@media(max-width:340px){
  .container{width:calc(100% - 12px)}
  .navV11 .brandText{display:none}
  .navV11 .mark{width:32px;height:32px;border-radius:10px}
  .pageHead h1{font-size:25px}
  .hero h1{font-size:31px}
  .eyebrow{font-size:11px;padding:7px 9px}
  .readerToolbar{padding-left:5px;padding-right:5px}
  .readerBtn,.readerSizeBtn{min-width:38px!important;padding-left:7px!important;padding-right:7px!important}
  .simStatsGrid{gap:5px!important}
  .simStat{min-height:73px}
  .simStat b{font-size:23px}
  .simReviewMap{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  .studentPerformanceFacts{grid-template-columns:1fr!important}
}

/* Smartphone deitado: usa a altura disponível sem cortar modais/filtros. */
@media (orientation:landscape) and (max-height:520px) and (pointer:coarse){
  .navPrimary,.accountDropdown{max-height:calc(var(--omc-vvh,100dvh) - 58px)!important}
  .modal{padding:0;place-items:end center}
  .modalBox,.radarModalBox,.simResumeBox{max-height:calc(var(--omc-vvh,100dvh) - 2px)!important;border-radius:16px 16px 0 0!important}
  .arsenalFilters{max-height:calc(var(--omc-vvh,100dvh) - 68px)!important}
  .arsenalFilterStack{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .readerToolbar{min-height:52px}
  .simStatsGrid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  .simStat{min-height:68px}
  .simReviewMap{grid-template-columns:repeat(10,minmax(0,1fr))!important}
  .shopFilters.mobileOpen{max-height:calc(var(--omc-vvh,100dvh) - 72px)!important}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
}

/* =========================================================
   V17-C2-P2 - ARSENAL MOBILE COMPACT UX

   - metadados compactos e rolaveis
   - menos espaco antes do enunciado
   - premium mais claro
   - preserva touch targets das alternativas
   ========================================================= */

@media(max-width:700px){

  /* -------------------------------------------------------
     ESPACO GERAL
     ------------------------------------------------------- */

  body.omcModuleQuestions .arsenalSection{
    padding-top:20px;
  }


  body.omcModuleQuestions .readerToolbar{
    margin-bottom:8px;
  }


  body.omcModuleQuestions .qcard{
    border-radius:13px;
  }


  /* -------------------------------------------------------
     CABECALHO DA QUESTAO
     ------------------------------------------------------- */

  body.omcModuleQuestions .examQuestionTop{
    padding:12px 12px 10px;
  }


  body.omcModuleQuestions .questionTop{
    flex-direction:row;
    align-items:flex-start;
    justify-content:space-between;

    gap:8px;

    margin-bottom:0;
    padding-bottom:0;

    border-bottom:0;
  }


  body.omcModuleQuestions .questionNumber{
    font-size:18px;
    line-height:1.2;
  }


  body.omcModuleQuestions .questionSource{
    margin-top:3px;

    font-size:11px;
    line-height:1.35;
  }


  body.omcModuleQuestions .questionCounter{
    align-self:flex-start;

    padding:5px 7px;

    font-size:9px;
    line-height:1.15;

    white-space:nowrap;
  }


  /* -------------------------------------------------------
     METADADOS

     Uma unica faixa horizontal.
     Nao quebra em varias linhas no celular.
     ------------------------------------------------------- */

  body.omcModuleQuestions .examMeta,
  body.omcModuleQuestions .qmeta{

    display:flex;

    flex-wrap:nowrap;

    align-items:center;

    gap:0;

    width:100%;
    max-width:100%;

    margin:0;

    padding:6px 10px;

    overflow-x:auto;
    overflow-y:hidden;

    overscroll-behavior-inline:contain;

    scrollbar-width:none;

    -webkit-overflow-scrolling:touch;
  }


  body.omcModuleQuestions .examMeta::-webkit-scrollbar,
  body.omcModuleQuestions .qmeta::-webkit-scrollbar{

    display:none;
  }


  body.omcModuleQuestions .examMeta span,
  body.omcModuleQuestions .qmeta span{

    flex:0 0 auto;

    white-space:nowrap;

    font-size:9.5px;

    line-height:1.2;

    padding-top:3px;
    padding-bottom:3px;
  }


  /* -------------------------------------------------------
     PREMIUM / GRATIS
     ------------------------------------------------------- */

  body.omcModuleQuestions
  .examMeta .premiumTag,

  body.omcModuleQuestions
  .qmeta .premiumTag{

    background:#fff3c4!important;

    color:#684c00!important;

    border:1px solid #e2bd4c!important;

    border-radius:999px!important;

    padding:4px 8px!important;

    font-weight:900!important;

    box-shadow:none!important;
  }


  body.omcModuleQuestions
  .examMeta .dailyQuestionTag,

  body.omcModuleQuestions
  .qmeta .dailyQuestionTag{

    border:1px solid #9ed8bc!important;

    padding:4px 8px!important;

    border-radius:999px!important;

    font-weight:900!important;
  }


  /* -------------------------------------------------------
     BANNER DE ACESSO PREMIUM / GRATIS
     ------------------------------------------------------- */

  body.omcModuleQuestions .dailyFreeBanner{

    margin-bottom:12px;

    padding:10px 12px;

    border-radius:13px;

    gap:8px;

    flex-direction:row;

    align-items:center;
  }


  body.omcModuleQuestions .dailyFreeBanner > div{

    min-width:0;

    gap:2px;
  }


  body.omcModuleQuestions .dailyFreeBanner b{

    font-size:13px;
    line-height:1.25;
  }


  body.omcModuleQuestions .dailyFreeBanner span{

    font-size:10.5px;
    line-height:1.35;
  }


  body.omcModuleQuestions
  .dailyFreeBanner .dailyBadge{

    flex:0 0 auto;

    align-self:center;

    padding:5px 8px;

    font-size:9px!important;
  }


  body.omcModuleQuestions
  .dailyFreeBanner.premiumAccess{

    background:
      linear-gradient(
        135deg,
        #fff8df,
        #fffdf5
      );

    border-color:#dfc66e;
  }


  /* -------------------------------------------------------
     PAPEL / ENUNCIADO
     ------------------------------------------------------- */

  body.omcModuleQuestions .examPaper{

    padding:
      15px
      11px
      18px;
  }


  body.omcModuleQuestions .qstatement{

    margin-top:0;
  }


  body.omcModuleQuestions
  .qstatement > :first-child{

    margin-top:0;
  }


  body.omcModuleQuestions .qcommand{

    margin-top:17px;
  }


  /* -------------------------------------------------------
     INSTRUCAO ANTES DAS ALTERNATIVAS
     ------------------------------------------------------- */

  body.omcModuleQuestions .answerInstruction{

    margin-top:18px;
    margin-bottom:11px;

    padding:10px 11px;

    gap:5px;

    border-radius:8px;
  }


  body.omcModuleQuestions
  .answerInstruction b{

    font-size:12px;
  }


  body.omcModuleQuestions
  .answerInstruction span,

  body.omcModuleQuestions
  .answerInstruction small{

    font-size:10.5px;
  }


  /* -------------------------------------------------------
     NAO COMPACTAR OS ALVOS DE TOQUE
     ------------------------------------------------------- */

  body.omcModuleQuestions
  .optionRow .option{

    min-height:58px;
  }


  body.omcModuleQuestions
  .confirmAnswer{

    min-height:46px;
  }


  body.omcModuleQuestions
  .questionActions .btn{

    min-height:44px;
  }


  /* -------------------------------------------------------
     DARK MODE
     ------------------------------------------------------- */

  body.omcModuleQuestions
  .qcard.readerDark
  .examMeta .premiumTag,

  body.omcModuleQuestions
  .qcard.readerDark
  .qmeta .premiumTag{

    background:#392f17!important;

    color:#ffdf79!important;

    border-color:#725d25!important;
  }


  body.omcModuleQuestions
  .qcard.readerDark
  .examMeta .dailyQuestionTag,

  body.omcModuleQuestions
  .qcard.readerDark
  .qmeta .dailyQuestionTag{

    background:#15342a!important;

    color:#8fe4be!important;

    border-color:#2d6c55!important;
  }

}


/* =========================================================
   TELAS MAIS ESTREITAS
   ========================================================= */

@media(max-width:430px){

  body.omcModuleQuestions .examQuestionTop{

    padding:
      10px
      10px
      9px;
  }


  body.omcModuleQuestions .questionNumber{

    font-size:17px;
  }


  /*
   * Em telas realmente estreitas o contador e informacao
   * secundaria e pode ser ocultado para priorizar a prova.
   */
  body.omcModuleQuestions .questionCounter{

    display:none;
  }


  body.omcModuleQuestions .examMeta,
  body.omcModuleQuestions .qmeta{

    padding-left:9px;
    padding-right:9px;
  }


  body.omcModuleQuestions .examPaper{

    padding:
      13px
      9px
      16px;
  }


  body.omcModuleQuestions .dailyFreeBanner{

    padding:9px 10px;

    gap:7px;
  }


  body.omcModuleQuestions
  .dailyFreeBanner span{

    font-size:10px;
  }

}

/* =========================================================
   V17-C2-P3 - FILTER AND PLANNED SESSION UX

   Melhora o drawer de filtros e compacta a sessao
   proveniente do Cronograma / Plano / Estudo Inteligente.
   ========================================================= */

@media(max-width:900px){

  /* -------------------------------------------------------
     BOTAO DE FILTROS
     ------------------------------------------------------- */

  body.omcModuleQuestions
  .mobileFilter{

    position:relative;

    min-height:46px;

    gap:7px;
  }


  body.omcModuleQuestions
  .mobileFilter.hasActiveFilters{

    padding-right:38px;
  }


  body.omcModuleQuestions
  .mobileFilter.hasActiveFilters::after{

    content:attr(data-active-filters);

    position:absolute;

    right:7px;
    top:50%;

    transform:translateY(-50%);

    min-width:22px;
    height:22px;

    padding:0 5px;

    border-radius:999px;

    display:grid;
    place-items:center;

    background:#17364d;

    color:#fff;

    font-size:10px;
    font-weight:900;

    line-height:1;
  }


  /* -------------------------------------------------------
     DRAWER DOS FILTROS
     ------------------------------------------------------- */

  body.omcModuleQuestions
  .arsenalFilters.mobileOpen{

    padding-top:16px;

    padding-left:16px;
    padding-right:16px;

    background:#fff;
  }


  body.omcModuleQuestions
  .arsenalFilters
  .sidebarTitle{

    margin-bottom:10px;

    gap:10px;
  }


  body.omcModuleQuestions
  .arsenalFilters
  .sidebarTitle h3{

    margin:0;

    font-size:17px;
  }


  body.omcModuleQuestions
  .arsenalFilters
  .filterClose{

    flex:0 0 44px;

    width:44px;
    height:44px;

    border:1px solid #dce4e9;

    border-radius:11px;

    background:#f6f8fa;

    color:#233744;

    display:grid;
    place-items:center;

    font-size:25px;

    line-height:1;
  }


  body.omcModuleQuestions
  .arsenalFilterStack{

    gap:9px;
  }


  body.omcModuleQuestions
  .arsenalFilterStack
  .field label{

    margin-bottom:5px;

    font-size:11px;
  }


  body.omcModuleQuestions
  .arsenalFilterStack
  .field input,

  body.omcModuleQuestions
  .arsenalFilterStack
  .field select{

    min-height:46px;

    padding:
      10px
      11px;

    border-radius:10px;
  }


  body.omcModuleQuestions
  .arsenalFilterSummary{

    margin:
      10px
      0
      8px;

    padding:
      8px
      10px;

    border-radius:9px;
  }


  /* -------------------------------------------------------
     SESSAO VINDO DO PLANEJAMENTO
     ------------------------------------------------------- */

  body.omcModuleQuestions
  .scheduleArsenalBanner{

    margin-bottom:10px;

    padding:
      10px
      11px;

    gap:9px;

    border-radius:11px;
  }


  body.omcModuleQuestions
  .scheduleArsenalInfo{

    gap:2px;
  }


  body.omcModuleQuestions
  .scheduleArsenalInfo > span{

    font-size:7.5px;

    letter-spacing:.07em;
  }


  body.omcModuleQuestions
  .scheduleArsenalInfo > b{

    font-size:11.5px;

    line-height:1.25;
  }


  body.omcModuleQuestions
  .scheduleArsenalInfo > small{

    font-size:8.5px;

    line-height:1.35;
  }


  body.omcModuleQuestions
  .scheduleArsenalBanner .btn{

    min-height:38px;

    padding:
      8px
      10px;

    border-radius:9px;

    font-size:10px;
  }

}


/* Celulares */
@media(max-width:560px){

  /*
   * A estrutura continua vertical para nao esmagar
   * o titulo, mas o botao deixa de ocupar 100%.
   */
  body.omcModuleQuestions
  .scheduleArsenalBanner{

    gap:7px;

    padding:
      9px
      10px;
  }


  body.omcModuleQuestions
  .scheduleArsenalBanner .btn{

    width:auto;

    align-self:flex-start;

    min-height:36px;

    padding:
      7px
      9px;
  }


  body.omcModuleQuestions
  .arsenalFilters.mobileOpen{

    padding-left:12px;
    padding-right:12px;
  }

}
/* ============================================================
   HOTFIX-CONTEUDO-01-C5-F1 - IDENTIDADE FSADU AZUL MOBILE
   Complemento carregado depois do CSS global em paginas mobile.
   ============================================================ */

:root{
  --omc-brand-primary:#0141AA;
  --omc-brand-navy:#032F8C;
  --omc-brand-white:#FFFFFF;
  --omc-brand-soft:#EFF5FF;
  --navy:#032F8C;
  --navy2:#0141AA;
  --blue:#0141AA;
  --cyan:#0141AA;
  --purple:#032F8C;
  --gold:#0141AA;
  --gold2:#0141AA;
}

@media(max-width:1050px){
  .navPrimary{
    background:
      linear-gradient(
        180deg,
        #032F8C 0%,
        #0141AA 100%
      );
  }

  .navPrimary a,
  .navPrimary button{
    color:#FFFFFF;
  }

  .navPrimary a.active,
  .navPrimary a:hover,
  .navPrimary button.active,
  .navPrimary button:hover{
    background:rgba(255,255,255,.13);
    color:#FFFFFF;
  }
}