


.check-row{display:flex;align-items:center;gap:8px;margin:8px 0 17px}.check-row input{width:auto;margin:0}.check-row label{font-weight:600}.access-list{display:grid;gap:10px;margin:8px 0 20px}.access-row{display:grid;grid-template-columns:minmax(220px,1fr) minmax(160px,.6fr);gap:14px;align-items:center;padding:13px 14px;border:1px solid var(--cor-borda);border-radius:10px;background:var(--cor-superficie-suave)}.access-row select{margin:0}.access-name{display:flex;align-items:center;gap:9px}.access-name input{width:auto;margin:0}
.summary{padding:16px}.summary strong{display:block;font-size:27px;color:var(--cor-destaque-texto)}.summary span{font-size:11px;color:var(--cor-texto-secundario)}
.auth-page{min-height:100vh;display:grid;place-items:center;padding:28px;background:linear-gradient(180deg,var(--cor-fundo),var(--cor-superficie-suave))}.auth-card{width:100%;max-width:440px;background:var(--cor-superficie);border-radius:14px;padding:32px;border:1px solid var(--cor-borda);box-shadow:var(--sombra-elevada)}.auth-logo{display:block;width:145px;max-height:145px;object-fit:contain;margin:0 auto 12px}.auth-title{text-align:center;margin:0;font-size:27px}.auth-subtitle{text-align:center;margin:7px 0 27px;color:var(--cor-texto-secundario);font-size:13px}.auth-card button{width:100%;padding:13px}.password-wrap{position:relative}.password-wrap input{padding-right:45px}.password-toggle{position:absolute;right:7px;top:11px;width:35px!important;height:35px;padding:0!important;background:transparent;color:var(--cor-texto-secundario)}.password-toggle:hover{background:var(--cor-fundo)}.auth-footer{text-align:center;color:var(--cor-texto-fraco);font-size:11px;margin-top:20px;line-height:1.5}
.auth-card-wide{max-width:560px}.auth-forgot{display:block;text-align:right;margin:-8px 0 15px;color:var(--cor-destaque-texto);font-size:12px;text-decoration:none}.auth-forgot:hover{text-decoration:underline}.auth-divider{display:flex;align-items:center;gap:10px;margin:18px 0 12px;color:var(--cor-texto-fraco);font-size:11px}.auth-divider:before,.auth-divider:after{content:"";height:1px;flex:1;background:var(--cor-superficie-hover)}.auth-create{display:flex;align-items:center;justify-content:center;width:100%;min-height:42px;border:1px solid var(--cor-destaque);border-radius:8px;color:var(--cor-destaque-texto);text-decoration:none;font-size:13px;font-weight:600;background:var(--cor-superficie);margin-top:12px}.auth-create:hover{background:var(--cor-destaque-suave)}
@media(max-width:820px){.access-row{grid-template-columns:1fr}}

/* Hub v0.2 — lançador de aplicativos com identidade Fazenda Cruzeiro */
body{background:var(--cor-superficie-suave)}

.main{margin:0 auto;padding:32px 28px 30px;max-width:1180px;width:100%;background:transparent;min-height:calc(100vh - 72px)}

.launcher{text-align:center;padding:6px 0 4px}.launcher h1{font-size:28px;margin:2px 0;color:var(--cor-texto)}.launcher-welcome{margin:21px 0 25px;color:var(--cor-texto-secundario);font-size:13px}
.launcher-grid{display:flex;align-items:flex-start;justify-content:center;gap:34px;flex-wrap:wrap;margin:0 auto;padding:4px 0 38px}.app-launcher{width:154px;text-decoration:none;color:var(--cor-texto);display:flex;flex-direction:column;align-items:center;gap:12px;position:relative}.app-icon{position:relative;width:138px;height:138px;border-radius:26px;background:linear-gradient(145deg,var(--cor-destaque),var(--cor-destaque-hover));color:var(--cor-sobre-destaque);display:grid;place-items:center;box-shadow:var(--sombra-elevada);transition:transform .18s ease,box-shadow .18s ease}.app-icon svg{width:62px;height:62px;fill:none;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round}.app-launcher:hover .app-icon{transform:translateY(-4px);box-shadow:var(--sombra-flutuante)}.app-launcher.dourado .app-icon{background:linear-gradient(145deg,var(--cor-marca-dourado-claro),var(--cor-marca-dourado-escuro));box-shadow:var(--sombra-elevada)}.app-launcher.azul .app-icon{background:linear-gradient(145deg,var(--cor-marca-oliva),var(--cor-destaque-hover));box-shadow:var(--sombra-elevada)}.app-name{font-size:14px;line-height:1.25;max-width:150px}.app-launcher.disabled{opacity:.56;cursor:default}.app-launcher.disabled .app-icon{box-shadow:none}.app-icon .selo-em-breve{right:-9px;top:-9px;background:var(--cor-superficie);border:1px solid var(--cor-borda)}.launcher-empty{padding:28px;color:var(--cor-texto-secundario)}

