@charset "UTF-8";
@import "./_queries";
@import "./_colors";

* {
    margin: 0;
    padding: 0;

    &,
    &:before,
    &:after {
        box-sizing: border-box;
    }
}

:root {
    --p-scrollpanel-bar-size: 10px;
    --p-tooltip-gutter: 0.25rem;
}

body.ui-overflow-hidden {
    position: absolute;
    width: 100%;
}

body .ui-widget,
body .ui-widget .ui-widget,
body .ui-widget input,
body .ui-widget select,
body .ui-widget textarea,
body .ui-widget button {
    font-family: "Open Sans", sans-serif;
    text-decoration: none;
    font-size: 14px;
}

body .ui-widget-content {
    background-color: $default-color;
}

body .ui-state-active,
body .ui-state-highlight {
    background-color: $primary-color;
    color: $primary-light-text-color;
}

body .ui-state-error,
body .ui-state-default.ui-state-error {
    border-bottom-color: $error-color;
}

body .ui-icon {
    width: 16px;
    height: 16px;
    line-height: 1;
}

body .ui-state-disabled,
body .ui-widget:disabled {
    @include disabled();
}

body .ui-corner-all {
    border-radius: 4px;
}

body .ui-corner-top {
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
}

body .ui-corner-bottom {
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
}

body .ui-corner-left {
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
}

body .ui-corner-right {
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
}

body .ui-togglebutton.ui-button.ui-state-focus {
    box-shadow: 0px 0px 5px highlight($primary-color);
}

body .ui-togglebutton:not(.ui-state-disabled):not(.ui-state-active):hover {
    background-color: highlight($primary-color);
}

body .ui-togglebutton:not(.ui-state-disabled).ui-state-active {
    background-color: active($primary-color);
}

body
    .ui-autocomplete.ui-autocomplete-multiple
    .ui-autocomplete-multiple-container
    .ui-autocomplete-input-token
    input:focus {
    border: none;
}

body .ui-listbox {
    padding: 0;
    width: 200px;
}

body .ui-listbox .ui-listbox-item {
    margin: 0;
    padding: 5px 10px;
    border-radius: 0;
}

body .ui-listbox .ui-listbox-item:last-child {
    border-bottom: none;
}

body .ui-listbox:not(.ui-state-disabled) .ui-listbox-item:hover {
    background-color: highlight($default-primary-color);
    color: $primary-dark-text-color;
}

body .ui-listbox .ui-listbox-item.ui-state-highlight {
    background-color: transparent;
    color: $primary-dark-text-color;
}

body .ui-listbox .ui-listbox-item.ui-state-highlight .ui-chkbox {
    border: none;
}

body .ui-listbox.ui-state-disabled .ui-chkbox-box:not(.ui-state-active):hover {
    border: 1px solid highlight($default-primary-color);
}

body .ui-listbox .ui-listbox-item > td {
    padding: 5px 10px;
}

body .ui-listbox .ui-listbox-header {
    padding: 5px 10px;
    border-top: 0 none;
    border-right: 0 none;
    border-left: 0 none;
    border-radius: 0;
}

body .ui-listbox .ui-listbox-header .ui-listbox-filter-container {
    width: 80%;
}

body .ui-multiselectlistbox {
    padding: 0;
}

body .ui-multiselectlistbox .ui-multiselectlistbox-header {
    padding: 5px 10px;
}

body .ui-multiselectlistbox .ui-multiselectlistbox-item {
    margin: 0;
    padding: 5px 10px;
    border-radius: 0;
}

body .ui-multiselectlistbox .ui-multiselectlistbox-item:not(.ui-state-highlight):hover {
    background-color: $default-color;
    color: $primary-dark-text-color;
}

body .ui-multiselectlistbox .ui-multiselectlistbox-item.ui-state-highlight {
    background-color: active($primary-color);
    color: $primary-light-text-color;
}

body .ui-buttonset .ui-button {
    background-color: #e5eaea;
    color: $primary-dark-text-color;
    border: 1px solid transparent;
    border-radius: 0px;
}

body .ui-buttonset .ui-button:hover {
    background-color: #ccc;
}

body .ui-buttonset .ui-button:focus {
    background-color: #e5eaea;
    color: $primary-dark-text-color;
    box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.2);
    border: 1px solid #428bca;
}

body .ui-buttonset .ui-button:active {
    background-color: #428bca;
    color: $primary-light-text-color;
}

body .ui-buttonset .ui-button:active:focus {
    background-color: #428bca;
    color: $primary-light-text-color;
    box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.2);
}

body .ui-buttonset .ui-button:first-child {
    border-top-left-radius: 0.25em;
    border-bottom-left-radius: 0.25em;
}

