.appVisual30 .collectorTools32,.appVisual30 .collectorEditor32 { color:var(--ui30-ink,#202226); }
.appVisual30 .collectorTools32 { max-width:720px; margin:0 auto; padding:0 0 28px; overflow-wrap:anywhere; }
.appVisual30 .collectorTools32 [hidden],.appVisual30 .collectorEditor32 [hidden] { display:none!important; }
.appVisual30 .ctPrivacy32,.appVisual30 .ctHint32,.appVisual30 .ctIntro32 { margin:0 0 16px; color:var(--ui30-muted,#62666E); font-size:calc(13px * var(--mc-text-scale,1)); line-height:1.65; }
.appVisual30 .ctPrivacy32 { padding:12px 14px; border-radius:14px; background:#F2F3F5; color:#202226; }
.appVisual30 .ctAnchor32 { margin:0 0 14px; font-size:calc(18px * var(--mc-text-scale,1)); line-height:1.5; }
.appVisual30 .ctField32 { min-width:0; margin:0 0 16px; }
.appVisual30 .ctField32>label { display:block; margin-bottom:8px; font-size:calc(13px * var(--mc-text-scale,1)); font-weight:600; line-height:1.4; }
.appVisual30 .ctField32 :is(input,select,textarea),.appVisual30 .ctTradeSide32>select,.appVisual30 .ctManualAdd32>input { display:block; box-sizing:border-box; width:100%; min-width:0; min-height:48px; padding:12px; border:1px solid var(--ui30-line,#E2E4E8); border-radius:12px; background:#fff; color:var(--ui30-ink,#202226); font:inherit; font-size:calc(16px * var(--mc-text-scale,1)); line-height:1.4; }
.appVisual30 .ctField32 textarea { resize:vertical; min-height:112px; }
.appVisual30 .ctField32 .ctHint32 { margin:7px 0 0; font-size:calc(12px * var(--mc-text-scale,1)); }
.appVisual30 .ctButton32 { min-height:44px; padding:11px 14px; border:1px solid var(--ui30-line,#E2E4E8); border-radius:12px; color:var(--ui30-accent,#202226); background:#fff; font:inherit; font-size:calc(13px * var(--mc-text-scale,1)); font-weight:600; line-height:1.4; white-space:normal; overflow-wrap:anywhere; cursor:pointer; }
.appVisual30 .ctButton32:disabled { opacity:.5; cursor:default; }
.appVisual30 .ctPrimary32 { border-color:var(--ui30-accent,#34373D); background:var(--ui30-accent,#34373D); color:#fff; }
.appVisual30 .ctDanger32 { color:#a33932; background:#fff8f5; border-color:#f0d9d4; }
.appVisual30 .ctInlineActions32,.appVisual30 .ctCollectionTools32 { display:flex; flex-wrap:wrap; gap:8px; }
.appVisual30 .ctCollectionTools32 { margin:12px 0 18px; }
.appVisual30 .ctCollectionTools32 .ctButton32 { background:transparent; flex:1 1 120px; color:#202226; font-size:calc(12px * var(--mc-text-scale,1)); }
.appVisual30 .ctFooter32 { display:grid; gap:10px; margin-top:20px; padding-bottom:max(12px,env(safe-area-inset-bottom)); }
.appVisual30 .ctEmpty32 { padding:28px 12px; color:#62666E; font-size:calc(14px * var(--mc-text-scale,1)); line-height:1.7; text-align:center; }
.appVisual30 .ctDuplicate32 { margin:12px 0; border:1px solid var(--ui30-line,#E2E4E8); border-radius:16px; background:#fff; overflow:hidden; }
.appVisual30 .ctDuplicate32>summary { display:flex; gap:12px; padding:14px; list-style:none; cursor:pointer; }
.appVisual30 .ctDuplicate32>summary::-webkit-details-marker { display:none; }
.appVisual30 .ctDuplicate32>summary>span:last-child { min-width:0; display:grid; align-content:start; gap:5px; }
.appVisual30 .ctDuplicate32 strong { font-size:calc(14px * var(--mc-text-scale,1)); line-height:1.5; }
.appVisual30 .ctDuplicate32 small,.appVisual30 .ctDuplicate32 em { font-size:calc(12px * var(--mc-text-scale,1)); line-height:1.5; color:#62666E; font-style:normal; }
.appVisual30 .ctDuplicate32 em { color:var(--ui30-accent,#202226); }
.appVisual30 .ctDuplicateImage32 { display:grid; place-items:center; width:58px; height:80px; flex:none; border-radius:8px; background:#F2F3F5; overflow:hidden; font-size:10px; }
.appVisual30 .ctDuplicateImage32 img { width:100%; height:100%; object-fit:contain; }
.appVisual30 .ctDuplicate32 dl { padding:0 14px 14px; margin:0; }
.appVisual30 .ctDuplicate32 dl>div,.appVisual30 .ctTradeRecord32 dl>div { display:grid; grid-template-columns:minmax(58px,25%) minmax(0,1fr); gap:12px; padding:9px 0; border-top:1px solid #E2E4E8; font-size:calc(12px * var(--mc-text-scale,1)); line-height:1.55; }
.appVisual30 .ctDuplicate32 dt,.appVisual30 .ctTradeRecord32 dt { color:#62666E; }
.appVisual30 .ctDuplicate32 dd,.appVisual30 .ctTradeRecord32 dd { margin:0; min-width:0; }
.appVisual30 .ctComparePickers32 { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:12px; }
.appVisual30 .ctComparePickers32 select { font-size:calc(14px * var(--mc-text-scale,1)); text-overflow:ellipsis; }
.appVisual30 .ctComparison32 { border:1px solid var(--ui30-line,#E2E4E8); border-radius:16px; background:#fff; overflow:hidden; }
.appVisual30 .ctComparisonPhotos32 { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; background:var(--ui30-line,#F2F3F5); }
.appVisual30 .ctComparisonPhotos32>div { display:grid; place-items:center; min-width:0; height:clamp(160px,50vw,320px); background:#F2F3F5; padding:12px; font-size:12px; color:#62666E; }
.appVisual30 .ctComparisonPhotos32 img { display:block; width:100%; height:100%; object-fit:contain; min-height:0; }
.appVisual30 .ctCompareRow32 h3 { margin:0; padding:9px 12px; color:#62666E; background:#F2F3F5; font-size:calc(11px * var(--mc-text-scale,1)); font-weight:600; line-height:1.5; }
.appVisual30 .ctCompareRow32>div { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
.appVisual30 .ctCompareRow32 span { min-width:0; padding:12px; border-top:1px solid #E2E4E8; font-size:calc(13px * var(--mc-text-scale,1)); line-height:1.55; font-variant-numeric:tabular-nums; }
.appVisual30 .ctCompareRow32 span+span { border-left:1px solid #E2E4E8; }
.appVisual30 .ctTradeRecord32 { border:1px solid var(--ui30-line,#E2E4E8); background:#fff; border-radius:16px; margin:16px 0 0; padding:16px; }
.appVisual30 .ctTradeRecord32>header { display:flex; gap:10px; flex-wrap:wrap; justify-content:space-between; margin-bottom:12px; font-size:calc(13px * var(--mc-text-scale,1)); line-height:1.5; }
.appVisual30 .ctTradeRecord32>header span { color:#202226; }
.appVisual30 .ctTradeRecord32 dl { margin:0 0 12px; }
.appVisual30 .ctTradeNote32 { padding:10px 12px; border-radius:10px; background:#F2F3F5; white-space:pre-wrap; font-size:calc(13px * var(--mc-text-scale,1)); line-height:1.6; }
.appVisual30 .ctTradeSide32 { min-width:0; margin:0 0 20px; padding:16px 14px; border:1px solid var(--ui30-line,#E2E4E8); border-radius:16px; background:#fff; }
.appVisual30 .ctTradeSide32 legend { font-size:calc(14px * var(--mc-text-scale,1)); font-weight:600; padding:0 6px; }
.appVisual30 .ctTradeChips32 { display:grid; gap:8px; margin-bottom:12px; }
.appVisual30 .ctTradeChip32 { display:flex; align-items:center; gap:8px; padding:4px 4px 4px 10px; background:#F2F3F5; border-radius:10px; font-size:calc(13px * var(--mc-text-scale,1)); line-height:1.4; }
.appVisual30 .ctTradeChip32>span { flex:1; min-width:0; }
.appVisual30 .ctRemove32 { min-width:44px; min-height:44px; flex:none; border:0; background:transparent; color:#62666E; font:inherit; font-size:22px; }
.appVisual30 .ctManualAdd32 { display:flex; align-items:flex-start; gap:8px; margin-top:10px; }
.appVisual30 .ctManualAdd32>input { flex:1; }
.appVisual30 .ctManualAdd32>.ctButton32 { flex:none; }
.appVisual30 .ctCashFields32 { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.appVisual30 .ctFormStatus32 { margin:14px 0; color:#8a6036; font-size:calc(13px * var(--mc-text-scale,1)); line-height:1.6; }
.appVisual30 .ctDraftConflict32 { margin:0 0 20px; padding:14px; border:1px solid #E2E4E8; border-radius:14px; background:#F8F9FA; color:#202226; font-size:calc(13px * var(--mc-text-scale,1)); line-height:1.65; }
.appVisual30 .ctDraftConflict32 p { margin:0 0 12px; }
.appVisual30 .ctDraftConflict32 summary { padding:10px 0; min-height:44px; font-weight:600; }
.appVisual30 .ctDraftApproval32 { display:flex; align-items:flex-start; gap:10px; padding:12px 0; cursor:pointer; }
.appVisual30 .ctDraftApproval32 input { flex:none; width:22px; height:22px; min-height:22px; margin-top:3px; accent-color:var(--ui30-accent,#34373D); }
.appVisual30 .collectorTools32 :is(button,input,select,textarea,summary):focus-visible,.appVisual30 .collectorEditor32 :is(button,input,select):focus-visible { outline:3px solid #34373D; outline-offset:2px; }
@media(max-width:350px) {
  .appVisual30 .ctComparePickers32 { grid-template-columns:1fr; gap:0; }
  .appVisual30 .ctCashFields32 { grid-template-columns:1fr; gap:0; }
  .appVisual30 .ctTradeSide32 { padding-left:10px; padding-right:10px; }
  .appVisual30 .ctManualAdd32 { flex-wrap:wrap; }
  .appVisual30 .ctManualAdd32>input { flex-basis:100%; }
  .appVisual30 .ctManualAdd32>.ctButton32 { width:100%; }
}
