@charset "UTF-8";

:root {

    /* =========================================================
       BERNAVA THEME
       ========================================================= */

    --bs-blue: #2957A4;
    --bs-indigo: #3F5FBF;
    --bs-purple: #6B4FD3;
    --bs-pink: #D94F8A;
    --bs-red: #E53935;
    --bs-orange: #F4A62A;
    --bs-yellow: #FFC857;
    --bs-green: #2E9E5B;
    --bs-teal: #37BFA7;
    --bs-cyan: #5BC0EB;

    --bs-black: #000000;
    --bs-white: #FFFFFF;

    /* =========================================================
       GRAYS
       ========================================================= */

    --bs-gray: #7B8497;
    --bs-gray-dark: #2B3445;

    --bs-gray-100: #F5F7FA;
    --bs-gray-200: #EEF2F7;
    --bs-gray-300: #DCE3EC;
    --bs-gray-400: #B8C2D1;
    --bs-gray-500: #97A3B6;
    --bs-gray-600: #7B8497;
    --bs-gray-700: #596273;
    --bs-gray-800: #394150;
    --bs-gray-900: #1F2937;

    /* =========================================================
       BRAND COLORS
       ========================================================= */

    --bs-light: #F5F7FA;

    --bs-primary: #2957A4;
    --bs-primary-hover: #1F4685;

    --bs-secondary: #DCE3EC;

    --bs-success: #2E9E5B;

    --bs-info: #6EA8FE;

    --bs-warning: #F4A62A;

    --bs-danger: #E53935;

    --bs-dark: #1F2937;

    /* =========================================================
       RGB
       ========================================================= */

    --bs-white-rgb: 255, 255, 255;
    --bs-black-rgb: 0, 0, 0;

    --bs-light-rgb: 245, 247, 250;

    --bs-primary-rgb: 41, 87, 164;
    --bs-secondary-rgb: 220, 227, 236;

    --bs-success-rgb: 46, 158, 91;
    --bs-info-rgb: 110, 168, 254;
    --bs-warning-rgb: 244, 166, 42;
    --bs-danger-rgb: 229, 57, 53;

    --bs-dark-rgb: 31, 41, 55;

    /* =========================================================
       BODY
       ========================================================= */

    --bs-body-color-rgb: 31, 41, 55;
    --bs-body-bg-rgb: 255, 255, 255;

    --bs-font-sans-serif:
            Inter,
            Helvetica,
            Arial,
            sans-serif;

    --bs-font-monospace:
            SFMono-Regular,
            Menlo,
            Monaco,
            Consolas,
            "Liberation Mono",
            "Courier New",
            monospace;

    --bs-gradient:
            linear-gradient(
                    180deg,
                    rgba(255,255,255,.12),
                    rgba(255,255,255,0)
            );

    --bs-body-font-family: var(--bs-font-sans-serif);
    --bs-body-font-size: 1rem;
    --bs-body-font-weight: 400;
    --bs-body-line-height: 1.5;

    --bs-body-color: #2B3445;
    --bs-body-bg: #FFFFFF;

    /* =========================================================
       BORDERS
       ========================================================= */

    --bs-border-width: 1px;
    --bs-border-style: solid;

    --bs-border-color: #DCE3EC;

    --bs-border-color-translucent:
            rgba(0, 0, 0, 0.08);

    --bs-border-radius: 0.5rem;
    --bs-border-radius-sm: 0.4rem;
    --bs-border-radius-lg: 0.7rem;
    --bs-border-radius-xl: 1rem;
    --bs-border-radius-2xl: 2rem;
    --bs-border-radius-pill: 50rem;

    /* =========================================================
       LINKS
       ========================================================= */

    --bs-link-color: #2957A4;
    --bs-link-hover-color: #1F4685;

    /* =========================================================
       CODE / HIGHLIGHT
       ========================================================= */

    --bs-code-color: #B5477A;

    --bs-highlight-bg: #FFF4D6;

}
:root, [data-theme=light] {

    /* =========================================================
       PRIMARY BRAND (BLU BERNAVA)
       ========================================================= */

    --kt-primary: #2957A4;
    --kt-text-primary: #2957A4;

    --kt-primary-active: #1F4685;
    --kt-text-primary-active: #1F4685;

    --kt-primary-light: #EAF1FF;

    --kt-primary-inverse: #FFFFFF;

    /* =========================================================
       SECONDARY
       ========================================================= */

    --kt-secondary: #394150;
    --kt-text-secondary: #394150;

    --kt-secondary-active: #2B3445;

    --kt-secondary-light: #EEF2F7;

    --kt-secondary-inverse: #FFFFFF;

    /* =========================================================
       WARNING
       ========================================================= */

    --kt-warning: #F4A62A;
    --kt-text-warning: #F4A62A;

    --kt-warning-active: #D88D18;

    --kt-warning-light: #FFF4D6;

    --kt-warning-inverse: #1F2937;

    /* =========================================================
       SUCCESS
       ========================================================= */

    --kt-success: #2E9E5B;
    --kt-text-success: #2E9E5B;

    --kt-success-active: #257D49;

    --kt-success-light: #EAF7EF;

    --kt-success-inverse: #FFFFFF;

    /* =========================================================
       DANGER (ROSSO BRAND)
       ========================================================= */

    --kt-danger: #E53935;
    --kt-text-danger: #E53935;

    --kt-danger-active: #C62828;

    --kt-danger-light: #FDECEC;

    --kt-danger-inverse: #FFFFFF;

    /* =========================================================
       INFO
       ========================================================= */

    --kt-info: #6EA8FE;
    --kt-text-info: #6EA8FE;

    --kt-info-active: #4F8EF7;

    --kt-info-light: #EDF5FF;

    --kt-info-inverse: #FFFFFF;

    /* =========================================================
       LIGHT / DARK
       ========================================================= */

    --kt-light: #F5F7FA;

    --kt-light-active: #EEF2F7;

    --kt-dark: #1F2937;

    --kt-dark-active: #111827;

    --kt-dark-light: #394150;

    --kt-dark-inverse: #FFFFFF;

}

