/* === Global reset & base styles === */ * { box-sizing: border-box; margin: 0; padding: 0; } html, body { height: 100%; } body { background-color: #1e1e2f; color: #e0e0e0; font-family: 'IBM Plex Sans', 'FreeSerif', serif; line-height: 1.7; font-size: 18px; max-width: 900px; margin: 0 auto; padding: 20px; } /* === Header & nav === */ header { text-align: center; margin-bottom: 40px; } nav ul { list-style: none; text-align: center; } nav ul li { display: inline-block; margin: 0 15px; } nav ul li.logo img { max-height: 70px; } nav ul li a { color: #a39cff; text-decoration: none; font-weight: 500; transition: color 0.2s; } nav ul li a:hover { color: #ffffff; } /* === Links === */ a { color: #9fa7ff; text-decoration: none; transition: color 0.2s; } a:hover { color: #ffffff; text-decoration: underline; } /* === Main content === */ main { margin: 0 auto; padding: 0 10px; font-size: 18px; } h1, h2, h3 { font-weight: 600; margin: 1.5rem 0 0.5rem; color: #c0c0ff; } h1 { font-size: 2.2rem; } h2 { font-size: 1.6rem; } /* === Paragraphs & spacing === */ p { margin: 1rem 0; } /* === Images === */ img { max-width: 100%; height: auto; display: block; margin: 1rem 0; } .right-image { float: right; margin: 0 0 10px 15px; } .left-image { float: left; margin: 0 15px 10px 0; } /* === Tags / meta === */ .tags, .tags2 { display: block; margin: 1rem 0; font-size: 0.9rem; color: #b0b0ff; } /* === Blockquotes === */ blockquote { border-left: 6px solid #a39cff; /* keeps your accent color */ background-color: #2e2460; /* slightly brighter than current bg */ color: #d0d0ff; /* lighter text for contrast */ font-style: italic; margin: 1.5rem 0; padding: 15px 20px; /* more breathing room inside */ border-radius: 8px; /* softer corners */ box-shadow: 0 4px 8px rgba(0, 0, 0, 0.4); /* subtle shadow for depth */ line-height: 1.6; } /* === Lists === */ ul, ol { margin: 1rem 0 1rem 2rem; } /* === Footer === */ footer { margin-top: 10px; border-top: 3px solid #444; color: #999; font-size: 0.9rem; } /* === Media queries (responsive) === */ @media (max-width: 600px) { main { padding: 0 5px; } nav ul li { display: block; margin: 10px 0; } .right-image, .left-image { float: none; margin: 10px auto; } } /* === Tables === */ table { width: 100%; border-collapse: collapse; margin: 1.5rem 0; background-color: #2a2a40; /* slightly lighter than body for contrast */ color: #e0e0e0; font-size: 16px; } thead { background-color: #3a3a5a; /* header row darker */ } th, td { padding: 12px 15px; text-align: left; border-bottom: 1px solid #444; /* subtle row separation */ } th { font-weight: 600; color: #c0c0ff; } tr:hover { background-color: #404060; /* highlight row on hover */ } /* Responsive table tweaks */ @media (max-width: 600px) { table, thead, tbody, th, td, tr { display: block; } thead tr { display: none; /* hide header row on small screens */ } tr { margin-bottom: 15px; border-bottom: 2px solid #444; } td { padding-left: 50%; position: relative; } td::before { content: attr(data-label); position: absolute; left: 15px; font-weight: 600; color: #a39cff; } } /* === Post footer: Back link left, tags right === */ .post-footer { display: flex; justify-content: space-between; /* Back left, tags right */ align-items: center; flex-wrap: wrap; /* ensures it wraps on smaller screens */ } .post-footer a { color: #9fa7ff; text-decoration: none; transition: color 0.2s; } .post-footer a:hover { color: #ffffff; text-decoration: underline; } .post-footer .post-tags { font-size: 0.9rem; color: #b0b0ff; } .post-footer .post-tags a { margin-right: 0.5rem; color: #9fa7ff; text-decoration: none; } .post-footer .post-tags a:hover { color: #ffffff; text-decoration: underline; } /* === Compact Header / Navigation === */ .site-nav { background-color: #24243a; padding: 8px 0; /* reduced vertical padding */ border-bottom: 2px solid #333; } .nav-container { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; max-width: 900px; margin: 0 auto; padding: 0 15px; /* slightly narrower horizontal padding */ } .site-title { font-size: 1.4rem; /* smaller title */ font-weight: 700; color: #c0c0ff; text-decoration: none; letter-spacing: 0.5px; } .site-title:hover { color: #ffffff; text-shadow: 0 0 6px rgba(160, 150, 255, 0.4); } .nav-right { list-style: none; display: flex; gap: 18px; /* tighter link spacing */ } .nav-right li a { color: #a39cff; text-decoration: none; font-weight: 500; position: relative; padding-bottom: 2px; font-size: 0.95rem; /* slightly smaller link text */ transition: color 0.2s, transform 0.2s; } .nav-right li a::after { content: ""; position: absolute; bottom: 0; left: 0; width: 0; height: 1px; /* thinner underline */ background: #9fa7ff; transition: width 0.3s ease; } .nav-right li a:hover { color: #ffffff; transform: translateY(-1px); } .nav-right li a:hover::after { width: 100%; } /* Mobile adjustments */ @media (max-width: 600px) { .nav-container { flex-direction: column; align-items: center; } .nav-right { flex-direction: column; gap: 8px; margin-top: 8px; } }