*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-bg: #EDEBE6;--color-surface: #F6F4F0;--color-surface-sunken: #E3E0DA;--color-text: #2C2820;--color-text-muted: #6B6460;--color-accent: #C09545;--color-accent-hover: #D4A850;--color-secondary: #2E5E70;--color-secondary-hover:#3E7A8C;--color-border: rgba(44, 40, 32, .12);--color-border-hover: rgba(44, 40, 32, .25);--color-success: #267A4A;--color-warning: #9E7220;--color-danger: #B83820;--color-focus-ring: #A87C2A;--font-display: "Fraunces", Georgia, "Times New Roman", serif;--font-sans: "Space Grotesk", -apple-system, system-ui, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", Consolas, monospace;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--shadow-lg: 0 10px 30px rgba(0, 0, 0, .1);--transition-fast: .15s ease;--transition-base: .2s ease;--sidebar-width: 240px;--sidebar-collapsed: 64px;--header-height: 56px}html{font-family:var(--font-sans);color:var(--color-text);background:var(--color-bg);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-height:100vh;background:var(--color-bg)}h1,h2,h3{font-family:var(--font-display);color:var(--color-text);line-height:1.3;font-weight:600}h4,h5,h6{font-family:var(--font-sans);color:var(--color-text);line-height:1.3;font-weight:600}p{color:var(--color-text-muted);line-height:1.6}a{color:var(--color-accent);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-accent-hover)}:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}code{font-family:var(--font-mono);font-size:.875em;background:var(--color-surface-sunken);padding:.15em .35em;border-radius:var(--radius-sm);color:var(--color-text)}pre{font-family:var(--font-mono);font-size:.875rem;line-height:1.7;overflow-x:auto;background:var(--color-surface-sunken);border-radius:var(--radius-md);border:1px solid var(--color-border);padding:var(--space-md);color:var(--color-text)}pre code{background:none;padding:0}img,svg{max-width:100%;height:auto}input,textarea,select{font-family:var(--font-sans)}button{font-family:var(--font-sans);cursor:pointer}@media(max-width:768px){:root{--sidebar-width: 0px}}
