/* Painel de Entregas. Paleta e fontes do guia (DESIGN.md); superfícies em vidro translúcido.
   denim, muoto e cinetype substituídas por Inter e JetBrains Mono. */
:root {
  --forest-ink: #09352e;
  --forest-ink-70: rgba(9, 53, 46, 0.7);
  --bone-white: #ffffff;
  --muted-sage: #77aa83;
  --slate-smoke: #5f6e6d;
  --charcoal-bark: #29211e;
  --moss: #85c093;
  --deep-fern: #007010;
  --emerald: #008023;

  --font-texto: 'Inter', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  --font-rotulo: 'JetBrains Mono', ui-monospace, 'SF Mono', Menlo, monospace;

  --vidro: rgba(255, 255, 255, 0.52);
  --vidro-forte: rgba(255, 255, 255, 0.68);
  --vidro-borda: rgba(255, 255, 255, 0.75);
  --vidro-sombra: 0 1px 0 rgba(255, 255, 255, 0.9) inset, 0 0 0 1px rgba(9, 53, 46, 0.06), 0 12px 40px -12px rgba(9, 53, 46, 0.18);
  --raio: 20px;
}

* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }

body {
  margin: 0;
  min-height: 100vh;
  color: var(--forest-ink);
  font: 400 15px/1.55 var(--font-texto);
  letter-spacing: -0.006em;
  font-feature-settings: "liga" 0, "cv11" 1;
  -webkit-font-smoothing: antialiased;
  background-color: #dfe6e2;
  /* manchas suaves de verde por trás do vidro */
  background-image:
    radial-gradient(48vw 40vw at 8% -6%, rgba(133, 192, 147, 0.55), transparent 62%),
    radial-gradient(42vw 36vw at 96% 12%, rgba(119, 170, 131, 0.38), transparent 60%),
    radial-gradient(52vw 40vw at 70% 104%, rgba(0, 128, 35, 0.16), transparent 62%),
    radial-gradient(36vw 30vw at 18% 78%, rgba(202, 211, 210, 0.9), transparent 64%),
    linear-gradient(180deg, #e7ece9 0%, #dde4e0 100%);
  background-attachment: fixed;
}

/* textura pontilhada leve, herança do guia */
body::before {
  content: ""; position: fixed; inset: 0; pointer-events: none; z-index: 0;
  background-image: radial-gradient(rgba(9, 53, 46, 0.09) 0.7px, transparent 0.7px);
  background-size: 18px 18px;
  -webkit-mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.7), transparent 75%);
  mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.7), transparent 75%);
}

.pagina { position: relative; z-index: 1; max-width: 1240px; margin: 0 auto; padding: 20px 32px 64px; }

a { color: var(--deep-fern); font-weight: 500; text-decoration: none; }
a:hover { text-decoration: underline; }
:focus-visible { outline: 2px solid var(--deep-fern); outline-offset: 3px; border-radius: 6px; }

h1, h2, h3 { margin: 0; font-weight: 600; letter-spacing: -0.02em; }
p { margin: 0; }

/* vidro */
.vidro {
  background: var(--vidro);
  -webkit-backdrop-filter: blur(22px) saturate(160%);
  backdrop-filter: blur(22px) saturate(160%);
  border: 1px solid var(--vidro-borda);
  border-radius: var(--raio);
  box-shadow: var(--vidro-sombra);
}
.vidro-forte { background: var(--vidro-forte); }

/* rótulos em mono */
.eixo, .rotulo, .sobretitulo, dt, .nota, .etiqueta, .selo, time, .nav a, .quem, .botao-texto, .rodape, .carimbo {
  font-family: var(--font-rotulo);
}
.eixo { font-size: 12px; font-weight: 500; color: var(--forest-ink-70); letter-spacing: 0; margin-bottom: 10px; display: flex; align-items: center; gap: 8px; }
.rotulo { display: block; font-size: 11px; font-weight: 500; text-transform: uppercase; letter-spacing: 0.14em; color: var(--slate-smoke); margin-bottom: 4px; }
.nota { font-size: 12px; color: var(--slate-smoke); line-height: 1.5; }
.secao { font-size: 22px; margin: 56px 0 20px; }

