﻿.fieldset2 {
    border: 1px dashed;
    border-color: #0094ff;
    padding: 15px;
    margin-bottom: 10px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

.fieldset2 legend {
    border: 1px solid;
    border-color: #0094ff;
    width: auto;
    color: #0094ff;
    font-size: 14px;
    font-variant: small-caps;
    padding: 0 10px;
    margin: 0 auto 0 0;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    float: unset !important;
}

.legend-title {
    position: absolute;
    top: -0.6em; /* scales with text size */
    left: 15px;
    background: #fff;
    padding: 0 8px;
    font-weight: bold;
}
.txt-color-blue {
    color: #57889c !important
}

.txt-color-blueLight {
    color: #92a2a8 !important
}

.txt-color-blueDark {
    color: #4c4f53 !important
}

.txt-color-green {
    color: #356e35 !important
}

.txt-color-greenLight {
    color: #71843f !important
}

.txt-color-greenDark {
    color: #496949 !important
}

.txt-color-red {
    color: #a90329 !important
}

.txt-color-yellow {
    color: #b09b5b !important
}

.txt-color-orange {
    color: #b19a6b !important
}

.txt-color-orangeDark {
    color: #a57225 !important
}

.txt-color-pink {
    color: #ac5287 !important
}

.txt-color-pinkDark {
    color: #a8829f !important
}

.txt-color-purple {
    color: #6e587a !important
}

.txt-color-darken {
    color: #404040 !important
}

.txt-color-lighten {
    color: #d5e7ec !important
}

.txt-color-white {
    color: #fff !important
}

.txt-color-grayDark {
    color: #525252 !important
}

.txt-color-magenta {
    color: #6e3671 !important
}

.txt-color-teal {
    color: #568a89 !important
}

.txt-color-redLight {
    color: #a65858 !important
}


.required-field:after {
    content: "*";
    color: red;
    font-size: 20px; /* Increase star size */
    font-weight: bold; /* Optional: make it thicker */
    margin-left: 3px;
    line-height: 1;
    vertical-align: top; /* Align nicely with label */
}


.btn-WebApp {
    color: #ffffff;
    background-color: #1d355e;
    border-color: #1d355e;
}
.bg-WebApp {
    color: #ffffff;
    background-color: #2C2A7D;
    border-color: #2C2A7D;
}
.Dashboard-Head {
    color: #ffffff;
    background-color: #f4f0e8;
}

.select2-container .select2-selection--single {
    height: 42px !important;
    border: 1px solid #d1d5db !important;
    border-radius: 8px !important;
    background: #f9fafb !important;
}

.select2-selection__rendered {
    line-height: 42px !important;
}

.select2-selection__arrow {
    height: 42px !important;
}

.dashbord-light-button {
    color: var(--primary-bg-color);
    font-size: 18px;
    line-height: 30px;
    text-align: center;
    vertical-align: middle;
    margin-right: 8px;
    position: relative;
}

.dt-length {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 14px;
}

.dt-length select {
    border: 1px solid #d1d5db;
    border-radius: 6px;
    padding: 4px 24px 4px 4px !important;
}

.dt-length label {
    margin-left: 4px;
}
table.dataTable tbody tr:hover {
    background-color: #f9fafb;
}


/*.section {
    border: 1px solid #ccc;
    margin-top: 25px;
    padding: 20px 15px 15px 15px;
    position: relative;
    background: #fff;
    page-break-inside: avoid;  🔥 important 
}

.section-title {
    position: absolute;
    top: -0.7em;  dynamic based on font 
    left: 15px;
    background: #fff;
    padding: 0 10px;
    font-weight: bold;
    font-size: 16px;
    color: #0094ff;
}
.pdf-section {
    page-break-inside: avoid;
    break-inside: avoid;
    margin-bottom: 10px;
}
.row, .form-group {
    page-break-inside: avoid;
    break-inside: avoid;
}
.page-break {
    page-break-before: always;
    break-before: page;
}


.section-content {
    margin-top: 5px;
}*/

 /*Simple grid (avoid complex flex for PDF) */
/*.row {
    display: table;
    width: 50%;
    margin-bottom: 8px;
}

.col {
    display: table-cell;
    width: 50%;
    padding: 5px;
}*/

/* ===== PDF FIX START ===== */

/* Force A4 layout */
/*.pdf-mode {
    width: 210mm;
    padding: 10mm;
    background: #fff;
    font-size: 12px;
}

.keep-together {
    page-break-inside: avoid;
}
.page-break-before {
    page-break-before: auto;
}
.page-break-after {
    page-break-before: always;
}*/


/* Section should stay together IF possible */
/*.section {
    page-break-inside: avoid;
    break-inside: avoid;
    margin-bottom: 15px;
    border: 1px solid #ccc;
}*/

/* Title must stick with first row */
/*.section-title {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 8px;
    page-break-after: avoid;
    break-after: avoid;
    background: #fff;
    padding: 0 10px;
    font-weight: bold;
    font-size: 16px;
    color: #0094ff;
    position: absolute;
    top: -0.7em;
    
}*/

/* Keep title + first row together */
/*.section-title + .section-content {
    page-break-before: avoid;
}*/

/* Rows should NEVER break */
/*.row {
    display: flex;
    margin-bottom: 6px;
    page-break-inside: avoid;
    break-inside: avoid;
}*/

/* Critical fix for your issue */
/*.section-content {
    page-break-inside: auto;
}*/


/* ===== PDF FIX END ===== */



.section {
    border: 1px solid #ccc;
    margin-top: 25px;
    padding: 20px 15px 15px 15px;
    position: relative;
    background: #fff;
    page-break-inside: avoid; /* 🔥 important */
}

.section-title {
    position: absolute;
    top: -0.7em; /* dynamic based on font */
    left: 15px;
    background: #fff;
    padding: 0 10px;
    font-weight: bold;
    font-size: 16px;
}

.section-content {
    margin-top: 5px;
}

/* Simple grid (avoid complex flex for PDF) */
.row {
    display: table;
    width: 100%;
    margin-bottom: 8px;
}

.col {
    display: table-cell;
    width: 50%;
    padding: 5px;
}

