/* ALOS Date Studio — seletor temporal consistente em todo o sistema. */
:root{
  --alos-date-navy:#0b2035;
  --alos-date-navy-2:#173a59;
  --alos-date-gold:#bd9351;
  --alos-date-blue:#2f6de8;
}

input[data-alos-date-picker]{
  cursor:pointer !important;
  caret-color:transparent;
  font-variant-numeric:tabular-nums;
  background-image:
    linear-gradient(135deg,transparent 50%,color-mix(in srgb,var(--alos-date-gold) 14%,transparent) 50%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23173a59' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='3'/%3E%3Cpath d='M16 3v4M8 3v4M3 10h18'/%3E%3Cpath d='M8 14h.01M12 14h.01M16 14h.01M8 18h.01M12 18h.01'/%3E%3C/svg%3E");
  background-repeat:no-repeat,no-repeat;
  background-position:100% 0,calc(100% - 14px) 50%;
  background-size:48px 100%,20px 20px;
  padding-right:48px !important;
  transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease !important;
}
input[data-alos-date-picker]:hover{
  border-color:color-mix(in srgb,var(--alos-date-blue) 42%,var(--border)) !important;
  background-color:color-mix(in srgb,var(--card) 94%,#eef5ff) !important;
}
input[data-alos-date-picker]:focus,
input[data-alos-date-picker][aria-expanded="true"]{
  outline:none !important;
  border-color:var(--alos-date-blue) !important;
  box-shadow:0 0 0 4px color-mix(in srgb,var(--alos-date-blue) 14%,transparent) !important;
}
input[data-alos-date-picker]::-webkit-calendar-picker-indicator{
  opacity:0;
  width:42px;
  height:100%;
  cursor:pointer;
}

.alos-date-popover{
  position:fixed;
  z-index:2147482500;
  width:min(364px,calc(100vw - 24px));
  border:1px solid color-mix(in srgb,var(--alos-date-navy) 12%,#dbe4ee);
  border-radius:20px;
  background:color-mix(in srgb,var(--card,#fff) 97%,#f5f8fb);
  color:var(--text,#142033);
  box-shadow:0 28px 65px -26px rgba(2,15,30,.48),0 8px 24px -16px rgba(2,15,30,.25);
  overflow:hidden;
  opacity:0;
  transform:translateY(-7px) scale(.985);
  transform-origin:50% 0;
  pointer-events:none;
  transition:opacity .16s ease,transform .18s cubic-bezier(.2,.8,.2,1);
  font-family:'Manrope',sans-serif;
  -webkit-font-smoothing:antialiased;
}
.alos-date-popover.open{opacity:1;transform:none;pointer-events:auto}
.alos-date-popover.above{transform-origin:50% 100%}

.alos-date-head{
  position:relative;
  display:grid;
  grid-template-columns:1fr auto;
  gap:16px;
  align-items:start;
  padding:18px 18px 16px;
  color:#fff;
  background:
    radial-gradient(circle at 88% -20%,rgba(189,147,81,.34),transparent 45%),
    linear-gradient(135deg,var(--alos-date-navy),#102d48 68%,#173d5d);
}
.alos-date-head::after{
  content:"";
  position:absolute;
  right:46px;
  bottom:-32px;
  width:92px;
  height:92px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:50%;
}
.alos-date-kicker{display:block;color:#d9b778;font-size:10px;font-weight:850;letter-spacing:.16em;text-transform:uppercase}
.alos-date-head h3{margin:4px 0 0;font:500 21px/1.18 'Newsreader','Libre Baskerville',serif;letter-spacing:-.01em}
.alos-date-close{
  position:relative;
  z-index:1;
  display:grid;
  width:34px;
  height:34px;
  place-items:center;
  border:1px solid rgba(255,255,255,.16);
  border-radius:10px;
  background:rgba(255,255,255,.07);
  color:#fff;
  cursor:pointer;
}
.alos-date-close:hover{background:rgba(255,255,255,.14)}
.alos-date-close svg{width:16px;height:16px}

.alos-date-nav{display:grid;grid-template-columns:40px 1fr 40px;align-items:center;gap:8px;padding:14px 16px 8px}
.alos-date-nav button{
  display:grid;
  min-width:0;
  height:38px;
  place-items:center;
  border:1px solid var(--border,#dce4ed);
  border-radius:11px;
  background:var(--card,#fff);
  color:var(--alos-date-navy-2);
  cursor:pointer;
  transition:background .15s ease,border-color .15s ease,transform .15s ease;
}
.alos-date-nav button:hover{border-color:#adc5e5;background:#f3f7fd;transform:translateY(-1px)}
.alos-date-nav button svg{width:17px;height:17px}
.alos-date-period{display:flex !important;gap:6px !important;font-size:13px;font-weight:800 !important;letter-spacing:-.01em}
.alos-date-period small{font-size:11px;color:var(--muted,#718096);font-weight:700}

.alos-date-week{display:grid;grid-template-columns:repeat(7,1fr);padding:5px 15px 2px}
.alos-date-week span{text-align:center;color:var(--muted,#718096);font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.alos-date-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;padding:7px 14px 13px}
.alos-date-day{
  position:relative;
  display:grid;
  height:39px;
  min-width:0;
  place-items:center;
  border:0;
  border-radius:11px;
  background:transparent;
  color:var(--text,#142033);
  font:700 12.5px/1 'Manrope',sans-serif;
  cursor:pointer;
}
.alos-date-day:hover{background:#edf4fd;color:#174a86}
.alos-date-day.out{color:#a9b4c2;font-weight:600}
.alos-date-day.today::after{content:"";position:absolute;bottom:5px;width:4px;height:4px;border-radius:50%;background:var(--alos-date-gold)}
.alos-date-day.selected{color:#fff;background:linear-gradient(145deg,#1c5fbc,var(--alos-date-blue));box-shadow:0 8px 16px -9px rgba(47,109,232,.75)}
.alos-date-day.selected::after{background:#fff}
.alos-date-day:disabled{opacity:.28;cursor:not-allowed;background:transparent}

.alos-month-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;padding:12px 16px 19px}
.alos-month-option{
  min-height:48px;
  border:1px solid var(--border,#dce4ed);
  border-radius:13px;
  background:var(--card,#fff);
  color:var(--text,#142033);
  font:750 12px/1.15 'Manrope',sans-serif;
  cursor:pointer;
  transition:.15s ease;
}
.alos-month-option:hover{border-color:#9ebbe0;background:#f1f6fd;transform:translateY(-1px)}
.alos-month-option.current{border-color:color-mix(in srgb,var(--alos-date-gold) 55%,var(--border));box-shadow:inset 0 -2px 0 color-mix(in srgb,var(--alos-date-gold) 56%,transparent)}
.alos-month-option.selected{border-color:var(--alos-date-blue);background:linear-gradient(145deg,#1c5fbc,var(--alos-date-blue));color:#fff;box-shadow:0 10px 18px -12px rgba(47,109,232,.8)}
.alos-month-option:disabled{opacity:.32;cursor:not-allowed;transform:none}

.alos-date-footer{
  display:flex;
  align-items:center;
  gap:7px;
  padding:11px 14px 13px;
  border-top:1px solid var(--border,#e1e7ee);
  background:color-mix(in srgb,var(--bg2,#f7f9fc) 80%,#fff);
}
.alos-date-quick{
  min-height:34px;
  padding:0 10px;
  border:1px solid var(--border,#dce4ed);
  border-radius:999px;
  background:var(--card,#fff);
  color:var(--alos-date-navy-2);
  font:750 10.5px/1 'Manrope',sans-serif;
  cursor:pointer;
}
.alos-date-quick:hover{border-color:#9ebbe0;background:#eef5fd}
.alos-date-clear{margin-left:auto;color:#a13b39;border-color:#ebc8c5;background:#fff8f7}

.alos-date-backdrop{display:none}
body.alos-date-open{overflow:visible}

@media(max-width:620px){
  .alos-date-backdrop{position:fixed;inset:0;z-index:2147482499;background:rgba(7,20,34,.34);backdrop-filter:blur(2px)}
  body.alos-date-open .alos-date-backdrop{display:block}
  .alos-date-popover{left:12px !important;right:12px;bottom:12px !important;top:auto !important;width:auto;border-radius:22px;transform:translateY(18px) scale(.99);transform-origin:50% 100%}
  .alos-date-popover.open{transform:none}
  .alos-date-day{height:42px}
  body.alos-date-open{overflow:hidden}
}

@media(prefers-reduced-motion:reduce){.alos-date-popover,.alos-date-nav button,.alos-month-option{transition:none}}