.selo, .etiqueta {
  display: inline-flex; align-items: center; gap: 6px;
  font-size: 10.5px; font-weight: 500; text-transform: uppercase; letter-spacing: 0.16em;
  padding: 4px 10px; border-radius: 999px; white-space: nowrap; align-self: flex-start;
  border: 1px solid rgba(9, 53, 46, 0.18); background: rgba(255, 255, 255, 0.6);
}
.etiqueta-em_andamento { background: var(--forest-ink); color: var(--bone-white); border-color: var(--forest-ink); }
.etiqueta-em_andamento::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--moss); box-shadow: 0 0 0 3px rgba(133, 192, 147, 0.35); }
.etiqueta-em_aceite { background: rgba(0, 112, 16, 0.1); color: var(--deep-fern); border-color: rgba(0, 112, 16, 0.3); }
.etiqueta-em_correcao { background: var(--charcoal-bark); color: var(--bone-white); border-color: var(--charcoal-bark); }
.etiqueta-aceita { background: var(--emerald); color: var(--bone-white); border-color: var(--emerald); }

/* topo flutuante */
.topo {
  position: sticky; top: 12px; z-index: 10;
  display: flex; justify-content: space-between; align-items: center; gap: 16px;
  padding: 10px 12px 10px 16px; margin-bottom: 28px;
  background: rgba(255, 255, 255, 0.55);
  -webkit-backdrop-filter: blur(20px) saturate(170%); backdrop-filter: blur(20px) saturate(170%);
  border: 1px solid var(--vidro-borda); border-radius: 999px; box-shadow: var(--vidro-sombra);
}
.marca { display: flex; align-items: center; gap: 12px; }
.selo { background: var(--forest-ink); color: var(--bone-white); border-color: var(--forest-ink); letter-spacing: 0.22em; }
.marca-nome { font-size: 15px; font-weight: 600; letter-spacing: -0.01em; }
.nav { display: flex; align-items: center; gap: 6px; }
.nav form { margin: 0; }
.nav a, .botao-texto {
  font-size: 12px; font-weight: 500; color: var(--forest-ink); padding: 7px 12px; border-radius: 999px;
  background: none; border: 0; cursor: pointer; letter-spacing: 0; white-space: nowrap;
}
.nav a:hover, .botao-texto:hover { background: rgba(9, 53, 46, 0.06); text-decoration: none; }
.nav a[aria-current] { background: var(--forest-ink); color: var(--bone-white); }
.quem { font-size: 12px; color: var(--slate-smoke); padding: 0 8px; }

/* hero */
.hero { display: grid; grid-template-columns: 1fr auto; gap: 40px; align-items: center; padding: 36px 40px; border-radius: 28px; }
.sobretitulo { font-size: 12px; font-weight: 500; text-transform: uppercase; letter-spacing: 0.18em; color: var(--deep-fern); margin-bottom: 10px; }
.hero h1 { font-size: 56px; line-height: 1; letter-spacing: -0.035em; }
.hero h1 span { color: var(--muted-sage); font-weight: 500; }
.sub { color: var(--slate-smoke); margin-top: 12px; }
.barra { height: 6px; border-radius: 999px; background: rgba(9, 53, 46, 0.1); margin-top: 22px; overflow: hidden; max-width: 560px; }
.barra span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--muted-sage), var(--emerald)); }
.partes { display: flex; flex-wrap: wrap; gap: 12px 40px; margin: 24px 0 0; }
dt { font-size: 11px; text-transform: uppercase; letter-spacing: 0.14em; color: var(--slate-smoke); }
dd { margin: 4px 0 0; font-weight: 500; }

.anel { width: 168px; height: 168px; filter: drop-shadow(0 8px 24px rgba(0, 128, 35, 0.18)); }
.anel-trilho { fill: rgba(255, 255, 255, 0.5); stroke: rgba(9, 53, 46, 0.08); stroke-width: 10; }
.anel-valor { fill: none; stroke: var(--emerald); stroke-width: 10; stroke-linecap: round; }
.anel-num { font: 600 30px var(--font-texto); fill: var(--forest-ink); text-anchor: middle; letter-spacing: -0.03em; }
.anel-rot { font: 500 11px var(--font-rotulo); fill: var(--slate-smoke); text-anchor: middle; text-transform: uppercase; letter-spacing: 0.14em; }

