:root{font-family:'DM Sans',sans-serif;color:#182840;background:#071a39;font-synthesis:none;text-rendering:optimizeLegibility;--navy:#092653;--orange:#fd6301;--muted:#8190a4;--line:#e7ebf1}*{box-sizing:border-box}body{margin:0;min-height:100vh}.auth-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:35px 20px 28px;background:radial-gradient(ellipse at 50% 5%,#173b6e 0,transparent 46%),radial-gradient(ellipse at 50% 100%,#102d53 0,transparent 42%),#071a39}.login-logo{width:min(390px,83vw);height:auto;display:block;object-fit:contain;margin:0 auto 20px}.login-card{width:min(100%,430px);background:#fff;border:1px solid #ffffff50;border-radius:12px;padding:36px 42px 24px;box-shadow:0 24px 80px #020b1b66}.login-copy{text-align:center;margin:0 0 27px}.kicker{font-size:9px;letter-spacing:1.65px;color:#fd6301;font-weight:700;margin:0 0 11px}.login-copy h1{font:700 30px/1.22 Manrope,sans-serif;letter-spacing:-1.2px;color:#11213a;margin:0 0 9px}.subcopy{font-size:12px;color:#79879a;margin:0}.login-card form label{display:block;font-size:11px;font-weight:700;color:#344258;margin-bottom:8px}.field{height:47px;border:1px solid #e0e5ed;border-radius:6px;display:flex;align-items:center;padding:0 13px;gap:10px;transition:border-color .18s,box-shadow .18s}.field:focus-within{border-color:#91a7c4;box-shadow:0 0 0 3px #1c4b8110}.field>svg{width:17px;height:17px;stroke:#8b99ad;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.field input{font:400 11px 'DM Sans',sans-serif;color:#1d2b40;border:0;outline:0;flex:1;min-width:0;background:transparent}.field input::placeholder{color:#aab3c0}.password-label{margin-top:19px}.reveal{background:none;border:0;padding:3px;cursor:pointer;color:#8996a8;display:flex}.reveal svg{width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.form-message{min-height:18px;padding-top:6px;font-size:10px;color:#b24836}.form-message:empty{visibility:hidden}.submit{margin-top:2px;width:100%;height:47px;border:0;border-radius:6px;background:#0b2b56;color:white;font:600 12px 'DM Sans',sans-serif;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;box-shadow:0 5px 12px #09265322;transition:background .18s,transform .18s}.submit:hover{background:#123b70;transform:translateY(-1px)}.submit:disabled{opacity:.65;cursor:wait}.submit svg{width:16px;height:16px;stroke:#fd6301;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.evaluation{margin-top:15px}.evaluation-rule{display:flex;align-items:center;gap:11px;margin:0 0 11px}.evaluation-rule span{height:1px;background:#eceff3;flex:1}.evaluation-rule i{font-style:normal;font-size:8px;letter-spacing:1px;color:#9ba7b6;font-weight:700}.evaluation>p{font-size:10px;line-height:1.5;color:#7d899a;text-align:center;margin:0 0 11px}.evaluation-button,.copy-button{width:100%;height:37px;border:1px solid #dce3ec;border-radius:5px;background:#f8fafc;color:#31455f;font:600 10px 'DM Sans',sans-serif;cursor:pointer}.evaluation-button:hover,.copy-button:hover{border-color:#fd6301;color:#a94400}.evaluation-button:disabled{opacity:.65;cursor:wait}.evaluation-result{margin-top:10px;padding:12px;border:1px solid #dfe8f0;border-radius:6px;background:#f8fafc;font-size:10px}.evaluation-result>b{color:#18385f}.evaluation-result p{margin:4px 0 9px;color:#78869a}.credential-line{display:flex;justify-content:space-between;gap:8px;padding:5px 0;border-top:1px solid #e9edf2}.credential-line span{color:#7d899a}.credential-line code{color:#18385f;font:600 10px ui-monospace,monospace;overflow-wrap:anywhere}.copy-button{margin-top:8px;background:#fff}.login-footer{display:flex;justify-content:space-between;margin-top:21px;color:#9ba5b1;font-size:8px;font-weight:600;letter-spacing:.5px}.login-footer b{color:#fd6301;margin:0 3px}
.erp-shell{min-height:100vh;display:grid;grid-template-columns:252px 1fr;background:#f4f6f9}.sidebar{position:relative;min-height:100vh;background:#092653;color:#e8eef8;padding:20px 15px 18px;display:flex;flex-direction:column}.sidebar-brand{display:block;background:#071a39;border-radius:5px;margin:0 0 23px;overflow:hidden}.sidebar-brand img{display:block;width:100%;height:auto}.tenant-label{display:flex;align-items:center;gap:10px;padding:11px 9px;border:1px solid #ffffff20;border-radius:6px;background:#ffffff08}.tenant-symbol{width:30px;height:30px;border-radius:5px;background:#fd6301;color:#fff;display:grid;place-items:center;font:700 17px Manrope,sans-serif}.tenant-label small,.tenant-label b{display:block}.tenant-label small{font-size:8px;color:#a9bad0;letter-spacing:1px;margin-bottom:4px}.tenant-label b{font-size:10px;max-width:164px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.nav-caption{font-size:8px;letter-spacing:1.25px;color:#8298b7;font-weight:700;margin:27px 10px 10px}.sidebar nav{display:grid;gap:4px}.nav-item{width:100%;height:39px;display:flex;align-items:center;gap:11px;padding:0 11px;border:0;border-radius:5px;background:transparent;color:#c2cfe0;text-align:left;font:500 11px 'DM Sans',sans-serif;cursor:pointer}.nav-item svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.nav-item:hover{background:#ffffff0c;color:#fff}.nav-item.active{background:#183d6b;color:#fff;box-shadow:inset 2px 0 #fd6301}.sidebar-bottom{margin-top:auto;padding:12px 8px 0;border-top:1px solid #ffffff1a;display:flex;align-items:center;gap:8px;color:#a7b8cf;font-size:9px;letter-spacing:.45px}.sidebar-bottom small{color:#8499b6;margin-left:4px}.version-dot,.eval-pill i{width:6px;height:6px;border-radius:50%;background:#fd6301;box-shadow:0 0 8px #fd6301}.work-area{min-width:0}.topbar{height:67px;padding:0 32px;border-bottom:1px solid #e7ebf0;background:#fff;display:flex;align-items:center;justify-content:space-between}.crumb{font-size:10px;color:#7c899a}.crumb span{padding:0 8px;color:#c0c8d1}.user-menu{display:flex;align-items:center;gap:9px}.avatar{width:30px;height:30px;background:#eaf0f7;color:#244772;border-radius:50%;display:grid;place-items:center;font:700 12px Manrope,sans-serif}.user-label b,.user-label small{display:block}.user-label b{font-size:10px;color:#29394f}.user-label small{font-size:8px;color:#8995a5;margin-top:3px}.logout{margin-left:12px;width:30px;height:30px;border:1px solid #e7ebf0;border-radius:5px;background:white;display:grid;place-items:center;color:#65758a;cursor:pointer}.logout svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.logout:hover{border-color:#fd6301;color:#a94400}.workspace{max-width:1180px;margin:0 auto;padding:37px 38px 24px;min-height:calc(100vh - 67px);display:flex;flex-direction:column}.workspace-title{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.workspace-kicker{font-size:8px;letter-spacing:1.4px;font-weight:700;color:#a94400;margin:0 0 8px}.workspace-title h1{font:700 24px/1.3 Manrope,sans-serif;letter-spacing:-.7px;color:#172941;margin:0 0 6px}.workspace-title p:last-child{font-size:11px;color:#7b899b;margin:0}.eval-pill{display:inline-flex;align-items:center;gap:7px;padding:7px 9px;background:#fff1e8;border:1px solid #fd630133;border-radius:4px;color:#a94400;font-size:8px;font-weight:700;letter-spacing:.7px;white-space:nowrap}.empty-overview{margin-top:28px;min-height:300px;border:1px solid #e5eaf0;border-radius:8px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:32px}.empty-overview.compact{min-height:245px}.empty-icon{width:44px;height:44px;display:grid;place-items:center;background:#fff1e8;border-radius:10px;color:#fd6301}.empty-icon svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.empty-overview h2{font:700 15px Manrope,sans-serif;color:#253852;margin:16px 0 7px}.empty-overview p{max-width:430px;font-size:10px;line-height:1.65;color:#8491a2;margin:0}.workspace-footer{margin-top:auto;padding-top:25px;display:flex;justify-content:space-between;color:#9aa5b2;font-size:8px;letter-spacing:.5px}.workspace-footer span{color:#a94400}
@media(max-width:720px){.auth-page{padding:22px 15px}.login-logo{width:min(340px,88vw);margin-bottom:12px}.login-card{padding:30px 25px 20px}.login-copy h1{font-size:27px}.erp-shell{grid-template-columns:1fr}.sidebar{min-height:auto;padding:10px 13px;display:block}.sidebar-brand{width:154px;margin:0 auto 10px}.tenant-label{display:none}.nav-caption{display:none}.sidebar nav{display:flex;overflow-x:auto;gap:3px}.nav-item{height:36px;min-width:max-content;width:auto;padding:0 9px;font-size:9px}.nav-item svg{width:14px}.sidebar-bottom{display:none}.topbar{height:58px;padding:0 15px}.crumb{font-size:9px}.workspace{padding:26px 17px 20px;min-height:calc(100vh - 104px)}.workspace-title h1{font-size:20px}.workspace-title p:last-child{max-width:250px;line-height:1.5}.empty-overview{min-height:260px;padding:23px}.user-label{display:none}.logout{margin-left:3px}}
@media(max-width:390px){.login-card{padding:27px 20px 19px}.login-copy h1{font-size:25px}.subcopy{font-size:11px}.eval-pill{font-size:7px;padding:6px}.workspace-title{gap:8px}.workspace-title h1{font-size:18px}}
.direct-entry{width:100%;height:42px;margin-top:12px;border:1px solid #e1e7ee;border-radius:6px;background:#fff;color:#315070;font:600 11px 'DM Sans',sans-serif;cursor:pointer;transition:border-color .15s,background .15s,color .15s}.direct-entry:hover{border-color:#fd6301;background:#fffaf5;color:#a94400}.evaluation-note{text-align:center;color:#9aa4b0;font-size:9px;margin:8px 0 0}
.company-brand{width:100%;min-height:74px;padding:10px;display:flex;align-items:center;gap:11px;border:1px solid #ffffff22;border-radius:7px;background:#ffffff08;text-align:left;color:#e8eef8;cursor:pointer}.company-brand:hover{background:#ffffff10;border-color:#ffffff38}.company-brand>img,.company-monogram{width:50px;height:50px;flex:0 0 50px;border-radius:5px;object-fit:contain;background:#fff}.company-monogram{display:grid;place-items:center;background:#fff1e8;color:#fd6301}.company-monogram svg{width:23px;height:23px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.company-name small,.company-name b{display:block}.company-name small{font-size:8px;color:#a9bad0;letter-spacing:1px;margin-bottom:5px}.company-name b{font-size:10px;max-width:150px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.brand-settings{max-width:760px;margin-top:25px;padding:24px;background:#fff;border:1px solid #e5eaf0;border-radius:8px;display:grid;grid-template-columns:220px 1fr;gap:30px}.brand-settings-preview{min-height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:11px;background:#f6f8fb;border:1px dashed #d8e0e9;border-radius:7px;color:#8794a5;font-size:10px}.brand-settings-preview>img{width:120px;height:120px;object-fit:contain;border-radius:6px;background:#fff;border:1px solid #e8ecf1}.company-placeholder{width:76px;height:76px;border-radius:15px;display:grid;place-items:center;background:#fff1e8;color:#fd6301}.company-placeholder svg{width:31px;height:31px;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.brand-settings-fields{display:flex;flex-direction:column;align-items:flex-start}.brand-settings-fields label{font-size:10px;font-weight:700;color:#435269;margin:2px 0 7px}.brand-settings-fields input[type=text],.brand-settings-fields input:not([type]){width:100%;height:40px;padding:0 11px;border:1px solid #dfe5ec;border-radius:5px;color:#27384f;font:11px 'DM Sans',sans-serif;margin-bottom:16px;outline:none}.brand-settings-fields input:focus{border-color:#95abc5}.brand-settings-fields input[type=file]{width:100%;font:10px 'DM Sans',sans-serif;color:#68788d;margin:3px 0 6px}.brand-settings-fields small{font-size:9px;line-height:1.5;color:#8995a4}.save-brand{height:37px;margin-top:18px;padding:0 15px;border:0;border-radius:5px;background:#0b2b56;color:#fff;font:600 10px 'DM Sans',sans-serif;cursor:pointer}.save-brand:hover{background:#153c6d}
@media(max-width:720px){.company-brand{width:auto;min-height:0;margin:0 auto 8px;padding:5px 9px;gap:8px}.company-brand>img,.company-monogram{width:34px;height:34px;flex-basis:34px}.company-name small{font-size:7px;margin-bottom:2px}.company-name b{font-size:9px;max-width:210px}.brand-settings{grid-template-columns:1fr;padding:17px;gap:18px}.brand-settings-preview{min-height:150px}.brand-settings-preview>img{width:90px;height:90px}}

/* Login page: centered card with a transparent brand mark. */
.auth-page{position:relative;isolation:isolate;overflow:visible;min-height:100vh;padding:32px 20px;background:radial-gradient(ellipse at 50% 0%,#ffe2b5 0%,#fff0d9 15%,#f5f7fa 53%),#f5f7fa}
.auth-page:before{content:"";position:absolute;z-index:-1;top:0;left:0;right:0;height:190px;background:linear-gradient(180deg,#fd630130,transparent);pointer-events:none}
.auth-page:after{content:"";position:absolute;z-index:-1;top:-105px;left:50%;width:min(680px,100vw);height:220px;transform:translateX(-50%);background:radial-gradient(ellipse,#fd63012a 0%,transparent 72%);pointer-events:none}
.login-card{position:relative;z-index:1;display:block;width:min(100%,470px);padding:29px 42px 24px;border:1px solid #e4e9ef;border-top:4px solid #fd6301;border-radius:19px;background:#fff;box-shadow:0 22px 65px #172d4715,0 3px 12px #172d4708}
.login-logo{display:block;width:min(275px,90%);height:auto;object-fit:contain;margin:0 auto 21px;border:0;border-radius:0;box-shadow:none;filter:drop-shadow(0 5px 8px #fd630120)}
.login-copy{display:block;text-align:center;margin:0 0 26px;padding:0;background:transparent;border-radius:0;overflow:visible}
.login-copy:after{display:none}
.kicker{color:#fd6301;font-size:9px;letter-spacing:1.65px;margin:0 0 11px}
.login-copy h1{font-size:30px;line-height:1.22;letter-spacing:-1.2px;color:#11213a;margin:0 0 9px}
.subcopy{max-width:none;color:#79879a;font-size:12px;line-height:1.5}
.login-card form{display:block;padding:0}
.login-card form label{font-size:11px;color:#344258;margin-bottom:8px}
.field{height:49px;border:1px solid #dfe5ed;border-radius:7px;background:#fbfcfe;padding:0 13px;gap:10px}
.field:focus-within{border-color:#8ba6c5;box-shadow:0 0 0 3px #1c4b8110;background:#fff}
.field input{font-size:11px}
.submit{height:48px;margin-top:2px;border-radius:7px;background:#0b2b56;font-size:12px;box-shadow:0 5px 14px #09265324}
.submit:hover{background:#123b70}
.direct-entry{display:block;width:100%;height:42px;margin-top:12px;border:1px solid #fd630155;border-radius:7px;background:#fff7f2;color:#a94400;font-size:11px}
.direct-entry:hover{border-color:#fd6301;background:#fff1e8;color:#a94400}
.evaluation-note{margin:8px 0 0;color:#929dab;font-size:9px}
.login-footer{display:flex;justify-content:space-between;margin:21px 0 0;padding-top:0;border-top:0;color:#9ba5b1;font-size:8px;letter-spacing:.5px}
.login-footer b{color:#fd6301}
.submit:focus-visible,.direct-entry:focus-visible,.reveal:focus-visible{outline:3px solid #fd6301;outline-offset:3px}
.forgot-password{display:block;margin:10px auto 0;padding:4px 8px;border:0;background:transparent;color:#536a86;font:600 10px 'DM Sans',sans-serif;cursor:pointer}.forgot-password:hover,.back-login:hover{text-decoration:underline;color:#a94400}.back-login{display:block;margin:12px auto 0;padding:7px;border:0;background:transparent;color:#536a86;font:600 10px 'DM Sans',sans-serif;cursor:pointer}
.password-link{padding:7px 9px;border:1px solid #dfe5ec;border-radius:5px;background:#fff;color:#435671;font:600 9px 'DM Sans',sans-serif;cursor:pointer}.password-link:hover{border-color:#fd6301;color:#a94400}
@media(max-width:720px){.auth-page{padding:22px 15px}.login-card{width:min(100%,470px);padding:25px 25px 20px;border-radius:15px}.login-logo{width:min(255px,90%);margin-bottom:18px}.login-copy{margin-bottom:23px}.login-copy h1{font-size:27px}}
@media(max-width:390px){.login-card{padding:23px 20px 19px}.login-logo{width:min(235px,90%)}.login-copy h1{font-size:25px}.subcopy{font-size:11px}.login-footer{font-size:8px}}
:root{--brand-primary:#0b2b56;--brand-secondary:#fd6301}
.login-card{border-top-color:var(--brand-secondary)}
.kicker{color:var(--brand-secondary)}
.submit{background:var(--brand-primary)}
.submit:hover{filter:brightness(1.16)}

/* Fundo azul texturizado da página de acesso. */
.auth-page{
  background:
    radial-gradient(ellipse at 50% 48%,#17477b 0%,#103565 42%,#0a2448 100%);
}
.auth-page:before{
  top:0;
  height:100%;
  background:
    repeating-radial-gradient(circle at 17% 47%,transparent 0 43px,#b7d8ff16 44px 45px,transparent 46px 78px),
    linear-gradient(135deg,#91c6ff0a,transparent 58%);
  opacity:.9;
}
.auth-page:after{
  top:0;
  left:0;
  width:100%;
  height:100%;
  transform:none;
  background:
    repeating-radial-gradient(circle at 88% 53%,transparent 0 58px,#b7d8ff13 59px 60px,transparent 61px 102px),
    radial-gradient(ellipse at 50% 0%,#74b6ff18,transparent 56%);
}
 .employee-list { margin-top: 20px; }
.employee-table { overflow: hidden; border: 1px solid #e3e9f1; border-radius: 16px; background: #fff; }
.employee-row { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 16px 20px; border-bottom: 1px solid #edf0f5; }
.employee-row:last-child { border-bottom: 0; }
.employee-row div { display: grid; gap: 5px; min-width: 0; }
.employee-row small { color: #68758a; overflow-wrap: anywhere; }
.employee-row button { flex: 0 0 auto; border: 1px solid #d9e2ef; border-radius: 9px; background: #f8fafc; color: #16345f; padding: 9px 12px; font: inherit; cursor: pointer; }
.employee-table h2 { margin: 18px 20px 8px; color: #17365f; font-size: 1.05rem; }
.employee-table > p { margin: 0 20px 10px; color: #68758a; }
.employee-row select { margin-right: 8px; border: 1px solid #d9e2ef; border-radius: 8px; padding: 8px; font: inherit; color: #16345f; background: #fff; }
.permission-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 8px; margin: 8px 0 18px; }
.permission-grid label { display: flex; align-items: center; gap: 9px; padding: 10px 12px; border: 1px solid #e3e9f1; border-radius: 10px; color: #34445a; }
.module-note { color: #68758a; font-size: 13px; margin: 14px 2px; }
.brand-settings-fields h2{width:100%;margin:8px 0 2px;color:#17365f;font:700 15px Manrope,sans-serif}
.brand-settings>form{grid-column:1/-1}
.company-profile-grid{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}
.company-profile-grid label{display:flex;flex-direction:column;min-width:0}
.company-profile-grid .profile-wide{grid-column:1/-1}
.company-profile-grid input,.company-profile-grid select{width:100%;height:40px;margin:0 0 14px;padding:0 11px;border:1px solid #dfe5ec;border-radius:5px;background:#fff;color:#27384f;font:11px 'DM Sans',sans-serif;outline:none}
.company-profile-grid input:focus,.company-profile-grid select:focus{border-color:#95abc5}
.company-profile-grid input[readonly]{background:#f4f6f9;color:#6c7889}
@media (max-width: 640px) { .employee-row { align-items: flex-start; flex-direction: column; }.company-profile-grid{grid-template-columns:1fr}.company-profile-grid .profile-wide{grid-column:auto} }

/* Branded processing screen, shown for active API requests. */
.processing-overlay{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:24px;background:#f3f5f8;animation:processing-appear .18s ease-out}
.processing-content{width:min(100%,320px);display:flex;flex-direction:column;align-items:center}
.processing-logo{width:100%;height:160px;display:grid;place-items:center;padding:18px 25px;background:#fff;border-radius:16px;box-shadow:0 14px 40px #1828400d}
.processing-logo img{display:block;width:100%;max-height:100%;object-fit:contain}
.processing-label{margin-top:10px;color:#071946;font-size:10px;font-weight:700;letter-spacing:1.4px}
.processing-progress{position:relative;width:38px;height:3px;margin-top:10px;overflow:hidden;border-radius:4px;background:#fd630133}
.processing-progress i{position:absolute;inset:0 auto 0 0;width:45%;border-radius:inherit;background:#fd6301;animation:processing-sweep 1s ease-in-out infinite alternate}
@keyframes processing-sweep{from{transform:translateX(0)}to{transform:translateX(125%)}}
@keyframes processing-appear{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.processing-overlay{animation:none}.processing-progress i{animation:none;width:100%}}
.avatar-brand{overflow:hidden;border-radius:7px;background:#fff;padding:3px}.avatar-brand img{display:block;width:100%;height:100%;object-fit:contain}