a{
    text-decoration: none;
}

main > .container {
    padding: 70px 15px 20px;
}

.footer {
    background-color: #f5f5f5;
    font-size: .9em;
    height: 60px;
}

.footer > .container {
    padding-right: 15px;
    padding-left: 15px;
}

.not-set {
    color: #c55;
    font-style: italic;
}

/* add sorting icons to gridview sort links */
a.asc:after, a.desc:after {
    content: '';
    left: 3px;
    display: inline-block;
    width: 0;
    height: 0;
    border: solid 5px transparent;
    margin: 4px 4px 2px 4px;
    background: transparent;
}

a.asc:after {
    border-bottom: solid 7px #212529;
    border-top-width: 0;
}

a.desc:after {
    border-top: solid 7px #212529;
    border-bottom-width: 0;
}

.grid-view th {
    white-space: nowrap;
}

.hint-block {
    display: block;
    margin-top: 5px;
    color: #999;
}

.error-summary {
    color: #a94442;
    background: #fdf7f7;
    border-left: 3px solid #eed3d7;
    padding: 10px 20px;
    margin: 0 0 15px 0;
}

/* align the logout "link" (button in form) of the navbar */
.nav li > form > button.logout {
    padding-top: 7px;
    color: rgba(255, 255, 255, 0.5);
}

@media(max-width:767px) {
    .nav li > form > button.logout {
        display:block;
        text-align: left;
        width: 100%;
        padding: 10px 0;
    }
}

.nav > li > form > button.logout:focus,
.nav > li > form > button.logout:hover {
    text-decoration: none;
    color: rgba(255, 255, 255, 0.75);
}

.nav > li > form > button.logout:focus {
    outline: none;
}

.form-group {
    margin-bottom: 1rem;
}

.select2-container--default.select2-container--disabled{
    background-color: #F3F6F9;
}

.select2-container--default.select2-container--disabled .select2-selection__rendered{
    color: #000;
}

