/* Shared editor / preview / partner layout. Captions never cover their own image. */
.item.image,.board-object.image{overflow:visible}
.item.image .image-caption,.board-object.image .image-caption{
 position:absolute;bottom:100%;left:0;width:100%;box-sizing:border-box;
 padding:8px 10px;display:flex;align-items:flex-end;gap:10px;
 background:#fff;border:1px solid #dce2e4;border-top:3px solid var(--ink);
 border-radius:7px 7px 0 0;box-shadow:0 -2px 6px #22333d0a;
 font-family:"Segoe UI","Microsoft JhengHei",sans-serif;text-align:left;
}
.item.image .image-caption p,.board-object.image .image-caption p{
 flex:1;min-width:0;margin:0;font-size:18px;font-weight:400;line-height:1.4;
 color:#263238;white-space:pre-wrap;overflow-wrap:anywhere;
 display:block;-webkit-line-clamp:unset;overflow:visible;max-height:none;
}
.item.image .image-caption-owner,.board-object.image .image-caption-owner{
 display:block;font-size:12px;line-height:1.5;font-weight:400;
 white-space:nowrap;color:#607078;margin:0;flex-shrink:0;
}
.board-object.image>img{display:block;border:1px solid #dce2e4;box-sizing:border-box}
.image-caption [hidden]{display:none!important}
/* Shared status controls: reserve a header row, never cover image or note text. */
.item.image .image-caption,.board-object.image .image-caption{flex-wrap:wrap;align-items:center}
.item.image .image-caption p,.board-object.image .image-caption p{order:2;flex-basis:100%}
.image-caption .image-caption-owner{order:0}
.image-caption .board-confirmation{order:1;margin-left:auto}
.board-note-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px;margin-bottom:8px}
.item.text .board-note-header small,.board-object.text .board-note-header small{margin:0;font-size:13px;color:#66523b}
.item .board-confirmation,.board-object .board-confirmation{
 display:block;flex:0 1 168px;width:168px;max-width:100%;min-width:0;min-height:34px;height:auto;
 margin-top:0;margin-bottom:0;padding:4px 6px;border:1px solid;border-radius:6px;
 font:600 16px/1.4 "Segoe UI","Microsoft JhengHei",sans-serif;cursor:pointer;box-sizing:border-box;
}
.item .board-confirmation[data-status=unconfirmed],.board-object .board-confirmation[data-status=unconfirmed]{background:#fce1e8;border-color:#d794a6;color:#702b40}
.item .board-confirmation[data-status=pending_designer],.board-object .board-confirmation[data-status=pending_designer]{background:#b45309;border-color:#92400e;color:#fff}
.item .board-confirmation[data-status=confirmed],.board-object .board-confirmation[data-status=confirmed]{background:#dceeff;border-color:#8fb7da;color:#244f73}
.item .board-confirmation[data-status=abandoned],.board-object .board-confirmation[data-status=abandoned]{background:#e5e7eb;border-color:#9ca3af;color:#374151}
.board-confirmation:focus-visible{outline:3px solid #1d4ed8;outline-offset:2px}
.board-object .board-confirmation:disabled{opacity:1;cursor:default;-webkit-text-fill-color:currentColor}
.board-object.text>p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}

.item .board-confirmation[data-status=pending_owner],.board-object .board-confirmation[data-status=pending_owner]{background:#e9def8;border-color:#b89bd5;color:#55316f}
