
/* C2R v10: dashboard autenticado; escopo isolado */
body .c2r-auth-dashboard{max-width:1200px;padding:24px 15px 28px;color:#153e67;min-height:0}
body .c2r-auth-overview{display:grid;grid-template-columns:220px minmax(0,1fr) auto;gap:18px;align-items:center;margin-bottom:22px}
body .c2r-auth-illustration{height:155px;border:1px solid #d6e6f3;border-radius:8px;background:linear-gradient(140deg,#d5eafb,#f7fbff);display:flex;align-items:center;justify-content:center;gap:8px;color:#0d69ad;font-size:54px}
body .c2r-auth-illustration .glyphicon-lock{font-size:31px;align-self:flex-end;margin-bottom:33px}
body .c2r-auth-environment{padding:16px 18px;border:1px solid #dbe8f5;border-radius:8px;min-height:155px;background:#fff}
body .c2r-auth-eyebrow{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#477495}
body .c2r-auth-environment h1{font-size:27px;font-weight:700;color:#07578d;margin:8px 0}
body .c2r-auth-environment p{font-size:13px;color:#58748b;margin:7px 0}
body .c2r-auth-environment .c2r-auth-greeting{color:#174c78}
body .c2r-auth-status{padding:13px 15px;border:1px solid #d6e8f5;border-radius:8px;color:#16854d;background:#f4fcf7;font-size:12px;white-space:nowrap}
body .c2r-auth-section-title{font-size:20px;font-weight:700;color:#104f83;margin:0 0 4px}
body .c2r-auth-section-desc{font-size:12px;color:#617d94;margin:0 0 16px}
body .c2r-auth-modules{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
body .c2r-auth-module{min-height:122px;border:1px solid #d5e4f1;border-radius:8px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:12px 7px;text-align:center;gap:7px}
body .c2r-auth-module>.glyphicon{font-size:27px;color:#0873bf}
body .c2r-auth-module:nth-child(2)>.glyphicon{color:#6657ba}body .c2r-auth-module:nth-child(3)>.glyphicon{color:#2b9b56}body .c2r-auth-module:nth-child(4)>.glyphicon{color:#ed8c18}body .c2r-auth-module:nth-child(6)>.glyphicon{color:#555ac1}
body .c2r-auth-module strong{font-size:13px;color:#144b7d}body .c2r-auth-module small{font-size:10px;color:#647f94}
body .c2r-auth-footer{background:#094a80;color:#fff;padding:7px 0;margin:0}
body .c2r-auth-footer-inner{display:grid;grid-template-columns:1fr 1.4fr 1fr;align-items:center;gap:12px;min-height:33px}
body .c2r-auth-footer-brand{display:flex;align-items:center;gap:7px}body .c2r-auth-footer-brand img{width:30px;height:30px;object-fit:contain;background:#fff;border-radius:2px}body .c2r-auth-footer-brand strong{display:block;font-size:19px;line-height:18px}body .c2r-auth-footer-brand small{display:block;font-size:7px;letter-spacing:.03em;white-space:nowrap}
body .c2r-auth-footer-slogan{font-size:10px;text-align:center}body .c2r-auth-footer-session{display:flex;flex-direction:column;align-items:flex-end;font-size:10px;line-height:15px}
@media(max-width:991px){body .c2r-auth-overview{grid-template-columns:180px minmax(0,1fr)}body .c2r-auth-status{grid-column:1/-1}body .c2r-auth-modules{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){body .c2r-auth-overview{grid-template-columns:1fr}body .c2r-auth-illustration{height:110px}body .c2r-auth-modules{grid-template-columns:repeat(2,minmax(0,1fr))}body .c2r-auth-footer-inner{grid-template-columns:1fr 1fr}body .c2r-auth-footer-slogan{display:none}body .c2r-auth-footer-session{font-size:9px}}

/* v11: barra autenticada com identidade visual C2R; mantém HTML de permissões */
body:not(.c2r-pagina-publica) #mainNav.c2r-navbar{background:#084b83!important;border-color:#084b83!important;border-radius:0;min-height:50px}
body:not(.c2r-pagina-publica) #mainNav.c2r-navbar>.container{max-width:1200px;width:100%;margin-left:auto;margin-right:auto}
body:not(.c2r-pagina-publica) #mainNav .c2r-navbar-brand{display:flex;align-items:center;height:50px;padding:8px 15px}
body:not(.c2r-pagina-publica) #mainNav .c2r-navbar-brand img{max-height:34px;width:auto;object-fit:contain}
body:not(.c2r-pagina-publica) #mainNav .c2r-auth-menu>li>a{color:#fff!important;font-weight:600;font-size:13px;padding:15px 13px;line-height:20px}
body:not(.c2r-pagina-publica) #mainNav .c2r-auth-menu>li>a:hover,body:not(.c2r-pagina-publica) #mainNav .c2r-auth-menu>li.open>a,body:not(.c2r-pagina-publica) #mainNav .c2r-auth-menu>li.active>a{background:#0967ba!important;color:#fff!important;border-radius:4px}
body:not(.c2r-pagina-publica) #mainNav .c2r-auth-menu .dropdown-menu{background:#fff;border:1px solid #d5e4f1;box-shadow:0 5px 14px rgba(0,40,80,.15)}
body:not(.c2r-pagina-publica) #mainNav .c2r-auth-menu .dropdown-menu a{color:#16466e!important}
body:not(.c2r-pagina-publica) #mainNav .c2r-auth-menu .dropdown-menu a:hover{background:#eaf4ff!important}
/* v11: impede que regras legadas transformem as três colunas do rodapé em blocos empilhados */
body .c2r-auth-footer{padding:6px 0!important;min-height:45px!important;box-sizing:border-box}
body .c2r-auth-footer>.c2r-auth-footer-inner{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;flex-wrap:nowrap!important;max-width:1200px!important;width:100%!important;margin:0 auto!important;padding:0 15px!important;min-height:33px!important;gap:18px!important}
body .c2r-auth-footer .c2r-auth-footer-brand{display:flex!important;flex:0 0 29%!important;align-items:center!important;justify-content:flex-start!important;min-width:0!important}
body .c2r-auth-footer .c2r-auth-footer-slogan{display:block!important;flex:1 1 auto!important;text-align:center!important;min-width:0!important}
body .c2r-auth-footer .c2r-auth-footer-session{display:flex!important;flex:0 0 29%!important;flex-direction:column!important;align-items:flex-end!important;justify-content:center!important;text-align:right!important;line-height:14px!important;margin:0!important;white-space:nowrap}
body .c2r-auth-footer .c2r-auth-footer-session span{display:block!important;margin:0!important;padding:0!important}
@media(max-width:767px){body .c2r-auth-footer>.c2r-auth-footer-inner{gap:8px!important}body .c2r-auth-footer .c2r-auth-footer-brand{flex-basis:38%!important}body .c2r-auth-footer .c2r-auth-footer-slogan{display:none!important}body .c2r-auth-footer .c2r-auth-footer-session{flex-basis:60%!important;font-size:9px!important;white-space:normal}body:not(.c2r-pagina-publica) #mainNav .c2r-auth-menu>li>a{padding:10px 15px}}

/* C2R v12 — ajuste exclusivo do logotipo na barra autenticada.
   Não altera menus, permissões, templates ou rodapé. */
body:not(.c2r-pagina-publica) #mainNav.c2r-navbar .navbar-header > a.c2r-navbar-brand {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 50px !important;
  margin: 0 !important;
  padding: 7px 15px !important;
  box-sizing: border-box !important;
}
body:not(.c2r-pagina-publica) #mainNav.c2r-navbar .navbar-header > a.c2r-navbar-brand > img.c2r-brand {
  display: block !important;
  width: auto !important;
  height: 34px !important;
  max-width: 100px !important;
  max-height: 34px !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: contain !important;
  vertical-align: middle !important;
}

/* v13: logo autenticado — remove limite legado de 60px e conserva proporção 260:109. */
body:not(.c2r-pagina-publica) #mainNav.c2r-navbar .navbar-header > a.c2r-navbar-brand {width:126px!important;min-width:126px!important;padding:5px 15px!important;justify-content:flex-start!important;}
body:not(.c2r-pagina-publica) #mainNav.c2r-navbar .navbar-header > a.c2r-navbar-brand > img.c2r-brand {width:96px!important;min-width:96px!important;max-width:none!important;height:auto!important;max-height:40px!important;object-fit:contain!important;}
/* v13: página independente de veículos. */
.c2r-portao-veiculos{max-width:1200px;padding-top:22px;padding-bottom:28px}
.c2r-portao-heading{padding:0 0 12px;color:#104f83}
.c2r-portao-heading h2{font-size:25px;font-weight:700;margin:0 0 7px}
.c2r-portao-heading p{color:#59788e;margin:0}
.c2r-portao-panel{background:#fff;border:1px solid #d5e4f1;border-radius:8px;padding:18px;box-shadow:0 2px 9px rgba(12,61,103,.05)}
.c2r-portao-panel-title{font-weight:700;color:#154c7a;font-size:16px;margin-bottom:14px}
.c2r-portao-video{background:#eaf2f8;min-height:220px;display:flex;justify-content:center;align-items:center;border-radius:6px;overflow:hidden}
.c2r-portao-video object{display:block;width:100%;max-width:900px;height:480px}
.c2r-portao-note{font-size:12px;color:#617d94;margin:12px 0 0}
@media(max-width:767px){.c2r-portao-video object{height:270px}.c2r-portao-heading h2{font-size:21px}}

/* NS4: alinhar cabeçalho e rodapé na mesma grade de 1200px. */
body:not(.c2r-pagina-publica) .c2r-auth-footer>.container.c2r-auth-footer-inner{max-width:1200px;width:100%;margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;box-sizing:border-box}
@media(max-width:767px){body:not(.c2r-pagina-publica) .c2r-auth-footer>.container.c2r-auth-footer-inner{grid-template-columns:1fr;gap:5px;text-align:center}body:not(.c2r-pagina-publica) .c2r-auth-footer-brand{justify-content:center}}

/* C2R v14: barras azul limitadas a largura central (publica e autenticada). */
body #mainNav.c2r-navbar{max-width:1200px!important;width:100%!important;margin-left:auto!important;margin-right:auto!important;}
body .c2r-auth-footer,body .c2r-footer-publico{max-width:1200px!important;width:100%!important;margin-left:auto!important;margin-right:auto!important;}
body #mainNav.c2r-navbar>.container,body .c2r-auth-footer>.container,body .c2r-footer-publico>.container{width:100%!important;max-width:1170px!important;margin-left:auto!important;margin-right:auto!important;}
@media(max-width:767px){body #mainNav.c2r-navbar,body .c2r-auth-footer,body .c2r-footer-publico{max-width:100%!important;}}

/* C2R v15: o fundo da aplicacao nao ultrapassa a largura central. */
body:not(.c2r-pagina-publica){background:#fff!important;}
body:not(.c2r-pagina-publica) .container.ns4-screen{background:#ded8e0!important;box-sizing:border-box;padding-top:16px;padding-bottom:20px;}
body:not(.c2r-pagina-publica) .c2r-auth-dashboard{background:#ded8e0!important;}
/* A barra de retorno deve ocupar a mesma largura do conteudo, nao a viewport. */
body:not(.c2r-pagina-publica) .c2r-return-outer{width:100%!important;max-width:none!important;padding:0!important;margin:0 0 14px!important;}
body:not(.c2r-pagina-publica) .c2r-return-outer .ns4-returnbar{margin:0!important;}
/* Em telas com conteudo menor, o retorno fica na mesma borda esquerda do titulo. */
body:not(.c2r-pagina-publica) .ns4-screen .c2r-cams,
body:not(.c2r-pagina-publica) .ns4-screen .ns4-gates{box-sizing:border-box;}

/* C2R v16: UMA unica coluna visual para todas as telas autenticadas.
   A largura externa fica branca; apenas a regiao de conteudo recebe lilas. */
html, body { overflow-x: hidden; }
body:not(.c2r-pagina-publica),
body:not(.c2r-pagina-publica) #geral { background: #fff !important; }
body:not(.c2r-pagina-publica) #jumbotron {
  width: 100% !important; max-width: 1200px !important;
  margin: 0 auto !important; box-sizing: border-box !important;
  background: #ded8e0 !important; min-height: 0;
  padding: 16px 15px 20px !important;
}
/* Remove fundos independentes que criavam faixas laterais fora do eixo. */
body:not(.c2r-pagina-publica) #jumbotron .container.ns4-screen,
body:not(.c2r-pagina-publica) #jumbotron .c2r-auth-dashboard {
  background: transparent !important;
}
/* Todos os retornos usam a mesma borda esquerda do conteudo (15px). */
body:not(.c2r-pagina-publica) #jumbotron > .c2r-return-outer,
body:not(.c2r-pagina-publica) #jumbotron > .container.ns4-screen > .c2r-return-outer {
  max-width: 1170px !important; width: 100% !important;
  margin: 0 auto 12px !important; padding: 0 !important;
  box-sizing: border-box !important;
}
body:not(.c2r-pagina-publica) #jumbotron .ns4-returnbar {
  margin: 0 0 12px !important;
}
body:not(.c2r-pagina-publica) #jumbotron .container.ns4-screen {
  width: 100% !important; max-width: 1170px !important;
  margin: 0 auto !important; padding: 0 !important;
}
/* Conteudo de camera/portao continua centralizado; retorno nao acompanha largura do card. */
body:not(.c2r-pagina-publica) #jumbotron .c2r-cams,
body:not(.c2r-pagina-publica) #jumbotron .ns4-gates { margin-left: auto !important; margin-right: auto !important; }
@media (max-width: 767px) {
 body:not(.c2r-pagina-publica) #jumbotron {padding: 12px 12px 18px !important;}
}
