/* ── SAVE MODAL ── */
.modal-overlay { display:none; position:fixed; inset:0; background:rgba(0,0,0,.75); backdrop-filter:blur(4px); z-index:100; align-items:center; justify-content:center; }
.modal-overlay.visible { display:flex; }
.modal { background:var(--surface); border:1px solid var(--border2); padding:32px; width:400px; border-radius:var(--r-lg); box-shadow:var(--shadow-float); }
.modal-title { font-family:'Bebas Neue',sans-serif; font-size:18px; letter-spacing:5px; color:var(--accent2); margin-bottom:20px; }
.modal-row { margin-bottom:14px; }
.modal-label { font-size:8px; letter-spacing:2px; color:var(--label); text-transform:uppercase; margin-bottom:5px; }
.modal-input { width:100%; font-family:'DM Mono',monospace; font-size:10px; background:var(--bg); color:var(--text); border:1px solid var(--border); padding:7px 10px; outline:none; border-radius:var(--r-sm); }
.modal-input:focus { border-color:var(--accent2); }
.modal-btns { display:flex; gap:8px; justify-content:flex-end; margin-top:20px; }
.modal-note { font-size:9px; color:var(--label); margin-top:8px; line-height:1.6; }

/* ── PIXEL PROP MODAL OVERLAY ── */
.prop-modal-overlay {
  display:none; position:fixed; inset:0;
  background:rgba(0,0,0,.8); backdrop-filter:blur(4px); z-index:200;
  align-items:center; justify-content:center;
}
.prop-modal-overlay.visible { display:flex; }

.prop-modal {
  background:var(--surface);
  border:1px solid var(--border2);
  width:520px;
  max-height:85vh;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border-radius:var(--r-lg);
  box-shadow:var(--shadow-float);
}

.prop-modal-header {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:16px 20px;
  border-bottom:1px solid var(--border);
  flex-shrink:0;
  border-radius:var(--r-lg) var(--r-lg) 0 0;
}
.prop-modal-title {
  font-family:'Bebas Neue',sans-serif;
  font-size:16px;
  letter-spacing:4px;
  color:var(--accent2);
}
.prop-modal-close {
  font-size:16px;
  color:var(--label);
  cursor:pointer;
  transition:.15s;
  line-height:1;
  padding:2px 6px;
}
.prop-modal-close:hover { color:var(--danger); }

.prop-modal-body {
  flex:1;
  overflow-y:auto;
  padding:20px;
}
.prop-modal-body::-webkit-scrollbar { width:4px; }
.prop-modal-body::-webkit-scrollbar-thumb { background:var(--border2); }

.prop-modal-footer {
  padding:14px 20px;
  border-top:1px solid var(--border);
  display:flex;
  gap:8px;
  justify-content:flex-end;
  flex-shrink:0;
}
