@charset "UTF-8";
/* Layout helpers
----------------------------------*/
/* ==========================================================================
   1. Design Tokens & Typography Scale (Central Design System)
   ========================================================================== */
/* ==========================================================================
   Central Color Palette (Slate, Emerald, Rose, Amber, Sky & Core Base)
   ========================================================================== */
/* ==========================================================================
   WCAG 2.1 Contrast Calculation Functions
   Computes whether Dark (#191919) or Light (#edfbf4) yields higher contrast.
   ========================================================================== */
/* ==========================================================================
   2. Theme Variables & Custom Properties
========================================================================== */
:root {
  /* Central Typography Scale (Tokens) */
  --font-size-2xs: 10.5px;
  --font-size-xs: 11.5px;
  --font-size-sm: 12.5px;
  --font-size-base: 14px;
  --font-size-md: 15px;
  --font-size-lg: 16.5px;
  --font-size-xl: 17.5px;
  --font-size-2xl: 19.5px;
  --font-size-3xl: 23px;
  --font-size-4xl: 26px;
  --font-size-5xl: 30px;
  /* Semantic Typography Tokens */
  --font-size-body: var(--font-size-base);
  --general-size-text: var(--font-size-base);
  --font-size-body-sm: var(--font-size-sm);
  --font-size-caption: var(--font-size-xs);
  --font-size-label: var(--font-size-sm);
  --font-size-h1: var(--font-size-3xl);
  --font-size-h2: var(--font-size-2xl);
  --font-size-h3: var(--font-size-xl);
  --font-size-h4: var(--font-size-md);
  --font-size-description: var(--font-size-base);
  /* Admin & Compact Specific Typography Tokens */
  --admin-font-size-xs: 10.5px;
  --admin-font-size-sm: 11.5px;
  --admin-font-size-base: 12.5px;
  --admin-font-size-ui: 14px;
  --admin-font-size-title: 15px;
  --admin-font-size-h1: 17.5px;
  --admin-font-size-h2: 15px;
  --admin-font-size-h3: 14px;
  --compact-font-size: 13px;
  --compact-btn-font-size: 12.5px;
  /* Footer & Pre-Footer Typography Tokens */
  --footer-font-size-title: 15px;
  --footer-font-size-text: 14px;
  --footer-font-size-links: 14px;
  --footer-font-size-meta: 11.5px;
  --pre-footer-font-size: 14px;
  --pre-footer-font-size-meta: 11.5px;
  /* Compact Mode & Admin Toolbar unified tokens */
  --compact-radius: 6px;
  --compact-height: 36px;
  --compact-btn-height: 34px;
  --compact-modal-btn-height: 32px;
  --compact-padding-x: 10px;
  --compact-btn-padding: 0 10px;
  --compact-input-border: #cbd5e1;
  --compact-input-border-hover: #94a3b8;
  --compact-input-bg: #ffffff;
  --compact-input-color: #0f172a;
  --compact-placeholder: #94a3b8;
  --compact-label-bg: #ecfdf5;
  --compact-label-color: #047857;
  --compact-label-border: #d1fae5;
  --compact-icon-scale: 0.6;
  --header-btn-font-size: 13px;
  /* Filter Chip & Route Button Tokens (Light) */
  --chip-bg: #ffffff;
  --chip-color: #475569;
  --chip-border: #cbd5e1;
  --chip-hover-bg: #f8fafc;
  --chip-hover-color: #0f172a;
  --chip-hover-border: #94a3b8;
  --chip-active-bg: rgba(0, 218, 137, 0.15);
  --chip-active-border: #00da89;
  --chip-active-color: #065f46;
  --chip-active-shadow: 0 1px 3px rgba(0, 218, 137, 0.15);
  --chip-crit-color: #e11d48;
  --chip-crit-border: rgba(225, 29, 72, 0.35);
  --chip-crit-bg: rgba(225, 29, 72, 0.05);
  --chip-warn-color: #b45309;
  --chip-warn-border: rgba(245, 158, 11, 0.4);
  --chip-warn-bg: rgba(245, 158, 11, 0.06);
  --chip-info-color: #0284c7;
  --chip-info-border: rgba(2, 132, 199, 0.35);
  --chip-info-bg: rgba(2, 132, 199, 0.05);
  /* Health Suite Status & Semantic Tokens (Light) */
  --badge-crit-bg: #fee2e2;
  --badge-crit-color: #be123c;
  --badge-warn-bg: #fef3c7;
  --badge-warn-color: #b45309;
  --badge-inf-bg: #e0f2fe;
  --badge-inf-color: #0369a1;
  --badge-pass-bg: #ecfdf5;
  --badge-pass-color: #047857;
  --score-optimal: #00da89;
  --score-crit: #e11d48;
  --score-warn: #f59e0b;
  --score-info: #0284c7;
  --score-pass: #047857;
  --surface-border: #e2e8f0;
  --surface-border-subtle: #f1f5f9;
  --surface-bg-subtle: #f8fafc;
  --surface-bg-alt: #ecfdf5;
  --surface-device-bg: #ffffff;
  --surface-device-border: #cbd5e1;
  --rating-star-color: #fbbf24;
  /* Info Box Design Tokens (Light Theme) */
  --info-box-radius: 8px;
  --info-box-padding: 7px 14px;
  --info-box-border-width: 1px;
  --info-box-accent-width: 3.5px;
  --info-box-font-size: var(--admin-font-size-ui, 14px);
  --info-box-line-height: 1.5;
  /* Neutral (Form / Standard Info) */
  --info-box-neutral-bg: #f8fafc;
  --info-box-neutral-border: #e2e8f0;
  --info-box-neutral-accent: #64748b;
  --info-box-neutral-text: #1e293b;
  /* Info / Hinweis / Page (Blue) */
  --info-box-info-bg: #f0f9ff;
  --info-box-info-border: #bae6fd;
  --info-box-info-accent: #0284c7;
  --info-box-info-text: #0c4a6e;
  /* Success / Bestätigung (Green) */
  --info-box-success-bg: #ecfdf5;
  --info-box-success-border: #a7f3d0;
  --info-box-success-accent: #00da89;
  --info-box-success-text: #065f46;
  /* Error / Fehler (Red) */
  --info-box-error-bg: #fff1f2;
  --info-box-error-border: #fee2e2;
  --info-box-error-accent: #ef4444;
  --info-box-error-text: #b91c1c;
  /* Warning / Warnung (Amber) */
  --info-box-warning-bg: #fffbeb;
  --info-box-warning-border: #fde68a;
  --info-box-warning-accent: #f59e0b;
  --info-box-warning-text: #92400e;
  /* Status Timeline & Steps (Light Theme) */
  --status-step-completed-bg: rgba(0, 218, 137, 0.12);
  --status-step-completed-border: var(--accent-color, #00da89);
  --status-step-completed-color: #047857;
  --status-step-completed-line: var(--accent-color, #00da89);
  --status-step-active-bg: var(--accent-color, #00da89);
  --status-step-active-border: var(--accent-color, #00da89);
  --status-step-active-color: #ffffff;
  --status-step-active-glow: 0 0 0 4px rgba(0, 218, 137, 0.2), 0 4px 12px rgba(0, 218, 137, 0.25);
  --status-step-pending-bg: var(--bg-card, #ffffff);
  --status-step-pending-border: #cbd5e1;
  --status-step-pending-color: #94a3b8;
  --status-step-pending-line: #e2e8f0;
  /* main */
  --bg-primary: #edfbf4;
  --bg-secondary: rgba(255, 255, 255, 0.7);
  --bg-content: #fff;
  --bg-accent-alpha: rgba(0, 218, 137, 0.2);
  --bg-header-alpha: rgba(255, 255, 255, 0.8);
  --bg-mask-alpha: rgba(255, 255, 255, 0.1);
  --bg-hover: rgba(0, 218, 137, 0.1);
  --bg-input: transparent;
  --bg-unread: #fff3cd;
  --bg-cards: rgba(255, 255, 255, 0.5);
  --text-primary: #191919;
  --text-secondary: #edfbf4;
  --text-heading: #0e2b3e;
  --text-disabled: rgba(25, 25, 25, 0.6);
  --font-family-bern: "Century Gothic", CenturyGothic, AppleGothic, sans-serif;
  --font-family-thun: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --accent-color: #00da89;
  --accent-text: #008250;
  --accent-alpha: rgba(0, 218, 137, 0.4);
  --accent-shadow: rgba(0, 218, 137, 0.2);
  --border-color: rgba(0, 218, 137, 0.4);
  --border-hover: #00da89;
  --calendar-grid-color: rgba(0, 0, 0, 0.08);
  --error-color: #f00;
  --error-background: rgba(255, 0, 0, 0.4);
  --valid-color: #00da89;
  --valid-background: rgba(0, 218, 137, 0.4);
  --logo-thun-color: #0e2b3e;
  --logo-notar-color: #00da89;
  --icon-filter: none;
  --icon-color: #edfbf4;
  --icon-color-active: #00da89;
  --icon-color-white: #edfbf4;
  --icon-color-header: #0e2b3e;
  /* header navigation buttons */
  --header-btn-color: #0e2b3e;
  --header-btn-border: var(--accent-alpha);
  --header-btn-hover-bg: var(--accent-color);
  --header-btn-hover-color: #0e2b3e;
  /* modal / dialog tokens */
  --modal-bg: #ffffff;
  --modal-border: #e2e8f0;
  --modal-header-bg: #f8fafc;
  --modal-header-border: #e2e8f0;
  --modal-title-color: #0e2b3e;
  --modal-content-color: #334155;
  --modal-footer-bg: #f8fafc;
  --modal-footer-border: #e2e8f0;
  /* footer */
  --footer-bg: rgba(255, 255, 255, 0.7);
  --footer-header: #0e2b3e;
  --footer-copy: rgba(14, 43, 62, 0.6);
  --footer-copy-hover: #0e2b3e;
  /* primary button (green) - contrast calculated dynamically */
  --btn-primary-bg: #00da89;
  --btn-primary-bg-hover: #00b370;
  --btn-primary-border: #00da89;
  --btn-primary-border-hover: #00b370;
  --btn-primary-color: #191919;
  --btn-primary-color-hover: #191919;
  /* secondary button (blue) - contrast calculated dynamically */
  --btn-secondary-bg: #0e2b3e;
  --btn-secondary-bg-hover: #16405b;
  --btn-secondary-border: #0e2b3e;
  --btn-secondary-border-hover: #16405b;
  --btn-secondary-color: #edfbf4;
  --btn-secondary-color-hover: #edfbf4;
  /* danger / delete button (red) - contrast calculated dynamically */
  --btn-danger-bg: #dc2626;
  --btn-danger-bg-hover: #b91c1c;
  --btn-danger-border: #dc2626;
  --btn-danger-border-hover: #b91c1c;
  --btn-danger-color: #edfbf4;
  --btn-danger-color-hover: #edfbf4;
  /* pure buttons */
  --btn-pure-first-color: #0e2b3e;
  --btn-pure-first-border: rgba(14, 43, 62, 0.4);
  --btn-pure-second-color: #0e2b3e;
  --btn-pure-second-border: rgba(14, 43, 62, 0.4);
  --btn-pure-hover-color: #edfbf4;
  /* category colors */
  --cat-pink: #fce4ec;
  --cat-yellow: #fff9c4;
  --cat-green: #e8f5e9;
  --cat-cyan: #e0f7fa;
  --cat-brown: #efebe9;
  --cat-violet: #f3e5f5;
  --cat-orange: #fff3e0;
  --cat-red: #ffebee;
  --cat-blue: #e3f2fd;
}

html.dark-mode,
body.dark-mode {
  /* Compact Mode & Admin Toolbar unified tokens (Dark) */
  --compact-radius: 6px;
  --compact-height: 36px;
  --compact-btn-height: 34px;
  --compact-modal-btn-height: 32px;
  --compact-padding-x: 10px;
  --compact-btn-padding: 0 10px;
  --compact-input-border: rgba(255, 255, 255, 0.18);
  --compact-input-border-hover: rgba(255, 255, 255, 0.28);
  --compact-input-bg: rgba(255, 255, 255, 0.04);
  --compact-input-color: #f8fafc;
  --compact-placeholder: #64748b;
  --compact-label-bg: rgba(0, 218, 137, 0.1);
  --compact-label-color: #00da89;
  --compact-label-border: rgba(0, 218, 137, 0.2);
  --compact-icon-scale: 0.6;
  --header-btn-font-size: 13px;
  /* Filter Chip & Route Button Tokens (Dark) */
  --chip-bg: rgba(255, 255, 255, 0.05);
  --chip-color: #94a3b8;
  --chip-border: rgba(255, 255, 255, 0.12);
  --chip-hover-bg: rgba(255, 255, 255, 0.09);
  --chip-hover-color: #f1f5f9;
  --chip-hover-border: rgba(255, 255, 255, 0.2);
  --chip-active-bg: rgba(0, 218, 137, 0.2);
  --chip-active-border: #00da89;
  --chip-active-color: #6ee7b7;
  --chip-active-shadow: 0 1px 3px rgba(0, 218, 137, 0.25);
  --chip-crit-color: #f87171;
  --chip-crit-border: rgba(248, 113, 113, 0.35);
  --chip-crit-bg: rgba(239, 68, 68, 0.12);
  --chip-warn-color: #fbbf24;
  --chip-warn-border: rgba(251, 191, 36, 0.35);
  --chip-warn-bg: rgba(245, 158, 11, 0.12);
  --chip-info-color: #38bdf8;
  --chip-info-border: rgba(56, 189, 248, 0.35);
  --chip-info-bg: rgba(56, 189, 248, 0.12);
  /* Health Suite Status & Semantic Tokens (Dark) */
  --badge-crit-bg: rgba(239, 68, 68, 0.2);
  --badge-crit-color: #fca5a5;
  --badge-warn-bg: rgba(245, 158, 11, 0.2);
  --badge-warn-color: #fcd34d;
  --badge-inf-bg: rgba(56, 189, 248, 0.2);
  --badge-inf-color: #7dd3fc;
  --badge-pass-bg: rgba(0, 218, 137, 0.15);
  --badge-pass-color: #34d399;
  --score-optimal: #00da89;
  --score-crit: #f87171;
  --score-warn: #fbbf24;
  --score-info: #38bdf8;
  --score-pass: #34d399;
  --surface-border: rgba(255, 255, 255, 0.12);
  --surface-border-subtle: rgba(255, 255, 255, 0.06);
  --surface-bg-subtle: rgba(255, 255, 255, 0.04);
  --surface-bg-alt: #1a2723;
  --surface-device-bg: #0f172a;
  --surface-device-border: #475569;
  --rating-star-color: #fbbf24;
  /* Info Box Design Tokens (Dark Theme) */
  --info-box-neutral-bg: rgba(255, 255, 255, 0.04);
  --info-box-neutral-border: rgba(255, 255, 255, 0.12);
  --info-box-neutral-accent: #94a3b8;
  --info-box-neutral-text: #f1f5f9;
  --info-box-info-bg: rgba(37, 99, 235, 0.12);
  --info-box-info-border: rgba(37, 99, 235, 0.3);
  --info-box-info-accent: #38bdf8;
  --info-box-info-text: #e0f2fe;
  --info-box-success-bg: rgba(0, 218, 137, 0.1);
  --info-box-success-border: rgba(0, 218, 137, 0.3);
  --info-box-success-accent: #00da89;
  --info-box-success-text: #a7f3d0;
  --info-box-error-bg: rgba(239, 68, 68, 0.12);
  --info-box-error-border: rgba(239, 68, 68, 0.3);
  --info-box-error-accent: #f87171;
  --info-box-error-text: #fee2e2;
  --info-box-warning-bg: rgba(245, 158, 11, 0.12);
  --info-box-warning-border: rgba(245, 158, 11, 0.3);
  --info-box-warning-accent: #fbbf24;
  --info-box-warning-text: #fef3c7;
  /* Status Timeline & Steps (Dark Theme) */
  --status-step-completed-bg: rgba(0, 218, 137, 0.16);
  --status-step-completed-border: var(--accent-color, #00da89);
  --status-step-completed-color: #34d399;
  --status-step-completed-line: var(--accent-color, #00da89);
  --status-step-active-bg: var(--accent-color, #00da89);
  --status-step-active-border: var(--accent-color, #00da89);
  --status-step-active-color: #0b1118;
  --status-step-active-glow: 0 0 0 4px rgba(0, 218, 137, 0.25), 0 4px 16px rgba(0, 218, 137, 0.4);
  --status-step-pending-bg: rgba(255, 255, 255, 0.04);
  --status-step-pending-border: rgba(255, 255, 255, 0.12);
  --status-step-pending-color: #64748b;
  --status-step-pending-line: rgba(255, 255, 255, 0.08);
  /* main */
  --bg-primary: #191919;
  --bg-secondary: rgba(0, 0, 0, 0.7);
  --bg-content: #000;
  --bg-accent-alpha: rgba(0, 218, 137, 0.2);
  --bg-header-alpha: rgba(0, 0, 0, 0.9);
  --bg-mask-alpha: rgba(0, 0, 0, 0.1);
  --bg-hover: rgba(0, 218, 137, 0.2);
  --bg-input: transparent;
  --bg-cards: rgba(255, 255, 255, 0.05);
  --text-primary: #edfbf4;
  --text-secondary: #191919;
  --text-heading: #ffffff;
  --text-disabled: rgba(238, 238, 238, 0.5);
  --accent-color: #00da89;
  --accent-text: #00da89;
  --logo-thun-color: #edfbf4;
  --logo-notar-color: #00da89;
  --icon-filter: invert(100%) brightness(1.5);
  --icon-color: #0e2b3e;
  --icon-color-header: #edfbf4;
  --header-btn-color: var(--accent-color);
  --header-btn-border: var(--accent-alpha);
  --header-btn-hover-bg: var(--accent-color);
  --header-btn-hover-color: #0e2b3e;
  --calendar-grid-color: rgba(255, 255, 255, 0.3);
  /* modal / dialog tokens */
  --modal-bg: #181b1e;
  --modal-border: rgba(255, 255, 255, 0.12);
  --modal-header-bg: #1e2226;
  --modal-header-border: rgba(255, 255, 255, 0.08);
  --modal-title-color: #f8fafc;
  --modal-content-color: #cbd5e1;
  --modal-footer-bg: #1e2226;
  --modal-footer-border: rgba(255, 255, 255, 0.08);
  /* footer */
  --footer-bg: rgba(0, 0, 0, 0.7);
  --footer-header: #edfbf4;
  --footer-copy: rgba(255, 255, 255, 0.6);
  --footer-copy-hover: #edfbf4;
  /* primary button (green) - contrast calculated dynamically */
  --btn-primary-color: #191919;
  --btn-primary-color-hover: #191919;
  --btn-primary-bg: #00da89;
  --btn-primary-bg-hover: #00b370;
  --btn-primary-border: #00da89;
  --btn-primary-border-hover: #00b370;
  /* secondary button (dark mode) - contrast calculated dynamically */
  --btn-secondary-color: #edfbf4;
  --btn-secondary-color-hover: #edfbf4;
  --btn-secondary-bg: rgba(255, 255, 255, 0.08);
  --btn-secondary-bg-hover: rgba(255, 255, 255, 0.16);
  --btn-secondary-border: rgba(255, 255, 255, 0.16);
  --btn-secondary-border-hover: rgba(255, 255, 255, 0.28);
  /* danger / delete button (red) - contrast calculated dynamically */
  --btn-danger-bg: #dc2626;
  --btn-danger-bg-hover: #b91c1c;
  --btn-danger-border: #dc2626;
  --btn-danger-border-hover: #b91c1c;
  --btn-danger-color: #edfbf4;
  --btn-danger-color-hover: #edfbf4;
  /* pure buttons */
  --btn-pure-first-color: #00da89;
  --btn-pure-first-border: rgba(0, 218, 137, 0.4);
  --btn-pure-second-color: #00da89;
  --btn-pure-second-border: rgba(0, 218, 137, 0.4);
  --btn-pure-hover-color: #0e2b3e;
  /* category colors */
  --cat-pink: #880e4f;
  --cat-yellow: #f57f17;
  --cat-green: #1b5e20;
  --cat-cyan: #006064;
  --cat-brown: #3e2723;
  --cat-violet: #4a148c;
  --cat-orange: #e65100;
  --cat-red: #b71c1c;
  --cat-blue: #0d47a1;
}

.ui-widget-content .ui-button.ui-state-default {
  background-color: transparent;
  border: 1px solid var(--btn-pure-second-border, #cbd5e1);
  color: var(--btn-pure-second-color, #1e293b);
  border-radius: 6px;
  padding: 0 14px;
  height: 32px;
  font-size: 12px;
  font-weight: 500;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}
.ui-widget-content .ui-button.ui-state-default:hover, .ui-widget-content .ui-button.ui-state-default:focus {
  background-color: var(--btn-pure-second-color, #047857);
  border-color: var(--btn-pure-second-color, #047857);
  color: #ffffff;
}

select.ui-datepicker-month,
select.ui-datepicker-year {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  border-radius: 6px;
  height: 26px;
  line-height: 24px;
  padding: 0 20px 0 8px;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  background-color: #ffffff;
  border: 1px solid #cbd5e1;
  color: #0f172a;
  outline: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%230f172a' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 7px center;
  background-size: 9px 9px;
  transition: all 0.15s ease;
}
select.ui-datepicker-month:hover, select.ui-datepicker-month:focus,
select.ui-datepicker-year:hover,
select.ui-datepicker-year:focus {
  border-color: #00da89;
  color: #047857;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%23047857' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
}
select.ui-datepicker-month option,
select.ui-datepicker-year option {
  background-color: #ffffff;
  color: #0f172a;
}
body.dark-mode select.ui-datepicker-month, html.dark-mode select.ui-datepicker-month,
body.dark-mode select.ui-datepicker-year,
html.dark-mode select.ui-datepicker-year {
  background-color: #0f172a;
  border-color: rgba(255, 255, 255, 0.15);
  color: #f1f5f9;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%23f1f5f9' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
}
body.dark-mode select.ui-datepicker-month:hover, body.dark-mode select.ui-datepicker-month:focus, html.dark-mode select.ui-datepicker-month:hover, html.dark-mode select.ui-datepicker-month:focus,
body.dark-mode select.ui-datepicker-year:hover,
body.dark-mode select.ui-datepicker-year:focus,
html.dark-mode select.ui-datepicker-year:hover,
html.dark-mode select.ui-datepicker-year:focus {
  border-color: #00da89;
  color: #00da89;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%2300da89' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
}
body.dark-mode select.ui-datepicker-month option, html.dark-mode select.ui-datepicker-month option,
body.dark-mode select.ui-datepicker-year option,
html.dark-mode select.ui-datepicker-year option {
  background-color: #0f172a;
  color: #f1f5f9;
}

select.ui-datepicker-month {
  margin-right: 4px;
}

.bf-blur, .bc-alphawhite {
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

.bc-alphawhite {
  background-color: rgba(255, 255, 255, 0.9);
}

/* UI Helper Classes (largely unchanged, grouping improved) */
.ui-helper-hidden {
  display: none;
}

.ui-helper-hidden-accessible {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.ui-helper-reset {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  line-height: 1.5em;
  text-decoration: none;
  font-size: 100%;
  list-style: none;
}

.ui-helper-clearfix {
  min-height: 0;
}
.ui-helper-clearfix:before, .ui-helper-clearfix:after {
  content: "";
  display: table;
  border-collapse: collapse;
}
.ui-helper-clearfix:after {
  clear: both;
}

.ui-helper-zfix {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  filter: Alpha(Opacity=0);
}

.ui-front {
  z-index: 100;
}

/* Interaction Cues */
.ui-state-disabled {
  cursor: default !important;
}

/* Icons */
.ui-icon {
  display: block;
  overflow: hidden;
  text-indent: -99999px;
  background-repeat: no-repeat;
}

/* Overlays */
.ui-widget-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* Autocomplete */
.ui-autocomplete {
  position: absolute;
  top: 0;
  left: 0;
  cursor: default;
}

/* Buttons */
.ui-button {
  display: inline-block;
  position: relative;
  padding: 0;
  line-height: normal;
  margin-right: 0;
  cursor: pointer;
  text-align: center;
  vertical-align: middle;
  overflow: visible;
}
.ui-button, .ui-button:link, .ui-button:visited, .ui-button:hover, .ui-button:active {
  text-decoration: none;
}
.ui-button .ui-button-text {
  display: block;
  line-height: normal;
}
.ui-button::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input.ui-button {
  padding: 6px 10px 4px;
}

/* Button variations */
.ui-button-icon-only {
  width: 25px;
}

button.ui-button-icon-only {
  width: 30px;
}

.ui-button-icons-only {
  width: 40px;
}

button.ui-button-icons-only {
  width: 45px;
}

.ui-button-text-only .ui-button-text {
  padding: 6px 10px 4px;
}

.ui-button-icon-only .ui-button-text,
.ui-button-icons-only .ui-button-text {
  padding: 5px;
  text-indent: -9999999px;
}

.ui-button-text-icon-primary .ui-button-text,
.ui-button-text-icons .ui-button-text {
  padding: 7px 7px 7px 25px;
}

.ui-button-text-icon-secondary .ui-button-text,
.ui-button-text-icons .ui-button-text {
  padding: 7px 25px 7px 7px;
}

.ui-button-text-icons .ui-button-text {
  padding-left: 25px;
  padding-right: 25px;
}

/* Icon positioning in buttons */
.ui-button-icon-only .ui-icon,
.ui-button-text-icon-primary .ui-icon,
.ui-button-text-icon-secondary .ui-icon,
.ui-button-icons-only .ui-icon,
.ui-button-text-icons .ui-icon {
  position: absolute;
  top: 50%;
  margin-top: -8px;
}

.ui-button-icon-only .ui-icon {
  left: 50%;
  margin-left: -8px;
}

.ui-button-text-icon-primary .ui-button-icon-primary,
.ui-button-icons-only .ui-button-icon-primary,
.ui-button-text-icons .ui-button-icon-primary {
  left: 5px;
}

.ui-button-text-icon-secondary .ui-button-icon-secondary,
.ui-button-icons-only .ui-button-icon-secondary,
.ui-button-text-icons .ui-button-icon-secondary {
  right: 5px;
}

/* Buttonset */
.ui-buttonset {
  margin-right: 7px;
}
.ui-buttonset .ui-button {
  margin-left: 0;
  margin-right: -5px;
}

/* Datepicker */
.ui-datepicker {
  display: none;
  padding: 8px 10px 10px 10px;
  width: 260px !important;
  max-width: 260px !important;
  box-sizing: border-box !important;
  border-radius: 10px;
  border: 1px solid #cbd5e1 !important;
  background: #ffffff !important;
  box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.12), 0 8px 10px -6px rgba(0, 0, 0, 0.06) !important;
  z-index: 1000 !important;
  overflow: hidden;
}
body.dark-mode .ui-datepicker, html.dark-mode .ui-datepicker {
  background: #1e293b !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
  box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.4), 0 8px 10px -6px rgba(0, 0, 0, 0.3) !important;
}
.ui-datepicker .ui-datepicker-header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  position: relative !important;
  padding: 0 0 6px 0 !important;
  border: none !important;
  border-bottom: 1px solid #f1f5f9 !important;
  background: transparent !important;
  color: #0f172a !important;
}
body.dark-mode .ui-datepicker .ui-datepicker-header, html.dark-mode .ui-datepicker .ui-datepicker-header {
  border-bottom-color: rgba(255, 255, 255, 0.08) !important;
  color: #f8fafc !important;
}
.ui-datepicker .ui-datepicker-prev {
  order: 1 !important;
  width: 26px !important;
  height: 26px !important;
  cursor: pointer !important;
  border: none !important;
  background-color: transparent !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: background-color 0.15s ease !important;
  border-radius: 6px;
}
.ui-datepicker .ui-datepicker-prev:hover {
  background-color: #f1f5f9 !important;
}
.ui-datepicker .ui-datepicker-prev.ui-state-disabled, .ui-datepicker .ui-datepicker-prev.ui-datepicker-disabled {
  opacity: 0.3 !important;
  cursor: not-allowed !important;
  pointer-events: none !important;
}
body.dark-mode .ui-datepicker .ui-datepicker-prev:hover, html.dark-mode .ui-datepicker .ui-datepicker-prev:hover {
  background-color: rgba(255, 255, 255, 0.1) !important;
}
.ui-datepicker .ui-datepicker-title {
  order: 2 !important;
  flex-grow: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  margin: 0 4px !important;
  line-height: normal !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #0f172a !important;
}
.ui-datepicker .ui-datepicker-title .ui-datepicker-month,
.ui-datepicker .ui-datepicker-title .ui-datepicker-year {
  color: #0f172a !important;
}
body.dark-mode .ui-datepicker .ui-datepicker-title, html.dark-mode .ui-datepicker .ui-datepicker-title {
  color: #f1f5f9 !important;
}
body.dark-mode .ui-datepicker .ui-datepicker-title .ui-datepicker-month,
body.dark-mode .ui-datepicker .ui-datepicker-title .ui-datepicker-year, html.dark-mode .ui-datepicker .ui-datepicker-title .ui-datepicker-month,
html.dark-mode .ui-datepicker .ui-datepicker-title .ui-datepicker-year {
  color: #f1f5f9 !important;
}
.ui-datepicker .ui-datepicker-title select.ui-datepicker-month,
.ui-datepicker .ui-datepicker-title select.ui-datepicker-year {
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  border-radius: 6px !important;
  height: 26px !important;
  line-height: 24px !important;
  padding: 0 20px 0 8px !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  background-color: #ffffff !important;
  border: 1px solid #cbd5e1 !important;
  color: #0f172a !important;
  outline: none !important;
  margin: 0 2px !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%230f172a' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 7px center !important;
  background-size: 9px 9px !important;
  transition: all 0.15s ease !important;
}
.ui-datepicker .ui-datepicker-title select.ui-datepicker-month:hover, .ui-datepicker .ui-datepicker-title select.ui-datepicker-month:focus,
.ui-datepicker .ui-datepicker-title select.ui-datepicker-year:hover,
.ui-datepicker .ui-datepicker-title select.ui-datepicker-year:focus {
  border-color: #00da89 !important;
  color: #047857 !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%23047857' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E") !important;
}
.ui-datepicker .ui-datepicker-title select.ui-datepicker-month option,
.ui-datepicker .ui-datepicker-title select.ui-datepicker-year option {
  background-color: #ffffff !important;
  color: #0f172a !important;
}
body.dark-mode .ui-datepicker .ui-datepicker-title select.ui-datepicker-month, html.dark-mode .ui-datepicker .ui-datepicker-title select.ui-datepicker-month,
body.dark-mode .ui-datepicker .ui-datepicker-title select.ui-datepicker-year,
html.dark-mode .ui-datepicker .ui-datepicker-title select.ui-datepicker-year {
  background-color: #0f172a !important;
  border-color: rgba(255, 255, 255, 0.15) !important;
  color: #f1f5f9 !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%23f1f5f9' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E") !important;
}
body.dark-mode .ui-datepicker .ui-datepicker-title select.ui-datepicker-month:hover, body.dark-mode .ui-datepicker .ui-datepicker-title select.ui-datepicker-month:focus, html.dark-mode .ui-datepicker .ui-datepicker-title select.ui-datepicker-month:hover, html.dark-mode .ui-datepicker .ui-datepicker-title select.ui-datepicker-month:focus,
body.dark-mode .ui-datepicker .ui-datepicker-title select.ui-datepicker-year:hover,
body.dark-mode .ui-datepicker .ui-datepicker-title select.ui-datepicker-year:focus,
html.dark-mode .ui-datepicker .ui-datepicker-title select.ui-datepicker-year:hover,
html.dark-mode .ui-datepicker .ui-datepicker-title select.ui-datepicker-year:focus {
  border-color: #00da89 !important;
  color: #00da89 !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%2300da89' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E") !important;
}
body.dark-mode .ui-datepicker .ui-datepicker-title select.ui-datepicker-month option, html.dark-mode .ui-datepicker .ui-datepicker-title select.ui-datepicker-month option,
body.dark-mode .ui-datepicker .ui-datepicker-title select.ui-datepicker-year option,
html.dark-mode .ui-datepicker .ui-datepicker-title select.ui-datepicker-year option {
  background-color: #0f172a !important;
  color: #f1f5f9 !important;
}
.ui-datepicker .ui-datepicker-next {
  order: 3 !important;
  width: 26px !important;
  height: 26px !important;
  cursor: pointer !important;
  border: none !important;
  background-color: transparent !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: background-color 0.15s ease !important;
  border-radius: 6px;
}
.ui-datepicker .ui-datepicker-next:hover {
  background-color: #f1f5f9 !important;
}
.ui-datepicker .ui-datepicker-next.ui-state-disabled, .ui-datepicker .ui-datepicker-next.ui-datepicker-disabled {
  opacity: 0.3 !important;
  cursor: not-allowed !important;
  pointer-events: none !important;
}
body.dark-mode .ui-datepicker .ui-datepicker-next:hover, html.dark-mode .ui-datepicker .ui-datepicker-next:hover {
  background-color: rgba(255, 255, 255, 0.1) !important;
}
.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
  position: static !important;
  display: block !important;
  width: 14px !important;
  height: 14px !important;
  margin: 0 !important;
  text-indent: -9999px !important;
  overflow: hidden !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: 14px 14px !important;
  opacity: 0.85 !important;
  filter: none !important;
  transition: opacity 0.15s ease, background-image 0.15s ease !important;
}
.ui-datepicker .ui-datepicker-prev span {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%230f172a' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='15 18 9 12 15 6'%3E%3C/polyline%3E%3C/svg%3E") !important;
}
.ui-datepicker .ui-datepicker-prev:hover span {
  opacity: 1 !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2300da89' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='15 18 9 12 15 6'%3E%3C/polyline%3E%3C/svg%3E") !important;
}
.ui-datepicker .ui-datepicker-next span {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%230f172a' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='9 18 15 12 9 6'%3E%3C/polyline%3E%3C/svg%3E") !important;
}
.ui-datepicker .ui-datepicker-next:hover span {
  opacity: 1 !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2300da89' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='9 18 15 12 9 6'%3E%3C/polyline%3E%3C/svg%3E") !important;
}
body.dark-mode .ui-datepicker .ui-datepicker-prev span, html.dark-mode .ui-datepicker .ui-datepicker-prev span {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23f1f5f9' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='15 18 9 12 15 6'%3E%3C/polyline%3E%3C/svg%3E") !important;
}
body.dark-mode .ui-datepicker .ui-datepicker-prev:hover span, html.dark-mode .ui-datepicker .ui-datepicker-prev:hover span {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2300da89' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='15 18 9 12 15 6'%3E%3C/polyline%3E%3C/svg%3E") !important;
}
body.dark-mode .ui-datepicker .ui-datepicker-next span, html.dark-mode .ui-datepicker .ui-datepicker-next span {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23f1f5f9' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='9 18 15 12 9 6'%3E%3C/polyline%3E%3C/svg%3E") !important;
}
body.dark-mode .ui-datepicker .ui-datepicker-next:hover span, html.dark-mode .ui-datepicker .ui-datepicker-next:hover span {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2300da89' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='9 18 15 12 9 6'%3E%3C/polyline%3E%3C/svg%3E") !important;
}
.ui-datepicker table.ui-datepicker-calendar {
  margin: 6px 0 0 0 !important;
  width: 100% !important;
  table-layout: fixed !important;
  border-collapse: separate !important;
  border-spacing: 2px !important;
}
.ui-datepicker th {
  padding: 4px 0 !important;
  text-align: center !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  border: 0 !important;
  color: #64748b !important;
}
body.dark-mode .ui-datepicker th, html.dark-mode .ui-datepicker th {
  color: #94a3b8 !important;
}
.ui-datepicker td {
  border: 0 !important;
  padding: 0 !important;
  width: 14.285% !important;
  text-align: center !important;
  vertical-align: middle !important;
}
.ui-datepicker td a,
.ui-datepicker td span {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 28px !important;
  height: 28px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  text-decoration: none !important;
  text-align: center !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  border-radius: 6px;
  box-sizing: border-box !important;
  transition: all 0.15s ease !important;
}
.ui-datepicker .ui-datepicker-calendar .ui-state-default {
  border: 1px solid transparent !important;
  background-color: transparent !important;
  color: #1e293b !important;
}
body.dark-mode .ui-datepicker .ui-datepicker-calendar .ui-state-default, html.dark-mode .ui-datepicker .ui-datepicker-calendar .ui-state-default {
  color: #f1f5f9 !important;
}
.ui-datepicker .ui-datepicker-calendar td.ui-datepicker-other-month .ui-state-default {
  opacity: 0.35 !important;
  background-color: transparent !important;
  color: #94a3b8 !important;
}
body.dark-mode .ui-datepicker .ui-datepicker-calendar td.ui-datepicker-other-month .ui-state-default, html.dark-mode .ui-datepicker .ui-datepicker-calendar td.ui-datepicker-other-month .ui-state-default {
  color: #64748b !important;
}
.ui-datepicker .ui-datepicker-calendar td a.ui-state-default:hover,
.ui-datepicker .ui-datepicker-calendar .ui-state-hover {
  background-color: #f1f5f9 !important;
  border-color: transparent !important;
  color: #0f172a !important;
  font-weight: 600 !important;
}
body.dark-mode .ui-datepicker .ui-datepicker-calendar td a.ui-state-default:hover, html.dark-mode .ui-datepicker .ui-datepicker-calendar td a.ui-state-default:hover,
body.dark-mode .ui-datepicker .ui-datepicker-calendar .ui-state-hover,
html.dark-mode .ui-datepicker .ui-datepicker-calendar .ui-state-hover {
  background-color: rgba(255, 255, 255, 0.1) !important;
  color: #ffffff !important;
}
.ui-datepicker .ui-datepicker-calendar .ui-state-highlight,
.ui-datepicker .ui-datepicker-calendar td.ui-datepicker-today a {
  background-color: rgba(0, 218, 137, 0.08) !important;
  border: 1.5px solid #00da89 !important;
  color: #047857 !important;
  font-weight: 700 !important;
}
body.dark-mode .ui-datepicker .ui-datepicker-calendar .ui-state-highlight, html.dark-mode .ui-datepicker .ui-datepicker-calendar .ui-state-highlight,
body.dark-mode .ui-datepicker .ui-datepicker-calendar td.ui-datepicker-today a,
html.dark-mode .ui-datepicker .ui-datepicker-calendar td.ui-datepicker-today a {
  background-color: rgba(0, 218, 137, 0.15) !important;
  color: #00da89 !important;
}
.ui-datepicker .ui-datepicker-calendar .ui-state-active,
.ui-datepicker .ui-datepicker-calendar td.ui-datepicker-current-day a {
  background-color: #00da89 !important;
  border: 1.5px solid #00da89 !important;
  color: #0e2b3e !important;
  font-weight: 700 !important;
  box-shadow: 0 2px 6px rgba(0, 218, 137, 0.35) !important;
}
body.dark-mode .ui-datepicker .ui-datepicker-calendar .ui-state-active, html.dark-mode .ui-datepicker .ui-datepicker-calendar .ui-state-active,
body.dark-mode .ui-datepicker .ui-datepicker-calendar td.ui-datepicker-current-day a,
html.dark-mode .ui-datepicker .ui-datepicker-calendar td.ui-datepicker-current-day a {
  color: #022c22 !important;
}
.ui-datepicker.ui-datepicker-multi {
  width: auto;
}
.ui-datepicker .ui-datepicker-multi .ui-datepicker-group {
  float: left;
}
.ui-datepicker .ui-datepicker-multi .ui-datepicker-group table {
  width: 95%;
  margin: 0 auto 0.4em;
}
.ui-datepicker .ui-datepicker-multi-2 .ui-datepicker-group {
  width: 50%;
}
.ui-datepicker .ui-datepicker-multi-3 .ui-datepicker-group {
  width: 33.3%;
}
.ui-datepicker .ui-datepicker-multi-4 .ui-datepicker-group {
  width: 25%;
}
.ui-datepicker .ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker .ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {
  border-left-width: 0;
}
.ui-datepicker .ui-datepicker-multi .ui-datepicker-buttonpane {
  clear: left;
}
.ui-datepicker .ui-datepicker-row-break {
  clear: both;
  width: 100%;
  font-size: 0;
}
.ui-datepicker.ui-datepicker-rtl {
  direction: rtl;
}
.ui-datepicker.ui-datepicker-rtl .ui-datepicker-prev {
  right: 2px;
  left: auto;
}
.ui-datepicker.ui-datepicker-rtl .ui-datepicker-next {
  left: 2px;
  right: auto;
}
.ui-datepicker.ui-datepicker-rtl .ui-datepicker-prev:hover {
  right: 1px;
  left: auto;
}
.ui-datepicker.ui-datepicker-rtl .ui-datepicker-next:hover {
  left: 1px;
  right: auto;
}
.ui-datepicker.ui-datepicker-rtl .ui-datepicker-buttonpane {
  clear: right;
}
.ui-datepicker.ui-datepicker-rtl .ui-datepicker-buttonpane button {
  float: left;
}
.ui-datepicker.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,
.ui-datepicker.ui-datepicker-rtl .ui-datepicker-group {
  float: right;
}
.ui-datepicker.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header {
  border-right-width: 0;
  border-left-width: 1px;
}

/* Menu */
.ui-menu {
  list-style: none;
  display: block;
  padding: 0;
  margin: 0;
  outline: none;
}
.ui-menu .ui-menu {
  position: absolute;
}
.ui-menu .ui-menu-item {
  position: relative;
  margin: 0;
  cursor: pointer;
  min-height: 0;
  padding: 5px;
  list-style-image: url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7");
}
.ui-menu .ui-menu-divider {
  margin: 0;
  height: 0;
  font-size: 0;
  line-height: 0;
  border-width: 0;
}
.ui-menu .ui-state-focus,
.ui-menu .ui-state-active {
  margin: 0;
}
.ui-menu.ui-menu-icons {
  position: relative;
}
.ui-menu.ui-menu-icons .ui-menu-item {
  padding-left: 20px;
}
.ui-menu .ui-icon {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 2px;
  margin: auto 0;
}
.ui-menu .ui-menu-icon {
  left: auto;
  right: 0;
}

/* Selectmenu */
.ui-selectmenu-menu {
  position: absolute;
  padding: 0;
  margin: 0;
  display: none;
  top: 0;
  left: 0;
  z-index: 11;
  box-shadow: 0 1px 2px #cbd5e1;
}
.ui-selectmenu-menu .ui-menu {
  overflow: auto;
  overflow-x: hidden;
  max-height: 150px;
  border-radius: 10px;
}
.ui-selectmenu-menu .ui-menu .ui-selectmenu-optgroup {
  font-weight: bold;
  line-height: 1.4em;
  padding: 2px 5px;
  margin: 5px 0 0;
  height: auto;
  border: 0;
}

.ui-selectmenu-open {
  display: block;
}

.ui-selectmenu-button {
  display: inline-block;
  position: relative;
  width: 100% !important;
  padding: 0;
  text-decoration: none;
  overflow: hidden;
  cursor: pointer;
  border: 2px solid var(--accent-alpha);
  border-radius: 10px;
}
.ui-selectmenu-button.ui-state-hover {
  background-color: var(--text-primary) !important;
  border-color: var(--accent-color);
  transition: border-color 0.5s ease;
}
.ui-selectmenu-button.ui-state-focus, .ui-selectmenu-button.ui-state-active {
  border-color: 2px solid var(--accent-color);
}
.ui-selectmenu-button span.ui-icon {
  position: absolute;
  right: 7px;
  top: 50%;
  margin-top: -7px;
  left: auto;
}
.ui-selectmenu-button span.ui-selectmenu-text {
  text-align: left;
  display: block;
  padding: 8px 27px 8px 10px;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  line-height: 1.4em;
}

/* Slider */
.ui-slider {
  position: relative;
  text-align: left;
}

.ui-slider .ui-slider-handle {
  position: absolute;
  z-index: 11;
  width: 1.2em;
  height: 1.2em;
  cursor: default;
  -ms-touch-action: none;
  touch-action: none;
}

.ui-slider .ui-slider-range {
  position: absolute;
  z-index: 11;
  font-size: 0.7em;
  display: block;
  border: 0;
  background-position: 0 0;
}

.ui-slider.ui-state-disabled .ui-slider-handle,
.ui-slider.ui-state-disabled .ui-slider-range {
  filter: inherit;
}

.ui-slider-horizontal {
  height: 0.8em;
}
.ui-slider-horizontal .ui-slider-handle {
  top: -0.3em;
  margin-left: -0.6em;
}
.ui-slider-horizontal .ui-slider-range {
  top: 0;
  height: 100%;
}
.ui-slider-horizontal .ui-slider-range-min {
  left: 0;
}
.ui-slider-horizontal .ui-slider-range-max {
  right: 0;
}

.ui-slider-vertical {
  width: 0.8em;
  height: 100px;
}
.ui-slider-vertical .ui-slider-handle {
  left: -0.3em;
  margin-left: 0;
  margin-bottom: -0.6em;
}
.ui-slider-vertical .ui-slider-range {
  left: 0;
  width: 100%;
}
.ui-slider-vertical .ui-slider-range-min {
  bottom: 0;
}
.ui-slider-vertical .ui-slider-range-max {
  top: 0;
}

/* Spinner */
.ui-spinner {
  position: relative;
  display: inline-block;
  overflow: hidden;
  padding: 0;
  vertical-align: middle;
  border: 2px solid var(--accent-alpha);
}

.ui-spinner-input {
  border: 0 !important;
  background: none;
  color: inherit;
  padding: 7px;
  margin: 0 16px 0 0;
  vertical-align: middle;
  width: 100%;
}

.ui-spinner-button {
  position: absolute;
  width: 16px;
  height: 50%;
  text-align: center;
  font-size: 5px;
  padding: 0;
  margin: 0;
  right: 0;
  display: block;
  overflow: hidden;
  cursor: pointer;
}

.ui-spinner a.ui-spinner-button {
  border: 0;
  border-left: 2px solid var(--accent-alpha);
}

.ui-spinner .ui-icon {
  position: absolute;
  margin-top: -8px;
  top: 50%;
  left: 0;
}

.ui-spinner-up {
  top: 0;
}

.ui-spinner-down {
  bottom: 0;
}

/* Widget containers and states */
.ui-widget {
  font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  font-size: 14px;
  overflow: hidden;
}
.ui-widget button,
.ui-widget input,
.ui-widget select,
.ui-widget textarea {
  font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

.ui-widget-content {
  background-color: var(--bg-primary);
  color: var(--text-primary);
}

.ui-widget-content a {
  color: var(--accent-color);
}

.ui-widget-header {
  background-color: var(--btn-primary-bg);
  color: var(--btn-primary-color);
  font-weight: bold;
}

.ui-widget-header a {
  color: var(--accent-color);
}

.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default {
  background-color: var(--btn-primary-bg);
  color: var(--btn-primary-color);
}

.ui-state-default a,
.ui-state-default a:link,
.ui-state-default a:visited {
  color: var(--btn-primary-color);
  text-decoration: none;
}

.ui-state-hover,
.ui-widget-content .ui-state-hover,
.ui-widget-header .ui-state-hover,
.ui-state-focus,
.ui-widget-content .ui-state-focus,
.ui-widget-header .ui-state-focus {
  background-color: var(--btn-secondary-color-hover);
  color: var(--btn-secondary-color);
}

.ui-state-hover a,
.ui-state-hover a:link,
.ui-state-hover a:visited,
.ui-state-focus a,
.ui-state-focus a:link,
.ui-state-focus a:visited {
  color: var(--btn-secondary-color);
  text-decoration: none;
}

.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active {
  background-color: var(--bg-secondary);
  border: 2px solid var(--btn-secondary-border);
  color: var(--btn-secondary-color);
}

.ui-state-active a,
.ui-state-active a:link,
.ui-state-active a:visited {
  background-color: var(--btn-primary-bg-hover);
  text-decoration: none;
}

.ui-state-highlight,
.ui-widget-content .ui-state-highlight,
.ui-widget-header .ui-state-highlight {
  border: 2px solid var(--accent-alpha);
  color: var(--btn-primary-color);
}

.ui-state-highlight a,
.ui-widget-content .ui-state-highlight a,
.ui-widget-header .ui-state-highlight a {
  color: var(--btn-primary-color);
}

.ui-state-error,
.ui-widget-content .ui-state-error,
.ui-widget-header .ui-state-error {
  border: 2px solid #e11d48;
  color: var(--btn-primary-color);
}

.ui-state-error a,
.ui-widget-content .ui-state-error a,
.ui-widget-header .ui-state-error a {
  color: var(--btn-primary-color);
}

.ui-state-error-text,
.ui-widget-content .ui-state-error-text,
.ui-widget-header .ui-state-error-text {
  color: var(--btn-primary-color);
}

.ui-priority-primary,
.ui-widget-content .ui-priority-primary,
.ui-widget-header .ui-priority-primary {
  font-weight: bold;
}

.ui-priority-secondary,
.ui-widget-content .ui-priority-secondary,
.ui-widget-header .ui-priority-secondary {
  opacity: 0.7;
  filter: Alpha(Opacity=70);
}

.ui-state-disabled,
.ui-widget-content .ui-state-disabled,
.ui-widget-header .ui-state-disabled {
  opacity: 0.35;
  filter: Alpha(Opacity=35);
  background-image: none;
}

.ui-state-disabled .ui-icon {
  filter: Alpha(Opacity=35);
}

/* Final Icon Rules */
.ui-icon {
  width: 13px;
  height: 13px;
}
.ui-icon, .ui-widget-content .ui-icon, .ui-widget-header .ui-icon, .ui-state-default .ui-icon, .ui-state-hover .ui-icon, .ui-state-focus .ui-icon, .ui-state-active .ui-icon, .ui-state-highlight .ui-icon, .ui-state-error .ui-icon, .ui-state-error-text .ui-icon {
  background-image: url("/images/vectors/icons.svg");
  background-size: 500px 500px;
}

.ui-icon-triangle-1-s {
  background-position: -140px 0;
}

.ui-icon-circle-triangle-w {
  background-position: -255px 0;
}

.ui-icon-circle-triangle-e {
  background-position: -265px 0;
}

.ui-widget-overlay {
  background-color: #000000;
  opacity: 0.7;
  filter: Alpha(Opacity=70);
}

/* HIGH SPECIFICITY DATEPICKER OVERRIDES */
#ui-datepicker-div {
  display: none;
}

#ui-datepicker-div.ui-datepicker {
  z-index: 100000 !important;
  width: 260px !important;
  max-width: 260px !important;
  padding: 8px 10px 10px 10px !important;
  background-color: #ffffff !important;
  border: 1px solid #cbd5e1 !important;
  border-radius: 10px;
  box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.12), 0 8px 10px -6px rgba(0, 0, 0, 0.06) !important;
  box-sizing: border-box !important;
}
body.dark-mode #ui-datepicker-div.ui-datepicker, html.dark-mode #ui-datepicker-div.ui-datepicker {
  background-color: #1e293b !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
  box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.4), 0 8px 10px -6px rgba(0, 0, 0, 0.3) !important;
}
#ui-datepicker-div.ui-datepicker .ui-datepicker-calendar {
  width: 100% !important;
  table-layout: fixed !important;
  border-collapse: separate !important;
  border-spacing: 2px !important;
  margin: 6px 0 0 0 !important;
}
#ui-datepicker-div.ui-datepicker .ui-datepicker-calendar th {
  width: 14.285% !important;
  padding: 4px 0 !important;
  text-align: center !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  border: 0 !important;
  color: #64748b !important;
}
body.dark-mode #ui-datepicker-div.ui-datepicker .ui-datepicker-calendar th, html.dark-mode #ui-datepicker-div.ui-datepicker .ui-datepicker-calendar th {
  color: #94a3b8 !important;
}
#ui-datepicker-div.ui-datepicker .ui-datepicker-calendar td {
  width: 14.285% !important;
  padding: 0 !important;
  text-align: center !important;
  vertical-align: middle !important;
  border: 0 !important;
}
#ui-datepicker-div.ui-datepicker .ui-datepicker-calendar td a, #ui-datepicker-div.ui-datepicker .ui-datepicker-calendar td span {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 28px !important;
  height: 28px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  text-decoration: none !important;
  text-align: center !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  border-radius: 6px;
  box-sizing: border-box !important;
  transition: all 0.15s ease !important;
}
#ui-datepicker-div.ui-datepicker .ui-datepicker-calendar td a.ui-state-default {
  background-color: transparent !important;
  color: #0f172a !important;
  border: 1px solid transparent !important;
  font-weight: 500 !important;
}
body.dark-mode #ui-datepicker-div.ui-datepicker .ui-datepicker-calendar td a.ui-state-default, html.dark-mode #ui-datepicker-div.ui-datepicker .ui-datepicker-calendar td a.ui-state-default {
  color: #f1f5f9 !important;
}
#ui-datepicker-div.ui-datepicker .ui-datepicker-calendar td.ui-datepicker-other-month a.ui-state-default {
  background-color: transparent !important;
  color: #94a3b8 !important;
  opacity: 0.35 !important;
  border: 1px solid transparent !important;
}
body.dark-mode #ui-datepicker-div.ui-datepicker .ui-datepicker-calendar td.ui-datepicker-other-month a.ui-state-default, html.dark-mode #ui-datepicker-div.ui-datepicker .ui-datepicker-calendar td.ui-datepicker-other-month a.ui-state-default {
  color: #64748b !important;
}
#ui-datepicker-div.ui-datepicker .ui-datepicker-calendar td a.ui-state-default:hover,
#ui-datepicker-div.ui-datepicker .ui-datepicker-calendar .ui-state-hover {
  background-color: #f1f5f9 !important;
  color: #0f172a !important;
  font-weight: 600 !important;
  border-color: transparent !important;
}
body.dark-mode #ui-datepicker-div.ui-datepicker .ui-datepicker-calendar td a.ui-state-default:hover, html.dark-mode #ui-datepicker-div.ui-datepicker .ui-datepicker-calendar td a.ui-state-default:hover,
body.dark-mode #ui-datepicker-div.ui-datepicker .ui-datepicker-calendar .ui-state-hover,
html.dark-mode #ui-datepicker-div.ui-datepicker .ui-datepicker-calendar .ui-state-hover {
  background-color: rgba(255, 255, 255, 0.1) !important;
  color: #ffffff !important;
}
#ui-datepicker-div.ui-datepicker .ui-datepicker-calendar td.ui-datepicker-today a,
#ui-datepicker-div.ui-datepicker .ui-datepicker-calendar td a.ui-state-highlight {
  background-color: rgba(0, 218, 137, 0.08) !important;
  color: #047857 !important;
  border: 1.5px solid #00da89 !important;
  font-weight: 700 !important;
}
body.dark-mode #ui-datepicker-div.ui-datepicker .ui-datepicker-calendar td.ui-datepicker-today a, html.dark-mode #ui-datepicker-div.ui-datepicker .ui-datepicker-calendar td.ui-datepicker-today a,
body.dark-mode #ui-datepicker-div.ui-datepicker .ui-datepicker-calendar td a.ui-state-highlight,
html.dark-mode #ui-datepicker-div.ui-datepicker .ui-datepicker-calendar td a.ui-state-highlight {
  background-color: rgba(0, 218, 137, 0.15) !important;
  color: #00da89 !important;
}
#ui-datepicker-div.ui-datepicker .ui-datepicker-calendar td.ui-datepicker-current-day a,
#ui-datepicker-div.ui-datepicker .ui-datepicker-calendar td a.ui-state-active {
  background-color: #00da89 !important;
  color: #064e3b !important;
  border: 1.5px solid #00da89 !important;
  font-weight: 700 !important;
  box-shadow: 0 2px 6px rgba(0, 218, 137, 0.35) !important;
}
body.dark-mode #ui-datepicker-div.ui-datepicker .ui-datepicker-calendar td.ui-datepicker-current-day a, html.dark-mode #ui-datepicker-div.ui-datepicker .ui-datepicker-calendar td.ui-datepicker-current-day a,
body.dark-mode #ui-datepicker-div.ui-datepicker .ui-datepicker-calendar td a.ui-state-active,
html.dark-mode #ui-datepicker-div.ui-datepicker .ui-datepicker-calendar td a.ui-state-active {
  color: #022c22 !important;
}

/*# sourceMappingURL=jquery-ui.css.map */
