html,body{
  margin:0!important;
  width:100%!important;
  height:100%!important;
  overflow:hidden!important;
  background:#071018!important;
  font-family:Inter,Segoe UI,Arial,sans-serif;
}

.dms-titlebar{
  position:fixed;
  top:0;left:0;right:0;
  height:54px;
  background:#071018;
  border-bottom:1px solid #223241;
  color:#fff;
  display:flex;
  align-items:center;
  gap:18px;
  padding:0 16px;
  z-index:999999;
  box-sizing:border-box;
}

.dms-brand{
  display:flex;
  align-items:center;
  gap:10px;
  font-size:20px;
  font-weight:800;
  white-space:nowrap;
}

.dms-logo{
  width:30px;height:30px;
  background:#1b86ff;
  border-radius:8px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:900;
}

.dms-menu{
  display:flex;
  height:100%;
  margin-left:18px;
}

.dms-menu span{
  display:flex;
  align-items:center;
  padding:0 14px;
  border-left:1px solid rgba(255,255,255,.06);
  font-size:13px;
}

.dms-menu .active{
  box-shadow:inset 0 -2px #2388ff;
}

.dms-user{
  margin-left:auto;
  display:flex;
  align-items:center;
  gap:14px;
  font-size:13px;
}

.dms-ribbon{
  position:fixed;
  top:54px;left:0;right:0;
  height:112px;
  background:#0b1520;
  border-bottom:1px solid #223241;
  display:flex;
  color:#fff;
  z-index:999999;
  overflow-x:auto;
}

.dms-group{
  padding:8px 12px;
  border-right:1px solid #223241;
}

.dms-group-title{
  text-align:center;
  color:#8fa8bb;
  font-size:10px;
  margin-bottom:6px;
}

.dms-tools{
  display:flex;
  gap:7px;
}

.dms-tool{
  width:55px;
  height:72px;
  border:1px solid transparent;
  background:transparent;
  color:#fff;
  border-radius:5px;
  cursor:pointer;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:7px;
  font-size:11px;
}

.dms-tool:hover,.dms-tool.active{
  border-color:#2388ff;
  background:#112538;
}

.dms-tool .ico{
  font-size:21px;
}

.dms-workspace{
  position:fixed;
  top:166px;
  left:0;
  right:0;
  bottom:30px;
  display:grid;
  grid-template-columns:44px 240px 1fr 360px;
  z-index:999990;
  background:#071018;
}

.dms-rail{
  background:#071018;
  border-right:1px solid #223241;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:14px;
  padding-top:14px;
}

.dms-rail button{
  width:30px;height:30px;
  border:0;
  border-radius:5px;
  background:transparent;
  color:#dce8f2;
  cursor:pointer;
  font-size:17px;
}

.dms-layers{
  background:#0b1520;
  border-right:1px solid #223241;
  color:#fff;
  padding:18px 16px;
  overflow:auto;
}

.dms-panel-title{
  font-size:16px;
  font-weight:800;
  margin-bottom:15px;
}

.dms-layer{
  display:flex;
  align-items:center;
  gap:10px;
  height:41px;
  border-bottom:1px solid rgba(255,255,255,.06);
  font-size:13px;
}

.dms-check{
  width:18px;height:18px;
  background:#2388ff;
  border-radius:4px;
  display:flex;
  align-items:center;
  justify-content:center;
}

.dms-map-slot{
  position:relative;
  overflow:hidden;
  background:#000;
}

.dms-map-slot #map{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  display:block!important;
}

.dms-right{
  background:#0b1520;
  border-left:1px solid #223241;
  color:#fff;
  display:flex;
  flex-direction:column;
}

.dms-right-content{
  padding:18px;
  overflow:auto;
}

.dms-warning{
  border:1px solid #8c6b00;
  background:rgba(255,196,0,.12);
  color:#ffd34d;
  padding:14px;
  border-radius:6px;
  margin:14px 0;
  font-size:13px;
}

.dms-section{
  border:1px solid #223241;
  border-radius:6px;
  overflow:hidden;
  margin-bottom:12px;
}

.dms-section h4{
  margin:0;
  padding:12px;
  background:#111f2b;
  font-size:13px;
}

.dms-field{
  display:grid;
  grid-template-columns:105px 1fr;
  gap:10px;
  padding:10px 12px;
  align-items:center;
  font-size:13px;
}

.dms-field label{
  color:#9fb2c2;
}

.dms-field input,.dms-field select{
  height:32px;
  background:#071018;
  border:1px solid #263849;
  color:#fff;
  border-radius:4px;
  padding:0 8px;
}

.dms-actions{
  margin-top:auto;
  padding:16px;
  border-top:1px solid #223241;
  display:flex;
  gap:12px;
}

.dms-actions button{
  flex:1;
  height:38px;
  border-radius:5px;
  font-weight:800;
  cursor:pointer;
}

.dms-delete{
  background:#291014;
  border:1px solid #7a222a;
  color:#ff5c5c;
}

.dms-save{
  background:#145fa8;
  border:1px solid #2d8cff;
  color:#fff;
}

.dms-statusbar{
  position:fixed;
  left:0;right:0;bottom:0;
  height:30px;
  background:#071018;
  border-top:1px solid #223241;
  color:#9fb2c2;
  display:flex;
  align-items:center;
  gap:32px;
  padding:0 14px;
  font-size:12px;
  z-index:999999;
}

.dms-db{
  margin-left:auto;
  color:#2ecc71;
}

/* ===== AI DRAW CHAT ===== */

