/* Ajustes visuais do SoftwareServices */
body { min-height: 100vh; }
.navbar-brand { letter-spacing: .3px; }
.card { border-radius: .75rem; }
.table > :not(caption) > * > * { padding: .75rem 1rem; }
dt { font-weight: 600; }
main.container { max-width: 1140px; }
.form-label { font-weight: 500; margin-bottom: .25rem; }

/* Destaque sutil para orcamentos urgentes */
.orc-urgente > td {
    background-color: #fff5f5 !important;
    border-left-color: #dc3545 !important;
}
.orc-urgente > td:first-child {
    box-shadow: inset 4px 0 0 0 #dc3545;
}

/* Multi-select com busca (componente reutilizavel) */
.multiselect { position: relative; }
.multiselect .multiselect-toggle {
    cursor: pointer;
    background-color: #fff;
}
.multiselect .multiselect-toggle .multiselect-label {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    flex: 1 1 auto;
    min-width: 0;
    text-align: left;
}
.multiselect .multiselect-menu {
    width: 100%;
    max-height: 460px;
    overflow: hidden;
}
.multiselect .multiselect-options .multiselect-option {
    padding: .35rem .5rem;
    border-radius: .375rem;
    margin-bottom: 0;
    cursor: pointer;
    user-select: none;
}
.multiselect .multiselect-options .multiselect-option:hover {
    background-color: #f1f3f5;
}
.multiselect .multiselect-options .multiselect-option [data-no-toggle] {
    cursor: default;
}
.multiselect .multiselect-options .multiselect-option input[type="text"] {
    cursor: text;
}

/* Anexos financeiros (Fase 7) */
.anexo-dropzone {
    border: 2px dashed #adb5bd;
    border-radius: .75rem;
    background: #f8f9fa;
    cursor: pointer;
    transition: border-color .2s, background .2s;
}
.anexo-dropzone:hover,
.anexo-dropzone:focus {
    border-color: #0d6efd;
    background: #eef4ff;
    outline: none;
}
.anexo-dropzone-active {
    border-color: #0d6efd !important;
    background: #e7f1ff !important;
}
.anexo-upload-item .progress-bar {
    transition: width .15s ease;
}
.anexo-auditoria-lista {
    max-height: 220px;
    overflow-y: auto;
    padding-right: .35rem;
}