.select2-selection.select2-selection--single{
    height: 40px;
    border: 1px solid var(--kt-input-border-color);
    border-radius: 0.475rem;
}

.select2-container{
    width: 100% !important;
}
.select2-container--default .select2-selection--single .select2-selection__rendered{
    line-height: 40px;
}
.select2-container--default .select2-selection--single .select2-selection__arrow{
    height: 40px;
}

div.required:after{
    content: none;
}

.breadcrumb-dot .breadcrumb-item:after{
    padding-left: 5px;
}

.form-group.required label.form-label:not(.custom-control-label):not(.custom-file-label)::after {
    content: "*";
    margin-left: 3px;
    font-weight: normal;
    font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    color: tomato;
}

.pv-page-card > .card-header {
    border-bottom: 1px solid #eef1f5;
}

.pv-form-shell {
    display: flex;
    flex-direction: column;
    gap: 1.75rem;
}

/*.pv-form-grid {
    margin-right: 0;
    margin-left: 0;
}*/

.pv-form-grid > [class*="col-"] {
    padding-right: calc(var(--bs-gutter-x) * 0.5);
    padding-left: calc(var(--bs-gutter-x) * 0.5);
}

.pv-form-hero {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
    padding: 1.5rem;
    border: 1px solid #eef1f5;
    border-radius: 1.25rem;
    background:
        radial-gradient(circle at top right, rgba(54, 153, 255, 0.14), transparent 32%),
        linear-gradient(135deg, #f8fbff 0%, #ffffff 58%, #f5f8ff 100%);
}

.pv-form-eyebrow {
    display: inline-block;
    margin-bottom: 0.5rem;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #3699ff;
}

.pv-form-title {
    margin: 0;
    font-size: 1.65rem;
    font-weight: 700;
    color: #181c32;
}

.pv-form-subtitle,
.pv-panel-text {
    margin: 0.5rem 0 0;
    color: #7e8299;
    line-height: 1.6;
}

.pv-form-status {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.pv-panel {
    height: 100%;
    padding: 1.5rem;
    border: 1px solid #eef1f5;
    border-radius: 1.25rem;
    background: #fff;
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.04);
}

.pv-panel-accent {
    background:
        linear-gradient(180deg, rgba(54, 153, 255, 0.08) 0%, rgba(54, 153, 255, 0.02) 100%),
        #fff;
}

.pv-panel-header {
    margin-bottom: 1.25rem;
}

.pv-panel-title {
    margin: 0;
    font-size: 1.1rem;
    font-weight: 700;
    color: #181c32;
}

.pv-section-divider {
    height: 1px;
    margin: 1.5rem 0;
    background: linear-gradient(90deg, rgba(54, 153, 255, 0.18), rgba(126, 130, 153, 0.08));
}

.pv-geo-readonly input.form-control[readonly] {
    background-color: #f9fafb;
    color: #3f4254;
    border-style: dashed;
}

.pv-address-preview {
    margin-top: 1rem;
    padding: 1rem;
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.8);
    border: 1px solid rgba(54, 153, 255, 0.15);
    color: #3f4254;
}

.pv-address-preview-label {
    display: block;
    margin-bottom: 0.35rem;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #7e8299;
}

.pv-view-shell {
    display: flex;
    flex-direction: column;
    gap: 1.75rem;
}

.pv-view-hero {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
    padding: 1.75rem;
    border: 1px solid #eef1f5;
    border-radius: 1.25rem;
    background:
        radial-gradient(circle at top right, rgba(54, 153, 255, 0.14), transparent 32%),
        linear-gradient(135deg, #f8fbff 0%, #ffffff 58%, #f5f8ff 100%);
}

.pv-view-title {
    margin: 0;
    font-size: 2rem;
    font-weight: 700;
    color: #181c32;
}

.pv-view-subtitle {
    margin: 0.5rem 0 0;
    color: #7e8299;
    line-height: 1.6;
}

.pv-view-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    justify-content: flex-end;
}

.pv-map-card {
    padding: 1.25rem;
    border: 1px solid #eef1f5;
    border-radius: 1.25rem;
    background: #fff;
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.04);
}

