﻿.cir-container {
    padding: 15px;
    max-width: 1000px;
    margin: auto;
}

/* Title animation */
.page-title {
    text-align: center;
    margin-bottom: 20px;
    opacity: 0;
    transform: translateY(-20px);
    animation: titleIn 0.8s ease forwards;
}

@keyframes titleIn {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Grid */
.cir-grid {
    width: 100%;
    border-collapse: collapse;
}

    .cir-grid th, .cir-grid td {
        padding: 5px;
        border-bottom: 1px solid #ddd;
        opacity: 0;
        transform: translateY(10px);
        animation: rowIn 0.5s ease forwards;
    }

@keyframes rowIn {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.cir-grid tr:hover td {
    background: #70c2ff;
    transform: scale(1.01);
    transition: 0.2s;
}

/* PDF animation */
.pdf-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #0066cc;
    font-weight: 600;
    text-decoration: none;
}

.pdf-icon {
    font-size: 24px;
}

.pdf-link:hover .pdf-icon {
    animation: pdfBounce 0.6s ease;
}

@keyframes pdfBounce {
    50% {
        transform: translateY(-4px) scale(1.2);
    }
}

/* Skeleton loader */
.skeleton-row {
    height: 40px;
    background: linear-gradient(90deg,#eee,#f5f5f5,#eee);
    background-size: 300% 100%;
    animation: shimmer 1.4s infinite;
    margin-bottom: 8px;
}

@keyframes shimmer {
    0% {
        background-position: 100%
    }

    100% {
        background-position: -100%
    }
}

.pager {
    text-align: center;
    padding: 08px;
}

.info-msg {
    text-align: center;
    color: #cc0000;
}

/* Mobile */
@media(max-width:600px) {
    .cir-grid th:nth-child(2),
    .cir-grid td:nth-child(2) {
        display: none;
    }
}

/* =========================================
   Grid Header Styling
========================================= */
.cir-grid-header th {
    background-color: #0b3c6f; /* Dark blue */
    color: #ffffff; /* White text */
    font-weight: 600;
    padding: 8px;
    text-align: center;
}

/* =========================================
   Row & Alternate Row Colours
========================================= */
.cir-grid-row td {
    background-color: #f7fbff; /* Light pleasant blue */
}

.cir-grid-alt-row td {
    background-color: #eef4ff; /* Alternate soft shade */
}

/* =========================================
   2nd Column Left Alignment
========================================= */
.col-left {
    text-align: left !important;
    padding-left: 12px;
}