/* Calendar custom styles to fix date picker issues */

/* Fix conflicting styles between selected and today */

.rdp-day_selected {
  background-color: rgb(124 58 237) !important; /* violet-600 */
  color: white !important;
  font-weight: 600;
  border: none !important;
}

.rdp-day_selected:hover {
  background-color: rgb(109 40 217) !important; /* violet-700 */
  color: white !important;
  border: none !important;
}

.rdp-day_selected:focus {
  background-color: rgb(109 40 217) !important; /* violet-700 */
  color: white !important;
  border: none !important;
}

/* Today styling when not selected */

.rdp-day_today:not(.rdp-day_selected) {
  background-color: rgb(245 243 255) !important; /* violet-50 */
  color: rgb(91 33 182) !important; /* violet-800 */
  border: 2px solid rgb(196 181 253) !important; /* violet-300 */
  font-weight: 600;
}

.rdp-day_today:not(.rdp-day_selected):hover {
  background-color: rgb(237 233 254) !important; /* violet-100 */
  color: rgb(91 33 182) !important; /* violet-800 */
  border: 2px solid rgb(196 181 253) !important; /* violet-300 */
}

/* Dark mode support */

@media (prefers-color-scheme: dark) {
  .rdp-day_today:not(.rdp-day_selected) {
    background-color: rgb(46 16 101) !important; /* violet-900 */
    color: rgb(245 243 255) !important; /* violet-50 */
    border: 2px solid rgb(109 40 217) !important; /* violet-700 */
  }

  .rdp-day_today:not(.rdp-day_selected):hover {
    background-color: rgb(68 24 139) !important; /* violet-800 */
    color: rgb(245 243 255) !important; /* violet-50 */
    border: 2px solid rgb(109 40 217) !important; /* violet-700 */
  }
}

/* Prevent double borders and overlapping colors */

.rdp-day {
  border-radius: 6px;
  transition: all 0.2s ease-in-out;
  position: relative;
}

/* Ensure selected state always wins over today */

.rdp-day[aria-selected='true'] {
  background-color: rgb(124 58 237) !important; /* violet-600 */
  color: white !important;
  border: none !important;
  font-weight: 600;
}

.rdp-day[aria-selected='true']:hover {
  background-color: rgb(109 40 217) !important; /* violet-700 */
  color: white !important;
  border: none !important;
}

.rdp-day[aria-selected='true']:focus {
  background-color: rgb(109 40 217) !important; /* violet-700 */
  color: white !important;
  border: none !important;
  outline: 2px solid rgb(147 51 234); /* violet-500 */
  outline-offset: 2px;
}

/* DatePicker in modal specific fixes */

.date-picker-calendar .rdp {
  margin: 0;
}

.date-picker-calendar .rdp-day {
  width: 36px;
  height: 36px;
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
}

/* Remove any background conflicts */

.rdp-day.rdp-day_today.rdp-day_selected {
  background-color: rgb(124 58 237) !important; /* violet-600 */
  color: white !important;
  border: none !important;
}

/* Weekend styling */

.rdp-day:nth-child(1),
.rdp-day:nth-child(7) {
  color: rgb(239 68 68); /* red-500 for weekends */
}

.rdp-day_selected:nth-child(1),
.rdp-day_selected:nth-child(7) {
  color: white !important; /* override weekend color when selected */
}

header.page_container__oNNf6 {
    width: 100%;
}
header.page_container__oNNf6 div.page_content__ijTVz {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 1rem;

        padding: 1rem;

        border-bottom: 1px solid var(--color-dark-16);
    }

aside.page_container__5xAhV {
    display: flex;
    flex-direction: column;

    min-width: 18rem;
    height: 100svh;

    position: sticky;
    top: 0;

    padding-bottom: 4.5rem;

    border-right: 1px solid var(--color-dark-16);
}
aside.page_container__5xAhV div.page_workspaceSelector__RW32m {
        padding: 0.75rem 1rem;
        border-bottom: 1px solid var(--color-dark-16);
    }
