/* Koike Laboratory - Dark Mode */
body {
    color: #e2e8f0;
    background-color: #0d1117;
}

:root {
    --primary: #6bb3d9;
    --primary-light: #4c95bc;
    --accent: #7db8d4;
    --accent-hover: #9ecae6;
    --purple: #8b73cc;
    --gold: #ecc94b;
    --text: #e2e8f0;
    --text-light: #a0aec0;
    --bg: #0d1117;
    --bg-alt: #161b22;
    --border: #30363d;
    --shadow: rgba(0, 0, 0, 0.3);
}

::selection {
    background: var(--accent);
    color: #0d1117;
}

/* Links */
a {
    color: var(--accent);
}

a:hover {
    color: var(--accent-hover);
}

/* Headers */
h1,
h2,
h3,
h4,
h5,
h6 {
    color: #f7fafc;
}

header .main {
    color: #f7fafc;
}

header .main a {
    color: inherit;
}

header nav a {
    color: var(--text);
}

header nav a:hover {
    color: var(--accent);
}

/* Hero */
.hero {
    background: linear-gradient(135deg, #4c95bc 0%, #003f58 50%, #5e42ad 100%);
}

.hero-tagline {
    color: #64b5f6;
}

.hero-subtitle {
    color: #b0bec5;
}

/* Philosophy */
.philosophy-quote p {
    color: #f7fafc;
}

.philosophy-description {
    color: var(--text-light);
}

/* Section titles */
.section-title {
    color: #f7fafc;
}

.section-title::after {
    background: var(--gold);
}

/* Cards */
.highlight-card {
    background: var(--bg-alt);
    box-shadow: 0 4px 15px var(--shadow);
}

.highlight-card:hover {
    box-shadow: 0 8px 25px var(--shadow);
}

.highlight-card h3 {
    color: #f7fafc;
}

.highlight-card p {
    color: var(--text-light);
}

/* News */
.news-item {
    border-bottom-color: var(--border);
}

.news-date {
    color: var(--text-light);
}

.news-link {
    color: var(--text);
}

.news-link:hover {
    color: var(--accent);
}

/* Research highlights background */
.research-highlights {
    background: var(--bg-alt);
}

/* About */
.about-content h2 {
    color: #f7fafc;
}

/* Borders */
header {
    border-bottom-color: var(--border);
}

.news-section {
    border-top-color: var(--border);
}

footer {
    border-top-color: var(--border);
    color: var(--text-light);
}

/* Blockquote */
blockquote {
    background: var(--bg-alt);
    border-left-color: var(--accent);
    color: var(--text-light);
}

/* Code */
code {
    background-color: var(--bg-alt);
    color: var(--accent);
}

pre {
    background-color: #161b22;
}

/* Table */
table th {
    background: var(--bg-alt);
    border-color: var(--border);
}

table td {
    border-color: var(--border);
}

table tr:hover td {
    background: var(--bg-alt);
}

/* Tags */
.tags a {
    background: var(--bg-alt);
    border-color: var(--border);
    color: var(--text-light);
}

.tags a:hover {
    background: var(--accent);
    color: #0d1117;
    border-color: var(--accent);
}

/* Draft */
.draft-label {
    background: var(--gold);
    color: #0d1117;
}

/* TOC */
.toc {
    background: var(--bg-alt);
    border-left-color: var(--accent);
    color: var(--text);
}

/* Callout */
.callout {
    background: linear-gradient(135deg, var(--accent) 0%, #003f58 100%);
}

/* Posts */
.post {
    border-bottom-color: var(--border);
}

/* Image */
img {
    border: none;
}

/* Social icons */
.soc a {
    color: var(--text-light);
}

.soc a:hover {
    color: var(--accent);
}

/* Syntax highlighting */
.highlight {
    background-color: var(--bg-alt);
    border-radius: 8px;
}

.highlight pre code[class="language-javaScript"]::before,
.highlight pre code[class="language-js"]::before {
    content: "js";
    background: #f7df1e;
    color: black;
}

.highlight pre code[class*="language-yml"]::before,
.highlight pre code[class*="language-yaml"]::before {
    content: "yaml";
    background: #f71e6a;
    color: white;
}

.highlight pre code[class*="language-shell"]::before,
.highlight pre code[class*="language-bash"]::before,
.highlight pre code[class*="language-sh"]::before {
    content: "shell";
    background: #4caf50;
    color: white;
}

.highlight pre code[class*="language-json"]::before {
    content: "json";
    background: #0288d1;
    color: white;
}

.highlight pre code[class*="language-python"]::before,
.highlight pre code[class*="language-py"]::before {
    content: "python";
    background: #3776ab;
    color: white;
}

.highlight pre code[class*="language-go"]::before {
    content: "go";
    background: #00add8;
    color: white;
}

.highlight pre code[class*="language-css"]::before {
    content: "css";
    background: #264de4;
    color: white;
}

.highlight pre code[class*="language-md"]::before {
    content: "markdown";
    background: #083fa1;
    color: white;
}

/* What We Do Section */
.section-lead {
    color: #f7fafc;
}

.section-description {
    color: var(--text-light);
}

/* Research Projects Section */
.research-projects {
    background: var(--bg-alt);
}

.project-card {
    background: #161b22;
    border-top-color: var(--accent);
}

.project-card:hover {
    box-shadow: 0 8px 25px var(--shadow);
}

.project-name {
    color: var(--accent);
}

.project-theme {
    color: #f7fafc;
}

.project-card p {
    color: var(--text-light);
}

/* Three Entry Points Section */
.entry-card {
    background: #161b22;
    border-color: transparent;
}

.entry-card:hover {
    border-color: var(--accent);
    box-shadow: 0 8px 25px var(--shadow);
}

.entry-card h3 {
    color: #f7fafc;
}

.entry-card p {
    color: var(--text-light);
}

/* Join Us Page */
.join-hero {
    background: linear-gradient(135deg, #003f58 0%, #0a5a7a 100%);
}

.join-content h2 {
    color: #f7fafc;
    border-bottom-color: var(--gold);
}

.join-content h3 {
    color: var(--accent);
}

.join-content hr {
    border-top-color: var(--border);
}

.join-cta {
    background: var(--bg-alt);
}

.cta-box h2 {
    color: #f7fafc;
}

.cta-box p {
    color: var(--text-light);
}

.cta-button {
    background: linear-gradient(135deg, var(--accent) 0%, #003f58 100%);
}

.cta-button:hover {
    box-shadow: 0 8px 25px rgba(99, 179, 237, 0.4);
}

/* Members List */
.members-section-title {
    color: #f7fafc;
    border-bottom-color: var(--border);
}

.member-card {
    background: #161b22;
}

.member-card:hover {
    border-color: var(--accent);
}

.member-card-photo img {
    border-color: var(--accent);
}

.member-card-photo-placeholder {
    background: var(--border);
}

.member-card-name {
    color: #f7fafc;
}

.member-card-role {
    color: var(--text-light);
}

/* Collaborators */
.collaborators-list li {
    background: #161b22;
}

.collaborator-name {
    color: #f7fafc;
}

.collaborator-affiliation {
    color: var(--text-light);
}

/* Member Profile */
.member-name {
    color: #f7fafc;
}

.member-role {
    color: var(--accent);
}

.member-affiliation {
    color: var(--text-light);
}

.member-photo img {
    border-color: var(--accent);
}

.member-content h2 {
    color: #f7fafc;
}

.member-links {
    border-top-color: var(--border);
}

.member-links h3 {
    color: #f7fafc;
}

.member-links a {
    background: var(--bg-alt);
    border-color: var(--border);
}

.member-links a:hover {
    background: var(--accent);
    border-color: var(--accent);
}

/* Paper Stats */
.paper-stats-card-link {
    background: var(--bg-alt);
}

.paper-stat-icon {
    color: var(--accent);
}

.paper-stat-number {
    color: var(--accent);
}

.paper-stat-label {
    color: var(--text);
}
