:host {
  display: flex;
  flex-direction: column;
  overflow: visible;
  border-radius: var(--nylas-border-radius-2x);
  width: fit-content;
  background: var(--nylas-base-0);
  position: relative;
  box-shadow: 0px 4px 8px 2px rgba(0, 0, 0, 0.05), 0px 8px 16px -2px rgba(0, 0, 0, 0.1);
  --nylas-primary: #2563eb;
  --nylas-error: #cc4841;
  --nylas-error-50: #ffeae8;
  --nylas-error-100: #ffc5bf;
  --nylas-error-200: #fecaca;
  --nylas-error-pressed: #992222;
  --nylas-wraning: #f06c00;
  --nylas-success: #16a392;
  --nylas-info: #2b8fc2;
  --nylas-base-0: #ffffff;
  --nylas-base-25: #fcfcfd;
  --nylas-base-50: #f8f9fc;
  --nylas-base-100: #eaecf5;
  --nylas-base-200: #d5d9eb;
  --nylas-base-300: #b3b8d8;
  --nylas-base-400: #717bbc;
  --nylas-base-500: #4e5ba6;
  --nylas-base-600: #3e4784;
  --nylas-base-700: #263f72;
  --nylas-base-800: #293056;
  --nylas-base-900: #101323;
  --nylas-base-950: #0e101b;
  --nylas-color-blue-100: #e0e6f9;
  --nylas-border-radius: 0.25rem;
  --nylas-border-radius-2x: 0.5rem;
  --nylas-border-radius-3x: 0.75rem;
  --nylas-font-family: "Inter", sans-serif;
  /* Greys */
  --nylas-color-black: #000000;
  --nylas-color-grey-900: #2c2c2c;
  --nylas-color-grey-800: #4b4b4b;
  --nylas-color-grey-700: #6e6e6e;
  --nylas-color-grey-600: #8e8e8e;
  --nylas-color-grey-500: #b3b3b3;
  --nylas-color-grey-400: #cacaca;
  --nylas-color-grey-300: #e1e1e1;
  --nylas-color-grey-200: #eaeaea;
  --nylas-color-grey-100: #f5f5f5;
  --nylas-color-grey-50: #fbfcfe;
  --nylas-color-white: #ffffff;
  /* Reds */
  --nylas-color-red-900: #992222;
  --nylas-color-red-700: #cc4841;
  --nylas-color-red-500: #ff786a;
  --nylas-color-red-300: #ffa79e;
  --nylas-color-red-100: #ffc5bf;
  --nylas-color-red-50: #ffeae8;
  /* Blues */
  --nylas-color-blue-900: #213571;
  --nylas-color-blue-700: #314fa9;
  --nylas-color-blue-500: #4169e1;
  --nylas-color-blue-300: #bdccf9;
  --nylas-color-blue-100: #e0e6f9;
  --nylas-color-blue-50: #f6f8fd;
  /* Yellows */
  --nylas-color-yellow-900: #7c6506;
  --nylas-color-yellow-700: #c29f09;
  --nylas-color-yellow-500: #f7c90b;
  --nylas-color-yellow-300: #f9de70;
  --nylas-color-yellow-100: #fceba9;
  --nylas-color-yellow-50: #fdf4ce;
  /* Greens */
  --nylas-color-green-900: #0e6b60;
  --nylas-color-green-700: #16a392;
  --nylas-color-green-500: #17c3b2;
  --nylas-color-green-300: #74dbd1;
  --nylas-color-green-100: #a2e7e0;
  --nylas-color-green-50: #d1f3f0;
  /* Purples */
  --nylas-color-purple-900: #643554;
  --nylas-color-purple-700: #954f7d;
  --nylas-color-purple-500: #c769a7;
  --nylas-color-purple-300: #dda5ca;
  --nylas-color-purple-100: #e0bdd6;
  --nylas-color-purple-50: #e9dde5;
  /* Skies */
  --nylas-color-sky-900: #20698f;
  --nylas-color-sky-700: #2b8fc2;
  --nylas-color-sky-500: #6dceff;
  --nylas-color-sky-300: #8fdaff;
  --nylas-color-sky-100: #b8e7ff;
  --nylas-color-sky-50: #d9f2ff;
  font-family: var(--nylas-font-family);
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "slnt" 0;
}
@media screen and (max-width: 768px) {
  :host {
    width: auto;
    min-width: 325px;
  }
}

:root {
  font-family: inherit;
}

.error {
  padding: 8rem 12rem;
  color: var(--nylas-base-0);
  background-color: var(--nylas-error);
  margin: 1.5rem;
  border-radius: var(--nylas-border-radius-2x);
}

.message-banner {
  text-align: right;
  color: var(--nylas-base-800);
  padding: 1rem;
  border-bottom: 1px solid var(--nylas-color-primary-200);
  margin: 0;
}

.loading {
  margin: 1.5rem;
  display: flex;
  gap: 1rem;
}
.loading .skeleton {
  border-radius: var(--nylas-border-radius-2x);
  animation: pulsate 1.5s infinite;
}
.loading .skeleton:nth-child(2) {
  animation-delay: -100ms;
}
.loading .skeleton:nth-child(3) {
  animation-delay: -200ms;
}
.loading .skeleton:nth-child(4) {
  animation-delay: -300ms;
}
.loading .skeleton:nth-child(5) {
  animation-delay: -400ms;
}
.loading .left .skeleton {
  height: 100%;
  width: 400px;
}
.loading .right .skeleton {
  height: 5rem;
  width: 300px;
  margin-bottom: 1rem;
}
.loading .right .skeleton:last-child {
  margin-bottom: 0;
}

