/* Core Variables */
:root {
    --ziplink-primary: #0d6efd;
    --ziplink-bg: #f8fafc;
    --navbar-height: 70px;
}

/* Global Styles */
body { 
    background-color: var(--ziplink-bg); 
    font-family: 'Inter', sans-serif; 
    color: #1e293b;
    -webkit-font-smoothing: antialiased;
}

/* Modern Glassmorphism Navbar */
.navbar { 
    background: rgba(255, 255, 255, 0.8) !important;
    backdrop-filter: blur(10px);
    border-bottom: 1px solid rgba(0,0,0,0.05);
    height: var(--navbar-height);
}

.navbar-brand { 
    font-size: 1.4rem; 
    letter-spacing: -0.5px;
    color: var(--ziplink-primary) !important;
}

.nav-link { font-weight: 500; color: #64748b !important; transition: color 0.2s; }
.nav-link:hover { color: var(--ziplink-primary) !important; }

/* Unified Component Styles */
.card { 
    border: 1px solid rgba(0,0,0,0.05); 
    border-radius: 12px; 
    box-shadow: 0 10px 15px -3px rgba(0,0,0,0.02), 0 4px 6px -4px rgba(0,0,0,0.02);
    transition: transform 0.2s, box-shadow 0.2s;
}

.btn { border-radius: 8px; font-weight: 600; transition: all 0.2s ease; }
.btn-primary { background-color: var(--ziplink-primary); border: none; }
.btn:hover { transform: translateY(-1px); box-shadow: 0 4px 12px rgba(13, 110, 253, 0.15); }

/* Layout Helpers */
.main-content { margin-top: 2rem; padding-bottom: 5rem; }
.vh-70 { min-height: 70vh; }
.sticky-sidebar { top: 100px; }