/* Campos de data (calendário estilo iOS) — paleta do Acervo */
.campo-data-env{position:relative;display:block;width:100%}
.campo-data-env>input.campo-data{width:100%;box-sizing:border-box;padding-right:2.4rem!important}
.cal-btn{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:32px;height:32px;border:0;border-radius:50%;background:transparent;color:#8a6d3b;display:grid;place-items:center;cursor:pointer;padding:0;margin:0}
.cal-btn svg{width:17px;height:17px;fill:currentColor}
.cal-btn:hover{background:rgba(90,62,27,.08);color:#5a3e1b}
label>.campo-data-env{margin-top:.3rem}
.ano-card.ed .campo-data-env>input.campo-data{padding-right:26px!important}
.ano-card.ed .cal-btn{width:24px;height:24px;right:2px}.ano-card.ed .cal-btn svg{width:13px;height:13px}

.cal-ios{position:absolute;z-index:9999;width:300px;box-sizing:border-box;padding:14px 14px 10px;border-radius:22px;
  font:400 15px/1.2 -apple-system,BlinkMacSystemFont,"SF Pro Text","Inter","Helvetica Neue",Arial,sans-serif;color:#1d1d1f;
  background:rgba(255,253,249,.86);-webkit-backdrop-filter:saturate(180%) blur(24px);backdrop-filter:saturate(180%) blur(24px);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.9),0 1px 2px rgba(40,25,5,.08),0 18px 48px -12px rgba(40,25,5,.32);animation:calIn .18s ease}
.cal-ios[hidden]{display:none}
@keyframes calIn{from{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:none}}
.cal-ios button{font:inherit;border:0;background:none;cursor:pointer;color:inherit;margin:0;box-shadow:none;min-height:0;min-width:0}
.cal-cab{display:flex;align-items:center;justify-content:space-between;margin:0 2px 8px}
.cal-mes{font-weight:600!important;font-size:16px!important;letter-spacing:-.01em;padding:4px 6px!important;border-radius:8px}
.cal-mes i{font-style:normal;color:#8a6d3b;display:inline-block;transition:transform .2s}
.escolhe-ano .cal-mes i{transform:rotate(90deg)}
.cal-mes:hover{background:rgba(90,62,27,.06)}
.cal-nav{display:flex;gap:2px}
.cal-nav button{width:34px;height:34px;border-radius:50%;font-size:24px!important;line-height:1!important;color:#5a3e1b!important;display:grid;place-items:center;padding:0 0 3px!important}
.cal-nav button:hover{background:rgba(90,62,27,.08)}
.cal-sem,.cal-dias{display:grid;grid-template-columns:repeat(7,1fr);text-align:center}
.cal-sem span{font-size:11px;font-weight:600;color:#86868b;padding:4px 0 6px;letter-spacing:.02em}
.cal-dias button{width:36px;height:36px;margin:1px auto!important;border-radius:50%;font-size:15px!important;font-variant-numeric:tabular-nums;display:grid;place-items:center;padding:0!important;transition:background .15s}
.cal-dias button:hover{background:rgba(90,62,27,.08)}
.cal-dias button.hoje{color:#a8461b!important;font-weight:600!important}
.cal-dias button.sel{background:#5a3e1b!important;color:#fff!important;font-weight:600!important;box-shadow:0 4px 10px -2px rgba(90,62,27,.45)!important}
.cal-dias button:disabled{color:#c7c7cc!important;cursor:default;background:none!important}
.cal-anos{max-height:258px;overflow:hidden;display:flex;flex-direction:column;gap:8px}
.cal-anos[hidden]{display:none}
.escolhe-ano .cal-sem,.escolhe-ano .cal-dias,.escolhe-ano .cal-nav{display:none}
.cal-meses{display:grid;grid-template-columns:repeat(6,1fr);gap:4px}
.cal-meses button,.cal-lista-anos button{padding:7px 0!important;border-radius:10px;font-size:13.5px!important;text-transform:capitalize}
.cal-lista-anos{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;overflow:auto;max-height:200px;-webkit-overflow-scrolling:touch}
.cal-meses button:hover,.cal-lista-anos button:hover{background:rgba(90,62,27,.08)}
.cal-meses button.sel,.cal-lista-anos button.sel{background:#5a3e1b!important;color:#fff!important}
.cal-pe{display:flex;justify-content:space-between;align-items:center;margin-top:8px;padding-top:8px;border-top:1px solid rgba(0,0,0,.06)}
.cal-pe button{padding:6px 10px!important;border-radius:980px;font-size:14px!important;color:#5a3e1b!important;font-weight:500!important}
.cal-pe button:hover{background:rgba(90,62,27,.08)}
.cal-pe .cal-ok{background:#5a3e1b!important;color:#fff!important;padding:6px 16px!important;font-weight:600!important}
.cal-pe .cal-limpar{color:#86868b!important}
/* celular: folha que sobe de baixo, como no iOS */
.cal-ios.folha{position:fixed;left:8px!important;right:8px;bottom:calc(8px + env(safe-area-inset-bottom,0px));top:auto!important;width:auto;max-width:420px;margin:0 auto;padding:16px 16px 12px;border-radius:26px;animation:calSobe .22s ease}
.cal-ios.folha .cal-dias button{width:42px;height:42px;font-size:17px!important}
@keyframes calSobe{from{transform:translateY(30px);opacity:0}to{transform:none;opacity:1}}
@media (prefers-reduced-motion:reduce){.cal-ios,.cal-ios.folha{animation:none}}
/* mesmo visual dos demais campos das fichas (as regras originais usam label>input) */
.ficha label>.campo-data-env{margin-top:.35rem}
.ficha label>.campo-data-env>input.campo-data{display:block;width:100%;min-height:2.75rem;padding:.6rem 2.4rem .6rem .85rem;margin:0;font-size:1rem;font-family:inherit;border:1px solid transparent;border-radius:var(--r-ctl,12px)}
.ficha label>.campo-data-env>input.campo-data:focus{border-color:var(--acc,#5a3e1b)}
.cal-lista-anos button,.cal-meses button{height:34px;display:grid!important;place-items:center;padding:0!important;line-height:1!important}
.cal-lista-anos{grid-auto-rows:34px;align-content:start}
