/* MarFlores Login TailAdmin - 0.0.659 - autoridade visual exclusiva */
#auth-screen.mf-login-page{--mf-login-font:"Outfit",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--mf-login-text:#101828;--mf-login-text-2:#344054;--mf-login-muted:#667085;--mf-login-muted-2:#98a2b3;--mf-login-line:#d0d5dd;--mf-login-line-soft:#e4e7ec;--mf-login-marsala:#b71955;--mf-login-marsala-dark:#741033;--mf-login-rose:#d33269;min-height:100svh;width:100%;display:grid;grid-template-columns:minmax(480px,1fr) minmax(520px,1fr);overflow:hidden;background:#fff;color:var(--mf-login-text);color-scheme:light;font-family:var(--mf-login-font)}
#auth-screen.mf-login-page[hidden]{display:none!important}
#auth-screen.mf-login-page,#auth-screen.mf-login-page *{box-sizing:border-box}
body:has(#auth-screen.mf-login-page:not([hidden])){overflow:hidden}
#auth-screen .mf-login-form-panel{position:relative;min-width:0;min-height:100svh;display:flex;flex-direction:column;background:linear-gradient(180deg,#fff 0%,#fbfcfd 100%);overflow:hidden}
#auth-screen .mf-login-form-panel::before{content:"";position:absolute;width:430px;height:430px;left:-255px;bottom:-250px;border-radius:50%;background:radial-gradient(circle,rgba(183,25,85,.055),rgba(183,25,85,0) 70%);pointer-events:none}
#auth-screen .mf-login-form-top{width:min(470px,calc(100% - 64px));min-height:72px;margin:28px auto 0;display:flex;align-items:flex-start}
#auth-screen .mf-login-env{display:inline-flex;align-items:center;gap:7px;min-height:30px;padding:6px 10px;border:1px solid #f5c8d8;border-radius:999px;background:#fff7fa;color:#8f123f;font-family:var(--mf-login-font);font-size:11.5px;line-height:1;font-weight:600;letter-spacing:.03em;box-shadow:0 1px 2px rgba(16,24,40,.04)}
#auth-screen .mf-login-env::before{content:"";width:7px;height:7px;border-radius:50%;background:#d33269;box-shadow:0 0 0 4px rgba(211,50,105,.10)}
#auth-screen .mf-login-form-wrap{width:min(470px,calc(100% - 64px));margin:auto;padding:12px 0 34px;opacity:0;transform:translateY(18px);animation:mfLoginFormIn .72s .14s cubic-bezier(.22,.74,.22,1) forwards}
#auth-screen .mf-login-eyebrow{margin:0 0 10px;color:var(--mf-login-marsala);font-size:11.5px;line-height:1.2;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
#auth-screen .mf-login-title{margin:0;color:var(--mf-login-text);font-family:var(--mf-login-font);font-size:38px;line-height:1.08;font-weight:700;letter-spacing:-.035em}
#auth-screen .mf-login-subtitle{margin:11px 0 30px;color:var(--mf-login-muted);font-family:var(--mf-login-font);font-size:14px;line-height:1.55;font-weight:400}
#auth-screen .mf-login-field{margin:0 0 17px}
#auth-screen .mf-login-field label{display:block;margin:0 0 7px;color:var(--mf-login-text-2);font-family:var(--mf-login-font);font-size:13px;line-height:18px;font-weight:600}
#auth-screen .mf-login-input-wrap{position:relative}
#auth-screen .mf-login-input-wrap input{width:100%;height:48px;min-height:48px;margin:0;padding:0 46px 0 44px;border:1px solid var(--mf-login-line);border-radius:10px;outline:0;background:#fff;color:var(--mf-login-text);font-family:var(--mf-login-font);font-size:14px;line-height:1;font-weight:400;box-shadow:0 1px 2px rgba(16,24,40,.04);transition:border-color .18s ease,box-shadow .18s ease}
#auth-screen .mf-login-input-wrap input::placeholder{color:var(--mf-login-muted-2);opacity:1}
#auth-screen .mf-login-input-wrap input:focus{border-color:#e790ae;box-shadow:0 0 0 4px rgba(183,25,85,.09),0 1px 2px rgba(16,24,40,.04)}
#auth-screen .mf-login-input-wrap input:-webkit-autofill,#auth-screen .mf-login-input-wrap input:-webkit-autofill:hover,#auth-screen .mf-login-input-wrap input:-webkit-autofill:focus{-webkit-text-fill-color:var(--mf-login-text);-webkit-box-shadow:0 0 0 1000px #fff inset,0 0 0 4px rgba(183,25,85,.06);font-family:var(--mf-login-font)}
#auth-screen .mf-login-field-icon{position:absolute;left:15px;top:50%;width:18px;height:18px;transform:translateY(-50%);color:var(--mf-login-muted);pointer-events:none}
#auth-screen .mf-login-eye{position:absolute;right:8px;top:50%;width:34px;height:34px;padding:0;transform:translateY(-50%);display:grid;place-items:center;border:0;border-radius:8px;background:transparent;color:var(--mf-login-muted);box-shadow:none;cursor:pointer;transition:background .18s ease,color .18s ease}
#auth-screen .mf-login-eye:hover{background:#f2f4f7;color:var(--mf-login-text-2)}
#auth-screen .mf-login-eye svg{width:18px;height:18px}
#auth-screen .mf-login-eye .eye-closed{display:none}
#auth-screen .mf-login-eye[data-visible="true"] .eye-open{display:none}
#auth-screen .mf-login-eye[data-visible="true"] .eye-closed{display:block}
#auth-screen .mf-login-actions{display:flex;justify-content:flex-end;margin:-2px 0 18px}
#auth-screen .mf-login-forgot{padding:0;border:0;background:transparent;color:var(--mf-login-marsala);font-family:var(--mf-login-font);font-size:12.5px;line-height:1.3;font-weight:600;cursor:pointer}
#auth-screen .mf-login-forgot:hover{text-decoration:underline}
#auth-screen .mf-login-message{margin:0 0 14px;padding:9px 11px;border:1px solid #fecdd6;border-radius:8px;background:#fff1f3;color:#b42318;font-family:var(--mf-login-font);font-size:12px;line-height:1.4;font-weight:500}
#auth-screen .mf-login-message.success{border-color:#abefc6;background:#ecfdf3;color:#067647}
#auth-screen .mf-login-message.warning{border-color:#fedf89;background:#fffaeb;color:#b54708}
#auth-screen .mf-login-message[hidden]{display:none!important}
#auth-screen .mf-login-enter{position:relative;width:100%;height:48px;min-height:48px;margin:0;padding:0 18px;overflow:hidden;display:flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:10px;background:linear-gradient(110deg,var(--mf-login-marsala-dark),var(--mf-login-marsala) 48%,var(--mf-login-rose));color:#fff;font-family:var(--mf-login-font);font-size:14px;line-height:1;font-weight:600;box-shadow:0 10px 24px rgba(183,25,85,.20);cursor:pointer;transition:transform .18s cubic-bezier(.22,.74,.22,1),box-shadow .18s ease,opacity .18s ease}
#auth-screen .mf-login-enter::before{content:"";position:absolute;top:-70%;left:-34%;width:25%;height:240%;transform:rotate(18deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);animation:mfLoginButtonShine 4.8s 1.15s ease-in-out infinite}
#auth-screen .mf-login-enter:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 14px 28px rgba(183,25,85,.25)}
#auth-screen .mf-login-enter:active:not(:disabled){transform:translateY(0) scale(.995)}
#auth-screen .mf-login-enter:disabled{cursor:wait;opacity:.78}
#auth-screen .mf-login-enter .button-text{position:relative;z-index:1}
#auth-screen .mf-login-enter .button-loader{position:relative;z-index:1;width:16px;height:16px;display:none;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:mfLoginSpin .7s linear infinite}
#auth-screen .mf-login-enter.loading .button-loader{display:block}
#auth-screen .mf-login-enter.loading .button-text{opacity:.72}
#auth-screen .mf-login-system-note{margin:15px 0 0;display:flex;align-items:center;gap:8px;color:var(--mf-login-muted);font-family:var(--mf-login-font);font-size:11.5px;line-height:1.4;font-weight:400}
#auth-screen .mf-login-system-note::before{content:"";width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:#32d583;box-shadow:0 0 0 4px rgba(50,213,131,.10)}
#auth-screen .mf-login-footer{width:min(470px,calc(100% - 64px));margin:0 auto 20px;padding-top:15px;border-top:1px solid var(--mf-login-line-soft);color:var(--mf-login-muted);text-align:center;font-family:var(--mf-login-font);font-size:11.5px;line-height:1.3;font-weight:400;opacity:0;animation:mfLoginFadeIn .7s .62s ease forwards}
#auth-screen .mf-login-footer strong{color:var(--mf-login-text-2);font-weight:500}
#auth-screen .mf-login-brand-panel{position:relative;min-width:0;min-height:100svh;overflow:hidden;display:grid;place-items:center;isolation:isolate;background:radial-gradient(circle at 22% 16%,rgba(255,157,190,.21),transparent 29%),radial-gradient(circle at 82% 78%,rgba(255,118,165,.17),transparent 34%),linear-gradient(145deg,#4d0a24 0%,#761034 38%,#a51950 72%,#6d0e31 100%)}
#auth-screen .mf-login-brand-grid{position:absolute;inset:-30%;z-index:-4;background:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);background-size:54px 54px;animation:mfLoginGridDrift 28s linear infinite;mask-image:linear-gradient(90deg,transparent 2%,#000 23%,#000 100%)}
#auth-screen .mf-login-brand-glow{position:absolute;inset:-15%;z-index:-3;background:radial-gradient(circle at 52% 48%,rgba(255,255,255,.11),transparent 26%);animation:mfLoginAmbient 7s ease-in-out infinite alternate}
#auth-screen .mf-login-petal{position:absolute;border:1px solid rgba(255,255,255,.10);background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.018));border-radius:74% 26% 70% 30%/62% 36% 64% 38%;pointer-events:none}
#auth-screen .mf-login-petal.p1{width:330px;height:330px;top:-170px;left:-70px;transform:rotate(32deg);animation:mfLoginFloat1 13s ease-in-out infinite alternate}
#auth-screen .mf-login-petal.p2{width:410px;height:410px;bottom:-250px;right:-110px;transform:rotate(-28deg);animation:mfLoginFloat2 16s ease-in-out infinite alternate}
#auth-screen .mf-login-petal.p3{width:180px;height:180px;top:8%;right:-92px;opacity:.5;transform:rotate(32deg);animation:mfLoginFloat3 11s ease-in-out infinite alternate}
#auth-screen .mf-login-orbit{position:absolute;width:780px;height:780px;right:-420px;bottom:-285px;border:1px solid rgba(255,255,255,.16);border-radius:50%;transform:rotate(-18deg);pointer-events:none}
#auth-screen .mf-login-orbit::after{content:"";position:absolute;width:8px;height:8px;left:14%;top:12%;border-radius:50%;background:#ffd4e3;box-shadow:0 0 10px #fff,0 0 26px rgba(255,198,219,.8),0 0 42px rgba(255,115,166,.55);animation:mfLoginGlow 2.4s ease-in-out infinite alternate}
#auth-screen .mf-login-square{position:absolute;width:50px;height:50px;border:1px solid rgba(255,255,255,.05);background:rgba(255,255,255,.035);animation:mfLoginSquare 5.5s ease-in-out infinite alternate}
#auth-screen .mf-login-square.s1{top:8%;right:9%;animation-delay:.2s}
#auth-screen .mf-login-square.s2{top:14%;right:3%;width:34px;height:34px;animation-delay:1.1s}
#auth-screen .mf-login-square.s3{bottom:12%;left:10%;width:58px;height:58px;animation-delay:1.7s}
#auth-screen .mf-login-square.s4{bottom:18%;left:5%;width:36px;height:36px;animation-delay:.7s}
#auth-screen .mf-login-brand-content{position:relative;z-index:3;width:min(520px,76%);text-align:center;opacity:0;transform:translateY(14px) scale(.985);animation:mfLoginBrandIn .9s .25s cubic-bezier(.22,.74,.22,1) forwards}
#auth-screen .mf-login-logo-shell{position:relative;width:min(410px,88%);margin:0 auto 22px;padding:22px 26px;border:1px solid rgba(255,255,255,.14);border-radius:22px;background:rgba(255,255,255,.94);box-shadow:0 22px 70px rgba(50,2,19,.24);backdrop-filter:blur(10px);animation:mfLoginLogoFloat 5.8s 1.1s ease-in-out infinite}
#auth-screen .mf-login-logo-shell img{display:block;width:100%;height:auto;max-height:164px;object-fit:contain}
#auth-screen .mf-login-brand-line{width:54px;height:2px;margin:19px auto;border-radius:999px;background:linear-gradient(90deg,transparent,#ffd7e5,transparent);animation:mfLoginLine 3.4s ease-in-out infinite}
#auth-screen .mf-login-brand-copy{margin:0 auto;max-width:410px;color:rgba(255,255,255,.82);font-family:var(--mf-login-font);font-size:14px;line-height:1.55;font-weight:400;text-shadow:0 2px 16px rgba(62,3,24,.22)}
@keyframes mfLoginFormIn{to{opacity:1;transform:none}}
@keyframes mfLoginBrandIn{to{opacity:1;transform:none}}
@keyframes mfLoginFadeIn{to{opacity:1}}
@keyframes mfLoginGridDrift{to{transform:translate3d(54px,54px,0)}}
@keyframes mfLoginAmbient{from{opacity:.55;transform:scale(.96)}to{opacity:1;transform:scale(1.04)}}
@keyframes mfLoginFloat1{from{transform:rotate(32deg) translate3d(0,0,0)}to{transform:rotate(38deg) translate3d(24px,18px,0)}}
@keyframes mfLoginFloat2{from{transform:rotate(-28deg) translate3d(0,0,0)}to{transform:rotate(-23deg) translate3d(-25px,-18px,0)}}
@keyframes mfLoginFloat3{from{transform:rotate(32deg) translate3d(0,0,0)}to{transform:rotate(24deg) translate3d(-18px,28px,0)}}
@keyframes mfLoginLogoFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes mfLoginGlow{from{opacity:.55;transform:scale(.8)}to{opacity:1;transform:scale(1.16)}}
@keyframes mfLoginLine{0%,100%{opacity:.55;transform:scaleX(.8)}50%{opacity:1;transform:scaleX(1.1)}}
@keyframes mfLoginSquare{from{opacity:.3;transform:scale(.92)}to{opacity:.9;transform:scale(1.05)}}
@keyframes mfLoginButtonShine{0%,55%{left:-34%}72%,100%{left:128%}}
@keyframes mfLoginSpin{to{transform:rotate(360deg)}}
@media(max-width:980px){#auth-screen.mf-login-page{grid-template-columns:minmax(430px,1.15fr) minmax(360px,.85fr)}#auth-screen .mf-login-logo-shell{width:min(350px,88%);padding:18px 22px}}
@media(max-width:760px){body:has(#auth-screen.mf-login-page:not([hidden])){overflow:auto}#auth-screen.mf-login-page{display:block;min-height:100svh;overflow:auto}#auth-screen .mf-login-brand-panel{display:none}#auth-screen .mf-login-form-panel{min-height:100svh}#auth-screen .mf-login-form-top,#auth-screen .mf-login-form-wrap,#auth-screen .mf-login-footer{width:calc(100% - 36px)}#auth-screen .mf-login-form-top{min-height:64px;margin-top:20px}#auth-screen .mf-login-form-wrap{padding-top:8px}#auth-screen .mf-login-title{font-size:32px}}
@media(prefers-reduced-motion:reduce){#auth-screen.mf-login-page *,#auth-screen.mf-login-page *::before,#auth-screen.mf-login-page *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
/* 0.0.659 — boot neutro: evita flash do login durante restauração de sessão */
.mf-boot-screen{min-height:100svh;width:100%;display:grid;place-items:center;background:radial-gradient(circle at 50% 42%,rgba(183,25,85,.045),transparent 34%),#fff;color:#344054;color-scheme:light;font-family:"Outfit",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.mf-boot-screen[hidden]{display:none!important}
.mf-boot-card{width:min(320px,calc(100% - 48px));display:flex;flex-direction:column;align-items:center;gap:18px;text-align:center}
.mf-boot-logo{display:block;width:min(245px,82%);height:auto;object-fit:contain;animation:mfBootLogoIn .42s cubic-bezier(.22,.74,.22,1) both}
.mf-boot-progress{position:relative;width:154px;height:3px;overflow:hidden;border-radius:999px;background:#f2f4f7}
.mf-boot-progress span{position:absolute;inset:0 auto 0 -42%;width:42%;border-radius:999px;background:linear-gradient(90deg,#741033,#b71955,#d33269);animation:mfBootProgress 1.05s ease-in-out infinite}
.mf-boot-status{margin:0;color:#667085;font-family:inherit;font-size:12px;line-height:1.45;font-weight:400;letter-spacing:.005em}
@keyframes mfBootLogoIn{from{opacity:0;transform:translateY(5px) scale(.985)}to{opacity:1;transform:none}}
@keyframes mfBootProgress{0%{left:-42%;width:42%}55%{width:58%}100%{left:100%;width:42%}}
@media(prefers-reduced-motion:reduce){.mf-boot-logo,.mf-boot-progress span{animation-duration:.01ms!important;animation-iteration-count:1!important}}