#_ed_bar {
  position: fixed;
  bottom: 0; left: 0; right: 0;
  z-index: 2147483647;
  background: linear-gradient(180deg, #4a6fa5 0%, #2d4f7c 100%);
  border-top: 3px solid #1a3a5c;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 28px;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  box-shadow: 0 -4px 20px rgba(0,0,0,.35);
  transform: translateY(100%);
  transition: transform .3s cubic-bezier(.4,0,.2,1);
}
#_ed_bar.visible { transform: translateY(0); }

#_ed_bar-label {
  font-size: 13px; font-weight: 700;
  color: rgba(255,255,255,.9);
  letter-spacing: .5px; margin-right: 4px; white-space: nowrap;
}
#_ed_bar-sep {
  width: 1px; height: 28px;
  background: rgba(255,255,255,.2); margin: 0 4px;
}

#_ed_fab {
  position: fixed; bottom: 22px; right: 22px;
  z-index: 2147483646;
  padding: 10px 20px; border-radius: 24px; border: none;
  background: linear-gradient(135deg, #4a6fa5, #2d4f7c);
  color: #fff; font-size: 14px; font-weight: 700;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  cursor: pointer;
  box-shadow: 0 4px 14px rgba(45,79,124,.5);
  transition: all .2s ease; letter-spacing: .3px;
}
#_ed_fab:hover {
  background: linear-gradient(135deg, #5a7fb5, #3d5f8c);
  box-shadow: 0 6px 18px rgba(45,79,124,.6);
  transform: translateY(-1px);
}
#_ed_fab.on { background: linear-gradient(135deg, #2d7a4f, #1a5a35); box-shadow: 0 4px 14px rgba(29,90,53,.5); }
#_ed_fab.on:hover { background: linear-gradient(135deg, #3d8a5f, #2a6a45); }

._ed_btn {
  padding: 9px 22px; border-radius: 8px; border: none;
  cursor: pointer; white-space: nowrap;
  font-size: 13px; font-weight: 600;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  transition: all .15s ease; letter-spacing: .2px;
}
#_ed_btn_save { background: #fff; color: #2d4f7c; box-shadow: 0 2px 8px rgba(0,0,0,.15); }
#_ed_btn_save:hover { background: #eef4ff; transform: translateY(-1px); box-shadow: 0 4px 12px rgba(0,0,0,.2); }
#_ed_btn_exit { background: rgba(255,255,255,.15); color: rgba(255,255,255,.9); border: 1px solid rgba(255,255,255,.25); }
#_ed_btn_exit:hover { background: rgba(255,255,255,.25); }

._ed_dom_inp {
  width: 140px; padding: 7px 10px; border-radius: 6px;
  border: 1px solid rgba(255,255,255,.25);
  background: rgba(255,255,255,.12); color: #fff;
  font-size: 12px;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  outline: none; transition: all .15s ease;
}
._ed_dom_inp::placeholder { color: rgba(255,255,255,.5); }
._ed_dom_inp:focus { background: rgba(255,255,255,.2); border-color: rgba(255,255,255,.5); }
#_ed_dom_arrow { color: rgba(255,255,255,.7); font-size: 15px; font-weight: 700; }
#_ed_btn_dom { background: #ffd54a; color: #5a4a00; box-shadow: 0 2px 8px rgba(0,0,0,.15); }
#_ed_btn_dom:hover { background: #ffe082; transform: translateY(-1px); }

#_ed_status {
  flex: 1; font-size: 12px;
  color: rgba(255,255,255,.6); text-align: right;
  transition: color .3s; font-style: italic;
}
#_ed_status.ok { color: #7fffb0; font-style: normal; font-weight: 600; }

body._ed_on [data-editable] { outline: 1px dashed rgba(100,160,255,.4) !important; min-height: 1em; }
body._ed_on [data-editable]:hover { outline: 2px solid #4a8fff !important; background: rgba(74,143,255,.07) !important; cursor: text !important; }
body._ed_on [data-editable]:focus { outline: 2px solid #2ecc71 !important; background: rgba(46,204,113,.06) !important; }

body._ed_on img._ed_img { outline: 2px dashed rgba(255,180,0,.5) !important; cursor: pointer !important; }
body._ed_on img._ed_img:hover { outline: 2px solid #ffb400 !important; filter: brightness(1.05); }

#_ed_img_pop {
  position: fixed; z-index: 2147483647;
  background: #e7eaef; border: 1px solid #7a8fa3;
  border-radius: 3px; padding: 12px 14px; width: 290px;
  box-shadow: 2px 2px 6px rgba(0,0,0,.3);
  font: 78%/130% Verdana, Arial, Helvetica, sans-serif;
  color: #444; display: none;
}
#_ed_img_pop.show { display: block; }
#_ed_img_pop h4 { margin: 0 0 8px; font-size: 1em; color: #222; border-bottom: 1px solid #bbb; padding-bottom: 6px; }
#_ed_img_pop label { display: block; font-size: .9em; color: #555; margin-bottom: 3px; }

#_ed_img_url {
  width: 100%; box-sizing: border-box;
  background: #fff; border: 1px solid #7f9db9;
  color: #333; font: 95%/115% Verdana, Helvetica, sans-serif;
  padding: 3px 5px; outline: none; margin-bottom: 7px;
}
#_ed_img_url:focus { border-color: #454545; }

._ed_img_row { display: flex; flex-direction: column; gap: 6px; }
#_ed_img_upload { width: 100%; box-sizing: border-box; padding: 4px; border: 1px solid #7f9db9; background: #fff; color: #444; font: 78% Verdana, Arial, sans-serif; cursor: pointer; }
._ed_img_actions { display: flex; gap: 6px; }

#_ed_img_apply { flex: 1; padding: 5px 10px; border: 1px solid #aaa; background: #cde7ff; color: #333; font: bold 78% Verdana, Arial, sans-serif; cursor: pointer; }
#_ed_img_apply:hover { background: #b8d8f8; }
#_ed_img_cancel { padding: 5px 10px; border: 1px solid #aaa; background: #dde3e8; color: #555; font: bold 78% Verdana, Arial, sans-serif; cursor: pointer; }
#_ed_img_cancel:hover { background: #cdd3d8; }

#_ed_img_preview { width: 100%; height: 80px; object-fit: contain; background: #fff; border: 1px solid #bbb; margin-bottom: 7px; display: none; }
#_ed_img_preview.show { display: block; }