@keyframes pulsate {
  0% {
    background-color: var(--nylas-base-50);
  }
  50% {
    background-color: var(--nylas-base-100);
  }
  100% {
    background-color: var(--nylas-base-50);
  }
}
.select-date-page,
.additional-data-page,
.booked-event-page,
.manual-confirmation-page,
.cancelled-event-page,
.cancel-flow-page {
  border-top-left-radius: var(--nylas-border-radius-2x);
  border-top-right-radius: var(--nylas-border-radius-2x);
}

.select-date-page,
.additional-data-page {
  display: flex;
}
@media screen and (max-width: 768px) {
  .select-date-page,
  .additional-data-page {
    flex-direction: column;
  }
}

.booked-event-page,
.manual-confirmation-page {
  background-color: var(--nylas-base-50);
}

.cancelled-event-page,
.manual-confirmation-page,
.cancel-flow-page {
  padding: 1rem;
  height: 496px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.booked-event-page,
.manual-confirmation-page,
.cancelled-event-page,
.cancel-flow-page {
  min-width: 784px;
  background: var(--nylas-base-50);
}
@media screen and (max-width: 768px) {
  .booked-event-page,
  .manual-confirmation-page,
  .cancelled-event-page,
  .cancel-flow-page {
    min-width: 90%;
  }
}

.left-panel {
  display: flex;
  flex-direction: column;
  min-width: 424px;
  border-top-left-radius: inherit;
  background: var(--nylas-base-0);
  position: relative;
  padding: 1rem 0 0 0;
  height: 624px;
}
@media screen and (max-width: 768px) {
  .left-panel {
    border-top-right-radius: inherit;
    min-width: unset;
    height: auto;
  }
}

@media screen and (max-width: 768px) {
  .select-date-page .left-panel {
    height: 624px;
  }
}

.border {
  margin-left: -20px;
  margin-right: -20px;
  border-top-width: 1px;
  height: 0.5px;
  background-color: var(--nylas-base-200);
}
@media screen and (max-width: 768px) {
  .border {
    display: none;
  }
}

.right-panel {
  min-width: 360px;
  width: 360px;
  background-color: var(--nylas-base-50);
  height: 624px;
  padding-top: 16px;
  border-left: 1px solid var(--nylas-base-200);
  border-top-right-radius: inherit;
}
.right-panel.reschedule {
  border-top-right-radius: 0px;
}
@media screen and (max-width: 768px) {
  .right-panel {
    border-top-right-radius: 0px;
    width: inherit;
    min-width: unset;
    height: auto;
    border-left: none;
  }
}
.right-panel h2 {
  display: flex;
  margin: 0;
  height: 48px;
  gap: 0.5rem;
  justify-content: center;
  align-items: center;
  width: auto;
  font-size: 1.125rem;
  line-height: 1.5rem;
  font-weight: 500;
  text-align: center;
  color: var(--nylas-base-800);
}

.additional-data-page .left-panel {
  background-color: var(--nylas-base-50);
}
.additional-data-page .right-panel {
  background-color: var(--nylas-base-0);
}

nylas-selected-event-card {
  height: 604px;
  padding: 0 1rem;
}
@media screen and (max-width: 768px) {
  nylas-selected-event-card {
    height: 250px;
  }
}

.footer {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
  padding: 16px;
  font-size: 14px;
  font-weight: 300;
  color: var(--nylas-base-500);
  border-top: 1px solid var(--nylas-base-200);
  min-height: 24px;
}
.footer .powered-by-nylas {
  display: flex;
  align-items: center;
  text-decoration: none;
  color: var(--nylas-base-500);
}
.footer .powered-by-nylas:hover {
  color: var(--nylas-base-800);
}
.footer svg {
  fill: var(--nylas-base-500);
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

.footer svg {
  margin-top: 1px;
}

nylas-selected-event-card::part(nsec__timezone) {
  position: absolute;
  bottom: 0;
}

nylas-notification {
  margin: 1.5rem;
  width: -webkit-fill-available;
  width: -moz-available;
  position: absolute;
}

nylas-locale-switch {
  position: absolute;
  padding: 18px 20px;
  bottom: 0;
  width: -webkit-fill-available;
  width: -moz-available;
  border-top: 1px solid var(--nylas-base-200);
}
@media screen and (max-width: 768px) {
  nylas-locale-switch {
    height: auto;
  }
}

nylas-date-picker {
  padding: 0 20px;
}

button-component#report-issue {
  width: auto;
  position: absolute;
  bottom: 4px;
  left: 16px;
}

.language-feedback-container {
  width: auto;
  position: absolute;
  bottom: 4px;
  left: 16px;
  display: flex;
  gap: 8px;
  align-items: center;
}
.language-feedback-container button-component#report-issue {
  position: initial;
}

nylas-feedback-form {
  position: absolute;
  top: 0;
  height: 100%;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background: rgba(0, 0, 0, 0.6);
  z-index: 2;
  border-radius: inherit;
}