/* Poor Penny V3 — community + support sections (ideas/reviews board, The Broke Wall, support, Penny's Humans).
   Owned by the community+support workstream; rendered by public/community-v3.js. Uses the v2 tokens
   (--paper, --white, --ink, --muted, --rule, --teal, --teal-light, --coral, --copper, --copper-ink). */

.cv3-support,.cv3-community,.cv3-confessions{--cv3-card:#fffdf7;--cv3-line:#d8ddcc;--cv3-soft:#f4efe3;--cv3-care:#f6ebe3}
.cv3-disclosure{margin:14px 0 0;max-width:72ch;font-size:15px;line-height:1.6;color:#4f5a52}
.cv3-sub,.cv3-subtitle{margin:6px 0 0;font-size:15px;color:var(--muted)}
.cv3-subtitle{font:italic 18px/1.4 Georgia,serif;color:var(--copper-ink,#8f5531)}
.cv3-legend{padding:0;margin:0 0 8px;font-weight:700;font-size:14px}
.cv3-optional{font-weight:400;color:var(--muted)}
.cv3-fine{margin:8px 0 0;font-size:13px;line-height:1.55;color:var(--muted)}
.cv3-note{margin:8px 0 0;min-height:1.2em;font-size:14px;line-height:1.5;color:var(--muted)}
.cv3-note[data-tone="ok"]{color:var(--teal)}
.cv3-note[data-tone="error"]{color:#a3402c}
.cv3-empty{margin:12px 0 0;padding:16px;border:1px dashed #c9d2bd;border-radius:10px;background:#f7f9ef;font-size:15px;color:#56614f}
.cv3-kicker{margin:0 0 8px;font:700 12px var(--mono);letter-spacing:.5px;text-transform:uppercase;color:var(--copper-ink,#8f5531)}
.cv3-hp{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}

/* Forms */
.cv3-form{display:flex;flex-direction:column;gap:10px;min-width:0}
.cv3-form fieldset{border:0;padding:0;margin:0;min-width:0}
.cv3-field{display:flex;flex-direction:column;gap:5px;min-width:0}
.cv3-field label{font-weight:700;font-size:14px}
.cv3-form input:not([type=radio]):not([type=checkbox]),.cv3-form textarea,.cv3-form select,.cv3-report select{width:100%;max-width:100%;min-height:44px;padding:10px 12px;border:1px solid #c9cfbd;border-radius:9px;background:var(--white);color:var(--ink);font-size:16px;line-height:1.4}
.cv3-form textarea{resize:vertical;min-height:88px}
.cv3-form input:disabled,.cv3-form textarea:disabled{background:#f1efe8;color:#8b8f86}
.cv3-form [aria-invalid="true"]{border-color:#a3402c;box-shadow:0 0 0 2px #f3d6cc}
.cv3-radio,.cv3-check{display:inline-flex;align-items:center;gap:8px;min-height:44px;margin-right:14px;font-size:15px;cursor:pointer}
.cv3-radio input,.cv3-check input{width:20px;height:20px;accent-color:var(--teal);margin:0}
.cv3-counter{align-self:flex-end;font-size:13px;color:var(--muted)}
.cv3-form .button{align-self:flex-start;font-size:14px}
.cv3-form .button-full{align-self:stretch}

/* Cards */
.cv3-list{display:flex;flex-direction:column;gap:12px;margin-top:12px}
.cv3-card{background:var(--cv3-card);border:1px solid var(--cv3-line);border-radius:12px;padding:16px 18px;min-width:0}
.cv3-card-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;font-size:14px}
.cv3-tag{display:inline-block;padding:2px 9px;border-radius:20px;background:var(--teal-light);color:#14594f;font:700 12px var(--mono);letter-spacing:.3px}
.cv3-author{font-weight:700}
.cv3-time{margin-left:auto;font-size:13px;color:var(--muted)}
.cv3-text{margin:10px 0 0;font-size:16px;line-height:1.55;overflow-wrap:anywhere;white-space:pre-line}
.cv3-reply{margin:10px 0 0;padding:10px 12px;border-left:3px solid var(--copper);background:var(--cv3-soft);border-radius:0 8px 8px 0;font-size:15px;line-height:1.5}
.cv3-care{margin:10px 0 0;padding:10px 12px;border-radius:8px;background:var(--cv3-care);color:#6b4a35;font-size:14px;line-height:1.55}
.cv3-card-foot{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:12px}
.cv3-reactions{display:flex;flex-wrap:wrap;gap:6px}
.cv3-react{display:inline-flex;align-items:center;gap:5px;min-height:40px;min-width:44px;padding:6px 11px;border:1px solid #d3d9c6;border-radius:20px;background:var(--white);font-size:14px}
.cv3-react[aria-pressed="true"]{border-color:var(--teal);background:var(--teal-light)}
.cv3-react-label{font-size:13px}
.cv3-count{font-weight:700}
.cv3-share{min-height:40px;font-size:14px}
.cv3-report{margin-left:auto;font-size:14px}
.cv3-report summary{display:inline-flex;align-items:center;min-height:40px;padding:0 4px;cursor:pointer;color:var(--muted);list-style:none}
.cv3-report summary::-webkit-details-marker{display:none}
.cv3-report[open]{flex-basis:100%;margin-left:0}
.cv3-report-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px;margin-top:6px}
.cv3-report-form label{flex-basis:100%;font-size:14px;font-weight:700}
.cv3-report-form select{flex:1 1 180px;width:auto}
.cv3-small{min-height:44px}
.cv3-share-note{margin:4px 0 0;overflow-wrap:anywhere}

/* Ideas / reviews board */
.cv3-community .section-heading{margin-bottom:6px}
.cv3-board-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:28px;margin-top:20px;align-items:start}
.cv3-board-form{background:var(--white);border:1px solid #d6deca;border-radius:12px;padding:20px}
.cv3-starters{margin:0}
.cv3-starters .starter-label{margin:0 0 6px;font-size:13px;color:var(--muted)}
.cv3-starters .starter-chips{display:flex;flex-wrap:wrap;gap:8px}
.cv3-board-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}
.cv3-board-head h3{font-size:18px}
.cv3-tabs{display:flex;gap:8px}
.cv3-tabs .chip[aria-pressed="true"],.cv3-filter[aria-pressed="true"]{border-style:solid;border-color:var(--teal);background:var(--teal-light);font-weight:700}
#board-more,#confession-more{margin-top:12px}

/* The Broke Wall */
.cv3-confessions{padding-block:48px 40px}
.cv3-confessions h2{font-size:clamp(28px,4vw,40px)}
.cv3-wall-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:28px;margin-top:20px;align-items:start}
.cv3-confession-form{background:var(--white);border:1px solid var(--cv3-line);border-radius:12px;padding:20px;position:relative}
.cv3-filters{display:flex;flex-wrap:wrap;gap:8px}
.cv3-cotd,.cv3-shared{margin-top:20px}
.cv3-confession.is-featured{border:2px solid var(--copper);background:#fff8ec}
.cv3-closed{margin-top:18px;padding:18px;border-radius:12px;background:#f2efe6;border:1px solid var(--cv3-line);font-size:16px}

/* Support */
.cv3-support-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:17px;margin-top:20px;align-items:start}
.cv3-support-card{display:flex!important;flex-direction:column;gap:10px}
.cv3-support-card h3{font-size:20px}
.cv3-status{margin:0;font-size:15px;line-height:1.55;color:#4f5a52}
.cv3-type-grid{border:0;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.cv3-type-grid legend{grid-column:1/-1}
.cv3-type{position:relative;display:grid;grid-template-columns:auto 1fr;grid-template-areas:"icon title" "icon price" "note note";align-items:center;gap:2px 10px;min-height:64px;padding:12px;border:1px solid #d3d9c6;border-radius:10px;background:var(--white);cursor:pointer}
.cv3-type input{position:absolute;opacity:0;width:1px;height:1px}
.cv3-type:has(input:checked){border:2px solid var(--teal);background:var(--teal-light)}
.cv3-type:has(input:focus-visible){outline:3px solid var(--focus,#a85e33);outline-offset:3px}
.cv3-type .cv3-icon{grid-area:icon;font-size:24px}
.cv3-type-title{grid-area:title;font-weight:700;font-size:15px;line-height:1.3}
.cv3-type-price{grid-area:price;font:700 14px var(--mono);color:var(--copper-ink,#8f5531)}
.cv3-type-note{grid-area:note;font-size:12px;color:var(--muted)}
.cv3-support-preview{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.cv3-support-preview li{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;background:#f7f5ee;font-size:15px}
.cv3-support-preview b{margin-left:auto;font:700 14px var(--mono);color:var(--muted)}
.cv3-attribution{display:flex;flex-wrap:wrap}
.cv3-share-card{display:flex!important;flex-direction:column;gap:8px}
.cv3-humans-wrap{margin-top:28px}
.cv3-humans-wrap h3{font-size:20px}
.cv3-humans{list-style:none;margin:12px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}
.cv3-human{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;padding:12px 14px;border:1px solid var(--cv3-line);border-radius:10px;background:var(--cv3-card);font-size:15px;min-width:0}
.cv3-human-msg{flex-basis:100%;overflow-wrap:anywhere;color:#3f4b44}
.cv3-human .cv3-time{margin-left:0}

@media(max-width:850px){
  .cv3-board-layout,.cv3-wall-layout,.cv3-support-layout{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:680px){
  .cv3-confessions{padding-block:34px 28px}
  .cv3-board-form,.cv3-confession-form{padding:16px}
  .cv3-card{padding:14px}
  .cv3-time{margin-left:0;flex-basis:100%}
  .cv3-type-grid{grid-template-columns:minmax(0,1fr)}
  .cv3-humans{grid-template-columns:minmax(0,1fr)}
  .cv3-react-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
}
@media(prefers-reduced-motion:reduce){.cv3-support *,.cv3-community *,.cv3-confessions *{transition:none!important;animation:none!important}}
