/* ═══════════════════════════════════════════════════════════════
   CLUB 218 · ROOM_EDITOR_v1 · 09.09.2026 · Stil des Raumplaners
   Gehoert zu /js/raumplaner.js
   ═══════════════════════════════════════════════════════════════ */
.rp-wrap{--rp-pink:#FF006E;--rp-purple:#9B59FF;--rp-cream:#E8DFD3;--rp-muted:#9a93a5}

.rp-toolbar{display:flex;flex-wrap:wrap;gap:0.45rem;margin-bottom:0.8rem}
.rp-add{padding:0.5rem 0.85rem;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.14);
  border-radius:12px;color:var(--rp-cream);font-size:0.82rem;font-weight:600;cursor:pointer;
  font-family:inherit;transition:all 0.2s;white-space:nowrap}
.rp-add:hover{border-color:var(--rp-pink);background:rgba(255,0,110,0.12);color:#fff;transform:translateY(-1px)}

.rp-stage{background:#0A0612;border:1px solid rgba(255,0,110,0.28);border-radius:14px;
  padding:0.8rem;overflow:auto;box-shadow:inset 0 0 60px rgba(255,0,110,0.06)}
.rp-stage svg{width:100%;height:auto;display:block;min-width:520px;touch-action:none;cursor:grab}
.rp-stage svg:active{cursor:grabbing}

.rp-item{cursor:grab}
.rp-item.rp-fest{cursor:not-allowed;opacity:0.92}
.rp-item rect,.rp-item circle{transition:filter 0.15s}
.rp-item.rp-aktiv rect,.rp-item.rp-aktiv circle{
  filter:drop-shadow(0 0 8px rgba(255,0,110,0.9));stroke-width:3}
.rp-item.rp-warn rect,.rp-item.rp-warn circle{stroke:#EF4444 !important;filter:drop-shadow(0 0 8px rgba(239,68,68,0.8))}

.rp-info{margin-top:0.7rem;font-size:0.83rem;color:var(--rp-muted);min-height:1.2em}

.rp-controls{display:flex;flex-wrap:wrap;gap:0.45rem;margin-top:0.8rem}
.rp-btn{padding:0.55rem 0.95rem;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.14);
  border-radius:12px;color:var(--rp-cream);font-size:0.84rem;font-weight:600;cursor:pointer;
  font-family:inherit;transition:all 0.2s}
.rp-btn:hover{border-color:var(--rp-purple);background:rgba(155,89,255,0.12);color:#fff}

.rp-msg{margin-top:0.6rem;padding:0.55rem 0.9rem;border-radius:10px;font-size:0.83rem;
  background:rgba(245,158,11,0.12);border:1px solid rgba(245,158,11,0.32);color:#F5E9D3;
  opacity:0;transform:translateY(-4px);transition:opacity 0.2s,transform 0.2s;pointer-events:none}
.rp-msg.show{opacity:1;transform:none}

@media(max-width:640px){
  .rp-add{font-size:0.76rem;padding:0.45rem 0.65rem}
  .rp-btn{font-size:0.78rem;padding:0.5rem 0.75rem;flex:1 1 auto}
  .rp-stage{padding:0.5rem}
}
@media (prefers-reduced-motion: reduce){
  .rp-add,.rp-btn,.rp-msg,.rp-item rect,.rp-item circle{transition:none}
}
