:root{--color-text: #1a1a1a;--color-muted: #555;--color-border: #e0e0e0;--color-bg: #ffffff;--color-bg-subtle: #f7f7f7;--color-accent: #1a56db;--color-accent-hover: #1240a8;--font-sans: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--max-width: 760px;--max-width-wide: 1100px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{font-family:var(--font-sans);font-size:1rem;line-height:1.7;color:var(--color-text);background:var(--color-bg)}img{max-width:100%;display:block}a{color:var(--color-accent);text-decoration:none}a:hover{text-decoration:underline;color:var(--color-accent-hover)}.container{max-width:var(--max-width-wide);margin:0 auto;padding:0 1.25rem}.site-header{border-bottom:1px solid var(--color-border);padding:.875rem 0;background:var(--color-bg);position:sticky;top:0;z-index:100}.site-header .container{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem}.site-logo{font-size:1.2rem;font-weight:700;color:var(--color-text);text-decoration:none;letter-spacing:-.02em}.site-logo:hover{text-decoration:none;color:var(--color-text)}.site-nav ul{list-style:none;display:flex;gap:1.5rem;flex-wrap:wrap}.site-nav a{color:var(--color-muted);font-size:.875rem;font-weight:500;text-decoration:none}.site-nav a:hover{color:var(--color-accent);text-decoration:none}main{min-height:calc(100vh - 180px);padding:2.5rem 0 4rem}.site-footer{border-top:1px solid var(--color-border);background:var(--color-bg-subtle);padding:2rem 0;font-size:.875rem;color:var(--color-muted)}.site-footer .container{display:flex;flex-direction:column;gap:.4rem}.footer-brand{font-weight:700;color:var(--color-text);font-size:.95rem}.footer-nav{display:flex;gap:1rem;flex-wrap:wrap;margin:.25rem 0}.footer-nav a{color:var(--color-muted);text-decoration:none}.footer-nav a:hover{color:var(--color-accent)}.footer-copy{margin-top:.4rem;font-size:.8rem}.footer-disclaimer{margin-top:.5rem;font-size:.7rem;color:var(--color-muted);opacity:.7}.page-header{margin-bottom:2rem}.page-header h1{font-size:2rem;font-weight:700;line-height:1.2;letter-spacing:-.02em;margin-bottom:.75rem}.page-intro{color:var(--color-muted);font-size:1.05rem;max-width:var(--max-width)}.hub-page,.article-page{max-width:var(--max-width);margin:0 auto}.page-body h2{font-size:1.35rem;font-weight:700;margin:2rem 0 .65rem;letter-spacing:-.01em}.page-body h3{font-size:1.05rem;font-weight:600;margin:1.5rem 0 .4rem}.page-body p{margin-bottom:1rem}.page-body ul,.page-body ol{margin:.5rem 0 1rem 1.5rem}.page-body li{margin-bottom:.35rem}.hero{padding:3rem 0 2.5rem;border-bottom:1px solid var(--color-border);margin-bottom:3rem}.hero h1{font-size:2.25rem;font-weight:800;letter-spacing:-.03em;line-height:1.15;margin-bottom:.875rem;max-width:580px}.hero p{color:var(--color-muted);font-size:1.05rem;max-width:500px}.section-title{font-size:1.15rem;font-weight:700;margin-bottom:1.25rem;letter-spacing:-.01em}.hub-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem;margin-bottom:3rem}.hub-card{border:1px solid var(--color-border);border-radius:8px;padding:1.25rem;text-decoration:none;color:var(--color-text);display:block;transition:border-color .15s,box-shadow .15s}.hub-card:hover{border-color:var(--color-accent);box-shadow:0 2px 8px #0000000f;text-decoration:none;color:var(--color-text)}.hub-card h2{font-size:.975rem;font-weight:600;margin-bottom:.35rem}.hub-card p{font-size:.85rem;color:var(--color-muted);margin:0}.tracker-section{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:8px;padding:1.5rem;max-width:620px}.tracker-section h2{font-size:1.05rem;font-weight:700;margin-bottom:.5rem}.tracker-section p{font-size:.9rem;color:var(--color-muted);margin:0}.about-section{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--color-border);max-width:620px}.about-section h2{font-size:1.05rem;font-weight:700;margin-bottom:.5rem}.about-section p{font-size:.9rem;color:var(--color-muted)}.related-section{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--color-border)}.related-section h2{font-size:1.05rem;font-weight:700;margin-bottom:.875rem}.related-list{list-style:none;display:flex;flex-direction:column;gap:.5rem}.related-list li:before{content:"→ ";color:var(--color-muted)}.related-list li a{font-size:.9rem}@media(max-width:640px){.hero h1{font-size:1.75rem}.page-header h1{font-size:1.6rem}.site-nav ul{gap:.875rem}.hub-grid{grid-template-columns:1fr}}
