@import url('fonts.css');

:root {
  --app-header-height: 3.7rem;
}

html,
body {
  min-height: 100%;
  height: 100%;
}

.app {
  height: 100%;
}

div[data-reactroot] {
  height: 100%;
}

h1.ui.title {
  border-left: 3px solid var(--sicar-primary);
  background-color: #ffffff;
  border-bottom-width: 0;
  padding: .5em;
  box-shadow: 0 1px 2px 0 rgba(34, 36, 38, .15);
  font-size: 1.714rem;
}

.full.height {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  height: 100%;
}

.site-layout {
  --app-footer-height: 44px;
  box-sizing: border-box;
  height: 100%;
  padding-top: var(--app-header-height);
  padding-bottom: var(--app-footer-height);
}

.site-layout .full.height {
  height: 100%;
  min-height: 0;
  overflow: hidden;
}

.site-layout .article {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 auto;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  min-height: 0;
  min-width: 0px;
  margin: 1.3rem;
  overflow: auto;
  padding-top: 0;
  position: relative;
  z-index: 1;
}

.ui.top.fixed.menu {
  box-shadow: 0 1px 6px rgba(0, 0, 0, .2);
}

.ui.menu .green.active.item,
.ui.green.menu .active.item {
  border-color: var(--sicar-primary) !important;
  color: var(--sicar-primary) !important;
}

.ui.green.menu>.selected.item,
.ui.menu>.green.selected.item {
  border-color: var(--sicar-primary) !important;
  color: var(--sicar-primary) !important;
}

.ui.menu> .item.logo {
  padding: 2px;
}

.ui.menu>.selected.item {
  background-color: rgba(0, 0, 0, .05);
}

.ui.vertical.menu>.selected.item {
  border-right-width: 3px;
  border-right-style: solid;
}

.ui.inverted.menu .green.active.item,
.ui.inverted.green.menu {
  border-bottom: 4px solid var(--sicar-primary);
  background-color: var(--sicar-primary-light) !important;
}

.ui.inverted.green.menu .item {
  color: var(--sicar-primary) !important;
}

.ui.inverted.green.menu .item .ui.basic.inverted.button {
  color: var(--sicar-primary) !important;
  border-color: var(--sicar-primary) !important;
  box-shadow: 0px 0px 0px 2px var(--sicar-primary) inset !important;
}

.ui.inverted.menu .active.item:hover {
    color: #000000 !important;
}

#menu {
  transition: all 0.9s ease;
  position: relative;
  width: 15rem;
  min-width: 15rem;
  height: 100%;
  z-index: 20;
  pointer-events: auto;
}

#menu>.menu {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  transition: all 0.9s ease;
  height: 100%;
  z-index: 21;
  pointer-events: auto;
}

.app-version-center {
  align-items: center;
  background: #e0e0e0;
  color: #666;
  display: flex;
  font-size: 10px;
  height: 26px;
  justify-content: center;
  left: 0;
  padding: 0 16px;
  position: fixed;
  text-align: center;
  bottom: 0;
  width: 100%;
  z-index: 998;
}

.site-layout .app-version-center {
  height: var(--app-footer-height);
}

#menu.esconde-menu {
  width: 0;
  min-width: 0;
}

#menu.esconde-menu>.menu {
  left: -15rem;
}

.ui.messages {
  position: fixed;
  top: calc(var(--app-header-height) + 0.5rem);
  right: 2em;
  width: 40%;
  z-index: 9999;
  -webkit-filter: none !important;
  filter: none !important;
  /* Sem pointer-events no container, ele intercepta cliques na regiao
     de 40% da largura mesmo quando vazio (ou enquanto toasters somem)
     — bloqueando interacao com botoes/elementos embaixo. Cada toaster
     individual tem pointer-events: auto restaurado abaixo. */
  pointer-events: none;
}

.ui.messages .ui.message {
  /* Cada toaster individual eh clicavel (botao X, hover etc) */
  pointer-events: auto;
}