/* agora */
.agora { margin-top: 48px; }
.agora-cabeca { max-width: 860px; margin-bottom: 20px; }
.agora h2 { font-size: 30px; line-height: 1.15; }
.criterio-destaque { margin-top: 14px; padding-left: 14px; border-left: 2px solid var(--moss); color: var(--charcoal-bark); }
.pulso { width: 8px; height: 8px; border-radius: 50%; background: var(--emerald); box-shadow: 0 0 0 0 rgba(0, 128, 35, 0.5); animation: pulso 2s infinite; }
@keyframes pulso { 70% { box-shadow: 0 0 0 10px rgba(0, 128, 35, 0); } 100% { box-shadow: 0 0 0 0 rgba(0, 128, 35, 0); } }

.agora-grade { display: grid; grid-template-columns: 1.25fr 1fr 1fr; gap: 16px; align-items: start; }
.bloco { padding: 22px 22px 18px; }
.bloco h3 { font-size: 15px; margin-bottom: 16px; }
.bloco ol, .bloco ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 14px; }

.etapa { display: grid; grid-template-columns: 18px 1fr; gap: 10px; }
.marcador { width: 14px; height: 14px; margin-top: 3px; border-radius: 50%; border: 1.5px solid rgba(9, 53, 46, 0.35); background: rgba(255, 255, 255, 0.7); }
.etapa-em_andamento .marcador { border-color: var(--emerald); background: radial-gradient(var(--emerald) 3px, rgba(255, 255, 255, 0.8) 3.5px); }
.etapa-concluida .marcador { border-color: var(--emerald); background: var(--emerald) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Cpath d='M3.5 7.2l2.3 2.3 4.7-4.9' fill='none' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/100% no-repeat; }
.etapa-titulo { font-weight: 500; line-height: 1.4; }
.etapa-pendente .etapa-titulo { color: var(--slate-smoke); font-weight: 400; }

.diario li { display: grid; gap: 4px; padding-left: 16px; position: relative; }
.diario li::before { content: ""; position: absolute; left: 3px; top: 7px; bottom: -14px; width: 1px; background: rgba(9, 53, 46, 0.15); }
.diario li:last-child::before { display: none; }
.diario li::after { content: ""; position: absolute; left: 0; top: 4px; width: 7px; height: 7px; border-radius: 50%; background: var(--moss); }
.diario time { font-size: 11px; color: var(--slate-smoke); }
.diario p { font-size: 14px; line-height: 1.5; }

.dep { display: grid; grid-template-columns: 52px 1fr; gap: 12px; align-items: center; }
.relogio {
  display: grid; place-items: center; align-content: center; gap: 4px; width: 52px; height: 52px; border-radius: 14px;
  background: rgba(9, 53, 46, 0.06); font: 600 18px/1 var(--font-texto); letter-spacing: -0.02em;
}
.relogio small { font: 500 9.5px/1 var(--font-rotulo); color: var(--slate-smoke); text-transform: uppercase; letter-spacing: 0.1em; }
.dep p:first-child { font-size: 14px; line-height: 1.4; }
.dep-alerta .relogio { background: var(--charcoal-bark); color: var(--bone-white); }
.dep-alerta .relogio small { color: rgba(255, 255, 255, 0.7); }
.vazio { color: var(--slate-smoke); font-size: 14px; }

