/* ============================================================
   newsoft – Corporate Base Styles
   Extracted + modernized from bootstrap_zcms.css + allgemein.css
   ============================================================ */

/* ------------------------------------------------------------
   1) Fonts (Roboto) – extracted from your CSS, PATHS 1:1 CORRECT
   ------------------------------------------------------------ */

/* roboto-100 - latin-ext_latin */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 100;
    src: url('/fonts/roboto/roboto-v30-latin-ext_latin-100.eot');
    src: local(''),
        url('/fonts/roboto/roboto-v30-latin-ext_latin-100.eot?#iefix') format('embedded-opentype'),
        url('/fonts/roboto/roboto-v30-latin-ext_latin-100.woff2') format('woff2'),
        url('/fonts/roboto/roboto-v30-latin-ext_latin-100.woff') format('woff'),
        url('/fonts/roboto/roboto-v30-latin-ext_latin-100.ttf') format('truetype'),
        url('/fonts/roboto/roboto-v30-latin-ext_latin-100.svg#Roboto') format('svg');
}

/* roboto-300 - latin-ext_latin */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 300;
    src: url('/fonts/roboto/roboto-v30-latin-ext_latin-300.eot');
    src: local(''),
        url('/fonts/roboto/roboto-v30-latin-ext_latin-300.eot?#iefix') format('embedded-opentype'),
        url('/fonts/roboto/roboto-v30-latin-ext_latin-300.woff2') format('woff2'),
        url('/fonts/roboto/roboto-v30-latin-ext_latin-300.woff') format('woff'),
        url('/fonts/roboto/roboto-v30-latin-ext_latin-300.ttf') format('truetype'),
        url('/fonts/roboto/roboto-v30-latin-ext_latin-300.svg#Roboto') format('svg');
}

/* roboto-regular - latin-ext_latin */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    src: url('/fonts/roboto/roboto-v30-latin-ext_latin-regular.eot');
    src: local(''),
        url('/fonts/roboto/roboto-v30-latin-ext_latin-regular.eot?#iefix') format('embedded-opentype'),
        url('/fonts/roboto/roboto-v30-latin-ext_latin-regular.woff2') format('woff2'),
        url('/fonts/roboto/roboto-v30-latin-ext_latin-regular.woff') format('woff'),
        url('/fonts/roboto/roboto-v30-latin-ext_latin-regular.ttf') format('truetype'),
        url('/fonts/roboto/roboto-v30-latin-ext_latin-regular.svg#Roboto') format('svg');
}

/* roboto-italic - latin-ext_latin */
@font-face {
    font-family: 'Roboto';
    font-style: italic;
    font-weight: 400;
    src: url('/fonts/roboto/roboto-v30-latin-ext_latin-italic.eot');
    src: local(''),
        url('/fonts/roboto/roboto-v30-latin-ext_latin-italic.eot?#iefix') format('embedded-opentype'),
        url('/fonts/roboto/roboto-v30-latin-ext_latin-italic.woff2') format('woff2'),
        url('/fonts/roboto/roboto-v30-latin-ext_latin-italic.woff') format('woff'),
        url('/fonts/roboto/roboto-v30-latin-ext_latin-italic.ttf') format('truetype'),
        url('/fonts/roboto/roboto-v30-latin-ext_latin-italic.svg#Roboto') format('svg');
}

/* roboto-700 - latin-ext_latin */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 700;
    src: url('/fonts/roboto/roboto-v30-latin-ext_latin-700.eot');
    src: local(''),
        url('/fonts/roboto/roboto-v30-latin-ext_latin-700.eot?#iefix') format('embedded-opentype'),
        url('/fonts/roboto/roboto-v30-latin-ext_latin-700.woff2') format('woff2'),
        url('/fonts/roboto/roboto-v30-latin-ext_latin-700.woff') format('woff'),
        url('/fonts/roboto/roboto-v30-latin-ext_latin-700.ttf') format('truetype'),
        url('/fonts/roboto/roboto-v30-latin-ext_latin-700.svg#Roboto') format('svg');
}


/* ------------------------------------------------------------
   2) Design Variables
   ------------------------------------------------------------ */
:root {
    --ns-turquoise: rgb(0, 155, 165);
    --ns-turquoise-hex: #009BA5;
    --ns-info-hex: #e5f5f7;

    --ns-text: #000000;
    --ns-border: #d0d0d0;
    --ns-bg-light: #f8f9fa;

    --ns-font-family: 'Roboto', sans-serif;

    /* Bootstrap Overrides */
    --bs-primary: var(--ns-turquoise-hex);
    --bs-primary-rgb: 0, 155, 165;
    --bs-success: var(--ns-turquoise-hex);
    --bs-success-rgb: 0, 155, 165;
    --bs-info: var(--ns-info-hex);
    --bs-info-rgb: 229, 245, 247;
}

