html {
   font-size: 14px;
}

.btn {
   min-width: 4rem;
   padding: 0.45rem 0.85rem;
   font-size: 0.94rem;
   line-height: 1.64;
}

.btn-sm {
   padding: 0.3rem 0.65rem;
   font-size: 0.84rem;
}

.btn-lg {
   padding: 0.65rem 1rem;
   font-size: 1rem;
}

@media (min-width: 768px) {
   html {
      font-size: 16px;
   }
}

.btn:focus,
.btn:active:focus,
.btn-link.nav-link:focus {
   box-shadow: none;
}

.form-control,
.form-select {
   min-height: 3.1rem;
   padding-top: 0.7rem;
   padding-bottom: 0.7rem;
   line-height: 1.35;
}

.form-select:not([multiple]):not([size]) {
   padding-right: 2.4rem;
   cursor: pointer;
   background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%2364748b' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.8' d='M3.5 6l4.5 4.5L12.5 6'/%3e%3c/svg%3e");
   background-repeat: no-repeat;
   background-position: right 0.95rem center;
   background-size: 0.95rem 0.95rem;
}

.form-control:focus,
.form-check-input:focus {
   box-shadow:
      0 0 0 0.1rem white,
      0 0 0 0.25rem #258cfb;
}

html {
   position: relative;
   min-height: 100%;
}

body {
   margin-bottom: 60px;
}

.form-floating > .form-control-plaintext::placeholder,
.form-floating > .form-control::placeholder {
   color: var(--bs-secondary-color);
   text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder,
.form-floating > .form-control:focus::placeholder {
   text-align: start;
}

.manage-profile-page {
   padding: 1.25rem 0 2.5rem;
}

.manage-layout-shell {
   min-height: 100%;
}

.landing-hero.manage-profile-page {
   padding-top: 1rem;
}

.manage-profile-shell {
   max-width: 72rem;
}

.manage-organization-shell {
   padding-bottom: 5rem;
}

.manage-organization-title {
   margin-top: 0;
   margin-bottom: 2rem;
}

.manage-profile-card {
   width: 100%;
   position: relative;
   overflow: hidden;
}

.manage-profile-card::after {
   content: '';
   position: absolute;
   inset: auto -10% -30% auto;
   width: 14rem;
   height: 14rem;
   border-radius: 50%;
   background: radial-gradient(
      circle,
      rgba(37, 99, 235, 0.14),
      transparent 68%
   );
   pointer-events: none;
}

.manage-card-flat::after {
   display: none;
}

.manage-card-shadowless {
   box-shadow: none !important;
}

.manage-card-flat {
   background: #fff !important;
}

.manage-card-flat::before {
   display: none;
}

.manage-profile-form input[disabled] {
   background: linear-gradient(
      180deg,
      rgba(248, 250, 252, 0.95),
      rgba(241, 245, 249, 0.92)
   );
   color: #64748b;
   opacity: 1;
}

.manage-profile-checkbox {
   padding: 1rem 1.05rem;
   border: 1px solid rgba(148, 163, 184, 0.18);
   border-radius: 1.15rem;
   background: rgba(248, 250, 252, 0.72);
}

.manage-profile-form {
   position: relative;
}

.manage-profile-agreements
   .landing-create-password-agreements
   + .landing-create-password-agreements {
   margin-top: 0.75rem;
}

.manage-profile-agreements .landing-create-password-check {
   display: flex;
   width: 100%;
   padding: 0;
   border: 0;
   border-radius: 0;
   background: transparent;
   box-shadow: none;
}

.manage-profile-agreements .landing-create-password-check:hover,
.manage-profile-agreements .landing-create-password-check:focus-within {
   background: transparent;
   border-color: transparent;
   box-shadow: none;
}

.manage-change-password-hint {
   margin-bottom: 0 !important;
}

.manage-page-grid {
   align-items: flex-start;
}

.manage-main {
   margin-top: 0;
}

@media (min-width: 992px) {
   .manage-nav-column {
      padding-top: 0;
   }
}

@media (max-width: 1199.98px) {
   .landing-page-body .manage-header-row {
      width: auto !important;
      margin-inline: 0 !important;
      padding-inline: 1rem !important;
   }

   .manage-main {
      padding-inline: 1rem;
   }
}

.manage-side-panel {
   padding: 1.15rem;
   border: 1px solid rgba(148, 163, 184, 0.18);
   border-radius: 1.5rem;
   background: rgba(255, 255, 255, 0.86);
   box-shadow: var(--landing-shadow-soft);
}

@media (min-width: 992px) {
   .manage-side-panel {
      margin-top: 0.06rem;
   }
}

.manage-side-panel .nav {
   gap: 0.55rem;
}

.manage-side-panel .nav-link {
   display: block;
   padding: 0.375rem 0.75rem;
   border: 1px solid #dee2e6;
   border-radius: 0.375rem;
   background-color: #fff;
   color: #212529;
   font-weight: 400;
   line-height: 1.5;
   text-align: center;
   text-decoration: none;
   transition:
      color 0.15s ease-in-out,
      background-color 0.15s ease-in-out,
      border-color 0.15s ease-in-out,
      box-shadow 0.15s ease-in-out;
}

.manage-side-panel .nav-link:hover {
   color: #212529;
   background-color: #f8f9fa;
   border-color: #dee2e6;
}

.manage-side-panel .nav-link:focus-visible {
   color: #0d6efd;
   background-color: #f8f9fa;
   border-color: #0d6efd;
   outline: 0;
   box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.5);
}