@media(max-width:820px){.main{padding:24px 16px}.launcher h1{font-size:23px}.launcher-grid{gap:26px 20px}.app-launcher{width:132px}.app-icon{width:116px;height:116px;border-radius:23px}.app-icon svg{width:52px;height:52px}}

/* Hub v0.3 — marca-d'água e administração no menu do usuário */
.launcher{position:relative;isolation:isolate;min-height:560px;padding-top:34px}
.launcher:before{content:"";position:absolute;z-index:0;left:50%;top:38px;width:min(690px,82vw);height:525px;transform:translateX(-50%);background:url("/tema-central/logo.png") center/contain no-repeat;opacity:.045;pointer-events:none;filter:grayscale(15%)}
.launcher>*{position:relative;z-index:1}.launcher h1{margin-top:0}.launcher-grid{padding-top:18px}.main>.system-footer{position:relative;z-index:1}

@media(max-width:820px){.launcher{padding-top:24px}.launcher:before{top:65px;width:92vw;height:430px;opacity:.04}}

/* Hub v0.4 — composição central refinada */
.launcher{min-height:590px;padding-top:24px;display:flex;flex-direction:column;align-items:center}.launcher:before{display:none}.watermark-brand{position:absolute!important;z-index:0!important;left:50%;top:74px;transform:translateX(-50%);width:min(650px,84vw);display:flex;flex-direction:column;align-items:center;pointer-events:none;opacity:.055}.watermark-brand img{display:block;width:min(470px,72vw);height:410px;object-fit:contain;margin-bottom:-30px}.watermark-brand strong{font-size:37px;line-height:1.05;color:var(--cor-destaque-texto);letter-spacing:-.02em}.watermark-brand span{font-size:17px;color:var(--cor-texto);margin-top:7px;letter-spacing:.08em;text-transform:uppercase}.launcher-welcome{margin:5px 0 42px;padding:10px 18px;border:1px solid var(--cor-destaque-borda);border-radius:999px;background:var(--cor-superficie);box-shadow:var(--sombra);color:var(--cor-destaque-texto-forte);font-size:15px;font-weight:650;line-height:1.35}.launcher-grid{width:100%;max-width:720px;justify-content:center;gap:42px;margin:0 auto;padding:8px 0 40px}.app-launcher{z-index:2}
@media(max-width:820px){.launcher{padding-top:18px;min-height:540px}.watermark-brand{top:82px;width:94vw}.watermark-brand img{width:82vw;height:340px;margin-bottom:-24px}.watermark-brand strong{font-size:26px}.watermark-brand span{font-size:12px}.launcher-welcome{margin:3px 0 34px;padding:9px 14px;font-size:14px}.launcher-grid{max-width:330px;gap:30px 20px}}

/* Hub v0.5 — correção do espaçamento vertical */
.launcher{min-height:680px}.watermark-brand{top:62px;width:min(620px,82vw)}.watermark-brand img{width:min(430px,68vw);height:325px;margin-bottom:12px}.watermark-brand strong{font-size:34px}.watermark-brand span{margin-top:8px}.launcher-welcome{margin-bottom:0}.launcher-grid{margin-top:118px;padding-top:0}
@media(max-width:820px){.launcher{min-height:650px}.watermark-brand{top:70px;width:94vw}.watermark-brand img{width:76vw;height:280px;margin-bottom:10px}.watermark-brand strong{font-size:25px}.watermark-brand span{margin-top:6px}.launcher-welcome{margin-bottom:0}.launcher-grid{margin-top:96px}}

/* Hub v0.6 — marca-d'água maior, mais visível e com melhor respiro */
.watermark-brand{top:46px;width:min(760px,88vw);opacity:1}
.watermark-brand img{width:min(570px,78vw);height:485px;margin-bottom:34px;opacity:.14}
.watermark-brand strong{font-size:40px;color:var(--cor-destaque-texto);opacity:.20}
.watermark-brand span{margin-top:9px;opacity:.22}
@media(max-width:820px){.launcher{min-height:720px}.watermark-brand{top:58px;width:96vw}.watermark-brand img{width:86vw;height:390px;margin-bottom:24px;opacity:.13}.watermark-brand strong{font-size:29px;opacity:.20}.watermark-brand span{font-size:13px;margin-top:8px;opacity:.22}}

