|
- @use '../atoms/variables' as *;
-
- // ─── Wrapper ─────────────────────────────────────────────────────────────────
- .week-nav {
- display: flex;
- align-items: center;
- gap: $space-1;
- background: rgba($color-white, 0.18);
- border-radius: $radius-pill;
- padding: $space-1 $space-2;
- backdrop-filter: blur(6px);
- -webkit-backdrop-filter: blur(6px);
- }
-
- // ─── Pfeile ──────────────────────────────────────────────────────────────────
- .week-nav__arrow {
- display: flex;
- align-items: center;
- justify-content: center;
- width: 28px;
- height: 28px;
- border-radius: 50%;
- background: transparent;
- border: none;
- color: $color-white;
- cursor: pointer;
- text-decoration: none;
- flex-shrink: 0;
- transition: background $transition-fast;
-
- &:hover { background: rgba($color-white, 0.2); }
-
- svg { width: 8px; height: 14px; }
- }
-
- // ─── Tage-Container (Slide-Animation) ────────────────────────────────────────
- .week-nav__days {
- display: flex;
- align-items: center;
- gap: $space-1;
- overflow: hidden;
- position: relative;
-
- &.slide-out-left { animation: slideOutLeft 0.18s ease forwards; }
- &.slide-out-right { animation: slideOutRight 0.18s ease forwards; }
- &.slide-in-right { animation: slideInRight 0.18s ease forwards; }
- &.slide-in-left { animation: slideInLeft 0.18s ease forwards; }
- }
-
- @keyframes slideOutLeft { to { opacity: 0; transform: translateX(-24px); } }
- @keyframes slideOutRight { to { opacity: 0; transform: translateX(24px); } }
- @keyframes slideInRight { from { opacity: 0; transform: translateX(24px); } to { opacity: 1; transform: translateX(0); } }
- @keyframes slideInLeft { from { opacity: 0; transform: translateX(-24px); } to { opacity: 1; transform: translateX(0); } }
-
- // ─── Einzelner Tag ───────────────────────────────────────────────────────────
- .week-nav__day {
- display: flex;
- flex-direction: column;
- align-items: center;
- padding: $space-2 $space-3;
- border-radius: $radius-md;
- cursor: pointer;
- text-decoration: none;
- width: 64px;
- flex-shrink: 0;
- flex-grow: 0;
- transition: background $transition-fast;
- user-select: none;
-
- &:hover:not(.week-nav__day--active) {
- background: rgba($color-white, 0.15);
- }
-
- &--active {
- background: $color-white;
-
- .week-nav__day-name,
- .week-nav__day-date { color: $color-text-dark; }
- }
-
- &--today:not(&--active) {
- .week-nav__day-name {
- text-decoration: underline;
- text-underline-offset: 3px;
- }
- }
- }
-
- .week-nav__day-name {
- font-size: $font-size-sm;
- font-weight: $font-weight-bold;
- color: $color-white;
- line-height: 1.2;
- }
-
- .week-nav__day-date {
- font-size: $font-size-xs;
- color: rgba($color-white, 0.78);
- line-height: 1.3;
- }
-
- // ─── Kalender-Icon ───────────────────────────────────────────────────────────
- .week-nav__cal {
- display: flex;
- align-items: center;
- justify-content: center;
- width: 34px;
- height: 34px;
- border-radius: $radius-md;
- background: rgba($color-white, 0.2);
- color: $color-white;
- cursor: pointer;
- border: none;
- margin-left: $space-1;
- flex-shrink: 0;
- transition: background $transition-fast;
-
- svg { width: 16px; height: 16px; pointer-events: none; }
-
- &:hover,
- &--active { background: rgba($color-white, 0.35); }
- }
|