
:root{--fg:#222;--muted:#666;--accent:#e0312f;--bg:#fafafa;--card:#fff;--border:#eee}
*{box-sizing:border-box}
body{margin:0;font-family:-apple-system,'Apple SD Gothic Neo','Malgun Gothic',sans-serif;color:var(--fg);background:var(--bg);line-height:1.7}
a{color:inherit;text-decoration:none}
header.site{background:#fff;border-bottom:1px solid var(--border);padding:28px 20px;text-align:center}
header.site h1{margin:0;font-size:26px;letter-spacing:-1px}
header.site p{margin:6px 0 0;color:var(--muted);font-size:14px}
nav.top{background:#fff;border-bottom:1px solid var(--border);display:flex;justify-content:center;gap:24px;padding:12px}
nav.top a{font-size:14px;color:var(--muted)} nav.top a:hover{color:var(--accent)}
main{max-width:860px;margin:0 auto;padding:28px 20px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px}
.card{background:var(--card);border:1px solid var(--border);border-radius:12px;overflow:hidden;transition:box-shadow .15s}
.card:hover{box-shadow:0 4px 16px rgba(0,0,0,.07)}
.card .thumb{height:140px;display:flex;align-items:center;justify-content:center;font-size:44px;color:#fff}
.card .body{padding:14px 16px}
.card h3{margin:0 0 6px;font-size:16px}
.card p{margin:0;font-size:13px;color:var(--muted)}
.card .meta{margin-top:10px;font-size:12px;color:#999}
.t1{background:linear-gradient(135deg,#ff8a65,#e0312f)} .t2{background:linear-gradient(135deg,#64b5f6,#1976d2)}
.t3{background:linear-gradient(135deg,#aed581,#558b2f)} .t4{background:linear-gradient(135deg,#ba68c8,#6a1b9a)}
article.post{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:28px 32px}
article.post h2{margin-top:0;font-size:22px}
.date{color:#999;font-size:13px;margin-bottom:18px}
.post-img{height:200px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:64px;color:#fff;margin:18px 0}
ul{padding-left:22px}
.cta{display:inline-block;background:var(--accent);color:#fff;padding:12px 22px;border-radius:8px;font-size:15px;margin-top:14px}
.cta:hover{opacity:.9}
.note{background:#fff8e1;border:1px solid #ffe082;border-radius:8px;padding:12px 16px;font-size:13px;color:#7a5c00;margin:20px 0}
footer{max-width:860px;margin:40px auto 0;padding:24px 20px;border-top:1px solid var(--border);color:var(--muted);font-size:12px;text-align:center}
.back{display:inline-block;margin-bottom:14px;color:var(--muted);font-size:14px}
.prod{border:1px solid var(--border);border-radius:10px;padding:18px 20px;margin-top:8px;background:#fff}
.plabel{font-size:13px;font-weight:700;color:var(--accent);margin-bottom:6px}
.pname{font-size:16px;font-weight:600;line-height:1.4}
.pprice{font-size:14px;color:var(--muted);margin-top:4px}
.palt{margin-top:10px;font-size:13px}
.palt a{color:var(--muted);text-decoration:underline}

/* review section */
.revsec{margin:34px 0 8px;padding:22px 20px;background:#f7f5f1;border-radius:14px}
.revsec h3{margin:0 0 12px;font-size:19px}
.revrate{margin:0 0 14px;color:#5c5348;font-size:15px}
.revrate b{color:#b3541e}
.revquote{margin:0 0 14px;padding:14px 16px;background:#fff;border-left:4px solid #d9c9a3;border-radius:8px}
.revquote p{margin:0 0 8px;font-size:15px;line-height:1.7;color:#332e28}
.revquote footer{font-size:13px;color:#8a7f70}
.revquote footer span{color:#a89c8a}
.revimgs{display:flex;gap:12px;margin:14px 0 6px;flex-wrap:wrap}
.revimgs figure{margin:0;flex:1 1 240px;max-width:340px}
.revimgs img{width:100%;height:240px;object-fit:cover;border-radius:10px;border:1px solid #e4dccd;display:block}
.revimgs figcaption{font-size:12px;color:#8a7f70;margin-top:5px}
.revsrc{font-size:12px;color:#a89c8a;margin:6px 0 0}
