.purchase-followup-dialog { width: min(1000px, calc(100% - 24px)); max-height: 90vh; padding: 0; border: 1px solid #657184; border-radius: 8px; background: var(--panel, #101927); color: var(--text, #f3f5f8); overflow: auto; }
.purchase-followup-dialog::backdrop { background: #0009; }
.purchase-followup-dialog * { box-sizing: border-box; letter-spacing: 0; }
.pf-header { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 20px; border-bottom: 1px solid #566171; }
.pf-header h2 { margin: 0; font-size: 21px; overflow-wrap: anywhere; }
.pf-header button { flex-shrink: 0; }
.pf-content { padding: 20px; }
.pf-content h3 { font-size: 18px; margin: 0; }
.pf-content label { display: flex; flex-direction: column; gap: 6px; font-size: 14px; position: relative; }
.pf-content input,.pf-content select,.pf-content textarea { width: 100%; min-width: 0; padding: 10px; border: 1px solid var(--line, #637182); border-radius: 4px; background: var(--bg, #111c2a); color: var(--text, #f3f5f8); font: inherit; }
.pf-content textarea { min-height: 76px; resize: vertical; }
.pf-form { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; padding: 16px 0; }
.pf-wide { grid-column: 1 / -1; }
.pf-checkbox { flex-direction: row !important; align-items: center; }
.pf-checkbox input { width: 20px; height: 20px; }
.pf-actions { display: flex; justify-content: flex-end; }
.pf-content details { border-top: 1px solid #596573; padding: 12px 0; }
.pf-content summary { cursor: pointer; font-weight: 600; }
.pf-issue { padding: 20px 0; border-top: 1px solid #566171; }
.pf-issue > header { display: flex; justify-content: space-between; gap: 14px; align-items: center; flex-wrap: wrap; }
.pf-status { font-size: 13px; color: var(--yellow); font-weight: 700; }
.pf-closed { color: var(--green); }
.pf-finance { display: flex; flex-wrap: wrap; gap: 22px; padding: 20px 0; }
.pf-comments article { border-left: 3px solid #41a9d0; padding: 12px; margin: 10px 0; }
.pf-comments header { display: flex; gap: 12px; flex-wrap: wrap; font-size: 13px; }
.pf-comments p { white-space: pre-wrap; overflow-wrap: anywhere; margin: 8px 0; }
.pf-highlight { outline: 2px solid #edcb60; background: #88702133; }
.pf-error { margin: 16px; padding: 12px; border: 1px solid var(--red); color: var(--red); overflow-wrap: anywhere; }
.pf-content table { width: 100%; border-collapse: collapse; }
.pf-content th,.pf-content td { padding: 12px 8px; text-align: left; border-bottom: 1px solid #566171; overflow-wrap: anywhere; }
.pf-mentions { position: relative; display: flex; flex-wrap: wrap; gap: 5px; }
.pf-mentions[hidden] { display: none; }
.pf-mentions button { padding: 8px; color: var(--text); background: var(--panel-soft); border: 1px solid var(--accent); border-radius: 4px; cursor: pointer; }
.purchase-followup-dialog[aria-busy="true"] { cursor: progress; }
.purchase-followup-dialog button:disabled { opacity: .5; cursor: wait; }
@media (max-width: 600px) { .pf-form { grid-template-columns: minmax(0,1fr); } .pf-header,.pf-content { padding: 12px; } .pf-header h2 { font-size: 18px; } .pf-content th,.pf-content td { padding: 8px 3px; font-size: 12px; } }
