/* UNIHUB application styles. Vendor files (Bootstrap, icons, plugins) stay separate. */
/* Tokens, utilities, responsive layout, dark theme */
:root {
  color-scheme: only light;
  --uh-bg: #ffffff;
  --uh-text: #24303a;
  --uh-heading: #17212b;
  --uh-muted: #5c6770;
  --uh-card: #ffffff;
  --uh-surface: #f5f7fa;
  --uh-border: #d5dde5;
  --uh-primary: #0c4ca0;
  --uh-primary-contrast: #ffffff;
  --uh-input: #ffffff;
  --uh-link: #0c4ca0;
  --uh-shadow: 0 0.5rem 1.25rem rgba(18, 38, 63, 0.08);
}

html.dark-theme {
  color-scheme: only light;
  --uh-bg: #121212;
  --uh-text: #ececec;
  --uh-heading: #f7f7f7;
  --uh-muted: #c4c4c4;
  --uh-card: #1e1e1e;
  --uh-surface: #262626;
  --uh-border: rgba(255, 255, 255, 0.16);
  --uh-primary: #9dc2ff;
  --uh-primary-contrast: #0d1526;
  --uh-input: #2a2a2a;
  --uh-link: #b9d4ff;
  --uh-shadow: 0 0.5rem 1.25rem rgba(0, 0, 0, 0.35);
}

html {
  font-size: 100%;
}

body {
  background-color: var(--uh-bg);
  color: var(--uh-text);
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  color: var(--uh-heading);
}

.uh-hidden { display: none; }
.uh-pointer { cursor: pointer; }
.uh-break { overflow-wrap: anywhere; word-break: break-word; }
.uh-w-full { width: 100%; max-width: 100%; }
.uh-w-auto { width: auto; max-width: 100%; }
.uh-clip { overflow: hidden; }
.uh-inline-block { display: inline-block; max-width: 100%; }

.page-content img,
.page-content video,
.page-content canvas,
.page-content svg {
  max-width: 100%;
}

html.dark-theme body {
  background-color: var(--uh-bg);
  color: var(--uh-text);
}

html.dark-theme h1,
html.dark-theme h2,
html.dark-theme h3,
html.dark-theme h4,
html.dark-theme h5,
html.dark-theme h6,
html.dark-theme .h1,
html.dark-theme .h2,
html.dark-theme .h3,
html.dark-theme .h4,
html.dark-theme .h5,
html.dark-theme .h6 {
  color: var(--uh-heading);
}

html.dark-theme .text-dark,
html.dark-theme .text-body {
  color: var(--uh-text) !important;
}

html.dark-theme .text-muted {
  color: var(--uh-muted) !important;
}

html.dark-theme .bg-white,
html.dark-theme .bg-light {
  background-color: var(--uh-surface) !important;
  color: var(--uh-text) !important;
}

html.dark-theme .card,
html.dark-theme .modal-content,
html.dark-theme .dropdown-menu,
html.dark-theme .list-group-item,
html.dark-theme .page-content,
html.dark-theme .offcanvas,
html.dark-theme .toast {
  background-color: var(--uh-card);
  color: var(--uh-text);
  border-color: var(--uh-border);
}

html.dark-theme .table {
  --bs-table-bg: var(--uh-card);
  --bs-table-color: var(--uh-text);
  --bs-table-border-color: var(--uh-border);
  --bs-table-striped-bg: rgba(255, 255, 255, 0.04);
  --bs-table-hover-bg: rgba(255, 255, 255, 0.08);
  color: var(--uh-text);
  border-color: var(--uh-border);
}

html.dark-theme .form-control,
html.dark-theme .form-select,
html.dark-theme .input-group-text,
html.dark-theme textarea {
  background-color: var(--uh-input);
  color: var(--uh-text);
  border-color: var(--uh-border);
}

html.dark-theme .form-control:focus,
html.dark-theme .form-select:focus {
  background-color: var(--uh-input);
  color: var(--uh-text);
  border-color: var(--uh-primary);
  box-shadow: 0 0 0 0.2rem rgba(157, 194, 255, 0.25);
}

html.dark-theme ::placeholder {
  color: #d0d0d0 !important;
  opacity: 1 !important;
}

html.dark-theme .page-link {
  background-color: var(--uh-card);
  color: var(--uh-text);
  border-color: var(--uh-border);
}

html.dark-theme hr,
html.dark-theme .border,
html.dark-theme .border-top,
html.dark-theme .border-bottom,
html.dark-theme .border-start,
html.dark-theme .border-end {
  border-color: var(--uh-border) !important;
}

/* Shared layout styles moved out of view templates */

/* templates/main.php */
ion-icon {
            visibility: hidden
        }

        .hydrated {
            visibility: inherit
        }

        html,
        body {
            height: 100%;
            margin: 0;
        }

        .wrapper {
            display: flex;
            flex-direction: column;
            min-height: 100%;
        }

        .content {
            flex: 1;
        }

        /* Ensure page-wrapper has proper sidebar margin in desktop view */
        .page-wrapper {
            margin-right: 260px;
            transition: margin-right 0.3s ease-in-out;
        }

        /* Fix for mobile view */
        @media screen and (max-width: 767px) {
            .page-wrapper {
                margin-right: 0 !important;
                width: 100% !important;
                overflow-x: hidden;
            }

            .row {
                margin-right: 0;
                margin-left: 0;
            }
        }

/* templates/main_no_sidebar.php */
ion-icon {
            visibility: hidden
        }

        .hydrated {
            visibility: inherit
        }

        html,
        body {
            height: 100%;
            margin: 0;
        }

        .wrapper {
            display: flex;
            flex-direction: column;
            min-height: 100%;
        }

        .content {
            flex: 1;
        }

        /* Remove sidebar margin */
        .page-wrapper {
            margin-right: 0 !important;
            width: 100% !important;
        }

        .row {
            margin-right: 0;
            margin-left: 0;
        }

/* view-academic-courses-assign-page */
/* source: academic_courses/assign_page.php */
body.view-academic-courses-assign-page th.head{
        font-size: 1.25rem;
        font-weight: bold;
        text-align: center;
    }

    body.view-academic-courses-assign-page .back-button{
        display: flex;
        justify-content: flex-end;
    }

    body.view-academic-courses-assign-page table{
        border-collapse: separate;
        border-spacing: 0 10px;
        /* Space between row groups */
    }


    body.view-academic-courses-assign-page .align-middle{
        vertical-align: middle !important;
    }

/* view-academics-index */
/* source: academics/index.php */
/* Action toolbar */
body.view-academics-index .action-toolbar .card-body{
        background: linear-gradient(180deg, rgba(102, 126, 234, 0.04) 0%, transparent 100%);
    }
    @media (min-width: min(768px, 100%)) {
        body.view-academics-index .action-toolbar .bulk-actions-group{
            border-inline-start: 1px solid rgba(0, 0, 0, 0.1);
            padding-inline-start: 1rem;
        }
    }
    html.dark-theme body.view-academics-index .action-toolbar .bulk-actions-group{
        border-inline-start-color: rgba(255, 255, 255, 0.15);
    }/* Enhanced Table Design */
body.view-academics-index .academics-table{
        margin: 0;
    }

    body.view-academics-index .academics-table thead th{
        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
        color: white;
        font-weight: 600;
        padding: 1rem;
        border: none;
        text-align: right;
        font-size: 0.95rem;
        white-space: nowrap;
        position: sticky;
        top: 0;
        z-index: 10;
    }

    body.view-academics-index .academics-table thead th i{
        font-size: 1.1rem;
        margin-left: 0.5rem;
    }

    body.view-academics-index .academics-table tbody td{
        padding: 1rem;
        vertical-align: middle;
        border-color: rgba(0, 0, 0, 0.05);
    }

    body.view-academics-index .table-row{
        cursor: pointer;
        transition: all 0.2s ease;
        border-left: 3px solid transparent;
    }

    body.view-academics-index .table-row:hover{
        background: linear-gradient(90deg, rgba(102, 126, 234, 0.08) 0%, rgba(102, 126, 234, 0.03) 100%);
        border-left-color: #667eea;
        transform: translateX(-3px);
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    }

    body.view-academics-index .academic-row.selected{
        background: linear-gradient(90deg, rgba(40, 167, 69, 0.2) 0%, rgba(40, 167, 69, 0.08) 100%) !important;
        border-left: 4px solid #28a745;
        box-shadow: 0 2px 8px rgba(40, 167, 69, 0.15);
    }
    html.dark-theme body.view-academics-index .academic-row.selected{
        background: linear-gradient(90deg, rgba(40, 167, 69, 0.25) 0%, rgba(40, 167, 69, 0.12) 100%) !important;
    }

    body.view-academics-index .academic-row.drag-selecting{
        background: rgba(40, 167, 69, 0.15) !important;
    }

    html.dark-theme body.view-academics-index .table-row:hover{
        background: linear-gradient(90deg, rgba(102, 126, 234, 0.15) 0%, rgba(102, 126, 234, 0.08) 100%);
    }/* Faculty Badge */
body.view-academics-index .faculty-badge{
        display: inline-block;
        padding: 0.4rem 0.8rem;
        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
        color: white;
        border-radius: 20px;
        font-size: 0.85rem;
        font-weight: 600;
        white-space: nowrap;
        box-shadow: 0 2px 4px rgba(102, 126, 234, 0.3);
    }/* Filter Section */
body.view-academics-index .card-body .form-label{
        font-size: 0.9rem;
        margin-bottom: 0.5rem;
        color: #495057;
    }

    body.view-academics-index .form-control:focus, body.view-academics-index .form-select:focus{
        border-color: #667eea;
        box-shadow: 0 0 0 0.2rem rgba(102, 126, 234, 0.25);
    }/* Dark theme support */
html.dark-theme body.view-academics-index .academics-table tbody td{
        border-color: rgba(255, 255, 255, 0.05);
        color: #e0e0e0;
    }

    html.dark-theme body.view-academics-index .card-body .form-label{
        color: #e0e0e0;
    }/* DataTables customization */
body.view-academics-index .dataTables_wrapper .dataTables_filter{
        display: none; /* Hide default search */
    }

    body.view-academics-index .dataTables_wrapper .dataTables_length, body.view-academics-index .dataTables_wrapper .dataTables_info, body.view-academics-index .dataTables_wrapper .dataTables_paginate{
        margin-top: 1rem;
    }

    body.view-academics-index .search-highlight{
        background-color: #fff3cd !important;
    }
    html.dark-theme body.view-academics-index .search-highlight{
        background-color: rgba(255, 243, 205, 0.2) !important;
    }/* Inactive Row Styling */
body.view-academics-index .inactive-row{
        background: rgba(220, 53, 69, 0.08) !important;
        opacity: 0.7;
        position: relative;
        border-left: 4px solid #dc3545 !important;
    }

    body.view-academics-index .inactive-row:hover{
        background: rgba(220, 53, 69, 0.15) !important;
    }/* Dark mode */
html.dark-theme body.view-academics-index .inactive-row{
        background: rgba(220, 53, 69, 0.2) !important;
    }

    body.view-academics-index .sort-icon{
        font-size: 0.8rem;
        opacity: 0.5;
        margin-right: 0.25rem;
    }
    body.view-academics-index th:hover .sort-icon{
        opacity: 1;
    }
    body.view-academics-index th:hover{
        background-color: rgba(102, 126, 234, 0.1);
    }
    body.view-academics-index .card-footer{
        background-color: #f8f9fa;
        border-top: 1px solid #dee2e6;
    }

/* view-admin-student-level-corrections-create */
/* source: admin/student_level_corrections/create.php */
/* Style for readonly academic year field */
body.view-admin-student-level-corrections-create #academic_year[readonly]{
    background-color: #f8f9fa;
    border-color: #dee2e6;
    color: #000000 !important;
    cursor: not-allowed;
}/* Make all text black */
body.view-admin-student-level-corrections-create .container-fluid, body.view-admin-student-level-corrections-create .container-fluid *{
    color: #000000 !important;
}/* Ensure table text is black */
body.view-admin-student-level-corrections-create .table, body.view-admin-student-level-corrections-create .table td, body.view-admin-student-level-corrections-create .table th{
    color: #000000 !important;
}/* Ensure form text is black */
body.view-admin-student-level-corrections-create .form-control, body.view-admin-student-level-corrections-create .form-label, body.view-admin-student-level-corrections-create .form-text{
    color: #000000 !important;
}/* Ensure button text is visible */
body.view-admin-student-level-corrections-create .btn{
    color: #000000 !important;
}

body.view-admin-student-level-corrections-create .btn-primary{
    color: #ffffff !important;
}

/* view-admin-student-level-corrections-edit */
/* source: admin/student_level_corrections/edit.php */
/* Make all text black */
body.view-admin-student-level-corrections-edit .container-fluid, body.view-admin-student-level-corrections-edit .container-fluid *{
    color: #000000 !important;
}/* Ensure table text is black */
body.view-admin-student-level-corrections-edit .table, body.view-admin-student-level-corrections-edit .table td, body.view-admin-student-level-corrections-edit .table th{
    color: #000000 !important;
}/* Ensure form text is black */
body.view-admin-student-level-corrections-edit .form-control, body.view-admin-student-level-corrections-edit .form-label, body.view-admin-student-level-corrections-edit .form-text{
    color: #000000 !important;
}/* Ensure button text is visible */
body.view-admin-student-level-corrections-edit .btn{
    color: #000000 !important;
}

body.view-admin-student-level-corrections-edit .btn-primary{
    color: #ffffff !important;
}

/* view-admin-student-level-corrections-index */
/* source: admin/student_level_corrections/index.php */
/* Make all text black */
body.view-admin-student-level-corrections-index .container-fluid, body.view-admin-student-level-corrections-index .container-fluid *{
    color: #000000 !important;
}/* Ensure table text is black */
body.view-admin-student-level-corrections-index .table, body.view-admin-student-level-corrections-index .table td, body.view-admin-student-level-corrections-index .table th{
    color: #000000 !important;
}/* Ensure form text is black */
body.view-admin-student-level-corrections-index .form-control, body.view-admin-student-level-corrections-index .form-label, body.view-admin-student-level-corrections-index .form-text{
    color: #000000 !important;
}/* Ensure button text is visible */
body.view-admin-student-level-corrections-index .btn{
    color: #000000 !important;
}

body.view-admin-student-level-corrections-index .btn-primary{
    color: #ffffff !important;
}

/* view-attendance-academic-info */
/* source: attendance/academic/info.php */
body.view-attendance-academic-info .back-button{
        display: flex;
        justify-content: flex-end;
    }

    body.view-attendance-academic-info .scan-fullscreen-content{
        background: #f8f9fa;
        color: #212529;
    }

    body.view-attendance-academic-info .scan-fullscreen-header{
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 1rem;
        padding: 1rem 1.25rem;
        border-bottom: 1px solid #dee2e6;
        background: #fff;
    }

    body.view-attendance-academic-info .scan-fullscreen-heading{
        min-width: 0;
        flex: 1;
        padding-inline-end: 0.75rem;
    }

    body.view-attendance-academic-info .scan-fullscreen-title{
        font-size: 1.05rem;
        font-weight: 700;
        color: #0d6efd;
        line-height: 1.4;
        word-break: break-word;
    }

    body.view-attendance-academic-info .scan-fullscreen-subtitle{
        font-size: 0.85rem;
        color: #6c757d;
        margin-top: 0.2rem;
    }

    body.view-attendance-academic-info .scan-modal-close{
        flex-shrink: 0;
        padding: 0.75rem;
        background-size: 1.1em;
        opacity: 0.75;
    }

    body.view-attendance-academic-info .scan-modal-close:hover{
        opacity: 1;
    }

    body.view-attendance-academic-info .scan-fullscreen-body{
        flex: 1;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 1rem;
        min-height: 0;
        background: #f8f9fa;
    }

    body.view-attendance-academic-info .scan-video-shell{
        width: min(100%, 720px);
        aspect-ratio: 3 / 4;
        max-height: calc(100vh - 260px);
        border-radius: 18px;
        overflow: hidden;
        background: #000;
        box-shadow: 0 8px 24px rgba(13, 110, 253, 0.12);
        border: 1px solid #dee2e6;
    }

    body.view-attendance-academic-info #qr-video{
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        background: #000;
    }

    body.view-attendance-academic-info .scan-modal-counter{
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 0.5rem;
        padding: 0.75rem 1.25rem;
        background: #fff;
        border: 1px solid #dee2e6;
        border-radius: 12px;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
    }

    body.view-attendance-academic-info .scan-modal-counter-label, body.view-attendance-academic-info .scan-modal-counter-unit{
        color: #495057;
        font-weight: 600;
    }

    html.dark-theme body.view-attendance-academic-info .academic-attendance-info-page .page-main-title, html.dark-theme body.view-attendance-academic-info .academic-attendance-info-page .card-title{
        color: #fcfcfc;
    }

    html.dark-theme body.view-attendance-academic-info .academic-attendance-info-page .page-subtitle, html.dark-theme body.view-attendance-academic-info .academic-attendance-info-page .text-muted{
        color: #adb5bd !important;
    }

    html.dark-theme body.view-attendance-academic-info .academic-attendance-info-page .card{
        background-color: #212529;
        border-color: #2f353a;
    }

    html.dark-theme body.view-attendance-academic-info .academic-attendance-info-page .card-header{
        background-color: #2b3035;
        border-bottom-color: #3a4046;
        color: #fcfcfc;
    }

    html.dark-theme body.view-attendance-academic-info .scan-fullscreen-content, html.dark-theme body.view-attendance-academic-info .scan-fullscreen-body{
        background: #1e2228;
        color: #fcfcfc;
    }

    html.dark-theme body.view-attendance-academic-info .scan-fullscreen-header{
        background: #23272e;
        border-bottom-color: #3a4046;
    }

    html.dark-theme body.view-attendance-academic-info .scan-fullscreen-title{
        color: #6ea8fe;
    }

    html.dark-theme body.view-attendance-academic-info .scan-fullscreen-subtitle{
        color: #adb5bd;
    }

    html.dark-theme body.view-attendance-academic-info .scan-modal-close{
        filter: invert(1) grayscale(100%) brightness(200%);
    }

    html.dark-theme body.view-attendance-academic-info .scan-video-shell{
        border-color: #3a4046;
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35);
    }

    html.dark-theme body.view-attendance-academic-info .scan-modal-counter{
        background: #23272e;
        border-color: #3a4046;
    }

    html.dark-theme body.view-attendance-academic-info .scan-modal-counter-label, html.dark-theme body.view-attendance-academic-info .scan-modal-counter-unit{
        color: #ced4da;
    }

    @media (orientation: landscape) {
        body.view-attendance-academic-info .scan-video-shell{
            aspect-ratio: 16 / 10;
            max-height: calc(100vh - 200px);
        }
    }

/* view-attendance-academic-scan */
/* source: attendance/academic/scan.php */
body.view-attendance-academic-scan .back-button{
        display: flex;
        justify-content: flex-end;
    }

    body.view-attendance-academic-scan .scan-fullscreen-content{
        background: #f8f9fa;
        color: #212529;
    }

    body.view-attendance-academic-scan .scan-fullscreen-header{
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 1rem;
        padding: 1rem 1.25rem;
        border-bottom: 1px solid #dee2e6;
        background: #fff;
    }

    body.view-attendance-academic-scan .scan-fullscreen-heading{
        min-width: 0;
        flex: 1;
        padding-inline-end: 0.75rem;
    }

    body.view-attendance-academic-scan .scan-fullscreen-title{
        font-size: 1.05rem;
        font-weight: 700;
        color: #0d6efd;
        line-height: 1.4;
        word-break: break-word;
    }

    body.view-attendance-academic-scan .scan-fullscreen-subtitle{
        font-size: 0.85rem;
        color: #6c757d;
        margin-top: 0.2rem;
    }

    body.view-attendance-academic-scan .scan-modal-close{
        flex-shrink: 0;
        padding: 0.75rem;
        background-size: 1.1em;
        opacity: 0.75;
    }

    body.view-attendance-academic-scan .scan-modal-close:hover{
        opacity: 1;
    }

    body.view-attendance-academic-scan .scan-fullscreen-body{
        flex: 1;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 1rem;
        min-height: 0;
        background: #f8f9fa;
    }

    body.view-attendance-academic-scan .scan-hint{
        color: #0d6efd;
        font-weight: 600;
    }

    body.view-attendance-academic-scan .scan-video-shell{
        width: min(100%, 720px);
        aspect-ratio: 3 / 4;
        max-height: calc(100vh - 260px);
        border-radius: 18px;
        overflow: hidden;
        background: #000;
        box-shadow: 0 8px 24px rgba(13, 110, 253, 0.12);
        border: 1px solid #dee2e6;
    }

    body.view-attendance-academic-scan #qr-video{
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        background: #000;
    }

    body.view-attendance-academic-scan .scan-modal-counter{
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 0.5rem;
        padding: 0.75rem 1.25rem;
        background: #fff;
        border: 1px solid #dee2e6;
        border-radius: 12px;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
    }

    body.view-attendance-academic-scan .scan-modal-counter-label, body.view-attendance-academic-scan .scan-modal-counter-unit{
        color: #495057;
        font-weight: 600;
    }

    html.dark-theme body.view-attendance-academic-scan .scan-fullscreen-content, html.dark-theme body.view-attendance-academic-scan .scan-fullscreen-body{
        background: #1e2228;
        color: #fcfcfc;
    }

    html.dark-theme body.view-attendance-academic-scan .scan-fullscreen-header{
        background: #23272e;
        border-bottom-color: #3a4046;
    }

    html.dark-theme body.view-attendance-academic-scan .scan-fullscreen-title, html.dark-theme body.view-attendance-academic-scan .scan-hint{
        color: #6ea8fe;
    }

    html.dark-theme body.view-attendance-academic-scan .scan-fullscreen-subtitle{
        color: #adb5bd;
    }

    html.dark-theme body.view-attendance-academic-scan .scan-modal-close{
        filter: invert(1) grayscale(100%) brightness(200%);
    }

    html.dark-theme body.view-attendance-academic-scan .scan-video-shell{
        border-color: #3a4046;
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35);
    }

    html.dark-theme body.view-attendance-academic-scan .scan-modal-counter{
        background: #23272e;
        border-color: #3a4046;
    }

    html.dark-theme body.view-attendance-academic-scan .scan-modal-counter-label, html.dark-theme body.view-attendance-academic-scan .scan-modal-counter-unit{
        color: #ced4da;
    }

    @media (orientation: landscape) {
        body.view-attendance-academic-scan .scan-video-shell{
            aspect-ratio: 16 / 10;
            max-height: calc(100vh - 200px);
        }
    }

/* view-attendance-attendance-error */
/* source: attendance/attendance_error.php */
body.view-attendance-attendance-error .decline-logo{
        vertical-align: auto;
    }

/* view-attendance-index */
/* source: attendance/index.php */
body.view-attendance-index .input-group{
        display: flex;
        justify-content: center;
        max-width: 70%;
        margin: 0 auto 30px;
    }

    body.view-attendance-index .card{
        margin: 50px;
    }

    /* Mobile-friendly styles */
    @media (max-width: 768px) {
        body.view-attendance-index .page-content-wrapper{
            padding: 10px;
        }
        
        body.view-attendance-index .input-group{
            max-width: 95%;
            margin: 0 auto 20px;
            flex-direction: column;
            gap: 10px;
        }
        
        body.view-attendance-index .input-group .form-select, body.view-attendance-index .input-group .form-control{
            width: 100%;
            margin-bottom: 10px;
        }
        
        body.view-attendance-index .input-group .btn{
            width: 100%;
            margin-top: 10px;
        }
        
        body.view-attendance-index .card{
            margin: 20px 10px;
        }
        
        body.view-attendance-index h2, body.view-attendance-index h3{
            font-size: 1.5rem;
            margin: 20px 0;
        }
        
        body.view-attendance-index .table-responsive{
            font-size: 0.85rem;
        }
        
        body.view-attendance-index .table th, body.view-attendance-index .table td{
            padding: 0.5rem 0.25rem;
            vertical-align: middle;
        }
        
        body.view-attendance-index .table th{
            font-size: 0.8rem;
            white-space: nowrap;
        }
        
        body.view-attendance-index .btn{
            padding: 0.375rem 0.75rem;
            font-size: 0.8rem;
        }/* Statistics section mobile styles */
body.view-attendance-index .card-header h4{
            font-size: 1.1rem;
        }
        
        body.view-attendance-index .form-label{
            font-size: 0.9rem;
            font-weight: 600;
        }
        
        body.view-attendance-index .form-select{
            font-size: 0.85rem;
        }/* Modal mobile styles */
body.view-attendance-index .modal-xl{
            max-width: 95%;
        }
        
        body.view-attendance-index .modal-body .row{
            margin: 0;
        }
        
        body.view-attendance-index .modal-body .col-md-6{
            margin-bottom: 1rem;
        }
        
        body.view-attendance-index .stat-item h4{
            font-size: 1.3rem;
        }
        
        body.view-attendance-index .stat-item p{
            font-size: 0.75rem;
        }/* Adjust column layout for mobile */
body.view-attendance-index .modal-body .col-md-3{
            margin-bottom: 0.5rem;
        }
        
        /* Stack table columns on very small screens */
        @media (max-width: 576px) {
            body.view-attendance-index .input-group{
                max-width: 100%;
                padding: 0 10px;
            }
            
            body.view-attendance-index .table-responsive{
                overflow-x: auto;
                -webkit-overflow-scrolling: touch;
            }
            
            body.view-attendance-index .table{
                min-width: min(700px, 100%);
            }
            
            body.view-attendance-index .table th, body.view-attendance-index .table td{
                padding: 0.3rem 0.2rem;
                font-size: 0.75rem;
            }
            
            body.view-attendance-index .btn{
                padding: 0.25rem 0.5rem;
                font-size: 0.7rem;
            }
            
            body.view-attendance-index h2, body.view-attendance-index h3{
                font-size: 1.25rem;
                margin: 15px 0;
            }/* Statistics mobile styles */
body.view-attendance-index .card-header h4{
                font-size: 1rem;
            }
            
            body.view-attendance-index .form-label{
                font-size: 0.8rem;
            }
            
            body.view-attendance-index .form-select{
                font-size: 0.8rem;
            }
            
            body.view-attendance-index .modal-xl{
                max-width: 98%;
            }
            
            body.view-attendance-index .stat-item h4{
                font-size: 1rem;
            }
            
            body.view-attendance-index .stat-item p{
                font-size: 0.7rem;
            }/* Stack statistics in smaller columns on very small screens */
body.view-attendance-index .modal-body .col-md-3{
                flex: 0 0 50%;
                max-width: 50%;
            }
        }
    }

/* view-attendance-info */
/* source: attendance/info.php */
body.view-attendance-info .back-button{
        display: flex;
        justify-content: flex-end;
    }

/* view-attendance-qrcode */
/* source: attendance/qrcode.php */
/* QR Code Styling */
body.view-attendance-qrcode .manual-student-attendance{
        display: flex;
        justify-content: center;
        visibility: visible;
    }

    body.view-attendance-qrcode .input-group{
        max-width: 60%;
    }

    body.view-attendance-qrcode #qr-code-container{
        display: flex;
        justify-content: center;
        align-items: center;
        margin-bottom: 20px;
    }

    body.view-attendance-qrcode #qrcode{
        display: flex;
        justify-content: center;
        align-items: center;
        background: #B2B1B9;
        /* Make base size responsive: min 200px, prefer ~45vmin, max 300px */
        width: clamp(200px, 45vmin, 300px);
        height: clamp(200px, 45vmin, 300px);
        border-radius: 30px;
        cursor: pointer;
        /* Add cursor pointer */
    }

    body.view-attendance-qrcode .card{
        margin: 30px;
    }/* Full-screen QR Code Styling */
body.view-attendance-qrcode .fullscreen-overlay{
        position: fixed;
        top: 0;
        left: 0;
        width: 100vw;
        height: 100vh;
        background: rgba(255, 255, 255, 0.8);
   
        display: flex;
        justify-content: center;
        align-items: center;
        z-index: 1000;
        display: none;
       
    }

    body.view-attendance-qrcode .fullscreen-qr{
        background: #ffffff;
        padding: 20px;
        border-radius: 20px;
        box-shadow: 0px 0px 10px rgba(255, 255, 255, 0.5);
    }

    body.view-attendance-qrcode .fullscreen-qr img{
        width: 80vmin;
        max-width: 600px;
        height: auto;
        cursor: pointer;
    }/* Also scale canvas-based QR in fullscreen */
body.view-attendance-qrcode .fullscreen-qr #fullscreenQr > canvas, body.view-attendance-qrcode .fullscreen-qr #fullscreenQr > img, body.view-attendance-qrcode .fullscreen-qr #fullscreenQr > div > canvas{
        width: 80vmin !important;
        height: 80vmin !important;
    }

    /* Mobile-friendly styles */
    @media (max-width: 768px) {
        body.view-attendance-qrcode .page-content-wrapper{
            padding: 10px;
        }
        
        body.view-attendance-qrcode h2{
            font-size: 1.5rem;
            margin: 15px 0;
        }
        
        body.view-attendance-qrcode .card{
            margin: 15px 0;
        }
        
        body.view-attendance-qrcode .attendance-counter{
            font-size: 1.1rem;
        }
        
        body.view-attendance-qrcode #qrcode{
            width: clamp(180px, 50vmin, 250px);
            height: clamp(180px, 50vmin, 250px);
            border-radius: 25px;
        }
        
        body.view-attendance-qrcode .input-group{
            max-width: 100%;
            flex-direction: column;
            gap: 10px;
        }
        
        body.view-attendance-qrcode .input-group .form-control{
            width: 100%;
            margin-bottom: 10px;
        }
        
        body.view-attendance-qrcode .input-group .btn{
            width: 100%;
            margin-top: 10px;
        }
        
        
        body.view-attendance-qrcode .fullscreen-qr img{
            width: 90vmin;
            max-width: 400px;
        }
        
        /* Very small screens */
        @media (max-width: 576px) {
            body.view-attendance-qrcode h2{
                font-size: 1.25rem;
                margin: 10px 0;
            }
            
            body.view-attendance-qrcode #qrcode{
                width: clamp(160px, 55vmin, 200px);
                height: clamp(160px, 55vmin, 200px);
                border-radius: 20px;
            }
            
            body.view-attendance-qrcode .attendance-counter{
                font-size: 1rem;
            }
            
            body.view-attendance-qrcode .badge{
                font-size: 1rem;
            }
            
            body.view-attendance-qrcode .fullscreen-qr img{
                width: 95vmin;
                max-width: 300px;
            }
        }
    }

    /* Landscape (rotated) handling on mobile/tablet: keep QR fully visible */
    @media (orientation: landscape) and (max-width: 1024px) {
        body.view-attendance-qrcode .page-content-wrapper{
            padding: 8px;
        }
        body.view-attendance-qrcode #qrcode{
            width: clamp(160px, 36vmin, 260px);
            height: clamp(160px, 36vmin, 260px);
        }
        body.view-attendance-qrcode .card{ margin: 15px; }
    }

/* view-attendance-student-attendance-index */
/* source: attendance/student_attendance_index.php */
@media (max-width: 576px) {
        body.view-attendance-student-attendance-index #qr-video{
            height: 250px !important;
        }
    }
    
    
    body.view-attendance-student-attendance-index #qr-video{
        transition:  visibility 0.5s ease;
    }

/* view-attendance-student-index */
/* source: attendance/student/index.php */
body.view-attendance-student-index .back-button{
        display: flex;
        justify-content: flex-end;
    }

    body.view-attendance-student-index .student-attendance-table th, body.view-attendance-student-index .student-attendance-table td{
        vertical-align: middle;
        min-width: 110px;
    }

    body.view-attendance-student-index .student-attendance-table .course-col{
        min-width: 140px;
        max-width: 170px;
        width: 150px;
        position: sticky;
        right: 0;
        z-index: 2;
        background: #fff;
        box-shadow: -4px 0 8px rgba(0, 0, 0, 0.06);
        word-break: break-word;
        white-space: normal;
        font-size: 0.85rem;
        padding: 0.5rem !important;
    }

    @media (max-width: 576px) {
        body.view-attendance-student-index .student-attendance-table .course-col{
            min-width: 110px;
            max-width: 130px;
            width: 120px;
            font-size: 0.78rem;
            padding: 0.4rem !important;
        }

        body.view-attendance-student-index .student-attendance-table th, body.view-attendance-student-index .student-attendance-table td{
            min-width: 90px;
        }
    }

    body.view-attendance-student-index .student-attendance-table thead .course-col{
        background: #212529;
        color: #fff;
        z-index: 3;
    }

    body.view-attendance-student-index .student-attendance-table tbody tr:nth-of-type(odd) > .course-col.table-active, body.view-attendance-student-index .student-attendance-table tbody tr:nth-of-type(odd) > .course-col{
        background: #f8f9fa;
    }

    body.view-attendance-student-index .student-attendance-table tbody tr:nth-of-type(even) > .course-col{
        background: #fff;
    }

    body.view-attendance-student-index .student-attendance-table tbody tr:nth-of-type(even) > .course-col.table-active{
        background: rgba(0, 0, 0, 0.05);
    }

    body.view-attendance-student-index .attendance-cell .present-mark{
        color: #198754;
        font-size: 1.6rem;
        line-height: 1;
    }

    body.view-attendance-student-index .attendance-cell .created-at{
        margin-top: 0.35rem;
        font-size: 0.72rem;
        color: #198754;
        direction: ltr;
        white-space: nowrap;
    }

    body.view-attendance-student-index .attendance-cell .muted-created{
        color: #6c757d;
    }

    body.view-attendance-student-index .attendance-cell .empty-cell{
        color: #6c757d;
    }/* Dark mode (template uses html.dark-theme) */
html.dark-theme body.view-attendance-student-index .student-attendance-page .page-main-title, html.dark-theme body.view-attendance-student-index .student-attendance-page .card-title{
        color: #fcfcfc;
    }

    html.dark-theme body.view-attendance-student-index .student-attendance-page .page-subtitle, html.dark-theme body.view-attendance-student-index .student-attendance-page .text-muted, html.dark-theme body.view-attendance-student-index .student-attendance-page .course-name-en, html.dark-theme body.view-attendance-student-index .student-attendance-page .empty-cell, html.dark-theme body.view-attendance-student-index .student-attendance-page .muted-created{
        color: #adb5bd !important;
    }

    html.dark-theme body.view-attendance-student-index .student-attendance-page .card{
        background-color: #212529;
        border-color: #2f353a;
    }

    html.dark-theme body.view-attendance-student-index .student-attendance-page .card-header{
        background-color: #2b3035;
        border-bottom-color: #3a4046;
        color: #fcfcfc;
    }

    html.dark-theme body.view-attendance-student-index .student-attendance-page .student-attendance-table{
        color: #fcfcfc;
        --bs-table-bg: transparent;
        --bs-table-color: #fcfcfc;
        --bs-table-striped-bg: rgba(255, 255, 255, 0.05);
        --bs-table-striped-color: #fcfcfc;
        --bs-table-active-bg: rgba(255, 255, 255, 0.1);
        --bs-table-active-color: #fcfcfc;
        --bs-table-border-color: #3a4046;
    }

    html.dark-theme body.view-attendance-student-index .student-attendance-page .student-attendance-table > :not(caption) > * > *{
        background-color: var(--bs-table-bg);
        color: var(--bs-table-color);
        border-color: #3a4046;
    }

    html.dark-theme body.view-attendance-student-index .student-attendance-page .student-attendance-table .table-active{
        --bs-table-bg-type: rgba(255, 255, 255, 0.1);
        color: #fcfcfc;
    }

    html.dark-theme body.view-attendance-student-index .student-attendance-page .student-attendance-table .course-col{
        background: #212529;
        box-shadow: -4px 0 8px rgba(0, 0, 0, 0.35);
    }

    html.dark-theme body.view-attendance-student-index .student-attendance-page .student-attendance-table thead .course-col{
        background: #212529;
        color: #fcfcfc;
    }

    html.dark-theme body.view-attendance-student-index .student-attendance-page .student-attendance-table tbody tr:nth-of-type(odd) > .course-col, html.dark-theme body.view-attendance-student-index .student-attendance-page .student-attendance-table tbody tr:nth-of-type(odd) > .course-col.table-active{
        background: #2b3035;
    }

    html.dark-theme body.view-attendance-student-index .student-attendance-page .student-attendance-table tbody tr:nth-of-type(even) > .course-col, html.dark-theme body.view-attendance-student-index .student-attendance-page .student-attendance-table tbody tr:nth-of-type(even) > .course-col.table-active{
        background: #212529;
    }

    html.dark-theme body.view-attendance-student-index .student-attendance-page .attendance-cell .present-mark{
        color: #3dd68c;
    }

    html.dark-theme body.view-attendance-student-index .student-attendance-page .attendance-cell .created-at:not(.muted-created){
        color: #3dd68c;
    }

    html.dark-theme body.view-attendance-student-index .student-attendance-page .alert-info{
        background-color: rgba(13, 202, 240, 0.15);
        border-color: rgba(13, 202, 240, 0.35);
        color: #9eeaf9;
    }

    html.dark-theme body.view-attendance-student-index .student-attendance-page .btn-outline-info{
        color: #6edff6;
        border-color: #6edff6;
    }

    html.dark-theme body.view-attendance-student-index .student-attendance-page .btn-outline-info:hover{
        color: #0b1c24;
        background-color: #6edff6;
        border-color: #6edff6;
    }

/* view-auth-login */
/* source: auth/login.php */
body.view-auth-login .login-container{
      min-height: 100vh;
      background-color: #f8f9fa;
      background-image: url('../images/EPNU-bg.jpg');
      background-size: cover;
      background-position: center;
    }

    body.view-auth-login .login-card{
      background-color: rgba(255, 255, 255, 0.8);
      border-radius: 20px;
      box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
    }


    body.view-auth-login .login-form-container{
      background-color: rgba(255, 255, 255, 0.5);
      box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
      border-radius: 15px;
      padding: 30px;
    }

    body.view-auth-login .login-title{
      font-size: 1.5rem;
    }

    body.view-auth-login .forgot-password{
      color: #007bff;
    }

    body.view-auth-login .g-recaptcha{
      transform: scale(0.9);
      transform-origin: center;
    }

    @media (max-width: 576px) {
      body.view-auth-login .g-recaptcha{
        transform: scale(0.8);
      }
    }

    @media (max-width: 400px) {
      body.view-auth-login .g-recaptcha{
        transform: scale(0.7);
      }
    }

