[data-theme=midnight]{--input:214 14% 13%!important}[data-theme=twilight]{--input:231 15% 34%!important}[data-theme=midnight] .bg-input,[data-theme=midnight] input,[data-theme=midnight] select,[data-theme=midnight] textarea{background-color:hsl(214 14% 13%)!important}[data-theme=twilight] .bg-input,[data-theme=twilight] input,[data-theme=twilight] select,[data-theme=twilight] textarea{background-color:hsl(231 15% 34%)!important}[data-theme=midnight] .centre-selector,[data-theme=twilight] .centre-selector{background-color:transparent!important;background:none!important;color:hsl(var(--foreground));overflow:visible!important;white-space:nowrap!important}[data-theme=midnight] .centre-selector:hover,[data-theme=twilight] .centre-selector:hover{color:hsl(var(--foreground));background:none!important}.centre-selector{--body-text:hsl(var(--foreground));background:none!important;overflow:visible!important}.centre-selector span{overflow:visible!important;text-overflow:unset!important;white-space:nowrap!important}.centre-selector.bg-transparent,.centre-selector[class*=border-0]{overflow:visible!important;background:none!important;border:none!important;box-shadow:none!important}.centre-selector .truncate{overflow:visible!important;text-overflow:unset!important;white-space:nowrap!important}.schedule-calendar-grid{background:var(--schedule-grid-background,transparent)}:root{--overlay-darkness-factor:0}[data-theme=midnight] .schedule-cell-text,[data-theme=midnight] .schedule-cell-text :not(.schedule-waiting-list):not(.schedule-held-spots){color:#F0F6FC!important;text-shadow:0 .5px 1px rgba(0,0,0,.4)}[data-theme=twilight] .schedule-cell-text,[data-theme=twilight] .schedule-cell-text :not(.schedule-waiting-list):not(.schedule-held-spots){color:#F8F8F2!important;text-shadow:0 .5px 1px rgba(0,0,0,.4)}.schedule-cell-text,.schedule-cell-text *{color:#4A5568!important;transition:color .3s ease-out}.schedule-cell-cancelled .schedule-cell-text,.schedule-cell-cancelled .schedule-cell-text *{color:#6B7280!important}.enhanced-contrast .schedule-cell-text{font-weight:500;text-shadow:0 1px 2px rgba(0,0,0,.2)}.schedule-cell-hovered .schedule-cell-text{filter:brightness(1.1)}.schedule-availability-text{font-weight:600;letter-spacing:-.01em}.schedule-meta-text{opacity:.9}.schedule-waiting-list{color:#FB923C!important;font-weight:600}.schedule-held-spots{color:#3B82F6!important;font-weight:600}[data-theme$=-dark]{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;--text-shadow-subtle:0 1px 2px rgba(0,0,0,0.3);--text-shadow-strong:0 1px 3px rgba(0,0,0,0.5)}[data-theme$=-dark] .bg-gradient-flowing,[data-theme$=-dark] .flow-background{background-size:400% 400%;animation:subtleFlow 15s ease-in-out infinite;will-change:background-position}@keyframes subtleFlow{0%,to{background-position:0 50%}25%{background-position:100% 50%}50%{background-position:100% 100%}75%{background-position:0 100%}}[data-theme$=-dark] button:focus-visible,[data-theme$=-dark] input:focus-visible,[data-theme$=-dark] select:focus-visible,[data-theme$=-dark] textarea:focus-visible{outline:2px solid var(--primary);outline-offset:2px;box-shadow:0 0 0 3px var(--primary-alpha-20,rgba(var(--primary-rgb),.2))}[data-theme$=-dark] .bg-card,[data-theme$=-dark] .card{box-shadow:0 1px 3px rgba(0,0,0,.5),0 1px 2px rgba(0,0,0,.3);transition:box-shadow .2s ease}[data-theme$=-dark] .bg-card:hover,[data-theme$=-dark] .card:hover{box-shadow:0 4px 6px rgba(0,0,0,.6),0 2px 4px rgba(0,0,0,.4)}[data-theme$=-dark] .navigation-item{transition:all .2s ease}[data-theme$=-dark] .navigation-item:hover{background-color:var(--surface-hover);border-radius:6px}[data-theme$=-dark] ::-webkit-scrollbar{width:8px;height:8px}[data-theme$=-dark] ::-webkit-scrollbar-track{background:var(--surface-subtle);border-radius:4px}[data-theme$=-dark] ::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:4px;-webkit-transition:background .2s ease;transition:background .2s ease}[data-theme$=-dark] ::-webkit-scrollbar-thumb:hover{background:var(--primary)}[data-theme$=-dark] h1,[data-theme$=-dark] h2,[data-theme$=-dark] h3,[data-theme$=-dark] h4,[data-theme$=-dark] h5,[data-theme$=-dark] h6{text-shadow:var(--text-shadow-subtle);color:var(--text)}[data-theme$=-dark] div,[data-theme$=-dark] p,[data-theme$=-dark] span{color:var(--text-muted)}[data-theme$=-dark] .text-subtle{color:var(--text-subtle);text-shadow:var(--text-shadow-subtle)}[data-theme$=-dark] .border,[data-theme$=-dark] .border-b,[data-theme$=-dark] .border-l,[data-theme$=-dark] .border-r,[data-theme$=-dark] .border-t{border-color:var(--border-subtle)}[data-theme$=-dark] .divider,[data-theme$=-dark] hr{border-color:var(--divider);opacity:.6}[data-theme$=-dark] input,[data-theme$=-dark] select,[data-theme$=-dark] textarea{background-color:var(--input);border-color:var(--input-border);color:var(--text);text-shadow:var(--text-shadow-subtle)}[data-theme$=-dark] input::-moz-placeholder,[data-theme$=-dark] textarea::-moz-placeholder{color:var(--input-placeholder);opacity:.8}[data-theme$=-dark] input::placeholder,[data-theme$=-dark] textarea::placeholder{color:var(--input-placeholder);opacity:.8}[data-theme$=-dark] .modal-overlay{background:var(--modal-overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}[data-theme$=-dark] .modal-content{background:var(--modal);box-shadow:0 10px 25px rgba(0,0,0,.7),0 4px 10px rgba(0,0,0,.5);border:1px solid var(--border-subtle)}[data-theme$=-dark] .interactive-glow:hover{box-shadow:0 0 20px var(--primary-alpha-20,rgba(var(--primary-rgb),.2)),0 4px 6px rgba(0,0,0,.4)}[data-theme$=-dark] *{will-change:auto}[data-theme$=-dark] .animate-element{will-change:transform,opacity;backface-visibility:hidden;transform:translateZ(0)}:root{--etched-inset-shadow:inset 0 2px 4px rgba(0,0,0,0.15),inset 0 1px 2px rgba(0,0,0,0.1);--etched-inset-shadow-dark:inset 0 2px 4px rgba(0,0,0,0.25),inset 0 1px 2px rgba(0,0,0,0.15);--etched-highlight:inset 0 -1px 0 rgba(255,255,255,0.1);--etched-highlight-dark:inset 0 -1px 0 rgba(255,255,255,0.05);--etched-border:inset 0 0 0 1px rgba(255,255,255,0.05);--etched-border-dark:inset 0 0 0 1px rgba(0,0,0,0.1);--etched-background:rgba(0,0,0,0.08);--etched-background-dark:rgba(0,0,0,0.12);--etched-focus-glow:0 0 0 2px rgba(255,255,255,0.1);--etched-focus-glow-dark:0 0 0 2px rgba(255,255,255,0.08)}.etched-glass-input{position:relative;background:var(--etched-background);border:none;border-radius:20px;padding:12px 16px;font-size:14px;font-weight:400;color:inherit;outline:none;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%;box-shadow:var(--etched-inset-shadow),var(--etched-highlight),var(--etched-border);backdrop-filter:none;-webkit-backdrop-filter:none}.etched-glass-input.dark{background:var(--etched-background-dark);box-shadow:var(--etched-inset-shadow-dark),var(--etched-highlight-dark),var(--etched-border-dark)}.etched-glass-input::-moz-placeholder{color:inherit!important}.etched-glass-input,.etched-glass-input::placeholder{color:inherit!important}.etched-glass-input.medical-conditions-search{border-radius:25px!important}.etched-glass-input:focus{box-shadow:var(--etched-inset-shadow),var(--etched-highlight),var(--etched-border),var(--etched-focus-glow);background:rgba(0,0,0,.12)}.etched-glass-input.dark:focus{box-shadow:var(--etched-inset-shadow-dark),var(--etched-highlight-dark),var(--etched-border-dark),var(--etched-focus-glow-dark);background:rgba(0,0,0,.08)}.etched-glass-input::-moz-placeholder{color:var(--placeholder-color,rgba(255,255,255,.4));opacity:1}.etched-glass-input::placeholder{color:var(--placeholder-color,rgba(255,255,255,.4));opacity:1}.etched-glass-input.dark::-moz-placeholder{color:var(--placeholder-color,rgba(255,255,255,.35))}.etched-glass-input.dark::placeholder{color:var(--placeholder-color,rgba(255,255,255,.35))}.etched-glass-input:disabled{opacity:.5;cursor:not-allowed;background:rgba(255,255,255,.01)}.etched-glass-select{position:relative;background:var(--etched-background);border:none;border-radius:20px!important;padding:12px 40px 12px 16px;font-size:14px;font-weight:400;color:inherit;outline:none;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1)}.etched-glass-select[role=combobox],[data-radix-collection-item] .etched-glass-select,button[data-radix-select-trigger].etched-glass-select{border-radius:20px!important;background:var(--etched-background)!important;box-shadow:var(--etched-inset-shadow),var(--etched-highlight),var(--etched-border)!important}.etched-glass-select.dark[role=combobox],[data-radix-collection-item] .etched-glass-select.dark,button[data-radix-select-trigger].etched-glass-select.dark{background:var(--etched-background-dark)!important;box-shadow:var(--etched-inset-shadow-dark),var(--etched-highlight-dark),var(--etched-border-dark)!important}.connect-interface .etched-glass-select-content,.connect-interface [data-radix-select-content].etched-glass-select-content,.connect-interface div[data-radix-select-content],.connect-interface div[role=listbox].etched-glass-select-content,.connect-theme .etched-glass-select-content,.connect-theme [data-radix-select-content].etched-glass-select-content,.connect-theme div[data-radix-select-content],.connect-theme div[role=listbox].etched-glass-select-content{background:var(--etched-background)!important;border:1px solid rgba(255,255,255,.2)!important;box-shadow:var(--etched-inset-shadow),var(--etched-highlight),var(--etched-border),0 10px 25px rgba(0,0,0,.2)!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important}.connect-interface .etched-glass-select-content[data-dark=true],.connect-interface [data-radix-select-content].etched-glass-select-content[data-dark=true],.connect-interface div[data-radix-select-content][data-dark=true],.connect-interface div[role=listbox].etched-glass-select-content[data-dark=true],.connect-theme .etched-glass-select-content[data-dark=true],.connect-theme [data-radix-select-content].etched-glass-select-content[data-dark=true],.connect-theme div[data-radix-select-content][data-dark=true],.connect-theme div[role=listbox].etched-glass-select-content[data-dark=true]{background:var(--etched-background-dark)!important;border:1px solid rgba(0,0,0,.3)!important;box-shadow:var(--etched-inset-shadow-dark),var(--etched-highlight-dark),var(--etched-border-dark),0 10px 25px rgba(0,0,0,.3)!important}.connect-interface [data-radix-select-content],.connect-theme [data-radix-select-content]{background:var(--etched-background)!important;-webkit-backdrop-filter:blur(12px)!important;backdrop-filter:blur(12px)!important}.connect-interface [data-radix-select-content][data-dark=true],.connect-theme [data-radix-select-content][data-dark=true]{background:var(--etched-background-dark)!important}.connect-interface [data-radix-popper-content-wrapper]>[data-radix-select-content],.connect-interface [data-radix-select-content]:not([data-no-glass]),.connect-interface div[id^=radix-]:not([data-radix-popper-content-wrapper]),.connect-theme [data-radix-popper-content-wrapper]>[data-radix-select-content],.connect-theme [data-radix-select-content]:not([data-no-glass]),.connect-theme div[id^=radix-]:not([data-radix-popper-content-wrapper]){background:var(--etched-background)!important;border:1px solid rgba(255,255,255,.2)!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important;box-shadow:inset 0 2px 4px rgba(0,0,0,.15),inset 0 1px 2px rgba(0,0,0,.1),inset 0 -1px 0 rgba(255,255,255,.1),inset 0 0 0 1px rgba(255,255,255,.05),0 10px 25px rgba(0,0,0,.2)!important}.connect-interface div[id^=radix-]:not([data-radix-popper-content-wrapper]),.connect-theme div[id^=radix-]:not([data-radix-popper-content-wrapper]){border-radius:16px!important}.connect-interface [role=combobox].etched-glass-select+div,.connect-interface [role=combobox].etched-glass-select~div,.connect-theme [role=combobox].etched-glass-select+div,.connect-theme [role=combobox].etched-glass-select~div{background:var(--etched-background)!important;border:1px solid rgba(255,255,255,.2)!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important;border-radius:16px!important}.connect-interface [data-radix-portal]>div[id^=radix-],.connect-interface body>div[id^=radix-],.connect-interface div[data-radix-popper-content-wrapper] div[data-radix-select-content],.connect-theme [data-radix-portal]>div[id^=radix-],.connect-theme body>div[id^=radix-],.connect-theme div[data-radix-popper-content-wrapper] div[data-radix-select-content]{background:var(--etched-background)!important;border:1px solid rgba(255,255,255,.2)!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important;border-radius:16px!important;box-shadow:inset 0 2px 4px rgba(0,0,0,.15),inset 0 1px 2px rgba(0,0,0,.1),inset 0 -1px 0 rgba(255,255,255,.1),inset 0 0 0 1px rgba(255,255,255,.05),0 10px 25px rgba(0,0,0,.2)!important}.etched-glass-select{box-shadow:var(--etched-inset-shadow),var(--etched-highlight),var(--etched-border);appearance:none;-webkit-appearance:none;-moz-appearance:none}.etched-glass-select.dark{background:var(--etched-background-dark);box-shadow:var(--etched-inset-shadow-dark),var(--etched-highlight-dark),var(--etched-border-dark)}.etched-glass-select:after{content:"";position:absolute;right:16px;top:50%;transform:translateY(-50%);width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid rgba(255,255,255,.6);pointer-events:none}.etched-glass-select.dark:after{border-top-color:rgba(255,255,255,.5)}.etched-glass-textarea{position:relative;background:var(--etched-background);border:none;border-radius:20px;padding:12px 16px;font-size:14px;font-weight:400;color:inherit;outline:none;resize:vertical;min-height:80px;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:var(--etched-inset-shadow),var(--etched-highlight),var(--etched-border);backdrop-filter:none;-webkit-backdrop-filter:none}.etched-glass-textarea.dark{background:var(--etched-background-dark);box-shadow:var(--etched-inset-shadow-dark),var(--etched-highlight-dark),var(--etched-border-dark)}.etched-glass-button{position:relative;background:var(--etched-background);border:none;border-radius:20px;padding:12px 24px;font-size:14px;font-weight:500;color:inherit;outline:none;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:var(--etched-inset-shadow),var(--etched-highlight),var(--etched-border);backdrop-filter:none;-webkit-backdrop-filter:none}.etched-glass-button.rounded-full{border-radius:9999px!important}.etched-glass-select-content .etched-glass-button.rounded-full{border-radius:9999px!important;-webkit-border-radius:9999px!important;-moz-border-radius:9999px!important}.etched-glass-button.dark{background:var(--etched-background-dark);box-shadow:var(--etched-inset-shadow-dark),var(--etched-highlight-dark),var(--etched-border-dark)}.etched-glass-button:hover:not(:disabled){background:rgba(255,255,255,.06);box-shadow:inset 0 2px 6px rgba(0,0,0,.12),inset 0 1px 3px rgba(0,0,0,.08),var(--etched-highlight),var(--etched-border)}.etched-glass-button.dark:hover:not(:disabled){background:rgba(0,0,0,.08);box-shadow:inset 0 2px 6px rgba(0,0,0,.2),inset 0 1px 3px rgba(0,0,0,.12),var(--etched-highlight-dark),var(--etched-border-dark)}.etched-glass-button:active:not(:disabled){background:rgba(255,255,255,.02);box-shadow:inset 0 3px 8px rgba(0,0,0,.2),inset 0 2px 4px rgba(0,0,0,.15),var(--etched-highlight),var(--etched-border);transform:translateY(1px)}.etched-glass-button.dark:active:not(:disabled){background:rgba(0,0,0,.1);box-shadow:inset 0 3px 8px rgba(0,0,0,.3),inset 0 2px 4px rgba(0,0,0,.2),var(--etched-highlight-dark),var(--etched-border-dark)}.etched-glass-button.pressed{background:rgba(255,255,255,.02);box-shadow:inset 0 3px 8px rgba(0,0,0,.2),inset 0 2px 4px rgba(0,0,0,.15),var(--etched-highlight),var(--etched-border);transform:translateY(1px)}.etched-glass-button.dark.pressed{background:rgba(0,0,0,.1);box-shadow:inset 0 3px 8px rgba(0,0,0,.3),inset 0 2px 4px rgba(0,0,0,.2),var(--etched-highlight-dark),var(--etched-border-dark)}.etched-glass-checkbox,.etched-glass-checkbox.peer,[data-state].etched-glass-checkbox,button.etched-glass-checkbox,button.etched-glass-checkbox.peer,button[role=checkbox].etched-glass-checkbox{position:relative!important;width:20px!important;min-width:20px!important;max-width:20px!important;height:20px!important;min-height:20px!important;max-height:20px!important;background:var(--etched-background)!important;border:none!important;border-radius:8px!important;cursor:pointer!important;transition:all .3s cubic-bezier(.4,0,.2,1)!important;box-shadow:var(--etched-inset-shadow),var(--etched-highlight),var(--etched-border)!important;appearance:none!important;-webkit-appearance:none!important;-moz-appearance:none!important}.etched-glass-checkbox.dark,.etched-glass-checkbox.peer.dark,[data-state].etched-glass-checkbox.dark,button.etched-glass-checkbox.dark,button.etched-glass-checkbox.peer.dark,button[role=checkbox].etched-glass-checkbox.dark{background:var(--etched-background-dark)!important;box-shadow:var(--etched-inset-shadow-dark),var(--etched-highlight-dark),var(--etched-border-dark)!important}.etched-glass-checkbox.peer:checked,.etched-glass-checkbox:checked,.etched-glass-checkbox[data-state=checked],button.etched-glass-checkbox.peer[data-state=checked],button.etched-glass-checkbox[data-state=checked],button[role=checkbox].etched-glass-checkbox[data-state=checked]{background:rgba(255,255,255,.1)!important}.etched-glass-checkbox.dark:checked,.etched-glass-checkbox.dark[data-state=checked],.etched-glass-checkbox.peer.dark:checked,button.etched-glass-checkbox.dark[data-state=checked],button.etched-glass-checkbox.peer.dark[data-state=checked],button[role=checkbox].etched-glass-checkbox.dark[data-state=checked]{background:rgba(0,0,0,.1)!important}.etched-glass-checkbox.peer:checked:after,.etched-glass-checkbox:checked:after,.etched-glass-checkbox[data-state=checked]:after,button.etched-glass-checkbox.peer[data-state=checked]:after,button.etched-glass-checkbox[data-state=checked]:after,button[role=checkbox].etched-glass-checkbox[data-state=checked]:after{content:""!important;position:absolute!important;left:5px!important;top:2px!important;width:5px!important;height:9px!important;border:solid rgba(255,255,255,.9)!important;border-width:0 2.5px 2.5px 0!important;transform:rotate(45deg)!important;box-shadow:0 0 3px rgba(0,0,0,.2)!important;z-index:10!important}.etched-glass-checkbox.dark:checked:after,.etched-glass-checkbox.dark[data-state=checked]:after,.etched-glass-checkbox.peer.dark:checked:after,button.etched-glass-checkbox.dark[data-state=checked]:after,button.etched-glass-checkbox.peer.dark[data-state=checked]:after,button[role=checkbox].etched-glass-checkbox.dark[data-state=checked]:after{border-color:rgba(255,255,255,.85)!important;box-shadow:0 0 3px rgba(0,0,0,.3)!important}.etched-glass-datepicker{position:relative;background:var(--etched-background);border:none;border-radius:20px;padding:8px 16px;height:40px;font-size:14px;font-weight:400;color:inherit;outline:none;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-sizing:border-box;box-shadow:var(--etched-inset-shadow),var(--etched-highlight),var(--etched-border)}.etched-glass-datepicker.dark{background:var(--etched-background-dark);box-shadow:var(--etched-inset-shadow-dark),var(--etched-highlight-dark),var(--etched-border-dark)}.glass-container .etched-glass-button,.glass-container .etched-glass-checkbox,.glass-container .etched-glass-datepicker,.glass-container .etched-glass-input,.glass-container .etched-glass-select,.glass-container .etched-glass-textarea{border:none!important;box-shadow:var(--etched-inset-shadow),var(--etched-highlight),var(--etched-border)!important}.glass-container .etched-glass-button.dark,.glass-container .etched-glass-checkbox.dark,.glass-container .etched-glass-datepicker.dark,.glass-container .etched-glass-input.dark,.glass-container .etched-glass-select.dark,.glass-container .etched-glass-textarea.dark{box-shadow:var(--etched-inset-shadow-dark),var(--etched-highlight-dark),var(--etched-border-dark)!important}@media (max-width:768px){.etched-glass-button,.etched-glass-input,.etched-glass-select,.etched-glass-textarea{padding:14px 16px;font-size:16px}.etched-glass-datepicker{padding:10px 16px;height:44px;font-size:16px}.etched-glass-checkbox,.etched-glass-checkbox.peer,[data-state].etched-glass-checkbox,button.etched-glass-checkbox,button.etched-glass-checkbox.peer,button[role=checkbox].etched-glass-checkbox{width:22px!important;min-width:22px!important;max-width:22px!important;height:22px!important;min-height:22px!important;max-height:22px!important}.etched-glass-checkbox.peer:checked:after,.etched-glass-checkbox:checked:after,.etched-glass-checkbox[data-state=checked]:after,button.etched-glass-checkbox.peer[data-state=checked]:after,button.etched-glass-checkbox[data-state=checked]:after,button[role=checkbox].etched-glass-checkbox[data-state=checked]:after{left:6px!important;top:3px!important;width:6px!important;height:10px!important;border-width:0 2.5px 2.5px 0!important}}@media (prefers-contrast:high){.etched-glass-button,.etched-glass-checkbox,.etched-glass-datepicker,.etched-glass-input,.etched-glass-select,.etched-glass-textarea{box-shadow:inset 0 2px 4px rgba(0,0,0,.3),inset 0 1px 2px rgba(0,0,0,.2),inset 0 -1px 0 rgba(255,255,255,.2),inset 0 0 0 1px rgba(255,255,255,.1)}}@media (prefers-reduced-motion:reduce){.etched-glass-button,.etched-glass-checkbox,.etched-glass-datepicker,.etched-glass-input,.etched-glass-select,.etched-glass-textarea{transition:none}}.simple-embossed{box-shadow:0 2px 4px rgba(0,0,0,.1),inset 0 1px 0 rgba(255,255,255,.2);transform:translateY(0);transition:all .1s ease-out}.simple-beveled{box-shadow:inset 0 2px 4px rgba(0,0,0,.2),inset 0 1px 2px rgba(0,0,0,.1);transform:translateY(1px);transition:all .1s ease-out}.simple-embossed:active{box-shadow:inset 0 2px 4px rgba(0,0,0,.15),inset 0 1px 2px rgba(0,0,0,.08);transform:translateY(1px)}:root{--sat:env(safe-area-inset-top,0px);--sar:env(safe-area-inset-right,0px);--sab:env(safe-area-inset-bottom,0px);--sal:env(safe-area-inset-left,0px);--vh:1vh;--vw:1vw;--min-touch-target:44px;--touch-target-sm:44px;--touch-target-md:48px;--touch-target-lg:56px;--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--mobile-radius-sm:0.7rem;--mobile-radius-md:0.85rem;--mobile-radius-lg:1rem;--mobile-radius-xl:1.2rem;--mobile-radius-2xl:1.4rem;--mobile-radius-3xl:1.6rem;--mobile-radius-hero:1.9rem;--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--header-height:64px;--header-height-mobile:56px;--header-height-notch:88px;--nav-height:56px;--nav-height-mobile:64px;--nav-height-home-indicator:80px}@media (max-width:639px){:root{--spacing-xs:0.125rem;--spacing-sm:0.375rem;--spacing-md:0.75rem;--spacing-lg:1.25rem;--spacing-xl:1.75rem;--text-xs:0.75rem;--text-sm:0.813rem;--text-base:0.938rem;--text-lg:1.063rem;--text-xl:1.188rem;--text-2xl:1.375rem;--text-3xl:1.625rem;--mobile-radius-sm:0.8rem;--mobile-radius-md:0.9rem;--mobile-radius-lg:1.1rem;--mobile-radius-xl:1.3rem;--mobile-radius-2xl:1.5rem;--mobile-radius-3xl:1.75rem;--mobile-radius-hero:2.2rem}}.h-screen-safe{height:100vh;height:calc(var(--vh, 1vh) * 100)}.min-h-screen-safe{min-height:100vh;min-height:calc(var(--vh, 1vh) * 100)}.max-h-screen-safe{max-height:100vh;max-height:calc(var(--vh, 1vh) * 100)}.p-safe{padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left))}.pt-safe{padding-top:max(1rem,env(safe-area-inset-top))}.pr-safe{padding-right:max(1rem,env(safe-area-inset-right))}.pb-safe{padding-bottom:max(1rem,env(safe-area-inset-bottom))}.pl-safe{padding-left:max(1rem,env(safe-area-inset-left))}@supports (-webkit-touch-callout:none){.no-select{-webkit-touch-callout:none;-webkit-user-select:none}.ios-keyboard-fix{position:fixed;width:100%;height:100%;overflow:auto;-webkit-overflow-scrolling:touch}:root{--scroll-padding:env(safe-area-inset-top)}}@supports not (-webkit-touch-callout:none){.android-keyboard-fix{min-height:100vh;position:relative}}@media (min-resolution:192dpi){:root{--border-width:0.5px}}.touch-target{min-height:var(--min-touch-target);min-width:var(--min-touch-target)}.touch-sm{min-height:44px;min-width:44px}.touch-md{min-height:48px;min-width:48px}.touch-lg{min-height:56px;min-width:56px}@media (min-width:640px){.mobile-only{display:none}}.tablet-only{display:none}@media (min-width:640px){.tablet-only{display:block}}@media (min-width:1024px){.tablet-only{display:none}}.desktop-only{display:none}@media (min-width:1024px){.desktop-only{display:block}}.gpu-accelerated{transform:translateZ(0);will-change:transform;backface-visibility:hidden}.reduce-motion *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.low-res-images img{filter:blur(.5px);image-rendering:-webkit-optimize-contrast;image-rendering:optimize-contrast}.device-mobile{--device-scale:0.9}.device-tablet{--device-scale:0.95}.device-desktop{--device-scale:1}.os-ios{--scroll-behavior:smooth}.os-android{--scroll-behavior:auto}.has-notch{--header-offset:env(safe-area-inset-top)}.has-home-indicator{--nav-offset:env(safe-area-inset-bottom)}.is-standalone{--pwa-mode:1}.text-responsive-xs{font-size:var(--text-xs)}.text-responsive-sm{font-size:var(--text-sm)}.text-responsive-base{font-size:var(--text-base)}.text-responsive-lg{font-size:var(--text-lg)}.text-responsive-xl{font-size:var(--text-xl)}.text-responsive-2xl{font-size:var(--text-2xl)}.text-responsive-3xl{font-size:var(--text-3xl)}.touch-smooth{-webkit-overflow-scrolling:touch;scroll-behavior:smooth;overscroll-behavior:contain}.touch-manipulation{touch-action:manipulation;-webkit-tap-highlight-color:transparent}@media (max-width:639px){.glass-panel{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}}@media (orientation:landscape){.safe-sides{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.device-mobile.landscape-compact{--header-height:48px;--nav-height:48px}}@media (prefers-reduced-data:reduce){.data-saver-hide{display:none}.data-saver-low-quality{filter:blur(.5px)}}.battery-low{animation-play-state:paused;transition:none}.breakpoint-indicator:before{content:"xs";position:fixed;bottom:10px;right:10px;background:rgba(0,0,0,.8);color:white;padding:4px 8px;border-radius:4px;font-size:12px;z-index:9999}@media (min-width:640px){.breakpoint-indicator:before{content:"sm"}}@media (min-width:768px){.breakpoint-indicator:before{content:"md"}}@media (min-width:1024px){.breakpoint-indicator:before{content:"lg"}}@media (min-width:1280px){.breakpoint-indicator:before{content:"xl"}}@media (min-width:1536px){.breakpoint-indicator:before{content:"2xl"}}@media (max-width:639px){.rounded-lg{border-radius:var(--mobile-radius-lg)!important}.rounded-xl{border-radius:var(--mobile-radius-xl)!important}.rounded-2xl{border-radius:var(--mobile-radius-2xl)!important}.rounded-\[1\.5rem\]{border-radius:var(--mobile-radius-xl)!important}.glass-container,.rounded-\[3rem\]{border-radius:var(--mobile-radius-hero)!important}.teach-card{border-radius:var(--mobile-radius-lg)!important}.teach-modal{border-radius:var(--mobile-radius-xl)!important}.teach-button,.teach-input{border-radius:var(--mobile-radius-sm)!important}}:root{--flow-color-1:#10b981;--flow-color-2:#3b82f6;--flow-color-3:#6366f1;--flow-color-4:#3b82f6;--primary:#10b981;--primary-hover:#059669;--secondary:99,102,241;--secondary-foreground:255,255,255;--secondary-hover:79,82,221;--button-primary:#10b981;--button-secondary:#3b82f6;--button-accent:#6366f1;--button-warning:#f59e0b;--text:#1f2937;--text-muted:#6b7280;--background:#f9fafb;--surface:#ffffff;--surface-hover:#f3f4f6;--card:#ffffff;--card-foreground:#1f2937;--border:#e5e7eb;--class-cell-background:#f9fafb;--body-text:#1f2937;--body-text-muted:#6b7280;--body-text-rgb:31,41,55;--class-text-color:#6b7280;--class-text-muted-color:#9ca3af}[data-theme=ames-classic]{--flow-color-1:#f97316;--flow-color-2:#ec4899;--flow-color-3:#a855f7;--flow-color-4:#9333ea;--primary:#ec4899;--primary-hover:#db2777;--secondary:168,85,247;--secondary-foreground:255,255,255;--secondary-hover:147,51,234;--button-primary:#ec4899;--button-secondary:#a855f7;--button-accent:#3b82f6;--button-warning:#ef4444;--text:#be185d;--text-muted:#db2777;--background:#fcf9fe;--surface:#f9fafb;--surface-hover:#f3f4f6;--card:#ffffff;--card-foreground:#1f2937;--border:#d1d5db;--class-cell-background:#f9fafb;--body-text:#1f2937;--body-text-muted:#6b7280;--body-text-rgb:31,41,55;--class-text-color:#6b7280;--class-text-muted-color:#9ca3af}[data-theme=forest-calm]{--flow-color-1:#166534;--flow-color-2:#16a34a;--flow-color-3:#22c55e;--flow-color-4:#4ade80;--primary:#16a34a;--primary-hover:#166534;--button-primary:#16a34a;--button-secondary:#22c55e;--button-accent:#4ade80;--button-warning:#ef4444;--text:#166534;--text-muted:#15803d;--background:#f3faf5;--surface:#dcfce7;--surface-hover:#d9e2ec;--card:#ffffff;--card-foreground:#1f2937;--border:#d1d5db;--class-cell-background:#bbf7d0;--body-text:#166534;--body-text-muted:#15803d;--body-text-rgb:22,101,52;--class-text-color:#166534;--class-text-muted-color:#15803d}[data-theme=northern-lights]{--flow-color-1:#0ea5e9;--flow-color-2:#10b981;--flow-color-3:#6366f1;--flow-color-4:#3b82f6;--primary:#0ea5e9;--primary-hover:#0284c7;--button-primary:#0ea5e9;--button-secondary:#10b981;--button-accent:#6366f1;--button-warning:#ef4444;--text:#0c4a6e;--text-muted:#0369a1;--background:#f0f9ff;--surface:#e0f2fe;--surface-hover:#bae6fd;--card:#ffffff;--card-foreground:#1f2937;--border:#d1d5db;--class-cell-background:#e0f2fe;--body-text:#0c4a6e;--body-text-muted:#0369a1;--body-text-rgb:12,74,110;--class-text-color:#0c4a6e;--class-text-muted-color:#0369a1}