*,*:before,*:after{box-sizing:border-box}:root{--bg: #f7f4ef;--surface: #ffffff;--text: #1a1a1a;--text-muted: #6b6560;--accent: #c45c26;--accent-hover: #a34a1d;--border: #e8e2d9;--danger: #b42318;--shadow: 0 12px 40px rgba(26, 26, 26, .08);--radius: 14px;--font-sans: "DM Sans", system-ui, sans-serif;--font-serif: "Instrument Serif", Georgia, serif}body{margin:0;min-height:100vh;font-family:var(--font-sans);color:var(--text);background:radial-gradient(circle at top left,rgba(196,92,38,.08),transparent 28%),var(--bg);line-height:1.6}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}#root{min-height:100vh}.container{width:min(920px,calc(100% - 2rem));margin:0 auto}.app-shell{min-height:100vh;display:flex;flex-direction:column}.site-header{padding:1.25rem 0 2rem}.site-header .container{display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand{font-family:var(--font-serif);font-size:2rem;font-weight:400;letter-spacing:-.02em}.brand span{color:var(--accent)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:none;border-radius:999px;padding:.7rem 1.2rem;cursor:pointer;transition:transform .15s ease,background .15s ease,color .15s ease}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover)}.btn-secondary{background:transparent;color:var(--text);border:1px solid var(--border)}.btn-danger{background:#fff5f5;color:var(--danger);border:1px solid #f3c7c4}main{flex:1;padding-bottom:4rem}.page-title{font-family:var(--font-serif);font-size:clamp(2.2rem,5vw,3.4rem);font-weight:400;line-height:1.1;margin:0 0 .75rem}.page-subtitle{color:var(--text-muted);margin:0 0 2rem;max-width:42rem}.post-grid{display:grid;gap:1.25rem}.post-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;box-shadow:var(--shadow);transition:transform .2s ease,box-shadow .2s ease}.post-card:hover{transform:translateY(-2px);box-shadow:0 18px 48px #1a1a1a1a}.post-card h2{font-family:var(--font-serif);font-size:1.8rem;font-weight:400;margin:0 0 .5rem}.post-meta{color:var(--text-muted);font-size:.9rem;margin-bottom:.75rem}.post-excerpt{margin:0;color:#3f3a36}.post-detail{background:var(--surface);border:1px solid var(--border);border-radius:calc(var(--radius) + 4px);padding:clamp(1.5rem,4vw,2.5rem);box-shadow:var(--shadow)}.post-detail h1{font-family:var(--font-serif);font-size:clamp(2.4rem,6vw,3.8rem);font-weight:400;line-height:1.05;margin:0 0 1rem}.post-content{white-space:pre-wrap;font-size:1.05rem}.post-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}.form-card{background:var(--surface);border:1px solid var(--border);border-radius:calc(var(--radius) + 4px);padding:clamp(1.5rem,4vw,2rem);box-shadow:var(--shadow)}.form-group{display:grid;gap:.5rem;margin-bottom:1.25rem}.form-group label{font-weight:600}.form-group input,.form-group textarea{width:100%;border:1px solid var(--border);border-radius:12px;padding:.85rem 1rem;background:#fffdfa}.form-group textarea{min-height:280px;resize:vertical}.checkbox-row{display:flex;align-items:center;gap:.6rem}.form-actions{display:flex;flex-wrap:wrap;gap:.75rem}.status-message{padding:1rem 1.1rem;border-radius:12px;margin-bottom:1rem}.status-message.error{background:#fff5f5;color:var(--danger);border:1px solid #f3c7c4}.status-message.loading{background:#fff8ef;color:#8a5a1d;border:1px solid #f0dfc7}.empty-state{padding:2rem;text-align:center;color:var(--text-muted);border:1px dashed var(--border);border-radius:var(--radius);background:#fff9}@media(max-width:640px){.site-header .container,.post-actions,.form-actions{flex-direction:column;align-items:stretch}.btn{width:100%}}