/* view-cards-academic-cards */
/* source: cards/academic_cards.php */
body.view-cards-academic-cards .academic-cards-toolbar{
        border-inline-start: 4px solid var(--bs-primary);
    }

    body.view-cards-academic-cards .table-academic-cards{
        --bs-table-hover-bg: rgba(var(--bs-primary-rgb), 0.04);
    }

    body.view-cards-academic-cards .table-academic-cards thead th{
        font-weight: 600;
        font-size: 0.8125rem;
        text-transform: none;
        letter-spacing: 0;
        border-bottom-width: 1px;
        white-space: nowrap;
    }

    body.view-cards-academic-cards .table-academic-cards .col-select{
        width: 3.25rem;
        vertical-align: middle;
    }

    body.view-cards-academic-cards .table-academic-cards .col-select .form-check-input{
        width: 1.15rem;
        height: 1.15rem;
        margin: 0;
        cursor: pointer;
    }

    body.view-cards-academic-cards .table-academic-cards tbody td{
        font-size: 0.9rem;
    }

    body.view-cards-academic-cards .table-academic-cards .faculty-cell{
        max-width: 14rem;
        line-height: 1.45;
    }

    @media (min-width: min(992px, 100%)) {
        body.view-cards-academic-cards .table-academic-cards .faculty-cell{
            max-width: 18rem;
        }
    }

    body.view-cards-academic-cards .academic-cards-hero{
        background: linear-gradient(135deg, rgba(var(--bs-primary-rgb), 0.06) 0%, transparent 55%);
    }

    body.view-cards-academic-cards .academic-cards-hero-icon{
        width: 3.5rem;
        height: 3.5rem;
        flex-shrink: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 0.75rem;
        background-color: rgba(var(--bs-primary-rgb), 0.12);
        border: 1px solid rgba(var(--bs-primary-rgb), 0.2);
    }

    body.view-cards-academic-cards .academic-cards-hero-icon i{
        font-size: 1.75rem;
        line-height: 1;
        color: var(--bs-primary);
    }

    body.view-cards-academic-cards .academic-cards-hero-title{
        font-size: clamp(1.15rem, 2.5vw, 1.4rem);
    }

/* view-cards-security-index */
/* source: cards/security_index.php */
body.view-cards-security-index .security-cards-toolbar{
        border-inline-start: 4px solid var(--bs-primary);
    }

    body.view-cards-security-index .table-security-cards{
        --bs-table-hover-bg: rgba(var(--bs-primary-rgb), 0.04);
    }

    body.view-cards-security-index .table-security-cards thead th{
        font-weight: 600;
        font-size: 0.8125rem;
        border-bottom-width: 1px;
        white-space: nowrap;
    }

    body.view-cards-security-index .table-security-cards .col-select{
        width: 3.25rem;
        vertical-align: middle;
    }

    body.view-cards-security-index .table-security-cards .col-select .form-check-input{
        width: 1.15rem;
        height: 1.15rem;
        margin: 0;
        cursor: pointer;
    }

    body.view-cards-security-index .table-security-cards tbody td{
        font-size: 0.9rem;
    }

    body.view-cards-security-index .security-cards-hero{
        background: linear-gradient(135deg, rgba(var(--bs-primary-rgb), 0.06) 0%, transparent 55%);
    }

    body.view-cards-security-index .security-cards-hero-icon{
        width: 3.5rem;
        height: 3.5rem;
        flex-shrink: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 0.75rem;
        background-color: rgba(var(--bs-primary-rgb), 0.12);
        border: 1px solid rgba(var(--bs-primary-rgb), 0.2);
    }

    body.view-cards-security-index .security-cards-hero-icon i{
        font-size: 1.75rem;
        line-height: 1;
        color: var(--bs-primary);
    }

    body.view-cards-security-index .security-cards-hero-title{
        font-size: clamp(1.15rem, 2.5vw, 1.4rem);
    }

/* view-clinic-booking-admin-report */
/* source: clinic_booking/admin_report.php */
body.view-clinic-booking-admin-report .card{
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
    border: 1px solid rgba(0, 0, 0, 0.125);
}

body.view-clinic-booking-admin-report .table-hover tbody tr:hover{
    background-color: rgba(0,0,0,.075);
}

body.view-clinic-booking-admin-report .table td, body.view-clinic-booking-admin-report .table th{
    padding: 0.75rem;
    vertical-align: middle;
}

body.view-clinic-booking-admin-report .btn-group .btn{
    margin-right: 2px;
}

body.view-clinic-booking-admin-report .btn-group .btn:last-child{
    margin-right: 0;
}

body.view-clinic-booking-admin-report .badge{
    font-size: 0.75em;
}

body.view-clinic-booking-admin-report .alert-info{
    background-color: #d1ecf1;
    border-color: #bee5eb;
    color: #0c5460;
}

body.view-clinic-booking-admin-report .bg-primary{ background-color: #0d6efd !important; }
body.view-clinic-booking-admin-report .bg-success{ background-color: #198754 !important; }
body.view-clinic-booking-admin-report .bg-warning{ background-color: #ffc107 !important; }
body.view-clinic-booking-admin-report .bg-info{ background-color: #0dcaf0 !important; }
body.view-clinic-booking-admin-report .bg-danger{ background-color: #dc3545 !important; }

/* view-clinic-booking-confirmation */
/* source: clinic_booking/confirmation.php */
body.view-clinic-booking-confirmation .card{
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
    border: 1px solid rgba(0, 0, 0, 0.125);
}

body.view-clinic-booking-confirmation .card-body{
    padding: 2rem;
}

body.view-clinic-booking-confirmation .bg-light{
    background-color: #f8f9fa !important;
}

body.view-clinic-booking-confirmation .text-primary{
    color: #0d6efd !important;
}

body.view-clinic-booking-confirmation .text-success{
    color: #198754 !important;
}

body.view-clinic-booking-confirmation .alert-info{
    background-color: #d1ecf1;
    border-color: #bee5eb;
    color: #0c5460;
}

body.view-clinic-booking-confirmation .btn-primary{
    background-color: #0d6efd;
    border-color: #0d6efd;
}

body.view-clinic-booking-confirmation .btn-primary:hover{
    background-color: #0b5ed7;
    border-color: #0a58ca;
}

body.view-clinic-booking-confirmation .btn-outline-primary{
    color: #0d6efd;
    border-color: #0d6efd;
}

body.view-clinic-booking-confirmation .btn-outline-primary:hover{
    color: #fff;
    background-color: #0d6efd;
    border-color: #0d6efd;
}

/* view-clinic-booking-form */
/* source: clinic_booking/form.php */
body.view-clinic-booking-form .form-control:focus, body.view-clinic-booking-form .form-select:focus{
    border-color: #0d6efd;
    box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.25);
}

body.view-clinic-booking-form .btn-primary{
    background-color: #0d6efd;
    border-color: #0d6efd;
}

body.view-clinic-booking-form .btn-primary:hover{
    background-color: #0b5ed7;
    border-color: #0a58ca;
}

body.view-clinic-booking-form .alert-info{
    background-color: #d1ecf1;
    border-color: #bee5eb;
    color: #0c5460;
}

body.view-clinic-booking-form .card{
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
    border: 1px solid rgba(0, 0, 0, 0.125);
}

body.view-clinic-booking-form .card-body{
    padding: 2rem;
}

body.view-clinic-booking-form .form-label{
    font-weight: 600;
    margin-bottom: 0.5rem;
}

body.view-clinic-booking-form .text-danger{
    color: #dc3545 !important;
}

body.view-clinic-booking-form .invalid-feedback{
    display: none;
    width: 100%;
    margin-top: 0.25rem;
    font-size: 0.875em;
    color: #dc3545;
}

body.view-clinic-booking-form .was-validated .form-control:invalid ~ .invalid-feedback, body.view-clinic-booking-form .was-validated .form-select:invalid ~ .invalid-feedback, body.view-clinic-booking-form .form-control.is-invalid ~ .invalid-feedback, body.view-clinic-booking-form .form-select.is-invalid ~ .invalid-feedback{
    display: block;
}

body.view-clinic-booking-form .was-validated .form-control:invalid, body.view-clinic-booking-form .was-validated .form-select:invalid, body.view-clinic-booking-form .form-control.is-invalid, body.view-clinic-booking-form .form-select.is-invalid{
    border-color: #dc3545;
}

body.view-clinic-booking-form .was-validated .form-control:valid, body.view-clinic-booking-form .was-validated .form-select:valid, body.view-clinic-booking-form .form-control.is-valid, body.view-clinic-booking-form .form-select.is-valid{
    border-color: #198754;
}

/* view-clinic-booking-medical-examination-details */
/* source: clinic_booking/medical_examination_details.php */
body.view-clinic-booking-medical-examination-details .card{
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
    border: 1px solid rgba(0, 0, 0, 0.125);
}

body.view-clinic-booking-medical-examination-details .form-control-plaintext{
    padding: 0.375rem 0;
    margin-bottom: 0;
    line-height: 1.5;
    background-color: transparent;
    border: solid transparent;
    border-width: 1px 0;
}

body.view-clinic-booking-medical-examination-details .badge{
    font-size: 0.875em;
}

body.view-clinic-booking-medical-examination-details .bg-primary{ background-color: #0d6efd !important; }
body.view-clinic-booking-medical-examination-details .bg-info{ background-color: #0dcaf0 !important; }
body.view-clinic-booking-medical-examination-details .bg-warning{ background-color: #ffc107 !important; }
body.view-clinic-booking-medical-examination-details .bg-success{ background-color: #198754 !important; }
body.view-clinic-booking-medical-examination-details .bg-danger{ background-color: #dc3545 !important; }
body.view-clinic-booking-medical-examination-details .bg-secondary{ background-color: #6c757d !important; }

/* view-clinic-inventory-store-out-create */
/* source: clinic_inventory/store_out/create.php */
body.view-clinic-inventory-store-out-create #student_results, body.view-clinic-inventory-store-out-create .medicine-results{
    background: white;
    border: 1px solid #ddd;
    border-radius: 4px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

body.view-clinic-inventory-store-out-create #student_results .list-group-item, body.view-clinic-inventory-store-out-create .medicine-results .list-group-item{
    cursor: pointer;
}

body.view-clinic-inventory-store-out-create #student_results .list-group-item:hover, body.view-clinic-inventory-store-out-create .medicine-results .list-group-item:hover{
    background-color: #f8f9fa;
}

body.view-clinic-inventory-store-out-create .stock-info{
    display: block;
    margin-top: 5px;
    font-weight: 500;
}

/* view-control-grades-courses */
/* source: control_grades/courses.php */
body.view-control-grades-courses .course-card-modern{
        transition: all 0.3s ease;
        border: 1px solid #e9ecef !important;
    }

    body.view-control-grades-courses .course-card-modern:hover{
        transform: translateY(-5px);
        box-shadow: 0 0.5rem 1.5rem rgba(0, 0, 0, 0.15) !important;
        border-color: #0c4ca0 !important;
    }

    body.view-control-grades-courses .course-icon-wrapper{
        transition: all 0.3s ease;
    }

    body.view-control-grades-courses .course-card-modern:hover .course-icon-wrapper{
        transform: scale(1.1);
        background-color: rgba(12, 76, 160, 0.15) !important;
    }

    body.view-control-grades-courses .course-info{
        font-size: 0.9rem;
    }

    body.view-control-grades-courses .course-info ion-icon{
        transition: transform 0.2s ease;
    }

    body.view-control-grades-courses .course-card-modern:hover .course-info ion-icon{
        transform: scale(1.15);
    }

    body.view-control-grades-courses .grade-types-section .table{
        border-radius: 8px;
        overflow: hidden;
    }

    body.view-control-grades-courses .grade-types-section .table tbody tr{
        transition: background-color 0.2s ease;
    }

    body.view-control-grades-courses .grade-types-section .table tbody tr:hover{
        background-color: #f8f9fa;
    }

    body.view-control-grades-courses .total-row-highlight{
        background-color: rgba(255, 171, 77, 0.15) !important;
    }

    body.view-control-grades-courses .total-row-highlight:hover{
        background-color: rgba(255, 171, 77, 0.25) !important;
    }

    body.view-control-grades-courses .total-row-highlight td{
        font-weight: 600 !important;
    }

    body.view-control-grades-courses .btn-outline-info, body.view-control-grades-courses .btn-outline-success{
        transition: all 0.3s ease;
    }

    body.view-control-grades-courses .btn-outline-info:hover, body.view-control-grades-courses .btn-outline-success:hover{
        transform: scale(1.05);
        box-shadow: 0 2px 8px rgba(50, 190, 255, 0.3);
    }

    body.view-control-grades-courses .btn-outline-success:hover{
        box-shadow: 0 2px 8px rgba(24, 187, 107, 0.3);
    }

    body.view-control-grades-courses .badge{
        transition: all 0.2s ease;
    }

    body.view-control-grades-courses .disabled-link{
        pointer-events: none;
        color: gray;
        text-decoration: none;
    }

    @media (max-width: 768px) {
        body.view-control-grades-courses .course-card-modern{
            margin-bottom: 1.5rem;
        }
    }

/* view-control-grades-info */
/* source: control_grades/info.php */
/* Professional Clean Styles */
body.view-control-grades-info .page-content{
        padding: 1.5rem;
    }/* Table Improvements */
body.view-control-grades-info .table-hover tbody tr:hover{
        background-color: #f8f9fa;
    }

    body.view-control-grades-info .clickable-row{
        transition: background-color 0.15s ease;
    }/* Progress Bar */
body.view-control-grades-info .progress{
        border-radius: 4px;
    }

    body.view-control-grades-info .progress-bar{
        font-size: 0.6875rem;
        display: flex;
        align-items: center;
        justify-content: center;
    }/* Card Improvements */
body.view-control-grades-info .card{
        border: 1px solid #dee2e6;
        box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
    }

    body.view-control-grades-info .card-header{
        background-color: #f8f9fa;
        font-weight: 600;
    }/* Button Consistency */
body.view-control-grades-info .btn-sm{
        padding: 0.375rem 0.75rem;
        font-size: 0.875rem;
    }/* Modal Improvements */
body.view-control-grades-info .modal-header{
        border-bottom: 1px solid #dee2e6;
    }

    body.view-control-grades-info .modal-footer{
        border-top: 1px solid #dee2e6;
    }/* Form Improvements */
body.view-control-grades-info .form-label{
        font-weight: 500;
        margin-bottom: 0.5rem;
        font-size: 0.875rem;
    }

    /* Responsive */
    @media (max-width: 768px) {
        body.view-control-grades-info .page-content{
            padding: 1rem;
        }

        body.view-control-grades-info .table{
            font-size: 0.875rem;
        }
    }

/* view-control-grades-program-control */
/* source: control_grades/program_control.php */
body.view-control-grades-program-control .back-button{
        display: flex;
        justify-content: flex-end;
    }

    body.view-control-grades-program-control .table{
        font-size: 1.1rem;
    }

    body.view-control-grades-program-control .table th, body.view-control-grades-program-control .table td{
        font-size: 1.1rem;
    }

    body.view-control-grades-program-control .card h5{
        font-size: 1.3rem;
    }

    body.view-control-grades-program-control .faculty-card{
        border: none;
        border-radius: 10px;
        box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1);
        transition: 0.3s;
        overflow: hidden;
        margin-bottom: 30px;


    }

    body.view-control-grades-program-control .allcards{
        background-color: transparent;
        display: flex;
        flex-wrap: wrap;
        flex-direction: row;
        justify-content: space-evenly;
    }

/* view-course-enrollments-edit */
/* source: course_enrollments/edit.php */
body.view-course-enrollments-edit .form-select:focus{ border-color: #0c4ca0; box-shadow: 0 0 0 0.2rem rgba(12, 76, 160, 0.15); }

/* view-course-enrollments-list */
/* source: course_enrollments/list.php */
body.view-course-enrollments-list .enrollment-card-modern{
        transition: transform 0.2s ease, box-shadow 0.2s ease;
    }

    body.view-course-enrollments-list .enrollment-card-modern:hover{
        transform: translateY(-2px);
        box-shadow: 0 0.5rem 1.5rem rgba(0, 0, 0, 0.1) !important;
    }

    body.view-course-enrollments-list .course-icon-wrapper{
        flex-shrink: 0;
    }

    body.view-course-enrollments-list .form-select:focus{
        border-color: #0c4ca0;
        box-shadow: 0 0 0 0.2rem rgba(12, 76, 160, 0.15);
    }

/* view-course-registration-rules-index */
/* source: course_registration_rules/index.php */
body.view-course-registration-rules-index .faculty-card{
        border: none;
        border-radius: 10px;
        box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1);
        transition: 0.3s;
        overflow: hidden;
        max-width: 420px;
        margin: 0 auto;
    }

    body.view-course-registration-rules-index .allcards{
        background-color: transparent;
    }

    body.view-course-registration-rules-index .faculty-card:hover{
        box-shadow: 0px 6px 15px rgba(0, 0, 0, 0.2);
        transform: translateY(-3px);
    }

    body.view-course-registration-rules-index .program-buttons{
        display: flex;
        flex-direction: column;
        gap: 10px;
        padding: 20px;
        align-items: center;
    }

    body.view-course-registration-rules-index .faculty-logo{
        width: 100px;
        height: 100px;
        object-fit: contain;
    }/* Simple full-page loading overlay */
body.view-course-registration-rules-index .loading-overlay{
        position: fixed;
        inset: 0;
        background: rgba(0, 0, 0, 0.15);
        display: none;
        align-items: center;
        justify-content: center;
        z-index: 1050;
    }

    body.view-course-registration-rules-index .loading-overlay.active{
        display: flex;
    }

    body.view-course-registration-rules-index .loading-spinner{
        width: 40px;
        height: 40px;
        border-radius: 50%;
        border: 4px solid #e5e7eb;
        border-top-color: #0d6efd;
        animation: view-course-registration-rules-index-spin 0.7s linear infinite;
    }

    @keyframes view-course-registration-rules-index-spin {
        to {
            transform: rotate(360deg);
        }
    }

    @media (max-width: 767.98px) {
        body.view-course-registration-rules-index .faculty-card{
            max-width: 100%;
        }

        body.view-course-registration-rules-index .program-buttons{
            padding: 10px 15px;
        }
    }

/* view-course-registration-rules-program-rules */
/* source: course_registration_rules/program_rules.php */
body.view-course-registration-rules-program-rules .faculty-logo-wrapper{
        padding: 15px;
        background: #fff;
        border-radius: 12px;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
        display: inline-block;
    }

    body.view-course-registration-rules-program-rules .faculty-logo{
        width: 120px;
        height: 120px;
        object-fit: contain;
        display: block;
    }

    body.view-course-registration-rules-program-rules .info-card{
        padding: 20px 25px;
        background: #fff;
        border-radius: 12px;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
        min-width: min(200px, 100%);
        transition: transform 0.2s, box-shadow 0.2s;
    }

    body.view-course-registration-rules-program-rules .info-card:hover{
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
    }

    body.view-course-registration-rules-program-rules .icon-wrapper{
        width: 45px;
        height: 45px;
        display: flex;
        align-items: center;
        justify-content: center;
        background: rgba(13, 110, 253, 0.1);
        border-radius: 10px;
        flex-shrink: 0;
    }

    body.view-course-registration-rules-program-rules .icon-wrapper i{
        font-size: 1.5rem;
    }

    body.view-course-registration-rules-program-rules .info-text{
        font-size: 1.15rem;
        color: #212529;
        line-height: 1.4;
    }

    @media (max-width: 767.98px) {
        body.view-course-registration-rules-program-rules .faculty-logo{
            width: 100px;
            height: 100px;
        }

        body.view-course-registration-rules-program-rules .info-card{
            padding: 15px 20px;
            min-width: 100%;
        }

        body.view-course-registration-rules-program-rules .icon-wrapper{
            width: 40px;
            height: 40px;
        }

        body.view-course-registration-rules-program-rules .icon-wrapper i{
            font-size: 1.25rem;
        }

        body.view-course-registration-rules-program-rules .info-text{
            font-size: 1rem;
        }
    }

    @media (min-width: min(768px, 100%)) and (max-width: 991.98px) {
        body.view-course-registration-rules-program-rules .faculty-logo{
            width: 110px;
            height: 110px;
        }
    }

    body.view-course-registration-rules-program-rules #rules-table input.form-control{
        min-width: 90px;
    }

/* view-courses-index */
/* source: courses/index.php */
body.view-courses-index .table-row{
        cursor: pointer;
        transition: background-color 0.3s;
    }

    html.light-theme body.view-courses-index .table-row:hover{
        background-color: #f5f5f5 !important;
    }

    html.dark-theme body.view-courses-index .table-row:hover{
        background-color: #2d2d2d !important;
    }

/* view-employee-leaves-form */
/* source: employee_leaves/form.php */
body.view-employee-leaves-form .card-header{
                        background-color: #007bff;
                        /* Blue color */
                        color: white;
                        /* White text for contrast */
                        
                    }

/* view-employee-leaves-index */
/* source: employee_leaves/index.php */
/* Apply blue color to the table header */
body.view-employee-leaves-index .table thead th{
        background-color: #32BFFF;
        /* Bootstrap blue */
        color: white;
        /* White text for contrast */
    }

/* view-employees-index */
/* source: employees/index.php */
/* Enhanced Table Design */
body.view-employees-index .employees-table{
        margin: 0;
    }

    body.view-employees-index .employees-table thead th{
        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
        color: white;
        font-weight: 600;
        padding: 1rem;
        border: none;
        text-align: right;
        font-size: 0.95rem;
        white-space: nowrap;
        position: sticky;
        top: 0;
        z-index: 10;
    }

    body.view-employees-index .employees-table thead th i{
        font-size: 1.1rem;
        margin-left: 0.5rem;
    }

    body.view-employees-index .employees-table tbody td{
        padding: 1rem;
        vertical-align: middle;
        border-color: rgba(0, 0, 0, 0.05);
    }

    body.view-employees-index .table-row{
        cursor: pointer;
        transition: all 0.2s ease;
        border-left: 3px solid transparent;
    }

    body.view-employees-index .table-row:hover{
        background: linear-gradient(90deg, rgba(102, 126, 234, 0.08) 0%, rgba(102, 126, 234, 0.03) 100%);
        border-left-color: #667eea;
        transform: translateX(-3px);
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    }

    html.dark-theme body.view-employees-index .table-row:hover{
        background: linear-gradient(90deg, rgba(102, 126, 234, 0.15) 0%, rgba(102, 126, 234, 0.08) 100%);
    }/* Department Badge */
body.view-employees-index .department-badge{
        display: inline-block;
        padding: 0.4rem 0.8rem;
        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
        color: white;
        border-radius: 20px;
        font-size: 0.85rem;
        font-weight: 600;
        white-space: nowrap;
        box-shadow: 0 2px 4px rgba(102, 126, 234, 0.3);
    }/* Filter Section */
body.view-employees-index .card-body .form-label{
        font-size: 0.9rem;
        margin-bottom: 0.5rem;
        color: #495057;
    }

    body.view-employees-index .form-control:focus, body.view-employees-index .form-select:focus{
        border-color: #667eea;
        box-shadow: 0 0 0 0.2rem rgba(102, 126, 234, 0.25);
    }/* Dark theme support */
html.dark-theme body.view-employees-index .employees-table tbody td{
        border-color: rgba(255, 255, 255, 0.05);
        color: #e0e0e0;
    }

    html.dark-theme body.view-employees-index .card-body .form-label{
        color: #e0e0e0;
    }

    body.view-employees-index .search-highlight{
        background-color: #fff3cd !important;
    }
    html.dark-theme body.view-employees-index .search-highlight{
        background-color: #664d03 !important;
    }

/* view-engineering-program-admin-panel */
/* source: engineering_program/admin_panel.php */
body.view-engineering-program-admin-panel .spin{
    animation: view-engineering-program-admin-panel-spin 1s linear infinite;
}

@keyframes view-engineering-program-admin-panel-spin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

body.view-engineering-program-admin-panel .table-responsive{
    max-height: 600px;
    overflow-y: auto;
}

body.view-engineering-program-admin-panel .pagination{
    margin-bottom: 0;
}

body.view-engineering-program-admin-panel .pagination .page-link{
    color: #007bff;
}

body.view-engineering-program-admin-panel .pagination .page-item.active .page-link{
    background-color: #007bff;
    border-color: #007bff;
}

body.view-engineering-program-admin-panel .stats-card{
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
    border-radius: 10px;
    padding: 20px;
    margin-bottom: 20px;
}

body.view-engineering-program-admin-panel .stats-card h3{
    margin: 0;
    font-size: 2.5rem;
    font-weight: bold;
}

body.view-engineering-program-admin-panel .stats-card p{
    margin: 5px 0 0 0;
    opacity: 0.9;
}

body.view-engineering-program-admin-panel .filter-card{
    background: #f8f9fa;
    border-radius: 10px;
    padding: 20px;
    margin-bottom: 20px;
}

body.view-engineering-program-admin-panel .status-badge{
    font-size: 0.8rem;
    padding: 0.4rem 0.8rem;
}

body.view-engineering-program-admin-panel .action-buttons{
    white-space: nowrap;
    min-width: 120px;
}

body.view-engineering-program-admin-panel .action-buttons .btn{
    margin: 2px;
    padding: 0.4rem 0.8rem;
    font-size: 0.85rem;
    font-weight: 500;
    border-radius: 6px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    transition: all 0.2s ease;
}

body.view-engineering-program-admin-panel .action-buttons .btn:hover{
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(0,0,0,0.15);
}

body.view-engineering-program-admin-panel .action-buttons .btn-group-vertical{
    display: flex;
    flex-direction: column;
    gap: 4px;
}

body.view-engineering-program-admin-panel .action-buttons .btn-info{
    background-color: #17a2b8;
    border-color: #17a2b8;
}

body.view-engineering-program-admin-panel .action-buttons .btn-success{
    background-color: #28a745;
    border-color: #28a745;
}

body.view-engineering-program-admin-panel .action-buttons .btn-warning{
    background-color: #ffc107;
    border-color: #ffc107;
    color: #212529;
}

body.view-engineering-program-admin-panel .action-buttons .btn:focus{
    box-shadow: 0 0 0 0.2rem rgba(0,123,255,0.25);
}

body.view-engineering-program-admin-panel .action-buttons .btn i{
    font-size: 0.9rem;
}

/* Make buttons more prominent on mobile */
@media (max-width: 768px) {
    body.view-engineering-program-admin-panel .action-buttons .btn{
        padding: 0.5rem 1rem;
        font-size: 0.9rem;
        margin: 1px;
    }
    
    body.view-engineering-program-admin-panel .action-buttons{
        min-width: 140px;
    }
}/* Ensure proper spacing with sidebar */
body.view-engineering-program-admin-panel .page-wrapper{
    margin-right: 260px;
    transition: margin-right 0.3s ease-in-out;
}

@media screen and (max-width: 767px) {
    body.view-engineering-program-admin-panel .page-wrapper{
        margin-right: 0 !important;
        width: 100% !important;
        overflow-x: hidden;
    }
}

/* view-engineering-program-audit-log */
/* source: engineering_program/audit_log.php */
body.view-engineering-program-audit-log .page-wrapper{
    margin-right: 250px;
    padding: 20px;
}

@media (max-width: 768px) {
    body.view-engineering-program-audit-log .page-wrapper{
        margin-right: 0;
        padding: 10px;
    }
}

/* view-engineering-program-form */
/* source: engineering_program/form.php */
/* Ensure proper spacing with sidebar */
body.view-engineering-program-form .page-wrapper{
    margin-right: 260px;
    transition: margin-right 0.3s ease-in-out;
}

@media screen and (max-width: 767px) {
    body.view-engineering-program-form .page-wrapper{
        margin-right: 0 !important;
        width: 100% !important;
        overflow-x: hidden;
    }
}

/* view-engineering-program-selection-exists */
/* source: engineering_program/selection_exists.php */
body.view-engineering-program-selection-exists .program-choice{
    text-align: center;
    padding: 20px;
    border: 2px solid #e9ecef;
    border-radius: 10px;
    margin-bottom: 20px;
    background: #f8f9fa;
}

body.view-engineering-program-selection-exists .choice-number{
    width: 40px;
    height: 40px;
    background: #007bff;
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    font-size: 1.125rem;
    margin: 0 auto 15px;
}

body.view-engineering-program-selection-exists .choice-program{
    font-size: 0.875rem;
    line-height: 1.5;
}

body.view-engineering-program-selection-exists .info-box{
    background: #f8f9fa;
    border: 1px solid #dee2e6;
    border-radius: 8px;
    padding: 15px;
    margin-bottom: 15px;
}

body.view-engineering-program-selection-exists .info-box-text{
    display: block;
    font-size: 0.75rem;
    color: #6c757d;
    margin-bottom: 5px;
}

body.view-engineering-program-selection-exists .info-box-number{
    display: block;
    font-size: 1.125rem;
    font-weight: bold;
    color: #495057;
}/* Ensure proper spacing with sidebar */
body.view-engineering-program-selection-exists .page-wrapper{
    margin-right: 260px;
    transition: margin-right 0.3s ease-in-out;
}

@media screen and (max-width: 767px) {
    body.view-engineering-program-selection-exists .page-wrapper{
        margin-right: 0 !important;
        width: 100% !important;
        overflow-x: hidden;
    }
}

/* view-engineering-program-success */
/* source: engineering_program/success.php */
body.view-engineering-program-success .program-choice{
    text-align: center;
    padding: 20px;
    border: 2px solid #e9ecef;
    border-radius: 10px;
    margin-bottom: 20px;
    background: #f8f9fa;
}

body.view-engineering-program-success .choice-number{
    width: 40px;
    height: 40px;
    background: #007bff;
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    font-size: 1.125rem;
    margin: 0 auto 15px;
}

body.view-engineering-program-success .choice-program{
    font-size: 0.875rem;
    line-height: 1.5;
}

body.view-engineering-program-success .info-box{
    background: #f8f9fa;
    border: 1px solid #dee2e6;
    border-radius: 8px;
    padding: 15px;
    margin-bottom: 15px;
}

body.view-engineering-program-success .info-box-text{
    display: block;
    font-size: 0.75rem;
    color: #6c757d;
    margin-bottom: 5px;
}

body.view-engineering-program-success .info-box-number{
    display: block;
    font-size: 1.125rem;
    font-weight: bold;
    color: #495057;
}/* Ensure proper spacing with sidebar */
body.view-engineering-program-success .page-wrapper{
    margin-right: 260px;
    transition: margin-right 0.3s ease-in-out;
}

@media screen and (max-width: 767px) {
    body.view-engineering-program-success .page-wrapper{
        margin-right: 0 !important;
        width: 100% !important;
        overflow-x: hidden;
    }
}

/* view-engineering-program-view-details */
/* source: engineering_program/view_details.php */
body.view-engineering-program-view-details .program-choice{
    text-align: center;
    padding: 20px;
    border: 2px solid #e9ecef;
    border-radius: 10px;
    margin-bottom: 20px;
    background: #f8f9fa;
}

body.view-engineering-program-view-details .choice-number{
    width: 40px;
    height: 40px;
    background: #007bff;
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    font-size: 1.125rem;
    margin: 0 auto 15px;
}

body.view-engineering-program-view-details .choice-program{
    font-size: 0.875rem;
    line-height: 1.5;
}

body.view-engineering-program-view-details .info-box{
    background: #f8f9fa;
    border: 1px solid #dee2e6;
    border-radius: 8px;
    padding: 15px;
    margin-bottom: 15px;
}

body.view-engineering-program-view-details .info-box-text{
    display: block;
    font-size: 0.75rem;
    color: #6c757d;
    margin-bottom: 5px;
}

body.view-engineering-program-view-details .info-box-number{
    display: block;
    font-size: 1.125rem;
    font-weight: bold;
    color: #495057;
}/* Ensure proper spacing with sidebar */
body.view-engineering-program-view-details .page-wrapper{
    margin-right: 260px;
    transition: margin-right 0.3s ease-in-out;
}

@media screen and (max-width: 767px) {
    body.view-engineering-program-view-details .page-wrapper{
        margin-right: 0 !important;
        width: 100% !important;
        overflow-x: hidden;
    }
}

/* view-errors-design-control-error */
/* source: errors_design/control_error.php */
body.view-errors-design-control-error .logo{
        max-height: 150px;
    }

/* view-errors-design-course-registration-error */
/* source: errors_design/course_registration_error.php */
body.view-errors-design-course-registration-error .logo{
        max-height: 250px;
    }

/* view-errors-design-pending */
/* source: errors_design/pending.php */
body.view-errors-design-pending .logo{
        max-height: 150px;
    }

/* view-errors-design-result-banned */
/* source: errors_design/result_banned.php */
body.view-errors-design-result-banned .banned-page{
        min-height: calc(100vh - 140px);
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    body.view-errors-design-result-banned .logo{
        max-height: 200px;
    }

    body.view-errors-design-result-banned .banned-card{
        max-width: 760px;
        border-radius: 16px;
    }

    body.view-errors-design-result-banned .logos-strip{
        display: flex;
        align-items: center;
        justify-content: center;
  
       gap: 20px;

    }

    body.view-errors-design-result-banned .logos-divider{
        width: 2px;
        height: 200px;
        background-color:rgb(91, 85, 85);
    }

    body.view-errors-design-result-banned .reasons-list .list-group-item{
        border: 1px solid #e9ecef;
        border-radius: 10px;
        margin-bottom: 10px;
        display: flex;
        gap: 10px;
        align-items: center;
        background-color: #fafafa;
    }

    body.view-errors-design-result-banned .reason-number{
        min-width: 30px;
        height: 30px;
        border-radius: 50%;
        background-color: #dc3545;
        color: #fff;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        font-weight: 700;
    }

    body.view-errors-design-result-banned .notice-box{
        background: #fff5f5;
        border: 1px solid #ffd6d6;
        border-radius: 12px;
        padding: 16px;
    }

/* view-errors-html-error-404 */
/* source: errors/html/error_404.php */
body.view-errors-html-error-404 .error-container{
            min-height: 100vh;
            background: linear-gradient(to bottom, #f8f9fa, #ffffff);
        }

        body.view-errors-html-error-404 .error-code{
            font-size: 6rem;
            background: linear-gradient(45deg, #dc3545, #0d6efd);
            -webkit-background-clip: text;
            background-clip: text;
            color: transparent;
        }

        body.view-errors-html-error-404 .university-logo{
            max-width: 150px;
            transition: transform 0.3s ease;
        }

        body.view-errors-html-error-404 .university-logo:hover{
            transform: scale(1.05);
        }

        body.view-errors-html-error-404 .btn-custom{
            padding: 0.8rem 2.5rem;
            border-radius: 30px;
            transition: all 0.3s ease;
            font-weight: 500;
        }

        body.view-errors-html-error-404 .btn-custom:hover{
            transform: translateY(-2px);
            box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
        }

        body.view-errors-html-error-404 .error-message{
            color: #6c757d;
            max-width: 500px;
            margin: 0 auto;
        }

/* view-exam-sheet-index */
/* source: exam_sheet/index.php */
body.view-exam-sheet-index .committee_container{
        animation: view-exam-sheet-index-slideIn 0.3s ease-out;
    }

    @keyframes view-exam-sheet-index-slideIn {
        from {
            opacity: 0;
            transform: translateY(-20px);
        }

        to {
            opacity: 1;
            transform: translateY(0);
        }
    }

    body.view-exam-sheet-index .card-header{
        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
        color: white;
    }

    body.view-exam-sheet-index .student-count-input:focus{
        border-color: #667eea;
        box-shadow: 0 0 0 0.2rem rgba(102, 126, 234, 0.25);
    }

    body.view-exam-sheet-index .readonly-field{
        background-color: #f8f9fa !important;
        cursor: not-allowed;
    }

    body.view-exam-sheet-index .warning-glow{
        animation: view-exam-sheet-index-glowRed 1s ease-in-out infinite;
    }

    @keyframes view-exam-sheet-index-glowRed {

        0%,
        100% {
            box-shadow: 0 0 5px rgba(220, 53, 69, 0.5);
        }

        50% {
            box-shadow: 0 0 20px rgba(220, 53, 69, 0.8);
        }
    }

    body.view-exam-sheet-index .loading-overlay{
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, 0.7);
        z-index: 9999;
        display: flex;
        justify-content: center;
        align-items: center;
        backdrop-filter: blur(5px);
        animation: view-exam-sheet-index-fadeIn 0.3s ease-in;
    }

    body.view-exam-sheet-index .loading-content{
        text-align: center;
        padding: 2rem;
        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
        border-radius: 15px;
        box-shadow: 0 10px 40px rgba(0, 0, 0, 0.3);
        min-width: min(300px, 100%);
    }

    body.view-exam-sheet-index .loading-content .spinner-border{
        border-width: 0.3em;
        animation: view-exam-sheet-index-spin 1s linear infinite;
    }

    @keyframes view-exam-sheet-index-fadeIn {
        from {
            opacity: 0;
        }

        to {
            opacity: 1;
        }
    }

    @keyframes view-exam-sheet-index-spin {
        0% {
            transform: rotate(0deg);
        }

        100% {
            transform: rotate(360deg);
        }
    }

    body.view-exam-sheet-index .custom-checkbox-large .form-check-input{
        width: 1.5rem;
        height: 1.5rem;
        margin-top: 0.25rem;
        cursor: pointer;
        border-width: 2px;
    }

    body.view-exam-sheet-index .custom-checkbox-large .form-check-input:checked{
        background-color: #667eea;
        border-color: #667eea;
    }

    body.view-exam-sheet-index .custom-checkbox-large .form-check-input:focus{
        border-color: #667eea;
        box-shadow: 0 0 0 0.25rem rgba(102, 126, 234, 0.25);
    }

/* view-fees-discounts-index */
/* source: fees/discounts/index.php */
body.view-fees-discounts-index .fees-table thead th{ background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: white; font-weight: 600; padding: 1rem; text-align: right; }

/* view-fees-fee-packages-index */
/* source: fees/fee_packages/index.php */
body.view-fees-fee-packages-index .fees-table thead th{ background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: white; font-weight: 600; padding: 1rem; text-align: right; }

/* view-fees-fees-template-index */
/* source: fees/fees_template/index.php */
body.view-fees-fees-template-index .fees-table thead th{
        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
        color: white;
        font-weight: 600;
        padding: 1rem;
        border: none;
        text-align: right;
    }

    body.view-fees-fees-template-index .fees-table tbody tr:hover{
        background: rgba(102, 126, 234, 0.06);
    }

/* view-fees-payment-methods-index */
/* source: fees/payment_methods/index.php */
body.view-fees-payment-methods-index .fees-table thead th{ background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: white; font-weight: 600; padding: 1rem; text-align: right; }

/* view-finance-student-receipt-acceptance */
/* source: finance/student_receipt_acceptance.php */
/* layout tweaks for preview */
body.view-finance-student-receipt-acceptance .modal-footer button{
    margin: 5px;
    padding: 8px 14px;
    border-radius: 8px;
  }

/* view-general-registration-2025-admin-panel */
/* source: general_registration_2025/admin_panel.php */
body.view-general-registration-2025-admin-panel .spin{
    animation: view-general-registration-2025-admin-panel-spin 1s linear infinite;
}

@keyframes view-general-registration-2025-admin-panel-spin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

body.view-general-registration-2025-admin-panel .file-preview{
    border: 1px solid #dee2e6;
    border-radius: 8px;
    padding: 15px;
    margin-bottom: 10px;
    background-color: #f8f9fa;
}

body.view-general-registration-2025-admin-panel .file-preview h6{
    color: #495057;
    margin-bottom: 10px;
}

body.view-general-registration-2025-admin-panel .file-preview .btn{
    margin-right: 5px;
    margin-bottom: 5px;
}

body.view-general-registration-2025-admin-panel .modal-body{
    max-height: 70vh;
    overflow-y: auto;
}

body.view-general-registration-2025-admin-panel .table-responsive{
    max-height: 600px;
    overflow-y: auto;
}

body.view-general-registration-2025-admin-panel .pagination{
    margin-bottom: 0;
}

body.view-general-registration-2025-admin-panel .pagination .page-link{
    color: #495057;
    border-color: #dee2e6;
}

body.view-general-registration-2025-admin-panel .pagination .page-item.active .page-link{
    background-color: #007bff;
    border-color: #007bff;
    color: white;
}

body.view-general-registration-2025-admin-panel .pagination .page-item.disabled .page-link{
    color: #6c757d;
    background-color: #fff;
    border-color: #dee2e6;
}

body.view-general-registration-2025-admin-panel .pagination .page-link:hover{
    background-color: #e9ecef;
    border-color: #dee2e6;
    color: #495057;
}/* Certificate Modal Styles */
body.view-general-registration-2025-admin-panel .certificate-modal .modal-dialog{
    max-width: 90%;
    max-height: 90vh;
}

body.view-general-registration-2025-admin-panel .certificate-modal .modal-body{
    text-align: center;
    padding: 20px;
}

body.view-general-registration-2025-admin-panel .certificate-modal img{
    max-width: 100%;
    max-height: 70vh;
    object-fit: contain;
    border-radius: 8px;
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
}

body.view-general-registration-2025-admin-panel .certificate-modal .modal-footer{
    justify-content: center;
}

body.view-general-registration-2025-admin-panel .certificate-modal .btn{
    margin: 0 5px;
}

/* view-general-registration-2025-admin-panel-failed */
/* source: general_registration_2025/admin_panel_failed.php */
/* Editable field styles */
body.view-general-registration-2025-admin-panel-failed .editable-field{
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

body.view-general-registration-2025-admin-panel-failed .editable-field .editable-input{
    min-width: 120px;
    max-width: 200px;
}

body.view-general-registration-2025-admin-panel-failed .editable-field .btn{
    padding: 2px 6px;
    font-size: 0.75rem;
}

body.view-general-registration-2025-admin-panel-failed .editable-field .edit-btn, body.view-general-registration-2025-admin-panel-failed .editable-field .save-btn, body.view-general-registration-2025-admin-panel-failed .editable-field .cancel-btn{
    margin-left: 2px;
}

body.view-general-registration-2025-admin-panel-failed .editable-text{
    min-width: 80px;
    text-align: center;
}/* Loading animation */
body.view-general-registration-2025-admin-panel-failed .btn:disabled{
    opacity: 0.6;
    cursor: not-allowed;
}/* Alert styles */
body.view-general-registration-2025-admin-panel-failed .alert{
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
}/* Table responsive improvements */
body.view-general-registration-2025-admin-panel-failed .table-responsive{
    overflow-x: auto;
}

body.view-general-registration-2025-admin-panel-failed .table th, body.view-general-registration-2025-admin-panel-failed .table td{
    white-space: nowrap;
    vertical-align: middle;
}

/* view-general-registration-2025-duplicates */
/* source: general_registration_2025/duplicates.php */
body.view-general-registration-2025-duplicates{
            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
            background: #f8f9fa;
            direction: rtl;
        }
        
        body.view-general-registration-2025-duplicates .main-container{
            background: white;
            border-radius: 10px;
            box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
            margin: 20px;
            overflow: hidden;
        }
        
        body.view-general-registration-2025-duplicates .header{
            background: linear-gradient(135deg, #dc3545 0%, #c82333 100%);
            color: white;
            padding: 20px;
            text-align: center;
        }
        
        body.view-general-registration-2025-duplicates .header h1{
            margin: 0;
            font-size: 2em;
            font-weight: 300;
        }
        
        body.view-general-registration-2025-duplicates .content{
            padding: 20px;
        }
        
        body.view-general-registration-2025-duplicates .stats-grid{
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
            gap: 15px;
            margin-bottom: 30px;
        }
        
        body.view-general-registration-2025-duplicates .stat-card{
            background: white;
            border-radius: 10px;
            padding: 20px;
            box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1);
            border-left: 4px solid #dc3545;
            text-align: center;
        }
        
        body.view-general-registration-2025-duplicates .stat-number{
            font-size: 2em;
            font-weight: bold;
            color: #dc3545;
            margin: 10px 0;
        }
        
        body.view-general-registration-2025-duplicates .stat-label{
            color: #666;
            font-size: 1em;
        }
        
        body.view-general-registration-2025-duplicates .table-container{
            background: white;
            border-radius: 10px;
            padding: 20px;
            margin-bottom: 20px;
            box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1);
        }
        
        body.view-general-registration-2025-duplicates .table{
            margin-bottom: 0;
        }
        
        body.view-general-registration-2025-duplicates .table th{
            background: #dc3545;
            color: white;
            border: none;
            font-weight: 500;
            text-align: center;
        }
        
        body.view-general-registration-2025-duplicates .table td{
            vertical-align: middle;
            text-align: center;
            border-color: #f0f0f0;
        }
        
        body.view-general-registration-2025-duplicates .duplicate-group{
            background: #fff3cd;
            border-left: 4px solid #ffc107;
            margin-bottom: 20px;
            border-radius: 5px;
        }
        
        body.view-general-registration-2025-duplicates .duplicate-header{
            background: #ffc107;
            color: #212529;
            padding: 10px 15px;
            font-weight: bold;
            border-radius: 5px 0 0 0;
        }
        
        body.view-general-registration-2025-duplicates .duplicate-content{
            padding: 15px;
        }
        
        body.view-general-registration-2025-duplicates .navigation{
            background: white;
            border-radius: 10px;
            padding: 15px;
            margin-bottom: 20px;
            box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1);
        }
        
        body.view-general-registration-2025-duplicates .nav-link{
            color: #dc3545;
            text-decoration: none;
            padding: 8px 15px;
            border-radius: 20px;
            transition: all 0.3s ease;
            margin: 0 3px;
            display: inline-block;
        }
        
        body.view-general-registration-2025-duplicates .nav-link:hover{
            background: #dc3545;
            color: white;
        }
        
        body.view-general-registration-2025-duplicates .nav-link.active{
            background: #dc3545;
            color: white;
        }
        
                 body.view-general-registration-2025-duplicates .btn-delete{
             background: #dc3545;
             border: none;
             color: white;
             padding: 5px 10px;
             border-radius: 5px;
             font-size: 0.8em;
         }
         
         body.view-general-registration-2025-duplicates .btn-delete:hover{
             background: #c82333;
             color: white;
         }
         
         body.view-general-registration-2025-duplicates .bulk-actions{
             background: #f8f9fa;
             border: 1px solid #dee2e6;
             border-radius: 10px;
             padding: 15px;
             margin-bottom: 20px;
             display: none;
         }
         
         body.view-general-registration-2025-duplicates .bulk-actions.show{
             display: block;
         }
         
         body.view-general-registration-2025-duplicates .select-all-container{
             background: #e9ecef;
             padding: 10px 15px;
             border-radius: 5px;
             margin-bottom: 15px;
             display: flex;
             align-items: center;
             justify-content: space-between;
         }
         
         body.view-general-registration-2025-duplicates .checkbox-wrapper{
             display: flex;
             align-items: center;
             gap: 8px;
         }
         
         body.view-general-registration-2025-duplicates .checkbox-wrapper input[type="checkbox"]{
             width: 18px;
             height: 18px;
             cursor: pointer;
         }
         
         body.view-general-registration-2025-duplicates .attachment-info{
             font-size: 0.85em;
             color: #666;
             margin-top: 5px;
         }
         
         body.view-general-registration-2025-duplicates .attachment-badge{
             display: inline-block;
             padding: 2px 6px;
             border-radius: 3px;
             font-size: 0.75em;
             font-weight: bold;
         }
         
         body.view-general-registration-2025-duplicates .attachment-badge.has-files{
             background: #d4edda;
             color: #155724;
         }
         
         body.view-general-registration-2025-duplicates .attachment-badge.no-files{
             background: #f8d7da;
             color: #721c24;
         }
         
         body.view-general-registration-2025-duplicates .transaction-info{
             font-size: 0.85em;
             color: #333;
         }
         
         body.view-general-registration-2025-duplicates .transaction-id{
             margin-bottom: 5px;
         }
         
         body.view-general-registration-2025-duplicates .transaction-status{
             margin-top: 5px;
         }
         
         body.view-general-registration-2025-duplicates .transaction-info .text-success{
             color: #28a745 !important;
         }
         
         body.view-general-registration-2025-duplicates .transaction-info .text-danger{
             color: #dc3545 !important;
         }
         
         body.view-general-registration-2025-duplicates .transaction-info .text-warning{
             color: #ffc107 !important;
         }
         
         body.view-general-registration-2025-duplicates .transaction-info .text-muted{
             color: #6c757d !important;
         }
        
        body.view-general-registration-2025-duplicates .no-duplicates{
            text-align: center;
            padding: 50px;
            color: #666;
        }
        
        body.view-general-registration-2025-duplicates .no-duplicates i{
            font-size: 3em;
            color: #28a745;
            margin-bottom: 20px;
        }

/* view-general-registration-2025-registration-closed */
/* source: general_registration_2025/registration_closed.php */
body.view-general-registration-2025-registration-closed .card{
    border: none;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
}

body.view-general-registration-2025-registration-closed .card-header{
    border-bottom: none;
    padding: 2rem 1.5rem;
}

body.view-general-registration-2025-registration-closed .card-body{
    padding: 3rem 2rem;
}

body.view-general-registration-2025-registration-closed .alert{
    border: none;
    border-radius: 10px;
}

body.view-general-registration-2025-registration-closed .btn{
    border-radius: 8px;
    padding: 0.75rem 1.5rem;
    font-weight: 500;
}

body.view-general-registration-2025-registration-closed .bi{
    vertical-align: middle;
}

/* view-grade-rules-form */
/* source: grade-rules/form.php */
body.view-grade-rules-form .error{
        background-color: #f8d7da;
    }

/* view-home */
/* source: home.php */
body.view-home .student-row-home{ cursor: pointer; transition: background 0.3s ease; }
        body.view-home .student-row-home:hover{ background-color: rgba(0,0,0,0.05) !important; }

/* view-image-factory-student-image-upload */
/* source: image_factory/student_image_upload.php */
body.view-image-factory-student-image-upload .student-img-dropzone{
            transition: border-color 0.2s ease, background 0.2s ease;
            cursor: pointer;
        }

        body.view-image-factory-student-image-upload .student-img-dropzone:hover{
            border-color: #2a5298 !important;
            background: #f0f4ff !important;
        }/* Cropper needs predictable image sizing; avoid Bootstrap max-height on <img> */
body.view-image-factory-student-image-upload .student-cropper-wrap{
            max-height: 75vh;
            overflow: auto;
        }

        body.view-image-factory-student-image-upload .student-cropper-target{
            display: block;
            max-width: 100%;
            width: 100%;
        }

        body.view-image-factory-student-image-upload .student-cropper-wrap .cropper-container{
            max-height: 75vh !important;
        }

/* view-lectures-index */
/* source: lectures/index.php */
body.view-lectures-index .lectures-page .lectures-toolbar{
        position: relative;
        z-index: 30;
    }
    body.view-lectures-index .lectures-page .course-block{
        border-inline-start: 4px solid #0c4ca0;
        overflow: hidden;
    }
    body.view-lectures-index .lectures-page .course-block-head{
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        gap: 1rem;
    }
    body.view-lectures-index .lectures-page .course-block-name{
        margin: 0.45rem 0 0;
        font-size: 1.05rem;
        font-weight: 700;
    }
    body.view-lectures-index .lectures-page .lecture-item{
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        gap: 1rem;
        padding: 0.95rem 1.15rem;
        border-top: 1px solid #e2e3e4;
    }
    body.view-lectures-index .lectures-page .course-block-list .lecture-item:first-child{
        border-top: 0;
    }
    body.view-lectures-index .lectures-page .lecture-item-title{
        margin: 0 0 0.15rem;
        font-weight: 700;
    }
    body.view-lectures-index .lectures-page .lecture-item-subtitle, body.view-lectures-index .lectures-page .lecture-item-desc{
        color: #6c757d;
        font-size: 0.85rem;
    }
    body.view-lectures-index .lectures-page .lecture-item-desc{
        margin-top: 0.35rem;
    }
    body.view-lectures-index .lectures-page .lecture-item-meta{
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 0.35rem 0.85rem;
        margin-top: 0.5rem;
        font-size: 0.85rem;
    }
    body.view-lectures-index .lectures-page .lecture-item-actions{
        display: flex;
        flex-wrap: wrap;
        gap: 0.4rem;
        flex: 0 0 auto;
    }
    html.dark-theme body.view-lectures-index .lectures-page .lecture-item{
        border-top-color: rgb(255 255 255 / 12%);
    }
    html.dark-theme body.view-lectures-index .lectures-page .badge.bg-light{
        background-color: #181818 !important;
        color: #fcfcfc !important;
        border-color: rgb(255 255 255 / 12%) !important;
    }
    @media (max-width: 767px) {
        body.view-lectures-index .lectures-page .course-block-head, body.view-lectures-index .lectures-page .lecture-item{
            flex-direction: column;
            align-items: stretch;
        }
    }

/* view-lectures-upload */
/* source: lectures/upload.php */
body.view-lectures-upload .lecture-upload .upload-section + .upload-section{
        margin-top: 1.5rem;
        padding-top: 1.5rem;
        border-top: 1px solid #e2e3e4;
    }
    body.view-lectures-upload .lecture-upload .form-section-title{
        font-size: 1.05rem;
        font-weight: 700;
        margin-bottom: 0.85rem;
    }
    body.view-lectures-upload .lecture-upload .level-filter{
        width: 100%;
        max-width: 280px;
    }
    body.view-lectures-upload .lecture-upload .course-level{
        border: 1px solid #e2e3e4;
        border-radius: 0.75rem;
        overflow: hidden;
        margin-bottom: 0.85rem;
    }
    body.view-lectures-upload .lecture-upload .course-level-head{
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 0.75rem;
        padding: 0.7rem 1rem;
        background: #f8f9fa;
        border-bottom: 1px solid #e2e3e4;
    }
    body.view-lectures-upload .lecture-upload .course-grid{
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
        gap: 0.75rem;
        padding: 0.85rem;
    }
    body.view-lectures-upload .lecture-upload .course-tile{
        display: flex;
        align-items: flex-start;
        gap: 0.7rem;
        height: 100%;
        margin: 0;
        padding: 0.8rem;
        border: 1px solid #e2e3e4;
        border-radius: 0.65rem;
        background: #fff;
        cursor: pointer;
    }
    body.view-lectures-upload .lecture-upload .course-tile:has(input:checked){
        border-color: #0c4ca0;
        background: #f3f7fc;
        box-shadow: inset 0 0 0 1px #0c4ca0;
    }
    body.view-lectures-upload .lecture-upload .course-tile .form-check-input{
        margin: 0.2rem 0 0;
        flex: 0 0 auto;
    }
    body.view-lectures-upload .lecture-upload .course-tile-text{
        display: flex;
        flex-direction: column;
        gap: 0.15rem;
        min-width: 0;
    }
    body.view-lectures-upload .lecture-upload .course-tile-name{
        font-weight: 600;
        line-height: 1.4;
        overflow-wrap: anywhere;
    }
    body.view-lectures-upload .lecture-upload .course-tile-sub, body.view-lectures-upload .lecture-upload .course-tile-code{
        color: #6c757d;
        font-size: 0.82rem;
        overflow-wrap: anywhere;
    }
    body.view-lectures-upload .lecture-upload .courses-empty{
        padding: 1rem;
        border: 1px dashed #c5c9ce;
        border-radius: 0.75rem;
        color: #6c757d;
        text-align: center;
    }
    body.view-lectures-upload .lecture-upload .file-zone{
        border: 1px dashed #c5c9ce;
        border-radius: 0.75rem;
        padding: 1rem;
    }
    body.view-lectures-upload .lecture-upload .upload-actions{
        display: flex;
        flex-wrap: wrap;
        gap: 0.5rem;
        margin-top: 1.5rem;
    }
    html.dark-theme body.view-lectures-upload .lecture-upload .upload-section + .upload-section, html.dark-theme body.view-lectures-upload .lecture-upload .course-level, html.dark-theme body.view-lectures-upload .lecture-upload .course-level-head, html.dark-theme body.view-lectures-upload .lecture-upload .course-tile, html.dark-theme body.view-lectures-upload .lecture-upload .courses-empty, html.dark-theme body.view-lectures-upload .lecture-upload .file-zone{
        border-color: rgb(255 255 255 / 12%);
    }
    html.dark-theme body.view-lectures-upload .lecture-upload .course-level-head{
        background: #212121;
    }
    html.dark-theme body.view-lectures-upload .lecture-upload .course-tile{
        background: #181818;
        color: #fcfcfc;
    }
    html.dark-theme body.view-lectures-upload .lecture-upload .course-tile:has(input:checked){
        background: #1a2740;
        border-color: #6ea8fe;
        box-shadow: inset 0 0 0 1px #6ea8fe;
    }
    html.dark-theme body.view-lectures-upload .lecture-upload .badge.bg-light{
        background-color: #181818 !important;
        color: #fcfcfc !important;
        border-color: rgb(255 255 255 / 12%) !important;
    }
    @media (max-width: 575.98px) {
        body.view-lectures-upload .lecture-upload .level-filter{
            max-width: none;
        }
        body.view-lectures-upload .lecture-upload .course-grid{
            grid-template-columns: 1fr;
        }
        body.view-lectures-upload .lecture-upload .upload-actions .btn{
            width: 100%;
        }
    }

/* view-library-system-admin-dashboard */
/* source: library_system/admin/dashboard.php */
body.view-library-system-admin-dashboard .border-left-primary{
    border-left: 0.25rem solid #4e73df !important;
}
body.view-library-system-admin-dashboard .border-left-success{
    border-left: 0.25rem solid #1cc88a !important;
}
body.view-library-system-admin-dashboard .border-left-info{
    border-left: 0.25rem solid #36b9cc !important;
}
body.view-library-system-admin-dashboard .border-left-warning{
    border-left: 0.25rem solid #f6c23e !important;
}
body.view-library-system-admin-dashboard .border-left-danger{
    border-left: 0.25rem solid #e74a3b !important;
}
body.view-library-system-admin-dashboard .border-left-secondary{
    border-left: 0.25rem solid #858796 !important;
}
body.view-library-system-admin-dashboard .border-left-dark{
    border-left: 0.25rem solid #5a5c69 !important;
}/* Enhanced UI Styles */
body.view-library-system-admin-dashboard .stats-card{
    transition: all 0.3s ease;
    border-radius: 12px !important;
    position: relative;
    overflow: hidden;
}/* Ensure Font Awesome icons are loaded */
body.view-library-system-admin-dashboard .fas, body.view-library-system-admin-dashboard .far, body.view-library-system-admin-dashboard .fab{
    font-family: "Font Awesome 6 Free", "Font Awesome 6 Pro", "Font Awesome 5 Free", "Font Awesome 5 Pro", "FontAwesome" !important;
    font-weight: 900;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}/* Fallback for icons if Font Awesome doesn't load */
body.view-library-system-admin-dashboard .stats-icon i:before{
    content: "📚";
}

body.view-library-system-admin-dashboard .stats-icon i.fa-book:before{
    content: "📖";
}

body.view-library-system-admin-dashboard .stats-icon i.fa-book-open:before{
    content: "📖";
}

body.view-library-system-admin-dashboard .stats-icon i.fa-book-reader:before{
    content: "👤";
}

body.view-library-system-admin-dashboard .stats-icon i.fa-clock:before{
    content: "⏰";
}/* Fallback icon styles */
body.view-library-system-admin-dashboard .fallback-icon{
    font-family: Arial, sans-serif !important;
    font-size: 2rem !important;
}

body.view-library-system-admin-dashboard .fallback-icon.fa-book:before{
    content: "📖";
}

body.view-library-system-admin-dashboard .fallback-icon.fa-book-open:before{
    content: "📖";
}

body.view-library-system-admin-dashboard .fallback-icon.fa-book-reader:before{
    content: "👤";
}

body.view-library-system-admin-dashboard .fallback-icon.fa-clock:before{
    content: "⏰";
}

body.view-library-system-admin-dashboard .stats-card::before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--bs-primary), var(--bs-success));
    opacity: 0;
    transition: opacity 0.3s ease;
}

body.view-library-system-admin-dashboard .stats-card:hover::before{
    opacity: 1;
}

body.view-library-system-admin-dashboard .stats-card:hover{
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0,0,0,0.1) !important;
}

body.view-library-system-admin-dashboard .stats-icon{
    width: 60px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.8rem;
    border-radius: 15px !important;
    transition: all 0.3s ease;
}

body.view-library-system-admin-dashboard .stats-icon:hover{
    transform: scale(1.1);
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
}/* Specific icon styling for each card type */
body.view-library-system-admin-dashboard .stats-card:nth-child(1) .stats-icon{
    background: linear-gradient(135deg, rgba(13, 110, 253, 0.1), rgba(13, 110, 253, 0.2)) !important;
}

body.view-library-system-admin-dashboard .stats-card:nth-child(2) .stats-icon{
    background: linear-gradient(135deg, rgba(25, 135, 84, 0.1), rgba(25, 135, 84, 0.2)) !important;
}

body.view-library-system-admin-dashboard .stats-card:nth-child(3) .stats-icon{
    background: linear-gradient(135deg, rgba(255, 193, 7, 0.1), rgba(255, 193, 7, 0.2)) !important;
}

body.view-library-system-admin-dashboard .stats-card:nth-child(4) .stats-icon{
    background: linear-gradient(135deg, rgba(220, 53, 69, 0.1), rgba(220, 53, 69, 0.2)) !important;
}/* Icon animation on hover */
body.view-library-system-admin-dashboard .stats-card:hover .stats-icon i{
    animation: view-library-system-admin-dashboard-bounce 0.6s ease-in-out;
}

@keyframes view-library-system-admin-dashboard-bounce {
    0%, 20%, 50%, 80%, 100% {
        transform: translateY(0);
    }
    40% {
        transform: translateY(-10px);
    }
    60% {
        transform: translateY(-5px);
    }
}

body.view-library-system-admin-dashboard .hover-lift{
    transition: all 0.3s ease;
}

body.view-library-system-admin-dashboard .hover-lift:hover{
    transform: translateY(-3px);
    box-shadow: 0 8px 20px rgba(0,0,0,0.12) !important;
}/* Enhanced table styles */
body.view-library-system-admin-dashboard .table-hover tbody tr:hover{
    background-color: rgba(0,123,255,0.05);
    transform: scale(1.01);
    transition: all 0.2s ease;
}/* Button enhancements */
body.view-library-system-admin-dashboard .btn{
    transition: all 0.3s ease;
}

body.view-library-system-admin-dashboard .btn:hover{
    transform: translateY(-1px);
}

/* Loading animation */
@keyframes view-library-system-admin-dashboard-pulse {
    0% { opacity: 1; }
    50% { opacity: 0.5; }
    100% { opacity: 1; }
}

body.view-library-system-admin-dashboard .loading{
    animation: view-library-system-admin-dashboard-pulse 1.5s ease-in-out infinite;
}

/* Responsive improvements */
@media (max-width: 768px) {
    body.view-library-system-admin-dashboard .stats-card{
        margin-bottom: 1rem;
    }
    
    body.view-library-system-admin-dashboard .d-flex.gap-2{
        flex-direction: column;
        gap: 0.5rem !important;
    }
    
    body.view-library-system-admin-dashboard .btn-sm{
        width: 100%;
    }
}/* Smooth transitions */
body.view-library-system-admin-dashboard *{
    transition: all 0.2s ease;
}/* Enhanced focus states */
body.view-library-system-admin-dashboard .btn:focus, body.view-library-system-admin-dashboard .form-control:focus{
    box-shadow: 0 0 0 0.2rem rgba(0,123,255,0.25);
}/* Custom scrollbar */
body.view-library-system-admin-dashboard ::-webkit-scrollbar{
    width: 8px;
}

body.view-library-system-admin-dashboard ::-webkit-scrollbar-track{
    background: #f1f1f1;
    border-radius: 4px;
}

body.view-library-system-admin-dashboard ::-webkit-scrollbar-thumb{
    background: #c1c1c1;
    border-radius: 4px;
}

body.view-library-system-admin-dashboard ::-webkit-scrollbar-thumb:hover{
    background: #a8a8a8;
}

/* view-library-system-books-index */
/* source: library_system/books/index.php */
/* Enhanced Books Page Styles */
body.view-library-system-books-index .book-row{
    transition: all 0.2s ease;
}

body.view-library-system-books-index .book-row:hover{
    background-color: rgba(0,123,255,0.05) !important;
    transform: scale(1.01);
}/* Enhanced form controls */
body.view-library-system-books-index .form-control-lg, body.view-library-system-books-index .form-select-lg{
    transition: all 0.3s ease;
}

body.view-library-system-books-index .form-control-lg:focus, body.view-library-system-books-index .form-select-lg:focus{
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0,123,255,0.15);
}/* Enhanced buttons */
body.view-library-system-books-index .btn{
    transition: all 0.3s ease;
}

body.view-library-system-books-index .btn:hover{
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(0,0,0,0.15);
}

body.view-library-system-books-index .btn:active{
    transform: translateY(0);
}/* Enhanced table */
body.view-library-system-books-index .table-hover tbody tr:hover{
    background-color: rgba(0,123,255,0.05);
}/* Enhanced badges */
body.view-library-system-books-index .badge{
    font-size: 0.75rem;
    padding: 0.5em 0.75em;
}/* Enhanced icons */
body.view-library-system-books-index .fas{
    transition: all 0.2s ease;
}

body.view-library-system-books-index .btn:hover .fas{
    transform: scale(1.1);
}

/* Loading animation */
@keyframes view-library-system-books-index-spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

body.view-library-system-books-index .fa-spinner{
    animation: view-library-system-books-index-spin 1s linear infinite;
}/* Enhanced search input */
body.view-library-system-books-index .position-relative .form-control{
    padding-left: 3rem;
}

/* Responsive improvements */
@media (max-width: 768px) {
    body.view-library-system-books-index .d-flex.gap-2{
        flex-direction: column;
        gap: 0.5rem !important;
    }
    
    body.view-library-system-books-index .btn-sm{
        padding: 0.375rem 0.5rem;
        font-size: 0.75rem;
    }
    
    body.view-library-system-books-index .table-responsive{
        font-size: 0.875rem;
    }
}/* Custom scrollbar */
body.view-library-system-books-index .table-responsive::-webkit-scrollbar{
    height: 8px;
}

body.view-library-system-books-index .table-responsive::-webkit-scrollbar-track{
    background: #f1f1f1;
    border-radius: 4px;
}

body.view-library-system-books-index .table-responsive::-webkit-scrollbar-thumb{
    background: #c1c1c1;
    border-radius: 4px;
}

body.view-library-system-books-index .table-responsive::-webkit-scrollbar-thumb:hover{
    background: #a8a8a8;
}/* Enhanced card */
body.view-library-system-books-index .card{
    border-radius: 12px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.08);
    transition: all 0.3s ease;
}

body.view-library-system-books-index .card:hover{
    box-shadow: 0 4px 20px rgba(0,0,0,0.12);
}/* Enhanced empty state */
body.view-library-system-books-index .text-center{
    padding: 3rem 1rem;
}/* Smooth transitions */
body.view-library-system-books-index *{
    transition: all 0.2s ease;
}

/* view-library-system-books-pdf-books */
/* source: library_system/books/pdf_books.php */
body.view-library-system-books-pdf-books .card{
    transition: transform 0.2s ease-in-out;
    border: none;
    box-shadow: 0 0.15rem 1.75rem 0 rgba(58, 59, 69, 0.15);
}

body.view-library-system-books-pdf-books .card:hover{
    transform: translateY(-2px);
    box-shadow: 0 0.25rem 2rem 0 rgba(58, 59, 69, 0.2);
}

body.view-library-system-books-pdf-books .card-title{
    font-size: 1.1rem;
    font-weight: 600;
    line-height: 1.3;
}

body.view-library-system-books-pdf-books .badge{
    font-size: 0.75rem;
}

body.view-library-system-books-pdf-books .card-footer{
    border-top: 1px solid #e3e6f0;
    background-color: #f8f9fc;
}

body.view-library-system-books-pdf-books .pagination .page-link{
    color: #5a5c69;
    border-color: #e3e6f0;
}

body.view-library-system-books-pdf-books .pagination .page-item.active .page-link{
    background-color: #4e73df;
    border-color: #4e73df;
}

body.view-library-system-books-pdf-books .pagination .page-link:hover{
    color: #4e73df;
    background-color: #eaecf4;
    border-color: #e3e6f0;
}

/* view-library-system-books-student-pdf-books */
/* source: library_system/books/student_pdf_books.php */
/* Enhanced Student PDF Books Styles */
body.view-library-system-books-student-pdf-books .book-card{
    transition: all 0.3s ease;
}

body.view-library-system-books-student-pdf-books .book-card:hover{
    transform: translateY(-5px);
}

body.view-library-system-books-student-pdf-books .hover-lift{
    transition: all 0.3s ease;
}

body.view-library-system-books-student-pdf-books .hover-lift:hover{
    transform: translateY(-3px);
    box-shadow: 0 8px 20px rgba(0,0,0,0.12) !important;
}/* Enhanced form controls */
body.view-library-system-books-student-pdf-books .form-control-lg{
    transition: all 0.3s ease;
    border-radius: 50px !important;
}

body.view-library-system-books-student-pdf-books .form-control-lg:focus{
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0,123,255,0.15);
}/* Enhanced buttons */
body.view-library-system-books-student-pdf-books .btn{
    transition: all 0.3s ease;
}

