/* "Pinnwand / Gästebuch" — the card page section (C3), in the card's own
   flow after the photos, on the card's cream paper with its ink and script
   face (card.css tokens).
   Frame, title, items and fields: the card's compact system (public/shared/card.css «Compact sections»). */
.bd-form { display: flex; flex-direction: column; background: rgba(255,255,255,0.86); border: 1px solid rgba(0,0,0,0.08); }
.bd-label { display: flex; flex-direction: column; gap: 2px; font-size: 13px; color: #6f6a65; }
.bd-input { font: inherit; font-size: 15px; border: 1px solid rgba(0,0,0,0.18); border-radius: 10px; background: #fff; color: #333; width: 100%; box-sizing: border-box; }
.bd-textarea { resize: vertical; min-height: 64px; }
.bd-row { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.bd-btn { font: inherit; font-size: 14px; padding: 6px 18px; border-radius: 999px; border: 1px solid var(--rose-1, #9d5a63); background: var(--rose-1, #9d5a63); color: #fff; cursor: pointer; align-self: flex-start; }
.bd-btn:disabled { opacity: .6; cursor: default; }
.bd-more { display: block; margin: var(--sp-2) auto 0; background: transparent; color: inherit; border-color: currentColor; align-self: center; }
.bd-link { font: inherit; font-size: 13px; background: none; border: none; color: var(--rose-2, #7a3b46); cursor: pointer; padding: 4px 2px; text-decoration: underline; }
.bd-flash { font-size: 13px; margin: 0; min-height: 1em; }
.bd-flash.ok { color: #3f6b43; }
.bd-flash.error { color: #a33; }
.bd-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.bd-empty { text-align: center; color: #8c8681; font-size: 14px; padding: 8px 0; }
.bd-entry { background: rgba(255,255,255,0.9); border: 1px solid rgba(0,0,0,0.08); display: flex; flex-direction: column; }
.bd-entry.bd-pending { border-style: dashed; opacity: .85; }
.bd-reply { margin: var(--sp-1) 0 0 var(--sp-4); padding: var(--sp-2) var(--item-px); background: rgba(250,246,242,0.95); }
.bd-host { border-left: 3px solid var(--rose-1, #9d5a63); }
.bd-entry-head { display: flex; flex-wrap: wrap; gap: 8px; align-items: baseline; }
.bd-name { font-size: 15px; overflow-wrap: anywhere; }
.bd-badge { font-size: 11px; border-radius: 999px; padding: 1px 8px; background: var(--rose-1, #9d5a63); color: #fff; }
.bd-date { font-size: 12px; color: #8c8681; margin-left: auto; }
.bd-text { font-size: 15px; line-height: 1.5; white-space: pre-wrap; overflow-wrap: anywhere; margin: 0; }
.bd-pending-note { font-size: 12px; color: #8a6634; margin: 0; font-style: italic; }
.bd-entry-foot { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.bd-reactions { display: flex; flex-wrap: wrap; gap: 6px; }
.bd-react { font: inherit; font-size: 14px; line-height: 1; padding: 5px 9px; border-radius: 999px; border: 1px solid rgba(0,0,0,0.12); background: #fff; cursor: pointer; min-height: 32px; }
.bd-react.on { border-color: var(--rose-1, #9d5a63); background: rgba(157,90,99,0.10); }
.bd-react:disabled { opacity: .6; }
.bd-reply-form { margin: var(--sp-1) 0 0 var(--sp-4); }
/* an entry's photo (review #46) + the composer's photo picker */
.bd-photo { display: block; border-radius: 10px; overflow: hidden; background: rgba(0,0,0,0.04); }
.bd-photo img { display: block; width: 100%; height: auto; max-height: 520px; object-fit: contain; }
.bd-photo-pick { display: flex; flex-direction: column; gap: 6px; align-items: flex-start; }
.bd-file { position: absolute; width: 1px; height: 1px; opacity: 0; overflow: hidden; }
.bd-file:focus-visible + .bd-photo-add { outline: 2px solid var(--rose-1, #9d5a63); outline-offset: 2px; }
.bd-photo-add { text-decoration: none; display: inline-flex; align-items: center; gap: 6px; min-height: 32px; }
.bd-photo-add::before { content: "📷"; text-decoration: none; }
.bd-photo-preview { display: flex; align-items: center; gap: 10px; }
.bd-photo-preview[hidden] { display: none; }
.bd-photo-preview img { width: 84px; height: 84px; object-fit: cover; border-radius: 8px; }