.dms-ai-fab{
  position:fixed;
  left:20px;
  bottom:50px;
  width:56px;
  height:56px;
  border-radius:50%;
  background:linear-gradient(135deg,#7b3cff,#4da3ff);
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  font-size:22px;
  cursor:pointer;
  z-index:999999;
  box-shadow:0 0 20px rgba(123,60,255,.4);
}

.dms-ai-chat{
  position:fixed;
  left:20px;
  bottom:120px;
  width:300px;
  background:#0b1520;
  border:1px solid #2a3f52;
  border-radius:12px;
  box-shadow:0 0 30px rgba(0,0,0,.6);
  display:none;
  flex-direction:column;
  z-index:999999;
  overflow:hidden;
}

.dms-ai-chat.active{
  display:flex;
}

.dms-ai-header{
  padding:10px 12px;
  background:#111f2b;
  font-weight:700;
  display:flex;
  justify-content:space-between;
  align-items:center;
}

.dms-ai-body{
  padding:12px;
  font-size:13px;
  color:#cfe3f3;
}

.dms-ai-input{
  display:flex;
  border-top:1px solid #223241;
}

.dms-ai-input input{
  flex:1;
  background:#071018;
  border:0;
  padding:10px;
  color:#fff;
}

.dms-ai-input button{
  width:40px;
  border:0;
  background:#2388ff;
  color:#fff;
  cursor:pointer;
}

.dms-tool.dms-active{
  border-color:#7b3cff!important;
  background:#1c1735!important;
  box-shadow:0 0 12px rgba(123,60,255,.55);
}

.dms-toast{
  position:fixed;
  right:385px;
  bottom:48px;
  background:#071018;
  border:1px solid #2d8cff;
  color:#fff;
  padding:10px 14px;
  border-radius:8px;
  z-index:9999999;
  font-size:13px;
  box-shadow:0 0 20px rgba(0,0,0,.5);
}

.dms-measure-box{
  position:fixed;
  left:300px;
  bottom:48px;
  background:#071018;
  border:1px solid #7b3cff;
  color:#fff;
  padding:10px 14px;
  border-radius:8px;
  z-index:9999999;
  font-size:13px;
}

.dms-ai-body{
  max-height:260px;
  overflow:auto;
  line-height:1.45;
}

.dms-ai-msg{
  margin:8px 0;
  padding:8px 10px;
  border-radius:8px;
  background:#101d29;
  color:#dcecff;
}

.dms-ai-msg.user{
  background:#17355a;
  margin-left:20px;
}

.dms-ai-msg.ai{
  background:#111f2b;
  margin-right:20px;
}

.dms-ai-chip{
  display:inline-block;
  margin:4px 4px 0 0;
  padding:6px 8px;
  border:1px solid #7b3cff;
  border-radius:7px;
  color:#d9c8ff;
  cursor:pointer;
  font-size:12px;
}

.dms-ai-typing{
  margin:8px 0;
  padding:8px 10px;
  border-radius:8px;
  background:#111f2b;
  color:#9fb2c2;
  font-style:italic;
}

.dms-ai-typing span{
  display:inline-block;
  animation:dmsTyping 1s infinite;
}

@keyframes dmsTyping{
  0%{opacity:.25}
  50%{opacity:1}
  100%{opacity:.25}
}

/* ===== DMS TOP AUTH LINKS ===== */
.dms-top-link{
  color:#dcecff !important;
  text-decoration:none !important;
  border:1px solid #24384a;
  background:#0f2030;
  padding:7px 10px;
  border-radius:7px;
  font-weight:800;
  cursor:pointer;
}

.dms-top-link:hover{
  border-color:#2d8cff;
  background:#16324a;
}

.dms-login-link{
  color:#ffd34d !important;
}

/* ===== REAL AUTH STATUS ===== */
.dms-auth-user{
  color:#dcecff;
  line-height:1.15;
  padding:4px 8px;
  border:1px solid #24384a;
  background:#0f2030;
  border-radius:7px;
}

.dms-auth-user small{
  color:#9fb2c2;
  font-size:11px;
}

.dms-logout-link{
  color:#ffb3b3 !important;
}

/* ===== DMS Shapes Overlay ===== */
.dms-shape-layer{
  position:absolute;
  inset:0;
  z-index:18;
  pointer-events:none;
}

.dms-shape-svg{
  position:absolute;
  inset:0;
  overflow:visible;
  pointer-events:none;
}

/* ===== DMS Shape Select/Delete ===== */
.dms-shape-clickable{
  pointer-events:all;
  cursor:pointer;
}

.dms-shape-hit{
  pointer-events:all;
  cursor:pointer;
}

.dms-shape-selected{
  filter: drop-shadow(0 0 8px rgba(35,136,255,.95));
}

/* ===== DMS Premium Footer + Dialogs v2 ===== */

/* Footer acțiuni panou dreapta */
.dms-action-footer{
  position:sticky;
  bottom:0;
  z-index:40;
  margin:18px -12px -10px;
  padding:14px 12px 10px;
  border-top:1px solid rgba(148,163,184,.18);
  background:
    linear-gradient(180deg, rgba(7,14,24,.38), rgba(7,14,24,.96) 32%, rgba(7,14,24,.98));
  backdrop-filter:blur(8px);
}

.dms-action-row{
  display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
  gap:10px;
  align-items:center;
}

.dms-action-row .dms-delete,
.dms-action-row .dms-save,
.dms-delete,
.dms-save{
  height:44px;
  min-height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  white-space:nowrap;
  line-height:1;
  border-radius:11px;
  padding:0 15px;
  font-size:13px;
  font-weight:900;
  letter-spacing:.2px;
  text-transform:none;
  cursor:pointer;
  transition:
    transform .12s ease,
    filter .12s ease,
    box-shadow .12s ease,
    border-color .12s ease,
    background .12s ease;
}

.dms-action-row .dms-delete:hover,
.dms-action-row .dms-save:hover,
.dms-delete:hover,
.dms-save:hover{
  transform:translateY(-1px);
  filter:brightness(1.08);
}

.dms-delete{
  color:#fecaca !important;
  background:linear-gradient(180deg, rgba(127,29,29,.62), rgba(69,10,10,.72)) !important;
  border:1px solid rgba(239,68,68,.58) !important;
  box-shadow:0 10px 22px rgba(127,29,29,.18), inset 0 1px 0 rgba(255,255,255,.05);
}

.dms-save{
  color:#ffffff !important;
  background:linear-gradient(180deg, #2f95ff, #1262c7) !important;
  border:1px solid rgba(147,197,253,.48) !important;
  box-shadow:0 12px 26px rgba(35,136,255,.28), inset 0 1px 0 rgba(255,255,255,.16);
}

.dms-save:active,
.dms-delete:active{
  transform:translateY(0);
}

/* status DB sub footer, dacă există în markup */
.dms-db-status,
.dms-status-db,
.dms-connection-status{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  min-height:20px;
  padding-top:6px;
  color:#22c55e !important;
  font-size:11px;
  font-weight:700;
}

/* Dialoguri custom premium */
.dms-dialog-backdrop{
  position:fixed;
  inset:0;
  z-index:999999;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
  background:
    radial-gradient(circle at 50% 38%, rgba(35,136,255,.16), transparent 36%),
    rgba(2,6,23,.68);
  backdrop-filter:blur(12px) saturate(1.15);
  animation:dmsDialogFade .14s ease-out;
}

.dms-dialog{
  width:min(500px, calc(100vw - 48px));
  padding:20px;
  border-radius:22px;
  border:1px solid rgba(148,163,184,.24);
  background:
    radial-gradient(circle at 0 0, rgba(59,130,246,.18), transparent 35%),
    linear-gradient(180deg, rgba(15,23,42,.98), rgba(3,7,18,.99));
  box-shadow:
    0 34px 90px rgba(0,0,0,.62),
    inset 0 1px 0 rgba(255,255,255,.08);
  color:#e5eefc;
  animation:dmsDialogPop .16s cubic-bezier(.2,.9,.25,1.18);
}

.dms-dialog-top{
  display:flex;
  align-items:center;
  gap:14px;
  margin-bottom:16px;
}

.dms-dialog-icon{
  width:48px;
  height:48px;
  flex:0 0 48px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:16px;
  background:rgba(35,136,255,.16);
  border:1px solid rgba(96,165,250,.45);
  color:#bfdbfe;
  font-size:22px;
  font-weight:1000;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}

.dms-dialog-danger .dms-dialog-icon{
  background:rgba(239,68,68,.14);
  border-color:rgba(239,68,68,.48);
  color:#fecaca;
}

.dms-dialog-title-wrap{
  min-width:0;
}

.dms-dialog-title{
  color:#ffffff;
  font-size:18px;
  font-weight:950;
  letter-spacing:.2px;
  margin-bottom:4px;
}

.dms-dialog-subtitle{
  color:#7dd3fc;
  font-size:12px;
  font-weight:800;
  opacity:.88;
}

.dms-dialog-danger .dms-dialog-subtitle{
  color:#fbbf24;
}

.dms-dialog-message{
  min-height:52px;
  padding:14px 15px;
  border-radius:16px;
  border:1px solid rgba(148,163,184,.16);
  background:rgba(15,23,42,.56);
  color:#cbd5e1;
  font-size:14px;
  line-height:1.6;
  white-space:pre-wrap;
}

.dms-dialog-message strong{
  color:#ffffff;
  font-weight:950;
  background:rgba(35,136,255,.16);
  border:1px solid rgba(96,165,250,.28);
  padding:2px 7px;
  border-radius:9px;
  margin:0 2px;
  white-space:nowrap;
}

.dms-dialog-danger .dms-dialog-message strong{
  background:rgba(239,68,68,.16);
  border-color:rgba(239,68,68,.32);
}

.dms-dialog-actions{
  display:flex;
  justify-content:flex-end;
  gap:10px;
  padding-top:16px;
}

.dms-dialog-btn{
  min-width:116px;
  height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:12px;
  padding:0 16px;
  font-weight:950;
  font-size:13px;
  cursor:pointer;
  transition:transform .12s ease, filter .12s ease, box-shadow .12s ease;
}

.dms-dialog-btn:hover{
  transform:translateY(-1px);
  filter:brightness(1.08);
}

.dms-dialog-btn-secondary{
  color:#dbeafe;
  background:rgba(15,23,42,.76);
  border:1px solid rgba(148,163,184,.32);
}

.dms-dialog-btn-primary{
  color:#ffffff;
  border:1px solid rgba(147,197,253,.46);
  background:linear-gradient(180deg, #2388ff, #1262c7);
  box-shadow:0 12px 26px rgba(35,136,255,.26);
}

.dms-dialog-danger .dms-dialog-btn-primary{
  border-color:rgba(252,165,165,.42);
  background:linear-gradient(180deg, #ef4444, #b91c1c);
  box-shadow:0 12px 26px rgba(239,68,68,.22);
}

@keyframes dmsDialogFade{
  from{ opacity:0; }
  to{ opacity:1; }
}

@keyframes dmsDialogPop{
  from{ opacity:0; transform:translateY(10px) scale(.965); }
  to{ opacity:1; transform:translateY(0) scale(1); }
}

/* ===== END DMS Premium Footer + Dialogs v2 ===== */

/* ===== DMS Ribbon Pro Menus + Collapse ===== */
.dms-menu-btn-pro{
  position:relative;
  cursor:pointer;
  transition:background .14s ease, color .14s ease, border-color .14s ease;
}

.dms-menu-active-pro{
  color:#ffffff !important;
  background:rgba(35,136,255,.14) !important;
  box-shadow:inset 0 -2px 0 #2388ff;
}

.dms-ribbon-hint-pro{
  margin-left:auto;
  padding:0 14px;
  display:flex;
  align-items:center;
  color:#7dd3fc;
  font-size:11px;
  font-weight:800;
  opacity:.85;
  white-space:nowrap;
}

.dms-ribbon-group-pro{
  transition:opacity .16s ease, transform .16s ease, width .16s ease;
}

.dms-ribbon-group-hidden-pro{
  display:none !important;
}

.dms-layout-controls-pro{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-left:8px;
  padding-left:8px;
  border-left:1px solid rgba(148,163,184,.18);
}

.dms-layout-btn-pro{
  height:30px;
  min-width:54px;
  padding:0 9px;
  border-radius:9px;
  border:1px solid rgba(148,163,184,.22);
  background:rgba(15,23,42,.72);
  color:#c7d2fe;
  font-size:11px;
  font-weight:900;
  cursor:pointer;
}

.dms-layout-btn-pro:hover,
.dms-layout-btn-pro.is-active{
  background:rgba(35,136,255,.22);
  border-color:rgba(96,165,250,.58);
  color:#ffffff;
}

.dms-layout-focus-pro{
  color:#d9f99d;
}

.dms-top-icon-pro{
  cursor:pointer;
  border-radius:9px;
  transition:background .12s ease, color .12s ease;
}

.dms-top-icon-pro:hover{
  background:rgba(35,136,255,.18);
  color:#ffffff;
}

/* collapse panouri */
body.dms-left-collapsed-pro .dms-left-panel-pro{
  display:none !important;
}

body.dms-right-collapsed-pro .dms-right-panel-pro{
  display:none !important;
}

body.dms-ribbon-collapsed-pro .dms-ribbon-group-pro,
body.dms-ribbon-collapsed-pro .dms-ribbon-hint-pro{
  display:none !important;
}

/* mod hartă extinsă */
body.dms-focus-map-pro .dms-left-panel-pro,
body.dms-focus-map-pro .dms-right-panel-pro,
body.dms-focus-map-pro .dms-ribbon-group-pro,
body.dms-focus-map-pro .dms-ribbon-hint-pro{
  display:none !important;
}

body.dms-focus-map-pro #map,
body.dms-left-collapsed-pro #map,
body.dms-right-collapsed-pro #map{
  min-width:0;
}

/* butoane auth mai compacte */
.dms-layout-controls-pro + *{
  margin-left:6px;
}

/* ===== END DMS Ribbon Pro Menus + Collapse ===== */

/* ===== DMS Header Overlap Fix + Floating Layout Dock ===== */

/* nu lăsăm hint-ul sau dock-ul vechi să împingă auth buttons */
.dms-ribbon-hint-pro{
  display:none !important;
}

/* top auth curat */
.dms-top-icon-pro,
.dms-menu-btn-pro{
  flex-shrink:0;
}

/* dock layout floating, nu în header */
.dms-layout-controls-pro.dms-layout-floating-pro{
  position:fixed;
  right:18px;
  bottom:78px;
  z-index:99990;
  display:flex;
  align-items:center;
  gap:6px;
  margin:0 !important;
  padding:8px;
  border:1px solid rgba(148,163,184,.24);
  border-radius:16px;
  background:rgba(7,14,24,.88);
  box-shadow:0 18px 45px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.06);
  backdrop-filter:blur(10px);
}

.dms-layout-title-pro{
  padding:0 6px;
  color:#7dd3fc;
  font-size:11px;
  font-weight:950;
  letter-spacing:.3px;
  text-transform:uppercase;
}

.dms-layout-controls-pro.dms-layout-floating-pro .dms-layout-btn-pro{
  height:30px;
  min-width:auto;
  padding:0 10px;
  border-radius:10px;
  border:1px solid rgba(148,163,184,.24);
  background:rgba(15,23,42,.82);
  color:#dbeafe;
  font-size:11px;
  font-weight:900;
  cursor:pointer;
  white-space:nowrap;
}

.dms-layout-controls-pro.dms-layout-floating-pro .dms-layout-btn-pro:hover,
.dms-layout-controls-pro.dms-layout-floating-pro .dms-layout-btn-pro.is-active{
  background:rgba(35,136,255,.26);
  border-color:rgba(96,165,250,.62);
  color:#ffffff;
}

/* prevenim orice layout controls introdus accidental în header */
header .dms-layout-controls-pro:not(.dms-layout-floating-pro),
nav .dms-layout-controls-pro:not(.dms-layout-floating-pro){
  display:none !important;
}

/* header mai stabil la hover */
.dms-menu-active-pro{
  box-shadow:inset 0 -2px 0 #2388ff !important;
}

/* ===== END DMS Header Overlap Fix + Floating Layout Dock ===== */

/* ===== DMS Header Hard Clean v3 ===== */

/* elimină complet hint-ul lung care se suprapunea în header */
#dmsRibbonHintPro,
.dms-ribbon-hint-pro{
  display:none !important;
  visibility:hidden !important;
  width:0 !important;
  max-width:0 !important;
  height:0 !important;
  max-height:0 !important;
  overflow:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}

/* elimină orice dock layout rămas accidental în header/nav */
header .dms-layout-controls-pro:not(.dms-layout-floating-pro),
nav .dms-layout-controls-pro:not(.dms-layout-floating-pro),
.dms-topbar .dms-layout-controls-pro:not(.dms-layout-floating-pro){
  display:none !important;
}

/* header stabil: fără wrap, fără împins elemente */
header,
nav,
.dms-topbar,
.dms-header,
.dms-ribbon-top{
  overflow:visible;
}

.dms-menu-btn-pro{
  flex:0 0 auto !important;
  white-space:nowrap !important;
}

/* elemente vechi ascunse prin JS */
.dms-legacy-header-hidden{
  display:none !important;
}

/* butoanele din dreapta nu se mai calcă între ele */
.dms-top-icon-pro,
.dms-menu-btn-pro,
a[href="/admin/"],
a[href="/users/logout/"]{
  flex-shrink:0 !important;
  white-space:nowrap !important;
}

/* dock layout floating jos dreapta */
.dms-layout-controls-pro.dms-layout-floating-pro{
  position:fixed !important;
  right:18px !important;
  bottom:78px !important;
  z-index:99990 !important;
  display:flex !important;
  align-items:center !important;
  gap:6px !important;
  margin:0 !important;
  padding:8px !important;
  border:1px solid rgba(148,163,184,.24) !important;
  border-radius:16px !important;
  background:rgba(7,14,24,.88) !important;
  box-shadow:0 18px 45px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.06) !important;
  backdrop-filter:blur(10px) !important;
}

/* dialog premium curat, fără grid vechi */
.dms-dialog{
  display:block !important;
  grid-template-columns:none !important;
}

.dms-dialog-top{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
}

.dms-dialog-message{
  display:block !important;
  width:100% !important;
  box-sizing:border-box !important;
}

.dms-dialog-actions{
  display:flex !important;
  justify-content:flex-end !important;
  align-items:center !important;
  gap:10px !important;
}

/* ===== END DMS Header Hard Clean v3 ===== */

/* ===== DMS Profile Dialog Layout Fix ===== */

.dms-dialog{
  max-width: 560px !important;
}

.dms-dialog-top{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  margin-bottom:16px !important;
}

.dms-dialog-icon{
  flex:0 0 54px !important;
  width:54px !important;
  height:54px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  align-self:center !important;
}

.dms-dialog-title-wrap{
  flex:1 1 auto !important;
  min-width:0 !important;
}

.dms-dialog-title{
  display:block !important;
  margin:0 0 4px 0 !important;
  line-height:1.2 !important;
}

.dms-dialog-subtitle{
  display:block !important;
  margin:0 !important;
  line-height:1.35 !important;
}

.dms-dialog-message{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  box-sizing:border-box !important;
  margin-top:4px !important;
  line-height:1.45 !important;
  white-space:normal !important;
  overflow:visible !important;
}

.dms-dialog-message *{
  position:static !important;
  float:none !important;
  transform:none !important;
  max-width:100% !important;
  white-space:normal !important;
}

/* profil */
.dms-profile-card{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:10px !important;
  margin-top:6px !important;
}

.dms-profile-row{
  display:grid !important;
  grid-template-columns:150px 1fr !important;
  gap:12px !important;
  align-items:center !important;
  padding:10px 12px !important;
  border:1px solid rgba(91,163,255,.20) !important;
  border-radius:12px !important;
  background:rgba(11,24,43,.55) !important;
}

.dms-profile-label{
  font-size:13px !important;
  font-weight:700 !important;
  color:#8dc4ff !important;
  letter-spacing:.2px !important;
}

.dms-profile-value{
  font-size:15px !important;
  font-weight:600 !important;
  color:#f3f7ff !important;
  word-break:break-word !important;
}

.dms-dialog-actions{
  display:flex !important;
  justify-content:flex-end !important;
  align-items:center !important;
  gap:10px !important;
  margin-top:18px !important;
}

@media (max-width: 700px){
  .dms-dialog{
    max-width: calc(100vw - 32px) !important;
  }
  .dms-profile-row{
    grid-template-columns:1fr !important;
  }
}

/* ===== END DMS Profile Dialog Layout Fix ===== */

/* ===== DMS Header Real Fix v4 ===== */

/* Navbar-ul Bootstrap vechi din base.html NU trebuie să fie vizibil pe DMS */
body.dms-ready > nav.navbar,
body.dms-ready nav.navbar.navbar-expand-lg,
.dms-base-navbar-hidden{
  display:none !important;
  visibility:hidden !important;
  height:0 !important;
  min-height:0 !important;
  max-height:0 !important;
  overflow:hidden !important;
  pointer-events:none !important;
}

/* Header DMS stabil: brand | meniu | user */
.dms-titlebar{
  display:grid !important;
  grid-template-columns:auto minmax(0, 1fr) auto !important;
  align-items:center !important;
  gap:14px !important;
  overflow:hidden !important;
  width:100% !important;
  box-sizing:border-box !important;
}

.dms-brand{
  min-width:360px !important;
  max-width:460px !important;
  overflow:hidden !important;
  white-space:nowrap !important;
  text-overflow:ellipsis !important;
}

.dms-menu{
  min-width:0 !important;
  max-width:100% !important;
  overflow:hidden !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  flex-wrap:nowrap !important;
}

.dms-menu span{
  flex:0 0 auto !important;
  white-space:nowrap !important;
}

.dms-user{
  position:relative !important;
  z-index:20 !important;
  min-width:max-content !important;
  max-width:none !important;
  overflow:visible !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:8px !important;
  white-space:nowrap !important;
}

.dms-user .dms-top-link,
.dms-user .dms-top-icon,
.dms-user a,
.dms-user span{
  position:static !important;
  flex:0 0 auto !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  white-space:nowrap !important;
  line-height:1.1 !important;
}

.dms-user small{
  display:block !important;
  line-height:1.1 !important;
  font-size:10px !important;
  opacity:.85 !important;
}

/* ascunde complet relicvele Home/Logout/Login/Creează cont din base */
.dms-legacy-header-hidden,
body.dms-ready a[href="/"],
body.dms-ready a[href="/users/signup/"],
body.dms-ready a[href="/users/login/"]:not(.dms-login-link){
  display:none !important;
}

/* Profil dialog curat */
.dms-profile-card{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:9px !important;
  width:100% !important;
}

.dms-profile-row{
  display:grid !important;
  grid-template-columns:150px 1fr !important;
  gap:12px !important;
  align-items:center !important;
  padding:10px 12px !important;
  border-radius:12px !important;
  border:1px solid rgba(96,165,250,.22) !important;
  background:rgba(15,23,42,.58) !important;
}

.dms-profile-row span{
  color:#93c5fd !important;
  font-size:13px !important;
  font-weight:850 !important;
}

.dms-profile-row strong{
  color:#ffffff !important;
  font-size:14px !important;
  font-weight:900 !important;
  background:transparent !important;
  border:0 !important;
  padding:0 !important;
  margin:0 !important;
}

/* ===== END DMS Header Real Fix v4 ===== */

/* ===== DMS Menu Black Screen Guard v5 ===== */

/* Protecție: clasa de ascundere a meniurilor poate ascunde doar tool groups, nu layout-ul */
.dms-titlebar.dms-ribbon-group-hidden-pro{
  display:grid !important;
}

.dms-ribbon.dms-ribbon-group-hidden-pro{
  display:flex !important;
}

.dms-workspace.dms-ribbon-group-hidden-pro{
  display:grid !important;
}

.dms-map-slot.dms-ribbon-group-hidden-pro{
  display:block !important;
}

.dms-layers.dms-ribbon-group-hidden-pro{
  display:block !important;
}

.dms-right.dms-ribbon-group-hidden-pro{
  display:flex !important;
}

.dms-statusbar.dms-ribbon-group-hidden-pro{
  display:flex !important;
}

#map.dms-ribbon-group-hidden-pro{
  display:block !important;
}