.manage-side-panel .nav-link.active {
   color: #fff;
   background-color: #0d6efd;
   border-color: #0d6efd;
}

.manage-side-panel .nav-link.active:hover,
.manage-side-panel .nav-link.active:focus-visible {
   color: #fff;
   background-color: #0b5ed7;
   border-color: #0a58ca;
}

.manage-rename-field {
   margin-bottom: 0;
}

.manage-rename-validation-wrap {
   grid-column: 1 / 2;
   margin-top: -0.25rem;
}

.manage-section-stack {
   display: grid;
   gap: 1.25rem;
}

.manage-section-card {
   width: 100%;
   position: relative;
   overflow: hidden;
}

.manage-section-card .landing-contact-card-header,
.manage-section-card .landing-contact-form {
   position: relative;
   z-index: 1;
}

.manage-section-card .landing-contact-card-header {
   justify-content: space-between;
   gap: 1rem;
}

.manage-inline-alert {
   margin: 0;
   padding: 0.95rem 1rem;
   border: 1px solid transparent;
   border-radius: 1rem;
   font-size: 0.96rem;
}

.manage-inline-alert.is-success {
   color: #166534;
   border-color: rgba(34, 197, 94, 0.2);
   background: rgba(34, 197, 94, 0.1);
}

.manage-inline-alert.is-error {
   color: #991b1b;
   border-color: rgba(239, 68, 68, 0.18);
   background: rgba(254, 242, 242, 0.96);
}

.manage-stat-grid {
   display: grid;
   grid-template-columns: repeat(3, minmax(0, 1fr));
   gap: 1rem;
}

.manage-stat-card {
   padding: 1.25rem;
   border: 1px solid rgba(148, 163, 184, 0.16);
   border-radius: 1.25rem;
   background: rgba(255, 255, 255, 0.96);
}

.manage-stat-label {
   color: var(--landing-text-soft);
   font-size: 0.88rem;
   font-weight: 600;
}

.manage-stat-value {
   margin-top: 0.45rem;
   font-size: clamp(1.85rem, 2.5vw, 2.35rem);
   line-height: 1;
   font-weight: 700;
   color: var(--landing-text);
}

.manage-stat-note {
   margin-top: 0.55rem;
   color: var(--landing-text-soft);
   font-size: 0.9rem;
}

.manage-section-title {
   margin: 0;
   font-size: 1.08rem;
   font-weight: 700;
   color: var(--landing-text);
}

.manage-section-subtitle {
   margin: 0.25rem 0 0;
   color: var(--landing-text-soft);
   font-size: 0.95rem;
}

.manage-form-grid {
   display: grid;
   gap: 1rem;
}

.manage-form-grid.manage-form-grid-inline {
   grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr) auto;
   align-items: end;
}

.manage-select-wrap {
   position: relative;
}

.manage-member-modal-dialog {
   max-width: 27.5rem;
}

.manage-add-seat-modal-dialog {
   max-width: 31rem;
}

.manage-member-modal-body {
   padding: 1.5rem 1.6rem 1.6rem;
}

.manage-member-modal-dialog .modal-content {
   border-radius: 1.25rem;
}

.manage-member-modal-dialog .modal-header {
   padding: 1.15rem 1.35rem 0.9rem;
}

.manage-member-save-btn {
   padding-inline: 0.95rem !important;
}

.manage-transfer-email-field {
   max-width: 28rem;
}

.manage-transfer-form {
   grid-template-columns: minmax(0, 28rem) auto !important;
   row-gap: 1rem;
   align-items: end;
}

