/* Base variables and resets */
:root {
    /* Brand: gold rgb(206, 161, 36), grey rgb(87, 87, 87), background #fdfdfd */
    --primary-color: #cea124;
    --primary-color-dark: #b8931f;
    --primary-color-light: #d4ab3a;
    --primary-color-rgb: 206, 161, 36;
    
    --secondary-color: #575757;
    --secondary-color-dark: #454545;
    --secondary-color-light: #6e6e6e;
    
    --background-color: #fdfdfd;
    --background-light: #fdfdfd;
    --background-dark: #f0f0f0;
    --surface-color: #ffffff;
    
    /* Text Colors */
    --text-color: #333333;
    --text-dark: #333333;
    --text-light: #ffffff;
    --text-muted: #666666;
    
    /* Status Colors */
    --success-color: #28a745;
    --error-color: #dc3545;
    --warning-color: #ffc107;
    --info-color: #17a2b8;
    
    /* Border Colors */
    --border-color: rgba(0, 0, 0, 0.2);
    --border-light: rgba(255, 255, 255, 0.2);
    
    /* Shadow Colors */
    --shadow-color: rgba(0, 0, 0, 0.1);
    --shadow-color-dark: rgba(0, 0, 0, 0.2);
}

/* Reset and Base Styles */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: var(--font-primary, 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif);
    color: var(--text-color);
    line-height: 1.6;
    margin: 0;
    padding: 0;
    background-color: var(--background-color);
}

main.content {
    background-color: var(--background-color);
}

body.page-about main.content,
body.page-info main.content,
body.page-conference-login main.content {
    background-color: #fdfdfd;
    min-height: calc(100vh - 100px);
}

body.page-about,
body.page-info,
body.page-conference-login {
    background-color: #fdfdfd;
}

body.page-about .static-page-content,
body.page-info .static-page-content,
body.page-conference-login main.content .container {
    background-color: #fdfdfd;
}

h1, h2, h3, h4, h5, h6 {
    font-family: var(--font-secondary);
    color: var(--text-dark);
    margin-bottom: 1rem;
}

/* Content spacing - different for homepage vs other pages */
main.content {
    margin-top: 100px; /* Ensures content is below the navbar for all pages except homepage */
} 

/* Homepage specific - no top margin for fullscreen hero */
body.homepage main.content {
    margin-top: 0;
}

.content {
    flex: 1;
    padding: 2rem 0;
}

/* Homepage content adjustment */
body.homepage .content {
    padding: 0;
}

/* Non-homepage: margin handled by main.content above */

/* Utility Classes */
.text-center { text-align: center; }
.text-left { text-align: left; }
.text-right { text-align: right; }

.mt-1 { margin-top: 0.5rem; }
.mt-2 { margin-top: 1rem; }
.mt-3 { margin-top: 1.5rem; }
.mb-1 { margin-bottom: 0.5rem; }
.mb-2 { margin-bottom: 1rem; }
.mb-3 { margin-bottom: 1.5rem; }

.text-primary { color: var(--primary-color); }
.text-secondary { color: var(--secondary-color); }
.text-success { color: var(--success-color); }
.text-error { color: var(--error-color); }
.text-warning { color: var(--warning-color); }
.text-info { color: var(--info-color); }

.bg-primary { background-color: var(--primary-color); }
.bg-secondary { background-color: var(--secondary-color); }
.bg-light { background-color: var(--background-light); }
.bg-dark { background-color: var(--background-dark); }

/* Font Awesome Icon Enhancements */
.fas, .fa, .fab, .far {
    font-family: "Font Awesome 6 Free", "Font Awesome 5 Free", "FontAwesome" !important;
    font-weight: 900 !important;
    font-style: normal !important;
    display: inline-block !important;
    text-rendering: auto !important;
    -webkit-font-smoothing: antialiased !important;
    -moz-osx-font-smoothing: grayscale !important;
}

/* Icon visibility fixes */
i[class*="fa-"]::before {
    display: inline-block !important;
    font-style: normal !important;
    font-variant: normal !important;
    text-rendering: auto !important;
    -webkit-font-smoothing: antialiased !important;
}

/* Ensure icons are visible */
.nav-links a i,
.user-panel i,
.footer i,
button i {
    color: inherit !important;
    opacity: 1 !important;
    visibility: visible !important;
} 