/* Meniul din header să nu taie brutal taburile */
.dms-menu{
  overflow-x:auto !important;
  overflow-y:hidden !important;
  scrollbar-width:none !important;
}

.dms-menu::-webkit-scrollbar{
  display:none !important;
}

.dms-menu span{
  padding-left:14px !important;
  padding-right:14px !important;
}

/* ===== END DMS Menu Black Screen Guard v5 ===== */

/* ===== DMS Single Active Menu Fix SAFE ===== */

.dms-menu span.active,
.dms-menu span.dms-menu-active-pro{
  color:#ffffff !important;
  background:rgba(35,136,255,.18) !important;
  box-shadow:inset 0 -2px 0 #2388ff !important;
}

.dms-menu span:not(.active):not(.dms-menu-active-pro){
  background:transparent !important;
  box-shadow:none !important;
}

/* ===== END DMS Single Active Menu Fix SAFE ===== */

/* ===== DMS Search Panel Pro ===== */
.dms-search-panel-pro{
  position:fixed;
  top:118px;
  left:50%;
  transform:translateX(-50%) translateY(-10px);
  width:min(520px, calc(100vw - 40px));
  background:rgba(4,14,26,.97);
  border:1px solid rgba(96,165,250,.35);
  border-radius:18px;
  box-shadow:0 24px 70px rgba(0,0,0,.55);
  z-index:999999;
  padding:14px;
  opacity:0;
  pointer-events:none;
  transition:.18s ease;
}