.pv-map-frame-wrap {
    overflow: hidden;
    border-radius: 1rem;
    border: 1px solid rgba(54, 153, 255, 0.12);
    background: #f8fbff;
}

.pv-map-frame {
    display: block;
    width: 100%;
    height: 360px;
    border: 0;
}

.pv-view-definition-list {
    display: grid;
    gap: 1rem;
}

.pv-view-definition-item {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    padding: 1rem 1.1rem;
    border: 1px solid #eef1f5;
    border-radius: 1rem;
    background: #fafbfd;
}

.pv-view-definition-label {
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #7e8299;
}

.pv-view-address-card {
    margin-top: 1rem;
    padding: 1.1rem 1.2rem;
    border: 1px solid rgba(54, 153, 255, 0.15);
    border-radius: 1rem;
    background: rgba(54, 153, 255, 0.04);
}

.pv-view-address-main {
    font-size: 1.05rem;
    font-weight: 600;
    color: #181c32;
}

.pv-view-address-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-top: 0.75rem;
    color: #5e6278;
}

.pv-view-address-meta span {
    padding: 0.35rem 0.65rem;
    border-radius: 999px;
    background: #fff;
    border: 1px solid rgba(54, 153, 255, 0.12);
}

.pv-view-stat-card {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    padding: 1rem 1.1rem;
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.78);
    border: 1px solid rgba(54, 153, 255, 0.12);
}

.pv-view-stat-card + .pv-view-stat-card {
    margin-top: 1rem;
}

.pv-schedule-list {
    display: grid;
    gap: 1rem;
}

.pv-schedule-row {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    padding: 1rem 1.1rem;
    border: 1px solid #eef1f5;
    border-radius: 1rem;
    background: #fafbfd;
}

.pv-schedule-day {
    flex: 0 0 140px;
}

.pv-schedule-day-label {
    font-size: 0.95rem;
    font-weight: 700;
    color: #181c32;
}

.pv-schedule-fields {
    display: grid;
    grid-template-columns: minmax(140px, 180px) minmax(140px, 180px) auto;
    gap: 1rem;
    align-items: end;
    flex: 1 1 auto;
}

.pv-schedule-time .form-label {
    margin-bottom: 0.45rem;
}

.pv-schedule-closed {
    display: flex;
    justify-content: flex-start;
}

.pv-schedule-view-value {
    display: flex;
    align-items: center;
    min-height: 42px;
    color: #181c32;
}

.bp-preview-card,
.bp-view-visual {
    overflow: hidden;
    border-radius: 1rem;
    border: 1px solid rgba(54, 153, 255, 0.12);
    background:
        linear-gradient(135deg, rgba(54, 153, 255, 0.05), rgba(255, 255, 255, 0.95));
}

.bp-preview-image,
.bp-view-image {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
}

.bp-preview-placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 240px;
    padding: 1.5rem;
    text-align: center;
    color: #7e8299;
    font-weight: 600;
}

.bp-view-visual {
    min-height: 280px;
}

@media (max-width: 991px) {
    .pv-form-hero {
        flex-direction: column;
    }

    .pv-form-status {
        justify-content: flex-start;
    }

    .pv-view-hero {
        flex-direction: column;
    }

    .pv-view-actions {
        justify-content: flex-start;
    }

    .pv-schedule-row {
        flex-direction: column;
        align-items: stretch;
    }

    .pv-schedule-day {
        flex-basis: auto;
    }

    .pv-schedule-fields {
        grid-template-columns: 1fr;
    }
}
[data-kt-app-layout=dark-sidebar] .app-sidebar {
    background-color: var(--bs-blue);
    border-right: 0 !important;
}
[data-kt-app-layout=dark-sidebar] .app-sidebar .menu .menu-item .menu-heading,
[data-kt-app-layout=dark-sidebar] .app-sidebar .menu .menu-item .menu-link .menu-title,
[data-kt-app-layout=dark-sidebar] .app-sidebar .menu .menu-item .menu-link .menu-icon, [data-kt-app-layout=dark-sidebar] .app-sidebar .menu .menu-item .menu-link .menu-icon .svg-icon, [data-kt-app-layout=dark-sidebar] .app-sidebar .menu .menu-item .menu-link .menu-icon i{
    color: #fff !important;
}