/* Hub v0.7 — cadastro principal integrado e permissões por aplicativo */
.form-section-title{font-size:18px;margin:0 0 14px;color:var(--cor-destaque-texto)}
.access-title{margin-top:22px}
.integration-status{max-width:720px;margin-bottom:16px;border-color:var(--cor-destaque-borda);background:var(--cor-superficie-suave)}
.integration-status strong,.integration-status span{display:block}
.integration-status span{margin-top:5px;color:var(--cor-texto-secundario);font-size:12px;overflow-wrap:anywhere}
.user-access-table{padding:0}
.user-access-table .table{min-width:1100px}
.app-column{text-align:center!important;white-space:nowrap}
.permission-yes,.permission-no{display:block;font-size:12px;font-weight:700}
.permission-yes{color:var(--cor-sucesso)}.permission-no{color:var(--cor-texto-fraco)}
.app-column small{display:block;margin-top:3px;color:var(--cor-texto-secundario);font-size:9px}

.app-launcher{width:190px}
.app-name{width:190px;max-width:none;white-space:nowrap;text-align:center}
.launcher-grid{max-width:790px}
.app-launcher:is(button){border:0;background:transparent;padding:0;font-family:inherit;cursor:pointer}
.app-launcher.disabled:hover .app-icon{transform:none;box-shadow:var(--sombra-elevada)}
@media(max-width:820px){.launcher-grid{gap:30px 12px}.app-launcher{width:154px}.app-name{width:154px;font-size:12px}}

/* Central de notificações do Hub — TI/Admin */

/* Hub 1.1 — permissões internas dos aplicativos */
.access-row-with-modules{grid-template-columns:minmax(220px,1fr) minmax(160px,.6fr)}
.module-access-list{grid-column:1/-1;margin:0 0 2px 31px;padding:12px 14px;border-left:3px solid var(--cor-destaque-borda);background:var(--cor-superficie-suave);border-radius:0 9px 9px 0}
.module-access-list>strong{display:block;margin-bottom:9px;color:var(--cor-texto-secundario);font-size:10px;text-transform:uppercase;letter-spacing:.06em}
.module-access-item{display:flex;align-items:center;gap:8px;margin:7px 0;font-size:12px;font-weight:600;color:var(--cor-texto)}
.module-access-item input{width:auto;margin:0}
.module-access-item small{margin-left:auto;padding:3px 6px;border-radius:999px;background:var(--cor-superficie-realce);color:var(--cor-texto-secundario);font-size:8px;font-weight:800;letter-spacing:.04em}
.module-access-item.module-coming{opacity:.55}
@media(max-width:820px){.module-access-list{margin-left:0}}

/* Hub — recuperação central de senha */
.recovery-section button[type="submit"]{width:100%}.token-result{margin-bottom:18px;padding:18px;border:1px solid var(--cor-destaque-borda-forte);background:var(--cor-destaque-suave);border-radius:11px}.token-result strong{display:block;color:var(--cor-destaque-texto);margin-bottom:8px}.token-code{font:800 28px/1.1 Consolas,monospace;letter-spacing:.12em;color:var(--cor-destaque-texto-forte)}.token-expiry{display:block;margin-top:8px;color:var(--cor-texto-secundario);font-size:12px}.recovery-grid{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(360px,1.4fr);gap:18px}.recovery-grid .card{height:max-content}.pending-request{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid var(--cor-borda)}.pending-request:last-child{border-bottom:0}.pending-request small{display:block;color:var(--cor-texto-secundario);margin-top:3px}@media(max-width:820px){.recovery-grid{grid-template-columns:1fr}}

/* Hub — novidades da versão */