.dms-search-panel-pro.is-open{
  opacity:1;
  pointer-events:auto;
  transform:translateX(-50%) translateY(0);
}

.dms-search-head-pro{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
  margin-bottom:12px;
  color:#fff;
}

.dms-search-head-pro strong{
  display:block;
  font-size:15px;
}

.dms-search-head-pro span{
  display:block;
  color:#8fb3d9;
  font-size:12px;
}

#dmsSearchClosePro{
  width:34px;
  height:34px;
  border-radius:10px;
  border:1px solid rgba(148,163,184,.35);
  background:rgba(15,23,42,.9);
  color:#fff;
  font-size:22px;
  line-height:1;
}

#dmsSearchInputPro{
  width:100%;
  height:42px;
  border-radius:12px;
  border:1px solid rgba(96,165,250,.45);
  background:#020812;
  color:#fff;
  padding:0 14px;
  outline:none;
}

.dms-search-results-pro{
  margin-top:10px;
  max-height:310px;
  overflow:auto;
  color:#8fb3d9;
  font-size:13px;
}

.dms-search-item-pro{
  width:100%;
  display:block;
  text-align:left;
  border:1px solid rgba(148,163,184,.18);
  background:rgba(15,23,42,.82);
  color:#fff;
  border-radius:12px;
  padding:10px 12px;
  margin:7px 0;
}

.dms-search-item-pro:hover{
  border-color:#2388ff;
  background:rgba(35,136,255,.16);
}

.dms-search-item-pro strong{
  display:block;
  font-size:13px;
}

.dms-search-item-pro span{
  display:block;
  color:#93c5fd;
  font-size:11px;
  margin-top:3px;
}
/* ===== END DMS Search Panel Pro ===== */

/* ===== DMS True Fullscreen ===== */

body.dms-true-fullscreen .dms-titlebar,
body.dms-true-fullscreen .dms-ribbon,
body.dms-true-fullscreen .dms-layers,
body.dms-true-fullscreen .dms-right,
body.dms-true-fullscreen .dms-rail,
body.dms-true-fullscreen .dms-statusbar,
body.dms-true-fullscreen .dms-layout-controls-pro{
  display:none !important;
}

body.dms-true-fullscreen .dms-workspace{
  position:fixed !important;
  inset:0 !important;
  width:100vw !important;
  height:100vh !important;
  display:block !important;
  z-index:999999 !important;
  background:#020812 !important;
}

body.dms-true-fullscreen .dms-map-slot{
  position:absolute !important;
  inset:0 !important;
  width:100vw !important;
  height:100vh !important;
}

body.dms-true-fullscreen #map{
  width:100vw !important;
  height:100vh !important;
}

/* ===== END DMS True Fullscreen ===== */

/* ===== DMS File Menu Clean ===== */
body[data-dms-menu="FIȘIER"] .dms-group[data-dms-group="GENERAL"] .dms-tool{
  min-width: 82px;
}

/* === DMS MENU STRUCTURE CSS START === */

.dms-menu {
  overflow-x: auto;
  scrollbar-width: thin;
}

.dms-menu span {
  white-space: nowrap;
}

/* === DMS MENU STRUCTURE CSS END === */

/* === DMS HARTA GRID COLLAPSE CSS START === */

/* Controlul vechi plutitor se ascunde. Layout-ul se controlează din ribbon + săgeți. */
.dms-layout-controls-pro,
.dms-layout-floating-pro,
#dmsLayoutControlsPro {
  display: none !important;
}

.dms-workspace {
  grid-template-columns: 44px 240px minmax(0, 1fr) 360px !important;
  transition: grid-template-columns 180ms ease !important;
}

body.dms-left-grid-collapsed .dms-workspace {
  grid-template-columns: 44px 42px minmax(0, 1fr) 360px !important;
}

body.dms-right-grid-collapsed .dms-workspace {
  grid-template-columns: 44px 240px minmax(0, 1fr) 42px !important;
}

body.dms-left-grid-collapsed.dms-right-grid-collapsed .dms-workspace,
body.dms-map-grid-expanded .dms-workspace {
  grid-template-columns: 44px 42px minmax(0, 1fr) 42px !important;
}

.dms-layers,
.dms-right,
.dms-map-slot {
  min-width: 0 !important;
}

.dms-layers,
.dms-right {
  position: relative !important;
  overflow: hidden !important;
}

body.dms-left-grid-collapsed .dms-layers > :not(.dms-grid-collapse-left),
body.dms-right-grid-collapsed .dms-right > :not(.dms-grid-collapse-right) {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

.dms-grid-collapse-btn {
  position: absolute;
  top: 14px;
  z-index: 80;
  width: 28px;
  height: 54px;
  border: 1px solid rgba(80, 150, 255, 0.48);
  border-radius: 10px;
  background: rgba(7, 23, 38, 0.98);
  color: #eaf5ff;
  font-size: 21px;
  font-weight: 900;
  line-height: 1;
  cursor: pointer;
  display: grid;
  place-items: center;
  box-shadow: 0 10px 28px rgba(0,0,0,0.32);
}

.dms-grid-collapse-btn:hover {
  border-color: rgba(35, 136, 255, 0.95);
  background: rgba(17, 49, 78, 0.98);
}

.dms-grid-collapse-left {
  right: 7px;
}

.dms-grid-collapse-right {
  left: 7px;
}

body.dms-left-grid-collapsed .dms-grid-collapse-left {
  right: 7px;
}

body.dms-right-grid-collapsed .dms-grid-collapse-right {
  left: 7px;
}

.dms-grid-panel-attention {
  outline: 2px solid rgba(35, 136, 255, 0.95);
  outline-offset: -2px;
  box-shadow: 0 0 0 5px rgba(35, 136, 255, 0.18);
}

.dms-harta-search-panel {
  position: fixed;
  top: 154px;
  left: 300px;
  z-index: 99999;
  width: 360px;
  display: none;
  padding: 12px;
  border-radius: 14px;
  background: rgba(5, 17, 29, 0.98);
  border: 1px solid rgba(80, 150, 255, 0.45);
  box-shadow: 0 20px 55px rgba(0, 0, 0, 0.55);
  color: #eef7ff;
}

body.dms-left-grid-collapsed .dms-harta-search-panel {
  left: 96px;
}

.dms-harta-search-panel.is-open {
  display: block;
}

.dms-harta-search-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}

.dms-harta-search-close {
  width: 28px;
  height: 28px;
  border: 0;
  border-radius: 8px;
  color: #dceeff;
  background: rgba(255,255,255,0.08);
  cursor: pointer;
}

#dmsHartaSearchInput {
  width: 100%;
  height: 38px;
  padding: 0 11px;
  border-radius: 10px;
  border: 1px solid rgba(120, 180, 255, 0.35);
  background: rgba(0, 0, 0, 0.32);
  color: #ffffff;
  outline: none;
}

.dms-harta-search-results {
  margin-top: 10px;
  max-height: 320px;
  overflow: auto;
  font-size: 13px;
  color: rgba(238, 247, 255, 0.76);
}

.dms-harta-search-results button {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 3px;
  padding: 9px 10px;
  margin-bottom: 6px;
  text-align: left;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,0.08);
  background: rgba(255,255,255,0.055);
  color: #ffffff;
  cursor: pointer;
}

.dms-harta-search-results button:hover {
  background: rgba(35, 136, 255, 0.22);
  border-color: rgba(35, 136, 255, 0.55);
}

.dms-harta-search-results small {
  color: rgba(210, 230, 255, 0.62);
}

.dms-search-hit-grid {
  filter: drop-shadow(0 0 10px rgba(35, 136, 255, 0.95));
}

/* === DMS HARTA GRID COLLAPSE CSS END === */

