@import url('https://fonts.googleapis.com/css2?family=Press+Start+2P&family=VT323&display=swap'); :root { --hot-pink: #ff2fa0; --deep-purple: #2a0a3d; --lime: #c6ff00; --paper: #fdf6e9; --ink: #17101f; --border-width: 3px; } * { box-sizing: border-box; } body { margin: 0; font-family: 'VT323', monospace; font-size: 20px; color: var(--ink); background-color: var(--deep-purple); background-image: radial-gradient(var(--hot-pink) 2px, transparent 2px), radial-gradient(var(--hot-pink) 2px, transparent 2px); background-size: 40px 40px; background-position: 0 0, 20px 20px; } /* ------ layout shell ------ */ .page { max-width: 780px; margin: 40px auto; padding: 0 16px 60px; } /* ------ marquee banner (a wink, not a crutch) ------ */ marquee, .marquee-fallback { display: block; background: var(--ink); color: var(--lime); font-family: 'Press Start 2P', monospace; font-size: 12px; padding: 8px 0; border: var(--border-width) solid var(--ink); margin-bottom: 20px; } /* ------ site header ------ */ .site-header { text-align: center; margin-bottom: 24px; } .site-title { font-family: 'Press Start 2P', monospace; font-size: 28px; color: var(--paper); text-shadow: 4px 4px 0 var(--hot-pink); margin: 0 0 6px; letter-spacing: 1px; } .site-tagline { color: var(--lime); font-size: 20px; margin: 0; } /* ------ tab navigation ------ */ nav.tabs { display: flex; gap: 6px; margin: 0; padding: 0 0 0 12px; } nav.tabs a { font-family: 'Press Start 2P', monospace; font-size: 11px; text-decoration: none; color: var(--ink); background: var(--paper); border: var(--border-width) solid var(--ink); border-bottom: none; padding: 10px 14px; border-radius: 8px 8px 0 0; position: relative; top: 3px; transition: transform 0.1s ease, background 0.15s ease; } nav.tabs a:hover { background: var(--lime); transform: translateY(-3px); } nav.tabs a.active { background: var(--hot-pink); color: var(--paper); top: 0; } /* ------ main content card ------ */ .content { background: var(--paper); border: var(--border-width) solid var(--ink); border-radius: 0 8px 8px 8px; padding: 28px 30px; box-shadow: 8px 8px 0 var(--ink); } .content h1 { font-family: 'Press Start 2P', monospace; font-size: 18px; margin-top: 0; color: var(--hot-pink); -webkit-text-stroke: 1px var(--ink); } .content h2 { font-family: 'Press Start 2P', monospace; font-size: 14px; color: var(--deep-purple); border-bottom: 2px dashed var(--deep-purple); padding-bottom: 6px; } .content p, .content li { font-size: 21px; line-height: 1.5; } .content a { color: var(--deep-purple); text-decoration: underline wavy var(--hot-pink); } .content a:hover { background: var(--lime); } /* ------ decorative divider ------ */ .divider { text-align: center; letter-spacing: 10px; color: var(--hot-pink); margin: 24px 0; font-size: 14px; } /* ------ button row (webring / linkback style) ------ */ .button-row { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; } .button-row .btn88 { width: 88px; height: 31px; background: var(--ink); color: var(--lime); font-family: 'Press Start 2P', monospace; font-size: 7px; display: flex; align-items: center; justify-content: center; text-align: center; border: 2px solid var(--lime); text-decoration: none; line-height: 1.3; } /* ------ footer ------ */ .site-footer { text-align: center; color: var(--paper); font-size: 16px; margin-top: 30px; } .blink { animation: blink 1.2s steps(1) infinite; } @keyframes blink { 50% { opacity: 0; } } @media (max-width: 500px) { .site-title { font-size: 20px; } nav.tabs { flex-wrap: wrap; padding-left: 0; } .content { padding: 20px; } }