@tailwind base;@tailwind components;@tailwind utilities;@layer base{:root{--font-display: "ivymode", Georgia, "Times New Roman", serif;--font-serif: Baskerville, "Baskerville Old Face", "Hoefler Text", Garamond, "Times New Roman", serif;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: "SF Mono", Monaco, "Cascadia Code", "Courier New", monospace;--color-text: #515151;--color-text-dark: #333030;--color-bg: #fbfbfb;--color-bg-light: #fafafa;--color-gray-light: #ecf0f1;--color-gray-medium: #a0a0a0;--color-gray-dark: #ada8a8;--color-primary: #263959;--color-link: #0d7377;--color-link-hover: #14a3a8}*{box-sizing:border-box}body{font-family:var(--font-sans);color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media(prefers-color-scheme:dark){body{background-color:#011716;color:#eeeac8}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;opacity:.5;z-index:-1}}}@layer components{.hero-section{display:flex;align-items:center;justify-content:center;padding:3rem 2rem 1rem}.hero-content{display:flex;flex-direction:column;align-items:center;gap:2rem;text-align:center}.logo-wrap{flex-shrink:0;display:flex;align-items:center;gap:1.5rem}.logo a{font-family:var(--font-display);font-size:4.5rem;font-weight:400;letter-spacing:.05em;text-decoration:none;color:#000;transition:color .3s ease}.logo a:hover{color:#666}@media(prefers-color-scheme:dark){.logo a{color:#eeeac8}.logo a:hover{color:#b8b5a0}}.preserve-whitespace{white-space:nowrap}nav{display:flex;align-items:center;justify-content:center}.pages{display:flex;gap:2rem;align-items:center;justify-content:center}.link-title a,.gallery-title a{text-decoration:none;color:#000;font-size:1rem;font-family:var(--font-sans);letter-spacing:.05em;text-transform:uppercase;transition:color .3s ease;position:relative}.link-title a:hover,.gallery-title a:hover{color:#666}@media(prefers-color-scheme:dark){.link-title a,.gallery-title a{color:#ff8c42}.link-title a:hover,.gallery-title a:hover{color:#ff6b1a}}.link-title a:hover:after,.gallery-title a:hover:after{content:"";position:absolute;bottom:-4px;left:0;right:0;height:1px;background-color:#000}@media(prefers-color-scheme:dark){.link-title a:hover:after,.gallery-title a:hover:after{background-color:#ff8c42}}.social{display:flex;justify-content:center}.social ul{display:flex;gap:1.5rem;list-style:none;margin:0;padding:0}.social li{margin:0;padding:0}.social a{display:flex;align-items:center;justify-content:center;width:32px;height:32px;transition:opacity .3s ease}.social a:hover{opacity:.6}.social .icon{width:100%;height:100%;fill:#000}@media(prefers-color-scheme:dark){.social .icon{fill:#eeeac8}}.hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px;z-index:999}.hamburger span{width:25px;height:2px;background-color:#000;transition:all .3s ease}@media(prefers-color-scheme:dark){.hamburger span{background-color:#eeeac8}}.mobile-menu{display:none;position:fixed;top:0;right:-100%;width:70%;max-width:300px;height:100vh;background:#fff;box-shadow:-2px 0 10px #0000001a;transition:right .3s ease;z-index:1000}.mobile-menu.open{right:0}@media(prefers-color-scheme:dark){.mobile-menu{background:#051511;box-shadow:-2px 0 10px #ffffff1a}}.mobile-nav{padding:4rem 2rem 2rem;display:flex;flex-direction:column;gap:3rem}.mobile-nav .pages{flex-direction:column;gap:2rem}.mobile-social ul{justify-content:flex-start}.close-button{position:absolute;top:1.5rem;right:1.5rem;background:none;border:none;cursor:pointer;padding:.5rem;width:40px;height:40px;display:flex;align-items:center;justify-content:center;color:#000;transition:opacity .3s ease}.close-button:hover{opacity:.6}.close-button svg{width:24px;height:24px}@media(prefers-color-scheme:dark){.close-button{color:#eeeac8}}.bio-section{padding:2rem 2rem 4rem;display:flex;flex-direction:column;align-items:center;gap:2rem}.bio-section img{width:280px;height:360px;object-fit:cover;border-radius:24px}.bio-content{max-width:36rem;font-size:1.125rem;line-height:1.75;color:#1f2937;text-align:justify}.bio-content p{margin-bottom:1.5rem}.bio-content p:first-child{font-size:1.25rem;font-weight:500;color:#000}.bio-content p:last-child{margin-bottom:0}@media(prefers-color-scheme:dark){.bio-section img{border:2px solid #ff8c42}.bio-content{color:#d5d3c0}.bio-content p:first-child{color:#eeeac8}.bio-content a{color:#ff8c42}.bio-content a:hover{color:#ff6b1a}}.footer-section{display:flex;justify-content:center;padding:2rem 2rem 3rem}.footer-shoe{width:60px;height:60px;filter:invert(1)}@media(prefers-color-scheme:dark){.footer-shoe{filter:invert(0)}}@media(max-width:768px){.logo a{font-size:2.2rem;letter-spacing:.1em}.hero-content{gap:2rem}.pages{flex-direction:column;gap:1.5rem}.social ul{gap:1.5rem}.bio-section{padding:3rem 1.5rem}.bio-content{font-size:1rem;line-height:1.65}.bio-content p:first-child{font-size:1.125rem}.hamburger{display:flex}.mobile-menu{display:block}.desktop-nav,.desktop-social{display:none}}@media(min-width:769px)and (max-width:1024px){.logo a{font-size:3.5rem}.hero-content{gap:2.5rem}.bio-section{padding:3.5rem 2rem}}.blog-wrapper{display:flex;flex-direction:column;align-items:center;padding:20px}.blog-container{max-width:1220px;width:100%;display:flex;gap:20px}.blog-sidebar{width:280px;flex-shrink:0;position:sticky;top:20px;align-self:flex-start;background:#fff;border-radius:10px;border:1px solid rgba(31,35,46,.15);box-shadow:0 1px 1px #1f232e26;padding:20px;max-height:calc(100vh - 40px);overflow-y:auto}.blog-content{flex:1;max-width:1000px}.sidebar-section{margin-bottom:2rem}.sidebar-section:last-child{margin-bottom:0}.sidebar-title{font-size:.875rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem;color:var(--color-text-dark)}.sidebar-about{font-size:.9rem;line-height:1.6;color:var(--color-text)}.sidebar-links{list-style:none;padding:0;margin:0}.sidebar-links li{margin-bottom:.5rem}.sidebar-links a{font-size:.9rem;color:var(--color-link);text-decoration:none;transition:color .3s ease}.sidebar-links a:hover{color:var(--color-link-hover)}.sidebar-copyright{font-size:.75rem;color:var(--color-gray-medium);line-height:1.5}.sidebar-author{text-align:center}.author-image{max-width:240px;margin:0 auto 1rem}.author-image img{width:100%;border-radius:10px;box-shadow:0 1px 1px #1f232e26;transition:transform .35s ease}.author-image img:hover{transform:scale(1.05)}.author-name{font-family:var(--font-display);font-size:1.5rem;font-weight:400;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-dark);margin-bottom:.75rem}.author-social{display:flex;justify-content:center;gap:1rem;margin-top:1rem}.author-social a{display:inline-flex;align-items:center;justify-content:center;color:var(--color-text-dark);transition:all .35s cubic-bezier(.175,.885,.32,1.275)}.author-social a:hover{transform:scale(1.2)}.sidebar-centered,.sidebar-centered .sidebar-links{text-align:center}.sidebar-links-inline{text-align:center;line-height:1.8}.sidebar-links-inline .blogroll-item{display:inline;white-space:nowrap}.sidebar-links-inline a{font-size:.9rem;color:var(--color-link);text-decoration:none;transition:color .3s ease}.sidebar-links-inline a:hover{color:var(--color-link-hover)}.post-card{display:flex;flex-direction:row;min-height:120px;background:#fff;border-radius:10px;border:1px solid rgba(31,35,46,.15);box-shadow:0 1px 1px #1f232e26;overflow:hidden;text-decoration:none;transition:all .3s ease;margin-bottom:1.5rem}.post-card:hover{transform:translateY(-2px);box-shadow:0 15px 45px -10px #0a102233}.post-thumbnail{width:160px;min-height:120px;align-self:stretch;flex-shrink:0;object-fit:cover;border-left:1px solid rgba(31,35,46,.1)}.post-info{flex:1;padding:1rem 1.25rem;display:flex;flex-direction:column;justify-content:center}.post-title{font-family:var(--font-display);font-size:22px;font-weight:400;letter-spacing:.02em;color:var(--color-primary);margin:0 0 .5rem;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.post-excerpt{font-size:14px;color:var(--color-text);line-height:1.5;margin:0 0 .5rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.post-meta{font-size:11px;color:var(--color-gray-medium);text-transform:uppercase;letter-spacing:.05em;display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.post-date:after{content:" • ";margin:0 .25rem}.post-tag{font-size:10px;text-transform:uppercase;letter-spacing:.05em;padding:.15rem .5rem;background:var(--color-gray-light);color:var(--color-primary);border-radius:3px;border:1px solid rgba(31,35,46,.1)}.blog-header{max-width:1220px;width:100%;margin-bottom:3rem;text-align:center}.blog-header-title{font-family:var(--font-display);font-size:3.5rem;font-weight:400;letter-spacing:.02em;color:var(--color-primary);margin:0 0 1rem}.blog-header-subtitle{font-size:1.125rem;color:var(--color-text);line-height:1.6;margin:0}.post-page{display:flex;justify-content:center;padding:20px;min-height:100vh;position:relative}.post-container{max-width:800px;width:100%}.toc-sidebar{position:fixed;left:20px;top:100px;width:180px;max-height:calc(100vh - 120px);overflow-y:auto;padding-right:10px}.toc-content{display:flex;flex-direction:column;gap:.5rem}.toc-link{font-size:.75rem;color:var(--color-gray-medium);text-decoration:none;line-height:1.4;transition:color .2s ease;border-left:2px solid transparent;padding-left:.5rem}.toc-link:hover{color:var(--color-link)}.toc-link.active{color:var(--color-primary);border-left-color:var(--color-primary)}.toc-level-2{padding-left:1rem}.toc-level-3{padding-left:1.5rem;font-size:.7rem}.toc-sidebar::-webkit-scrollbar{width:4px}.toc-sidebar::-webkit-scrollbar-track{background:transparent}.toc-sidebar::-webkit-scrollbar-thumb{background:var(--color-gray-light);border-radius:2px}.post-back-link{display:inline-block;font-size:.875rem;color:var(--color-text);text-decoration:none;margin-bottom:2rem;transition:color .3s ease}.post-back-link:hover{color:var(--color-link)}.post-article{background:#fff;border-radius:10px;border:1px solid rgba(31,35,46,.15);box-shadow:0 1px 1px #1f232e26;overflow:hidden}.post-header{padding:3rem 3rem 2rem;text-align:center;border-bottom:1px solid rgba(31,35,46,.1)}.post-page-title{font-family:var(--font-display);font-size:2.5rem;font-weight:400;letter-spacing:.02em;color:var(--color-primary);margin:0 0 1rem;line-height:1.3}.post-page-date{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--color-gray-medium)}.post-page-tags{display:flex;justify-content:center;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.post-page-tag{font-size:.625rem;text-transform:uppercase;letter-spacing:.05em;padding:.25rem .75rem;background:var(--color-gray-light);color:var(--color-primary);border:1px solid rgba(31,35,46,.1);border-radius:4px;text-decoration:none;transition:all .3s ease}.post-page-tag:hover{background:var(--color-primary);color:#fff}.post-body{padding:3rem;line-height:1.8;color:var(--color-text)}.post-body h1{font-family:var(--font-display);font-size:2rem;font-weight:400;color:var(--color-primary);margin:2.5rem 0 1rem;letter-spacing:.02em}.post-body h2{font-family:var(--font-display);font-size:1.75rem;font-weight:400;color:var(--color-primary);margin:2rem 0 1rem;letter-spacing:.02em}.post-body h3{font-family:var(--font-display);font-size:1.5rem;font-weight:400;color:var(--color-primary);margin:1.75rem 0 .75rem;letter-spacing:.02em}.post-body p{margin:0 0 1.5rem}.post-body a{color:var(--color-link);text-decoration:none;transition:color .3s ease}.post-body a:hover{color:var(--color-link-hover)}.post-body ul,.post-body ol{margin:0 0 1.5rem;padding-left:2rem}.post-body li{margin-bottom:.5rem}.post-body blockquote{border-left:5px solid black;padding-left:1.1rem;margin:1.5rem 0 1.5rem 1rem;font-style:italic;color:var(--color-gray-dark)}.post-body code{font-family:var(--font-mono);font-size:.9em;background:var(--color-gray-light);padding:.2em .4em;border-radius:3px}.post-body pre{background:var(--color-gray-light);padding:1rem;border-radius:5px;overflow-x:auto;margin:1.5rem 0}.post-body pre code{background:none;padding:0}.post-body img{max-width:100%;height:auto;border-radius:10px;margin:2rem 0}.post-footer{padding:2rem 3rem;border-top:1px solid rgba(31,35,46,.1);display:flex;justify-content:space-between;align-items:center}.comments-section{padding:0 3rem 2rem;border-top:1px solid rgba(31,35,46,.1)}.comments-section a{color:var(--color-link);text-decoration:none;transition:color .3s ease}.comments-section a:hover{color:var(--color-link-hover)}@media(max-width:900px){.blog-container{flex-direction:column}.blog-sidebar{width:100%;position:static;max-height:none;order:2;margin-top:2rem}.blog-content{order:1}.post-card{flex-direction:column;height:auto}.post-thumbnail{width:100%;height:150px}.post-info{padding:1rem}.blog-header-title{font-size:2.5rem}.blog-wrapper,.post-page{padding:10px}.post-header{padding:2rem 1.5rem 1.5rem}.post-page-title{font-size:1.75rem}.post-body{padding:1.5rem}.post-footer{padding:1.5rem;flex-direction:column;gap:1rem;align-items:flex-start}.toc-sidebar{display:none}}@media(prefers-color-scheme:dark){body{background-color:#011716;color:#eeeac8}.blog-header-title{color:#eeeac8}.blog-header-subtitle{color:#d5d3c0}.blog-sidebar{background:#012d2999;border-color:#ff8c4233;box-shadow:0 1px 1px #0000004d}.author-name{color:#eeeac8}.sidebar-about{color:#d5d3c0}.author-social a,.sidebar-title{color:#eeeac8}.sidebar-links a{color:#ff8c42}.sidebar-links a:hover{color:#ff6b1a}.sidebar-links-inline a{color:#ff8c42}.sidebar-links-inline a:hover{color:#ff6b1a}.sidebar-links-inline .blogroll-item:not(:first-child):before{color:#a09e8c}.sidebar-copyright{color:#a09e8c}.post-card{background:#012d2999;border-color:#ff8c4233;box-shadow:0 1px 1px #0000004d}.post-card:hover{box-shadow:0 15px 45px -10px #00000080;border-color:#ff8c4266}.post-title{color:#eeeac8}.post-excerpt{color:#d5d3c0}.post-meta{color:#a09e8c}.post-tag{background:#012d29cc;color:#d5d3c0;border-color:#ff8c424d}.post-thumbnail{border-left-color:#ff8c4233}.post-article{background:#012d2999;border-color:#ff8c4233;box-shadow:0 1px 1px #0000004d}.post-header{border-bottom-color:#ff8c4233}.post-page-title{color:#eeeac8}.post-page-date{color:#a09e8c}.post-page-tag{background:#012d29cc;color:#d5d3c0;border-color:#ff8c424d}.post-page-tag:hover{background:#ff8c42;color:#011716}.post-body{color:#d5d3c0}.post-body h1,.post-body h2,.post-body h3{color:#eeeac8}.post-body a{color:#ff8c42}.post-body a:hover{color:#ff6b1a}.post-body blockquote{border-left-color:#ff8c42;color:#b5b3a0}.post-body code{background:#012d29cc;color:#eeeac8}.post-body pre{background:#012d29cc}.post-footer{border-top-color:#ff8c4233}.post-back-link{color:#d5d3c0}.post-back-link:hover{color:#ff8c42}.comments-section{border-top-color:#ff8c4233}.comments-section a{color:#ff8c42}.comments-section a:hover{color:#ff6b1a}.toc-link{color:#a09e8c}.toc-link:hover{color:#ff8c42}.toc-link.active{color:#eeeac8;border-left-color:#ff8c42}.toc-sidebar::-webkit-scrollbar-thumb{background:#ff8c424d}}}