body.view-library-system-books-student-pdf-books .btn:hover{
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(0,0,0,0.15);
}/* Enhanced badges */
body.view-library-system-books-student-pdf-books .badge{
    font-size: 0.75rem;
    padding: 0.5em 0.75em;
    border-radius: 20px;
}/* Enhanced icons */
body.view-library-system-books-student-pdf-books .fas{
    transition: all 0.2s ease;
}

body.view-library-system-books-student-pdf-books .btn:hover .fas{
    transform: scale(1.1);
}

/* Responsive improvements */
@media (max-width: 768px) {
    body.view-library-system-books-student-pdf-books .d-flex.gap-2{
        flex-direction: column;
        gap: 0.5rem !important;
    }
    
    body.view-library-system-books-student-pdf-books .btn-sm{
        padding: 0.375rem 0.5rem;
        font-size: 0.75rem;
    }
}/* Custom scrollbar */
body.view-library-system-books-student-pdf-books ::-webkit-scrollbar{
    width: 8px;
}

body.view-library-system-books-student-pdf-books ::-webkit-scrollbar-track{
    background: #f1f1f1;
    border-radius: 4px;
}

body.view-library-system-books-student-pdf-books ::-webkit-scrollbar-thumb{
    background: #c1c1c1;
    border-radius: 4px;
}

body.view-library-system-books-student-pdf-books ::-webkit-scrollbar-thumb:hover{
    background: #a8a8a8;
}/* Enhanced card */
body.view-library-system-books-student-pdf-books .card{
    border-radius: 12px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.08);
    transition: all 0.3s ease;
}

body.view-library-system-books-student-pdf-books .card:hover{
    box-shadow: 0 4px 20px rgba(0,0,0,0.12);
}/* Smooth transitions */
body.view-library-system-books-student-pdf-books *{
    transition: all 0.2s ease;
}/* Enhanced focus states */
body.view-library-system-books-student-pdf-books .form-control:focus{
    box-shadow: 0 0 0 0.2rem rgba(0,123,255,0.25);
    border-color: #007bff;
}

/* view-library-system-books-view-pdf */
/* source: library_system/books/view_pdf.php */
body.view-library-system-books-view-pdf .pdf-viewer-container{
    position: relative;
    background: #f8f9fa;
}

body.view-library-system-books-view-pdf .pdf-viewer-container iframe{
    border-radius: 0.375rem;
}/* Disable right-click context menu on iframe */
body.view-library-system-books-view-pdf .pdf-viewer-container iframe{
    pointer-events: auto;
}/* Add some styling for better UX */
body.view-library-system-books-view-pdf .card{
    border: none;
    box-shadow: 0 0.15rem 1.75rem 0 rgba(58, 59, 69, 0.15);
}

body.view-library-system-books-view-pdf .card-header{
    background-color: #f8f9fc;
    border-bottom: 1px solid #e3e6f0;
}

body.view-library-system-books-view-pdf .card-footer{
    background-color: #f8f9fc;
    border-top: 1px solid #e3e6f0;
}

/* view-library-system-borrowing-borrow-form */
/* source: library_system/borrowing/borrow_form.php */
/* Enhanced Borrowing Form Styles */
body.view-library-system-borrowing-borrow-form .form-floating{
    transition: all 0.3s ease;
}

body.view-library-system-borrowing-borrow-form .form-floating:focus-within{
    transform: translateY(-2px);
}

body.view-library-system-borrowing-borrow-form .form-control-lg, body.view-library-system-borrowing-borrow-form .form-select-lg{
    transition: all 0.3s ease;
    border-radius: 50px !important;
}

body.view-library-system-borrowing-borrow-form .form-control-lg:focus, body.view-library-system-borrowing-borrow-form .form-select-lg:focus{
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0,123,255,0.15);
}/* Enhanced info cards */
body.view-library-system-borrowing-borrow-form .bg-gradient-light{
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
}

body.view-library-system-borrowing-borrow-form .card{
    border-radius: 12px;
    transition: all 0.3s ease;
}

body.view-library-system-borrowing-borrow-form .card:hover{
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(0,0,0,0.1);
}/* Enhanced buttons */
body.view-library-system-borrowing-borrow-form .btn{
    transition: all 0.3s ease;
}

body.view-library-system-borrowing-borrow-form .btn:hover{
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(0,0,0,0.15);
}

body.view-library-system-borrowing-borrow-form .btn:active{
    transform: translateY(0);
}

body.view-library-system-borrowing-borrow-form .btn-lg{
    font-weight: 600;
    letter-spacing: 0.5px;
}/* Enhanced badges */
body.view-library-system-borrowing-borrow-form .badge{
    font-size: 0.75rem;
    padding: 0.5em 0.75em;
    border-radius: 20px;
}/* Enhanced icons */
body.view-library-system-borrowing-borrow-form .fas{
    transition: all 0.2s ease;
}

body.view-library-system-borrowing-borrow-form .btn:hover .fas{
    transform: scale(1.1);
}

/* Loading animation */
@keyframes view-library-system-borrowing-borrow-form-spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

body.view-library-system-borrowing-borrow-form .fa-spinner{
    animation: view-library-system-borrowing-borrow-form-spin 1s linear infinite;
}/* Enhanced alerts */
body.view-library-system-borrowing-borrow-form .alert{
    border-radius: 12px;
    border: none;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
}

/* Responsive improvements */
@media (max-width: 768px) {
    body.view-library-system-borrowing-borrow-form .d-flex.gap-2{
        flex-direction: column;
        gap: 0.5rem !important;
    }
    
    body.view-library-system-borrowing-borrow-form .btn-lg{
        width: 100%;
        padding: 0.75rem 1rem;
    }
    
    body.view-library-system-borrowing-borrow-form .form-control-lg, body.view-library-system-borrowing-borrow-form .form-select-lg{
        font-size: 1rem;
    }
}/* Enhanced form validation */
body.view-library-system-borrowing-borrow-form .form-control:invalid{
    border-color: #dc3545;
    box-shadow: 0 0 0 0.2rem rgba(220,53,69,0.25);
}

body.view-library-system-borrowing-borrow-form .form-control:valid{
    border-color: #28a745;
    box-shadow: 0 0 0 0.2rem rgba(40,167,69,0.25);
}/* Smooth transitions */
body.view-library-system-borrowing-borrow-form *{
    transition: all 0.2s ease;
}/* Enhanced focus states */
body.view-library-system-borrowing-borrow-form .form-control:focus, body.view-library-system-borrowing-borrow-form .form-select:focus{
    box-shadow: 0 0 0 0.2rem rgba(0,123,255,0.25);
    border-color: #007bff;
}/* Custom scrollbar */
body.view-library-system-borrowing-borrow-form ::-webkit-scrollbar{
    width: 8px;
}

body.view-library-system-borrowing-borrow-form ::-webkit-scrollbar-track{
    background: #f1f1f1;
    border-radius: 4px;
}

body.view-library-system-borrowing-borrow-form ::-webkit-scrollbar-thumb{
    background: #c1c1c1;
    border-radius: 4px;
}

body.view-library-system-borrowing-borrow-form ::-webkit-scrollbar-thumb:hover{
    background: #a8a8a8;
}

