:root{color:#382b2e;font-synthesis:none;text-rendering:optimizelegibility;--wine:#6f3f4b;--wine-deep:#57303a;--rose:#d79aa6;--cream:#fffaf6;--cocoa:#382b2e;--muted:#75686b;--border:#eaded9;--success:#38725a;--shadow:0 24px 65px #4f2b341f;background:#fffaf6;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body{min-width:320px;min-height:100%}body{min-height:100vh;margin:0;overflow-x:hidden}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible{outline-offset:3px;outline:3px solid #6f3f4b4d}button:disabled,input:disabled{cursor:not-allowed;opacity:.62}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.eyebrow{color:var(--wine);letter-spacing:.13em;text-transform:uppercase;margin:0 0 .7rem;font-size:.75rem;font-weight:800}.login-page{background:var(--cream);grid-template-columns:minmax(320px,.92fr) minmax(420px,1.08fr);min-height:100vh;display:grid}.login-introduction{color:#fff;background:radial-gradient(circle at 90% 8%, #ffffff24 0 8rem, transparent 8.1rem), radial-gradient(circle at 12% 92%, #d79aa638 0 12rem, transparent 12.1rem), linear-gradient(145deg, #81515c 0%, var(--wine) 48%, #4d2932 100%);flex-direction:column;justify-content:space-between;min-height:100vh;padding:clamp(2rem,5vw,4.5rem);display:flex;position:relative;overflow:hidden}.login-introduction:after{content:"";border:1px solid #ffffff29;border-radius:50%;width:15rem;height:15rem;position:absolute;bottom:14%;right:-4rem}.login-brand,.app-brand{letter-spacing:-.02em;align-items:center;gap:.8rem;font-weight:750;display:flex}.brand-mark{color:#fff;background:var(--wine);letter-spacing:.04em;border-radius:.8rem;place-items:center;width:2.35rem;height:2.35rem;font-size:.75rem;display:inline-grid}.brand-mark-large{color:var(--wine);background:#fff}.intro-copy{z-index:1;max-width:37rem;margin:auto 0;position:relative}.intro-copy .eyebrow{color:#f1cbd2}.intro-copy h1{letter-spacing:-.045em;max-width:11ch;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.5rem,5vw,5rem);font-weight:500;line-height:.98}.intro-copy>p:last-child{color:#fffc;max-width:34rem;margin:1.8rem 0 0;font-size:1.02rem;line-height:1.75}.intro-footnote{color:#fff9;margin:0;font-size:.82rem}.login-panel{place-items:center;min-height:100vh;padding:clamp(1.5rem,7vw,7rem);display:grid}.login-card{width:min(100%,29rem)}.login-card h2,.module-page h1{color:var(--cocoa);letter-spacing:-.035em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,4vw,3rem);font-weight:500}.form-description{color:var(--muted);margin:.75rem 0 0;line-height:1.6}.configuration-notice,.inline-message{color:#68333e;background:#fff1f3;border:1px solid #e8c8cf;border-radius:.9rem;margin-top:1.5rem;padding:1rem 1.1rem;font-size:.88rem;line-height:1.5}.configuration-notice p{margin:.5rem 0}.configuration-notice ul{margin:.5rem 0;padding-left:1.3rem}code{color:#5d303a;background:#6f3f4b14;border-radius:.3rem;padding:.1rem .3rem;font-family:Cascadia Code,Consolas,monospace;font-size:.88em}.login-form{gap:1.2rem;margin-top:2rem;display:grid}.field-group{gap:.5rem;display:grid}.field-group label{color:#4c3a3e;font-size:.9rem;font-weight:700}.field-group input{width:100%;min-height:3.15rem;color:var(--cocoa);background:#fff;border:1px solid #d8c9c5;border-radius:.75rem;padding:.75rem .9rem;transition:border-color .16s,box-shadow .16s}.field-group input:hover:not(:disabled){border-color:#b99da3}.field-group input:focus{border-color:var(--wine);box-shadow:0 0 0 4px #6f3f4b14}.password-field{position:relative}.password-field input{padding-right:5.7rem}.password-toggle{color:var(--wine);cursor:pointer;background:0 0;border:0;padding:.35rem .45rem;font-size:.82rem;font-weight:750;position:absolute;top:50%;right:.7rem;transform:translateY(-50%)}.primary-button,.secondary-button,.menu-button{cursor:pointer;border:0;border-radius:.75rem;font-weight:750}.primary-button{color:#fff;background:var(--wine);justify-content:center;align-items:center;gap:.7rem;min-height:3.2rem;padding:.8rem 1rem;transition:background .16s,transform .16s;display:inline-flex;box-shadow:0 10px 24px #6f3f4b33}.primary-button:hover:not(:disabled){background:var(--wine-deep);transform:translateY(-1px)}.button-spinner,.spinner{border:2px solid;border-right-color:#0000;border-radius:50%;animation:.7s linear infinite spin;display:inline-block}.button-spinner{width:1rem;height:1rem}.loading-screen{min-height:100vh;color:var(--muted);background:var(--cream);place-content:center;justify-items:center;gap:.8rem;display:grid}.spinner{width:2rem;height:2rem;color:var(--wine)}@keyframes spin{to{transform:rotate(360deg)}}.app-layout{background:#fbf7f4;width:100%;min-height:100vh;overflow-x:hidden}.app-header{z-index:50;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff0;justify-content:space-between;align-items:center;gap:1.25rem;min-height:4.5rem;padding:0 clamp(1rem,3vw,2.5rem);display:flex;position:sticky;top:0}.app-brand{color:#49373b;text-decoration:none}.header-actions{align-items:center;gap:1rem;display:flex}.session-status{color:var(--success);align-items:center;gap:.5rem;font-size:.82rem;font-weight:750;display:inline-flex}.status-dot{background:#4a9876;border-radius:50%;width:.5rem;height:.5rem;box-shadow:0 0 0 4px #4a98761f}.secondary-button{min-height:2.5rem;color:var(--wine);background:#fff;border:1px solid #d8c9c5;padding:.6rem 1rem}.secondary-button:hover:not(:disabled){background:#faf3f1}.menu-button{width:2.75rem;height:2.75rem;color:var(--wine);background:#f7eeee;font-size:1.25rem;display:none}.desktop-navigation-shell{z-index:40;border-bottom:1px solid var(--border);background:#fff;width:100%;position:sticky;top:4.5rem}.desktop-navigation{flex-wrap:wrap;align-items:center;gap:.25rem;width:100%;min-height:3.75rem;padding:.45rem clamp(1rem,3vw,2.5rem);display:flex}.nav-item{color:#57494c;white-space:nowrap;background:0 0;border:0;border-radius:.65rem;justify-content:space-between;align-items:center;gap:.65rem;min-height:2.85rem;padding:.65rem .9rem;font-size:.94rem;font-weight:650;text-decoration:none;display:flex}.nav-item[aria-current=page]{color:var(--wine);box-shadow:inset 0 -3px 0 var(--wine);background:#f8edef}.desktop-nav-item:hover{color:var(--wine);background:#fbf3f3}.app-content{width:100%;min-width:0;padding:clamp(2rem,5vw,4.5rem)}.app-content>.inline-message{margin:0 0 1rem}.module-page{width:100%}.module-status,.module-description{max-width:48rem;color:var(--muted);line-height:1.65}.module-status{margin:1rem 0 0;font-size:.95rem}.module-description{margin:1.25rem 0 0;font-size:.92rem}.mobile-navigation,.navigation-backdrop{display:none}@media (width<=800px){.login-page{grid-template-columns:1fr}.login-introduction{min-height:auto;padding:1.5rem}.intro-copy{margin:4rem 0 2rem}.intro-copy h1{max-width:14ch;font-size:clamp(2.25rem,10vw,3.5rem)}.intro-footnote{display:none}.login-panel{min-height:auto;padding:3rem 1.5rem 4rem}}@media (width<=768px){.app-header{min-height:4.25rem;padding:0 1rem}.menu-button{flex:none;place-items:center;display:inline-grid}.desktop-navigation-shell{display:none}.mobile-navigation{z-index:70;border-right:1px solid var(--border);width:min(21rem,88vw);height:100dvh;box-shadow:var(--shadow);background:#fff;flex-direction:column;padding:1.15rem;display:flex;position:fixed;top:0;left:0;overflow-y:auto}.mobile-navigation-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.1rem;padding:.35rem .25rem 1rem;display:flex}.mobile-navigation-eyebrow{color:#9a898d;letter-spacing:.1em;text-transform:uppercase;margin:0 0 .25rem;font-size:.72rem;font-weight:800}.mobile-navigation-title{color:#49373b;margin:0;font-weight:750}.mobile-menu-close{width:2.75rem;height:2.75rem;color:var(--wine);cursor:pointer;background:#f7eeee;border:0;border-radius:.75rem;flex:none;place-items:center;font-size:1.6rem;display:grid}.mobile-navigation nav{gap:.25rem;display:grid}.mobile-nav-item{text-align:left;width:100%;min-height:3.25rem;padding-inline:1rem}.navigation-backdrop{z-index:60;background:#34252952;border:0;display:block;position:fixed;inset:0}.app-content{padding:2.5rem 1.25rem}}@media (width<=480px){.app-brand>span:last-child{display:none}.session-status{font-size:0}.session-status:after{content:"Ativa";font-size:.78rem}.compact-button{padding-inline:.8rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