/* Bootstrap Class Overrides */
.text-primary {
    color: var(--ns-turquoise-hex) !important;
}

.bg-primary {
    background-color: var(--ns-turquoise-hex) !important;
}

.text-success {
    color: var(--ns-turquoise-hex) !important;
}

.bg-success {
    background-color: var(--ns-turquoise-hex) !important;
}

.text-info {
    color: var(--ns-info-hex) !important;
}

.bg-info {
    background-color: var(--ns-info-hex) !important;
}

.alert-info {
    background-color: var(--ns-info-hex) !important;
    border-color: var(--ns-info-hex) !important;
    color: var(--ns-text) !important;
}

.alert-primary {
    background-color: rgba(0, 155, 165, 0.1) !important;
    border-color: var(--ns-turquoise-hex) !important;
    color: var(--ns-turquoise-hex) !important;
}

.alert-success {
    background-color: rgba(0, 155, 165, 0.1) !important;
    border-color: var(--ns-turquoise-hex) !important;
    color: var(--ns-turquoise-hex) !important;
}

.alert-danger {
    background-color: #f8d7da !important;
    border-color: #f5c6cb !important;
    color: #721c24 !important;
}

.alert-warning {
    background-color: #fff3cd !important;
    border-color: #ffeeba !important;
    color: #856404 !important;
}

.btn-success {
    background-color: var(--ns-turquoise-hex) !important;
    border-color: var(--ns-turquoise-hex) !important;
    color: #fff !important;
}

.btn-success:hover {
    background-color: #007a82 !important;
    /* Darker turquoise */
    border-color: #007a82 !important;
}

.btn-info {
    background-color: var(--ns-info-hex) !important;
    border-color: var(--ns-info-hex) !important;
    color: var(--ns-text) !important;
}

.btn-info:hover {
    background-color: #d1eff2 !important;
    /* Darker info */
    border-color: #d1eff2 !important;
}


/* ------------------------------------------------------------
   3) Global Typography
   ------------------------------------------------------------ */
body {
    font-family: var(--ns-font-family);
    color: var(--ns-text);
    background-color: #ffffff;
    font-size: 16px;
    line-height: 1.45;
}


/* ------------------------------------------------------------
   4) Links
   ------------------------------------------------------------ */
a {
    color: var(--ns-turquoise);
    text-decoration: none;
}

a:hover {
    color: var(--ns-turquoise);
    text-decoration: none;
}

a:focus {
    outline: 2px solid var(--ns-turquoise-hex);
}


/* ------------------------------------------------------------
   5) Headings
   ------------------------------------------------------------ */
h1,
h2,
h3,
h4,
h5,
h6 {
    color: var(--ns-text);
    font-weight: 500;
    margin-top: 0;
}


/* ------------------------------------------------------------
   6) Navigation (Bootstrap override)
   ------------------------------------------------------------ */
.navbar {
    background-color: #ffffff !important;
    border-bottom: 1px solid var(--ns-turquoise-hex) !important;
}

.navbar-brand {
    font-weight: 700;
    color: var(--ns-turquoise) !important;
}

.nav-link {
    color: var(--ns-text) !important;
}

.nav-link:hover {
    color: var(--ns-turquoise) !important;
}


/* ------------------------------------------------------------
   7) Buttons
   ------------------------------------------------------------ */
.btn-primary {
    background-color: var(--ns-turquoise) !important;
    border-color: var(--ns-turquoise) !important;
}

.btn-primary:hover {
    background-color: var(--ns-text) !important;
    border-color: var(--ns-text) !important;
    color: #ffffff !important;
}

.btn-outline-primary {
    border-color: var(--ns-turquoise) !important;
    color: var(--ns-turquoise) !important;
}

.btn-outline-primary:hover {
    background-color: var(--ns-turquoise) !important;
    color: #ffffff !important;
}


/* ------------------------------------------------------------
   8) Forms
   ------------------------------------------------------------ */
.form-control:focus {
    border-color: var(--ns-turquoise-hex) !important;
    box-shadow: 0 0 0 0.15rem rgba(0, 155, 165, 0.25) !important;
}


/* ------------------------------------------------------------
   9) Tables
   ------------------------------------------------------------ */
.table thead th {
    border-bottom: 2px solid var(--ns-border) !important;
}

.table tbody tr:hover {
    background-color: rgba(0, 155, 165, 0.05);
}


/* ------------------------------------------------------------
   10) Footer
   ------------------------------------------------------------ */
footer {
    border-top: 1px solid var(--ns-turquoise-hex);
}

footer small {
    color: #555;
}