/* view-library-system-borrowing-index */
/* source: library_system/borrowing/index.php */
body.view-library-system-borrowing-index .card{
    border: none;
    box-shadow: 0 0.15rem 1.75rem 0 rgba(58, 59, 69, 0.15);
}

body.view-library-system-borrowing-index .card-header{
    background-color: #f8f9fc;
    border-bottom: 1px solid #e3e6f0;
}

body.view-library-system-borrowing-index .table th{
    background-color: #f8f9fc;
    border-top: none;
    font-weight: 600;
}

body.view-library-system-borrowing-index .badge{
    font-size: 0.75rem;
}

body.view-library-system-borrowing-index .btn-group .btn{
    margin-right: 2px;
}

body.view-library-system-borrowing-index .widgets-icons-2{
    width: 50px;
    height: 50px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

body.view-library-system-borrowing-index .bg-gradient-scooter{
    background: linear-gradient(45deg, #17a2b8, #138496);
}

body.view-library-system-borrowing-index .bg-gradient-bloody{
    background: linear-gradient(45deg, #28a745, #1e7e34);
}

body.view-library-system-borrowing-index .bg-gradient-orange{
    background: linear-gradient(45deg, #fd7e14, #e55a00);
}

body.view-library-system-borrowing-index .bg-gradient-blooker{
    background: linear-gradient(45deg, #dc3545, #c82333);
}

/* view-library-system-layout-main */
/* source: library_system/layout/main.php */
/* Dark mode variables */
html:has(body.view-library-system-layout-main){
    --bs-body-bg: #ffffff;
    --bs-body-color: #212529;
    --bs-card-bg: #ffffff;
    --bs-border-color: #dee2e6;
    --bs-text-muted: #6c757d;
}

body.view-library-system-layout-main [data-bs-theme="dark"]{
    --bs-body-bg: #1a1a1a;
    --bs-body-color: #ffffff;
    --bs-card-bg: #2d2d2d;
    --bs-border-color: #495057;
    --bs-text-muted: #adb5bd;
}/* Apply dark mode styles */
body.view-library-system-layout-main [data-bs-theme="dark"] .card{
    background-color: var(--bs-card-bg);
    border-color: var(--bs-border-color);
    color: var(--bs-body-color);
}

body.view-library-system-layout-main [data-bs-theme="dark"] .text-muted{
    color: var(--bs-text-muted) !important;
}

body.view-library-system-layout-main [data-bs-theme="dark"] .bg-light{
    background-color: #3d3d3d !important;
    color: #ffffff;
}

body.view-library-system-layout-main [data-bs-theme="dark"] .bg-gradient-light{
    background: linear-gradient(135deg, #3d3d3d 0%, #4d4d4d 100%) !important;
}

body.view-library-system-layout-main [data-bs-theme="dark"] .form-control, body.view-library-system-layout-main [data-bs-theme="dark"] .form-select{
    background-color: #3d3d3d;
    border-color: var(--bs-border-color);
    color: var(--bs-body-color);
}

body.view-library-system-layout-main [data-bs-theme="dark"] .form-control:focus, body.view-library-system-layout-main [data-bs-theme="dark"] .form-select:focus{
    background-color: #3d3d3d;
    border-color: #007bff;
    color: var(--bs-body-color);
}

body.view-library-system-layout-main [data-bs-theme="dark"] .table{
    color: var(--bs-body-color);
}

body.view-library-system-layout-main [data-bs-theme="dark"] .table-hover tbody tr:hover{
    background-color: rgba(255,255,255,0.05);
}

body.view-library-system-layout-main [data-bs-theme="dark"] .badge{
    color: #000;
}

body.view-library-system-layout-main [data-bs-theme="dark"] .stats-card{
    background-color: var(--bs-card-bg);
    border-color: var(--bs-border-color);
}

body.view-library-system-layout-main [data-bs-theme="dark"] .stats-icon{
    background-color: rgba(255,255,255,0.1) !important;
}

body.view-library-system-layout-main [data-bs-theme="dark"] .border-0{
    border-color: var(--bs-border-color) !important;
}

body.view-library-system-layout-main [data-bs-theme="dark"] .shadow-sm{
    box-shadow: 0 0.125rem 0.25rem rgba(0,0,0,0.3) !important;
}

body.view-library-system-layout-main [data-bs-theme="dark"] .shadow{
    box-shadow: 0 0.5rem 1rem rgba(0,0,0,0.4) !important;
}

body.view-library-system-layout-main [data-bs-theme="dark"] .btn-outline-primary{
    border-color: #007bff;
    color: #007bff;
}

body.view-library-system-layout-main [data-bs-theme="dark"] .btn-outline-primary:hover{
    background-color: #007bff;
    border-color: #007bff;
    color: #fff;
}

body.view-library-system-layout-main [data-bs-theme="dark"] .btn-outline-success{
    border-color: #28a745;
    color: #28a745;
}

body.view-library-system-layout-main [data-bs-theme="dark"] .btn-outline-success:hover{
    background-color: #28a745;
    border-color: #28a745;
    color: #fff;
}

body.view-library-system-layout-main [data-bs-theme="dark"] .btn-outline-warning{
    border-color: #ffc107;
    color: #ffc107;
}

body.view-library-system-layout-main [data-bs-theme="dark"] .btn-outline-warning:hover{
    background-color: #ffc107;
    border-color: #ffc107;
    color: #000;
}

body.view-library-system-layout-main [data-bs-theme="dark"] .btn-outline-danger{
    border-color: #dc3545;
    color: #dc3545;
}

body.view-library-system-layout-main [data-bs-theme="dark"] .btn-outline-danger:hover{
    background-color: #dc3545;
    border-color: #dc3545;
    color: #fff;
}

body.view-library-system-layout-main [data-bs-theme="dark"] .btn-outline-info{
    border-color: #17a2b8;
    color: #17a2b8;
}

body.view-library-system-layout-main [data-bs-theme="dark"] .btn-outline-info:hover{
    background-color: #17a2b8;
    border-color: #17a2b8;
    color: #fff;
}

body.view-library-system-layout-main [data-bs-theme="dark"] .breadcrumb{
    background-color: var(--bs-card-bg);
}

body.view-library-system-layout-main [data-bs-theme="dark"] .breadcrumb-item + .breadcrumb-item::before{
    color: var(--bs-text-muted);
}

body.view-library-system-layout-main [data-bs-theme="dark"] .breadcrumb-item a{
    color: #007bff;
}

body.view-library-system-layout-main [data-bs-theme="dark"] .breadcrumb-item.active{
    color: var(--bs-text-muted);
}

body.view-library-system-layout-main [data-bs-theme="dark"] .alert{
    background-color: var(--bs-card-bg);
    border-color: var(--bs-border-color);
    color: var(--bs-body-color);
}/* Dark mode toggle button */
body.view-library-system-layout-main .dark-mode-toggle{
    position: fixed;
    top: 20px;
    right: 20px;
    z-index: 1050;
    background: var(--bs-card-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: 50px;
    padding: 12px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
    transition: all 0.3s ease;
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
}

body.view-library-system-layout-main [data-bs-theme="dark"] .dark-mode-toggle{
    box-shadow: 0 2px 10px rgba(0,0,0,0.3);
}

body.view-library-system-layout-main .dark-mode-toggle:hover{
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(0,0,0,0.2);
}

body.view-library-system-layout-main [data-bs-theme="dark"] .dark-mode-toggle:hover{
    box-shadow: 0 4px 15px rgba(0,0,0,0.4);
}

/* view-military-duty-admin-panel */
/* source: military_duty/admin_panel.php */
body.view-military-duty-admin-panel .spin{
    animation: view-military-duty-admin-panel-spin 1s linear infinite;
}

@keyframes view-military-duty-admin-panel-spin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

body.view-military-duty-admin-panel .pagination{
    margin-bottom: 0;
}

body.view-military-duty-admin-panel .pagination .page-link{
    color: #007bff;
    background-color: #fff;
    border: 1px solid #dee2e6;
}

body.view-military-duty-admin-panel .pagination .page-item.active .page-link{
    background-color: #007bff;
    border-color: #007bff;
}

body.view-military-duty-admin-panel .pagination .page-item.disabled .page-link{
    color: #6c757d;
    background-color: #fff;
    border-color: #dee2e6;
}

body.view-military-duty-admin-panel .status-badge{
    font-size: 0.8em;
    padding: 0.25em 0.5em;
}

body.view-military-duty-admin-panel .stats-card{
    border-left: 4px solid #007bff;
    transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
    border-radius: 8px;
}

body.view-military-duty-admin-panel .stats-card:hover{
    transform: translateY(-5px);
    box-shadow: 0 4px 12px rgba(0,0,0,0.15) !important;
}

body.view-military-duty-admin-panel .stats-card.success{
    border-left-color: #28a745;
}

body.view-military-duty-admin-panel .stats-card.danger{
    border-left-color: #dc3545;
}

body.view-military-duty-admin-panel .stats-card.warning{
    border-left-color: #ffc107;
}

body.view-military-duty-admin-panel .stats-card .card-body{
    padding: 1.5rem;
}

body.view-military-duty-admin-panel .stats-card h2{
    font-size: 2.5rem;
    line-height: 1.2;
}

body.view-military-duty-admin-panel .stats-card h6{
    font-size: 0.95rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

body.view-military-duty-admin-panel .stats-card small{
    font-size: 0.85rem;
    display: block;
    margin-top: 0.5rem;
}

body.view-military-duty-admin-panel .filter-section{
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    border-radius: 12px;
    padding: 25px;
    margin-bottom: 25px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    border: 1px solid #dee2e6;
}

body.view-military-duty-admin-panel .filter-section .form-label{
    font-weight: 600;
    color: #495057;
    margin-bottom: 8px;
}

body.view-military-duty-admin-panel .filter-section .form-control, body.view-military-duty-admin-panel .filter-section .form-select{
    border-radius: 6px;
    border: 1px solid #ced4da;
    transition: all 0.2s ease-in-out;
}

body.view-military-duty-admin-panel .filter-section .form-control:focus, body.view-military-duty-admin-panel .filter-section .form-select:focus{
    border-color: #007bff;
    box-shadow: 0 0 0 0.2rem rgba(0,123,255,0.15);
    transform: translateY(-1px);
}

body.view-military-duty-admin-panel .filter-select{
    transition: all 0.2s ease-in-out;
}

body.view-military-duty-admin-panel .filter-select:hover{
    border-color: #007bff;
    box-shadow: 0 2px 4px rgba(0,123,255,0.1);
}

body.view-military-duty-admin-panel #searchInput{
    padding-right: 40px;
}

body.view-military-duty-admin-panel #searchHint{
    animation: view-military-duty-admin-panel-fadeIn 0.3s ease-in;
}

@keyframes view-military-duty-admin-panel-fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

body.view-military-duty-admin-panel .empty-filter-message{
    background-color: #f8f9fa;
}

html.dark-theme body.view-military-duty-admin-panel .empty-filter-message{
    background-color: #1a1a1a;
}

body.view-military-duty-admin-panel .btn-lg{
    padding: 0.75rem 1.5rem;
    font-size: 1rem;
    border-radius: 6px;
    transition: all 0.2s ease-in-out;
}

body.view-military-duty-admin-panel .btn-lg:hover{
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0,0,0,0.15);
}/* Enhanced Table Design - HR Style */
body.view-military-duty-admin-panel .military-duty-table{
    margin: 0;
}

body.view-military-duty-admin-panel .military-duty-table thead th{
    background: linear-gradient(135deg,rgb(184, 149, 58) 0%,rgb(207, 161, 76) 100%);
    color: white;
    font-weight: 600;
    padding: 1rem;
    border: none;
    text-align: right;
    font-size: 0.95rem;
    white-space: nowrap;
    position: sticky;
    top: 0;
    z-index: 10;
}

body.view-military-duty-admin-panel .military-duty-table thead th a{
    color: white;
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

body.view-military-duty-admin-panel .military-duty-table thead th:hover{
    background: linear-gradient(135deg,rgb(165, 161, 74) 0%,rgb(175, 164, 38) 100%);
}

body.view-military-duty-admin-panel .military-duty-table thead th i{
    font-size: 1.1rem;
    margin-left: 0.5rem;
}

body.view-military-duty-admin-panel .military-duty-table tbody td{
    padding: 1rem;
    vertical-align: middle;
    border-color: rgba(0, 0, 0, 0.05);
}

body.view-military-duty-admin-panel .table-row{
    cursor: pointer;
    transition: all 0.2s ease;
    border-left: 3px solid transparent;
}

body.view-military-duty-admin-panel .table-row:hover{
    background: linear-gradient(90deg, rgb(178, 152, 58)  0%, rgb(178, 152, 58, 0.3)  100%);
    border-left-color: #1e6b3a;
    transform: translateX(-3px);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}

html.dark-theme body.view-military-duty-admin-panel .table-row:hover{
    background: linear-gradient(90deg, rgba(166, 141, 67, 0.15) 0%, rgba(199, 189, 50, 0.08) 100%);
}/* Faculty Badge */
body.view-military-duty-admin-panel .faculty-badge{
    display: inline-block;
    padding: 0.4rem 0.8rem;
    background: linear-gradient(135deg,rgb(178, 152, 58) 0%,rgb(193, 149, 29) 100%);
    color: white;
    border-radius: 20px;
    font-size: 0.85rem;
    font-weight: 600;
    white-space: nowrap;
    box-shadow: 0 2px 4px rgb(178, 152, 58, 0.3) ;
}/* Status Badge */
body.view-military-duty-admin-panel .status-badge{
    padding: 0.5em 0.75em;
    font-weight: 500;
    border-radius: 20px;
    display: inline-flex;
    align-items: center;
    font-size: 0.85rem;
}

body.view-military-duty-admin-panel .table-responsive{
    border-radius: 8px;
    overflow-x: auto;
    overflow-y: auto;
    max-height: 600px;
    -webkit-overflow-scrolling: touch;
}

body.view-military-duty-admin-panel .table-responsive table{
    min-width: 100%;
    white-space: nowrap;
}

body.view-military-duty-admin-panel .table-responsive table th{
    white-space: nowrap;
    min-width: 120px;
}

body.view-military-duty-admin-panel .table-responsive table td{
    min-width: 100px;
    max-width: 200px;
    word-wrap: break-word;
    overflow-wrap: break-word;
}/* Keep specific columns on one line */
body.view-military-duty-admin-panel .table-responsive table td:nth-child(1), body.view-military-duty-admin-panel .table-responsive table td:nth-child(3), body.view-military-duty-admin-panel .table-responsive table td:nth-child(6), body.view-military-duty-admin-panel .table-responsive table td:nth-child(8){
    white-space: nowrap;
    max-width: 150px;
}/* Dark theme support */
html.dark-theme body.view-military-duty-admin-panel .military-duty-table tbody td{
    border-color: rgba(255, 255, 255, 0.05);
    color: #e0e0e0;
}

/* view-military-duty-admin-panel-failed */
/* source: military_duty/admin_panel_failed.php */
body.view-military-duty-admin-panel-failed .spin{
    animation: view-military-duty-admin-panel-failed-spin 1s linear infinite;
}

@keyframes view-military-duty-admin-panel-failed-spin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

body.view-military-duty-admin-panel-failed .table-responsive{
    max-height: 600px;
    overflow-y: auto;
}

body.view-military-duty-admin-panel-failed .pagination{
    margin-bottom: 0;
}

body.view-military-duty-admin-panel-failed .pagination .page-link{
    color: #007bff;
    background-color: #fff;
    border: 1px solid #dee2e6;
}

body.view-military-duty-admin-panel-failed .pagination .page-item.active .page-link{
    background-color: #007bff;
    border-color: #007bff;
}

body.view-military-duty-admin-panel-failed .pagination .page-item.disabled .page-link{
    color: #6c757d;
    background-color: #fff;
    border-color: #dee2e6;
}

body.view-military-duty-admin-panel-failed .status-badge{
    font-size: 0.8em;
    padding: 0.25em 0.5em;
}

body.view-military-duty-admin-panel-failed .filter-section{
    background-color: #f8f9fa;
    border-radius: 8px;
    padding: 20px;
    margin-bottom: 20px;
}

body.view-military-duty-admin-panel-failed .btn-group .btn{
    margin-right: 5px;
}

body.view-military-duty-admin-panel-failed .btn-group .btn:last-child{
    margin-right: 0;
}

body.view-military-duty-admin-panel-failed .failed-payment-row{
    background-color: #fff5f5;
}

body.view-military-duty-admin-panel-failed .failed-payment-row:hover{
    background-color: #ffe6e6;
}

/* view-military-duty-payment-failed */
/* source: military_duty/payment_failed.php */
body.view-military-duty-payment-failed .failure-animation{
    animation: view-military-duty-payment-failed-shakeIn 0.6s ease-in-out;
}

@keyframes view-military-duty-payment-failed-shakeIn {
    0%, 100% {
        transform: translateX(0);
    }
    10%, 30%, 50%, 70%, 90% {
        transform: translateX(-10px);
    }
    20%, 40%, 60%, 80% {
        transform: translateX(10px);
    }
}

body.view-military-duty-payment-failed .failed-card{
    border: 2px solid #dc3545;
    box-shadow: 0 4px 15px rgba(220, 53, 69, 0.2);
}

body.view-military-duty-payment-failed .university-header-failed{
    background: linear-gradient(135deg, #dc3545 0%, #c82333 100%);
    color: white;
    padding: 30px;
    border-radius: 10px 10px 0 0;
}

body.view-military-duty-payment-failed .detail-row{
    padding: 12px 0;
    border-bottom: 1px solid #e9ecef;
}

body.view-military-duty-payment-failed .detail-row:last-child{
    border-bottom: none;
}

body.view-military-duty-payment-failed .detail-label{
    font-weight: 600;
    color: #495057;
    min-width: 150px;
    display: inline-block;
}

body.view-military-duty-payment-failed .detail-value{
    color: #212529;
}

body.view-military-duty-payment-failed .retry-btn{
    background: linear-gradient(135deg, #ffc107 0%, #ff9800 100%);
    border: none;
    padding: 12px 30px;
    font-size: 1.1em;
    color: #000;
    font-weight: 600;
    transition: all 0.3s;
}

body.view-military-duty-payment-failed .retry-btn:hover{
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(255, 193, 7, 0.4);
    color: #000;
}

body.view-military-duty-payment-failed .reason-card{
    background: #fff3cd;
    border-left: 4px solid #ffc107;
}/* Two-column layout for screen */
body.view-military-duty-payment-failed .two-column{ display: flex; flex-wrap: wrap; gap: 16px; }
body.view-military-duty-payment-failed .two-column .col{ flex: 1 1 0; min-width: min(280px, 100%); }

/* view-military-duty-payment-success */
/* source: military_duty/payment_success.php */
body.view-military-duty-payment-success .success-animation{
    animation: view-military-duty-payment-success-scaleIn 0.5s ease-in-out;
}

@keyframes view-military-duty-payment-success-scaleIn {
    0% {
        transform: scale(0);
        opacity: 0;
    }
    50% {
        transform: scale(1.1);
    }
    100% {
        transform: scale(1);
        opacity: 1;
    }
}

body.view-military-duty-payment-success .receipt-card{
    border: 2px solid #28a745;
    box-shadow: 0 4px 15px rgba(40, 167, 69, 0.2);
}

body.view-military-duty-payment-success .university-header{
    background: linear-gradient(135deg, #28a745 0%, #20c997 100%);
    color: white;
    padding: 30px;
    border-radius: 10px 10px 0 0;
}

body.view-military-duty-payment-success .detail-row{
    padding: 12px 0;
    border-bottom: 1px solid #e9ecef;
}

body.view-military-duty-payment-success .detail-row:last-child{
    border-bottom: none;
}

body.view-military-duty-payment-success .detail-label{
    font-weight: 600;
    color: #495057;
    min-width: 150px;
    display: inline-block;
}

body.view-military-duty-payment-success .detail-value{
    color: #212529;
}

body.view-military-duty-payment-success .success-badge{
    background: #28a745;
    color: white;
    padding: 10px 20px;
    border-radius: 50px;
    font-size: 1.1em;
    display: inline-block;
    margin: 20px 0;
}

body.view-military-duty-payment-success .print-btn{
    background: linear-gradient(135deg, #6c757d 0%, #495057 100%);
    border: none;
    padding: 12px 30px;
    font-size: 1.1em;
    transition: all 0.3s;
}

body.view-military-duty-payment-success .print-btn:hover{
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0,0,0,0.2);
}

/* view-military-military-duty-adminstration-index */
/* source: military/military_duty_adminstration/index.php */
@media (max-width: 768px) {
        body.view-military-military-duty-adminstration-index .page-content{
            padding: 0.75rem !important;
        }

        body.view-military-military-duty-adminstration-index .card{
            margin-bottom: 1rem;
        }

        body.view-military-military-duty-adminstration-index .card-body{
            padding: 1rem !important;
        }

        body.view-military-military-duty-adminstration-index .card-header{
            padding: 0.875rem 1rem !important;
        }

        body.view-military-military-duty-adminstration-index .badge{
            padding: 0.4rem 0.7rem !important;
            font-size: 0.8rem !important;
        }
    }

    @media (max-width: 576px) {
        body.view-military-military-duty-adminstration-index .page-content{
            padding: 0.5rem !important;
        }

        body.view-military-military-duty-adminstration-index .card-body{
            padding: 0.875rem !important;
        }

        body.view-military-military-duty-adminstration-index .card-header{
            padding: 0.75rem 0.875rem !important;
        }
    }

/* view-military-military-duty-adminstration-preview */
/* source: military/military_duty_adminstration/preview.php */
@media (max-width: 768px) {
        body.view-military-military-duty-adminstration-preview .military-duty-preview .page-content{
            padding: 0.75rem !important;
        }

        body.view-military-military-duty-adminstration-preview .military-duty-preview .card-body{
            padding: 1rem !important;
        }

        body.view-military-military-duty-adminstration-preview .military-duty-preview .card-header{
            padding: 0.875rem 1rem !important;
        }
    }/* Stat tiles: accent stripe uses pseudo-element so html.dark-theme .border-start overrides do not break RTL layout */
body.view-military-military-duty-adminstration-preview .military-duty-preview .stat-card{
        position: relative;
        border: none;
        border-radius: 12px;
        transition: transform 0.15s ease, box-shadow 0.15s ease;
        overflow: hidden;
    }

    body.view-military-military-duty-adminstration-preview .military-duty-preview .stat-card.stat-card-accent::before{
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        inset-inline-start: 0;
        width: 4px;
        background-color: var(--stat-accent, var(--bs-primary));
    }

    body.view-military-military-duty-adminstration-preview .military-duty-preview .stat-card-accent--primary{ --stat-accent: var(--bs-primary); }
    body.view-military-military-duty-adminstration-preview .military-duty-preview .stat-card-accent--info{ --stat-accent: var(--bs-info); }
    body.view-military-military-duty-adminstration-preview .military-duty-preview .stat-card-accent--danger{ --stat-accent: var(--bs-danger); }
    body.view-military-military-duty-adminstration-preview .military-duty-preview .stat-card-accent--success{ --stat-accent: var(--bs-success); }

    body.view-military-military-duty-adminstration-preview .military-duty-preview .stat-card:hover{
        transform: translateY(-2px);
        box-shadow: 0 0.35rem 1rem rgba(0, 0, 0, 0.08) !important;
    }

    body.view-military-military-duty-adminstration-preview .military-duty-preview .stat-card .stat-value{
        font-size: 1.75rem;
        font-weight: 700;
        line-height: 1.2;
    }

    body.view-military-military-duty-adminstration-preview .military-duty-preview .stat-card .stat-label{
        font-size: 0.8rem;
        font-weight: 500;
    }

    body.view-military-military-duty-adminstration-preview .military-duty-preview .stat-card .stat-label i{
        vertical-align: middle;
    }

    body.view-military-military-duty-adminstration-preview .military-duty-preview .filter-select{
        min-width: min(180px, 100%);
    }

    body.view-military-military-duty-adminstration-preview .military-duty-preview .select2-container--bootstrap-5 .select2-selection--multiple{
        min-height: 38px;
    }

    body.view-military-military-duty-adminstration-preview .military-duty-preview .table-total-row td{
        background-color: rgba(0, 0, 0, 0.04);
    }/* ——— Dark mode (template uses html.dark-theme) ——— */
html.dark-theme body.view-military-military-duty-adminstration-preview .military-duty-preview .stat-card:hover{
        box-shadow: 0 0.35rem 1.25rem rgba(0, 0, 0, 0.45) !important;
    }

    html.dark-theme body.view-military-military-duty-adminstration-preview .military-duty-preview .text-muted{
        color: rgba(255, 255, 255, 0.55) !important;
    }

    html.dark-theme body.view-military-military-duty-adminstration-preview .military-duty-preview .form-label{
        color: rgba(255, 255, 255, 0.82);
    }

    html.dark-theme body.view-military-military-duty-adminstration-preview .military-duty-preview .table-total-row td{
        background-color: rgba(255, 255, 255, 0.08);
        color: #f2f2f2;
    }

    html.dark-theme body.view-military-military-duty-adminstration-preview .military-duty-preview #registrationsTable thead.table-light, html.dark-theme body.view-military-military-duty-adminstration-preview .military-duty-preview .faculty-stats-table thead.table-light{
        --bs-table-bg: rgba(255, 255, 255, 0.08);
        --bs-table-color: #ececec;
        --bs-table-border-color: rgba(255, 255, 255, 0.12);
    }

    html.dark-theme body.view-military-military-duty-adminstration-preview .military-duty-preview .dataTables_wrapper .dataTables_length, html.dark-theme body.view-military-military-duty-adminstration-preview .military-duty-preview .dataTables_wrapper .dataTables_info, html.dark-theme body.view-military-military-duty-adminstration-preview .military-duty-preview .dataTables_wrapper .dataTables_filter label{
        color: rgba(255, 255, 255, 0.78);
    }

    html.dark-theme body.view-military-military-duty-adminstration-preview .military-duty-preview .dataTables_wrapper .dataTables_paginate .page-link{
        color: #fff;
    }

    html.dark-theme body.view-military-military-duty-adminstration-preview .military-duty-preview .dt-buttons .dt-button{
        background-color: #2a2a2a !important;
        color: #ececec !important;
        border: 1px solid rgba(255, 255, 255, 0.18) !important;
    }

    html.dark-theme body.view-military-military-duty-adminstration-preview .military-duty-preview .dt-buttons .dt-button:hover{
        background-color: #353535 !important;
        color: #fff !important;
    }/* Select2 bootstrap-5 (global dark-theme only targets bootstrap-4) */
html.dark-theme body.view-military-military-duty-adminstration-preview .military-duty-preview .select2-container--bootstrap-5 .select2-selection{
        background-color: #181818;
        border: 1px solid rgba(255, 255, 255, 0.28);
        color: #e8e8e8;
    }

    html.dark-theme body.view-military-military-duty-adminstration-preview .military-duty-preview .select2-dropdown{
        background-color: #181818;
        border: 1px solid rgba(255, 255, 255, 0.22);
    }

    html.dark-theme body.view-military-military-duty-adminstration-preview .military-duty-preview .select2-search--dropdown .select2-search__field{
        background-color: #181818;
        border: 1px solid rgba(255, 255, 255, 0.28);
        color: #ececec;
    }

    html.dark-theme body.view-military-military-duty-adminstration-preview .military-duty-preview .select2-container--bootstrap-5 .select2-selection--multiple .select2-selection__choice{
        color: #dee1e5;
        border: 1px solid rgba(255, 255, 255, 0.35);
        background: #171717;
    }

    html.dark-theme body.view-military-military-duty-adminstration-preview .military-duty-preview .select2-container--bootstrap-5 .select2-selection--multiple .select2-selection__rendered .select2-search__field{
        color: #e6e1e1;
    }

    html.dark-theme body.view-military-military-duty-adminstration-preview .military-duty-preview .select2-container--bootstrap-5 .select2-dropdown .select2-results__option--highlighted.select2-results__option--selectable{
        background-color: rgba(13, 110, 253, 0.35);
        color: #fff;
    }

/* view-military-online-payment-payment-history */
/* source: military/online_payment/payment_history.php */
/* Cairo should apply to receipt preview only (not whole page) */
body.view-military-online-payment-payment-history #receiptModalBody, body.view-military-online-payment-payment-history #receiptModalBody *{
        font-family: 'Cairo', sans-serif;
    }

    body.view-military-online-payment-payment-history .mdp-kv td{
        padding: 10px 12px;
        border: 1px solid #111827;
        vertical-align: top;
    }
    body.view-military-online-payment-payment-history .mdp-kv .k{
        width: 28%;
        background: #f8fafc;
        font-weight: 700;
        color: #111827;
        white-space: nowrap;
    }
    body.view-military-online-payment-payment-history .mdp-kv .v{
        width: 72%;
        color: #0f172a;
        word-break: break-word;
    }
    body.view-military-online-payment-payment-history .mdp-receipt-paper{
        background: #fff;
        border: 1px solid #e5e7eb;
        border-radius: 14px;
        padding: 18px;
    }
    body.view-military-online-payment-payment-history .mdp-receipt-header{
        border-bottom: 1px solid #111827;
        padding-bottom: 10px;
        margin-bottom: 14px;
        text-align: center;
    }
    body.view-military-online-payment-payment-history .mdp-receipt-title{
        font-weight: 800;
        font-size: 1.125rem;
        color: #0f172a;
        line-height: 1.4;
    }
    body.view-military-online-payment-payment-history .mdp-receipt-sub{
        color: #475569;
        font-size: 0.8125rem;
        line-height: 1.5;
    }
    body.view-military-online-payment-payment-history .mdp-stamp{
        border: 2px dashed #111827;
        padding: 8px 10px;
        border-radius: 12px;
        display: inline-block;
        background: #fff;
    }
    body.view-military-online-payment-payment-history .mdp-fineprint{
        border-top: 1px dashed #111827;
        margin-top: 14px;
        padding-top: 10px;
        font-size: 0.75rem;
        color: #334155;
        text-align: center;
        line-height: 1.6;
    }
    body.view-military-online-payment-payment-history .mdp-table th{
        background: #f8fafc;
        font-weight: 800;
    }

    /* Receipt responsiveness (mobile) */
    @media (max-width: 576px) {
        body.view-military-online-payment-payment-history .mdp-receipt-paper{
            padding: 14px;
        }

        body.view-military-online-payment-payment-history .mdp-receipt-title{
            font-size: 1rem;
        }

        body.view-military-online-payment-payment-history .mdp-receipt-sub{
            font-size: 0.75rem;
        }

        body.view-military-online-payment-payment-history .mdp-kv td{
            display: block;
            width: 100% !important;
            border-left: 1px solid #111827;
            border-right: 1px solid #111827;
        }

        body.view-military-online-payment-payment-history .mdp-kv .k{
            border-bottom: 0;
            background: #f8fafc;
        }

        body.view-military-online-payment-payment-history .mdp-kv .v{
            border-top: 0;
        }

        body.view-military-online-payment-payment-history .mdp-stamp{
            width: 100%;
            text-align: center;
        }
    }

/* view-military-student-affairs-index */
/* source: military/student_affairs/index.php */
@media (max-width: 768px) {
        body.view-military-student-affairs-index .page-content{
            padding: 0.75rem !important;
        }

        body.view-military-student-affairs-index .card{
            margin-bottom: 1rem;
        }

        body.view-military-student-affairs-index .card-body{
            padding: 1rem !important;
        }

        body.view-military-student-affairs-index .card-header{
            padding: 0.875rem 1rem !important;
        }

        body.view-military-student-affairs-index .badge{
            padding: 0.4rem 0.7rem !important;
            font-size: 0.8rem !important;
        }
    }

    @media (max-width: 576px) {
        body.view-military-student-affairs-index .page-content{
            padding: 0.5rem !important;
        }

        body.view-military-student-affairs-index .card-body{
            padding: 0.875rem !important;
        }

        body.view-military-student-affairs-index .card-header{
            padding: 0.75rem 0.875rem !important;
        }
    }

/* view-military-student-affairs-preview */
/* source: military/student_affairs/preview.php */
@media (max-width: 768px) {
        body.view-military-student-affairs-preview .student-affairs-preview .page-content{
            padding: 0.75rem !important;
        }

        body.view-military-student-affairs-preview .student-affairs-preview .card-body{
            padding: 1rem !important;
        }

        body.view-military-student-affairs-preview .student-affairs-preview .card-header{
            padding: 0.875rem 1rem !important;
        }
    }

    body.view-military-student-affairs-preview .student-affairs-preview .stat-card{
        position: relative;
        border: none;
        border-radius: 12px;
        transition: transform 0.15s ease, box-shadow 0.15s ease;
        overflow: hidden;
    }

    body.view-military-student-affairs-preview .student-affairs-preview .stat-card.stat-card-accent::before{
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        inset-inline-start: 0;
        width: 4px;
        background-color: var(--stat-accent, var(--bs-primary));
    }

    body.view-military-student-affairs-preview .student-affairs-preview .stat-card-accent--primary{ --stat-accent: var(--bs-primary); }
    body.view-military-student-affairs-preview .student-affairs-preview .stat-card-accent--info{ --stat-accent: var(--bs-info); }
    body.view-military-student-affairs-preview .student-affairs-preview .stat-card-accent--danger{ --stat-accent: var(--bs-danger); }
    body.view-military-student-affairs-preview .student-affairs-preview .stat-card-accent--success{ --stat-accent: var(--bs-success); }

    body.view-military-student-affairs-preview .student-affairs-preview .stat-card:hover{
        transform: translateY(-2px);
        box-shadow: 0 0.35rem 1rem rgba(0, 0, 0, 0.08) !important;
    }

    body.view-military-student-affairs-preview .student-affairs-preview .stat-card .stat-value{
        font-size: 1.75rem;
        font-weight: 700;
        line-height: 1.2;
    }

    body.view-military-student-affairs-preview .student-affairs-preview .stat-card .stat-label{
        font-size: 0.8rem;
        font-weight: 500;
    }

    body.view-military-student-affairs-preview .student-affairs-preview .stat-card .stat-label i{
        vertical-align: middle;
    }

    body.view-military-student-affairs-preview .student-affairs-preview .filter-select{
        min-width: min(180px, 100%);
    }

    body.view-military-student-affairs-preview .student-affairs-preview .select2-container--bootstrap-5 .select2-selection--multiple{
        min-height: 38px;
    }

    body.view-military-student-affairs-preview .student-affairs-preview .table-total-row td{
        background-color: rgba(0, 0, 0, 0.04);
    }

    html.dark-theme body.view-military-student-affairs-preview .student-affairs-preview .stat-card:hover{
        box-shadow: 0 0.35rem 1.25rem rgba(0, 0, 0, 0.45) !important;
    }

    html.dark-theme body.view-military-student-affairs-preview .student-affairs-preview .text-muted{
        color: rgba(255, 255, 255, 0.55) !important;
    }

    html.dark-theme body.view-military-student-affairs-preview .student-affairs-preview .form-label{
        color: rgba(255, 255, 255, 0.82);
    }

    html.dark-theme body.view-military-student-affairs-preview .student-affairs-preview .table-total-row td{
        background-color: rgba(255, 255, 255, 0.08);
        color: #f2f2f2;
    }

    html.dark-theme body.view-military-student-affairs-preview .student-affairs-preview #registrationsTable thead.table-light, html.dark-theme body.view-military-student-affairs-preview .student-affairs-preview .faculty-stats-table thead.table-light{
        --bs-table-bg: rgba(255, 255, 255, 0.08);
        --bs-table-color: #ececec;
        --bs-table-border-color: rgba(255, 255, 255, 0.12);
    }

    html.dark-theme body.view-military-student-affairs-preview .student-affairs-preview .dataTables_wrapper .dataTables_length, html.dark-theme body.view-military-student-affairs-preview .student-affairs-preview .dataTables_wrapper .dataTables_info, html.dark-theme body.view-military-student-affairs-preview .student-affairs-preview .dataTables_wrapper .dataTables_filter label{
        color: rgba(255, 255, 255, 0.78);
    }

    html.dark-theme body.view-military-student-affairs-preview .student-affairs-preview .dataTables_wrapper .dataTables_paginate .page-link{
        color: #fff;
    }

    html.dark-theme body.view-military-student-affairs-preview .student-affairs-preview .dt-buttons .dt-button{
        background-color: #2a2a2a !important;
        color: #ececec !important;
        border: 1px solid rgba(255, 255, 255, 0.18) !important;
    }

    html.dark-theme body.view-military-student-affairs-preview .student-affairs-preview .dt-buttons .dt-button:hover{
        background-color: #353535 !important;
        color: #fff !important;
    }

    html.dark-theme body.view-military-student-affairs-preview .student-affairs-preview .select2-container--bootstrap-5 .select2-selection{
        background-color: #181818;
        border: 1px solid rgba(255, 255, 255, 0.28);
        color: #e8e8e8;
    }

    html.dark-theme body.view-military-student-affairs-preview .student-affairs-preview .select2-dropdown{
        background-color: #181818;
        border: 1px solid rgba(255, 255, 255, 0.22);
    }

    html.dark-theme body.view-military-student-affairs-preview .student-affairs-preview .select2-search--dropdown .select2-search__field{
        background-color: #181818;
        border: 1px solid rgba(255, 255, 255, 0.28);
        color: #ececec;
    }

    html.dark-theme body.view-military-student-affairs-preview .student-affairs-preview .select2-container--bootstrap-5 .select2-selection--multiple .select2-selection__choice{
        color: #dee1e5;
        border: 1px solid rgba(255, 255, 255, 0.35);
        background: #171717;
    }

    html.dark-theme body.view-military-student-affairs-preview .student-affairs-preview .select2-container--bootstrap-5 .select2-selection--multiple .select2-selection__rendered .select2-search__field{
        color: #e6e1e1;
    }

    html.dark-theme body.view-military-student-affairs-preview .student-affairs-preview .select2-container--bootstrap-5 .select2-dropdown .select2-results__option--highlighted.select2-results__option--selectable{
        background-color: rgba(13, 110, 253, 0.35);
        color: #fff;
    }

/* view-military-student-index */
/* source: military/student/index.php */
@media (max-width: 768px) {
        body.view-military-student-index .page-content{
            padding: 0.75rem !important;
        }

        body.view-military-student-index .card{
            margin-bottom: 1rem;
        }

        body.view-military-student-index .card-body{
            padding: 1rem !important;
        }

        body.view-military-student-index .card-header{
            padding: 0.875rem 1rem !important;
        }

        body.view-military-student-index .badge{
            padding: 0.4rem 0.7rem !important;
            font-size: 0.8rem !important;
        }
    }

    @media (max-width: 576px) {
        body.view-military-student-index .page-content{
            padding: 0.5rem !important;
        }

        body.view-military-student-index .card-body{
            padding: 0.875rem !important;
        }

        body.view-military-student-index .card-header{
            padding: 0.75rem 0.875rem !important;
        }
    }

/* view-nomination-phases-2025-index */
/* source: nomination_phases_2025/index.php */
body.view-nomination-phases-2025-index .phase-card{
    transition: transform 0.2s;
}

body.view-nomination-phases-2025-index .phase-card:hover{
    transform: translateY(-2px);
}

body.view-nomination-phases-2025-index .stats-card{
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
}

body.view-nomination-phases-2025-index .stats-card.success{
    background: linear-gradient(135deg, #11998e 0%, #38ef7d 100%);
}

body.view-nomination-phases-2025-index .stats-card.warning{
    background: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);
}

body.view-nomination-phases-2025-index .stats-card.info{
    background: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%);
}

body.view-nomination-phases-2025-index .phase-status{
    font-size: 0.8rem;
    padding: 0.25rem 0.5rem;
    border-radius: 0.25rem;
}

body.view-nomination-phases-2025-index .phase-status.active{
    background-color: #d4edda;
    color: #155724;
}

body.view-nomination-phases-2025-index .phase-status.inactive{
    background-color: #f8d7da;
    color: #721c24;
}

/* view-nomination-phases-2025-students */
/* source: nomination_phases_2025/students.php */
body.view-nomination-phases-2025-students .student-row{
    transition: background-color 0.2s;
}

body.view-nomination-phases-2025-students .student-row:hover{
    background-color: #f8f9fa;
}

body.view-nomination-phases-2025-students .phase-badge{
    font-size: 0.8rem;
    padding: 0.25rem 0.5rem;
}

body.view-nomination-phases-2025-students .bulk-actions{
    background-color: #f8f9fa;
    border: 1px solid #dee2e6;
    border-radius: 0.375rem;
    padding: 1rem;
    margin-bottom: 1rem;
}

body.view-nomination-phases-2025-students .selected-count{
    font-weight: bold;
    color: #0d6efd;
}

/* view-president-office-archive-index */
/* source: president_office/archive/partials/filter_styles.php */
body.view-president-office-archive-index .archive-filter-table-stack{
        --archive-filter-accent: #0d6efd;
        --archive-filter-muted: #64748b;
        --archive-filter-border: #e2e8f0;
        --archive-filter-surface: #f8fafc;
    }

    body.view-president-office-archive-index .archive-filter-table-stack.is-filter-loading .archive-table-panel{
        opacity: 0.55;
        pointer-events: none;
    }

    body.view-president-office-archive-index .archive-filter-table-stack.is-filter-loading .archive-filter-loading-bar{
        opacity: 1;
    }

    body.view-president-office-archive-index .archive-filter-loading-bar{
        height: 3px;
        background: linear-gradient(
            90deg,
            transparent 0%,
            var(--archive-filter-accent) 50%,
            transparent 100%
        );
        background-size: 200% 100%;
        animation: view-president-office-archive-index-archiveFilterShimmer 1.1s ease-in-out infinite;
        opacity: 0;
        transition: opacity 0.2s ease;
    }

    @keyframes view-president-office-archive-index-archiveFilterShimmer {
        0% { background-position: 200% 0; }
        100% { background-position: -200% 0; }
    }

    body.view-president-office-archive-index .archive-filter-panel-header{
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        gap: 1rem;
        flex-wrap: wrap;
        padding: 1.25rem 1.35rem 1rem;
        background: linear-gradient(135deg, #f8fbff 0%, #ffffff 55%, #f8fafc 100%);
        border-bottom: 1px solid var(--archive-filter-border);
    }

    body.view-president-office-archive-index .archive-filter-panel-title-wrap{
        display: flex;
        align-items: flex-start;
        gap: 0.85rem;
    }

    body.view-president-office-archive-index .archive-filter-panel-icon{
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 2.75rem;
        height: 2.75rem;
        border-radius: 0.85rem;
        background: linear-gradient(135deg, #0d6efd 0%, #4f8cff 100%);
        color: #fff;
        font-size: 1.35rem;
        box-shadow: 0 8px 18px rgba(13, 110, 253, 0.22);
        flex-shrink: 0;
    }

    body.view-president-office-archive-index .archive-filter-panel-title{
        margin: 0;
        font-size: 1.05rem;
        font-weight: 700;
        color: #0f172a;
    }

    body.view-president-office-archive-index .archive-filter-panel-subtitle{
        margin: 0.2rem 0 0;
        color: var(--archive-filter-muted);
        font-size: 0.8125rem;
        line-height: 1.5;
    }

    body.view-president-office-archive-index .archive-filter-panel-actions{
        display: flex;
        align-items: center;
        gap: 0.5rem;
        flex-wrap: wrap;
    }

    body.view-president-office-archive-index .archive-filter-active-badge{
        display: inline-flex;
        align-items: center;
        gap: 0.35rem;
        padding: 0.35rem 0.75rem;
        border-radius: 999px;
        background: rgba(13, 110, 253, 0.08);
        border: 1px solid rgba(13, 110, 253, 0.14);
        color: #0d6efd;
        font-size: 0.75rem;
        font-weight: 700;
    }

    body.view-president-office-archive-index .archive-filter-clear-btn{
        display: inline-flex;
        align-items: center;
        gap: 0.35rem;
        padding: 0.45rem 0.9rem;
        border-radius: 999px;
        border: 1px solid var(--archive-filter-border);
        background: #fff;
        color: #475569;
        font-size: 0.8125rem;
        font-weight: 600;
        text-decoration: none;
        transition: all 0.18s ease;
    }

    body.view-president-office-archive-index .archive-filter-clear-btn:hover{
        color: #dc3545;
        border-color: rgba(220, 53, 69, 0.25);
        background: rgba(220, 53, 69, 0.04);
    }

    body.view-president-office-archive-index .archive-filter-body{
        padding: 1.15rem 1.35rem 1.35rem;
    }

    body.view-president-office-archive-index .archive-filter-search-row{
        display: flex;
        align-items: center;
        gap: 0.85rem;
        margin-bottom: 1rem;
    }

    body.view-president-office-archive-index .archive-filter-search-field{
        position: relative;
        flex: 1 1 18rem;
        min-width: 0;
    }

    body.view-president-office-archive-index .archive-filter-search-icon{
        position: absolute;
        top: 50%;
        inset-inline-start: 1rem;
        transform: translateY(-50%);
        color: #94a3b8;
        font-size: 1.15rem;
        pointer-events: none;
    }

    body.view-president-office-archive-index .archive-filter-search-input{
        min-height: 2.75rem;
        padding-inline-start: 2.65rem;
        padding-inline-end: 1rem;
        border-radius: 0.75rem;
        border: 1px solid var(--archive-filter-border);
        background: #fff;
        font-size: 0.875rem;
        box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
        transition: border-color 0.18s ease, box-shadow 0.18s ease;
    }

    body.view-president-office-archive-index .archive-filter-search-input:focus{
        border-color: rgba(13, 110, 253, 0.45);
        box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.12);
    }

    body.view-president-office-archive-index .archive-filter-search-hint{
        display: inline-flex;
        align-items: center;
        gap: 0.35rem;
        flex: 0 0 auto;
        max-width: 11.5rem;
        padding: 0.55rem 0.75rem;
        border-radius: 0.65rem;
        background: #f8fafc;
        border: 1px solid var(--archive-filter-border);
        color: var(--archive-filter-muted);
        font-size: 0.72rem;
        line-height: 1.35;
        white-space: nowrap;
    }

    body.view-president-office-archive-index .archive-filter-search-hint.is-warning{
        color: #b45309;
        background: #fffbeb;
        border-color: #fcd34d;
    }

    body.view-president-office-archive-index .archive-filter-section{
        border: 1px solid var(--archive-filter-border);
        border-radius: 0.95rem;
        background: var(--archive-filter-surface);
        padding: 1rem;
        margin-bottom: 0.85rem;
    }

    body.view-president-office-archive-index .archive-filter-section-title{
        display: flex;
        align-items: center;
        gap: 0.45rem;
        margin-bottom: 0.85rem;
        color: #334155;
        font-size: 0.8125rem;
        font-weight: 700;
    }

    body.view-president-office-archive-index .archive-filter-section-title i{
        color: var(--archive-filter-accent);
        font-size: 1rem;
    }

    body.view-president-office-archive-index .archive-filter-field label{
        display: flex;
        align-items: center;
        gap: 0.35rem;
        margin-bottom: 0.4rem;
        color: #475569;
        font-size: 0.78rem;
        font-weight: 700;
    }

    body.view-president-office-archive-index .archive-filter-field label i{
        color: var(--archive-filter-accent);
        font-size: 0.95rem;
    }

    body.view-president-office-archive-index .archive-filter-field .form-control, body.view-president-office-archive-index .archive-filter-field .form-select{
        min-height: 2.65rem;
        border-radius: 0.75rem;
        border-color: #dbe3ee;
        background: #fff;
        font-size: 0.875rem;
        transition: border-color 0.18s ease, box-shadow 0.18s ease, background-color 0.18s ease;
    }

    body.view-president-office-archive-index .archive-filter-field .form-control:focus, body.view-president-office-archive-index .archive-filter-field .form-select:focus{
        border-color: rgba(13, 110, 253, 0.45);
        box-shadow: 0 0 0 0.18rem rgba(13, 110, 253, 0.1);
    }

    body.view-president-office-archive-index .archive-filter-field.has-value .form-control, body.view-president-office-archive-index .archive-filter-field.has-value .form-select{
        border-color: rgba(13, 110, 253, 0.35);
        background: #f8fbff;
    }

    body.view-president-office-archive-index .archive-filter-advanced-toggle{
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 0.75rem;
        padding: 0.85rem 1rem;
        border: 1px dashed #cbd5e1;
        border-radius: 0.9rem;
        background: #fff;
        color: #334155;
        font-size: 0.875rem;
        font-weight: 700;
        cursor: pointer;
        transition: all 0.18s ease;
    }

    body.view-president-office-archive-index .archive-filter-advanced-toggle:hover{
        border-color: rgba(13, 110, 253, 0.35);
        background: #f8fbff;
        color: #0d6efd;
    }

    body.view-president-office-archive-index .archive-filter-advanced-toggle[aria-expanded="true"]{
        border-style: solid;
        border-color: rgba(13, 110, 253, 0.22);
        background: #f8fbff;
    }

    body.view-president-office-archive-index .archive-filter-advanced-toggle .toggle-meta{
        display: inline-flex;
        align-items: center;
        gap: 0.45rem;
        color: #64748b;
        font-size: 0.75rem;
        font-weight: 600;
    }

    body.view-president-office-archive-index .archive-filter-advanced-toggle .toggle-chevron{
        transition: transform 0.2s ease;
    }

    body.view-president-office-archive-index .archive-filter-advanced-toggle[aria-expanded="true"] .toggle-chevron{
        transform: rotate(180deg);
    }

    body.view-president-office-archive-index .archive-filter-advanced-body{
        margin-top: 0.85rem;
    }

    body.view-president-office-archive-index .archive-filter-date-range{
        display: grid;
        grid-template-columns: 1fr auto 1fr;
        gap: 0.65rem;
        align-items: end;
    }

    body.view-president-office-archive-index .archive-filter-date-separator{
        display: flex;
        align-items: center;
        justify-content: center;
        width: 2rem;
        height: 2.65rem;
        border-radius: 999px;
        background: #fff;
        border: 1px solid var(--archive-filter-border);
        color: #94a3b8;
        font-size: 1rem;
    }

    body.view-president-office-archive-index .archive-filter-table-stack .archive-active-filters-wrap{
        background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
        border: 1px solid #dbeafe;
        border-radius: 0.85rem;
        padding: 0.85rem 1rem;
        margin-bottom: 1rem;
    }

    body.view-president-office-archive-index .archive-filter-table-stack .archive-active-filters-title{
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        gap: 0.5rem;
        color: #1e293b;
        font-size: 0.8125rem;
        font-weight: 700;
        margin-bottom: 0.65rem;
    }

    body.view-president-office-archive-index .archive-filter-table-stack .archive-active-filters-title-icon{
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 1.65rem;
        height: 1.65rem;
        border-radius: 0.45rem;
        background: rgba(13, 110, 253, 0.12);
        color: #0d6efd;
        font-size: 0.95rem;
    }

    body.view-president-office-archive-index .archive-filter-table-stack .archive-active-filters-count{
        background: #0d6efd !important;
        color: #ffffff !important;
        font-size: 0.68rem;
        font-weight: 700;
        padding: 0.22em 0.5em;
    }

    body.view-president-office-archive-index .archive-filter-table-stack .archive-active-filters-list{
        display: flex;
        flex-wrap: wrap;
        gap: 0.45rem;
        align-items: center;
    }

    body.view-president-office-archive-index .archive-filter-table-stack .archive-filter-pill{
        font-size: 0.78rem;
        font-weight: 600;
        line-height: 1.35;
        max-width: 100%;
        word-break: break-word;
        white-space: normal;
    }

    body.view-president-office-archive-index .archive-filter-chip-label{
        opacity: 0.85;
        font-weight: 500;
        margin-inline-end: 0.2rem;
    }

    body.view-president-office-archive-index .archive-template-chip{
        display: inline-flex;
        align-items: center;
        gap: 0.35rem;
        max-width: 100%;
        padding: 0.25rem 0.65rem;
        font-size: 0.75rem;
        font-weight: 600;
        line-height: 1.35;
        color: #4338ca;
        background: linear-gradient(
            135deg,
            rgba(67, 56, 202, 0.08) 0%,
            rgba(13, 110, 253, 0.06) 100%
        );
        border: 1px solid rgba(67, 56, 202, 0.16);
        border-radius: 999px;
    }

    body.view-president-office-archive-index .archive-template-chip i{
        font-size: 0.95rem;
        flex-shrink: 0;
        opacity: 0.9;
    }

    body.view-president-office-archive-index .archive-template-chip-label{
        color: #64748b;
        font-weight: 500;
        flex-shrink: 0;
    }

    body.view-president-office-archive-index .archive-template-chip-name{
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        max-width: 14rem;
    }

    body.view-president-office-archive-index .archive-filter-pill-template{
        color: #4338ca !important;
        background: linear-gradient(
            135deg,
            rgba(67, 56, 202, 0.12) 0%,
            rgba(13, 110, 253, 0.08) 100%
        ) !important;
        border: 1px solid rgba(67, 56, 202, 0.18) !important;
    }

    @media (max-width: 767.98px) {
        body.view-president-office-archive-index .archive-filter-search-row{
            flex-direction: column;
            align-items: stretch;
        }

        body.view-president-office-archive-index .archive-filter-search-hint{
            max-width: none;
            justify-content: center;
            white-space: normal;
        }

        body.view-president-office-archive-index .archive-filter-date-range{
            grid-template-columns: 1fr;
        }

        body.view-president-office-archive-index .archive-filter-date-separator{
            width: 100%;
            height: auto;
            padding: 0.35rem 0;
            border: none;
            background: transparent;
        }

        body.view-president-office-archive-index .archive-filter-advanced-toggle .toggle-meta span:first-child{
            display: none;
        }
    }

/* view-president-office-archive-show */
/* source: president_office/archive/show.php */
body.view-president-office-archive-show .archive-modal-header .archive-modal-icon{
            flex-shrink: 0;
        }

        body.view-president-office-archive-show .archive-modal-body{
            min-height: 72vh;
        }

        body.view-president-office-archive-show .archive-preview-toolbar-host{
            position: sticky;
            top: 0;
            z-index: 25;
            background: var(--bs-body-bg, #fff);
            box-shadow: 0 1px 0 rgba(0, 0, 0, 0.06);
        }

        body.view-president-office-archive-show .archive-preview-toolbar-inner{
            padding: 0.75rem 1rem;
        }

        body.view-president-office-archive-show .archive-html-preview-card{
            background: #fff;
            border-radius: 0.5rem;
            border: 1px solid rgba(0, 0, 0, 0.08);
            box-shadow: 0 0.125rem 0.5rem rgba(0, 0, 0, 0.06);
            max-height: calc(65vh + 2rem);
            display: flex;
            flex-direction: column;
            overflow: hidden;
        }

        body.view-president-office-archive-show .archive-preview-search-scope{
            direction: rtl;
            line-height: 2;
            flex: 1 1 auto;
            min-height: 0;
            max-height: 65vh;
            overflow: auto;
            padding: 1rem 1.25rem;
            background: #fafbfc;
        }

        body.view-president-office-archive-show .archive-preview-scope--excel .table-responsive{
            max-height: none;
        }

        body.view-president-office-archive-show .archive-preview-scope--excel table thead th{
            position: sticky;
            top: 0;
            z-index: 2;
            background: #f8f9fa !important;
            box-shadow: 0 1px 0 rgba(0, 0, 0, 0.08);
        }

        body.view-president-office-archive-show mark.archive-preview-mark{
            background-color: rgba(255, 220, 100, 0.85);
            color: inherit;
            padding: 0.05em 0.15em;
            border-radius: 0.15rem;
        }

        body.view-president-office-archive-show mark.archive-preview-mark-current{
            background-color: rgba(13, 110, 253, 0.35);
            outline: 2px solid rgba(13, 110, 253, 0.65);
            outline-offset: 1px;
        }

        body.view-president-office-archive-show #archiveViewFileIframeWrap iframe{
            background: #fff;
        }

/* view-president-office-templates-show */
/* source: president_office/templates/show.php */
body.view-president-office-templates-show .template-doc-preview-card{
                        background: #fff;
                        border-radius: 0.5rem;
                        border: 1px solid rgba(0, 0, 0, 0.08);
                        box-shadow: 0 0.125rem 0.5rem rgba(0, 0, 0, 0.06);
                        overflow: hidden;
                    }

                    body.view-president-office-templates-show .template-doc-preview-scope{
                        direction: rtl;
                        line-height: 2;
                        max-height: 70vh;
                        overflow: auto;
                        padding: 1rem 1.25rem;
                        background: #fafbfc;
                    }

/* view-profile-index */
/* source: profile/index.php */
body.view-profile-index .requirement{
        margin-bottom: 0.5rem;
        color: #6c757d;
        font-size: 0.9rem;
    }

    body.view-profile-index .requirement.valid{
        color: #198754;
    }

    body.view-profile-index .requirement.valid i{
        color: #198754;
    }

    body.view-profile-index .requirement i{
        font-size: 1.1rem;
        vertical-align: middle;
    }

    body.view-profile-index #passwordStrength, body.view-profile-index #passwordMatch{
        font-size: 0.875rem;
        font-weight: 500;
    }

    body.view-profile-index .modal-body .input-group .btn{
        z-index: 0;
    }

    body.view-profile-index .profile-avatar-wrapper{
        position: relative;
        display: inline-block;
    }

    body.view-profile-index .profile-avatar-wrapper img{
        border-radius: 50%;
        width: 150px;
        height: 150px;
        object-fit: cover;
    }

    body.view-profile-index .camera-btn{
        position: absolute;
        bottom: 0;
        right: 0;
        background-color: rgba(0, 0, 0, 0.6);
        border: none;
        border-radius: 50%;
        padding: 6px 8px;
        color: #fff;
    }

        body.view-profile-index .virtual-id-dialog{
            max-width: 380px;
            margin-left: auto;
            margin-right: auto;
        }

        body.view-profile-index .virtual-id-card{
            position: relative;
            overflow: hidden;
            border-radius: 22px;
            box-shadow: 0 18px 40px rgba(12, 76, 160, 0.35);
            background: linear-gradient(165deg, #083a7a 0%, #0c4ca0 45%, #1a6fd4 100%);
            color: #fff;
            min-height: 640px;
            isolation: isolate;
        }

        body.view-profile-index .virtual-id-inner{
            position: relative;
            z-index: 2;
            padding: 1.25rem 1.25rem 1.5rem;
            text-align: center;
        }

        body.view-profile-index .virtual-id-header{
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 0.75rem;
            margin-bottom: 0.85rem;
        }

        body.view-profile-index .virtual-id-logo{
            width: 46px;
            height: 46px;
            object-fit: contain;
            background: rgba(255, 255, 255, 0.95);
            border-radius: 10px;
            padding: 4px;
        }

        body.view-profile-index .virtual-id-university{
            font-size: 0.95rem;
            font-weight: 700;
            line-height: 1.3;
        }

        body.view-profile-index .virtual-id-subtitle{
            font-size: 0.7rem;
            opacity: 0.85;
            letter-spacing: 0.02em;
        }

        body.view-profile-index .virtual-id-badge{
            display: inline-block;
            background: rgba(255, 255, 255, 0.16);
            border: 1px solid rgba(255, 255, 255, 0.3);
            border-radius: 999px;
            padding: 0.25rem 0.85rem;
            font-size: 0.78rem;
        }

        body.view-profile-index .virtual-id-photo-wrap{
            position: relative;
            width: 126px;
            height: 126px;
            margin: 0.9rem auto;
            border-radius: 50%;
            padding: 4px;
            background: linear-gradient(135deg, #ffffff, #7eb6f0);
            box-shadow: 0 8px 18px rgba(8, 58, 122, 0.35);
            overflow: hidden;
        }

        body.view-profile-index .virtual-id-photo{
            width: 100%;
            height: 100%;
            object-fit: cover;
            border-radius: 50%;
            border: 3px solid #0c4ca0;
        }

        body.view-profile-index .virtual-id-photo-watermark{
            position: absolute;
            inset: 0;
            z-index: 2;
            pointer-events: none;
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 50%;
            background: rgba(12, 76, 160, 0.18);
            color: rgba(255, 255, 255, 0.72);
            font-size: 0.78rem;
            font-weight: 800;
            letter-spacing: 0.04em;
            text-shadow: 0 1px 2px rgba(8, 58, 122, 0.55);
            transform: rotate(-24deg);
            user-select: none;
            -webkit-user-select: none;
        }

        body.view-profile-index .virtual-id-photo-watermark span{
            max-width: 90%;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
        }

        body.view-profile-index .virtual-id-name{
            font-size: 1.2rem;
            font-weight: 700;
            margin-bottom: 0.15rem;
        }

        body.view-profile-index .virtual-id-name-en{
            font-size: 0.85rem;
            opacity: 0.85;
            margin-bottom: 0.9rem;
            min-height: 1.1em;
        }

        body.view-profile-index .virtual-id-meta{
            background: rgba(255, 255, 255, 0.12);
            border: 1px solid rgba(255, 255, 255, 0.22);
            border-radius: 14px;
            padding: 0.75rem 0.9rem;
            margin-bottom: 1rem;
            text-align: start;
        }

        body.view-profile-index .virtual-id-row{
            display: flex;
            justify-content: space-between;
            gap: 0.75rem;
            padding: 0.4rem 0;
            border-bottom: 1px solid rgba(255, 255, 255, 0.14);
            font-size: 0.82rem;
        }

        body.view-profile-index .virtual-id-row:last-child{
            border-bottom: 0;
        }

        body.view-profile-index .virtual-id-row span{
            opacity: 0.85;
            white-space: nowrap;
        }

        body.view-profile-index .virtual-id-row strong{
            font-weight: 600;
            text-align: end;
        }

        body.view-profile-index .virtual-id-qr-wrap{
            background: #fff;
            color: #0f172a;
            border-radius: 16px;
            padding: 0.85rem;
            display: inline-block;
        }

        body.view-profile-index .virtual-id-qr-frame{
            position: relative;
            width: 168px;
            height: 168px;
            margin: 0 auto 0.35rem;
        }

        body.view-profile-index #virtualStudentQr{
            width: 168px;
            height: 168px;
        }

        body.view-profile-index #virtualStudentQr img, body.view-profile-index #virtualStudentQr canvas{
            width: 168px !important;
            height: 168px !important;
        }

        body.view-profile-index .virtual-id-qr-label{
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            z-index: 2;
            min-width: 52px;
            max-width: 78px;
            padding: 4px 6px;
            border-radius: 8px;
            background: #ffffff;
            border: 1px solid rgba(12, 76, 160, 0.25);
            box-shadow: 0 2px 6px rgba(8, 58, 122, 0.18);
            color: #0c4ca0;
            font-size: 0.72rem;
            font-weight: 800;
            line-height: 1.1;
            text-align: center;
            pointer-events: none;
            user-select: none;
            -webkit-user-select: none;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
        }

        body.view-profile-index .virtual-id-qr-wrap small{
            display: block;
            font-size: 0.72rem;
            color: #475569;
        }

        body.view-profile-index .virtual-id-footer{
            margin-top: 0.9rem;
            font-size: 0.72rem;
            opacity: 0.85;
            letter-spacing: 0.04em;
        }

        body.view-profile-index .virtual-id-watermark{
            position: absolute;
            inset: 0;
            z-index: 1;
            pointer-events: none;
            overflow: hidden;
            user-select: none;
            -webkit-user-select: none;
        }

        body.view-profile-index .virtual-id-card::after{
            content: "";
            position: absolute;
            inset: 0;
            z-index: 3;
            pointer-events: none;
            background-image: repeating-linear-gradient(-28deg,
                    rgba(255, 255, 255, 0.05) 0,
                    rgba(255, 255, 255, 0.05) 18px,
                    transparent 18px,
                    transparent 42px);
        }

        body.view-profile-index .virtual-id-watermark-layer{
            position: absolute;
            inset: -40%;
            display: flex;
            flex-wrap: wrap;
            gap: 1.4rem 2rem;
            width: 180%;
            transform: rotate(-28deg);
            opacity: 0.16;
            color: #fff;
            font-size: 0.78rem;
            font-weight: 700;
            letter-spacing: 0.08em;
            white-space: nowrap;
        }

        @media (max-width: 420px) {
            body.view-profile-index .virtual-id-dialog{
                max-width: 94vw;
            }

            body.view-profile-index .virtual-id-card{
                min-height: auto;
            }
        }

/* view-purchases-needs-form */
/* source: purchases/needs/form.php */
body.view-purchases-needs-form .select2-container{
    width: 100% !important;
}

/* view-registration-reports-academic-analysis */
/* source: registration_reports/academic_analysis.php */
body.view-registration-reports-academic-analysis{
            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            min-height: 100vh;
            direction: rtl;
        }
        
        body.view-registration-reports-academic-analysis .main-container{
            background: rgba(255, 255, 255, 0.95);
            border-radius: 20px;
            box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
            margin: 20px;
            overflow: hidden;
        }
        
        body.view-registration-reports-academic-analysis .header{
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            color: white;
            padding: 30px;
            text-align: center;
        }
        
        body.view-registration-reports-academic-analysis .header h1{
            margin: 0;
            font-size: 2.5em;
            font-weight: 300;
        }
        
        body.view-registration-reports-academic-analysis .content{
            padding: 30px;
        }
        
        body.view-registration-reports-academic-analysis .chart-container{
            background: white;
            border-radius: 15px;
            padding: 25px;
            margin-bottom: 20px;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
        }
        
        body.view-registration-reports-academic-analysis .chart-container.small-chart{
            max-height: 400px;
            min-height: 350px;
        }
        
        body.view-registration-reports-academic-analysis .pie-chart-container{
            max-height: 450px;
            min-height: 400px;
            display: flex;
            flex-direction: column;
        }
        
        body.view-registration-reports-academic-analysis .pie-chart-container canvas{
            max-height: 300px;
            min-height: 250px;
        }
        
        body.view-registration-reports-academic-analysis .chart-title{
            color: #333;
            margin-bottom: 20px;
            font-size: 1.3em;
            font-weight: bold;
            text-align: center;
        }
        
        body.view-registration-reports-academic-analysis .table-container{
            background: white;
            border-radius: 15px;
            padding: 25px;
            margin-bottom: 20px;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
        }
        
        body.view-registration-reports-academic-analysis .table-title{
            color: #333;
            margin-bottom: 20px;
            font-size: 1.3em;
            font-weight: bold;
            text-align: center;
        }
        
        body.view-registration-reports-academic-analysis .custom-table{
            width: 100%;
            border-collapse: collapse;
            margin-top: 20px;
        }
        
        body.view-registration-reports-academic-analysis .custom-table th, body.view-registration-reports-academic-analysis .custom-table td{
            padding: 12px;
            text-align: center;
            border-bottom: 1px solid #eee;
        }
        
        body.view-registration-reports-academic-analysis .custom-table th{
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            color: white;
            font-weight: bold;
        }
        
        body.view-registration-reports-academic-analysis .custom-table tr:hover{
            background-color: #f8f9fa;
        }
        
        body.view-registration-reports-academic-analysis .btn-back{
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            color: white;
            padding: 12px 25px;
            border-radius: 25px;
            text-decoration: none;
            display: inline-block;
            margin-bottom: 20px;
            transition: all 0.3s ease;
        }
        
        body.view-registration-reports-academic-analysis .btn-back:hover{
            transform: translateY(-2px);
            box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
            color: white;
        }
        
        body.view-registration-reports-academic-analysis .stats-summary{
            background: linear-gradient(135deg, #a8edea 0%, #fed6e3 100%);
            border-radius: 15px;
            padding: 25px;
            margin-bottom: 30px;
            text-align: center;
        }
        
        body.view-registration-reports-academic-analysis .stats-summary h3{
            color: #333;
            margin-bottom: 15px;
        }
        
        body.view-registration-reports-academic-analysis .stats-summary p{
            color: #666;
            font-size: 1.1em;
            margin: 5px 0;
        }
        
        body.view-registration-reports-academic-analysis .academic-stats{
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
            gap: 15px;
            margin-bottom: 30px;
        }
        
        body.view-registration-reports-academic-analysis .academic-card{
            background: white;
            border-radius: 10px;
            padding: 20px;
            text-align: center;
            box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
            border-left: 4px solid #667eea;
        }
        
        body.view-registration-reports-academic-analysis .academic-name{
            font-weight: bold;
            color: #333;
            margin-bottom: 10px;
        }
        
        body.view-registration-reports-academic-analysis .academic-count{
            font-size: 1.5em;
            color: #667eea;
            font-weight: bold;
        }
        
        body.view-registration-reports-academic-analysis .academic-percentage{
            color: #666;
            font-size: 0.9em;
        }
        
        body.view-registration-reports-academic-analysis .grade-badge{
            padding: 5px 10px;
            border-radius: 15px;
            font-size: 0.8em;
            font-weight: bold;
        }
        
        body.view-registration-reports-academic-analysis .grade-excellent{
            background: #FF6384;
            color: white;
        }
        
        body.view-registration-reports-academic-analysis .grade-very-good{
            background: #36A2EB;
            color: white;
        }
        
        body.view-registration-reports-academic-analysis .grade-good{
            background: #FFCE56;
            color: white;
        }
        
        body.view-registration-reports-academic-analysis .grade-pass{
            background: #4BC0C0;
            color: white;
        }
        
        @media (max-width: 768px) {
            body.view-registration-reports-academic-analysis .header h1{
                font-size: 2em;
            }
            
            body.view-registration-reports-academic-analysis .custom-table{
                font-size: 0.9em;
            }
            
            body.view-registration-reports-academic-analysis .custom-table th, body.view-registration-reports-academic-analysis .custom-table td{
                padding: 8px;
            }
            
            body.view-registration-reports-academic-analysis .academic-stats{
                grid-template-columns: 1fr;
            }
        }

/* view-registration-reports-college-analysis */
/* source: registration_reports/college_analysis.php */
body.view-registration-reports-college-analysis{
            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            min-height: 100vh;
            direction: rtl;
        }
        
        body.view-registration-reports-college-analysis .main-container{
            background: rgba(255, 255, 255, 0.95);
            border-radius: 20px;
            box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
            margin: 20px;
            overflow: hidden;
        }
        
        body.view-registration-reports-college-analysis .header{
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            color: white;
            padding: 30px;
            text-align: center;
        }
        
        body.view-registration-reports-college-analysis .header h1{
            margin: 0;
            font-size: 2.5em;
            font-weight: 300;
        }
        
        body.view-registration-reports-college-analysis .content{
            padding: 30px;
        }
        
        body.view-registration-reports-college-analysis .chart-container{
            background: white;
            border-radius: 15px;
            padding: 25px;
            margin-bottom: 20px;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
        }
        
        body.view-registration-reports-college-analysis .chart-container.small-chart{
            max-height: 400px;
            min-height: 350px;
        }
        
        body.view-registration-reports-college-analysis .pie-chart-container{
            max-height: 450px;
            min-height: 400px;
            display: flex;
            flex-direction: column;
        }
        
        body.view-registration-reports-college-analysis .pie-chart-container canvas{
            max-height: 300px;
            min-height: 250px;
        }
        
        body.view-registration-reports-college-analysis .chart-title{
            color: #333;
            margin-bottom: 20px;
            font-size: 1.3em;
            font-weight: bold;
            text-align: center;
        }
        
        body.view-registration-reports-college-analysis .table-container{
            background: white;
            border-radius: 15px;
            padding: 25px;
            margin-bottom: 20px;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
        }
        
        body.view-registration-reports-college-analysis .table-title{
            color: #333;
            margin-bottom: 20px;
            font-size: 1.3em;
            font-weight: bold;
            text-align: center;
        }
        
        body.view-registration-reports-college-analysis .custom-table{
            width: 100%;
            border-collapse: collapse;
            margin-top: 20px;
        }
        
        body.view-registration-reports-college-analysis .custom-table th, body.view-registration-reports-college-analysis .custom-table td{
            padding: 12px;
            text-align: center;
            border-bottom: 1px solid #eee;
        }
        
        body.view-registration-reports-college-analysis .custom-table th{
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            color: white;
            font-weight: bold;
        }
        
        body.view-registration-reports-college-analysis .custom-table tr:hover{
            background-color: #f8f9fa;
        }
        
        body.view-registration-reports-college-analysis .btn-back{
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            color: white;
            padding: 12px 25px;
            border-radius: 25px;
            text-decoration: none;
            display: inline-block;
            margin-bottom: 20px;
            transition: all 0.3s ease;
        }
        
        body.view-registration-reports-college-analysis .btn-back:hover{
            transform: translateY(-2px);
            box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
            color: white;
        }
        
        body.view-registration-reports-college-analysis .stats-summary{
            background: linear-gradient(135deg, #a8edea 0%, #fed6e3 100%);
            border-radius: 15px;
            padding: 25px;
            margin-bottom: 30px;
            text-align: center;
        }
        
        body.view-registration-reports-college-analysis .stats-summary h3{
            color: #333;
            margin-bottom: 15px;
        }
        
        body.view-registration-reports-college-analysis .stats-summary p{
            color: #666;
            font-size: 1.1em;
            margin: 5px 0;
        }
        
        @media (max-width: 768px) {
            body.view-registration-reports-college-analysis .header h1{
                font-size: 2em;
            }
            
            body.view-registration-reports-college-analysis .custom-table{
                font-size: 0.9em;
            }
            
            body.view-registration-reports-college-analysis .custom-table th, body.view-registration-reports-college-analysis .custom-table td{
                padding: 8px;
            }
        }

/* view-registration-reports-document-completion-report */
/* source: registration_reports/document_completion_report.php */
body.view-registration-reports-document-completion-report{
            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
            background: #f8f9fa;
            direction: rtl;
        }
        
        body.view-registration-reports-document-completion-report .main-container{
            background: white;
            border-radius: 10px;
            box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
            margin: 20px;
            overflow: hidden;
        }
        
        body.view-registration-reports-document-completion-report .header{
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            color: white;
            padding: 20px;
            text-align: center;
        }
        
        body.view-registration-reports-document-completion-report .header h1{
            margin: 0;
            font-size: 2em;
            font-weight: 300;
        }
        
        body.view-registration-reports-document-completion-report .content{
            padding: 20px;
        }
        
        body.view-registration-reports-document-completion-report .stats-grid{
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
            gap: 15px;
            margin-bottom: 30px;
        }
        
        body.view-registration-reports-document-completion-report .stat-card{
            background: white;
            border-radius: 10px;
            padding: 20px;
            box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1);
            border-left: 4px solid #667eea;
            text-align: center;
        }
        
        body.view-registration-reports-document-completion-report .stat-number{
            font-size: 2em;
            font-weight: bold;
            color: #667eea;
            margin: 10px 0;
        }
        
        body.view-registration-reports-document-completion-report .stat-label{
            color: #666;
            font-size: 1em;
        }
        
        body.view-registration-reports-document-completion-report .table-container{
            background: white;
            border-radius: 10px;
            padding: 20px;
            margin-bottom: 20px;
            box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1);
        }
        
        body.view-registration-reports-document-completion-report .table{
            margin-bottom: 0;
        }
        
        body.view-registration-reports-document-completion-report .table th{
            background: #667eea;
            color: white;
            border: none;
            font-weight: 500;
            text-align: center;
        }
        
        body.view-registration-reports-document-completion-report .table td{
            vertical-align: middle;
            text-align: center;
            border-color: #f0f0f0;
        }
        
        body.view-registration-reports-document-completion-report .percentage-badge{
            padding: 4px 8px;
            border-radius: 12px;
            font-size: 0.8em;
            font-weight: 500;
        }
        
        body.view-registration-reports-document-completion-report .percentage-100-90{ background: #d4edda; color: #155724; }
        body.view-registration-reports-document-completion-report .percentage-90-80{ background: #cce5ff; color: #004085; }
        body.view-registration-reports-document-completion-report .percentage-80-70{ background: #fff3cd; color: #856404; }
        body.view-registration-reports-document-completion-report .percentage-70-60{ background: #f8d7da; color: #721c24; }
        body.view-registration-reports-document-completion-report .percentage-60-50{ background: #e2e3e5; color: #383d41; }
        body.view-registration-reports-document-completion-report .percentage-below-50{ background: #f5c6cb; color: #721c24; }
        
        body.view-registration-reports-document-completion-report .navigation{
            background: white;
            border-radius: 10px;
            padding: 15px;
            margin-bottom: 20px;
            box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1);
        }
        
        body.view-registration-reports-document-completion-report .nav-link{
            color: #667eea;
            text-decoration: none;
            padding: 8px 15px;
            border-radius: 20px;
            transition: all 0.3s ease;
            margin: 0 3px;
            display: inline-block;
        }
        
        body.view-registration-reports-document-completion-report .nav-link:hover{
            background: #667eea;
            color: white;
        }
        
        body.view-registration-reports-document-completion-report .nav-link.active{
            background: #667eea;
            color: white;
        }/* Nomination Phase Table Styles */
body.view-registration-reports-document-completion-report .nomination-phase-table{
            font-size: 0.9em;
        }
        
        body.view-registration-reports-document-completion-report .nomination-phase-table .badge{
            font-size: 0.75em;
            margin: 1px;
        }
        
        body.view-registration-reports-document-completion-report .phase-date{
            font-size: 0.85em;
            color: #666;
        }
        
        body.view-registration-reports-document-completion-report .acceptance-rate-high{
            background: #d4edda !important;
            color: #155724 !important;
        }
        
        body.view-registration-reports-document-completion-report .acceptance-rate-medium{
            background: #fff3cd !important;
            color: #856404 !important;
        }
        
        body.view-registration-reports-document-completion-report .acceptance-rate-low{
            background: #f8d7da !important;
            color: #721c24 !important;
        }
        
        body.view-registration-reports-document-completion-report .faculty-header{
            background: #f8f9fa;
            font-weight: bold;
        }
        
        body.view-registration-reports-document-completion-report .percentage-distribution{
            max-width: 300px;
        }
        
        body.view-registration-reports-document-completion-report .percentage-distribution .badge{
            display: inline-block;
            margin: 1px;
            font-size: 0.7em;
        }

/* view-registration-reports-faculty-growth-report */
/* source: registration_reports/faculty_growth_report.php */
body.view-registration-reports-faculty-growth-report{
            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            min-height: 100vh;
            direction: rtl;
        }
        
        body.view-registration-reports-faculty-growth-report .main-container{
            background: rgba(255, 255, 255, 0.95);
            border-radius: 20px;
            box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
            margin: 20px;
            overflow: hidden;
        }
        
        body.view-registration-reports-faculty-growth-report .header{
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            color: white;
            padding: 30px;
            text-align: center;
        }
        
        body.view-registration-reports-faculty-growth-report .header h1{
            margin: 0;
            font-size: 2.5em;
            font-weight: 300;
        }
        
        body.view-registration-reports-faculty-growth-report .content{
            padding: 30px;
        }
        
        body.view-registration-reports-faculty-growth-report .date-filter{
            background: white;
            border-radius: 15px;
            padding: 25px;
            margin-bottom: 30px;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
        }
        
        body.view-registration-reports-faculty-growth-report .date-filter h3{
            color: #333;
            margin-bottom: 20px;
            text-align: center;
        }
        
        body.view-registration-reports-faculty-growth-report .form-group{
            margin-bottom: 15px;
        }
        
        body.view-registration-reports-faculty-growth-report .form-label{
            font-weight: bold;
            color: #333;
            margin-bottom: 5px;
        }
        
        body.view-registration-reports-faculty-growth-report .btn-primary{
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            border: none;
            padding: 10px 30px;
            border-radius: 25px;
            font-weight: bold;
        }
        
        body.view-registration-reports-faculty-growth-report .btn-primary:hover{
            transform: translateY(-2px);
            box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
        }
        
        body.view-registration-reports-faculty-growth-report .stats-grid{
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
            gap: 15px;
            margin-bottom: 30px;
        }
        
        body.view-registration-reports-faculty-growth-report .stat-card{
            background: white;
            border-radius: 10px;
            padding: 20px;
            box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
            border-left: 4px solid #667eea;
            text-align: center;
        }
        
        body.view-registration-reports-faculty-growth-report .stat-number{
            font-size: 2em;
            font-weight: bold;
            color: #667eea;
            margin: 5px 0;
        }
        
        body.view-registration-reports-faculty-growth-report .stat-label{
            color: #666;
            font-size: 1em;
        }
        
        body.view-registration-reports-faculty-growth-report .growth-positive{
            color: #28a745;
        }
        
        body.view-registration-reports-faculty-growth-report .growth-negative{
            color: #dc3545;
        }
        
        body.view-registration-reports-faculty-growth-report .table-container{
            background: white;
            border-radius: 10px;
            padding: 20px;
            margin-bottom: 20px;
            box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
        }
        
        body.view-registration-reports-faculty-growth-report .table-title{
            color: #333;
            margin-bottom: 15px;
            font-size: 1.2em;
            font-weight: bold;
            text-align: center;
        }
        
        body.view-registration-reports-faculty-growth-report .custom-table{
            width: 100%;
            border-collapse: collapse;
            margin-top: 15px;
        }
        
        body.view-registration-reports-faculty-growth-report .custom-table th, body.view-registration-reports-faculty-growth-report .custom-table td{
            padding: 10px;
            text-align: center;
            border-bottom: 1px solid #eee;
        }
        
        body.view-registration-reports-faculty-growth-report .custom-table th{
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            color: white;
            font-weight: 600;
        }
        
        body.view-registration-reports-faculty-growth-report .custom-table tr:hover{
            background-color: #f8f9fa;
        }
        
        body.view-registration-reports-faculty-growth-report .growth-cell{
            font-weight: bold;
            font-size: 1.1em;
        }
        
        body.view-registration-reports-faculty-growth-report .percentage-cell{
            font-size: 0.9em;
            color: #666;
        }
        
        body.view-registration-reports-faculty-growth-report .summary-table th{
            background: #28a745;
        }

/* view-registration-reports-geographical-distribution */
/* source: registration_reports/geographical_distribution.php */
body.view-registration-reports-geographical-distribution{
            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            min-height: 100vh;
            direction: rtl;
        }
        
        body.view-registration-reports-geographical-distribution .main-container{
            background: rgba(255, 255, 255, 0.95);
            border-radius: 20px;
            box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
            margin: 20px;
            overflow: hidden;
        }
        
        body.view-registration-reports-geographical-distribution .header{
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            color: white;
            padding: 30px;
            text-align: center;
        }
        
        body.view-registration-reports-geographical-distribution .header h1{
            margin: 0;
            font-size: 2.5em;
            font-weight: 300;
        }
        
        body.view-registration-reports-geographical-distribution .content{
            padding: 30px;
        }
        
        body.view-registration-reports-geographical-distribution .chart-container{
            background: white;
            border-radius: 15px;
            padding: 25px;
            margin-bottom: 20px;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
        }
        
        body.view-registration-reports-geographical-distribution .chart-container.small-chart{
            max-height: 400px;
            min-height: 350px;
        }
        
        body.view-registration-reports-geographical-distribution .pie-chart-container{
            max-height: 450px;
            min-height: 400px;
            display: flex;
            flex-direction: column;
        }
        
        body.view-registration-reports-geographical-distribution .pie-chart-container canvas{
            max-height: 300px;
            min-height: 250px;
        }
        
        body.view-registration-reports-geographical-distribution .chart-title{
            color: #333;
            margin-bottom: 20px;
            font-size: 1.3em;
            font-weight: bold;
            text-align: center;
        }
        
        body.view-registration-reports-geographical-distribution .table-container{
            background: white;
            border-radius: 15px;
            padding: 25px;
            margin-bottom: 20px;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
        }
        
        body.view-registration-reports-geographical-distribution .table-title{
            color: #333;
            margin-bottom: 20px;
            font-size: 1.3em;
            font-weight: bold;
            text-align: center;
        }
        
        body.view-registration-reports-geographical-distribution .custom-table{
            width: 100%;
            border-collapse: collapse;
            margin-top: 20px;
        }
        
        body.view-registration-reports-geographical-distribution .custom-table th, body.view-registration-reports-geographical-distribution .custom-table td{
            padding: 12px;
            text-align: center;
            border-bottom: 1px solid #eee;
        }
        
        body.view-registration-reports-geographical-distribution .custom-table th{
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            color: white;
            font-weight: bold;
        }
        
        body.view-registration-reports-geographical-distribution .custom-table tr:hover{
            background-color: #f8f9fa;
        }
        
        body.view-registration-reports-geographical-distribution .btn-back{
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            color: white;
            padding: 12px 25px;
            border-radius: 25px;
            text-decoration: none;
            display: inline-block;
            margin-bottom: 20px;
            transition: all 0.3s ease;
        }
        
        body.view-registration-reports-geographical-distribution .btn-back:hover{
            transform: translateY(-2px);
            box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
            color: white;
        }
        
        body.view-registration-reports-geographical-distribution .stats-summary{
            background: linear-gradient(135deg, #a8edea 0%, #fed6e3 100%);
            border-radius: 15px;
            padding: 25px;
            margin-bottom: 30px;
            text-align: center;
        }
        
        body.view-registration-reports-geographical-distribution .stats-summary h3{
            color: #333;
            margin-bottom: 15px;
        }
        
        body.view-registration-reports-geographical-distribution .stats-summary p{
            color: #666;
            font-size: 1.1em;
            margin: 5px 0;
        }
        
        body.view-registration-reports-geographical-distribution .region-stats{
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
            gap: 15px;
            margin-bottom: 30px;
        }
        
        body.view-registration-reports-geographical-distribution .region-card{
            background: white;
            border-radius: 10px;
            padding: 20px;
            text-align: center;
            box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
            border-left: 4px solid #667eea;
        }
        
        body.view-registration-reports-geographical-distribution .region-name{
            font-weight: bold;
            color: #333;
            margin-bottom: 10px;
        }
        
        body.view-registration-reports-geographical-distribution .region-count{
            font-size: 1.5em;
            color: #667eea;
            font-weight: bold;
        }
        
        body.view-registration-reports-geographical-distribution .region-percentage{
            color: #666;
            font-size: 0.9em;
        }
        
        @media (max-width: 768px) {
            body.view-registration-reports-geographical-distribution .header h1{
                font-size: 2em;
            }
            
            body.view-registration-reports-geographical-distribution .custom-table{
                font-size: 0.9em;
            }
            
            body.view-registration-reports-geographical-distribution .custom-table th, body.view-registration-reports-geographical-distribution .custom-table td{
                padding: 8px;
            }
            
            body.view-registration-reports-geographical-distribution .region-stats{
                grid-template-columns: 1fr;
            }
        }

/* view-registration-reports-index */
/* source: registration_reports/index.php */
body.view-registration-reports-index{
            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            min-height: 100vh;
            direction: rtl;
        }
        
        body.view-registration-reports-index .main-container{
            background: rgba(255, 255, 255, 0.95);
            border-radius: 20px;
            box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
            margin: 20px;
            overflow: hidden;
        }
        
        body.view-registration-reports-index .header{
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            color: white;
            padding: 30px;
            text-align: center;
        }
        
        body.view-registration-reports-index .header h1{
            margin: 0;
            font-size: 2.5em;
            font-weight: 300;
        }
        
        body.view-registration-reports-index .content{
            padding: 30px;
        }
        
        body.view-registration-reports-index .stats-grid{
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
            gap: 20px;
            margin-bottom: 30px;
        }
        
        body.view-registration-reports-index .stat-card{
            background: white;
            border-radius: 15px;
            padding: 25px;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
            border-left: 5px solid #667eea;
            transition: transform 0.3s ease;
        }
        
        body.view-registration-reports-index .stat-card:hover{
            transform: translateY(-5px);
        }
        
        body.view-registration-reports-index .stat-number{
            font-size: 2.5em;
            font-weight: bold;
            color: #667eea;
            text-align: center;
            margin: 10px 0;
        }
        
        body.view-registration-reports-index .stat-label{
            text-align: center;
            color: #666;
            font-size: 1.1em;
        }
        
        body.view-registration-reports-index .chart-container{
            background: white;
            border-radius: 15px;
            padding: 25px;
            margin-bottom: 20px;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
        }
        
        body.view-registration-reports-index .chart-container.small-chart{
            max-height: 400px;
            min-height: 350px;
        }
        
        body.view-registration-reports-index .pie-chart-container{
            max-height: 450px;
            min-height: 400px;
            display: flex;
            flex-direction: column;
        }
        
        body.view-registration-reports-index .pie-chart-container canvas{
            max-height: 300px;
            min-height: 250px;
        }
        
        body.view-registration-reports-index .chart-title{
            color: #333;
            margin-bottom: 20px;
            font-size: 1.3em;
            font-weight: bold;
            text-align: center;
        }
        
        body.view-registration-reports-index .action-buttons{
            display: flex;
            gap: 15px;
            justify-content: center;
            margin-bottom: 30px;
            flex-wrap: wrap;
        }
        
        body.view-registration-reports-index .btn-custom{
            padding: 12px 25px;
            border-radius: 25px;
            font-weight: 500;
            text-decoration: none;
            transition: all 0.3s ease;
            border: none;
            cursor: pointer;
        }
        
        body.view-registration-reports-index .btn-primary-custom{
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            color: white;
        }
        
        body.view-registration-reports-index .btn-success-custom{
            background: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%);
            color: white;
        }
        
        body.view-registration-reports-index .btn-warning-custom{
            background: linear-gradient(135deg, #fa709a 0%, #fee140 100%);
            color: white;
        }
        
        body.view-registration-reports-index .btn-custom:hover{
            transform: translateY(-2px);
            box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
            color: white;
        }
        
        body.view-registration-reports-index .summary-section{
            background: linear-gradient(135deg, #a8edea 0%, #fed6e3 100%);
            border-radius: 15px;
            padding: 25px;
            margin-bottom: 30px;
            text-align: center;
        }
        
        body.view-registration-reports-index .summary-title{
            color: #333;
            font-size: 1.5em;
            margin-bottom: 15px;
            font-weight: bold;
        }
        
        body.view-registration-reports-index .summary-text{
            color: #666;
            font-size: 1.1em;
            line-height: 1.6;
        }
        
        body.view-registration-reports-index .table-responsive{
            border-radius: 10px;
            overflow: hidden;
            box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
        }
        
        body.view-registration-reports-index .table{
            margin-bottom: 0;
        }
        
        body.view-registration-reports-index .table th{
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            color: white;
            border: none;
            font-weight: 600;
            text-align: center;
        }
        
        body.view-registration-reports-index .table td{
            text-align: center;
            vertical-align: middle;
            border-color: #f8f9fa;
        }
        
        body.view-registration-reports-index .table tbody tr:hover{
            background-color: rgba(102, 126, 234, 0.1);
        }
        
        body.view-registration-reports-index .text-success{
            color: #28a745 !important;
            font-weight: bold;
        }
        
        body.view-registration-reports-index .text-primary{
            color: #007bff !important;
            font-weight: bold;
        }
        
        body.view-registration-reports-index .text-info{
            color: #17a2b8 !important;
            font-weight: bold;
        }
        
        body.view-registration-reports-index .text-warning{
            color: #ffc107 !important;
            font-weight: bold;
        }
        
        body.view-registration-reports-index .text-secondary{
            color: #6c757d !important;
            font-weight: bold;
        }
        
        body.view-registration-reports-index .text-danger{
            color: #dc3545 !important;
            font-weight: bold;
        }
        
        body.view-registration-reports-index .text-muted{
            color: #6c757d !important;
            font-weight: bold;
        }
        
        body.view-registration-reports-index .text-dark{
            color: #343a40 !important;
            font-weight: bold;
        }
        
        body.view-registration-reports-index .text-light{
            color: #f8f9fa !important;
            font-weight: bold;
        }
        
        body.view-registration-reports-index .table-container{
            background: white;
            border-radius: 15px;
            padding: 25px;
            margin-bottom: 20px;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
        }
        
        body.view-registration-reports-index .table-title{
            color: #333;
            margin-bottom: 20px;
            font-size: 1.3em;
            font-weight: bold;
            text-align: center;
        }
        
        body.view-registration-reports-index .custom-table{
            width: 100%;
            border-collapse: collapse;
            margin-top: 20px;
        }
        
        body.view-registration-reports-index .custom-table th, body.view-registration-reports-index .custom-table td{
            padding: 12px;
            text-align: center;
            border-bottom: 1px solid #eee;
        }
        
        body.view-registration-reports-index .custom-table th{
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            color: white;
            font-weight: bold;
        }
        
        body.view-registration-reports-index .custom-table tr:hover{
            background-color: #f8f9fa;
        }
        
        @media (max-width: 768px) {
            body.view-registration-reports-index .stats-grid{
                grid-template-columns: 1fr;
            }
            
            body.view-registration-reports-index .action-buttons{
                flex-direction: column;
                align-items: center;
            }
            
            body.view-registration-reports-index .header h1{
                font-size: 2em;
            }
        }

/* view-registration-reports-portsaid-north-sinai-report */
/* source: registration_reports/portsaid_north_sinai_report.php */
body.view-registration-reports-portsaid-north-sinai-report{
            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            min-height: 100vh;
            direction: rtl;
        }
        
        body.view-registration-reports-portsaid-north-sinai-report .main-container{
            background: rgba(255, 255, 255, 0.95);
            border-radius: 20px;
            box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
            margin: 20px;
            overflow: hidden;
        }
        
        body.view-registration-reports-portsaid-north-sinai-report .header{
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            color: white;
            padding: 30px;
            text-align: center;
        }
        
        body.view-registration-reports-portsaid-north-sinai-report .header h1{
            margin: 0;
            font-size: 2.5em;
            font-weight: 300;
        }
        
        body.view-registration-reports-portsaid-north-sinai-report .content{
            padding: 30px;
        }
        
        body.view-registration-reports-portsaid-north-sinai-report .stats-grid{
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
            gap: 15px;
            margin-bottom: 30px;
        }
        
        body.view-registration-reports-portsaid-north-sinai-report .stat-card{
            background: white;
            border-radius: 10px;
            padding: 20px;
            box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
            border-left: 4px solid #667eea;
            text-align: center;
        }
        
        body.view-registration-reports-portsaid-north-sinai-report .stat-number{
            font-size: 2em;
            font-weight: bold;
            color: #667eea;
            margin: 5px 0;
        }
        
        body.view-registration-reports-portsaid-north-sinai-report .stat-label{
            color: #666;
            font-size: 1em;
        }
        
        body.view-registration-reports-portsaid-north-sinai-report .table-container{
            background: white;
            border-radius: 10px;
            padding: 20px;
            margin-bottom: 20px;
            box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
        }
        
        body.view-registration-reports-portsaid-north-sinai-report .table-title{
            color: #333;
            margin-bottom: 15px;
            font-size: 1.2em;
            font-weight: bold;
            text-align: center;
        }
        
        body.view-registration-reports-portsaid-north-sinai-report .custom-table{
            width: 100%;
            border-collapse: collapse;
            margin-top: 15px;
        }
        
        body.view-registration-reports-portsaid-north-sinai-report .custom-table th, body.view-registration-reports-portsaid-north-sinai-report .custom-table td{
            padding: 10px;
            text-align: center;
            border-bottom: 1px solid #eee;
        }
        
        body.view-registration-reports-portsaid-north-sinai-report .custom-table th{
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            color: white;
            font-weight: 600;
        }
        
        body.view-registration-reports-portsaid-north-sinai-report .custom-table tr:hover{
            background-color: #f8f9fa;
        }
        
        body.view-registration-reports-portsaid-north-sinai-report .medicine-row{
            background-color: #e3f2fd;
        }
        
        body.view-registration-reports-portsaid-north-sinai-report .medicine-row.special-range{
            background: linear-gradient(135deg,rgb(168, 222, 205) 0%,rgb(105, 209, 138) 100%);
            color: white;
            font-weight: bold;
        }
        
        body.view-registration-reports-portsaid-north-sinai-report .medicine-row.special-range .score-range{
            color: white;
        }
        
        body.view-registration-reports-portsaid-north-sinai-report .pharmacy-row{
            background-color: #f3e5f5;
        }
        
        body.view-registration-reports-portsaid-north-sinai-report .score-range{
            font-weight: bold;
            color: #667eea;
        }
        
        body.view-registration-reports-portsaid-north-sinai-report .count-cell{
            font-weight: bold;
            font-size: 1.1em;
        }
        
        body.view-registration-reports-portsaid-north-sinai-report .zero-count{
            color: #999;
        }
        
        body.view-registration-reports-portsaid-north-sinai-report .summary-table th{
            background: #28a745;
        }
        
        body.view-registration-reports-portsaid-north-sinai-report .faculty-header{
            background: #495057 !important;
            color: white;
            font-weight: bold;
        }

/* view-security-index */
/* source: security/index.php */
/* Enhanced Table Design */
body.view-security-index .security-table{
        margin: 0;
    }

    body.view-security-index .security-table thead th{
        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
        color: white;
        font-weight: 600;
        padding: 1rem;
        border: none;
        text-align: right;
        font-size: 0.95rem;
        white-space: nowrap;
        position: sticky;
        top: 0;
        z-index: 10;
    }

    body.view-security-index .security-table thead th i{
        font-size: 1.1rem;
        margin-left: 0.5rem;
    }

    body.view-security-index .security-table tbody td{
        padding: 1rem;
        vertical-align: middle;
        border-color: rgba(0, 0, 0, 0.05);
    }

    body.view-security-index .table-row{
        cursor: pointer;
        transition: all 0.2s ease;
        border-left: 3px solid transparent;
    }

    body.view-security-index .table-row:hover{
        background: linear-gradient(90deg, rgba(102, 126, 234, 0.08) 0%, rgba(102, 126, 234, 0.03) 100%);
        border-left-color: #667eea;
        transform: translateX(-3px);
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    }

    html.dark-theme body.view-security-index .table-row:hover{
        background: linear-gradient(90deg, rgba(102, 126, 234, 0.15) 0%, rgba(102, 126, 234, 0.08) 100%);
    }/* Role Badge */
body.view-security-index .role-badge{
        display: inline-block;
        padding: 0.4rem 0.8rem;
        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
        color: white;
        border-radius: 20px;
        font-size: 0.85rem;
        font-weight: 600;
        white-space: nowrap;
        box-shadow: 0 2px 4px rgba(102, 126, 234, 0.3);
    }/* Filter Section */
body.view-security-index .card-body .form-label{
        font-size: 0.9rem;
        margin-bottom: 0.5rem;
        color: #495057;
    }

    body.view-security-index .form-control:focus, body.view-security-index .form-select:focus{
        border-color: #667eea;
        box-shadow: 0 0 0 0.2rem rgba(102, 126, 234, 0.25);
    }

    html.dark-theme body.view-security-index .security-table tbody td{
        border-color: rgba(255, 255, 255, 0.05);
        color: #e0e0e0;
    }

    html.dark-theme body.view-security-index .card-body .form-label{
        color: #e0e0e0;
    }

/* view-semester-works-academic-course-index */
/* source: semester_works/academic_course_index.php */
/* Decline effect for disabled button on hover */
body.view-semester-works-academic-course-index .btn-disabled-hover:hover{
        cursor: not-allowed !important;
        animation: view-semester-works-academic-course-index-shake 0.5s ease-in-out;
        opacity: 0.6;
    }

    @keyframes view-semester-works-academic-course-index-shake {

        0%,
        100% {
            transform: translateX(0);
        }

        10%,
        30%,
        50%,
        70%,
        90% {
            transform: translateX(-3px);
        }

        20%,
        40%,
        60%,
        80% {
            transform: translateX(3px);
        }
    }

    body.view-semester-works-academic-course-index .btn-disabled-hover:disabled{
        pointer-events: auto;
    }

/* view-services-index */
/* source: services/index.php */
/* Enhanced Table Design */
body.view-services-index .service-table{
        margin: 0;
    }

    body.view-services-index .service-table thead th{
        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
        color: white;
        font-weight: 600;
        padding: 1rem;
        border: none;
        text-align: right;
        font-size: 0.95rem;
        white-space: nowrap;
        position: sticky;
        top: 0;
        z-index: 10;
    }

    body.view-services-index .service-table thead th i{
        font-size: 1.1rem;
        margin-left: 0.5rem;
    }

    body.view-services-index .service-table tbody td{
        padding: 1rem;
        vertical-align: middle;
        border-color: rgba(0, 0, 0, 0.05);
    }

    body.view-services-index .table-row{
        cursor: pointer;
        transition: all 0.2s ease;
        border-left: 3px solid transparent;
    }

    body.view-services-index .table-row:hover{
        background: linear-gradient(90deg, rgba(102, 126, 234, 0.08) 0%, rgba(102, 126, 234, 0.03) 100%);
        border-left-color: #667eea;
        transform: translateX(-3px);
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    }

    html.dark-theme body.view-services-index .table-row:hover{
        background: linear-gradient(90deg, rgba(102, 126, 234, 0.15) 0%, rgba(102, 126, 234, 0.08) 100%);
    }/* Role Badge */
body.view-services-index .role-badge{
        display: inline-block;
        padding: 0.4rem 0.8rem;
        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
        color: white;
        border-radius: 20px;
        font-size: 0.85rem;
        font-weight: 600;
        white-space: nowrap;
        box-shadow: 0 2px 4px rgba(102, 126, 234, 0.3);
    }/* Filter Section */
body.view-services-index .card-body .form-label{
        font-size: 0.9rem;
        margin-bottom: 0.5rem;
        color: #495057;
    }

    body.view-services-index .form-control:focus, body.view-services-index .form-select:focus{
        border-color: #667eea;
        box-shadow: 0 0 0 0.2rem rgba(102, 126, 234, 0.25);
    }

    html.dark-theme body.view-services-index .service-table tbody td{
        border-color: rgba(255, 255, 255, 0.05);
        color: #e0e0e0;
    }

    html.dark-theme body.view-services-index .card-body .form-label{
        color: #e0e0e0;
    }

/* view-store-inventory-index */
/* source: store/inventory/index.php */
body.view-store-inventory-index .bg-gradient-blues{
        background: linear-gradient(45deg, #3461ff, #5785ff) !important;
    }
    body.view-store-inventory-index .bg-gradient-success{
        background: linear-gradient(45deg, #17a00e, #2ecc71) !important;
    }
    body.view-store-inventory-index .bg-gradient-warning{
        background: linear-gradient(45deg, #f7b529, #ffd454) !important;
    }
    body.view-store-inventory-index .bg-gradient-danger{
        background: linear-gradient(45deg, #ff1843, #ff5c75) !important;
    }
    body.view-store-inventory-index .card-stats{
        transition: all 0.3s ease;
    }
    body.view-store-inventory-index .card-stats:hover{
        transform: translateY(-5px);
    }
    body.view-store-inventory-index .card-stats .card-body{
        padding: 1rem;
    }
    body.view-store-inventory-index .card-stats .card-body p{
        margin-bottom: 0.5rem;
    }
    body.view-store-inventory-index .card-stats h4{
        font-size: 1.5rem;
        font-weight: 600;
        color: #fff;
    }
    body.view-store-inventory-index .card-stats p{
        color: rgba(255, 255, 255, 0.9);
    }
    body.view-store-inventory-index .widgets-icons-2{
        width: 45px;
        height: 45px;
        display: flex;
        align-items: center;
        justify-content: center;
        background: rgba(255, 255, 255, 0.1);
        border-radius: 10px;
        font-size: 1.2rem;
    }

/* view-student-absence-details */
/* source: student/absence_details.php */
/* Mobile-friendly styles */
	@media (max-width: 768px) {
		body.view-student-absence-details .page-content-wrapper{
			padding: 10px;
		}
		
		body.view-student-absence-details .card{
			margin: 10px 0;
		}
		
		body.view-student-absence-details .table-responsive{
			font-size: 0.85rem;
		}
		
		body.view-student-absence-details .table th, body.view-student-absence-details .table td{
			padding: 0.5rem 0.25rem;
			vertical-align: middle;
		}
		
		body.view-student-absence-details .table th{
			font-size: 0.8rem;
			white-space: nowrap;
		}
		
		body.view-student-absence-details .badge{
			font-size: 0.7rem;
			padding: 0.35em 0.65em;
		}
		
		/* Stack table columns on very small screens */
		@media (max-width: 576px) {
			body.view-student-absence-details .table-responsive{
				overflow-x: auto;
				-webkit-overflow-scrolling: touch;
			}
			
			body.view-student-absence-details .table{
				min-width: min(600px, 100%);
			}
			
			body.view-student-absence-details .table th, body.view-student-absence-details .table td{
				padding: 0.3rem 0.2rem;
				font-size: 0.75rem;
			}
		}
	}

/* view-student-affairs-courses-list */
/* source: student_affairs/courses_list.php */
body.view-student-affairs-courses-list .course-card-modern{
        transition: all 0.3s ease;
        border: 1px solid #e9ecef !important;
    }

    body.view-student-affairs-courses-list .course-card-modern:hover{
        transform: translateY(-5px);
        box-shadow: 0 0.5rem 1.5rem rgba(0, 0, 0, 0.15) !important;
        border-color: #0c4ca0 !important;
    }

    body.view-student-affairs-courses-list .course-icon-wrapper{
        transition: all 0.3s ease;
    }

    body.view-student-affairs-courses-list .course-card-modern:hover .course-icon-wrapper{
        transform: scale(1.1);
        background-color: rgba(12, 76, 160, 0.15) !important;
    }

    body.view-student-affairs-courses-list .course-info{
        font-size: 0.9rem;
    }

    body.view-student-affairs-courses-list .course-info ion-icon{
        transition: transform 0.2s ease;
    }

    body.view-student-affairs-courses-list .course-card-modern:hover .course-info ion-icon{
        transform: scale(1.15);
    }

    body.view-student-affairs-courses-list .btn-outline-info, body.view-student-affairs-courses-list .btn-outline-warning{
        transition: all 0.3s ease;
    }

    body.view-student-affairs-courses-list .btn-outline-info:hover, body.view-student-affairs-courses-list .btn-outline-warning:hover{
        transform: scale(1.05);
    }

    @media (max-width: 768px) {
        body.view-student-affairs-courses-list .course-card-modern{
            margin-bottom: 1.5rem;
        }
    }

/* view-student-affairs-fees-index */
/* source: student_affairs_fees/index.php */
body.view-student-affairs-fees-index .page-content-wrapper .card .form-control:focus, body.view-student-affairs-fees-index .page-content-wrapper .card .form-select:focus{
    border-color: #3b82f6;
    box-shadow: 0 0 0 0.2rem rgba(59, 130, 246, 0.25);
}
body.view-student-affairs-fees-index .page-content-wrapper .btn:hover:not(:disabled){
    opacity: 0.9;
}

/* view-student-affairs-in-active-students */
/* source: student_affairs/in_active_students.php */
body.view-student-affairs-in-active-students .table tbody tr{
        transition: background 0.3s ease, transform 0.2s ease;
        cursor: pointer;
    }

    body.view-student-affairs-in-active-students .table tbody tr:hover{
        transform: scale(1.05);
        box-shadow: 0 4px 10px rgba(255, 255, 255, 0.1);
    }

/* view-student-affairs-index */
/* source: student_affairs/index.php */
body.view-student-affairs-index .form-control:focus{
        box-shadow: 0 0 0 0.2rem rgba(42, 82, 152, 0.25);
        border-color: #2a5298;
    }

    body.view-student-affairs-index .badge.bg-light{
        border: 1px solid rgba(255, 255, 255, 0.25);
    }

    body.view-student-affairs-index #student_search .form-control{
        background: #f8f9fb;
        border: 1px solid #e5e7eb;
    }

    body.view-student-affairs-index #student_search .form-control::placeholder{
        color: #9aa0a6;
    }

    body.view-student-affairs-index .table tbody tr{
        transition: background 0.3s ease, transform 0.2s ease;
        cursor: pointer;
    }

    body.view-student-affairs-index .table tbody tr:hover{
        transform: scale(1.05);
        box-shadow: 0 4px 10px rgba(255, 255, 255, 0.1);
    }

    body.view-student-affairs-index #studentModal .modal-content{
        border-radius: 18px;
        border: 0;
        overflow: hidden;
        box-shadow: 0 12px 40px rgba(0, 0, 0, 0.18);
    }

    body.view-student-affairs-index #studentModal .modal-header{
        background: linear-gradient(135deg, #1e3c72 0%, #2a5298 100%);
        color: #fff;
        border: 0;
        align-items: center;
    }

    body.view-student-affairs-index #studentModal .modal-title{
        font-weight: 700;
        letter-spacing: 0.3px;
    }

    body.view-student-affairs-index #studentModal #modalStudentHeader .modal-title{
        line-height: 1.35;
    }

    body.view-student-affairs-index #studentModal .student-modal-heading{
        font-size: 1.15rem;
        font-weight: 700;
        line-height: 1.4;
    }

    body.view-student-affairs-index #studentModal .student-modal-avatar{
        width: 88px;
        height: 88px;
    }

    body.view-student-affairs-index #studentModal .student-modal-avatar-img{
        width: 88px;
        height: 88px;
        object-fit: cover;
        background: rgba(255, 255, 255, 0.2);
    }

    body.view-student-affairs-index #studentModal .student-modal-avatar-fallback{
        width: 88px;
        height: 88px;
        display: none;
    }

    body.view-student-affairs-index #studentModal .modal-body{
        background: #f7f8fb;
        padding: 1.5rem;
    }

    body.view-student-affairs-index #studentModal .modal-footer{
        background: #f0f2f6;
        border: 0;
        gap: 0.5rem;
        flex-wrap: wrap;
    }

    body.view-student-affairs-index #studentModal .modal-footer .btn{
        border-radius: 10px;
    }

    body.view-student-affairs-index .loading-ghost .placeholder{
        border-radius: 999px;
    }

    body.view-student-affairs-index .loading-ghost .placeholder-glow .placeholder{
        animation-duration: 1.2s;
    }

/* view-student-affairs-list */
/* source: student_affairs/list.php */
body.view-student-affairs-list .table-row{
        cursor: pointer;
        transition: background-color 0.3s;
    }

    html.light-theme body.view-student-affairs-list .table-row:hover{
        background-color: #f5f5f5 !important;
    }

    html.dark-theme body.view-student-affairs-list .table-row:hover{
        background-color: #2d2d2d !important;
    }

/* view-student-affairs-student-grades */
/* source: student_affairs/student_grades.php */
body.view-student-affairs-student-grades .grade-row-ribbon > td{
        border-bottom: none !important;
        box-shadow: inset 0 -4px 0 0 transparent;
        padding-bottom: 0.85rem !important;
    }

    body.view-student-affairs-student-grades .grade-row-ribbon.grade-ribbon-10 > td{
        box-shadow: inset 0 -4px 0 0 #a3d9b1;
    }

    body.view-student-affairs-student-grades .grade-row-ribbon.grade-ribbon-9 > td{
        box-shadow: inset 0 -4px 0 0 #b6d4fe;
    }

    body.view-student-affairs-student-grades .grade-row-ribbon.grade-ribbon-below-9 > td{
        box-shadow: inset 0 -4px 0 0 #ffe69c;
    }

/* view-student-affairs-transfer-index */
/* source: student_affairs/transfer_index.php */
body.view-student-affairs-transfer-index .table tbody tr{
        transition: background 0.3s ease, transform 0.2s ease;
        cursor: pointer;
    }

    body.view-student-affairs-transfer-index .table tbody tr:hover{


        transform: scale(1.05);
        box-shadow: 0 4px 10px rgba(255, 255, 255, 0.1);
    }

/* view-student-conversion-index */
/* source: student_conversion/index.php */
body.view-student-conversion-index{
            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
            background-color: #f8f9fa;
        }
        body.view-student-conversion-index .card{
            border-radius: 15px;
            box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
        }
        body.view-student-conversion-index .btn-convert{
            background: linear-gradient(45deg, #28a745, #20c997);
            border: none;
            color: white;
            transition: all 0.3s ease;
        }
        body.view-student-conversion-index .btn-convert:hover{
            transform: translateY(-2px);
            box-shadow: 0 4px 8px rgba(40, 167, 69, 0.3);
        }
        body.view-student-conversion-index .student-row{
            transition: all 0.3s ease;
        }
        body.view-student-conversion-index .student-row:hover{
            background-color: #f8f9fa;
            transform: translateX(-5px);
        }
        body.view-student-conversion-index .status-badge{
            font-size: 0.8rem;
            padding: 0.25rem 0.5rem;
        }
        body.view-student-conversion-index .faculty-badge{
            background: linear-gradient(45deg, #007bff, #6610f2);
            color: white;
        }
        body.view-student-conversion-index .phase-badge{
            background: linear-gradient(45deg, #fd7e14, #ffc107);
            color: white;
        }
        body.view-student-conversion-index .loading{
            display: none;
        }
        body.view-student-conversion-index .result-modal{
            max-height: 70vh;
            overflow-y: auto;
        }

/* view-student-course-registrations-acceptance-index */
/* source: student/course_registrations/acceptance_index.php */
body.view-student-course-registrations-acceptance-index .faculty-card{
        border: none;
        border-radius: 10px;
        box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1);
        transition: 0.3s;
        overflow: hidden;
        max-width: 420px;
        margin: 0 auto;
    }

    body.view-student-course-registrations-acceptance-index .allcards{
        background-color: transparent;
    }

    body.view-student-course-registrations-acceptance-index .faculty-card:hover{
        box-shadow: 0px 6px 15px rgba(0, 0, 0, 0.2);
        transform: translateY(-3px);
    }



    body.view-student-course-registrations-acceptance-index .program-buttons{
        display: flex;
        flex-direction: column;
        gap: 10px;
        padding: 20px;
        align-items: center;
    }

    body.view-student-course-registrations-acceptance-index .faculty-logo{
        width: 100px;
        height: 100px;
        object-fit: contain;
    }/* Simple full-page loading overlay */
body.view-student-course-registrations-acceptance-index .loading-overlay{
        position: fixed;
        inset: 0;
        background: rgba(0, 0, 0, 0.15);
        display: none;
        align-items: center;
        justify-content: center;
        z-index: 1050;
    }

    body.view-student-course-registrations-acceptance-index .loading-overlay.active{
        display: flex;
    }

    body.view-student-course-registrations-acceptance-index .loading-spinner{
        width: 40px;
        height: 40px;
        border-radius: 50%;
        border: 4px solid #e5e7eb;
        border-top-color: #0d6efd;
        animation: view-student-course-registrations-acceptance-index-spin 0.7s linear infinite;
    }

    @keyframes view-student-course-registrations-acceptance-index-spin {
        to {
            transform: rotate(360deg);
        }
    }

    @media (max-width: 767.98px) {
        body.view-student-course-registrations-acceptance-index .faculty-card{
            max-width: 100%;
        }

        body.view-student-course-registrations-acceptance-index .program-buttons{
            padding: 10px 15px;
        }
    }

/* view-student-course-registrations-all-student-program */
/* source: student/course_registrations/all_student_program.php */
body.view-student-course-registrations-all-student-program #table-row{
        transition: background 0.3s ease, transform 0.2s ease;
        cursor: pointer;
    }

    body.view-student-course-registrations-all-student-program .table tbody tr:hover{
        background: linear-gradient(90deg, #001f3f, rgb(12, 77, 143));

        transform: scale(1.05);
        box-shadow: 0 4px 10px rgba(255, 255, 255, 0.1);
    }

    body.view-student-course-registrations-all-student-program .back-button{
        display: flex;
        justify-content: flex-end;
    }

/* view-student-course-registrations-index */
/* source: student/course_registrations/index.php */
body.view-student-course-registrations-index .badge{
            font-size: small;
            padding: 10px 15px;
            /* Adjust padding for better appearance */
            display: inline-block;
            /* Ensures proper alignment */
            min-width: 80px;
            /* Set a minimum width for uniformity */
            text-align: center;
            /* Center the text inside the badge */
            border-radius: 10px;
            /* Smooth rounded corners */
        }

        body.view-student-course-registrations-index .student-card-header{
            display: flex;
            justify-content: space-between;
        }

/* view-student-course-registrations-student-register-course */
/* source: student/course_registrations/student_register_course.php */
body.view-student-course-registrations-student-register-course .bg-gradient-primary{
        background: linear-gradient(135deg, #1e3c72 0%, #2a5298 100%);
    }

    body.view-student-course-registrations-student-register-course .bg-gradient-warning{
        background: linear-gradient(135deg, #f59e0b 0%, #f97316 100%);
    }

    body.view-student-course-registrations-student-register-course .form-control:focus, body.view-student-course-registrations-student-register-course .form-select:focus{
        box-shadow: 0 0 0 0.2rem rgba(42, 82, 152, 0.25);
        border-color: #2a5298;
    }

    body.view-student-course-registrations-student-register-course .badge{
        font-size: 0.8125rem;
        padding: 6px 12px;
        font-weight: 500;
    }

    body.view-student-course-registrations-student-register-course .table tbody tr{
        transition: all 0.2s ease;
    }

    body.view-student-course-registrations-student-register-course .table tbody tr:hover{
        background-color: #f8f9fa;
        transform: scale(1.01);
    }

    body.view-student-course-registrations-student-register-course .btn{
        transition: all 0.2s ease;
        border-radius: 8px;
    }

    body.view-student-course-registrations-student-register-course .btn:hover{
        transform: translateY(-2px);
        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
    }

    body.view-student-course-registrations-student-register-course .course-item{
        padding: 12px;
        background: white;
        border-radius: 8px;
        border: 1px solid #e5e7eb;
        transition: all 0.2s ease;
    }

    body.view-student-course-registrations-student-register-course .course-item:hover{
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
        transform: translateX(4px);
    }

    body.view-student-course-registrations-student-register-course #courses-section{
        border: 2px dashed #dee2e6 !important;
        background: #f8f9fa !important;
    }

    body.view-student-course-registrations-student-register-course .card{
        transition: all 0.3s ease;
    }

    body.view-student-course-registrations-student-register-course .card:hover{
        box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1) !important;
    }

/* view-student-grades */
/* source: student/grades.php */
body.view-student-grades .stat-card{
        transition: transform 0.2s ease, box-shadow 0.2s ease;
        height: 100%;
    }

    body.view-student-grades .stat-card:hover{
        transform: translateY(-2px);
        box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1) !important;
    }

    body.view-student-grades .stat-value{
        font-size: 2.5rem;
        font-weight: 700;
    }

    body.view-student-grades .course-code-badge{
        padding: 6px 12px;
        border-radius: 6px;
        font-weight: 600;
        font-size: 0.9rem;
    }

    body.view-student-grades .table-hover tbody tr{
        transition: background-color 0.15s ease;
    }

    body.view-student-grades .progress-modern{
        height: 8px;
        border-radius: 6px;
    }/* Mobile Card Layout for Courses */
body.view-student-grades .course-card-mobile{
        display: none;
    }

    @media (max-width: 768px) {
        body.view-student-grades .course-card-mobile{
            display: block;
        }

        body.view-student-grades .table-desktop{
            display: none;
        }

        body.view-student-grades .course-card-mobile .card{
            border-left: 3px solid;
            margin-bottom: 1rem;
        }

        body.view-student-grades .course-card-mobile .card-body{
            padding: 1rem;
        }

        body.view-student-grades .course-info-row{
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 0.5rem 0;
            border-bottom: 1px solid #e9ecef;
        }

        body.view-student-grades .course-info-row:last-child{
            border-bottom: none;
        }

        body.view-student-grades .course-info-label{
            font-weight: 600;
            color: #6c757d;
            font-size: 0.85rem;
        }

        body.view-student-grades .course-info-value{
            font-weight: 600;
            color: #2c3e50;
        }
    }

    /* Mobile Responsive Styles */
    @media (max-width: 768px) {
        body.view-student-grades .page-content{
            padding: 0.75rem !important;
        }

        body.view-student-grades .card{
            margin-bottom: 1rem;
        }

        body.view-student-grades .card-body{
            padding: 1rem !important;
        }

        body.view-student-grades .card-header{
            padding: 0.875rem 1rem !important;
        }

        body.view-student-grades .card-header h5, body.view-student-grades .card-header h6{
            font-size: 1rem !important;
            line-height: 1.4;
        }

        body.view-student-grades .stat-value{
            font-size: 2rem !important;
        }

        body.view-student-grades .stat-card .card-body{
            padding: 1.25rem 1rem !important;
        }

        body.view-student-grades .semester-card{
            margin: 0.5rem 0 !important;
        }

        body.view-student-grades .semester-card .card-body{
            padding: 1rem !important;
        }

        body.view-student-grades .semester-card .card-header{
            padding: 0.75rem 1rem !important;
        }

        body.view-student-grades .course-code-badge{
            padding: 5px 10px;
            font-size: 0.8rem;
        }

        body.view-student-grades .badge{
            padding: 0.4rem 0.7rem !important;
            font-size: 0.8rem !important;
        }

        body.view-student-grades .alert{
            margin: 0.75rem 0 !important;
            padding: 0.875rem 1rem !important;
            font-size: 0.875rem;
            border-radius: 8px;
        }

        body.view-student-grades .semester-summary{
            padding: 0.875rem !important;
            font-size: 0.875rem;
            margin-top: 1rem !important;
        }

        body.view-student-grades .semester-header .badge{
            font-size: 0.75rem !important;
            padding: 0.35rem 0.65rem !important;
            margin-top: 0.5rem;
            display: block;
            width: fit-content;
        }

        body.view-student-grades .semester-header .d-flex{
            flex-direction: column;
            align-items: flex-start !important;
            gap: 0.5rem !important;
        }

        body.view-student-grades .semester-header .d-flex h6{
            margin-bottom: 0;
        }/* Better spacing for academic year cards */
body.view-student-grades .academic-year-card .card-body{
            padding: 0.5rem !important;
        }
    }

    @media (max-width: 576px) {
        body.view-student-grades .page-content{
            padding: 0.5rem !important;
        }

        body.view-student-grades .stat-value{
            font-size: 1.75rem !important;
        }

        body.view-student-grades .card-body{
            padding: 0.875rem !important;
        }

        body.view-student-grades .card-header{
            padding: 0.75rem 0.875rem !important;
        }

        body.view-student-grades .card-header h5{
            font-size: 0.95rem !important;
        }

        body.view-student-grades .card-header h6{
            font-size: 0.9rem !important;
        }

        body.view-student-grades .course-code-badge{
            padding: 4px 8px;
            font-size: 0.75rem;
        }

        body.view-student-grades .badge{
            padding: 0.35rem 0.6rem !important;
            font-size: 0.75rem !important;
        }

        body.view-student-grades .semester-card{
            margin: 0.5rem 0 !important;
        }

        body.view-student-grades .semester-card .card-body{
            padding: 0.875rem !important;
        }

        body.view-student-grades .semester-card .card-header{
            padding: 0.65rem 0.875rem !important;
        }

        body.view-student-grades .progress-modern{
            height: 6px;
        }

        body.view-student-grades .course-card-mobile .card-body{
            padding: 0.875rem !important;
        }

        body.view-student-grades .course-info-row{
            padding: 0.4rem 0;
            font-size: 0.85rem;
        }
    }

    /* Desktop table styles */
    @media (min-width: min(769px, 100%)) {
        body.view-student-grades .table-responsive{
            -webkit-overflow-scrolling: touch;
        }

        body.view-student-grades .table th, body.view-student-grades .table td{
            padding: 0.75rem 0.5rem;
        }
    }

/* view-student-in-courses-all-faculty-and-programs */
/* source: student_in_courses/all_faculty_and_programs.php */
body.view-student-in-courses-all-faculty-and-programs .faculty-card{
        border: none;
        border-radius: 10px;
        box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1);
        transition: 0.3s;
        overflow: hidden;
        max-width: 420px;
        margin: 0 auto;
    }

    body.view-student-in-courses-all-faculty-and-programs .allcards{
        background-color: transparent;
    }

    body.view-student-in-courses-all-faculty-and-programs .faculty-card:hover{
        box-shadow: 0px 6px 15px rgba(0, 0, 0, 0.2);
        transform: translateY(-3px);
    }

    body.view-student-in-courses-all-faculty-and-programs .program-buttons{
        display: flex;
        flex-direction: column;
        gap: 10px;
        padding: 20px;
        align-items: center;
    }

    body.view-student-in-courses-all-faculty-and-programs .faculty-logo{
        width: 100px;
        height: 100px;
        object-fit: contain;
    }/* Simple full-page loading overlay */
body.view-student-in-courses-all-faculty-and-programs .loading-overlay{
        position: fixed;
        inset: 0;
        background: rgba(0, 0, 0, 0.15);
        display: none;
        align-items: center;
        justify-content: center;
        z-index: 1050;
    }

    body.view-student-in-courses-all-faculty-and-programs .loading-overlay.active{
        display: flex;
    }

    body.view-student-in-courses-all-faculty-and-programs .loading-spinner{
        width: 40px;
        height: 40px;
        border-radius: 50%;
        border: 4px solid #e5e7eb;
        border-top-color: #0d6efd;
        animation: view-student-in-courses-all-faculty-and-programs-spin 0.7s linear infinite;
    }

    @keyframes view-student-in-courses-all-faculty-and-programs-spin {
        to {
            transform: rotate(360deg);
        }
    }

    @media (max-width: 767.98px) {
        body.view-student-in-courses-all-faculty-and-programs .faculty-card{
            max-width: 100%;
        }

        body.view-student-in-courses-all-faculty-and-programs .program-buttons{
            padding: 10px 15px;
        }
    }

/* view-student-in-courses-courses-in-program */
/* source: student_in_courses/courses_in_program.php */
body.view-student-in-courses-courses-in-program .page-content{
        padding-top: 1.5rem;
        padding-bottom: 2rem;
    }

    body.view-student-in-courses-courses-in-program .page-header-bar{
        border-bottom: 1px solid rgba(15, 23, 42, 0.06);
        padding-bottom: 0.5rem;
        margin-bottom: 1.5rem;
    }

    body.view-student-in-courses-courses-in-program .back-button{
        display: flex;
        justify-content: flex-end;
    }

    body.view-student-in-courses-courses-in-program .faculty-logo-header{
        width: 100px;
        height: 100px;
        object-fit: contain;
    }

    body.view-student-in-courses-courses-in-program .header-summary-card{
        border-radius: 14px;
    }

    body.view-student-in-courses-courses-in-program .students-card{
        border-radius: 14px;
    }

    body.view-student-in-courses-courses-in-program .card{
        margin: 0 0 20px 0;
    }

    body.view-student-in-courses-courses-in-program .main-title{
        letter-spacing: 0.02em;
    }

    body.view-student-in-courses-courses-in-program .sub-title{
        font-size: 0.95rem;
    }

    body.view-student-in-courses-courses-in-program .course-meta{
        font-size: 0.9rem;
    }

    body.view-student-in-courses-courses-in-program .course-meta .label{
        font-weight: 600;
        color: #374151;
    }

    body.view-student-in-courses-courses-in-program .course-meta .value{
        color: #111827;
    }

    body.view-student-in-courses-courses-in-program .info-chip{
        padding: 6px 10px;
        border-radius: 999px;
        background-color: #f3f4ff;
        border: 1px solid rgba(129, 140, 248, 0.25);
        margin-top: 4px;
    }

    body.view-student-in-courses-courses-in-program .info-chip i{
        font-size: 1rem;
        color: #4f46e5;
    }

    body.view-student-in-courses-courses-in-program #table-row{
        cursor: pointer;
        transition: background-color 0.15s ease-in-out;
    }

    body.view-student-in-courses-courses-in-program .table tbody tr:hover{
        background-color: #f8fafc;
    }

    @media (max-width: 768px) {

        body.view-student-in-courses-courses-in-program .header-summary-card, body.view-student-in-courses-courses-in-program .students-card{
            border-radius: 10px;
        }
    }

/* view-student-in-courses-student-in-course */
/* source: student_in_courses/student_in_course.php */
body.view-student-in-courses-student-in-course .page-content{
        padding-top: 1.5rem;
        padding-bottom: 2rem;
    }

    body.view-student-in-courses-student-in-course .page-header-bar{
        border-bottom: 1px solid rgba(15, 23, 42, 0.06);
        padding-bottom: 0.5rem;
        margin-bottom: 1.5rem;
    }

    body.view-student-in-courses-student-in-course .back-button{
        display: flex;
        justify-content: flex-end;
    }

    body.view-student-in-courses-student-in-course .faculty-logo-header{
        width: 100px;
        height: 100px;
        object-fit: contain;
    }

    body.view-student-in-courses-student-in-course .header-summary-card{
        border-radius: 14px;
    }

    body.view-student-in-courses-student-in-course .students-card{
        border-radius: 14px;
    }

    body.view-student-in-courses-student-in-course .bulk-actions-card{
        border-radius: 12px;
        background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
        border: 1px solid rgba(148, 163, 184, 0.2);
    }

    body.view-student-in-courses-student-in-course .bulk-actions-icon{
        width: 44px;
        height: 44px;
        border-radius: 10px;
        background: linear-gradient(135deg, #4f46e5 0%, #6366f1 100%);
        color: white;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 1.35rem;
    }

    body.view-student-in-courses-student-in-course .btn-bulk-action{
        font-weight: 600;
        padding: 0.5rem 1rem;
        border-radius: 8px;
        transition: transform 0.15s ease, box-shadow 0.15s ease;
    }

    body.view-student-in-courses-student-in-course .btn-bulk-action:hover{
        transform: translateY(-1px);
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    }

    body.view-student-in-courses-student-in-course .modal-icon-wrap{
        width: 40px;
        height: 40px;
        border-radius: 10px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 1.25rem;
    }

    body.view-student-in-courses-student-in-course .modal-icon-wrap.bg-success-subtle{
        background-color: rgba(22, 163, 74, 0.12);
    }

    body.view-student-in-courses-student-in-course .modal-icon-wrap.bg-warning-subtle{
        background-color: rgba(234, 179, 8, 0.15);
    }

    body.view-student-in-courses-student-in-course .modal-icon-wrap.bg-danger-subtle{
        background-color: rgba(220, 38, 38, 0.12);
    }

    body.view-student-in-courses-student-in-course .card{
        margin: 0 0 20px 0;
    }

    body.view-student-in-courses-student-in-course .main-title{
        letter-spacing: 0.02em;
    }

    body.view-student-in-courses-student-in-course .sub-title{
        font-size: 0.95rem;
    }

    body.view-student-in-courses-student-in-course .course-meta{
        font-size: 0.9rem;
    }

    body.view-student-in-courses-student-in-course .course-meta .label{
        font-weight: 600;
        color: #374151;
    }

    body.view-student-in-courses-student-in-course .course-meta .value{
        color: #111827;
    }

    body.view-student-in-courses-student-in-course .info-chip{
        padding: 6px 10px;
        border-radius: 999px;
        background-color: #f3f4ff;
        border: 1px solid rgba(129, 140, 248, 0.25);
        margin-top: 4px;
    }

    body.view-student-in-courses-student-in-course .info-chip i{
        font-size: 1rem;
        color: #4f46e5;
    }

    body.view-student-in-courses-student-in-course .legend-container{
        background-color: #f9fafb;
        border-radius: 8px;
        padding: 6px 12px;
    }

    body.view-student-in-courses-student-in-course .legend-item{
        display: inline-flex;
        align-items: center;
        gap: 6px;
        white-space: nowrap;
    }

    body.view-student-in-courses-student-in-course .legend-label{
        color: #6b7280;
    }

    body.view-student-in-courses-student-in-course .table tbody tr:hover{
        background-color: #f8fafc;
    }

    body.view-student-in-courses-student-in-course .clickable-row{
        cursor: pointer;
        transition: background-color 0.15s ease;
    }

    body.view-student-in-courses-student-in-course .clickable-row:hover{
        background-color: #f1f5f9 !important;
    }

    body.view-student-in-courses-student-in-course .student-name-cell .student-subtext{
        font-size: 0.75rem;
    }

    body.view-student-in-courses-student-in-course .status-badge{
        border-radius: 999px;
        padding: 0.35rem 0.7rem;
        font-size: 0.78rem;
        font-weight: 600;
    }

    body.view-student-in-courses-student-in-course .status-approved{
        background-color: #ecfdf3;
        color: #166534;
        border: 1px solid rgba(22, 101, 52, 0.12);
    }

    body.view-student-in-courses-student-in-course .status-pending{
        background-color: #fef9c3;
        color: #854d0e;
        border: 1px solid rgba(133, 77, 14, 0.18);
    }

    body.view-student-in-courses-student-in-course .status-rejected{
        background-color: #fee2e2;
        color: #991b1b;
        border: 1px solid rgba(153, 27, 27, 0.18);
    }

    body.view-student-in-courses-student-in-course .status-withdraw{
        background-color: #e5e7eb;
        color: #111827;
        border: 1px solid rgba(17, 24, 39, 0.16);
    }

    body.view-student-in-courses-student-in-course .status-excuse{
        background-color: #dbeafe;
        color: #1d4ed8;
        border: 1px solid rgba(37, 99, 235, 0.25);
    }

    body.view-student-in-courses-student-in-course .status-forbidden{
        background-color: #fef2f2;
        color: #b91c1c;
        border: 1px solid rgba(185, 28, 28, 0.35);
    }

    body.view-student-in-courses-student-in-course .course-status-pill{
        border-radius: 999px;
        padding: 0.35rem 0.9rem;
        font-size: 0.78rem;
        font-weight: 600;
        min-width: 120px;
        display: inline-flex;
        justify-content: center;
        align-items: center;
    }

    body.view-student-in-courses-student-in-course .empty-row{
        background-color: #f9fafb;
    }

    @media (max-width: 768px) {
        body.view-student-in-courses-student-in-course .legend-container{
            border-radius: 10px;
            justify-content: center;
        }

        body.view-student-in-courses-student-in-course .header-summary-card, body.view-student-in-courses-student-in-course .students-card{
            border-radius: 10px;
        }
    }

/* view-student-receipt-upload */
/* source: student/receipt-upload.php */
/* Default button size */
body.view-student-receipt-upload #takePhoto{
        font-size: 1.2rem;
        padding: 0.4rem 1rem;
    }

    /* Smaller button on small/mobile screens */
    @media (max-width: 576px) {
        body.view-student-receipt-upload #takePhoto{
            font-size: 0.9rem;
            padding: 0.3rem 0.6rem;
        }
    }

/* view-student-registration-form */
/* source: student_registration/form.php */
/* Hide sidebar */
body.view-student-registration-form .sidebar-wrapper{
    display: none !important;
}/* Adjust main content when sidebar is hidden */
body.view-student-registration-form .page-wrapper{
    margin-right: 0 !important;
    height: auto !important;
    min-height: 100vh;
    padding: 20px;
}/* Ensure the content area is scrollable */
body.view-student-registration-form .page-content-wrapper{
    height: auto !important;
    overflow: visible !important;
}

body.view-student-registration-form .page-content{
    height: auto !important;
    overflow: visible !important;
    padding: 20px;
}/* Payment Notice Styles */
body.view-student-registration-form .payment-notice{
    background-color: #f8f9fa;
    border: 2px solid #0d6efd;
    border-radius: 8px;
    padding: 20px;
    margin-bottom: 30px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

body.view-student-registration-form .payment-notice h4{
    color: #0d6efd;
    margin-bottom: 15px;
    font-weight: bold;
}

body.view-student-registration-form .payment-notice p{
    font-size: 1.1rem;
    line-height: 1.6;
    margin-bottom: 0;
}

body.view-student-registration-form .payment-amount{
    color: #dc3545;
    font-weight: bold;
}/* Additional styles remain unchanged */
body.view-student-registration-form .card{
    border: none;
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
    margin-bottom: 1.5rem;
}

body.view-student-registration-form .card-header{
    border-bottom: 1px solid rgba(0, 0, 0, 0.125);
}

body.view-student-registration-form .form-control:focus, body.view-student-registration-form .form-select:focus{
    border-color: #80bdff;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

body.view-student-registration-form .input-group-text{
    background-color: #f8f9fa;
}

body.view-student-registration-form .btn-primary{
    transition: all 0.3s ease;
}

body.view-student-registration-form .btn-primary:hover{
    transform: translateY(-2px);
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
}

body.view-student-registration-form .invalid-feedback{
    font-size: 0.875rem;
}

body.view-student-registration-form .form-text{
    color: #6c757d;
    font-size: 0.875rem;
}


body.view-student-registration-form .payment-link{
    color: #0d6efd;
    text-decoration: none;
    font-weight: bold;
    padding: 2px 8px;
    display: inline-block;
    transition: all 0.3s ease;
}
body.view-student-registration-form .payment-link:hover{
    background-color: #e7f1ff;
    border-radius: 4px;
    transform: translateY(-1px);
}
body.view-student-registration-form .payment-link i{
    margin-left: 5px;
}

/* view-student-registration-report */
/* source: student_registration/report.php */
body.view-student-registration-report .table-hover tbody tr:hover{
    background-color: rgba(0,0,0,.075);
    cursor: pointer;
}
body.view-student-registration-report .preview-container{
    max-height: 300px;
    overflow: hidden;
}
body.view-student-registration-report .preview-container img, body.view-student-registration-report .preview-container embed{
    max-width: 100%;
    max-height: 300px;
    object-fit: contain;
}/* Make the table more compact for better readability */
body.view-student-registration-report .table td, body.view-student-registration-report .table th{
    padding: 0.5rem;
    font-size: 0.9rem;
}/* Ensure long text wraps properly */
body.view-student-registration-report .table td{
    white-space: normal;
    word-wrap: break-word;
    max-width: 200px;
}/* Add styles for password modal */
body.view-student-registration-report #passwordModal{
    direction: rtl;
}
body.view-student-registration-report #passwordModal .modal-header{
    border-bottom: 2px solid #0d6efd;
    background-color: #f8f9fa;
}
body.view-student-registration-report #passwordModal .modal-footer{
    border-top: none;
}
body.view-student-registration-report #passwordError{
    margin-bottom: 1rem;
}
body.view-student-registration-report .preview-image{
    max-height: 300px;
    width: auto;
    object-fit: contain;
}
body.view-student-registration-report .pdf-container{
    height: 300px;
    overflow: hidden;
    border: 1px solid #dee2e6;
    border-radius: 4px;
}
body.view-student-registration-report .modal-body{
    max-height: calc(100vh - 200px);
    overflow-y: auto;
}
body.view-student-registration-report .btn-group .btn{
    margin-right: 2px;
}
body.view-student-registration-report .btn-group .btn:last-child{
    margin-right: 0;
}
body.view-student-registration-report .table td{
    vertical-align: middle;
}