.manage-inline-submit-wrap,
.manage-transfer-submit-wrap {
   min-width: 0;
   align-self: end;
   margin-top: 0;
}

.manage-form-note {
   grid-column: 1 / -1;
   margin-top: -0.4rem;
}

.manage-table-wrap {
   max-height: clamp(14rem, 45vh, 28rem);
   overflow-x: auto;
   overflow-y: auto;
   border: 1px solid rgba(148, 163, 184, 0.16);
   border-radius: 1.25rem;
   background: rgba(255, 255, 255, 0.98);
}

.toast-container {
   z-index: 20000 !important;
}

.manage-table {
   margin: 0;
}

.manage-table thead th {
   padding: 1rem;
   background: rgba(248, 250, 252, 0.92);
   color: var(--landing-text-soft);
   font-size: 0.78rem;
   font-weight: 700;
   text-transform: uppercase;
   letter-spacing: 0.06em;
   border-bottom: 1px solid rgba(148, 163, 184, 0.16);
}

.manage-table tbody td {
   padding: 1rem;
   vertical-align: middle;
   border-color: rgba(148, 163, 184, 0.12);
}

.manage-badge {
   display: inline-flex;
   align-items: center;
   padding: 0.35rem 0.72rem;
   border-radius: 999px;
   font-size: 0.82rem;
   font-weight: 600;
}

.manage-badge.is-success {
   color: #166534;
   background: rgba(34, 197, 94, 0.12);
}

.manage-badge.is-muted {
   color: #475569;
   background: rgba(148, 163, 184, 0.18);
}

.manage-badge.is-warning {
   color: #b45309;
   background: rgba(245, 158, 11, 0.16);
}

.manage-badge.is-primary {
   color: #1d4ed8;
   background: rgba(37, 99, 235, 0.12);
}

.manage-actions-inline {
   display: inline-flex;
   flex-wrap: wrap;
   gap: 0.55rem;
}

.manage-validation-summary:empty {
   display: none;
}

input[type='email'],
input[autocomplete='email'],
.email-lowercase {
   text-transform: none;
}

@media (max-width: 767.98px) {
   .manage-profile-page {
      padding-top: 0.5rem;
   }

   .manage-form-grid.manage-form-grid-inline,
   .manage-stat-grid {
      grid-template-columns: 1fr;
   }

   .manage-transfer-form {
      grid-template-columns: 1fr !important;
   }

   .manage-transfer-email-field {
      max-width: none;
   }
}

.cookie-consent-visible {
   /*padding-bottom: calc(
      var(--cookie-consent-offset, 6.3rem) + env(safe-area-inset-bottom, 0px)
   );*/
}

.cookie-consent-bar {
   position: fixed;
   left: 0;
   right: 0;
   bottom: 0;
   z-index: 1080;
   pointer-events: none;
   overflow-x: clip;
}

.cookie-consent-shell {
   padding-top: 0;
}

.cookie-consent-surface {
   width: 100%;
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: 0.72rem;
   padding: 0.66rem 1.05rem;
   border: 1px solid rgba(148, 163, 184, 0.24);
   border-radius: 999px;
   background: rgba(15, 23, 42, 0.94);
   color: #e2e8f0;
   backdrop-filter: blur(14px);
   pointer-events: auto;
   box-sizing: border-box;
   max-width: 100%;
   overflow: hidden;
   isolation: isolate;
   -webkit-mask-image: -webkit-radial-gradient(white, black);
}

.cookie-consent-copy {
   min-width: 0;
   flex: 1 1 auto;
   padding-left: 0.4rem;
   padding-right: 0.4rem;
}

.cookie-consent-text {
   font-size: 0.82rem;
   line-height: 1.38;
   position: relative;
   top: -0.5px;
}

.cookie-consent-link {
   color: #93c5fd;
   font-weight: 600;
   text-decoration: none;
}

.cookie-consent-link:hover {
   color: #dbeafe;
   text-decoration: underline;
}

.cookie-consent-separator {
   color: #e2e8f0;
}

.cookie-consent-actions {
   display: flex;
   align-items: center;
   flex-shrink: 0;
   padding-left: 0.4rem;
   padding-right: 0.4rem;
}

.cookie-consent-button-group {
   display: flex;
   align-items: center;
   gap: 0.65rem;
}

.cookie-consent-button {
   min-width: 5rem;
   border-radius: 999px;
   border-color: rgba(148, 163, 184, 0.32);
   background: transparent;
   color: #e2e8f0;
   padding: 0.22rem 0.95rem;
   font-size: 0.78rem;
   font-weight: 500;
   line-height: 1.2;
   display: inline-flex;
   align-items: center;
   justify-content: center;
}

