/* Patch 19: additions scoped to the inventory extractor. */
#room360-tool .rs-360-control-row { display:grid; grid-template-columns:minmax(0,1fr); gap:12px; align-items:start; }
#room360-tool .rs-360-control-row > .quickpanel { min-width:0; }
#room360-tool .rs-360-control-row .quick-grid { grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); }
#room360-tool .rs-360-control-row .quick-head { flex-wrap:wrap; gap:4px; }
#room360-tool .rs-360-control-row .quickpanel-header { gap:6px; padding:12px 10px; align-items:center; }
#room360-tool .rs-360-control-row .quickpanel-body { padding:10px; }
#room360-tool #rs360OverallPanel .quickpanel-actions #rs360OverallToggle { width:34px!important; min-width:34px!important; height:30px!important; min-height:30px!important; padding:0!important; font-size:0!important; line-height:1!important; border-radius:12px!important; background:linear-gradient(135deg,var(--rs-accent),var(--rs-accent-soft))!important; color:#041f17!important; border:1px solid rgba(66,215,159,.38)!important; box-shadow:0 9px 20px rgba(66,215,159,.18)!important; display:inline-grid!important; place-items:center!important; }
#room360-tool #rs360OverallPanel #rs360OverallToggle::before { content:"\25BE"!important; font-size:15px!important; font-weight:950!important; line-height:1!important; display:inline-block!important; transition:transform .18s ease!important; }
#room360-tool #rs360OverallPanel #rs360OverallToggle.is-collapsed::before { transform:rotate(-90deg)!important; }
#room360-tool #rs360OverallPanel .quickpanel-actions { flex:0 0 auto; }
#room360-tool .rs-360-overall-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
#room360-tool .rs-360-overall-actions button { flex:1 1 auto; min-width:0; padding:8px 10px; }
#room360-tool .rs-360-upload-row { display:flex; gap:8px; align-items:center; }
#room360-tool .rs-360-upload-row input { flex:1 1 0; min-width:0; }
#room360-tool #rs360AutoBtn { flex:0 0 auto; min-width:66px; }
#room360-tool #rs360OverallPreview { width:100%; margin:0 auto 12px; }
#room360-tool #rs360OverallPreview canvas { display:block; width:100%; height:auto; border:1px solid var(--rs-border,#d5e5e1); border-radius:12px; background:#f3f8f7; }
#room360-tool .card.rs-360-overall-card img { aspect-ratio:auto; object-fit:contain; }
#room360-tool #rs360OverallPreview p { margin:6px 0 0; font-size:12px; color:var(--rs-muted,#617277); }
#room360-tool .rs-360-overall-stage { position:relative; }
#room360-tool #rs360OverallOverlay { position:absolute; pointer-events:none; overflow:hidden; }
#room360-tool .rs-360-overall-frame { position:absolute; border:2px solid #0b916a; box-sizing:border-box; background:rgba(66,215,159,.12); cursor:move; pointer-events:auto; touch-action:none; outline-offset:3px; }
#room360-tool .rs-360-overall-frame::after { content:""; position:absolute; left:var(--rs360-centre-x,50%); top:0; bottom:0; border-left:1px dashed #0b916a; pointer-events:none; }
#room360-tool .rs-360-overall-frame::before { content:"Overall Room"; position:absolute; left:0; top:0; padding:3px 5px; background:#0b916a; color:white; font-size:11px; font-weight:700; white-space:nowrap; pointer-events:none; }
#room360-tool .rs-360-overall-resize { position:absolute; right:-2px; bottom:-2px; width:24px; height:24px; background:#0b916a; border:2px solid white; border-radius:5px; cursor:ns-resize; touch-action:none; }
#room360-tool #rs360OverallOverlay[hidden], #room360-tool #rs360OverallPreview[hidden] { display:none!important; }
@media(max-width:520px) {
  #room360-tool .rs-360-control-row { gap:8px; }
  #room360-tool .rs-360-control-row .quickpanel-header { padding:10px 8px; }
  #room360-tool .rs-360-control-row .quickpanel-title { overflow-wrap:anywhere; }
  #room360-tool .rs-360-control-row .quick-field { padding:8px; }
}

#room360-tool .rs-360-room-field { flex:1 1 330px; min-width:0; }
#room360-tool .rs-360-room-label { display:flex; align-items:baseline; gap:8px; flex-wrap:wrap; margin-bottom:6px; }
#room360-tool .rs-360-room-label label { margin:0; }
#room360-tool #rs360RoomReminder { color:var(--rs-muted,#617277); font-size:11px; font-weight:400; line-height:1.4; white-space:nowrap; }
@media(max-width:520px) {
  #room360-tool .rs-360-room-label { gap:6px; }
  #room360-tool .rs-360-room-label label { font-size:11px!important; letter-spacing:0; }
  #room360-tool #rs360RoomReminder { font-size:10px; }
}
