:root{--bg:#f5f7fb;--surface:#fff;--text:#202938;--accent:#1769aa;--link:#1769aa}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,'Noto Sans KR',sans-serif;line-height:1.7}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}.blog-wrap{max-width:1120px;margin:auto;padding:28px 20px}.blog-top{background:var(--surface);border-bottom:1px solid #e5eaf1}.blog-top .blog-wrap{display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{font-size:24px;font-weight:800;color:var(--text)}.blog-nav{display:flex;gap:18px;flex-wrap:wrap}.hero{padding:30px;border-radius:18px;background:var(--surface);margin:24px 0}.hero h1{margin:0 0 8px;font-size:32px}.post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.post-card{background:var(--surface);border-radius:14px;overflow:hidden;box-shadow:0 5px 22px #14213d0a;border:1px solid #e9edf3}.post-card img{width:100%;height:190px;object-fit:cover}.post-card .pad{padding:20px}.category{font-size:13px;color:var(--accent);font-weight:bold}.post-card h2{font-size:20px;line-height:1.4;margin:8px 0}.muted{color:#758095;font-size:13px}.post-content{background:var(--surface);padding:clamp(20px,5vw,54px);border-radius:16px;overflow-wrap:anywhere}.post-content img{max-width:100%;height:auto}.post-content table{max-width:100%;border-collapse:collapse}.post-content td,.post-content th{border:1px solid #ddd;padding:8px}.btn{display:inline-block;border:0;border-radius:8px;padding:10px 16px;background:var(--accent);color:white;cursor:pointer;font:inherit}.btn.secondary{background:#e9eef5;color:#253246}.field{width:100%;padding:11px;border:1px solid #cbd5e1;border-radius:8px;font:inherit;margin:5px 0 14px}.comment{padding:14px 0;border-bottom:1px solid #e5eaf1}.pagination{display:flex;gap:8px;justify-content:center;margin:30px}.admin-layout{max-width:1100px;margin:30px auto;padding:20px}.admin-panel{background:white;border:1px solid #e5eaf1;border-radius:12px;padding:24px;margin-bottom:20px}.admin-table{width:100%;border-collapse:collapse}.admin-table td,.admin-table th{text-align:left;padding:10px;border-bottom:1px solid #e5eaf1}@media(max-width:800px){.post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.post-grid{grid-template-columns:1fr}.blog-top .blog-wrap{align-items:flex-start;flex-direction:column}.hero h1{font-size:26px}}
