
/* Ajustes compartilhados de alinhamento, marca e logotipos */
:root{--icon-box:18px}
*,*::before,*::after{box-sizing:border-box}
html,body{max-width:100%;overflow-x:clip}
:where(body,button,input,select,textarea){font-family:"Plus Jakarta Sans",system-ui,sans-serif}
:where(h1,h2,h3,h4,h5,h6){font-family:"Space Grotesk",sans-serif}
body{font-synthesis:none;text-rendering:optimizeLegibility}
img{max-width:100%}
.wrap,.nav,.hero-row,.context,.context-bar,.dashboard,.module-layout,.main-column,.side-column,.module-main,.module-side,.card,.card-head,.row-copy,.context-copy,.track-copy{min-width:0}
.card h1,.card h2,.card h3,.card p,.row-copy,.context-copy,.track-copy{overflow-wrap:break-word}
.logo-mark,.logo-icon{position:relative!important;width:40px!important;height:40px!important;display:grid!important;place-items:center!important;flex:0 0 40px!important;overflow:visible!important}
.logo-mark img,.logo-icon img{position:static!important;inset:auto!important;width:100%!important;height:100%!important;max-width:100%!important;object-fit:contain!important;transform:none!important}
.logo{min-width:max-content;line-height:1;align-items:center!important}
:where(.nav-item,.button,.btn,.ghost-button,.primary-button,.tool-button,.timer-action,.bookmark,.change-track,.plan-action,.study-subject,.review-button,.google-button,.back-link,.head-action,.track-switch,.profile-button,.mobile-button,.mobile-menu-button,.icon-button,.account-action,.close-button,.exam-action,.resume-attempt,.search) > svg{width:var(--icon-box)!important;height:var(--icon-box)!important;flex:0 0 var(--icon-box)!important;align-self:center!important;display:block!important}
.nav-item{align-items:center!important;line-height:1!important}
.nav-item>svg{transform:translateY(0)!important}
:where(.metric-icon,.mode-icon,.tool-icon,.review-icon,.activity-icon,.step-icon,.feature-line-icon,.track-lock,.focus-bolt,.trust-icon,.profile-avatar,.avatar,.row-icon,.template-icon,.attempt-icon,.notebook-icon,.empty-icon,.question-icon,.notification-icon,.exam-logo,.context-logo,.track-summary-logo,.icon-button,.close-button,.mobile-button,.mobile-menu-button,.timer-action,.eliminate-button,.resume-attempt){display:grid!important;place-items:center!important;flex:none!important;line-height:0!important}
:where(.metric-icon,.mode-icon,.tool-icon,.review-icon,.activity-icon,.step-icon,.feature-line-icon,.track-lock,.focus-bolt,.trust-icon,.profile-avatar,.avatar,.row-icon,.template-icon,.attempt-icon,.notebook-icon,.empty-icon,.question-icon,.notification-icon,.icon-button,.close-button,.mobile-button,.mobile-menu-button,.timer-action,.eliminate-button,.resume-attempt)>svg{position:static!important;margin:0!important;transform:none!important;display:block!important}
:where(.icon-button,.close-button,.mobile-button,.mobile-menu-button,.timer-action,.eliminate-button,.resume-attempt){padding:0!important;flex:none!important}
button,a{-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(0,216,117,.28);outline-offset:2px}
.skip-link{position:fixed;z-index:1000;top:8px;left:8px;padding:10px 14px;border-radius:10px;color:#fff;background:#05264d;box-shadow:0 8px 24px rgba(5,38,77,.24);transform:translateY(-160%);transition:transform .16s}
.skip-link:focus{transform:translateY(0)}
.deployment-notice{width:min(var(--max,1220px),calc(100% - 28px));margin:18px auto;padding:18px;border:1px solid #edd59d;border-radius:16px;color:#674900;background:#fff8e5}
.deployment-notice strong{display:block;font-size:16px}.deployment-notice p{margin-top:5px;font-size:11px}
.site-global-notice{position:relative;z-index:1200;width:100%;padding:10px 20px;border-bottom:1px solid rgba(5,38,77,.12);color:#05264d;background:#fff4c2;font-size:12px;font-weight:800;line-height:1.45;text-align:center}
[hidden]{display:none!important}
[aria-busy="true"]{cursor:progress}

/* Logotipos institucionais */
.career-logo-stack{display:flex;align-items:center;justify-content:flex-start;gap:8px;min-width:0}
.career-logo-stack.center{justify-content:center}
.career-logo{width:58px;height:44px;display:grid;place-items:center;flex:0 0 auto;padding:4px;border:1px solid rgba(5,38,77,.10);border-radius:11px;background:#fff;box-shadow:0 4px 12px rgba(5,38,77,.05)}
.career-logo img{width:100%;height:100%;display:block;object-fit:contain}
.career-logo-stack.compact{gap:5px}.career-logo-stack.compact .career-logo{width:44px;height:34px;padding:3px;border-radius:9px}
.active-track-logos{margin:0 0 12px}.active-track-logos .career-logo{width:70px;height:50px}
.track-option-logo{width:94px;min-height:58px;display:flex;align-items:center;justify-content:center;flex:none;padding:5px;border:1px solid var(--line,#dbe9e3);border-radius:13px;background:#fff}
.track-option-logo .career-logo{border:0;box-shadow:none;background:transparent;width:43px;height:39px;padding:1px}
.track-option-logo .career-logo-stack{justify-content:center;gap:3px}
.active-track{align-items:center!important}.active-track-logo{width:72px;height:55px;display:flex;align-items:center;justify-content:center;flex:none;padding:5px;border:1px solid var(--line,#dbe9e3);border-radius:13px;background:#fff}
.active-track-logo .career-logo{width:38px;height:36px;border:0;box-shadow:none;padding:1px}.active-track-logo .career-logo-stack{justify-content:center;gap:2px}
.track-context .track-logos{overflow:hidden}.track-context .track-logos img{display:block!important;object-position:center!important}
.institution-card img{display:block!important;margin:auto!important;object-fit:contain!important;object-position:center!important}
.statement-media{min-width:0;max-width:100%;display:grid;gap:12px}
.statement-asset{min-width:0;max-width:100%;display:grid;place-items:center;margin:0;padding:12px;border:1px solid var(--line,#dbe9e3);border-radius:16px;background:#f8fbfa;overflow:hidden}
.statement-asset img{display:block;width:auto;height:auto;max-width:100%;max-height:min(70vh,760px);object-fit:contain;border-radius:9px}

/* Consistência de navegação */
.topbar,.checkout-header,.security-header{
  border-bottom:1px solid var(--line,#dbe9e3)!important;
  background:rgba(255,255,255,.94)!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important
}
.mobile-nav{background:#fff!important}
.topbar .nav{min-height:72px!important;height:auto!important;display:flex!important;align-items:center!important;gap:18px!important}
.topbar .logo{flex:0 0 auto!important}
.topbar .main-nav{
  min-width:0;
  flex:1 1 710px;
  max-width:780px;
  align-self:stretch!important;
  display:grid!important;
  grid-template-columns:minmax(88px,.9fr) minmax(108px,1fr) minmax(84px,.85fr) minmax(176px,1.35fr) minmax(86px,.9fr);
  align-items:stretch!important;
  gap:0!important
}
.topbar .main-nav .nav-item{
  width:100%!important;
  min-width:0!important;
  min-height:44px;
  height:100%;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  padding:0 9px!important;
  border:0!important;
  border-radius:0!important;
  box-sizing:border-box!important;
  color:#526761;
  font-size:12px!important;
  font-weight:800!important;
  line-height:1!important;
  white-space:nowrap!important;
  transform:none!important
}
.topbar .main-nav .nav-item::after{right:6px!important;left:6px!important}
.topbar .main-nav .nav-item>svg{fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important;overflow:visible!important}
.topbar .main-nav .nav-item:hover,.topbar .main-nav .nav-item:focus-visible,.topbar .main-nav .nav-item.active{transform:none!important}
.topbar .main-nav.core-public-nav{
  flex:0 1 500px;
  max-width:500px;
  grid-template-columns:repeat(4,minmax(96px,1fr))
}
.core-public-actions{
  display:flex;
  align-items:center;
  gap:8px;
  flex:0 0 auto
}
.core-public-actions .button{
  min-height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 15px;
  border-radius:12px;
  font-size:12px;
  white-space:nowrap
}
.core-public-mobile-nav a[aria-current="page"],
.core-public-mobile-nav a[aria-current="location"]{
  color:var(--green-dark,#007a58);
  background:var(--green-soft,#eafff5)
}
.nav-store-link{position:relative}
.nav-store-link>svg{color:currentColor}
.topbar .nav-spacer{min-width:0;flex:1 1 auto}
.topbar .profile{flex:0 0 auto;min-width:0}
.topbar .profile-button{width:auto;max-width:196px;align-items:center!important}
.profile-copy{min-width:0;line-height:1.25!important}
.profile-copy strong,.profile-copy span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.avatar,.large-avatar,.profile-avatar{overflow:hidden}
.user-avatar-image{width:100%!important;height:100%!important;display:block!important;object-fit:cover!important;object-position:center!important;border-radius:inherit!important}
.avatar.has-photo::after{display:none}
.avatar::after,.core-profile .avatar::after{display:none!important;content:none!important}
:where(.button,.btn,.nav-item,.mobile-nav a,.profile-button,.google-button,.icon-button,.badge,.v17-badge,.kicker,.logo-mark,.context-logo,.schedule-time,.day-card){align-items:center!important}
:where(.button,.btn,.google-button,.icon-button,.badge,.v17-badge,.logo-mark,.context-logo,.schedule-time){justify-content:center!important}
:where(.button,.btn,.nav-item,.mobile-nav a,.profile-button,.google-button,.icon-button,.badge,.v17-badge){line-height:1.2!important}
.mobile-nav a{display:flex;align-items:center;min-height:42px}
.faq-question>svg{width:16px!important;height:16px!important;flex:0 0 16px!important;align-self:center!important}

/* Presença real compartilhada entre a home e a área de questões */
[data-online-counter]{display:none!important}
.online-counter{
  width:max-content;
  max-width:100%;
  min-height:42px;
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:9px 15px;
  border:2px solid rgba(0,122,88,.30);
  border-radius:999px;
  color:#005c43;
  background:linear-gradient(135deg,#f4fff9,#e9fff4);
  box-shadow:0 10px 28px rgba(0,122,88,.15);
  font-size:13px;
  font-weight:900;
  line-height:1.2;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px)
}
.online-pulse{
  position:relative;
  width:12px;
  height:12px;
  flex:0 0 12px;
  border-radius:50%;
  background:var(--green,#00d875);
  box-shadow:0 0 0 0 rgba(0,216,117,.48);
  animation:gabaritaqui-online-pulse 1.8s ease-out infinite
}
.online-pulse::after{
  content:"";
  position:absolute;
  inset:2px;
  border-radius:inherit;
  background:#fff;
  opacity:.30
}
.hero-online-counter{margin-top:15px}
.questions-online-counter{box-shadow:none}
@keyframes gabaritaqui-online-pulse{
  0%{box-shadow:0 0 0 0 rgba(0,216,117,.50)}
  70%,100%{box-shadow:0 0 0 9px rgba(0,216,117,0)}
}

/* Um único menu autenticado, com conta, acessos e marca */
.core-profile{position:relative}
.core-profile .profile-button{
  min-height:46px;
  display:flex;
  align-items:center;
  gap:9px;
  padding:4px 10px 4px 4px;
  border:1px solid var(--line,#dbe9e3);
  border-radius:999px;
  color:var(--ink,#05264d);
  background:#fff;
  box-shadow:0 5px 16px rgba(5,38,77,.07)
}
.core-profile .profile-button:hover,
.core-profile .profile-button[aria-expanded="true"]{
  border-color:#b7d5c7;
  box-shadow:0 9px 26px rgba(5,38,77,.11);
  transform:none
}
.core-profile .avatar{
  position:relative;
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  flex:0 0 36px!important;
  border-radius:50%;
  color:#fff;
  background:linear-gradient(145deg,#0d405f,#05264d);
  font-size:12px;
  font-weight:900;
  line-height:1!important
}
.core-profile .avatar::after{display:none!important;content:none!important}
.core-profile .avatar.nav-level-avatar{transition:outline-color .2s,box-shadow .2s}
.core-profile .avatar.level-frame-sem-nivel{outline:2px solid #91a4ad;box-shadow:0 0 0 2px #e7eef0}
.core-profile .avatar.level-frame-novato{outline:2px solid #a7bac2;box-shadow:0 0 0 2px #eef3f5}
.core-profile .avatar.level-frame-estudioso{outline:2px solid #27cb8d;box-shadow:0 0 0 3px #d7f8e9}
.core-profile .avatar.level-frame-estrategista{outline:2px solid #4fa7e8;box-shadow:0 0 0 3px #d9edff,0 0 13px rgba(79,167,232,.28)}
.core-profile .avatar.level-frame-especialista{outline:2px solid #e0aa34;box-shadow:0 0 0 3px #fff1c4,0 0 14px rgba(224,170,52,.28)}
.core-profile .avatar.level-frame-lenda-dos-concursos{outline:2px solid #ffdc65;box-shadow:0 0 0 3px rgba(0,216,117,.34),0 0 0 5px rgba(34,89,189,.24),0 0 18px rgba(255,220,101,.48)}
.core-profile .profile-copy{display:block;text-align:left}
.core-profile .profile-copy strong{display:block;font-size:12px}
.core-profile .profile-copy span{display:block;margin-top:2px;color:var(--green-dark,#008c68);font-size:10px;font-weight:900;text-transform:uppercase}
.core-profile .profile-chevron{width:18px;height:18px;flex:0 0 18px;fill:none;stroke:currentColor;stroke-width:1.9}
.profile .core-profile-menu{
  display:none;
  position:absolute;
  top:54px;
  right:0;
  z-index:60;
  width:min(448px,calc(100vw - 24px));
  max-height:calc(100vh - 76px);
  max-height:calc(100dvh - 76px);
  padding:10px;
  border:1px solid var(--line,#dbe9e3);
  border-radius:22px;
  background:#fff;
  box-shadow:0 22px 60px rgba(5,38,77,.18);
  overflow:hidden
}
.profile .core-profile-menu.open{display:grid;grid-template-rows:auto minmax(0,1fr) auto}
.core-profile-menu .profile-summary{
  margin-bottom:7px;
  padding:14px 15px;
  border-radius:15px;
  color:#fff;
  background:linear-gradient(135deg,#05264d,#0c4964)
}
.core-profile-menu .profile-summary span{display:block;color:#b8d0db;font-size:10px;font-weight:900;text-transform:uppercase}
.core-profile-menu .profile-summary strong{display:block;margin-top:5px;font-size:11px;line-height:1.45}
.core-profile-menu .profile-diagnosis{display:block;margin-top:6px;color:#cde3da;font-size:10px;font-weight:700;line-height:1.45}
.core-profile-menu .profile-diagnosis:empty{display:none}
.profile-menu-content{
  min-height:0;
  display:grid;
  gap:10px;
  padding:2px 1px 3px;
  overflow-x:hidden;
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-gutter:stable
}
.account-menu-section{min-width:0}
.account-menu-heading{
  margin:0;
  padding:6px 10px 4px;
  color:#71857d;
  font-family:"Plus Jakarta Sans",system-ui,sans-serif;
  font-size:10px;
  font-weight:900;
  line-height:1.3;
  letter-spacing:.08em;
  text-transform:uppercase
}
.account-menu-links{display:grid;gap:2px}
.account-menu-tools,.account-menu-account,.account-menu-support{grid-template-columns:repeat(2,minmax(0,1fr))}
.profile-menu .account-menu-link{
  min-height:44px;
  display:grid;
  grid-template-columns:20px minmax(0,1fr);
  align-items:center;
  gap:10px;
  padding:9px 11px;
  border-radius:10px;
  color:var(--muted,#52677a);
  background:transparent;
  font-size:12px;
  font-weight:800;
  text-align:left
}
.profile-menu .account-menu-link:hover,
.profile-menu .account-menu-link:focus-visible,
.profile-menu .account-menu-link.active{
  color:var(--ink,#05264d);
  background:var(--green-soft,#e7fbf1)
}
.profile-menu .account-menu-link.active{box-shadow:inset 3px 0 0 var(--green-dark,#008c68)}
.profile-menu .account-menu-link>svg{
  width:18px!important;
  height:18px!important;
  display:block;
  fill:none;
  stroke:currentColor;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round
}
.profile-menu .account-menu-logout{
  margin:5px 1px 0;
  border-top:1px solid var(--line,#dbe9e3);
  border-radius:0 0 10px 10px;
  color:#a33e3e
}
.account-menu-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:9px -10px -10px;
  padding:12px 14px;
  border-top:1px solid var(--line,#dbe9e3);
  background:linear-gradient(135deg,#f5fbf8,#eef8f5)
}
.profile-menu .account-menu-brand{
  min-height:36px;
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:0;
  color:var(--ink,#05264d);
  background:transparent!important;
  font-family:"Space Grotesk",sans-serif;
  font-size:15px;
  font-weight:800;
  letter-spacing:-.04em
}
.account-menu-brand img{width:30px;height:30px;object-fit:contain}
.account-menu-brand em{color:var(--green-dark,#008c68);font-style:normal}
.account-socials{display:flex;align-items:center;gap:5px}
.profile-menu .account-socials a{
  width:36px;
  height:36px;
  min-height:36px;
  display:grid;
  place-items:center;
  padding:0;
  border:1px solid rgba(5,38,77,.10);
  border-radius:50%;
  color:var(--ink,#05264d);
  background:#fff
}
.profile-menu .account-socials a:hover{color:var(--green-dark,#008c68);background:#fff}
.account-socials svg{
  width:17px!important;
  height:17px!important;
  fill:none;
  stroke:currentColor;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round
}
:where(.dialog-close,.v17-icon-button[data-close],.close-button,.inline-panel-close,.close-modal,.cookie-preferences-close){
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  min-height:44px!important;
  display:grid!important;
  place-items:center!important;
  flex:0 0 44px!important;
  padding:0!important;
  border:1px solid var(--line,#dbe9e3)!important;
  border-radius:12px!important;
  color:var(--ink,#05264d)!important;
  background:#fff!important;
  position:relative!important;
  line-height:0!important;
  cursor:pointer!important;
  transition:color .18s,border-color .18s,background .18s,box-shadow .18s
}
.close-modal>svg,.cookie-preferences-close>svg{width:18px!important;height:18px!important;display:block;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round}
:where(.dialog-close,.v17-icon-button[data-close],.close-button,.inline-panel-close){
  font-size:0!important
}
:where(.dialog-close,.v17-icon-button[data-close],.close-button,.inline-panel-close)::before{
  content:"";
  width:17px;
  height:17px;
  display:block;
  background:linear-gradient(45deg,transparent 46%,currentColor 47% 53%,transparent 54%),linear-gradient(-45deg,transparent 46%,currentColor 47% 53%,transparent 54%)
}
:where(.dialog-close,.v17-icon-button[data-close],.close-button,.inline-panel-close,.close-modal,.cookie-preferences-close):is(:hover,:focus-visible){
  border-color:#c84949!important;
  color:#a52d2d!important;
  background:#fff1f1!important;
  box-shadow:0 7px 18px rgba(168,45,45,.12)!important
}
:where(.dialog-close,.v17-icon-button[data-close],.close-button,.inline-panel-close,.close-modal,.cookie-preferences-close):focus-visible{
  outline:3px solid rgba(168,45,45,.3)!important;
  outline-offset:2px!important
}
.close-modal,.cookie-preferences-close{width:44px!important;height:44px!important;display:grid!important;place-items:center!important}
.close-modal:hover,.cookie-preferences-close:hover{border-color:#c84949!important;color:#a52d2d!important;background:#fff1f1!important;box-shadow:0 7px 18px rgba(168,45,45,.12)}
.profile-chevron{transition:transform .18s ease}
.profile-button[aria-expanded="true"] .profile-chevron{transform:rotate(180deg)}

/* Cards e ações permanecem legíveis mesmo com conteúdo dinâmico extenso. */
.track-top>div,.plan-step>div,.callout,.module-side .card-head>div{min-width:0}
.track-banner .track-top>.button{
  min-width:126px;
  align-self:flex-start;
  flex:none;
  color:var(--ink,#05264d)!important;
  border-color:rgba(255,255,255,.58)!important;
  background:#fff!important;
  box-shadow:0 8px 22px rgba(0,0,0,.12)!important
}
.track-banner .track-top>.button:hover,.track-banner .track-top>.button:focus-visible{border-color:var(--green,#00d875)!important;background:var(--green-soft,#e7fbf1)!important}
.module-side .card-head{align-items:center}
.module-side .card-head>.button{align-self:center;flex:none}
.plan-step{align-items:start!important}
.plan-number{display:grid!important;place-items:center!important;margin:0!important;align-self:start;text-align:center!important;line-height:1!important}
.plan-step :is(strong,span){overflow-wrap:anywhere}

/* A home e o portal também recebem o cabeçalho da conta ao autenticar. */
html[data-gabaritaqui-authenticated="true"] .site-header .nav-actions>:not(.profile),
html[data-gabaritaqui-authenticated="true"] .portal-header .portal-actions>:not(.profile){
  display:none!important
}
html[data-gabaritaqui-authenticated="true"] .site-header .nav-links{
  display:flex!important;
  flex:1 1 auto;
  justify-content:center
}
html[data-gabaritaqui-authenticated="true"] .site-header .nav-links a{
  white-space:nowrap
}
html[data-gabaritaqui-authenticated="true"] .site-header .profile,
html[data-gabaritaqui-authenticated="true"] .portal-header .profile{
  position:relative;
  flex:0 0 auto;
  min-width:0
}
html[data-gabaritaqui-authenticated="true"] .site-header .profile-button,
html[data-gabaritaqui-authenticated="true"] .portal-header .profile-button{
  width:auto;
  max-width:196px
}
html[data-gabaritaqui-authenticated="true"] .site-header .profile-menu,
html[data-gabaritaqui-authenticated="true"] .portal-header .profile-menu{
  z-index:65
}
html[data-gabaritaqui-authenticated="true"] .portal-header .main-nav.portal-nav{
  flex:1 1 710px!important;
  max-width:780px;
  grid-template-columns:minmax(88px,.9fr) minmax(108px,1fr) minmax(84px,.85fr) minmax(176px,1.35fr) minmax(86px,.9fr)!important
}

@media(max-width:1180px){
  .topbar .main-nav{display:none!important}
  .topbar .mobile-button{display:none!important}
  .topbar .nav.core-public-header .mobile-button,
  .topbar .core-public-header>.mobile-button{
    display:grid!important
  }
  .topbar .nav.core-public-header{flex-wrap:nowrap!important;padding-top:0;padding-bottom:0}
  .topbar .profile{margin-left:auto}
  html .nav.core-primary-header,
  html[data-gabaritaqui-authenticated="true"] .topbar .nav,
  html[data-gabaritaqui-authenticated="true"] .site-header .nav,
  html[data-gabaritaqui-authenticated="true"] .portal-header .nav{
    min-height:72px!important;
    height:auto!important;
    flex-wrap:wrap;
    row-gap:0!important;
    padding-top:8px;
    padding-bottom:7px
  }
  html :is(
    .topbar .main-nav.core-primary-nav,
    .site-header .nav-links.core-primary-nav,
    .portal-header .main-nav.portal-nav.core-primary-nav
  ){
    order:4;
    width:100%;
    max-width:none;
    flex:1 0 100%!important;
    display:grid!important;
    grid-template-columns:repeat(5,minmax(168px,1fr))!important;
    justify-content:start!important;
    margin-top:7px;
    padding:3px 0 4px;
    border-top:1px solid var(--line,#dbe9e3);
    overflow-x:auto!important;
    overflow-y:hidden;
    overscroll-behavior-inline:contain;
    scroll-padding-inline:8px;
    scroll-snap-type:inline proximity;
    scrollbar-color:rgba(5,38,77,.22) transparent;
    scrollbar-width:thin;
    -webkit-overflow-scrolling:touch
  }
  html :is(
    .topbar .main-nav.core-primary-nav,
    .portal-header .main-nav.portal-nav.core-primary-nav
  ){
    min-height:51px
  }
  html .site-header .nav-links.core-primary-nav{
    gap:2px!important;
    padding-top:5px
  }
  html .site-header .nav-links.core-primary-nav a{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    padding:8px 10px
  }
  html :is(
    .topbar .main-nav.core-primary-nav,
    .site-header .nav-links.core-primary-nav,
    .portal-header .main-nav.portal-nav.core-primary-nav
  ){
    grid-template-columns:none!important;
    grid-template-rows:1fr;
    grid-auto-flow:column;
    grid-auto-columns:minmax(168px,1fr)
  }
  html :is(
    .topbar .main-nav.core-primary-nav,
    .site-header .nav-links.core-primary-nav,
    .portal-header .main-nav.portal-nav.core-primary-nav
  ) .nav-item{scroll-snap-align:start}
  html :is(
    .topbar .main-nav.core-primary-nav,
    .site-header .nav-links.core-primary-nav,
    .portal-header .main-nav.portal-nav.core-primary-nav
  ) .nav-item:focus-visible{outline-offset:-3px}
  html :is(
    .topbar .main-nav.core-primary-nav,
    .site-header .nav-links.core-primary-nav,
    .portal-header .main-nav.portal-nav.core-primary-nav
  ):focus-within{scrollbar-color:var(--green-dark,#007a58) transparent}
  html :is(
    .topbar .main-nav.core-primary-nav,
    .site-header .nav-links.core-primary-nav,
    .portal-header .main-nav.portal-nav.core-primary-nav
  )::-webkit-scrollbar{height:4px}
  html :is(
    .topbar .main-nav.core-primary-nav,
    .site-header .nav-links.core-primary-nav,
    .portal-header .main-nav.portal-nav.core-primary-nav
  )::-webkit-scrollbar-thumb{border-radius:999px;background:rgba(5,38,77,.22)}
  html[data-gabaritaqui-authenticated="true"] :is(.mobile-button,.mobile-menu-button,.menu-button),
  html[data-gabaritaqui-authenticated="true"] :is(.mobile-nav,.portal-mobile-nav,.mobile-menu){
    display:none!important
  }
}

@media(max-width:900px){
  .logo-mark,.logo-icon{width:38px!important;height:38px!important;flex-basis:38px!important}
  .active-track{align-items:flex-start!important}.active-track-logo{width:62px;height:50px}
  .topbar .profile{flex:0 0 auto}
  .topbar .profile-button{width:auto}
}
@media(max-width:760px){
  .context,.context-bar{width:100%}
  .context-actions{width:100%;min-width:0;display:flex;flex-wrap:wrap}
  .context-actions>.search,.context-actions>.filter-select,.context-actions>.button{min-width:0;flex:1 1 180px}
  .search input{min-width:0}
  .hero-actions{max-width:100%;flex-wrap:wrap}
  .profile-menu{max-width:calc(100vw - 24px);max-height:calc(100vh - 84px)}
  html[data-gabaritaqui-authenticated="true"] .site-header .profile,
  html[data-gabaritaqui-authenticated="true"] .portal-header .profile{
    flex:0 0 auto
  }
  html[data-gabaritaqui-authenticated="true"] .site-header .profile-button,
  html[data-gabaritaqui-authenticated="true"] .portal-header .profile-button{
    width:auto
  }
  .account-menu-footer{align-items:center}
  .track-banner .track-top>.button{width:100%}
}
@media(max-width:560px){
  :root{--icon-box:17px}
  .career-logo{width:50px;height:40px}
  .track-option-logo{width:76px}
  .active-track-logo{width:58px;height:48px}
  .hero-actions{display:grid!important;width:100%}
  .hero-actions>.button,.hero-actions>.btn{width:100%}
  .context-actions{display:grid}
  .context-actions>.search,.context-actions>.filter-select,.context-actions>.button{width:100%;flex:none}
  .card-head{min-width:0}
  .core-profile .profile-copy{display:none}
  .core-profile .profile-button{width:46px!important;min-width:46px;padding:4px!important}
  .core-profile .profile-chevron{display:none!important}
  .account-menu-tools,.account-menu-account,.account-menu-support{grid-template-columns:minmax(0,1fr)}
  .account-menu-footer{align-items:center;flex-direction:column;text-align:center}
  .account-menu-footer .account-menu-brand{align-self:center}
  .account-menu-footer .account-socials{width:100%;justify-content:center}
  .core-public-actions .button:first-child{display:none}
  .core-public-actions .button{padding:0 11px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
.reduce-motion *, .reduce-motion *::before, .reduce-motion *::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}

/* Robustez global de layout e mídia */
html{width:100%;min-height:100%;overflow-x:hidden;overflow-x:clip;background:#fff}
body{width:100%;min-width:0;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;overflow-x:hidden;overflow-x:clip}
body>main{flex:1 0 auto}
.profile-copy [data-plan],[data-user-plan]{visibility:hidden}
html[data-user-plan-ready="true"] :is(.profile-copy [data-plan],[data-user-plan]){visibility:visible}
img,video,canvas,picture,iframe,object,embed{max-width:100%}
img,video,canvas{height:auto}
svg{max-width:100%}
iframe,object,embed{width:100%;border:0}
fieldset{min-width:0;border:0}
table{width:100%;max-width:100%;border-collapse:collapse}
.table-wrap{width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}
pre{max-width:100%;overflow-x:auto;white-space:pre-wrap;overflow-wrap:break-word}
:where(h1,h2,h3,h4,h5,h6,p,li,dd,dt,td,th,label,small,strong,span){overflow-wrap:break-word;word-break:normal}
:where(.metric-label,.metric span,.summary-cell span,.summary-item span,.history-metric span,.rank-metric span,.track-metrics span,.queue-summary span,.badge,.pill,.counter){overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important}
.queue-summary{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.queue-summary>div{min-width:0!important}
.queue-summary span{font-size:11px!important;line-height:1.3!important}
@media(max-width:720px){
  .queue-summary{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .queue-summary>div:last-child{grid-column:1/-1}
}
@media(max-width:420px){
  .queue-summary{grid-template-columns:minmax(0,1fr)!important}
  .queue-summary>div:last-child{grid-column:auto!important}
}
:where(.module-layout,.dashboard,.provas-layout,.sim-layout,.profile-layout,.ranking-layout,.checkout-layout,.legal-layout,.help-grid,.plan-grid,.template-grid,.history-overview,.overview,.settings-grid,.form-grid,.filter-grid,.advanced-grid,.main-column,.side-column,.module-main,.module-side,.card,.card-body,.card-head,.context,.context-track,.context-actions,.hero-row,.hero-actions,.row-copy,.exam-copy,.result-copy,.notification-copy,.leader-name,.topic-name,.schedule-copy,.notebook-copy,.attempt>div,.history-mini a>span){min-width:0;max-width:100%}

/* Campos e áreas clicáveis previsíveis em mouse, teclado e toque */
:where(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),select,textarea){min-width:0;max-width:100%}
:where(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),select){min-height:44px}
:where(button,[role="button"]){min-height:44px!important;touch-action:manipulation}
:where(.button,.btn,.nav-item,.mobile-nav a,.profile-menu a,.legal-nav a,.back-link,.google-button,.track-switch,.change-track,.study-subject,.review-button,.result-open,.account-action,.faq-question,.notification-copy a,.public-footer a){min-height:44px;touch-action:manipulation}
:where(.icon-button,.close-button,.mobile-button,.mobile-menu-button,.timer-action,.eliminate-button,.resume-attempt,.result-open){min-width:44px!important;min-height:44px!important}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
:where(button,a,input,select,textarea,[role="button"]){-webkit-tap-highlight-color:transparent}
:where(button,a,input,select,textarea,[role="button"],[tabindex]):focus-visible{outline:3px solid #007a58!important;outline-offset:3px!important}
.dialog-close:focus-visible,.v17-icon-button[data-close]:focus-visible,.close-button:focus-visible,.inline-panel-close:focus-visible,.close-modal:focus-visible,.cookie-preferences-close:focus-visible{outline:3px solid rgba(200,73,73,.34)!important;outline-offset:3px!important}
.switch{width:48px!important;height:44px!important;cursor:pointer}
.switch>span{inset:10px 2px!important}
.switch input:focus-visible+span{outline:3px solid #007a58!important;outline-offset:3px}
.check-row{min-height:44px;cursor:pointer}
.public-footer a{display:inline-flex;align-items:center}
:where(input[type="checkbox"],input[type="radio"]){width:20px;height:20px;flex:none;accent-color:var(--green,#00d875)}
:where(button:disabled,input:disabled,select:disabled,textarea:disabled,[aria-disabled="true"]){cursor:not-allowed}
.button,.btn,.nav-item,.profile-menu a,.mobile-nav a{justify-content:center;text-align:center}
.profile-menu a,.mobile-nav a{justify-content:flex-start;text-align:left}
.card-head>*,.hero-row>*,.context>*{min-width:0}
.institution-disclaimer{max-width:760px;margin:10px 0 0;padding:8px 11px;border-left:3px solid var(--green,#00b86b);color:var(--muted,#64748b);font-size:12px;line-height:1.55}
main[id]{scroll-margin-top:84px}
main[id]:focus{outline:none}

/* Contraste WCAG AA sem alterar o verde luminoso usado como acento gráfico. */
:root{--green-dark:#007a58}
:where(.logo,.logo-word,.account-brand) em{color:#007a58!important}
:where(.button.primary,.store-page .button.primary,.store-summary .button,.store-hero .button.primary){color:#05264d!important}
.automation-card .button{color:#05264d!important}
:where(.forgot-link,.account-links a){color:#007a58!important}
.button.danger{color:#a52d2d}
#buildSession:disabled{opacity:.65}
.toast{visibility:hidden}
.toast.show{visibility:visible}

/* Consentimento de cookies: escolha equivalente, granular e reversível */
.cookie-consent-banner{
  position:fixed;
  z-index:2200;
  right:max(18px,env(safe-area-inset-right));
  bottom:max(18px,env(safe-area-inset-bottom));
  left:max(18px,env(safe-area-inset-left));
  width:min(1120px,calc(100% - 36px));
  margin-inline:auto;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:22px;
  padding:20px;
  border:1px solid rgba(5,38,77,.16);
  border-radius:20px;
  color:var(--ink,#05264d);
  background:rgba(255,255,255,.98);
  box-shadow:0 24px 70px rgba(5,38,77,.24);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px)
}
.cookie-consent-copy{min-width:0}
.cookie-consent-copy h2{margin:0;font-family:"Space Grotesk",sans-serif;font-size:18px;letter-spacing:-.02em}
.cookie-consent-copy p{max-width:720px;margin:7px 0 0;color:var(--muted,#52677a);font-size:12px;line-height:1.65}
.cookie-consent-copy a{color:var(--green-dark,#00735f);font-weight:900;text-decoration:underline;text-underline-offset:2px}
.cookie-consent-actions,.cookie-preferences-actions{display:grid;grid-template-columns:repeat(3,minmax(142px,1fr));gap:8px}
.cookie-consent-action{
  min-height:46px;
  padding:10px 14px;
  border:1px solid #9fb7ad;
  border-radius:12px;
  color:var(--ink,#05264d);
  background:#fff;
  font:800 12px/1.3 "Plus Jakarta Sans",sans-serif;
  cursor:pointer
}
.cookie-consent-action:hover{border-color:var(--green-dark,#00735f);box-shadow:0 7px 18px rgba(5,38,77,.09)}
.cookie-consent-action.cookie-reject{border:2px solid var(--ink,#05264d)}
.cookie-consent-action.cookie-accept{border:2px solid var(--green-dark,#00735f);color:#fff;background:var(--green-dark,#00735f)}
.cookie-consent-action.cookie-customize{background:#f4faf7}
.cookie-settings-trigger{
  position:fixed;
  z-index:2050;
  left:max(12px,env(safe-area-inset-left));
  bottom:max(12px,env(safe-area-inset-bottom));
  min-height:40px!important;
  padding:8px 11px;
  border:1px solid rgba(5,38,77,.18);
  border-radius:999px;
  color:var(--ink,#05264d);
  background:rgba(255,255,255,.96);
  box-shadow:0 8px 26px rgba(5,38,77,.14);
  font:800 10px/1.2 "Plus Jakarta Sans",sans-serif;
  cursor:pointer
}
.cookie-settings-trigger:hover{border-color:var(--green-dark,#00735f);color:var(--green-dark,#00735f)}
.cookie-preferences-backdrop{
  position:fixed;
  z-index:2300;
  inset:0;
  display:grid;
  place-items:center;
  padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));
  background:rgba(5,38,77,.54);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px)
}
.cookie-preferences-panel{
  width:min(640px,100%);
  max-height:calc(100vh - 32px);
  max-height:calc(100dvh - 32px);
  overflow:auto;
  padding:22px;
  border:1px solid rgba(5,38,77,.14);
  border-radius:22px;
  color:var(--ink,#05264d);
  background:#fff;
  box-shadow:0 28px 90px rgba(5,38,77,.28)
}
.cookie-preferences-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.cookie-preferences-head span{color:var(--green-dark,#00735f);font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.cookie-preferences-head h2{margin:4px 0 0;font-family:"Space Grotesk",sans-serif;font-size:24px;letter-spacing:-.03em}
.cookie-preferences-close{width:44px;height:44px;padding:0;border:1px solid var(--line,#dbe9e3);border-radius:50%;color:var(--ink,#05264d);background:#fff;font-size:25px;line-height:1;cursor:pointer}
.cookie-preferences-intro{margin:12px 0 0;color:var(--muted,#52677a);font-size:12px;line-height:1.65}
.cookie-category-list{display:grid;gap:9px;margin-top:18px}
.cookie-category-row{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px;border:1px solid var(--line,#dbe9e3);border-radius:14px;background:#fff;cursor:pointer}
.cookie-category-row:hover{border-color:#a9cdbb;background:#fbfefc}
.cookie-category-row span{min-width:0}
.cookie-category-row strong,.cookie-category-row small{display:block}
.cookie-category-row strong{font-size:13px}
.cookie-category-row small{margin-top:4px;color:var(--muted,#52677a);font-size:11px;line-height:1.5}
.cookie-category-row input{width:22px;height:22px;flex:0 0 22px}
.cookie-category-required{background:#f4faf7;cursor:default}
.cookie-category-required:hover{border-color:var(--line,#dbe9e3);background:#f4faf7}
.cookie-preferences-actions{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:18px}
html.cookie-preferences-open{overflow:hidden!important}

@media(max-width:900px){
  .cookie-consent-banner{grid-template-columns:1fr;align-items:stretch;gap:14px}
  .cookie-consent-actions{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media(max-width:640px){
  .cookie-consent-banner{right:10px;bottom:max(10px,env(safe-area-inset-bottom));left:10px;width:calc(100% - 20px);padding:16px;border-radius:17px}
  .cookie-consent-actions{grid-template-columns:1fr}
  .cookie-consent-action{width:100%}
  .cookie-consent-action.cookie-accept{grid-row:1}
  .cookie-consent-action.cookie-reject{grid-row:2}
  .cookie-consent-action.cookie-customize{grid-row:3}
  .cookie-preferences-panel{padding:17px;border-radius:18px}
  .cookie-preferences-head h2{font-size:21px}
  .cookie-category-row{align-items:flex-start}
  .cookie-preferences-actions{grid-template-columns:1fr}
}

/* Rodapé institucional compartilhado em todas as telas públicas e do aluno */
.site-footer{
  width:100%;
  align-self:stretch;
  flex:none;
  margin-top:60px;
  padding:52px 0 24px;
  border-top:1px solid var(--line,#dbe9e3);
  color:var(--ink,#05264d);
  background:#fff
}
.site-footer>.wrap{width:min(1240px,calc(100% - 48px));margin-inline:auto}
.site-footer .footer-grid{
  display:grid;
  grid-template-columns:1.15fr .65fr 1.05fr .65fr;
  gap:42px
}
.site-footer .footer-brand p{
  max-width:340px;
  margin-top:15px;
  color:var(--muted,#52677a);
  font-size:12px;
  line-height:1.6
}
.site-footer .footer-socials{
  display:flex;
  align-items:center;
  gap:8px;
  margin-top:16px
}
.site-footer .footer-socials a{
  width:38px;
  height:38px;
  min-width:38px;
  min-height:38px;
  display:grid;
  place-items:center;
  padding:0;
  border:1px solid var(--line,#dbe9e3);
  border-radius:50%;
  color:var(--ink,#05264d);
  background:#f8fcfa;
  line-height:0;
  transition:color .18s,border-color .18s,background .18s,box-shadow .18s,transform .18s
}
.site-footer .footer-socials a:hover{
  border-color:rgba(0,122,88,.38);
  color:var(--green-dark,#007a58);
  background:var(--green-soft,#eafff5);
  transform:translateY(-1px)
}
.site-footer .footer-socials a:focus-visible{
  outline:3px solid rgba(0,122,88,.28);
  outline-offset:3px;
  border-color:var(--green-dark,#007a58)
}
.site-footer .footer-socials svg{
  width:18px;
  height:18px;
  display:block;
  overflow:visible;
  fill:none;
  stroke:currentColor;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round
}
.site-footer .logo{
  width:190px;
  height:104px;
  min-width:0;
  display:block;
  background:url("../brand/logo-gabaritaqui-transparent.png") center/contain no-repeat;
  color:var(--ink,#05264d);
  font-family:"Space Grotesk",sans-serif;
  font-size:0;
  font-weight:700;
  letter-spacing:-.055em
}
.site-footer .footer-brand .logo>.logo-mark,
.site-footer .footer-brand .logo>.logo-word{display:none!important}
.site-footer .logo-mark{background:transparent}
.site-footer .footer-col h2{
  font-family:"Space Grotesk",sans-serif;
  font-size:14px;
  letter-spacing:-.01em
}
.site-footer .footer-col ul{
  display:grid;
  gap:9px;
  margin:15px 0 0;
  padding:0;
  list-style:none
}
.site-footer .footer-areas{
  grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:20px
}
.site-footer .footer-col a{
  min-height:32px;
  display:inline-flex;
  align-items:center;
  color:var(--muted,#52677a);
  font-size:11px;
  font-weight:700
}
.site-footer .footer-col a:hover{color:var(--green-dark,#00735f)}
.site-footer .footer-bottom{
  display:flex;
  justify-content:space-between;
  gap:20px;
  margin-top:38px;
  padding-top:20px;
  border-top:1px solid var(--line,#dbe9e3);
  color:var(--muted,#52677a);
  font-size:10px
}

@media(max-width:980px){
  .site-footer .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px}
}

@media(max-width:760px){
  .site-footer>.wrap{width:min(1240px,calc(100% - 32px))}
  .site-footer .footer-grid{grid-template-columns:1fr 1fr}
  .site-footer .footer-brand{grid-column:span 2}
}

@media(max-width:560px){
  .site-footer>.wrap{width:min(1240px,calc(100% - 24px))}
  .site-footer .footer-grid{grid-template-columns:1fr;gap:28px}
  .site-footer .footer-brand{grid-column:auto}
  .site-footer .footer-areas{grid-template-columns:1fr}
  .site-footer .footer-bottom{align-items:flex-start;flex-direction:column}
}

/* Conteúdo rolável sem propagar o gesto para a página */
:where(.profile-menu,.mobile-nav,.modal,.comments-modal,.stats-modal,.discipline-picks,.range-picker,.period-picker,.segmented){overscroll-behavior:contain}
.mobile-nav.open{max-height:calc(100vh - 72px);max-height:calc(100dvh - 72px);overflow-y:auto}
.modal{max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);overflow-y:auto}
.toast{max-width:calc(100vw - 24px)}

@media(max-width:760px){
  :where(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),select,textarea){font-size:16px!important}
  .context-actions{width:100%!important;min-width:0}
  .context-actions>*{min-width:0;max-width:100%}
  .context-actions>.search,.context-actions>.filter-select,.context-actions>.button{width:100%}
  .search{width:100%;max-width:100%}
  .search input{min-height:44px}
  .filter-select{min-height:44px;height:auto}
  .hero-actions>*{max-width:100%}
  .card-head{flex-wrap:wrap}
  .card-head>:first-child{min-width:0;flex:1 1 210px}
  :where(.badge,.pill,.counter,.sample-badge){max-width:100%;white-space:normal}
  .profile-menu{position:fixed;top:68px;right:12px;left:auto;width:min(440px,calc(100vw - 24px));max-height:calc(100vh - 84px);max-height:calc(100dvh - 84px);overflow:auto}
  .profile.core-profile .core-profile-menu{right:12px;left:12px;width:auto;max-width:none;overflow:hidden}
  .modal-backdrop{padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}
  .modal-head,.modal-body{padding:16px}
  .form-actions{flex-wrap:wrap}
  .table-wrap{margin-inline:0}
  table:not(.no-responsive-table){display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
  td,th{overflow-wrap:normal;word-break:normal}
  .range-picker,.period-picker,.segmented{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .history-mini a{align-items:flex-start}
  .hero-row{align-items:stretch}
  .hero-actions{width:100%}
  .hero-actions>.button,.hero-actions>.btn{flex:1 1 180px}
}

@media(max-width:560px){
  .context-logo{width:84px!important;height:54px!important}
  .context-logo .career-logo{width:39px;height:38px}
  .card-head{gap:10px;padding:16px}
  .card-head>:first-child{flex-basis:100%}
  .card-body,.legal-copy{padding:16px}
  .empty,.empty-state{padding:32px 16px}
  .public-footer nav{row-gap:6px}
  .public-footer a{display:inline-flex;align-items:center}
  .site-footer{margin-top:42px;padding-top:38px}
  .site-footer .footer-grid{grid-template-columns:1fr}
  .site-footer .footer-brand{grid-column:auto}
  .site-footer .footer-col,.site-footer .footer-areas-col{display:block}
  .site-footer .footer-areas{grid-template-columns:1fr}
  .site-footer .footer-bottom{display:grid;margin-top:28px}
  .site-footer .logo{width:165px;height:91px}
}

@media(max-width:375px){
  .wrap{width:min(calc(100% - 24px),var(--max,1220px))!important}
  .nav{gap:8px!important}
  .context{padding:12px!important}
  .context-actions{grid-template-columns:minmax(0,1fr)!important}
  .context-actions>*{grid-column:auto!important}
  .context-track{gap:9px}
  .context-logo{width:72px!important;height:50px!important;padding:3px}
  .career-logo-stack{gap:4px}
  .career-logo{width:46px;height:37px}
  .card,.modal{border-radius:18px}
  .card-head,.card-body,.modal-head,.modal-body{padding:14px}
  .list,.exam-list,.history-list,.notification-list,.result-list,.breakdown{padding:12px!important}
  .notification{grid-template-columns:42px minmax(0,1fr)!important}
  .notification-time{grid-column:2!important;white-space:normal!important}
  .public-footer .wrap{gap:12px}
}

@media(hover:none){
  :where(.button,.btn,.card,.list-row,.exam-card,.price-card):hover{transform:none!important}
}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}
  .reveal{opacity:1!important;transform:none!important}
}
.reduce-motion,.reduce-motion *,.reduce-motion *::before,.reduce-motion *::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}
.reduce-motion .reveal{opacity:1!important;transform:none!important}

/* Relógio global: mantém a sessão visível ao navegar por outras áreas. */
body.has-global-study-timer{padding-bottom:0}
body.has-global-study-timer .site-footer{padding-bottom:calc(120px + env(safe-area-inset-bottom))}
.global-study-timer{
  position:fixed;
  z-index:75;
  right:max(18px,env(safe-area-inset-right));
  bottom:max(18px,env(safe-area-inset-bottom));
  width:min(520px,calc(100vw - 36px));
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:13px 14px;
  color:#fff;
  border:1px solid rgba(255,255,255,.2);
  border-radius:18px;
  background:linear-gradient(135deg,var(--ink,#05264d),#0b5269);
  box-shadow:0 18px 50px rgba(5,38,77,.28)
}
.global-study-timer[hidden]{display:none!important}
.global-study-timer-copy{min-width:0;display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:baseline}
.global-study-timer-copy>span{color:#bcd6df;font-size:10px;font-weight:900;text-transform:uppercase}
.global-study-timer-copy>strong{font-family:"Space Grotesk",sans-serif;font-size:22px;font-variant-numeric:tabular-nums}
.global-study-timer-copy>small{grid-column:1/-1;max-width:260px;margin-top:2px;color:#d8e8ed;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.global-study-timer-actions{display:flex;align-items:center;gap:7px;flex:0 0 auto}
.global-study-timer-actions button,.global-study-timer-actions a{min-height:42px;display:inline-flex;align-items:center;justify-content:center;padding:0 12px;border:1px solid rgba(255,255,255,.28);border-radius:11px;color:#fff;background:rgba(255,255,255,.1);font-size:11px;font-weight:900;text-decoration:none}
.global-study-timer-actions button:hover,.global-study-timer-actions a:hover{background:rgba(255,255,255,.18)}
.global-study-timer-actions :focus-visible{outline:3px solid #8de8c0;outline-offset:2px}

@media(max-width:620px){
  body.has-global-study-timer{padding-bottom:0}
  body.has-global-study-timer .site-footer{padding-bottom:calc(166px + env(safe-area-inset-bottom))}
  .global-study-timer{right:12px;bottom:max(12px,env(safe-area-inset-bottom));left:12px;width:auto;align-items:stretch;flex-direction:column;gap:9px}
  .global-study-timer-copy{grid-template-columns:1fr auto}
  .global-study-timer-copy>small{max-width:none}
  .global-study-timer-actions>*{flex:1}
}

@media(forced-colors:active){
  :where(button,a,input,select,textarea,[role="button"],[tabindex]):focus-visible{outline:3px solid Highlight!important}
  :where(.button,.btn,.card,.context,input,select,textarea){forced-color-adjust:auto}
}

/* V07 R2: consolida o sino sem descartar os ajustes visuais introduzidos na V03. */
.core-notification-bell,.v17-bell{position:relative;width:42px;height:42px;display:inline-grid;place-items:center;flex:0 0 42px;border:1px solid var(--line,#dbe9e3);border-radius:50%;color:var(--ink,#05264d);background:#fff;box-shadow:0 4px 14px rgba(5,38,77,.05);text-decoration:none;transition:border-color .18s,background .18s,color .18s,box-shadow .18s}
.core-notification-bell:hover,.core-notification-bell:focus-visible,.v17-bell:hover,.v17-bell:focus-visible{color:var(--green-dark,#008c68);border-color:#90cfb0;background:var(--green-soft,#e7fbf1);box-shadow:0 8px 22px rgba(5,38,77,.1);outline:0}
.core-notification-bell svg,.v17-bell svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.core-notification-count,.v17-bell>span{position:absolute;top:-4px;right:-4px;min-width:19px;height:19px;display:grid;place-items:center;padding:0 5px;border:2px solid #fff;border-radius:999px;color:#fff;background:#c73546;font-size:9px;font-weight:900;line-height:1}
.core-notification-count[hidden],.v17-bell>span[hidden]{display:none!important}
