:root{--color-bg: #f9f6f2;--color-surface: #ffffff;--color-border: rgba(0, 0, 0, .09);--color-text: #1c1c1e;--color-muted: #636366;--color-accent: #cf3a10;--bg-gradient: radial-gradient(ellipse 90% 60% at 5% 0%, rgba(230, 74, 25, .07) 0%, transparent 60%), radial-gradient(ellipse 70% 70% at 95% 100%, rgba(130, 80, 255, .05) 0%, transparent 60%);--particle-base: .18;--particle-range: .22;--font-heading: "Fira Sans", sans-serif;--font-body: "Source Serif 4", serif;--radius: 16px}:root[data-theme=dark]{--color-bg: #0a0a0a;--color-surface: #111111;--color-border: #606060;--color-text: #e8e8e8;--color-muted: #a8a8a8;--color-accent: #e64a19;--bg-gradient: radial-gradient(ellipse 90% 60% at 5% 0%, rgba(230, 74, 25, .1) 0%, transparent 60%), radial-gradient(ellipse 70% 70% at 95% 100%, rgba(130, 80, 255, .08) 0%, transparent 60%);--particle-base: .25;--particle-range: .35}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--color-bg: #0a0a0a;--color-surface: #111111;--color-border: #606060;--color-text: #e8e8e8;--color-muted: #a8a8a8;--color-accent: #e64a19;--bg-gradient: radial-gradient(ellipse 90% 60% at 5% 0%, rgba(230, 74, 25, .1) 0%, transparent 60%), radial-gradient(ellipse 70% 70% at 95% 100%, rgba(130, 80, 255, .08) 0%, transparent 60%);--particle-base: .25;--particle-range: .35}}:root[data-pixel]{--font-heading: "VT323", monospace;--font-body: "VT323", monospace;--radius: 0}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}html{cursor:url(/cursor.png) 1 1,auto}a,button,[role=button],.theme-toggle,.pixel-toggle{cursor:url(/pointer.png) 12 0,pointer}:root[data-pixel] body{font-size:21px;letter-spacing:.01em}body{background:var(--bg-gradient),var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased;transition:background-color .4s ease,color .4s ease}a{color:var(--color-text);text-decoration:none}#page{position:relative;z-index:1;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:48px 24px}.page-inner{width:100%;max-width:900px;display:flex;flex-direction:column;gap:40px}.site-footer{text-align:center;display:flex;flex-direction:column;align-items:center;gap:6px}.site-footer p{font-family:var(--font-heading);font-size:.78rem;color:var(--color-muted);letter-spacing:.02em;transition:color .4s ease}.footer-controls{display:flex;gap:12px;margin-bottom:10px}.theme-toggle,.pixel-toggle{position:relative;width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface);color:var(--color-muted);cursor:url(/pointer.png) 12 0,pointer;overflow:hidden;transition:color .2s ease,border-color .2s ease,transform .2s ease,background-color .4s ease}.theme-toggle:hover,.pixel-toggle:hover{color:var(--color-accent);transform:scale(1.08)}.theme-toggle:active,.pixel-toggle:active{transform:scale(.94)}.theme-toggle svg{position:absolute;width:16px;height:16px}.pixel-toggle svg{width:17px;height:17px}:root[data-pixel] .pixel-toggle{color:var(--color-accent);border-color:var(--color-accent)}.theme-toggle .icon-sun{opacity:1}.theme-toggle .icon-moon{opacity:0}:root[data-theme=dark] .theme-toggle .icon-sun{opacity:0}:root[data-theme=dark] .theme-toggle .icon-moon{opacity:1}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .theme-toggle .icon-sun{opacity:0}:root:not([data-theme=light]) .theme-toggle .icon-moon{opacity:1}}@keyframes icon-exit-br{0%{opacity:1;transform:translate(0) scale(1)}40%{opacity:.7;transform:translate(18px,4px) scale(.55)}to{opacity:0;transform:translate(22px,26px) scale(.15)}}@keyframes icon-enter-bl{0%{opacity:0;transform:translate(-22px,26px) scale(.15)}60%{opacity:.7;transform:translate(-7px,5px) scale(.55)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes icon-exit-bl{0%{opacity:1;transform:translate(0) scale(1)}40%{opacity:.7;transform:translate(-18px,4px) scale(.55)}to{opacity:0;transform:translate(-22px,26px) scale(.15)}}@keyframes icon-enter-br{0%{opacity:0;transform:translate(22px,26px) scale(.15)}60%{opacity:.7;transform:translate(7px,5px) scale(.55)}to{opacity:1;transform:translate(0) scale(1)}}.icon-exit-br{animation:icon-exit-br .24s ease-in forwards}.icon-enter-bl{animation:icon-enter-bl .24s ease-out both}.icon-exit-bl{animation:icon-exit-bl .24s ease-in forwards}.icon-enter-br{animation:icon-enter-br .24s ease-out both}@media(prefers-reduced-motion:reduce){.icon-exit-br,.icon-enter-bl,.icon-exit-bl,.icon-enter-br{animation:none}.footer-emoji{transition:none}.footer-emoji:hover{transform:none}}:root[data-pixel] .theme-toggle,:root[data-pixel] .pixel-toggle{border-radius:0}:root[data-pixel] #bg-canvas{image-rendering:pixelated}.bento{width:100%;display:grid;grid-template-columns:1fr;gap:16px}@media(min-width:768px){.bento{grid-template-columns:repeat(3,1fr);grid-template-rows:auto auto;row-gap:28px}.card-about{grid-column:span 2}.card-thoughts{grid-column:span 3}}.card{position:relative;border:1px solid transparent;border-radius:var(--radius);padding:32px;overflow:hidden;transform-style:preserve-3d;transition:transform .4s ease,box-shadow .4s ease,background-color .4s ease;will-change:transform;box-shadow:0 2px 16px #0000000f,0 1px 3px #0000000a;background:linear-gradient(var(--color-surface),var(--color-surface)) padding-box,radial-gradient(120px circle at var(--mouse-x, -9999px) var(--mouse-y, -9999px),rgba(192,38,211,.9),rgba(230,74,25,.6) 50%,var(--color-border) 100%) border-box}.card:hover{box-shadow:0 8px 32px #0000001a,0 2px 6px #0000000d}.card-inner{position:relative;z-index:1}:root[data-pixel] .card{background:var(--color-surface);border:4px solid var(--color-text);box-shadow:inset 3px 3px #ffffff2e,inset -3px -3px #0000004d,6px 6px 0 var(--color-accent);transition:transform .1s steps(2),box-shadow .1s steps(2)}:root[data-pixel] .card:hover{transform:translate(-2px,-2px);box-shadow:inset 3px 3px #0003,inset -3px -3px #ffffff1f,8px 8px 0 var(--color-accent)}.icon .icon-pixel{display:none}:root[data-pixel] .icon .icon-normal{display:none}:root[data-pixel] .icon .icon-pixel{display:block}.card-heading{font-family:var(--font-heading);font-size:1.5rem;font-weight:700;letter-spacing:-.02em;color:var(--color-text);margin-bottom:12px}:root[data-pixel] .card-heading{font-family:"Press Start 2P",monospace;font-size:1rem;font-weight:400;line-height:1.6;letter-spacing:0;margin-bottom:18px}.card-bio{color:var(--color-muted);font-size:1rem}.bio-tags{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.bio-tag{font-family:var(--font-heading);font-size:.8rem;color:var(--color-muted);padding:5px 12px;border:1px solid var(--color-border);border-radius:999px}:root[data-pixel] .bio-tag{border-radius:0;border-width:2px;font-size:1rem}.footer-emoji{display:inline-block;transition:transform .2s ease;cursor:default}.footer-emoji:hover{transform:scale(3)}.sticker{position:absolute;width:100px;height:100px;cursor:pointer;user-select:none;z-index:100;transform-origin:center center}.sticker-tiny{width:36px;height:36px}.sticker img{width:100%;height:100%;display:block;pointer-events:none;-webkit-user-drag:none}.contact-links{display:flex;flex-direction:column;gap:14px}.contact-link{display:flex;align-items:center;gap:10px;color:var(--color-muted);font-family:var(--font-heading);font-size:.95rem;transition:color .2s ease}.contact-link:hover{color:var(--color-accent)}.contact-link-icon{color:var(--color-accent);flex-shrink:0;transition:transform .2s ease}.contact-link:hover .contact-link-icon{transform:translate(3px)}.post-list{list-style:none;display:flex;flex-direction:column}.post-list li{border-bottom:1px solid var(--color-border)}.post-list li:last-child{border-bottom:none}.post-list li a{display:flex;align-items:center;gap:10px;padding:11px 0;font-family:var(--font-heading);font-size:.95rem;color:var(--color-text);transition:color .2s ease}.post-arrow{color:var(--color-accent);flex-shrink:0;transition:transform .2s ease}.post-title{flex:1}.post-date{font-size:.78rem;color:var(--color-muted);white-space:nowrap;transition:color .2s ease}.post-list li a:hover{color:var(--color-accent)}.post-list li a:hover .post-arrow{transform:translate(3px)}.thoughts-footer{margin-top:16px;padding-top:14px;border-top:1px solid var(--color-border)}.thoughts-footer a{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-heading);font-size:.85rem;color:var(--color-muted);transition:color .2s ease}.thoughts-footer-icon{color:var(--color-accent);flex-shrink:0;transition:transform .2s ease}.thoughts-footer a:hover{color:var(--color-accent)}.thoughts-footer a:hover .thoughts-footer-icon{transform:translate(2px,-2px)}#bg-canvas{position:fixed;inset:0;z-index:0;pointer-events:none}
