.nm-overlay {
  position: fixed;
  inset: 0;
  z-index: 2147483000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  background: rgba(32, 24, 19, .56);
  backdrop-filter: blur(7px);
  -webkit-backdrop-filter: blur(7px);
}
.nm-dialog {
  box-sizing: border-box;
  width: min(100%, 460px);
  max-height: 90vh;
  overflow: auto;
  direction: rtl;
  background: #fffaf3;
  color: #402e25;
  border: 1px solid #d9c5a9;
  border-radius: 22px;
  box-shadow: 0 24px 75px rgba(0,0,0,.24);
  padding: 28px;
  font-family: inherit;
}
.nm-icon {
  width: 52px;
  height: 52px;
  border-radius: 16px;
  display: grid;
  place-items: center;
  font-size: 25px;
  background: #f0e4d1;
  margin-bottom: 16px;
}
.nm-title {
  margin: 0 0 10px;
  font-size: 21px;
  font-weight: 800;
}
.nm-message {
  white-space: pre-line;
  line-height: 1.9;
  font-size: 15px;
  margin: 0;
}
.nm-actions {
  display: flex;
  gap: 10px;
  margin-top: 24px;
}
.nm-btn {
  flex: 1;
  min-height: 44px;
  border-radius: 12px;
  border: 1px solid #b99b77;
  cursor: pointer;
  font: inherit;
  font-weight: 700;
}
.nm-primary {
  background: #624734;
  color: white;
}
.nm-secondary {
  background: transparent;
  color: #624734;
}
.nm-btn:focus-visible {
  outline: 3px solid #b98c47;
  outline-offset: 2px;
}
@media (max-width: 480px) {
  .nm-dialog { padding: 20px; }
  .nm-actions { flex-direction: column; }
}
@media (prefers-color-scheme: dark) {
  .nm-dialog {
    background: #29231e;
    color: #f5e9da;
    border-color: #665444;
  }
  .nm-secondary { color: #f5e9da; }
}

/* NUSUK MODAL GALLERY STYLE V2 */
.nm-dialog {
  width:min(100%,490px);
  max-height:min(90vh,700px);
  padding:34px;
  background:#fffefa;
  border:1px solid #e7d9ca;
  border-radius:22px;
  text-align:center;
  box-shadow:0 25px 90px #180e0752;
  font-family:Fanan,Tahoma,Arial,sans-serif;
}
.nm-icon {
  width:78px;
  height:78px;
  margin:0 auto 20px;
  border-radius:22px;
  font-size:40px;
  background:#f3e8da;
  color:#654b37;
}
.nm-title {
  font-size:25px;
  line-height:1.55;
  margin:0 0 12px;
  color:#392c23;
}
.nm-message {
  font-size:17px;
  line-height:2.05;
  color:#66564a;
  margin:0 auto;
  max-width:410px;
}
.nm-actions {
  margin-top:23px;
}
.nm-btn {
  min-height:47px;
  font-size:16px;
  border-radius:11px;
}
@media(max-width:540px){
  .nm-dialog {padding:28px 20px 24px}
  .nm-title {font-size:22px}
  .nm-message {font-size:16px}
}

/* NUSUK MODAL CENTER FIX V3 */
.nm-overlay .nm-dialog {
  text-align:center!important;
  font-family:Fanan,Tahoma,Arial,sans-serif!important;
}
.nm-overlay .nm-icon {
  display:grid!important;
  place-items:center!important;
  width:78px!important;
  height:78px!important;
  margin:0 auto 20px!important;
  font-size:42px!important;
  font-weight:800!important;
  line-height:1!important;
  text-align:center!important;
}
.nm-overlay .nm-title {
  display:block!important;
  width:100%!important;
  text-align:center!important;
  font-size:25px!important;
  line-height:1.55!important;
}
.nm-overlay .nm-message {
  display:block!important;
  width:100%!important;
  text-align:center!important;
  font-size:17px!important;
  line-height:2!important;
}
.nm-overlay .nm-actions {
  justify-content:center!important;
}

/* NUSUK MODAL TYPES V4 */
.nm-dialog:has(.nm-icon) {
  position:relative;
  border-top:5px solid #654b37;
}
.nm-dialog:has(.nm-icon) .nm-icon {
  box-shadow:0 0 0 8px #f6f0e9;
}
.nm-overlay .nm-primary {
  background:#654b37;
  color:#fff;
  border-color:#654b37;
}
.nm-overlay .nm-secondary {
  background:#f2ece4;
  color:#654b37;
}
.nm-overlay .nm-dialog {
  animation:nmAppear .2s ease both;
}
@keyframes nmAppear {
  from {opacity:.4;transform:translateY(12px)}
  to {opacity:1;transform:translateY(0)}
}

/* NUSUK MODAL SEMANTIC TYPES V5 */
.nm-overlay .nm-type-success {
  border-top-color:#25805c;
}
.nm-overlay .nm-type-success .nm-icon {
  background:#e2f5eb;
  color:#25805c;
}
.nm-overlay .nm-type-error {
  border-top-color:#bd4545;
}
.nm-overlay .nm-type-error .nm-icon {
  background:#fbe7e7;
  color:#bd4545;
}
.nm-overlay .nm-type-warning {
  border-top-color:#c58b28;
}
.nm-overlay .nm-type-warning .nm-icon {
  background:#fff0ce;
  color:#a36d12;
}
.nm-overlay .nm-type-info {
  border-top-color:#557a9d;
}
.nm-overlay .nm-type-info .nm-icon {
  background:#e6f0f8;
  color:#557a9d;
}

/* NUSUK CUSTOM DIALOGS V8 */
.nm-overlay .nm-prompt-input {
  display:block;
  width:100%;
  box-sizing:border-box;
  margin:20px 0;
  padding:13px 16px;
  border:1px solid #d8c8b7;
  border-radius:13px;
  background:#fffefa;
  color:#4e342e;
  font:inherit;
  text-align:right;
  direction:rtl;
}
.nm-overlay .nm-prompt-input:focus {
  outline:2px solid #9a795c;
  outline-offset:2px;
}
dialog[open] {
  max-width:min(94vw, 850px);
  max-height:90vh;
  overflow:auto;
  border-radius:22px;
  border:1px solid #e3d8cb;
  box-shadow:0 24px 80px rgba(45,30,20,.20);
}
dialog::backdrop {
  background:rgba(30,24,20,.55);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
}

/* NUSUK PROMPT BUTTON FIX V10 */
.nm-overlay .nm-dialog:has(.nm-prompt-input) .nm-actions {
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  gap:12px!important;
  width:100%!important;
  margin-top:22px!important;
}
.nm-overlay .nm-dialog:has(.nm-prompt-input) .nm-actions button {
  appearance:none!important;
  flex:1 1 0!important;
  min-height:52px!important;
  padding:12px 20px!important;
  border-radius:13px!important;
  font-family:Fanan,Tahoma,Arial,sans-serif!important;
  font-size:17px!important;
  font-weight:700!important;
  cursor:pointer!important;
}
.nm-overlay .nm-dialog:has(.nm-prompt-input) .nm-primary {
  background:#654b37!important;
  color:#fff!important;
  border:1px solid #654b37!important;
}
.nm-overlay .nm-dialog:has(.nm-prompt-input) .nm-secondary {
  background:#f2ece4!important;
  color:#654b37!important;
  border:1px solid #dfd1c2!important;
}
