@charset "UTF-8";
/**
 * ASLSRI Institutional Design Tokens & Typography
 * Academic Society for Life Science Research and Innovation
 */

@import url('https://fonts.googleapis.com/css2?family=Inter:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,400;1,600&family=Merriweather:ital,wght@0,300;0,400;0,700;0,900;1,300;1,400&family=JetBrains+Mono:wght@400;500;600;700&display=swap');

:root {
    --oxford-blue: #0A3663;
    --oxford-blue-dark: #072647;
    --oxford-blue-light: #154e8c;
    --forest-emerald: #0D6938;
    --forest-emerald-dark: #084a26;
    --sky-azure: #2A85C8;
    --warm-amber: #D97706;
    --amber-dark: #B45309;
    --slate-canvas: #F8FAFC;
    --navy-text: #0F172A;
    --muted-slate: #475569;
    --border-academic: #E2E8F0;
}

html {
    scroll-behavior: smooth;
    -webkit-text-size-adjust: 100%;
}

html, body {
    max-width: 100%;
    overflow-x: hidden;
}

body {
    font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    background-color: var(--slate-canvas);
    color: var(--navy-text);
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    overflow-wrap: break-word;
}

/* Mobile Momentum Scrolling for Tables & Scrollable Strips */
.overflow-x-auto, [class*="overflow-x-"] {
    -webkit-overflow-scrolling: touch;
}

/* Hide scrollbars for clean horizontal tab strips */
.scrollbar-none::-webkit-scrollbar {
    display: none;
}
.scrollbar-none {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

/* Better mobile tap highlight */
* {
    -webkit-tap-highlight-color: rgba(10, 54, 99, 0.1);
}

h1, h2, h3, .font-serif-heading {
    font-family: 'Merriweather', Georgia, Cambria, 'Times New Roman', Times, serif;
    letter-spacing: -0.01em;
    overflow-wrap: break-word;
}

.font-data-mono {
    font-family: 'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}

/* Institutional custom scrollbars */
::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

::-webkit-scrollbar-track {
    background: #F1F5F9;
}

::-webkit-scrollbar-thumb {
    background: #CBD5E1;
    border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
    background: #94A3B8;
}

/* Subtle academic pattern backgrounds */
.bg-academic-grid {
    background-size: 24px 24px;
    background-image: 
        linear-gradient(to right, rgba(10, 54, 99, 0.04) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(10, 54, 99, 0.04) 1px, transparent 1px);
}

.bg-academic-dots {
    background-image: radial-gradient(rgba(10, 54, 99, 0.08) 1.5px, transparent 1.5px);
    background-size: 20px 20px;
}

/* Gold foil seal simulation */
.certificate-seal {
    box-shadow: inset 0 0 0 4px #D97706, 0 4px 14px rgba(217, 119, 6, 0.25);
    background: radial-gradient(circle, #FFFBEB 0%, #FEF3C7 60%, #FDE68A 100%);
}

/* Animation utilities */
@keyframes fadeInSlide {
    from {
        opacity: 0;
        transform: translateY(8px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.animate-fade-in {
    animation: fadeInSlide 0.25s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

/* Print Stylesheet for Certificate & Statutory Documents */
@media print {
    header, footer, #floating-widgets, #bank-modal, #search-modal, .no-print {
        display: none !important;
    }

    body {
        background: #ffffff !important;
        color: #000000 !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    .printable-document {
        border: 2px solid #000000 !important;
        box-shadow: none !important;
        margin: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    a {
        text-decoration: none !important;
        color: inherit !important;
    }
}
