@font-face{font-family:Lexend;font-style:normal;font-weight:300 600;font-display:swap;src:url(/fonts/lexend.woff2) format("woff2")}@font-face{font-family:Lexend Mega;font-style:normal;font-weight:600 700;font-display:swap;src:url(/fonts/lexend-mega.woff2) format("woff2")}@font-face{font-family:Lexend Zetta;font-style:normal;font-weight:900;font-display:swap;src:url(/fonts/lexend-zetta.woff2) format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 500;font-display:swap;src:url(/fonts/jetbrains-mono.woff2) format("woff2")}:root{--font-logo: "Lexend Zetta", sans-serif;--font-heading: "Lexend Mega", sans-serif;--font-body: "Lexend", sans-serif;--font-code: "JetBrains Mono", monospace;--black: #000000;--white: #ffffff;--bg: var(--white);--text: var(--black);--border: var(--black);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-8: 3rem;--space-10: 4rem;--space-12: 5rem;--sidebar-width: clamp(200px, 22vw, 280px);--header-height: var(--space-12);--radius: 12px}:root.dark{--bg: var(--black);--text: var(--white);--border: var(--white)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-body);font-weight:300;font-size:1rem;line-height:1.7;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}body{min-height:100vh;padding-top:var(--header-height);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}img{-webkit-user-drag:none;user-drag:none;-webkit-touch-callout:none;pointer-events:none}.app-header{position:fixed;top:0;left:0;width:100%;height:var(--header-height);z-index:10;background:var(--bg);display:flex;align-items:center}.header-logo{width:var(--sidebar-width);flex-shrink:0;padding-left:calc(var(--space-5) - 5px);font-family:var(--font-logo);font-size:clamp(1.4rem,2.2vw,2.5rem);letter-spacing:-.02em;text-decoration:none;color:var(--text);white-space:nowrap;line-height:1.1;overflow:visible;box-sizing:border-box}.header-logo:hover{color:var(--text)}.header-links{flex:1;display:flex;justify-content:flex-end;align-items:center;gap:clamp(var(--space-4),2vw,var(--space-6));padding:0 clamp(var(--space-4),3vw,var(--space-8)) 0 0}.header-links a{font-family:var(--font-heading);font-size:.9rem;font-weight:600;text-decoration:none;color:var(--text);letter-spacing:.02em;white-space:nowrap;transition:color .15s}.header-links a:hover{color:var(--text)}.menu-toggle{display:none}.layout{display:flex;width:100%;min-height:calc(100vh - var(--header-height))}.sidebar{position:fixed;top:var(--header-height);left:0;width:var(--sidebar-width);height:calc(100vh - var(--header-height));z-index:1;overflow:visible}.sidebar-inner{padding:var(--space-5) var(--space-5) var(--space-5);display:flex;flex-direction:column;height:100%;overflow-y:auto}.clock{font-family:var(--font-heading);font-size:.85rem;font-weight:500;color:var(--text);letter-spacing:.04em;margin-top:calc(var(--space-2) - 2px);margin-bottom:var(--space-4)}.nav{display:flex;flex-direction:column;gap:0}.nav a{font-family:var(--font-body);font-weight:700;font-size:.85rem;text-decoration:none;color:var(--text);padding:.15rem 0;letter-spacing:.01em;transition:color .15s}.nav a:hover,.nav a.active{color:var(--text)}.sidebar-footer{margin-top:auto;padding-top:var(--space-4)}.theme-toggle{display:block;width:100%;background:none;border:none;border-radius:var(--radius);cursor:pointer;font-family:var(--font-body);font-size:.75rem;color:var(--text);padding:.15rem .5rem .15rem 0;letter-spacing:.03em;text-align:left}.theme-toggle:hover{color:var(--text)}.theme-toggle--floating{display:none}.main{margin-left:var(--sidebar-width);width:calc(100% - var(--sidebar-width));padding:var(--space-6) clamp(var(--space-5),3vw,var(--space-8));min-height:calc(100vh - var(--header-height))}a{color:var(--text);text-decoration:underline;text-underline-offset:.15em}a:hover{color:var(--text)}h1,h2,h3,h4{font-family:var(--font-heading);font-weight:700;line-height:1.2}h1{font-size:clamp(1.5rem,2.5vw,2.5rem);margin-bottom:var(--space-4)}.main h1{margin-left:-4px;margin-top:-5px}h2{font-size:clamp(1.15rem,1.8vw,1.8rem);margin-top:var(--space-5);margin-bottom:var(--space-2)}h3{font-size:clamp(1rem,1.3vw,1.3rem);margin-top:var(--space-4);margin-bottom:var(--space-2)}p{margin-bottom:var(--space-3)}img{max-width:100%;height:auto;border-radius:var(--radius)}hr{border:none;border-top:1px solid var(--border);margin:var(--space-5) 0}.content{max-width:70ch}.content h1:first-child{margin-top:0}.content h1{margin-bottom:var(--space-2)}.content time{display:block;margin-bottom:var(--space-5);font-family:var(--font-heading);font-size:.75rem;letter-spacing:.04em}.content p{margin-bottom:var(--space-4)}.content h2{margin-top:var(--space-8);margin-bottom:var(--space-3)}.content h3{margin-top:var(--space-6);margin-bottom:var(--space-3)}.tag{display:inline-block;font-size:.7rem;color:var(--text);border:1px solid var(--text);border-radius:var(--radius);padding:var(--space-1) var(--space-2);margin-right:var(--space-1);margin-bottom:var(--space-1)}.writings-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4)}.writings-card{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;transition:border-color .15s}.writings-card:hover{border-color:var(--text)}.card-image{aspect-ratio:16 / 9;display:flex;align-items:center;justify-content:center;color:var(--text);font-size:.75rem}.card-image img{width:100%;height:100%;object-fit:cover}.card-body{padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2);flex:1}.card-body time{font-size:.75rem;color:var(--text);letter-spacing:.04em;text-transform:uppercase}.card-body h2{margin:0;font-size:1.1rem}.card-body h2 a{text-decoration:none;color:var(--text)}.card-body h2 a:hover{color:var(--text)}.card-body p{font-size:.85rem;color:var(--text);margin:0;line-height:1.5}.card-footer{margin-top:auto;padding-top:var(--space-1)}.see-more{font-size:.8rem;color:var(--text);text-decoration:none;font-weight:500;letter-spacing:.02em}.see-more:hover{color:var(--text)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3)}.frame{aspect-ratio:4 / 3;border:1px solid var(--border);border-radius:var(--radius);display:flex;align-items:center;justify-content:center;font-family:var(--font-body);font-size:.7rem;color:var(--text);letter-spacing:.04em}.site-footer{margin-left:var(--sidebar-width);padding:var(--space-4) clamp(var(--space-4),3vw,var(--space-8)) var(--space-6);font-family:var(--font-heading);font-size:.6rem;font-weight:500;letter-spacing:.06em;color:var(--text);text-align:right}@media(max-width:768px){body{padding-top:0}.app-header{position:relative;height:auto;justify-content:center;padding:var(--space-2) var(--space-4)}.header-logo{width:auto;padding-left:0;font-size:1.8rem;text-align:center}.menu-toggle{display:block;position:absolute;right:var(--space-4);top:50%;transform:translateY(-50%);background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text);z-index:2;padding:var(--space-1);line-height:1}.header-links{position:absolute;top:100%;left:0;width:100%;z-index:999;background:var(--bg);flex-direction:column;align-items:center;gap:var(--space-8);max-height:0;overflow:hidden;padding:0 var(--space-4);transition:max-height .4s ease,padding .4s ease;box-shadow:0 4px 12px #00000014}:root.dark .header-links{box-shadow:0 4px 12px #0006}.header-links.open{max-height:600px;padding:var(--space-5) var(--space-4)}.sidebar{position:relative;top:auto;width:100%;height:auto;z-index:auto;border-right:none}.sidebar-inner{padding:var(--space-3) var(--space-4);height:auto;overflow:visible;align-items:center;text-align:center}.nav{flex-direction:column;gap:var(--space-2);align-items:center}.nav a{text-align:center;font-size:.8rem}.sidebar-footer{display:none}.theme-toggle--floating{display:block;position:fixed;bottom:var(--space-4);right:var(--space-4);z-index:100;width:auto;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);text-align:center;font-family:var(--font-body);font-size:.75rem;color:var(--text);letter-spacing:.03em;cursor:pointer;line-height:1}.theme-toggle--floating:hover{color:var(--text)}.clock{margin-bottom:var(--space-2);text-align:center}.main{margin-left:0;width:100%;padding:var(--space-4)}.main h1,.main h2,.main h3,.main h4{text-align:left}.layout{flex-direction:column;min-height:auto}.gallery{grid-template-columns:1fr}.site-footer{margin-left:0;text-align:center;padding:var(--space-3) var(--space-4) var(--space-5)}.writings-grid{grid-template-columns:1fr}}
