/**
*
* Font Family: Inter
*
*/
@font-face {
  font-family: "Inter";
  src: url("../fonts/inter/inter-variable-g67Lfz9.ttf") format("truetype");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Inter";
  src: url("../fonts/inter/inter-italic-variable-6sdnif-.ttf") format("truetype");
  font-weight: 100 900;
  font-style: italic;
  font-display: swap;
}
body {
  font-family: "Inter", system-ui, sans-serif;
  font-weight: 400;
}
@media (max-width: 576px) {
  body {
    font-size: 15px;
  }
}
body .c-white {
  color: #ffffff;
}
body .c-black {
  color: #000000;
}
body .c-blue-dark {
  color: #1E2938;
}
body .c-blue-light {
  color: #4A5565;
}
body .c-gray {
  color: #6A7282;
}
body .c-gray-light {
  color: #F5F6F8;
}
body .c-red {
  color: #DC242C;
}
body .c-blue {
  color: #165DFC;
}
body .c-green {
  color: #00A63D;
}
body .c-warning {
  color: #FEE685;
}
body .bg-warning {
  color: #FFF9EB;
}
body .fs-12 {
  font-size: 12px;
}
body .fs-14 {
  font-size: 14px;
}
body .fs-16 {
  font-size: 16px;
}
body .fs-18 {
  font-size: 18px;
}
body .fs-20 {
  font-size: 20px;
}
body .light {
  font-weight: 300;
}
body .regular {
  font-weight: 400;
}
body .semibold {
  font-weight: 600;
}
body .bold {
  font-weight: 700;
}

:root {
  --bg-soft: #eef2f4;
  --bg-card: #ffffff;
  --text-main: #141827;
  --text-muted: #5f6878;
  --brand: #ef8001;
  --brand-dark: #d97200;
  --line: #dde3e7;
}

