
/* NormIT — Brand-aligned theme (PT/EN)
   Palette + typography from Brand Identity Guidelines */

:root {
    --brand-blue: #1F2E3C; /* Dark Blue */
    --brand-orange: #E87722; /* Accent Orange */
    --brand-white: #FFFFFF;
    --brand-gray-1: #F5F5F5; /* Light Gray */
    --brand-gray-9: #2D2D2D; /* Dark Gray */

    --brand-blue-hover: #243747;
    --brand-focus: rgba(232, 119, 34, .35);
}

/* Base */
html {
    font-size: 15px;
}

@media (min-width: 768px) {
    html {
        font-size: 16px;
    }
}

body {
    margin-bottom: 0;
}

/* Divider (mantido) */
.divider-text:before,
.divider-text:after {
    color: white;
    content: "";
    flex: 1;
    border-bottom: 1px solid #555;
    margin: auto 0.25rem;
    box-shadow: 0 -2px;
}

/* Navbar */
.app-navbar {
    background-color: var(--brand-blue);
    border-bottom: 3px solid var(--brand-orange);
}

a.navbar-brand {
    white-space: normal;
    word-break: break-all;
}
.navbar-brand img {
    display: block;
}
/* Botão primário */
.btn-primary {
    background-color: var(--brand-blue);
    border-color: var(--brand-blue);
}

    .btn-primary:hover {
        background-color: var(--brand-blue-hover);
        border-color: var(--brand-blue-hover);
    }

/* Foco/acessibilidade */
.btn:focus,
.btn:active:focus,
.btn-link.nav-link:focus,
.form-control:focus,
.form-select:focus,
.form-check-input:focus {
    box-shadow: 0 0 0 0.1rem #fff, 0 0 0 0.25rem var(--brand-focus);
}

/* Selector de idioma na navbar */
.app-culture-select {
    max-width: 160px;
    background-color: rgba(255, 255, 255, .12);
    border-color: rgba(255, 255, 255, .25);
    color: #fff;
}

    .app-culture-select option {
        color: #000;
    }

/* Footer (sem absolute; layout usa flex + mt-auto) */
.footer {
    position: static;
    line-height: normal;
    white-space: normal;
}

/*.card-accent {
    box-shadow: inset 0 1px 0 var(--brand-orange, #E87722);
}*/

/* NormIT accents */
.text-brand-blue {
    color: var(--brand-blue, #1F2E3C) !important;
}

.text-brand-orange {
    color: var(--brand-orange, #E87722) !important;
}

/* Accent discreto no canto inferior direito do card */
.card-accent {
    position: relative;
    overflow: hidden;
}

    /* “L” no fundo e à direita */
    .card-accent::after {
        content: "";
        position: absolute;
        inset: 0; /* cobre todo o card */
        border-right: 2px solid rgba(232, 119, 34, .30);
        border-bottom: 2px solid rgba(232, 119, 34, .30);
        pointer-events: none;
        border-bottom-right-radius: .75rem; /* acompanha o arredondamento */
    }

/* Header strip com a MESMA linha (opcional) */
.card-header-strip {
    position: relative;
    overflow: hidden;
    background: var(--brand-gray-1, #F5F5F5);
    border-radius: .75rem;
    padding: .75rem 1rem;
}

    .card-header-strip::before {
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        top: 0;
        height: 1px;
        background: rgba(232, 119, 34, .25); /* ainda mais subtil que o card */
    }

/* ========================================
   Product Detail — Custom Branded Tabs
   ======================================== */

.product-tabs {
    border-bottom: 2px solid #e9ecef;
}

    .product-tabs .nav-link {
        color: #6c757d;
        border: none;
        border-bottom: 3px solid transparent;
        border-radius: 0;
        padding: 0.75rem 1.25rem;
        font-weight: 500;
        transition: color 0.2s, border-color 0.2s;
    }

        .product-tabs .nav-link:hover:not(.disabled) {
            color: var(--brand-blue);
            border-bottom-color: rgba(232, 119, 34, .30);
            background-color: transparent;
        }

        .product-tabs .nav-link.active {
            color: var(--brand-blue);
            border-bottom-color: var(--brand-orange);
            background-color: transparent;
        }

        .product-tabs .nav-link.disabled {
            color: #adb5bd;
            cursor: not-allowed;
            opacity: 0.6;
        }

        .product-tabs .nav-link i {
            margin-right: 0.35rem;
        }

/* Counter cards */
.counter-card {
    background: var(--brand-white);
    transition: box-shadow 0.2s;
}

    .counter-card:hover {
        box-shadow: 0 0.125rem 0.5rem rgba(0, 0, 0, 0.08);
    }

/* Site cards — hover effect for clickable cards */
.site-card {
    transition: transform 0.15s, box-shadow 0.15s;
    cursor: pointer;
}

    .site-card:hover {
        transform: translateY(-2px);
        box-shadow: 0 0.25rem 1rem rgba(0, 0, 0, 0.1);
    }

/* ========================================
   Soft / Pastel Status Badges
   Override Bootstrap's strong badge colors
   with softer, more professional tones.
   ======================================== */

/* Success — soft green */
.badge.text-bg-success {
    background-color: rgba(25, 135, 84, 0.15) !important;
    color: #146c43 !important;
}

/* Warning — soft amber */
.badge.text-bg-warning {
    background-color: rgba(255, 193, 7, 0.18) !important;
    color: #997404 !important;
}

/* Danger — soft red */
.badge.text-bg-danger {
    background-color: rgba(220, 53, 69, 0.12) !important;
    color: #b02a37 !important;
}

/* Info — soft blue */
.badge.text-bg-info {
    background-color: rgba(13, 202, 240, 0.15) !important;
    color: #087990 !important;
}

/* Light — subtle gray (barely changed, already soft) */
.badge.text-bg-light {
    background-color: #f0f0f0 !important;
    color: #6c757d !important;
}

/* Secondary — soft gray */
.badge.text-bg-secondary {
    background-color: rgba(108, 117, 125, 0.15) !important;
    color: #565e64 !important;
}

/* Dossier — Current version highlight */
.border-start-primary {
    border-left-color: var(--brand-blue) !important;
}
/* Admin App — distinct charcoal navbar to differentiate from Customer */
.app-navbar {
    background-color: #2D3748 !important;
}