/* Calendário de período (relatório v2). Polimento de 30/10/2026: vidro leve, painéis com o mesmo raio e respiro,
   faixa do período, prévia em onda seguindo o mouse, datas anteriores à inicial apagadas, atalhos em cartão. */
.fd-period-calendar{
  --pc-azul:#629ee9;--pc-azul-forte:#4a8ae0;--pc-ink:#142236;--pc-muted:#66748a;
  --pc-bg:rgba(244,248,253,.8);--pc-panel:linear-gradient(160deg,rgba(255,255,255,.94),rgba(238,244,251,.8));--pc-rim:rgba(255,255,255,.9);
  --pc-cell:rgba(255,255,255,.66);--pc-cell-rim:rgba(98,158,233,.12);--pc-range:rgba(98,158,233,.14);--pc-preview:rgba(98,158,233,.09);
  color-scheme:light;box-sizing:border-box;width:min(780px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:12px;
  border:1px solid rgba(255,255,255,.85);border-radius:28px;background:var(--pc-bg);
  -webkit-backdrop-filter:blur(28px) saturate(1.5);backdrop-filter:blur(28px) saturate(1.5);
  box-shadow:0 2px 6px rgba(10,22,44,.06),0 30px 80px -20px rgba(10,22,44,.38);
  color:var(--pc-ink);overflow:auto;font-family:Inter,-apple-system,'Segoe UI',sans-serif;
  animation:fd-period-entra .2s cubic-bezier(.2,.8,.2,1)
}
.fd-period-calendar.is-dark{
  --pc-ink:#eef2f8;--pc-muted:#a3adbd;--pc-bg:rgba(16,19,26,.82);--pc-panel:linear-gradient(160deg,rgba(40,44,52,.92),rgba(22,25,31,.9));
  --pc-rim:rgba(255,255,255,.08);--pc-cell:rgba(255,255,255,.04);--pc-cell-rim:rgba(255,255,255,.07);--pc-range:rgba(98,158,233,.28);--pc-preview:rgba(98,158,233,.2);
  color-scheme:dark;border-color:rgba(255,255,255,.1);box-shadow:0 30px 80px -20px rgba(0,0,0,.7)
}
@keyframes fd-period-entra{from{opacity:0;transform:translateX(-8px) scale(.985)}}
.fd-period-calendar{position:fixed;inset:auto;margin:0;z-index:22000}
.fd-period-calendar::backdrop{background:transparent;backdrop-filter:none}
.fd-period-layout{display:grid;grid-template-columns:minmax(0,1fr) 236px;gap:12px}
.fd-period-month{display:flex;flex-direction:column}
.fd-period-month,.fd-period-shortcuts{box-sizing:border-box;min-width:0;padding:18px;border:1px solid var(--pc-rim);border-radius:22px;background:var(--pc-panel);box-shadow:inset 0 1px 0 rgba(255,255,255,.6),0 1px 2px rgba(10,22,44,.04)}
.fd-period-calendar.is-dark :is(.fd-period-month,.fd-period-shortcuts){box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}
.fd-period-calendar button{appearance:none;font-family:inherit;cursor:pointer;color:var(--pc-ink)}
.fd-period-calendar h2{margin:0;color:var(--pc-azul);font-size:20px;font-weight:800;line-height:1.2;letter-spacing:-.03em}
.fd-period-calendar button:focus-visible,.fd-period-calendar input:focus-visible{outline:2px solid var(--pc-azul);outline-offset:2px}

/* Cabeçalho do mês */
.fd-period-heading{display:flex;align-items:center;gap:6px;margin-bottom:14px}
.fd-period-heading h2{margin-right:auto}
.fd-period-heading button{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;padding:0 0 2px;border:1px solid var(--pc-cell-rim);border-radius:50%;background:var(--pc-cell);color:var(--pc-muted);font-size:20px;line-height:1;transition:background .15s,color .15s,border-color .15s}
.fd-period-heading button:hover{background:var(--pc-range);border-color:rgba(98,158,233,.4);color:var(--pc-azul)}
.fd-period-month-label{display:grid;place-items:center;height:34px;padding:0 14px;border-radius:999px;background:var(--pc-range);color:var(--pc-ink);font-size:13px;font-weight:700;white-space:nowrap}

/* Semana e dias */
.fd-period-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;height:22px;margin-bottom:6px;color:var(--pc-muted);font-size:10.5px;font-weight:700;letter-spacing:.08em;text-align:center;align-items:center}
.fd-period-days{flex:1;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:minmax(44px,1fr);gap:6px}
.fd-period-days button{
  position:relative;box-sizing:border-box;min-width:0;height:auto;min-height:44px;border:1px solid var(--pc-cell-rim);border-radius:12px;background:var(--pc-cell);
  font-size:13.5px;font-weight:600;font-variant-numeric:tabular-nums;
  transition:background .25s ease calc(var(--d,0)*14ms),border-color .2s,color .2s,transform .15s,box-shadow .2s
}
.fd-period-days button:hover:not(:disabled){transform:translateY(-1px);border-color:rgba(98,158,233,.5);box-shadow:0 6px 14px -8px rgba(98,158,233,.8)}
.fd-period-days button.is-outside{background:transparent;color:var(--pc-muted);opacity:.38}
.fd-period-days button.is-in-range{background:var(--pc-range);border-color:rgba(98,158,233,.22);color:#1d4f8f;opacity:1}
.fd-period-calendar.is-dark .fd-period-days button.is-in-range{color:#b9d4f6}
.fd-period-days button.is-preview{background:var(--pc-preview);border-color:rgba(98,158,233,.25);opacity:1}
.fd-period-days button.is-preview-end{background:rgba(98,158,233,.22);border-color:var(--pc-azul);box-shadow:0 0 0 3px rgba(98,158,233,.15)}
.fd-period-days button:is(.is-start,.is-end){
  background:linear-gradient(145deg,#80b3f1,var(--pc-azul-forte));border-color:transparent;color:#fff;font-weight:800;opacity:1;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.45),0 8px 18px -8px rgba(74,138,224,.9)
}
.fd-period-calendar.is-escolhendo-fim .fd-period-days button.is-start{animation:fd-period-pulso 1.6s ease-in-out infinite}
@keyframes fd-period-pulso{50%{box-shadow:inset 0 1px 0 rgba(255,255,255,.45),0 0 0 5px rgba(98,158,233,.22)}}
.fd-period-days button.is-before{opacity:.26;cursor:not-allowed;background:transparent;filter:grayscale(.3)}
.fd-period-days button.is-today::after{content:'';position:absolute;bottom:5px;left:calc(50% - 3px);width:6px;height:6px;border-radius:50%;background:#34d399;box-shadow:0 0 6px rgba(52,211,153,.6)}
.fd-period-days button:is(.is-start,.is-end).is-today::after{background:#fff;box-shadow:none}

/* Datas digitadas */
.fd-period-inputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px;padding-top:14px;border-top:1px solid rgba(98,158,233,.16)}
.fd-period-inputs label{display:flex;flex-direction:column;gap:6px;color:var(--pc-muted);font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.fd-period-inputs input{box-sizing:border-box;width:100%;min-width:0;height:38px;padding:0 12px;border:1px solid var(--pc-cell-rim);border-radius:12px;color:var(--pc-ink);background:var(--pc-cell);font:600 13px/1 Inter,'Segoe UI',sans-serif;letter-spacing:0;text-transform:none}
.fd-period-inputs input:focus{border-color:var(--pc-azul)}
.fd-period-error{font-size:12px;color:#ef4444;margin:10px 0 0;line-height:1.4}
.fd-period-error[hidden]{display:none}

/* Atalhos */
.fd-period-shortcuts{display:flex;flex-direction:column}
.fd-period-shortcuts>header{display:flex;align-items:center;justify-content:space-between;padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid rgba(98,158,233,.25)}
.fd-period-shortcuts h2{font-size:18px}
.fd-period-shortcuts [data-close]{display:grid;place-items:center;width:30px;height:30px;padding:0 0 2px;border:0;border-radius:50%;background:transparent;font-size:20px;color:var(--pc-muted);transition:background .15s,color .15s}
.fd-period-shortcuts [data-close]:hover{background:var(--pc-range);color:var(--pc-azul)}
.fd-period-presets{display:flex;flex-direction:column;gap:8px}
.fd-period-presets button{
  display:grid;grid-template-columns:34px minmax(0,1fr) 16px;align-items:center;gap:10px;box-sizing:border-box;width:100%;padding:8px 10px 8px 8px;
  border:1px solid var(--pc-cell-rim);border-radius:14px;background:var(--pc-cell);text-align:left;
  transition:background .18s,border-color .18s,transform .18s,box-shadow .18s
}
.fd-period-preset-ico{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--pc-range);color:var(--pc-azul);transition:background .18s,color .18s}
.fd-period-preset-ico svg,.fd-period-preset-ok svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.fd-period-preset-txt{display:flex;flex-direction:column;gap:2px;min-width:0}
.fd-period-preset-txt strong{font-size:13px;font-weight:700}
.fd-period-preset-txt small{font-size:11px;font-weight:500;color:var(--pc-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fd-period-preset-ok{display:grid;place-items:center;opacity:0;transform:scale(.6);transition:opacity .18s,transform .18s}
.fd-period-presets button:hover{border-color:rgba(98,158,233,.4);background:var(--pc-preview);transform:translateX(2px)}
.fd-period-presets button:hover .fd-period-preset-ico{background:rgba(98,158,233,.22)}
.fd-period-presets button[aria-pressed=true]{
  background:linear-gradient(145deg,#80b3f1,var(--pc-azul-forte));border-color:transparent;color:#fff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 8px 18px -10px rgba(74,138,224,.9)
}
.fd-period-presets button[aria-pressed=true] .fd-period-preset-ico{background:rgba(255,255,255,.22);color:#fff}
.fd-period-presets button[aria-pressed=true] small{color:rgba(255,255,255,.85)}
.fd-period-presets button[aria-pressed=true] .fd-period-preset-ok{opacity:1;transform:none;color:#fff}

/* Resumo do período e ações */
.fd-period-resumo{display:flex;flex-direction:column;gap:3px;margin-top:14px;padding:10px 12px;border:1px solid rgba(98,158,233,.22);border-radius:14px;background:var(--pc-preview);transition:border-color .2s}
.fd-period-resumo.is-previa{border-style:dashed;border-color:var(--pc-azul)}
.fd-period-resumo-rot{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--pc-azul)}
.fd-period-resumo-datas{font-size:14px;font-weight:800;font-variant-numeric:tabular-nums;color:var(--pc-ink)}
.fd-period-resumo-dias{font-size:11.5px;color:var(--pc-muted)}
.fd-period-hint{margin:10px 2px 14px;color:var(--pc-muted);font-size:11.5px;line-height:1.5}
.fd-period-selection{margin-top:16px;padding-top:14px;border-top:1px solid rgba(98,158,233,.16)}
.fd-period-selection .fd-period-resumo{margin-top:0}
.fd-period-selection footer{display:flex;gap:8px;padding-top:12px;border-top:1px solid rgba(98,158,233,.25)}
.fd-period-selection footer button{flex:1;min-height:38px;padding:0 12px;border:1px solid var(--pc-cell-rim);border-radius:12px;background:var(--pc-cell);color:var(--pc-ink);font-size:12.5px;font-weight:700;transition:background .15s,box-shadow .15s,filter .15s}
.fd-period-selection footer [data-reset]:hover{background:var(--pc-preview)}
.fd-period-selection footer [data-apply]{background:linear-gradient(145deg,#80b3f1,var(--pc-azul-forte));border-color:transparent;color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 8px 18px -10px rgba(74,138,224,.9)}
.fd-period-selection footer [data-apply]:hover:not(:disabled){filter:brightness(1.06)}
.fd-period-shortcuts [data-apply]{background:linear-gradient(145deg,#80b3f1,var(--pc-azul-forte));border-color:transparent!important;color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 8px 18px -10px rgba(74,138,224,.9)}
.fd-period-shortcuts [data-apply]:hover:not(:disabled){filter:brightness(1.06)}
.fd-period-shortcuts button:disabled{opacity:.45;cursor:default;box-shadow:none}

@media(max-width:700px){
  .fd-period-calendar{padding:10px}.fd-period-layout{grid-template-columns:minmax(0,1fr);gap:10px}.fd-period-month,.fd-period-shortcuts{padding:14px}
  .fd-period-presets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.fd-period-shortcuts footer{flex-direction:row}.fd-period-shortcuts footer button{flex:1}
  .fd-period-heading{flex-wrap:wrap}.fd-period-heading h2{flex-basis:100%;margin-bottom:4px}.fd-period-month-label{flex:1}.fd-period-days{gap:4px}.fd-period-days button{height:38px}
}
@media(prefers-reduced-motion:reduce){.fd-period-calendar,.fd-period-days button,.fd-period-presets button{animation:none!important;transition:none!important}}

/* Tema escuro 1:1 com a referência Cal Overlay Pro (valores lidos do site em 30/10/2026): vidro branco em degradê,
   borda branca 18 %, brilho de 1 px no topo. A faixa do período (prévia ao passar o mouse e intervalo escolhido)
   continua, no mesmo vidro com o azul do título da referência. */
.fd-period-calendar.is-dark :is(.fd-period-month,.fd-period-shortcuts){
  background:linear-gradient(rgba(255,255,255,.12),rgba(255,255,255,.06));border:1px solid rgba(255,255,255,.18);border-radius:24px;
  box-shadow:inset 0 1px 0 rgba(222,222,222,.65),0 30px 80px rgba(0,0,0,.45),0 8px 24px rgba(0,0,0,.35);
  -webkit-backdrop-filter:saturate(1.4) blur(18px);backdrop-filter:saturate(1.4) blur(18px);color:rgb(231,235,244)
}
.fd-period-calendar.is-dark h2{background:linear-gradient(90deg,rgb(110,168,255),rgb(158,230,255));-webkit-background-clip:text;background-clip:text;color:transparent;font-size:22px;font-weight:800;letter-spacing:-.44px}
.fd-period-calendar.is-dark .fd-period-heading button{
  width:36px;height:36px;flex:0 0 36px;border-radius:12px;border:1px solid rgba(255,255,255,.18);
  background:linear-gradient(rgba(255,255,255,.14),rgba(255,255,255,.06));color:rgba(231,235,244,.55);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.6),0 6px 14px rgba(0,0,0,.25);transition:transform .12s,box-shadow .2s
}
.fd-period-calendar.is-dark .fd-period-heading button:hover{transform:translateY(-1px);color:rgb(231,235,244)}
.fd-period-calendar.is-dark .fd-period-month-label{
  height:36px;border-radius:12px;border:1px solid rgba(255,255,255,.18);background:linear-gradient(rgba(255,255,255,.14),rgba(255,255,255,.06));
  box-shadow:inset 0 1px 0 rgba(222,222,222,.65);color:rgb(231,235,244);font-size:14px;font-weight:700
}
.fd-period-calendar.is-dark .fd-period-weekdays{
  height:30px;margin-bottom:8px;border-radius:14px;border:1px solid rgba(255,255,255,.18);background:linear-gradient(rgba(255,255,255,.1),rgba(255,255,255,.04));
  box-shadow:inset 0 1px 0 rgba(222,222,222,.65);color:rgba(231,235,244,.55);font-size:12px;font-weight:700;letter-spacing:.4px
}
.fd-period-calendar.is-dark .fd-period-days button{
  border-radius:14px;border:1px solid rgba(255,255,255,.18);background:linear-gradient(rgba(255,255,255,.14),rgba(255,255,255,.06));
  box-shadow:inset 0 1px 0 rgba(222,222,222,.65);color:rgb(231,235,244);font-size:14px;font-weight:700;
  transition:transform .12s,box-shadow .2s,background .25s ease calc(var(--d,0)*14ms),border-color .2s,opacity .2s
}
.fd-period-calendar.is-dark .fd-period-days button:hover:not(:disabled){transform:translateY(-1px);border-color:rgba(255,255,255,.3);box-shadow:inset 0 1px 0 rgba(222,222,222,.65),0 6px 14px rgba(0,0,0,.25)}
.fd-period-calendar.is-dark .fd-period-days button.is-outside{background:linear-gradient(rgba(255,255,255,.06),rgba(255,255,255,.03));color:rgba(231,235,244,.55);opacity:.45}
.fd-period-calendar.is-dark .fd-period-days button.is-before{background:linear-gradient(rgba(255,255,255,.06),rgba(255,255,255,.03));color:rgba(231,235,244,.55);opacity:.45;filter:none}
/* Faixa do período: prévia (até o mouse) e intervalo escolhido, no vidro com o azul do título. */
.fd-period-calendar.is-dark .fd-period-days button.is-preview{background:linear-gradient(rgba(110,168,255,.2),rgba(110,168,255,.08));border-color:rgba(158,230,255,.28);opacity:1}
.fd-period-calendar.is-dark .fd-period-days button.is-in-range{background:linear-gradient(rgba(110,168,255,.28),rgba(110,168,255,.12));border-color:rgba(158,230,255,.32);color:rgb(231,235,244);opacity:1}
.fd-period-calendar.is-dark .fd-period-days button.is-preview-end{background:linear-gradient(rgba(110,168,255,.4),rgba(110,168,255,.18));border-color:rgba(158,230,255,.6);box-shadow:inset 0 1px 0 rgba(222,222,222,.65),0 0 0 3px rgba(158,230,255,.15)}
.fd-period-calendar.is-dark .fd-period-days button:is(.is-start,.is-end){
  background:linear-gradient(rgba(110,168,255,.62),rgba(110,168,255,.34));border-color:rgba(158,230,255,.6);color:#fff;
  box-shadow:inset 0 1px 0 rgba(222,222,222,.65),0 6px 18px rgba(110,168,255,.35)
}
.fd-period-calendar.is-dark .fd-period-days button.is-today::after{width:6px;height:6px;left:calc(50% - 3px);background:rgb(61,220,132);box-shadow:0 0 0 3px rgba(158,230,255,.15)}
.fd-period-calendar.is-dark .fd-period-inputs input,.fd-period-calendar.is-dark .fd-period-presets button,.fd-period-calendar.is-dark .fd-period-shortcuts footer [data-cancel]{
  border:1px solid rgba(255,255,255,.18);background:linear-gradient(rgba(255,255,255,.14),rgba(255,255,255,.06));box-shadow:inset 0 1px 0 rgba(222,222,222,.65);color:rgb(231,235,244)
}
.fd-period-calendar.is-dark .fd-period-presets button[aria-pressed=true]{background:linear-gradient(rgba(110,168,255,.62),rgba(110,168,255,.34));border-color:rgba(158,230,255,.6);color:#fff}
.fd-period-calendar.is-dark .fd-period-resumo{border-color:rgba(158,230,255,.28);background:linear-gradient(rgba(110,168,255,.16),rgba(110,168,255,.06))}
.fd-period-calendar.is-dark .fd-period-resumo-rot{color:rgb(158,230,255)}

/* Refino de 30/10/2026 (2ª rodada): card de trás mais leve e mais estreito; tema claro no vidro da referência
   (versão clara); início/fim e atalho escolhido com o azul forte de antes nos dois temas. */
.fd-period-calendar{width:min(700px,calc(100vw - 32px));padding:10px;border-radius:30px;box-shadow:0 24px 60px -18px rgba(10,22,44,.35),0 2px 6px rgba(10,22,44,.05);background:rgba(240,245,252,.55);border-color:rgba(255,255,255,.7);-webkit-backdrop-filter:blur(24px) saturate(1.4);backdrop-filter:blur(24px) saturate(1.4)}
.fd-period-calendar.is-dark{background:rgba(12,14,19,.55);border-color:rgba(255,255,255,.08);box-shadow:0 24px 60px -18px rgba(0,0,0,.65)}
.fd-period-layout{grid-template-columns:minmax(0,1fr) 216px;gap:10px}
.fd-period-calendar.is-dark :is(.fd-period-month,.fd-period-shortcuts){box-shadow:inset 0 1px 0 rgba(222,222,222,.65),0 2px 8px rgba(0,0,0,.25)}

/* Tema claro: mesmo vidro da referência, em branco. */
.fd-period-calendar:not(.is-dark) :is(.fd-period-month,.fd-period-shortcuts){
  background:linear-gradient(rgba(255,255,255,.88),rgba(255,255,255,.6));border:1px solid rgba(255,255,255,.95);border-radius:24px;
  box-shadow:inset 0 1px 0 #fff,0 1px 2px rgba(15,27,45,.05),0 8px 24px -16px rgba(15,27,45,.25)
}
.fd-period-calendar:not(.is-dark) h2{background:linear-gradient(90deg,#4a8ae0,#38b2e8);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:22px;font-weight:800;letter-spacing:-.44px}
.fd-period-calendar:not(.is-dark) .fd-period-heading button{
  width:36px;height:36px;flex:0 0 36px;border-radius:12px;border:1px solid rgba(15,27,45,.09);background:linear-gradient(#fff,rgba(255,255,255,.7));
  color:#5b6b82;box-shadow:inset 0 1px 0 #fff,0 4px 10px rgba(15,27,45,.08);transition:transform .12s,box-shadow .2s
}
.fd-period-calendar:not(.is-dark) .fd-period-heading button:hover{transform:translateY(-1px);color:#142236}
.fd-period-calendar:not(.is-dark) .fd-period-month-label{height:36px;border-radius:12px;border:1px solid rgba(15,27,45,.09);background:linear-gradient(#fff,rgba(255,255,255,.7));box-shadow:inset 0 1px 0 #fff;color:#142236;font-size:14px;font-weight:700}
.fd-period-calendar:not(.is-dark) .fd-period-weekdays{height:30px;margin-bottom:8px;border-radius:14px;border:1px solid rgba(15,27,45,.08);background:linear-gradient(rgba(255,255,255,.95),rgba(255,255,255,.6));box-shadow:inset 0 1px 0 #fff;color:#66748a;font-size:12px;font-weight:700;letter-spacing:.4px}
.fd-period-calendar:not(.is-dark) .fd-period-days button{
  border-radius:14px;border:1px solid rgba(15,27,45,.09);background:linear-gradient(rgba(255,255,255,.98),rgba(255,255,255,.66));
  box-shadow:inset 0 1px 0 #fff,0 1px 2px rgba(15,27,45,.05);color:#142236;font-size:14px;font-weight:700;
  transition:transform .12s,box-shadow .2s,background .25s ease calc(var(--d,0)*14ms),border-color .2s,opacity .2s
}
.fd-period-calendar:not(.is-dark) .fd-period-days button:hover:not(:disabled){transform:translateY(-1px);border-color:rgba(98,158,233,.45);box-shadow:inset 0 1px 0 #fff,0 6px 14px -6px rgba(15,27,45,.2)}
.fd-period-calendar:not(.is-dark) .fd-period-days button:is(.is-outside,.is-before){background:linear-gradient(rgba(255,255,255,.55),rgba(255,255,255,.3));color:#66748a;opacity:.45;filter:none}
.fd-period-calendar:not(.is-dark) .fd-period-days button.is-preview{background:linear-gradient(rgba(98,158,233,.16),rgba(98,158,233,.07));border-color:rgba(98,158,233,.28);opacity:1}
.fd-period-calendar:not(.is-dark) .fd-period-days button.is-in-range{background:linear-gradient(rgba(98,158,233,.22),rgba(98,158,233,.1));border-color:rgba(98,158,233,.32);color:#1d4f8f;opacity:1}
.fd-period-calendar:not(.is-dark) .fd-period-days button.is-preview-end{background:linear-gradient(rgba(98,158,233,.34),rgba(98,158,233,.16));border-color:#629ee9;box-shadow:inset 0 1px 0 #fff,0 0 0 3px rgba(98,158,233,.15)}
.fd-period-calendar:not(.is-dark) .fd-period-days button.is-today::after{width:6px;height:6px;left:calc(50% - 3px);background:#3ddc84;box-shadow:0 0 0 3px rgba(98,158,233,.18)}
.fd-period-calendar:not(.is-dark) :is(.fd-period-inputs input,.fd-period-presets button,.fd-period-shortcuts footer [data-cancel]){
  border:1px solid rgba(15,27,45,.09);background:linear-gradient(rgba(255,255,255,.98),rgba(255,255,255,.66));box-shadow:inset 0 1px 0 #fff,0 1px 2px rgba(15,27,45,.05);color:#142236
}
.fd-period-calendar:not(.is-dark) .fd-period-resumo{border-color:rgba(98,158,233,.28);background:linear-gradient(rgba(98,158,233,.12),rgba(98,158,233,.05))}

/* Início/fim e atalho escolhido: azul forte de antes, nos dois temas (pedido do dono). */
.fd-period-calendar:not(.is-dark) .fd-period-days button:is(.is-start,.is-end),
.fd-period-calendar.is-dark .fd-period-days button:is(.is-start,.is-end){
  background:linear-gradient(145deg,#80b3f1,#4a8ae0);border-color:transparent;color:#fff;font-weight:800;opacity:1;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.45),0 8px 18px -8px rgba(74,138,224,.9)
}
.fd-period-calendar:not(.is-dark) .fd-period-presets button[aria-pressed=true],
.fd-period-calendar.is-dark .fd-period-presets button[aria-pressed=true]{
  background:linear-gradient(145deg,#80b3f1,#4a8ae0);border-color:transparent;color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 8px 18px -10px rgba(74,138,224,.9)
}
.fd-period-calendar .fd-period-days button:is(.is-start,.is-end).is-today::after{background:#fff;box-shadow:none}

/* Reserva estável para o mês mais longo, incluindo o ano e o respiro lateral. */
.fd-period-calendar .fd-period-month-label{box-sizing:border-box;flex:0 0 180px;width:180px}