/* view-student-semester-works */
/* source: student/semester_works.php */
/* Base Typography - Easier on the eyes */
html:has(body.view-student-semester-works){
        --font-size-base: 16px;
        --font-size-small: 14px;
        --font-size-medium: 18px;
        --font-size-large: 22px;
        --font-size-xlarge: 28px;
        --line-height-base: 1.6;
        --spacing-unit: 1rem;
    }

    body.view-student-semester-works{
        font-size: var(--font-size-base);
        line-height: var(--line-height-base);
    }/* Header Information Card */
body.view-student-semester-works .semester-info-card{
        background: linear-gradient(135deg, #f8f9fa 0%, #ffffff 100%);
    }

    body.view-student-semester-works .info-item{
        display: flex;
        align-items: center;
        gap: var(--spacing-unit);
    }

    body.view-student-semester-works .info-icon{
        width: 50px;
        height: 50px;
        border-radius: 12px;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-shrink: 0;
        color: white;
    }

    body.view-student-semester-works .info-icon ion-icon{
        font-size: 1.5rem;
    }

    body.view-student-semester-works .info-content{
        flex: 1;
        min-width: 0;
    }

    body.view-student-semester-works .info-label{
        font-size: var(--font-size-small);
        color: #6c757d;
        margin-bottom: 4px;
        font-weight: 500;
    }

    body.view-student-semester-works .info-value{
        font-size: var(--font-size-medium);
        font-weight: 600;
        color: #212529;
        line-height: 1.4;
    }/* Page Header */
body.view-student-semester-works .page-header{
        margin-bottom: 2rem;
    }

    body.view-student-semester-works .page-title{
        font-size: var(--font-size-xlarge);
        font-weight: 700;
        color: #212529;
        margin: 0;
        display: flex;
        align-items: center;
    }

    body.view-student-semester-works .page-title ion-icon{
        font-size: 2rem;
        color: var(--bs-primary);
    }/* Empty State */
body.view-student-semester-works .empty-state{
        background: #f8f9fa;
    }

    body.view-student-semester-works .empty-icon{
        font-size: 4.5rem;
        color: #dee2e6;
    }

    body.view-student-semester-works .empty-title{
        font-size: var(--font-size-large);
        color: #6c757d;
        margin-top: 1rem;
        font-weight: 600;
    }

    body.view-student-semester-works .empty-text{
        font-size: var(--font-size-base);
        color: #868e96;
        margin-top: 0.5rem;
    }/* Course Card */
body.view-student-semester-works .course-card{
        border-radius: 16px;
        overflow: hidden;
        transition: all 0.3s ease;
    }

    body.view-student-semester-works .course-card:hover{
        transform: translateY(-4px);
        box-shadow: 0 0.75rem 1.5rem rgba(0, 0, 0, 0.12) !important;
    }/* Total Marks */
body.view-student-semester-works .total-marks{
        text-align: right;
    }

    body.view-student-semester-works .total-label{
        font-size: var(--font-size-small);
        color: #6c757d;
        margin-bottom: 0.5rem;
        font-weight: 500;
    }

    body.view-student-semester-works .total-value{
        font-size: var(--font-size-xlarge);
        font-weight: 700;
        margin-bottom: 0.25rem;
    }

    body.view-student-semester-works .total-value .obtained{
        color: var(--bs-primary);
    }

    body.view-student-semester-works .total-value .separator{
        color: #adb5bd;
        margin: 0 0.5rem;
    }

    body.view-student-semester-works .total-value .max{
        color: #6c757d;
    }

    body.view-student-semester-works .total-percentage{
        font-size: var(--font-size-small);
        color: #6c757d;
    }

    body.view-student-semester-works .total-percentage strong{
        color: var(--bs-primary);
    }/* Course Header */
body.view-student-semester-works .course-header{
        background: white;
        border-bottom: 1px solid #e9ecef;
        padding: 1.25rem 1.5rem;
    }

    body.view-student-semester-works .course-title{
        font-size: var(--font-size-large);
        font-weight: 700;
        color: #212529;
        margin: 0 0 0.75rem 0;
        display: flex;
        align-items: center;
    }

    body.view-student-semester-works .course-title ion-icon{
        color: var(--bs-primary);
        font-size: 1.5rem;
    }

    body.view-student-semester-works .course-badges{
        display: flex;
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    body.view-student-semester-works .course-code-badge, body.view-student-semester-works .credit-hours-badge, body.view-student-semester-works .level-badge{
        padding: 0.5rem 0.75rem;
        font-size: var(--font-size-small);
        font-weight: 600;
        border-radius: 8px;
        border: 1px solid;
    }

    body.view-student-semester-works .course-code-badge{
        background: #f8f9fa;
        color: #212529;
        border-color: #dee2e6;
    }

    body.view-student-semester-works .credit-hours-badge{
        background: rgba(var(--bs-info-rgb), 0.1);
        color: var(--bs-info);
        border-color: rgba(var(--bs-info-rgb), 0.3);
    }

    body.view-student-semester-works .level-badge{
        background: rgba(var(--bs-warning-rgb), 0.1);
        color: var(--bs-warning);
        border-color: rgba(var(--bs-warning-rgb), 0.3);
    }/* Course Status */
body.view-student-semester-works .course-status{
        display: flex;
        flex-direction: column;
        gap: 0.75rem;
    }

    body.view-student-semester-works .status-item{
        text-align: right;
    }

    body.view-student-semester-works .status-label{
        font-size: var(--font-size-small);
        color: #6c757d;
        margin-bottom: 0.25rem;
        font-weight: 500;
    }

    body.view-student-semester-works .status-badge, body.view-student-semester-works .student-status-badge{
        padding: 0.5rem 0.75rem;
        font-size: var(--font-size-small);
        font-weight: 600;
        border-radius: 8px;
    }

    body.view-student-semester-works .status-badge.status-completed{
        background: var(--bs-success);
        color: white;
    }

    body.view-student-semester-works .status-badge.status-failed{
        background: var(--bs-danger);
        color: white;
    }

    body.view-student-semester-works .student-status-badge{
        background: var(--bs-info);
        color: white;
    }/* Subgrades Table */
body.view-student-semester-works .subgrades-table{
        margin: 0;
        font-size: var(--font-size-base);
    }

    body.view-student-semester-works .subgrades-table thead th{
        background: #f8f9fa;
        border-bottom: 2px solid #dee2e6;
        font-size: var(--font-size-medium);
        font-weight: 700;
        color: #495057;
        padding: 1rem;
        text-align: right;
    }

    body.view-student-semester-works .subgrades-table tbody td{
        padding: 1.25rem 1rem;
        vertical-align: middle;
        border-bottom: 1px solid #f1f3f5;
    }

    body.view-student-semester-works .subgrades-table tbody tr:hover{
        background: #f8f9fa;
        transition: background 0.2s ease;
    }

    body.view-student-semester-works .grade-type-cell{
        display: flex;
        align-items: center;
        gap: 0.75rem;
    }

    body.view-student-semester-works .grade-icon{
        width: 40px;
        height: 40px;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-shrink: 0;
    }

    body.view-student-semester-works .grade-icon.grade-success{
        background: rgba(var(--bs-success-rgb), 0.15);
        color: var(--bs-success);
    }

    body.view-student-semester-works .grade-icon.grade-warning{
        background: rgba(var(--bs-warning-rgb), 0.15);
        color: var(--bs-warning);
    }

    body.view-student-semester-works .grade-icon.grade-danger{
        background: rgba(var(--bs-danger-rgb), 0.15);
        color: var(--bs-danger);
    }

    body.view-student-semester-works .grade-icon ion-icon{
        font-size: 1.25rem;
    }

    body.view-student-semester-works .grade-type-name{
        font-size: var(--font-size-medium);
        font-weight: 600;
        color: #212529;
    }

    body.view-student-semester-works .obtained-mark{
        font-size: var(--font-size-large);
        font-weight: 700;
        display: inline-block;
    }

    body.view-student-semester-works .obtained-mark.mark-success{
        color: var(--bs-success);
    }

    body.view-student-semester-works .obtained-mark.mark-warning{
        color: var(--bs-warning);
    }

    body.view-student-semester-works .obtained-mark.mark-danger{
        color: var(--bs-danger);
    }

    body.view-student-semester-works .max-mark{
        font-size: var(--font-size-base);
        font-weight: 600;
        color: #6c757d;
    }/* Progress Bar */
body.view-student-semester-works .progress-container{
        display: flex;
        align-items: center;
        justify-content: center;
    }

    body.view-student-semester-works .progress-bar-wrapper{
        width: 100%;
        max-width: 200px;
        height: 32px;
        border-radius: 16px;
        background: #e9ecef;
        overflow: hidden;
        position: relative;
        box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1);
    }

    body.view-student-semester-works .progress-bar-wrapper.progress-success .progress-bar-fill{
        background: var(--bs-success);
    }

    body.view-student-semester-works .progress-bar-wrapper.progress-warning .progress-bar-fill{
        background: var(--bs-warning);
    }

    body.view-student-semester-works .progress-bar-wrapper.progress-danger .progress-bar-fill{
        background: var(--bs-danger);
    }

    body.view-student-semester-works .progress-bar-fill{
        height: 100%;
        border-radius: 16px;
        display: flex;
        align-items: center;
        justify-content: center;
        transition: width 0.6s ease;
        min-width: 50px;
    }

    body.view-student-semester-works .progress-text{
        color: white;
        font-size: var(--font-size-small);
        font-weight: 700;
        text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
    }/* Empty Subgrades */
body.view-student-semester-works .empty-subgrades{
        text-align: center;
        padding: 3rem 1rem;
    }

    body.view-student-semester-works .empty-subgrades .empty-icon{
        font-size: 3rem;
        color: #dee2e6;
        margin-bottom: 1rem;
    }

    body.view-student-semester-works .empty-message{
        font-size: var(--font-size-base);
        color: #868e96;
        margin: 0;
    }

    /* Responsive Design */
    @media (max-width: 768px) {
        html:has(body.view-student-semester-works){
            --font-size-base: 15px;
            --font-size-small: 13px;
            --font-size-medium: 16px;
            --font-size-large: 20px;
            --font-size-xlarge: 24px;
        }

        body.view-student-semester-works .info-item{
            flex-direction: column;
            text-align: center;
        }

        body.view-student-semester-works .student-info{
            flex-direction: column;
            text-align: center;
        }

        body.view-student-semester-works .total-marks{
            text-align: center;
            margin-top: 1rem;
        }

        body.view-student-semester-works .course-status{
            margin-top: 1rem;
        }

        body.view-student-semester-works .subgrades-table{
            font-size: var(--font-size-small);
        }

        body.view-student-semester-works .subgrades-table thead th, body.view-student-semester-works .subgrades-table tbody td{
            padding: 0.75rem 0.5rem;
        }
    }

/* view-ticket-updates-index */
/* source: ticket_updates/index.php */
body.view-ticket-updates-index .table-row{
        cursor: pointer;
        transition: background-color 0.3s;
    }

    html.light-theme body.view-ticket-updates-index .table-row:hover{
        background-color: #f5f5f5 !important;
    }

    html.dark-theme body.view-ticket-updates-index .table-row:hover{
        background-color: #2d2d2d !important;
    }

/* view-tickets-index */
/* source: tickets/index.php */
body.view-tickets-index .table-row{
        cursor: pointer;
        transition: background-color 0.3s;
    }

    html.light-theme body.view-tickets-index .table-row:hover{
        background-color: #f5f5f5 !important;
    }

    html.dark-theme body.view-tickets-index .table-row:hover{
        background-color: #2d2d2d !important;
    }

/* Inline styles moved to classes */
.uh-0570bff1 { width: 140px; height: 140px; display: none; }
.uh-05cd8bdb { min-height: 0; }
.uh-05e6825f { background: #e7f3ff; border-left: 4px solid #0dcaf0; }
.uh-067d8a82 { border: none; }
.uh-0781d45a { color: #721c24; font-size: 1.1em; line-height: 1.6; }
.uh-09d3ee53 { font-weight: 700; margin-bottom: 10px; }
.uh-0c2f5caa { width: 100%; height: 100px; border: none; }
.uh-0c84f65a { line-height: 1.4; }
.uh-0cd28ce9 { display:inline; }
.uh-0d90ae70 { height: 100%; overflow: hidden scroll; }
.uh-0e465bc6 { display: flex; justify-content: space-between; align-items: flex-start; page-break-inside: avoid; }
.uh-0eeab5d4 { background: rgba(59, 130, 246, 0.1); border-color: rgba(59, 130, 246, 0.3); }
.uh-0fe69e9f { font-size: 1rem; line-height: 1.6; color: #333; }
.uh-0ff02334 { width: 3.5rem; height: 3.5rem; }
.uh-117a20a3 { direction: ltr; text-align: right; }
.uh-12482f41 { max-width: 460px; }
.uh-12820f85 { font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; }
.uh-1310f9a6 { padding: 10px 20px; font-size: 1.1em; }
.uh-1459208f { font-size: 4rem; color: #ccc; }
.uh-1491d206 { display: none; width: min(1200px, 100%); background: #fff; padding: 40px; font-family: 'Helvetica', sans-serif; }
.uh-14cc3cd6 { width: 140px; border: none; background: #f9f9f9; border-radius: 12px; }
.uh-1556f917 { font-size: 1.75rem; }
.uh-16c6361c { font-size: 2.2rem; }
.uh-16f9ab64 { max-width: 32rem; }
.uh-18cb27c8 { display: flex; align-items: center; justify-content: space-between; border-bottom: 2px solid #eee; padding-bottom: 20px; margin-bottom: 30px; text-align: left; }
.uh-1902e84f { font-size: 1.1rem; }
.uh-1b3b3079 { width: 80px; }
.uh-1d7c15c8 { width: 100%; max-width: 500px; height: 350px; border-radius: 20px; }
.uh-1ee99b38 { font-size: 3rem; color: #dc3545; }
.uh-22421a32 { color: #856404; }
.uh-22b62ca4 { font-size: 0.8rem; }
.uh-2404fa83 { margin-right: 0!important; }
.uh-245d505c { font-size: 1.3em; font-weight: 700; color: #28a745; }
.uh-27895aa4 { font-size: 0.9rem; }
.uh-2931fcd6 { width: 11%; }
.uh-2b9586f0 { background: linear-gradient(135deg, #1e3a8a 0%, #3b82f6 100%); color: white; }
.uh-2b9dc754 { font-size: 2rem; }
.uh-2c03481d { padding: 12px; border: 1px solid #ddd; font-weight: bold; }
.uh-2cd24275 { height: 6px; }
.uh-2cd52ab9 { min-width: 0; }
.uh-2ddb1423 { height: 844px; transform: translate3d(0px, 0px, 0px); display: block; }
.uh-2ddea8da { text-align: center; font-size: 1.5rem; margin-bottom: 20px; color: #333; }
.uh-2e0eaa4c { width: 48%; text-align: center; height: 550px; }
.uh-2e5bb424 { direction: rtl; font-size: 1.15rem; line-height: 2; }
.uh-2eafc41d { color: #055160; margin-bottom: 10px; }
.uh-310a2ba0 { white-space: pre-wrap; word-break: break-word; }
.uh-315ffebd { background: rgba(245, 158, 11, 0.08); }
.uh-31b59515 { background: linear-gradient(135deg, #1e3a8a 0%, #3b82f6 100%); color: white; border: none; }
.uh-32be161c { gap: 150px; }
.uh-33c0b6a6 { color: #856404; font-size: 1em; }
.uh-33fbf712 { max-width: 150px; margin-bottom: 20px; }
.uh-3521816f { font-size: 1.375rem; color: #333; margin: 5px 0 0 40px; }
.uh-35868dad { font-size: 1.125rem; }
.uh-36534ac1 { color: #FF6384; font-weight: bold; }
.uh-36f18c59 { height: 20px; }
.uh-38382c5f { width: 25%; }
.uh-38f47d5b { width: 100%; border-collapse: collapse; text-align: center; }
.uh-3ad2f3b5 { overflow-x: auto; overflow-y: auto; max-height: 600px; -webkit-overflow-scrolling: touch; }
.uh-3b30d038 { width:10%; }
.uh-3c57ffd0 { height: 100% !important; }
.uh-3d795ddd { min-width: 150px; flex: 1 1 0; }
.uh-3f013c34 { max-height: 200px; overflow-y: auto; border: 1px solid #dee2e6; border-radius: 0.375rem; padding: 10px; background-color: #f8f9fa; }
.uh-401b8c8d { width: 70px; height: 70px; object-fit: contain; }
.uh-4117cb2d { white-space:pre-wrap; direction:ltr; }
.uh-411be303 { max-height: 300px; overflow-y: auto; border: 1px solid #dee2e6; border-radius: 0.375rem; padding: 10px; background-color: #f8f9fa; }
.uh-42acb60e { font-weight: 700; }
.uh-444c6cf9 { font-size: 1.4rem; }
.uh-44c26a8e { display:inline-block; }
.uh-45c0cb32 { height: 100px; object-fit: cover; border-radius: 6px; }
.uh-4824bc64 { font-size: 4rem; }
.uh-4828ccde { font-size: 1.2rem; z-index: 10; }
.uh-495a9d0e { background-color: rgba(255, 171, 77, 0.2); border-top: 2px solid #ffab4d; }
.uh-4bfdb1d7 { font-size: 3.5rem; }
.uh-4f1925a8 { font-size: 1.125rem; }
.uh-50cc61ca { font-size: 1.125rem; padding: 20px; margin: 20px 0; border: 3px solid #0dcaf0; border-radius: 10px; background: linear-gradient(135deg, #d1ecf1 0%, #bee5eb 100%); box-shadow: 0 4px 15px rgba(13, 202, 240, 0.3); }
.uh-51acadd6 { border-bottom: 2px solid #dc3545; color: #dc3545; }
.uh-524d86c0 { padding: 12px; border: 1px solid #ddd; }
.uh-5328c7a9 { width: 150px; border: none; background: linear-gradient(to bottom right, #ffe5e5, #ffffff); border-radius: 16px; }
.uh-53c980ba { padding-left: 1.2rem; }
.uh-56c45368 { font-size: 1.5rem; line-height: 1.4; }
.uh-57a92094 { background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: white; }
.uh-59f7bcd2 { border-radius: 20px; }
.uh-5b4e0ffe { width: 32%; }
.uh-5b8dee62 { min-height: 50vh; }
.uh-5cb57137 { width: 150px; }
.uh-5ddf999d { width: 100px; height: 100px; margin-bottom: 20px; background: white; padding: 10px; border-radius: 50%; box-shadow: 0 4px 10px rgba(0,0,0,0.2); }
.uh-5f2b98ab { border-bottom: 2px solid #28a745; color: #28a745; }
.uh-5f3eb38a { width: 50px; }
.uh-6083efe4 { max-width: 200px; max-height: 250px; object-fit: cover; }
.uh-636ffb18 { font-size: 1.5rem; margin-right: 10px; }
.uh-64279d5c { border-top: 2px dashed #dee2e6; }
.uh-64c9f496 { height: 80vh; }
.uh-65410350 { background: rgba(59, 130, 246, 0.15); }
.uh-664f0be5 { width:44px; height:44px; background:#e9f7ef; border:1px solid #d1e7dd; }
.uh-6c28d089 { font-size: 1rem; }
.uh-6c98a1d6 { min-width: min(220px, 100%); }
.uh-713b7480 { height: 200px; width: 200px; object-fit: contain; }
.uh-72322206 { width: 50px; height: 50px; }
.uh-73fc9c37 { padding: 40px; }
.uh-740d4da2 { height: 200px; width: 200px; object-fit: contain; }
.uh-7545f83b { font-size: 0.95rem; flex: 1; }
.uh-756e2667 { background-color: #f8f9fa; cursor: not-allowed; }
.uh-75aa2d66 { background: #e7f3ff; border-left: 4px solid #0dcaf0; border-radius: 8px; }
.uh-76085d3f { font-size: 1.25rem; }
.uh-76ed9a07 { border-radius: 8px; }
.uh-77f9e572 { font-size: 1.3em; font-weight: 700; color: #dc3545; }
.uh-78d7af8b { font-weight: bold; }
.uh-7a459431 { font-size: 0.75rem; }
.uh-7ccaf21e { width: 14%; }
.uh-7df609ce { direction: ltr; }
.uh-7f09016c { font-size: 1.5rem; }
.uh-80ffd295 { width:110px; }
.uh-81cbf87b { font-family: monospace; font-size: 1.1em; font-weight: 600; }
.uh-82675c3a { font-size: 3rem; color: #0d6efd; }
.uh-85b7a6be { width: 20%; }
.uh-85bfec76 { color: #36A2EB; font-weight: bold; }
.uh-86c9cefd { font-size: 4rem; color: #667eea; }
.uh-873f2980 { width: 10%; }
.uh-875d7024 { background: linear-gradient(135deg, #1e3c72 0%, #2a5298 100%); }
.uh-87fc42cf { width: 0px; display: none; }
.uh-8847c6ef {
  font-size: 1.125rem;
  max-width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.uh-8a461919 { visibility: hidden; }
.uh-8a55c62a { pointer-events: none; opacity: 0.5; }
.uh-8ae57e88 { font-size: 3rem; }
.uh-8c22ea69 { font-size: 2.5rem; }
.uh-8c4f130f { max-height: 400px; overflow-y:auto; }
.uh-8c975d0f { width: 48%; text-align: center; }
.uh-8d1f4ab8 { max-width: 200px; }
.uh-8e7983af { background: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%); }
.uh-8e9223e0 { width: 4rem; height: 4rem; }
.uh-905fb9b9 { color: #0056b3; }
.uh-913fd04b { background: linear-gradient(135deg, #43e97b 0%, #38f9d7 100%); }
.uh-933a8ef2 { font-size: 0.85rem; }
.uh-938d2438 { padding: 0px; }
.uh-945c5873 { width: 70px; height: 70px; }
.uh-94b03815 { font-size: 1.25rem; color: green; }
.uh-94c7e201 { height: 100px; }
.uh-96247054 { background-color: #f2f2f2; }
.uh-98c7c511 { max-width: 280px; word-break: break-word; }
.uh-99b23121 { font-size: 1.2em; }
.uh-9a108af5 { background: rgba(59, 130, 246, 0.08); }
.uh-9cbe2d98 { width: 56px; height: 56px; object-fit: contain; background: rgba(12, 76, 160, 0.06); }
.uh-9d7c6eb5 { background: #f8d7da; border-left: 5px solid #dc3545; border-radius: 8px; padding: 20px; }
.uh-9d7e4e7b { width: 80px; height: 80px; }
.uh-9fdb8f8c { font-weight: bold; font-size: 1.0625rem; }
.uh-a17c96ca { object-fit: cover; width: 100%; height: 200px; }
.uh-a2748fd7 { margin: 0px; }
.uh-a3201a96 { font-size: clamp(1.15rem, 2vw, 1.45rem); line-height: 1.6; }
.uh-a3b0d71c { color: #721c24; font-weight: 700; }
.uh-a4a90c7f { max-width: 150px; }
.uh-a659372d { width: 15%; }
.uh-a8dd350b { font-size: 4rem; color: #cc0000; }
.uh-a9351770 { font-family: monospace; }
.uh-a9cc3f75 { width: 140px; height: 140px; object-fit: cover; }
.uh-abb7d3be { font-size: 4rem; color: #28a745; }
.uh-acd15e3d { font-size: 1.25rem; font-weight: 600; color: #b30000; margin-bottom: 35px; }
.uh-ad86101a { gap: 1.5rem !important; }
.uh-af1d1644 { width:100px; }
.uh-af5bb0af { font-weight: 500; }
.uh-afc57644 { width: 30%; }
.uh-b246dcf6 { color: #d9534f; font-weight: bold; }
.uh-b62ee557 { margin-top: 15px; }
.uh-b8f3cb30 { display: none; max-height: 200px; overflow-y: auto; position: absolute; z-index: 1000; width: 100%; }
.uh-b8f6a1c3 { font-size: clamp(1.6rem, 2.4vw, 2.2rem); }
.uh-ba04dcd5 { font-size: 1rem; }
.uh-bc914bea { width: 50px; height: 60px; object-fit: cover; cursor: pointer; }
.uh-bcbc3d63 { font-family: monospace; background: #f8f9fa; padding: 5px 10px; border-radius: 4px; }
.uh-bd092b11 { letter-spacing: 0.05em; }
.uh-bd847691 { margin-right: 0; !important; }
.uh-bd84b305 { width:100%; max-width:480px; height:480px; display:block; margin:0 auto; }
.uh-be04725d { visibility: visible; }
.uh-bf73352c { font-size: 1.8rem; margin-top: 10px; }
.uh-bf952bd8 { margin-bottom: 40px; }
.uh-bfa477d0 { border-width: 4px !important; border-radius: 12px; font-family: 'Arial', sans-serif; }
.uh-c10abe84 { font-size: 1.375rem; color:#198754; }
.uh-c1beb432 { color: #856404; margin-bottom: 12px; font-weight: 700; }
.uh-c36b3d6a { width: 250px; }
.uh-c384f655 { font-size: 4rem; color: #dc3545; }
.uh-c4e3967b { font-size: 0.85em; }
.uh-c5fd0312 { background-color: #e8f5e8; }
.uh-c704c176 { bottom: 20px; left: 20px; z-index: 1000; }
.uh-c8be1ccb { display:none; }
.uh-c96dda9e { font-size: 0.75rem; max-width: 100%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.uh-c9fd7ad0 { font-size: 1.5rem; margin-bottom: 20px; color: #333; }
.uh-cad980f4 { width:100%; }
.uh-cb76aef1 { background: linear-gradient(135deg, #1e3c72 0%, #2a5298 50%, #4b79a1 100%); box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15); }
.uh-cdabf8c1 { font-size: 1.5rem; }
.uh-cec9e9ea { min-width: 120px; }
.uh-d03a508e { padding-right:20px; }
.uh-d1879dac { max-width: min(100%, 22rem); }
.uh-d327be37 { width: 38%; }
.uh-d33b55df { overflow-y: auto; scrollbar-width: none; -ms-overflow-style: none; }
.uh-d3e67534 { font-size: 5rem; }
.uh-d4260d2a { width: 60px; }
.uh-d6d08ba1 { max-width: 120px; height: auto; }
.uh-d7056bae { font-size: 5rem; color: #6c757d; }
.uh-d7fcbeaf { left: 0px; bottom: 0px; }
.uh-db3a526c { width: 18%; }
.uh-db6e0e10 { overflow-y: auto; }
.uh-dc271cfe { max-width: 600px; }
.uh-dcd99783 { width: 48px; height: 48px; }
.uh-ddf69972 { font-size: 5rem; color: #dc3545; }
.uh-de12a0e5 { width: auto; height: 1117px; }
.uh-dec25641 { font-size: 7.5rem; color: #cc0000; margin-bottom: 30px; }
.uh-df576810 { width: 12%; }
.uh-df67104f { font-size: 0.875rem; }
.uh-e0fc47fb { width: 100%; min-width: min(1400px, 100%); }
.uh-e1fb4b85 { font-size: 0.95rem; }
.uh-e4f1a204 { height: 400px; }
.uh-e59d3d5c { white-space: pre-wrap; font-family: inherit; }
.uh-e5e67863 { color: #666; }
.uh-e726627e { background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); }
.uh-e8371c6d { min-height: 60vh; height: 100%; }
.uh-e87d7b06 { font-size: 0.9em; }
.uh-ea362322 { background: linear-gradient(135deg, #f093fb 0%, #f5576c 100%); }
.uh-eab30e6b { font-size: 1em; padding: 8px 15px; }
.uh-eadba884 { font-size: 2.625rem; }
.uh-ebc11c2e { font-size: 2rem; color: #003366; margin: 0; }
.uh-ec060bac { width: 200px; }
.uh-ec5cbdf8 { width: 100px; height: 100px; }
.uh-eef7eae8 { max-width: 100%; }
.uh-eefff2f8 { font-size: 0.8125rem; }
.uh-efb9415d { margin-right: 260px; }
.uh-f0d3a705 { width:100%; max-width:640px; height:480px; display:block; margin:0 auto; }
.uh-f3074581 { box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08); }
.uh-f697becd { font-size: 1.8rem; }
.uh-f7ef6e62 { font-size: 1.15rem; line-height: 1.7; color: #333; }
.uh-fb8271b3 { color: #055160; }

/* Dark theme overrides for extracted light surfaces */
html.dark-theme body.view-academics-index .card-body .form-label { color: var(--uh-text); }
html.dark-theme body.view-academics-index .card-footer { background-color: var(--uh-card); }
html.dark-theme body.view-admin-student-level-corrections-create #academic_year[readonly] { background-color: var(--uh-card); border-color: var(--uh-border); color: var(--uh-text) !important; }
html.dark-theme body.view-admin-student-level-corrections-create .container-fluid, html.dark-theme body.view-admin-student-level-corrections-create .container-fluid * { color: var(--uh-text) !important; }
html.dark-theme body.view-admin-student-level-corrections-create .table, html.dark-theme body.view-admin-student-level-corrections-create .table td, html.dark-theme body.view-admin-student-level-corrections-create .table th { color: var(--uh-text) !important; }
html.dark-theme body.view-admin-student-level-corrections-create .form-control, html.dark-theme body.view-admin-student-level-corrections-create .form-label, html.dark-theme body.view-admin-student-level-corrections-create .form-text { color: var(--uh-text) !important; }
html.dark-theme body.view-admin-student-level-corrections-create .btn { color: var(--uh-text) !important; }
html.dark-theme body.view-admin-student-level-corrections-edit .container-fluid, html.dark-theme body.view-admin-student-level-corrections-edit .container-fluid * { color: var(--uh-text) !important; }
html.dark-theme body.view-admin-student-level-corrections-edit .table, html.dark-theme body.view-admin-student-level-corrections-edit .table td, html.dark-theme body.view-admin-student-level-corrections-edit .table th { color: var(--uh-text) !important; }
html.dark-theme body.view-admin-student-level-corrections-edit .form-control, html.dark-theme body.view-admin-student-level-corrections-edit .form-label, html.dark-theme body.view-admin-student-level-corrections-edit .form-text { color: var(--uh-text) !important; }
html.dark-theme body.view-admin-student-level-corrections-edit .btn { color: var(--uh-text) !important; }
html.dark-theme body.view-admin-student-level-corrections-index .container-fluid, html.dark-theme body.view-admin-student-level-corrections-index .container-fluid * { color: var(--uh-text) !important; }
html.dark-theme body.view-admin-student-level-corrections-index .table, html.dark-theme body.view-admin-student-level-corrections-index .table td, html.dark-theme body.view-admin-student-level-corrections-index .table th { color: var(--uh-text) !important; }
html.dark-theme body.view-admin-student-level-corrections-index .form-control, html.dark-theme body.view-admin-student-level-corrections-index .form-label, html.dark-theme body.view-admin-student-level-corrections-index .form-text { color: var(--uh-text) !important; }
html.dark-theme body.view-admin-student-level-corrections-index .btn { color: var(--uh-text) !important; }
html.dark-theme body.view-attendance-academic-info .scan-fullscreen-content { background-color: var(--uh-card); background-image: none; color: var(--uh-text); }
html.dark-theme body.view-attendance-academic-info .scan-fullscreen-header { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-attendance-academic-info .scan-fullscreen-subtitle { color: var(--uh-muted); }
html.dark-theme body.view-attendance-academic-info .scan-fullscreen-body { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-attendance-academic-info .scan-modal-counter { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-attendance-academic-info .scan-modal-counter-label, html.dark-theme body.view-attendance-academic-info .scan-modal-counter-unit { color: var(--uh-text); }
html.dark-theme body.view-attendance-academic-scan .scan-fullscreen-content { background-color: var(--uh-card); background-image: none; color: var(--uh-text); }
html.dark-theme body.view-attendance-academic-scan .scan-fullscreen-header { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-attendance-academic-scan .scan-fullscreen-subtitle { color: var(--uh-muted); }
html.dark-theme body.view-attendance-academic-scan .scan-fullscreen-body { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-attendance-academic-scan .scan-modal-counter { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-attendance-academic-scan .scan-modal-counter-label, html.dark-theme body.view-attendance-academic-scan .scan-modal-counter-unit { color: var(--uh-text); }
html.dark-theme body.view-attendance-qrcode .fullscreen-overlay { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-attendance-qrcode .fullscreen-qr { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-attendance-student-index .student-attendance-table .course-col { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-attendance-student-index .student-attendance-table tbody tr:nth-of-type(odd) > .course-col.table-active, html.dark-theme body.view-attendance-student-index .student-attendance-table tbody tr:nth-of-type(odd) > .course-col { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-attendance-student-index .student-attendance-table tbody tr:nth-of-type(even) > .course-col { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-attendance-student-index .attendance-cell .muted-created { color: var(--uh-muted); }
html.dark-theme body.view-attendance-student-index .attendance-cell .empty-cell { color: var(--uh-muted); }
html.dark-theme body.view-auth-login .login-container { background-color: var(--uh-card); }
html.dark-theme body.view-auth-login .login-card { background-color: var(--uh-card); }
html.dark-theme body.view-auth-login .login-form-container { background-color: var(--uh-card); }
html.dark-theme body.view-clinic-booking-confirmation .bg-light { background-color: var(--uh-card) !important; }
html.dark-theme body.view-clinic-inventory-store-out-create #student_results, html.dark-theme body.view-clinic-inventory-store-out-create .medicine-results { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-clinic-inventory-store-out-create #student_results .list-group-item:hover, html.dark-theme body.view-clinic-inventory-store-out-create .medicine-results .list-group-item:hover { background-color: var(--uh-card); }
html.dark-theme body.view-control-grades-courses .grade-types-section .table tbody tr:hover { background-color: var(--uh-card); }
html.dark-theme body.view-control-grades-info .table-hover tbody tr:hover { background-color: var(--uh-card); }
html.dark-theme body.view-control-grades-info .card-header { background-color: var(--uh-card); }
html.dark-theme body.view-course-registration-rules-program-rules .faculty-logo-wrapper { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-course-registration-rules-program-rules .info-card { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-course-registration-rules-program-rules .info-text { color: var(--uh-text); }
html.dark-theme body.view-employees-index .card-body .form-label { color: var(--uh-text); }
html.dark-theme body.view-engineering-program-admin-panel .filter-card { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-engineering-program-admin-panel .action-buttons .btn-warning { color: var(--uh-text); }
html.dark-theme body.view-engineering-program-selection-exists .program-choice { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-engineering-program-selection-exists .info-box { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-engineering-program-selection-exists .info-box-text { color: var(--uh-muted); }
html.dark-theme body.view-engineering-program-selection-exists .info-box-number { color: var(--uh-text); }
html.dark-theme body.view-engineering-program-success .program-choice { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-engineering-program-success .info-box { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-engineering-program-success .info-box-text { color: var(--uh-muted); }
html.dark-theme body.view-engineering-program-success .info-box-number { color: var(--uh-text); }
html.dark-theme body.view-engineering-program-view-details .program-choice { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-engineering-program-view-details .info-box { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-engineering-program-view-details .info-box-text { color: var(--uh-muted); }
html.dark-theme body.view-engineering-program-view-details .info-box-number { color: var(--uh-text); }
html.dark-theme body.view-errors-design-result-banned .reasons-list .list-group-item { background-color: var(--uh-card); }
html.dark-theme body.view-errors-html-error-404 .error-message { color: var(--uh-muted); }
html.dark-theme body.view-exam-sheet-index .readonly-field { background-color: var(--uh-card) !important; }
html.dark-theme body.view-general-registration-2025-admin-panel .file-preview { background-color: var(--uh-card); }
html.dark-theme body.view-general-registration-2025-admin-panel .file-preview h6 { color: var(--uh-text); }
html.dark-theme body.view-general-registration-2025-admin-panel .pagination .page-link { color: var(--uh-text); border-color: var(--uh-border); }
html.dark-theme body.view-general-registration-2025-admin-panel .pagination .page-item.disabled .page-link { color: var(--uh-muted); background-color: var(--uh-card); border-color: var(--uh-border); }
html.dark-theme body.view-general-registration-2025-admin-panel .pagination .page-link:hover { border-color: var(--uh-border); color: var(--uh-text); }
html.dark-theme body.view-general-registration-2025-duplicates { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-general-registration-2025-duplicates .main-container { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-general-registration-2025-duplicates .stat-card { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-general-registration-2025-duplicates .stat-label { color: var(--uh-muted); }
html.dark-theme body.view-general-registration-2025-duplicates .table-container { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-general-registration-2025-duplicates .table td { border-color: var(--uh-border); }
html.dark-theme body.view-general-registration-2025-duplicates .duplicate-header { color: var(--uh-text); }
html.dark-theme body.view-general-registration-2025-duplicates .navigation { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-general-registration-2025-duplicates .bulk-actions { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-general-registration-2025-duplicates .attachment-info { color: var(--uh-muted); }
html.dark-theme body.view-general-registration-2025-duplicates .transaction-info { color: var(--uh-text); }
html.dark-theme body.view-general-registration-2025-duplicates .transaction-info .text-muted { color: var(--uh-muted) !important; }
html.dark-theme body.view-general-registration-2025-duplicates .no-duplicates { color: var(--uh-muted); }
html.dark-theme body.view-lectures-index .lectures-page .lecture-item-subtitle, html.dark-theme body.view-lectures-index .lectures-page .lecture-item-desc { color: var(--uh-muted); }
html.dark-theme body.view-lectures-upload .lecture-upload .course-level-head { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-lectures-upload .lecture-upload .course-tile { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-lectures-upload .lecture-upload .course-tile-sub, html.dark-theme body.view-lectures-upload .lecture-upload .course-tile-code { color: var(--uh-muted); }
html.dark-theme body.view-lectures-upload .lecture-upload .courses-empty { color: var(--uh-muted); }
html.dark-theme body.view-library-system-books-view-pdf .pdf-viewer-container { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-library-system-layout-main [data-bs-theme="dark"] .table-hover tbody tr:hover { background-color: var(--uh-card); }
html.dark-theme body.view-library-system-layout-main [data-bs-theme="dark"] .badge { color: var(--uh-text); }
html.dark-theme body.view-library-system-layout-main [data-bs-theme="dark"] .stats-icon { background-color: var(--uh-card) !important; }
html.dark-theme body.view-library-system-layout-main [data-bs-theme="dark"] .btn-outline-warning:hover { color: var(--uh-text); }
html.dark-theme body.view-military-duty-admin-panel .pagination .page-link { background-color: var(--uh-card); }
html.dark-theme body.view-military-duty-admin-panel .pagination .page-item.disabled .page-link { color: var(--uh-muted); background-color: var(--uh-card); border-color: var(--uh-border); }
html.dark-theme body.view-military-duty-admin-panel .filter-section .form-label { color: var(--uh-text); }
html.dark-theme body.view-military-duty-admin-panel .empty-filter-message { background-color: var(--uh-card); }
html.dark-theme body.view-military-duty-admin-panel-failed .pagination .page-link { background-color: var(--uh-card); }
html.dark-theme body.view-military-duty-admin-panel-failed .pagination .page-item.disabled .page-link { color: var(--uh-muted); background-color: var(--uh-card); border-color: var(--uh-border); }
html.dark-theme body.view-military-duty-admin-panel-failed .filter-section { background-color: var(--uh-card); }
html.dark-theme body.view-military-duty-payment-failed .detail-label { color: var(--uh-text); }
html.dark-theme body.view-military-duty-payment-failed .detail-value { color: var(--uh-text); }
html.dark-theme body.view-military-duty-payment-failed .retry-btn { color: var(--uh-text); }
html.dark-theme body.view-military-duty-payment-failed .retry-btn:hover { color: var(--uh-text); }
html.dark-theme body.view-military-duty-payment-success .detail-label { color: var(--uh-text); }
html.dark-theme body.view-military-duty-payment-success .detail-value { color: var(--uh-text); }
html.dark-theme body.view-military-online-payment-payment-history .mdp-kv .k { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-military-online-payment-payment-history .mdp-receipt-paper { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-military-online-payment-payment-history .mdp-stamp { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-military-online-payment-payment-history .mdp-table th { background-color: var(--uh-card); background-image: none; }


    /* Receipt responsiveness (mobile) */
    @media (max-width: 576px) {
html.dark-theme body.view-military-online-payment-payment-history .mdp-kv .k { background-color: var(--uh-card); background-image: none; }
}
html.dark-theme body.view-nomination-phases-2025-students .student-row:hover { background-color: var(--uh-card); }
html.dark-theme body.view-nomination-phases-2025-students .bulk-actions { background-color: var(--uh-card); }
html.dark-theme body.view-president-office-archive-index .archive-filter-clear-btn { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-president-office-archive-index .archive-filter-search-icon { color: var(--uh-muted); }
html.dark-theme body.view-president-office-archive-index .archive-filter-search-input { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-president-office-archive-index .archive-filter-search-hint { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-president-office-archive-index .archive-filter-field .form-control, html.dark-theme body.view-president-office-archive-index .archive-filter-field .form-select { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-president-office-archive-index .archive-filter-advanced-toggle { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-president-office-archive-index .archive-filter-advanced-toggle .toggle-meta { color: var(--uh-muted); }
html.dark-theme body.view-president-office-archive-index .archive-filter-date-separator { background-color: var(--uh-card); background-image: none; color: var(--uh-muted); }
html.dark-theme body.view-president-office-archive-index .archive-template-chip-label { color: var(--uh-muted); }
html.dark-theme body.view-president-office-archive-show .archive-html-preview-card { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-president-office-archive-show .archive-preview-search-scope { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-president-office-archive-show .archive-preview-scope--excel table thead th { background-color: var(--uh-card) !important; background-image: none !important; }
html.dark-theme body.view-president-office-archive-show #archiveViewFileIframeWrap iframe { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-president-office-templates-show .template-doc-preview-card { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-president-office-templates-show .template-doc-preview-scope { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-profile-index .requirement { color: var(--uh-muted); }
html.dark-theme body.view-profile-index .virtual-id-logo { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-profile-index .virtual-id-badge { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-profile-index .virtual-id-meta { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-profile-index .virtual-id-qr-wrap { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-profile-index .virtual-id-qr-label { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-registration-reports-academic-analysis .main-container { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-registration-reports-academic-analysis .chart-container { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-registration-reports-academic-analysis .chart-title { color: var(--uh-text); }
html.dark-theme body.view-registration-reports-academic-analysis .table-container { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-registration-reports-academic-analysis .table-title { color: var(--uh-text); }
html.dark-theme body.view-registration-reports-academic-analysis .custom-table tr:hover { background-color: var(--uh-card); }
html.dark-theme body.view-registration-reports-academic-analysis .stats-summary h3 { color: var(--uh-text); }
html.dark-theme body.view-registration-reports-academic-analysis .stats-summary p { color: var(--uh-muted); }
html.dark-theme body.view-registration-reports-academic-analysis .academic-card { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-registration-reports-academic-analysis .academic-name { color: var(--uh-text); }
html.dark-theme body.view-registration-reports-academic-analysis .academic-percentage { color: var(--uh-muted); }
html.dark-theme body.view-registration-reports-college-analysis .main-container { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-registration-reports-college-analysis .chart-container { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-registration-reports-college-analysis .chart-title { color: var(--uh-text); }
html.dark-theme body.view-registration-reports-college-analysis .table-container { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-registration-reports-college-analysis .table-title { color: var(--uh-text); }
html.dark-theme body.view-registration-reports-college-analysis .custom-table tr:hover { background-color: var(--uh-card); }
html.dark-theme body.view-registration-reports-college-analysis .stats-summary h3 { color: var(--uh-text); }
html.dark-theme body.view-registration-reports-college-analysis .stats-summary p { color: var(--uh-muted); }
html.dark-theme body.view-registration-reports-document-completion-report { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-registration-reports-document-completion-report .main-container { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-registration-reports-document-completion-report .stat-card { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-registration-reports-document-completion-report .stat-label { color: var(--uh-muted); }
html.dark-theme body.view-registration-reports-document-completion-report .table-container { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-registration-reports-document-completion-report .table td { border-color: var(--uh-border); }
html.dark-theme body.view-registration-reports-document-completion-report .navigation { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-registration-reports-document-completion-report .phase-date { color: var(--uh-muted); }
html.dark-theme body.view-registration-reports-document-completion-report .faculty-header { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-registration-reports-faculty-growth-report .main-container { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-registration-reports-faculty-growth-report .date-filter { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-registration-reports-faculty-growth-report .date-filter h3 { color: var(--uh-text); }
html.dark-theme body.view-registration-reports-faculty-growth-report .form-label { color: var(--uh-text); }
html.dark-theme body.view-registration-reports-faculty-growth-report .stat-card { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-registration-reports-faculty-growth-report .stat-label { color: var(--uh-muted); }
html.dark-theme body.view-registration-reports-faculty-growth-report .table-container { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-registration-reports-faculty-growth-report .table-title { color: var(--uh-text); }
html.dark-theme body.view-registration-reports-faculty-growth-report .custom-table tr:hover { background-color: var(--uh-card); }
html.dark-theme body.view-registration-reports-faculty-growth-report .percentage-cell { color: var(--uh-muted); }
html.dark-theme body.view-registration-reports-geographical-distribution .main-container { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-registration-reports-geographical-distribution .chart-container { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-registration-reports-geographical-distribution .chart-title { color: var(--uh-text); }
html.dark-theme body.view-registration-reports-geographical-distribution .table-container { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-registration-reports-geographical-distribution .table-title { color: var(--uh-text); }
html.dark-theme body.view-registration-reports-geographical-distribution .custom-table tr:hover { background-color: var(--uh-card); }
html.dark-theme body.view-registration-reports-geographical-distribution .stats-summary h3 { color: var(--uh-text); }
html.dark-theme body.view-registration-reports-geographical-distribution .stats-summary p { color: var(--uh-muted); }
html.dark-theme body.view-registration-reports-geographical-distribution .region-card { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-registration-reports-geographical-distribution .region-name { color: var(--uh-text); }
html.dark-theme body.view-registration-reports-geographical-distribution .region-percentage { color: var(--uh-muted); }
html.dark-theme body.view-registration-reports-index .main-container { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-registration-reports-index .stat-card { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-registration-reports-index .stat-label { color: var(--uh-muted); }
html.dark-theme body.view-registration-reports-index .chart-container { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-registration-reports-index .chart-title { color: var(--uh-text); }
html.dark-theme body.view-registration-reports-index .summary-title { color: var(--uh-text); }
html.dark-theme body.view-registration-reports-index .summary-text { color: var(--uh-muted); }
html.dark-theme body.view-registration-reports-index .text-secondary { color: var(--uh-muted) !important; }
html.dark-theme body.view-registration-reports-index .text-muted { color: var(--uh-muted) !important; }
html.dark-theme body.view-registration-reports-index .text-dark { color: var(--uh-text) !important; }
html.dark-theme body.view-registration-reports-index .table-container { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-registration-reports-index .table-title { color: var(--uh-text); }
html.dark-theme body.view-registration-reports-index .custom-table tr:hover { background-color: var(--uh-card); }
html.dark-theme body.view-registration-reports-portsaid-north-sinai-report .main-container { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-registration-reports-portsaid-north-sinai-report .stat-card { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-registration-reports-portsaid-north-sinai-report .stat-label { color: var(--uh-muted); }
html.dark-theme body.view-registration-reports-portsaid-north-sinai-report .table-container { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-registration-reports-portsaid-north-sinai-report .table-title { color: var(--uh-text); }
html.dark-theme body.view-registration-reports-portsaid-north-sinai-report .custom-table tr:hover { background-color: var(--uh-card); }
html.dark-theme body.view-security-index .card-body .form-label { color: var(--uh-text); }
html.dark-theme body.view-services-index .card-body .form-label { color: var(--uh-text); }
html.dark-theme body.view-store-inventory-index .widgets-icons-2 { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-student-affairs-index #student_search .form-control { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-student-affairs-index #studentModal .student-modal-avatar-img { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-student-conversion-index { background-color: var(--uh-card); }
html.dark-theme body.view-student-conversion-index .student-row:hover { background-color: var(--uh-card); }
html.dark-theme body.view-student-course-registrations-student-register-course .table tbody tr:hover { background-color: var(--uh-card); }
html.dark-theme body.view-student-course-registrations-student-register-course .course-item { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-student-course-registrations-student-register-course #courses-section { background-color: var(--uh-card) !important; background-image: none !important; }


    @media (max-width: 768px) {
html.dark-theme body.view-student-grades .course-info-label { color: var(--uh-muted); }
}


    @media (max-width: 768px) {
html.dark-theme body.view-student-grades .course-info-value { color: var(--uh-text); }
}
html.dark-theme body.view-student-in-courses-courses-in-program .table tbody tr:hover { background-color: var(--uh-card); }
html.dark-theme body.view-student-in-courses-student-in-course .legend-container { background-color: var(--uh-card); }
html.dark-theme body.view-student-in-courses-student-in-course .table tbody tr:hover { background-color: var(--uh-card); }
html.dark-theme body.view-student-in-courses-student-in-course .clickable-row:hover { background-color: var(--uh-card) !important; }
html.dark-theme body.view-student-in-courses-student-in-course .empty-row { background-color: var(--uh-card); }
html.dark-theme body.view-student-registration-form .payment-notice { background-color: var(--uh-card); }
html.dark-theme body.view-student-registration-form .input-group-text { background-color: var(--uh-card); }
html.dark-theme body.view-student-registration-form .form-text { color: var(--uh-muted); }
html.dark-theme body.view-student-registration-report #passwordModal .modal-header { background-color: var(--uh-card); }
html.dark-theme body.view-student-semester-works .info-label { color: var(--uh-muted); }
html.dark-theme body.view-student-semester-works .info-value { color: var(--uh-text); }
html.dark-theme body.view-student-semester-works .page-title { color: var(--uh-text); }
html.dark-theme body.view-student-semester-works .empty-state { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-student-semester-works .empty-title { color: var(--uh-muted); }
html.dark-theme body.view-student-semester-works .total-label { color: var(--uh-muted); }
html.dark-theme body.view-student-semester-works .total-value .max { color: var(--uh-muted); }
html.dark-theme body.view-student-semester-works .total-percentage { color: var(--uh-muted); }
html.dark-theme body.view-student-semester-works .course-header { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-student-semester-works .course-title { color: var(--uh-text); }
html.dark-theme body.view-student-semester-works .course-code-badge { background-color: var(--uh-card); background-image: none; color: var(--uh-text); border-color: var(--uh-border); }
html.dark-theme body.view-student-semester-works .status-label { color: var(--uh-muted); }
html.dark-theme body.view-student-semester-works .subgrades-table thead th { background-color: var(--uh-card); background-image: none; color: var(--uh-text); }
html.dark-theme body.view-student-semester-works .subgrades-table tbody tr:hover { background-color: var(--uh-card); background-image: none; }
html.dark-theme body.view-student-semester-works .grade-type-name { color: var(--uh-text); }
html.dark-theme body.view-student-semester-works .max-mark { color: var(--uh-muted); }
html.dark-theme .uh-0fe69e9f { color: var(--uh-text); }
html.dark-theme .uh-1491d206 { background-color: var(--uh-card); background-image: none; }
html.dark-theme .uh-14cc3cd6 { background-color: var(--uh-card); background-image: none; }
html.dark-theme .uh-2ddea8da { color: var(--uh-text); }
html.dark-theme .uh-3521816f { color: var(--uh-text); }
html.dark-theme .uh-3f013c34 { background-color: var(--uh-card); }
html.dark-theme .uh-411be303 { background-color: var(--uh-card); }
html.dark-theme .uh-5ddf999d { background-color: var(--uh-card); background-image: none; }
html.dark-theme .uh-756e2667 { background-color: var(--uh-card); }
html.dark-theme .uh-96247054 { background-color: var(--uh-card); }
html.dark-theme .uh-bcbc3d63 { background-color: var(--uh-card); background-image: none; }
html.dark-theme .uh-c9fd7ad0 { color: var(--uh-text); }
html.dark-theme .uh-d7056bae { color: var(--uh-muted); }
html.dark-theme .uh-e5e67863 { color: var(--uh-muted); }
html.dark-theme .uh-f7ef6e62 { color: var(--uh-text); }

/* Responsive breakpoints */
@media (max-width: 1199.98px) {
  body[class*="view-"] .stats-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
  }
}

@media (min-width: 768px) and (max-width: 1199.98px) {
  body[class*="view-"] .stats-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 767.98px) {
  .wrapper .page-content,
  body[class*="view-"] .page-content {
    padding: 0.75rem;
  }

  .page-title-box,
  .page-breadcrumb {
    flex-wrap: wrap;
    gap: 0.5rem;
  }

  body[class*="view-"] .stats-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }

  body[class*="view-"] .main-container,
  body[class*="view-"] .table-container,
  body[class*="view-"] .page-wrapper {
    width: 100% !important;
    max-width: 100%;
    margin-right: 0;
  }

  body[class*="view-"] .table-responsive,
  body[class*="view-"] .table-container {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