/* Quando o toaster esta animando saida (`out`) ou ja escondido (`hidden`),
   permanece no DOM por mais ~300ms ate ser removido. Nesse periodo,
   `pointer-events: auto` faz ele bloquear cliques em elementos abaixo
   (especialmente quando ha varios toasters acumulados em estado out).
   Desabilitamos cliques nesse estado. */
.ui.messages .ui.message.out,
.ui.messages .ui.message.hidden {
  pointer-events: none;
}

/* Espaco a direita pra o X de fechar nao colar na borda */
.ui.messages .ui.message {
  padding-right: 2.5em;
}

/* O X de fechar do toaster eh um <i> icon pequeno (~1em) por default,
   muito dificil de clicar. Aumentamos o hit area com padding e afastamos
   da borda (top/right). */
.ui.messages .ui.message > i.close.icon {
  cursor: pointer;
  padding: 0.5em;
  top: 0.5em;
  right: 0.5em;
  font-size: 1.1em;
}
.ui.messages .ui.message > i.close.icon:hover {
  opacity: 0.7;
}

.ui.center.messages {
  right: 30%;
}

.ui.message.floating {
  box-shadow: 0 0 0 1px rgba(34, 36, 38, .22) inset, 0 2px 4px 0 rgba(34, 36, 38, .12), 0 2px 10px 0 rgba(34, 36, 38, .15);
}


.ui.message.compact {
  padding: 0.5em;
}

.ui.checkbox {
  padding: 0 1em 0 0;
}


/* DayPicker styles */

