@import 'tailwindcss';

@source '../../vendor/laravel/framework/src/Illuminate/Pagination/resources/views/*.blade.php';
@source '../../storage/framework/views/*.php';
@source '../**/*.blade.php';
@source '../**/*.js';

/* SLMC eServices design tokens (from eservices.slmc.gov.lk) */
@theme {
    --font-sans: 'Open Sans', ui-sans-serif, system-ui, sans-serif;

    --color-slmc: #011f5c;          /* primary navy */
    --color-slmc-700: #0e3d82;
    --color-slmc-600: #164b80;
    --color-slmc-500: #174779;
    --color-slmc-accent: #0077ff;
    --color-slmc-sky: #4dabf7;
    --color-slmc-tint: #edf4fb;
    --color-slmc-line: #dfe5f2;
    --color-slmc-warm: #f97316;
    --color-slmc-warm-2: #fb923c;
}

@layer components {
    .bg-slmc-hero {
        background-color: var(--color-slmc);
        background-image: url('/images/slmc/bg.jpeg');
        background-size: cover;
        background-position: center;
    }
    .bg-primary-gradient { background: linear-gradient(90deg, #011f5c 0%, #0077ff 100%); }
    .bg-warm-gradient    { background: linear-gradient(90deg, #f97316 0%, #fb923c 100%); }
    .bg-login-panel      { background: linear-gradient(180deg, rgba(9, 42, 91, .95) 0%, rgba(14, 61, 130, .92) 100%); }

    /* Service-style card used across the portal */
    .slmc-card {
        position: relative;
        overflow: hidden;
        isolation: isolate;
        background: linear-gradient(145deg, #fff 0%, #fff 65%, #f0f6fd 100%);
        border: 1px solid rgba(220, 232, 245, .95);
        border-radius: 22px;
        box-shadow: 0 3px 8px rgba(4, 27, 56, .03), 0 15px 35px rgba(4, 27, 56, .08);
        transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
    }
    .slmc-card::after {
        content: '';
        position: absolute;
        width: 180px; height: 180px; right: -95px; top: -100px;
        border-radius: 9999px;
        background: rgba(37, 99, 235, .045);
        z-index: -1;
    }
    .slmc-card-accent::before {
        content: '';
        position: absolute;
        left: 0; top: 25px; bottom: 25px; width: 3px;
        border-radius: 0 4px 4px 0;
        background: linear-gradient(180deg, #0e4278, #60a5fa);
        opacity: .75;
    }
    a.slmc-card:hover {
        transform: translateY(-6px);
        border-color: #bfd7f2;
        box-shadow: 0 12px 25px rgba(4, 27, 56, .08), 0 25px 55px rgba(4, 27, 56, .15);
    }
    .slmc-icon {
        display: flex; align-items: center; justify-content: center; flex-shrink: 0;
        width: 56px; height: 56px; border-radius: 17px; font-size: 26px;
        color: #164b80;
        background: linear-gradient(145deg, #e8f2ff, #f4f8ff);
        border: 1px solid #e0edfc;
        transition: .3s ease;
    }
    a.slmc-card:hover .slmc-icon { background: #164b80; color: #fff; transform: rotate(-4deg); }
    .slmc-arrow {
        display: flex; align-items: center; justify-content: center;
        width: 36px; height: 36px; border-radius: 9999px; background: #edf4fb;
        transition: all .25s ease;
    }
    a.slmc-card:hover .slmc-arrow { background: #174779; color: #fff; transform: translateX(3px); }

    .slmc-section-heading { display: flex; align-items: center; gap: 18px; }
    .slmc-section-heading::after { content: ''; flex: 1; height: 1px; background: currentColor; opacity: .2; }

    .slmc-input {
        width: 100%;
        border: 1px solid #e5e7eb;
        border-radius: 12px;
        padding: 12px 12px 12px 40px;
        background: #fff;
        color: #1f2937;
    }
    .slmc-input:focus { outline: none; box-shadow: 0 0 0 2px #bfdbfe; border-color: #93c5fd; }
}

/* Admin tables */
@layer components {
    .admin-table { width: 100%; text-align: left; font-size: .875rem; }
    .admin-table thead th {
        background: #f8fafc; color: #64748b; font-size: 11px; font-weight: 700;
        letter-spacing: .06em; text-transform: uppercase; padding: .75rem 1.25rem; white-space: nowrap;
        border-bottom: 1px solid #e2e8f0;
    }
    .admin-table tbody td { padding: 1rem 1.25rem; border-bottom: 1px solid #f1f5f9; vertical-align: middle; }
    .admin-table tbody tr:last-child td { border-bottom: 0; }
    .admin-table tbody tr:hover td { background: #f8fbff; }
    .admin-card { background: #fff; border: 1px solid #e2e8f0; border-radius: 20px; box-shadow: 0 1px 2px rgba(15, 23, 42, .04), 0 8px 24px -12px rgba(15, 23, 42, .08); }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { transition: none !important; }
}