body .ui-buttonset .ui-button:last-child {
    border-top-right-radius: 0.25em;
    border-bottom-right-radius: 0.25em;
}

body .ui-trigger-calendar .ui-datepicker-trigger.ui-button {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

body .ui-inplace .ui-inplace-display {
    padding: 0.5em 0.75em;
    border-radius: 4px;
}

body .ui-inplace .ui-inplace-display:hover {
    background-color: #fff;
}

body .ui-panel .ui-panel-titlebar,
body .ui-dialog .ui-dialog-titlebar .ui-dialog-title,
body .p-sidebar h1 {
    border: 0 none;
    border-radius: 0;
    background-color: #fff;
    color: $primary-dark-text-color;
    font-size: 16px;
    text-transform: uppercase;
    padding: 0;
}

body .ui-notificationbar {
    background-color: #248bca;
    color: $primary-light-text-color;
}

body .p-scrollpanel .p-scrollpanel-drag {
    background-color: #e3e3e3;
}

body .p-scrollpanel .p-scrollpanel-track {
    background-color: #f7f7f7;
    border: 0 none;
}

body .p-scrollpanel .p-scrollpanel-corner {
    background-color: #f7f7f7;
}

body .ui-toolbar {
    padding: 5px 10px;
}

body .ui-toolbar .fa-ellipsis-v {
    color: #aaaaaa;
    margin: 0 0.5em;
}

@media #{$sm-devices} {
    body .ui-panelgrid .ui-grid-responsive .ui-grid-row {
        border: 0 none;
    }
}

body .ui-dataview-content {
    border: 1px solid $default-secondary-color;
}

body .ui-datalist .ui-datalist-header {
    padding: 0.75em 1.25em;
    background-color: #fff;
}

body .ui-datalist .ui-paginator {
    padding: 0;
}

body .ui-datascroller {
    border: 1px solid $default-secondary-color;
}

body .ui-datascroller .ui-datascroller-header {
    padding: 0.75em 1.25em;
    background-color: #f5f5f5;
}

body .ui-orderlist .ui-orderlist-list-container {
    border: 1px solid $default-secondary-color;
}

body .ui-orderlist .ui-orderlist-list,
body .ui-orderlist .ui-orderlist-filter-container {
    border-top: 1px solid $default-secondary-color;
}

body .ui-orderlist .ui-orderlist-controls button {
    font-size: 16px;
    margin-left: 0;
}

body .ui-orderlist .ui-orderlist-caption {
    padding: 12px 20px;
    background-color: #fff;
    box-sizing: border-box;
    width: 200px;
}

body .ui-orderlist .ui-orderlist-list {
    box-sizing: border-box;
}

body .ui-orderlist .ui-orderlist-list .ui-orderlist-item {
    padding: 5px 10px;
    margin: 0;
    border-radius: 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.15);
}

body .ui-orderlist .ui-orderlist-list .ui-orderlist-item:last-child {
    border-bottom: none;
}

body .ui-orderlist .ui-orderlist-list .ui-orderlist-item:not(.ui-state-highlight):hover {
    background-color: #fff;
    color: $primary-dark-text-color;
}

body .ui-orderlist .ui-orderlist-list .ui-orderlist-item.ui-state-highlight {
    background-color: #248bca;
    color: $primary-light-text-color;
}

body .ui-orderlist.ui-grid-responsive .ui-grid-row .ui-orderlist-controls {
    margin-right: 0;
    padding-right: 5px;
}

body .ui-carousel {
    padding: 0;
    border: 1px solid $default-secondary-color;
}

