/* ============================================================
   Puori Dashboard — brand téma
   Brand colors: Dark Teal #00938D, Midnight Blue #001A41,
   Dynamic Green #00DAAF, Dark Warm Grey #6E6D6C, Cool White
   ============================================================ */

:root {
    --puori-teal: #00938D;
    --puori-teal-dark: #007A75;
    --puori-teal-75: #40AEAA;
    --puori-teal-50: #80C9C6;
    --puori-teal-25: #BFE4E3;
    --puori-teal-10: #E6F4F4;
    --puori-midnight: #001A41;
    --puori-green: #00DAAF;
    --puori-grey: #6E6D6C;
    --puori-grey-75: #929291;
    --puori-cool-white: #EEF2F3;
    --puori-cool-white-50: #F7F8F9;

    --bs-body-bg: var(--puori-cool-white-50);
    --bs-body-color: #3a3939;
    --bs-link-color: var(--puori-teal);
    --bs-link-hover-color: var(--puori-teal-dark);
}

body {
    min-height: 100vh;
    background-color: var(--puori-cool-white-50);
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    color: #3a3939;
}

h1, h2, h3, h4, h5, h6, .fw-semibold {
    color: var(--puori-midnight);
}

a { color: var(--puori-teal); }
a:hover { color: var(--puori-teal-dark); }

/* --- Navigácia: gradient Midnight Blue -> Dark Teal --- */
.navbar-puori {
    background: linear-gradient(90deg, var(--puori-midnight) 0%, #00354d 55%, var(--puori-teal) 100%);
}
.navbar-puori .navbar-brand { letter-spacing: .02em; }
.navbar-puori .nav-link { color: rgba(255,255,255,.85); }
.navbar-puori .nav-link:hover { color: #fff; }

/* --- Tlačidlá --- */
.btn-primary {
    --bs-btn-bg: var(--puori-teal);
    --bs-btn-border-color: var(--puori-teal);
    --bs-btn-hover-bg: var(--puori-teal-dark);
    --bs-btn-hover-border-color: var(--puori-teal-dark);
    --bs-btn-active-bg: var(--puori-teal-dark);
    --bs-btn-active-border-color: var(--puori-teal-dark);
    --bs-btn-disabled-bg: var(--puori-teal-50);
    --bs-btn-disabled-border-color: var(--puori-teal-50);
    --bs-btn-focus-shadow-rgb: 0, 147, 141;
}
.btn-outline-primary {
    --bs-btn-color: var(--puori-teal);
    --bs-btn-border-color: var(--puori-teal);
    --bs-btn-hover-bg: var(--puori-teal);
    --bs-btn-hover-border-color: var(--puori-teal);
    --bs-btn-active-bg: var(--puori-teal-dark);
    --bs-btn-active-border-color: var(--puori-teal-dark);
    --bs-btn-focus-shadow-rgb: 0, 147, 141;
}
.btn-outline-light:hover { color: var(--puori-midnight); }

/* --- Karty --- */
.card {
    border: 0;
    border-radius: .75rem;
    box-shadow: 0 1px 3px rgba(0, 26, 65, .08), 0 1px 2px rgba(0, 26, 65, .04);
}
.card-header {
    background: #fff;
    border-bottom: 1px solid var(--puori-cool-white);
    border-radius: .75rem .75rem 0 0 !important;
}
.card-footer { background: #fff; border-top: 1px solid var(--puori-cool-white); }

/* štatistické karty */
.stat-card { border-top: 3px solid var(--puori-teal); }
.stat-card .stat-value { color: var(--puori-midnight); }

/* --- Tabuľky --- */
.table thead th {
    color: var(--puori-grey);
    font-weight: 500;
    text-transform: uppercase;
    font-size: .72rem;
    letter-spacing: .04em;
    border-bottom-color: var(--puori-teal-25);
}
.table tbody td { border-bottom-color: var(--puori-cool-white); }

/* --- Badges --- */
.badge.text-bg-success { background-color: var(--puori-teal) !important; }
.badge.text-bg-info { background-color: var(--puori-green) !important; color: var(--puori-midnight) !important; }

/* --- Alerty --- */
.alert-success {
    --bs-alert-bg: var(--puori-teal-10);
    --bs-alert-border-color: var(--puori-teal-25);
    --bs-alert-color: #00524e;
}
.alert-info {
    --bs-alert-bg: var(--puori-teal-10);
    --bs-alert-border-color: var(--puori-teal-25);
    --bs-alert-color: var(--puori-midnight);
}

/* --- Formuláre --- */
.form-control:focus {
    border-color: var(--puori-teal-50);
    box-shadow: 0 0 0 .25rem rgba(0, 147, 141, .15);
}

/* --- Prihlasovacie obrazovky --- */
.auth-bg {
    background: linear-gradient(135deg, var(--puori-midnight) 0%, #00354d 45%, var(--puori-teal) 100%);
}
.auth-bg .card { border-radius: 1rem; }
.auth-brand { color: var(--puori-midnight); font-weight: 700; letter-spacing: .01em; }