/* === DMS HARTA SEARCH FILTERS REAL CSS START === */

.dms-harta-search-panel,
.dms-harta-filter-panel {
  position: fixed;
  top: 154px;
  z-index: 100000;
  width: 380px;
  display: none;
  padding: 12px;
  border-radius: 14px;
  background: rgba(5, 17, 29, 0.98);
  border: 1px solid rgba(80, 150, 255, 0.45);
  box-shadow: 0 20px 55px rgba(0, 0, 0, 0.55);
  color: #eef7ff;
}

.dms-harta-search-panel {
  left: 300px;
}

.dms-harta-filter-panel {
  left: 330px;
}

body.dms-left-grid-collapsed .dms-harta-search-panel,
body.dms-left-grid-collapsed .dms-harta-filter-panel {
  left: 96px;
}

.dms-harta-search-panel.is-open,
.dms-harta-filter-panel.is-open {
  display: block;
}

.dms-harta-panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}

.dms-harta-panel-close {
  width: 28px;
  height: 28px;
  border: 0;
  border-radius: 8px;
  color: #dceeff;
  background: rgba(255,255,255,0.08);
  cursor: pointer;
}

#dmsHartaSearchInput,
#dmsHartaFilterText {
  width: 100%;
  height: 38px;
  padding: 0 11px;
  border-radius: 10px;
  border: 1px solid rgba(120, 180, 255, 0.35);
  background: rgba(0, 0, 0, 0.32);
  color: #ffffff;
  outline: none;
}

.dms-harta-search-meta,
.dms-harta-filter-note,
.dms-harta-filter-status {
  margin-top: 8px;
  font-size: 12px;
  line-height: 1.45;
  color: rgba(221, 238, 255, 0.72);
}

.dms-harta-search-results {
  margin-top: 10px;
  max-height: 340px;
  overflow: auto;
  font-size: 13px;
  color: rgba(238, 247, 255, 0.76);
}

.dms-harta-search-results button {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 3px;
  padding: 9px 10px;
  margin-bottom: 6px;
  text-align: left;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,0.08);
  background: rgba(255,255,255,0.055);
  color: #ffffff;
  cursor: pointer;
}

.dms-harta-search-results button:hover {
  background: rgba(35, 136, 255, 0.22);
  border-color: rgba(35, 136, 255, 0.55);
}

.dms-harta-search-results small {
  color: rgba(210, 230, 255, 0.62);
}

.dms-harta-filter-row {
  display: flex;
  align-items: center;
  gap: 9px;
  min-height: 32px;
  margin-top: 8px;
  padding: 7px 9px;
  border-radius: 10px;
  background: rgba(255,255,255,0.045);
  border: 1px solid rgba(255,255,255,0.07);
  cursor: pointer;
}

.dms-harta-filter-row input {
  width: 16px;
  height: 16px;
}

.dms-harta-filter-actions {
  display: flex;
  gap: 8px;
  margin-top: 10px;
}

.dms-harta-filter-actions button {
  flex: 1;
  min-height: 34px;
  border-radius: 9px;
  border: 1px solid rgba(80, 150, 255, 0.38);
  background: rgba(35, 136, 255, 0.14);
  color: #eaf5ff;
  cursor: pointer;
  font-weight: 700;
}

.dms-harta-filter-actions button:hover {
  background: rgba(35, 136, 255, 0.28);
}

.dms-grid-panel-attention {
  outline: 2px solid rgba(35, 136, 255, 0.95);
  outline-offset: -2px;
  box-shadow: 0 0 0 5px rgba(35, 136, 255, 0.18);
}

.dms-search-hit-real {
  filter: drop-shadow(0 0 10px rgba(35, 136, 255, 0.95));
}

/* === DMS HARTA SEARCH FILTERS REAL CSS END === */

/* === DMS SEARCH PANEL VISIBILITY FIX START === */

#dmsHartaSearchPanel.dms-harta-search-panel {
  position: fixed !important;
  top: 158px !important;
  left: 300px !important;
  z-index: 2147483000 !important;
  width: 390px !important;
  max-width: calc(100vw - 340px) !important;
  min-height: 130px !important;
  background: rgba(5, 17, 29, 0.99) !important;
  border: 1px solid rgba(80, 150, 255, 0.65) !important;
  box-shadow: 0 22px 65px rgba(0, 0, 0, 0.65) !important;
}

#dmsHartaSearchPanel.dms-harta-search-panel.is-open {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

body.dms-left-grid-collapsed #dmsHartaSearchPanel.dms-harta-search-panel {
  left: 96px !important;
  max-width: calc(100vw - 140px) !important;
}

/* === DMS SEARCH PANEL VISIBILITY FIX END === */

/* === DMS EDITOR MOVE REAL CSS START === */

body.dms-editor-move-mode .dms-map-slot,
body.dms-editor-move-mode #map {
  cursor: move !important;
}

.dms-ribbon .dms-tool.dms-active,
.dms-ribbon .dms-tool.is-active {
  outline: 1px solid rgba(80, 160, 255, 0.95);
  box-shadow: inset 0 0 0 1px rgba(80, 160, 255, 0.55), 0 0 0 2px rgba(35, 136, 255, 0.14);
  background: rgba(35, 136, 255, 0.16);
}

/* === DMS EDITOR MOVE REAL CSS END === */

/* === DMS RIGHT ACTIONS CLEANUP CSS START === */

.dms-right .dms-action-footer,
.dms-right .dms-action-row,
.dms-right .dms-delete,
.dms-right .dms-save {
  display: none !important;
}

.dms-right .dms-actions-clean {
  display: none !important;
}

/* === DMS RIGHT ACTIONS CLEANUP CSS END === */

/* === DMS EDITOR DRAG MOVE DIRECT CSS START === */

body.dms-editor-move-mode .dms-map-slot,
body.dms-editor-move-mode #map {
  cursor: grab !important;
}

body.dms-editor-dragging-move .dms-map-slot,
body.dms-editor-dragging-move #map {
  cursor: grabbing !important;
}

/* === DMS EDITOR DRAG MOVE DIRECT CSS END === */

/* === DMS STRATURI PRO CSS START === */

.dms-layers-pro {
  padding: 16px 12px !important;
  background:
    linear-gradient(180deg, rgba(7, 22, 37, 0.98), rgba(4, 16, 28, 0.98)) !important;
}

.dms-layers-head-pro {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  padding: 0 2px 12px 2px;
  border-bottom: 1px solid rgba(120, 180, 255, 0.14);
  margin-bottom: 10px;
}

.dms-layers-subtitle-pro {
  margin-top: 3px;
  font-size: 11px;
  color: rgba(210, 232, 255, 0.55);
  font-weight: 600;
}

.dms-layers-count-pro {
  min-width: 26px;
  height: 22px;
  display: inline-grid;
  place-items: center;
  border-radius: 999px;
  background: rgba(35, 136, 255, 0.16);
  color: #dceeff;
  border: 1px solid rgba(35, 136, 255, 0.34);
  font-size: 12px;
  font-weight: 800;
}

.dms-layer-tools-pro {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 6px;
  margin-bottom: 10px;
}

.dms-layer-tools-pro button {
  min-height: 28px;
  border-radius: 8px;
  border: 1px solid rgba(120, 180, 255, 0.18);
  background: rgba(255, 255, 255, 0.045);
  color: rgba(235, 247, 255, 0.85);
  cursor: pointer;
  font-size: 11px;
  font-weight: 700;
}

.dms-layer-tools-pro button:hover {
  border-color: rgba(35, 136, 255, 0.65);
  background: rgba(35, 136, 255, 0.16);
}

