/* Home page styles */

.hero {
    text-align: center;
    margin-bottom: var(--space-xxl);
}

.three-container {
    width: 100%;
    height: 400px;
    position: relative;
    border: 1px solid var(--color-border);
    border-radius: var(--border-radius);
    margin-bottom: var(--space-lg);
}

.loading-indicator {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 1rem;
    color: var(--color-accent);
}

.hero-text {
    font-size: 1.1rem;
    color: var(--color-text-secondary);
    margin-bottom: var(--space-md);
}

.hero-subtext {
    font-size: 0.95rem;
    color: var(--color-text-secondary);
}

.section-title {
    font-size: 1rem;
    margin-bottom: var(--space-md);
    color: var(--color-text-secondary);
    font-family: var(--font-mono);
}

.topics-section,
.featured-section,
.entry-section {
    margin-bottom: var(--space-xxl);
}

.topics-grid {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-sm);
}

.topic-link {
    color: var(--color-text-primary);
    text-decoration: none;
    padding: var(--space-sm) var(--space-md);
    border: 1px solid var(--color-border);
    border-radius: var(--border-radius);
    background: var(--color-surface);
    font-size: 0.9rem;
    transition: all 0.2s ease;
}

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

.featured-grid {
    display: grid;
    gap: var(--space-md);
}

.featured-card {
    text-decoration: none;
    padding: var(--space-md);
    border: 1px solid var(--color-border);
    border-radius: var(--border-radius);
    background: var(--color-surface);
    display: block;
}

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

.featured-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: var(--space-xs);
}

.featured-title {
    color: var(--color-accent);
    font-family: var(--font-mono);
}

.featured-description {
    color: var(--color-text-secondary);
    font-size: 0.9rem;
}

.entry-links {
    display: flex;
    gap: var(--space-md);
    flex-wrap: wrap;
    justify-content: center;
}

.entry-link-primary {
    color: var(--color-accent);
    text-decoration: none;
    padding: var(--space-sm) var(--space-lg);
    border: 1px solid var(--color-accent);
    border-radius: var(--border-radius);
}

.entry-link-secondary {
    color: var(--color-text-secondary);
    text-decoration: none;
    padding: var(--space-sm) var(--space-lg);
    border: 1px solid var(--color-border);
    border-radius: var(--border-radius);
}

#reroll-btn {
    background: none;
    border: none;
    color: var(--color-text-secondary);
    cursor: pointer;
    font-size: 1rem;
    padding: 0 var(--space-xs);
    opacity: 0.6;
    transition: opacity 0.2s;
}

#reroll-btn:hover {
    opacity: 1;
    color: var(--color-accent);
}
