/* GLOBAL RESETS */
* {
    box-sizing: border-box;
}

body {
    font-family: Verdana, Arial, sans-serif; /* Matches the academic look */
    font-size: 14px;
    line-height: 1.5;
    background-color: #ffffff;
    color: #333;
    margin: 0;
    padding: 20px;
}

/* LINK STYLING */
a {
    color: #0000CD; /* Classic academic blue */
    text-decoration: none;
}
a:hover {
    text-decoration: underline;
}

/* LAYOUT CONTAINER */
.page-container {
    max-width: 1000px;
    margin: 0 auto;
    display: flex; /* Creates the two-column layout */
    gap: 30px;
}

/* LEFT COLUMN (MAIN CONTENT) */
.main-content {
    flex: 3; /* Takes up 3/4 of the space */
    min-width: 0; /* Prevents overflow issues */
}

/* RIGHT COLUMN (SIDEBAR) */
.sidebar {
    flex: 1; /* Takes up 1/4 of the space */
    max-width: 250px;
}

/* BIO SECTION (Top area with photo) */
.bio-section {
    display: flex;
    gap: 20px;
    margin-bottom: 30px;
}

.bio-photo img {
    width: 200px; /* Fixed width for portrait */
    height: auto;
    border: 1px solid #ccc;
    padding: 4px;
    background: #fff;
    box-shadow: 2px 2px 5px rgba(0,0,0,0.1);
}

.bio-text h1 {
    margin-top: 0;
    font-size: 22px;
    border-bottom: 1px solid #ddd; /* Subtle separator */
    padding-bottom: 10px;
}

/* SECTION HEADERS (The "Gray Bars") */
.section-header {
    background: linear-gradient(to bottom, #f2f2f2, #e0e0e0); /* The beveled gradient */
    border: 1px solid #ccc;
    padding: 5px 10px;
    font-size: 16px;
    margin-top: 30px;
    margin-bottom: 15px;
    color: #333;
    font-weight: bold;
    border-radius: 2px;
}

.section-content {
    padding-left: 5px; /* Slight indent for content */
}

/* PUBLICATION LIST STYLING */
.publication-item {
    margin-bottom: 15px;
}
.pub-tag {
    color: #00008B;
    font-weight: bold;
}
.pub-links {
    font-size: 0.9em;
    margin-top: 2px;
}

/* SIDEBAR NAVIGATION STYLING */
.nav-box {
    border: 1px solid #ccc;
    background: #f9f9f9;
    padding: 0;
    margin-bottom: 20px;
}

.nav-header {
    background: #e0e0e0;
    padding: 5px 10px;
    font-weight: bold;
    border-bottom: 1px solid #ccc;
}

.nav-links {
    list-style: none;
    padding: 0;
    margin: 0;
}

.nav-links li {
    border-bottom: 1px solid #ddd;
}

.nav-links li:last-child {
    border-bottom: none;
}

.nav-links a {
    display: block;
    padding: 6px 10px;
    background: #f4f4f4;
    color: #0000CD;
}

.nav-links a:hover {
    background: #e9e9e9;
}

/* USEFUL LINKS SECTION */
.useful-links h3 {
    font-size: 16px;
    border-bottom: 1px solid #ccc;
    padding-bottom: 5px;
}
.useful-links ul {
    list-style-type: none; /* No bullets */
    padding-left: 0;
}
.useful-links li {
    margin-bottom: 5px;
}

/* MOBILE RESPONSIVENESS */
@media (max-width: 768px) {
    .page-container {
        flex-direction: column-reverse; /* Moves sidebar to bottom on mobile, or remove 'reverse' to put top */
    }
    
    .bio-section {
        flex-direction: column; /* Stack photo and text on mobile */
        align-items: center;
        text-align: center;
    }
    
    .sidebar {
        max-width: 100%; /* Full width sidebar on mobile */
    }
}