body {
  margin: 0;
  min-height: 100vh;
  background: radial-gradient(circle at 10% 10%, #f9fbfc 0%, #eef2f4 45%, #e7ecef 100%);
  color: var(--text-main);
}

.page-shell {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

.app-header {
  background: #fff;
  box-shadow: 0 1px 3px rgba(20, 24, 39, 0.08);
  border-bottom: 1px solid var(--line);
}

.front-layout-inner {
  max-width: 1280px;
  margin: 0 auto;
}

.app-header-row {
  min-height: 64px;
}

.app-header-logo-link {
  display: inline-flex;
  align-items: center;
}

.app-header-logo {
  height: 40px;
  width: auto;
  object-fit: contain;
}

.app-header-nav-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 42px;
  color: #141827;
  text-decoration: none;
  border-radius: 10px;
  padding: 0 1rem;
  font-size: 0.9rem;
  transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.app-header-nav-link:hover {
  background: #e7ecef;
  color: #ef8001;
  box-shadow: inset 0 0 0 1px #d7dee3;
  transform: translateY(-1px);
}

.app-header-nav-link.is-active {
  background: rgba(239, 128, 1, 0.1);
  color: #ef8001;
}

.app-header-connexion-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
  height: 42px;
  border-radius: 10px;
  padding: 0 1.25rem;
  background: #ef8001;
  color: #fff;
  text-decoration: none;
  font-weight: 600;
  font-size: 0.9rem;
  transition: background-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.app-header-connexion-btn:hover {
  background: #cf6a00;
  box-shadow: 0 8px 18px rgba(239, 128, 1, 0.35);
  transform: translateY(-1px);
  color: #fff;
}

.app-header-user-btn {
  border: 0;
  background: transparent;
  color: #141827;
  border-radius: 10px;
  padding: 0.5rem 0.75rem;
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  font-size: 0.9rem;
}

.app-header-user-btn:hover,
.app-header-user-btn:focus {
  background: #eef2f4;
}

.app-header-user-name {
  max-width: 180px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.app-header-user-menu {
  min-width: 14rem;
  margin-top: 0.4rem;
  border: 1px solid #dde3e7;
  border-radius: 12px;
  box-shadow: 0 10px 22px rgba(20, 24, 39, 0.14);
  padding: 0.35rem;
}

.app-header-user-menu-info {
  padding: 0.55rem 0.6rem 0.62rem;
  border-bottom: 1px solid #eef2f4;
  margin-bottom: 0.2rem;
}

.app-header-user-menu-name {
  color: #141827;
  font-size: 0.84rem;
  font-weight: 600;
}

.app-header-user-menu-email {
  color: #5f6878;
  font-size: 0.75rem;
}

.app-header-user-item {
  border-radius: 9px;
  color: #141827;
  font-size: 0.85rem;
  padding: 0.5rem 0.58rem;
}

.app-header-user-item:hover {
  background: #eef2f4;
}

.app-header-user-item:active,
.app-header-user-item.active,
.app-header-user-item:focus,
.app-header-user-item:focus-visible {
  background: #eef2f4;
  color: #141827;
}

.app-header-user-item.is-danger {
  color: #ef4444;
}

.app-header-user-item.is-danger:hover {
  background: #fef2f2;
}

.app-header-user-item.is-danger:active,
.app-header-user-item.is-danger.active,
.app-header-user-item.is-danger:focus,
.app-header-user-item.is-danger:focus-visible {
  background: #fef2f2;
  color: #ef4444;
}

.app-header-mobile-toggle {
  border: 0;
  background: transparent;
  width: 42px;
  height: 42px;
  border-radius: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.app-header-mobile-toggle:hover {
  background: #eef2f4;
}

.app-header-mobile-toggle .navbar-toggler-icon {
  width: 22px;
  height: 22px;
  background-image: none;
  position: relative;
}

.app-header-mobile-toggle .navbar-toggler-icon::before,
.app-header-mobile-toggle .navbar-toggler-icon::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  height: 2px;
  background: #141827;
  border-radius: 99px;
}

.app-header-mobile-toggle .navbar-toggler-icon::before {
  top: 6px;
  box-shadow: 0 7px 0 #141827;
}

.app-header-mobile-toggle .navbar-toggler-icon::after {
  bottom: 7px;
}

.app-header-mobile-nav-wrap {
  border-top: 1px solid #dde3e7;
}

.app-header-mobile-nav {
  display: grid;
  gap: 0.25rem;
  padding: 0.8rem 0 1rem;
}

.app-header-mobile-link {
  border-radius: 10px;
  text-decoration: none;
  color: #141827;
  font-size: 0.9rem;
  padding: 0.68rem 0.9rem;
}

.app-header-mobile-link:hover {
  background: #eef2f4;
  color: #141827;
}

.app-header-mobile-link.is-active {
  background: rgba(239, 128, 1, 0.1);
  color: #ef8001;
}

.app-header-mobile-link.is-danger {
  color: #ef4444;
}

.app-header-mobile-link-connexion {
  background: #ef8001;
  color: #fff;
  font-weight: 600;
}

.app-header-mobile-link-connexion:hover {
  background: #d97001;
  color: #fff;
}

.app-header-mobile-user {
  padding: 0.6rem 0.9rem 0.4rem;
}

.app-header-mobile-user-name {
  color: #141827;
  font-size: 0.9rem;
  font-weight: 600;
}

.app-header-mobile-user-email {
  color: #5f6878;
  font-size: 0.76rem;
}

.btn-brand {
  border: 0;
  border-radius: 10px;
  background: linear-gradient(90deg, #ef8001 0%, #f39b2f 100%);
  color: #fff;
  font-weight: 700;
  padding: 0.55rem 0.9rem;
}

.btn-brand:hover,
.btn-brand:focus {
  background: linear-gradient(90deg, #d97200 0%, #ef8001 100%);
  color: #fff;
}

.btn-brand:active,
.btn-brand.active {
  background: linear-gradient(90deg, #c96700 0%, #e27f16 100%);
  color: #fff;
  transform: translateY(1px) scale(0.99);
  box-shadow: 0 4px 12px rgba(239, 128, 1, 0.24);
}

.btn-brand:focus-visible,
.home-btn-primary:focus-visible,
.account-primary-btn:focus-visible,
.account-profile-modal-submit:focus-visible,
.confirmation-account-btn:focus-visible,
.order-detail-action-btn.is-imprint:focus-visible,
.order-detail-ticket-modal-submit:focus-visible,
.order-detail-primary-btn:focus-visible,
.app-header-connexion-btn:focus-visible,
.app-header-mobile-link-connexion:focus-visible {
  outline: none;
  box-shadow: 0 0 0 0.2rem rgba(239, 128, 1, 0.3);
}

.home-btn-primary:active:not(:disabled),
.account-primary-btn:active,
.account-profile-modal-submit:active:not(:disabled),
.confirmation-account-btn:active,
.order-detail-action-btn.is-imprint:active,
.order-detail-ticket-modal-submit:active:not(:disabled),
.order-detail-primary-btn:active,
.app-header-connexion-btn:active,
.app-header-mobile-link-connexion:active {
  background: #d97001;
  color: #fff;
  border-color: #d97001;
  text-decoration: none;
  transform: translateY(1px) scale(0.99);
  box-shadow: 0 4px 12px rgba(239, 128, 1, 0.24);
}

.app-footer {
  margin-top: auto;
  background: #fff;
  border-top: 1px solid var(--line);
}

.app-footer-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
}

.app-footer-nav {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.8rem 1.4rem;
}

.app-footer-link {
  color: #5f6878;
  font-size: 0.82rem;
  text-decoration: none;
  transition: color 0.2s ease;
}

.app-footer-link:hover {
  color: #ef8001;
}

.app-footer-brand {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  color: #5f6878;
  font-size: 0.8rem;
}

.app-footer-separator {
  color: #dde3e7;
}

.app-footer-brand-link {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  color: #5f6878;
  text-decoration: none;
}

.app-footer-brand-link:hover {
  color: #141827;
}

.auth-shell {
  min-height: calc(100vh - 170px);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2.5rem 1rem;
}

.auth-container {
  width: 100%;
  max-width: 510px;
}

.auth-title {
  color: #141827;
  font-size: 2rem;
  font-weight: 700;
}

.auth-card {
  background: #fff;
  border: 1px solid #dde3e7;
  border-radius: 18px;
  box-shadow: 0 8px 20px rgba(20, 24, 39, 0.06);
  padding: 1.5rem 1.55rem;
}

.auth-label {
  display: block;
  margin-bottom: 0.38rem;
  color: #141827;
  font-size: 0.9rem;
  font-weight: 500;
}

.auth-input-wrap {
  position: relative;
}

.auth-input-icon {
  position: absolute;
  left: 0.9rem;
  top: 50%;
  transform: translateY(-50%);
  color: #5f6878;
  width: 1rem;
  height: 1rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.auth-input-icon svg {
  width: 1rem;
  height: 1rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.auth-input {
  border-radius: 12px;
  border: 1px solid #dde3e7;
  background: #f7f9fa;
  min-height: 48px;
  font-size: 0.95rem;
}

.auth-input:focus {
  border-color: #ef8001;
  box-shadow: 0 0 0 0.2rem rgba(239, 128, 1, 0.16);
  background: #f7f9fa;
}

.auth-input-wrap .auth-input {
  padding-left: 2.65rem;
}

.auth-password-wrap .auth-input {
  padding-right: 5.2rem;
}

.auth-input.is-invalid {
  border-color: #f87171;
}

.auth-container .auth-input {
  border: 1px solid #dde3e7;
  border-radius: 9px;
  background: #f9fbfc;
  min-height: 40px;
  font-size: 0.83rem;
  padding-top: 0.52rem;
  padding-bottom: 0.52rem;
}

.auth-container .auth-input:focus {
  border-color: #ef8001;
  box-shadow: 0 0 0 2px rgba(239, 128, 1, 0.14);
  background: #f9fbfc;
}

.auth-container .auth-input-wrap .auth-input {
  padding-left: 2.5rem;
}

.auth-container .auth-password-wrap .auth-input {
  padding-right: 4.8rem;
}

.auth-password-toggle {
  position: absolute;
  top: 50%;
  right: 0.9rem;
  transform: translateY(-50%);
  border: 0;
  background: transparent;
  color: #5f6878;
  width: 1.1rem;
  height: 1.1rem;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.auth-password-toggle:hover {
  color: #141827;
}

.auth-password-toggle svg {
  width: 1rem;
  height: 1rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.auth-field-error {
  margin: 0.24rem 0 0;
  color: #ef4444;
  font-size: 0.72rem;
}

.auth-alert-danger {
  border: 1px solid #fecaca;
  background: #fef2f2;
  border-radius: 12px;
  padding: 0.75rem 0.82rem;
}

.auth-alert-danger p,
.auth-alert-danger {
  color: #b91c1c;
  font-size: 0.82rem;
}

.auth-alert-danger {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
}

.auth-alert-success {
  border: 1px solid #86efac;
  background: #f0fdf4;
  border-radius: 12px;
  padding: 0.75rem 0.82rem;
  color: #166534;
  font-size: 0.82rem;
}

.auth-alert-icon {
  width: 1rem;
  height: 1rem;
  margin-top: 0.1rem;
  flex-shrink: 0;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.auth-muted-text {
  color: #5f6878;
  font-size: 0.85rem;
}

.auth-link {
  color: #2292d3;
  text-decoration: none;
  font-size: 0.85rem;
}

.auth-link:hover {
  text-decoration: underline;
}

.auth-link-strong {
  font-size: 0.9rem;
  font-weight: 500;
}

.home-auth-forgot-link {
  border: 0;
  background: transparent;
  color: #2292d3;
  font-size: 0.86rem;
  text-decoration: none;
}

.home-auth-forgot-link:hover {
  text-decoration: underline;
}

.home-auth-forgot-link:disabled {
  color: #7b8494;
  cursor: not-allowed;
}

.auth-submit-btn {
  min-height: 48px;
  border-radius: 12px;
  font-size: 0.95rem;
  font-weight: 600;
  box-shadow: 0 10px 20px rgba(239, 128, 1, 0.2);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
}

.auth-submit-btn svg {
  width: 1rem;
  height: 1rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.auth-phone-group {
  display: flex;
  align-items: stretch;
  position: relative;
}

.auth-phone-country-btn {
  border: 1px solid #dde3e7;
  border-right: 0;
  border-radius: 12px 0 0 12px;
  background: #f7f9fa;
  min-width: 84px;
  padding: 0 0.7rem;
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  color: #141827;
  font-size: 0.86rem;
}

.auth-phone-country-flag {
  width: 16px;
  height: 12px;
  object-fit: cover;
  border-radius: 2px;
  flex: 0 0 auto;
}

.auth-phone-country-chevron {
  color: #5f6878;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.auth-phone-country-chevron svg {
  width: 0.85rem;
  height: 0.85rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.auth-phone-input {
  border-radius: 0 12px 12px 0;
}

.auth-phone-group .auth-phone-input {
  border-top-left-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
}

.auth-phone-panel {
  position: absolute;
  left: 0;
  top: calc(100% + 6px);
  width: 100%;
  background: #fff;
  border: 1px solid #dde3e7;
  border-radius: 12px;
  box-shadow: 0 12px 22px rgba(20, 24, 39, 0.16);
  z-index: 50;
  overflow: hidden;
}

.auth-phone-search-wrap {
  padding: 0.5rem;
  border-bottom: 1px solid #eef2f4;
}

.auth-phone-search {
  border-radius: 9px;
  background: #f7f9fa;
  border-color: #eef2f4;
  min-height: 36px;
  font-size: 0.82rem;
}

.auth-phone-options {
  max-height: 220px;
  overflow-y: auto;
}

.auth-phone-option {
  width: 100%;
  border: 0;
  background: transparent;
  text-align: left;
  padding: 0.54rem 0.65rem;
  display: flex;
  align-items: center;
  gap: 0.55rem;
  color: #141827;
  font-size: 0.84rem;
}

.auth-phone-option img {
  width: 16px;
  height: 12px;
  object-fit: cover;
  border-radius: 2px;
}

.auth-phone-option-label {
  font-weight: 700;
  white-space: nowrap;
}

.auth-phone-option:hover {
  background: #eef2f4;
}

.auth-phone-option.is-active {
  background: rgba(239, 128, 1, 0.07);
}

.auth-phone-option-prefix {
  margin-left: auto;
  color: #5f6878;
  font-size: 0.81rem;
}

.auth-phone-option-check {
  color: #ef8001;
}

.account-shell {
  max-width: 1280px;
  margin: 0 auto;
}

.account-welcome-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
}

.account-welcome-left {
  display: flex;
  align-items: flex-start;
  gap: 0.85rem;
}

.account-title {
  color: #141827;
  font-size: 1.4rem;
  font-weight: 700;
}

.account-subtitle {
  color: #5f6878;
  font-size: 0.9rem;
}

.account-actions {
  display: flex;
  align-items: center;
  gap: 0.45rem;
}

.account-secondary-btn {
  min-height: 42px;
  padding: 0.62rem 1.05rem;
  border-radius: 12px;
  border: 1px solid #d4dce3;
  background: #fff;
  color: #394150;
  text-decoration: none;
  font-size: 0.88rem;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.account-secondary-btn:hover {
  background: #f3f6f8;
  border-color: #c5d0d9;
  color: #141827;
}

.account-refresh-btn {
  width: 42px;
  height: 42px;
  border-radius: 12px;
  border: 1px solid #dde3e7;
  background: #fff;
  color: #5f6878;
  font-size: 1rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.account-refresh-btn svg {
  width: 16px;
  height: 16px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.account-refresh-btn:hover {
  background: #eef2f4;
  color: #141827;
}

.account-refresh-btn.is-loading {
  animation: spin-ccw 0.8s linear infinite;
}

.account-stat-card {
  background: #fff;
  border: 1px solid #dde3e7;
  border-radius: 12px;
  padding: 0.95rem 1rem;
  width: 100%;
  height: 100%;
  display: flex;
}

.account-stat-card.is-clickable {
  cursor: pointer;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.account-stat-card.is-clickable:hover {
  border-color: #d4dce2;
  box-shadow: 0 8px 20px rgba(20, 24, 39, 0.08);
  transform: translateY(-1px);
}

.account-stat-card.is-clickable:focus-visible {
  outline: 2px solid rgba(239, 128, 1, 0.45);
  outline-offset: 2px;
}

.account-stats-col {
  display: flex;
}

.account-stat-label {
  color: #5f6878;
  font-size: 0.8rem;
}

.account-stat-head {
  display: flex;
  align-items: flex-start;
  gap: 0.9rem;
  width: 100%;
}

.account-stat-icon {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.account-stat-icon svg {
  width: 20px;
  height: 20px;
}

.account-stat-icon.is-orange {
  background: rgba(239, 128, 1, 0.1);
  color: #ef8001;
}

.account-stat-icon.is-blue {
  background: rgba(34, 146, 211, 0.1);
  color: #2292d3;
}

.account-stat-icon.is-green {
  background: #dcfce7;
  color: #16a34a;
}

.account-stat-value {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.2;
}

.account-stat-value.is-orange {
  color: #ef8001;
}

.account-stat-value.is-blue {
  color: #2292d3;
}

.account-stat-value.is-green {
  color: #398b5a;
}

.account-stat-sub {
  color: #5f6878;
  font-size: 0.78rem;
  margin-top: auto;
}

.account-stat-content {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0.1rem;
  width: 100%;
}

.account-imprint-inline {
  color: #5f6878;
  font-size: 0.86rem;
  line-height: 1.5;
  margin: 0;
}

.account-loading {
  display: flex;
  justify-content: center;
  padding: 3rem 0;
}

.account-error-card {
  border: 1px solid #fecaca;
  background: #fef2f2;
  color: #b91c1c;
  border-radius: 12px;
  padding: 0.9rem 1rem;
  font-size: 0.84rem;
}

.account-empty-card {
  border: 1px solid #dde3e7;
  background: #fff;
  border-radius: 18px;
  padding: 2.1rem 1.2rem;
  text-align: center;
}

.account-empty-card h3 {
  color: #141827;
  font-size: 1.15rem;
}

.account-empty-card p {
  color: #5f6878;
  font-size: 0.9rem;
  margin: 0.6rem auto 1.2rem;
  max-width: 500px;
}

.account-orders-list {
  margin-bottom: 1.4rem;
}

.account-section-title {
  color: #141827;
  margin-bottom: 0.85rem;
  font-size: 1.2rem;
}

.account-order-card {
  background: #fff;
  border: 1px solid #dde3e7;
  border-radius: 12px;
  overflow: hidden;
  margin-bottom: 0.8rem;
  transition: border-color 0.22s ease, box-shadow 0.22s ease;
}

.account-order-card.is-open {
  border-color: #d4dce2;
  box-shadow: 0 8px 22px rgba(20, 24, 39, 0.07);
}

.account-order-head {
  width: 100%;
  border: 0;
  background: #fff;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0.8rem;
  text-align: left;
  padding: 1rem 1rem;
  transition: background-color 0.2s ease;
}

.account-order-head:hover {
  background: #f7f9fa;
}

.account-order-head-left {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  min-width: 0;
}

.account-order-head-icon {
  width: 40px;
  height: 40px;
  border-radius: 12px;
  background: rgba(239, 128, 1, 0.1);
  color: #ef8001;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
}

.account-icon.is-order-head {
  width: 18px;
  height: 18px;
}

.account-order-head-right {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  flex: 0 0 auto;
}

.account-order-title {
  color: #141827;
  font-weight: 600;
  font-size: 0.9rem;
}

.account-order-meta {
  color: #5f6878;
  font-size: 0.75rem;
}

.account-order-pills {
  padding: 0 1rem 0.95rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  max-height: 120px;
  opacity: 1;
  overflow: hidden;
  transition: max-height 0.26s ease, opacity 0.18s ease, padding 0.26s ease;
}

.account-order-card.is-open .account-order-pills {
  max-height: 0;
  opacity: 0;
  padding-top: 0;
  padding-bottom: 0;
  pointer-events: none;
}

.account-order-body-wrap {
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transition: max-height 0.34s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.2s ease;
}

.account-order-card.is-open .account-order-body-wrap {
  opacity: 1;
}

.account-order-pill {
  padding: 0.3rem 0.55rem;
  border-radius: 10px;
  background: color-mix(in srgb, var(--pill-color) 10%, #fff);
  color: var(--pill-color);
  font-size: 0.78rem;
  font-weight: 500;
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
}

.account-order-body {
  border-top: 1px solid #dde3e7;
  padding: 0.9rem 1rem 1rem;
}

.account-order-ticket-list {
  display: grid;
  gap: 0.68rem;
}

.account-order-chevron {
  width: 20px;
  height: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #5f6878;
  transition: transform 0.22s ease;
}

.account-icon.is-chevron {
  width: 18px;
  height: 18px;
}

.account-order-card.is-open .account-order-chevron {
  transform: rotate(180deg);
}

.account-ticket-card {
  border: 1px solid color-mix(in srgb, var(--ticket-accent) 25%, #fff);
  border-radius: 12px;
  margin-bottom: 0.68rem;
  overflow: hidden;
}

.account-ticket-card.is-scanned {
  border-color: #86efac;
  background: #f0fdf4;
}

.account-ticket-card.is-cancelled {
  border-color: #fca5a5;
  background: #fef2f2;
}

.account-ticket-head {
  background: color-mix(in srgb, var(--ticket-accent) 7%, #fff);
  border-bottom: 2px solid color-mix(in srgb, var(--ticket-accent) 20%, #fff);
  padding: 0.62rem 0.75rem;
}

.account-ticket-type {
  color: #141827;
  font-size: 0.86rem;
  font-weight: 700;
}

.account-ticket-id {
  color: #5f6878;
  font-size: 0.74rem;
  font-weight: 500;
  margin-left: 0.28rem;
}

.account-ticket-route {
  color: #5f6878;
  font-size: 0.79rem;
}

.account-ticket-body {
  padding: 0.7rem 0.75rem;
}

.account-ticket-trips {
  display: grid;
  gap: 0.45rem;
}

.account-ticket-trip {
  border-radius: 10px;
  background: #f7f9fa;
  padding: 0.5rem 0.58rem;
}

.account-ticket-trip-line {
  color: #141827;
  font-size: 0.8rem;
  font-weight: 600;
}

.account-ticket-trip-meta {
  color: #5f6878;
  font-size: 0.75rem;
  display: inline-flex;
  align-items: center;
  gap: 0.26rem;
}

.account-ticket-holder {
  color: #141827;
  font-size: 0.78rem;
  margin-top: 0.55rem;
}

.account-order-imprint {
  margin: 0.35rem 0 0.7rem;
  color: #5f6878;
  font-size: 0.82rem;
  line-height: 1.45;
}

.account-order-imprint strong {
  color: #141827;
}

.account-primary-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
  border: 0;
  border-radius: 12px;
  background: #ef8001;
  color: #fff;
  text-decoration: none;
  transition: background-color 0.2s ease, box-shadow 0.2s ease;
  box-shadow: 0 10px 20px rgba(239, 128, 1, 0.2);
  font-weight: 500;
  line-height: 1;
}

.account-primary-btn svg {
  width: 16px;
  height: 16px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.account-primary-btn:hover {
  background: #d97001;
  color: #fff;
}

.account-new-btn {
  min-height: 42px;
  padding: 0.62rem 1.25rem;
  font-size: 0.9rem;
}

.account-order-manage-btn {
  width: 100%;
  min-height: 44px;
  font-size: 0.85rem;
  justify-content: center;
}

.account-order-imprint-btn {
  width: 100%;
  min-height: 44px;
  font-size: 0.85rem;
  justify-content: center;
}

.account-order-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.55rem;
}

.account-order-imprint-btn.is-disabled {
  background: #d6dbe2;
  box-shadow: none;
  color: #677182;
  cursor: not-allowed;
  pointer-events: auto;
}

.tooltip-disabled-wrap {
  display: inline-flex;
}

.tooltip-disabled-wrap-fill {
  display: flex;
  width: 100%;
}

.tooltip-disabled-wrap-fill > .account-primary-btn {
  width: 100%;
}

.account-empty-btn {
  min-height: 48px;
  padding: 0.78rem 1.4rem;
  font-size: 0.95rem;
  font-weight: 600;
}

.account-profile-modal {
  border-radius: 14px;
  border: 1px solid #dde3e7;
}

.account-profile-modal .modal-header,
.account-profile-modal .modal-footer {
  border-color: #e9edf1;
}

.account-profile-modal .modal-title {
  color: #141827;
  font-size: 1rem;
  font-weight: 600;
}

.account-profile-modal-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.7rem;
}

.account-profile-modal-field {
  min-width: 0;
}

.account-profile-modal-field label {
  display: block;
  color: #5f6878;
  font-size: 0.75rem;
  font-weight: 600;
  margin-bottom: 0.25rem;
}

.account-profile-modal-field .auth-input {
  width: 100%;
  min-height: 40px;
  font-size: 0.83rem;
  padding: 0.52rem 0.6rem;
}

.account-profile-phone-row {
  display: flex;
  align-items: stretch;
}

.account-profile-country-dropdown {
  position: relative;
  flex: 0 0 auto;
  width: max-content;
}

.account-profile-phone-flag {
  width: 16px;
  height: 12px;
  object-fit: cover;
  border-radius: 2px;
}

.account-profile-country-btn {
  border: 1px solid #dde3e7;
  border-right: 1px solid #d1d9e0;
  border-radius: 12px 0 0 12px;
  background: #f3f6f8;
  min-height: 40px;
  padding: 0 0.55rem;
  display: inline-flex;
  align-items: center;
  gap: 0.32rem;
  color: #141827;
  font-size: 0.82rem;
  font-weight: 600;
  width: max-content;
}

.account-profile-country-btn.is-invalid {
  border-color: #f87171;
}

.account-profile-country-chevron {
  color: #6b7280;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.account-profile-country-chevron svg {
  width: 0.82rem;
  height: 0.82rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.account-profile-country-panel {
  position: absolute;
  left: 0;
  top: calc(100% + 6px);
  width: 100%;
  min-width: 100%;
  background: #fff;
  border: 1px solid #dde3e7;
  border-radius: 10px;
  box-shadow: 0 10px 20px rgba(20, 24, 39, 0.12);
  z-index: 40;
  overflow: hidden;
}

.account-profile-country-option {
  width: 100%;
  border: 0;
  background: transparent;
  text-align: left;
  padding: 0.44rem 0.55rem;
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  color: #141827;
  font-size: 0.8rem;
}

.account-profile-country-option img {
  width: 16px;
  height: 12px;
  object-fit: cover;
  border-radius: 2px;
}

.account-profile-country-option-label {
  font-weight: 700;
  white-space: nowrap;
}

.account-profile-country-option-prefix {
  margin-left: auto;
  color: #5f6878;
  font-size: 0.78rem;
}

.account-profile-country-option:hover {
  background: #eef2f4;
}

.account-profile-country-option.is-active {
  background: rgba(239, 128, 1, 0.08);
}

.account-profile-phone-input {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  margin-left: 0;
}

.account-profile-phone-row .auth-input:focus,
.account-profile-country-btn:focus {
  outline: none;
  position: relative;
  z-index: 2;
}

.account-profile-modal-submit {
  border: 0;
  border-radius: 10px;
  background: #ef8001;
  color: #fff;
  font-size: 0.82rem;
  font-weight: 600;
  padding: 0.55rem 0.82rem;
}

.account-profile-modal-submit:hover {
  background: #d97001;
}

.account-profile-modal-submit:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.account-profile-modal-feedback {
  margin-top: 0.65rem;
  color: #5f6878;
  font-size: 0.75rem;
  min-height: 1.1rem;
}

.account-profile-modal-feedback.is-success {
  color: #15803d;
}

.account-profile-modal-feedback.is-error {
  color: #b91c1c;
}

.account-info {
  background: transparent;
  border: 0;
  border-radius: 0;
  padding: 0.15rem 0 0;
  position: relative;
}

.account-info::before {
  content: "";
  display: block;
  border-top: 1px solid #d8e0e6;
  margin-bottom: 0.95rem;
}

.account-info-title {
  color: #141827;
  font-size: 0.98rem;
  margin-bottom: 0.8rem;
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  letter-spacing: 0.01em;
}

.account-info-title svg {
  width: 18px;
  height: 18px;
  color: #ef8001;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.account-info-item {
  border: 1px solid #e5ebf0;
  border-left: 3px solid #d6dee5;
  border-radius: 12px;
  background: #fff;
  padding: 0.7rem 0.75rem;
  display: flex;
  align-items: flex-start;
  gap: 0.6rem;
  min-height: 100%;
}

.account-info-item.is-orange {
  border-left-color: #ef8001;
}

.account-info-item.is-blue {
  border-left-color: #2292d3;
}

.account-info-item.is-purple {
  border-left-color: #8b5cf6;
}

.account-info-icon {
  width: 30px;
  height: 30px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.account-info-icon svg {
  width: 15px;
  height: 15px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.account-info-icon.is-orange {
  background: rgba(239, 128, 1, 0.1);
  color: #ef8001;
}

.account-info-icon.is-blue {
  background: rgba(34, 146, 211, 0.1);
  color: #2292d3;
}

.account-info-icon.is-purple {
  background: rgba(139, 92, 246, 0.1);
  color: #8b5cf6;
}

.account-icon {
  width: 14px;
  height: 14px;
  vertical-align: -2px;
}

.account-icon.is-pill {
  width: 13px;
  height: 13px;
}

.account-icon.is-trip {
  width: 12px;
  height: 12px;
}

.account-icon.is-btn {
  width: 16px;
  height: 16px;
}

.account-info-item p {
  color: #4f596b;
  font-size: 0.84rem;
  line-height: 1.55;
}

@keyframes spin-ccw {
  from {
    transform: rotate(0);
  }
  to {
    transform: rotate(-360deg);
  }
}
@keyframes spin-cw {
  from {
    transform: rotate(0);
  }
  to {
    transform: rotate(360deg);
  }
}
.glass-card {
  background: var(--bg-card);
  border: 1px solid var(--line);
  border-radius: 16px;
  box-shadow: 0 6px 24px rgba(20, 24, 39, 0.06);
}

.page-title {
  font-size: clamp(1.4rem, 1.6vw, 2rem);
  font-weight: 800;
  letter-spacing: -0.01em;
}

.section-title {
  font-size: 1rem;
  font-weight: 700;
  margin-bottom: 0;
}

.note-card {
  background: #fff8eb;
  border: 1px solid #ffe2b3;
  border-radius: 12px;
  padding: 0.9rem;
  color: #6d450d;
}

.departure-card {
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 0.85rem;
  background: #fafcfd;
}

.departure-name {
  font-weight: 700;
  margin-bottom: 0.25rem;
}

.departure-address {
  color: var(--text-muted);
  font-size: 0.85rem;
}

.passenger-card {
  border-radius: 12px;
}

.passenger-card .form-control,
.passenger-card .form-select {
  border-color: var(--line);
}

.table {
  --bs-table-bg: transparent;
}

.badge-status {
  border-radius: 999px;
  padding: 0.2rem 0.65rem;
  font-size: 0.74rem;
  font-weight: 700;
}

.badge-status.confirmed,
.badge-status.scanned {
  background: #d9f6e3;
  color: #187a3d;
}

.badge-status.charged {
  background: #e7f1ff;
  color: #1d57aa;
}

.badge-status.pending,
.badge-status.payment_pending,
.badge-status.requested,
.badge-status.authorized {
  background: #fff3d2;
  color: #8a5a00;
}

.badge-status.cancelled,
.badge-status.none {
  background: #fde2e2;
  color: #9e2323;
}

.rich-content p,
.rich-content li {
  color: var(--text-main);
  line-height: 1.6;
}

.rich-content a {
  color: #0066cc;
}

.scan-shell {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(180deg, #121726 0%, #243049 100%);
  padding: 1rem;
}

.scan-card {
  width: min(640px, 100%);
  background: #fff;
  border-radius: 18px;
  padding: 1.5rem;
  box-shadow: 0 24px 46px rgba(0, 0, 0, 0.28);
}

.scan-title {
  margin: 0;
  font-size: 1.5rem;
  font-weight: 800;
}

.scan-subtitle {
  margin-top: 0.35rem;
  color: var(--text-muted);
}

.home-shell {
  max-width: 1280px;
  margin: 0 auto;
}

.home-hero {
  margin-bottom: 1.25rem;
}

.home-hero-media {
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  height: 176px;
}

.home-hero-media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.home-hero-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(0deg, rgba(20, 24, 39, 0.8) 0%, rgba(20, 24, 39, 0.3) 45%, rgba(20, 24, 39, 0) 100%);
}

.home-hero-caption {
  position: absolute;
  left: 1.25rem;
  right: 1.25rem;
  bottom: 1.25rem;
  z-index: 1;
}

.home-hero-caption h1 {
  color: #fff;
  margin-bottom: 0.2rem;
  font-size: clamp(1.15rem, 2.2vw, 1.5rem);
  font-weight: 700;
}

.home-hero-caption p {
  margin: 0;
  color: rgba(255, 255, 255, 0.84);
  font-size: 0.9rem;
}

.home-introduction {
  margin-bottom: 1.25rem;
}

.home-introduction-card,
.home-stepper-card,
.home-content-card {
  background: #fff;
  border: 1px solid #dde3e7;
  border-radius: 16px;
  box-shadow: 0 1px 2px rgba(20, 24, 39, 0.06);
}

.home-introduction-card {
  padding: 1.25rem 1.3rem;
  font-size: 0.9rem;
  line-height: 1.8;
}

.home-stepper-card {
  margin-bottom: 1.25rem;
  padding: 0.75rem 1rem;
}

.home-content-card {
  padding: 1.25rem;
}

.home-stepper {
  display: flex;
  align-items: center;
}

.home-stepper-item {
  display: flex;
  align-items: center;
  flex: 1 1 auto;
}

.home-stepper-item.is-last {
  flex: 0 0 auto;
}

.home-stepper-node-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  padding: 0;
  border: 0;
  background: transparent;
}

.home-stepper-node-wrap.is-clickable {
  cursor: pointer;
}

.home-stepper-node-wrap.is-clickable:focus-visible {
  outline: 2px solid rgba(239, 128, 1, 0.55);
  outline-offset: 4px;
  border-radius: 10px;
}

.home-stepper-node-wrap.is-clickable:hover .home-stepper-node.is-completed {
  transform: translateY(-1px);
  box-shadow: 0 10px 20px rgba(239, 128, 1, 0.28);
}

.home-stepper-node {
  position: relative;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: rgba(95, 104, 120, 0.6);
  background: #eef2f4;
  transition: all 0.3s ease;
}

.home-stepper-node.is-completed {
  background: #ef8001;
  color: #fff;
  box-shadow: 0 8px 18px rgba(239, 128, 1, 0.25);
}

.home-stepper-node.is-current {
  background: #fff;
  color: #ef8001;
  border: 2.5px solid #ef8001;
  box-shadow: 0 6px 18px rgba(239, 128, 1, 0.2);
}

.home-stepper-index {
  font-size: 0.8rem;
  font-weight: 700;
  line-height: 1;
}

.home-stepper-check {
  width: 1rem;
  height: 1rem;
}

.home-stepper-pulse {
  position: absolute;
  inset: 0;
  border-radius: 999px;
  border: 2px solid rgba(239, 128, 1, 0.3);
  animation: home-step-ping 2s cubic-bezier(0, 0, 0.2, 1) infinite;
}

.home-stepper-label {
  margin-top: 0.375rem;
  color: rgba(95, 104, 120, 0.5);
  font-size: 0.7rem;
  line-height: 1.1;
  font-weight: 400;
  text-align: center;
  white-space: nowrap;
  transition: all 0.3s ease;
}

.home-stepper-label.is-completed {
  color: rgba(239, 128, 1, 0.8);
  font-weight: 500;
}

.home-stepper-label.is-current {
  color: #ef8001;
  font-weight: 700;
}

.home-stepper-label-short {
  display: inline;
}

.home-stepper-label-full {
  display: none;
}

.home-stepper-line {
  align-self: center;
  height: 2px;
  background: #eef2f4;
  flex: 1 1 auto;
  margin: 0 0.5rem;
  border-radius: 999px;
  overflow: hidden;
}

.home-stepper-line-fill {
  height: 100%;
  background: #ef8001;
  transition: width 0.5s ease-out;
}

.home-step-title {
  margin: 0;
  color: #141827;
  font-size: 1.35rem;
  font-weight: 700;
}

.home-step-subtitle {
  margin: 0.35rem 0 1.35rem;
  color: #5f6878;
  font-size: 0.92rem;
}

.home-loading-state,
.home-empty-state {
  min-height: 160px;
  border: 1px solid #dde3e7;
  border-radius: 14px;
  background: #f7f9fa;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.7rem;
  color: #5f6878;
  font-size: 0.9rem;
}

.home-loading-icon,
.home-empty-icon {
  width: 24px;
  height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.home-loading-icon {
  color: #ef8001;
}

.home-empty-icon {
  color: #dde3e7;
}

.home-loading-icon-svg,
.home-empty-icon-svg {
  width: 100%;
  height: 100%;
}

.home-loading-icon-svg {
  animation: spin-cw 0.95s linear infinite;
}

.home-empty-state {
  text-align: center;
  padding: 0.9rem 1.1rem;
}

.home-departure-list {
  display: grid;
  gap: 0.75rem;
}

.home-departure-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 1.25rem;
}

.home-departure-card {
  border: 2px solid #dde3e7;
  border-radius: 12px;
  background: #fff;
  width: 100%;
  padding: 0;
  text-align: left;
  display: block;
  overflow: hidden;
  appearance: none;
  -webkit-appearance: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.home-departure-card::-moz-focus-inner {
  border: 0;
  padding: 0;
}

.home-departure-inner {
  display: flex;
  align-items: stretch;
  min-height: 100%;
}

.home-departure-card:hover {
  border-color: rgba(239, 128, 1, 0.42);
  box-shadow: 0 4px 10px rgba(20, 24, 39, 0.08);
}

.home-departure-card.is-selected {
  border-color: #ef8001;
  box-shadow: 0 10px 20px rgba(239, 128, 1, 0.15);
}

.home-departure-media {
  width: 96px;
  flex: 0 0 auto;
  position: relative;
  overflow: hidden;
}

.home-departure-media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.45s ease;
}

.home-departure-card:hover .home-departure-media img {
  transform: scale(1.05);
}

.home-departure-media-overlay {
  position: absolute;
  inset: 0;
  background: rgba(239, 128, 1, 0.2);
}

.home-departure-placeholder {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, rgba(239, 128, 1, 0.2) 0%, rgba(34, 146, 211, 0.2) 100%);
}

.home-departure-placeholder-icon {
  width: 32px;
  height: 32px;
  color: rgba(239, 128, 1, 0.45);
}

.home-departure-content {
  display: block;
  min-width: 0;
  flex: 1 1 auto;
}

.home-departure-panel {
  min-width: 0;
  flex: 1 1 auto;
  padding: 1rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  background: #fff;
}

.home-departure-title {
  color: #141827;
  font-weight: 700;
  margin-bottom: 0.25rem;
  font-size: 1rem;
}

.home-departure-address {
  color: #5f6878;
  font-size: 0.82rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.home-departure-check {
  width: 32px;
  height: 32px;
  border-radius: 999px;
  color: #dde3e7;
  background: #eef2f4;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  transition: all 0.2s ease;
}

.home-departure-check-icon {
  width: 20px;
  height: 20px;
}

.home-departure-card.is-selected .home-departure-check {
  color: #fff;
  background: #ef8001;
}

.home-departure-card:not(.is-selected):hover .home-departure-check {
  color: rgba(239, 128, 1, 0.62);
}

.home-map-card {
  border: 1px solid #dde3e7;
  border-radius: 12px;
  overflow: hidden;
  background: #f7f9fa;
  box-shadow: 0 1px 2px rgba(20, 24, 39, 0.06);
  height: 100%;
  position: relative;
  min-height: 240px;
}

.home-map-iframe {
  position: absolute;
  inset: 0;
  border: 0;
  width: 100%;
  height: 100%;
}

.home-map-empty {
  min-height: 100%;
  background: #f7f9fa;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #5f6878;
  font-size: 0.85rem;
}

.home-actions-end {
  display: flex;
  justify-content: flex-end;
}

.home-actions-between {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  flex-wrap: wrap;
}

.home-ticket-group {
  margin-bottom: 0.35rem;
}

.home-counter-main {
  border: 1px solid #dde3e7;
  border-radius: 13px;
  background: #f7f9fa;
  padding: 0.75rem 0.95rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
}

.home-counter-left {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

.home-counter-icon {
  width: 34px;
  height: 34px;
  border-radius: 10px;
  color: #fff;
  background: var(--counter-accent);
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.home-counter-main-icon {
  width: 16px;
  height: 16px;
}

.home-counter-label {
  color: #141827;
  font-size: 0.93rem;
  font-weight: 600;
}

.home-counter-sublabel {
  color: #5f6878;
  font-size: 0.77rem;
}

.home-counter-controls {
  display: flex;
  align-items: center;
  gap: 0.45rem;
}

.home-counter-btn {
  width: 31px;
  height: 31px;
  border-radius: 10px;
  border: 2px solid var(--counter-accent);
  color: var(--counter-accent);
  background: #fff;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.home-counter-btn:disabled {
  opacity: 0.35;
  cursor: not-allowed;
}

.home-counter-btn-icon {
  width: 15px;
  height: 15px;
}

.home-counter-value {
  width: 28px;
  text-align: center;
  color: #141827;
  font-size: 1.1rem;
  font-weight: 700;
}

.home-ticket-group-rows {
  margin-top: 0.65rem;
  margin-left: 0.95rem;
  padding-left: 0.95rem;
  border-left: 2px solid #eef2f4;
  display: grid;
  gap: 0.7rem;
}

.home-ticket-group-rows.is-ar {
  border-left-color: rgba(139, 92, 246, 0.28);
}

.home-ticket-group-rows.is-aller {
  border-left-color: rgba(239, 128, 1, 0.28);
}

.home-ticket-group-rows.is-retour {
  border-left-color: rgba(34, 146, 211, 0.28);
}

.home-ticket-card {
  border-radius: 13px;
  border: 1px solid color-mix(in srgb, var(--ticket-accent) 30%, #fff);
  overflow: hidden;
  background: #fff;
}

.home-ticket-card-head {
  padding: 0.62rem 0.9rem;
  color: #141827;
  font-size: 0.87rem;
  font-weight: 600;
  border-bottom: 1px solid color-mix(in srgb, var(--ticket-accent) 18%, #fff);
  background: color-mix(in srgb, var(--ticket-accent) 6%, #fff);
}

.home-ticket-card-body {
  padding: 0.92rem 0.95rem;
}

.home-direction-picker + .home-direction-picker {
  margin-top: 0.9rem;
  padding-top: 0.9rem;
  border-top: 1px solid #eef2f4;
}

.home-direction-label {
  display: flex;
  align-items: center;
  gap: 0.35rem;
  color: #5f6878;
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  margin-bottom: 0.5rem;
}

.home-direction-label-icon {
  width: 20px;
  height: 20px;
  border-radius: 4px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--direction-accent);
  background: color-mix(in srgb, var(--direction-accent) 16%, #fff);
}

.home-direction-label-icon-svg {
  width: 12px;
  height: 12px;
}

.home-day-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
}

.home-day-badge {
  border: 2px solid #dde3e7;
  border-radius: 10px;
  background: #fff;
  min-width: 85px;
  color: #141827;
  text-align: center;
  padding: 0.45rem 0.55rem;
}

.home-day-badge.is-active {
  border-color: var(--badge-accent);
  background: var(--badge-accent);
  color: #fff;
  box-shadow: 0 8px 20px color-mix(in srgb, var(--badge-accent) 25%, transparent);
}

.home-day-name {
  display: block;
  font-size: 0.83rem;
  font-weight: 700;
  line-height: 1;
}

.home-day-date {
  display: block;
  font-size: 0.72rem;
  line-height: 1.1;
  margin-top: 0.16rem;
  color: #5f6878;
}

.home-day-badge.is-active .home-day-date {
  color: rgba(255, 255, 255, 0.82);
}

.home-slot-grid {
  margin-top: 0.62rem;
  display: grid;
  gap: 0.42rem;
  grid-template-columns: repeat(auto-fill, minmax(122px, 1fr));
}

.home-slot-card {
  border: 2px solid #dde3e7;
  border-radius: 12px;
  background: #fff;
  text-align: center;
  padding: 0.5rem 0.45rem;
  transition: all 0.2s ease;
  position: relative;
}

.home-slot-card.is-selected {
  border-color: var(--slot-accent);
  background: color-mix(in srgb, var(--slot-accent) 6%, #fff);
  box-shadow: 0 7px 16px color-mix(in srgb, var(--slot-accent) 16%, transparent);
}

.home-slot-card.is-full {
  background: #eef2f4;
  opacity: 0.55;
  cursor: not-allowed;
}

.home-slot-card.is-overbooked {
  border-color: #ef4444;
  background: #fef2f2;
  animation: pulse-overbooked 1.4s ease infinite;
}

.home-slot-time {
  color: #141827;
  font-size: 0.88rem;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.22rem;
}

.home-slot-time-icon {
  width: 14px;
  height: 14px;
  color: #5f6878;
  display: inline-flex;
}

.home-slot-time-icon-svg {
  width: 100%;
  height: 100%;
}

.home-slot-card.is-overbooked .home-slot-time-icon {
  color: #dc2626;
}

.home-slot-badge {
  position: absolute;
  top: -7px;
  right: -7px;
  width: 20px;
  height: 20px;
  border-radius: 999px;
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.home-slot-badge.is-selected {
  background: var(--slot-accent);
}

.home-slot-badge.is-danger {
  background: #ef4444;
}

.home-slot-badge-icon {
  width: 12px;
  height: 12px;
}

.home-slot-progress {
  margin-top: 0.3rem;
  width: 100%;
  height: 5px;
  border-radius: 999px;
  overflow: hidden;
  background: #dde3e7;
}

.home-slot-progress span {
  display: block;
  height: 100%;
  border-radius: 999px;
  background: #34d399;
}

.home-slot-progress span.is-medium {
  background: #fbbf24;
}

.home-slot-progress span.is-high {
  background: #f87171;
}

.home-slot-status {
  margin-top: 0.2rem;
  color: #5f6878;
  font-size: 0.67rem;
}

.home-slot-status.danger {
  color: #dc2626;
  font-weight: 600;
}

.home-slot-empty {
  margin-top: 0.62rem;
  border: 1px solid #facc15;
  background: #fffbeb;
  color: #92400e;
  border-radius: 10px;
  font-size: 0.79rem;
  padding: 0.62rem 0.7rem;
}

.home-imprint-notice {
  border-radius: 12px;
  border: 1px solid rgba(34, 146, 211, 0.24);
  background: rgba(34, 146, 211, 0.06);
  padding: 0.85rem 0.95rem;
  margin-bottom: 0.9rem;
}

.home-imprint-inner {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
}

.home-imprint-icon {
  width: 20px;
  height: 20px;
  color: #2292d3;
  flex: 0 0 auto;
  margin-top: 0.15rem;
}

.home-imprint-icon-svg {
  width: 100%;
  height: 100%;
}

.home-imprint-title {
  color: #141827;
  font-weight: 700;
  font-size: 0.9rem;
}

.home-imprint-notice p {
  margin: 0.35rem 0 0;
  color: #5f6878;
  font-size: 0.79rem;
  line-height: 1.58;
}

.home-imprint-notice strong {
  color: #141827;
}

.home-alert-danger {
  border: 1px solid #fca5a5;
  background: #fef2f2;
  color: #b91c1c;
  border-radius: 11px;
  margin-top: 0.55rem;
  padding: 0.72rem 0.8rem;
  font-size: 0.82rem;
  display: flex;
  align-items: center;
  gap: 0.65rem;
}

.home-alert-danger-icon {
  width: 18px;
  height: 18px;
  color: #ef4444;
  flex: 0 0 auto;
  margin-top: 0;
}

.home-alert-danger-icon-svg {
  width: 100%;
  height: 100%;
}

.home-btn-primary {
  border: 0;
  border-radius: 12px;
  background: #ef8001;
  color: #fff;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.48rem;
  padding: 0.75rem 2rem;
  box-shadow: 0 10px 20px rgba(239, 128, 1, 0.2);
  transition: background-color 0.2s ease, box-shadow 0.2s ease;
}

.home-btn-primary:hover,
.home-btn-primary:focus {
  background: #d97001;
  color: #fff;
}

.home-btn-primary:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}

.home-btn-primary-lg {
  padding-left: 2rem;
  padding-right: 2rem;
}

.home-btn-icon {
  width: 16px;
  height: 16px;
}

.home-btn-neutral {
  border: 1px solid #dde3e7;
  border-radius: 12px;
  background: #fff;
  color: #141827;
  font-weight: 500;
  padding: 0.75rem 1.5rem;
  transition: background-color 0.2s ease, border-color 0.2s ease;
}

.home-btn-neutral:hover,
.home-btn-neutral:focus {
  background: #eef2f4;
  border-color: #d4dce2;
  color: #141827;
}

.home-btn-neutral:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.home-btn-confirm {
  padding: 1rem 2rem;
  font-weight: 600;
}

.spin-icon {
  animation: spin-cw 1s linear infinite;
}

.home-auth-wrapper {
  max-width: 560px;
  margin: 0 auto;
}

.home-auth-tabs {
  display: flex;
  gap: 0.35rem;
  background: #eef2f4;
  border-radius: 12px;
  padding: 0.28rem;
  margin-bottom: 0.9rem;
}

.home-auth-tab {
  flex: 1;
  border: 0;
  border-radius: 9px;
  background: transparent;
  color: #5f6878;
  font-size: 0.88rem;
  font-weight: 600;
  padding: 0.52rem 0.65rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
}

.home-auth-tab-icon {
  width: 16px;
  height: 16px;
  flex: 0 0 auto;
}

.home-auth-tab.is-active {
  background: #fff;
  color: #141827;
  box-shadow: 0 3px 10px rgba(20, 24, 39, 0.1);
}

.home-input {
  border-radius: 11px;
  border-color: #dde3e7;
  background: #f7f9fa;
}

.home-input:focus {
  border-color: #ef8001;
  box-shadow: 0 0 0 0.2rem rgba(239, 128, 1, 0.15);
}

.home-input.is-invalid {
  border-color: #ef4444;
}

.home-step-auth-like .home-input {
  border: 1px solid #dde3e7;
  border-radius: 9px;
  background: #f9fbfc;
  min-height: 40px;
  font-size: 0.83rem;
  padding-top: 0.52rem;
  padding-bottom: 0.52rem;
}

.home-step-auth-like .home-input:focus {
  border-color: #ef8001;
  box-shadow: 0 0 0 2px rgba(239, 128, 1, 0.14);
  background: #f9fbfc;
}

.home-field-error {
  color: #ef4444;
  font-size: 0.72rem;
  margin-top: 0.28rem;
}

.home-password-group {
  position: relative;
}

.home-password-group .home-input {
  padding-right: 5.4rem;
}

.home-password-toggle {
  position: absolute;
  top: 50%;
  right: 0.62rem;
  transform: translateY(-50%);
  border: 0;
  background: transparent;
  color: #5f6878;
  font-size: 0.75rem;
  font-weight: 600;
}

.home-back-link {
  border: 0;
  background: transparent;
  color: #5f6878;
  font-size: 0.84rem;
}

.home-auth-connected {
  max-width: 580px;
  margin: 0 auto;
}

.home-auth-connected-shell {
  max-width: 32rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.home-auth-connected-panel {
  border: 1px solid #a7f3d0;
  background: rgba(236, 253, 245, 0.5);
  border-radius: 12px;
  overflow: hidden;
}

.home-auth-connected-strip {
  height: 4px;
  background: #10b981;
}

.home-auth-connected-body {
  padding: 1.25rem;
}

.home-auth-connected-row {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.home-auth-connected-avatar {
  width: 3rem;
  height: 3rem;
  border-radius: 999px;
  background: #d1fae5;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
}

.home-auth-connected-avatar-icon {
  width: 1.5rem;
  height: 1.5rem;
  color: #059669;
}

.home-auth-connected-main {
  flex: 1 1 auto;
  min-width: 0;
}

.home-auth-connected-badge {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  background: #d1fae5;
  color: #047857;
  font-size: 0.72rem;
  font-weight: 600;
  padding: 0.25rem 0.62rem;
  flex: 0 0 auto;
}

.home-auth-connected-name {
  color: #141827;
  font-size: 0.95rem;
  font-weight: 600;
  margin-bottom: 0.1rem;
}

.home-auth-connected-email {
  color: #5f6878;
  font-size: 0.85rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.home-auth-switch-account {
  color: #5f6878;
  font-size: 0.82rem;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 0.38rem;
}

.home-auth-switch-account:hover {
  color: #141827;
}

.home-auth-switch-account-icon {
  width: 14px;
  height: 14px;
}

.home-auth-connected-actions {
  margin-top: 1.5rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
}

.home-passengers-list {
  display: grid;
  gap: 1rem;
}

.home-passenger-card {
  border: 1px solid #dde3e7;
  border-radius: 12px;
  overflow: hidden;
  background: #fff;
}

.home-passenger-head {
  padding: 0.75rem 1rem;
  display: flex;
  align-items: center;
  gap: 0.75rem;
  background: color-mix(in srgb, var(--pax-accent) 8%, #fff);
  border-bottom: 2px solid color-mix(in srgb, var(--pax-accent) 18%, #fff);
}

.home-passenger-type-icon {
  width: 2rem;
  height: 2rem;
  border-radius: 0.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--pax-accent);
  color: #fff;
  flex: 0 0 auto;
}

.home-passenger-type-icon-svg {
  width: 1rem;
  height: 1rem;
}

.home-passenger-head-main {
  flex: 1 1 auto;
  min-width: 0;
}

.home-passenger-title {
  color: #141827;
  font-size: 0.9rem;
  font-weight: 600;
}

.home-passenger-trips {
  margin-top: 0.15rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem 0.75rem;
}

.home-passenger-trip-chip {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  color: #5f6878;
  font-size: 0.8rem;
  line-height: 1.3;
}

.home-passenger-trip-icon {
  width: 12px;
  height: 12px;
  flex: 0 0 auto;
}

.home-passenger-trip-icon.is-aller {
  color: #ef8001;
}

.home-passenger-trip-icon.is-retour {
  color: #2292d3;
}

.home-passenger-body {
  padding: 1rem;
}

.home-passenger-form-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0.75rem;
}

.home-passenger-label {
  display: block;
  margin-bottom: 0.25rem;
  color: #5f6878;
  font-size: 0.8rem;
  font-weight: 500;
}

.home-passenger-input {
  border-radius: 12px;
  border-color: #dde3e7;
  background: #fff;
  padding: 0.625rem 0.875rem;
}

.home-passenger-input::placeholder {
  color: #9ca6b6;
  opacity: 1;
}

.home-passenger-input:focus {
  border-color: #ef8001;
  box-shadow: 0 0 0 0.2rem rgba(239, 128, 1, 0.15);
}

.home-passenger-input.is-invalid {
  border-color: #f87171;
}

.home-passenger-input.is-invalid:focus {
  border-color: #f87171;
  box-shadow: 0 0 0 0.2rem rgba(248, 113, 113, 0.18);
}

.home-passenger-help {
  border: 1px solid #dbe6ee;
  background: #f7fbff;
  border-radius: 12px;
  color: #415068;
  font-size: 0.82rem;
  line-height: 1.55;
  padding: 0.72rem 0.86rem;
  margin: 0 0 1rem;
}

.home-passenger-field-error {
  color: #ef4444;
  font-size: 0.72rem;
  margin: 0.32rem 0 0;
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
}

.home-passenger-field-error-icon {
  width: 12px;
  height: 12px;
  flex: 0 0 auto;
}

.home-summary-route {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  border-bottom: 1px solid #dde3e7;
  margin-bottom: 1.25rem;
  padding-bottom: 1rem;
}

.home-summary-route-icon {
  width: 20px;
  height: 20px;
  color: #ef8001;
  flex: 0 0 auto;
}

.home-summary-route-icon-svg {
  width: 100%;
  height: 100%;
}

.home-summary-route-title {
  color: #141827;
  font-weight: 600;
  font-size: 0.95rem;
}

.home-summary-route-meta {
  color: #5f6878;
  font-size: 0.85rem;
}

.home-summary-list {
  display: grid;
  gap: 1rem;
}

.home-summary-ticket {
  border: 2px solid color-mix(in srgb, var(--summary-accent) 20%, #fff);
  border-radius: 12px;
  overflow: hidden;
  background: #fff;
}

.home-summary-ticket-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 0.75rem 1rem;
  background: color-mix(in srgb, var(--summary-accent) 6%, #fff);
}

.home-summary-ticket-type-wrap {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

.home-summary-ticket-type-icon {
  width: 2rem;
  height: 2rem;
  border-radius: 0.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--summary-accent);
  color: #fff;
  flex: 0 0 auto;
}

.home-summary-ticket-type-icon-svg {
  width: 1rem;
  height: 1rem;
}

.home-summary-ticket-type {
  color: #141827;
  font-size: 0.9rem;
  font-weight: 600;
}

.home-summary-ticket-number {
  color: #5f6878;
  font-size: 0.75rem;
}

.home-summary-ticket-holder {
  text-align: right;
  color: #141827;
  font-size: 0.85rem;
  font-weight: 600;
}

.home-summary-ticket-holder-code {
  color: #5f6878;
  font-size: 0.7rem;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

.home-summary-ticket-body {
  display: grid;
  gap: 0.75rem;
  padding: 0.75rem 1rem;
}

.home-summary-trip {
  border-radius: 0.5rem;
  padding: 0.75rem;
  background: color-mix(in srgb, var(--summary-accent) 6%, #fff);
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

.home-summary-trip-icon {
  width: 1rem;
  height: 1rem;
  color: var(--summary-accent);
  flex: 0 0 auto;
}

.home-summary-trip-icon-svg {
  width: 100%;
  height: 100%;
}

.home-summary-trip-main {
  min-width: 0;
  flex: 1 1 auto;
}

.home-summary-trip-line {
  color: #141827;
  font-size: 0.85rem;
  font-weight: 600;
}

.home-summary-trip-meta {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  color: #5f6878;
  font-size: 0.8rem;
}

.home-summary-trip-clock {
  width: 12px;
  height: 12px;
  flex: 0 0 auto;
}

.home-summary-trip-meta .dot {
  color: #dde3e7;
}

.home-summary-trip-meta .time {
  font-weight: 600;
  color: var(--summary-accent);
}

.home-summary-imprint {
  margin-top: 1.25rem;
  border-radius: 12px;
  background: #141827;
  color: rgba(255, 255, 255, 0.86);
  padding: 1rem;
}

.home-summary-imprint-inner {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
}

.home-summary-imprint-icon {
  width: 20px;
  height: 20px;
  color: rgba(255, 255, 255, 0.8);
  flex: 0 0 auto;
  margin-top: 0.125rem;
}

.home-summary-imprint-icon-svg {
  width: 100%;
  height: 100%;
}

.home-summary-imprint-title {
  color: #fff;
  font-weight: 600;
}

.home-summary-imprint p {
  margin: 0.25rem 0 0;
  font-size: 0.8rem;
  line-height: 1.6;
}

.home-summary-imprint strong {
  color: #fff;
}

.home-summary-cgv {
  margin-top: 0.95rem;
}

.home-summary-cgv-label {
  display: inline-flex;
  align-items: flex-start;
  gap: 0.5rem;
  color: #414b5c;
  font-size: 0.95rem;
  font-weight: 500;
  line-height: 1.45;
}

.home-summary-cgv-label .form-check-input {
  width: 1.08rem;
  height: 1.08rem;
  margin-top: 0.15rem;
  border-color: #ef8001;
  cursor: pointer;
}

.home-summary-cgv-label .form-check-input:checked {
  background-color: #ef8001;
  border-color: #ef8001;
}

.home-summary-cgv-label .form-check-input:focus {
  border-color: #ef8001;
  box-shadow: 0 0 0 0.2rem rgba(239, 128, 1, 0.2);
}

.home-summary-cgv-label a {
  color: #ef8001;
  font-weight: 700;
  text-decoration: underline;
}

.confirmation-shell {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0.5rem 0 1.25rem;
}

.confirmation-loading {
  min-height: 320px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.confirmation-loader-icon {
  width: 2rem;
  height: 2rem;
  color: #ef8001;
  animation: spin-cw 1s linear infinite;
}

.confirmation-state {
  min-height: 320px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.confirmation-state-inner {
  max-width: 32rem;
  text-align: center;
  padding: 0 1rem;
}

.confirmation-state-icon {
  width: 64px;
  height: 64px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1rem;
}

.confirmation-state-icon.is-warning {
  background: #fef3c7;
  color: #d97706;
}

.confirmation-state-icon.is-danger {
  background: #fee2e2;
  color: #dc2626;
}

.confirmation-state-icon-svg {
  width: 2rem;
  height: 2rem;
}

.confirmation-state-title {
  color: #141827;
  margin-bottom: 0.5rem;
}

.confirmation-state-text {
  color: #5f6878;
  font-size: 0.9rem;
  margin-bottom: 1.5rem;
}

.confirmation-state-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  text-decoration: none;
}

.confirmation-hero {
  text-align: center;
  margin-bottom: 2rem;
}

.confirmation-hero-icon {
  width: 80px;
  height: 80px;
  border-radius: 999px;
  background: #d1fae5;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #059669;
  margin-bottom: 1rem;
}

.confirmation-hero-icon-svg {
  width: 2.5rem;
  height: 2.5rem;
}

.confirmation-hero-title {
  color: #141827;
  margin-bottom: 0.45rem;
}

.confirmation-hero-subtitle {
  color: #5f6878;
  font-size: 0.95rem;
  margin: 0;
}

.confirmation-order-card {
  background: #fff;
  border: 1px solid #dde3e7;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 1px 2px rgba(20, 24, 39, 0.06);
  margin-bottom: 1.5rem;
}

.confirmation-order-head {
  padding: 1rem 1.25rem;
  border-bottom: 1px solid #dde3e7;
}

.confirmation-order-title {
  color: #141827;
  font-size: 1.15rem;
  font-weight: 600;
  margin: 0;
}

.confirmation-order-title-date {
  margin-left: 0.4rem;
  color: #8b94a4;
  font-size: 0.88em;
  font-weight: 500;
}

.confirmation-order-meta {
  margin-top: 0.2rem;
  color: #5f6878;
  font-size: 0.85rem;
}

.confirmation-order-list {
  padding: 1.25rem;
  display: grid;
  gap: 1rem;
}

.confirmation-imprint {
  background: #141827;
  padding: 1.25rem;
}

.confirmation-imprint .home-summary-imprint-title {
  color: #fff;
}

.confirmation-imprint p {
  margin: 0.25rem 0 0;
  font-size: 0.8rem;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.68);
}

.confirmation-imprint strong {
  color: #fff;
}

.confirmation-next {
  background: #fff;
  border: 1px solid #dde3e7;
  border-radius: 16px;
  padding: 1.25rem;
  margin-bottom: 1.5rem;
}

.confirmation-next-row {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
}

.confirmation-next-icon {
  width: 20px;
  height: 20px;
  color: #2292d3;
  flex: 0 0 auto;
  margin-top: 0.125rem;
}

.confirmation-next-icon-svg {
  width: 100%;
  height: 100%;
}

.confirmation-next-title {
  color: #141827;
  font-size: 0.9rem;
  font-weight: 600;
  margin: 0;
}

.confirmation-next-text {
  color: #5f6878;
  font-size: 0.85rem;
  line-height: 1.6;
  margin: 0.25rem 0 0;
}

.confirmation-actions {
  display: flex;
  justify-content: center;
}

.confirmation-account-btn {
  border: 0;
  border-radius: 12px;
  background: #ef8001;
  color: #fff;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 0.75rem 2rem;
  box-shadow: 0 10px 20px rgba(239, 128, 1, 0.2);
  transition: background-color 0.2s ease, box-shadow 0.2s ease;
  text-decoration: none;
}

.confirmation-account-btn:hover,
.confirmation-account-btn:focus {
  background: #d97001;
  color: #fff;
}

.order-detail-page {
  max-width: 1280px;
  margin: 0 auto;
}

.order-detail-content {
  min-height: 320px;
}

.order-detail-loading {
  min-height: 320px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  color: #5f6878;
  font-size: 0.9rem;
}

.order-detail-shell {
  max-width: 1280px;
  margin: 0 auto;
}

.order-detail-back-link {
  display: inline-flex;
  align-items: center;
  gap: 0.28rem;
  text-decoration: none;
  color: #5f6878;
  font-size: 0.9rem;
  margin-bottom: 1.2rem;
}

.order-detail-back-link:hover {
  color: #141827;
}

.order-detail-back-icon {
  width: 1rem;
  height: 1rem;
}

.order-detail-card {
  background: #fff;
  border: 1px solid #dde3e7;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 1px 2px rgba(20, 24, 39, 0.06);
}

.order-detail-head {
  padding: 1.25rem 1.5rem;
  border-bottom: 1px solid #dde3e7;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.8rem;
  flex-wrap: wrap;
}

.order-detail-head-main {
  min-width: 0;
}

.order-detail-title {
  margin: 0;
  color: #141827;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.3;
}

.order-detail-order-id {
  margin-top: 0.15rem;
  color: #5f6878;
  font-size: 0.83rem;
}

.order-detail-status-chip {
  display: inline-flex;
  align-items: center;
  gap: 0.42rem;
  border-radius: 999px;
  padding: 0.33rem 0.72rem;
  font-size: 0.78rem;
  font-weight: 600;
}

.order-detail-status-chip .dot {
  width: 0.4rem;
  height: 0.4rem;
  border-radius: 999px;
}

.order-detail-status-chip.is-confirmed {
  background: #ecfdf3;
  color: #047857;
}

.order-detail-status-chip.is-confirmed .dot {
  background: #10b981;
}

.order-detail-status-chip.is-pending {
  background: #fff7ed;
  color: #c2410c;
}

.order-detail-status-chip.is-pending .dot {
  background: #f97316;
}

.order-detail-status-chip.is-charged {
  background: #eff6ff;
  color: #1d4ed8;
}

.order-detail-status-chip.is-charged .dot {
  background: #3b82f6;
}

.order-detail-status-chip.is-cancelled {
  background: #fef2f2;
  color: #b91c1c;
}

.order-detail-status-chip.is-cancelled .dot {
  background: #ef4444;
}

.order-detail-status-chip.is-neutral {
  background: #f7f9fa;
  color: #5f6878;
}

.order-detail-status-chip.is-neutral .dot {
  background: #9ca3af;
}

.order-detail-head-status {
  display: inline-flex;
  align-items: center;
}

.order-detail-actions {
  padding: 1rem 1.5rem;
  border-bottom: 1px solid #dde3e7;
  display: flex;
  align-items: center;
  gap: 0.62rem;
  flex-wrap: wrap;
}

.order-detail-action-btn {
  border: 0;
  border-radius: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 0.66rem 0.95rem;
  font-size: 0.85rem;
  font-weight: 600;
  text-decoration: none;
  transition: background-color 0.2s ease, color 0.2s ease, opacity 0.2s ease;
}

.order-detail-action-btn.is-imprint {
  background: #ef8001;
  color: #fff;
}

.order-detail-action-btn.is-imprint:hover {
  background: #d97001;
  color: #fff;
}

.order-detail-action-btn.is-download {
  background: #2292d3;
  color: #fff;
}

.order-detail-action-btn.is-download:hover {
  background: #1d7fb8;
  color: #fff;
}

.order-detail-action-btn.is-disabled {
  opacity: 0.45;
  pointer-events: none;
}

.order-detail-action-icon {
  width: 15px;
  height: 15px;
}

.order-detail-section {
  padding: 1.25rem 1.5rem;
}

.order-detail-section + .order-detail-section {
  border-top: 1px solid #dde3e7;
}

.order-detail-section-title {
  color: #141827;
  font-size: 1.03rem;
  font-weight: 600;
  margin: 0 0 0.8rem;
}

.order-detail-trips-list {
  display: grid;
  gap: 0.52rem;
}

.order-detail-trip-item {
  border: 1px solid color-mix(in srgb, var(--trip-accent) 18%, #fff);
  border-radius: 10px;
  background: color-mix(in srgb, var(--trip-accent) 5%, #fff);
  display: flex;
  align-items: center;
  gap: 0.65rem;
  padding: 0.72rem 0.8rem;
}

.order-detail-trip-icon-wrap {
  width: 1.7rem;
  height: 1.7rem;
  border-radius: 8px;
  background: color-mix(in srgb, var(--trip-accent) 16%, #fff);
  color: var(--trip-accent);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
}

.order-detail-trip-icon {
  width: 0.95rem;
  height: 0.95rem;
}

.order-detail-trip-main {
  min-width: 0;
}

.order-detail-trip-line {
  color: #141827;
  font-size: 0.9rem;
  font-weight: 600;
}

.order-detail-trip-meta {
  margin-top: 0.08rem;
  color: #5f6878;
  font-size: 0.8rem;
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
}

.order-detail-trip-meta-icon {
  width: 12px;
  height: 12px;
}

.order-detail-empty-strip {
  border: 1px solid #dde3e7;
  border-radius: 10px;
  background: #f7f9fa;
  color: #5f6878;
  font-size: 0.84rem;
  padding: 0.74rem 0.85rem;
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
}

.order-detail-empty-strip-icon {
  width: 15px;
  height: 15px;
}

.order-detail-ticket-list {
  display: grid;
  gap: 0.85rem;
}

.order-detail-summary-ticket.is-scanned {
  border-color: #86efac;
}

.order-detail-summary-ticket.is-cancelled {
  border-color: #fca5a5;
}

.order-detail-summary-head-right {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  flex: 0 0 auto;
}

.order-detail-summary-meta {
  border-top: 1px solid #e8edf1;
  background: #fff;
  padding: 0.7rem 0.95rem 0.8rem;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.65rem;
}

.order-detail-summary-meta-item {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0.16rem;
}

.order-detail-summary-meta-label {
  color: #5f6878;
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.01em;
}

.order-detail-summary-meta-value {
  color: #141827;
  font-size: 0.82rem;
  font-weight: 600;
  line-height: 1.35;
  word-break: break-word;
}

.order-detail-ticket-edit-open-btn {
  border: 1px solid #dde3e7;
  border-radius: 8px;
  background: #fff;
  color: #4a5565;
  font-size: 0.74rem;
  font-weight: 600;
  line-height: 1;
  padding: 0.46rem 0.58rem;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.order-detail-ticket-edit-open-btn:hover {
  background: #eef2f4;
  border-color: #d4dce2;
  color: #141827;
}

.order-detail-ticket-modal {
  border-radius: 14px;
  border: 1px solid #dde3e7;
}

.order-detail-ticket-modal .modal-header,
.order-detail-ticket-modal .modal-footer {
  border-color: #e9edf1;
}

.order-detail-ticket-modal .modal-title {
  color: #141827;
  font-size: 1rem;
  font-weight: 600;
  margin: 0;
}

.order-detail-ticket-modal-context {
  margin: 0.18rem 0 0;
  color: #8a94a6;
  font-size: 0.76rem;
  line-height: 1.35;
}

.order-detail-ticket-modal-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.7rem;
}

.order-detail-ticket-modal-field {
  min-width: 0;
}

.order-detail-ticket-modal-field label {
  display: block;
  color: #5f6878;
  font-size: 0.75rem;
  font-weight: 600;
  margin-bottom: 0.25rem;
}

.order-detail-ticket-modal-field input {
  width: 100%;
  border: 1px solid #dde3e7;
  border-radius: 9px;
  background: #f9fbfc;
  color: #141827;
  font-size: 0.83rem;
  padding: 0.52rem 0.6rem;
}

.order-detail-ticket-modal-field input:focus {
  outline: none;
  border-color: #ef8001;
  box-shadow: 0 0 0 2px rgba(239, 128, 1, 0.14);
}

.order-detail-ticket-modal-field input.is-invalid {
  border-color: #f87171;
}

.order-detail-ticket-modal-field-error {
  margin: 0.24rem 0 0;
  color: #ef4444;
  font-size: 0.72rem;
}

.order-detail-ticket-modal-submit {
  border: 0;
  border-radius: 10px;
  background: #ef8001;
  color: #fff;
  font-size: 0.82rem;
  font-weight: 600;
  padding: 0.55rem 0.82rem;
}

.order-detail-ticket-modal-submit:hover {
  background: #d97001;
}

.order-detail-ticket-modal-submit:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.order-detail-ticket-modal-feedback {
  margin-top: 0.65rem;
  color: #5f6878;
  font-size: 0.75rem;
  min-height: 1.1rem;
}

.order-detail-ticket-modal-feedback.is-success {
  color: #15803d;
}

.order-detail-ticket-modal-feedback.is-error {
  color: #b91c1c;
}

.order-detail-ticket-card {
  border: 1px solid color-mix(in srgb, var(--ticket-accent) 30%, #fff);
  border-radius: 12px;
  overflow: hidden;
  background: #fff;
}

.order-detail-ticket-card.is-scanned {
  border-color: #86efac;
}

.order-detail-ticket-card.is-cancelled {
  border-color: #fca5a5;
}

.order-detail-ticket-head {
  padding: 0.85rem 0.95rem;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.7rem;
  background: color-mix(in srgb, var(--ticket-accent) 7%, #fff);
}

.order-detail-ticket-head-left {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 0.65rem;
}

.order-detail-ticket-type-icon {
  width: 2rem;
  height: 2rem;
  border-radius: 0.5rem;
  background: var(--ticket-accent);
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
}

.order-detail-ticket-card.is-scanned .order-detail-ticket-type-icon {
  background: #16a34a;
}

.order-detail-ticket-type-icon-svg {
  width: 1rem;
  height: 1rem;
}

.order-detail-ticket-main {
  min-width: 0;
}

.order-detail-ticket-title-row {
  display: flex;
  align-items: center;
  gap: 0.45rem;
  flex-wrap: wrap;
}

.order-detail-ticket-title {
  color: #141827;
  font-size: 0.92rem;
  font-weight: 600;
}

.order-detail-ticket-type-pill {
  border-radius: 0.42rem;
  background: color-mix(in srgb, var(--ticket-accent) 14%, #fff);
  color: var(--ticket-accent);
  font-size: 0.7rem;
  font-weight: 600;
  padding: 0.18rem 0.44rem;
}

.order-detail-ticket-meta {
  margin-top: 0.14rem;
  color: #5f6878;
  font-size: 0.76rem;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.38rem;
}

.order-detail-ticket-meta-item {
  display: inline-flex;
  align-items: center;
  gap: 0.2rem;
}

.order-detail-ticket-meta .dot {
  color: #dde3e7;
}

.order-detail-ticket-meta-icon {
  width: 11px;
  height: 11px;
}

.order-detail-ticket-state {
  border-radius: 999px;
  padding: 0.24rem 0.56rem;
  font-size: 0.7rem;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  gap: 0.28rem;
  white-space: nowrap;
}

.order-detail-ticket-state-icon {
  width: 11px;
  height: 11px;
}

.order-detail-ticket-state.is-scanned {
  background: #dcfce7;
  color: #15803d;
}

.order-detail-ticket-state.is-cancelled {
  background: #fee2e2;
  color: #b91c1c;
}

.order-detail-ticket-state.is-pending {
  background: #fffbeb;
  color: #a16207;
  border: 1px solid #fde68a;
}

.order-detail-ticket-head-right {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  gap: 0.45rem;
}

.order-detail-ticket-download-btn {
  width: 28px;
  height: 28px;
  border: 1px solid #dde3e7;
  border-radius: 8px;
  background: #fff;
  color: #5f6878;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.order-detail-ticket-download-btn:hover {
  background: #eef2f4;
  border-color: #d4dce2;
  color: #141827;
}

.order-detail-ticket-download-icon {
  width: 13px;
  height: 13px;
}

.order-detail-ticket-body {
  border-top: 1px solid #eef2f4;
  padding: 0.9rem 0.95rem;
}

.order-detail-ticket-trips {
  display: grid;
  gap: 0.42rem;
}

.order-detail-ticket-trip {
  border-radius: 8px;
  background: color-mix(in srgb, var(--ticket-accent) 6%, #fff);
  padding: 0.6rem 0.68rem;
}

.order-detail-ticket-trip-line {
  color: #141827;
  font-size: 0.81rem;
  font-weight: 600;
}

.order-detail-ticket-trip-meta {
  color: #5f6878;
  font-size: 0.75rem;
  margin-top: 0.1rem;
  display: inline-flex;
  align-items: center;
  gap: 0.24rem;
}

.order-detail-ticket-trip-meta-icon {
  width: 11px;
  height: 11px;
}

.order-detail-ticket-holder-grid {
  margin-top: 0.7rem;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.58rem;
}

.order-detail-ticket-holder-col {
  min-width: 0;
}

.order-detail-ticket-holder-label {
  color: #5f6878;
  font-size: 0.74rem;
}

.order-detail-ticket-holder-value {
  color: #141827;
  font-size: 0.82rem;
  margin-top: 0.08rem;
  word-break: break-word;
}

.order-detail-footer {
  border-top: 1px solid #dde3e7;
  background: #f7f9fa;
  padding: 0.95rem 1.5rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  flex-wrap: wrap;
}

.order-detail-imprint-line {
  display: inline-flex;
  align-items: center;
  gap: 0.42rem;
  color: #5f6878;
  font-size: 0.84rem;
}

.order-detail-imprint-line strong {
  color: #141827;
}

.order-detail-imprint-icon {
  width: 15px;
  height: 15px;
  color: #5f6878;
}

.order-detail-total-line {
  color: #141827;
  font-size: 1rem;
  font-weight: 700;
}

.order-detail-bottom-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.62rem;
  margin-top: 1rem;
  flex-wrap: wrap;
}

.order-detail-primary-btn,
.order-detail-secondary-btn {
  border-radius: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
  text-decoration: none;
  font-size: 0.84rem;
  font-weight: 600;
  padding: 0.66rem 1.05rem;
}

.order-detail-primary-btn {
  border: 0;
  background: #ef8001;
  color: #fff;
}

.order-detail-primary-btn:hover {
  background: #d97001;
  color: #fff;
}

.order-detail-secondary-btn {
  border: 1px solid #dde3e7;
  background: #fff;
  color: #141827;
}

.order-detail-secondary-btn:hover {
  background: #eef2f4;
  color: #141827;
}

.order-detail-bottom-icon {
  width: 15px;
  height: 15px;
}

.order-detail-error-card {
  background: #fff;
  border: 1px solid #dde3e7;
  border-radius: 16px;
  padding: 2rem 1.2rem;
  text-align: center;
}

.order-detail-error-icon-wrap {
  width: 64px;
  height: 64px;
  border-radius: 999px;
  background: #fee2e2;
  color: #dc2626;
  margin: 0 auto 0.9rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.order-detail-error-icon {
  width: 2rem;
  height: 2rem;
}

.order-detail-error-title {
  color: #141827;
  font-size: 1.1rem;
  margin-bottom: 0.4rem;
}

.order-detail-error-text {
  color: #5f6878;
  font-size: 0.9rem;
  margin: 0 0 1rem;
}

@media (max-width: 767.98px) {
  .order-detail-head,
  .order-detail-actions,
  .order-detail-section,
  .order-detail-footer {
    padding-left: 1rem;
    padding-right: 1rem;
  }
  .order-detail-title {
    font-size: 1.08rem;
  }
  .order-detail-ticket-head {
    flex-direction: column;
    align-items: stretch;
  }
  .order-detail-summary-head-right {
    width: 100%;
    justify-content: space-between;
  }
  .order-detail-summary-meta {
    grid-template-columns: 1fr;
    gap: 0.5rem;
  }
  .order-detail-ticket-modal-grid {
    grid-template-columns: 1fr;
  }
  .account-profile-modal-grid {
    grid-template-columns: 1fr;
  }
  .order-detail-ticket-holder-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .order-detail-actions,
  .order-detail-bottom-actions {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }
  .order-detail-action-btn,
  .order-detail-primary-btn,
  .order-detail-secondary-btn {
    width: 100%;
  }
}
@keyframes pulse-overbooked {
  0% {
    box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.32);
  }
  70% {
    box-shadow: 0 0 0 8px rgba(239, 68, 68, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(239, 68, 68, 0);
  }
}
@keyframes home-step-ping {
  75%, 100% {
    transform: scale(1.18);
    opacity: 0;
  }
}
@media (max-width: 992px) {
  .app-header-logo {
    height: 36px;
  }
  .home-content-card {
    padding: 1rem;
  }
  .home-map-card,
  .home-map-iframe,
  .home-map-empty {
    min-height: 240px;
  }
  .home-step-title {
    font-size: 1.12rem;
  }
  .home-stepper-label {
    font-size: 0.68rem;
  }
}
@media (min-width: 768px) {
  .home-hero-media {
    height: 224px;
  }
  .home-content-card {
    padding: 1.75rem;
  }
}
@media (min-width: 640px) {
  .home-passenger-form-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .home-summary-ticket-body.is-two-cols {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .home-departure-media {
    width: 128px;
  }
  .home-departure-panel {
    padding: 1.25rem;
  }
  .home-stepper-line {
    margin-left: 0.75rem;
    margin-right: 0.75rem;
  }
  .home-stepper-label-short {
    display: none;
  }
  .home-stepper-label-full {
    display: inline;
  }
}
@media (min-width: 992px) {
  .home-departure-layout {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 639.98px) {
  .home-stepper-label.is-mobile-hidden {
    display: none;
  }
  .home-summary-ticket-head {
    flex-direction: column;
    align-items: flex-start;
  }
  .home-summary-ticket-holder {
    text-align: left;
  }
  .confirmation-order-head,
  .confirmation-order-list,
  .confirmation-imprint,
  .confirmation-next {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
@media (max-width: 575.98px) {
  .account-actions {
    width: 100%;
    flex-direction: column;
    align-items: stretch;
  }
  .account-actions > .account-secondary-btn,
  .account-actions > .account-primary-btn,
  .account-actions > form {
    width: 100%;
  }
  .account-actions > form .account-secondary-btn {
    width: 100%;
  }
  .account-order-actions {
    grid-template-columns: minmax(0, 1fr);
  }
  .account-order-head {
    align-items: flex-start;
    flex-wrap: wrap;
  }
  .account-order-head-right {
    width: 100%;
    justify-content: space-between;
    padding-left: calc(40px + 0.75rem);
  }
}
@media (max-width: 576px) {
  .app-footer-row {
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }
  .app-footer-nav {
    justify-content: center;
  }
  .home-stepper-line {
    margin-left: 0.5rem;
    margin-right: 0.5rem;
  }
  .home-ticket-group-rows {
    margin-left: 0.45rem;
    padding-left: 0.6rem;
  }
  .home-counter-main {
    flex-direction: column;
    align-items: stretch;
  }
  .home-counter-left {
    justify-content: space-between;
  }
  .home-counter-controls {
    justify-content: flex-end;
  }
  .home-actions-between .btn {
    width: 100%;
  }
  .home-actions-end {
    justify-content: stretch;
  }
  .home-actions-end .btn {
    width: 100%;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf-8,%7B%22version%22:3,%22sourceRoot%22:%22%22,%22sources%22:%5B%22../../assets/scss/utils/_fonts.scss%22,%22../../assets/scss/utils/_variables.scss%22,%22../../assets/scss/front.scss%22%5D,%22names%22:%5B%5D,%22mappings%22:%22AAAA;AAAA;AAAA;AAAA;AAAA;AAOA;EACI;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;;ACIJ;EACI;EACA;;AACA;EAHJ;IAIM;;;AAGF;EACE,OA7BK;;AA+BP;EACE,OAjCK;;AAmCP;EACE,OAjCS;;AAmCX;EACE,OAnCU;;AAqCZ;EACE,OArCI;;AAuCN;EACE,OAvCU;;AAyCZ;EACE,OAxCG;;AA0CL;EACE,OA1CI;;AA4CN;EACE,OA5CK;;AA8CP;EACE,OA7CO;;AA+CT;EACE,OA/CQ;;AAkDV;EACE;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;;AAGF;EACI;;AAEJ;EACI;;AAEJ;EACI;;AAEJ;EACI;;;AC5FR;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;AAAA;AAAA;AAAA;EAIE;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;AAAA;AAAA;AAAA;EAIE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;EACA;;;AAGF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAUE;EACA;;;AAGF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EASE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EAA+B;EAAoC;;;AACnE;EAA6B;EAAqC;;;AAClE;EAA8B;EAAqB;;;AAEnD;EACE;EACA;EACA;;;AAGF;EAAgC;;;AAChC;EAA8B;;;AAC9B;EAA+B;;;AAE/B;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;AAAA;EAEE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EAA+B;EAAoC;;;AACnE;EAA6B;EAAqC;;;AAClE;EAA+B;EAAqC;;;AAEpE;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;IAAO;;EACP;IAAK;;;AAGP;EACE;IAAO;;EACP;IAAK;;;AAGP;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;AAAA;EAEE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;;;AAGF;EACE;EACA;;;AAGF;AAAA;AAAA;AAAA;EAIE;EACA;;;AAGF;AAAA;EAEE;EACA;;;AAGF;AAAA;EAEE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;AAAA;AAAA;EAGE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;AAAA;EAEE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;AAAA;EAEE;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;AAAA;AAAA;AAAA;IAIE;IACA;;EAGF;IACE;;EAGF;IACE;IACA;;EAGF;IACE;IACA;;EAGF;IACE;IACA;;EAGF;IACE;;EAGF;IACE;;EAGF;IACE;;EAGF;AAAA;IAEE;IACA;;EAGF;AAAA;AAAA;IAGE;;;AAIJ;EACE;IAAK;;EACL;IAAM;;EACN;IAAO;;;AAGT;EACE;IACE;IACA;;;AAIJ;EACE;IACE;;EAGF;IACE;;EAGF;AAAA;AAAA;IAGE;;EAGF;IACE;;EAGF;IACE;;;AAIJ;EACE;IACE;;EAGF;IACE;;;AAIJ;EACE;IACE;;EAGF;IACE;;EAGF;IACE;;EAGF;IACE;;EAGF;IACE;IACA;;EAGF;IACE;;EAGF;IACE;;;AAIJ;EACE;IACE;;;AAIJ;EACE;IACE;;EAGF;IACE;IACA;;EAGF;IACE;;EAGF;AAAA;AAAA;AAAA;IAIE;IACA;;;AAIJ;EACE;IACE;IACA;IACA;;EAGF;AAAA;AAAA;IAGE;;EAGF;IACE;;EAGF;IACE;;EAGF;IACE;IACA;;EAGF;IACE;IACA;IACA;;;AAIJ;EACE;IACE;IACA;IACA;;EAGF;IACE;;EAGF;IACE;IACA;;EAGF;IACE;IACA;;EAGF;IACE;IACA;;EAGF;IACE;;EAGF;IACE;;EAGF;IACE;;EAGF;IACE;;EAGF;IACE%22,%22file%22:%22front.output.css%22%7D */
