:root{--color-text:#333;--color-text-muted:#666;--color-link:#f9652e;--color-link-hover:#d85525;--color-bg:#fff;--color-nav:#666;--max-width:720px;--font-stack:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box;margin:0;padding:0}body,html{height:100%}html{font-size:16px}body{font-family:var(--font-stack);color:var(--color-text);background:var(--color-bg);line-height:1.6;-webkit-font-smoothing:antialiased}.page-wrapper{display:flex;min-height:100vh}.sidebar{position:fixed;left:2rem;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:.5rem}.sidebar a{color:var(--color-nav);text-decoration:none;font-size:.9rem;transition:color .2s}.sidebar a.active,.sidebar a:hover{color:var(--color-link)}main{max-width:var(--max-width);margin:0 auto;padding:4rem 2rem;display:flex;flex-direction:column;justify-content:center;min-height:100vh}.header{margin-bottom:2rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.header h1{font-size:1.5rem;font-weight:600}.social-links{display:inline-flex;align-items:center;gap:.75rem;vertical-align:middle}.social-links a{color:var(--color-text-muted);display:inline-flex;transition:color .2s}.social-links a:hover{color:var(--color-link);text-decoration:none}h2{font-size:1.1rem;font-weight:600;margin-top:1rem}h2,p{margin-bottom:.75rem}a{color:var(--color-link);text-decoration:none}a:hover{text-decoration:underline}ul{list-style:none;margin-bottom:1rem}.story-list{list-style:disc;padding-left:1.25rem}li{margin-bottom:.5rem}.intro{color:var(--color-text-muted);margin-bottom:1.5rem}.intro-justify{text-align:justify;margin-bottom:1rem}.project-item{margin-bottom:.75rem}.project-item strong{font-weight:500}.project-item span{color:var(--color-text-muted)}@media (max-width:900px){.sidebar{position:static;transform:none;flex-direction:row;flex-wrap:wrap;gap:1rem;padding:1.5rem 2rem;border-bottom:1px solid #eee}main{min-height:auto;padding:2rem 1.5rem}}@media (max-width:600px){.header{flex-direction:column;align-items:flex-start}.sidebar{padding:1rem 1.5rem}main{padding:1.5rem}.header h1{margin-bottom:.5rem}.header h1,.social-links{display:block}}