:root{
  --mtp-notification-banner-height:0px;
  --mtp-live-banner-height:var(--mtp-notification-banner-height);
  --mtp-toast-top:calc(var(--mtp-public-nav-height,72px) + var(--mtp-network-offset,0px) + var(--mtp-notification-banner-height,0px) + 16px);
  --mtp-toast-z:1100000;
  --mtp-green:#087247;
  --mtp-green-dark:#05291f;
  --mtp-black:#101513;
  --mtp-grey:#5f6f67;
  --mtp-line:#dce8e1;
  --mtp-red:#c93434;
  --mtp-yellow:#f5bd27;
  --mtp-blue:#1f6fb2;
  --mtp-notification-red:#c31321;
  --mtp-notification-amber:#b45309;
  --mtp-notification-green:#064d2f;
  --mtp-notification-success:#087247;
}

.toast-container,
.mtv-toast-region{
  position:fixed;
  top:var(--mtp-toast-top);
  right:max(18px,env(safe-area-inset-right));
  z-index:var(--mtp-toast-z);
  width:min(420px,calc(100vw - 36px));
  display:grid;
  gap:12px;
  pointer-events:none;
  font-family:inherit;
}

.toast,
.mtv-toast{
  --toast-accent:var(--mtp-green);
  --toast-soft:#ecfdf5;
  position:relative;
  display:grid;
  grid-template-columns:42px minmax(0,1fr) 32px;
  gap:12px;
  align-items:start;
  min-height:74px;
  padding:14px 13px 13px 14px;
  overflow:hidden;
  border:1px solid rgba(8,114,71,.16);
  border-left:5px solid var(--toast-accent);
  border-radius:18px;
  background:#fff;
  color:var(--mtp-black);
  box-shadow:0 22px 46px rgba(6,44,32,.18),0 4px 12px rgba(15,23,42,.08);
  opacity:0;
  transform:translate3d(18px,-6px,0) scale(.985);
  transition:opacity .2s ease,transform .2s ease,box-shadow .2s ease;
  pointer-events:auto;
}

.toast.is-visible,
.mtv-toast.is-visible{
  opacity:1;
  transform:translate3d(0,0,0) scale(1);
}

.toast.is-hiding,
.mtv-toast.is-hiding{
  opacity:0;
  transform:translate3d(18px,-6px,0) scale(.985);
}

.toast:hover,
.mtv-toast:hover,
.toast:focus-within,
.mtv-toast:focus-within{
  box-shadow:0 26px 56px rgba(6,44,32,.22),0 5px 14px rgba(15,23,42,.1);
}

.toast-icon,
.mtv-toast-icon{
  width:42px;
  height:42px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:var(--toast-soft);
  color:var(--toast-accent);
  font-size:17px;
  font-weight:950;
  line-height:1;
  box-shadow:inset 0 0 0 1px rgba(8,114,71,.08);
}

.toast-content,
.mtv-toast-content{
  min-width:0;
  display:grid;
  gap:6px;
}

.toast-heading{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:10px;
}

.toast-title,
.mtv-toast-title{
  display:block;
  margin:0;
  color:#082c20;
  font-size:14px;
  font-weight:900;
  line-height:1.2;
  letter-spacing:-.01em;
}

.toast-time{
  color:#78887f;
  font-size:10px;
  font-weight:800;
  white-space:nowrap;
}

.toast-message,
.mtv-toast-message{
  margin:0;
  color:#46564f;
  font-size:12.5px;
  font-weight:600;
  line-height:1.5;
  overflow-wrap:anywhere;
}

.toast-close,
.mtv-toast-close{
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border:1px solid transparent;
  border-radius:999px;
  background:transparent;
  color:#5d6b64;
  font:900 21px/1 Arial,sans-serif;
  cursor:pointer;
}

.toast-close:hover,
.mtv-toast-close:hover,
.toast-close:focus-visible,
.mtv-toast-close:focus-visible{
  border-color:#d5e2dc;
  background:#f5faf7;
  color:#082c20;
  outline:none;
}

