/* 21st/shadcn-inspired calendar, adapted to the existing AUREON contract. */
.mv-date-source{
  position:absolute!important;width:1px!important;height:1px!important;
  padding:0!important;margin:-1px!important;overflow:hidden!important;
  clip-path:inset(50%);white-space:nowrap;border:0!important;
}
.mv-date-trigger{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  width:100%;min-width:0;min-height:49px;padding:12px 14px;
  border:1px solid var(--linie-stark);border-radius:var(--r-mittel);
  background:rgba(243,233,236,.035);color:var(--ink);
  font:500 15px/1.5 'Manrope',sans-serif;text-align:left;cursor:pointer;
  transition:border-color .18s ease,background-color .18s ease;
}
.mv-date-trigger svg{width:19px;height:19px;flex:none;color:var(--signal-hell)}
.mv-date-trigger[data-empty="true"] span{color:var(--ink-schwach)}
.mv-date-trigger[aria-invalid="true"]{border-color:var(--err)}
.mv-date-trigger:disabled{opacity:.45;cursor:not-allowed}
.mv-date-trigger:focus-visible,.mv-calendar :is(button,select):focus-visible{
  outline:2px solid var(--signal-hell,#C4B5FD);outline-offset:3px;
}
.mv-calendar{
  position:fixed;inset:auto;margin:0;padding:18px;width:344px;
  max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overflow:auto;
  border:1px solid transparent;border-radius:20px;color:#F3E9EC;
  background:linear-gradient(160deg,#211b26,#151217) padding-box,
    linear-gradient(135deg,#807487,#37303e 38%,#51445e 78%,#918899) border-box;
  box-shadow:0 24px 70px rgba(0,0,0,.5),inset 0 1px 0 rgba(255,255,255,.04);
  color-scheme:dark;font:500 13px/1.4 'Manrope',sans-serif;
}
.mv-calendar[open]{animation:mv-calendar-in .18s cubic-bezier(.2,.8,.2,1)}
.mv-calendar::backdrop{background:rgba(8,6,10,.48)}
.mv-calendar__top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}
.mv-calendar__context{margin:0;color:#bcb1c5;font-size:11px;font-weight:750;letter-spacing:.1em;text-transform:uppercase}
.mv-calendar button{font:inherit;cursor:pointer;-webkit-appearance:none;appearance:none}
.mv-calendar__icon{
  display:grid;place-items:center;flex:none;width:36px;height:36px;padding:0;
  border:1px solid #463c4e;border-radius:10px;background:#26202d;color:#eee5f2;
}
.mv-calendar__icon svg{width:17px;height:17px;pointer-events:none}
.mv-calendar__close{width:30px;height:30px;background:transparent;border-color:transparent;color:#bcb1c5}
.mv-calendar__nav{display:flex;align-items:center;gap:8px;margin-bottom:16px}
.mv-calendar__select{
  position:relative;display:flex;align-items:center;min-width:0;flex:1;
}
.mv-calendar__select--year{flex:0 0 76px}
.mv-calendar select{
  width:100%;min-width:0;min-height:38px;padding:7px 19px 7px 5px;
  border:0;border-radius:7px;background:transparent;color:#F3E9EC;
  font:750 14px/1.3 'Manrope',sans-serif;appearance:none;cursor:pointer;
}
.mv-calendar option{background:#211b26;color:#F3E9EC}
.mv-calendar__select>svg{position:absolute;right:3px;width:12px;height:12px;pointer-events:none;color:#bcb1c5}
.mv-calendar__grid{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:2px}
.mv-calendar__grid th{height:28px;padding:0;color:#ada1b7;font-size:11px;font-weight:650;text-align:center}
.mv-calendar__grid td{height:38px;padding:0;text-align:center}
.mv-calendar__day{
  display:grid;place-items:center;width:100%;height:38px;padding:0;
  border:1px solid transparent;border-radius:10px;background:transparent;color:#F3E9EC;
  font-variant-numeric:tabular-nums;font-weight:650!important;
}
.mv-calendar__day[data-outside="true"]{color:#ada1b7}
.mv-calendar__day[aria-current="date"]{border-color:#847092}
.mv-calendar td[aria-selected="true"] .mv-calendar__day{
  background:#C4B5FD;border-color:#ded5ff;color:#201232;box-shadow:0 2px 8px rgba(0,0,0,.2);
}
.mv-calendar button:disabled{color:#726779;cursor:not-allowed;box-shadow:none}
.mv-calendar__icon:disabled{border-color:#332b3a;background:transparent}
.mv-calendar__selection{margin:14px 2px 0;min-height:19px;font-size:12px;color:#bcb1c5}
.mv-calendar__footer{display:flex;justify-content:space-between;gap:10px;margin-top:14px;padding-top:14px;border-top:1px solid #3b3243}
.mv-calendar__footer button{min-height:40px;padding:8px 15px;border:1px solid #50415d;border-radius:10px;color:#F3E9EC;background:#2a2132;font-weight:700}
.mv-calendar__footer .mv-calendar__clear{background:transparent;border-color:transparent;color:#bcb1c5}
.mv-calendar__sr{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media (hover:hover) and (pointer:fine){
  .mv-date-trigger:not(:disabled):hover{border-color:var(--signal-hell);background-color:rgba(196,181,253,.06)}
  .mv-calendar button:not(:disabled):hover{background-color:#3a2e46;color:#fff}
  .mv-calendar td[aria-selected="true"] .mv-calendar__day:hover{background:#d5c9ff;color:#201232}
}
@media (max-width:380px){
  .mv-calendar{padding:14px}
  .mv-calendar__nav{gap:4px}
  .mv-calendar__icon{width:32px;height:36px}
  .mv-calendar select{font-size:13px}
  .mv-calendar__select--year{flex-basis:68px}
}
@keyframes mv-calendar-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media (prefers-reduced-motion:reduce){.mv-calendar[open]{animation:none}.mv-date-trigger{transition:none}}
@media (forced-colors:active){.mv-calendar{border-color:CanvasText}.mv-calendar td[aria-selected="true"] .mv-calendar__day{outline:2px solid Highlight}}
@media print{.mv-calendar{display:none!important}}
