/* NossaFatura 4.3.3 — feedback layer, auth viewport and SweetAlert identity */
:root{
  --nf-feedback-accent:#00a99d;
  --nf-feedback-accent-2:#48e6d8;
  --nf-feedback-navy:#07182f;
  --nf-feedback-text:#12263a;
  --nf-feedback-muted:#60788d;
  --nf-feedback-border:#d7e3ec;
  --nf-feedback-surface:#fff;
  --nf-feedback-danger:#c83d4b;
}
html[data-theme="dark"]{
  --nf-feedback-text:#edf6fb;
  --nf-feedback-muted:#9fb3c3;
  --nf-feedback-border:#27455d;
  --nf-feedback-surface:#0d243a;
}

/* Native server feedback is converted to a non-blocking toast by JS. */
.nf-fallback-notice{position:fixed;z-index:100000;right:20px;top:20px;max-width:min(420px,calc(100vw - 40px));padding:14px 16px;border:1px solid var(--nf-feedback-border);border-left:4px solid var(--nf-feedback-accent);background:var(--nf-feedback-surface);color:var(--nf-feedback-text);box-shadow:0 18px 45px rgba(5,25,45,.18);font:700 13px/1.45 Arial,sans-serif}
.nf-fallback-notice.error,.nf-fallback-notice.danger{border-left-color:var(--nf-feedback-danger)}
.nf-fallback-notice.warning{border-left-color:#d59215}

.swal2-container{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important}
.swal2-popup.sf-swal-popup,.swal2-popup.nf-swal-popup{border-radius:4px!important;border:1px solid var(--nf-feedback-border)!important;background:var(--nf-feedback-surface)!important;color:var(--nf-feedback-text)!important;box-shadow:0 26px 80px rgba(5,25,45,.25)!important;padding:28px!important}
.swal2-popup .swal2-title{color:var(--nf-feedback-text)!important;font-size:22px!important;font-weight:800!important;letter-spacing:-.02em!important}
.swal2-popup .swal2-html-container{color:var(--nf-feedback-muted)!important;font-size:14px!important;line-height:1.6!important}
.swal2-popup .sf-btn,.swal2-popup .swal2-styled{border-radius:2px!important;min-height:42px!important;padding:10px 18px!important;font-weight:800!important;box-shadow:none!important}
.swal2-popup .sf-btn.primary,.swal2-popup .swal2-confirm{background:var(--nf-feedback-accent)!important;border:1px solid #008d84!important;color:#fff!important}
.swal2-popup .sf-btn.danger{background:var(--nf-feedback-danger)!important;border:1px solid #a92b38!important;color:#fff!important}
.swal2-popup .sf-btn.outline-secondary,.swal2-popup .swal2-cancel{background:transparent!important;border:1px solid var(--nf-feedback-border)!important;color:var(--nf-feedback-text)!important}
.swal2-popup.swal2-toast.sf-swal-toast,.swal2-popup.swal2-toast.nf-swal-toast{width:min(410px,calc(100vw - 30px))!important;border-radius:3px!important;border:1px solid var(--nf-feedback-border)!important;border-left:4px solid var(--nf-feedback-accent)!important;background:var(--nf-feedback-surface)!important;color:var(--nf-feedback-text)!important;box-shadow:0 18px 50px rgba(5,25,45,.22)!important;padding:13px 15px!important}
.swal2-popup.swal2-toast .swal2-title{font-size:13px!important;line-height:1.45!important;margin:0!important;text-align:left!important}
.swal2-popup.swal2-toast .swal2-html-container{font-size:12px!important;text-align:left!important;margin:4px 0 0!important}
.swal2-popup.swal2-toast.nf-message-toast{border-left-color:#3a83e8!important}
html[data-theme="dark"] .swal2-icon.swal2-warning{border-color:#f1b84b!important;color:#f1b84b!important}
html[data-theme="dark"] .swal2-timer-progress-bar{background:rgba(72,230,216,.55)!important}

.os-action-icon{position:relative}
.os-notification-badge{position:absolute;top:-5px;right:-5px;min-width:17px;height:17px;padding:0 4px;border:2px solid #07182f;border-radius:9px;background:#e24455;color:#fff;font-size:9px;line-height:13px;text-align:center;font-weight:900}
.os-notification-badge[hidden]{display:none!important}

/* Desktop auth pages must occupy the viewport instead of producing a cosmetic scrollbar. */
@media (min-width:1101px){
  html.nf-auth-html{height:100%;overflow:hidden!important}
  html body.auth-body.nf-auth-body{height:100dvh!important;min-height:100dvh!important;margin:0!important;padding:0!important;overflow:hidden!important}
  .nf-auth-shell:not(.is-wide){height:100dvh!important;min-height:0!important;overflow:hidden!important}
  .nf-auth-shell:not(.is-wide) .nf-auth-story,.nf-auth-shell:not(.is-wide) .nf-auth-access{height:100%!important;min-height:0!important;overflow:hidden!important}
  .nf-auth-shell:not(.is-wide) .nf-auth-access{padding-top:clamp(22px,5vh,56px)!important;padding-bottom:clamp(18px,4vh,44px)!important}
  .nf-auth-shell:not(.is-wide) .nf-auth-access-inner{min-height:0!important}
  .nf-auth-shell:not(.is-wide) .nf-auth-footer{padding-top:clamp(8px,2vh,18px)!important}
}
@media (min-width:1101px) and (max-height:760px){
  .nf-auth-shell:not(.is-wide) .nf-auth-story-inner{transform:scale(.91);transform-origin:center left}
  .nf-auth-shell:not(.is-wide) .nf-auth-access{padding-top:18px!important;padding-bottom:14px!important}
  .nf-auth-shell:not(.is-wide) .nf-auth-access-inner{transform:scale(.93);transform-origin:center center;width:107.5%}
}
@media (max-width:1100px){
  html.nf-auth-html,html body.auth-body.nf-auth-body{height:auto!important;min-height:100%!important;overflow-x:hidden!important;overflow-y:auto!important}
  .nf-auth-shell{min-height:100dvh!important;height:auto!important;overflow:visible!important}
}

/* Autofill isolation for admin create-user forms. */
.nf-autofill-decoy{position:fixed!important;left:-10000px!important;top:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important;}
