﻿body { font-size: 10pt !important; }
a.nav-link.sidebartoggler.hidden-sm-down.waves-effect.waves-dark { display: none;}
.mobile { display: none !important;}
a.has-arrow.waves-effect.waves-dark.active { background: none !important;}
.dec-hide { display: none; }
.fotoAdd { position: relative; }
.fotoAdd .hover { display: none; }
.fotoAdd:hover .hover { -webkit-animation: stripes 2s linear infinite; animation: stripes 2s linear infinite; background-color: #000; background-size: 30px 30px; display: block; height: 100%; opacity: 0.7; position: absolute; width: 100%; }
.fotoAdd:hover .btn { background-color: transparent; border: solid 1px #fff; color: #fff; margin: 5px; }
.tab-pane .row p { border-bottom: 1px solid #ddd; min-height: 51px; padding: 0 0 5px 0; }
.tab-pane .row p .rotulo { font-size: 8pt; color: #000000; }
.table .dropdown-item  { font-size: 11pt;}
.empty-message a { color: #000 !important; font-size: 9pt; padding: 0; margin: 0;}
.hide-item{ display: none;}
.error .form-control { border-color: #e9edf2 !important; }
.has-error .form-control { border-color: #ef5350 !important; }
.vermelho td { background-color: #f3dada !important; }
.verde td { background-color: #dbefcf !important; }
#detalhes .rotulo { font-weight: 100; color: #383636 }
.card-no-border .card { border-radius: 15px !important; }
@media (max-width:992px) { .mobile { display: block !important; position: absolute; left: 21px; top: 12px;  }
}
@media (min-width: 992px) {
    .modal-lg { max-width: 98%; }
}
.dataTables_info { float: left; width: 50%; }
.dataTables_paginate { float: right !important; width: 50% !important; }
.dataTables_paginate ul { float: right !important;}
.floating-labels .help-block { min-height: 0 !important; border-bottom: none !important; font-size: 8pt !important; font-weight: 700; }
.codex-editor__redactor{ padding-bottom: 35px !important; }
.ce-block__content { max-width: 89% !important;}
.ce-toolbar  { left: 65px !important; right: auto;}

.tab-pane .row .editor p { padding: 0 !important; border: none !important; margin: 0 !important; min-height: auto; }
.form-control{ font-size: 10pt !important; color: #000!important;}
.draggable-tag{ background-color: #dddddd;}

.mensagens { background-color: #FFF; padding: 10px; display: block; height: 300px; overflow-y: auto; border: 1px solid #ddd;}
.mensagens .data { font-size: 8pt; }
.mensagens .left { background-color: #f6f9e0; float: left; clear: both; width: 95%; padding: 10px; margin-top: 10px;  }
.mensagens .right { background-color: #daf5da; float: right; clear: both; width: 95%; padding: 10px; margin-top: 10px; text-align: right; }

.card-outline-info { border-color: #002858; }
.card-outline-info .card-header { background: #002858; border-color: #002858; }

.tecnico .card-body { border: 1px solid #dddada; padding: 5px; }
.tecnico .card-body .hora { margin-bottom: 3px; border-bottom: 1px solid #dddada; }
.tecnico .card-body .hora:last-child { border-bottom: none; }
.tecnico .card-body .folga { color: #ff0000; }
.tecnico .card-body .livre a { color: #44c710; }
.mdi-verde { color: #44c710; font-size: 15pt; }
.mdi-vermelho { color: #ff0000; font-size: 15pt; }

.ordem strong{ color: #000000 !important; font-weight: 700; }
.ordem .tableInterna { width: 100%; }
.ordem .tableInterna th { border-bottom: 1px solid #999; }
.ordem .tableInterna td { margin-right: 5px; }
.borda { border: 1px solid #999; padding: 5px; margin-bottom: 10px;  }
.table2 { display: flex; }
.table2 div { width: 50%; }
.mask_decimal{ text-align: right;}
.table td { padding: 7px; vertical-align: middle;}
.mdi-barcode, .mdi-printer, .mdi-credit-card { font-size: 15pt; color: #000000; }
.bg-verde { background-color: #d3e7cb !important; color: #69ad4c !important; }
.bg-vermelho { background-color: #efe1e1 !important; color: #af8d8d !important; }
.bg-laranja { background-color: #f7e8d9 !important; color: #c39a6a !important; }
.bg-azul { background-color: #dfe1f3 !important; color: #7f85bf !important; }

.relatorio { width: 100%;}
.relatorio .header { width: 100%; display: flex; justify-content: space-evenly; align-content: start}
.relatorio .header div { width: 100%; text-align: left; background-color: #002858; color: #FFF; margin-right: 5px; padding: 5px;}
.relatorio .procedimento { width: 100%; display: flex; justify-content: space-evenly; align-content: start; margin-left: 15px; }
.relatorio .procedimento div { width: 100%; text-align: left; background-color: #F6F6F6; margin-right: 5px; padding: 5px; }
.relatorio .utilizador { width: 100%; display: flex; justify-content: space-evenly; align-content: start; margin-left: 15px; }
.relatorio .utilizador div { width: 100%; text-align: left;  padding: 5px; }

.laranja { background-color: bisque!important;}

.resumo { text-align: center; font-size: 12pt;}
.resumo strong{ font-weight: 700; }

.item { width: 825px; height: 508px; overflow: hidden; border-bottom-color: #d6d6d6; border-bottom-style: solid; border-bottom-width: 1px; page-break-before: always; }
.item .mensagem { width: 765px; height: 234px; float: left; padding: 20px 30px 20px 30px; font-size: 12pt; }
.item .dados { margin-left: 168px; width: 648px; float: left; text-transform: uppercase; font-size: 9pt; }
body { color: #000000; background-color: #ffffff; margin-top: 0; margin-right: 0; font: bold 10px arial; color: black; }

.dtp table.dtp-picker-days { min-height: 130px; }
.dtp div.dtp-picker-month { padding-bottom: 10px !important; }
.dtp div.dtp-date, .dtp div.dtp-time { padding: 5px; }
.dtp div.dtp-picker { padding: 8px; }
.dtp div.dtp-actual-num { font-size: 2em; }
.dtp table.dtp-picker-days tr > th, .dtp table.dtp-picker-days tr > td { padding: 0 !important; line-height: 0 !important; }
.dtp table.dtp-picker-days tr > td > a, .dtp .dtp-picker-time > a { padding: 2px 5px !important; }

/* ===== Ações das listas (ícones) e clique na linha ===== */
.acoes-linha { display: flex; justify-content: flex-end; align-items: center; gap: 4px; white-space: nowrap; }
.btn-acao { display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; border-radius: 6px; font-size: 16pt; line-height: 1; color: #54667a; transition: background-color .15s; }
.btn-acao:hover { background-color: #eef1f5; text-decoration: none; }
.btn-acao-alterar { color: #1e88e5 !important; }
.btn-acao-finalizar { color: #26a650 !important; }
.btn-acao-deletar { color: #ef5350 !important; }
table.dataTable tbody tr.linha-clicavel { cursor: pointer; }
table.dataTable tbody tr.linha-clicavel:hover td { background-color: #eaf4fd !important; }

/* ===== Mobile ===== */
@media (max-width: 767px) {
    /* topo: [menu] [título] [perfil] em linha, sem sobreposição */
    .topbar .top-navbar { display: flex !important; flex-wrap: nowrap; align-items: center; padding: 0 6px !important; min-height: 56px; }
    .topbar .top-navbar .navbar-collapse { display: contents !important; }
    .topbar .top-navbar .navbar-collapse > .navbar-nav.mr-auto { order: 1; flex: 0 0 auto; margin: 0 !important; }
    .topbar .top-navbar .navbar-header { order: 2; flex: 1 1 auto; min-width: 0; width: auto !important; position: static !important; background: transparent !important; line-height: 56px; padding: 0 !important; }
    .topbar .top-navbar .navbar-header .navbar-brand { display: block; margin: 0 !important; padding: 0 4px !important; min-width: 0; }
    .topbar .top-navbar .navbar-header h3 { font-size: 13pt; line-height: 56px; margin: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .topbar .top-navbar .navbar-collapse > .navbar-nav:not(.mr-auto) { order: 3; flex: 0 0 auto; margin: 0 !important; }
    .topbar .top-navbar .navbar-nav > .nav-item > .nav-link { padding-left: 10px !important; padding-right: 10px !important; line-height: 56px; }

    .container-fluid { padding-left: 8px !important; padding-right: 8px !important; }
    .card .card-body { padding: 10px; }
    .card-title { font-size: 13pt; }
    .p-20 { padding: 10px !important; }

    /* cabeçalho das páginas: filtros roláveis na horizontal, breadcrumb oculto */
    .page-titles { padding: 8px 0 !important; margin-bottom: 8px !important; }
    .page-titles .breadcrumb { display: none; }
    .page-titles .btn-group { display: flex; flex-wrap: wrap; gap: 6px; width: 100%; }
    .page-titles .btn-group .btn { flex: 1 1 30%; margin: 0 !important; border-radius: 6px !important; padding: 8px 6px; font-size: 10pt; }
    .page-titles .btn { padding: 8px 14px; font-size: 10pt; }

    /* busca e paginação do DataTables */
    .dataTables_wrapper .dataTables_filter { float: none; text-align: left; margin-bottom: 8px; }
    .dataTables_wrapper .dataTables_filter label { width: 100%; }
    .dataTables_wrapper .dataTables_filter input { width: 100% !important; margin-left: 0 !important; display: block; height: 40px; }
    .dataTables_info, .dataTables_paginate { float: none !important; width: 100% !important; text-align: center !important; }
    .dataTables_paginate ul { float: none !important; justify-content: center; }
    .dataTables_paginate .page-link { padding: 10px 16px; }

    /* tabelas viram cartões: cada célula mostra o título da coluna (data-label) */
    table.dataTable, .tabela-itens { border: none !important; width: 100% !important; }
    table.dataTable thead, .tabela-itens thead { display: none; }
    table.dataTable tbody tr, .tabela-itens tbody tr { display: block; border: 1px solid #e3e7ec; border-radius: 10px; margin-bottom: 10px; padding: 6px 10px; background: #fff !important; box-shadow: 0 1px 2px rgba(0,0,0,.04); }
    table.dataTable tbody td, .tabela-itens tbody td { display: flex; justify-content: space-between; align-items: center; gap: 10px; border: none !important; border-bottom: 1px solid #f1f3f5 !important; padding: 6px 0 !important; text-align: right; background: transparent !important; word-break: break-word; }
    table.dataTable tbody td:last-child, .tabela-itens tbody td:last-child { border-bottom: none !important; }
    table.dataTable tbody td::before, .tabela-itens tbody td::before { content: attr(data-label); font-weight: 600; color: #67757c; text-align: left; flex: 0 0 38%; }
    table.dataTable tbody td[data-label=""]::before, table.dataTable tbody td.dataTables_empty::before { display: none; }
    table.dataTable tbody td.dataTables_empty { justify-content: center; }
    table.dataTable tbody td .acoes-linha { width: 100%; justify-content: flex-end; }
    .btn-acao { width: 44px; height: 44px; font-size: 20pt; }
    .tabela-itens tbody td .form-control { max-width: 140px; }

    /* modais em tela cheia */
    .modal-dialog, .modal-lg { max-width: 100% !important; width: 100% !important; margin: 0 !important; }
    .modal-content, .modal-lib { border-radius: 0 !important; min-height: 100vh; }
    .modal-header { padding: 10px 12px; }
    .modal-header .modal-title { font-size: 12pt; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .modal-header .close { font-size: 28pt; padding: 4px 12px !important; margin: -8px -8px -8px auto !important; }
    .modal-body { padding: 4px !important; }
    #modalConfirm .modal-content, #modalPaiConfirm .modal-content, #modalPaiPaiConfirm .modal-content,
    #modalConfirm .modal-lib, #modalPaiConfirm .modal-lib { min-height: 0; }
    #modalConfirm .modal-dialog, #modalPaiConfirm .modal-dialog, #modalPaiPaiConfirm .modal-dialog { margin: 30vh 10px 0 10px !important; width: auto !important; }
    .modal-footer .btn { min-width: 90px; padding: 10px 16px; }

    /* abas: mostram o texto e rolam na horizontal */
    .nav-tabs { flex-wrap: nowrap; overflow-x: auto; overflow-y: hidden; -webkit-overflow-scrolling: touch; }
    .nav-tabs .nav-item { flex: 0 0 auto; }
    .nav-tabs .nav-link { padding: 10px 12px; white-space: nowrap; }
    .nav-tabs .hidden-xs-down { display: inline !important; }
    .nav-tabs .hidden-sm-up { display: none !important; }

    /* formulários: 16px evita o zoom automático do iOS e melhora o toque */
    .form-control, select.form-control { font-size: 16px !important; min-height: 42px; }
    textarea.form-control { min-height: 100px; }
    .btn:not(.btn-acao) { min-height: 40px; }
    #salvar { width: 100%; }
    .form-inline > * { margin-bottom: 6px; }
}