:root{--color-bg: #fdf6ec;--color-bg-alt: #f5eadb;--color-bg-sunken: #ede0cc;--color-surface: #fff8f0;--color-text: #3b2e1e;--color-text-muted: #7a6248;--color-text-faint: #b89a7a;--color-heading: #2c1f0f;--color-accent: #c4622d;--color-accent-hover: #a04e22;--color-accent-soft: #e8c49a;--color-border: #c9a882;--color-border-strong: #8a6540;--color-border-pixel: #3b2e1e;--color-terminal-bg: #1a0f00;--color-terminal-fg: #e6a817;--color-terminal-dim: #9a6c10;--color-terminal-glow: rgba(230, 168, 23, .12);--color-tag-code: #2d5a27;--color-tag-art: #5a2d6e;--color-tag-writing: #2d4a5a;--color-tag-music: #5a3a2d;--color-tag-note: #4a4a2d;--color-tag-guide: #2d4a3a;--color-tag-bookmark: #4a2d2d;--font-body: "Lora", Georgia, "Times New Roman", serif;--font-heading: "DM Serif Display", Georgia, serif;--font-ui: "Inter", system-ui, sans-serif;--font-mono: "JetBrains Mono", "Courier New", Courier, monospace;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--leading-tight: 1.25;--leading-snug: 1.375;--leading-normal: 1.5;--leading-relaxed: 1.625;--leading-loose: 2;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--radius-sm: 2px;--radius-md: 4px;--radius-lg: 8px;--shadow-card: 2px 2px 0 var(--color-border-strong);--shadow-card-lg: 4px 4px 0 var(--color-border-strong);--shadow-inset: inset 2px 2px 0 var(--color-border);--sidebar-width: 220px;--content-max: 860px;--prose-max: 680px;--gap-layout: var(--space-8);--header-height: 56px}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:400;line-height:var(--leading-tight);color:var(--color-heading)}h1{font-size:var(--text-4xl)}h2{font-size:var(--text-3xl)}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}h5{font-size:var(--text-lg)}h6{font-size:var(--text-base)}.prose{max-width:var(--prose-max);font-size:var(--text-base);line-height:var(--leading-relaxed)}.prose>*+*{margin-top:var(--space-4)}.prose h2{margin-top:var(--space-10)}.prose h3{margin-top:var(--space-8)}.prose h4{margin-top:var(--space-6)}.prose h2,.prose h3,.prose h4{margin-bottom:var(--space-3)}.prose p{line-height:var(--leading-relaxed)}.prose ul,.prose ol{padding-left:var(--space-6)}.prose li+li{margin-top:var(--space-2)}.prose a{color:var(--color-accent);font-weight:500}.prose strong{font-weight:600;color:var(--color-heading)}.prose em{font-style:italic}.prose img{border:2px solid var(--color-border);box-shadow:var(--shadow-card);border-radius:var(--radius-md);margin:var(--space-6) auto}.prose blockquote{margin:var(--space-6) 0}.prose table{width:100%;border-collapse:collapse;font-family:var(--font-ui);font-size:var(--text-sm)}.prose th{background:var(--color-bg-sunken);font-weight:600;text-align:left;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border)}.prose td{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border)}.prose tr:nth-child(2n) td{background:var(--color-bg-alt)}.prose h2 a,.prose h3 a,.prose h4 a{color:inherit;text-decoration:none}.prose h2 a:hover,.prose h3 a:hover,.prose h4 a:hover{color:var(--color-accent)}.ui-text{font-family:var(--font-ui)}.mono{font-family:var(--font-mono)}.text-muted{color:var(--color-text-muted)}.text-faint{color:var(--color-text-faint)}.text-sm{font-size:var(--text-sm)}.text-xs{font-size:var(--text-xs)}.site-wrapper{display:grid;grid-template-columns:var(--sidebar-width) 1fr;grid-template-rows:auto 1fr auto;grid-template-areas:"header  header" "sidebar main" "footer  footer";gap:0 var(--gap-layout);max-width:calc(var(--sidebar-width) + var(--content-max) + var(--gap-layout) + var(--space-8) * 2);margin:0 auto;padding:0 var(--space-8);min-height:100vh}.site-header{grid-area:header}.site-sidebar{grid-area:sidebar;position:sticky;top:var(--space-4);align-self:start;max-height:calc(100vh - var(--space-8));overflow-y:auto}.site-main{grid-area:main;padding:var(--space-8) 0;min-width:0}.site-footer{grid-area:footer}.site-wrapper--full{display:block;max-width:var(--content-max);margin:0 auto;padding:0 var(--space-8);min-height:100vh}@media(max-width:700px){.site-wrapper{grid-template-columns:1fr;grid-template-areas:"header" "sidebar" "main" "footer";padding:0 var(--space-4);gap:0}.site-sidebar{position:static;max-height:none;overflow-y:visible;border-bottom:2px solid var(--color-border);padding-bottom:var(--space-4);margin-bottom:var(--space-4)}.site-wrapper--full{padding:0 var(--space-4)}}.content-max{max-width:var(--content-max)}.prose-max{max-width:var(--prose-max)}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-5)}.card-grid--tight{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--space-4)}.stack>*+*{margin-top:var(--space-4)}.stack-sm>*+*{margin-top:var(--space-2)}.stack-lg>*+*{margin-top:var(--space-8)}.pixel-border{border:2px solid var(--color-border-strong);box-shadow:inset -2px -2px 0 var(--color-border),inset 2px 2px 0 var(--color-bg-alt),4px 4px 0 var(--color-border-pixel)}.pixel-bevel{border:2px solid;border-color:var(--color-bg-alt) var(--color-border-pixel) var(--color-border-pixel) var(--color-bg-alt);box-shadow:inset 1px 1px 0 var(--color-surface),inset -1px -1px 0 var(--color-border-strong)}.terminal-box{background:var(--color-terminal-bg);color:var(--color-terminal-fg);font-family:var(--font-mono);font-size:var(--text-sm);line-height:var(--leading-relaxed);padding:var(--space-4) var(--space-6);border:2px solid var(--color-border-pixel);box-shadow:4px 4px 0 var(--color-border-strong);border-radius:var(--radius-sm);position:relative}.terminal-box:before{content:attr(data-title);display:block;font-size:var(--text-xs);color:var(--color-terminal-dim);border-bottom:1px solid var(--color-terminal-dim);padding-bottom:var(--space-2);margin-bottom:var(--space-3);text-transform:uppercase;letter-spacing:.08em}.terminal-box .prompt{color:var(--color-terminal-dim);user-select:none}.terminal-box .prompt:before{content:attr(data-prompt,"$ ")}.badge-shelf{display:flex;flex-wrap:wrap;gap:var(--space-1);padding:var(--space-3);background:var(--color-bg-sunken);border:2px solid var(--color-border)}.badge-88x31{display:block;width:88px;height:31px;image-rendering:pixelated;image-rendering:crisp-edges;border:1px solid var(--color-border-strong);transition:opacity .1s}.badge-88x31:hover{opacity:.85}.tag-pill{display:inline-flex;align-items:center;font-family:var(--font-ui);font-size:var(--text-xs);font-weight:500;padding:.15em .55em;border:1px solid currentColor;border-radius:var(--radius-sm);text-decoration:none;line-height:1.6;opacity:.85}.tag-pill:hover{opacity:1}.tag-pill--code{color:var(--color-tag-code)}.tag-pill--art{color:var(--color-tag-art)}.tag-pill--writing{color:var(--color-tag-writing)}.tag-pill--music{color:var(--color-tag-music)}.tag-pill--note{color:var(--color-tag-note)}.tag-pill--guide{color:var(--color-tag-guide)}.tag-pill--bookmark{color:var(--color-tag-bookmark)}.tag-pill--default{color:var(--color-text-muted)}.card{background:var(--color-surface);border:2px solid var(--color-border-strong);box-shadow:var(--shadow-card);padding:var(--space-5);border-radius:var(--radius-sm);transition:box-shadow .15s ease,transform .1s ease}.card:hover{box-shadow:var(--shadow-card-lg);transform:translate(-1px,-1px)}.card a.card-link{color:inherit;text-decoration:none}.btn{display:inline-flex;align-items:center;gap:var(--space-2);font-family:var(--font-ui);font-size:var(--text-sm);font-weight:500;padding:var(--space-2) var(--space-4);cursor:pointer;border-radius:var(--radius-sm);text-decoration:none;transition:all .1s ease}.btn--primary{background:var(--color-accent);color:#fff8f0;border:2px solid var(--color-accent-hover);box-shadow:2px 2px 0 var(--color-border-pixel)}.btn--primary:hover{background:var(--color-accent-hover);transform:translate(-1px,-1px);box-shadow:3px 3px 0 var(--color-border-pixel);color:#fff8f0}.btn--primary:active{transform:translate(1px,1px);box-shadow:1px 1px 0 var(--color-border-pixel)}.btn--ghost{background:transparent;color:var(--color-text-muted);border:2px solid var(--color-border)}.btn--ghost:hover{border-color:var(--color-border-strong);color:var(--color-text)}.form-field{display:flex;flex-direction:column;gap:var(--space-1)}.form-field label{font-family:var(--font-ui);font-size:var(--text-sm);font-weight:500;color:var(--color-text-muted)}.form-field input,.form-field textarea{background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);color:var(--color-text);font-size:var(--text-base);transition:border-color .15s;width:100%}.form-field input:focus,.form-field textarea:focus{outline:none;border-color:var(--color-accent)}.form-field textarea{resize:vertical;min-height:100px}.section-heading{font-family:var(--font-heading);font-size:var(--text-xl);color:var(--color-heading);border-bottom:2px solid var(--color-border);padding-bottom:var(--space-2);margin-bottom:var(--space-6);display:flex;align-items:baseline;gap:var(--space-3)}.section-heading .section-heading__decoration{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-faint)}.tabs{display:flex;flex-wrap:wrap;gap:0;border-bottom:2px solid var(--color-border);margin-bottom:var(--space-6)}.tab-input{display:none}.tab-label{font-family:var(--font-ui);font-size:var(--text-sm);font-weight:500;padding:var(--space-2) var(--space-5);cursor:pointer;border:2px solid transparent;border-bottom:none;color:var(--color-text-muted);background:transparent;position:relative;bottom:-2px;transition:color .1s,background .1s}.tab-label:hover{color:var(--color-text);background:var(--color-bg-alt)}.tab-input:checked+.tab-label{color:var(--color-heading);background:var(--color-bg);border-color:var(--color-border);border-bottom-color:var(--color-bg)}.tab-content{display:none;width:100%}#tab-code:checked~.tab-content--code{display:block}#tab-art:checked~.tab-content--art{display:block}#tab-writing:checked~.tab-content--writing{display:block}#tab-music:checked~.tab-content--music{display:block}.pixel-divider{border:none;height:6px;background-image:repeating-linear-gradient(90deg,var(--color-border-strong) 0,var(--color-border-strong) 4px,transparent 4px,transparent 8px);margin:var(--space-6) 0;opacity:.5}.nav-tree{list-style:none;font-family:var(--font-ui);font-size:var(--text-sm)}.nav-tree a{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);color:var(--color-text-muted);text-decoration:none;border-left:2px solid transparent;transition:all .1s}.nav-tree a:hover{color:var(--color-text);border-left-color:var(--color-border-strong);background:var(--color-bg-alt)}.nav-tree a[aria-current=page]{color:var(--color-accent);border-left-color:var(--color-accent);background:var(--color-accent-soft)}.breadcrumb{display:flex;align-items:center;gap:var(--space-2);font-family:var(--font-ui);font-size:var(--text-xs);color:var(--color-text-faint);margin-bottom:var(--space-6);list-style:none}.breadcrumb a{color:var(--color-text-muted);text-decoration:none}.breadcrumb a:hover{color:var(--color-accent)}.breadcrumb li+li:before{content:"›";color:var(--color-text-faint)}.pagination{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-top:var(--space-12);padding-top:var(--space-6);border-top:2px solid var(--color-border);font-family:var(--font-ui);font-size:var(--text-sm)}.pagination a{text-decoration:none}.widget{background:var(--color-bg-alt);border:2px solid var(--color-border);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm)}.widget__title{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-faint);text-transform:uppercase;letter-spacing:.08em;margin-bottom:var(--space-2);padding-bottom:var(--space-2);border-bottom:1px dashed var(--color-border)}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.blink{animation:blink 1.2s step-end infinite}.cursor:after{content:"▋";font-family:var(--font-mono);color:var(--color-terminal-fg);animation:blink 1s step-end infinite;margin-left:1px}.crt-overlay{position:relative}.crt-overlay:after{content:"";pointer-events:none;position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.04) 2px,rgba(0,0,0,.04) 4px);border-radius:inherit}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .3s ease forwards}@media(prefers-reduced-motion:reduce){.blink,.cursor:after{animation:none;opacity:1}.fade-in{animation:none}.crt-overlay:after{display:none}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-relaxed);min-height:100vh}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}a{color:var(--color-accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;transition:color .15s ease}a:hover{color:var(--color-accent-hover)}hr{border:none;border-top:2px solid var(--color-border);margin:var(--space-6) 0}code{font-family:var(--font-mono);font-size:.875em;background:var(--color-bg-sunken);color:var(--color-accent-hover);padding:.1em .35em;border-radius:var(--radius-sm);border:1px solid var(--color-border)}pre{border:2px solid var(--color-border-strong);box-shadow:var(--shadow-card);border-radius:var(--radius-md);overflow-x:auto}pre code{background:none;border:none;padding:0;color:inherit;font-size:var(--text-sm)}blockquote{border-left:4px solid var(--color-border-strong);padding-left:var(--space-4);color:var(--color-text-muted);font-style:italic}:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg-alt)}::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-accent)}::selection{background:var(--color-accent-soft);color:var(--color-heading)}