.release-notes-modal{position:relative;width:min(570px,calc(100vw - 28px));max-height:calc(100vh - 36px);overflow-x:hidden;overflow-y:auto;scrollbar-gutter:stable;padding:30px 32px 22px;background:var(--cor-superficie);border:1px solid var(--cor-destaque-borda);border-radius:18px;box-shadow:var(--sombra-flutuante);color:var(--cor-texto);animation:releaseNotesIn .2s ease both}
.release-notes-close{position:absolute;right:15px;top:14px;width:32px;height:32px;border:0;border-radius:50%;background:var(--cor-fundo);color:var(--cor-texto-secundario);font-size:22px;line-height:1;cursor:pointer}
.release-notes-close:hover{background:var(--cor-destaque-suave-hover);color:var(--cor-destaque-texto-forte)}
.release-notes-mark{width:48px;height:48px;display:grid;place-items:center;margin-bottom:16px;border-radius:14px;background:var(--cor-destaque-suave);color:var(--cor-destaque-hover)}
.release-notes-mark svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.release-notes-kicker{display:flex;align-items:center;min-height:22px;margin:0 0 5px;padding:3px 0 1px;color:var(--cor-destaque-texto);font-family:Arial,Helvetica,sans-serif;font-size:10px;font-weight:700;line-height:16px;letter-spacing:.1em;text-transform:uppercase;overflow:visible}
.release-notes-modal h2{margin:0;color:var(--cor-texto);font-size:24px;line-height:1.15}
.release-notes-intro{margin:9px 0 20px;color:var(--cor-texto-secundario);font-size:13px;line-height:1.55}
.release-notes-list{display:grid;gap:9px}
.release-note-item{display:grid;grid-template-columns:34px 1fr;gap:12px;align-items:start;padding:12px 13px;border:1px solid var(--cor-borda-suave);border-radius:11px;background:var(--cor-superficie)}
.release-note-item>span{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:var(--cor-destaque-suave);color:var(--cor-destaque-texto);font-size:10px;font-weight:800}
.release-note-item strong{display:block;margin:1px 0 3px;color:var(--cor-texto);font-size:13px}
.release-note-item p{margin:0;color:var(--cor-texto-secundario);font-size:11.5px;line-height:1.45}
.release-notes-ok{width:100%;margin-top:19px;padding:11px 16px;border:0;border-radius:9px;background:var(--cor-destaque);color:var(--cor-sobre-destaque);font:700 12px Arial,Helvetica,sans-serif;cursor:pointer}
.release-notes-ok:hover{background:var(--cor-destaque-hover)}
.release-notes-version{display:block;margin-top:10px;text-align:center;color:var(--cor-texto-fraco);font-size:9px}
@keyframes releaseNotesIn{from{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:none}}
@media(max-width:430px){.release-notes-modal{padding:25px 18px 18px;border-radius:15px}.release-notes-modal h2{font-size:21px}.release-note-item{grid-template-columns:30px 1fr;gap:9px;padding:11px}.release-note-item>span{width:27px;height:27px}}

/* Tema compartilhado Fazenda Cruzeiro */

.release-notes-kicker{display:block;min-height:18px;line-height:18px;padding:2px 0 1px;overflow:visible}

/* 0053 - tema noturno consolidado */

html[data-theme="noturno"] .auth-logo{content:url("logo-dark.png")!important}
html[data-theme="noturno"] .watermark-brand img{content:url("logo-dark.png")!important}

html[data-theme="noturno"] .module-access-item.module-coming{opacity:.8!important}

/* App sem acesso: continua esmaecido, mas o nome precisa ser legível */
html[data-theme="noturno"] .app-launcher.disabled{opacity:.85!important}
/* 0241: cada card na cor do seu app (tema.css: --cor-app-<codigo>); depois das cores antigas (dourado, azul), que ficam sem uso */
.app-launcher.com-app .app-icon{background:linear-gradient(145deg,var(--app,var(--cor-destaque)),var(--app-escuro,var(--cor-destaque-hover)))}
/* 0242: a marca Corporate (templates/marca_corporate.html), em curvas, na cor do tema (currentColor) */
.marca-corporate{display:block;width:auto;fill:currentColor;overflow:visible}
.casca-topo-marca .marca-corporate{height:42px;color:var(--cor-destaque-texto-forte)}
.casca-topo-marca:has(.marca-corporate){gap:24px}  /* 0243: o nome mais afastado do logo da fazenda */
.watermark-brand .marca-corporate{height:92px;margin-top:28px;color:var(--cor-destaque-texto);opacity:.2}  /* como o nome antigo da marca d'agua */
.auth-title.auth-marca{margin:22px 0 24px;line-height:0}
.auth-marca .marca-corporate{height:76px;margin:0 auto;color:var(--cor-destaque-texto-forte)}
@media(max-width:820px){.casca-topo-marca .marca-corporate{height:36px}.watermark-brand .marca-corporate{height:70px}.auth-marca .marca-corporate{height:64px}}