.dms-layer-list-pro {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.dms-layer-pro {
  display: grid !important;
  grid-template-columns: 30px minmax(0, 1fr) 30px;
  gap: 8px;
  align-items: center;
  min-height: 76px;
  padding: 9px 8px;
  border-radius: 12px;
  border: 1px solid rgba(120, 180, 255, 0.12);
  background: rgba(255, 255, 255, 0.038);
  cursor: pointer;
  transition: border-color 140ms ease, background 140ms ease, transform 140ms ease;
}

.dms-layer-pro:hover {
  border-color: rgba(35, 136, 255, 0.42);
  background: rgba(35, 136, 255, 0.095);
}

.dms-layer-pro.is-selected {
  border-color: rgba(35, 136, 255, 0.75);
  background: rgba(35, 136, 255, 0.15);
  box-shadow: inset 3px 0 0 rgba(35, 136, 255, 0.9);
}

.dms-layer-pro.is-hidden-layer {
  opacity: 0.55;
}

.dms-layer-pro.is-locked-layer .dms-layer-name-pro::after {
  content: "  blocat";
  color: rgba(255, 190, 80, 0.95);
  font-size: 10px;
  text-transform: uppercase;
}

.dms-layer-visible-pro,
.dms-layer-lock-pro {
  width: 28px;
  height: 28px;
  border-radius: 9px;
  border: 1px solid rgba(120, 180, 255, 0.2);
  background: rgba(6, 20, 34, 0.95);
  color: #eaf5ff;
  cursor: pointer;
  display: grid;
  place-items: center;
}

.dms-layer-visible-pro:hover,
.dms-layer-lock-pro:hover {
  border-color: rgba(35, 136, 255, 0.75);
  background: rgba(35, 136, 255, 0.18);
}

.dms-layer-visible-pro .dms-check {
  width: 18px;
  height: 18px;
  display: inline-grid;
  place-items: center;
  border-radius: 6px;
  background: #2388ff;
  color: #ffffff;
  font-size: 12px;
  font-weight: 900;
}

.dms-layer-pro.is-hidden-layer .dms-layer-visible-pro .dms-check {
  background: transparent;
  border: 1px solid rgba(160, 190, 220, 0.35);
}

.dms-layer-main-pro {
  min-width: 0;
}

.dms-layer-name-pro {
  color: #ffffff;
  font-weight: 850;
  font-size: 13px;
  line-height: 1.2;
}

.dms-layer-desc-pro {
  margin-top: 3px;
  color: rgba(210, 232, 255, 0.58);
  font-size: 11px;
  line-height: 1.25;
}

.dms-layer-opacity-pro {
  width: 100%;
  margin-top: 7px;
  accent-color: #2388ff;
}

body.dms-layer-labels-hidden .object-label,
body.dms-layer-labels-hidden .map-object-label,
body.dms-layer-labels-hidden .dms-object-label,
body.dms-layer-labels-hidden .dms-shape-label,
body.dms-layer-labels-hidden text {
  display: none !important;
}

body:not(.dms-layer-labels-hidden) .object-label,
body:not(.dms-layer-labels-hidden) .map-object-label,
body:not(.dms-layer-labels-hidden) .dms-object-label,
body:not(.dms-layer-labels-hidden) .dms-shape-label,
body:not(.dms-layer-labels-hidden) text {
  opacity: var(--dms-label-layer-opacity, 1);
}

body.dms-layer-labels-locked .object-label,
body.dms-layer-labels-locked .map-object-label,
body.dms-layer-labels-locked .dms-object-label,
body.dms-layer-labels-locked .dms-shape-label,
body.dms-layer-labels-locked text {
  pointer-events: none !important;
}

/* === DMS STRATURI PRO CSS END === */

/* === DMS STRATURI OPACITY SLIDER FIX START === */

.dms-layer-opacity-pro {
  position: relative !important;
  z-index: 20 !important;
  pointer-events: auto !important;
  cursor: pointer !important;
}

.dms-layer-main-pro {
  position: relative !important;
  z-index: 10 !important;
}

/* === DMS STRATURI OPACITY SLIDER FIX END === */

/* === DMS STRATURI OPACITY MANUAL DRAG CSS START === */

.dms-layer-opacity-pro {
  display: block !important;
  width: 100% !important;
  height: 22px !important;
  margin-top: 7px !important;
  position: relative !important;
  z-index: 50 !important;
  pointer-events: auto !important;
  cursor: ew-resize !important;
  touch-action: none !important;
}

.dms-layer-opacity-pro::-webkit-slider-thumb {
  cursor: ew-resize !important;
}

.dms-layer-opacity-pro::-moz-range-thumb {
  cursor: ew-resize !important;
}

.dms-layer-main-pro,
.dms-layer-pro {
  touch-action: none !important;
}

/* === DMS STRATURI OPACITY MANUAL DRAG CSS END === */

/* === DMS STRATURI CUSTOM OPACITY CSS START === */

.dms-opacity-control-pro {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 38px;
  align-items: center;
  gap: 8px;
  width: 100% !important;
  min-height: 26px;
  margin-top: 7px !important;
  position: relative !important;
  z-index: 200 !important;
  cursor: ew-resize !important;
  pointer-events: auto !important;
  touch-action: none !important;
  user-select: none !important;
}

.dms-opacity-track-pro {
  position: relative;
  height: 8px;
  border-radius: 999px;
  background: rgba(80, 120, 160, 0.32);
  overflow: visible;
}

.dms-opacity-fill-pro {
  position: absolute;
  inset: 0 auto 0 0;
  width: 100%;
  border-radius: 999px;
  background: #2388ff;
}

.dms-opacity-thumb-pro {
  position: absolute;
  top: 50%;
  left: 100%;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  transform: translate(-50%, -50%);
  background: #52a8ff;
  border: 2px solid #dff0ff;
  box-shadow: 0 4px 12px rgba(0,0,0,0.35);
}

.dms-opacity-control-pro:hover .dms-opacity-thumb-pro,
.dms-opacity-control-pro:focus .dms-opacity-thumb-pro {
  width: 18px;
  height: 18px;
  background: #7cc0ff;
}

.dms-opacity-value-pro {
  color: rgba(225, 242, 255, 0.78);
  font-size: 10px;
  font-weight: 800;
  text-align: right;
}

.dms-layer-main-pro,
.dms-layer-pro {
  touch-action: none !important;
}

/* === DMS STRATURI CUSTOM OPACITY CSS END === */

/* === DMS MASURATORI PRO CSS START === */

.dms-measure-layer-pro {
  position: absolute;
  inset: 0;
  z-index: 9000;
  pointer-events: none;
}

.dms-measure-svg-pro {
  width: 100%;
  height: 100%;
  overflow: visible;
}

.dms-measure-line-pro {
  fill: none;
  stroke: #37d6ff;
  stroke-width: 3;
  stroke-linecap: round;
  stroke-linejoin: round;
  filter: drop-shadow(0 2px 4px rgba(0,0,0,0.75));
}

.dms-measure-calibration-line-pro {
  fill: none;
  stroke: #ffcc3d;
  stroke-width: 4;
  stroke-dasharray: 8 7;
  stroke-linecap: round;
  stroke-linejoin: round;
  filter: drop-shadow(0 2px 4px rgba(0,0,0,0.75));
}

.dms-measure-polygon-pro {
  fill: rgba(55, 214, 255, 0.16);
  stroke: #37d6ff;
  stroke-width: 2;
  stroke-linejoin: round;
  filter: drop-shadow(0 2px 4px rgba(0,0,0,0.55));
}

.dms-measure-point-pro {
  fill: #ffffff;
  stroke: #2388ff;
  stroke-width: 3;
  filter: drop-shadow(0 2px 4px rgba(0,0,0,0.75));
}

.dms-measure-label-pro {
  fill: #ffffff;
  stroke: rgba(0, 0, 0, 0.85);
  stroke-width: 4;
  paint-order: stroke;
  font-size: 13px;
  font-weight: 900;
  filter: drop-shadow(0 2px 4px rgba(0,0,0,0.75));
}

.dms-measure-panel-pro {
  position: fixed;
  right: 390px;
  bottom: 42px;
  width: 330px;
  z-index: 100000;
  display: none;
  border-radius: 14px;
  border: 1px solid rgba(55, 214, 255, 0.42);
  background: rgba(5, 17, 29, 0.96);
  box-shadow: 0 18px 50px rgba(0,0,0,0.55);
  color: #eef8ff;
  overflow: hidden;
}

.dms-measure-panel-pro.is-open {
  display: block;
}

.dms-measure-panel-head-pro {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 10px 12px;
  border-bottom: 1px solid rgba(120, 180, 255, 0.16);
  background: rgba(35, 136, 255, 0.12);
}

.dms-measure-panel-head-pro button {
  width: 26px;
  height: 26px;
  border: 0;
  border-radius: 8px;
  background: rgba(255,255,255,0.08);
  color: #dceeff;
  cursor: pointer;
}

.dms-measure-panel-body-pro {
  padding: 11px 12px;
  font-size: 13px;
  line-height: 1.45;
  color: rgba(232, 246, 255, 0.92);
}

.dms-measure-panel-body-pro small {
  display: block;
  margin-top: 8px;
  color: rgba(210, 232, 255, 0.62);
}

.dms-measure-scale-warn-pro,
.dms-measure-scale-ok-pro {
  margin-top: 9px;
  padding: 8px 9px;
  border-radius: 10px;
  font-size: 12px;
}

.dms-measure-scale-warn-pro {
  border: 1px solid rgba(255, 203, 77, 0.38);
  background: rgba(255, 203, 77, 0.11);
  color: #ffe7a1;
}

.dms-measure-scale-ok-pro {
  border: 1px solid rgba(65, 220, 145, 0.38);
  background: rgba(65, 220, 145, 0.10);
  color: #caffdd;
}

.dms-measure-input-label-pro {
  display: block;
  margin-top: 9px;
  margin-bottom: 5px;
  color: rgba(220, 238, 255, 0.78);
  font-size: 12px;
  font-weight: 800;
}

.dms-measure-input-pro {
  width: 100%;
  height: 34px;
  border-radius: 9px;
  border: 1px solid rgba(120, 180, 255, 0.28);
  background: rgba(2, 10, 18, 0.9);
  color: #ffffff;
  padding: 0 10px;
  outline: none;
}

.dms-measure-input-pro:focus {
  border-color: rgba(35, 136, 255, 0.8);
  box-shadow: 0 0 0 3px rgba(35, 136, 255, 0.18);
}

.dms-measure-primary-pro,
.dms-measure-secondary-pro {
  width: 100%;
  min-height: 34px;
  margin-top: 8px;
  border-radius: 9px;
  cursor: pointer;
  font-weight: 850;
}

.dms-measure-primary-pro {
  border: 1px solid rgba(35, 136, 255, 0.72);
  background: rgba(35, 136, 255, 0.9);
  color: #ffffff;
}

.dms-measure-secondary-pro {
  border: 1px solid rgba(160, 190, 220, 0.24);
  background: rgba(255,255,255,0.06);
  color: rgba(232, 246, 255, 0.9);
}

body.dms-measure-pro-active .dms-map-slot,
body.dms-measure-pro-active #map {
  cursor: crosshair !important;
}

/* === DMS MASURATORI PRO CSS END === */

/* === DMS PLANURI IMPORT CSS START === */

.dms-map-slot {
  position: relative !important;
}

.dms-imported-plan-layer {
  position: absolute;
  inset: 0;
  z-index: 9500;
  display: none;
  background:
    radial-gradient(circle at top left, rgba(35, 136, 255, 0.12), transparent 35%),
    #07111d;
  overflow: hidden;
}

body.dms-plan-import-active .dms-imported-plan-layer {
  display: block;
}

body.dms-plan-import-active #map {
  visibility: hidden !important;
}

body.dms-plan-import-active .object-layer,
body.dms-plan-import-active .dms-shape-layer,
body.dms-plan-import-active .dms-measure-layer-pro {
  display: none !important;
}

