/* Reset and base styles */ * { margin: 0; padding: 0; box-sizing: border-box; } body { font-family: 'Courier New', Courier, monospace; line-height: 1.5; color: #000; background-color: #fff; } .container { max-width: 900px; margin: 0 auto; padding: 0 1rem; } /* Header and Navigation */ header { border-bottom: 3px solid #000; padding: 1.5rem 0; margin-bottom: 2rem; } nav .container { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 1rem; } .nav-brand a { color: #000; text-decoration: none; font-size: 1.5rem; font-weight: bold; text-transform: uppercase; letter-spacing: 2px; } .nav-links { display: flex; list-style: none; gap: 1.5rem; } .nav-links a { color: #000; text-decoration: none; text-transform: lowercase; } .nav-links a:hover, .nav-links a.active { text-decoration: line-through; } /* Main content */ main { min-height: calc(100vh - 250px); padding: 0 0 3rem 0; } /* Page header */ .page-header { margin-bottom: 2rem; padding-bottom: 1rem; border-bottom: 2px solid #000; } .page-header h1 { color: #000; font-size: 2rem; text-transform: uppercase; letter-spacing: 1px; } .page-header p { margin-top: 0.5rem; font-size: 0.9rem; } /* Content sections */ .about-content { max-width: 700px; } .about-content h2 { color: #000; margin-top: 2rem; margin-bottom: 0.5rem; text-transform: uppercase; font-size: 1.2rem; letter-spacing: 1px; } .about-content p { margin-bottom: 1rem; } .about-content ul { margin-left: 1.5rem; margin-bottom: 1rem; } .about-content li { margin-bottom: 0.3rem; } /* Button */ .btn { display: inline-block; padding: 0.6rem 1.2rem; background-color: #000; color: #fff; text-decoration: none; border: 2px solid #000; cursor: pointer; font-size: 0.9rem; font-family: 'Courier New', Courier, monospace; text-transform: uppercase; letter-spacing: 1px; } .btn:hover { background-color: #fff; color: #000; } /* Error page */ .error-page { text-align: center; padding: 4rem 1rem; } .error-page h1 { font-size: 6rem; color: #000; margin-bottom: 1rem; } .error-page h2 { color: #000; margin-bottom: 1rem; text-transform: uppercase; } .error-page p { color: #000; margin-bottom: 2rem; } /* Comic Container */ .comic-container { border: 3px solid #000; padding: 1rem; } .comic-header { margin-bottom: 1.5rem; padding-bottom: 1rem; border-bottom: 2px solid #000; } .comic-header h1 { color: #000; font-size: 1.5rem; margin-bottom: 0.25rem; text-transform: uppercase; letter-spacing: 1px; } .comic-date { color: #000; font-size: 0.85rem; } /* Comic Image */ .comic-image { text-align: center; margin-bottom: 1.5rem; padding: 0.5rem; background: #fff; } .comic-image img { max-width: 100%; height: auto; display: block; margin: 0 auto; } /* Comic Navigation */ .comic-navigation { border-top: 2px solid #000; padding-top: 1rem; margin-bottom: 1rem; } .nav-buttons { display: flex; justify-content: center; align-items: center; gap: 0.5rem; flex-wrap: wrap; } .btn-nav { padding: 0.4rem 0.8rem; font-size: 0.8rem; } .btn-disabled { background-color: #fff; color: #999; border-color: #999; cursor: not-allowed; } .btn-disabled:hover { background-color: #fff; color: #999; } .comic-number { padding: 0.4rem 0.8rem; background-color: #000; color: #fff; border: 2px solid #000; font-weight: bold; margin: 0 0.25rem; font-size: 0.8rem; text-transform: uppercase; } /* Comic Transcript */ .comic-transcript { border: 2px solid #000; padding: 1rem; margin-top: 1rem; } .comic-transcript h3 { color: #000; margin-bottom: 0.5rem; text-transform: uppercase; font-size: 0.9rem; letter-spacing: 1px; } .comic-transcript p { color: #000; line-height: 1.6; font-size: 0.9rem; } /* Archive Content */ .archive-content { margin-top: 1rem; } .archive-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 1rem; } .archive-item { border: 2px solid #000; overflow: hidden; } .archive-item:hover { background: #f0f0f0; } .archive-item a { text-decoration: none; color: #000; display: block; } .archive-item img { width: 100%; height: 120px; object-fit: cover; display: block; border-bottom: 2px solid #000; } .archive-info { padding: 0.75rem; } .archive-info h3 { color: #000; font-size: 0.85rem; margin-bottom: 0.25rem; line-height: 1.3; text-transform: uppercase; } .archive-date { color: #000; font-size: 0.75rem; } /* Responsive adjustments */ @media (max-width: 768px) { .nav-brand a { font-size: 1.2rem; } .nav-links { gap: 1rem; } .btn-nav { padding: 0.3rem 0.6rem; font-size: 0.75rem; } .comic-number { padding: 0.3rem 0.6rem; font-size: 0.75rem; } .archive-grid { grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 0.75rem; } .comic-container { padding: 0.75rem; } } /* Footer */ footer { border-top: 3px solid #000; text-align: center; padding: 2rem 0; margin-top: 3rem; } footer p { margin: 0; color: #000; font-size: 0.85rem; text-transform: uppercase; letter-spacing: 1px; }