aside.page_container__5xAhV div.page_navigationContent__GiZ3n {
        display: flex;
        flex-direction: column;
        gap: 0.5rem;

        width: 100%;

        padding: 1rem;
    }
:is(aside.page_container__5xAhV div.page_navigationContent__GiZ3n) div.page_navigationHeader__yJacM {
            display: flex;
            align-items: center;
            gap: 0.5rem;
        }
:is(:is(aside.page_container__5xAhV div.page_navigationContent__GiZ3n) div.page_navigationHeader__yJacM) i.page_icon__ysRYX {
                font-size: 0.875rem;
            }
:is(:is(aside.page_container__5xAhV div.page_navigationContent__GiZ3n) div.page_navigationHeader__yJacM) span.page_navigationTitle__QKiSM {
                font-size: 0.65rem;
                font-weight: 600;
                line-height: 1;
                text-transform: uppercase;
                color: var(--color-dark-64);
                letter-spacing: 0.05em;
            }
:is(aside.page_container__5xAhV div.page_navigationContent__GiZ3n) nav.page_navigation__DmZJ6 {
            display: grid;
            gap: 0.25rem;
        }
:is(:is(aside.page_container__5xAhV div.page_navigationContent__GiZ3n) nav.page_navigation__DmZJ6) button.page_navItemButton__uQt4p {
                display: flex;
                align-items: center;
                justify-content: flex-start;
                gap: 0.85rem;

                width: 100%;
                padding: 0.75rem 1rem;
                border-radius: 0.75rem;

                background: transparent;
                border: 1px solid transparent;
                cursor: pointer;

                color: var(--color-dark-96);

                font-size: 0.875rem;
                font-weight: 500;
            }
:is(:is(:is(aside.page_container__5xAhV div.page_navigationContent__GiZ3n) nav.page_navigation__DmZJ6) button.page_navItemButton__uQt4p) i.page_icon__ysRYX {
                    font-size: 1.125rem;

                    min-width: 1.125rem;

                    color: var(--color-dark-64);
                }
:is(:is(:is(aside.page_container__5xAhV div.page_navigationContent__GiZ3n) nav.page_navigation__DmZJ6) button.page_navItemButton__uQt4p):hover {
                    background: var(--color-primary-08);
                    color: var(--color-dark);
                }
:is(:is(:is(aside.page_container__5xAhV div.page_navigationContent__GiZ3n) nav.page_navigation__DmZJ6) button.page_navItemButton__uQt4p):hover i.page_icon__ysRYX {
                        color: var(--color-primary-72);
                    }
.page_active__Afq62:is(:is(:is(aside.page_container__5xAhV div.page_navigationContent__GiZ3n) nav.page_navigation__DmZJ6) button.page_navItemButton__uQt4p) {
                    background: linear-gradient(to right, var(--color-primary), var(--color-primary-80));
                    color: var(--color-white);

                    position: relative;

                    overflow: hidden;

                    box-shadow:
                        0 10px 15px -3px var(--color-dark-alt-16),
                        0 4px 6px -4px var(--color-dark-alt-16);
                }
.page_active__Afq62:is(:is(:is(aside.page_container__5xAhV div.page_navigationContent__GiZ3n) nav.page_navigation__DmZJ6) button.page_navItemButton__uQt4p)::after {
                        content: '';
                        position: absolute;
                        inset: 0;
                        background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='100'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
                        opacity: 0.25;
                        pointer-events: none;
                    }
.page_active__Afq62:is(:is(:is(aside.page_container__5xAhV div.page_navigationContent__GiZ3n) nav.page_navigation__DmZJ6) button.page_navItemButton__uQt4p) i.page_icon__ysRYX {
                        color: var(--color-white);
                    }

main.page_layout__nKFUp {
    display: flex;
    flex-direction: column;
}
main.page_layout__nKFUp div.page_page__9Px19 {
        display: flex;
        flex-direction: row;

        min-height: 100svh;
        height: 100%;
    }
:is(main.page_layout__nKFUp div.page_page__9Px19) div.page_pageContent__2TYqH {
            width: 100%;

            display: flex;
            flex-direction: column;
            gap: 1rem;

            padding: 1.5rem;
        }