.dashboard-hero {
    position: relative;
    overflow: hidden;
    border: 0;
    border-radius: 1.25rem;
    background:
            radial-gradient(circle at top right, rgba(255,255,255,.24), transparent 34%),
            linear-gradient(135deg, #2957A4 0%, #1F4685 52%, #16325F 100%);
    box-shadow: 0 22px 55px rgba(41, 87, 164, .22);
}
.dashboard-hero::after {
    content: "";
    position: absolute;
    inset: auto -6rem -8rem auto;
    width: 18rem;
    height: 18rem;
    border-radius: 999px;
    background: rgba(255,255,255,.08);
}
.dashboard-hero .card-body {
    padding: 2rem;
}
.dashboard-hero-art {
    position: relative;
    min-height: 260px;
}
.dashboard-hero-art img {
    position: absolute;
    right: 0;
    bottom: -1rem;
    max-width: 100%;
    width: 360px;
    filter: drop-shadow(0 18px 35px rgba(0, 0, 0, .18));
}
.dashboard-chip {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    padding: .45rem .8rem;
    border-radius: 999px;
    background: rgba(255,255,255,.14);
    color: #fff;
    font-size: .875rem;
    font-weight: 600;
}
.dashboard-kpi {
    height: 100%;
    border: 0;
    border-radius: 1rem;
    box-shadow: 0 12px 32px rgba(43, 52, 69, .08);
}
.dashboard-kpi .symbol {
    width: 54px;
    height: 54px;
}
.dashboard-kpi-value {
    font-size: 1.9rem;
    line-height: 1;
    letter-spacing: -.04em;
}
.dashboard-panel {
    height: 100%;
    border: 0;
    border-radius: 1rem;
    box-shadow: 0 12px 32px rgba(43, 52, 69, .08);
}
.dashboard-link-card {
    height: 100%;
    border: 1px solid #eef2f7;
    border-radius: 1rem;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.dashboard-link-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 18px 30px rgba(31, 41, 55, .08);
    border-color: #dce3ec;
}
.dashboard-link-icon {
    width: 52px;
    min-width: 52px;
    height: 52px;
    border-radius: 1rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
}
.dashboard-link-icon.primary { background: rgba(41, 87, 164, .12); color: #2957A4; }
.dashboard-link-icon.success { background: rgba(46, 158, 91, .12); color: #2E9E5B; }
.dashboard-link-icon.warning { background: rgba(244, 166, 42, .16); color: #C97D00; }
.dashboard-link-icon.info { background: rgba(91, 192, 235, .15); color: #257CA3; }
.dashboard-status-list {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}
.dashboard-status-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    padding-bottom: 1rem;
    border-bottom: 1px dashed #dce3ec;
}
.dashboard-status-item:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}
.dashboard-mini {
    border-radius: 1rem;
    background: linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%);
}
.dashboard-list-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: .9rem 0;
    border-bottom: 1px dashed #dce3ec;
}
.dashboard-list-row:last-child {
    border-bottom: 0;
}
.dashboard-thumb {
    width: 56px;
    height: 56px;
    border-radius: .85rem;
    object-fit: cover;
    background: #eef2f7;
}
.dashboard-thumb-placeholder {
    width: 56px;
    height: 56px;
    border-radius: .85rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #eef2f7;
    color: #7b8497;
}
.dashboard-cover {
    min-height: 180px;
    border-radius: 1rem;
    background:
            linear-gradient(180deg, rgba(41,87,164,.88), rgba(31,70,133,.92)),
            url("/defaults/misc/bg-2.jpg") center/cover no-repeat;
}
@media (max-width: 991.98px) {
    .dashboard-hero-art {
        min-height: 180px;
        margin-top: 1rem;
    }
    .dashboard-hero-art img {
        width: 260px;
        position: relative;
        bottom: 0;
    }
}