.dms-imported-plan-topbar {
  position: absolute;
  left: 14px;
  right: 14px;
  top: 14px;
  z-index: 2;
  min-height: 46px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 9px 10px;
  border-radius: 13px;
  border: 1px solid rgba(120, 180, 255, 0.28);
  background: rgba(5, 17, 29, 0.88);
  color: #eef8ff;
  box-shadow: 0 14px 40px rgba(0,0,0,0.35);
  backdrop-filter: blur(10px);
}

.dms-imported-plan-topbar strong {
  display: block;
  font-size: 13px;
  line-height: 1.2;
}

.dms-imported-plan-topbar span {
  display: block;
  margin-top: 2px;
  color: rgba(210, 232, 255, 0.65);
  font-size: 12px;
}

.dms-imported-plan-topbar button {
  min-height: 32px;
  border: 1px solid rgba(35, 136, 255, 0.55);
  border-radius: 10px;
  padding: 0 12px;
  background: rgba(35, 136, 255, 0.16);
  color: #eaf6ff;
  font-weight: 800;
  cursor: pointer;
}

.dms-imported-plan-topbar button:hover {
  background: rgba(35, 136, 255, 0.26);
  border-color: rgba(35, 136, 255, 0.9);
}

.dms-imported-plan-canvas {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 72px 18px 18px;
}

.dms-imported-plan-canvas img {
  display: none;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  background: #ffffff;
  border: 1px solid rgba(255,255,255,0.22);
  box-shadow: 0 18px 70px rgba(0,0,0,0.55);
}

.dms-imported-plan-canvas iframe {
  display: none;
  width: 100%;
  height: 100%;
  border: 1px solid rgba(255,255,255,0.22);
  border-radius: 6px;
  background: #ffffff;
  box-shadow: 0 18px 70px rgba(0,0,0,0.55);
}

/* === DMS PLANURI IMPORT CSS END === */

/* === DMS PLANURI EXPORT PRINT CSS START === */

@media print {
  body.dms-plan-print-mode {
    background: #ffffff !important;
  }

  body.dms-plan-print-mode .dms-titlebar,
  body.dms-plan-print-mode .dms-ribbon,
  body.dms-plan-print-mode .dms-rail,
  body.dms-plan-print-mode .dms-layers,
  body.dms-plan-print-mode .dms-right,
  body.dms-plan-print-mode .dms-statusbar,
  body.dms-plan-print-mode .dms-ai-fab,
  body.dms-plan-print-mode .dms-imported-plan-topbar {
    display: none !important;
  }

  body.dms-plan-print-mode .dms-workspace {
    display: block !important;
    position: fixed !important;
    inset: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    background: #ffffff !important;
  }

  body.dms-plan-print-mode .dms-map-slot {
    position: fixed !important;
    inset: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    background: #ffffff !important;
  }

  body.dms-plan-print-mode #map {
    width: 100vw !important;
    height: 100vh !important;
  }

  body.dms-plan-print-mode .dms-imported-plan-layer {
    display: block !important;
    position: fixed !important;
    inset: 0 !important;
    background: #ffffff !important;
  }

  body.dms-plan-print-mode .dms-imported-plan-canvas {
    padding: 0 !important;
    inset: 0 !important;
  }

  body.dms-plan-print-mode .dms-imported-plan-canvas img,
  body.dms-plan-print-mode .dms-imported-plan-canvas iframe {
    display: block !important;
    width: 100vw !important;
    height: 100vh !important;
    max-width: 100vw !important;
    max-height: 100vh !important;
    border: 0 !important;
    box-shadow: none !important;
  }
}

/* === DMS PLANURI EXPORT PRINT CSS END === */

/* === DMS LEFT RAIL ACTIONS CSS START === */

.dms-rail button {
  position: relative;
}

.dms-rail button[data-dms-rail-action] {
  cursor: pointer;
  transition:
    background .16s ease,
    border-color .16s ease,
    color .16s ease,
    transform .16s ease;
}

.dms-rail button[data-dms-rail-action]:hover {
  background: rgba(35, 136, 255, 0.18);
  color: #ffffff;
  transform: translateX(1px);
}

.dms-rail button[data-dms-rail-action].is-active {
  background: rgba(35, 136, 255, 0.28);
  color: #ffffff;
  box-shadow: inset 3px 0 0 #2388ff;
}

.dms-rail button[data-dms-rail-action]::after {
  content: attr(title);
  position: absolute;
  left: calc(100% + 8px);
  top: 50%;
  transform: translateY(-50%);
  z-index: 100000;
  pointer-events: none;
  opacity: 0;
  white-space: nowrap;
  padding: 6px 8px;
  border-radius: 8px;
  border: 1px solid rgba(120, 180, 255, 0.28);
  background: rgba(5, 17, 29, 0.96);
  color: #eaf6ff;
  font-size: 11px;
  font-weight: 800;
  box-shadow: 0 10px 28px rgba(0,0,0,0.35);
}

.dms-rail button[data-dms-rail-action]:hover::after {
  opacity: 1;
}

.dms-grid-panel-attention {
  box-shadow:
    inset 0 0 0 1px rgba(35, 136, 255, 0.8),
    0 0 0 3px rgba(35, 136, 255, 0.18) !important;
}

/* === DMS LEFT RAIL ACTIONS CSS END === */

/* === DMS ADMIN MENU ACTIONS CSS START === */

body[data-dms-menu="ADMINISTRARE"] .dms-ribbon .dms-group[data-dms-group="ADMINISTRARE"] .dms-tool {
  min-width: 72px;
}

body[data-dms-menu="ADMINISTRARE"] .dms-ribbon .dms-group[data-dms-group="ADMINISTRARE"] .dms-tool:hover {
  background: rgba(35, 136, 255, 0.18);
  border-color: rgba(35, 136, 255, 0.65);
}

body[data-dms-menu="ADMINISTRARE"] .dms-ribbon .dms-group[data-dms-group="ADMINISTRARE"] .dms-tool .ico {
  filter: drop-shadow(0 3px 8px rgba(0,0,0,0.32));
}

/* === DMS ADMIN MENU ACTIONS CSS END === */

/* === DMS AI FREE CHAT CLOSE CSS START === */

.dms-ai-free-chat-host,
.dms-ai-chat {
  position: fixed !important;
}

.dms-ai-close-real {
  position: absolute !important;
  top: 8px !important;
  right: 8px !important;
  z-index: 999999 !important;
  width: 30px !important;
  height: 30px !important;
  border-radius: 10px !important;
  border: 1px solid rgba(100, 170, 255, 0.45) !important;
  background: rgba(11, 31, 58, 0.98) !important;
  color: #d9ecff !important;
  font-size: 20px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  box-shadow: 0 8px 24px rgba(0,0,0,0.45) !important;
  opacity: 1 !important;
}

.dms-ai-close-real:hover {
  background: #1d63ad !important;
  color: #ffffff !important;
  border-color: #5aa7ff !important;
  transform: translateY(-1px);
}

.dms-ai-chat-closed {
  display: none !important;
  opacity: 0 !important;
  pointer-events: none !important;
  visibility: hidden !important;
}

/* === DMS AI FREE CHAT CLOSE CSS END === */

/* === DMS AI INSTANT GREETING CSS START === */

.dms-ai-instant-messages {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 8px 10px 10px;
}

.dms-ai-instant-user {
  align-self: flex-end;
  max-width: 82%;
  padding: 8px 10px;
  border-radius: 10px;
  background: rgba(35, 136, 255, 0.34);
  color: #ffffff;
  font-size: 13px;
  line-height: 1.35;
}

.dms-ai-instant-assistant {
  align-self: flex-start;
  max-width: 88%;
  padding: 8px 10px;
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(120, 180, 255, 0.14);
  color: #eef7ff;
  font-size: 13px;
  line-height: 1.35;
}

/* === DMS AI INSTANT GREETING CSS END === */

/* === DMS OBJECT ICONS EDIT POLYGON CSS START === */

.map-object-marker svg,
.legend-swatch svg {
  width: 22px !important;
  height: 22px !important;
  display: block !important;
  overflow: visible !important;
  color: #ffffff !important;
  stroke: currentColor !important;
  fill: none !important;
  stroke-width: 1.9 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
  pointer-events: none !important;
}

.map-object-marker svg path,
.map-object-marker svg rect,
.map-object-marker svg circle,
.map-object-marker svg ellipse,
.map-object-marker svg line,
.map-object-marker svg polyline,
.map-object-marker svg polygon,
.legend-swatch svg path,
.legend-swatch svg rect,
.legend-swatch svg circle,
.legend-swatch svg ellipse,
.legend-swatch svg line,
.legend-swatch svg polyline,
.legend-swatch svg polygon {
  vector-effect: non-scaling-stroke !important;
}

.map-object-marker[data-object-type="camera_surveillance"] {
  box-shadow: 0 0 0 2px rgba(255,255,255,.24), 0 8px 22px rgba(35,136,255,.28) !important;
}

.map-object-marker[data-object-type="rack"],
.map-object-marker[data-object-type="server"],
.map-object-marker[data-object-type="core_switch"],
.map-object-marker[data-object-type="switch"] {
  box-shadow: 0 0 0 2px rgba(255,255,255,.22), 0 8px 22px rgba(32,214,255,.24) !important;
}

.dms-edit-disabled {
  opacity: .62 !important;
  cursor: not-allowed !important;
}

.dms-polygon-finish-box {
  position: fixed !important;
  left: 50% !important;
  bottom: 28px !important;
  transform: translateX(-50%) translateY(20px) !important;
  width: min(460px, calc(100vw - 32px)) !important;
  z-index: 99999 !important;
  border: 1px solid rgba(63, 154, 255, .42) !important;
  border-radius: 18px !important;
  background: rgba(5, 17, 30, .94) !important;
  box-shadow: 0 22px 60px rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.06) !important;
  color: #eaf6ff !important;
  padding: 14px !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transition: opacity .18s ease, transform .18s ease !important;
  backdrop-filter: blur(16px) !important;
}