.cookie-consent-button:hover,
.cookie-consent-button:focus {
   border-color: rgba(226, 232, 240, 0.5);
   background-color: rgba(148, 163, 184, 0.12);
   color: #fff;
}

.cookie-consent-button-label {
   position: relative;
   top: -0.5px;
}

.cookie-consent-button-accept {
   border: none;
   background: linear-gradient(135deg, #2563eb, #38bdf8);
   background-image: linear-gradient(135deg, #2563eb, #38bdf8);
   background-color: transparent;
   background-clip: padding-box;
   background-origin: border-box;
   background-repeat: no-repeat;
   -webkit-appearance: none;
   appearance: none;
   overflow: hidden;
   isolation: isolate;
   -webkit-mask-image: -webkit-radial-gradient(white, black);
   box-shadow: 0 22px 40px -28px rgba(37, 99, 235, 0.9);
}

.cookie-consent-button-accept:hover,
.cookie-consent-button-accept:focus {
   border: none;
   background: linear-gradient(135deg, #1d4ed8, #0ea5e9);
   background-image: linear-gradient(135deg, #1d4ed8, #0ea5e9);
   background-color: transparent;
}

.cookie-consent-copy-expanded {
   padding-top: 0.42rem;
   padding-bottom: 0.42rem;
}

.cookie-consent-copy-expanded + .cookie-consent-actions {
   align-self: center;
}

.cookie-consent-preferences {
   margin-top: 0.45rem;
}

.cookie-consent-preferences-row {
   display: flex;
   align-items: center;
   gap: 0.9rem;
   flex-wrap: wrap;
}

.cookie-consent-preference-item {
   display: inline-flex;
   align-items: center;
   gap: 0.45rem;
}

.cookie-consent-preference-label {
   margin: 0;
   color: #e2e8f0;
   font-size: 0.8rem;
   font-weight: 500;
}

.cookie-consent-preferences-actions {
   display: inline-flex;
   align-items: center;
}

.cookie-consent-preferences .form-check-input:focus {
   box-shadow: none;
}

.cookie-consent-preferences .form-check-input {
   width: 0.8rem;
   height: 0.8rem;
   margin-top: 0.1rem;
}

@media (max-width: 767.98px) {
   .cookie-consent-visible {
      padding-bottom: calc(
         var(--cookie-consent-offset, 14rem) + env(safe-area-inset-bottom, 0px)
      );
   }

   .cookie-consent-bar {
      bottom: 0;
   }

   .cookie-consent-shell {
      padding-inline: 0.8rem;
      padding-top: 0.8rem;
      padding-bottom: 0.8rem;
   }

   .cookie-consent-surface {
      flex-direction: column;
      align-items: stretch;
      gap: 0.9rem;
      padding: 0.95rem 0.95rem 1rem;
      border-radius: 1.7rem;
      border-color: rgba(148, 163, 184, 0.2);
      box-shadow: 0 24px 48px -30px rgba(15, 23, 42, 0.8);
   }

   .cookie-consent-copy {
      padding-inline: 0;
   }

   .cookie-consent-text {
      font-size: 0.9rem;
      line-height: 1.55;
   }

   .cookie-consent-actions,
   .cookie-consent-button-group {
      width: 100%;
   }

   .cookie-consent-button-group {
      flex-direction: column;
      align-items: stretch;
      gap: 0.5rem;
   }

   .cookie-consent-button {
      width: 100%;
      min-height: 2.3rem;
      padding: 0.45rem 0.9rem;
      font-size: 0.82rem;
   }

   .cookie-consent-button-label {
      top: 0;
   }

   .cookie-consent-copy-expanded {
      padding-top: 0.15rem;
      padding-bottom: 0.15rem;
   }

   .cookie-consent-preferences {
      margin-top: 0.7rem;
      padding-top: 0.15rem;
   }

   .cookie-consent-preferences-row {
      align-items: stretch;
      gap: 0.55rem;
      flex-direction: column;
   }

   .cookie-consent-preference-item,
   .cookie-consent-preferences-actions {
      width: 100%;
      justify-content: space-between;
   }

   .cookie-consent-preference-item {
      padding: 0.45rem 0;
   }

   .cookie-consent-preference-label {
      font-size: 0.82rem;
   }

   .cookie-consent-preferences-actions .cookie-consent-button {
      width: 100%;
   }
}
