/* Comments v2 — community discussion for Analysis pages */
.cup-comments{margin:44px 0;border:1px solid var(--ink);background:#f7f4ec;padding:28px;box-shadow:inset 4px 0 0 var(--accent)}
.cup-comments-head{max-width:720px}
.cup-comments .label{color:var(--accent)}
.cup-comments h3{font-family:"Source Serif 4",Georgia,serif;font-size:clamp(31px,4vw,44px);line-height:1.04;letter-spacing:-.03em;margin:8px 0 10px}
.cup-comments-intro{max-width:660px;color:var(--muted);font-size:14px;line-height:1.6;margin:0!important}
.cup-comments-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:22px 0 0}
.cup-comments-add{appearance:none;border:0;background:var(--ink);color:white;padding:14px 19px;font:inherit;font-size:12px;font-weight:800;cursor:pointer;transition:background .18s ease,transform .18s ease}
.cup-comments-add:hover,.cup-comments-add:focus-visible{background:var(--accent);transform:translateY(-1px)}
.cup-comments-count{border:1px solid var(--line);background:white;padding:10px 12px;font-size:10px;font-weight:800;letter-spacing:.055em;text-transform:uppercase;white-space:nowrap}
.cup-comments-linkedin{margin-left:auto;font-size:11px;font-weight:800;text-decoration:none;color:var(--muted)}
.cup-comments-linkedin:hover{color:var(--accent)}
.cup-comments-list{display:grid;gap:12px;margin-top:26px}
.cup-comment{display:grid;grid-template-columns:42px minmax(0,1fr);gap:14px;padding:18px 20px;border:1px solid var(--line);background:white}
.cup-comment-avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:white;font-size:11px;font-weight:800;letter-spacing:.04em}
.cup-comment-content{min-width:0}
.cup-comment-meta{display:flex;gap:12px;justify-content:space-between;align-items:baseline;margin-bottom:9px}
.cup-comment-author{font-size:12px;font-weight:800}
.cup-comment-date{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}
.cup-comment-body{white-space:pre-wrap;font-size:14px;line-height:1.65;margin:0!important;overflow-wrap:anywhere}
.cup-comments-empty{padding:20px;border:1px solid var(--line);background:white;color:var(--muted);font-size:13px;line-height:1.55}
.cup-comments-form-wrap{margin-top:22px;border:1px solid var(--ink);background:#fbfaf6;padding:24px}
.cup-comments-form-wrap[hidden]{display:none}
.cup-comments-form-head{display:flex;justify-content:space-between;gap:20px;align-items:start;margin-bottom:18px}
.cup-comments-form-head strong{font-family:"Source Serif 4",Georgia,serif;font-size:24px;line-height:1.15}
.cup-comments-close{border:0;background:transparent;font:inherit;font-size:20px;cursor:pointer;padding:0 2px;line-height:1}
.cup-comments-form{display:grid;gap:16px}
.cup-comments-field{display:grid;gap:7px}
.cup-comments-field label{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.cup-comments-field input,.cup-comments-field textarea{width:100%;border:1px solid var(--line);background:white;color:var(--ink);font:inherit;font-size:14px;padding:12px 13px;border-radius:0}
.cup-comments-field textarea{min-height:132px;resize:vertical;line-height:1.55}
.cup-comments-field input:focus,.cup-comments-field textarea:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--ink)}
.cup-comments-form-note{font-size:10px;line-height:1.5;color:var(--muted);margin:0!important}
.cup-comments-form-note strong{color:var(--ink)}
.cup-comments-turnstile{min-height:0}
.cup-comments-submit-row{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.cup-comments-submit{appearance:none;border:0;background:var(--ink);color:white;padding:13px 18px;font:inherit;font-size:12px;font-weight:800;cursor:pointer}
.cup-comments-submit:hover,.cup-comments-submit:focus-visible{background:var(--accent)}
.cup-comments-submit:disabled{opacity:.5;cursor:not-allowed}
.cup-comments-status{font-size:11px;line-height:1.45;color:var(--muted)}
.cup-comments-status[data-state="success"]{color:#1d5f38;font-weight:700}
.cup-comments-status[data-state="error"]{color:#8a2d20;font-weight:700}
.cup-comments-unavailable{padding:18px;border:1px solid var(--line);background:white;font-size:12px;line-height:1.55;color:var(--muted)}
@media(max-width:700px){
  .cup-comments{margin:38px 0;padding:22px 18px}
  .cup-comments-actions{align-items:stretch;flex-direction:column}
  .cup-comments-add{width:100%;padding:14px 18px}
  .cup-comments-count{width:100%;text-align:center}
  .cup-comments-linkedin{margin-left:0;text-align:center;padding:7px 0 0}
  .cup-comments-form-wrap{padding:18px}
  .cup-comment{grid-template-columns:36px minmax(0,1fr);gap:12px;padding:16px}
  .cup-comment-avatar{width:36px;height:36px;font-size:10px}
  .cup-comment-meta{align-items:flex-start;flex-direction:column;gap:4px}
}