.dms-polygon-finish-box.is-visible {
  opacity: 1 !important;
  pointer-events: auto !important;
  transform: translateX(-50%) translateY(0) !important;
}

.dms-polygon-finish-title {
  font-weight: 900 !important;
  font-size: 15px !important;
  margin-bottom: 4px !important;
}

.dms-polygon-finish-subtitle {
  color: #9fc8ee !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
  margin-bottom: 12px !important;
}

.dms-polygon-finish-actions {
  display: flex !important;
  gap: 10px !important;
}

.dms-polygon-finish-actions button {
  border: 1px solid rgba(96, 172, 255, .34) !important;
  background: linear-gradient(180deg, #2388ff, #0f63cf) !important;
  color: white !important;
  border-radius: 12px !important;
  padding: 10px 14px !important;
  font-weight: 800 !important;
  cursor: pointer !important;
  flex: 1 !important;
}

.dms-polygon-finish-actions button:last-child {
  background: rgba(255,255,255,.06) !important;
  color: #d8ecff !important;
}

@media (max-width: 768px) {
  .dms-polygon-finish-box {
    bottom: 112px !important;
    width: calc(100vw - 28px) !important;
  }

  .map-object-marker svg {
    width: 24px !important;
    height: 24px !important;
  }
}

/* === DMS OBJECT ICONS EDIT POLYGON CSS END === */

/* === DMS EDIT OBJECT BUTTON CSS START === */

.dms-edit-object-tool .ico {
  font-weight: 950 !important;
}

.dms-edit-object-tool-active,
.dms-tool.dms-edit-object-tool-active {
  border-color: rgba(45, 160, 255, .75) !important;
  background: linear-gradient(180deg, rgba(40, 145, 255, .30), rgba(20, 70, 130, .25)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.12),
    0 0 0 1px rgba(60, 160, 255, .35),
    0 10px 28px rgba(35, 136, 255, .20) !important;
}

body.dms-object-edit-mode .dms-right {
  border-left-color: rgba(50, 155, 255, .45) !important;
}

.dms-edit-object-attention {
  animation: dmsEditObjectPulse 1.35s ease both !important;
}

@keyframes dmsEditObjectPulse {
  0% {
    box-shadow: inset 0 0 0 0 rgba(35, 136, 255, 0), 0 0 0 rgba(35, 136, 255, 0);
  }
  25% {
    box-shadow: inset 0 0 0 2px rgba(35, 136, 255, .55), 0 0 36px rgba(35, 136, 255, .22);
  }
  100% {
    box-shadow: inset 0 0 0 0 rgba(35, 136, 255, 0), 0 0 0 rgba(35, 136, 255, 0);
  }
}

/* === DMS EDIT OBJECT BUTTON CSS END === */

/* AVAX DMS - Shape editor panel clean V2 */
#dmsShapeEditorPanel{
  display:none;
  margin-top:14px;
  padding:14px;
  border:1px solid rgba(35,136,255,.48);
  border-radius:14px;
  background:rgba(35,136,255,.10);
}

#dmsShapeEditorPanel .dms-shape-editor-title{
  color:#ffffff;
  font-size:14px;
  font-weight:900;
  margin-bottom:8px;
}

#dmsShapeEditorPanel .dms-shape-editor-help{
  color:#b9c7dd;
  font-size:12px;
  line-height:1.45;
  margin-bottom:10px;
}

#dmsShapeEditorPanel .dms-shape-editor-label{
  display:block;
  color:#dbeafe;
  font-size:12px;
  font-weight:900;
  margin:8px 0 5px;
}

#dmsShapeEditorPanel .dms-shape-editor-input{
  width:100%;
  box-sizing:border-box;
  height:38px;
  border-radius:10px;
  border:1px solid rgba(35,136,255,.45);
  background:rgba(255,255,255,.08);
  color:#fff;
  padding:0 10px;
  outline:none;
  font-weight:800;
}

#dmsShapeEditorPanel .dms-shape-editor-input::placeholder{
  color:rgba(220,235,255,.62);
}

#dmsShapeEditorPanel .dms-shape-editor-input:focus{
  border-color:#2388ff;
  box-shadow:0 0 0 3px rgba(35,136,255,.18);
}

#dmsShapeEditorPanel button{
  width:100%;
  height:38px;
  border:0;
  border-radius:10px;
  margin-top:8px;
  cursor:pointer;
  color:#fff;
  font-weight:900;
}

#dmsShapeFinishBtn{
  background:#2388ff;
}

#dmsShapeCancelBtn{
  background:rgba(255,255,255,.14);
}

#dmsShapeFinishBtn:disabled{
  opacity:.45;
  cursor:not-allowed;
}


/* === DMS EDITOR V2 CLEAN === */
.dms-editor-v2-box{
  margin-top:14px;
  padding:14px;
  border:1px solid rgba(35,136,255,.55);
  border-radius:14px;
  background:rgba(8,31,57,.88);
  box-shadow:0 10px 25px rgba(0,0,0,.24);
}
.dms-editor-v2-title{
  font-weight:900;
  color:#fff;
  margin-bottom:8px;
}
.dms-editor-v2-help{
  color:#b9d8ff;
  font-size:12px;
  line-height:1.35;
  margin-bottom:8px;
}
.dms-editor-v2-count{
  color:#ffffff;
  font-size:12px;
  margin-bottom:10px;
}
.dms-editor-v2-finish,
.dms-editor-v2-cancel{
  width:100%;
  border:0;
  border-radius:10px;
  padding:10px 12px;
  font-weight:900;
  margin-top:8px;
  cursor:pointer;
}
.dms-editor-v2-finish{
  background:#2388ff;
  color:#fff;
}
.dms-editor-v2-finish:disabled{
  opacity:.45;
  cursor:not-allowed;
}
.dms-editor-v2-cancel{
  background:#34465b;
  color:#fff;
}
.dms-editor-v2-draft-layer,
.dms-shape-layer-v2{
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:25;
}
.dms-shape-layer-v2{
  pointer-events:auto;
  z-index:20;
}
.dms-editor-v2-draft-svg,
.dms-shape-svg{
  width:100%;
  height:100%;
  overflow:visible;
}
.dms-shape-clickable{
  cursor:pointer;
  pointer-events:auto;
}

/* === DMS EDITOR V2 AUTO HINT === */
.dms-editor-v2-simple-hint{
  margin-top:14px;
  padding:13px 14px;
  border:1px solid rgba(35,136,255,.55);
  border-radius:14px;
  background:rgba(8,31,57,.88);
  box-shadow:0 10px 25px rgba(0,0,0,.24);
  color:#d9ecff;
  font-size:12px;
}
.dms-editor-v2-simple-hint b{
  display:block;
  color:#ffffff;
  font-size:14px;
  margin-bottom:6px;
}
.dms-editor-v2-simple-hint span{
  display:block;
  line-height:1.35;
  color:#b9d8ff;
}
.dms-editor-v2-simple-hint small{
  display:block;
  margin-top:7px;
  color:#7fb8ff;
}

/* === DMS EDITOR CORE V3 === */
.dms-editor-core-layer{
  position:absolute;
  inset:0;
  z-index:80;
  pointer-events:none;
}
.dms-editor-core-svg{
  width:100%;
  height:100%;
  overflow:visible;
  pointer-events:none;
}
.dms-editor-core-clickable{
  pointer-events:auto;
  cursor:pointer;
}
.dms-editor-core-label{
  font-size:13px;
  font-weight:800;
  fill:#ffffff;
  paint-order:stroke;
  stroke:#07111f;
  stroke-width:4px;
  pointer-events:auto;
  cursor:pointer;
}
.dms-editor-core-info{
  margin-top:14px;
  padding:13px 14px;
  border:1px solid rgba(35,136,255,.55);
  border-radius:14px;
  background:rgba(8,31,57,.92);
  box-shadow:0 10px 25px rgba(0,0,0,.28);
  color:#d9ecff;
  font-size:12px;
}
.dms-editor-core-info b{
  display:block;
  color:#ffffff;
  font-size:14px;
  margin-bottom:6px;
}
.dms-editor-core-info span{
  display:block;
  color:#b9d8ff;
  line-height:1.35;
}
.dms-editor-core-info small{
  display:block;
  margin-top:7px;
  color:#7fb8ff;
}

/* === DMS EDITOR CLEAN RESET === */
.dms-editor-layer{
  position:absolute;
  inset:0;
  z-index:90;
  pointer-events:none;
}
.dms-editor-svg{
  width:100%;
  height:100%;
  overflow:visible;
  pointer-events:none;
}
.dms-editor-clickable{
  pointer-events:auto;
  cursor:pointer;
}
.dms-editor-label{
  font-size:13px;
  font-weight:900;
  fill:#ffffff;
  paint-order:stroke;
  stroke:#07111f;
  stroke-width:4px;
  pointer-events:auto;
  cursor:pointer;
}
.dms-editor-clean-info{
  margin-top:14px;
  padding:13px 14px;
  border:1px solid rgba(35,136,255,.55);
  border-radius:14px;
  background:rgba(8,31,57,.94);
  box-shadow:0 10px 25px rgba(0,0,0,.28);
  color:#d9ecff;
  font-size:12px;
}
.dms-editor-clean-info b{
  display:block;
  color:#ffffff;
  font-size:14px;
  margin-bottom:6px;
}
.dms-editor-clean-info span{
  display:block;
  color:#b9d8ff;
  line-height:1.35;
}
.dms-editor-clean-info small{
  display:block;
  margin-top:7px;
  color:#7fb8ff;
}
