@charset "UTF-8";
@import 'https://fonts.googleapis.com/css2?family=Source+Sans+3:ital,wght@0,200..900;1,200..900&display=swap';
h1, h2, h3, h4, h5 {
  font-weight: 600;
}

h6 {
  font-weight: 400;
}

/* Heading Styles */
h1 {
  font-size: 2.5rem;
}

h2 {
  font-size: 2rem;
}

h3 {
  font-size: 1.5rem;
}

h4 {
  font-size: 1.25rem;
}

h5 {
  font-size: 1.125rem;
}

/* Body Styles */
.p-r, .p1-r, .p2-r, .p3-r, .p4-r, .p5-r, .navbar .navigation-button a p,
.navbar .navigation-button .link p, .navigation .links a, .navigation .links button, .have-problems p, .have-problems a, .text-input input, .textarea-input textarea, .select-input select, .date-input input, .file-input .fake-input, .form-error, .forgot-password-link, .dont-have-account p, .dont-have-account a, .auth-step__terms, .edit-appointment-container .add-results p, .file-input .appointment_recommendation_details .parameters, .appointment_recommendation_details .file-input .parameters, .file-input .appointment_recommendation_details .text, .appointment_recommendation_details .file-input .text, .inline-edit-form .loading-state,
.inline-edit-form .error-state, .user-info-container .user-info .name, .user-info-container .user-info .email, .button-small, .button-base, .button-large, .card-item .card-subtitle, .card-item-list .card-subtitle, .card-item-expandable .card-subtitle, .card-item-inline .card-subtitle, .results-container .results .folder .card-subtitle, .expandable-item .card-subtitle, .folder-details-container .results .result .card-subtitle, .p1-r, .p2-r, .p3-r, .inline-edit-form .loading-state,
.inline-edit-form .error-state, .p4-r, .p5-r {
  font-weight: 400;
}

.p-b, .p1-b, .p2-b, .p3-b, .p4-b, .p5-b, .navbar .navigation-button p, .appointment-form-container .header .header-text, .chip-small, .chip-base, .chip-large, .tag-input .tag-chip, .card-item .card-date, .card-item-list .card-date, .card-item-expandable .card-date, .card-item-inline .card-date, .results-container .results .folder .card-date, .expandable-item .card-date, .folder-details-container .results .result .card-date, .required-info, .p1-b, .result-summary__stat-value, .folder-summary__stat-value, .p2-b, .p3-b, .p4-b, .p5-b {
  font-weight: 600;
}

.p1-r, .user-info-container .user-info .name, .button-large, .p1-b, .result-summary__stat-value, .folder-summary__stat-value {
  font-size: 1.375rem;
}

.p2-r, .button-base, .p2-b, .chip-large {
  font-size: 1.125rem;
}

.p3-r, .navbar .navigation-button a p,
.navbar .navigation-button .link p, .navigation .links a, .navigation .links button, .have-problems a, .text-input input, .textarea-input textarea, .select-input select, .date-input input, .file-input .fake-input, .forgot-password-link, .dont-have-account p, .dont-have-account a, .file-input .appointment_recommendation_details .parameters, .appointment_recommendation_details .file-input .parameters, .file-input .appointment_recommendation_details .text, .appointment_recommendation_details .file-input .text, .inline-edit-form .loading-state,
.inline-edit-form .error-state, .button-small, .p3-b, .navbar .navigation-button p, .appointment-form-container .header .header-text, .chip-base {
  font-size: 1rem;
}

.p4-r, .have-problems p, .form-error, .auth-step__terms, .edit-appointment-container .add-results p, .user-info-container .user-info .email, .card-item .card-subtitle, .card-item-list .card-subtitle, .card-item-expandable .card-subtitle, .card-item-inline .card-subtitle, .results-container .results .folder .card-subtitle, .expandable-item .card-subtitle, .folder-details-container .results .result .card-subtitle, .p4-b, .chip-small, .card-item .card-date, .card-item-list .card-date, .card-item-expandable .card-date, .card-item-inline .card-date, .results-container .results .folder .card-date, .expandable-item .card-date, .folder-details-container .results .result .card-date, .required-info {
  font-size: 0.875rem;
}

.p5-r, .p5-b, .tag-input .tag-chip {
  font-size: 0.75rem;
}

/* Label Styles */
.l-r, .l1-r, .l2-r, .l3-r, .l4-r, .results-container .go-to-shared-button .go-to, .results-container .select-options .cancel-selection-button .text, .item-list-in-popup .result .name, .item-list-in-popup .result .date, .item-list-in-popup .result .category, .item-list-in-popup .folder .name, .item-list-in-popup .folder .date, .item-list-in-popup .folder .category, .added-results-container .result .name, .results-to-be-moved-container .result .name, .results-to-be-shared-container .result .name, .added-results-container .result .date, .results-to-be-moved-container .result .date, .results-to-be-shared-container .result .date, .added-results-container .result .category, .results-to-be-moved-container .result .category, .results-to-be-shared-container .result .category, .added-results-container .folder .name, .results-to-be-moved-container .folder .name, .results-to-be-shared-container .folder .name, .added-results-container .folder .date, .results-to-be-moved-container .folder .date, .results-to-be-shared-container .folder .date, .added-results-container .folder .category, .results-to-be-moved-container .folder .category, .results-to-be-shared-container .folder .category, .modal__footer .cancel-button, .modal__actions .cancel-button, .share-link-disclaimer, .form-input-container .label label, .checkbox-input .label, .range-input__max, .inline-edit-form .associated-results .results-list .result-preview .result-name, .inline-edit-form .associated-results .results-list .result-preview .view-result-link, .folder-details-container .results .result .name, .folder-details-container .results .result .category, .folder-details-container .results .result .date, .shared-links-header .go-to-all-links-button .go-to, .folder-empty-note, .add-results-modal__category, .add-results-modal__empty, .shared-links .shared-link .toggle-sharing-button, .shared-links .shared-link .copy-link-button .link-text, .actions .trial-info, .actions .stop-trial-button, .payments-container .benefits .benefit .text, .pager__page, .pager__step, .pager__count, .card-item-inline .card-title,
.card-item-inline .card-date,
.card-item-inline .card-category, .results-container .results .folder .item .card-title, .folder-details-container .results .result .card-title,
.results-container .results .folder .item .card-date,
.folder-details-container .results .result .card-date,
.results-container .results .folder .item .card-category,
.folder-details-container .results .result .card-category, .l1-r, .l2-r, main .vertical .plans .plan .benefits-wrapper .benefits .benefit .text, main .vertical .plans .plan .benefits-wrapper .special-benefits .benefit .text, .share-link-disclaimer, .filters .include .menu .item, .folder-details-container .results .result .name, .folder-details-container .results .result .category, .folder-details-container .results .result .date, .card-item-inline .card-title,
.card-item-inline .card-date,
.card-item-inline .card-category, .results-container .results .folder .item .card-title, .folder-details-container .results .result .card-title,
.results-container .results .folder .item .card-date,
.folder-details-container .results .result .card-date,
.results-container .results .folder .item .card-category,
.folder-details-container .results .result .card-category, .l3-r, .results-container .go-to-shared-button .go-to, .results-container .select-options .cancel-selection-button .text, .item-list-in-popup .result .name, .item-list-in-popup .result .date, .item-list-in-popup .result .category, .item-list-in-popup .folder .name, .item-list-in-popup .folder .date, .item-list-in-popup .folder .category, .added-results-container .result .name, .results-to-be-moved-container .result .name, .results-to-be-shared-container .result .name, .added-results-container .result .date, .results-to-be-moved-container .result .date, .results-to-be-shared-container .result .date, .added-results-container .result .category, .results-to-be-moved-container .result .category, .results-to-be-shared-container .result .category, .added-results-container .folder .name, .results-to-be-moved-container .folder .name, .results-to-be-shared-container .folder .name, .added-results-container .folder .date, .results-to-be-moved-container .folder .date, .results-to-be-shared-container .folder .date, .added-results-container .folder .category, .results-to-be-moved-container .folder .category, .results-to-be-shared-container .folder .category, .modal__footer .cancel-button, .modal__actions .cancel-button, .result-summary__stat-label, .result-summary__pill-value, .result-summary__pill-norm, .result-summary__track-name, .result-summary__track-unit, .result-summary__cta-text, .result-summary__cta-progress, .folder-summary__nudge-text, .folder-summary__stat-label, .folder-summary__drift-change, .folder-summary__param-name, .folder-summary__param-unit, .folder-summary__param-arrow, .folder-summary__param-trend-label, .info-note__text, .form-input-container .label label, .checkbox-input .label, .range-input__max, .inline-edit-form .associated-results .results-list .result-preview .result-name, .inline-edit-form .associated-results .results-list .result-preview .view-result-link, .shared-links-header .go-to-all-links-button .go-to, .folder-empty-note, .add-results-modal__empty, .shared-links .shared-link .toggle-sharing-button, .shared-links .shared-link .copy-link-button .link-text, .payments-container .benefits .benefit .text, .note, .l4-r, .folder-summary__timeline-label, .add-results-modal__category, .actions .trial-info, .actions .stop-trial-button, .pager__page, .pager__step, .pager__count {
  font-weight: 400;
}

.l-b, .l1-b, .l2-b, .l3-b, .l4-b, .results-container .global-delete-button .text, .results-container .go-to-shared-button .shared, .analysis-panel .title, .range-input__value, .inline-edit-form .inline-form-header .appointment-type-display, .inline-edit-form .associated-results .results-header, .add-results-panel .folders-container .folder, .add-results-panel .folders-container .add-folder-button, .navigation-menu a, .expandable-item .edit-menu .blood-analysis-form .title, .shared-links-header .go-to-all-links-button a, .folder-empty-note .text-button, .add-results-modal__name, .card-item .card-title, .card-item-list .card-title, .card-item-expandable .card-title, .card-item-inline .card-title, .results-container .results .folder .card-title, .expandable-item .card-title, .folder-details-container .results .result .card-title, .l1-b, .l2-b, .filters .include .menu .item.active, .shared-links-header .go-to-all-links-button a, .l3-b, .result-summary__section-label, .result-summary__pill-name, .result-summary__track-number, .folder-summary__section-label, .folder-summary__drift-name, .folder-summary__params-header, .folder-summary__param-number, .l4-b {
  font-weight: 500;
}

.l1-r, .l1-b, .inline-edit-form .inline-form-header .appointment-type-display {
  font-size: 1.25rem;
}

.l2-r, main .vertical .plans .plan .benefits-wrapper .benefits .benefit .text, main .vertical .plans .plan .benefits-wrapper .special-benefits .benefit .text, .share-link-disclaimer, .filters .include .menu .item, .folder-details-container .results .result .name, .folder-details-container .results .result .category, .folder-details-container .results .result .date, .card-item-inline .card-title,
.card-item-inline .card-date,
.card-item-inline .card-category, .folder-details-container .results .result .card-title,
.results-container .results .folder .item .card-date,
.folder-details-container .results .result .card-date,
.results-container .results .folder .item .card-category,
.folder-details-container .results .result .card-category, .l2-b, .results-container .go-to-shared-button .shared, .analysis-panel .title, .range-input__value, .inline-edit-form .associated-results .results-header, .filters .include .menu .item.active, .add-results-panel .folders-container .folder, .add-results-panel .folders-container .add-folder-button, .expandable-item .edit-menu .blood-analysis-form .title, .shared-links-header .go-to-all-links-button a, .card-item .card-title, .card-item-list .card-title, .card-item-expandable .card-title, .results-container .results .folder .card-title, .expandable-item .card-title {
  font-size: 1rem;
}

.l3-r, .results-container .go-to-shared-button .go-to, .results-container .select-options .cancel-selection-button .text, .item-list-in-popup .result .name, .item-list-in-popup .result .date, .item-list-in-popup .result .category, .item-list-in-popup .folder .name, .item-list-in-popup .folder .date, .item-list-in-popup .folder .category, .added-results-container .result .name, .results-to-be-moved-container .result .name, .results-to-be-shared-container .result .name, .added-results-container .result .date, .results-to-be-moved-container .result .date, .results-to-be-shared-container .result .date, .added-results-container .result .category, .results-to-be-moved-container .result .category, .results-to-be-shared-container .result .category, .added-results-container .folder .name, .results-to-be-moved-container .folder .name, .results-to-be-shared-container .folder .name, .added-results-container .folder .date, .results-to-be-moved-container .folder .date, .results-to-be-shared-container .folder .date, .added-results-container .folder .category, .results-to-be-moved-container .folder .category, .results-to-be-shared-container .folder .category, .modal__footer .cancel-button, .modal__actions .cancel-button, .result-summary__stat-label, .result-summary__pill-value, .result-summary__pill-norm, .result-summary__track-name, .result-summary__track-unit, .result-summary__cta-text, .result-summary__cta-progress, .folder-summary__nudge-text, .folder-summary__stat-label, .folder-summary__drift-change, .folder-summary__param-name, .folder-summary__param-unit, .folder-summary__param-arrow, .folder-summary__param-trend-label, .info-note__text, .form-input-container .label label, .checkbox-input .label, .range-input__max, .inline-edit-form .associated-results .results-list .result-preview .result-name, .inline-edit-form .associated-results .results-list .result-preview .view-result-link, .shared-links-header .go-to-all-links-button .go-to, .folder-empty-note, .add-results-modal__empty, .shared-links .shared-link .toggle-sharing-button, .shared-links .shared-link .copy-link-button .link-text, .payments-container .benefits .benefit .text, .note, .l3-b, .results-container .global-delete-button .text, .result-summary__section-label, .result-summary__pill-name, .result-summary__track-number, .folder-summary__section-label, .folder-summary__drift-name, .folder-summary__params-header, .folder-summary__param-number, .navigation-menu a, .folder-empty-note .text-button, .add-results-modal__name {
  font-size: 0.925rem;
}

.l4-r, .folder-summary__timeline-label, .add-results-modal__category, .actions .trial-info, .actions .stop-trial-button, .pager__page, .pager__step, .pager__count, .l4-b {
  font-size: 0.875rem;
}

/* Link Styles */
.link {
  text-decoration: underline;
  cursor: pointer;
  color: inherit;
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
  background-color: #F0F2F5;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

nav ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  text-decoration: none;
  color: inherit;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

input, select {
  vertical-align: middle;
}

.pointer {
  cursor: pointer;
}

@media screen and (max-width: 655px) {
  .mobile-hidden {
    display: none !important;
  }
}

@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
@keyframes auth-step-enter {
  from {
    opacity: 0;
    transform: translateY(0.5rem);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
.p-0 {
  padding: 0;
}

.p-1 {
  padding: 0.25rem;
}

.p-2 {
  padding: 0.5rem;
}

.p-3 {
  padding: 0.75rem;
}

.p-4 {
  padding: 1rem;
}

.p-5 {
  padding: 1.25rem;
}

.p-6 {
  padding: 1.5rem;
}

.p-8 {
  padding: 2rem;
}

.p-10 {
  padding: 2.5rem;
}

.p-12 {
  padding: 3rem;
}

.pt-0 {
  padding-top: 0;
}

.pt-1 {
  padding-top: 0.25rem;
}

.pt-2 {
  padding-top: 0.5rem;
}

.pt-3 {
  padding-top: 0.75rem;
}

.pt-4 {
  padding-top: 1rem;
}

.pt-5 {
  padding-top: 1.25rem;
}

.pt-6 {
  padding-top: 1.5rem;
}

.pt-8 {
  padding-top: 2rem;
}

.pt-10 {
  padding-top: 2.5rem;
}

.pt-12 {
  padding-top: 3rem;
}

.pb-0 {
  padding-bottom: 0;
}

.pb-1 {
  padding-bottom: 0.25rem;
}

.pb-2 {
  padding-bottom: 0.5rem;
}

.pb-3 {
  padding-bottom: 0.75rem;
}

.pb-4 {
  padding-bottom: 1rem;
}

.pb-5 {
  padding-bottom: 1.25rem;
}

.pb-6 {
  padding-bottom: 1.5rem;
}

.pb-8 {
  padding-bottom: 2rem;
}

.pb-10 {
  padding-bottom: 2.5rem;
}

.pb-12 {
  padding-bottom: 3rem;
}

.pb-16 {
  padding-bottom: 4rem;
}

.pb-28 {
  padding-bottom: 7rem;
}

.pl-0 {
  padding-left: 0;
}

.pl-1 {
  padding-left: 0.25rem;
}

.pl-2 {
  padding-left: 0.5rem;
}

.pl-3 {
  padding-left: 0.75rem;
}

.pl-4 {
  padding-left: 1rem;
}

.pl-5 {
  padding-left: 1.25rem;
}

.pl-6 {
  padding-left: 1.5rem;
}

.pl-8 {
  padding-left: 2rem;
}

.pl-10 {
  padding-left: 2.5rem;
}

.pl-12 {
  padding-left: 3rem;
}

.pr-0 {
  padding-right: 0;
}

.pr-1 {
  padding-right: 0.25rem;
}

.pr-2 {
  padding-right: 0.5rem;
}

.pr-3 {
  padding-right: 0.75rem;
}

.pr-4 {
  padding-right: 1rem;
}

.pr-5 {
  padding-right: 1.25rem;
}

.pr-6 {
  padding-right: 1.5rem;
}

.pr-8 {
  padding-right: 2rem;
}

.pr-10 {
  padding-right: 2.5rem;
}

.pr-12 {
  padding-right: 3rem;
}

.px-0 {
  padding-left: 0;
  padding-right: 0;
}

.px-1 {
  padding-left: 0.25rem;
  padding-right: 0.25rem;
}

.px-2 {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}

.px-3 {
  padding-left: 0.75rem;
  padding-right: 0.75rem;
}

.px-4 {
  padding-left: 1rem;
  padding-right: 1rem;
}

.px-5 {
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}

.px-6 {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

.px-8 {
  padding-left: 2rem;
  padding-right: 2rem;
}

.px-10 {
  padding-left: 2.5rem;
  padding-right: 2.5rem;
}

.px-12 {
  padding-left: 3rem;
  padding-right: 3rem;
}

.py-0 {
  padding-top: 0;
  padding-bottom: 0;
}

.py-1 {
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
}

.py-2 {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.py-3 {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
}

.py-4 {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.py-5 {
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
}

.py-6 {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}

.py-8 {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.py-10 {
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}

.py-12 {
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.py-16 {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.m-0 {
  margin: 0;
}

.m-1 {
  margin: 0.25rem;
}

.m-2 {
  margin: 0.5rem;
}

.m-3 {
  margin: 0.75rem;
}

.m-4 {
  margin: 1rem;
}

.m-5 {
  margin: 1.25rem;
}

.m-6 {
  margin: 1.5rem;
}

.m-8 {
  margin: 2rem;
}

.m-10 {
  margin: 2.5rem;
}

.m-12 {
  margin: 3rem;
}

.m-auto {
  margin-left: auto;
  margin-right: auto;
}

.mt-0 {
  margin-top: 0;
}

.mt-1 {
  margin-top: 0.25rem;
}

.mt-2 {
  margin-top: 0.5rem;
}

.mt-3 {
  margin-top: 0.75rem;
}

.mt-4 {
  margin-top: 1rem;
}

.mt-5 {
  margin-top: 1.25rem;
}

.mt-6 {
  margin-top: 1.5rem;
}

.mt-8 {
  margin-top: 2rem;
}

.mt-10 {
  margin-top: 2.5rem;
}

.mt-12 {
  margin-top: 3rem;
}

.mt-14 {
  margin-top: 3.5rem;
}

.mt-16 {
  margin-top: 4rem;
}

.mb-0 {
  margin-bottom: 0;
}

.mb-1 {
  margin-bottom: 0.25rem;
}

.mb-2 {
  margin-bottom: 0.5rem;
}

.mb-3 {
  margin-bottom: 0.75rem;
}

.mb-4 {
  margin-bottom: 1rem;
}

.mb-5 {
  margin-bottom: 1.25rem;
}

.mb-6 {
  margin-bottom: 1.5rem;
}

.mb-8 {
  margin-bottom: 2rem;
}

.mb-10 {
  margin-bottom: 2.5rem;
}

.mb-12 {
  margin-bottom: 3rem;
}

.ml-0 {
  margin-left: 0;
}

.ml-1 {
  margin-left: 0.25rem;
}

.ml-2 {
  margin-left: 0.5rem;
}

.ml-3 {
  margin-left: 0.75rem;
}

.ml-4 {
  margin-left: 1rem;
}

.ml-5 {
  margin-left: 1.25rem;
}

.ml-6 {
  margin-left: 1.5rem;
}

.ml-8 {
  margin-left: 2rem;
}

.ml-10 {
  margin-left: 2.5rem;
}

.ml-12 {
  margin-left: 3rem;
}

.ml-auto {
  margin-left: auto;
}

.mr-0 {
  margin-right: 0;
}

.mr-1 {
  margin-right: 0.25rem;
}

.mr-2 {
  margin-right: 0.5rem;
}

.mr-3 {
  margin-right: 0.75rem;
}

.mr-4 {
  margin-right: 1rem;
}

.mr-5 {
  margin-right: 1.25rem;
}

.mr-6 {
  margin-right: 1.5rem;
}

.mr-8 {
  margin-right: 2rem;
}

.mr-10 {
  margin-right: 2.5rem;
}

.mr-12 {
  margin-right: 3rem;
}

.mr-auto {
  margin-right: auto;
}

.mx-0 {
  margin-left: 0;
  margin-right: 0;
}

.mx-1 {
  margin-left: 0.25rem;
  margin-right: 0.25rem;
}

.mx-2 {
  margin-left: 0.5rem;
  margin-right: 0.5rem;
}

.mx-3 {
  margin-left: 0.75rem;
  margin-right: 0.75rem;
}

.mx-4 {
  margin-left: 1rem;
  margin-right: 1rem;
}

.mx-5 {
  margin-left: 1.25rem;
  margin-right: 1.25rem;
}

.mx-6 {
  margin-left: 1.5rem;
  margin-right: 1.5rem;
}

.mx-8 {
  margin-left: 2rem;
  margin-right: 2rem;
}

.mx-10 {
  margin-left: 2.5rem;
  margin-right: 2.5rem;
}

.mx-12 {
  margin-left: 3rem;
  margin-right: 3rem;
}

.mx-auto {
  margin-left: auto;
  margin-right: auto;
}

.my-0 {
  margin-top: 0;
  margin-bottom: 0;
}

.my-1 {
  margin-top: 0.25rem;
  margin-bottom: 0.25rem;
}

.my-2 {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}

.my-3 {
  margin-top: 0.75rem;
  margin-bottom: 0.75rem;
}

.my-4 {
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.my-5 {
  margin-top: 1.25rem;
  margin-bottom: 1.25rem;
}

.my-6 {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}

.my-8 {
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.my-10 {
  margin-top: 2.5rem;
  margin-bottom: 2.5rem;
}

.my-12 {
  margin-top: 3rem;
  margin-bottom: 3rem;
}

.gap-0 {
  gap: 0;
}

.gap-1 {
  gap: 0.25rem;
}

.gap-2 {
  gap: 0.5rem;
}

.gap-3 {
  gap: 0.75rem;
}

.gap-4 {
  gap: 1rem;
}

.gap-5 {
  gap: 1.25rem;
}

.gap-6 {
  gap: 1.5rem;
}

.gap-8 {
  gap: 2rem;
}

.gap-10 {
  gap: 2.5rem;
}

.gap-12 {
  gap: 3rem;
}

.text-primary {
  color: #232B3C;
}

.text-secondary {
  color: #5F6D8A;
}

.text-tertiary {
  color: #949FB6;
}

.text-muted {
  color: #BDC4D3;
}

.text-brand {
  color: #278BFF;
}

.text-error {
  color: #EF1103;
}

.text-success {
  color: #2E9B33;
}

.text-white {
  color: #FFFFFF;
}

.bg-white {
  background-color: #FFFFFF;
}

.bg-light {
  background-color: #FBFCFF;
}

.text-intro {
  font-size: 1rem;
  color: #5f6d8a;
  line-height: 1.65;
  border-left: 3px solid #278BFF;
  padding-left: 20px;
}
.text-intro a {
  color: #278BFF;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.bg-base {
  background-color: #F0F2F5;
}

.bg-neutral {
  background-color: #DDE0E5;
}

.bg-brand {
  background-color: #278BFF;
}

.bg-error {
  background-color: #EF1103;
}

.bg-success {
  background-color: #2E9B33;
}

.flex {
  display: flex;
}

.inline-flex {
  display: inline-flex;
}

.block {
  display: block;
}

.inline-block {
  display: inline-block;
}

.hidden {
  display: none !important;
}

.flex-row {
  flex-direction: row;
}

.flex-col {
  flex-direction: column;
}

.flex-wrap {
  flex-wrap: wrap;
}

.flex-nowrap {
  flex-wrap: nowrap;
}

.justify-start {
  justify-content: flex-start;
}

.justify-center {
  justify-content: center;
}

.justify-end {
  justify-content: flex-end;
}

.justify-between {
  justify-content: space-between;
}

.justify-around {
  justify-content: space-around;
}

.items-start {
  align-items: flex-start;
}

.items-center {
  align-items: center;
}

.items-end {
  align-items: flex-end;
}

.items-stretch {
  align-items: stretch;
}

.self-align-start {
  align-self: flex-start;
}

.self-align-center {
  align-self: center;
}

.w-full {
  width: 100%;
}

.w-auto {
  width: auto;
}

.h-full {
  height: 100%;
}

.h-auto {
  height: auto;
}

.min-h-screen {
  min-height: 100vh;
}

.min-h-screen-mobile {
  min-height: 100svh;
}

.text-left {
  text-align: left;
}

.text-center {
  text-align: center;
}

.text-right {
  text-align: right;
}

.text-no-wrap {
  white-space: nowrap;
}

.relative {
  position: relative;
}

.absolute {
  position: absolute;
}

.fixed {
  position: fixed;
}

.sticky {
  position: sticky;
}

.pointer {
  cursor: pointer;
}

.cursor-default {
  cursor: default;
}

.overflow-hidden {
  overflow: hidden;
}

.overflow-auto {
  overflow: auto;
}

.overflow-scroll {
  overflow: scroll;
}

.overflow-scroll-x {
  overflow-x: scroll;
}

.overflow-scroll-y {
  overflow-y: scroll;
}

.note {
  margin: 0.75rem 0;
  text-align: center;
  line-height: 1.3;
  color: #949FB6;
  width: 100%;
}

.consent-notice {
  margin-bottom: 1rem;
  padding: 0.75rem 1rem;
  background-color: rgba(225, 50, 50, 0.08);
  border-radius: 0.5rem;
  color: #e13232;
  line-height: 1.4;
}

*, *::after, *::before {
  box-sizing: border-box;
  font-family: "Source Sans 3", sans-serif;
}

html {
  height: 100%;
}

body {
  height: 100%;
  -ms-overflow-style: none;
  position: relative;
  margin: 0;
  font-size: 1rem;
  background-color: #FBFCFF;
}

h1, h2, h3, h4, h5, h6 {
  margin: 0;
}

p {
  margin: 0;
}

a {
  color: #278BFF;
  text-decoration: none;
}

ul {
  padding: 0;
  margin: 0;
}

li {
  padding: 0;
  margin: 0;
  list-style: none;
}

button {
  cursor: pointer;
}

h1, h2, h3, h4, h5 {
  font-weight: 600;
}

h6 {
  font-weight: 400;
}

/* Heading Styles */
h1 {
  font-size: 2.5rem;
}

h2 {
  font-size: 2rem;
}

h3 {
  font-size: 1.5rem;
}

h4 {
  font-size: 1.25rem;
}

h5 {
  font-size: 1.125rem;
}

/* Body Styles */
.p-r, .p1-r, .p2-r, .p3-r, .p4-r, .p5-r {
  font-weight: 400;
}

.p-b, .p1-b, .p2-b, .p3-b, .p4-b, .required-info, .p5-b {
  font-weight: 600;
}

.p1-r, .p1-b {
  font-size: 1.375rem;
}

.p2-r, .p2-b {
  font-size: 1.125rem;
}

.p3-r, .p3-b {
  font-size: 1rem;
}

.p4-r, .p4-b, .required-info {
  font-size: 0.875rem;
}

.p5-r, .p5-b {
  font-size: 0.75rem;
}

/* Label Styles */
.l-r, .l1-r, .l2-r, .l3-r, .l4-r {
  font-weight: 400;
}

.l-b, .l1-b, .l2-b, .l3-b, .l4-b {
  font-weight: 500;
}

.l1-r, .l1-b {
  font-size: 1.25rem;
}

.l2-r, .l2-b {
  font-size: 1rem;
}

.l3-r, .l3-b {
  font-size: 0.925rem;
}

.l4-r, .l4-b {
  font-size: 0.875rem;
}

/* Link Styles */
.link {
  text-decoration: underline;
  cursor: pointer;
  color: inherit;
}

.title-h1 {
  font-size: 3rem;
  font-weight: 600;
  line-height: 1.2;
  color: #232B3C;
}
@media screen and (max-width: 840px) {
  .title-h1 {
    font-size: 2.5rem;
  }
}
@media screen and (max-width: 655px) {
  .title-h1 {
    font-size: 2rem;
  }
}

.title-h2 {
  font-size: 2rem;
  font-weight: 600;
  line-height: 1.3;
  color: #232B3C;
}
@media screen and (max-width: 840px) {
  .title-h2 {
    font-size: 1.75rem;
  }
}
@media screen and (max-width: 655px) {
  .title-h2 {
    font-size: 1.5rem;
  }
}

.title-h3 {
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.3;
  color: #232B3C;
}
@media screen and (max-width: 655px) {
  .title-h3 {
    font-size: 1.25rem;
  }
}

.title-h4 {
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.4;
  color: #232B3C;
}
@media screen and (max-width: 655px) {
  .title-h4 {
    font-size: 1.125rem;
  }
}

.title-center {
  text-align: center;
}

@media screen and (max-width: 840px) {
  .title-responsive {
    font-size: clamp(1.5rem, 4vw, 2.5rem);
  }
}

.subtitle-primary {
  font-size: 1.3rem;
  font-weight: 400;
  line-height: 1.4;
  color: #5F6D8A;
}
@media screen and (max-width: 655px) {
  .subtitle-primary {
    font-size: 1.125rem;
  }
}

.subtitle-secondary {
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.4;
  color: #949FB6;
}
@media screen and (max-width: 655px) {
  .subtitle-secondary {
    font-size: 1rem;
  }
}

.helper-text {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.3;
  color: #5F6D8A;
}

.hint-text {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.3;
  color: #949FB6;
}

.required-info {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}
.required-info::before {
  content: "*";
  color: #EF1103;
  margin-top: 0.125rem;
}
.required-info::after {
  content: "pole obowiązkowe";
  color: #424E66;
}

.banner {
  padding: 0.625rem;
  text-align: center;
  line-height: 1.2;
  width: 100%;
  position: fixed;
  bottom: 0;
  z-index: 1;
  font-size: 0.9rem;
}
@media screen and (max-width: 840px) {
  .banner {
    position: static;
  }
}
.banner-content {
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  overflow: hidden;
}
.banner-content-message {
  flex: 1;
}
.banner.warning-banner {
  background-color: #EBF5FF;
  color: #278BFF;
}
.banner.error-banner {
  background-color: #EBF5FF;
  color: #278BFF;
}
.banner.success-banner {
  background-color: #E5F5E6;
  color: #29702C;
}
.banner.info-banner {
  background-color: #EBF5FF;
  color: #278BFF;
}

h1, h2, h3, h4, h5 {
  font-weight: 600;
}

h6 {
  font-weight: 400;
}

/* Heading Styles */
h1 {
  font-size: 2.5rem;
}

h2 {
  font-size: 2rem;
}

h3 {
  font-size: 1.5rem;
}

h4 {
  font-size: 1.25rem;
}

h5 {
  font-size: 1.125rem;
}

/* Body Styles */
.p-r, .p1-r, .button-large, .p2-r, .button-base, .p3-r, .button-small, .p4-r, .p5-r {
  font-weight: 400;
}

.p-b, .p1-b, .p2-b, .p3-b, .p4-b, .p5-b {
  font-weight: 600;
}

.p1-r, .button-large, .p1-b {
  font-size: 1.375rem;
}

.p2-r, .button-base, .p2-b {
  font-size: 1.125rem;
}

.p3-r, .button-small, .p3-b {
  font-size: 1rem;
}

.p4-r, .p4-b {
  font-size: 0.875rem;
}

.p5-r, .p5-b {
  font-size: 0.75rem;
}

/* Label Styles */
.l-r, .l1-r, .l2-r, .l3-r, .l4-r {
  font-weight: 400;
}

.l-b, .l1-b, .l2-b, .l3-b, .l4-b {
  font-weight: 500;
}

.l1-r, .l1-b {
  font-size: 1.25rem;
}

.l2-r, .l2-b {
  font-size: 1rem;
}

.l3-r, .l3-b {
  font-size: 0.925rem;
}

.l4-r, .l4-b {
  font-size: 0.875rem;
}

/* Link Styles */
.link {
  text-decoration: underline;
  cursor: pointer;
  color: inherit;
}

.button {
  display: flex;
  align-items: center;
  border-radius: 2rem;
  transition: all 300ms;
  font-weight: 500;
  cursor: pointer;
}
.button.disabled {
  cursor: not-allowed;
  opacity: 0.5;
}
.button.limited-width {
  max-width: 16rem;
  white-space: wrap !important;
  text-align: center;
  line-height: 1.3;
  padding: 1rem 1rem;
}
.button.centered-text {
  text-align: center;
  line-height: 1.2;
}

.button-small {
  padding: 0.5rem 1.5rem;
  gap: 0.5rem;
}
.button-small .left-icon, .button-small .right-icon {
  width: 1rem;
  height: 1rem;
}
.button-small:has(.left-icon):not(:has(.right-icon)) {
  padding-right: 1.5rem;
}
.button-small:has(.right-icon):not(:has(.left-icon)) {
  padding-left: 1.5rem;
}

.button-base {
  padding: 0.75rem 2rem;
  gap: 0.75rem;
}
.button-base .left-icon, .button-base .right-icon {
  width: 1.25rem;
  height: 1.25rem;
}
.button-base:has(.left-icon):not(:has(.right-icon)) {
  padding-right: 2.5rem;
}
.button-base:has(.right-icon):not(:has(.left-icon)) {
  padding-left: 2.5rem;
}

.button-large {
  padding: 0.5rem 2rem;
  gap: 1rem;
}
.button-large .left-icon, .button-large .right-icon {
  width: 1.25rem;
  height: 1.25rem;
}
.button-large:has(.left-icon):not(:has(.right-icon)) {
  padding-right: 2.5rem;
}
.button-large:has(.right-icon):not(:has(.left-icon)) {
  padding-left: 2.5rem;
}

.button-filled-primary, .button-filled-primary-with-outline {
  background-color: #278BFF;
  color: #FBFCFF;
}
.button-filled-primary:hover, .button-filled-primary-with-outline:hover {
  background-color: rgb(13.5, 125.3055555556, 255);
}
.button-filled-primary.disabled:hover, .disabled.button-filled-primary-with-outline:hover {
  background-color: #278BFF;
}

.button-filled-secondary {
  background-color: #BDC4D3;
  color: #FBFCFF;
  cursor: default;
}

.button-outlined-red {
  outline: 1px solid #e13232;
  background-color: #e13232;
  color: #FBFCFF;
}
.button-outlined-red:hover {
  background-color: #d32c2c;
}

.button-filled-primary-with-outline {
  outline: 1px solid #278BFF;
}

.button-filled-neutral, .button-filled-neutral-with-outline-2, .button-filled-neutral-with-outline {
  background-color: #FBFCFF;
  color: #278BFF;
}
.button-filled-neutral:hover, .button-filled-neutral-with-outline-2:hover, .button-filled-neutral-with-outline:hover {
  background-color: #F0F2F5;
}
.button-filled-neutral.disabled:hover, .disabled.button-filled-neutral-with-outline-2:hover, .disabled.button-filled-neutral-with-outline:hover {
  background-color: #FBFCFF;
}

.button-filled-neutral-with-outline {
  outline: 1px solid #CED4E1;
}

.button-filled-neutral-with-outline-2 {
  color: #949FB6;
  outline: 1px solid #CED4E1;
}

.button-filled-error, .button-filled-error-with-outline {
  background-color: #FBFCFF;
  color: #EF1103;
}
.button-filled-error:hover, .button-filled-error-with-outline:hover {
  background-color: #fff5f4;
}

.button-filled-error-with-outline {
  outline: 1px solid #EF1103;
}

.button-outlined-primary {
  outline: 1px solid #278BFF;
  color: #278BFF;
}
.button-outlined-primary:hover {
  background-color: #f1f6ff;
}

.button-grayed-out {
  background-color: #FBFCFF;
  color: #CED4E1;
  outline: 1px solid #CED4E1;
  cursor: default;
}
.button-grayed-out:hover {
  background-color: #FBFCFF;
}

h1, h2, h3, h4, h5 {
  font-weight: 600;
}

h6 {
  font-weight: 400;
}

/* Heading Styles */
h1 {
  font-size: 2.5rem;
}

h2 {
  font-size: 2rem;
}

h3 {
  font-size: 1.5rem;
}

h4 {
  font-size: 1.25rem;
}

h5 {
  font-size: 1.125rem;
}

/* Body Styles */
.p-r, .user-info-container .user-info .name, .user-info-container .user-info .email, .p1-r, .p2-r, .p3-r, .p4-r, .card-item .card-subtitle, .card-item-inline .card-subtitle, .folder-details-container .results .result .card-subtitle, .card-item-expandable .card-subtitle, .results-container .results .folder .card-subtitle, .expandable-item .card-subtitle, .card-item-list .card-subtitle, .p5-r {
  font-weight: 400;
}

.p-b, .appointment-form-container .header .header-text, .p1-b, .p2-b, .p3-b, .p4-b, .card-item .card-date, .card-item-inline .card-date, .folder-details-container .results .result .card-date, .card-item-expandable .card-date, .results-container .results .folder .card-date, .expandable-item .card-date, .card-item-list .card-date, .p5-b {
  font-weight: 600;
}

.p1-r, .user-info-container .user-info .name, .p1-b {
  font-size: 1.375rem;
}

.p2-r, .p2-b {
  font-size: 1.125rem;
}

.p3-r, .p3-b, .appointment-form-container .header .header-text {
  font-size: 1rem;
}

.p4-r, .user-info-container .user-info .email, .card-item .card-subtitle, .card-item-inline .card-subtitle, .folder-details-container .results .result .card-subtitle, .card-item-expandable .card-subtitle, .results-container .results .folder .card-subtitle, .expandable-item .card-subtitle, .card-item-list .card-subtitle, .p4-b, .card-item .card-date, .card-item-inline .card-date, .folder-details-container .results .result .card-date, .card-item-expandable .card-date, .results-container .results .folder .card-date, .expandable-item .card-date, .card-item-list .card-date {
  font-size: 0.875rem;
}

.p5-r, .p5-b {
  font-size: 0.75rem;
}

/* Label Styles */
.l-r, .results-container .go-to-shared-button .go-to, .results-container .select-options .cancel-selection-button .text, .folder-details-container .results .result .name, .folder-details-container .results .result .category, .folder-details-container .results .result .date, .shared-links-header .go-to-all-links-button .go-to, .folder-empty-note, .add-results-modal__category, .add-results-modal__empty, .shared-links .shared-link .toggle-sharing-button, .shared-links .shared-link .copy-link-button .link-text, .actions .trial-info, .actions .stop-trial-button, .payments-container .benefits .benefit .text, .pager__page, .pager__step, .pager__count, .l1-r, .l2-r, .card-item-inline .card-title, .results-container .results .folder .item .card-title, .folder-details-container .results .result .card-title,
.card-item-inline .card-date,
.results-container .results .folder .item .card-date,
.folder-details-container .results .result .card-date,
.card-item-inline .card-category,
.results-container .results .folder .item .card-category,
.folder-details-container .results .result .card-category, .l3-r, .l4-r {
  font-weight: 400;
}

.l-b, .results-container .global-delete-button .text, .results-container .go-to-shared-button .shared, .analysis-panel .title, .add-results-panel .folders-container .folder, .add-results-panel .folders-container .add-folder-button, .navigation-menu a, .expandable-item .edit-menu .blood-analysis-form .title, .shared-links-header .go-to-all-links-button a, .folder-empty-note .text-button, .add-results-modal__name, .l1-b, .l2-b, .shared-links-header .go-to-all-links-button a, .card-item .card-title, .card-item-inline .card-title, .folder-details-container .results .result .card-title, .card-item-expandable .card-title, .results-container .results .folder .card-title, .expandable-item .card-title, .card-item-list .card-title, .l3-b, .l4-b {
  font-weight: 500;
}

.l1-r, .l1-b {
  font-size: 1.25rem;
}

.l2-r, .folder-details-container .results .result .name, .folder-details-container .results .result .category, .folder-details-container .results .result .date, .card-item-inline .card-title, .folder-details-container .results .result .card-title,
.card-item-inline .card-date,
.results-container .results .folder .item .card-date,
.folder-details-container .results .result .card-date,
.card-item-inline .card-category,
.results-container .results .folder .item .card-category,
.folder-details-container .results .result .card-category, .l2-b, .results-container .go-to-shared-button .shared, .analysis-panel .title, .add-results-panel .folders-container .folder, .add-results-panel .folders-container .add-folder-button, .expandable-item .edit-menu .blood-analysis-form .title, .shared-links-header .go-to-all-links-button a, .card-item .card-title, .card-item-expandable .card-title, .results-container .results .folder .card-title, .expandable-item .card-title, .card-item-list .card-title {
  font-size: 1rem;
}

.l3-r, .results-container .go-to-shared-button .go-to, .results-container .select-options .cancel-selection-button .text, .shared-links-header .go-to-all-links-button .go-to, .folder-empty-note, .add-results-modal__empty, .shared-links .shared-link .toggle-sharing-button, .shared-links .shared-link .copy-link-button .link-text, .payments-container .benefits .benefit .text, .l3-b, .results-container .global-delete-button .text, .navigation-menu a, .folder-empty-note .text-button, .add-results-modal__name {
  font-size: 0.925rem;
}

.l4-r, .add-results-modal__category, .actions .trial-info, .actions .stop-trial-button, .pager__page, .pager__step, .pager__count, .l4-b {
  font-size: 0.875rem;
}

/* Link Styles */
.link {
  text-decoration: underline;
  cursor: pointer;
  color: inherit;
}

.card-item, .card-item-inline, .results-container .results .folder .item, .folder-details-container .results .result, .card-item-expandable, .results-container .results .folder, .expandable-item, .card-item-list {
  position: relative;
  width: 100%;
  display: flex;
  background-color: #FBFCFF;
  transition: all 150ms;
  align-items: center;
}
@media screen and (max-width: 840px) {
  .card-item, .card-item-inline, .results-container .results .folder .item, .folder-details-container .results .result, .card-item-expandable, .results-container .results .folder, .expandable-item, .card-item-list {
    padding: 0.5rem;
    gap: 0.75rem;
  }
}
.card-item .card-header, .card-item-inline .card-header, .folder-details-container .results .result .card-header, .card-item-expandable .card-header, .results-container .results .folder .card-header, .expandable-item .card-header, .card-item-list .card-header {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 0.625rem;
  flex-grow: 1;
}
.card-item .card-title, .card-item-inline .card-title, .folder-details-container .results .result .card-title, .card-item-expandable .card-title, .results-container .results .folder .card-title, .expandable-item .card-title, .card-item-list .card-title {
  color: #278BFF;
  display: flex;
  gap: 0.5rem;
  align-items: center;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.card-item .card-subtitle, .card-item-inline .card-subtitle, .folder-details-container .results .result .card-subtitle, .card-item-expandable .card-subtitle, .results-container .results .folder .card-subtitle, .expandable-item .card-subtitle, .card-item-list .card-subtitle {
  color: #5F6D8A;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.card-item .card-date, .card-item-inline .card-date, .folder-details-container .results .result .card-date, .card-item-expandable .card-date, .results-container .results .folder .card-date, .expandable-item .card-date, .card-item-list .card-date {
  color: #5F6D8A;
  min-width: 4rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.card-item .card-actions, .card-item-inline .card-actions, .folder-details-container .results .result .card-actions, .card-item-expandable .card-actions, .results-container .results .folder .card-actions, .expandable-item .card-actions, .card-item-list .card-actions {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.card-item .card-actions .icon, .card-item-inline .card-actions .icon, .folder-details-container .results .result .card-actions .icon, .card-item-expandable .card-actions .icon, .results-container .results .folder .card-actions .icon, .expandable-item .card-actions .icon, .card-item-list .card-actions .icon {
  width: 1rem;
  height: 1rem;
  cursor: pointer;
  color: #5F6D8A;
  transition: color 150ms;
}
.card-item .card-actions .icon:hover, .card-item-inline .card-actions .icon:hover, .folder-details-container .results .result .card-actions .icon:hover, .card-item-expandable .card-actions .icon:hover, .results-container .results .folder .card-actions .icon:hover, .expandable-item .card-actions .icon:hover, .card-item-list .card-actions .icon:hover {
  color: #232B3C;
}
.card-item.disabled, .disabled.card-item-inline, .results-container .results .folder .disabled.item, .folder-details-container .results .disabled.result, .disabled.card-item-expandable, .results-container .results .disabled.folder, .disabled.expandable-item, .disabled.card-item-list {
  background-color: rgba(251, 252, 255, 0.5);
  border: 1px solid #CED4E1;
  border-radius: 1rem;
}
.card-item.disabled .card-header, .disabled.card-item-inline .card-header, .results-container .results .folder .disabled.item .card-header, .folder-details-container .results .disabled.result .card-header, .disabled.card-item-expandable .card-header, .results-container .results .disabled.folder .card-header, .disabled.expandable-item .card-header, .disabled.card-item-list .card-header,
.card-item.disabled .card-title,
.disabled.card-item-inline .card-title,
.results-container .results .folder .disabled.item .card-title,
.folder-details-container .results .disabled.result .card-title,
.disabled.card-item-expandable .card-title,
.results-container .results .disabled.folder .card-title,
.disabled.expandable-item .card-title,
.disabled.card-item-list .card-title,
.card-item.disabled .card-date,
.disabled.card-item-inline .card-date,
.results-container .results .folder .disabled.item .card-date,
.folder-details-container .results .disabled.result .card-date,
.disabled.card-item-expandable .card-date,
.results-container .results .disabled.folder .card-date,
.disabled.expandable-item .card-date,
.disabled.card-item-list .card-date,
.card-item.disabled .card-subtitle,
.disabled.card-item-inline .card-subtitle,
.results-container .results .folder .disabled.item .card-subtitle,
.folder-details-container .results .disabled.result .card-subtitle,
.disabled.card-item-expandable .card-subtitle,
.results-container .results .disabled.folder .card-subtitle,
.disabled.expandable-item .card-subtitle,
.disabled.card-item-list .card-subtitle {
  color: #BDC4D3;
}
.card-item.disabled .card-actions, .disabled.card-item-inline .card-actions, .results-container .results .folder .disabled.item .card-actions, .folder-details-container .results .disabled.result .card-actions, .disabled.card-item-expandable .card-actions, .results-container .results .disabled.folder .card-actions, .disabled.expandable-item .card-actions, .disabled.card-item-list .card-actions {
  pointer-events: none;
  opacity: 0.5;
}
.card-item.selected, .selected.card-item-inline, .results-container .results .folder .selected.item, .folder-details-container .results .selected.result, .selected.card-item-expandable, .results-container .results .selected.folder, .selected.expandable-item, .selected.card-item-list {
  background-color: #F0F2F5;
  border: none;
}
.card-item.expired .card-title, .expired.card-item-inline .card-title, .results-container .results .folder .expired.item .card-title, .folder-details-container .results .expired.result .card-title, .expired.card-item-expandable .card-title, .results-container .results .expired.folder .card-title, .expired.expandable-item .card-title, .expired.card-item-list .card-title,
.card-item.expired .card-date,
.expired.card-item-inline .card-date,
.results-container .results .folder .expired.item .card-date,
.folder-details-container .results .expired.result .card-date,
.expired.card-item-expandable .card-date,
.results-container .results .expired.folder .card-date,
.expired.expandable-item .card-date,
.expired.card-item-list .card-date,
.card-item.expired .card-subtitle,
.expired.card-item-inline .card-subtitle,
.results-container .results .folder .expired.item .card-subtitle,
.folder-details-container .results .expired.result .card-subtitle,
.expired.card-item-expandable .card-subtitle,
.results-container .results .expired.folder .card-subtitle,
.expired.expandable-item .card-subtitle,
.expired.card-item-list .card-subtitle {
  color: #BDC4D3;
}

.card-item-list {
  border-width: 0 0 1px 0;
  border-radius: 0;
  padding: 0;
  height: 5rem;
}
.card-item-list .card-header {
  flex-grow: 1;
}
.card-item-list .card-actions {
  height: 100%;
  align-items: center;
  justify-content: flex-end;
}
@media screen and (max-width: 655px) {
  .card-item-list .card-header {
    gap: 0.75rem;
  }
}

.card-item-expandable, .results-container .results .folder, .expandable-item {
  flex-direction: column;
  padding: 0;
  align-items: stretch;
}
.card-item-expandable .card-details, .results-container .results .folder .card-details, .expandable-item .card-details {
  position: relative;
  width: 100%;
  display: flex;
  justify-content: space-between;
  padding: 0.75rem;
}
@media screen and (max-width: 840px) {
  .card-item-expandable .card-details, .results-container .results .folder .card-details, .expandable-item .card-details {
    padding: 0.25rem 0.5rem;
    gap: 0.875rem;
  }
}
.card-item-expandable .card-content-left, .results-container .results .folder .card-content-left, .expandable-item .card-content-left {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  overflow-x: scroll;
  scrollbar-width: none;
}
.card-item-expandable .card-content-left::-webkit-scrollbar, .results-container .results .folder .card-content-left::-webkit-scrollbar, .expandable-item .card-content-left::-webkit-scrollbar {
  display: none;
}
@media screen and (max-width: 840px) {
  .card-item-expandable .card-content-left, .results-container .results .folder .card-content-left, .expandable-item .card-content-left {
    gap: 0.75rem;
  }
}
.card-item-expandable .card-content-right, .results-container .results .folder .card-content-right, .expandable-item .card-content-right {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
@media screen and (max-width: 840px) {
  .card-item-expandable .card-content-right, .results-container .results .folder .card-content-right, .expandable-item .card-content-right {
    gap: 0.25rem;
  }
}
.card-item-expandable .card-expandable-content, .results-container .results .folder .card-expandable-content, .expandable-item .card-expandable-content {
  width: 100%;
  overflow: hidden;
  transition: max-height 300ms;
}
.card-item-expandable.closed, .results-container .results .closed.folder, .closed.expandable-item {
  border-width: 0 0 1px 0;
}
.card-item-expandable.closed .card-expandable-content, .results-container .results .closed.folder .card-expandable-content, .closed.expandable-item .card-expandable-content {
  display: none;
}

.card-item-inline, .results-container .results .folder .item, .folder-details-container .results .result {
  cursor: pointer;
  border: 1px solid transparent;
}
.card-item-inline .card-title, .results-container .results .folder .item .card-title, .folder-details-container .results .result .card-title,
.card-item-inline .card-date,
.results-container .results .folder .item .card-date,
.folder-details-container .results .result .card-date,
.card-item-inline .card-category,
.results-container .results .folder .item .card-category,
.folder-details-container .results .result .card-category {
  width: 10rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  line-height: 1.25;
  color: #424E66;
}

.badge {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  background-color: #278BFF;
  color: #FFFFFF;
  padding: 0.25rem 0.5rem;
  border-radius: 0.25rem;
  font-size: 0.75rem;
  font-weight: 600;
  vertical-align: middle;
  cursor: pointer;
  flex-shrink: 0;
}
.badge.appointment-badge {
  position: absolute;
  right: 0.75rem;
}
@media screen and (max-width: 655px) {
  .badge.appointment-badge {
    position: unset;
    width: 100%;
    margin: 0;
    justify-content: center;
  }
}
@container (max-width: 460px) {
  .badge.appointment-badge {
    position: unset;
    width: 100%;
    margin: 0;
    justify-content: center;
  }
}

.badge .badge-icon {
  width: 0.7rem;
  height: 0.7rem;
  flex-shrink: 0;
}

.description-box {
  padding: 0.75rem;
  background-color: rgba(39, 139, 255, 0.1);
  border-radius: 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #232B3C;
}

.badge-muted {
  background-color: #949FB6;
  color: #FFFFFF;
}

.recommendation-preview {
  opacity: 0.85;
  cursor: default;
}
.recommendation-preview .details {
  border-color: #DDE0E5;
  border-style: solid;
  border-width: 1px;
  border-radius: 0.5rem;
}
.recommendation-preview .name {
  color: #5F6D8A;
}
.recommendation-preview .date {
  color: #949FB6;
}
.recommendation-preview .icon-button:disabled {
  color: #BDC4D3;
  cursor: not-allowed;
}

.icon-button {
  border: none;
  background: none;
  cursor: pointer;
  border-radius: 0.25rem;
  transition: all 150ms;
  display: flex;
  align-items: center;
  justify-content: center;
}
.icon-button .icon {
  width: 20px;
  height: 20px;
}
.icon-button.success {
  color: #2E9B33;
}
.icon-button.success:hover {
  background-color: rgba(0, 206, 144, 0.1);
  transform: scale(1.1);
}
.icon-button.danger {
  color: #e13232;
}
.icon-button.danger:hover {
  background-color: rgba(225, 50, 50, 0.1);
  transform: scale(1.1);
}
.icon-button.neutral {
  color: #949FB6;
}
.icon-button.neutral:hover {
  background-color: rgba(148, 159, 182, 0.1);
  transform: scale(1.1);
  color: #5F6D8A;
}
.icon-button.disabled {
  opacity: 25%;
}

h1, h2, h3, h4, h5 {
  font-weight: 600;
}

h6 {
  font-weight: 400;
}

/* Heading Styles */
h1 {
  font-size: 2.5rem;
}

h2 {
  font-size: 2rem;
}

h3 {
  font-size: 1.5rem;
}

h4 {
  font-size: 1.25rem;
}

h5 {
  font-size: 1.125rem;
}

/* Body Styles */
.p-r, .p1-r, .p2-r, .p3-r, .p4-r, .p5-r, .button-small, .button-base, .button-large {
  font-weight: 400;
}

.p-b, .p1-b, .p2-b, .chip-large, .p3-b, .chip-base, .p4-b, .chip-small, .p5-b, .tag-input .tag-chip {
  font-weight: 600;
}

.p1-r, .button-large, .p1-b {
  font-size: 1.375rem;
}

.p2-r, .button-base, .p2-b, .chip-large {
  font-size: 1.125rem;
}

.p3-r, .button-small, .p3-b, .chip-base {
  font-size: 1rem;
}

.p4-r, .p4-b, .chip-small {
  font-size: 0.875rem;
}

.p5-r, .p5-b, .tag-input .tag-chip {
  font-size: 0.75rem;
}

/* Label Styles */
.l-r, .l1-r, .l2-r, .l3-r, .l4-r {
  font-weight: 400;
}

.l-b, .l1-b, .l2-b, .l3-b, .l4-b {
  font-weight: 500;
}

.l1-r, .l1-b {
  font-size: 1.25rem;
}

.l2-r, .l2-b {
  font-size: 1rem;
}

.l3-r, .l3-b {
  font-size: 0.925rem;
}

.l4-r, .l4-b {
  font-size: 0.875rem;
}

/* Link Styles */
.link {
  text-decoration: underline;
  cursor: pointer;
  color: inherit;
}

h1, h2, h3, h4, h5 {
  font-weight: 600;
}

h6 {
  font-weight: 400;
}

/* Heading Styles */
h1 {
  font-size: 2.5rem;
}

h2 {
  font-size: 2rem;
}

h3 {
  font-size: 1.5rem;
}

h4 {
  font-size: 1.25rem;
}

h5 {
  font-size: 1.125rem;
}

/* Body Styles */
.p-r, .p1-r, .button-large, .p2-r, .button-base, .p3-r, .button-small, .p4-r, .p5-r {
  font-weight: 400;
}

.p-b, .p1-b, .p2-b, .chip-large, .p3-b, .chip-base, .p4-b, .chip-small, .p5-b, .tag-input .tag-chip {
  font-weight: 600;
}

.p1-r, .button-large, .p1-b {
  font-size: 1.375rem;
}

.p2-r, .button-base, .p2-b, .chip-large {
  font-size: 1.125rem;
}

.p3-r, .button-small, .p3-b, .chip-base {
  font-size: 1rem;
}

.p4-r, .p4-b, .chip-small {
  font-size: 0.875rem;
}

.p5-r, .p5-b, .tag-input .tag-chip {
  font-size: 0.75rem;
}

/* Label Styles */
.l-r, .l1-r, .l2-r, .l3-r, .l4-r {
  font-weight: 400;
}

.l-b, .l1-b, .l2-b, .l3-b, .l4-b {
  font-weight: 500;
}

.l1-r, .l1-b {
  font-size: 1.25rem;
}

.l2-r, .l2-b {
  font-size: 1rem;
}

.l3-r, .l3-b {
  font-size: 0.925rem;
}

.l4-r, .l4-b {
  font-size: 0.875rem;
}

/* Link Styles */
.link {
  text-decoration: underline;
  cursor: pointer;
  color: inherit;
}

.button {
  display: flex;
  align-items: center;
  border-radius: 2rem;
  transition: all 300ms;
  font-weight: 500;
  cursor: pointer;
}
.button.disabled {
  cursor: not-allowed;
  opacity: 0.5;
}
.button.limited-width {
  max-width: 16rem;
  white-space: wrap !important;
  text-align: center;
  line-height: 1.3;
  padding: 1rem 1rem;
}
.button.centered-text {
  text-align: center;
  line-height: 1.2;
}

.button-small {
  padding: 0.5rem 1.5rem;
  gap: 0.5rem;
}
.button-small .left-icon, .button-small .right-icon {
  width: 1rem;
  height: 1rem;
}
.button-small:has(.left-icon):not(:has(.right-icon)) {
  padding-right: 1.5rem;
}
.button-small:has(.right-icon):not(:has(.left-icon)) {
  padding-left: 1.5rem;
}

.button-base {
  padding: 0.75rem 2rem;
  gap: 0.75rem;
}
.button-base .left-icon, .button-base .right-icon {
  width: 1.25rem;
  height: 1.25rem;
}
.button-base:has(.left-icon):not(:has(.right-icon)) {
  padding-right: 2.5rem;
}
.button-base:has(.right-icon):not(:has(.left-icon)) {
  padding-left: 2.5rem;
}

.button-large {
  padding: 0.5rem 2rem;
  gap: 1rem;
}
.button-large .left-icon, .button-large .right-icon {
  width: 1.25rem;
  height: 1.25rem;
}
.button-large:has(.left-icon):not(:has(.right-icon)) {
  padding-right: 2.5rem;
}
.button-large:has(.right-icon):not(:has(.left-icon)) {
  padding-left: 2.5rem;
}

.button-filled-primary, .chip-filled-primary, .button-filled-primary-with-outline, .chip-filled-primary-with-outline {
  background-color: #278BFF;
  color: #FBFCFF;
}
.button-filled-primary:hover, .chip-filled-primary:hover, .button-filled-primary-with-outline:hover, .chip-filled-primary-with-outline:hover {
  background-color: rgb(13.5, 125.3055555556, 255);
}
.button-filled-primary.disabled:hover, .disabled.chip-filled-primary:hover, .disabled.button-filled-primary-with-outline:hover, .disabled.chip-filled-primary-with-outline:hover {
  background-color: #278BFF;
}

.button-filled-secondary {
  background-color: #BDC4D3;
  color: #FBFCFF;
  cursor: default;
}

.button-outlined-red {
  outline: 1px solid #e13232;
  background-color: #e13232;
  color: #FBFCFF;
}
.button-outlined-red:hover {
  background-color: #d32c2c;
}

.button-filled-primary-with-outline, .chip-filled-primary-with-outline {
  outline: 1px solid #278BFF;
}

.button-filled-neutral, .button-filled-neutral-with-outline-2, .button-filled-neutral-with-outline, .chip-filled-neutral-with-outline {
  background-color: #FBFCFF;
  color: #278BFF;
}
.button-filled-neutral:hover, .button-filled-neutral-with-outline-2:hover, .button-filled-neutral-with-outline:hover, .chip-filled-neutral-with-outline:hover {
  background-color: #F0F2F5;
}
.button-filled-neutral.disabled:hover, .disabled.button-filled-neutral-with-outline-2:hover, .disabled.button-filled-neutral-with-outline:hover, .disabled.chip-filled-neutral-with-outline:hover {
  background-color: #FBFCFF;
}

.button-filled-neutral-with-outline, .chip-filled-neutral-with-outline {
  outline: 1px solid #CED4E1;
}

.button-filled-neutral-with-outline-2 {
  color: #949FB6;
  outline: 1px solid #CED4E1;
}

.button-filled-error, .chip-filled-error, .button-filled-error-with-outline, .chip-filled-error-with-outline {
  background-color: #FBFCFF;
  color: #EF1103;
}
.button-filled-error:hover, .chip-filled-error:hover, .button-filled-error-with-outline:hover, .chip-filled-error-with-outline:hover {
  background-color: #fff5f4;
}

.button-filled-error-with-outline, .chip-filled-error-with-outline {
  outline: 1px solid #EF1103;
}

.button-outlined-primary, .chip-transparent-primary, .chip-outlined-primary {
  outline: 1px solid #278BFF;
  color: #278BFF;
}
.button-outlined-primary:hover, .chip-transparent-primary:hover, .chip-outlined-primary:hover {
  background-color: #f1f6ff;
}

.button-grayed-out {
  background-color: #FBFCFF;
  color: #CED4E1;
  outline: 1px solid #CED4E1;
  cursor: default;
}
.button-grayed-out:hover {
  background-color: #FBFCFF;
}

.chip {
  border-radius: 1rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  transition: all 300ms;
  white-space: nowrap;
  width: fit-content;
}
.chip.disabled {
  cursor: not-allowed !important;
  opacity: 0.5;
}

.chip-outlined-primary {
  color: #424E66;
}

.chip-transparent-primary {
  color: #424E66;
}
.chip-transparent-primary:hover {
  background-color: transparent;
}

.chip-small {
  padding: 0.5rem;
}
.chip-small:has(.text) {
  padding: 0.5rem 1rem;
}
.chip-small .left-icon, .chip-small .right-icon {
  width: 1rem;
  height: 1rem;
}

.chip-base {
  padding: 0.75rem;
}
.chip-base:has(.text) {
  padding: 0.75rem 1rem;
}
.chip-base:has(.left-icon):has(.text):not(:has(.right-icon)) {
  padding-right: 1.25rem;
}
.chip-base:has(.right-icon):has(.text):not(:has(.left-icon)) {
  padding-left: 1.25rem;
}
.chip-base .left-icon, .chip-base .right-icon {
  width: 1.25rem;
  height: 1.25rem;
}

.chip-large {
  padding: 1rem;
}
.chip-large:has(.text) {
  padding: 1rem 1.25rem;
}
.chip-large:has(.left-icon):has(.text):not(:has(.right-icon)) {
  padding-right: 1.5rem;
}
.chip-large:has(.right-icon):has(.text):not(.left-icon) {
  padding-left: 1.5rem;
}
.chip-large .left-icon, .chip-large .right-icon {
  width: 1.5rem;
  height: 1.5rem;
}

/* Tag input — generic token/chip input pattern.
   Apply .tag-input to any .text-input container to get wrapping chip behaviour.
   The inline typing element uses .tag-text-input.
   Chips inside use .tag-chip; the remove button uses .tag-chip-remove. */
.tag-input {
  height: auto;
  flex-wrap: wrap;
  gap: 0.375rem;
  cursor: text;
  align-items: center;
}
.tag-input .tag-chip {
  padding: 0 0.5rem;
  gap: 0.125rem;
  min-height: 1.375rem;
}
.tag-input.disabled {
  cursor: default;
}

.tag-text-input {
  border: none;
  outline: none;
  background: transparent;
  flex: 1;
  min-width: 80px;
  font-size: inherit;
  font-family: inherit;
  color: inherit;
  padding: 0;
}
.tag-text-input::placeholder {
  opacity: 0.5;
}

.tag-chip {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  white-space: nowrap;
  border-radius: 1rem;
}

.tag-chip-remove {
  background: none;
  border: none;
  cursor: pointer;
  padding: 0 0 0 0.25rem;
  font-size: 1em;
  line-height: 1;
  opacity: 0.6;
  color: inherit;
}
.tag-chip-remove:hover {
  opacity: 1;
}

h1, h2, h3, h4, h5 {
  font-weight: 600;
}

h6 {
  font-weight: 400;
}

/* Heading Styles */
h1 {
  font-size: 2.5rem;
}

h2 {
  font-size: 2rem;
}

h3 {
  font-size: 1.5rem;
}

h4 {
  font-size: 1.25rem;
}

h5 {
  font-size: 1.125rem;
}

/* Body Styles */
.p-r, .p1-r, .user-info-container .user-info .name, .p2-r, .p3-r, .p4-r, .user-info-container .user-info .email, .p5-r {
  font-weight: 400;
}

.p-b, .p1-b, .p2-b, .p3-b, .appointment-form-container .header .header-text, .p4-b, .p5-b {
  font-weight: 600;
}

.p1-r, .user-info-container .user-info .name, .p1-b {
  font-size: 1.375rem;
}

.p2-r, .p2-b {
  font-size: 1.125rem;
}

.p3-r, .p3-b, .appointment-form-container .header .header-text {
  font-size: 1rem;
}

.p4-r, .user-info-container .user-info .email, .p4-b {
  font-size: 0.875rem;
}

.p5-r, .p5-b {
  font-size: 0.75rem;
}

/* Label Styles */
.l-r, .l1-r, .l2-r, .folder-details-container .results .result .name, .folder-details-container .results .result .category, .folder-details-container .results .result .date, .l3-r, .payments-container .benefits .benefit .text, .shared-links .shared-link .copy-link-button .link-text, .shared-links .shared-link .toggle-sharing-button, .add-results-modal__empty, .folder-empty-note, .shared-links-header .go-to-all-links-button .go-to, .l4-r, .pager__count, .pager__page, .pager__step, .actions .stop-trial-button, .actions .trial-info, .add-results-modal__category {
  font-weight: 400;
}

.l-b, .l1-b, .l2-b, .shared-links-header .go-to-all-links-button a, .expandable-item .edit-menu .blood-analysis-form .title, .add-results-panel .folders-container .folder, .add-results-panel .folders-container .add-folder-button, .l3-b, .add-results-modal__name, .folder-empty-note .text-button, .navigation-menu a, .l4-b {
  font-weight: 500;
}

.l1-r, .l1-b {
  font-size: 1.25rem;
}

.l2-r, .folder-details-container .results .result .name, .folder-details-container .results .result .category, .folder-details-container .results .result .date, .l2-b, .shared-links-header .go-to-all-links-button a, .expandable-item .edit-menu .blood-analysis-form .title, .add-results-panel .folders-container .folder, .add-results-panel .folders-container .add-folder-button {
  font-size: 1rem;
}

.l3-r, .payments-container .benefits .benefit .text, .shared-links .shared-link .copy-link-button .link-text, .shared-links .shared-link .toggle-sharing-button, .add-results-modal__empty, .folder-empty-note, .shared-links-header .go-to-all-links-button .go-to, .l3-b, .add-results-modal__name, .folder-empty-note .text-button, .navigation-menu a {
  font-size: 0.925rem;
}

.l4-r, .pager__count, .pager__page, .pager__step, .actions .stop-trial-button, .actions .trial-info, .add-results-modal__category, .l4-b {
  font-size: 0.875rem;
}

/* Link Styles */
.link {
  text-decoration: underline;
  cursor: pointer;
  color: inherit;
}

.base-page-container {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  padding: 0 1.5rem 1.5rem;
  margin-top: 2.25rem;
}
.base-page-container.no-horizontal-padding {
  padding-left: 0;
  padding-right: 0;
}
@media screen and (max-width: 840px) {
  .base-page-container {
    padding: 0 1rem 5rem;
    margin-top: 0;
  }
}
.base-page-container > h5 {
  border-top: 1px solid #F0F2F5;
  padding-top: 1.5rem;
}

.centered-form-container {
  width: 100%;
  max-width: 100%;
  flex-grow: 1;
  overflow-x: hidden;
  padding: 0 0 10vh 0;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #F0F2F5;
}
.centered-form-container .logo {
  position: absolute;
  top: 2.5rem;
  left: 2rem;
  width: 7rem;
  margin-left: 2rem;
}
@media screen and (max-width: 655px) {
  .centered-form-container .logo {
    left: 50%;
    transform: translateX(-50%);
    margin-left: 0;
  }
}
.centered-form-container form {
  width: 100%;
  max-height: 520px;
  overflow-y: auto;
  overflow-x: hidden;
  scrollbar-width: none;
  padding: 2px;
}
.centered-form-container form::-webkit-scrollbar {
  display: none;
}

.screen-height-container, .screen-height-with-navbar-container {
  min-height: 100vh;
}
@media screen and (max-width: 655px) {
  .screen-height-container, .screen-height-with-navbar-container {
    min-height: 100svh;
  }
}
.screen-height-container, .screen-height-with-navbar-container {
  width: 100%;
}
.screen-height-container.light, .light.screen-height-with-navbar-container {
  background-color: #FBFCFF;
}
.screen-height-container.dark, .dark.screen-height-with-navbar-container {
  background-color: #F0F2F5;
}

.screen-height-with-navbar-container {
  display: flex;
  flex-direction: column;
}
.screen-height-with-navbar-container .add-to-graph {
  margin: 0 auto;
}

.a-icon {
  color: #232B3C;
}

.appointment-form-container {
  width: 100%;
  min-height: 100vh;
}
@media screen and (max-width: 655px) {
  .appointment-form-container {
    min-height: 100svh;
  }
}
.appointment-form-container {
  background-color: #F0F2F5;
  padding: 1.5rem;
}
.appointment-form-container .header {
  width: 100%;
  padding-bottom: 1.5rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.appointment-form-container .header .left {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.appointment-form-container .header .icon {
  width: 1.25rem;
  height: 1.25rem;
  cursor: pointer;
}
.appointment-form-container .header .header-text {
  color: #232B3C;
}

.add-files-container {
  display: flex;
  flex-direction: column;
  padding: 1.5rem 1.5rem 3rem 1.5rem;
  gap: 1.5rem;
}
@media screen and (max-width: 840px) {
  .add-files-container {
    padding: 1rem 1rem 6.5rem 1rem;
    margin-top: 0;
  }
}
.add-files-container .add-results-panel {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.add-files-container .add-results-panel .buttons {
  display: flex;
  gap: 1rem;
  justify-content: center;
}
.add-files-container .add-results-panel__footer {
  display: flex;
  justify-content: center;
}
.add-files-container .add-results-panel__heading {
  width: 100%;
  text-align: center;
  color: #424E66;
}
.add-files-container .add-results-panel .required {
  color: #5F6D8A;
}

.add-results-panel .folders-container {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  overflow-y: auto;
  scrollbar-width: thin;
}
.add-results-panel .folders-container::-webkit-scrollbar {
  width: 4px;
}
.add-results-panel .folders-container .folder, .add-results-panel .folders-container .add-folder-button {
  width: 100%;
  border-radius: 0.5rem;
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 0.5rem 1rem;
  color: #424E66;
  cursor: pointer;
}
.add-results-panel .folders-container .folder .icon, .add-results-panel .folders-container .add-folder-button .icon {
  width: 1.25rem;
  height: 1.25rem;
  color: #5F6D8A;
}
.add-results-panel .folders-container .folder .icon.selected, .add-results-panel .folders-container .add-folder-button .icon.selected {
  color: #232B3C;
}
@media screen and (max-width: 655px) {
  .add-results-panel .folders-container .folder .icon, .add-results-panel .folders-container .add-folder-button .icon {
    width: 1rem;
    height: 1rem;
  }
}
.add-results-panel .folders-container .folder .name, .add-results-panel .folders-container .add-folder-button .name {
  margin-bottom: 0.125rem;
}
@media screen and (max-width: 655px) {
  .add-results-panel .folders-container .folder .name, .add-results-panel .folders-container .add-folder-button .name {
    font-size: 0.875rem;
  }
}
@media screen and (max-width: 655px) {
  .add-results-panel .folders-container .folder, .add-results-panel .folders-container .add-folder-button {
    padding: 0.375rem 0.75rem;
    gap: 0.75rem;
  }
}
.add-results-panel .folders-container .add-folder-button {
  position: sticky;
  top: 0;
  left: 0;
  padding: 1rem;
  background-color: #F0F2F5;
  color: #232B3C;
}
.add-results-panel .folders-container .add-folder-button .icon {
  color: #232B3C;
}
@media screen and (max-width: 655px) {
  .add-results-panel .folders-container .add-folder-button {
    padding: 0.75rem;
  }
}

.user-info-container {
  width: 100%;
  border: 1px solid #CED4E1;
  border-radius: 0.75rem;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  padding: 1rem;
}
.user-info-container .profile-picture .icon {
  width: 4rem;
  height: 4rem;
  padding: 1.25rem;
  border: 1px solid #CED4E1;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #424E66;
}
.user-info-container .user-info {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.user-info-container .user-info .name {
  color: #232B3C;
}
.user-info-container .user-info .email {
  color: #5F6D8A;
}
@media screen and (max-width: 655px) {
  .user-info-container {
    border-radius: 0;
    border-left: 0;
    border-right: 0;
  }
}

.navigation-menu {
  width: 100%;
  padding: 1.5rem 0;
  display: flex;
  justify-content: center;
  gap: 1.5rem;
}
.navigation-menu a {
  color: #5F6D8A;
}
.navigation-menu a.active {
  color: #232B3C;
}

.condition-container-wrapper {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  padding: 0 1.5rem 1.5rem;
}
@media screen and (max-width: 840px) {
  .condition-container-wrapper {
    padding: 0;
  }
}
.condition-container-wrapper:first-of-type {
  margin-top: 1.5rem;
}

.progress-circles {
  width: 100%;
  display: flex;
  justify-content: center;
  gap: 0.5rem;
}
.progress-circles .circle, .progress-circles .circle-filled {
  width: 0.75rem;
  height: 0.75rem;
  border-radius: 50%;
  border: 2px solid #278BFF;
  background-color: transparent;
  transition: background-color 300ms;
}
.progress-circles .circle.switch, .progress-circles .switch.circle-filled {
  background-color: #278BFF;
}
.progress-circles .circle-filled {
  background-color: #278BFF;
  transition: background-color 300ms;
}
.progress-circles .circle-filled.switch {
  background-color: transparent;
}

.folder-details-container {
  position: relative;
  width: 100%;
  padding: 2.5rem;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  align-items: center;
  border: 1px solid #CED4E1;
  border-radius: 0.75rem;
}
.folder-details-container .header {
  position: relative;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.folder-details-container .header .folder-name {
  color: #424E66;
  display: flex;
}
.folder-details-container .header .open-all-button {
  cursor: pointer;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}
.folder-details-container .results {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  align-items: center;
}
.folder-details-container .results .result .name, .folder-details-container .results .result .category, .folder-details-container .results .result .date {
  width: 10rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  line-height: 1.25;
}
.folder-details-container .no-results {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  align-items: center;
  color: #949FB6;
}
.folder-details-container .no-results .icon {
  width: 2.5rem;
}
@media screen and (max-width: 655px) {
  .folder-details-container {
    border-radius: 0;
    border-left: 0;
    border-right: 0;
  }
}

.expandable-item.highlighted .details, .expandable-item.recommendation-preview .details {
  flex-direction: column;
  gap: 0.75rem;
  border: 1px solid #BDC4D3;
  border-radius: 0.5rem;
}
.expandable-item .details {
  position: relative;
  width: 100%;
  display: flex;
  justify-content: space-between;
  padding: 0.25rem 0.75rem;
}
@media screen and (max-width: 840px) {
  .expandable-item .details {
    padding: 0.5rem;
    gap: 0.875rem;
  }
}
.expandable-item .details .left {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  min-width: 0;
  flex: 1;
}
@media screen and (max-width: 840px) {
  .expandable-item .details .left {
    gap: 0.75rem;
  }
}
@media screen and (max-width: 655px) {
  .expandable-item .details .left {
    gap: 0.75rem;
  }
}
.expandable-item .details .right {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
@media screen and (max-width: 840px) {
  .expandable-item .details .right {
    gap: 0.25rem;
  }
}
.expandable-item .folder-tile {
  padding: 0.5rem 0.75rem;
}
@media screen and (max-width: 840px) {
  .expandable-item .folder-tile {
    padding: 0.5rem;
    gap: 0.875rem;
  }
}
.expandable-item .icon {
  color: #5F6D8A;
  width: 1rem;
  height: 1rem;
  cursor: pointer;
}
@media screen and (max-width: 655px) {
  .expandable-item .icon {
    width: 1rem;
    height: 1rem;
  }
}
.expandable-item .options {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
@media screen and (max-width: 655px) {
  .expandable-item .options {
    gap: 0.75rem;
  }
}
.expandable-item .name-and-date {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex: 1;
  min-width: 0;
}
@media screen and (max-width: 655px) {
  .expandable-item .name-and-date {
    align-items: center;
    gap: 0.75rem;
  }
}
.expandable-item .name-and-date .name-date-wrapper {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
  flex: 1;
  min-width: 0;
  overflow-x: auto;
  scrollbar-width: none;
}
.expandable-item .name-and-date .name-date-wrapper::-webkit-scrollbar {
  display: none;
}
.expandable-item .name-and-date .category-date-wrapper {
  display: flex;
  gap: 0.25rem;
}
.expandable-item .name-and-date .category-date-wrapper .category {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.expandable-item .name-and-date .category-date-wrapper .category .text {
  font-size: 0.8125rem;
  color: #424E66;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.expandable-item .name-and-date .category-date-wrapper .category .icon {
  color: #0B1426;
  width: 0.75rem;
  height: 0.75rem;
  margin-top: 0.125rem;
}
@media screen and (max-width: 655px) {
  .expandable-item .name-and-date .category-date-wrapper .category .icon {
    width: 0.875rem;
    height: 0.875rem;
  }
}
.expandable-item .name-and-date .name, .expandable-item .name-and-date .date {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.expandable-item .name-and-date .name {
  font-size: 0.875rem;
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 0.25rem;
  line-height: 1.25;
  color: #5F6D8A;
  justify-content: space-between;
}
.expandable-item .name-and-date .name .name-label {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  min-width: 0;
}
.expandable-item .name-and-date .name.clickable {
  color: #278BFF;
  cursor: pointer;
}
.expandable-item .name-and-date .name .text {
  font-size: 0.875rem;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.expandable-item .name-and-date .name .copy-text {
  font-size: 0.65rem;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  color: #5F6D8A;
  flex-shrink: 0;
  padding: 0.1rem 0.4rem;
  border: 1px solid #BDC4D3;
  border-radius: 0.5rem;
}
.expandable-item .name-and-date .name.hidden {
  display: none;
}
.expandable-item .name-and-date .date {
  font-size: 0.8125rem;
  color: #5F6D8A;
  min-width: 4rem;
}
.expandable-item .delete-button.hidden {
  display: none;
}
.expandable-item .delete-form {
  display: none;
}
.expandable-item .problem-with-graph {
  position: absolute;
  font-size: 0.6rem;
  margin-left: 0.6rem;
  bottom: 2rem;
  cursor: help;
}
@media screen and (max-width: 840px) {
  .expandable-item .problem-with-graph {
    bottom: 1.75rem;
  }
}
.expandable-item .edit-menu {
  width: 100%;
  display: flex;
  border-bottom: 1px solid #F0F2F5;
  overflow: hidden;
  gap: 0.75rem;
}
@media (max-width: 1200px) {
  .expandable-item .edit-menu {
    flex-direction: column;
  }
}
.expandable-item .edit-menu.dark {
  background-color: #F0F2F5;
}
.expandable-item .edit-menu.dark .blood-analysis-form .result-form-actions {
  background-color: #F0F2F5;
}
.expandable-item .edit-menu.vertical {
  flex-direction: column;
}
.expandable-item .edit-menu.padding {
  padding: 0 0.75rem 0.75rem;
}
.expandable-item .edit-menu .edit-menu-sidebar {
  display: flex;
  gap: 0.75rem;
  padding-top: 0.25rem;
  padding-bottom: 0.5rem;
  border-width: 0 0 1px 0;
  border-style: solid;
  border-color: #CED4E1;
  flex-shrink: 0;
}
@media (max-width: 1200px) {
  .expandable-item .edit-menu .edit-menu-sidebar {
    gap: 1rem;
    padding-top: 0;
  }
}
.expandable-item .edit-menu .edit-menu-sidebar .text {
  color: #949FB6;
  cursor: pointer;
  white-space: nowrap;
  font-size: 0.9rem;
  font-weight: 500;
}
.expandable-item .edit-menu .edit-menu-sidebar .text.active {
  color: #232B3C;
}
.expandable-item .edit-menu .edit-menu-content {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-width: 0;
  gap: 0.5rem;
}
.expandable-item .edit-menu .edit-menu-description {
  display: flex;
  flex-direction: column;
  align-self: flex-start;
  gap: 0.75rem;
  width: 60%;
  flex-shrink: 0;
  padding: 0 1rem 1rem 0;
}
@media (max-width: 1200px) {
  .expandable-item .edit-menu .edit-menu-description {
    width: 100%;
    padding: 0 1rem 1rem 1rem;
  }
}
.expandable-item .edit-menu .canvases-container {
  position: relative;
  flex: 0 0 500px;
  height: 700px;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  width: 100%;
  max-width: 760px;
  margin: 0 auto;
}
@media (max-width: 758px) {
  .expandable-item .edit-menu .canvases-container {
    width: 100%;
    height: 500px;
  }
}
@media (max-width: 1200px) {
  .expandable-item .edit-menu .canvases-container {
    width: 100%;
  }
}
.expandable-item .edit-menu .canvases-container .legacy-result-notice {
  width: 100%;
  color: #424E66;
  padding: 1rem;
  line-height: 1.5;
  font-size: 0.875rem;
}
.expandable-item .edit-menu .canvases-container .download-button {
  color: #5F6D8A;
  display: flex;
  gap: 0.25rem;
  z-index: 1;
  padding: 0.5rem 0.75rem;
  background-color: #F0F2F5;
  border-radius: 1rem;
}
.expandable-item .edit-menu .canvases-container .download-button:hover {
  opacity: 0.25;
  transition: opacity 0.5s ease;
}
.expandable-item .edit-menu .canvases-container .info-message {
  padding: 1rem 2rem;
  border-radius: 0.75rem;
  background-color: #FBFCFF;
  border: 1px solid #CED4E1;
  color: #5F6D8A;
  font-size: 0.8rem;
  text-align: center;
  line-height: 1.3;
}
@media (max-width: 1200px) {
  .expandable-item .edit-menu .canvases-container .info-message {
    padding: 0.75rem 1.25rem;
  }
}
.expandable-item .edit-menu .canvases-container .info-message.hidden {
  display: none;
}
.expandable-item .edit-menu .canvases-container .submit-button {
  position: absolute;
  bottom: 1rem;
  left: 50%;
  transform: translateX(-50%);
  cursor: pointer;
  z-index: 2;
}
@media (max-width: 1200px) {
  .expandable-item .edit-menu .canvases-container .submit-button {
    bottom: 0.75rem;
  }
}
.expandable-item .edit-menu .canvases-container .submit-button.loading .left-icon {
  animation: spin 1s linear infinite;
}
.expandable-item .edit-menu .canvases-container .scroll-up-button, .expandable-item .edit-menu .canvases-container .scroll-down-button {
  position: absolute;
  bottom: 4rem;
  left: 50%;
  cursor: pointer;
  z-index: 2;
}
.expandable-item .edit-menu .canvases-container .scroll-up-button .icon, .expandable-item .edit-menu .canvases-container .scroll-down-button .icon {
  color: #232B3C !important;
  width: 1.5rem;
  height: 1.5rem;
}
.expandable-item .edit-menu .canvases-container .scroll-up-button {
  transform: translateX(calc(-50% + 1.5rem));
}
.expandable-item .edit-menu .canvases-container .scroll-down-button {
  transform: translateX(calc(-50% - 1.5rem));
}
.expandable-item .edit-menu .canvases-container .canvases {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow-y: scroll;
  scrollbar-width: thin;
  border-radius: 0.5rem;
  border: 1px solid #F0F2F5;
  min-height: auto;
  background-color: #FFFFFF;
}
.expandable-item .edit-menu .canvases-container .canvases .loading-cover, .expandable-item .edit-menu .canvases-container .canvases .error-cover {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  background-color: #F0F2F5;
  color: #5F6D8A;
}
.expandable-item .edit-menu .canvases-container .canvases .loading-cover .icon, .expandable-item .edit-menu .canvases-container .canvases .error-cover .icon {
  width: 1.25rem;
  height: 1.25rem;
}
.expandable-item .edit-menu .canvases-container .canvases .loading-cover .icon {
  animation: spin 1s linear infinite;
  color: #5F6D8A;
}
.expandable-item .edit-menu .canvases-container .canvases .error-cover .icon {
  color: #EF1103;
}
.expandable-item .edit-menu .canvases-container .canvases canvas {
  display: block;
  height: auto;
  width: auto;
  max-width: 100%;
  margin: 0 auto;
}
@media (max-width: 1200px) {
  .expandable-item .edit-menu .canvases-container .canvases canvas {
    height: auto;
    width: 100%;
  }
}
.expandable-item .edit-menu .blood-analysis-form {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  max-height: 700px;
  overflow: hidden;
}
.expandable-item .edit-menu .blood-analysis-form .form-input-container .label label,
.expandable-item .edit-menu .blood-analysis-form .form-input-container .text-input input {
  font-size: 0.9rem;
}
@media (max-width: 1200px) {
  .expandable-item .edit-menu .blood-analysis-form {
    padding: 0;
    overflow: auto;
  }
}
.expandable-item .edit-menu .blood-analysis-form .title {
  position: sticky;
  top: 0;
  z-index: 1;
  border-radius: 0.5rem;
}
.expandable-item .edit-menu .blood-analysis-form .result-form-actions {
  position: sticky;
  bottom: 0;
  z-index: 2;
  flex: 0 0 auto;
  margin-top: auto;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 0.5rem;
  padding: 0.75rem 0.25rem 0.25rem;
  background-color: #FBFCFF;
}
.expandable-item .edit-menu .blood-analysis-form .markers {
  width: 100%;
  overflow: auto;
  scrollbar-width: thin;
  flex: 1 1 auto;
  min-height: 0;
  padding: 0 0.125rem 0.125rem;
  margin-top: 0.75rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.expandable-item .edit-menu .blood-analysis-form .markers form .view-only-fieldset {
  border: 0;
  margin: 0;
  padding: 0;
  min-width: 0;
}
.expandable-item .edit-menu .blood-analysis-form .markers form .form-input-list {
  padding: 0.25rem;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
}
.expandable-item .edit-menu .blood-analysis-form .markers form .form-input-list:has(.wellbeing-score) {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.expandable-item.selected {
  background-color: #f4f6f8;
}

.shared-links-container {
  display: flex;
  flex-direction: column;
  border-radius: 0.5rem;
  gap: 2.5rem;
}

.shared-links-header {
  position: relative;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.shared-links-header .go-to-all-links-button {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.shared-links-header .go-to-all-links-button .go-to {
  color: #5F6D8A;
}
.shared-links-header .go-to-all-links-button a {
  color: #232B3C;
  display: flex;
  align-items: center;
  gap: 0.375rem;
  cursor: pointer;
}
.shared-links-header .go-to-all-links-button a .icon {
  width: 1.25rem;
  height: 1.25rem;
}
.shared-links-header .go-to-all-links-button.hidden {
  display: none;
}

.folder-empty-note {
  margin: 0;
  padding: 1rem 0.75rem;
  color: #949FB6;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.folder-empty-note .text-button {
  background: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  color: #278BFF;
}
.folder-empty-note .text-button:hover {
  text-decoration: underline;
}

.add-results-modal__body {
  display: flex;
  flex-direction: column;
  width: 100%;
  max-height: 50vh;
  overflow-y: auto;
}

.add-results-modal__row {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.625rem 0;
}
.add-results-modal__row .chip {
  flex: 0 0 auto;
  align-self: center;
  height: 1.75rem;
  padding: 0 1rem;
  line-height: 1.2;
}
.add-results-modal__row:not(:last-child) {
  border-bottom: 1px solid #F0F2F5;
}
.add-results-modal__row.added {
  opacity: 0.55;
}

.add-results-modal__meta {
  display: flex;
  flex-direction: column;
  min-width: 0;
  flex: 1 1 auto;
}

.add-results-modal__name {
  color: #232B3C;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.add-results-modal__category {
  color: #949FB6;
}

.add-results-modal__empty {
  color: #949FB6;
  margin: 0;
}

.shared-links {
  display: flex;
  flex-direction: column;
}
.shared-links .shared-link .sharing-options {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-shrink: 0;
}
.shared-links .shared-link .sharing-options form {
  display: none;
}
.shared-links .shared-link .sharing-options .icon {
  width: 1rem;
  height: 1rem;
}
.shared-links .shared-link .toggle-sharing-button {
  cursor: pointer;
  display: flex;
  align-items: center;
  height: 1.5rem;
  line-height: 1;
  gap: 0.5rem;
  color: #424E66;
  white-space: nowrap;
}
.shared-links .shared-link .toggle-sharing-button:hover {
  color: #278BFF;
}
@media screen and (max-width: 655px) {
  .shared-links .shared-link .toggle-sharing-button .text {
    display: none;
  }
}
.shared-links .shared-link .copy-link-button {
  background-color: #FFFFFF;
  border: 1px solid #DDE0E5;
  border-radius: 1rem;
  height: 1.5rem;
  padding: 0 0.75rem;
  line-height: 1;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  white-space: nowrap;
  transition: all 150ms;
}
.shared-links .shared-link .copy-link-button .link-text {
  color: #5F6D8A;
}
.shared-links .shared-link .copy-link-button .copy-button {
  display: flex;
  align-items: center;
  color: #278BFF;
}
.shared-links .shared-link .copy-link-button:hover {
  border-color: #278BFF;
}
.shared-links .shared-link.inactive .details .name .text {
  color: #949FB6;
}
.shared-links .shared-link.inactive .copy-link-button {
  pointer-events: none;
  opacity: 0.6;
}

.waiting-for-access-container {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  width: 100vw;
  height: 100vh;
  overflow: hidden;
  background-color: #FBFCFF;
}
@media screen and (max-width: 655px) {
  .waiting-for-access-container {
    height: 100svh;
  }
}
.waiting-for-access-container .logo {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.waiting-for-access-container .logo .icon {
  color: #424E66;
  width: 60px;
  height: 60px;
}

.option-buttons {
  display: flex;
  gap: 1rem;
  justify-content: center;
}

.export-data-wrapper {
  display: inline-flex;
}
.export-data-wrapper--spaced {
  margin-top: 30px;
}

.delete-account-wrapper {
  width: 100%;
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
}

.actions {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  align-items: center;
}
.actions .text {
  font-size: 0.9rem;
}
.actions .trial-info {
  color: #5F6D8A;
  padding-bottom: 0.5rem;
  line-height: 1.2;
  max-width: 35rem;
  text-align: center;
}
.actions .stop-trial-button {
  color: #5F6D8A;
  text-decoration: underline;
}
.actions .buttons {
  display: flex;
  gap: 0.75rem;
}
@media screen and (max-width: 840px) {
  .actions .buttons {
    flex-direction: column;
  }
}

.payments-container {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.payments-container .benefits {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.payments-container .benefits .benefit {
  display: flex;
  gap: 0.5rem;
  align-items: center;
}
.payments-container .benefits .benefit .icon {
  width: 1rem;
  height: 1rem;
  color: #5F6D8A;
}
.payments-container .benefits .benefit .text {
  color: #424E66;
  line-height: 1.2;
}

.settings-page-content {
  width: 100%;
  max-width: 640px;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

.attach-results-dialog__body {
  width: 100%;
  max-height: 50vh;
  overflow-y: auto;
  scrollbar-width: thin;
}
.attach-results-dialog__list {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
.attach-results-dialog__label {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 0 0.75rem;
  padding: 0.625rem 0.75rem;
  border: 1px solid #DDE0E5;
  border-radius: 0.5rem;
  cursor: pointer;
}
.attach-results-dialog__label:hover {
  border-color: #278BFF;
}
.attach-results-dialog__checkbox {
  grid-row: 1/span 2;
  width: 1rem;
  height: 1rem;
  cursor: pointer;
}
.attach-results-dialog__name {
  font-size: 0.875rem;
  color: #0B1426;
}
.attach-results-dialog__meta {
  font-size: 0.75rem;
  color: #949FB6;
}
.attach-results-dialog__empty {
  font-size: 0.875rem;
  color: #949FB6;
  margin: 0;
  text-align: center;
}

.pager {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding-top: 1rem;
}
.pager__pages {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
.pager__page, .pager__step {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 2rem;
  height: 2rem;
  padding: 0 0.5rem;
  border: 1.5px solid transparent;
  border-radius: 50%;
  background: transparent;
  color: #5F6D8A;
  cursor: pointer;
  transition: all 200ms;
}
.pager__page:hover:not(:disabled), .pager__step:hover:not(:disabled) {
  background-color: #F0F2F5;
  color: #0B1426;
}
.pager__page:disabled, .pager__step:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}
.pager__page--current {
  border-color: #278BFF;
  color: #278BFF;
}
.pager__step .icon {
  width: 1rem;
  height: 1rem;
}
.pager__gap {
  color: #BDC4D3;
  padding: 0 0.25rem;
}
.pager__count {
  color: #949FB6;
  margin: 0;
}
.pager__pages ~ .pager__count::before, .pager__step ~ .pager__count::before {
  content: "·";
  padding-right: 0.5rem;
}

.is-loading {
  opacity: 0.5;
  pointer-events: none;
  transition: opacity 150ms;
}

.list-group-divider {
  width: 100%;
  height: 1px;
  background-color: #DDE0E5;
  margin: 0.5rem 0;
}

.is-revealed {
  animation: row-revealed 2s ease-out;
  outline: none;
}

@keyframes row-revealed {
  0%, 40% {
    background-color: rgba(39, 139, 255, 0.16);
  }
  100% {
    background-color: transparent;
  }
}
.plan-state {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  padding-top: 1rem;
  margin-top: -1rem;
  border-top: 1px solid #F0F2F5;
}
.plan-state__title {
  font-size: 0.875rem;
  color: #5F6D8A;
}
.plan-state__detail {
  font-size: 0.75rem;
  color: #949FB6;
}

.detail-rows {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  padding-top: 1rem;
  margin-top: -1rem;
  border-top: 1px solid #F0F2F5;
}

.detail-row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1rem;
}
.detail-row__label {
  font-size: 0.875rem;
  color: #5F6D8A;
}
.detail-row__value {
  font-size: 0.875rem;
  color: #0B1426;
  text-align: right;
}

.filters {
  width: 100%;
  display: flex;
  gap: 1.25rem;
  align-items: center;
  height: 1.5rem;
}
@media screen and (max-width: 840px) {
  .filters.tablet-indent {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
.filters.space-between {
  justify-content: space-between;
}
.filters .sort-by, .filters .include {
  display: flex;
  gap: 0.5rem;
  align-items: center;
  cursor: pointer;
}
.filters .sort-by .icon, .filters .include .icon {
  color: #232B3C;
  width: 1rem;
  height: 1rem;
  transition: all 150ms;
}
.filters .sort-by .text, .filters .include .text {
  color: #232B3C;
  transition: all 150ms;
  font-size: 0.9rem;
  font-weight: 500;
}
.filters .sort-by.toggled .icon {
  transform: rotate(180deg);
}
.filters .include {
  position: relative;
  gap: 0.375rem;
}
.filters .include .icon {
  width: 1.25rem;
  height: 1.25rem;
}
.filters .include .menu {
  max-height: 18rem;
  overflow-y: auto;
  position: absolute;
  top: 150%;
  left: -0.25rem;
  display: none;
  background-color: #FBFCFF;
  border: 1px solid #CED4E1;
  border-radius: 0.5rem;
  padding: 1rem;
  flex-direction: column;
  gap: 1rem;
}
@media screen and (max-width: 840px) {
  .filters .include .menu {
    left: 0;
  }
}
.filters .include .menu .item {
  color: #424E66;
  white-space: nowrap;
}
.filters .include.open .icon {
  transform: rotate(180deg);
}
.filters .include.open .menu {
  display: flex;
  z-index: 3;
}
.filters.disabled .include {
  pointer-events: none;
}
.filters.disabled .include * {
  color: #949FB6 !important;
}

footer {
  color: #868686;
  padding: 0.5rem 0;
  background-color: #f5f5f5;
}

h1, h2, h3, h4, h5 {
  font-weight: 600;
}

h6 {
  font-weight: 400;
}

/* Heading Styles */
h1 {
  font-size: 2.5rem;
}

h2 {
  font-size: 2rem;
}

h3 {
  font-size: 1.5rem;
}

h4 {
  font-size: 1.25rem;
}

h5 {
  font-size: 1.125rem;
}

/* Body Styles */
.p-r, .p1-r, .p2-r, .p3-r, .inline-edit-form .loading-state,
.inline-edit-form .error-state, .dont-have-account a, .dont-have-account p, .forgot-password-link, .file-input .fake-input, .file-input .appointment_recommendation_details .text, .appointment_recommendation_details .file-input .text, .file-input .appointment_recommendation_details .parameters, .appointment_recommendation_details .file-input .parameters, .date-input input, .select-input select, .textarea-input textarea, .text-input input, .p4-r, .edit-appointment-container .add-results p, .auth-step__terms, .form-error, .p5-r {
  font-weight: 400;
}

.p-b, .p1-b, .p2-b, .p3-b, .p4-b, .p5-b {
  font-weight: 600;
}

.p1-r, .p1-b {
  font-size: 1.375rem;
}

.p2-r, .p2-b {
  font-size: 1.125rem;
}

.p3-r, .inline-edit-form .loading-state,
.inline-edit-form .error-state, .dont-have-account a, .dont-have-account p, .forgot-password-link, .file-input .fake-input, .file-input .appointment_recommendation_details .text, .appointment_recommendation_details .file-input .text, .file-input .appointment_recommendation_details .parameters, .appointment_recommendation_details .file-input .parameters, .date-input input, .select-input select, .textarea-input textarea, .text-input input, .p3-b {
  font-size: 1rem;
}

.p4-r, .edit-appointment-container .add-results p, .auth-step__terms, .form-error, .p4-b {
  font-size: 0.875rem;
}

.p5-r, .p5-b {
  font-size: 0.75rem;
}

/* Label Styles */
.l-r, .l1-r, .l2-r, .l3-r, .inline-edit-form .associated-results .results-list .result-preview .view-result-link, .inline-edit-form .associated-results .results-list .result-preview .result-name, .range-input__max, .checkbox-input .label, .form-input-container .label label, .l4-r {
  font-weight: 400;
}

.l-b, .l1-b, .inline-edit-form .inline-form-header .appointment-type-display, .l2-b, .inline-edit-form .associated-results .results-header, .range-input__value, .l3-b, .l4-b {
  font-weight: 500;
}

.l1-r, .l1-b, .inline-edit-form .inline-form-header .appointment-type-display {
  font-size: 1.25rem;
}

.l2-r, .l2-b, .inline-edit-form .associated-results .results-header, .range-input__value {
  font-size: 1rem;
}

.l3-r, .inline-edit-form .associated-results .results-list .result-preview .view-result-link, .inline-edit-form .associated-results .results-list .result-preview .result-name, .range-input__max, .checkbox-input .label, .form-input-container .label label, .l3-b {
  font-size: 0.925rem;
}

.l4-r, .l4-b {
  font-size: 0.875rem;
}

/* Link Styles */
.link {
  text-decoration: underline;
  cursor: pointer;
  color: inherit;
}

.form-container {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.form-container.card {
  background-color: #FBFCFF;
  border-radius: 1.5rem;
  border: 1px solid #CED4E1;
  padding: 3rem;
  min-width: min(85vw, 500px);
  max-width: min(85vw, 500px);
}
@media screen and (max-width: 655px) {
  .form-container.card {
    padding: 3rem 1.5rem;
  }
}
.form-container.full-width {
  width: 100%;
}

.title-group {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.form-title {
  width: 100%;
  text-align: center;
  color: #424E66;
}

.form-sub-title {
  width: 100%;
  line-height: 1.4;
  text-align: center;
  margin: auto;
  color: #949FB6;
  font-weight: 400;
}

.form-header, .form-footer {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
}

.form-footer {
  gap: 2rem;
}

.form-input-list {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 1px;
}

.form-input-container {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.form-input-container .label {
  color: #5F6D8A;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  width: 100%;
}
.form-input-container .label label {
  position: relative;
  margin-left: 0.25rem;
  line-height: 1.3;
}
.form-input-container .label .label-icon {
  width: 1.25rem;
  height: 1.25rem;
  color: #949FB6;
  margin-top: 0.125rem;
}
.form-input-container .label.required label::after {
  content: "*";
  color: #EF1103;
  position: absolute;
  right: -0.5rem;
  top: 0.1rem;
}
.form-input-container .input.disabled input, .form-input-container .input.disabled textarea, .form-input-container .input.disabled select {
  cursor: not-allowed;
  pointer-events: none;
}
.form-input-container.half-width {
  width: calc(50% - 0.5rem);
}
@media screen and (max-width: 655px) {
  .form-input-container.half-width {
    width: 100%;
  }
}

.base-rounded-input, .file-input, .date-input, .select-input, .textarea-input, .text-input {
  width: 100%;
  padding: 0.5rem 1rem;
  display: flex;
  align-items: center;
  gap: 0.25rem;
  border-radius: 1.5rem;
  outline: 1px solid #DDE0E5;
  transition: all 300ms;
}
.base-rounded-input:has(input:valid), .file-input:has(input:valid), .date-input:has(input:valid), .select-input:has(input:valid), .textarea-input:has(input:valid), .text-input:has(input:valid), .base-rounded-input:has(select:valid), .file-input:has(select:valid), .date-input:has(select:valid), .select-input:has(select:valid), .textarea-input:has(select:valid), .text-input:has(select:valid) {
  outline-color: #CED4E1;
}
.base-rounded-input:has(input:focus), .file-input:has(input:focus), .date-input:has(input:focus), .select-input:has(input:focus), .textarea-input:has(input:focus), .text-input:has(input:focus), .base-rounded-input:has(select:focus), .file-input:has(select:focus), .date-input:has(select:focus), .select-input:has(select:focus), .textarea-input:has(select:focus), .text-input:has(select:focus) {
  outline-color: #5F6D8A;
}
.base-rounded-input.error, .error.file-input, .error.date-input, .error.select-input, .error.textarea-input, .error.text-input {
  outline-color: #EF1103;
}
.base-rounded-input.filled, .filled.file-input, .filled.date-input, .filled.select-input, .filled.textarea-input, .filled.text-input {
  background-color: #F0F2F5;
}
.base-rounded-input.disabled, .disabled.file-input, .disabled.date-input, .disabled.select-input, .disabled.textarea-input, .disabled.text-input, .base-rounded-input.grayed-out, .grayed-out.file-input, .grayed-out.date-input, .grayed-out.select-input, .grayed-out.textarea-input, .grayed-out.text-input {
  background-color: rgba(221, 224, 229, 0.7);
  outline: 1px solid #CED4E1 !important;
}
.base-rounded-input.disabled, .disabled.file-input, .disabled.date-input, .disabled.select-input, .disabled.textarea-input, .disabled.text-input {
  cursor: not-allowed;
}
.base-rounded-input.disabled input, .disabled.file-input input, .disabled.date-input input, .disabled.select-input input, .disabled.textarea-input input, .disabled.text-input input, .base-rounded-input.disabled select, .disabled.file-input select, .disabled.date-input select, .disabled.select-input select, .disabled.textarea-input select, .disabled.text-input select {
  cursor: not-allowed;
}
.base-rounded-input.small-border-radius, .small-border-radius.file-input, .small-border-radius.date-input, .small-border-radius.select-input, .small-border-radius.textarea-input, .small-border-radius.text-input {
  border-radius: 0.25rem;
}
.base-rounded-input.hidden, .hidden.file-input, .hidden.date-input, .hidden.select-input, .hidden.textarea-input, .hidden.text-input {
  display: none;
}

.text-input.tag-input {
  padding: 0.5rem 0.5rem;
}
.text-input .left-icon, .text-input .right-icon {
  width: 1.25rem;
  height: 1.25rem;
  color: #949FB6;
}
.text-input .right-icon {
  cursor: pointer;
  transition: color 0.15s ease;
}
.text-input .right-icon:hover {
  color: #424E66;
}
.text-input .right-icon:active {
  color: #0B1426;
}
.text-input input {
  height: 100%;
  flex-grow: 1;
  color: #5F6D8A;
}
.text-input input::placeholder {
  color: #5F6D8A;
}
.text-input.disabled .left-icon, .text-input.disabled .right-icon, .text-input.grayed-out .left-icon, .text-input.grayed-out .right-icon {
  color: #BDC4D3;
}
.text-input.disabled input, .text-input.grayed-out input {
  color: #BDC4D3;
}
.text-input.disabled input::placeholder, .text-input.grayed-out input::placeholder {
  color: #BDC4D3;
}

.textarea-input {
  border-radius: 0.25rem;
  padding: 1rem;
}
.textarea-input textarea {
  height: 100%;
  flex-grow: 1;
  color: #5F6D8A;
}
.textarea-input textarea::placeholder {
  color: #949FB6;
}
.textarea-input.disabled textarea, .textarea-input.grayed-out textarea {
  color: #BDC4D3;
}
.textarea-input.disabled textarea::placeholder, .textarea-input.grayed-out textarea::placeholder {
  color: #BDC4D3;
}

.select-input .arrow {
  width: 1.25rem;
  height: 1.25rem;
  color: #949FB6;
}
.select-input select {
  height: 100%;
  flex-grow: 1;
  color: #949FB6;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 0 30px 0 2px;
  border: none;
}
.select-input select:valid {
  color: #5F6D8A;
}
.select-input.disabled .arrow, .select-input.grayed-out .arrow {
  color: #BDC4D3;
}
.select-input.disabled select, .select-input.grayed-out select {
  color: #BDC4D3;
}
.select-input.disabled select::placeholder, .select-input.grayed-out select::placeholder {
  color: #BDC4D3;
}

.date-input {
  cursor: pointer;
}
.date-input .calendar {
  width: 1.25rem;
  height: 1.25rem;
  color: #949FB6;
  flex-shrink: 0;
}
.date-input input {
  height: 100%;
  flex-grow: 1;
  color: #5F6D8A;
  cursor: pointer;
}
.date-input input::-webkit-calendar-picker-indicator {
  display: none;
  -webkit-appearance: none;
}
.date-input input::placeholder {
  color: #949FB6;
}
.date-input.disabled .calendar, .date-input.grayed-out .calendar {
  color: #BDC4D3;
}
.date-input.disabled input, .date-input.grayed-out input {
  color: #BDC4D3;
}
.date-input.disabled input::placeholder, .date-input.grayed-out input::placeholder {
  color: #BDC4D3;
}

.form-input-container--group-header {
  padding-bottom: 1rem;
  border-bottom: 1px solid #F0F2F5;
}
.form-input-container--group-header .checkbox-input .label label {
  margin-left: 0;
}

.form-input-container--suboption .checkbox-input .label label {
  font-size: 0.875rem;
  color: #5F6D8A;
  margin-left: 0;
}
.form-input-container--suboption.is-inert .checkbox-input .label label,
.form-input-container--suboption.is-inert .checkbox-input__explanation {
  color: #BDC4D3;
}

.checkbox-input.checkbox-input--explained .label {
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 0.25rem;
}

.checkbox-input__explanation {
  font-size: 0.75rem;
  line-height: 1.4;
  color: #949FB6;
}

.checkbox-input {
  width: 100%;
  display: flex;
  flex-direction: column;
}
.checkbox-input .container {
  width: 100%;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
}
.checkbox-input .label {
  color: #5F6D8A;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  flex: 1;
}
.checkbox-input .label.required label::after {
  content: " *";
  color: #EF1103;
}
.checkbox-input .checkbox {
  position: relative;
  width: 3rem;
  height: 1.5rem;
  padding: 0.375rem;
  border-radius: 0.75rem;
  border: 1px solid #BDC4D3;
  background-color: #FBFCFF;
  cursor: pointer;
  transition: all 300ms;
}
.checkbox-input .checkbox::after {
  position: absolute;
  top: 50%;
  left: 0.375rem;
  transform: translateY(-50%);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 0.875rem;
  height: 0.875rem;
  background-color: #F0F2F5;
  border-radius: 50%;
  content: "";
  transition: all 300ms;
  border: 1px solid #CED4E1;
}
.checkbox-input .form-error {
  margin-top: 0.5rem;
}
.checkbox-input input {
  display: none;
}
.checkbox-input.checked .checkbox {
  border: 1px solid #278BFF;
}
.checkbox-input.checked .checkbox::after {
  left: calc(100% - 0.375rem - 0.875rem);
  background-color: #278BFF;
  border: 1px solid #278BFF;
}
.checkbox-input.disabled .checkbox, .checkbox-input.grayed-out .checkbox {
  border: 1px solid #CED4E1;
}
.checkbox-input.disabled .checkbox::after, .checkbox-input.grayed-out .checkbox::after {
  background-color: rgba(221, 224, 229, 0.7);
  border: none;
}
.checkbox-input.disabled .checkbox, .checkbox-input.grayed-out .checkbox {
  cursor: not-allowed;
}

.input-with-button-wrapper {
  display: flex;
  gap: 1rem;
}

.file-input .fake-input, .file-input .appointment_recommendation_details .text, .appointment_recommendation_details .file-input .text, .file-input .appointment_recommendation_details .parameters, .appointment_recommendation_details .file-input .parameters {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 100%;
  flex-grow: 1;
  color: #5F6D8A;
  cursor: pointer;
  gap: 0.5rem;
}
.file-input .fake-input .icon, .file-input .appointment_recommendation_details .text .icon, .appointment_recommendation_details .file-input .text .icon, .file-input .appointment_recommendation_details .parameters .icon, .appointment_recommendation_details .file-input .parameters .icon {
  width: 1.125rem;
  height: 1.125rem;
  color: #949FB6;
  flex-shrink: 0;
}
.file-input .fake-input .placeholder, .file-input .appointment_recommendation_details .text .placeholder, .appointment_recommendation_details .file-input .text .placeholder, .file-input .appointment_recommendation_details .parameters .placeholder, .appointment_recommendation_details .file-input .parameters .placeholder {
  max-width: 90%;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  white-space: nowrap;
}
.file-input .fake-input .placeholder .text, .file-input .appointment_recommendation_details .text .placeholder .text, .appointment_recommendation_details .file-input .text .placeholder .text, .file-input .appointment_recommendation_details .parameters .placeholder .text, .appointment_recommendation_details .file-input .parameters .placeholder .text {
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 260px;
}
.file-input .fake-input .placeholder .icon, .file-input .appointment_recommendation_details .text .placeholder .icon, .appointment_recommendation_details .file-input .text .placeholder .icon, .file-input .appointment_recommendation_details .parameters .placeholder .icon, .appointment_recommendation_details .file-input .parameters .placeholder .icon {
  width: 1.25rem;
  height: 1.25rem;
}
.file-input input {
  display: none;
}
.file-input.disabled .left-icon, .file-input.disabled .right-icon, .file-input.grayed-out .left-icon, .file-input.grayed-out .right-icon {
  color: #BDC4D3;
}
.file-input.disabled input, .file-input.grayed-out input {
  color: #BDC4D3;
}
.file-input.disabled input::placeholder, .file-input.grayed-out input::placeholder {
  color: #BDC4D3;
}

.form-error {
  display: flex;
  align-items: center;
  gap: 0.125rem;
  margin-left: 0.25rem;
}
.form-error .icon {
  width: 1.125rem;
  height: 1.125rem;
  color: #EF1103;
  margin-right: 0.25rem;
}
.form-error .message {
  margin-top: 1px;
  color: #EF1103;
}

.form-divider {
  width: 95%;
  height: 1px;
  background-color: #CED4E1;
  margin: 0.5rem auto;
}

.forgot-password-link {
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  color: #278BFF;
}

.dont-have-account {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.25rem;
}
.dont-have-account p {
  color: #5F6D8A;
}
.form-section {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  align-items: center;
}

.auth-step {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
.auth-step__form {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
.auth-step__submit {
  position: relative;
  align-self: center;
  justify-content: center;
  min-width: 9rem;
}
.auth-step__links {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  text-align: center;
}
.auth-step__terms {
  text-align: center;
  color: #949FB6;
}
.auth-step__terms a {
  color: #5F6D8A;
}
.auth-step.is-verified {
  gap: 1rem;
}
.auth-step.is-verified > .auth-step__form > .auth-step__submit,
.auth-step.is-verified > .auth-step__links {
  display: none;
}
.auth-step__mfa {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
.auth-step__mfa.is-entering {
  animation: auth-step-enter 0.28s cubic-bezier(0.2, 0.7, 0.2, 1) both;
}
@media (prefers-reduced-motion: reduce) {
  .auth-step__mfa.is-entering {
    animation: none;
  }
}
.auth-step.is-busy {
  pointer-events: none;
}
.auth-step.is-busy .auth-step__submit .text {
  visibility: hidden;
}
.auth-step.is-busy .auth-step__submit::after {
  content: "";
  position: absolute;
  width: 1rem;
  height: 1rem;
  border: 2px solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  animation: spin 0.8s linear infinite;
}

.recaptcha-wrapper, .g-recaptcha {
  margin-top: 1rem;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  display: flex;
  justify-content: center;
}
@media screen and (max-width: 430px) {
  .recaptcha-wrapper, .g-recaptcha {
    zoom: 0.72;
  }
}

.multi-page-form-container {
  position: relative;
}
.multi-page-form-container form {
  overflow-x: hidden;
  overflow-y: auto;
  scrollbar-width: none;
}
.multi-page-form-container form::-webkit-scrollbar {
  display: none;
}
.multi-page-form-container form .scroll-container {
  width: 200%;
  overflow: hidden;
  display: flex;
  gap: 1px;
  transition: transform 0s ease;
}
.multi-page-form-container form .page {
  width: 50%;
  padding: 0.125rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem;
  height: fit-content;
}
.multi-page-form-container form .page .double-input {
  width: 100%;
  display: flex;
  gap: 1.25rem;
}
.multi-page-form-container form .page .double-input .form-input-container {
  width: 50%;
}
@media screen and (max-width: 655px) {
  .multi-page-form-container form .page .double-input {
    flex-direction: column;
    gap: 1.25rem;
  }
  .multi-page-form-container form .page .double-input .form-input-container {
    width: 100%;
  }
}
.multi-page-form-container form.next-page .scroll-container {
  transition: transform 300ms ease;
  transform: translateX(-50%);
}
.multi-page-form-container .previous-page-button {
  position: absolute;
  bottom: 2rem;
  left: 2rem;
  color: #5F6D8A;
  cursor: pointer;
}
.multi-page-form-container .previous-page-button svg {
  width: 1.25rem;
  height: 1.25rem;
}

.form-title-group {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1rem;
}

.advanced-options {
  width: 100%;
  display: flex;
  flex-direction: column;
}
.advanced-options .advanced-options-toggle {
  display: flex;
  gap: 0.5rem;
  align-items: center;
  cursor: pointer;
  color: #BDC4D3;
  transition: all 150ms;
}
.advanced-options .advanced-options-toggle .icon {
  transition: all 150ms;
}
.advanced-options .advanced-options-toggle.toggled {
  color: #5F6D8A;
}
.advanced-options .advanced-options-toggle.toggled .icon {
  transform: rotate(180deg);
}
.advanced-options .form-input-list {
  margin-top: 1rem;
}

#edit-account-form .form-input-list {
  max-height: 30svh;
  overflow-y: auto;
  padding: 0.125rem;
}

.edit-appointment-container .header .left {
  gap: 0.375rem;
}
.edit-appointment-container .header .left .minimize-icon {
  color: #232B3C;
}
.edit-appointment-container .header .left .header-text {
  margin-bottom: unset;
}
.edit-appointment-container .delete-appointment-button .delete-icon {
  color: #EF1103;
}
.edit-appointment-container .delete-appointment-button.disabled .delete-icon {
  color: #CED4E1;
  cursor: not-allowed;
}
.edit-appointment-container .add-results {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
}
@media screen and (max-width: 655px) {
  .edit-appointment-container .add-results .attach-existing-results-button .text {
    display: none;
  }
}
.edit-appointment-container .add-results .add-results-button {
  cursor: pointer;
}
.edit-appointment-container .add-results .add-results-button,
.edit-appointment-container .add-results .attach-existing-results-button {
  justify-content: center;
}
.edit-appointment-container .add-results p {
  color: #5F6D8A;
  text-decoration: none;
  margin-top: 0.25rem;
}
.edit-appointment-container .add-results .left-icon {
  animation: spin 1s linear infinite;
}
.edit-appointment-container .header-text {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.edit-appointment-container .results-container {
  margin-top: 2rem;
}
@media screen and (max-width: 655px) {
  .edit-appointment-container .results-container {
    padding: 0;
  }
}

.save-appointment-button {
  margin: 0 auto;
}
.save-appointment-button.loading .icon {
  color: #F0F2F5;
  width: 1rem;
  height: 1rem;
  animation: spin 1s linear infinite;
}

.appointment_recommendation_details {
  margin: auto;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  width: 100%;
}
.appointment_recommendation_details .title {
  color: #5F6D8A;
  font-size: 0.75rem;
}
.appointment_recommendation_details .fake-input, .appointment_recommendation_details .text, .appointment_recommendation_details .parameters {
  display: flex;
  overflow-x: scroll;
  scrollbar-width: none;
  outline: 1px solid #CED4E1;
  border-radius: 1.5rem;
  background-color: rgba(221, 224, 229, 0.7);
}
.appointment_recommendation_details .parameters {
  gap: 0.375rem;
  padding: 0.375rem 0.5rem;
}
.appointment_recommendation_details .parameters .single-parameter {
  padding: 0.375rem 0.75rem;
  font-size: 0.875rem;
  color: #5F6D8A;
  white-space: nowrap;
  font-weight: 500;
  border-radius: 1.5rem;
  background-color: #FFFFFF;
}
.appointment_recommendation_details .text {
  padding: 0.625rem 1rem;
  color: #BDC4D3;
}
.appointment_recommendation_details .text::-webkit-scrollbar {
  display: none;
}

.error_text {
  color: red;
  font-size: 0.9rem;
  margin-top: 0.5rem;
}

.range-input {
  display: flex;
  align-items: center;
  gap: 1rem;
  width: 100%;
}
.range-input input[type=range] {
  flex: 1 1 auto;
  min-width: 0;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  background: transparent;
  height: 1rem;
}
.range-input input[type=range]:focus-visible {
  outline: 2px solid #278BFF;
  outline-offset: 2px;
  border-radius: 1.5rem;
}
.range-input input[type=range]::-webkit-slider-runnable-track {
  height: 0.25rem;
  border: 0;
  border-radius: 999px;
  background: linear-gradient(to right, #278BFF var(--range-progress, 0%), #DDE0E5 var(--range-progress, 0%));
}
.range-input input[type=range]::-moz-range-track {
  height: 0.25rem;
  border: 0;
  border-radius: 999px;
  background: linear-gradient(to right, #278BFF var(--range-progress, 0%), #DDE0E5 var(--range-progress, 0%));
}
.range-input input[type=range]::-webkit-slider-thumb {
  -webkit-appearance: none;
  width: 1rem;
  height: 1rem;
  border: 0;
  border-radius: 999px;
  background: #278BFF;
  margin-top: calc((0.25rem - 1rem) / 2);
}
.range-input input[type=range]::-moz-range-thumb {
  width: 1rem;
  height: 1rem;
  border: 0;
  border-radius: 999px;
  background: #278BFF;
}
.range-input__readout {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: baseline;
  gap: 0.25rem;
  white-space: nowrap;
}
.range-input__value {
  min-width: 2ch;
  text-align: right;
  color: #232B3C;
  font-variant-numeric: tabular-nums;
}
.range-input__max {
  color: #949FB6;
  font-variant-numeric: tabular-nums;
}
.range-input.disabled input[type=range] {
  cursor: not-allowed;
}

.inline-edit-form {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  width: 100%;
}
.inline-edit-form .form-input-list {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.inline-edit-form .form-input-container {
  width: 100%;
}
.inline-edit-form .inline-form-header .appointment-type-display {
  color: #424E66;
}
.inline-edit-form .inline-form-actions {
  display: flex;
  gap: 0.75rem;
  flex-wrap: wrap;
  align-items: center;
}
.inline-edit-form .inline-form-actions .button,
.inline-edit-form .inline-form-actions .chip {
  width: fit-content;
  flex: 0 0 auto;
}
.inline-edit-form .inline-form-actions .save-appointment-button {
  margin: 0;
}
.inline-edit-form .associated-results {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.inline-edit-form .associated-results .results-header {
  color: #424E66;
}
.inline-edit-form .associated-results .results-list {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.inline-edit-form .associated-results .results-list .result-preview {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.5rem;
  border: 1px solid #CED4E1;
  border-radius: 0.5rem;
}
.inline-edit-form .associated-results .results-list .result-preview .result-name {
  color: #424E66;
}
.inline-edit-form .associated-results .results-list .result-preview .view-result-link {
  color: #278BFF;
  display: flex;
  align-items: center;
  gap: 0.25rem;
}
.inline-edit-form .associated-results .results-list .result-preview .view-result-link .icon {
  width: 0.75rem;
  height: 0.75rem;
}
.inline-edit-form .loading-state,
.inline-edit-form .error-state {
  color: #5F6D8A;
  padding: 1rem;
  text-align: center;
}
.inline-edit-form .error-state {
  color: #EF1103;
}

.button-group {
  display: flex;
  gap: 0.5rem;
}

.settings-page-content--privacy .checkbox-input .label label {
  line-height: 1.6;
}

.parameter-field--hidden {
  display: none;
}

.parameter-picker.hidden {
  display: none;
}
.parameter-picker .select-input select {
  color: #949FB6;
}

h1, h2, h3, h4, h5 {
  font-weight: 600;
}

h6 {
  font-weight: 400;
}

/* Heading Styles */
h1 {
  font-size: 2.5rem;
}

h2 {
  font-size: 2rem;
}

h3 {
  font-size: 1.5rem;
}

h4 {
  font-size: 1.25rem;
}

h5 {
  font-size: 1.125rem;
}

/* Body Styles */
.p-r, .p1-r, .p2-r, .p3-r, .p4-r, .p5-r {
  font-weight: 400;
}

.p-b, .p1-b, .p2-b, .p3-b, .p4-b, .p5-b {
  font-weight: 600;
}

.p1-r, .p1-b {
  font-size: 1.375rem;
}

.p2-r, .p2-b {
  font-size: 1.125rem;
}

.p3-r, .p3-b {
  font-size: 1rem;
}

.p4-r, .p4-b {
  font-size: 0.875rem;
}

.p5-r, .p5-b {
  font-size: 0.75rem;
}

/* Label Styles */
.l-r, .l1-r, .l2-r, .l3-r, .l4-r {
  font-weight: 400;
}

.l-b, .l1-b, .l2-b, .l3-b, .l4-b {
  font-weight: 500;
}

.l1-r, .l1-b {
  font-size: 1.25rem;
}

.l2-r, .l2-b {
  font-size: 1rem;
}

.l3-r, .l3-b {
  font-size: 0.925rem;
}

.l4-r, .l4-b {
  font-size: 0.875rem;
}

/* Link Styles */
.link {
  text-decoration: underline;
  cursor: pointer;
  color: inherit;
}

.add-results-button {
  align-self: center;
}
@media screen and (max-width: 840px) {
  .add-results-button .text {
    display: none;
  }
}

.condition-menu-wrapper {
  padding: 0 1.5rem;
}
@media screen and (max-width: 840px) {
  .condition-menu-wrapper {
    padding: 0 1rem;
  }
}
.condition-menu-wrapper.no-horizontal-padding {
  padding-left: 0;
  padding-right: 0;
}
.condition-menu-wrapper .condition-menu {
  display: flex;
  gap: 1rem;
}
@media screen and (max-width: 655px) {
  .condition-menu-wrapper .condition-menu {
    overflow-y: scroll;
  }
}
.condition-menu-wrapper .condition-menu .section-title {
  text-wrap: nowrap;
}
.condition-menu-wrapper .condition-menu .section-title.active {
  font-weight: 600;
}
.condition-menu-wrapper .condition-menu .section-title:not(.active) {
  cursor: pointer;
}

.condition-container {
  position: relative;
  width: 100%;
  padding: 0;
  display: flex;
  gap: 1.5rem;
  flex-direction: column;
  border: 1px solid #CED4E1;
  border-radius: 0.75rem;
  height: calc(100svh - 5rem - 1.5rem - 1.5rem - 0.5rem - 2.5rem - 3rem - 2rem);
  overflow: auto;
}
.condition-container.prevention-mode {
  height: calc(100svh - 5rem - 2.5rem - 4rem);
  border: none;
}
@media screen and (max-width: 840px) {
  .condition-container.prevention-mode {
    height: calc(100svh - 4rem - 2.5rem - 3rem);
  }
}
.condition-container.hidden {
  display: none;
}
.condition-container.centered {
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 840px) {
  .condition-container {
    padding: 0 1rem;
    border-radius: 0;
    border-left: 0;
    border-right: 0;
    height: calc(100svh - 4rem - 1.5rem - 0.5rem - 2.5rem - 3rem - 2rem);
  }
}
.condition-container .canvas-container {
  scrollbar-width: thin;
  overflow-y: auto;
}
.condition-container .canvas-container.empty {
  overflow: unset;
}
.condition-container .canvas-container.non-premium {
  opacity: 0.4;
}
.condition-container .canvas-container .placeholder {
  height: calc(100svh - 7rem);
}
.condition-container .canvas-container .empty-state {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2rem;
}
.condition-container .canvas-container .empty-state p {
  color: #949FB6;
  text-align: center;
}
.condition-container .canvas-container .empty-state.hidden {
  display: none;
}
.condition-container .canvases {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 1rem;
}
@media screen and (max-width: 840px) {
  .condition-container .canvases {
    padding: 0.75rem 0;
  }
}

.parameter-card {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  padding: 1rem;
  background: #FFFFFF;
  border: 1px solid #DDE0E5;
  border-radius: 0.75rem;
}
.parameter-card[hidden] {
  display: none;
}
.parameter-card__header {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.75rem;
}
.parameter-card__identity {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.5rem;
  min-width: 0;
}
.parameter-card__name {
  font-size: 1rem;
  font-weight: 600;
  color: #0B1426;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.parameter-card__actions {
  display: flex;
  flex-direction: row;
  gap: 1rem;
  flex-shrink: 0;
}
@media screen and (max-width: 655px) {
  .parameter-card__header {
    flex-direction: column;
    align-items: stretch;
    gap: 0.5rem;
  }
  .parameter-card__identity {
    flex-wrap: wrap;
  }
  .parameter-card__name {
    white-space: normal;
    overflow: visible;
  }
  .parameter-card__action {
    text-align: left;
  }
}
.parameter-card__action {
  color: #278BFF;
  font-size: 0.875rem;
  text-align: right;
  white-space: nowrap;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  cursor: pointer;
}
.parameter-card__action:disabled {
  color: #CED4E1;
  cursor: not-allowed;
}
.parameter-card__readout {
  display: flex;
  flex-direction: row;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.parameter-card__value {
  font-size: 2rem;
  font-weight: 600;
  line-height: 1.1;
  color: #0B1426;
}
.parameter-card__unit {
  font-size: 0.875rem;
  color: #5F6D8A;
}
.parameter-card__measured, .parameter-card__reference {
  font-size: 0.8125rem;
  color: #949FB6;
}
.parameter-card__hint {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.5rem;
  padding: 0.625rem 0.75rem;
  background: #f4f6f8;
  border-radius: 0.5rem;
  font-size: 0.8125rem;
  color: #5F6D8A;
  line-height: 1.3;
}
.parameter-card__hint .icon {
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
  color: #949FB6;
}

.parameter-state {
  font-size: 0.6875rem;
  font-weight: 500;
  padding: 0.25rem 0.625rem;
  border-radius: 0.5rem;
  white-space: nowrap;
  flex-shrink: 0;
}
.parameter-state--normal {
  background: #E5F5E6;
  color: #29702C;
}
.parameter-state--warning {
  background: #FFF1E6;
  color: #9C4F17;
}
.parameter-state--neutral {
  background: #F0F2F5;
  color: #5F6D8A;
}

.parameter-trend {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 0.8125rem;
  font-weight: 500;
  white-space: nowrap;
  min-width: 0;
}
.parameter-trend .icon {
  width: 0.875rem;
  height: 0.875rem;
  flex-shrink: 0;
}
.parameter-trend__label {
  overflow: hidden;
  text-overflow: ellipsis;
}
.parameter-trend--normal {
  color: #2E9B33;
}
.parameter-trend--warning {
  color: #F4A261;
}
.parameter-trend--neutral {
  color: #5F6D8A;
}

.parameter-chart {
  width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: thin;
  -webkit-overflow-scrolling: touch;
}
.parameter-chart__plot {
  position: relative;
  width: fit-content;
}
.parameter-chart__canvas {
  display: block;
}
.parameter-chart__pulse {
  position: absolute;
  width: 0.625rem;
  height: 0.625rem;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  pointer-events: none;
  animation: parameter-chart-pulse 2.4s ease-out infinite;
}
.parameter-chart__pulse[hidden] {
  display: none;
}

@keyframes parameter-chart-pulse {
  0% {
    box-shadow: 0 0 0 0 currentColor;
    opacity: 0.5;
  }
  70% {
    box-shadow: 0 0 0 0.625rem transparent;
    opacity: 0;
  }
  100% {
    box-shadow: 0 0 0 0 transparent;
    opacity: 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .parameter-chart__pulse {
    animation: none;
  }
}
.status-cards-container {
  display: flex;
  flex-direction: row;
  gap: 0.5rem;
  overflow-x: scroll;
  scrollbar-width: none;
  scroll-snap-type: x mandatory;
  padding-block: 0.75rem;
  margin-block: calc(-1 * 0.75rem);
}
.status-cards-container::-webkit-scrollbar {
  display: none;
}

.status-group-card {
  background: #FFFFFF;
  border: 1px solid #DDE0E5;
  border-radius: 0.5rem;
  padding: 0.875rem 1rem;
  flex: 0 0 100%;
}
@media (min-width: 480px) {
  .status-group-card {
    flex: 0 0 calc(50% - 0.25rem);
  }
}
@media (min-width: 655px) {
  .status-group-card {
    flex: 0 0 calc(33.333% - 0.5rem * 2 / 3);
  }
}
@media (min-width: 840px) {
  .status-group-card {
    flex: 0 0 250px;
  }
}
.status-group-card {
  min-width: 0;
  scroll-snap-align: start;
  cursor: pointer;
  transition: box-shadow 150ms ease;
}
.status-group-card:hover {
  box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
}
.status-group-card__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0.5rem;
}
.status-group-card__title {
  font-size: 0.875rem;
  color: #5F6D8A;
}
.status-group-card__pill {
  font-size: 0.6875rem;
  font-weight: 500;
  padding: 0.25rem 0.625rem;
  border-radius: 0.5rem;
  white-space: nowrap;
  flex-shrink: 0;
  height: 1.25rem;
}
.status-group-card--normal .status-group-card__pill {
  background: #E5F5E6;
  color: #29702C;
}
.status-group-card--warning .status-group-card__pill {
  background: #FFF1E6;
  color: #9C4F17;
}
.status-group-card--critical .status-group-card__pill {
  background: #FFF1E6;
  color: #9C4F17;
}
.status-group-card--no-data .status-group-card__pill {
  background: #F0F2F5;
  color: #5F6D8A;
}
.status-group-card--neutral .status-group-card__pill {
  background: #E5F5E6;
  color: #29702C;
}
.status-group-card--info .status-group-card__pill {
  background: #EBF5FF;
  color: #278BFF;
}
.status-group-card__body {
  font-size: 0.8125rem;
  color: #5F6D8A;
  line-height: 1.5;
  max-height: 250px;
  overflow-y: scroll;
}
.status-group-card__body:empty {
  display: none;
}
.status-group-card__all-fine {
  color: #29702C;
}
.status-group-card__param {
  padding-bottom: 0.5rem;
  border-width: 0 0 1px 0;
  border-style: solid;
  border-color: #DDE0E5;
  margin-bottom: 0.5rem;
}
.status-group-card__param:last-child {
  margin-bottom: 0;
  border-width: 0;
}
.status-group-card__param-name {
  font-size: 0.8125rem;
  color: #0B1426;
  flex: 0 0 auto;
  white-space: nowrap;
}
.status-group-card__param-value {
  font-size: 0.75rem;
  color: #949FB6;
}
.status-group-card__param-norm {
  font-size: 0.75rem;
  color: #949FB6;
}
.status-group-card__param-desc {
  font-size: 0.75rem;
  line-height: 1.4;
  color: #5F6D8A;
  margin-top: 0.375rem;
}
.status-group-card__param-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  min-width: 0;
  overflow: hidden;
}
.status-group-card__param-head .parameter-trend {
  min-width: 0;
  overflow: hidden;
}

.status-group-card--placeholder {
  cursor: default;
  pointer-events: none;
}

.status-card-skeleton {
  display: block;
  border-radius: 0.25rem;
  background: #e5e7ea;
  animation: status-card-skeleton-pulse 1.4s ease-in-out infinite;
}
.status-card-skeleton--pill {
  height: 1.25rem;
  width: 4.25rem;
}
.status-card-skeleton--pill::before {
  content: "​";
}
.status-card-skeleton--pill {
  border-radius: 0.5rem;
  background: #e5e7ea;
}
.status-card-skeleton--trend {
  height: 0.9375rem;
  width: 60%;
}
.status-card-skeleton--desc {
  height: 0.75rem;
  width: 85%;
  margin-top: 0.5rem;
}

@keyframes status-card-skeleton-pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.45;
  }
}
@media (prefers-reduced-motion: reduce) {
  .status-card-skeleton {
    animation: none;
  }
}
.status-cards-error {
  flex: 1 1 100%;
  min-width: 0;
  margin: 0;
  text-align: center;
  font-size: 0.9rem;
  color: #949FB6;
}

.info-note {
  display: flex;
  align-items: flex-start;
  gap: 0.625rem;
  background-color: transparent;
  border: 1px solid #DDE0E5;
  border-radius: 0.5rem;
  padding: 0.75rem 0.875rem;
}
.info-note__icon {
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
  color: #949FB6;
  margin-top: 0.0625rem;
}
.info-note__text {
  color: #0B1426;
  line-height: 1.5;
}

h1, h2, h3, h4, h5 {
  font-weight: 600;
}

h6 {
  font-weight: 400;
}

/* Heading Styles */
h1 {
  font-size: 2.5rem;
}

h2 {
  font-size: 2rem;
}

h3 {
  font-size: 1.5rem;
}

h4 {
  font-size: 1.25rem;
}

h5 {
  font-size: 1.125rem;
}

/* Body Styles */
.p-r, .p1-r, .p2-r, .p3-r, .have-problems a, .p4-r, .have-problems p, .p5-r {
  font-weight: 400;
}

.p-b, .p1-b, .p2-b, .p3-b, .p4-b, .p5-b {
  font-weight: 600;
}

.p1-r, .p1-b {
  font-size: 1.375rem;
}

.p2-r, .p2-b {
  font-size: 1.125rem;
}

.p3-r, .have-problems a, .p3-b {
  font-size: 1rem;
}

.p4-r, .have-problems p, .p4-b {
  font-size: 0.875rem;
}

.p5-r, .p5-b {
  font-size: 0.75rem;
}

/* Label Styles */
.l-r, .l1-r, .l2-r, .l3-r, .l4-r {
  font-weight: 400;
}

.l-b, .l1-b, .l2-b, .l3-b, .l4-b {
  font-weight: 500;
}

.l1-r, .l1-b {
  font-size: 1.25rem;
}

.l2-r, .l2-b {
  font-size: 1rem;
}

.l3-r, .l3-b {
  font-size: 0.925rem;
}

.l4-r, .l4-b {
  font-size: 0.875rem;
}

/* Link Styles */
.link {
  text-decoration: underline;
  cursor: pointer;
  color: inherit;
}

.layout {
  width: 100%;
  padding: 1rem;
}

.align-center {
  align-items: center;
}

.success-container {
  padding: 2.5rem;
  line-height: 1.25;
}
@media screen and (max-width: 840px) {
  .success-container {
    padding: 2rem;
  }
}
.success-container .content {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  max-width: 920px;
  margin: auto;
}
.success-container .content .button {
  align-self: center;
}

.info {
  text-align: center;
  color: #5F6D8A;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

.have-problems {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.25rem;
}
.have-problems p {
  color: #5F6D8A;
}
.have-problems a {
  color: #232B3C;
}

.rules-container {
  max-width: 920px;
  margin: 1.5rem auto 0 auto;
  padding: 0 2rem 3rem 2rem;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  line-height: 1.3;
}
.rules-container section:nth-child(2) {
  margin-top: 1.5rem;
}
.rules-container section {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.rules-container section ul {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.content-layout-1200, .layout-1200 {
  max-width: 1200px;
  padding: 0 1.5rem;
  margin: 2.5rem auto 0 auto;
  height: unset !important;
}
.content-layout-1200 *, .layout-1200 * {
  line-height: 1.3;
}
@media screen and (max-width: 655px) {
  .content-layout-1200, .layout-1200 {
    margin: 1.5rem auto 0 auto;
  }
}
.content-layout-1200 p, .layout-1200 p, .content-layout-1200 button, .layout-1200 button {
  margin-top: 0.5rem;
}
.content-layout-1200 ul, .layout-1200 ul {
  margin-top: 0.5rem;
}
.content-layout-1200 ul li, .layout-1200 ul li {
  margin-top: 0.25rem;
}
.content-layout-1200 ul.neutral-list li, .layout-1200 ul.neutral-list li {
  margin-top: 0.75rem !important;
  background-color: #DDE0E5;
  padding: 0.75rem;
  border-radius: 0.5rem;
}

.appointments-page-layout .home-section {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
.appointments-page-layout .past-appointments {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  width: 100%;
}
.appointments-page-layout .note {
  margin-top: 1.5rem;
}

.prevention-section {
  width: 100%;
}
.prevention-section--inset {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
@media screen and (max-width: 840px) {
  .prevention-section--inset {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
.prevention-section--stack {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
.prevention-section--stack > .prevention-section__header {
  margin-bottom: 0;
}
.prevention-section--stack > .prevention-section__subheader {
  margin-bottom: -0.5rem;
}
.prevention-section__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1rem;
}
.prevention-section__subheader {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  margin-bottom: 0.75rem;
}
.prevention-section__subheader > h6 {
  margin: 0;
  font-size: 1rem;
  font-weight: 500;
  color: #232B3C;
  white-space: nowrap;
}
.prevention-section__charts-link {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  font-size: 0.9rem;
  text-decoration: none;
  transition: color 150ms ease;
}
.prevention-section__charts-icon {
  width: 1rem;
  height: 1rem;
}

.prevention-plan {
  background: #FFFFFF;
  border: 1px solid #DDE0E5;
  border-radius: 1rem;
  padding: 1.125rem 1.25rem;
}
.prevention-plan__progress-bar {
  width: 100%;
  height: 6px;
  background: #F0F2F5;
  border-radius: 1rem;
  overflow: hidden;
  margin-bottom: 0.375rem;
}
.prevention-plan__progress-fill {
  height: 100%;
  border-radius: 1rem;
  transition: width 500ms ease;
}
.prevention-plan__progress-fill--neutral {
  background: #CED4E1;
}
.prevention-plan__progress-fill--success {
  background: #2E9B33;
}
.prevention-plan__progress-fill--primary {
  background: #278BFF;
}

.prevention-task {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  padding: 0.625rem 0;
  border-bottom: 1px solid #F0F2F5;
}
.prevention-task:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
.prevention-task--empty {
  color: #949FB6;
  font-size: 0.875rem;
}
.prevention-task--completed .prevention-task__checkbox {
  background: #2E9B33;
  border-color: #2E9B33;
}
.prevention-task--completed .prevention-task__title {
  text-decoration: line-through;
  color: #BDC4D3;
}

.prevention-summary {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.75rem;
  margin-bottom: 1rem;
}

.prevention-task__input {
  width: 90px;
  padding: 0.375rem 0.5rem;
  border: 1px solid #CED4E1;
  border-radius: 0.5rem;
  font-size: 0.8125rem;
  color: #0B1426;
  background: #FFFFFF;
  appearance: textfield;
}
.prevention-task__input:focus {
  outline: none;
  border-color: #278BFF;
}

.prevention-task__input-unit {
  font-size: 0.75rem;
  color: #949FB6;
  margin-right: 0.25rem;
}

.prevention-task__input-submit {
  padding: 0.375rem 0.75rem;
  background: #278BFF;
  color: #FFFFFF;
  border: none;
  border-radius: 0.5rem;
  font-size: 0.8125rem;
  font-weight: 500;
  cursor: pointer;
}
.prevention-task__input-submit:hover {
  background: #278BFF;
}

.prevention-task__input-cancel {
  padding: 0.375rem 0.5rem;
  background: none;
  color: #949FB6;
  border: none;
  font-size: 0.8125rem;
  cursor: pointer;
}
.prevention-task__input-cancel:hover {
  color: #424E66;
}

.prevention-task__rating {
  width: 100%;
}

.next-step-card__input-form:has(.prevention-task__rating) {
  flex-direction: column;
  align-items: stretch;
}

.prevention-task__input-error {
  width: 100%;
  font-size: 0.75rem;
  color: #278BFF;
  margin-top: 0.25rem;
}

.prevention-plan.closed .card-expandable-content {
  display: none;
}
.prevention-plan.closed .prevention-plan__fold-icon {
  transform: rotate(180deg);
}
.prevention-plan .card-expandable-content {
  width: 100%;
  overflow: hidden;
}

.official-recommendations__card {
  display: block;
  width: 100%;
  text-align: left;
  font: inherit;
  background: #FFFFFF;
  border: 1px solid #DDE0E5;
  border-radius: 1rem;
  padding: 1.125rem 1.25rem;
  cursor: pointer;
  transition: border-color 150ms ease, background-color 150ms ease;
}
.official-recommendations__card:hover {
  border-color: #CED4E1;
  background: #FBFCFF;
}
.official-recommendations__card:focus-visible {
  outline: 2px solid #278BFF;
  outline-offset: 2px;
}
.official-recommendations__card .prevention-plan__progress-bar,
.official-recommendations__card .prevention-plan__progress-fill {
  display: block;
}
.official-recommendations__card-eyebrow {
  display: block;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #BDC4D3;
  margin: 0 0 0.375rem;
}
.official-recommendations__card--static {
  cursor: default;
}
.official-recommendations__card--static:hover {
  border-color: #DDE0E5;
  background: #FFFFFF;
}
.official-recommendations__card-fraction {
  display: block;
  font-size: 1.5rem;
  font-weight: 700;
  color: #0B1426;
  margin: 0 0 0.625rem;
}
.official-recommendations__no-data {
  margin: 0;
  font-size: 0.9rem;
  line-height: 1.5;
  color: #949FB6;
}

.modal__card.modal__card--official-recommendations {
  align-items: stretch;
  text-align: left;
  gap: 1.25rem;
  padding: 2.5rem 1.5rem 1.5rem;
  background: #FFFFFF;
}
.modal__card.modal__card--official-recommendations > *:not(.modal__close) {
  width: 100%;
}

.official-recommendations-modal__head {
  display: flex;
  flex-direction: column;
}
.official-recommendations-modal__fraction {
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1.1;
  color: #0B1426;
  margin: 0 0 0.75rem;
}
.official-recommendations-modal__section {
  display: flex;
  flex-direction: column;
}
.official-recommendations-modal__section-label {
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #BDC4D3;
  margin: 0 0 0.5rem;
}
.official-recommendations-modal__list {
  display: flex;
  flex-direction: column;
}
.official-recommendations-modal__row + .official-recommendations-modal__row {
  border-top: 1px solid #F0F2F5;
}
.official-recommendations-modal__row-toggle, .official-recommendations-modal__details-toggle {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  width: 100%;
  background: none;
  border: none;
  padding: 0.75rem 0;
  cursor: pointer;
  text-align: left;
  font: inherit;
  color: #0B1426;
}
.official-recommendations-modal__row-title {
  flex: 1;
  font-size: 0.875rem;
  line-height: 1.45;
  color: #0B1426;
}
.official-recommendations-modal__marker {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 1.27rem;
  flex-shrink: 0;
  color: #BDC4D3;
  line-height: 1;
}
.official-recommendations-modal__marker--done {
  color: #2E9B33;
}
.official-recommendations-modal__marker--declared {
  color: #2E9B33;
}
.official-recommendations-modal__marker--declared .official-recommendations-modal__marker-icon {
  width: 16px;
  height: 16px;
  padding: 3px;
  border: 1px solid currentColor;
  border-radius: 50%;
}
.official-recommendations-modal__marker-icon {
  width: 14px;
  height: 14px;
}
.official-recommendations-modal__fold-icon {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  color: #BDC4D3;
  transition: transform 150ms ease;
}
.official-recommendations-modal__row-details, .official-recommendations-modal__details-content {
  width: 100%;
  overflow: hidden;
  padding-bottom: 0.75rem;
  padding-left: calc(0.75rem + 16px);
}
.official-recommendations-modal__row-detail {
  font-size: 0.8125rem;
  line-height: 1.45;
  color: #949FB6;
  margin: 0 0 0.375rem;
}
.official-recommendations-modal__row-detail:last-child {
  margin-bottom: 0;
}
.official-recommendations-modal__row-source {
  font-size: 0.75rem;
  line-height: 1.45;
  color: #BDC4D3;
  margin: 0.5rem 0 0;
}
.official-recommendations-modal__row-source-label {
  color: #BDC4D3;
}
.official-recommendations-modal__row-source-tier {
  color: #5F6D8A;
  font-weight: 500;
}
.official-recommendations-modal__row-source-tier::after {
  content: " · ";
  color: #BDC4D3;
  font-weight: 400;
}
.official-recommendations-modal__row-source-link {
  color: #278BFF;
  text-decoration: none;
}
.official-recommendations-modal__row-source-link:hover, .official-recommendations-modal__row-source-link:focus-visible {
  text-decoration: underline;
}
.official-recommendations-modal__row-source-publisher {
  color: #BDC4D3;
}
.official-recommendations-modal__row-source-publisher::before {
  content: "· ";
}
.official-recommendations-modal__row-source-plain {
  color: #BDC4D3;
}
.official-recommendations-modal__row-availability {
  font-size: 0.75rem;
  line-height: 1.45;
  color: #29702C;
  background: #E5F5E6;
  border-radius: 0.5rem;
  padding: 0.375rem 0.5rem;
}
.official-recommendations-modal__row-availability-link {
  color: #278BFF;
  text-decoration: underline;
}
.official-recommendations-modal__row-availability-link:hover, .official-recommendations-modal__row-availability-link:focus-visible {
  text-decoration: none;
}
.official-recommendations-modal__empty {
  font-size: 0.875rem;
  color: #BDC4D3;
  margin: 0;
  padding: 0.25rem 0 0.5rem;
}
.official-recommendations-modal__details-toggle {
  justify-content: space-between;
  font-size: 0.875rem;
  color: #5F6D8A;
}
.official-recommendations-modal__details-content {
  padding-left: 0;
}
.official-recommendations-modal__detail-note {
  font-size: 0.8125rem;
  line-height: 1.45;
  color: #949FB6;
  margin: 0 0 0.5rem;
}
.official-recommendations-modal__detail-note:last-child {
  margin-bottom: 0;
}
.official-recommendations-modal__foot {
  border-top: 1px solid #F0F2F5;
  padding-top: 1rem;
}
.official-recommendations-modal__disclaimer {
  font-size: 0.75rem;
  line-height: 1.45;
  color: #BDC4D3;
  margin: 0;
}
.official-recommendations-modal .closed .card-expandable-content {
  display: none;
}
.official-recommendations-modal [data-official-fold]:not(.closed) .official-recommendations-modal__fold-icon {
  transform: rotate(180deg);
}
@media screen and (max-width: 655px) {
  .official-recommendations-modal__fraction {
    font-size: 1.5rem;
  }
}

.prevention-task__textarea {
  width: 100%;
  padding: 0.375rem 0.5rem;
  border: 1px solid #CED4E1;
  border-radius: 0.5rem;
  font-size: 0.8125rem;
  color: #0B1426;
  background: #FFFFFF;
  resize: vertical;
  font-family: inherit;
  margin-top: 0.375rem;
}
.prevention-task__textarea:focus {
  outline: none;
  border-color: #278BFF;
}

.next-step-card {
  width: 100%;
}
.next-step-card__title {
  font-size: 1rem;
  font-weight: 600;
  color: #0B1426;
  margin: 0;
}
.next-step-card__upsell {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.75rem;
  background: #FFFFFF;
  border: 1px solid #DDE0E5;
  border-radius: 1rem;
  padding: 1.125rem 1.25rem;
}
.next-step-card__upsell-text {
  font-size: 0.875rem;
  color: #949FB6;
  margin: 0;
}
.next-step-card__input-form {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
  margin-top: 0.5rem;
  padding-top: 0.5rem;
  border-top: 1px solid #F0F2F5;
  width: 100%;
}
.next-step-card__error {
  font-size: 0.75rem;
  color: #278BFF;
}
.next-step-card__companion-prompt {
  width: 100%;
  margin-top: 0.75rem;
  padding: 0.75rem;
  border-radius: 0.5rem;
  background: transparent;
  border: 1px solid #DDE0E5;
}
.next-step-card__companion-prompt[hidden] {
  display: none;
}
.next-step-card__companion-question {
  font-size: 0.875rem;
  font-weight: 500;
  color: #0B1426;
  margin: 0;
}
.next-step-card__companion-hint {
  font-size: 0.75rem;
  color: #949FB6;
  margin: 0.25rem 0 0.5rem;
}
.next-step-card__companion-options {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}
.next-step-card__companion-option {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.8125rem;
  color: #424E66;
  cursor: pointer;
}
.next-step-card__companion-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 0.75rem;
}

.self-report {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  width: 100%;
}
.self-report__hint {
  font-size: 0.75rem;
  color: #949FB6;
  margin: 0;
}
.self-report__answers {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0.5rem;
}
.self-report__answer {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  width: 100%;
  padding: 0.625rem 0.75rem;
  border: 1px solid #DDE0E5;
  border-radius: 0.5rem;
  background: #FBFCFF;
  text-align: left;
  cursor: pointer;
  transition: all 150ms ease;
}
.self-report__answer:hover:not(:disabled) {
  border-color: #278BFF;
  background: #FFFFFF;
}
.self-report__answer:disabled {
  opacity: 0.6;
  cursor: default;
}
.self-report__answer-icon {
  display: flex;
  flex-shrink: 0;
  color: #949FB6;
}
.self-report__answer-icon svg {
  width: 1.125rem;
  height: 1.125rem;
  fill: none;
  stroke: currentColor;
}
.self-report__answer-label {
  flex: 1;
  min-width: 0;
  font-size: 0.875rem;
  font-weight: 500;
  color: #0B1426;
}
.self-report__answer-outcome {
  flex-shrink: 0;
  font-size: 0.75rem;
  color: #949FB6;
}
.self-report__snooze {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  padding-top: 0.75rem;
  border-top: 1px solid #F0F2F5;
}
.self-report__snooze-btn {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  width: 100%;
  padding: 0.625rem 1rem;
  border: 1px solid #DDE0E5;
  border-radius: 0.5rem;
  background: none;
  cursor: pointer;
  transition: all 150ms ease;
}
.self-report__snooze-btn:hover:not(:disabled) {
  border-color: #278BFF;
  color: #278BFF;
}
.self-report__snooze-btn:disabled {
  opacity: 0.6;
  cursor: default;
}
.self-report__snooze-label {
  font-size: 0.875rem;
  font-weight: 500;
  color: #0B1426;
}
.self-report__snooze-outcome {
  flex-shrink: 0;
  font-size: 0.75rem;
  color: #949FB6;
}
.self-report__status {
  font-size: 0.75rem;
  color: #949FB6;
  margin: 0;
}

.mark-done-modal__body {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  width: 100%;
}
.mark-done-modal__label {
  font-size: 0.8125rem;
  color: #5F6D8A;
}
.mark-done-modal__note {
  font-size: 0.75rem;
  line-height: 1.45;
  color: #949FB6;
  margin: 0;
}

.next-step-cta__secondary {
  white-space: nowrap;
}

.next-step-cta {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
  margin-top: 0.5rem;
}
.next-step-cta__more {
  position: relative;
  display: inline-flex;
}
.next-step-cta__dots {
  width: 1rem;
  height: 1rem;
  fill: none;
  stroke: currentColor;
}
.next-step-cta__menu {
  position: absolute;
  top: calc(100% + 0.375rem);
  left: 0;
  z-index: 2;
  min-width: 11rem;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  padding: 0.375rem;
  background: #FFFFFF;
  border: 1px solid #DDE0E5;
  border-radius: 0.5rem;
  box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
}
.next-step-cta__menu[hidden] {
  display: none;
}
.next-step-cta__menu-item {
  background: none;
  border: none;
  border-radius: 0.25rem;
  padding: 0.5rem 0.75rem;
  font-size: 0.8125rem;
  color: #424E66;
  text-align: left;
  white-space: nowrap;
  cursor: pointer;
}
.next-step-cta__menu-item:hover {
  background: #F0F2F5;
  color: #0B1426;
}
@media screen and (max-width: 655px) {
  .next-step-cta__menu {
    left: auto;
    right: 0;
  }
}

.prevention-status-card {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  border-radius: 1rem;
  border: 1px solid #DDE0E5;
  padding: 1.125rem 1.25rem;
  background: #FFFFFF;
}
.prevention-status-card__header {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
}
.prevention-status-card__icon {
  width: 2.25rem;
  height: 2.25rem;
  min-width: 2.25rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.prevention-status-card--current .prevention-status-card__icon {
  background: #EBF5FF;
  color: #278BFF;
}
.prevention-status-card--overdue .prevention-status-card__icon {
  background: #EBF5FF;
  color: #278BFF;
}
.prevention-status-card--done .prevention-status-card__icon {
  background: #E5F5E6;
  color: #2E9B33;
}
.prevention-status-card--waiting .prevention-status-card__icon {
  background: #F0F2F5;
  color: #949FB6;
}
.prevention-status-card--locked .prevention-status-card__icon {
  background: #F0F2F5;
  color: #949FB6;
}
.prevention-status-card__icon svg {
  width: 1.125rem;
  height: 1.125rem;
  fill: none;
  stroke: currentColor;
}
.prevention-status-card__body {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}
.prevention-status-card__eyebrow {
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}
.prevention-status-card--current .prevention-status-card__eyebrow {
  color: #278BFF;
}
.prevention-status-card--overdue .prevention-status-card__eyebrow {
  color: #278BFF;
}
.prevention-status-card--waiting .prevention-status-card__eyebrow {
  color: #949FB6;
}
.prevention-status-card--locked .prevention-status-card__eyebrow {
  color: #949FB6;
}
.prevention-status-card__title {
  font-size: 0.9375rem;
  font-weight: 600;
  color: #0B1426;
  margin: 0;
}
.prevention-status-card__subtitle {
  font-size: 0.8125rem;
  color: #949FB6;
  margin: 0;
  line-height: 1.25;
}
.prevention-status-card__action {
  display: flex;
}
@media screen and (max-width: 655px) {
  .prevention-status-card__header {
    flex-direction: column;
    align-items: stretch;
    gap: 0.625rem;
  }
}
.prevention-status-card__footer {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  padding-top: 0.75rem;
  border-top: 1px solid #F0F2F5;
}
.prevention-status-card__footer-icon {
  width: 1.75rem;
  height: 1.75rem;
  min-width: 1.75rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #F0F2F5;
  color: #949FB6;
}
.prevention-status-card__footer-icon svg {
  width: 0.875rem;
  height: 0.875rem;
  fill: none;
  stroke: currentColor;
}
.prevention-status-card__footer-body {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
  min-width: 0;
}
.prevention-status-card__footer-label {
  font-size: 0.625rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: #949FB6;
}
.prevention-status-card__footer-title {
  font-size: 0.8125rem;
  font-weight: 600;
  color: #5F6D8A;
}

.prevention-settings-container {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

.prevention-settings__section {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.prevention-settings__section-title {
  font-size: 0.875rem;
  font-weight: 600;
  color: #0B1426;
  margin: 0 0 0.5rem;
}

.prevention-settings__row {
  padding: 0.75rem 0;
  border-bottom: 1px solid #F0F2F5;
}
.prevention-settings__row:last-child {
  border-bottom: none;
}
.prevention-settings__row .checkbox-input .container {
  align-items: flex-start;
}
.prevention-settings__row .checkbox-input .label {
  flex-direction: column;
  align-items: flex-start;
  gap: 0.25rem;
}
.prevention-settings__row .checkbox-input .label label {
  color: #0B1426;
  font-weight: 500;
  margin-left: 0;
}

.prevention-settings__row--category .prevention-settings__section-title {
  margin: 0;
  font-size: 0.925rem;
  font-weight: 400;
  color: #5F6D8A;
}

.prevention-settings__tasks {
  list-style: none;
  margin: 0;
  padding: 0.75rem 0 0;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.prevention-settings__task {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

.prevention-settings__task-title {
  font-size: 0.875rem;
  color: #5F6D8A;
}

.prevention-settings__row-explanation {
  font-size: 0.75rem;
  color: #949FB6;
}

.prevention-settings__disabled {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  margin-top: 1.25rem;
  padding-top: 1.25rem;
  border-top: 1px solid #DDE0E5;
}

.prevention-settings__disabled-row {
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.prevention-settings__disabled-copy {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  min-width: 0;
}

.prevention-settings__restore {
  flex-shrink: 0;
}

.prevention-settings__disabled-error {
  font-size: 0.75rem;
  color: #278BFF;
  margin: 0;
}
.prevention-settings__disabled-error[hidden] {
  display: none;
}

.prevention-summary-widget {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

.prevention-summary-widget__state--muted {
  font-size: 0.875rem;
  font-weight: 400;
  color: #949FB6;
  margin: 0;
}

.ikp-card--above-form {
  margin-bottom: 1.5rem;
}
.ikp-card__logos {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}
.ikp-card__logo {
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 0.5rem;
  border: 1px solid #DDE0E5;
  background: #FFFFFF;
  object-fit: cover;
}
.ikp-card__logo + .ikp-card__logo {
  margin-left: -0.5rem;
}
.ikp-card__link {
  text-decoration: none;
}

.prevention-status-card--ikp .prevention-status-card__eyebrow {
  color: #949FB6;
}

.prevention-status-card--campaign {
  border-color: #F7C2D6;
  background: #FCE7EF;
}
.prevention-status-card--campaign .prevention-status-card__icon {
  background: #FFFFFF;
  color: #f65494;
}
.prevention-status-card--campaign .prevention-status-card__eyebrow {
  color: #f65494;
}
.prevention-status-card--campaign .prevention-status-card__subtitle,
.prevention-status-card--campaign .prevention-status-card__note {
  color: #7A5566;
}
.prevention-status-card--campaign .next-step-cta__primary {
  background: #f65494;
  outline-color: #f65494;
}
.prevention-status-card--campaign .next-step-cta__primary:hover {
  background: #F42D7C;
  outline-color: #F42D7C;
  color: #FFFFFF;
  box-shadow: 0 4px 12px rgba(246, 84, 148, 0.35);
}
.prevention-status-card--campaign .next-step-cta__toggle {
  outline-color: #f65494;
  color: #f65494;
  background: #FFFFFF;
}
.prevention-status-card--campaign .next-step-cta__toggle:hover {
  background: #FCE7EF;
}

.prevention-status-card--nfz .prevention-status-card__icon {
  background: #FCE7EF;
  color: #f65494;
}
.prevention-status-card--nfz .prevention-status-card__action {
  flex-wrap: wrap;
  gap: 0.5rem;
}

.prevention-status-card__note {
  font-size: 0.75rem;
  color: #949FB6;
  margin: 0.25rem 0 0;
}
.prevention-status-card__note a {
  color: #5F6D8A;
}

.prevention-status-card__more-link {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  margin-top: 0.5rem;
  font-size: 0.875rem;
  color: #f65494;
  text-decoration: none;
}
.prevention-status-card__more-link:hover {
  text-decoration: underline;
}

.prevention-status-card__more-icon {
  width: 0.875rem;
  height: 0.875rem;
}

.prevention-status-card__error {
  display: block;
  margin-top: 0.5rem;
  font-size: 0.75rem;
  color: #EF1103;
}

.campaign-badge {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.75rem;
  padding: 0.75rem 1rem;
  margin-bottom: 1rem;
  border: 1px solid #F7C2D6;
  border-radius: 0.75rem;
  background: #FCE7EF;
}
.campaign-badge__icon {
  width: 1.125rem;
  height: 1.125rem;
  min-width: 1.125rem;
  color: #f65494;
}
.campaign-badge__text {
  flex: 1 1 16rem;
  margin: 0;
  font-size: 0.875rem;
  color: #232B3C;
}
.campaign-badge__error {
  flex-basis: 100%;
  font-size: 0.75rem;
  color: #EF1103;
}

.campaign-rec {
  position: relative;
  padding-top: 1rem;
}
.campaign-rec__behind {
  position: absolute;
  top: 0;
  left: 1.25rem;
  right: 1.25rem;
  height: calc(1rem + 1.5rem);
  overflow: hidden;
  pointer-events: none;
}
.campaign-rec__behind .prevention-status-card {
  padding-top: 1rem;
}
.campaign-rec__behind .prevention-status-card__icon {
  opacity: 0.7;
}
.campaign-rec__card {
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 655px) {
  .campaign-rec__behind {
    left: 0.625rem;
    right: 0.625rem;
  }
}

.next-step-card .official-recommendations-modal__row-availability {
  background: transparent;
  border: 1px solid #DDE0E5;
  color: #949FB6;
}

.result-summary {
  background-color: transparent;
  color: #0B1426;
  border: 1px solid #DDE0E5;
  border-radius: 0.5rem;
  padding: 1rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.result-summary--locked, .result-summary--cta {
  align-items: flex-start;
  gap: 0.75rem;
}
.result-summary--locked {
  background-color: transparent;
  color: inherit;
  padding: 0;
}
.result-summary__stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.5rem;
}
.result-summary__stat {
  background-color: transparent;
  border: 1px solid #DDE0E5;
  border-radius: 0.5rem;
  padding: 0.75rem;
  text-align: center;
  min-width: 0;
}
.result-summary__stat-value {
  line-height: 1.1;
  color: #0B1426;
}
.result-summary__stat-label {
  color: #5F6D8A;
  margin-top: 0.25rem;
}
.result-summary__section {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.result-summary__section-label {
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #5F6D8A;
}
.result-summary__pills {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.result-summary__pill {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  border-radius: 999px;
  padding: 0.5rem 0.75rem;
}
.result-summary__pill--warn {
  background-color: #FFF1E6;
}
.result-summary__pill--ok {
  background-color: rgb(225.24, 244.12, 226.04);
}
.result-summary__pill--neutral {
  background-color: #F0F2F5;
}
.result-summary__dot {
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 999px;
  flex-shrink: 0;
  background-color: #949FB6;
}
.result-summary__dot--warn {
  background-color: #F4A261;
}
.result-summary__dot--ok {
  background-color: #45BB4A;
}
.result-summary__dot--neutral {
  background-color: #949FB6;
}
.result-summary__pill-name {
  color: #0B1426;
}
.result-summary__pill-value {
  color: #0B1426;
}
.result-summary__pill-norm {
  color: #5F6D8A;
}
.result-summary__tracks {
  display: flex;
  flex-direction: column;
}
.result-summary__track-row {
  display: grid;
  grid-template-columns: minmax(0, 8rem) minmax(4rem, 1fr) minmax(0, 6rem);
  align-items: center;
  gap: 0.75rem;
  padding: 0.5rem 0;
  border-bottom: 1px solid #DDE0E5;
}
.result-summary__track-row:last-child {
  border-bottom: none;
}
@media (max-width: 600px) {
  .result-summary__track-row {
    grid-template-columns: minmax(0, 1fr) minmax(0, 5rem);
    row-gap: 0.25rem;
  }
}
.result-summary__track-name {
  color: #5F6D8A;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.result-summary__track {
  position: relative;
  height: 0.25rem;
  border-radius: 999px;
  background-color: #DDE0E5;
}
@media (max-width: 600px) {
  .result-summary__track {
    grid-column: 1/-1;
    order: 3;
  }
}
.result-summary__track-zone {
  position: absolute;
  top: 0;
  bottom: 0;
  border-radius: inherit;
  background-color: rgb(206.64, 237.32, 207.94);
}
.result-summary__track-dot {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 999px;
  flex-shrink: 0;
  background-color: #949FB6;
  z-index: 1;
}
.result-summary__track-dot--warn {
  background-color: #F4A261;
}
.result-summary__track-dot--ok {
  background-color: #45BB4A;
}
.result-summary__track-dot--neutral {
  background-color: #949FB6;
}
.result-summary__track-value {
  text-align: right;
  white-space: nowrap;
}
.result-summary__track-number {
  color: #0B1426;
}
.result-summary__track-unit {
  color: #5F6D8A;
  margin-left: 0.25rem;
}
.result-summary .result-summary__section-label, .result-summary .result-summary__stat-label, .result-summary .result-summary__note, .result-summary .result-summary__pill-name, .result-summary .result-summary__pill-value, .result-summary .result-summary__pill-norm, .result-summary .result-summary__track-name, .result-summary .result-summary__track-number, .result-summary .result-summary__track-unit, .result-summary .result-summary__cta-text {
  font-size: 0.9rem;
}
.result-summary__cta-text {
  color: #5F6D8A;
  margin: 0;
}
.result-summary__cta-progress {
  color: #5F6D8A;
}
.result-summary__cta-progress.hidden {
  display: none;
}

.folder-summary-container.hidden {
  display: none;
}

.folder.folder--result-open .folder-summary-container {
  display: none;
}

.folder-summary {
  background-color: transparent;
  color: #0B1426;
  border: 1px solid #DDE0E5;
  border-radius: 0.5rem;
  padding: 1rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.folder-summary--locked {
  background-color: transparent;
  color: inherit;
  padding: 0;
}
.folder-summary--nudge {
  gap: 0;
}
.folder-summary__nudge-text {
  color: #5F6D8A;
  margin: 0;
}
.folder-summary__stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.5rem;
}
@media screen and (max-width: 840px) {
  .folder-summary__stats {
    grid-template-columns: minmax(0, 1fr);
  }
}
.folder-summary__stat {
  background-color: transparent;
  border: 1px solid #DDE0E5;
  border-radius: 0.5rem;
  padding: 0.75rem;
  text-align: center;
  min-width: 0;
}
.folder-summary__stat-value {
  line-height: 1.1;
  color: #0B1426;
}
.folder-summary__stat-label {
  color: #5F6D8A;
  margin-top: 0.25rem;
}
.folder-summary__section {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.folder-summary__section-label {
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #5F6D8A;
}
.folder-summary__drift-rows {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.folder-summary__drift-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  flex-wrap: wrap;
  background-color: #FFF1E6;
  border-radius: 999px;
  padding: 0.5rem 1rem;
}
.folder-summary__drift-name {
  color: #0B1426;
}
.folder-summary__drift-change {
  color: #F4A261;
  white-space: nowrap;
}
.folder-summary__timeline {
  position: relative;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.5rem;
  padding: 0.75rem 0.25rem 0;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: thin;
}
.folder-summary__timeline-line {
  position: absolute;
  left: 0.25rem;
  right: 0.25rem;
  top: calc(0.75rem + 0.25rem);
  height: 1px;
  background-color: #DDE0E5;
}
.folder-summary__timeline-point {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.25rem;
  flex: 1 0 auto;
  min-width: 2.5rem;
}
.folder-summary__timeline-dots {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}
.folder-summary__timeline-dot {
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 999px;
  flex-shrink: 0;
  background-color: #5F6D8A;
}
.folder-summary__timeline-label {
  color: #5F6D8A;
  white-space: nowrap;
}
.folder-summary__timeline-label--coarse {
  color: #949FB6;
}
.folder-summary__params {
  display: flex;
  flex-direction: column;
}
.folder-summary__params-header {
  color: #0B1426;
  padding-bottom: 0.25rem;
}
.folder-summary__param-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 5rem) auto minmax(0, 6rem);
  align-items: center;
  gap: 0.75rem;
  padding: 0.5rem 0;
  border-bottom: 1px solid #DDE0E5;
}
.folder-summary__param-row:last-child {
  border-bottom: none;
}
@media (max-width: 600px) {
  .folder-summary__param-row {
    grid-template-columns: minmax(0, 1fr) auto;
    row-gap: 0.25rem;
  }
}
.folder-summary__param-name {
  color: #5F6D8A;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.folder-summary__param-value {
  white-space: nowrap;
}
.folder-summary__param-number {
  color: #0B1426;
}
.folder-summary__param-unit {
  color: #5F6D8A;
  margin-left: 0.25rem;
}
.folder-summary__sparkline {
  display: block;
  width: 6rem;
  height: 1.75rem;
}
.folder-summary__param-trend {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  justify-content: flex-end;
  white-space: nowrap;
}
.folder-summary__param-trend--warning {
  color: #F4A261;
}
.folder-summary__param-trend--ok {
  color: #45BB4A;
}
.folder-summary__param-arrow {
  line-height: 1;
  flex-shrink: 0;
}
body.modal-open {
  overflow: hidden;
}

.modal {
  position: fixed;
  inset: 0;
  z-index: 9999;
}
.modal[hidden] {
  display: none;
}
.modal:not([hidden]) {
  display: block;
}
.modal__overlay {
  position: absolute;
  inset: 0;
  background: rgba(255, 255, 255, 0.5);
  cursor: default;
  backdrop-filter: blur(5px);
}
.modal__overlay--inactive {
  display: none;
}
.modal__card {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #FBFCFF;
  border-radius: 0.75rem;
  border: 1px solid #DDE0E5;
  padding: 1rem 2rem 2rem;
  width: min(480px, 90vw);
  max-height: 90vh;
  overflow-y: auto;
  scrollbar-width: none;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  align-items: center;
}
.modal__card::-webkit-scrollbar {
  display: none;
}
.modal__card:not(:has(.modal__header)) {
  padding-top: 3rem;
}
.modal__card--bottom {
  top: auto;
  bottom: 5vh;
  left: 50%;
  transform: translateX(-50%);
  border-bottom: none;
}
@media screen and (max-width: 655px) {
  .modal__card--bottom {
    bottom: 0;
    left: 0;
    transform: none;
    width: 100%;
    border-radius: 0.75rem 0.75rem 0 0;
    border-top: 1px solid #CED4E1;
  }
}
.modal__card--wide {
  max-width: 600px;
  max-height: 80vh;
}
.modal__card--wide .button {
  justify-content: center;
}
@media screen and (max-width: 655px) {
  .modal__card--wide {
    max-width: 100vw;
  }
}
.modal__header {
  display: grid;
  grid-template-columns: 1.5rem 1fr 1.5rem;
  align-items: center;
  gap: 0.5rem;
  width: 100%;
  min-height: 1.5rem;
}
.modal__header .modal__title {
  grid-column: 2;
}
.modal__header .modal__close {
  grid-column: 3;
  position: static;
  top: auto;
  right: auto;
  justify-self: end;
}
.modal__close {
  position: absolute;
  top: 1rem;
  right: 1rem;
  background: none;
  border: none;
  font-size: 1.5rem;
  cursor: pointer;
  color: #949FB6;
  line-height: 1;
}
.modal__close:hover {
  color: #232B3C;
}
.modal__title {
  width: 100%;
  text-align: center;
  color: #232B3C;
  font-weight: 600;
  font-size: 0.9rem;
}
.modal__description {
  width: 100%;
  text-align: center;
  color: #232B3C;
  font-size: 0.9rem;
  line-height: 1.5;
}
.modal__description--error {
  color: #278BFF;
}
.modal__alert {
  width: 100%;
  text-align: center;
}
.modal__footer {
  display: flex;
  justify-content: center;
  gap: 0.75rem;
  width: 100%;
}
.modal__footer .save-button.loading {
  pointer-events: none;
}
.modal__footer .save-button.loading .icon {
  width: 1rem;
  height: 1rem;
  animation: spin 1s linear infinite;
}
.modal__footer:not(:has(*)), .modal__actions:not(:has(*)) {
  display: none;
}
.modal__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 0.75rem;
  width: 100%;
}
.modal__actions .button,
.modal__actions .chip {
  justify-content: center;
}
.modal__step {
  display: none;
  width: 100%;
  flex-direction: column;
  gap: 1rem;
}
.modal__step--active {
  display: flex;
}

.island-modal .modal__card {
  border: none;
}

.modal__body {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  text-align: left;
}
.modal__body .add-results-panel,
.modal__body .appointment-form-container {
  width: 100%;
  padding: 0;
  background: none;
  min-height: 0;
  height: auto;
}
.modal__body .add-results-panel {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
.modal__body .add-results-panel .buttons,
.modal__body .add-results-panel .measurement-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  justify-content: center;
}
.modal__body .add-results-panel__footer,
.modal__body .form-footer {
  display: flex;
  justify-content: center;
  margin-top: 0.5rem;
}

.entry-form-modal .modal__header {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  width: 100%;
}
.entry-form-modal .modal__title {
  flex: 1;
  text-align: center;
  margin-left: calc(1.5rem * 2 + 0.5rem);
}
.entry-form-modal .modal__expand,
.entry-form-modal .modal__close {
  position: static;
  top: auto;
  right: auto;
  flex: none;
  width: 1.5rem;
  height: 1.5rem;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}

.modal__expand {
  color: #949FB6;
  transition: color 200ms;
}
.modal__expand:hover {
  color: #0B1426;
}
.modal__expand svg {
  width: 1rem;
  height: 1rem;
}

.modal__card--wide {
  width: min(640px, 92vw);
}

@media screen and (max-width: 655px) {
  .navigation-island .island-modal .entry-form-modal .modal__card,
  .entry-form-modal .modal__card {
    width: calc(100vw - 1rem * 2);
    max-width: calc(100vw - 1rem * 2);
    height: calc(100svh - 1rem * 4);
    max-height: calc(100svh - 1rem * 4);
  }
  .entry-form-modal .modal__body {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
    padding: 0.25rem 0 0.5rem;
  }
}
h1, h2, h3, h4, h5 {
  font-weight: 600;
}

h6 {
  font-weight: 400;
}

/* Heading Styles */
h1 {
  font-size: 2.5rem;
}

h2 {
  font-size: 2rem;
}

h3 {
  font-size: 1.5rem;
}

h4 {
  font-size: 1.25rem;
}

h5 {
  font-size: 1.125rem;
}

/* Body Styles */
.p-r, .p1-r, .p2-r, .p3-r, .p4-r, .p5-r {
  font-weight: 400;
}

.p-b, .p1-b, .p2-b, .p3-b, .p4-b, .p5-b {
  font-weight: 600;
}

.p1-r, .p1-b {
  font-size: 1.375rem;
}

.p2-r, .p2-b {
  font-size: 1.125rem;
}

.p3-r, .p3-b {
  font-size: 1rem;
}

.p4-r, .p4-b {
  font-size: 0.875rem;
}

.p5-r, .p5-b {
  font-size: 0.75rem;
}

/* Label Styles */
.l-r, .l1-r, .l2-r, .share-link-disclaimer, .l3-r, .modal__footer .cancel-button, .modal__actions .cancel-button, .item-list-in-popup .result .name, .added-results-container .result .name, .results-to-be-moved-container .result .name, .results-to-be-shared-container .result .name, .item-list-in-popup .result .date, .added-results-container .result .date, .results-to-be-moved-container .result .date, .results-to-be-shared-container .result .date, .item-list-in-popup .result .category, .added-results-container .result .category, .results-to-be-moved-container .result .category, .results-to-be-shared-container .result .category, .item-list-in-popup .folder .name, .added-results-container .folder .name, .results-to-be-moved-container .folder .name, .results-to-be-shared-container .folder .name, .item-list-in-popup .folder .date, .added-results-container .folder .date, .results-to-be-moved-container .folder .date, .results-to-be-shared-container .folder .date, .item-list-in-popup .folder .category, .added-results-container .folder .category, .results-to-be-moved-container .folder .category, .results-to-be-shared-container .folder .category, .l4-r {
  font-weight: 400;
}

.l-b, .l1-b, .l2-b, .l3-b, .l4-b {
  font-weight: 500;
}

.l1-r, .l1-b {
  font-size: 1.25rem;
}

.l2-r, .share-link-disclaimer, .l2-b {
  font-size: 1rem;
}

.l3-r, .modal__footer .cancel-button, .modal__actions .cancel-button, .item-list-in-popup .result .name, .added-results-container .result .name, .results-to-be-moved-container .result .name, .results-to-be-shared-container .result .name, .item-list-in-popup .result .date, .added-results-container .result .date, .results-to-be-moved-container .result .date, .results-to-be-shared-container .result .date, .item-list-in-popup .result .category, .added-results-container .result .category, .results-to-be-moved-container .result .category, .results-to-be-shared-container .result .category, .item-list-in-popup .folder .name, .added-results-container .folder .name, .results-to-be-moved-container .folder .name, .results-to-be-shared-container .folder .name, .item-list-in-popup .folder .date, .added-results-container .folder .date, .results-to-be-moved-container .folder .date, .results-to-be-shared-container .folder .date, .item-list-in-popup .folder .category, .added-results-container .folder .category, .results-to-be-moved-container .folder .category, .results-to-be-shared-container .folder .category, .l3-b {
  font-size: 0.925rem;
}

.l4-r, .l4-b {
  font-size: 0.875rem;
}

/* Link Styles */
.link {
  text-decoration: underline;
  cursor: pointer;
  color: inherit;
}

.item-list-in-popup, .added-results-container, .results-to-be-moved-container, .results-to-be-shared-container {
  width: 100%;
  display: flex;
  flex-direction: column;
  padding: 1rem;
  gap: 1.25rem;
  align-items: center;
  border: 1px solid #CED4E1;
  border-radius: 0.75rem;
  overflow-y: auto;
  scrollbar-width: thin;
}
.item-list-in-popup::-webkit-scrollbar, .added-results-container::-webkit-scrollbar, .results-to-be-moved-container::-webkit-scrollbar, .results-to-be-shared-container::-webkit-scrollbar {
  width: 4px;
}
.item-list-in-popup .result, .added-results-container .result, .results-to-be-moved-container .result, .results-to-be-shared-container .result, .item-list-in-popup .folder, .added-results-container .folder, .results-to-be-moved-container .folder, .results-to-be-shared-container .folder {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.item-list-in-popup .result .icon, .added-results-container .result .icon, .results-to-be-moved-container .result .icon, .results-to-be-shared-container .result .icon, .item-list-in-popup .folder .icon, .added-results-container .folder .icon, .results-to-be-moved-container .folder .icon, .results-to-be-shared-container .folder .icon {
  width: 1rem;
  height: 1rem;
}
@media screen and (max-width: 655px) {
  .item-list-in-popup .result .icon, .added-results-container .result .icon, .results-to-be-moved-container .result .icon, .results-to-be-shared-container .result .icon, .item-list-in-popup .folder .icon, .added-results-container .folder .icon, .results-to-be-moved-container .folder .icon, .results-to-be-shared-container .folder .icon {
    width: 0.75rem;
    height: 0.75rem;
  }
}
.item-list-in-popup .result .name, .added-results-container .result .name, .results-to-be-moved-container .result .name, .results-to-be-shared-container .result .name, .item-list-in-popup .result .date, .added-results-container .result .date, .results-to-be-moved-container .result .date, .results-to-be-shared-container .result .date, .item-list-in-popup .result .category, .added-results-container .result .category, .results-to-be-moved-container .result .category, .results-to-be-shared-container .result .category, .item-list-in-popup .folder .name, .added-results-container .folder .name, .results-to-be-moved-container .folder .name, .results-to-be-shared-container .folder .name, .item-list-in-popup .folder .date, .added-results-container .folder .date, .results-to-be-moved-container .folder .date, .results-to-be-shared-container .folder .date, .item-list-in-popup .folder .category, .added-results-container .folder .category, .results-to-be-moved-container .folder .category, .results-to-be-shared-container .folder .category {
  color: #424E66;
  width: 100%;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  line-height: 1.25;
  text-align: center;
}
@media screen and (max-width: 655px) {
  .item-list-in-popup .result .name, .added-results-container .result .name, .results-to-be-moved-container .result .name, .results-to-be-shared-container .result .name, .item-list-in-popup .result .date, .added-results-container .result .date, .results-to-be-moved-container .result .date, .results-to-be-shared-container .result .date, .item-list-in-popup .result .category, .added-results-container .result .category, .results-to-be-moved-container .result .category, .results-to-be-shared-container .result .category, .item-list-in-popup .folder .name, .added-results-container .folder .name, .results-to-be-moved-container .folder .name, .results-to-be-shared-container .folder .name, .item-list-in-popup .folder .date, .added-results-container .folder .date, .results-to-be-moved-container .folder .date, .results-to-be-shared-container .folder .date, .item-list-in-popup .folder .category, .added-results-container .folder .category, .results-to-be-moved-container .folder .category, .results-to-be-shared-container .folder .category {
    font-size: 0.875rem;
  }
}
.item-list-in-popup .result .delete-button, .added-results-container .result .delete-button, .results-to-be-moved-container .result .delete-button, .results-to-be-shared-container .result .delete-button, .item-list-in-popup .folder .delete-button, .added-results-container .folder .delete-button, .results-to-be-moved-container .folder .delete-button, .results-to-be-shared-container .folder .delete-button {
  cursor: pointer;
}
.item-list-in-popup .result .delete-button .icon, .added-results-container .result .delete-button .icon, .results-to-be-moved-container .result .delete-button .icon, .results-to-be-shared-container .result .delete-button .icon, .item-list-in-popup .folder .delete-button .icon, .added-results-container .folder .delete-button .icon, .results-to-be-moved-container .folder .delete-button .icon, .results-to-be-shared-container .folder .delete-button .icon {
  width: 1.25rem;
  height: 1.25rem;
  color: #EF1103;
}
@media screen and (max-width: 655px) {
  .item-list-in-popup .result .delete-button .icon, .added-results-container .result .delete-button .icon, .results-to-be-moved-container .result .delete-button .icon, .results-to-be-shared-container .result .delete-button .icon, .item-list-in-popup .folder .delete-button .icon, .added-results-container .folder .delete-button .icon, .results-to-be-moved-container .folder .delete-button .icon, .results-to-be-shared-container .folder .delete-button .icon {
    width: 1rem;
    height: 1rem;
  }
}
@media screen and (max-width: 655px) {
  .item-list-in-popup .result, .added-results-container .result, .results-to-be-moved-container .result, .results-to-be-shared-container .result, .item-list-in-popup .folder, .added-results-container .folder, .results-to-be-moved-container .folder, .results-to-be-shared-container .folder {
    gap: 0.75rem;
  }
}
.item-list-in-popup.empty, .empty.added-results-container, .empty.results-to-be-moved-container, .empty.results-to-be-shared-container {
  display: none;
}

.modal__footer .cancel-button, .modal__actions .cancel-button {
  color: #5F6D8A;
  text-decoration: none;
  cursor: pointer;
  margin-top: 1rem;
}

.share-link-disclaimer {
  color: #5F6D8A;
}

.confirm-password-modal__form {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  width: 100%;
}
.confirm-password-modal__username-hint {
  position: absolute;
  opacity: 0;
  pointer-events: none;
  width: 1px;
  height: 1px;
}

.modal__prompt-form {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  width: 100%;
}
.modal__prompt-form .text-input {
  width: 100%;
}

h1, h2, h3, h4, h5 {
  font-weight: 600;
}

h6 {
  font-weight: 400;
}

/* Heading Styles */
h1 {
  font-size: 2.5rem;
}

h2 {
  font-size: 2rem;
}

h3 {
  font-size: 1.5rem;
}

h4 {
  font-size: 1.25rem;
}

h5 {
  font-size: 1.125rem;
}

/* Body Styles */
.p-r, .p1-r, .p2-r, .p3-r, .navigation .links a, .navigation .links button, .navbar .navigation-button a p,
.navbar .navigation-button .link p, .p4-r, .p5-r {
  font-weight: 400;
}

.p-b, .p1-b, .p2-b, .p3-b, .navbar .navigation-button p, .p4-b, .p5-b {
  font-weight: 600;
}

.p1-r, .p1-b {
  font-size: 1.375rem;
}

.p2-r, .p2-b {
  font-size: 1.125rem;
}

.p3-r, .navigation .links a, .navigation .links button, .navbar .navigation-button a p,
.navbar .navigation-button .link p, .p3-b, .navbar .navigation-button p {
  font-size: 1rem;
}

.p4-r, .p4-b {
  font-size: 0.875rem;
}

.p5-r, .p5-b {
  font-size: 0.75rem;
}

/* Label Styles */
.l-r, .l1-r, .l2-r, .l3-r, .l4-r {
  font-weight: 400;
}

.l-b, .l1-b, .l2-b, .l3-b, .l4-b {
  font-weight: 500;
}

.l1-r, .l1-b {
  font-size: 1.25rem;
}

.l2-r, .l2-b {
  font-size: 1rem;
}

.l3-r, .l3-b {
  font-size: 0.925rem;
}

.l4-r, .l4-b {
  font-size: 0.875rem;
}

/* Link Styles */
.link {
  text-decoration: underline;
  cursor: pointer;
  color: inherit;
}

.navbar {
  position: relative;
  width: 100%;
  height: 4rem;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding: 1.5rem 1.5rem 0;
  background-color: transparent;
}
.navbar.light {
  background-color: #FBFCFF;
}
@media screen and (max-width: 840px) {
  .navbar {
    padding: 1.5rem 1.5rem 0;
    height: 4rem;
  }
}
@media screen and (max-width: 655px) {
  .navbar {
    padding: 1rem;
    gap: 0.75rem;
  }
}
@media screen and (min-width: 841px) {
  .navbar--with-island {
    padding-top: 36px;
  }
}
.navbar .main-content {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.navbar .logo {
  position: relative;
  height: 1rem;
}
@media screen and (max-width: 655px) {
  .navbar .logo {
    height: 0.875rem;
    margin-top: 0.25rem;
  }
}
.navbar .logo.desktop {
  display: unset;
}
@media screen and (max-width: 655px) {
  .navbar .logo.desktop {
    display: none;
  }
}
.navbar .logo.mobile {
  display: none;
}
@media screen and (max-width: 655px) {
  .navbar .logo.mobile {
    display: unset;
  }
}
.navbar .logo--pink-october {
  height: 1.4rem;
}
@media screen and (max-width: 655px) {
  .navbar .logo--pink-october {
    height: 1.5rem;
  }
}
.navbar .navigation-button {
  position: relative;
  display: flex;
  align-items: center;
  gap: 1rem;
  color: #232B3C;
}
.navbar .navigation-button p {
  font-weight: 600;
}
.navbar .navigation-button a,
.navbar .navigation-button .link {
  display: flex;
  gap: 0.5rem;
  white-space: nowrap;
  align-items: center;
  text-decoration: none;
  color: #278BFF;
}
@media screen and (max-width: 655px) {
  .navbar .navigation-button a > p,
  .navbar .navigation-button .link > p {
    display: none;
  }
}
.navbar .navigation-button a p,
.navbar .navigation-button .link p {
  font-weight: 500;
}
.navbar .navigation-button a.active,
.navbar .navigation-button .link.active {
  color: black;
}
.navbar .navigation-button .navigation-icon {
  width: 1.25rem;
  height: 1.25rem;
}
.navbar .navigation-button.active .navigation-menu {
  display: flex;
}
.navbar--pink-october .navigation-button a:not(.active),
.navbar--pink-october .navigation-button .link:not(.active) {
  color: #f65494;
}
.navbar.fixed {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2;
}

.navigation-island {
  max-width: 100%;
  width: fit-content;
  position: fixed;
  z-index: 3;
  bottom: unset;
  top: 1rem;
  padding: 0 1rem;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 840px) {
  .navigation-island {
    top: unset;
    bottom: 1rem;
  }
}
.navigation-island .wrapper {
  margin: auto;
  width: fit-content;
  max-width: 100%;
  background-color: rgba(221, 224, 229, 0.7);
  border-radius: 0.75rem;
  overflow: auto;
  backdrop-filter: blur(5px);
  position: relative;
  transition: width 560ms cubic-bezier(0.22, 1, 0.36, 1), height 560ms cubic-bezier(0.22, 1, 0.36, 1);
}
.navigation-island .wrapper .menu {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1.5rem;
  height: 100%;
  padding: 0.75rem 1rem 0.625rem;
}
@media screen and (max-width: 655px) {
  .navigation-island .wrapper .menu {
    justify-content: flex-start;
    overflow-x: auto;
    gap: 2rem;
    padding: 0.625rem 1rem 0.5rem;
  }
}
.navigation-island .wrapper .menu .button {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
}
@media screen and (max-width: 655px) {
  .navigation-island .wrapper .menu .button {
    gap: 0.375rem;
  }
  .navigation-island .wrapper .menu .button p {
    font-size: 0.875rem;
    white-space: nowrap;
  }
}
.navigation-island .wrapper .menu .button.active {
  color: black;
}
.navigation-island .wrapper .menu .button:not(.active) {
  color: #278BFF;
}
.navigation-island .wrapper .menu .button .island-icon {
  width: 1.25rem;
  height: 1.25rem;
}
@media screen and (max-width: 655px) {
  .navigation-island .wrapper .menu .button .island-icon {
    width: 1.125rem;
    height: 1.125rem;
  }
}
.navigation-island .wrapper .menu .button.back-button {
  flex-direction: row;
  gap: 0.375rem;
  color: #424E66;
}
.navigation-island .wrapper .menu .button.back-button .island-icon {
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
}
.navigation-island .wrapper .menu .button.back-button p {
  font-size: 0.9rem;
  white-space: nowrap;
}
.navigation-island .wrapper .menu {
  transition: opacity 180ms ease;
}
.navigation-island--auth {
  top: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 840px) {
  .navigation-island--auth {
    top: unset;
    bottom: 1rem;
    transform: translateX(-50%);
  }
}
.navigation-island--auth .menu {
  padding: 0;
  gap: 0;
}
.navigation-island--auth .wrapper,
.navigation-island--auth .island-modal {
  transition: none;
}
.navigation-island--auth .island-modal > .auth-modal:has(~ .modal) {
  display: none;
}
.navigation-island .island-modal {
  position: absolute;
  inset: 0;
  opacity: 0;
  overflow: hidden;
  pointer-events: none;
  transition: opacity 420ms ease 60ms;
}
.navigation-island.is-animating .wrapper {
  overflow: hidden;
}
.navigation-island.is-collapsing .wrapper {
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}
.navigation-island.is-expanded, .navigation-island.is-animating {
  z-index: 10000;
}
.navigation-island.is-expanded .menu {
  position: absolute;
  inset: 0;
  opacity: 0;
  pointer-events: none;
}
.navigation-island.is-expanded .island-modal {
  position: static;
  opacity: 1;
  overflow: visible;
  pointer-events: auto;
  transition: opacity 280ms ease 200ms;
}
.navigation-island .island-modal > .modal--closing {
  pointer-events: none;
}
.navigation-island .island-modal > .modal {
  position: static;
  inset: auto;
  z-index: auto;
}
.navigation-island .island-modal > .modal:not([hidden]) {
  display: block;
}
.navigation-island .island-modal > .modal:not(:last-child) {
  display: none;
}
.navigation-island .island-modal .modal__card {
  position: static;
  top: auto;
  left: auto;
  bottom: auto;
  transform: none;
  background: transparent;
  border: 0;
  border-radius: 0;
  width: min(30rem, 100vw - 2rem);
  max-width: 100%;
  max-height: min(70vh, 34rem);
  padding: 0.75rem 1.25rem 1.25rem;
}
.navigation-island .island-modal .modal__card--wide {
  width: min(37.5rem, 100vw - 2rem);
  max-width: 100%;
  max-height: min(70vh, 34rem);
}
@media screen and (max-width: 655px) {
  .navigation-island .island-modal .modal__card {
    width: calc(100vw - 2rem);
    max-height: 60vh;
  }
}

.modal__overlay--detached {
  position: fixed;
  inset: 0;
  z-index: 9998;
  animation: island-overlay-in 400ms ease both;
}
.modal__overlay--detached.is-fading-out {
  animation: none;
  opacity: 0;
  transition: opacity 400ms ease;
}

@keyframes island-overlay-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@media (prefers-reduced-motion: reduce) {
  .navigation-island .wrapper,
  .navigation-island .menu,
  .navigation-island .island-modal,
  .modal__overlay--detached {
    transition-duration: 1ms !important;
    transition-delay: 0ms !important;
    animation-duration: 1ms !important;
  }
}
.mini-tabs {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  overflow-x: auto;
  scrollbar-width: none;
  padding-bottom: 0.5rem;
  margin-bottom: 0.25rem;
  border-bottom: 1px solid #F0F2F5;
}
.mini-tabs::-webkit-scrollbar {
  display: none;
}
.mini-tabs--spaced {
  margin-bottom: 0.75rem;
}
.mini-tabs__tab {
  background: none;
  border: 0;
  padding: 0;
  text-decoration: none;
  font-size: 0.9rem;
  line-height: 1.2;
  white-space: nowrap;
  color: #949FB6;
  cursor: pointer;
}
.mini-tabs__tab.active {
  color: #232B3C;
  font-weight: 500;
  cursor: default;
}

.navigation {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 2px solid #F0F2F5;
  height: 2.5rem;
  overflow-x: auto;
}
.navigation .links {
  display: flex;
  gap: 1rem;
}
.navigation .links a, .navigation .links button {
  text-decoration: none;
  color: #5F6D8A;
  white-space: nowrap;
  cursor: pointer;
}
.navigation .links a.active, .navigation .links button.active {
  color: #232B3C;
  font-weight: 600;
  cursor: default;
}
.navigation .buttons {
  display: flex;
  gap: 1rem;
}
.navigation .buttons .button {
  padding: 0.25rem 2rem;
}
@media screen and (max-width: 655px) {
  .navigation {
    width: 100%;
  }
}

.onboarding-steps {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  background: #FFFFFF;
  border: 1px solid #DDE0E5;
  border-radius: 1rem;
  padding: 1.125rem 1.25rem;
  margin-bottom: 1.25rem;
}
.onboarding-steps__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0.75rem;
}
.onboarding-steps__title {
  font-size: 0.9375rem;
  font-weight: 600;
  color: #0B1426;
  margin: 0;
}
.onboarding-steps__counter {
  font-size: 0.875rem;
  font-weight: 600;
  color: #949FB6;
  flex-shrink: 0;
}
.onboarding-steps__progress-bar {
  width: 100%;
  height: 6px;
  background: #F0F2F5;
  border-radius: 1rem;
  overflow: hidden;
}
.onboarding-steps__progress-fill {
  display: block;
  height: 100%;
  border-radius: 1rem;
  background: #278BFF;
  transition: width 500ms ease;
}
.onboarding-steps__progress-fill--0 {
  width: 0;
}
.onboarding-steps__progress-fill--1 {
  width: 33.333%;
}
.onboarding-steps__progress-fill--2 {
  width: 66.667%;
}
.onboarding-steps__progress-fill--3 {
  width: 100%;
}
.onboarding-steps__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.onboarding-steps__step {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-wrap: wrap;
}
.onboarding-steps__marker {
  width: 1.25rem;
  height: 1.25rem;
  min-width: 1.25rem;
  border-radius: 50%;
  border: 1.5px solid #CED4E1;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #FFFFFF;
}
.onboarding-steps__marker-icon {
  width: 0.75rem;
  height: 0.75rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 3;
}
.onboarding-steps__label {
  flex: 1;
  min-width: 0;
  font-size: 0.875rem;
  color: #232B3C;
}
.onboarding-steps__step--current .onboarding-steps__label {
  font-weight: 600;
  color: #0B1426;
}
.onboarding-steps__step--done .onboarding-steps__marker {
  background: #2E9B33;
  border-color: #2E9B33;
  color: #FFFFFF;
}
.onboarding-steps__step--done .onboarding-steps__label {
  text-decoration: line-through;
  color: #BDC4D3;
}
.onboarding-steps__step--unavailable .onboarding-steps__marker {
  border-style: dashed;
  border-color: #CED4E1;
}
.onboarding-steps__step--unavailable .onboarding-steps__label {
  color: #BDC4D3;
}
.onboarding-steps__flag {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  flex-shrink: 0;
  font-size: 0.75rem;
  font-weight: 600;
  color: #29702C;
  background: #E5F5E6;
  border-radius: 0.5rem;
  padding: 0.25rem 0.5rem;
}
.onboarding-steps__flag-icon {
  width: 0.75rem;
  height: 0.75rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 3;
  color: #2E9B33;
}
.onboarding-steps__reason {
  flex-shrink: 0;
  font-size: 0.75rem;
  color: #949FB6;
}
.onboarding-steps__reason a {
  color: #278BFF;
  text-decoration: underline;
}
@media (max-width: 655px) {
  .onboarding-steps {
    padding: 1rem;
  }
  .onboarding-steps__flag, .onboarding-steps__reason {
    margin-left: calc(0.75rem + 1.25rem);
    flex-basis: 100%;
  }
}

.onboarding-card {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  background: #FBFCFF;
  border: 1.5px dashed #CED4E1;
  border-radius: 1rem;
  padding: 1.125rem 1.25rem;
}
.onboarding-card__main {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
}
.onboarding-card__icon {
  width: 2.25rem;
  height: 2.25rem;
  min-width: 2.25rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #F0F2F5;
  color: #5F6D8A;
}
.onboarding-card__icon svg {
  width: 1.125rem;
  height: 1.125rem;
  fill: none;
  stroke: currentColor;
}
.onboarding-card__body {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}
.onboarding-card__title {
  font-size: 0.9375rem;
  font-weight: 600;
  color: #0B1426;
  margin: 0;
}
.onboarding-card__subtitle {
  font-size: 0.8125rem;
  color: #949FB6;
  line-height: 1.35;
  margin: 0;
}
.onboarding-card__action {
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
}
.onboarding-card__action--below {
  align-items: flex-start;
}
.onboarding-card__action-meta {
  font-size: 0.75rem;
  color: #BDC4D3;
}
.onboarding-card__chips {
  display: flex;
  flex-direction: row;
  gap: 0.5rem;
  overflow-x: auto;
  scrollbar-width: none;
  scroll-snap-type: x mandatory;
}
.onboarding-card__chips::-webkit-scrollbar {
  display: none;
}
@media (max-width: 655px) {
  .onboarding-card {
    padding: 1rem;
  }
  .onboarding-card__main {
    flex-wrap: wrap;
  }
  .onboarding-card__action {
    width: 100%;
    align-items: flex-start;
    flex-direction: column;
  }
  .onboarding-card__action-meta {
    text-align: left;
  }
}

.onboarding-chip {
  flex: 0 0 100%;
}
@media (min-width: 480px) {
  .onboarding-chip {
    flex: 0 0 calc(50% - 0.25rem);
  }
}
@media (min-width: 655px) {
  .onboarding-chip {
    flex: 0 0 calc(33.333% - 0.5rem * 2 / 3);
  }
}
@media (min-width: 840px) {
  .onboarding-chip {
    flex: 0 0 250px;
  }
}
.onboarding-chip {
  scroll-snap-align: start;
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
  background: #FFFFFF;
  border: 1px solid #e5e7ea;
  border-radius: 0.5rem;
  padding: 0.625rem 0.75rem;
}
.onboarding-chip__label {
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  color: #BDC4D3;
}
.onboarding-chip__placeholder {
  display: block;
  height: 0.75rem;
  width: 60%;
  border-radius: 0.25rem;
  background: #e5e7ea;
}

.onboarding-reconfirm {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  background: #f1f6ff;
  border-radius: 0.75rem;
  padding: 0.75rem 1rem;
  margin-top: 0.75rem;
}
.onboarding-reconfirm__text {
  flex: 1;
  min-width: 0;
  font-size: 0.8125rem;
  color: #424E66;
  margin: 0;
}
.onboarding-reconfirm__link {
  flex-shrink: 0;
  font-size: 0.8125rem;
  font-weight: 600;
  color: #278BFF;
}
.onboarding-reconfirm__dismiss {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: none;
  border: none;
  padding: 0.25rem;
  line-height: 0;
  cursor: pointer;
  color: #949FB6;
}
.onboarding-reconfirm__dismiss:hover {
  color: #424E66;
}
.onboarding-reconfirm__dismiss-icon {
  width: 1rem;
  height: 1rem;
  fill: none;
  stroke: currentColor;
}
@media (max-width: 655px) {
  .onboarding-reconfirm {
    flex-wrap: wrap;
  }
  .onboarding-reconfirm__text {
    flex-basis: 100%;
    order: 1;
  }
  .onboarding-reconfirm__link {
    order: 2;
  }
  .onboarding-reconfirm__dismiss {
    order: 3;
    margin-left: auto;
  }
}

h1, h2, h3, h4, h5 {
  font-weight: 600;
}

h6 {
  font-weight: 400;
}

/* Heading Styles */
h1 {
  font-size: 2.5rem;
}

h2 {
  font-size: 2rem;
}

h3 {
  font-size: 1.5rem;
}

h4 {
  font-size: 1.25rem;
}

h5 {
  font-size: 1.125rem;
}

/* Body Styles */
.p-r, .p1-r, .p2-r, .p3-r, .p4-r, .p5-r {
  font-weight: 400;
}

.p-b, .p1-b, .p2-b, .p3-b, .p4-b, .p5-b {
  font-weight: 600;
}

.p1-r, .p1-b {
  font-size: 1.375rem;
}

.p2-r, .p2-b {
  font-size: 1.125rem;
}

.p3-r, .p3-b {
  font-size: 1rem;
}

.p4-r, .p4-b {
  font-size: 0.875rem;
}

.p5-r, .p5-b {
  font-size: 0.75rem;
}

/* Label Styles */
.l-r, .l1-r, .l2-r, .l3-r, .results-container .select-options .cancel-selection-button .text, .results-container .go-to-shared-button .go-to, .l4-r {
  font-weight: 400;
}

.l-b, .l1-b, .l2-b, .analysis-panel .title, .results-container .go-to-shared-button .shared, .l3-b, .results-container .global-delete-button .text, .l4-b {
  font-weight: 500;
}

.l1-r, .l1-b {
  font-size: 1.25rem;
}

.l2-r, .l2-b, .analysis-panel .title, .results-container .go-to-shared-button .shared {
  font-size: 1rem;
}

.l3-r, .results-container .select-options .cancel-selection-button .text, .results-container .go-to-shared-button .go-to, .l3-b, .results-container .global-delete-button .text {
  font-size: 0.925rem;
}

.l4-r, .l4-b {
  font-size: 0.875rem;
}

/* Link Styles */
.link {
  text-decoration: underline;
  cursor: pointer;
  color: inherit;
}

@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
@keyframes auth-step-enter {
  from {
    opacity: 0;
    transform: translateY(0.5rem);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
.results-container {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.results-container h5 {
  font-size: 1rem;
}
.results-container .buttons-container {
  position: relative;
  width: 100%;
  display: flex;
  justify-content: center;
  padding: 0 0.5rem;
}
.results-container .global-delete-button {
  align-items: center;
  gap: 0.5rem;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  display: none;
  cursor: pointer;
}
.results-container .global-delete-button .text, .results-container .global-delete-button .icon {
  transition: all 300ms;
}
.results-container .global-delete-button .text {
  color: #949FB6;
}
@media screen and (max-width: 840px) {
  .results-container .global-delete-button .text {
    display: none;
  }
}
.results-container .global-delete-button .icon {
  color: #424E66;
  width: 1.25rem;
  height: 1.25rem;
  transform-origin: center;
}
.results-container .global-delete-button:hover * {
  color: #EF1103 !important;
}
.results-container .global-delete-button.visible {
  display: flex;
}
.results-container .global-delete-button.loading {
  pointer-events: none;
}
.results-container .global-delete-button.loading .text {
  display: none;
}
.results-container .global-delete-button.loading .icon {
  animation: spin 1s linear infinite;
  color: #EF1103;
}
@media screen and (max-width: 655px) {
  .results-container .global-delete-button {
    top: 1.25rem;
    right: 1rem;
  }
}
.results-container .go-to-shared-button {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.results-container .go-to-shared-button .go-to {
  color: #5F6D8A;
}
.results-container .go-to-shared-button .shared {
  color: #232B3C;
  display: flex;
  align-items: center;
  gap: 0.375rem;
  cursor: pointer;
}
.results-container .go-to-shared-button .shared .icon {
  width: 1.25rem;
  height: 1.25rem;
}
.results-container .go-to-shared-button.hidden {
  display: none;
}
@media (max-width: 1200px) {
  .results-container .go-to-shared-button {
    gap: 0.5rem;
  }
  .results-container .go-to-shared-button .go-to, .results-container .go-to-shared-button .text {
    display: none;
  }
}
.results-container .select-options {
  z-index: 3;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  display: none;
  align-items: center;
  gap: 1rem;
}
.results-container .select-options .share-button, .results-container .select-options .manipulate-button, .results-container .select-options .cancel-selection-button {
  cursor: pointer;
}
.results-container .select-options .manipulate-button {
  position: relative;
}
.results-container .select-options .manipulate-button .menu {
  display: none;
  position: absolute;
  top: 135%;
  left: 0;
  background-color: #FBFCFF;
  border: 1px solid #CED4E1;
  border-radius: 0.5rem;
  padding: 1rem;
  flex-direction: column;
  gap: 1rem;
}
.results-container .select-options .manipulate-button .menu .item {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.results-container .select-options .manipulate-button .menu .item .icon {
  width: 1rem;
  height: 1rem;
}
.results-container .select-options .manipulate-button.open .menu {
  display: flex;
}
.results-container .select-options .cancel-selection-button {
  color: #5F6D8A;
  transition: all 150ms;
  display: flex;
  align-items: center;
  gap: 0.375rem;
  margin-left: 0.5rem;
}
.results-container .select-options .cancel-selection-button:hover {
  color: #EF1103;
}
.results-container .select-options .cancel-selection-button .icon {
  width: 1rem;
  height: 1rem;
}
.results-container .select-options.visible {
  display: flex;
}
@media screen and (max-width: 840px) {
  .results-container .select-options {
    gap: 0.5rem;
  }
  .results-container .select-options .chip {
    padding: 0.5rem !important;
  }
  .results-container .select-options .chip .text {
    display: none;
  }
  .results-container .select-options .cancel-selection-button .text {
    display: none;
  }
}
.results-container .results {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.results-container .results .loose-results {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.results-container .results .loose-results:not(:empty) {
  margin-top: 0.75rem;
}
.results-container .results .folder .folder-results .result-skeleton {
  background-color: #FBFCFF;
  margin: 0 0.5rem;
  width: auto;
}
.results-container .results .folder {
  overflow: hidden;
  border-radius: 0.5rem;
}
@media screen and (max-width: 840px) {
  .results-container .results .folder {
    gap: 0;
  }
}
.results-container .results .folder.selected .details {
  background-color: #e5e7ea;
}
.results-container .results .folder .details {
  cursor: pointer;
  background-color: #F0F2F5;
  border-radius: 0 !important;
  min-height: 3rem;
}
@media screen and (max-width: 840px) {
  .results-container .results .folder .details {
    padding: 0.75rem 0.5rem;
  }
}
.results-container .results .folder .details .name {
  font-size: 0.875rem;
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.results-container .results .folder .details .name .text {
  color: #232B3C;
}
.results-container .results .folder .details .expand-button .icon {
  width: 1rem;
  height: 1rem;
}
.results-container .results .folder .details .edit-button {
  display: flex;
  align-items: center;
  color: inherit;
  text-decoration: none;
}
.results-container .results .folder .details form {
  display: none;
}
.results-container .results .folder .folder-results {
  flex: 1 1 auto;
  display: flex;
  gap: 0.5rem;
  flex-direction: column;
  background-color: #F0F2F5;
  padding-bottom: 0.5rem;
}
.results-container .results .folder .item {
  outline: none;
  border-radius: 0;
  background-color: #F0F2F5;
}
.results-container .results .folder .item:first-of-type {
  margin-top: 0.5rem;
}
@media screen and (max-width: 840px) {
  .results-container .results .folder .item:first-of-type {
    margin-top: 0;
  }
}
.results-container .results .folder .item:last-of-type {
  border-bottom-left-radius: 0.5rem;
  border-bottom-right-radius: 0.5rem;
}
.results-container .results .folder.closed .details {
  border-bottom-left-radius: 0.5rem;
  border-bottom-right-radius: 0.5rem;
}
.results-container .results .folder.closed .details .expand-button {
  transform: rotate(180deg) translateY(10%);
}
.results-container .results .folder.closed .edit-menu {
  display: none;
}
.results-container .results .item.closed .expand-file-button {
  transform: rotate(180deg) translateY(10%);
}

.select-button,
.expand-file-button {
  appearance: none;
  background: none;
  border: 0;
  padding: 0;
  margin: 0;
  font: inherit;
  color: inherit;
  display: block;
  text-align: inherit;
}

.analysis-panel {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  max-height: 700px;
}
@media (max-width: 1200px) {
  .analysis-panel {
    padding: 0;
    overflow: auto;
  }
}
.analysis-panel .title {
  position: sticky;
  top: 0;
  z-index: 1;
  border-radius: 0.5rem;
}
.analysis-panel .markers {
  width: 100%;
  overflow: auto;
  scrollbar-width: thin;
  height: 100%;
  padding: 0 0.125rem 0.125rem;
  margin-top: 0.75rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.analysis-panel .markers form .form-input-list {
  padding: 0 0.25rem;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
}

[data-item-type=item].dragging {
  opacity: 0.4;
}

[data-item-type=folder].drag-over {
  outline: 2px dashed #278BFF;
  outline-offset: 2px;
  background: #f1f6ff;
}

.results[data-container-type=results].drag-over {
  outline: 2px dashed #278BFF;
  outline-offset: 4px;
  border-radius: 0.5rem;
}

.result-skeleton {
  display: flex;
  align-items: center;
  gap: 1rem;
  width: 100%;
  min-height: 3.5rem;
  padding: 0.75rem 1rem;
  background-color: #FBFCFF;
  border-radius: 0.5rem;
  pointer-events: none;
}
.result-skeleton__control {
  width: 1.25rem;
  height: 1.25rem;
  flex-shrink: 0;
  border-radius: 50%;
}
.result-skeleton__lines {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.result-skeleton__title {
  height: 0.875rem;
  width: 45%;
}
.result-skeleton__meta {
  height: 0.75rem;
  width: 25%;
}

.pus-overlay {
  position: fixed;
  inset: 0;
  z-index: 9999;
  background: rgba(0, 0, 0, 0.55);
  display: flex;
  align-items: flex-start;
  justify-content: center;
  overflow-y: auto;
  padding: 1.5rem 1rem;
}
.pus-overlay.hidden {
  display: none;
}

.pus-modal {
  background: #FFFFFF;
  border-radius: 0.75rem;
  width: 100%;
  max-width: 760px;
  display: flex;
  flex-direction: column;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.18);
  overflow: hidden;
  margin: auto;
}

.pus-header {
  padding: 1.25rem 1.5rem 0;
}
.pus-header h3 {
  font-size: 1rem;
  font-weight: 600;
  margin: 0 0 0.375rem;
  color: #232B3C;
}

.pus-instruction {
  font-size: 0.8125rem;
  color: #5F6D8A;
  margin: 0 0 1rem;
  line-height: 1.5;
}

.pus-name-row {
  padding: 0 1.5rem 1rem;
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}
.pus-name-row label {
  font-size: 0.8125rem;
  font-weight: 500;
  color: #424E66;
}

.pus-name-input {
  border: 1.5px solid #CED4E1;
  border-radius: 0.5rem;
  padding: 0.5rem 0.75rem;
  font-size: 0.875rem;
  color: #232B3C;
  outline: none;
  transition: border-color 150ms;
}
.pus-name-input:focus {
  border-color: #278BFF;
}

.pus-canvases {
  background: #F0F2F5;
  padding: 1rem;
  overflow-y: auto;
  max-height: 60vh;
  cursor: crosshair;
}
.pus-canvases canvas {
  display: block;
  max-width: 100%;
  margin: 0 auto 0.75rem;
  border-radius: 0.25rem;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.12);
  background: #FFFFFF;
}
.pus-canvases canvas:last-child {
  margin-bottom: 0;
}

.pus-loading {
  text-align: center;
  padding: 2rem;
  font-size: 0.875rem;
  color: #5F6D8A;
}

.pus-footer {
  padding: 0.875rem 1.5rem;
  display: flex;
  align-items: center;
  gap: 0.625rem;
  justify-content: flex-end;
  border-top: 1px solid #DDE0E5;
  flex-wrap: wrap;
}

.pus-error {
  font-size: 0.8125rem;
  color: #EF1103;
  flex: 1;
  min-width: 0;
}
.pus-error.hidden {
  display: none;
}

.pus-page-nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.625rem 1.5rem;
  border-top: 1px solid #DDE0E5;
}

.pus-nav-group {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.pus-nav-btn {
  background: none;
  border: 1.5px solid #CED4E1;
  border-radius: 0.5rem;
  width: 2.25rem;
  height: 2.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: #424E66;
  font-size: 1.1rem;
  line-height: 1;
  transition: border-color 150ms, background 150ms;
}
.pus-nav-btn:hover:not(:disabled) {
  border-color: #278BFF;
  background: #f1f6ff;
  color: #278BFF;
}
.pus-nav-btn:disabled {
  opacity: 0.35;
  cursor: default;
}

.pus-embedded {
  width: 100%;
  display: flex;
  flex-direction: column;
}
.pus-embedded.hidden {
  display: none;
}
.pus-embedded .pus-modal {
  width: 100%;
  max-width: none;
  flex: 1;
  min-height: 0;
  margin: 0;
  background: transparent;
  border-radius: 0;
  box-shadow: none;
  min-height: 0;
}
.pus-embedded .pus-header {
  padding: 0 0 0.5rem;
}
.pus-embedded .pus-header h3 {
  font-size: 0.925rem;
}
.pus-embedded .pus-name-row {
  padding: 0 0 0.75rem;
}
.pus-embedded .pus-footer,
.pus-embedded .pus-page-nav {
  padding-left: 0;
  padding-right: 0;
}
.pus-embedded .pus-instruction {
  font-size: 0.75rem;
}
.pus-embedded .pus-canvases {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
}

.entry-form-modal--sanitizing .modal__card {
  height: min(70vh, 34rem);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: 0.5rem;
}
.entry-form-modal--sanitizing .modal__title {
  display: none;
}
.entry-form-modal--sanitizing .modal__body {
  display: none;
}
.entry-form-modal--sanitizing .pus-embedded {
  flex: 1;
  min-height: 0;
}

@media screen and (max-width: 655px) {
  .entry-form-modal--sanitizing .modal__card {
    height: calc(100svh - 1rem * 4);
    max-height: calc(100svh - 1rem * 4);
  }
}
.health-timeline {
  margin-bottom: 0.75rem;
  background: #FFFFFF;
  border: 1px solid #DDE0E5;
  border-radius: 1rem;
  padding: 0.5rem 0;
  overflow: hidden;
}
.health-timeline__nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  padding: 0.5rem 1rem 0;
}
@media (max-width: 655px) {
  .health-timeline__nav {
    flex-wrap: wrap;
  }
}
.health-timeline__window-label {
  font-size: 0.8125rem;
  color: #5F6D8A;
  font-weight: 600;
  min-width: 10rem;
  text-align: center;
}
@media (max-width: 655px) {
  .health-timeline__window-label {
    order: -1;
    flex: 0 0 100%;
  }
}
.health-timeline__nav-btn {
  font-size: 0.8125rem;
  color: #278BFF;
  background: none;
  border: none;
  cursor: pointer;
  padding: 0.25rem 0.5rem;
  border-radius: 0.375rem;
  white-space: nowrap;
  text-decoration: none;
  display: inline-block;
}
.health-timeline__nav-btn:hover {
  background: #EBF5FF;
}
.health-timeline__nav-btn:disabled, .health-timeline__nav-btn[aria-disabled=true] {
  color: #CED4E1;
  cursor: default;
}
.health-timeline__nav-btn:disabled:hover, .health-timeline__nav-btn[aria-disabled=true]:hover {
  background: none;
}
.health-timeline__scroll {
  overflow-x: auto;
  overflow-y: hidden;
  cursor: grab;
  -webkit-overflow-scrolling: touch;
  padding: 0 1rem;
}
.health-timeline__scroll.is-dragging {
  cursor: grabbing;
  user-select: none;
}
.health-timeline__scroll.hidden {
  display: none;
}
.health-timeline__canvas {
  display: block;
}
.health-timeline__empty {
  min-height: 280px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.5rem 1.25rem;
  color: #5F6D8A;
  font-size: 0.875rem;
  text-align: center;
}
.health-timeline__empty.hidden {
  display: none;
}

.premium-teaser {
  margin-top: 0.75rem;
  background: #FFFFFF;
  border: 1px dashed #DDE0E5;
  border-radius: 1rem;
  padding: 1.75rem 1.25rem;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
}
.premium-teaser__lock {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 999px;
  background: #F0F2F5;
  color: #5F6D8A;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 0.25rem;
}
.premium-teaser__text {
  color: #5F6D8A;
  font-size: 0.875rem;
  max-width: 32rem;
  margin: 0 0 0.5rem;
  line-height: 1.5;
}

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

main h1, main h2 {
  line-height: 1.1;
}
main p {
  line-height: 1.35;
}
main main {
  height: unset !important;
}
main footer {
  height: 2.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
}
main .fixed-button {
  position: fixed;
  z-index: 1;
  left: 50%;
  transform: translate(-50%, -50%);
  bottom: 1rem;
  -webkit-box-shadow: 0px 0px 30px 5px rgba(66, 68, 90, 0.2);
  -moz-box-shadow: 0px 0px 30px 5px rgba(66, 68, 90, 0.2);
  box-shadow: 0px 0px 30px 5px rgba(66, 68, 90, 0.2);
  text-align: center;
  white-space: nowrap;
}
main .transparent {
  opacity: 0.6;
}
main .light {
  background-color: #FBFCFF !important;
}
main .dark {
  background-color: #F0F2F5;
}
main .light-top-divider {
  border-style: solid;
  border-width: 1px 0 0 0;
  border-color: #DDE0E5;
}
main .dark-top-divider {
  border-style: solid;
  border-width: 1px 0 0 0;
  border-color: #CED4E1;
}
main section .note {
  color: #797979;
  margin: auto;
  padding: 0 2.5rem;
  opacity: 0.5;
  text-align: center;
}
main section .content-wrapper {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
main section .content-wrapper .text-wrapper {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
main section .content-wrapper .text-wrapper.center {
  text-align: center;
}
main section .content-wrapper .text-wrapper.center .content {
  width: 40%;
  margin: auto;
}
@media (max-width: 1200px) {
  main section .content-wrapper .text-wrapper.center .content {
    width: 60%;
  }
}
@media (max-width: 765px) {
  main section .content-wrapper .text-wrapper.center .content {
    width: 100%;
  }
}
main section ul > li.colored-border {
  padding: 1rem;
  border: #CED4E1 solid 1px;
  border-radius: 0.5rem;
}
main .carousel-section {
  padding: 4rem 0;
}
@media (max-width: 765px) {
  main .carousel-section {
    padding: 2.5rem 0;
  }
}
main .carousel-section .content-wrapper .text-wrapper {
  width: 75%;
  margin: auto;
}
@media (max-width: 765px) {
  main .carousel-section .content-wrapper .text-wrapper {
    width: 100%;
  }
}
main .carousel-section .content-wrapper .content {
  width: 75% !important;
}
main .carousel-section .content-wrapper .carousel-list {
  overflow-x: auto;
  padding-bottom: 1.5rem;
}
main .carousel-section .content-wrapper .carousel-list ul {
  display: flex;
  gap: 1.5rem;
}
main .carousel-section .content-wrapper .carousel-list ul li {
  background-color: #FBFCFF;
  padding: 1.5rem;
  border-radius: 0.75rem;
  min-width: 32rem;
  max-width: 32rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
@media (max-width: 765px) {
  main .carousel-section .content-wrapper .carousel-list ul li {
    min-width: 24rem;
    max-width: 24rem;
  }
}
main .carousel-section .content-wrapper .carousel-list ul li .header p:nth-child(2) {
  margin-top: 0.125rem;
}
main .carousel-section .content-wrapper .carousel-list ul li .pair h5 {
  font-weight: 500;
}
main .carousel-section .content-wrapper .carousel-list ul li .pair:nth-child(2) {
  border: solid #BDC4D3;
  border-width: 1px 0 0 0;
  padding-top: 1rem;
}
main .carousel-section .content-wrapper .carousel-list ul li .pair p:nth-child(2) {
  margin-top: 0.5rem;
}
main .carousel-section .content-wrapper .carousel-list ul li .pair p:not(:nth-child(2)) {
  margin-top: 0.375rem;
}
main .carousel-section .content-wrapper .carousel-list ul li .pair p {
  opacity: 0.6;
}
main .horizontal {
  display: flex;
  justify-content: center;
}
main .horizontal.block {
  display: block;
}
main .horizontal .wrapper {
  width: 100%;
  max-width: 1200px;
  display: flex;
  text-align: left;
  overflow: hidden;
  flex-direction: column;
  border-radius: 1rem;
  gap: 1.5rem;
}
@media (min-width: 756px) {
  main .horizontal .wrapper {
    flex-direction: row-reverse;
    align-items: center;
    text-align: center;
    gap: 2rem;
  }
}
@media (min-width: 1200px) {
  main .horizontal .wrapper {
    flex-direction: row-reverse;
    justify-content: space-between;
  }
}
main .horizontal .wrapper.wide {
  max-width: unset;
  border-radius: unset;
}
main .horizontal .wrapper.light {
  background-color: #FBFCFF;
}
main .horizontal .wrapper .text-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 0 2rem 2rem 2rem;
  width: 100%;
}
@media (min-width: 756px) {
  main .horizontal .wrapper .text-wrapper {
    padding: 2rem 0 2rem 2rem;
    width: 33.3333333333%;
  }
}
main .horizontal .wrapper .text-wrapper .title {
  text-align: left;
}
main .horizontal .wrapper .text-wrapper .content {
  text-align: left;
  margin-top: 1rem;
}
main .horizontal .wrapper .text-wrapper .content-group {
  display: flex;
  flex-direction: column;
}
main .horizontal .wrapper .text-wrapper .content-group h3 {
  color: #0B1426;
  text-align: left;
}
main .horizontal .wrapper .text-wrapper .content-group p {
  font-size: 1.3rem;
  font-weight: 400;
  color: #9b9b9b;
  margin-top: 0.75rem;
}
@media (max-width: 756px) {
  main .horizontal .wrapper .text-wrapper .content-group p {
    font-size: 1.1rem;
  }
}
main .horizontal .wrapper .image--wrapper {
  height: 30rem;
  width: 100%;
}
@media (min-width: 756px) {
  main .horizontal .wrapper .image--wrapper {
    width: 66.6666666667%;
  }
}
main .horizontal .wrapper .image--wrapper.axial-hidden {
  overflow: hidden;
}
main .horizontal .wrapper .image--wrapper.horizontal-scroll {
  overflow-x: scroll;
  overflow-y: hidden;
}
main .horizontal .wrapper .image--wrapper.vertical-scroll {
  overflow-x: hidden;
  overflow-y: scroll;
}
@media screen and (max-width: 840px) {
  main .horizontal .wrapper .image--wrapper.high {
    height: 40rem;
  }
}
@media (min-width: 756px) {
  main .horizontal .wrapper .image--wrapper.high {
    height: 40rem;
  }
}
@media (min-width: 1200px) {
  main .horizontal .wrapper .image--wrapper.high {
    height: 45rem;
  }
}
@media (min-width: 756px) {
  main .horizontal .wrapper .image--wrapper.medium {
    height: 35rem;
  }
}
@media (min-width: 1200px) {
  main .horizontal .wrapper .image--wrapper.medium {
    height: 30rem;
  }
}
main .horizontal .wrapper .image--wrapper.short {
  height: 18.5rem;
}
@media (min-width: 756px) {
  main .horizontal .wrapper .image--wrapper.short {
    height: 15rem;
  }
}
@media (min-width: 1200px) {
  main .horizontal .wrapper .image--wrapper.short {
    height: 20rem;
  }
}
main .horizontal .wrapper .image--wrapper.extra-short {
  height: 12rem;
}
@media (min-width: 756px) {
  main .horizontal .wrapper .image--wrapper.extra-short {
    height: 15rem;
  }
}
@media (min-width: 1200px) {
  main .horizontal .wrapper .image--wrapper.extra-short {
    height: 15rem;
  }
}
main .horizontal .wrapper .image--wrapper .image {
  height: 100%;
  width: auto;
  border-radius: 0.6rem;
  display: block;
  margin: auto;
}
@media (min-width: 756px) {
  main .horizontal .wrapper .image--wrapper .image {
    height: 100%;
    width: auto;
  }
}
main .horizontal .instagram-slides {
  overflow-x: auto;
  overflow-y: hidden;
  width: 100%;
}
main .horizontal .instagram-slides .right-wrapper {
  display: flex;
  gap: 1rem;
  height: 40.25rem;
}
main .vertical {
  overflow: hidden;
}
@media screen and (max-width: 655px) {
  main .vertical {
    padding: 2rem;
  }
}
main .vertical .title {
  width: 60%;
  margin: auto;
  text-align: center;
  max-width: 700px;
}
@media (max-width: 756px) {
  main .vertical .title {
    width: 100%;
  }
}
main .vertical .content-group {
  max-width: 1200px;
  margin: 0 auto;
}
main .vertical .content-group h3 {
  text-align: center;
}
main .vertical .content {
  width: 60%;
  margin: 1rem auto 0 auto;
  text-align: center;
  max-width: 700px;
}
@media (max-width: 756px) {
  main .vertical .content {
    width: 100%;
  }
}
main .vertical .video_wrapper {
  width: 100%;
  max-width: 1200px;
  margin: 3.5rem auto 0;
  display: flex;
}
@media screen and (max-width: 655px) {
  main .vertical .video_wrapper {
    margin: 2rem auto 0;
  }
}
main .vertical .video_wrapper .video, main .vertical .video_wrapper .video-mobile, main .vertical .video_wrapper .video-desktop {
  border-radius: 1rem;
  overflow: hidden;
  width: 100%;
  height: auto;
}
@media (max-width: 756px) {
  main .vertical .video_wrapper .video-desktop {
    display: none;
  }
}
main .vertical .video_wrapper .video-mobile {
  display: none;
}
@media (max-width: 756px) {
  main .vertical .video_wrapper .video-mobile {
    display: block;
  }
}
main .vertical .images {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2rem;
  margin-top: 2rem;
}
@media screen and (max-width: 655px) {
  main .vertical .images.mobile-left {
    flex-direction: column;
    align-items: flex-start;
  }
}
main .vertical .images img {
  width: auto;
}
main .vertical .images img.high {
  height: 12rem;
}
@media screen and (max-width: 655px) {
  main .vertical .images img.high {
    height: 11rem;
  }
}
main .vertical .images img.short {
  height: 5rem;
}
@media screen and (max-width: 655px) {
  main .vertical .images img.short {
    height: 4rem;
  }
}
main .vertical .images img.wide {
  max-width: 1200px;
}
main .vertical .images img.rounded-corners {
  border-radius: 0.75rem;
}
main .vertical .text-wrapper {
  text-align: center;
  width: 75%;
  margin: auto;
}
@media screen and (max-width: 655px) {
  main .vertical .text-wrapper {
    width: 100%;
  }
}
main .vertical .content {
  margin-top: 0.5rem;
}
main .vertical .features {
  font-size: 1.5rem;
  max-width: 860px;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1200px) {
  main .vertical .features {
    font-size: 1.25rem;
  }
}
@media (max-width: 414px) {
  main .vertical .features {
    font-size: 1.1rem;
  }
}
main .vertical .features .single_feature {
  display: flex;
}
main .vertical .features .single_feature:not(:first-child) {
  margin-top: 1.5rem;
}
main .vertical .features .single_feature .emoticon {
  margin-right: 0.75rem;
}
main .vertical .features .strong-title {
  text-align: center;
  margin: 2rem 0 1rem 0;
  font-weight: 600;
}
main .vertical .section-benefits-wrapper {
  margin-top: 0.5rem;
}
main .vertical .section-benefits-wrapper .single-benefit {
  background-color: unset !important;
  border: solid 2px #DDE0E5 !important;
}
main .vertical .section-benefits-wrapper .single-benefit h3 {
  font-size: 1.3rem;
  color: #9b9b9b;
  font-weight: 400 !important;
}
@media (max-width: 756px) {
  main .vertical .section-benefits-wrapper .single-benefit h3 {
    font-size: 1.1rem;
  }
}
main .vertical .plans {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  width: 100%;
  align-items: center;
}
main .vertical .plans .plan {
  max-width: min(80vw, 1200px);
  min-width: min(80vw, 800px);
  display: flex;
  flex-direction: column;
  align-items: center;
  border-radius: 0.5rem;
  overflow: hidden;
  background-color: #FBFCFF;
  padding-bottom: 2rem;
}
main .vertical .plans .plan.premium .head {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  background-color: #278BFF;
  color: #F0F2F5;
  border-radius: 0 0 0.5rem 0.5rem;
  padding: 1.25rem;
  gap: 0.5rem;
}
main .vertical .plans .plan.premium .head .period {
  font-size: 1.25rem;
  font-weight: 400;
  margin: auto 0;
}
@media screen and (max-width: 655px) {
  main .vertical .plans .plan.premium .head .period {
    font-size: 1rem;
  }
}
main .vertical .plans .plan.premium .extra-info {
  width: 100%;
}
@media screen and (max-width: 655px) {
  main .vertical .plans .plan.premium .extra-info {
    padding-top: 0.5rem;
  }
}
main .vertical .plans .plan.premium .extra-info .divider {
  background-color: rgba(39, 139, 255, 0.5);
  height: 1px;
  width: 100%;
  margin: 1rem auto;
}
main .vertical .plans .plan.premium .label {
  font-size: 2rem;
  font-weight: 700;
  width: 100%;
  text-align: center;
}
@media screen and (max-width: 655px) {
  main .vertical .plans .plan.premium .label {
    font-size: 1.5rem;
  }
}
main .vertical .plans .plan.premium .price {
  font-size: 1.4rem;
}
@media screen and (max-width: 655px) {
  main .vertical .plans .plan.premium .price {
    font-size: 1.2rem;
  }
}
main .vertical .plans .plan.premium .price strong {
  font-weight: 600;
}
main .vertical .plans .plan.dark {
  background-color: transparent;
  border: 1px solid #BDC4D3;
}
main .vertical .plans .plan .sale-badge {
  width: 100%;
  padding: 0.5rem;
  background-color: #FBFCFF;
  border: solid #278BFF;
  border-radius: 0.5rem 0.5rem 0 0;
  border-width: 0.125rem 0.125rem 0 0.125rem;
}
main .vertical .plans .plan .benefits-wrapper {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}
main .vertical .plans .plan .benefits-wrapper .special-benefits {
  display: flex;
  flex-direction: column;
}
main .vertical .plans .plan .benefits-wrapper .benefits {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  align-content: center;
}
@media screen and (max-width: 655px) {
  main .vertical .plans .plan .benefits-wrapper .benefits {
    grid-template-columns: 1fr;
  }
}
main .vertical .plans .plan .benefits-wrapper .benefits .text {
  max-width: 20rem;
}
main .vertical .plans .plan .benefits-wrapper .special-benefits .text {
  max-width: 42rem;
}
main .vertical .plans .plan .benefits-wrapper .benefits .benefit, main .vertical .plans .plan .benefits-wrapper .special-benefits .benefit {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  color: #424E66;
  padding: 0.5rem;
}
main .vertical .plans .plan .benefits-wrapper .benefits .benefit .icon, main .vertical .plans .plan .benefits-wrapper .special-benefits .benefit .icon {
  flex-shrink: 0;
  width: 1.25rem;
  height: 1.25rem;
}
@media screen and (max-width: 655px) {
  main .vertical .plans .plan .benefits-wrapper .benefits .benefit .icon, main .vertical .plans .plan .benefits-wrapper .special-benefits .benefit .icon {
    width: 1rem;
    height: 1rem;
  }
}
@media screen and (max-width: 655px) {
  main .vertical .plans .plan .benefits-wrapper .benefits .benefit .text, main .vertical .plans .plan .benefits-wrapper .special-benefits .benefit .text {
    font-size: 1rem;
  }
}
main .vertical .plans .plan .button {
  max-width: 80%;
  text-align: center;
}
main .section-benefits-wrapper {
  max-width: 1200px;
  margin: 3.5rem auto 0;
  padding: 0 2rem;
}
@media screen and (max-width: 655px) {
  main .section-benefits-wrapper {
    margin: 2rem auto 0;
  }
}
main .section-benefits-wrapper .benefits-container {
  width: 100%;
  display: flex;
  gap: 1.5rem;
  overflow-x: auto;
  padding: 1rem 0;
  scrollbar-width: thin;
}
main .section-benefits-wrapper .benefits-container .single-benefit {
  border-radius: 0.75rem;
  width: 22rem;
  min-width: 22rem;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 1.5rem 1.5rem;
  background-color: #F0F2F5;
  text-align: left;
}
main .section-benefits-wrapper .benefits-container .single-benefit .key-message {
  font-weight: 500;
}
main .section-benefits-wrapper .benefits-container .single-benefit .app-benefit {
  color: #5F6D8A;
}
main .first_slide {
  text-align: center;
  width: 100%;
}
main .first_slide .wrapper .header {
  font-size: 2rem;
  font-weight: 600;
}
@media (min-width: 756px) {
  main .first_slide .wrapper .header {
    font-size: 2.5rem;
  }
}
@media (min-width: 1200px) {
  main .first_slide .wrapper .header {
    font-size: 3.5rem;
  }
}
main .first_slide .wrapper .small_header {
  padding: 0;
  font-size: 1.6rem;
}
@media (min-width: 756px) {
  main .first_slide .wrapper .small_header {
    font-size: 2rem;
    text-align: left;
  }
}
@media (min-width: 1200px) {
  main .first_slide .wrapper .small_header {
    font-size: 2.5rem;
    text-align: left;
  }
}
main .first_slide {
  width: 100%;
  display: flex;
  text-align: center;
  flex-direction: column;
  align-items: center;
  background-color: #FBFCFF;
  padding-bottom: 0;
  overflow: hidden;
  min-height: 1080px;
  z-index: 2;
  position: relative;
}
main .first_slide .wrapper {
  height: 100%;
  width: 100%;
}
main .first_slide .wrapper .images {
  margin-top: 2.5rem;
  display: flex;
  gap: 1.5rem;
  justify-content: center;
}
@media (max-width: 414px) {
  main .first_slide .wrapper .images {
    gap: 1.25rem;
    flex-direction: column;
  }
}
main .first_slide .wrapper .images img {
  height: 3rem;
  width: auto;
  align-self: center;
}
main .first_slide .wrapper .note {
  color: #0B1426;
  margin-top: 1.25rem;
  opacity: 1;
  font-weight: 500;
}
main .first_slide .wrapper .text-wrapper {
  width: 58.3333333333%;
  margin-left: 20.8333333333%;
  display: flex;
  flex-direction: column;
  align-items: center;
}
main .first_slide .wrapper .text-wrapper .go-to-plans-button {
  width: fit-content;
}
@media (max-width: 1200px) {
  main .first_slide .wrapper .text-wrapper {
    width: 66.6666666667%;
    margin-left: 16.6666666667%;
  }
}
@media (max-width: 756px) {
  main .first_slide .wrapper .text-wrapper {
    width: 83.3333333333%;
    margin-left: 8.3333333333%;
  }
}
main .first_slide .wrapper .text-wrapper .header {
  margin-top: 3.5rem;
  margin-bottom: 1rem;
}
@media screen and (max-width: 840px) {
  main .first_slide .wrapper .text-wrapper .header {
    margin-top: 1rem;
  }
}
main .first_slide .wrapper .buttons {
  width: 100%;
  display: flex;
  justify-content: center;
  flex-direction: column;
}
main .first_slide .wrapper .buttons .button {
  margin-top: 2.5rem;
  align-self: center;
}
main .first_slide .wrapper .buttons .info-wrapper {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}
main .first_slide .wrapper .buttons .info-wrapper .info:first-child {
  margin-top: 0.75rem;
}
main .first_slide .wrapper .buttons .info-wrapper .info a {
  cursor: pointer;
}
main .first_slide .wrapper .image-wrapper {
  height: auto;
  display: flex;
  overflow-x: scroll;
  overflow-y: hidden;
  width: 100%;
  margin-top: 2rem;
  padding: 0 2rem;
}
@media (min-width: 756px) {
  main .first_slide .wrapper .image-wrapper {
    width: 100%;
  }
}
@media (min-width: 1200px) {
  main .first_slide .wrapper .image-wrapper {
    margin-top: 4rem;
    width: 83.3333333333%;
    margin-left: 8.3333333333%;
    overflow: hidden;
  }
}
main .first_slide .wrapper .image-wrapper .image {
  height: 30rem;
  width: auto;
  margin: auto;
  border-radius: 0.6rem 0.6rem 0 0;
}
@media (min-width: 756px) {
  main .first_slide .wrapper .image-wrapper .image {
    height: 45rem;
    width: auto;
  }
}
@media (min-width: 1200px) {
  main .first_slide .wrapper .image-wrapper .image {
    max-width: 1200px;
    height: auto;
    width: 100%;
  }
}

.email-confirmation-page {
  max-width: 600px;
  margin: auto;
  padding: 2.5rem;
  text-align: center;
}
.email-confirmation-page-alert {
  padding: 1.25rem;
  border-radius: 0.5rem;
  margin-bottom: 1.25rem;
}
.email-confirmation-page-alert h1 {
  margin: 0 0 0.75rem 0;
}
.email-confirmation-page-alert p {
  margin: 0;
}
.email-confirmation-page-alert.success {
  background-color: #E5F5E6;
  color: #29702C;
}
.email-confirmation-page-alert.error {
  background-color: #EBF5FF;
  color: #278BFF;
}
.email-confirmation-page-alert.warning {
  background-color: #EBF5FF;
  color: #278BFF;
}
.email-confirmation-page-message {
  font-size: 18px;
  line-height: 1.2;
  color: #555;
  margin-bottom: 1rem;
}
.email-confirmation-page-secondary-message {
  color: #777;
  line-height: 1.2;
  margin-bottom: 2rem;
}
.email-confirmation-page-actions {
  display: inline;
}
.email-confirmation-page-actions .button {
  display: inline-block;
  margin-top: 1.25rem;
  padding: 0.75rem 1.5rem;
  text-decoration: none;
}
.email-confirmation-page-footer {
  margin-top: 2rem;
  padding-top: 1.25rem;
  border-top: 1px solid #eee;
}
.email-confirmation-page-footer a {
  color: #3498db;
  text-decoration: none;
}
.email-confirmation-page-footer a:hover {
  text-decoration: underline;
}

body {
  --lp-accent-tint: #f1f6ff;
  --lp-accent-line: #93C5FF;
  --lp-accent: #278BFF;
  --lp-accent-rgb: 39, 139, 255;
  --lp-accent-strong: #278BFF;
  --lp-accent-ink: #949FB6;
}

body.lp-accent--pink {
  --lp-accent-tint: #FCE7EF;
  --lp-accent-line: #F7C2D6;
  --lp-accent: #f65494;
  --lp-accent-rgb: 246, 84, 148;
  --lp-accent-strong: #f65494;
  --lp-accent-ink: #7A5566;
}

.lp-section a:not([class]) {
  color: var(--lp-accent-strong);
}

.hero-micro__check {
  color: #949FB6;
  flex-shrink: 0;
}

.lp-schema-chevron {
  color: #949FB6;
  flex-shrink: 0;
}

.pricing-features__check {
  color: var(--lp-accent-strong);
  flex-shrink: 0;
}

.wireframe-badge {
  position: fixed;
  top: 16px;
  right: 16px;
  background: #232B3C;
  color: #FFFFFF;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  padding: 6px 14px;
  border-radius: 100px;
  z-index: 1000;
  opacity: 0.85;
}

.hero-eyebrow-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: var(--lp-accent-tint);
  color: var(--lp-accent-strong);
  border: 1px solid var(--lp-accent-line);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  padding: 5px 12px;
  border-radius: 100px;
  margin-bottom: 16px;
}

.lp-app-schema {
  background: #FFFFFF;
  border: 1px solid #DDE0E5;
  border-radius: 0.8rem;
  overflow: hidden;
}

.lp-browser-bar {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  background: #FBFCFF;
  border-bottom: 1px solid #DDE0E5;
}

.lp-browser-dots {
  display: flex;
  gap: 5px;
  flex-shrink: 0;
}
.lp-browser-dots span {
  display: block;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #CED4E1;
}
.lp-browser-dots span:nth-child(1) {
  background: #fc6058;
}
.lp-browser-dots span:nth-child(2) {
  background: #fec02f;
}
.lp-browser-dots span:nth-child(3) {
  background: #2aca3e;
}

.lp-browser-url {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  font-size: 11px;
  color: #949FB6;
  background: #FFFFFF;
  border: 1px solid #DDE0E5;
  border-radius: 6px;
  padding: 4px 10px;
  max-width: 260px;
  margin: 0 auto;
}
.lp-browser-url svg {
  flex-shrink: 0;
  color: #BDC4D3;
}

.lp-app-schema__body {
  height: 346px;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: 20px;
}
@media (max-width: 480px) {
  .lp-app-schema__body {
    height: 414px;
  }
}
.lp-app-schema__body .health-timeline {
  margin-bottom: 0;
}
.lp-app-schema__body .summary-list-frame__row,
.lp-app-schema__body .summary-section__header a {
  cursor: default;
}
.lp-app-schema__body .summary-section + .summary-section {
  margin-top: 24px;
}
.lp-app-schema__body {
  container-type: inline-size;
}
.lp-app-schema__body .status-group-card {
  flex: 0 0 100%;
}
@container (min-width: 380px) {
  .lp-app-schema__body .status-group-card {
    flex: 0 0 calc(50% - 4px);
  }
}
@container (min-width: 640px) {
  .lp-app-schema__body .status-group-card {
    flex: 0 0 calc(33.333% - 5.3333333333px);
  }
}

.lp-schema-cond-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}

.lp-schema-cond {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 11px 12px;
  border: 1px solid #DDE0E5;
  border-radius: 0.75rem;
  background: #FFFFFF;
}

.lp-schema-cond-name {
  font-size: 13px;
  font-weight: 500;
  color: #232B3C;
}

.lp-schema-cond-pill {
  font-size: 10px;
  font-weight: 600;
  padding: 2px 8px;
  border-radius: 100px;
  white-space: nowrap;
}
.lp-schema-cond-pill--ok {
  background: #E5F5E6;
  color: #29702C;
}
.lp-schema-cond-pill--warn {
  background: #FFF1E6;
  color: #9C4F17;
}

.lp-anim-item {
  transition: opacity 0.5s ease, transform 0.5s ease;
}
.lp-anim-item--hidden {
  opacity: 0;
  transform: translateY(10px);
  pointer-events: none;
}

.lp-next-step-demo {
  display: grid;
}
.lp-next-step-demo__card {
  grid-area: 1/1;
  transition: opacity 0.35s ease;
}
.lp-next-step-demo .prevention-status-card {
  border: 0;
  padding: 0;
  background: transparent;
}

.reality-card h3,
.problem-quote,
.audience-card h3,
.security-card h3 {
  font-size: 1.1rem;
}

.lp-answer-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  max-width: 720px;
  margin: 40px auto 0;
}

.lp-answer-row {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 14px 20px;
  background: var(--lp-accent-tint);
  border-radius: 0.5rem;
  flex-wrap: wrap;
}
.lp-answer-row__problem {
  font-size: 14px;
  color: var(--lp-accent-ink);
  flex: 1 1 100px;
}
.lp-answer-row__arrow {
  width: 16px;
  height: 16px;
  color: var(--lp-accent-strong);
  flex-shrink: 0;
}
.lp-answer-row__solution {
  font-size: 14px;
  color: var(--lp-accent-strong);
  flex: 1 1 260px;
}
.lp-answer-row__solution strong {
  font-weight: 600;
  line-height: 1.3;
}

.hero {
  padding: 80px 48px 60px;
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 64px;
  align-items: center;
}
.hero-text h1 {
  font-size: 48px;
  line-height: 1.15;
  margin-bottom: 20px;
  letter-spacing: -0.5px;
}
.hero-text h1 span {
  color: var(--lp-accent-strong);
}
.hero-text p {
  font-size: 18px;
  color: #5F6D8A;
  margin-bottom: 32px;
  max-width: 460px;
  line-height: 1.65;
}
.hero-cta-group {
  display: flex;
  flex-direction: column;
  gap: 12px;
  align-items: flex-start;
}
.hero-micro {
  font-size: 13px;
  color: #949FB6;
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}
.hero-micro span {
  display: flex;
  align-items: center;
  gap: 4px;
}

.btn-hero {
  background: var(--lp-accent-strong);
  color: #FFFFFF;
  border: none;
  padding: 16px 40px;
  border-radius: 100px;
  font-size: 17px;
  font-weight: 600;
  cursor: pointer;
  font-family: inherit;
  transition: all 0.25s;
  box-shadow: 0 4px 20px rgba(var(--lp-accent-rgb), 0.35);
  text-decoration: none;
  display: inline-block;
}
.btn-hero:hover {
  background: var(--lp-accent-strong);
  transform: translateY(-2px);
  box-shadow: 0 6px 28px rgba(var(--lp-accent-rgb), 0.45);
  color: #FFFFFF;
}

.browser-mockup {
  background: #FFFFFF;
  border-radius: 0.8rem;
  box-shadow: 0 8px 32px rgba(11, 20, 38, 0.1);
  overflow: hidden;
  border: 1px solid #DDE0E5;
}

.browser-bar {
  background: #F0F2F5;
  padding: 12px 16px;
  display: flex;
  align-items: center;
  gap: 8px;
  border-bottom: 1px solid #DDE0E5;
}

.browser-dots {
  display: flex;
  gap: 6px;
}
.browser-dots span {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #CED4E1;
}
.browser-dots span:first-child {
  background: #F5A0A0;
}
.browser-dots span:nth-child(2) {
  background: #F5D89A;
}
.browser-dots span:nth-child(3) {
  background: #A0D4A0;
}

.browser-url {
  flex: 1;
  background: #FFFFFF;
  border-radius: 6px;
  padding: 5px 12px;
  font-size: 12px;
  color: #949FB6;
  border: 1px solid #DDE0E5;
}

.app-module-tabs {
  display: flex;
  gap: 0;
  background: #F0F2F5;
  border-bottom: 1px solid #DDE0E5;
  padding: 0 16px;
  overflow-x: auto;
}

.app-tab-btn {
  padding: 10px 16px;
  font-size: 12px;
  font-weight: 500;
  color: #949FB6;
  background: none;
  border: none;
  cursor: pointer;
  font-family: inherit;
  border-bottom: 2px solid transparent;
  margin-bottom: -1px;
  transition: color 150ms, border-color 150ms;
  white-space: nowrap;
}
.app-tab-btn.active {
  color: var(--lp-accent-strong);
  border-bottom-color: var(--lp-accent-strong);
}
.app-tab-btn:hover:not(.active) {
  color: #424E66;
}

.app-module {
  display: none;
  padding: 18px;
  background: #FBFCFF;
  min-height: 320px;
}

.app-module.active {
  display: block;
}

.trust-bar {
  background: var(--lp-accent-tint);
  padding: 16px 48px;
  display: flex;
  justify-content: center;
  gap: 48px;
  font-size: 13px;
  color: #5F6D8A;
  border-top: 1px solid rgba(var(--lp-accent-rgb), 0.1);
  border-bottom: 1px solid rgba(var(--lp-accent-rgb), 0.1);
  flex-wrap: wrap;
}
.trust-bar span {
  display: flex;
  align-items: center;
  gap: 8px;
  font-weight: 500;
}

.lp-section {
  max-width: 1200px;
  margin: 0 auto;
  padding: 80px 48px;
}

.section-label {
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  color: var(--lp-accent-strong);
  margin-bottom: 12px;
}

.section-title {
  font-size: 36px;
  margin-bottom: 0.75rem;
  letter-spacing: -0.3px;
}

.section-subtitle {
  font-size: 17px;
  color: #5F6D8A;
  max-width: 560px;
  line-height: 1.4;
  margin-bottom: 48px;
}

.centered {
  text-align: center;
}

.centered .section-subtitle {
  margin-left: auto;
  margin-right: auto;
}

.reality-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 22px;
  margin-top: 42px;
}

.reality-card {
  background: #fbfcfe;
  border: 1px solid #e5ebf2;
  border-radius: 24px;
  padding: 28px;
  display: flex;
  flex-direction: column;
}
.reality-card h3 {
  line-height: 1.25;
  color: #1a2740;
  margin-bottom: 12px;
}
.reality-card p {
  font-size: 15px;
  line-height: 1.5;
  color: #5f6d83;
  margin: 0;
}
.reality-card .reality-card__link {
  margin-top: auto;
  padding-top: 16px;
  font-size: 15px;
  color: var(--lp-accent-strong);
  text-decoration: none;
  display: flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
}
.reality-card .reality-card__link:hover {
  text-decoration: underline;
}
.reality-card .reality-card__link span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
}
.reality-card .reality-card__links {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 18px;
  margin-top: auto;
  padding-top: 16px;
}
.reality-card .reality-card__links .reality-card__link {
  margin-top: 0;
  padding-top: 0;
}

.reality-card__icon,
.audience-card__icon {
  width: 44px;
  height: 44px;
  background: var(--lp-accent-tint);
  border-radius: 50%;
  margin-bottom: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--lp-accent-strong);
}
.reality-card__icon svg,
.audience-card__icon svg {
  width: 20px;
  height: 20px;
}

.reality-summary {
  text-align: center;
  font-size: 1.125rem;
  line-height: 1.5;
  color: #3f4e64;
  max-width: 760px;
  margin: 34px auto 0;
}
.reality-summary strong {
  color: #16243a;
}

.problems-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
  margin-top: 40px;
}

.problem-card {
  background: #fbfcfe;
  border: 1px solid #e5ebf2;
  border-radius: 24px;
  padding: 28px;
  position: relative;
  overflow: hidden;
}
.problem-card::after {
  content: "";
  position: absolute;
  inset: auto -20% -35% auto;
  width: 180px;
  height: 180px;
  pointer-events: none;
}

.problem-context {
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  color: #7b8799;
  margin-bottom: 14px;
}

.problem-quote {
  line-height: 1.35;
  font-weight: 600;
  color: #152238;
}

.problem-card p {
  font-size: 15px;
  line-height: 1.5;
  color: #5f6d83;
  margin: 0;
}

.audience-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
  margin-top: 40px;
}

.audience-card {
  border: 1px solid #e5ebf2;
  border-radius: 24px;
  padding: 24px;
}
.audience-card h3 {
  line-height: 1.25;
  color: #1a2740;
  margin-bottom: 12px;
}
.audience-card p {
  font-size: 15px;
  line-height: 1.5;
  color: #5f6d83;
  margin: 0;
}

.audience-eyebrow {
  font-size: 14px;
  font-weight: 600;
  color: #7d8898;
  margin-bottom: 12px;
}

.feature-block {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 64px;
  align-items: center;
  margin-bottom: 80px;
}
.feature-block:last-child {
  margin-bottom: 0;
}
.feature-block.reverse .feature-text {
  order: 2;
}
.feature-block.reverse .feature-visual {
  order: 1;
}

.feature-tag {
  display: inline-block;
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  color: var(--lp-accent-strong);
  background: var(--lp-accent-tint);
  padding: 4px 12px;
  border-radius: 100px;
  margin-bottom: 16px;
}

.feature-text h2 {
  font-size: 30px;
  margin-bottom: 16px;
  line-height: 1.25;
}
.feature-text p {
  font-size: 16px;
  color: #5F6D8A;
  line-height: 1.65;
  margin-bottom: 20px;
}

.feature-pills {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.feature-pill {
  font-size: 12px;
  padding: 6px 14px;
  border-radius: 100px;
  background: var(--lp-accent-tint);
  color: var(--lp-accent-strong);
  font-weight: 500;
}
.feature-pill.premium {
  background: linear-gradient(135deg, var(--lp-accent), var(--lp-accent-strong));
  color: #FFFFFF;
}

.feature-visual {
  display: flex;
  align-items: center;
  justify-content: center;
}

.value-mockup {
  background: #FFFFFF;
  border: 1px solid #DDE0E5;
  border-radius: 0.8rem;
  box-shadow: 0 8px 32px rgba(11, 20, 38, 0.1);
  padding: 24px;
  width: 100%;
  max-width: 420px;
  font-size: 13px;
}
.value-mockup__header {
  display: flex;
  align-items: center;
  gap: 10px;
  font-weight: 600;
  color: #232B3C;
  font-size: 14px;
  padding-bottom: 16px;
  margin-bottom: 16px;
  border-bottom: 1px solid #F0F2F5;
}
.value-mockup__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--lp-accent);
  flex-shrink: 0;
}

.value-mockup--files .file-row {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 0;
  border-bottom: 1px solid #F0F2F5;
}
.value-mockup--files .file-row:last-child {
  border-bottom: none;
}
.value-mockup--files .file-icon {
  width: 32px;
  height: 32px;
  border-radius: 8px;
  background: var(--lp-accent-tint);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.value-mockup--files .file-name {
  font-weight: 500;
  color: #232B3C;
  flex: 1;
  font-size: 13px;
}
.value-mockup--files .file-date {
  font-size: 12px;
  color: #949FB6;
}
.value-mockup--files .file-badge {
  font-size: 10px;
  font-weight: 600;
  padding: 2px 8px;
  border-radius: 100px;
  background: #E5F5E6;
  color: #29702C;
}

.value-mockup--chart .chart-param-label {
  font-size: 11px;
  font-weight: 600;
  color: var(--lp-accent-strong);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 12px;
}
.value-mockup--chart svg {
  width: 100%;
  height: 140px;
  overflow: visible;
}
.value-mockup--chart .chart-labels {
  display: flex;
  justify-content: space-between;
  font-size: 11px;
  color: #949FB6;
  margin-top: 8px;
}

.value-mockup--reminders .reminder-row {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 0;
  border-bottom: 1px solid #F0F2F5;
}
.value-mockup--reminders .reminder-row:last-child {
  border-bottom: none;
}
.value-mockup--reminders .reminder-icon {
  width: 32px;
  height: 32px;
  border-radius: 8px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.value-mockup--reminders .reminder-icon--pending {
  background: #EBF5FF;
}
.value-mockup--reminders .reminder-icon--done {
  background: #E5F5E6;
}
.value-mockup--reminders .reminder-name {
  font-weight: 500;
  color: #232B3C;
  flex: 1;
  font-size: 13px;
}
.value-mockup--reminders .reminder-badge {
  font-size: 10px;
  font-weight: 600;
  padding: 2px 8px;
  border-radius: 100px;
}
.value-mockup--reminders .reminder-badge--soon {
  background: #EBF5FF;
  color: #278BFF;
}
.value-mockup--reminders .reminder-badge--done {
  background: #E5F5E6;
  color: #29702C;
}

.feature-browser-content {
  padding: 20px;
  background: #FBFCFF;
  min-height: 260px;
}

.pricing-section {
  background: #F0F2F5;
  border-radius: 0.8rem;
  padding: 64px;
  margin: 0 48px;
}
.pricing-section .centered {
  max-width: 1200px;
  margin: 0 auto;
}

.pricing-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px;
  max-width: 800px;
  margin: 0 auto;
}

.pricing-card {
  background: #FFFFFF;
  border-radius: 0.8rem;
  padding: 40px 32px;
  border: 2px solid #DDE0E5;
  position: relative;
  transition: transform 300ms;
  display: flex;
  flex-direction: column;
}
.pricing-card:hover {
  transform: translateY(-4px);
}
.pricing-card.featured {
  border-color: var(--lp-accent-strong);
  box-shadow: 0 8px 40px rgba(var(--lp-accent-rgb), 0.15);
}
.pricing-card h3 {
  font-size: 22px;
  margin-bottom: 4px;
}

.pricing-badge {
  position: absolute;
  top: -12px;
  left: 50%;
  transform: translateX(-50%);
  background: var(--lp-accent-strong);
  color: #FFFFFF;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  padding: 4px 16px;
  border-radius: 100px;
}

.pricing-note {
  font-size: 1rem;
  color: #5f6d8a;
  line-height: 1.65;
  border-left: 3px solid #278BFF;
  padding-left: 20px;
}
.pricing-note a {
  color: #278BFF;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.pricing-note {
  margin: 32px auto 0;
  max-width: 560px;
  border-left-color: var(--lp-accent);
}
.pricing-note a {
  color: var(--lp-accent-strong);
}

.pricing-desc {
  font-size: 14px;
  color: #949FB6;
  margin-bottom: 20px;
}

.pricing-price {
  font-size: 40px;
  font-weight: 700;
  color: #0B1426;
  margin-bottom: 4px;
}
.pricing-price span {
  font-size: 16px;
  font-weight: 400;
  color: #949FB6;
}

.pricing-trial {
  font-size: 13px;
  color: var(--lp-accent-strong);
  font-weight: 500;
  margin-bottom: 24px;
  min-height: 20px;
}

.pricing-features {
  list-style: none;
  margin-bottom: 32px;
}
.pricing-features li {
  font-size: 14px;
  color: #424E66;
  padding: 8px 0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.04);
  display: flex;
  align-items: flex-start;
  gap: 10px;
  line-height: 1.5;
}
.pricing-features li svg {
  flex-shrink: 0;
  margin-top: 2px;
}

.btn-pricing {
  width: 100%;
  padding: 14px;
  border-radius: 100px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  font-family: inherit;
  transition: all 300ms;
  text-align: center;
  display: block;
  text-decoration: none;
  margin-top: auto;
}
.btn-pricing.outline {
  background: transparent;
  border: 2px solid var(--lp-accent);
  color: var(--lp-accent-strong);
}
.btn-pricing.outline:hover {
  background: var(--lp-accent-tint);
}
.btn-pricing.filled {
  background: var(--lp-accent-strong);
  color: #FFFFFF;
  border: none;
  box-shadow: 0 4px 20px rgba(var(--lp-accent-rgb), 0.3);
}
.btn-pricing.filled:hover {
  background: var(--lp-accent-strong);
  transform: translateY(-1px);
}

.security-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-bottom: 32px;
}

.security-card {
  background: #FFFFFF;
  border-radius: 0.75rem;
  padding: 32px 24px;
  border: 1px solid #DDE0E5;
  text-align: center;
}
.security-card h3 {
  font-size: 1rem;
  line-height: 1.4;
  font-weight: 600;
  margin-bottom: 6px;
}
.security-card p {
  font-size: 13px;
  color: #949FB6;
  line-height: 1.6;
}

.security-icon {
  width: 52px;
  height: 52px;
  background: var(--lp-accent-tint);
  border-radius: 50%;
  margin: 0 auto 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--lp-accent-strong);
}
.security-icon svg {
  width: 24px;
  height: 24px;
}

.security-link {
  text-align: center;
  font-size: 14px;
  color: var(--lp-accent-strong);
  font-weight: 500;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
}

.mfa-demo-wrapper {
  display: flex;
  justify-content: center;
}

.mfa-demo-card {
  background: #FFFFFF;
  border: 1px solid #DDE0E5;
  border-radius: 0.75rem;
  padding: 28px 32px;
  max-width: 460px;
  width: 100%;
  text-align: center;
  box-shadow: 0 2px 16px rgba(0, 0, 0, 0.05);
}

.mfa-demo-label {
  font-size: 14px;
  color: #5F6D8A;
  line-height: 1.55;
  margin-bottom: 20px;
}

.mfa-otp-display {
  display: flex;
  gap: 10px;
  justify-content: center;
  border: 1.5px solid #DDE0E5;
  border-radius: 10px;
  padding: 18px 24px;
}

.mfa-otp-digit {
  font-size: 26px;
  font-weight: 400;
  color: #BDC4D3;
  font-variant-numeric: tabular-nums;
  letter-spacing: 0.06em;
  min-width: 22px;
  text-align: center;
  display: inline-block;
  transition: color 0.25s ease;
}
.mfa-otp-digit.is-settled {
  color: #424E66;
}

.steps-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
  position: relative;
}
.steps-grid::before {
  content: "";
  position: absolute;
  top: 40px;
  left: calc(16.66% + 16px);
  right: calc(16.66% + 16px);
  height: 2px;
  background: var(--lp-accent-line);
}

.step-card {
  text-align: center;
  position: relative;
}

.step-number {
  width: 56px;
  height: 56px;
  background: var(--lp-accent-strong);
  color: #FFFFFF;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  font-weight: 700;
  margin: 0 auto 20px;
  position: relative;
  z-index: 1;
  box-shadow: 0 4px 16px rgba(var(--lp-accent-rgb), 0.3);
}

.step-card h3 {
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 8px;
}
.step-card p {
  font-size: 14px;
  color: #949FB6;
  line-height: 1.6;
  max-width: 260px;
  margin: 0 auto;
}

.testimonials-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}

.testimonial-card {
  background: #FFFFFF;
  border-radius: 0.75rem;
  padding: 32px 28px;
  border: 1px solid #DDE0E5;
}

.testimonial-quote {
  font-size: 15px;
  color: #424E66;
  line-height: 1.65;
  margin-bottom: 20px;
  font-style: italic;
}
.testimonial-quote::before {
  content: "„";
  font-size: 48px;
  color: var(--lp-accent-line);
  line-height: 0;
  position: relative;
  margin-right: 2px;
}

.testimonial-author {
  display: flex;
  align-items: center;
  gap: 12px;
}

.testimonial-avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: var(--lp-accent-tint);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  font-weight: 600;
  color: var(--lp-accent-strong);
}

.testimonial-name {
  font-size: 14px;
  font-weight: 600;
  color: #232B3C;
}

.testimonial-role {
  font-size: 12px;
  color: #949FB6;
}

.faq-list {
  max-width: 720px;
  margin: 0 auto;
}

.faq-item {
  border-bottom: 1px solid #DDE0E5;
}

.faq-question {
  width: 100%;
  background: none;
  border: none;
  padding: 20px 0;
  font-size: 16px;
  font-weight: 600;
  color: #232B3C;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-family: inherit;
  text-align: left;
  transition: color 150ms;
}
.faq-question:hover {
  color: var(--lp-accent-strong);
}

.faq-chevron {
  transition: transform 300ms;
  flex-shrink: 0;
  margin-left: 16px;
}

.faq-item.open .faq-chevron {
  transform: rotate(180deg);
}

.faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.35s ease, padding 0.35s ease;
}
.faq-answer p {
  font-size: 14px;
  color: #5F6D8A;
  line-height: 1.65;
}

.faq-item.open .faq-answer {
  max-height: 200px;
  padding-bottom: 20px;
}

.final-cta {
  background: linear-gradient(135deg, var(--lp-accent) 0%, var(--lp-accent-strong) 100%);
  border-radius: 0.8rem;
  padding: 80px 48px;
  text-align: center;
  margin: 0 48px;
}
.final-cta h2 {
  color: #FFFFFF;
  font-size: 36px;
  margin-bottom: 12px;
}
.final-cta p {
  color: rgba(255, 255, 255, 0.8);
  font-size: 17px;
  line-height: 1.25;
  margin-bottom: 32px;
}

.btn-white {
  background: #FFFFFF;
  color: var(--lp-accent-strong);
  border: none;
  padding: 16px 40px;
  border-radius: 100px;
  font-size: 17px;
  font-weight: 600;
  cursor: pointer;
  font-family: inherit;
  transition: all 300ms;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
  text-decoration: none;
  display: inline-block;
}
.btn-white:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 28px rgba(0, 0, 0, 0.2);
  color: var(--lp-accent-strong);
}

.final-micro {
  margin-top: 12px;
  font-size: 13px;
  color: rgba(255, 255, 255, 0.6);
}

.seo-content {
  max-width: 720px;
  margin: 0 auto;
}
.seo-content h2 {
  font-size: 1.0625rem;
  font-weight: 600;
  color: #232B3C;
  margin: 2rem 0 0.4rem;
  line-height: 1.35;
}
.seo-content h2:first-child {
  margin-top: 0;
}
.seo-content p,
.seo-content ul,
.seo-content ol {
  font-size: 0.875rem;
  color: #5F6D8A;
  line-height: 1.65;
  margin: 0 0 0.25rem;
}
.seo-content ul {
  padding-left: 1.25rem;
}
.seo-content ul li {
  margin-bottom: 0.25rem;
  list-style: disc;
}

.founder-card {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  gap: 40px;
  background: #FFFFFF;
  border: 1px solid #DDE0E5;
  border-radius: 1rem;
  padding: 1rem 1.5rem;
}
@media screen and (max-width: 655px) {
  .founder-card {
    flex-direction: column;
    padding: 28px 24px;
    gap: 24px;
  }
}
.founder-card__photo {
  width: 100px;
  height: 100px;
  border-radius: 50%;
  object-fit: cover;
  object-position: center top;
  flex-shrink: 0;
  border: 2px solid #F0F2F5;
}
.founder-card__body {
  flex: 1;
}
.founder-card__quote {
  font-size: 1rem;
  color: #424E66;
  line-height: 1.65;
  margin: 0 0 14px;
  font-style: italic;
}
.founder-card__quote::before {
  content: "“";
  color: #424E66;
  font-size: 1.4em;
  line-height: 0;
  vertical-align: -0.25em;
  margin-right: 2px;
}
.founder-card__quote::after {
  content: "”";
  color: #424E66;
  font-size: 1.4em;
  line-height: 0;
  vertical-align: -0.25em;
  margin-left: 2px;
}
.founder-card__meta {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}
.founder-card__name {
  font-size: 0.875rem;
  font-weight: 700;
  color: #0B1426;
}
.founder-card__role {
  font-size: 0.8125rem;
  color: #949FB6;
}
.founder-card__link {
  font-size: 0.8125rem;
  font-weight: 500;
  color: var(--lp-accent-strong);
  text-decoration: none;
  margin-left: auto;
  white-space: nowrap;
}
.founder-card__link:hover {
  text-decoration: underline;
}
@media screen and (max-width: 655px) {
  .founder-card__link {
    margin-left: 0;
  }
}

.founder-card-wrap {
  max-width: 760px;
  padding: 2rem 20px 0.5rem;
}

.press-section {
  max-width: 1200px;
  margin: 0 auto;
  padding: 4rem 1.5rem 2.5rem;
  text-align: center;
}
@media screen and (max-width: 655px) {
  .press-section {
    padding: 4rem 1rem 1.5rem;
  }
}

.press-label {
  font-size: 0.6875rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #BDC4D3;
  margin-bottom: 1.5rem;
}

.press-marquee-outer {
  overflow: hidden;
  mask-image: linear-gradient(to right, transparent 0%, black 12%, black 88%, transparent 100%);
  -webkit-mask-image: linear-gradient(to right, transparent 0%, black 12%, black 88%, transparent 100%);
}

.press-marquee-track {
  display: flex;
  width: max-content;
  animation: press-scroll 40s linear infinite;
}
.press-marquee-track:hover {
  animation-play-state: paused;
}

.press-marquee-group {
  display: flex;
  flex-shrink: 0;
}

@keyframes press-scroll {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}
.press-logo-link {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 56px;
  flex-shrink: 0;
  opacity: 0.55;
  transition: opacity 0.2s ease, filter 0.2s ease;
  filter: grayscale(1);
}
.press-logo-link:hover {
  opacity: 1;
  filter: grayscale(0);
}
.press-logo-link img {
  height: 36px;
  width: auto;
  display: block;
}

.lp-footer {
  margin: 0 auto 0;
  padding: 48px 48px 32px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  border-top: 1px solid #DDE0E5;
  gap: 48px;
  flex-wrap: wrap;
}

.footer-logo {
  font-weight: 600;
  font-size: 18px;
  color: var(--lp-accent-strong);
  margin-bottom: 6px;
}

.footer-tagline {
  font-size: 13px;
  color: #949FB6;
  margin-bottom: 12px;
}

.footer-disclaimer {
  font-size: 11px;
  color: #949FB6;
  max-width: 320px;
  line-height: 1.5;
}

.footer-links {
  display: flex;
  gap: 48px;
  flex-wrap: wrap;
}

.footer-col h4 {
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: #949FB6;
  margin-bottom: 12px;
}
.footer-col a {
  display: block;
  font-size: 14px;
  color: #5F6D8A;
  text-decoration: none;
  margin-bottom: 8px;
  transition: color 150ms;
}
.footer-col a:hover {
  color: var(--lp-accent-strong);
}

.lp-footer-bottom {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 48px 32px;
  font-size: 12px;
  color: #949FB6;
}

.lp-divider {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 48px;
}
.lp-divider hr {
  border: none;
  border-top: 1px solid #DDE0E5;
}

.lp-feature-strip {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 56px;
  align-items: center;
  height: 70vh;
  min-height: 480px;
}
.lp-feature-strip:last-child {
  border-bottom: none;
}

.lp-feature-strip__label {
  font-size: 11px;
  font-weight: 600;
  color: var(--lp-accent-strong);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 10px;
}

.lp-feature-strip__title {
  font-size: 1.3rem;
  font-weight: 600;
  color: #0B1426;
  line-height: 1.3;
  margin-bottom: 10px;
}

.lp-feature-strip__desc {
  font-size: 0.9375rem;
  color: #5F6D8A;
  line-height: 1.65;
}

.lp-feature-widget {
  border: 1px solid #DDE0E5;
  border-radius: 0.8rem;
  padding: 1rem;
  overflow: hidden;
  pointer-events: none;
}
.lp-feature-widget .expandable-item + .expandable-item {
  border-top: 1px solid #F0F2F5;
}
.lp-feature-widget .expandable-item .name-and-date {
  min-width: 0;
}
.lp-feature-widget .expandable-item .name-date-wrapper {
  min-width: 0;
}
@media (max-width: 480px) {
  .lp-feature-widget .expandable-item .name-date-wrapper {
    gap: 0;
  }
  .lp-feature-widget .expandable-item .name-date-wrapper .category-date-wrapper .date,
  .lp-feature-widget .expandable-item .name-date-wrapper .category-date-wrapper .category {
    display: none;
  }
}

.lp-cond-list {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.lp-sanitize-demo {
  display: flex;
  flex-direction: column;
  gap: 10px;
  pointer-events: auto;
}

.lp-sanitize-canvas {
  display: block;
  width: 100%;
  border-radius: 0.5rem;
  border: 1px solid #F0F2F5;
  user-select: none;
  touch-action: none;
}

.sec-lock-scene {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}

.sec-lock {
  position: relative;
  width: 64px;
  perspective: 600px;
  margin-top: 65px;
}

.sec-lock__shackle {
  position: absolute;
  bottom: 100%;
  left: 14px;
  width: 36px;
  height: 65px;
  border: 4px solid #8896b0;
  border-bottom: none;
  border-radius: 18px 18px 0 0;
  transform-origin: 0px 65px;
  transform: rotateY(-180deg);
  will-change: transform, border-color;
}

.sec-lock__body {
  display: block;
  width: 100%;
  height: auto;
  position: relative;
  z-index: 1;
}

.sec-lock__status {
  font-size: 13px;
  font-weight: 600;
  color: #1a2744;
  opacity: 0;
  transition: opacity 0.4s ease;
  letter-spacing: 0.02em;
}

.sec-enc-widget {
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 100%;
}

.sec-enc-field {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.sec-enc-label {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #949FB6;
}

.sec-enc-input {
  border: 1.5px solid #DDE0E5;
  border-radius: 8px;
  padding: 10px 13px;
  font-size: 14px;
  font-family: "Courier New", Courier, monospace;
  color: #232B3C;
  background: #FFFFFF;
  min-height: 42px;
  display: flex;
  align-items: center;
}
.sec-enc-input--badges {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  padding: 8px 10px;
}

.sec-enc-badge {
  background: var(--lp-accent-tint);
  color: var(--lp-accent-strong);
  padding: 3px 10px;
  border-radius: 100px;
  font-size: 12px;
  font-weight: 500;
  font-family: "Courier New", Courier, monospace;
}

@media (max-width: 1180px) {
  .audience-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .problems-grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 1024px) {
  .hero {
    grid-template-columns: 1fr;
    gap: 40px;
    padding: 60px 32px 40px;
  }
  .hero-text h1 {
    font-size: 38px;
  }
  .hero-calc {
    padding: 0 32px 60px;
  }
  .hero-calc-inner {
    padding: 32px;
  }
  .hero-calc-header {
    flex-direction: column;
    gap: 12px;
  }
  .lp-section.hero {
    padding-top: 0;
  }
  .lp-section {
    padding: 60px 32px;
  }
  .feature-block {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  .feature-block.reverse .feature-text {
    order: 1;
  }
  .feature-block.reverse .feature-visual {
    order: 2;
  }
  .pricing-section {
    margin: 0 32px;
    padding: 48px 32px;
  }
  .pricing-grid {
    grid-template-columns: 1fr;
    max-width: 420px;
  }
  .final-cta {
    margin: 0 32px;
    padding: 60px 32px;
  }
  .lp-divider {
    padding: 0 32px;
  }
  .trust-bar {
    padding: 16px 32px;
    gap: 24px;
  }
  .steps-grid::before {
    display: none;
  }
  .lp-footer {
    padding: 48px 32px 32px;
  }
  .lp-footer-bottom {
    padding: 0 32px 32px;
  }
}
@media (max-width: 768px) {
  .hero {
    padding: 40px 20px 32px;
    gap: 32px;
  }
  .hero-text h1 {
    font-size: 30px;
  }
  .hero-text p {
    font-size: 16px;
  }
  .hero-micro {
    flex-direction: column;
    gap: 6px;
  }
  .btn-hero {
    width: 100%;
    text-align: center;
    padding: 14px 32px;
    font-size: 16px;
  }
  .hero-calc {
    padding: 0 20px 48px;
  }
  .hero-calc-inner {
    padding: 24px 20px;
  }
  .hero-calc-title {
    font-size: 20px;
  }
  .calc-form {
    flex-direction: column;
    align-items: stretch;
  }
  .calc-go {
    width: 100%;
  }
  .calc-stats {
    flex-direction: column;
  }
  .calc-cta-bar {
    flex-direction: column;
    text-align: center;
    gap: 16px;
  }
  .calc-cta-btn {
    width: 100%;
  }
  .trust-bar {
    flex-direction: column;
    gap: 12px;
    align-items: center;
    padding: 20px;
  }
  .lp-section.hero {
    padding-top: 0;
  }
  .lp-section {
    padding: 48px 20px;
  }
  .section-title {
    font-size: 26px;
  }
  .section-subtitle {
    font-size: 15px;
  }
  .problems-grid {
    grid-template-columns: 1fr;
  }
  .feature-text h2 {
    font-size: 24px;
  }
  .value-mockup {
    max-width: 100%;
  }
  .security-grid {
    grid-template-columns: 1fr;
  }
  .steps-grid {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .testimonials-grid {
    grid-template-columns: 1fr;
  }
  .pricing-section {
    margin: 0 20px;
    padding: 40px 20px;
  }
  .final-cta {
    margin: 0 20px;
    padding: 48px 20px;
  }
  .final-cta h2 {
    font-size: 26px;
  }
  .lp-divider {
    padding: 0 20px;
  }
  .lp-footer {
    padding: 40px 20px 24px;
    flex-direction: column;
    gap: 32px;
  }
  .footer-links {
    gap: 32px;
  }
  .lp-footer-bottom {
    padding: 0 20px 24px;
  }
  .lp-feature-strip {
    grid-template-columns: 1fr;
    gap: 24px;
    height: auto;
    padding: 48px 0;
  }
  .lp-answer-row {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }
  .lp-schema-cond-grid {
    grid-template-columns: 1fr;
  }
  .audience-grid {
    grid-template-columns: 1fr;
  }
  .problem-quote {
    font-size: 1rem;
  }
  .lp-answer-row__problem {
    flex: unset;
  }
  .lp-answer-row__arrow {
    display: none;
  }
  .lp-answer-row__solution {
    flex: unset;
  }
}
@media (max-width: 480px) {
  .hero-text h1 {
    font-size: 26px;
  }
  .calc-sex-btn {
    padding: 10px 16px;
    font-size: 13px;
  }
  .pricing-card {
    padding: 32px 24px;
  }
  .pricing-price {
    font-size: 32px;
  }
}
.lp-graph-demo {
  width: 100%;
}
.lp-graph-demo .parameter-card {
  border: 0;
  padding: 0;
  background: transparent;
}

.lp-tl-wrap {
  position: relative;
  height: 110px;
}

.lp-tl-track {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  height: 2px;
  background: #DDE0E5;
  transform: translateY(-50%);
}

.lp-tl-pt {
  position: absolute;
  display: flex;
  align-items: center;
  transform: translateX(-50%);
}
.lp-tl-pt--above {
  flex-direction: column-reverse;
  bottom: calc(50% - 4px);
}
.lp-tl-pt--below {
  flex-direction: column;
  top: calc(50% - 4px);
}

.lp-tl-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #5F6D8A;
  box-shadow: 0 0 0 2px #FFFFFF;
  flex-shrink: 0;
}

.lp-tl-stem {
  width: 1.5px;
  height: 22px;
  background: #DDE0E5;
  flex-shrink: 0;
}

.lp-tl-labels {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 3px;
  padding: 4px 0;
}

.lp-tl-date {
  font-size: 0.5625rem;
  font-weight: 700;
  color: var(--lp-accent-strong);
  line-height: 1;
  white-space: nowrap;
}

.lp-tl-name {
  font-size: 0.5rem;
  color: #5F6D8A;
  line-height: 1;
  white-space: nowrap;
}

.lp-campaign-band__inner {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  gap: 2rem;
  padding: 2rem;
  border: 1px solid #F7C2D6;
  border-radius: 0.8rem;
  background: #FCE7EF;
}
.lp-campaign-band__text {
  flex: 1 1 0;
  min-width: 0;
}
.lp-campaign-band__eyebrow {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #f65494;
  margin-bottom: 0.5rem;
}
.lp-campaign-band__title {
  font-size: 1.5rem;
  line-height: 1.25;
  margin: 0 0 0.5rem;
  color: #0B1426;
}
.lp-campaign-band__sub {
  margin: 0;
  color: #7A5566;
  line-height: 1.5;
}
.lp-campaign-band__aside {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  max-width: 17rem;
  padding-left: 2rem;
  border-left: 1px solid #F7C2D6;
  text-align: center;
}
@media screen and (max-width: 655px) {
  .lp-campaign-band__inner {
    flex-direction: column;
    gap: 1.5rem;
    padding: 1.5rem;
  }
  .lp-campaign-band__aside {
    max-width: none;
    padding-left: 0;
    padding-top: 1.5rem;
    border-left: 0;
    border-top: 1px solid #F7C2D6;
  }
}
.lp-campaign-band__count {
  margin: 0;
  font-size: 2.75rem;
  font-weight: 700;
  line-height: 1;
  color: #f65494;
  font-variant-numeric: tabular-nums;
}
.lp-campaign-band__count-tile {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  min-width: 7rem;
  padding: 1rem 1.5rem;
  border-radius: 0.75rem;
  background: #FFFFFF;
}
.lp-campaign-band__count-unit {
  margin-top: 0.25rem;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #7A5566;
}
.lp-campaign-band__kicker {
  margin: 0 0 0.75rem;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #7A5566;
}
.lp-campaign-band__count-label {
  margin: 0 0 0.75rem;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #7A5566;
}
.lp-campaign-band__cta {
  display: inline-block;
  margin-top: 1.25rem;
  padding: 12px 28px;
  border-radius: 100px;
  background: #f65494;
  color: #FFFFFF;
  font-weight: 600;
  text-decoration: none;
}
.lp-campaign-band__cta:hover {
  filter: brightness(0.92);
}

.lp-campaign-hero {
  grid-column: 1/-1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

.lp-campaign-voices {
  min-width: 0;
}
.lp-campaign-voices__head {
  margin-bottom: 1rem;
}
.lp-campaign-voices__title {
  font-size: 1.25rem;
  line-height: 1.3;
  margin: 0 0 0.25rem;
  color: #0B1426;
}
.lp-campaign-voices__sub {
  margin: 0;
  max-width: 40rem;
  color: #5F6D8A;
  line-height: 1.5;
}
.lp-campaign-voices__scroller {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  overscroll-behavior-x: contain;
  padding-bottom: 0.5rem;
}
.lp-campaign-voices__phone {
  position: relative;
  flex: 0 0 auto;
  width: 13rem;
  aspect-ratio: 9/16;
  margin: 0;
  border-radius: 0.8rem;
  overflow: hidden;
  scroll-snap-align: start;
  background: #0B1426;
}
.lp-campaign-voices__phone--add {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  border: 1px dashed #F7C2D6;
  background: transparent;
  color: #7A5566;
  font-size: 0.875rem;
  font-weight: 600;
  text-decoration: none;
  transition: border-color 200ms, background-color 200ms;
}
.lp-campaign-voices__phone--add:hover {
  border-color: #f65494;
  background: #FCE7EF;
}
.lp-campaign-voices__video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.lp-campaign-voices__icon {
  width: 2rem;
  height: 2rem;
  color: #f65494;
}
.lp-campaign-voices__item {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  width: 13rem;
  margin: 0;
  scroll-snap-align: start;
}
.lp-campaign-voices__author {
  position: absolute;
  top: 0.5rem;
  left: 0.5rem;
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  max-width: calc(100% - 1rem);
  padding: 4px 10px 4px 8px;
  border-radius: 100px;
  background: rgba(11, 20, 38, 0.55);
  backdrop-filter: blur(6px);
  color: #FFFFFF;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  white-space: nowrap;
}
.lp-campaign-voices__author:hover {
  background: rgba(11, 20, 38, 0.75);
}
.lp-campaign-voices__author-icon {
  flex: none;
  width: 14px;
  height: 14px;
}
.lp-campaign-voices__caption {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.lp-campaign-voices__caption-title {
  margin: 0;
  font-size: 0.9375rem;
  font-weight: 600;
  line-height: 1.35;
  color: #0B1426;
}
.lp-campaign-voices__more {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  align-self: flex-start;
  color: #f65494;
  font-size: 0.875rem;
  font-weight: 600;
  text-decoration: none;
}
.lp-campaign-voices__more:hover {
  color: #F42D7C;
}
.lp-campaign-voices__more-icon {
  width: 14px;
  height: 14px;
  transition: transform 200ms;
}
.lp-campaign-voices__more:hover .lp-campaign-voices__more-icon {
  transform: translateX(2px);
}
@media screen and (max-width: 655px) {
  .lp-campaign-voices__phone, .lp-campaign-voices__item {
    width: 11rem;
  }
}

.lp-countdown {
  display: flex;
  gap: 0.5rem;
  justify-content: center;
  margin-bottom: 1rem;
}
.lp-countdown__cell {
  display: flex;
  flex-direction: column;
  align-items: center;
  min-width: 3.25rem;
  padding: 0.5rem 0.25rem;
  border-radius: 0.5rem;
  background: #FFFFFF;
}
.lp-countdown__value {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
  color: #f65494;
  font-variant-numeric: tabular-nums;
}
.lp-countdown__unit {
  margin-top: 0.125rem;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #7A5566;
}

.lp-countdown--started .lp-countdown__value {
  opacity: 0.5;
}

.summary-section:not(:first-child) {
  border-width: 1px 0 0 0;
  border-style: solid;
  border-color: #F0F2F5;
  padding-top: 1.5rem;
}
.summary-section__header {
  display: flex;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 1rem;
}
.summary-section__header a {
  font-size: 0.9rem;
  display: flex;
  gap: 0.25rem;
  align-items: center;
}

.summary-scroll-grid {
  display: grid;
  grid-template-rows: repeat(2, auto);
  grid-auto-flow: column;
  grid-auto-columns: 100%;
  gap: 0.5rem;
  overflow-x: scroll;
  scrollbar-width: none;
  scroll-snap-type: x mandatory;
}
.summary-scroll-grid::-webkit-scrollbar {
  display: none;
}
@media (min-width: 480px) {
  .summary-scroll-grid {
    grid-auto-columns: calc(50% - 0.25rem);
  }
}
@media (min-width: 655px) {
  .summary-scroll-grid {
    grid-auto-columns: 250px;
    scroll-snap-type: x proximity;
  }
}

.card-pager-dots {
  display: flex;
  justify-content: center;
  gap: 6px;
  margin: 0.5rem 0 1rem;
}
.card-pager-dots.hidden {
  display: none;
}

.card-pager-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #DDE0E5;
  border: none;
  padding: 0;
  cursor: pointer;
  transition: background 0.15s;
}
.card-pager-dot--active {
  background: #278BFF;
}

.patient-data-cards {
  width: 100%;
  align-self: flex-start;
}

.type-count-cards {
  margin-bottom: 0.25rem;
}

.settings-profile-section {
  width: 100%;
  align-self: flex-start;
}

.patient-data-card {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 0.875rem 1rem;
  background: #FFFFFF;
  border: 1px solid #DDE0E5;
  border-radius: 0.5rem;
  scroll-snap-align: start;
  flex: 0 0 100%;
}
@media (min-width: 480px) {
  .patient-data-card {
    flex: 0 0 calc(50% - 0.25rem);
  }
}
@media (min-width: 655px) {
  .patient-data-card {
    flex: 0 0 calc(33.333% - 0.5rem * 2 / 3);
  }
}
@media (min-width: 840px) {
  .patient-data-card {
    flex: 0 0 250px;
  }
}
.patient-data-card__label {
  font-size: 0.875rem;
  color: #5F6D8A;
}
.patient-data-card__value {
  display: flex;
  align-items: center;
  height: 1.25rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: #0B1426;
  white-space: nowrap;
}
.patient-data-card--missing {
  border-style: dashed;
  border-color: #CED4E1;
  text-decoration: none;
  cursor: pointer;
  transition: border-color 150ms ease, background-color 150ms ease;
}
.patient-data-card--missing:hover {
  border-color: #278BFF;
  background: #FBFCFF;
}
.patient-data-card__cta {
  display: flex;
  align-items: center;
  height: 1.25rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: #278BFF;
  white-space: nowrap;
}

.summary-list-frame {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  padding: 0.75rem 1rem;
  border: 1px solid #DDE0E5;
  border-radius: 0.75rem;
  background: transparent;
}
.summary-list-frame .mini-tabs {
  margin: 0 -1rem 0.25rem;
  padding: 0 1rem 0.5rem;
}
.summary-list-frame__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
}
.summary-list-frame li:not(:last-child) {
  border-bottom: 1px solid #F0F2F5;
}
.summary-list-frame__row {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  padding: 0.5rem 0;
  min-width: 0;
  color: inherit;
  text-decoration: none;
  border-radius: 0.375rem;
  transition: background-color 150ms ease, color 150ms ease;
}
.summary-list-frame__row:hover {
  background: #FBFCFF;
  margin: 0 -0.5rem;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}
.summary-list-frame__row:hover .summary-list-frame__chevron {
  color: #278BFF;
  transform: translateX(2px);
}
.summary-list-frame__chevron {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  color: #CED4E1;
  transition: color 150ms ease, transform 150ms ease;
}
.summary-list-frame__chevron svg {
  width: 1rem;
  height: 1rem;
  fill: none;
  stroke: currentColor;
}
.summary-list-frame__icon {
  width: 1rem;
  height: 1rem;
  min-width: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #949FB6;
}
.summary-list-frame__icon svg {
  width: 1rem;
  height: 1rem;
  fill: none;
  stroke: currentColor;
}
.summary-list-frame__title {
  flex: 1;
  min-width: 0;
  font-size: 0.875rem;
  font-weight: 500;
  color: #5F6D8A;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.summary-list-frame__meta {
  flex-shrink: 0;
  font-size: 0.8125rem;
  color: #5F6D8A;
  white-space: nowrap;
}
.summary-list-frame__empty {
  margin: 0;
  font-size: 0.875rem;
  color: #949FB6;
}
@media (max-width: 480px) {
  .summary-list-frame__row {
    flex-wrap: wrap;
  }
  .summary-list-frame__meta {
    width: calc(100% - 1rem - 0.625rem);
    padding-left: calc(1rem + 0.625rem);
    white-space: normal;
  }
  .summary-list-frame__chevron {
    order: -1;
    margin-left: auto;
  }
  .summary-list-frame__title {
    order: -2;
  }
  .summary-list-frame__icon {
    order: -3;
  }
}

.raport-graphs {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.raport-graphs > .mini-tabs {
  margin-bottom: 0;
}

.raport-graph-section__empty {
  width: 100%;
  text-align: center;
  font-size: 0.875rem;
  color: #949FB6;
}

.raport-graph-canvases {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  border-radius: 0.75rem;
}
.raport-graph-canvases--empty {
  align-items: center;
  background: #F0F2F5;
}
.raport-graph-canvases {
  gap: 0.75rem;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  padding-bottom: 0.25rem;
  min-height: 280px;
}
.raport-graph-canvases::-webkit-scrollbar {
  display: none;
}

.raport-graph {
  flex-shrink: 0;
  scroll-snap-align: start;
  width: 520px;
  max-width: 100%;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  padding: 0.75rem;
  background: #FFFFFF;
  border: 1px solid #DDE0E5;
  border-radius: 0.75rem;
}
.raport-graph__header {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
}
.raport-graph__label {
  font-size: 0.875rem;
  font-weight: 600;
  color: #232B3C;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.raport-graph__meta {
  min-height: 1.25rem;
}

.prevention-section--inset > .prevention-section__subheader {
  margin-bottom: 1.25rem;
}

.lp-badge {
  font-size: 10px;
  padding: 2px 8px;
  border-radius: 100px;
  font-weight: 500;
  flex-shrink: 0;
  white-space: nowrap;
}
.lp-badge--success {
  background: #E5F5E6;
  color: #29702C;
}
.lp-badge--danger {
  background: #FFF1E6;
  color: #9C4F17;
}
.lp-badge--warning {
  background: #FFF1E6;
  color: #9C4F17;
}
.lp-badge--info {
  background: #E6F1FB;
  color: #0C447C;
}

.blog-page-header .section-title {
  max-width: 640px;
  margin-left: auto;
  margin-right: auto;
}

.blog-clusters {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
}
@media screen and (max-width: 655px) {
  .blog-clusters {
    grid-template-columns: 1fr;
    gap: 16px;
  }
}

.cluster-hub-card {
  display: flex;
  flex-direction: column;
  gap: 12px;
  background: #FFFFFF;
  border: 1px solid #DDE0E5;
  border-radius: 1rem;
  padding: 36px;
  text-decoration: none;
  color: inherit;
  transition: box-shadow 0.2s ease, border-color 0.2s ease;
}
.cluster-hub-card:hover {
  box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
  border-color: #CED4E1;
}
.cluster-hub-card__label {
  font-size: 0.75rem;
  font-weight: 600;
  color: #278BFF;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}
.cluster-hub-card__title {
  font-size: 1.25rem;
  font-weight: 700;
  color: #0B1426;
  margin: 0;
}
.cluster-hub-card__desc {
  font-size: 0.95rem;
  color: #424E66;
  margin: 0;
  line-height: 1.6;
}
.cluster-hub-card__articles {
  list-style: none;
  padding: 0;
  margin: 16px 0 0;
  border-top: 1px solid #DDE0E5;
  padding-top: 14px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.cluster-hub-card__articles li {
  font-size: 0.8125rem;
  color: #5F6D8A;
  line-height: 1.4;
  padding-left: 14px;
  position: relative;
}
.cluster-hub-card__articles li::before {
  content: "–";
  position: absolute;
  left: 0;
  color: #BDC4D3;
}
.cluster-hub-card__articles-more {
  font-size: 0.8125rem;
  color: #278BFF !important;
  padding-left: 0 !important;
  text-align: right;
  margin-top: 2px;
}
.cluster-hub-card__articles-more::before {
  display: none !important;
}

.blog-recent {
  display: flex;
  flex-direction: column;
  gap: 32px;
  margin-bottom: 80px;
}

.related-reading {
  display: flex;
  flex-direction: column;
  gap: 32px;
  margin: 48px auto;
}
.related-reading__title {
  font-size: 1.5rem;
  font-weight: 700;
  color: #0B1426;
  margin: 0;
}

.cluster-articles {
  max-width: 1200px;
  margin: 0 auto;
  padding: 64px 1.5rem;
}
.cluster-articles--top {
  padding-top: 0;
}
.cluster-articles__title {
  font-size: 1.5rem;
  font-weight: 700;
  color: #0B1426;
  margin-bottom: 32px;
}

.blog-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
}
@media screen and (max-width: 655px) {
  .blog-grid {
    grid-template-columns: 1fr;
  }
}

.blog-grid--small {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}
@media screen and (max-width: 655px) {
  .blog-grid--small {
    grid-template-columns: 1fr;
  }
}

.blog-card {
  display: flex;
  flex-direction: column;
  gap: 10px;
  background: #FFFFFF;
  border: 1px solid #DDE0E5;
  border-radius: 1rem;
  padding: 28px;
  text-decoration: none;
  color: inherit;
  transition: box-shadow 0.2s ease, border-color 0.2s ease;
}
.blog-card:hover {
  box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
  border-color: #CED4E1;
}
.blog-card__tag {
  font-size: 0.75rem;
  font-weight: 600;
  color: #278BFF;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}
.blog-card__title {
  font-size: 1.0625rem;
  font-weight: 600;
  color: #0B1426;
  line-height: 1.35;
  margin: 0;
}
.blog-card__excerpt {
  font-size: 0.875rem;
  color: #949FB6;
  line-height: 1.6;
  flex: 1;
  margin: 0;
}
.blog-card__date {
  font-size: 0.75rem;
  color: #BDC4D3;
  margin-top: 4px;
}

.blog-back-nav {
  max-width: 720px;
}
.blog-back-nav .breadcrumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.375rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.blog-back-nav .breadcrumb__item {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  margin: 0;
  font-size: 0.875rem;
  color: #5F6D8A;
}
.blog-back-nav .breadcrumb__item--current {
  color: #0B1426;
  font-weight: 500;
}
.blog-back-nav .breadcrumb__sep {
  color: #BDC4D3;
  user-select: none;
}
.blog-back-nav a {
  color: #949FB6;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  transition: color 0.15s ease;
}
.blog-back-nav a:hover {
  color: #278BFF;
}

.blog-back-nav:has(+ .lp-section) {
  max-width: 1200px;
  padding-left: 3rem;
  padding-right: 3rem;
}

.blog-back-nav + .blog-article {
  padding-top: 1rem;
}

.blog-article {
  max-width: 720px;
  margin: 0 auto;
  padding: 40px 24px 80px;
}
.blog-article__header {
  margin-bottom: 48px;
  padding-bottom: 32px;
  border-bottom: 1px solid #F0F2F5;
}
.blog-article__tag {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #278BFF;
  background: #f1f6ff;
  padding: 4px 12px;
  border-radius: 100px;
  margin-bottom: 16px;
}
.blog-article__title {
  font-size: 2rem;
  font-weight: 700;
  color: #0B1426;
  line-height: 1.22;
  margin: 0 0 14px;
  letter-spacing: -0.3px;
}
.blog-article__meta {
  font-size: 0.8125rem;
  color: #BDC4D3;
  margin: 0 0 20px;
}
.blog-article__intro {
  font-size: 1rem;
  color: #5f6d8a;
  line-height: 1.65;
  border-left: 3px solid #278BFF;
  padding-left: 20px;
}
.blog-article__intro a {
  color: #278BFF;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.blog-article__intro {
  margin: 0;
}
.blog-article__body h2 {
  font-size: 1.375rem;
  font-weight: 700;
  color: #0B1426;
  margin: 48px 0 14px;
  line-height: 1.3;
}
.blog-article__body h2:first-child {
  margin-top: 0;
}
.blog-article__body h3 {
  font-size: 1.125rem;
  font-weight: 600;
  color: #232B3C;
  margin: 28px 0 10px;
}
.blog-article__body h4 {
  font-size: 1rem;
  font-weight: 600;
  color: #232B3C;
  margin: 20px 0 8px;
}
.blog-article__body p {
  font-size: 0.9375rem;
  color: #424E66;
  line-height: 1.65;
  margin-bottom: 16px;
}
.blog-article__body ul,
.blog-article__body ol {
  margin: 0 0 20px;
  padding-left: 24px;
}
.blog-article__body ul li,
.blog-article__body ol li {
  font-size: 0.9375rem;
  color: #424E66;
  line-height: 1.6;
  margin-bottom: 7px;
  list-style: disc;
}
.blog-article__body strong {
  color: #0B1426;
  font-weight: 600;
}
.blog-article__body a {
  color: #278BFF;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.blog-article__body a:hover {
  color: #278BFF;
}

.blog-article--no-bottom {
  padding-bottom: 0;
}

.blog-article--no-top {
  padding-top: 0;
}

.blog-article__section {
  margin-top: 40px;
}

.faq-item {
  border-bottom: 1px solid #F0F2F5;
  padding: 14px 0;
}
.faq-item summary {
  cursor: pointer;
  font-weight: 600;
  font-size: 1rem;
  list-style: none;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
}
.faq-item summary::-webkit-details-marker {
  display: none;
}
.faq-item summary::after {
  content: "+";
  font-size: 1.25rem;
  font-weight: 400;
  flex-shrink: 0;
  color: #BDC4D3;
}
.faq-item[open] summary::after {
  content: "−";
}
.faq-item p {
  margin: 10px 0 4px;
  color: #424E66;
  line-height: 1.6;
  font-size: 0.9375rem;
}
.faq-item p a {
  color: #278BFF;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.faq-item p a:hover {
  color: #278BFF;
}

.blog-table {
  width: 100%;
  border-collapse: collapse;
  margin: 24px 0;
  font-size: 0.875rem;
  overflow-x: auto;
  display: block;
}
.blog-table th {
  background: #FBFCFF;
  color: #424E66;
  font-weight: 600;
  padding: 10px 14px;
  border: 1px solid #DDE0E5;
  text-align: left;
  white-space: nowrap;
}
.blog-table td {
  padding: 10px 14px;
  border: 1px solid #DDE0E5;
  color: #424E66;
  vertical-align: top;
  line-height: 1.5;
}
.blog-table tr:nth-child(even) td {
  background: #FBFCFF;
}

.blog-highlight {
  background: #f1f6ff;
  border: 1px solid #93C5FF;
  border-radius: 0.75rem;
  padding: 16px 20px;
  margin: 24px 0;
  font-size: 0.9375rem;
  color: #232B3C;
  line-height: 1.65;
}

.blog-cta {
  background: linear-gradient(135deg, #278BFF 0%, #278BFF 100%);
  border-radius: 1rem;
  padding: 40px 36px;
  margin-top: 56px;
  text-align: center;
}
.blog-cta__title {
  font-size: 1.375rem;
  font-weight: 700;
  color: #FFFFFF;
  margin: 0 0 10px;
}
.blog-cta__text {
  font-size: 0.9375rem;
  color: rgba(255, 255, 255, 0.85);
  margin: 0 0 24px;
  line-height: 1.6;
}
.blog-cta__disclaimer {
  font-size: 0.75rem;
  color: rgba(255, 255, 255, 0.5);
  margin: 12px 0 0;
}

.blog-disclaimer {
  margin-top: 48px;
  padding-top: 20px;
  border-top: 1px solid #DDE0E5;
  font-size: 0.8125rem;
  color: #BDC4D3;
  font-style: italic;
}

.blog-seo {
  max-width: 720px;
  padding: 0 1.5rem 4rem;
  margin: 3.5rem auto 0 auto;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
@media screen and (max-width: 655px) {
  .blog-seo {
    padding-bottom: 2.5rem;
  }
}
.blog-seo h2 {
  font-size: 1.375rem;
  font-weight: 600;
  color: #0B1426;
  margin-bottom: 1.25rem;
  line-height: 1.3;
}
.blog-seo p {
  color: #BDC4D3;
  line-height: 1.5;
  margin-top: 1rem;
}
.blog-seo p a {
  color: #278BFF;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.blog-seo p a:hover {
  color: #278BFF;
}

.param-norms-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.9rem;
  margin: 0 0 1rem;
  border-radius: 0.75rem;
  overflow: hidden;
  border: 1px solid #DDE0E5;
}
.param-norms-table thead {
  background: #f4f6f8;
}
.param-norms-table th {
  text-align: left;
  padding: 10px 16px;
  font-size: 0.75rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #949FB6;
  border-bottom: 1px solid #DDE0E5;
}
.param-norms-table td {
  padding: 12px 16px;
  color: #232B3C;
  font-size: 0.9rem;
  border-bottom: 1px solid #F0F2F5;
}
.param-norms-table td strong {
  font-weight: 600;
}
.param-norms-table tbody tr:last-child td {
  border-bottom: none;
}

.param-disclaimer-inline {
  font-size: 0.8rem;
  color: #BDC4D3;
  line-height: 1.55;
  margin-top: 0;
}

.param-related-list {
  list-style: none;
  padding: 0;
  margin: 0.5rem 0 0;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.param-related-list li a {
  display: inline-block;
  font-size: 0.875rem;
  font-weight: 500;
  color: #278BFF;
  background: #f1f6ff;
  border: 1px solid #D6E6FF;
  padding: 5px 14px;
  border-radius: 100px;
  text-decoration: none;
  transition: background 0.15s, color 0.15s, border-color 0.15s;
}
.param-related-list li a:hover {
  background: #278BFF;
  color: #FFFFFF;
  border-color: #278BFF;
}

.param-all-list {
  margin-top: 1rem;
}
.param-all-list li a {
  border-radius: 0.75rem;
  padding: 6px 16px;
}

.param-index-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 16px;
  margin: 0 0 48px;
}

.param-index-card {
  display: block;
  padding: 20px;
  border: 1px solid #DDE0E5;
  border-radius: 1rem;
  text-decoration: none;
  background: #FFFFFF;
  transition: border-color 0.15s, box-shadow 0.15s;
}
.param-index-card:hover {
  border-color: #278BFF;
  box-shadow: 0 2px 12px rgba(39, 139, 255, 0.08);
}
.param-index-card__category {
  font-size: 0.7rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.07em;
  color: #278BFF;
  margin-bottom: 8px;
}
.param-index-card__name {
  font-size: 1.25rem;
  font-weight: 700;
  color: #0B1426;
  margin: 0 0 2px;
}
.param-index-card__full {
  font-size: 0.8125rem;
  color: #949FB6;
  margin: 0 0 12px;
}
.param-index-card__norm {
  font-size: 0.8125rem;
  color: #424E66;
  margin: 0;
  padding-top: 12px;
  border-top: 1px solid #F0F2F5;
}

.about-slider {
  position: relative;
  margin: 32px 0;
  border-radius: 1rem;
  overflow: hidden;
}
.about-slider__track {
  display: flex;
  transition: transform 0.4s ease;
}
.about-slider__slide {
  min-width: 100%;
  width: 100%;
  object-fit: cover;
  max-height: 420px;
  border-radius: 1rem;
  display: block;
}
.about-slider__arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: #F0F2F5;
  border: none;
  border-radius: 50%;
  width: 35px;
  height: 35px;
  font-size: 1.1rem;
  cursor: pointer;
  z-index: 2;
  transition: background 0.15s;
  display: flex;
  align-items: center;
  justify-content: center;
}
.about-slider__arrow:hover {
  background: #FFFFFF;
}
.about-slider__arrow--prev {
  left: 12px;
}
.about-slider__arrow--next {
  right: 12px;
}
.about-slider__dots {
  position: absolute;
  bottom: 12px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 6px;
}
.about-slider__dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.5);
  border: none;
  cursor: pointer;
  padding: 0;
  transition: background 0.15s;
}
.about-slider__dot--active {
  background: #FFFFFF;
}

.about-author {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  padding: 28px;
  border: 1px solid #DDE0E5;
  border-radius: 1rem;
  background: #FFFFFF;
}
.about-author__photo {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}
.about-author__info {
  flex: 1;
}
.about-author__name {
  font-weight: 700;
  color: #0B1426;
  font-size: 1.0625rem;
  margin: 0 0 4px;
}
.about-author__role {
  font-size: 0.8125rem;
  color: #949FB6;
  margin: 0 0 14px;
}
.about-author__socials {
  display: flex;
  gap: 14px;
}
.about-author__socials a {
  font-size: 0.8125rem;
  font-weight: 500;
  color: #278BFF;
  text-decoration: none;
}
.about-author__socials a:hover {
  color: #278BFF;
  text-decoration: underline;
}

.hub-steps {
  display: flex;
  flex-direction: column;
  gap: 20px;
  max-width: 800px;
  margin: 64px auto 0;
  padding: 0 1.5rem;
}

.hub-step {
  background: #FBFCFF;
  border: 1px solid #DDE0E5;
  border-radius: 20px;
  padding: 36px 40px;
}
.hub-step__number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #278BFF;
  color: #FFFFFF;
  font-size: 0.75rem;
  font-weight: 700;
  margin-bottom: 16px;
}
.hub-step__content p {
  font-size: 0.9375rem;
  color: #424E66;
  line-height: 1.65;
  margin-bottom: 12px;
}
.hub-step__content p:last-child {
  margin-bottom: 0;
}
.hub-step__content ul,
.hub-step__content ol {
  margin: 8px 0 16px;
  padding-left: 20px;
}
.hub-step__content ul li,
.hub-step__content ol li {
  font-size: 0.9375rem;
  color: #424E66;
  line-height: 1.65;
  margin-bottom: 8px;
  list-style: disc;
}
.hub-step__content ol li {
  list-style: decimal;
}
.hub-step__content a {
  color: #278BFF;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.hub-step__content a:hover {
  color: #278BFF;
}
.hub-step__title {
  font-size: 1.1875rem;
  font-weight: 700;
  color: #0B1426;
  margin: 0 0 16px;
  line-height: 1.3;
}

.hub-cta {
  max-width: 800px;
  margin: 64px auto 0;
  padding: 56px 48px;
  text-align: center;
  background: linear-gradient(135deg, #278BFF 0%, #278BFF 100%);
  border-radius: 20px;
}
.hub-cta__title {
  font-size: 1.625rem;
  font-weight: 700;
  color: #FFFFFF;
  margin: 0 0 12px;
  line-height: 1.25;
}
.hub-cta__subtitle {
  font-size: 1rem;
  color: rgba(255, 255, 255, 0.85);
  margin: 0 0 28px;
  line-height: 1.6;
  max-width: 520px;
  margin-left: auto;
  margin-right: auto;
}
.hub-cta__micro {
  font-size: 0.75rem;
  color: rgba(255, 255, 255, 0.5);
  margin: 14px 0 0;
}

.hub-faq {
  max-width: 720px;
  margin: 64px auto 0;
  padding: 0 1.5rem 80px;
}
.hub-faq__title {
  font-size: 1.375rem;
  font-weight: 700;
  color: #0B1426;
  margin-bottom: 28px;
}

.founder-note {
  background: #FBFCFF;
  border: 1px solid #DDE0E5;
  border-left: 3px solid #278BFF;
  border-radius: 0.75rem;
  padding: 14px 18px;
  margin: 24px 0;
}
.founder-note__label {
  display: block;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.07em;
  color: #278BFF;
  margin-bottom: 6px;
}
.founder-note p {
  font-size: 0.9rem;
  color: #424E66;
  margin: 0;
  line-height: 1.5;
}
.founder-note p a {
  color: #278BFF;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.founder-note p a:hover {
  color: #278BFF;
}

.comparison-table {
  width: 100%;
  border-collapse: collapse;
  margin: 32px 0;
  display: block;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.comparison-table thead tr {
  background: #FBFCFF;
}
.comparison-table th {
  padding: 12px 16px;
  text-align: left;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #424E66;
  white-space: nowrap;
  border-bottom: 2px solid #DDE0E5;
}
.comparison-table td {
  padding: 12px 16px;
  font-size: 0.9375rem;
  color: #0B1426;
  border-bottom: 1px solid #DDE0E5;
}
.comparison-table td:first-child {
  font-weight: 600;
}
.comparison-table tbody tr:last-child td {
  border-bottom: none;
}
.comparison-table tbody tr:hover {
  background: #FBFCFF;
}

.article-footer {
  margin-top: 48px;
  padding-top: 32px;
  border-top: 1px solid #DDE0E5;
  display: flex;
  flex-direction: column;
  gap: 16px;
  background-color: rgba(251, 252, 255, 0.5);
}
.article-footer__line {
  font-size: 0.8125rem;
  color: #949FB6;
  margin: 0;
}

.quick-answer {
  margin: 0 0 32px;
  padding: 20px 24px;
  border-radius: 1rem;
  background: #f1f6ff;
  border: 1px solid #93C5FF;
}
.quick-answer__title {
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: #278BFF;
  margin: 0 0 8px;
}
.quick-answer__text {
  font-size: 0.9375rem;
  color: #232B3C;
  line-height: 1.6;
  margin: 0;
}

.sources {
  margin-top: 24px;
}
.sources__title {
  font-size: 0.9375rem;
  font-weight: 600;
  color: #0B1426;
  margin: 0 0 8px;
}
.sources__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.sources__item a {
  font-size: 0.8125rem;
  color: #278BFF;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.sources__item a:hover {
  color: #278BFF;
}

.when-to-see-doctor__title,
.what-not-to-do__title {
  font-size: 1.375rem;
  font-weight: 700;
  color: #0B1426;
  margin: 0 0 14px;
  line-height: 1.3;
}
.when-to-see-doctor__text,
.what-not-to-do__text {
  font-size: 0.9375rem;
  color: #424E66;
  line-height: 1.65;
  margin: 0;
}
.when-to-see-doctor__list,
.what-not-to-do__list {
  margin: 0;
  padding-left: 24px;
}
.when-to-see-doctor__list li,
.what-not-to-do__list li {
  font-size: 0.9375rem;
  color: #424E66;
  line-height: 1.6;
  margin-bottom: 7px;
  list-style: disc;
}

@media (max-width: 768px) {
  .blog-article {
    padding: 28px 20px 60px;
  }
  .blog-article__title {
    font-size: 1.625rem;
  }
  .blog-article__body h2 {
    font-size: 1.25rem;
  }
  .blog-cta {
    padding: 32px 24px;
  }
  .blog-cta__title {
    font-size: 1.25rem;
  }
  .hub-steps {
    margin-top: 48px;
  }
  .hub-step {
    padding: 28px 24px;
  }
  .hub-cta {
    padding: 40px 28px;
  }
  .hub-cta__title {
    font-size: 1.375rem;
  }
  .hub-cta__subtitle {
    font-size: 0.9375rem;
  }
}
.campaign-page__card {
  margin: 1.5rem 0;
}
.campaign-page__card p,
.campaign-page__card button {
  margin-top: 0;
}
.campaign-page__card .prevention-status-card__note {
  margin-top: 0.25rem;
}
.campaign-page__card .prevention-status-card--nfz {
  background: #FCE7EF;
  border-color: #F7C2D6;
}
.campaign-page__card .prevention-status-card--nfz .prevention-status-card__icon {
  background: #FFFFFF;
}
.campaign-page__card .prevention-status-card--nfz .prevention-status-card__eyebrow {
  color: #f65494;
}
.campaign-page__card .prevention-status-card--nfz .prevention-status-card__subtitle,
.campaign-page__card .prevention-status-card--nfz .prevention-status-card__note,
.campaign-page__card .prevention-status-card--nfz .prevention-status-card__note a {
  color: #7A5566;
}

.campaign-counter--teaser .lp-countdown {
  justify-content: center;
  margin: 0.75rem 0 0;
}
.campaign-counter--teaser .campaign-counter__note {
  margin-top: 0.75rem;
}

.campaign-counter {
  margin: 1.5rem 0;
  padding: 1.5rem;
  border: 1px solid #F7C2D6;
  border-radius: 1rem;
  background: #FCE7EF;
  text-align: center;
}
.campaign-counter__value {
  margin: 0;
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.1;
  color: #f65494;
}
.campaign-counter__pending {
  margin: 0.75rem 0 0;
  font-weight: 600;
  color: #f65494;
}
.campaign-counter__label {
  margin: 0.25rem 0 0;
  font-size: 0.875rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #7A5566;
}
.campaign-counter__note {
  margin: 0.75rem auto 0;
  max-width: 34rem;
  font-size: 0.75rem;
  color: #7A5566;
}
.campaign-counter__split {
  margin: 0.5rem 0 0;
  font-size: 0.875rem;
  color: #7A5566;
}

.campaign-steps {
  padding-left: 1.25rem;
}
.campaign-steps li {
  margin-bottom: 0.5rem;
}

.campaign-why {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
  gap: 1rem;
  margin: 1.25rem 0;
}
.campaign-why__item {
  padding: 1rem;
  border: 1px solid #DDE0E5;
  border-radius: 0.75rem;
  background: #FBFCFF;
}
.campaign-why__item h3 {
  margin: 0 0 0.5rem;
  font-size: 1rem;
}
.campaign-why__item p {
  margin: 0;
  font-size: 0.875rem;
  color: #5F6D8A;
}

.campaign-table-wrap {
  overflow-x: auto;
  margin: 1.25rem 0;
}

.campaign-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.875rem;
}
.campaign-table th,
.campaign-table td {
  padding: 0.75rem;
  text-align: left;
  border-bottom: 1px solid #DDE0E5;
  vertical-align: top;
}
.campaign-table th {
  background: #FCE7EF;
  font-weight: 600;
  white-space: nowrap;
}
.campaign-table td:last-child {
  color: #5F6D8A;
}

.campaign-page .blog-article__tag {
  color: #f65494;
  background: #FCE7EF;
}
.campaign-page .text-intro {
  border-left-color: #f65494;
}
.campaign-page .text-intro a {
  color: #f65494;
}
.campaign-page .quick-answer {
  background: #FCE7EF;
  border-color: #F7C2D6;
}
.campaign-page .quick-answer__title {
  color: #f65494;
}
.campaign-page .quick-answer__text {
  color: #7A5566;
}
.campaign-page .campaign-counter__value, .campaign-page .campaign-counter__pending {
  color: #f65494;
}
.campaign-page .campaign-counter__label, .campaign-page .campaign-counter__note, .campaign-page .campaign-counter__split {
  color: #7A5566;
}
.campaign-page .blog-article__body a,
.campaign-page .sources a {
  color: #f65494;
}
.campaign-page .chip-filled-primary-with-outline {
  background: #f65494;
  outline-color: #f65494;
}
.campaign-page .chip-filled-primary-with-outline:hover {
  filter: brightness(0.95);
}
.campaign-page .chip-outlined-primary {
  outline-color: #f65494;
  background: #FFFFFF;
}
.campaign-page .chip-outlined-primary:hover {
  background: #FCE7EF;
}
.campaign-page .campaign-table th {
  background: #FCE7EF;
}
.campaign-page .campaign-quote {
  margin: 1.5rem 0;
  padding: 1.25rem 1.5rem;
  border-left: 3px solid #f65494;
  border-radius: 0 0.75rem 0.75rem 0;
  background: #FCE7EF;
}
.campaign-page .campaign-quote__text {
  margin: 0;
}
.campaign-page .campaign-quote__text p {
  margin: 0;
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.45;
  color: #0B1426;
}
.campaign-page .campaign-quote__cite {
  margin-top: 0.5rem;
  font-size: 0.875rem;
  color: #7A5566;
}
.campaign-page .campaign-video-page__meta {
  margin: 0 0 1rem;
  font-size: 0.875rem;
  color: #5F6D8A;
}
.campaign-page .campaign-video-page__meta a {
  color: #f65494;
}
.campaign-page .blog-article__body .campaign-video-page__chapters {
  list-style: none;
  padding: 0;
}
.campaign-page .blog-article__body .campaign-video-page__chapters li {
  margin-bottom: 0.5rem;
  list-style: none;
}
.campaign-page .blog-article__body .campaign-video-page__chapters a {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  text-decoration: none;
}
.campaign-page .campaign-video-page__timecode {
  min-width: 3rem;
  padding: 2px 8px;
  border-radius: 100px;
  background: #FCE7EF;
  color: #7A5566;
  font-size: 0.875rem;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  text-align: center;
}
.campaign-page .campaign-video-page__reviewed {
  font-size: 0.875rem;
  color: #5F6D8A;
}
.campaign-page .campaign-video-page__player {
  margin: 1.5rem auto;
  max-width: 22rem;
  text-align: center;
}
.campaign-page .campaign-video-page__player video {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 9/16;
  border-radius: 0.75rem;
  background: #0B1426;
}
.campaign-page .campaign-video-page__player figcaption {
  margin-top: 0.5rem;
  font-size: 0.875rem;
  color: #5F6D8A;
}
.campaign-page .campaign-video-page__player figcaption a {
  color: #f65494;
}

body.lp-accent--pink .blog-back-nav a:hover {
  color: #f65494;
}

[data-mfa-verify-submit] .icon,
[data-mfa-disable-confirm] .icon,
[data-mfa-action=regenerate-codes] .icon,
[data-mfa-download-codes] .icon {
  display: none;
}
[data-mfa-verify-submit].loading,
[data-mfa-disable-confirm].loading,
[data-mfa-action=regenerate-codes].loading,
[data-mfa-download-codes].loading {
  pointer-events: none;
  opacity: 0.7;
}
[data-mfa-verify-submit].loading .text,
[data-mfa-disable-confirm].loading .text,
[data-mfa-action=regenerate-codes].loading .text,
[data-mfa-download-codes].loading .text {
  display: none;
}
[data-mfa-verify-submit].loading .icon,
[data-mfa-disable-confirm].loading .icon,
[data-mfa-action=regenerate-codes].loading .icon,
[data-mfa-download-codes].loading .icon {
  display: flex;
  align-items: center;
  animation: spin 1s linear infinite;
}

.mfa-wizard__instruction {
  font-size: 0.9rem;
  color: #424E66;
  line-height: 1.5;
}
.mfa-wizard__instruction--warning {
  color: #278BFF;
  background-color: #EBF5FF;
  padding: 0.75rem;
  border-radius: 8px;
}
.mfa-wizard__qr-container {
  text-align: center;
  margin: 1.5rem 0;
}
.mfa-wizard__qr-image {
  width: 200px;
  height: 200px;
}
.mfa-wizard__manual-entry {
  font-size: 0.85rem;
  margin-bottom: 1rem;
}
.mfa-wizard__manual-entry summary {
  cursor: pointer;
  color: #278BFF;
}
.mfa-wizard__secret {
  display: block;
  word-break: break-all;
  background: #F0F2F5;
  padding: 0.5rem;
  border-radius: 6px;
  font-family: monospace;
  font-size: 0.85rem;
  margin-top: 0.5rem;
}
.mfa-wizard__code-input {
  width: 100%;
  padding: 0.75rem;
  border: 1px solid #CED4E1;
  border-radius: 8px;
  font-size: 1.25rem;
  letter-spacing: 0.5em;
  text-align: center;
  margin-bottom: 0.75rem;
}
.mfa-wizard__code-input:focus {
  outline: 2px solid #278BFF;
  border-color: transparent;
}
.mfa-wizard__error {
  color: #278BFF;
  font-size: 0.85rem;
  margin-bottom: 0.75rem;
}
.mfa-wizard__backup-codes {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.5rem;
  margin: 1rem 0;
}
.mfa-wizard__backup-code {
  background: #F0F2F5;
  padding: 0.5rem 0.75rem;
  border-radius: 6px;
  font-family: monospace;
  font-size: 0.9rem;
  letter-spacing: 0.05em;
  text-align: center;
}
.mfa-wizard__backup-actions {
  display: flex;
  justify-content: center;
  gap: 0.75rem;
  flex-wrap: wrap;
  margin-top: 1rem;
}
.mfa-wizard__verify-form {
  width: 100%;
}

.error-page {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 0.75rem;
  padding: 2.5rem 1.25rem 4rem;
  margin: 0 auto;
  max-width: 34rem;
}
@media (min-width: 655px) {
  .error-page {
    gap: 1rem;
    padding: 4rem 2rem;
  }
}
.error-page__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 4rem;
  height: 4rem;
  border-radius: 50%;
  background-color: #F0F2F5;
  color: #5F6D8A;
}
.error-page__icon-svg {
  width: 2rem;
  height: 2rem;
  stroke: currentColor;
}
.error-page__code {
  margin: 0;
  font-size: 0.875rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #949FB6;
}
.error-page__title {
  margin: 0;
  color: #0B1426;
}
.error-page__message {
  margin: 0;
  max-width: 30rem;
  font-size: 1rem;
  line-height: 1.5;
  color: #5F6D8A;
}
.error-page__message--muted {
  font-size: 0.875rem;
  color: #949FB6;
}
.error-page__actions {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0.75rem;
  width: 100%;
  margin-top: 1rem;
}
@media (min-width: 655px) {
  .error-page__actions {
    flex-direction: row;
    justify-content: center;
    width: auto;
  }
}
.error-page__actions .button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  text-decoration: none;
}

/*# sourceMappingURL=main.css.3dae1684176f.map */
