/* Global Theme & Layout */
:root {
    --primary-color: #F58231;
    --primary-yellow: #FFE35B;
    --primary-dark: #e06b12;
    --brand-slate: #2B6CB0;
    --brand-cyan: #00FFFF;
    --text-color: #4A5568;
    --body-bg: #FFFFFF;
    --body-bg-gradient: linear-gradient(135deg, rgba(43, 108, 176, 0.05) 0%, rgba(0, 255, 255, 0.05) 100%);
    --brand-gradient: linear-gradient(to right, #F58231, #FFE35B);
    --tech-gradient: linear-gradient(135deg, #2B6CB0, #00FFFF);
    --accent-color: var(--brand-cyan);
}

body {
    /* Use safe system font stack to prevent external font fetches in restricted environments */
    font-family: 'Tajawal', 'Cairo', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans Arabic', Tahoma, Geneva, Verdana, sans-serif;
    background: var(--body-bg-gradient, linear-gradient(135deg, rgba(43, 108, 176, 0.08) 0%, rgba(255, 255, 255, 1) 100%));
    background-attachment: fixed;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    position: relative;
    padding-top: 0;
}

body::before {
    content: '';
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 1000"><defs><radialGradient id="a" cx=".5" cy=".5" r=".5"><stop offset="0%" stop-color="%23ffffff" stop-opacity=".1"/><stop offset="100%" stop-color="%23ffffff" stop-opacity="0"/></radialGradient></defs><circle cx="200" cy="200" r="100" fill="url(%23a)"/><circle cx="800" cy="300" r="150" fill="url(%23a)"/><circle cx="400" cy="700" r="120" fill="url(%23a)"/><circle cx="900" cy="800" r="80" fill="url(%23a)"/></svg>') no-repeat center center;
    background-size: cover;
    pointer-events: none;
    z-index: -1;
}

.main-content {
    flex: 1 0 auto;
}

.footer {
    flex-shrink: 0;
}

/* Modern scrollbar */
::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    background: rgba(255, 255, 255, 0.1);
    border-radius: 10px;
}

::-webkit-scrollbar-thumb {
    background: linear-gradient(135deg, var(--brand-slate), var(--brand-cyan));
    border-radius: 10px;
}

::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(135deg, var(--accent-color), var(--primary-color));
}

/* Enhanced typography */
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'Cairo', 'Tajawal', sans-serif;
    font-weight: 700;
    letter-spacing: -0.025em;
}

.text-gradient {
    background: var(--brand-gradient);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* Fixed navbar spacing adjustments - Optimized for new flat navbar */
.main-content {}

@media (max-width: 992px) {
    .main-content {}
}

@media (max-width: 768px) {
    .main-content {}
}

@media (max-width: 576px) {
    .main-content {}
}