.srp-wrap{max-width:1200px;margin:0 auto;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif}
.srp-toolbar{display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:space-between;margin:12px 0}
.srp-btn{padding:8px 12px;border:1px solid #ddd;background:#fafafa;border-radius:8px;cursor:pointer}
.srp-btn[disabled]{opacity:.5;cursor:not-allowed}
.srp-palette{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}
.srp-chip{padding:6px 10px;border:1px dashed #bbb;border-radius:999px;background:#fff}
.srp-grid{border:1px solid #e4e4e4;border-radius:12px;overflow:hidden;background:#fff}
.srp-label{font-size:12px;color:#666}
.srp-empty{padding:12px;border:1px dashed #dcdcdc;border-radius:10px;background:#fafafa;color:#666;font-size:14px}
/* Floating Rotate button (mobile) */
#srp-rotate-fab {
  position: fixed;
  right: 16px;
  bottom: 16px;
  z-index: 9999;
  display: none;                 /* shown when a module is selected */
  padding: 14px 16px;
  border: none;
  border-radius: 999px;
  background: #2b6cb0;
  color: #fff;
  font-size: 16px;
  box-shadow: 0 6px 18px rgba(0,0,0,.2);
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}
#srp-rotate-fab:active { transform: translateY(1px); }
@media (max-width: 900px){
  #srp-rotate-fab { display: none; }  /* hidden by default until selection */
  #srp-rotate-fab.is-active { display: inline-block; }
}
