/* Override Tabler's container-tight on auth pages */
.page-center .container-tight {
    max-width: 650px !important;
}

/* Make the card take full width of its container */
.card-md {
    width: 100%;
    position: relative;
    margin-top: 40px; /* Add space for the app icon */
}

/* Add more padding to card body for better appearance with wider card */
.card-md .card-body {
    padding: 2.5rem;
}

/* App Icon Circle */
.app-icon-circle {
    position: absolute;
    top: -35px;
    left: 50%;
    transform: translateX(-50%);
    width: 70px;
    height: 70px;
    background: #009688;
    border-radius: 50%;
    box-shadow: 0 4px 12px rgba(0, 150, 136, 0.3);
    border: 4px solid white;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
}

.app-icon-circle img {
    width: 40px;
    height: 40px;
    object-fit: contain;
}

/* Custom Primary Button Color */
.btn-primary {
    background-color: #009688 !important;
    border-color: #009688 !important;
    color: white !important;
}

.btn-primary:hover {
    background-color: #00796B !important;
    border-color: #00796B !important;
    color: white !important;
}

.btn-primary:focus,
.btn-primary:active {
    background-color: #00796B !important;
    border-color: #00796B !important;
    box-shadow: 0 0 0 0.25rem rgba(0, 150, 136, 0.25) !important;
}

/* Custom Checkbox Color */
.form-check-input:checked {
    background-color: #009688 !important;
    border-color: #009688 !important;
}

.form-check-input:focus {
    border-color: #009688 !important;
    box-shadow: 0 0 0 0.25rem rgba(0, 150, 136, 0.25) !important;
}

/* Focus state for form inputs to match color scheme */
.form-control:focus {
    border-color: #009688 !important;
    box-shadow: 0 0 0 0.25rem rgba(0, 150, 136, 0.1) !important;
}

/* Logo Container Styling */
.logo-link {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    max-height: 80px; /* Increased container height */
}

/* Base logo styling */
.logo-img {
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
    display: block !important;
    min-width: 40px !important;
    min-height: 25px !important;
}

/* NTU LILY logo - 1.5-2x wider with taller height allowance */
.logo-lily-img {
    max-width: 400px !important; /* Increased for 2x ratio */
    max-height: 75px !important; /* Taller to accommodate aspect ratio */
}

/* TTSH IGA logo - base size */
.logo-ttsh-img {
    max-width: 200px !important; /* Base width */
    max-height: 65px !important; /* Standard height */
}

/* Override Tabler's default img styles specifically for logo images */
.text-center .d-flex .logo-link img,
.logo-link img[src*=".svg"] {
    width: auto !important;
    height: auto !important;
}

/* Mobile responsive */
@media (max-width: 767px) {
    .page-center .container-tight {
        max-width: 100% !important;
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .card-md .card-body {
        padding: 1.5rem;
    }

    .card-md {
        margin-top: 35px;
    }

    .app-icon-circle {
        width: 60px;
        height: 60px;
        top: -30px;
    }

    .app-icon-circle img {
        width: 35px;
        height: 35px;
    }

    .logo-link {
        max-height: 60px !important;
    }

    .logo-img {
        min-width: 30px !important;
        min-height: 20px !important;
    }

    /* NTU LILY logo - larger on mobile */
    .logo-lily-img {
        max-width: 280px !important;
        max-height: 55px !important;
    }

    /* TTSH IGA logo - base on mobile */
    .logo-ttsh-img {
        max-width: 140px !important;
        max-height: 50px !important;
    }
}

@media (max-width: 480px) {
    .logo-link {
        max-height: 50px !important;
    }

    /* NTU LILY logo - proportionally larger */
    .logo-lily-img {
        max-width: 240px !important;
        max-height: 46px !important;
    }

    /* TTSH IGA logo - smaller on tiny screens */
    .logo-ttsh-img {
        max-width: 120px !important;
        max-height: 42px !important;
    }
}