/* linha do tempo */
.linha {
  list-style: none; margin: 40px 0 0; padding: 0; position: relative;
  display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 14px;
}
.linha::before { content: ""; position: absolute; left: 6px; right: 6px; top: 6px; height: 2px; border-radius: 2px; background: rgba(9, 53, 46, 0.12); }
.linha::after { content: ""; position: absolute; left: 6px; top: 6px; height: 2px; border-radius: 2px; width: calc(var(--hoje) - 6px); background: linear-gradient(90deg, var(--muted-sage), var(--emerald)); }
.hoje { position: absolute; top: -26px; left: var(--hoje); width: 0; height: 40px; border-left: 1.5px dashed var(--emerald); z-index: 3; }
.hoje span {
  position: absolute; top: -14px; left: 0; transform: translateX(-50%);
  background: var(--forest-ink); color: var(--bone-white); font: 500 11px/1 var(--font-rotulo);
  padding: 5px 10px; border-radius: 999px; white-space: nowrap; box-shadow: 0 6px 16px -6px rgba(9, 53, 46, 0.5);
}
.mes { position: relative; padding-top: 28px; display: flex; flex-direction: column; }
.no { position: absolute; top: 0; left: 0; width: 14px; height: 14px; border-radius: 50%; background: var(--bone-white); border: 2px solid rgba(9, 53, 46, 0.3); z-index: 2; }
.no-em_andamento { border-color: var(--emerald); box-shadow: 0 0 0 5px rgba(0, 128, 35, 0.15); }
.no-em_aceite { border-color: var(--deep-fern); background: radial-gradient(var(--deep-fern) 2.5px, var(--bone-white) 3px); }
.no-aceita { background: var(--emerald); border-color: var(--emerald); }
.mes .eixo { margin-bottom: 10px; }
.cartao-mes { flex: 1; display: flex; flex-direction: column; gap: 12px; padding: 18px; transition: transform .2s ease, box-shadow .2s ease; }
.cartao-mes:hover { transform: translateY(-2px); box-shadow: var(--vidro-sombra), 0 18px 40px -18px rgba(9, 53, 46, 0.3); }
.cartao-mes h3 { font-size: 14.5px; line-height: 1.35; font-weight: 600; overflow-wrap: break-word; }
.mes-atual .cartao-mes { background: var(--vidro-forte); border-color: rgba(0, 128, 35, 0.35); box-shadow: var(--vidro-sombra), 0 0 0 4px rgba(133, 192, 147, 0.25); }
.mini-barra { height: 4px; border-radius: 999px; background: rgba(9, 53, 46, 0.1); overflow: hidden; }
.mini-barra span { display: block; height: 100%; background: var(--emerald); border-radius: inherit; }
.criterio { font-size: 13px; color: var(--charcoal-bark); margin-top: auto; padding-top: 12px; border-top: 1px solid rgba(9, 53, 46, 0.08); }
.aceite { background: var(--charcoal-bark); color: var(--bone-white); border-radius: 12px; padding: 10px 12px; font: 500 12px/1.4 var(--font-rotulo); }

.continua { margin-top: 20px; padding: 22px 24px; display: grid; grid-template-columns: 1fr auto; gap: 24px; align-items: center; }
.continua h3 { font-size: 16px; line-height: 1.35; max-width: 640px; }
.continua .criterio { border-top: 0; padding-top: 8px; }
.contadores { display: flex; gap: 10px; margin: 0; }
.contadores div { min-width: 92px; text-align: center; padding: 12px 10px; border-radius: 16px; background: rgba(255, 255, 255, 0.6); border: 1px solid var(--vidro-borda); }
.contadores dd { font: 600 26px/1.1 var(--font-texto); letter-spacing: -0.03em; margin-top: 4px; }

/* formulários: uma ação verde por tela (Moss) */
label { display: grid; gap: 6px; font: 500 11px/1.3 var(--font-rotulo); text-transform: uppercase; letter-spacing: 0.12em; color: var(--slate-smoke); }
input, select {
  font: 400 15px/1.4 var(--font-texto); color: var(--forest-ink); letter-spacing: 0; text-transform: none;
  background: rgba(255, 255, 255, 0.75); border: 1px solid rgba(9, 53, 46, 0.14); border-radius: 12px; padding: 11px 14px;
}
input:focus, select:focus { outline: 0; border-color: var(--emerald); box-shadow: 0 0 0 4px rgba(133, 192, 147, 0.35); }
.botao {
  background: var(--moss); color: var(--forest-ink); border: 0; border-radius: 999px; justify-self: start;
  padding: 12px 24px; font: 600 14px/1.2 var(--font-texto); cursor: pointer;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.6) inset, 0 8px 20px -8px rgba(0, 128, 35, 0.5);
  transition: transform .15s ease, filter .15s ease;
}
.botao:hover { filter: brightness(1.04); transform: translateY(-1px); }
.erro { background: var(--charcoal-bark); color: var(--bone-white); border-radius: 12px; padding: 10px 14px; font-size: 14px; }

.acesso { min-height: 72vh; display: grid; place-items: center; }
.acesso .cartao { width: min(440px, 100%); display: grid; gap: 18px; padding: 36px; border-radius: 28px; }
.acesso h1 { font-size: 30px; letter-spacing: -0.03em; }