.toast-action,
.mtv-toast-action{
  width:max-content;
  max-width:100%;
  margin-top:2px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:32px;
  padding:0 12px;
  border:1px solid rgba(8,114,71,.24);
  border-radius:999px;
  background:#f7fffb;
  color:#06633f;
  font:inherit;
  font-size:11px;
  font-weight:900;
  text-decoration:none;
  cursor:pointer;
}

.toast-action:hover,
.mtv-toast-action:hover,
.toast-action:focus-visible,
.mtv-toast-action:focus-visible{
  background:#087247;
  color:#fff;
  outline:none;
}

.toast-progress,
.mtv-toast-progress{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:3px;
  background:rgba(8,114,71,.08);
  overflow:hidden;
}

.toast-progress::before,
.mtv-toast-progress::before{
  content:"";
  display:block;
  width:100%;
  height:100%;
  background:var(--toast-accent);
  transform-origin:left center;
  animation:mtp-toast-progress var(--toast-duration,5000ms) linear forwards;
}

.toast.is-paused .toast-progress::before,
.mtv-toast.is-paused .mtv-toast-progress::before{
  animation-play-state:paused;
}

.toast-success,.mtv-toast-success{--toast-accent:#087247;--toast-soft:#eafaf2}
.toast-error,.mtv-toast-error{--toast-accent:#c93434;--toast-soft:#fff1f1}
.toast-warning,.mtv-toast-warning{--toast-accent:#c27a04;--toast-soft:#fff8db}
.toast-info,.mtv-toast-info{--toast-accent:#1f6fb2;--toast-soft:#edf6ff}
.toast-pending,.mtv-toast-pending{--toast-accent:#7a5a00;--toast-soft:#fff8db}
.toast-loading,.mtv-toast-loading{--toast-accent:#59665f;--toast-soft:#f1f5f3}
.toast-system,.mtv-toast-system{--toast-accent:#111827;--toast-soft:#f3f4f6}
.toast-announcement,.mtv-toast-announcement{--toast-accent:#087247;--toast-soft:#eafaf2}
.toast-maintenance,.mtv-toast-maintenance{--toast-accent:#a64b0a;--toast-soft:#fff4e8}
.toast-network,.mtv-toast-network{--toast-accent:#1f6fb2;--toast-soft:#edf6ff}
.toast-payment,.mtv-toast-payment{--toast-accent:#06633f;--toast-soft:#ebfff5}
.toast-compliance,.mtv-toast-compliance{--toast-accent:#0f766e;--toast-soft:#e9fbf8}

.mtv-toast-spinner{
  position:relative;
  border:2px solid rgba(89,102,95,.2);
  border-top-color:var(--toast-accent);
  font-size:0;
  animation:mtp-toast-spin .85s linear infinite;
}

.mtp-notification-banner-slot{
  position:sticky;
  top:0;
  z-index:5600;
  width:100%;
  max-width:100vw;
  min-width:0;
  margin:0;
  overflow:hidden;
  background:var(--mtp-notification-red);
  color:#fff;
  isolation:isolate;
}

.mtp-notification-banner-slot:empty,
.mtp-notification-banner-slot[hidden],
.dashboard-announcement-slot[data-dashboard-announcements],
.mtp-live-banner-slot{
  display:none!important;
}

.mtp-notification-banner{
  width:100%;
  height:26px;
  min-height:24px;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:var(--mtp-notification-red);
  color:#fff;
  font-family:inherit;
  font-size:12.5px;
  font-weight:700;
  line-height:1;
  letter-spacing:0;
  white-space:nowrap;
}

.mtp-notification-banner[data-tone=warning]{background:var(--mtp-notification-amber)}
.mtp-notification-banner[data-tone=information]{background:var(--mtp-notification-green)}
.mtp-notification-banner[data-tone=success]{background:var(--mtp-notification-success)}
.mtp-notification-banner[data-tone=critical]{background:var(--mtp-notification-red)}

.mtp-notification-banner__viewport{
  width:100%;
  min-width:0;
  overflow:hidden;
}

.mtp-notification-banner__track{
  display:flex;
  width:max-content;
  min-width:100%;
  transform:translate3d(0,0,0);
  will-change:transform;
  animation:mtpNotificationTicker var(--mtp-notification-duration,48s) linear infinite;
}

.mtp-notification-banner:hover .mtp-notification-banner__track,
.mtp-notification-banner:focus-within .mtp-notification-banner__track{
  animation-play-state:paused;
}

.mtp-notification-banner__group{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  gap:24px;
  padding-right:24px;
}

.mtp-notification-banner__item{
  display:inline-flex;
  align-items:center;
  gap:9px;
  max-width:none;
}

.mtp-notification-banner__item::after{
  content:"";
  width:4px;
  height:4px;
  flex:0 0 4px;
  border-radius:50%;
  background:currentColor;
  opacity:.9;
}

.mtp-notification-banner__text{
  display:inline-block;
  color:inherit;
}

.mtp-notification-banner__link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:22px;
  padding:0 8px;
  border:1px solid rgba(255,255,255,.55);
  border-radius:3px;
  background:rgba(255,255,255,.12);
  color:#fff;
  font:inherit;
  font-size:11px;
  font-weight:800;
  line-height:1;
  text-decoration:none;
  white-space:nowrap;
}

.mtp-notification-banner__link:hover,
.mtp-notification-banner__link:focus-visible{
  background:#fff;
  color:#8f111d;
  outline:2px solid rgba(255,255,255,.75);
  outline-offset:1px;
}

@keyframes mtpNotificationTicker{
  to{transform:translate3d(calc(var(--mtp-notification-distance,50%) * -1),0,0)}
}

@keyframes mtp-toast-spin{to{transform:rotate(360deg)}}
@keyframes mtp-toast-progress{from{transform:scaleX(1)}to{transform:scaleX(0)}}

@media(max-width:700px){
  .toast-container,
  .mtv-toast-region{
    top:calc(var(--mtp-public-nav-height,64px) + var(--mtp-network-offset,0px) + var(--mtp-notification-banner-height,0px) + 10px);
    left:max(12px,env(safe-area-inset-left));
    right:max(12px,env(safe-area-inset-right));
    width:auto;
  }

  .toast,
  .mtv-toast{
    grid-template-columns:36px minmax(0,1fr) 30px;
    gap:10px;
    min-height:66px;
    padding:12px 11px 12px 12px;
    border-radius:15px;
    transform:translate3d(0,-10px,0) scale(.985);
  }

  .toast.is-hiding,
  .mtv-toast.is-hiding{
    transform:translate3d(0,-10px,0) scale(.985);
  }

  .toast-icon,
  .mtv-toast-icon{
    width:36px;
    height:36px;
    font-size:15px;
  }

  .toast-title,
  .mtv-toast-title{font-size:13px}
  .toast-message,
  .mtv-toast-message{font-size:12px}
  .toast-time{display:none}

  .mtp-notification-banner{
    height:28px;
    min-height:26px;
    font-size:11.5px;
  }

  .mtp-notification-banner__group{
    gap:18px;
    padding-right:18px;
  }

  .mtp-notification-banner__item{
    gap:7px;
  }

  .mtp-notification-banner__link{
    min-height:22px;
    padding:0 7px;
    font-size:10.5px;
  }
}

@media(prefers-reduced-motion:reduce){
  .toast,
  .mtv-toast,
  .toast-progress::before,
  .mtv-toast-progress::before,
  .mtv-toast-spinner{
    animation:none!important;
    transition:none!important;
  }

  .mtp-notification-banner__viewport{
    overflow-x:auto;
    scrollbar-width:none;
  }

  .mtp-notification-banner__viewport::-webkit-scrollbar{
    display:none;
  }

  .mtp-notification-banner__track{
    animation:none!important;
    transform:none!important;
    will-change:auto;
  }

  .mtp-notification-banner__group[data-ticker-group="clone"]{
    display:none;
  }
}

@media(forced-colors:active){
  .toast,
  .mtv-toast,
  .mtp-notification-banner{
    border:1px solid CanvasText;
    box-shadow:none;
  }
}

/* Rebuilt global toast system - 2026-07-22 */
:root{
  --mtp-toast-z:900000;
  --mtp-toast-success-bg:#067647;
  --mtp-toast-error-bg:#b42318;
  --mtp-toast-warning-bg:#fec84b;
  --mtp-toast-info-bg:#175cd3;
  --mtp-toast-pending-bg:#b54708;
  --mtp-toast-loading-bg:#1d2939;
  --mtp-toast-neutral-bg:#475467;
  --mtp-toast-text-light:#fff;
  --mtp-toast-text-dark:#1d2939;
}

.mtp-toast-region,
.toast-container.mtv-toast-region{
  position:fixed!important;
  top:calc(var(--mtp-notification-banner-height,0px) + var(--mtp-header-height,var(--mtp-public-nav-height,0px)) + var(--mtp-network-offset,0px) + 16px)!important;
  right:max(18px,env(safe-area-inset-right))!important;
  left:auto!important;
  bottom:auto!important;
  z-index:var(--mtp-toast-z)!important;
  width:min(380px,calc(100vw - 36px))!important;
  max-width:420px!important;
  display:grid!important;
  grid-auto-flow:row!important;
  gap:10px!important;
  pointer-events:none!important;
}

.mtp-toast,
.mtv-toast.toast,
.toast.mtv-toast{
  --mtp-toast-bg:var(--mtp-toast-info-bg);
  --mtp-toast-fg:var(--mtp-toast-text-light);
  --mtp-toast-muted:rgba(255,255,255,.86);
  --mtp-toast-border:rgba(255,255,255,.22);
  --mtp-toast-progress:rgba(255,255,255,.82);
  position:relative!important;
  width:100%!important;
  min-height:64px!important;
  display:grid!important;
  grid-template-columns:24px minmax(0,1fr) 40px!important;
  align-items:start!important;
  gap:10px!important;
  padding:12px 0 12px 14px!important;
  overflow:hidden!important;
  border:1px solid var(--mtp-toast-border)!important;
  border-left:0!important;
  border-radius:3px!important;
  background:var(--mtp-toast-bg)!important;
  color:var(--mtp-toast-fg)!important;
  box-shadow:0 10px 24px rgba(16,24,40,.18)!important;
  opacity:0;
  transform:translate3d(18px,0,0);
  transition:opacity .2s ease,transform .2s ease!important;
  pointer-events:auto!important;
}

.mtp-toast.is-visible,
.mtv-toast.is-visible{
  opacity:1;
  transform:translate3d(0,0,0);
}

.mtp-toast.is-hiding,
.mtv-toast.is-hiding{
  opacity:0;
  transform:translate3d(18px,0,0);
}

.mtp-toast:hover,
.mtp-toast:focus-within,
.mtv-toast:hover,
.mtv-toast:focus-within{
  box-shadow:0 12px 28px rgba(16,24,40,.22)!important;
}

.mtp-toast__icon,
.toast-icon,
.mtv-toast-icon{
  width:24px!important;
  height:24px!important;
  margin-top:1px!important;
  border:1px solid currentColor!important;
  border-radius:50%!important;
  display:grid!important;
  place-items:center!important;
  background:transparent!important;
  color:var(--mtp-toast-fg)!important;
  box-shadow:none!important;
  font-size:10px!important;
  font-weight:900!important;
  line-height:1!important;
}

.mtp-toast__content,
.toast-content,
.mtv-toast-content{
  min-width:0!important;
  display:block!important;
  padding-top:1px!important;
}

.mtp-toast__heading,
.toast-heading{
  display:block!important;
}

.mtp-toast__title,
.toast-title,
.mtv-toast-title{
  display:block!important;
  margin:0!important;
  color:var(--mtp-toast-fg)!important;
  font-size:14px!important;
  font-weight:700!important;
  line-height:1.2!important;
  letter-spacing:0!important;
}

.mtp-toast__message,
.toast-message,
.mtv-toast-message{
  margin:4px 0 0!important;
  color:var(--mtp-toast-muted)!important;
  font-size:12px!important;
  font-weight:600!important;
  line-height:1.35!important;
  overflow-wrap:anywhere!important;
}

.mtp-toast__close,
.toast-close,
.mtv-toast-close{
  width:40px!important;
  height:40px!important;
  min-width:40px!important;
  min-height:40px!important;
  margin:-8px 0 0 0!important;
  display:grid!important;
  place-items:center!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--mtp-toast-fg)!important;
  font:400 20px/1 Arial,sans-serif!important;
  cursor:pointer!important;
  opacity:.88!important;
}

.mtp-toast__close:hover,
.mtp-toast__close:focus-visible,
.toast-close:hover,
.toast-close:focus-visible,
.mtv-toast-close:hover,
.mtv-toast-close:focus-visible{
  background:rgba(255,255,255,.14)!important;
  color:var(--mtp-toast-fg)!important;
  outline:2px solid rgba(255,255,255,.78)!important;
  outline-offset:-2px!important;
  opacity:1!important;
}

.mtp-toast__action,
.toast-action,
.mtv-toast-action{
  width:max-content!important;
  max-width:100%!important;
  min-height:34px!important;
  margin-top:9px!important;
  padding:0 11px!important;
  border:1px solid currentColor!important;
  border-radius:3px!important;
  background:rgba(255,255,255,.12)!important;
  color:var(--mtp-toast-fg)!important;
  font:inherit!important;
  font-size:12px!important;
  font-weight:800!important;
  text-decoration:none!important;
  cursor:pointer!important;
}

.mtp-toast__action:hover,
.mtp-toast__action:focus-visible,
.toast-action:hover,
.toast-action:focus-visible,
.mtv-toast-action:hover,
.mtv-toast-action:focus-visible{
  background:rgba(255,255,255,.22)!important;
  color:var(--mtp-toast-fg)!important;
  outline:2px solid rgba(255,255,255,.75)!important;
  outline-offset:2px!important;
}

.mtp-toast__progress,
.toast-progress,
.mtv-toast-progress{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  height:2px!important;
  background:rgba(255,255,255,.2)!important;
}

.mtp-toast__progress::before,
.toast-progress::before,
.mtv-toast-progress::before{
  background:var(--mtp-toast-progress)!important;
}

.mtp-toast--success,.mtv-toast-success,.toast-success{--mtp-toast-bg:var(--mtp-toast-success-bg)}
.mtp-toast--error,.mtv-toast-error,.toast-error,
.mtp-toast--offline,.mtv-toast-offline,.toast-offline,
.mtp-toast--server_error,.mtv-toast-server_error,.toast-server_error{--mtp-toast-bg:var(--mtp-toast-error-bg)}
.mtp-toast--warning,.mtv-toast-warning,.toast-warning{--mtp-toast-bg:var(--mtp-toast-warning-bg);--mtp-toast-fg:var(--mtp-toast-text-dark);--mtp-toast-muted:rgba(29,41,57,.86);--mtp-toast-border:rgba(29,41,57,.18);--mtp-toast-progress:rgba(29,41,57,.58)}
.mtp-toast--info,.mtv-toast-info,.toast-info{--mtp-toast-bg:var(--mtp-toast-info-bg)}
.mtp-toast--pending,.mtv-toast-pending,.toast-pending{--mtp-toast-bg:var(--mtp-toast-pending-bg)}
.mtp-toast--loading,.mtv-toast-loading,.toast-loading{--mtp-toast-bg:var(--mtp-toast-loading-bg)}
.mtp-toast--neutral,.mtv-toast-neutral,.toast-neutral{--mtp-toast-bg:var(--mtp-toast-neutral-bg)}
.mtp-toast--reconnected,.mtv-toast-reconnected,.toast-reconnected{--mtp-toast-bg:var(--mtp-toast-success-bg)}

.mtp-toast__spinner,
.mtv-toast-spinner{
  border:2px solid rgba(255,255,255,.34)!important;
  border-top-color:var(--mtp-toast-fg)!important;
  font-size:0!important;
  animation:mtp-toast-spin .85s linear infinite!important;
}

.mtp-browser-check-open .mtp-toast-region,
.mtp-recaptcha-challenge-open .mtp-toast-region{
  visibility:hidden!important;
  pointer-events:none!important;
}

@media(max-width:700px){
  .mtp-toast-region,
  .toast-container.mtv-toast-region{
    top:calc(var(--mtp-notification-banner-height,0px) + var(--mtp-header-height,var(--mtp-public-nav-height,0px)) + var(--mtp-network-offset,0px) + 12px)!important;
    right:max(12px,env(safe-area-inset-right))!important;
    left:auto!important;
    width:min(360px,calc(100vw - 24px))!important;
    max-width:min(360px,calc(100vw - 24px))!important;
    gap:9px!important;
  }

  .mtp-toast,
  .mtv-toast.toast,
  .toast.mtv-toast{
    grid-template-columns:22px minmax(0,1fr) 40px!important;
    gap:9px!important;
    min-height:64px!important;
    padding:12px 0 12px 12px!important;
    transform:translate3d(16px,0,0)!important;
  }

  .mtp-toast.is-visible,
  .mtv-toast.is-visible{
    transform:translate3d(0,0,0)!important;
  }

  .mtp-toast.is-hiding,
  .mtv-toast.is-hiding{
    transform:translate3d(16px,0,0)!important;
  }
}


/* Unified public/admin notification-banner height — 2026-07-23 admin v14 */
:root{--mtp-notification-banner-bar-height:32px;}
.mtp-notification-banner{height:var(--mtp-notification-banner-bar-height)!important;min-height:var(--mtp-notification-banner-bar-height)!important;font-size:12px!important;line-height:1.15!important;}
.mtp-notification-banner__viewport,.mtp-notification-banner__track,.mtp-notification-banner__group,.mtp-notification-banner__item{min-height:var(--mtp-notification-banner-bar-height)!important;}
.mtp-notification-banner__link{min-height:24px!important;}
@media(max-width:700px){.mtp-notification-banner{height:var(--mtp-notification-banner-bar-height)!important;min-height:var(--mtp-notification-banner-bar-height)!important;font-size:11px!important;}}

/* V25 shared public/dashboard notification banner alignment */
.mtp-notification-banner-slot,
.global-notification-banner-slot{
  min-height:38px;
  z-index:5600;
}
.mtp-notification-banner,
.global-notification-banner{
  height:auto;
  min-height:38px;
  display:flex;
  align-items:center;
  font-size:13px;
  line-height:1.35;
  font-weight:700;
}
.mtp-notification-banner__group,
.mtp-notification-banner__item{
  min-height:38px;
  align-items:center;
}
.mtp-notification-banner__link{
  min-height:28px;
  border-radius:5px;
}
@media(max-width:760px){
  .mtp-notification-banner-slot,
  .global-notification-banner-slot,
  .mtp-notification-banner,
  .global-notification-banner,
  .mtp-notification-banner__group,
  .mtp-notification-banner__item{min-height:34px;}
  .mtp-notification-banner,.global-notification-banner{font-size:12px;}
}
@media(prefers-reduced-motion:reduce){
  .mtp-notification-banner__track{animation-duration:1ms!important;animation-iteration-count:1!important;}
}
