.idea-board-heading { background:#172a34; color:#f7f9fa; padding:28px; border-radius:22px 22px 4px 4px; border-top:4px solid #e2ac59; }
.board-kicker { margin:0; color:#ebbd77; letter-spacing:.13em; font-size:.8rem; font-weight:700; }
.idea-board-heading h2 { margin:14px 0; font:400 clamp(2rem,6vw,3rem)/1.08 Georgia,serif; letter-spacing:-.025em; }
.board-intro { margin:0; font-size:1rem; line-height:1.6; color:#d6e1e7; }
.board-count { margin:0; padding:16px 24px; background:#e5eced; color:#213b48; font-size:1rem; font-weight:600; border-radius:0 0 16px 16px; }
.board-method { margin:20px 0 28px; padding:16px 20px; border:1px solid #c8d3d8; border-radius:12px; line-height:1.65; }
#idea-board summary { cursor:pointer; padding:8px 0; font-size:.95rem; font-weight:650; color:#294653; }
#idea-board summary:focus-visible { outline:3px solid #c27a28; outline-offset:4px; }
.board-list { display:grid; gap:18px; }
.board-idea { padding:24px; background:#fff; border:1px solid #d6dce0; border-radius:6px 18px 18px 6px; border-left:4px solid #bac9cf; overflow-wrap:anywhere; }
.board-idea:first-child { border-left-color:#ad6820; }
.board-idea-top { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.board-rank { font:400 1.7rem Georgia,serif; color:#6b7c85; }
.board-area { color:#586872; font-size:.9rem; flex:1; }
.board-status { padding:6px 10px; border-radius:6px; color:#4e5c64; background:#edf1f3; font-size:.875rem; }
.board-idea h3 { margin:18px 0 10px; font:400 clamp(1.5rem,4vw,1.9rem)/1.2 Georgia,serif; color:#192e3b; }
.board-recommendation { color:#87500f; font-size:.95rem; font-weight:700; margin:0 0 12px; }
.board-reason,#idea-board details p { font-size:1rem; line-height:1.7; }
.board-reason { color:#394c58; margin:0 0 16px; }
.board-idea details { border-top:1px solid #e1e7ea; padding-top:8px; }
.board-idea h4 { font-size:.9rem; color:#344d5a; margin:20px 0 4px; }
.board-original { white-space:pre-wrap; padding:16px; background:#f0f4f5; border-radius:8px; line-height:1.65; }
.board-date { font-size:.8rem; color:#63747e; margin:16px 0 0; }
.board-criteria { display:grid; grid-template-columns:1fr 1.4fr; gap:10px 16px; font-size:.9rem; line-height:1.5; }
.board-criteria dt { color:#63747e; } .board-criteria dd { margin:0; color:#263f4e; }
.board-footer { font-size:.875rem; color:#596871; line-height:1.6; padding:16px 0; }
@media(max-width:480px){.idea-board-heading,.board-idea{padding:20px}.board-criteria{grid-template-columns:1fr}.board-criteria dd{margin-bottom:8px}.board-idea-top{gap:8px}.board-status{font-size:.875rem}}
