/* Camada reversível de apresentação. O layout anterior não recebe as regras V2. */
.iv-nav, .iv-toolbar[hidden], .iv-nav[hidden], .iv-destino[hidden] { display:none !important; }
.iv-toolbar { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 24px; color:#b7c4df; border-bottom:1px solid #ffffff0c; font-size:12px; }
.iv-toolbar > div { display:flex; align-items:center; gap:7px; min-width:0; }
.iv-ponto { width:7px; height:7px; border-radius:50%; background:#34e2a3; box-shadow:0 0 12px #34e2a366; }
.iv-toolbar button, .iv-sheet-version { min-height:40px; padding:8px 13px; background:#1c263e; border:1px solid #344363; color:#e9efff; border-radius:10px; cursor:pointer; font:inherit; }
.iv-toolbar button span { margin-left:8px; color:#a9bbff; }
.iv-escolha { border:0; margin:4px 0 16px; padding:0; min-width:0; }
.iv-escolha legend { color:#edf2ff; font-size:14px; margin-bottom:12px; font-weight:700; }
.iv-opcao { position:relative; display:flex; align-items:center; gap:10px; padding:13px 12px; border:1px solid #34415d; border-radius:12px; margin-bottom:9px; cursor:pointer; text-align:left; }
.login-box .iv-opcao input { width:17px; height:17px; flex:0 0 17px; margin:0; accent-color:#89a1ff; }
.iv-opcao:has(input:checked) { border-color:#819cff; background:#6387ff15; box-shadow:0 0 0 1px #819cff33; }
.iv-opcao b { font-size:13px; display:block; color:#f1f4ff; }
.iv-opcao small { display:block; font-size:11px; line-height:1.5; color:#a8b6d1; margin-top:4px; }
.iv-escolha p { color:#a8b6d1; font-size:11px; line-height:1.6; margin-top:12px; }
.iv-novo { font-size:9px; letter-spacing:1px; padding:4px 6px; color:#66f3c0; background:#34e2a319; border:1px solid #34e2a32a; border-radius:5px; font-weight:800; margin-left:auto; }
#login-screen { overflow-y:auto; padding:24px 16px; }
.login-box { width:min(430px,100%); flex-shrink:0; margin:auto; }
.iv-dialog { margin:auto; width:min(560px,calc(100% - 28px)); max-height:calc(100dvh - 32px); padding:25px; color:#edf2ff; background:#141d30; border:1px solid #3a496a; border-radius:22px; box-shadow:0 32px 100px #0009; font-family:var(--font-ui); }
.iv-dialog::backdrop { background:#050915b5; backdrop-filter:blur(5px); }
.iv-dialog-head { display:flex; justify-content:space-between; align-items:flex-start; gap:15px; }
.iv-dialog-head p { color:#67e4bf; font-size:10px; letter-spacing:1.5px; font-weight:800; margin:0 0 8px; }
.iv-dialog-head h2 { font:700 19px/1.4 var(--font-display); }
.iv-dialog-head > button { flex:0 0 40px; height:40px; background:#ffffff08; border:1px solid #34415d; border-radius:10px; color:#dce6ff; font-size:24px; cursor:pointer; }
.iv-dialog-intro, .iv-dialog-note { font-size:12px; color:#abb9d5; line-height:1.7; margin:17px 0; }
.iv-dialog-note { font-size:11px; margin-bottom:0; }
.iv-picker-options { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.iv-picker-options > button { position:relative; text-align:left; display:flex; flex-direction:column; align-items:flex-start; gap:11px; padding:18px; border:1px solid #394b70; border-radius:15px; background:#0e1628; color:#eef4ff; cursor:pointer; font-family:inherit; }
.iv-picker-options > button[aria-pressed="true"] { background:#6486ff17; border-color:#8ba5ff; }
.iv-picker-options b { font-size:15px; }
.iv-picker-options small { font-size:12px; line-height:1.7; color:#acbbd6; }
.iv-option-state { margin-top:auto; font-size:11px; color:#9fb8ff; padding-top:10px; }
.iv-picker-options .iv-novo { margin:0; }
.iv-destino { display:flex; align-items:center; gap:12px; background:transparent; border:1px solid transparent; border-radius:12px; color:#99abc9; font:inherit; cursor:pointer; text-align:left; padding:13px; min-height:54px; width:100%; }
.iv-destino svg { width:22px; height:22px; flex:0 0 22px; }
.iv-destino b { font-size:13px; font-weight:650; }
.iv-destino small { display:block; font-size:10px; line-height:1.5; color:#8fa1bd; margin-top:4px; }
.iv-destino:hover { background:#ffffff07; color:#e9f0ff; }
.iv-destino[aria-current="page"] { background:linear-gradient(105deg,#688cff27,#9c81ff0d); color:#d3e0ff; border-color:#8ba5ff33; }
.iv-destino[aria-current="page"] svg { color:#8eb0ff; }
.iv-sheet-links { display:grid; gap:7px; margin:18px 0; }
.iv-sheet-links .iv-destino { background:#0c1425; border-color:#283a58; }
.iv-sheet-version { width:100%; font-size:13px; }
.iv-dialog button:focus-visible, .iv-toolbar button:focus-visible, .iv-nav button:focus-visible, .iv-opcao:focus-within { outline:2px solid #a8c0ff; outline-offset:3px; }
html[data-interface="mobile"] { scroll-padding-bottom:100px; }
html[data-interface="mobile"] nav.tabs { display:none; }
html[data-interface="mobile"] .iv-nav:not([hidden]) { display:flex !important; flex-direction:column; position:fixed; z-index:45; left:16px; top:100px; bottom:20px; width:218px; padding:18px 12px; gap:6px; border:1px solid #a2b8f01a; border-radius:22px; background:linear-gradient(155deg,#182239f7,#0c1425fa); backdrop-filter:blur(18px); box-shadow:0 16px 50px #0003; overflow-y:auto; }
html[data-interface="mobile"] .iv-marca { display:flex; gap:10px; align-items:center; padding:3px 7px 20px; font:750 12px var(--font-display); letter-spacing:1.3px; color:#f0f4ff; }
.iv-marca img { border-radius:12px; }
.iv-marca small { display:block; margin-top:6px; font:600 8px var(--font-ui); letter-spacing:1.1px; color:#87a1c5; }
.iv-nav-legenda { font-size:8px; color:#8194b6; letter-spacing:1.1px; margin:4px 12px 10px; }
.iv-nav-rodape { margin:auto 12px 4px; padding-top:24px; font-size:11px; line-height:1.8; color:#8c9fbe; }
.iv-nav .iv-mais { display:none; }
html[data-interface="mobile"] body > main { margin-left:250px; padding:18px 26px 60px 0; }
html[data-interface="mobile"] body > header { margin-left:250px; padding:20px 24px 16px 0; text-align:left; display:flex; flex-wrap:wrap; align-items:center; gap:8px 12px; }
html[data-interface="mobile"] body > header h1, html[data-interface="mobile"] body > header .sub { flex-basis:100%; }
html[data-interface="mobile"] #relogio { margin-top:6px; }
html[data-interface="mobile"] #user-badge, html[data-interface="mobile"] #sessao-timer { position:static; margin:6px 0 0; }
html[data-interface="mobile"] body > header h1 { font-size:clamp(17px,1.65vw,25px); letter-spacing:.2px; }
html[data-interface="mobile"] body > header .sub { font-size:12px; }
html[data-interface="mobile"] .iv-toolbar { margin-left:250px; padding-left:0; }
html[data-interface="mobile"] .card { border-radius:18px; }
html[data-interface="mobile"] .lojinha-hero { background:linear-gradient(115deg,#1f3153,#171f35); color:#eff5ff; border:1px solid #7e9ed52b; }
html[data-interface="mobile"] .lojinha-hero p { color:#afc0dc; }
@media (max-width:900px) {
  .iv-toolbar { padding:10px 16px; font-size:11px; }
  .iv-toolbar-dica { display:none; }
  html[data-interface="mobile"] .iv-toolbar, html[data-interface="mobile"] body > header, html[data-interface="mobile"] body > main { margin-left:0; }
  html[data-interface="mobile"] .iv-toolbar { padding:10px 16px; }
  html[data-interface="mobile"] body > header { padding:18px 16px 14px; }
  html[data-interface="mobile"] body > header h1 { font-size:18px; max-width:350px; line-height:1.5; }
  html[data-interface="mobile"] body > header .sub { line-height:1.7; }
  html[data-interface="mobile"] body > main { padding:14px 14px calc(112px + env(safe-area-inset-bottom)); }
  html[data-interface="mobile"] .iv-nav:not([hidden]) { inset:auto 10px calc(8px + env(safe-area-inset-bottom)); width:auto; flex-direction:row; justify-content:space-around; align-items:stretch; padding:6px; gap:2px; border-radius:22px; overflow:visible; }
  .iv-nav .iv-marca, .iv-nav .iv-nav-legenda, .iv-nav .iv-nav-rodape, .iv-nav .iv-secundario { display:none !important; }
  .iv-nav .iv-mais { display:flex; }
  .iv-nav .iv-destino { flex:1 1 0; width:0; min-width:0; min-height:58px; flex-direction:column; gap:4px; justify-content:center; text-align:center; padding:7px 2px; border-radius:16px; }
  .iv-nav .iv-destino b { font-size:10px; }
  .iv-nav .iv-destino small { display:none; }
  .iv-sheet { margin:auto auto 0; width:100%; max-height:85dvh; border-radius:24px 24px 0 0; padding:25px 20px calc(24px + env(safe-area-inset-bottom)); }
  html[data-interface="mobile"] main input, html[data-interface="mobile"] main select { min-height:44px; font-size:16px; }
  html[data-interface="mobile"] main .btn { min-height:42px; }
}
@media (max-width:420px) {
  .iv-picker-options { grid-template-columns:1fr; }
  .iv-picker-options > button { padding:14px; gap:8px; }
  .iv-dialog { padding:20px; }
  .iv-dialog-head h2 { font-size:17px; }
  .iv-toolbar button { font-size:11px; }
  .iv-toolbar { gap:6px; }
}
@media (max-height:700px) {
  #login-screen { align-items:flex-start; }
}
/* Versão única (27/09/2026): sem escolha de versão; "Trocar senha" e "Sair da conta" sempre à vista */
.iv-escolha, .iv-toolbar, #user-menu button[onclick*="abrirSeletor"] { display:none !important; }
.iv-nav-conta { display:grid; gap:4px; margin-top:auto; padding-top:10px; border-top:1px solid #ffffff12; }
.iv-nav-conta + .iv-nav-rodape { margin-top:12px; }
.iv-nav-conta .iv-destino { min-height:46px; padding:10px 13px; }
.iv-sheet-conta { display:grid; gap:7px; margin:0 0 4px; padding-top:14px; border-top:1px solid #ffffff12; }
.iv-sheet-conta .iv-destino { background:#0c1425; border-color:#283a58; }
.iv-destino.iv-sair { color:#ffb4c2; }
.iv-destino.iv-sair svg { color:#ff8fa6; }
@media (max-width:900px) {
  .iv-nav .iv-nav-conta { display:none !important; }
}
@media print {
  .iv-nav, .iv-toolbar, .iv-dialog { display:none !important; }
  html[data-interface="mobile"] body > main, html[data-interface="mobile"] body > header { margin-left:0; }
}
