/* Consolidated web batch. Official assets and existing home tokens/components. */
@font-face{font-family:Poppins;src:url('/static/brand/Poppins-Regular.ttf') format('truetype');font-style:normal;font-weight:100 500;font-display:swap}
@font-face{font-family:Poppins;src:url('/static/brand/Poppins-SemiBold.ttf') format('truetype');font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:Poppins;src:url('/static/brand/Poppins-Bold.ttf') format('truetype');font-style:normal;font-weight:700 900;font-display:swap}
.compact-auth{display:grid!important;place-items:center;min-height:100dvh;margin:0;padding:20px!important;box-sizing:border-box;background:linear-gradient(135deg,#C7C4D9 0%,#F3E9DF 50%,#F3E9DF 100%)!important;font-family:var(--font-main)}
.compact-auth main.login-box.public-login-card{display:block;width:min(420px,100%);max-width:420px;margin:0;padding:24px 28px;border-radius:22px;box-shadow:var(--soft);box-sizing:border-box}
.compact-auth .auth-brand{display:grid;height:auto;place-items:center;margin:0;padding:0;border:0}
.compact-auth .auth-brand img,.compact-auth .auth-brand-client .brand-login{display:block;width:220px;max-width:100%;height:88px;object-fit:contain;margin:0;transform:none}
.compact-auth .auth-signature{font:400 .88rem/1.5 var(--font-main);text-align:center;margin:4px auto 20px;max-width:330px;color:var(--ink)}
.compact-auth .auth-step{display:block}.compact-auth [hidden],.admin-page [hidden]{display:none!important}
.compact-auth .public-login-card form{display:grid;gap:0}
.compact-auth .public-login-card form>label:not(.remember-email){font:500 .88rem/1.4 var(--font-main);margin:0 0 6px}
.compact-auth .public-login-card input:not([type=checkbox]){box-sizing:border-box;min-height:46px;height:46px;margin:0 0 14px;padding:10px 12px;border:1px solid #8D9099;border-radius:11px;background:var(--paper);color:var(--ink);font:400 1rem/1.4 var(--font-main)}
.compact-auth .public-login-card .password-field input{padding-right:52px;margin:0}
.compact-auth .password-field{margin:0 0 14px}
.compact-auth .public-login-card .remember-email{display:flex;align-items:center;gap:9px;margin:0;font:400 .85rem/1.4 var(--font-main);min-height:32px}
.compact-auth .remember-email input{width:19px;height:19px;min-height:19px;margin:0}
.compact-auth .public-login-card .auth-primary{min-height:46px;height:auto;margin:14px 0 0;padding:10px 14px;border-radius:11px;background:var(--blue-breeze)!important;border-color:var(--blue-breeze)!important;color:#263342!important;font:600 1rem/1.4 var(--font-main);box-shadow:var(--soft)}
.compact-auth .public-login-card .login-help,.compact-auth .public-login-card .login-legal{margin:12px 0 0;text-align:center;font:500 .85rem/1.4 var(--font-main)}
.compact-auth .public-login-card .login-legal{margin-top:9px}
.compact-auth .public-login-card a{font:inherit}
.compact-auth .password-visibility,.admin-page .password-visibility{position:absolute;inset:1px 1px auto auto;display:grid;place-items:center;width:44px;min-width:44px;height:44px;min-height:44px;padding:0;background:transparent;border:0;color:var(--ink);border-radius:10px}
.compact-auth input:-webkit-autofill{-webkit-text-fill-color:var(--ink);-webkit-box-shadow:0 0 0 1000px #FAFAF8 inset;font-family:var(--font-main)}
.compact-auth:has(#factor-step:not([hidden])) .auth-signature{font-size:.78rem;margin-bottom:14px}
.compact-auth #factor-title{font:600 1.35rem/1.3 var(--font-main);margin:0 0 12px;text-align:center}
.compact-auth .auth-instruction{font:400 .9rem/1.45 var(--font-main);margin:0 0 10px;text-align:center}
.compact-auth .totp-field{height:48px;min-height:48px;margin:0 0 4px}.compact-auth .totp-slots{gap:8px}.compact-auth .totp-slots span{border-radius:10px;font-size:1.2rem}
.compact-auth .public-login-card .totp-field>input{height:100%;margin:0}
.compact-auth #back-to-login{display:block;margin:12px auto 0;min-height:44px;font:500 .85rem/1.4 var(--font-main)}
body.admin-page{background:var(--nexa-home-background);background-attachment:fixed;font-family:var(--font-main)}
.admin-page.has-admin-sidebar{--admin-sidebar-width:266px}
.admin-page .admin-sidebar{inset:22px auto 22px 22px;width:222px;height:calc(100dvh - 44px);padding:14px 12px;border:1px solid rgba(230,231,235,.86);border-radius:34px;background:rgba(250,250,248,.82);box-shadow:0 22px 70px rgba(75,79,94,.10);backdrop-filter:blur(18px)}
.admin-sidebar .admin-sidebar-brand{display:flex!important;flex-direction:column;align-items:center;min-height:0!important;padding:0 4px 10px!important;gap:4px}
.admin-sidebar .admin-brand-full{width:196px;height:auto;margin:0;object-fit:contain}.admin-sidebar-brand strong{font-size:.75rem;text-transform:none;letter-spacing:0}
.admin-sidebar nav{display:flex;flex-direction:column;gap:3px;min-height:0;overflow-y:auto;padding-top:0;flex:1}
.admin-sidebar nav a{padding:8px 10px;min-height:44px;border-radius:15px;font:600 .82rem/1.2 var(--font-main)}
.admin-sidebar-footer{flex-shrink:0}.admin-sidebar a[aria-current=page]{background:#E7E4F2;border-color:#C7C4D9}
.admin-page .admin-shell-header{min-height:72px;padding-top:12px;padding-bottom:12px;background:transparent;border:0;box-shadow:none}
.admin-page .admin-shell-top{min-height:48px;justify-content:flex-end}.admin-shell-account{position:relative;display:flex;align-items:center;gap:12px}
.admin-page.has-admin-sidebar main.admin-shell{width:calc(100% - var(--admin-sidebar-width) - 48px);max-width:1280px;margin:0 24px 0 var(--admin-sidebar-width);padding:8px 0 36px}
.admin-page-heading{margin:0 0 22px!important;padding:0!important}.admin-page-heading h1{font-size:1.65rem!important;font-weight:600}
.admin-page .admin-item-dashboard{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 26px}
.admin-metric,.admin-page .admin-profile-card{border:1px solid rgba(199,196,217,.45);border-radius:19px;background:rgba(255,255,255,.9);box-shadow:0 12px 34px rgba(75,79,94,.08)}
.admin-metric{display:grid;grid-template-columns:46px minmax(0,1fr);grid-template-rows:1fr 1fr;min-height:130.36px;box-sizing:border-box;gap:5px 10px;padding:18px 14px;color:var(--ink);text-decoration:none}
.admin-metric .home-round-icon{grid-row:1/3;width:44px;height:44px;margin:0;align-self:center}.admin-metric small{font-size:.82rem;align-self:end}.admin-metric strong{font-size:1.7rem;line-height:1.3}
.admin-overview-actions{display:block!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}.admin-overview-actions h2{font-size:1.2rem;margin:0 0 14px}.admin-quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.admin-page .admin-quick-grid>a{display:flex;min-height:130px;padding:18px 12px;flex-direction:column;align-items:center;justify-content:center;text-align:center;text-decoration:none;color:var(--ink);border:1px solid rgba(199,196,217,.45);border-radius:19px;background:rgba(255,255,255,.9);box-shadow:0 12px 34px rgba(75,79,94,.08)}
.admin-quick-grid .home-round-icon{width:48px;height:48px;margin:0 0 10px}.admin-quick-grid strong{font-size:.9rem}
.admin-avatar-button{display:grid;place-items:center;padding:0;width:44px;height:44px;border:1px solid var(--lav);border-radius:50%;background:#E7E4F2;cursor:pointer}.admin-avatar{display:grid;place-items:center;width:42px;height:42px;overflow:hidden;border-radius:50%;color:var(--ink);font-weight:600}.admin-avatar img,.profile-photo img{width:100%;height:100%;object-fit:cover}
.admin-account-popover{position:absolute;right:0;top:54px;z-index:50;width:210px;padding:12px;border:1px solid var(--line);border-radius:15px;background:var(--paper);box-shadow:var(--shadow)}
.admin-account-popover strong{display:block;padding:7px 9px;overflow-wrap:anywhere}.admin-account-popover a,.admin-account-popover button{display:block;width:100%;text-align:left;box-sizing:border-box;padding:10px;border:0;border-radius:9px;background:transparent;color:var(--ink);font:500 .9rem/1.4 var(--font-main);text-decoration:none}
.admin-profile-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(260px,1fr);gap:18px}.admin-page .admin-profile-card{padding:22px}.admin-profile-card h2{font-size:1.12rem;margin:0 0 18px}.admin-profile-card label{display:block;font-size:.88rem;margin-bottom:6px}.admin-profile-card input{box-sizing:border-box;width:100%;min-height:46px;font:400 1rem var(--font-main)}
.profile-photo-row{display:flex;align-items:center;gap:18px;margin:0 0 22px}.profile-photo{display:grid;place-items:center;flex-shrink:0;width:72px;height:72px;overflow:hidden;border-radius:50%;background:#E7E4F2;font-size:1.4rem}.profile-photo-actions{display:flex;gap:8px}.profile-photo-actions button{min-height:44px}.admin-profile-card dl{margin:18px 0}.admin-profile-card dl>div{display:block;margin:0 0 14px}.admin-profile-card dt{font-size:.78rem;color:var(--ink)}.admin-profile-card dd{margin:3px 0 0;overflow-wrap:anywhere}.profile-save{min-height:46px;background:var(--success);color:#263342;border-color:var(--success)}.profile-save:disabled{opacity:.5;cursor:not-allowed}
.admin-security-actions{display:grid;align-content:start;gap:14px}.admin-security-action{display:flex;align-items:center;gap:14px;text-align:left;padding:18px;border:1px solid rgba(199,196,217,.45);border-radius:19px;background:rgba(255,255,255,.9);box-shadow:var(--soft);color:var(--ink);font-family:var(--font-main)}.admin-security-action .home-round-icon{width:48px;height:48px;margin:0;flex-shrink:0}.admin-security-action strong,.admin-security-action small{display:block}.admin-security-action small{margin-top:5px;font-size:.8rem}
.admin-security-panel h2{font-size:1.3rem;margin:0 0 16px}.admin-security-panel p{font-size:.88rem;line-height:1.5}.admin-security-panel label{display:block;margin:14px 0 6px;font-size:.88rem}.admin-security-panel input{box-sizing:border-box;width:100%;height:46px;font:400 1rem var(--font-main)}.admin-security-panel .password-field input{padding-right:50px}.dialog-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.dialog-actions button{min-height:44px}.profile-status{font-size:.85rem;line-height:1.45;min-height:1.45em}.admin-page :is(a,button,input):focus-visible{outline:3px solid #676988;outline-offset:3px}
.admin-page.admin-sidebar-collapsed{--admin-sidebar-width:110px}.admin-page.admin-sidebar-collapsed .admin-sidebar{width:72px;padding-inline:8px}.admin-sidebar-collapsed .admin-brand-full{display:none}.admin-sidebar-collapsed .admin-brand-compact{display:block;width:40px;height:40px}
@media(max-width:1100px){.admin-page.has-admin-sidebar{--admin-sidebar-width:0px}.admin-page.has-admin-sidebar main.admin-shell{width:calc(100% - 40px);margin:0 20px}.admin-page .admin-item-dashboard{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-page .admin-sidebar{z-index:30}.admin-page .admin-sidebar-toggle{position:fixed;top:20px;left:20px;transform:none}.admin-page .admin-shell-header{padding-left:76px}.admin-sidebar-open::after{pointer-events:none}}
@media(max-width:620px){.compact-auth{padding:14px!important}.compact-auth main.login-box.public-login-card{padding:22px 20px}.admin-profile-layout{grid-template-columns:1fr}.admin-quick-grid{grid-template-columns:1fr}.admin-page .admin-item-dashboard{gap:10px}.admin-metric{grid-template-columns:1fr;padding:14px;grid-template-rows:44px auto auto;min-height:167.19px}.admin-metric .home-round-icon{grid-row:auto}.admin-metric strong{font-size:1.5rem}.admin-page .admin-shell-header{padding-right:20px}.admin-page .admin-profile-card{padding:18px}}
/* Reset legacy form/header rules with higher specificity on these surfaces only. */
body.compact-auth main.public-login-card form>label:not(.remember-email){margin:0 0 6px!important}
body.compact-auth main.public-login-card .remember-email{margin:0!important;min-height:32px;font:400 .85rem/1.4 var(--font-main)!important}
body.compact-auth main.public-login-card .remember-email input{width:20px;height:20px;min-height:20px;min-width:20px;padding:0;border-radius:5px}
body.compact-auth main.public-login-card .auth-signature{padding:0;max-width:330px;width:auto!important;font:400 .88rem/1.5 var(--font-main)!important;margin:4px auto 18px!important}
body.compact-auth main.public-login-card .login-help,body.compact-auth main.public-login-card .login-legal{padding:0;line-height:1.4}
.admin-page.has-admin-sidebar .admin-shell-header,.admin-page.has-admin-sidebar.admin-sidebar-collapsed .admin-shell-header{width:auto;margin:0 24px 0 var(--admin-sidebar-width);padding:12px 0;box-sizing:border-box}
.admin-page .admin-shell-top{display:flex;align-items:center;justify-content:flex-end;gap:12px;width:100%;padding:0}
.admin-page .admin-shell-actions{display:flex;align-items:center;gap:12px}
.admin-page .admin-shell-account{display:flex;flex-direction:row;align-items:center;gap:12px}
.admin-page .admin-avatar-button{display:grid;width:44px;min-width:44px;height:44px;padding:0;border-radius:50%;place-items:center;box-sizing:border-box}
.admin-page .admin-avatar-button .admin-avatar{display:grid!important;width:42px;height:42px;min-width:42px;padding:0;margin:0;border-radius:50%}
.admin-page .admin-shell-account .admin-account-popover{display:block}.admin-page .admin-shell-account .admin-account-popover[hidden]{display:none!important}

.admin-page .admin-profile-card dl>div{padding:0 0 12px;margin:0 0 12px}.admin-page .admin-profile-card dl{margin:18px 0}.admin-page .admin-profile-card label{font-weight:500}.admin-page .admin-profile-card dd{font-size:.95rem}
.admin-page .admin-sidebar-collapsed nav,.admin-page.admin-sidebar-collapsed .admin-sidebar nav{overflow-y:auto;overflow-x:hidden}
@media(max-width:1100px){.admin-page.has-admin-sidebar .admin-shell-header{margin:0 20px 0 76px}.admin-page>.admin-sidebar-toggle{position:fixed;inset:14px auto auto 20px;margin:0;z-index:40}.admin-page .admin-sidebar{inset:14px auto 14px 14px;height:calc(100dvh - 28px)}.admin-page.admin-sidebar-open>.admin-sidebar-toggle{left:calc(min(222px,88vw) - 36px)}}
body.compact-auth #credentials-step form label.remember-email{margin:0!important}
body.compact-auth main.login-box.public-login-card{border:1px solid rgba(199,196,217,.7)!important;background:rgba(250,250,248,.96)!important;box-shadow:var(--soft)!important}
body.compact-auth .auth-brand img,body.compact-auth .auth-brand-client .brand-login{width:260px;height:104px}
body.compact-auth:has(#factor-step:not([hidden])) main.public-login-card .auth-signature{font-size:.78rem!important;margin-bottom:12px!important}
.admin-page .admin-shell-top{flex-wrap:nowrap}.admin-page .admin-shell-account{width:auto;flex:0 0 auto}.admin-page .admin-shell-top>.admin-shell-account{width:auto}


.admin-page .admin-shell-header{position:relative;z-index:20}
body.compact-auth .auth-brand{width:100%;grid-template-columns:1fr!important;justify-items:center;align-items:center}
body.compact-auth .auth-brand img{grid-column:1/-1;justify-self:center}
body.compact-auth main.public-login-card input:not([type=checkbox]),.admin-page .admin-security-panel input{height:max(46px,calc(1.4em + 20px))}
body.compact-auth main.public-login-card .totp-field>input{height:100%}
body.compact-auth .password-field .password-visibility,.admin-page .password-field .password-visibility{top:50%;bottom:auto;transform:translateY(-50%)}

/* Complementary administration review: shared shell and inline security. */
.admin-page .admin-shell-top{max-width:none;margin:0}
.admin-page .admin-account-popover{max-width:calc(100vw - 40px);box-sizing:border-box}
.admin-page .admin-shell-account .admin-account-popover :is(a,button){display:flex;align-items:center;gap:10px;width:100%;min-height:44px;margin:0;padding:10px;border:0;border-radius:9px;box-shadow:none;background:transparent;color:var(--ink);font:500 .9rem/1.4 var(--font-main);text-align:left;text-decoration:none;transform:none}
.admin-page .admin-shell-account .admin-account-popover :is(a,button):is(:hover,:focus-visible){background:#E7E4F2;color:var(--ink)}
.admin-account-popover .nexa-icon{flex-shrink:0}
.admin-profile-layout{align-items:start}
.admin-security-card{min-width:0;border:1px solid rgba(199,196,217,.45);border-radius:19px;background:rgba(255,255,255,.9);box-shadow:var(--soft)}
.admin-security-card h2{margin:0;font:inherit}
.admin-security-card .admin-security-action{width:100%;min-height:86px;border:0;box-shadow:none;background:transparent;border-radius:19px;font-size:1rem;box-sizing:border-box}
.admin-security-action>span:nth-child(2){flex:1;min-width:0}
.security-chevron{display:grid;place-items:center;flex-shrink:0}
.admin-security-panel{padding:0 18px 18px;min-width:0;overflow-wrap:anywhere}
.admin-security-panel .password-field{position:relative}
.admin-security-panel .security-status{min-height:1.45em;font-size:.85rem;line-height:1.45}
.admin-security-panel small{font-size:.78rem}
.admin-security-panel .recovery-code-list{columns:2;padding-left:20px}
.admin-page .admin-sidebar-brand{padding-bottom:6px!important}
.admin-page .admin-sidebar-brand .admin-brand-full{width:132px;height:auto;max-width:100%;object-fit:contain}
.admin-page .admin-sidebar nav{gap:1px}
.admin-page .admin-sidebar nav a{min-height:44px}
.admin-sidebar-footer{gap:4px;margin-top:6px;padding-top:6px}
@media(min-width:1101px){.admin-page.admin-sidebar-collapsed{--admin-sidebar-width:110px!important}}

/* Grow the shared desktop rail with text size; retain the collapsed/mobile rail. */
@media(min-width:1101px){.admin-page.has-admin-sidebar:not(.admin-sidebar-collapsed){--admin-sidebar-width:calc(max(222px,13rem) + 44px)}.admin-page:not(.admin-sidebar-collapsed) .admin-sidebar{width:max(222px,13rem)}}
.admin-nav-label{overflow-wrap:normal;word-break:normal}