body .ui-carousel .ui-carousel-header {
    margin: 0;
    border: 0 none;
    border-bottom: 1px solid #e6e6e6;
    padding: 0.75em 1.25em;
    background-color: #f5f5f5;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

body .ui-carousel .ui-carousel-header .ui-carousel-header-title {
    padding: 0;
}

body .ui-carousel .ui-carousel-footer {
    border: 0 none;
    border-top: 1px solid #e6e6e6;
    margin: 0;
    border-radius: 0;
    padding: 12px 20px;
    background-color: #fff;
}

body .ui-carousel .ui-carousel-button {
    margin-top: 5px;
    transition: color 0.3s;
    color: $primary-dark-text-color;
}

body .ui-carousel .ui-carousel-button:hover {
    color: #999;
}

body .ui-carousel .ui-carousel-button.ui-state-disabled:hover {
    color: #697882;
}

body .ui-carousel .ui-carousel-page-links {
    margin-top: 5px;
}

body .ui-carousel .ui-carousel-page-links .ui-carousel-page-link {
    color: $primary-dark-text-color;
}

body .ui-carousel .ui-carousel-page-links .ui-carousel-page-link.ui-icon-radio-on {
    color: $primary-color;
    background-color: #999;
}

body .fc .fc-event {
    background-color: #357ebd;
    border-color: #357ebd;
}

body .fc .fc-slats td {
    background-color: #fff;
}

body .fc .fc-toolbar .fc-prev-button span {
    background: none !important;
    display: inline-block;
    font: normal normal 900 inherit/inherit "Font Awesome 5 Pro";
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-indent: 0px !important;
    text-align: center;
}

body .fc .fc-toolbar .fc-prev-button span:before {
    content: "";
}

body .fc .fc-toolbar .fc-prev-button .ui-icon {
    position: relative;
    top: 3px;
}

body .fc .fc-toolbar .fc-next-button span {
    background: none !important;
    display: inline-block;
    font: normal normal 900 inherit/inherit "Font Awesome 5 Pro";
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-indent: 0px !important;
    text-align: center;
}

body .fc .fc-toolbar .fc-next-button span:before {
    content: "";
}

body .fc .fc-toolbar .fc-next-button .ui-icon {
    position: relative;
    top: 3px;
}

body .ui-menubar {
    border: 1px solid $default-secondary-color;
}

body .ui-megamenu {
    border: 1px solid $default-secondary-color;
}

body .ui-menubutton .ui-button.ui-button-text-icon-left .ui-icon {
    margin-top: 10px;
}

body .ui-galleria .ui-galleria-nav-prev {
    font-size: 16px;
    color: #999;
    transition: color 0.3s;
}

body .ui-galleria .ui-galleria-nav-prev:hover {
    color: $primary-dark-text-color;
}

body .ui-galleria .ui-galleria-nav-next {
    font-size: 16px;
    color: #999;
    transition: color 0.3s;
}

body .ui-galleria .ui-galleria-nav-next:hover {
    color: $primary-dark-text-color;
}

body .p-fluid .ui-inputgroup input {
    min-width: 0;
}

body .p-fluid {
    width: 100%;
}

// Validation
p-autocomplete.ng-dirty.ng-invalid>.ui-autocomplete>.ui-inputtext,
p-calendar.ng-dirty.ng-invalid>.ui-calendar>.ui-inputtext,
// p-chips.ng-dirty.ng-invalid>.ui-chips>.ui-inputtext,
p-inputmask.ng-dirty.ng-invalid>.ui-inputtext,
p-checkbox.ng-dirty.ng-invalid .ui-chkbox-box,
p-radiobutton.ng-dirty.ng-invalid .ui-radiobutton-box,
p-inputswitch.ng-dirty.ng-invalid .ui-inputswitch,
p-listbox.ng-dirty.ng-invalid .ui-inputtext,
p-multiselect.ng-dirty.ng-invalid>.ui-multiselect,
p-spinner.ng-dirty.ng-invalid>.ui-inputtext,
p-selectbutton.ng-dirty.ng-invalid .ui-button,
p-togglebutton.ng-dirty.ng-invalid .ui-button {
    border-color: $error-color;

    &:hover {
        border-color: highlight($error-color);
    }
}

//===========================================================================================
// Customizações
//===========================================================================================

// Base
html {
    height: 100%;
}

body {
    color: $primary-dark-text-color !important;
    background-color: #f2f2f2;
    font-family: "Open Sans", sans-serif !important;
    font-size: 14px !important;
    min-height: 100%;
    line-height: 1.5;
}

a {
    color: $primary-color;
    text-decoration: none;
    cursor: pointer;

    &:hover {
        text-decoration: underline;
    }
}

ul {
    padding-left: 40px;
}

hr {
    margin: 20px 0;
    border: 0;
    height: 1px;
    background: #d8d8d8;
}

label {
    font-weight: normal;
    display: block;
    max-width: 100%;
    margin-bottom: 5px;
    font-size: 14px;
}

.required > label:after {
    content: " *";
    color: #c13018;
}

input::placeholder {
    color: #ccc;
}

[data-hidden="true"] {
    display: none !important;
}

//Form
.form-group {
    margin-bottom: 15px;
}

.input-label {
    color: #212533;
    font-family: "Open Sans", sans-serif;
    font-size: 14px;
    margin: 0;
}

.input-label-container {
    display: flex;
    gap: 12px;
    align-items: center;

    &:has(input:disabled) {
        .input-label {
            opacity: 0.5;
        }
    }
}

.cdk-drag-preview {
    width: 100%;
}

@import "mixins";
@import "utilities";
@import "components";
@import "fonts";