.cartao {
  background: var(--vidro-forte);
  -webkit-backdrop-filter: blur(22px) saturate(160%); backdrop-filter: blur(22px) saturate(160%);
  border: 1px solid var(--vidro-borda); border-radius: var(--raio); box-shadow: var(--vidro-sombra); padding: 24px;
}
.tabela { width: 100%; border-collapse: collapse; }
.tabela th { text-align: left; font: 500 11px/1.3 var(--font-rotulo); text-transform: uppercase; letter-spacing: 0.12em; color: var(--slate-smoke); padding: 0 12px 12px 0; }
.tabela td { padding: 12px 12px 12px 0; border-top: 1px solid rgba(9, 53, 46, 0.08); }
.convidar { display: grid; grid-template-columns: 1fr 1fr 170px auto; gap: 16px; align-items: end; }
.aviso-link { background: var(--forest-ink); color: var(--bone-white); border-radius: var(--raio); padding: 18px 20px; margin-bottom: 16px; display: grid; gap: 10px; }
.aviso-link input { font-family: var(--font-rotulo); font-size: 12px; }
.convidar + .nota { margin-top: 10px; }

.rodape { margin-top: 64px; font-size: 11.5px; color: var(--slate-smoke); text-align: center; }
.carimbo { position: fixed; right: 14px; bottom: 24px; writing-mode: vertical-rl; transform: rotate(180deg); font-size: 10.5px; color: var(--slate-smoke); opacity: 0.7; z-index: 1; }

/* entrada suave */
@media (prefers-reduced-motion: no-preference) {
  .hero, .agora-cabeca, .bloco, .mes, .continua { animation: sobe .5s ease both; }
  .agora-grade .bloco:nth-child(2) { animation-delay: .06s; }
  .agora-grade .bloco:nth-child(3) { animation-delay: .12s; }
  @keyframes sobe { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
}
@media (prefers-reduced-motion: reduce) { .pulso { animation: none; } }

/* sem suporte a desfoque: vidro mais opaco para manter contraste */
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .vidro, .topo, .cartao { background: rgba(255, 255, 255, 0.92); }
}

@media (max-width: 1080px) {
  .agora-grade { grid-template-columns: 1fr 1fr; }
  .agora-grade .bloco:first-child { grid-column: 1 / -1; }
}

/* telas estreitas: linha do tempo vertical */
@media (max-width: 860px) {
  .pagina { padding: 12px 14px 40px; }
  .topo { border-radius: 20px; flex-wrap: wrap; }
  .quem { display: none; }
  .hero { grid-template-columns: 1fr; padding: 24px; gap: 24px; }
  .hero h1 { font-size: 40px; }
  .anel { width: 132px; height: 132px; justify-self: start; }
  .agora h2 { font-size: 22px; }
  .agora-grade { grid-template-columns: 1fr; }
  .linha { grid-template-columns: 1fr; gap: 18px; padding-left: 26px; margin-top: 8px; }
  .linha::before { left: 6px; right: auto; top: 0; bottom: 0; width: 2px; height: auto; }
  .linha::after, .hoje { display: none; }
  .no { left: -26px; top: 2px; }
  .mes { padding-top: 0; }
  .continua { grid-template-columns: 1fr; }
  .contadores div { min-width: 0; flex: 1; }
  .convidar { grid-template-columns: 1fr; }
  .carimbo { display: none; }
}

/* notas longas leem melhor na fonte de texto */
.etapa .nota, .dep .nota { font-family: var(--font-texto); font-size: 12.5px; }

/* entregas como pastas de vidro, com a linha do tempo fina por cima */
.linha-fina .mes { padding-top: 26px; }
.linha-fina .eixo { margin: 0; }
.dica { font: 400 12px/1.4 var(--font-rotulo); color: var(--slate-smoke); margin: 18px 0 0; }
.pastas {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  justify-items: center; gap: 4px 24px; margin-top: 56px;
}
@media (max-width: 860px) {
  .linha-fina { display: none; }
  .pastas { grid-template-columns: 1fr; }
}

