:root{--bg:#fff7fb;--card:#fff;--ink:#2b2028;--muted:#7c6b75;--line:#f0dce8;--accent:#d94f92;--accent2:#6d5bd0;--danger:#c53232;--shadow:0 10px 30px rgba(95,43,74,.10)}
*{box-sizing:border-box}body{margin:0;background:linear-gradient(180deg,#fff7fb,#f7f7ff);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.7}.site-header{position:sticky;top:0;z-index:5;background:rgba(255,255,255,.86);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);padding:14px 18px;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{font-weight:900;color:var(--ink);text-decoration:none;font-size:18px}.brand span{color:var(--accent)}nav{display:flex;gap:10px;flex-wrap:wrap}nav a,.footer a{color:var(--ink);text-decoration:none;font-weight:700;font-size:14px}.container{max-width:980px;margin:0 auto;padding:26px 16px}.hero{padding:52px 18px;text-align:center}.hero h1{font-size:clamp(36px,8vw,74px);line-height:1.02;margin:0 0 14px}.hero p{font-size:18px;color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.board-card,.post-card,.form-card,.detail,.comment,.tools details,.review-box{background:var(--card);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow)}.board-card{display:block;text-decoration:none;color:var(--ink);padding:24px;transition:.15s}.board-card:hover,.post-card:hover{transform:translateY(-2px)}.board-card h2{margin:0 0 8px}.board-card p,.muted,.hint{color:var(--muted)}.section{margin-top:34px}.page-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px}.page-head h1{margin:0}.button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;background:#f4e8f0;color:var(--ink);text-decoration:none;padding:10px 18px;font-weight:800;cursor:pointer}.button.primary{background:linear-gradient(135deg,var(--accent),var(--accent2));color:white}.button.danger,.danger{background:#ffe1e1;color:var(--danger)}.button.small{font-size:13px;padding:7px 12px}.post-list{display:grid;gap:14px}.post-card{display:grid;grid-template-columns:130px 1fr;gap:16px;text-decoration:none;color:var(--ink);padding:12px}.post-card img{width:130px;height:130px;object-fit:cover;border-radius:16px;background:#eee}.post-card h2,.post-card h3{margin:4px 0}.post-card small,.post-meta,small{color:var(--muted)}.chip{display:inline-block;background:#fff0f6;color:#9c3468;padding:3px 10px;border-radius:999px}.form-page{max-width:720px;margin:0 auto}.form-card{padding:22px;display:grid;gap:14px}.form-card label{display:grid;gap:6px;font-weight:800}.form-card span{color:var(--accent);font-size:12px}input,textarea,select{width:100%;border:1px solid var(--line);border-radius:14px;padding:12px;background:white;font:inherit}textarea{resize:vertical}.detail{padding:22px}.detail h1{font-size:clamp(28px,6vw,46px);line-height:1.15}.main-image{width:100%;max-height:760px;object-fit:contain;border-radius:22px;background:#f7edf3}.body-text{white-space:pre-wrap}.review-box{margin:16px 0;padding:14px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.reactions{display:flex;gap:8px;flex-wrap:wrap}.reactions form{margin:0}.reactions button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 12px;cursor:pointer}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}.tools details{padding:14px}.mini-form{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}.comments{margin-top:30px}.comment-form{background:#fff;border:1px solid var(--line);border-radius:18px;padding:12px;display:grid;gap:8px;margin-bottom:14px}.comment-form.reply{margin-top:10px}.comment-tree{display:grid;gap:10px}.comment{padding:14px}.comment.depth-1{margin-left:22px}.comment.depth-2{margin-left:44px}.comment.depth-3{margin-left:66px}.comment-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.author-badge{background:linear-gradient(135deg,var(--accent),var(--accent2));color:white;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:900}.comment-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.comment-actions button,.comment-actions summary{border:0;background:#f7edf3;border-radius:999px;padding:5px 10px;cursor:pointer;color:var(--ink)}details summary{cursor:pointer;font-weight:800}.flash-wrap{display:grid;gap:8px;margin-bottom:16px}.flash{padding:12px 14px;border-radius:14px;background:#eef7ee}.flash.error{background:#ffe8e8}.flash.ok{background:#e9f9ef}.prose{background:white;border:1px solid var(--line);border-radius:22px;padding:24px;box-shadow:var(--shadow)}.footer{text-align:center;color:var(--muted);padding:40px 16px}.url-preview{word-break:break-all;background:#f8f2f6;border-radius:14px;padding:12px}.center{text-align:center}.admin-list{display:grid;gap:8px}.admin-row{background:white;border:1px solid var(--line);border-radius:14px;padding:10px;display:flex;gap:8px;flex-wrap:wrap;align-items:center}
@media(max-width:720px){.site-header{align-items:flex-start;flex-direction:column}.grid{grid-template-columns:1fr}.page-head{align-items:flex-start;flex-direction:column}.post-card{grid-template-columns:96px 1fr}.post-card img{width:96px;height:96px}.two-col{grid-template-columns:1fr}.comment.depth-1,.comment.depth-2,.comment.depth-3{margin-left:14px;border-left:3px solid var(--line);border-radius:12px}.hero{padding:30px 0}}
