.exchange { margin: 1.8rem 0 2rem; padding: clamp(16px, 4vw, 28px); border: 1px solid var(--line); border-radius: 18px; background: var(--cream); }
.exchange h2 { margin-top: 0; }
.exchange label { display: block; margin: 1rem 0 .4rem; font-weight: 600; }
.exchange textarea, .exchange input, .exchange select { box-sizing: border-box; max-width: 100%; padding: 12px; border: 1px solid #a97b8d; border-radius: 10px; background: white; color: var(--ink); font: inherit; }
.exchange textarea { display: block; width: 100%; resize: vertical; line-height: 1.55; min-height: 120px; }
.exchange textarea:focus-visible, .exchange input:focus-visible, .exchange select:focus-visible, .exchange summary:focus-visible { outline: 3px solid var(--rose-deep); outline-offset: 3px; }
.exchange textarea[readonly] { background: #fffafc; }
.exchange .btn:disabled { opacity: .55; cursor: default; }
.panel-row { display: flex; flex-wrap: wrap; gap: 10px; }
.panel-row input { flex: 1; min-width: 140px; }
.exchange details { border-top: 1px solid var(--line); padding-top: 1rem; }
.exchange summary { cursor: pointer; font-weight: 600; }
#panel-instruction { margin-bottom: 12px; font-size: .9rem; }
#panel-status { min-height: 1.5em; }
#panel-status[data-error="true"] { color: #922141; }
#panel-conflict { border: 2px solid #a14f20; border-radius: 10px; padding: 14px; margin-bottom: 16px; }
#panel-remote { white-space: pre-wrap; overflow-wrap: anywhere; max-height: 320px; overflow: auto; font: inherit; background: white; padding: 12px; }
.exchange [hidden] { display: none; }