.DayPicker {
  outline: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
  padding: 1rem 0;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.DayPicker-Month {
  display: table;
  border-collapse: collapse;
  border-spacing: 0;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  margin: 0 1rem;
}

.DayPicker-NavBar {
  position: absolute;
  left: 0;
  right: 0;
  padding: 0 .5rem;
}

.DayPicker-NavButton {
  position: absolute;
  width: 1.5rem;
  height: 1.5rem;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  cursor: pointer;
}

.DayPicker-NavButton--prev {
  left: 1rem;
  background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjxzdmcgd2lkdGg9IjI2cHgiIGhlaWdodD0iNTBweCIgdmlld0JveD0iMCAwIDI2IDUwIiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHhtbG5zOnNrZXRjaD0iaHR0cDovL3d3dy5ib2hlbWlhbmNvZGluZy5jb20vc2tldGNoL25zIj4KICAgIDwhLS0gR2VuZXJhdG9yOiBTa2V0Y2ggMy4zLjIgKDEyMDQzKSAtIGh0dHA6Ly93d3cuYm9oZW1pYW5jb2RpbmcuY29tL3NrZXRjaCAtLT4KICAgIDx0aXRsZT5wcmV2PC90aXRsZT4KICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPgogICAgPGRlZnM+PC9kZWZzPgogICAgPGcgaWQ9IlBhZ2UtMSIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc2tldGNoOnR5cGU9Ik1TUGFnZSI+CiAgICAgICAgPGcgaWQ9InByZXYiIHNrZXRjaDp0eXBlPSJNU0xheWVyR3JvdXAiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEzLjM5MzE5MywgMjUuMDAwMDAwKSBzY2FsZSgtMSwgMSkgdHJhbnNsYXRlKC0xMy4zOTMxOTMsIC0yNS4wMDAwMDApIHRyYW5zbGF0ZSgwLjg5MzE5MywgMC4wMDAwMDApIiBmaWxsPSIjNTY1QTVDIj4KICAgICAgICAgICAgPHBhdGggZD0iTTAsNDkuMTIzNzMzMSBMMCw0NS4zNjc0MzQ1IEwyMC4xMzE4NDU5LDI0LjcyMzA2MTIgTDAsNC4yMzEzODMxNCBMMCwwLjQ3NTA4NDQ1OSBMMjUsMjQuNzIzMDYxMiBMMCw0OS4xMjM3MzMxIEwwLDQ5LjEyMzczMzEgWiIgaWQ9InJpZ2h0IiBza2V0Y2g6dHlwZT0iTVNTaGFwZUdyb3VwIj48L3BhdGg+CiAgICAgICAgPC9nPgogICAgPC9nPgo8L3N2Zz4K");
}

.DayPicker-NavButton--next {
  right: 1rem;
  background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjxzdmcgd2lkdGg9IjI2cHgiIGhlaWdodD0iNTBweCIgdmlld0JveD0iMCAwIDI2IDUwIiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHhtbG5zOnNrZXRjaD0iaHR0cDovL3d3dy5ib2hlbWlhbmNvZGluZy5jb20vc2tldGNoL25zIj4KICAgIDwhLS0gR2VuZXJhdG9yOiBTa2V0Y2ggMy4zLjIgKDEyMDQzKSAtIGh0dHA6Ly93d3cuYm9oZW1pYW5jb2RpbmcuY29tL3NrZXRjaCAtLT4KICAgIDx0aXRsZT5uZXh0PC90aXRsZT4KICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPgogICAgPGRlZnM+PC9kZWZzPgogICAgPGcgaWQ9IlBhZ2UtMSIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc2tldGNoOnR5cGU9Ik1TUGFnZSI+CiAgICAgICAgPGcgaWQ9Im5leHQiIHNrZXRjaDp0eXBlPSJNU0xheWVyR3JvdXAiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAuOTUxNDUxLCAwLjAwMDAwMCkiIGZpbGw9IiM1NjVBNUMiPgogICAgICAgICAgICA8cGF0aCBkPSJNMCw0OS4xMjM3MzMxIEwwLDQ1LjM2NzQzNDUgTDIwLjEzMTg0NTksMjQuNzIzMDYxMiBMMCw0LjIzMTM4MzE0IEwwLDAuNDc1MDg0NDU5IEwyNSwyNC43MjMwNjEyIEwwLDQ5LjEyMzczMzEgTDAsNDkuMTIzNzMzMSBaIiBpZD0icmlnaHQiIHNrZXRjaDp0eXBlPSJNU1NoYXBlR3JvdXAiPjwvcGF0aD4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPgo=");
}

.DayPicker-Caption {
  display: table-caption;
  height: 1.5rem;
  text-align: center;
}

.DayPicker-Weekdays {
  display: table-header-group;
}

.DayPicker-WeekdaysRow {
  display: table-row;
}

.DayPicker-Weekday {
  display: table-cell;
  padding: .5rem;
  font-size: .875em;
  text-align: center;
  color: #8b9898;
}

.DayPicker-Body {
  display: table-row-group;
}

.DayPicker-Week {
  display: table-row;
}

.DayPicker-Day {
  display: table-cell;
  padding: .5rem;
  border: 1px solid #eaecec;
  text-align: center;
  cursor: pointer;
  vertical-align: middle;
}

.DayPicker-Day:hover {
  background-color: #f5f5f5;
}

.DayPicker--interactionDisabled .DayPicker-Day {
  cursor: default;
}


/* Default modifiers */

.DayPicker-Day--today {
  color: #d0021b;
  font-weight: 700;
}

.DayPicker-Day--disabled {
  color: #dce0e0;
  cursor: default;
  background-color: #eff1f1;
}

.DayPicker-Day--outside {
  cursor: default;
  color: #dce0e0;
}


/* Example modifiers */

.DayPicker-Day--sunday {
  background-color: #f7f8f8;
}

.DayPicker-Day--sunday:not(.DayPicker-Day--today) {
  color: #dce0e0;
}

.DayPicker-Day--selected:not(.DayPicker-Day--disabled):not(.DayPicker-Day--outside) {
  color: #ffffff;
  background-color: #4A90E2;
}

.popup-day-picker-container {
  position: relative;
}

div.popup-day-picker {
  visibility: hidden;
  opacity: 0;
  transition: visibility 0s, opacity .5s linear;
  top: 100% !important;
}

.popup-day-picker.visible {
  visibility: visible;
  opacity: 1;
}

.ui.form .field .prompt.label {
  border: 0 !important;
  padding: 0;
  margin-top: 0 !important;
  display: block;
}

.ui.icon.label i.icon{
  margin: 0;
}

.pagify-pagination {
  margin: 0em;
  text-align: right;
}

.pagify-pagination div {
  display: inline;
}

.pagify-pagination span {
  padding: 6px 10px;
  cursor: pointer;
  cursor: hand;
  border: solid 1px #dddddd;
  color: var(--sicar-primary);
  background: #ffffff;
  width: 15px;
}

.pagify-pagination .ellipsis {
  padding: 6px 10px;
  background: inherit;
  cursor: default;
  border: solid 1px #dddddd;
  text-align: center;
  color: var(--sicar-primary);
}

.pagify-pagination a {
  text-decoration: none;
}

.pagify-pagination .selected span {
  background: var(--sicar-primary);
  color: #ffffff;
  border-color: var(--sicar-primary);
  cursor: default;
}

table.ui.table.celled thead.thead th {
  background-color: #dddddd !important;
  color: #555555 !important;
}

.ui.search.dropdown>input.search {
  width: 100% !important;
}

.ui.inverted.grey.button {
  color: #999999;
}

.ui.button.white {
  color: rgba(0,0,0,.95);
  background-color: #ffffff;
  box-shadow: 0px 1px 2px 0 rgba(34, 36, 38, 0.15), 0px 0px 0px 1px rgba(34, 36, 38, 0.15);
}

.ui.form .fields.error .selectize-input, 
.ui.form .field.error .selectize-input {
  background: #FFF6F6;
  border-color: #E0B4B4;
  color: #9F3A38;
  /*border-radius: '';*/
  box-shadow: none;
}

.ui.label>.detail {
  margin-left: 0.5em;
}

.ui.link{
  text-decoration: none;
}
.ui.link:hover{
  text-decoration: underline;
}

#filters button,
.ui.fluid.padded.input button {
  margin-left: 0.2em;
  margin-right: 0.2em;
}

.listTextCount {
  color: #555;
}

/* Popup (tooltip): precisa ficar acima de qualquer modal aberto.
   Modais comecam em z-index 1002. 2050 cobre qualquer caso real de modais empilhados. */
.ui.popup {
  z-index: 2050;
}




.page.fullscreen {
  position: absolute;
  top: 70px;
  height: calc(100% - 85px);
  right: 1.3em;
  left: 1.3em;


}

.ui.modal.principal,
.modal-container {
  -webkit-filter: none !important;
  filter: none !important;
}

.ui.ribbon.label {
  margin-bottom: 0.8em;
}

.ui.transition-analise {
  -webkit-transition: all 1s ease;
  -moz-transition: all 1s ease;
  -o-transition: all 1s ease;
  transition: all 1s ease;
}

.ui.notifications .ui.grid .column {
  padding-top: 0.6rem;
  padding-bottom: 0.6rem;
}

.ui.notifications .header {
  font-weight: bold;
}

.ui.notifications.bottom.right.popup:before {
  right: 2em;
}

.ui.steps {
  box-shadow: 0 1px 2px 0 rgba(34, 36, 38, .15);
}

.ui.steps .step {
  padding-right: 15px;
}

.ui.mini.seven.steps .step,
.ui.mini.seven.steps .step .title {
  font-size: 0.87rem;
}

.ui.seven.steps .step {
  padding-top: 1.3em;
  padding-bottom: 1.3em;
  padding-left: 1.2em;
  padding-right: 1.2em;
}

.ui.seven.steps .step .status {
  width: 3.5em;
}

/* Pending: sem passed/active/completed/disabled — etapa ainda não iniciada */
.ui.steps .step:not(.passed):not(.active):not(.completed):not(.disabled):before,
.ui.steps .step:not(.passed):not(.active):not(.completed):not(.disabled),
.ui.steps .step:not(.passed):not(.active):not(.completed):not(.disabled):after,
.ui.steps .step:not(.passed):not(.active):not(.completed):not(.disabled) .title {
  background-color: var(--car-step-pending-bg) !important;
  color: var(--car-step-pending-color) !important;
}

.step.passed:before,
.step.passed,
.step.passed:after,
.step.passed .title {
  background-color: var(--car-step-passed) !important;
  color: #ffffff !important;
}

/* Steps "disabled" = nao acessiveis ainda (etapa anterior nao salva).
   Brancas pra deixar claro que nao podem ser clicadas. */
.step.disabled:before,
.step.disabled,
.step.disabled:after,
.step.disabled .title {
  background-color: #ffffff !important;
  color: #b0b8c4 !important;
  cursor: not-allowed !important;
}

.step.active:before,
.step.active,
.step.active:after,
.step.active .title {
  background-color: var(--car-step-active) !important;
  color: #ffffff !important;
}

.step.active .icon {
  color: #ffffff !important;
}

.step .status {
  width: 5em;
  text-align: right;
}

.overlay {
  transition: right 0.8s ease;
  right: 0;
}

.overlay.fixed .content-unfixed {
  display: none;
}

.overlay:not(.fixed) .content-fixed {
  display: none;
}

.overlay.fixed .content-fixed {
  display: block;
  margin-top: 0.6em;
  white-space: nowrap;
}

.ui.large.text {
  font-size: 1.2em;
}

.fixed.overlay {
  position: fixed;
  padding: 1em;
  background: #F3F4F5;
  border: 1px solid rgba(34, 36, 38, 0.15);
  box-shadow: 0 2px 4px 0 rgba(34, 36, 38, .12), 0 2px 10px 0 rgba(34, 36, 38, .15);
  border-radius: .28571429rem;
  right: 20px !important;
  max-width: 165px !important;
  text-align: center !important;
}



.debug .column{
  border: 1px red dotted;
}

.ui[class*="single line"],
.ui [class*="single line"] {
  white-space: nowrap;
}
.ui.clearing {
  clear: both;
}

.ui.dimmer.spinner {
  display: block !important;
  transition: all 0.5s ease;
}

.ui.dimmer.spinner.visible{
  background-color: rgba(255, 255, 255, 0.5);
  visibility: visible;
  opacity: 1;
}

.ui.dimmer.spinner.invisible{
  visibility: hidden;
  background-color: rgba(255, 255, 255, 0.0);
  opacity: 0;
}

/*LEAFLET */

.leaflet-popup-content-wrapper {
 border-radius: .28571429rem !important; 
}

.ui.modal.fullscreen.desenhador {
  will-change: unset;
  top: 3rem !important;
  bottom: 6rem !important;
  margin: 0 !important;
}

.localizador {
  border: 1px solid rgba(34, 36, 38, 0.15);
  border-radius: .28571429rem;
  min-height: 400px;
}

.analise-tecnica {
  border: 1px solid rgba(34, 36, 38, 0.15);
  border-radius: .28571429rem;
 /* min-height: 500px;*/
  height: 100%;
  position: relative;
}

.analise-tecnica .leaflet-container {
  height: 100%;
  width: 100%;
}

.geometry-geojson {
  -webkit-transition: stroke-opacity, fill-opacity .3s linear;
  -moz-transition: stroke-opacity, fill-opacity .3s linear;
  -o-transition: stroke-opacity, fill-opacity .3s linear;
  transition: stroke-opacity, fill-opacity .3s linear;
}

.APPD.geometry-geojson:hover{
 --webkit-svg-shadow: 0 0 7px #53BE12;
  
}

.geometry-geojson2:hover {
  stroke:#fff;
}

.map-controls {
  position: absolute;
  z-index: 1000;
  right: 0;
  top: 0;
  width: 100%;
  height: 0;
  overflow: visible;
}

.ui.layers-control {
  float: right;
  width: 300px;
  margin-top: 10px;
  margin-right: 10px;
}

.layers-control svg.legend {
  box-shadow: 0 0 3px #aaa;
}

.layers-control .accordion {
  position: absolute;
  top: 40px;
  right: 0;
  z-index: 1001;
  width: 300px !important;
}

.layers-control .accordion .content {
  overflow-y: auto;
  display: block;
  height: auto;
  max-height: 188px;
}

.layers-control .accordion .title {
  display: block;
}

.layers-control .accordion .title .ui.checkbox {
  padding-top: 3px;
  margin-right: 3px;
}

.ui.identify-control {
  position: absolute !important;
  margin: 0;
  top: 40px;
  right: 0;
  width: 320px !important;
}

.mapa-car-dinamizado .map-controls .ui.identify-control {
  right: 20px;
  top: 80px;
}

.mapa-car-dinamizado .map-controls .ui.layers-control {
  margin-right: 10px;
  margin-top: 10px;
}

.mapa-car-dinamizado .ui.accordion.layers-list {
  margin-right: 20px;
  margin-top: 40px;
}

/*DROP ZONE*/
.singleline-fileitem .filepicker {
  padding: 0;
}

div.filepicker {
  -webkit-transition: all .5s ease;
  -moz-transition: all .5s ease;
  -o-transition: all .5s ease;
  transition: all .5s ease;

  text-align: center;
  padding: 5px;
  background-color: #f4f4f4;
  border-radius: 5px;
  min-height: inherit;
  border: 1px dashed #c7c7c7;
}

div.filepicker.dropzone .dz-message {
    text-align: center;
    margin: 0.5rem 0;
}

/* Dropzone v5 envolve o dictDefaultMessage num <button class="dz-button"> com
   estilo nativo do browser (fundo escuro, borda). Resetamos pra ele parecer
   texto puro dentro da dropzone, mantendo o cursor pointer pra UX. */
div.filepicker.dropzone .dz-button {
  background: none;
  border: none;
  color: inherit;
  font: inherit;
  padding: 0;
  cursor: pointer;
}

div.filepicker.dropzone .dz-button:hover,
div.filepicker.dropzone .dz-button:focus {
  background: none;
  outline: none;
}

div.filepicker.dropzone.dz-drag-hover {
  border: 1px solid #C7C7C7;
}

/* Semantic-UI aplica margin-top: 2.41em em .ui.checkbox quando esta dentro de
   um .field com siblings (regra pra alinhar checkbox isolado com altura de
   label+input). Mas em RadioButtonList, o radio ja vem dentro de um wrapper
   com label proprio (label "Tipo" + radios "Fisica/Juridica"), entao esse
   margin extra cria um gap visual incorreto entre o label e os radios.
   Resetamos o margin-top quando o radio esta em um .field aninhado dentro de
   outro .field (estrutura tipica do RadioButtonList).
   !important e necessario porque a regra do semantic-UI usa :not(...) que
   aumenta a especificidade alem da nossa selecao posicional. */
.ui.form .fields .field .field .ui.checkbox {
  margin-top: 0 !important;
}

/* Overlay do modal: padrao do semantic-UI eh rgba(0,0,0,0.85) — muito escuro.
   Suaviza pra nao deixar o fundo tao opaco. */
.ui.dimmer.modal-manager {
  background: rgba(0, 0, 0, 0.8);
}

/* Modal: limita altura à viewport e rola .content por dentro, mantendo
   header e actions visiveis. Substitui a logica que o plugin jQuery do
   Semantic-UI fazia dinamicamente via classe .scrolling, perdida na
   reescrita do Modal.jsx em React puro. */
.ui.modal:not(.mapadocar-modal):not(.fullscreen) {
  max-height: calc(100vh - 4rem);
  /* Limita a largura à viewport. Tamanhos fixos do Semantic-UI (.large = 1020
     a 1080px) estouram a tela em resoluções/zoom menores; como o modal é
     position:fixed centralizado via translate(-50%,-50%), o excedente fica
     fora da área visível e inalcançável (sem scroll horizontal). O max-width
     faz o modal encolher e os .fields (grid percentual) refluírem. */
  max-width: calc(100vw - 4rem);
  display: flex;
  flex-direction: column;
}
.ui.modal:not(.mapadocar-modal):not(.fullscreen) > .header,
.ui.modal:not(.mapadocar-modal):not(.fullscreen) > .actions {
  flex: 0 0 auto;
}
.ui.modal:not(.mapadocar-modal):not(.fullscreen) > .content {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
}

/* Selectize: textos do dropdown (placeholder e item selecionado) nao devem
   quebrar linha em campos estreitos (ex: UF travado em 8rem). O .selectize-input
   ja tem overflow: hidden, entao o excesso fica clipado em vez de wrappear. */
.selectize-input {
  white-space: nowrap;
}

/* Selectize: o dropdown agora e filho de <body> (dropdownParent: 'body' em
   InputSelect.jsx), entao precisa de z-index acima de qualquer modal aberto.
   Modais comecam em z-index 1002 e crescem com stack. 2050 cobre qualquer
   caso real de modais empilhados. */
.selectize-dropdown {
  z-index: 2050;
}

/* Override Semantic-UI: por padrao .ui.form esconde .info.message (reservado
   para mensagens de validacao condicionais que aparecem so com .ui.form.info
   ou .field.info no parent). Aqui usamos .ui.info.message como aviso permanente
   informativo — forca a exibicao quando tem conteudo. */
.ui.form .ui.info.message:not(:empty) {
  display: block;
}

.easy-button-button.identificar-active {
  color: #ffffff;
  background: var(--car-navy);
}

.easy-button-button.identificar-active:hover {
  color: #ffffff;
  background: var(--car-navy-dark);
}

.static-field {
  font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif;
  margin: 0em;
  outline: none;
  line-height: 1.21428571em;
  padding: 0.67857143em 1em;
  font-size: 1em;
  background: #FFFFFF;
  border: 1px solid rgba(34, 36, 38, 0.15);
  color: rgba(0, 0, 0, 0.87);
  border-radius: 0.28571429rem;
  box-shadow: 0em 0em 0em 0em transparent inset;
  pointer-events: none;
  opacity: 0.8;
}


.white-space-break-spaces{
  white-space: break-spaces;
}

/* Modal MAPADOCAR - Desenhador de Geometrias */
.ui.modal.mapadocar-modal {
  position: fixed !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  margin: 0 !important;
  width: 90vw !important;
  max-width: 1400px !important;
  height: 85vh !important;
  display: flex !important;
  flex-direction: column !important;
}

.ui.modal.mapadocar-modal > .header {
  flex: 0 0 auto !important;
}

.ui.modal.mapadocar-modal > .content {
  flex: 1 1 auto !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

.ui.modal.mapadocar-modal > .content > iframe {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  border: 0 !important;
}

/* Quando o modal entra em fullscreen via Fullscreen API */
.ui.modal.mapadocar-modal:fullscreen,
.ui.modal.mapadocar-modal:-webkit-full-screen {
  top: 0 !important;
  left: 0 !important;
  transform: none !important;
  width: 100vw !important;
  max-width: 100vw !important;
  height: 100vh !important;
  border-radius: 0 !important;
  background: #fff;
}

/* Tema Primary: SiCAR Green — usa tokens do DS (src/styles/design-system.css) */
.ui.primary.button,
.ui.primary.buttons .button {
  background-color: var(--sicar-primary);
  color: #fff;
}

.ui.primary.button:hover,
.ui.primary.buttons .button:hover {
  background-color: var(--sicar-primary-border);
  color: #fff;
}

.ui.primary.button:focus,
.ui.primary.buttons .button:focus {
  background-color: var(--sicar-primary-dark);
  color: #fff;
}

.ui.primary.button:active,
.ui.primary.buttons .button:active {
  background-color: var(--sicar-primary);
  color: #fff;
}
