/* Campo de data DD/MM/AAAA, calendário em português e janelas de confirmação.
   Usa as variáveis do tema de cada app, com valores de reserva. */
.data-br { display: flex; gap: 8px; }
.data-br input { flex: 1; min-width: 0; font-variant-numeric: tabular-nums; letter-spacing: .04em; }
.data-br button { flex: none; width: 56px; min-height: 56px; border-radius: 14px; font-size: 22px; cursor: pointer;
  background: var(--surface-3, #25252c); color: var(--texto, #f7f7f9); border: 1px solid var(--vidro-borda, rgba(255,255,255,.08));
  box-shadow: inset 0 1px 0 var(--brilho-topo, rgba(255,255,255,.1)); transition: transform .15s ease; }
.data-br button:active { transform: scale(.92); transition-duration: .08s; }

.br-cal, .br-janela { border: 1px solid var(--vidro-borda, rgba(255,255,255,.08)); border-radius: 22px; padding: 16px;
  width: min(380px, calc(100% - 24px)); background: var(--surface, #16161b); color: var(--texto, #f7f7f9);
  font-family: "Plus Jakarta Sans", system-ui, sans-serif; box-shadow: 0 30px 60px -20px rgba(0,0,0,.6); }
.br-cal::backdrop, .br-janela::backdrop { background: rgba(0,0,0,.6); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); }
.br-cal[open], .br-janela[open] { display: flex; flex-direction: column; gap: 12px; animation: br-entrada .28s cubic-bezier(0.16, 1, 0.3, 1) both; }
@keyframes br-entrada { from { opacity: 0; transform: translateY(12px) scale(.98); } to { opacity: 1; transform: none; } }

.br-cal-topo { display: grid; grid-template-columns: 44px 1fr 92px 44px; gap: 6px; align-items: center; }
.br-cal-topo button { min-height: 44px; border-radius: 12px; border: 1px solid var(--vidro-borda, rgba(255,255,255,.08));
  background: var(--surface-2, #1d1d23); color: inherit; font-size: 24px; font-weight: 800; cursor: pointer; }
.br-cal-topo select { min-height: 44px; border-radius: 12px; padding: 0 8px; font: inherit; font-weight: 700; font-size: 16px;
  background: var(--surface-2, #1d1d23); color: inherit; border: 1px solid var(--vidro-borda, rgba(255,255,255,.08)); }
.br-cal-semana, .br-cal-dias { display: grid; grid-template-columns: repeat(7, 1fr); gap: 4px; text-align: center; }
.br-cal-semana span { font-size: 12px; font-weight: 800; color: var(--faint, #9d9fa8); }
.br-cal-dias button { min-height: 44px; border-radius: 12px; border: 0; background: none; color: inherit; font: inherit; font-size: 16px;
  font-weight: 700; cursor: pointer; transition: transform .15s ease, background .2s ease; }
.br-cal-dias button:active { transform: scale(.92); transition-duration: .08s; }
.br-cal-dias button.hoje { box-shadow: inset 0 0 0 2px var(--violet, #9b7bff); }
.br-cal-dias button.escolhido { background: linear-gradient(135deg, var(--brand, #fd1c22), var(--brand-2, #ff4f41)); color: var(--brand-fg, #fff); }

.br-janela h2 { margin: 0; font-family: "Bricolage Grotesque", "Plus Jakarta Sans", system-ui, sans-serif; font-size: 22px; font-weight: 800; }
.br-janela p { margin: 0; color: var(--muted, #c9cad2); font-size: 16px; line-height: 1.5; }
.br-janela textarea { width: 100%; border-radius: 14px; padding: 12px; font: inherit; font-size: 16px; resize: vertical;
  background: var(--surface-2, #1d1d23); color: inherit; border: 1px solid var(--vidro-borda, rgba(255,255,255,.12)); }
.br-acoes { display: flex; gap: 8px; }
.br-acoes button { flex: 1; min-height: 52px; border-radius: 14px; font: inherit; font-size: 16px; font-weight: 800; cursor: pointer;
  transition: transform .15s ease; }
.br-acoes button:active { transform: scale(.97); transition-duration: .08s; }
.br-nao { background: transparent; color: inherit; border: 2px solid color-mix(in oklab, currentColor 30%, transparent); }
.br-sim { border: 0; background: linear-gradient(135deg, var(--brand, #fd1c22), var(--brand-2, #ff4f41)); color: var(--brand-fg, #fff);
  box-shadow: inset 0 -3px 0 rgba(0,0,0,.15); }
.br-sim.perigo { background: #c62828; color: #fff; }
