html,body,#root{min-height:100%}html{touch-action:manipulation}@media(min-width:1024px){html{font-size:70%}}body{margin:0}.auth-safe-screen{min-height:100vh;min-height:100dvh}.auth-safe-panel{padding-top:max(1rem,env(safe-area-inset-top));padding-right:max(1rem,env(safe-area-inset-right));padding-bottom:max(1rem,env(safe-area-inset-bottom));padding-left:max(1rem,env(safe-area-inset-left))}:root,[data-theme=blue]{--theme-50: #eef2ff;--theme-100: #e0e7ff;--theme-200: #c7d2fe;--theme-300: #a5b4fc;--theme-400: #818cf8;--theme-500: #6366f1;--theme-600: #4f46e5;--theme-700: #4338ca}[data-theme=green]{--theme-50: #eef9e8;--theme-100: #dcf2d2;--theme-200: #b9e5a6;--theme-300: #8fd772;--theme-400: #5cc63a;--theme-500: #339d12;--theme-600: #1b8d00;--theme-700: #157000}[data-theme=yellow]{--theme-50: #fffbeb;--theme-100: #fef3c7;--theme-200: #fde68a;--theme-300: #fcd34d;--theme-400: #fbbf24;--theme-500: #f59e0b;--theme-600: #d97706;--theme-700: #b45309}[data-theme=brown]{--theme-50: #faf6f2;--theme-100: #f1e6da;--theme-200: #e2cdb7;--theme-300: #cfa985;--theme-400: #b9845a;--theme-500: #9a6948;--theme-600: #7a5138;--theme-700: #5e3f2d}[data-theme=dark]{--theme-50: #f1f5f9;--theme-100: #e2e8f0;--theme-200: #cbd5e1;--theme-300: #94a3b8;--theme-400: #64748b;--theme-500: #475569;--theme-600: #334155;--theme-700: #1e293b}:root,[data-hover-theme=blue]{--hover-50: #eef2ff;--hover-200: #c7d2fe;--hover-300: #a5b4fc;--hover-500: #6366f1;--hover-800: #3730a3;--hover-100: #e0e7ff;--hover-400: #818cf8;--hover-600: #4f46e5;--hover-700: #4338ca}[data-hover-theme=green]{--hover-50: #eef9e8;--hover-200: #b9e5a6;--hover-300: #8fd772;--hover-500: #339d12;--hover-800: #0d4f00;--hover-100: #dcf2d2;--hover-400: #5cc63a;--hover-600: #1b8d00;--hover-700: #157000}[data-hover-theme=yellow]{--hover-50: #fefce8;--hover-200: #fde68a;--hover-300: #fcd34d;--hover-500: #f59e0b;--hover-800: #854d0e;--hover-100: #fef9c3;--hover-400: #eab308;--hover-600: #ca8a04;--hover-700: #a16207}[data-hover-theme=brown]{--hover-50: #faf6f2;--hover-200: #e2cdb7;--hover-300: #cfa985;--hover-500: #9a6948;--hover-800: #4a3020;--hover-100: #f1e6da;--hover-400: #b9845a;--hover-600: #7a5138;--hover-700: #5e3f2d}[data-hover-theme=dark]{--hover-50: #f1f5f9;--hover-200: #cbd5e1;--hover-300: #94a3b8;--hover-500: #475569;--hover-800: #0f172a;--hover-100: #e2e8f0;--hover-400: #64748b;--hover-600: #334155;--hover-700: #1e293b}:root,[data-theme=blue]{--nav-bg: #0f172a;--nav-bg-soft: #1f2937;--nav-border: #1f2937;--nav-text: #e5e7eb;--nav-muted: #94a3b8}[data-theme=green]{--nav-bg: #0f3d00;--nav-bg-soft: #1b5c00;--nav-border: #2b7a0b;--nav-text: #eaf8df;--nav-muted: #b9e5a6}[data-theme=yellow]{--nav-bg: #422006;--nav-bg-soft: #78350f;--nav-border: #92400e;--nav-text: #fef3c7;--nav-muted: #fcd34d}[data-theme=brown]{--nav-bg: #3f2a1d;--nav-bg-soft: #5b3a24;--nav-border: #7a5138;--nav-text: #f5e7d8;--nav-muted: #d2b48c}[data-theme=dark]{--nav-bg: #0f172a;--nav-bg-soft: #1e293b;--nav-border: #334155;--nav-text: #e2e8f0;--nav-muted: #94a3b8}.theme-nav-bg{background-color:var(--nav-bg)!important}.theme-nav-soft{background-color:var(--nav-bg-soft)!important}.theme-nav-border{border-color:var(--nav-border)!important}.theme-nav-text{color:var(--nav-text)!important}.theme-nav-muted{color:var(--nav-muted)!important}.bg-indigo-50,.bg-blue-50{background-color:var(--hover-50)!important}.bg-indigo-100,.bg-blue-100{background-color:var(--hover-100)!important}.bg-indigo-500,.bg-blue-500,.bg-indigo-600,.bg-blue-600{background-color:var(--hover-600)!important}.bg-indigo-700,.bg-blue-700{background-color:var(--hover-700)!important}.text-indigo-400,.text-blue-400{color:var(--hover-400)!important}.text-indigo-500,.text-blue-500,.text-indigo-600,.text-blue-600{color:var(--hover-600)!important}.text-indigo-700,.text-blue-700{color:var(--hover-700)!important}.border-indigo-100,.border-blue-100,.border-indigo-200,.border-blue-200{border-color:var(--hover-100)!important}.border-indigo-300,.border-blue-300{border-color:var(--hover-400)!important}.hover\:bg-indigo-50:hover,.hover\:bg-blue-50:hover{background-color:var(--hover-50)!important}.hover\:bg-indigo-100:hover,.hover\:bg-blue-100:hover{background-color:var(--hover-100)!important}.hover\:bg-indigo-700:hover,.hover\:bg-blue-700:hover{background-color:var(--hover-700)!important}.hover\:bg-indigo-600:hover,.hover\:bg-blue-600:hover{background-color:var(--hover-600)!important}.hover\:text-indigo-600:hover,.hover\:text-blue-600:hover{color:var(--hover-600)!important}.hover\:border-indigo-400:hover,.hover\:border-blue-400:hover{border-color:var(--hover-400)!important}.group:hover .group-hover\:text-indigo-700,.group:hover .group-hover\:text-blue-700{color:var(--hover-700)!important}.group:hover .group-hover\:text-indigo-100,.group:hover .group-hover\:text-blue-100{color:var(--hover-100)!important}.theme-hover-bg:hover{background-color:var(--hover-100)!important}.theme-hover-text:hover{color:var(--hover-700)!important}.theme-hover-icon:hover .theme-hover-icon-target{color:inherit!important}.theme-active-bg{background-color:var(--hover-600)!important}.theme-active-shadow{--tw-shadow-color: color-mix(in srgb, var(--hover-600) 30%, transparent) !important}.theme-accent-soft-bg{background-color:var(--hover-100)!important}.theme-accent-text{color:var(--hover-600)!important}.theme-accent-border{border-color:var(--hover-100)!important}.from-indigo-50,.from-blue-50{--tw-gradient-from: var(--hover-50) var(--tw-gradient-from-position) !important;--tw-gradient-to: color-mix(in srgb, var(--hover-50) 0%, transparent) var(--tw-gradient-to-position) !important;--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) !important}.from-indigo-100,.from-blue-100{--tw-gradient-from: var(--hover-100) var(--tw-gradient-from-position) !important;--tw-gradient-to: color-mix(in srgb, var(--hover-100) 0%, transparent) var(--tw-gradient-to-position) !important;--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) !important}.from-indigo-500,.from-blue-500,.from-indigo-600,.from-blue-600{--tw-gradient-from: var(--hover-600) var(--tw-gradient-from-position) !important;--tw-gradient-to: color-mix(in srgb, var(--hover-600) 0%, transparent) var(--tw-gradient-to-position) !important;--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) !important}.from-indigo-700,.from-blue-700{--tw-gradient-from: var(--hover-700) var(--tw-gradient-from-position) !important;--tw-gradient-to: color-mix(in srgb, var(--hover-700) 0%, transparent) var(--tw-gradient-to-position) !important;--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) !important}.to-indigo-50,.to-blue-50{--tw-gradient-to: var(--hover-50) var(--tw-gradient-to-position) !important}.to-indigo-100,.to-blue-100{--tw-gradient-to: var(--hover-100) var(--tw-gradient-to-position) !important}.to-indigo-500,.to-blue-500,.to-indigo-600,.to-blue-600{--tw-gradient-to: var(--hover-600) var(--tw-gradient-to-position) !important}.to-indigo-700,.to-blue-700{--tw-gradient-to: var(--hover-700) var(--tw-gradient-to-position) !important}.hover\:from-indigo-600:hover,.hover\:from-blue-600:hover{--tw-gradient-from: var(--hover-600) var(--tw-gradient-from-position) !important;--tw-gradient-to: color-mix(in srgb, var(--hover-600) 0%, transparent) var(--tw-gradient-to-position) !important;--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) !important}.hover\:from-indigo-700:hover,.hover\:from-blue-700:hover{--tw-gradient-from: var(--hover-700) var(--tw-gradient-from-position) !important;--tw-gradient-to: color-mix(in srgb, var(--hover-700) 0%, transparent) var(--tw-gradient-to-position) !important;--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) !important}.hover\:to-indigo-700:hover,.hover\:to-blue-700:hover{--tw-gradient-to: var(--hover-700) var(--tw-gradient-to-position) !important}.hover\:to-indigo-800:hover,.hover\:to-blue-800:hover{--tw-gradient-to: color-mix(in srgb, var(--hover-700) 85%, black) var(--tw-gradient-to-position) !important}.theme-select option{color:#111827;background-color:#fff}.focus\:ring-indigo-500:focus,.focus\:ring-blue-500:focus{--tw-ring-color: var(--hover-600) !important}.focus\:border-indigo-500:focus,.focus\:border-blue-500:focus{border-color:var(--hover-600)!important}.shadow-indigo-600\/20{--tw-shadow-color: color-mix(in srgb, var(--hover-600) 20%, transparent) !important}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes fade-in-up{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes scale-up{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.animate-fade-in{animation:fade-in .28s ease-out both}.animate-fade-in-up{animation:fade-in-up .32s ease-out both}.animate-scale-up{animation:scale-up .24s ease-out both}.animate-shake{animation:shake .45s ease-in-out}.custom-scrollbar{scrollbar-width:thin;scrollbar-color:#c7c7c7 #f1f1f1;scrollbar-gutter:stable}.custom-scrollbar::-webkit-scrollbar{width:8px;height:8px}.custom-scrollbar::-webkit-scrollbar-track{background:#f1f1f1}.custom-scrollbar::-webkit-scrollbar-thumb{background:#c7c7c7;border-radius:9999px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.sidebar-scrollbar{scrollbar-width:auto;scrollbar-color:#64748b #0f172a;scrollbar-gutter:stable}.sidebar-scrollbar::-webkit-scrollbar{width:12px}.sidebar-scrollbar::-webkit-scrollbar-track{background:#0f172a;border-left:1px solid #1f2937}.sidebar-scrollbar::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#475569,#334155);border-radius:9999px;border:2px solid #0f172a}.sidebar-scrollbar::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#64748b,#475569)}@media(max-width:400px){.calendar-grid-cell{min-height:32px!important;padding:2px!important;border-radius:6px!important}.calendar-day-header{font-size:9px!important}.calendar-day-number{font-size:10px!important}}.calendar-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch}@keyframes dot-pulse{0%,to{opacity:1}50%{opacity:.5}}.calendar-dot-today{animation:dot-pulse 2s ease-in-out infinite}.payment-flat-number-input::-webkit-outer-spin-button,.payment-flat-number-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.payment-flat-number-input[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}input[type=date],input[type=time],input[type=datetime-local],input[type=month],input[type=week]{box-sizing:border-box;min-width:0;max-width:100%;overflow:hidden}input[type=date]::-webkit-date-and-time-value,input[type=time]::-webkit-date-and-time-value,input[type=datetime-local]::-webkit-date-and-time-value,input[type=month]::-webkit-date-and-time-value,input[type=week]::-webkit-date-and-time-value{min-width:0;max-width:100%;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}@supports (-webkit-touch-callout: none){input[type=date],input[type=time],input[type=datetime-local],input[type=month],input[type=week]{-webkit-appearance:none;-moz-appearance:none;appearance:none}input[type=date]::-webkit-calendar-picker-indicator,input[type=time]::-webkit-calendar-picker-indicator,input[type=datetime-local]::-webkit-calendar-picker-indicator,input[type=month]::-webkit-calendar-picker-indicator,input[type=week]::-webkit-calendar-picker-indicator{flex-shrink:0;margin-inline-start:2px;padding:0}}@keyframes aurora-float{0%,to{transform:translate(0) scale(1)}25%{transform:translate(10px,-15px) scale(1.05)}50%{transform:translate(-5px,-25px) scale(.95)}75%{transform:translate(-10px,-10px) scale(1.02)}}@keyframes aurora-shimmer{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes aurora-pulse-glow{0%,to{opacity:.4;filter:blur(60px);transform:scale(1)}50%{opacity:.7;filter:blur(50px);transform:scale(1.15)}}@keyframes aurora-drift{0%{transform:translate(-10%) translateY(0) rotate(0)}33%{transform:translate(5%) translateY(-8%) rotate(120deg)}66%{transform:translate(10%) translateY(5%) rotate(240deg)}to{transform:translate(-10%) translateY(0) rotate(360deg)}}@keyframes aurora-fade-in{0%{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes glass-shimmer{0%{background-position:-200% center}to{background-position:200% center}}.animate-aurora-float{animation:aurora-float 8s ease-in-out infinite}.animate-aurora-shimmer{background-size:200% 200%;animation:aurora-shimmer 6s ease-in-out infinite}.animate-aurora-pulse-glow{animation:aurora-pulse-glow 4s ease-in-out infinite}.animate-aurora-drift{animation:aurora-drift 20s linear infinite}.animate-aurora-fade-in{animation:aurora-fade-in .7s ease-out both}.animate-glass-shimmer{background-size:200% 100%;animation:glass-shimmer 3s ease-in-out infinite}.aurora-glass{background:#fff9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.5);box-shadow:0 8px 32px #0000000f}.aurora-glass-strong{background:#ffffffbf;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(255,255,255,.6);box-shadow:0 8px 32px #00000014}.aurora-text{background:linear-gradient(135deg,var(--hover-600),var(--hover-400),#c084fc,var(--hover-600));background-size:300% 300%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:aurora-shimmer 4s ease-in-out infinite}.aurora-glow-ring{box-shadow:0 0 20px color-mix(in srgb,var(--hover-400) 30%,transparent),0 0 60px color-mix(in srgb,var(--hover-600) 20%,transparent)}#patient-qr-scanner video{object-fit:cover!important;width:100%!important;height:100%!important;position:absolute!important;top:0!important;left:0!important}#patient-qr-scanner{width:100%!important;height:100%!important;position:relative!important;overflow:hidden!important}#patient-qr-scanner .qr-code-overlay{position:absolute!important;top:0!important;right:0!important;bottom:0!important;left:0!important}#patient-qr-scanner .qr-code-bounding-box{position:absolute!important;z-index:20!important}@media(max-width:640px){#patient-qr-scanner{max-height:60vh!important}}@media(min-width:641px){#patient-qr-scanner video{object-fit:contain!important}}