/* ===== login e convite: tela inteira verde, linhas animadas e cartão de vidro ===== */
.corpo-acesso {
  min-height: 100vh; color: #eef5ef;
  background: radial-gradient(120% 90% at 20% 0%, #14503f 0%, #09352e 45%, #05211c 100%) fixed;
}
.corpo-acesso::before { display: none; }
/* fundo: LiquidChrome (WebGL2) no musgo das pastas, sobre o verde do body */
.cromo { position: fixed; inset: 0; width: 100vw; height: 100vh; z-index: 0; display: block; }
/* véu só em volta do cartão, para o texto seguir legível sem apagar o mármore */
.cetim-veu { position: fixed; inset: 0; z-index: 0; pointer-events: none; background: radial-gradient(38% 46% at 50% 52%, rgba(5, 33, 28, 0.42), rgba(5, 33, 28, 0) 100%); }
.acesso3 { position: relative; z-index: 1; min-height: 100vh; display: grid; place-items: center; padding: 96px 20px 40px; }
.acesso3 { padding: 40px 20px; }
.acesso-coluna { width: min(400px, 100%); display: grid; gap: 28px; justify-items: center; }
.acesso3 .acesso-marca { display: flex; flex-direction: column; align-items: center; gap: 10px; }
.acesso3 .logotipo { font-size: 42px; letter-spacing: 0.04em; text-shadow: 0 2px 24px rgba(0, 0, 0, 0.35); }
.acesso3 .logotipo-sub { text-shadow: 0 1px 12px rgba(0, 0, 0, 0.4); }
/* logotipo: COSTAFIZINUS em negrito, INDICADORES como nome de produto */
.logotipo { font: 600 24px/1 'Open Sans', var(--font-texto); letter-spacing: 0.04em; color: #ffffff; }
.logotipo-sub { font: 700 13px/1 'Open Sans', var(--font-texto); text-transform: uppercase; letter-spacing: 0.42em; color: #ffffff; }

/* vidro bem transparente: desfoque leve para as linhas aparecerem através */
.acesso-vidro {
  width: 100%; display: grid; gap: 22px; padding: 36px 32px;
  background: linear-gradient(160deg, rgba(255, 255, 255, 0.14), rgba(9, 53, 46, 0.18));
  -webkit-backdrop-filter: blur(12px) saturate(140%); backdrop-filter: blur(12px) saturate(140%);
  border: 1px solid rgba(255, 255, 255, 0.18); border-radius: 26px;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.22) inset, 0 30px 80px -30px rgba(0, 0, 0, 0.55);
}
.acesso-titulo h1 { font-size: 26px; font-weight: 600; letter-spacing: -0.02em; color: #ffffff; }
.acesso-titulo p { color: rgba(238, 245, 239, 0.72); margin-top: 6px; }
.acesso-campos { display: grid; gap: 14px; }
.campo { display: grid; gap: 6px; }
.campo-rotulo { font: 500 11px/1.3 var(--font-rotulo); text-transform: uppercase; letter-spacing: 0.12em; color: rgba(238, 245, 239, 0.7); }
.campo-caixa { position: relative; display: block; }
.campo-caixa svg { position: absolute; left: 13px; top: 50%; width: 16px; height: 16px; transform: translateY(-50%); color: rgba(238, 245, 239, 0.65); pointer-events: none; }
.campo-caixa input {
  width: 100%; height: 46px; padding-left: 38px; border-radius: 12px; color: #ffffff;
  background: rgba(255, 255, 255, 0.08); border: 1px solid rgba(255, 255, 255, 0.2);
}
.campo-caixa input::placeholder { color: rgba(238, 245, 239, 0.45); }
.campo-caixa input:focus { border-color: rgba(133, 192, 147, 0.9); box-shadow: 0 0 0 4px rgba(133, 192, 147, 0.25); }
.corpo-acesso .botao-cheio { justify-self: stretch; height: 46px; margin-top: 6px; }
.corpo-acesso .erro { background: rgba(0, 0, 0, 0.25); color: #ffffff; border: 1px solid rgba(255, 255, 255, 0.18); }
.corpo-acesso .nota { color: rgba(238, 245, 239, 0.6); }

@media (max-width: 600px) {
  .acesso-vidro { padding: 28px 22px; }
}
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .acesso-vidro { background: rgba(9, 53, 46, 0.85); }
}

/* assinatura Konnecta abaixo do cartão de login */
.powered { display: flex; align-items: center; gap: 12px; margin: 4px 0 0; }
.powered span { font: 500 11px/1 var(--font-rotulo); text-transform: uppercase; letter-spacing: 0.24em; color: rgba(255, 255, 255, 0.75); }
.powered img { display: block; width: 118px; height: auto; filter: drop-shadow(0 2px 12px rgba(0, 0, 0, 0.35)); }
