@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Poppins:wght@400;500;600;700&family=Noto+Sans+SC:wght@400;500;600&display=swap";@import"https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700&family=Inter:wght@400;500&display=swap";:root{--color-primary-950: #3A4F8F;--color-primary-900: #4A63B3;--color-primary-600: #5E68AD;--color-primary-300: #8EB0DC;--color-primary-100: #C9D8EA;--color-neutral-900: #171717;--color-neutral-800: #262626;--color-neutral-700: #4B5563;--color-neutral-600: #525252;--color-neutral-500: #9CA3AF;--color-neutral-400: #A3A3A3;--color-neutral-300: #D1D5DB;--color-neutral-200: #E5E7EB;--color-neutral-100: #F3F4F6;--color-neutral-50: #F9FAFB;--color-white: #FFFFFF;--color-success: #059669;--color-success-hover: #047857;--color-success-light: #D1FAE5;--color-success-50: #ECFDF5;--color-success-100: #D1FAE5;--color-success-200: #A7F3D0;--color-success-300: #6EE7B7;--color-success-400: #34D399;--color-success-500: #10B981;--color-success-600: #059669;--color-success-700: #047857;--color-success-800: #065F46;--color-warning: #D97706;--color-warning-hover: #B45309;--color-warning-light: #FEF3C7;--color-warning-50: #FFFBEB;--color-warning-100: #FEF3C7;--color-warning-200: #FDE68A;--color-warning-300: #FCD34D;--color-warning-400: #FBBF24;--color-warning-500: #F59E0B;--color-warning-600: #D97706;--color-warning-700: #B45309;--color-warning-800: #92400E;--color-warning-900: #78350F;--color-error: #DC2626;--color-error-hover: #B91C1C;--color-error-light: #FEE2E2;--color-error-50: #FEF2F2;--color-error-100: #FEE2E2;--color-error-200: #FECACA;--color-error-300: #FCA5A5;--color-error-400: #F87171;--color-error-500: #EF4444;--color-error-600: #DC2626;--color-error-700: #B91C1C;--color-error-800: #991B1B;--color-info: #8EB0DC;--color-info-hover: #6B9ACF;--color-info-light: #EFF6FF;--color-info-50: #EFF6FF;--color-info-100: #DBEAFE;--color-info-200: #BFDBFE;--color-info-700: #1D4ED8;--font-heading: "Poppins", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-body: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-chinese: "Noto Sans SC", system-ui, sans-serif;--font-mono: "SF Mono", "Monaco", "Inconsolata", "Consolas", monospace;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-size-h1: 2rem;--font-size-h2: 1.5rem;--font-size-h3: 1.25rem;--font-size-h4: 1.125rem;--font-size-body: .875rem;--font-size-caption: .75rem;--font-size-tiny: .625rem;--line-height-h1: 2.5rem;--line-height-h2: 2rem;--line-height-h3: 1.75rem;--line-height-h4: 1.5rem;--line-height-body: 1.375rem;--line-height-caption: 1.125rem;--spacing-0: 0;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--radius-none: 0;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-2xl: 16px;--radius-full: 9999px;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .05);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .1), 0 1px 2px rgba(0, 0, 0, .06);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--transition-fast: .15s ease;--transition-normal: .2s ease;--transition-slow: .3s ease;--z-base: 0;--z-dropdown: 1000;--z-sticky: 200;--z-fixed: 300;--z-modal-backdrop: 900;--z-modal: 1000;--z-popover: 1050;--z-toast: 1100;--z-tooltip: 1200;--btn-height-sm: 32px;--btn-height-md: 40px;--btn-height-lg: 48px;--input-height: 40px;--input-border-width: 1px;--card-padding: var(--spacing-lg);--card-radius: var(--radius-xl);--modal-backdrop-color: rgba(0, 0, 0, .5)}:focus-visible{outline:2px solid var(--color-primary-900);outline-offset:2px}:focus:not(:focus-visible){outline:none}h1,.h1{font-family:var(--font-heading);font-size:var(--font-size-h1);font-weight:var(--font-weight-semibold);line-height:var(--line-height-h1);color:var(--color-neutral-900);margin:0 0 var(--spacing-md) 0}h2,.h2{font-family:var(--font-heading);font-size:var(--font-size-h2);font-weight:var(--font-weight-semibold);line-height:var(--line-height-h2);color:var(--color-neutral-900);margin:0 0 var(--spacing-md) 0}h3,.h3{font-family:var(--font-heading);font-size:var(--font-size-h3);font-weight:var(--font-weight-semibold);line-height:var(--line-height-h3);color:var(--color-neutral-900);margin:0 0 var(--spacing-sm) 0}h4,.h4{font-family:var(--font-heading);font-size:var(--font-size-h4);font-weight:var(--font-weight-semibold);line-height:var(--line-height-h4);color:var(--color-neutral-900);margin:0 0 var(--spacing-sm) 0}p,.body-text{font-family:var(--font-body);font-size:var(--font-size-body);line-height:var(--line-height-body);color:var(--color-neutral-900);margin:0 0 var(--spacing-md) 0}p:last-child{margin-bottom:0}.text-secondary{font-family:var(--font-body);font-size:var(--font-size-body);line-height:var(--line-height-body);color:var(--color-neutral-700)}.caption,small,.text-sm{font-family:var(--font-body);font-size:var(--font-size-caption);line-height:var(--line-height-caption);color:var(--color-neutral-700)}.label{display:block;font-family:var(--font-body);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700);margin-bottom:var(--spacing-xs)}.label-uppercase{display:block;font-family:var(--font-body);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--color-neutral-500);margin-bottom:var(--spacing-xs)}.font-regular{font-weight:var(--font-weight-regular)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.text-primary{color:var(--color-primary-900)}.text-muted{color:var(--color-neutral-500)}.text-left{text-align:left}.text-uppercase{text-transform:uppercase}.text-lowercase{text-transform:lowercase}.text-capitalize{text-transform:capitalize}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-wrap{white-space:normal}.text-nowrap{white-space:nowrap}a,.link{color:var(--color-primary-900);text-decoration:none;transition:color var(--transition-fast)}a:hover,.link:hover{color:var(--color-primary-600);text-decoration:underline}.link-subtle{color:var(--color-neutral-700)}.link-subtle:hover{color:var(--color-primary-900)}code,.code{font-family:var(--font-mono);font-size:.875em;background-color:var(--color-neutral-100);padding:.125em .375em;border-radius:var(--radius-sm);color:var(--color-neutral-900)}pre{font-family:var(--font-mono);font-size:var(--font-size-caption);background-color:var(--color-neutral-100);padding:var(--spacing-md);border-radius:var(--radius-lg);overflow-x:auto}[lang=zh],.text-chinese{font-family:var(--font-chinese);font-size:calc(var(--font-size-body) + 1px)}ul,ol{margin:0 0 var(--spacing-md) 0;padding-left:var(--spacing-lg)}li{margin-bottom:var(--spacing-xs);line-height:var(--line-height-body)}.list-unstyled{list-style:none;padding-left:0}.list-unstyled li{margin-bottom:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);height:var(--btn-height-md);padding:0 var(--spacing-lg);border-radius:var(--radius-lg);font-family:var(--font-heading);font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);line-height:1;cursor:pointer;transition:all var(--transition-fast);border:1px solid transparent;text-decoration:none;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none}.btn:focus-visible{outline:2px solid var(--color-primary-900);outline-offset:2px}.btn-primary{background-color:var(--color-primary-900);color:var(--color-white);border-color:var(--color-primary-900)}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-600);border-color:var(--color-primary-600)}.btn-primary:active:not(:disabled){background-color:var(--color-primary-900);transform:translateY(1px)}.btn-primary:disabled{background-color:var(--color-neutral-200);border-color:var(--color-neutral-200);color:var(--color-neutral-500);cursor:not-allowed}.btn-secondary{background-color:var(--color-white);color:var(--color-neutral-700);border-color:var(--color-neutral-200)}.btn-secondary:hover:not(:disabled){background-color:var(--color-neutral-50);border-color:var(--color-neutral-300);color:var(--color-neutral-900)}.btn-secondary:active:not(:disabled){background-color:var(--color-neutral-100);transform:translateY(1px)}.btn-secondary:disabled{background-color:var(--color-neutral-50);color:var(--color-neutral-500);cursor:not-allowed}.btn-danger{background-color:var(--color-error);color:var(--color-white);border-color:var(--color-error)}.btn-danger:hover:not(:disabled){background-color:var(--color-error-hover);border-color:var(--color-error-hover)}.btn-danger:active:not(:disabled){background-color:var(--color-error);transform:translateY(1px)}.btn-danger:disabled{background-color:var(--color-neutral-200);border-color:var(--color-neutral-200);color:var(--color-neutral-500);cursor:not-allowed}.btn-danger-outline{background-color:var(--color-white);color:var(--color-error);border-color:var(--color-error)}.btn-danger-outline:hover:not(:disabled){background-color:var(--color-error-light)}.btn-success{background-color:var(--color-success);color:var(--color-white);border-color:var(--color-success)}.btn-success:hover:not(:disabled){background-color:var(--color-success-hover);border-color:var(--color-success-hover)}.btn-success:active:not(:disabled){background-color:var(--color-success);transform:translateY(1px)}.btn-success:disabled{background-color:var(--color-neutral-200);border-color:var(--color-neutral-200);color:var(--color-neutral-500);cursor:not-allowed}.btn-warning{background-color:var(--color-warning);color:var(--color-white);border-color:var(--color-warning)}.btn-warning:hover:not(:disabled){background-color:var(--color-warning-hover);border-color:var(--color-warning-hover)}.btn-warning:disabled{background-color:var(--color-neutral-200);border-color:var(--color-neutral-200);color:var(--color-neutral-500);cursor:not-allowed}.btn-ghost{background-color:transparent;color:var(--color-neutral-700);border-color:transparent}.btn-ghost:hover:not(:disabled){background-color:var(--color-neutral-100);color:var(--color-neutral-900)}.btn-ghost:active:not(:disabled){background-color:var(--color-neutral-200)}.btn-ghost:disabled{color:var(--color-neutral-500);cursor:not-allowed}.btn-link{background-color:transparent;color:var(--color-primary-900);border-color:transparent;padding:0;height:auto;font-weight:var(--font-weight-medium)}.btn-link:hover:not(:disabled){color:var(--color-primary-600);text-decoration:underline}.btn-link:disabled{color:var(--color-neutral-500);cursor:not-allowed}.btn-sm{height:var(--btn-height-sm);padding:0 var(--spacing-md);font-size:var(--font-size-caption);border-radius:var(--radius-md)}.btn-lg{height:var(--btn-height-lg);padding:0 var(--spacing-xl);font-size:1rem;border-radius:var(--radius-lg)}.btn-icon{width:var(--btn-height-md);padding:0}.btn-icon.btn-sm{width:var(--btn-height-sm)}.btn-icon.btn-lg{width:var(--btn-height-lg)}.btn-block{width:100%}.btn-loading{position:relative;color:transparent!important;pointer-events:none}.btn-loading:after{content:"";position:absolute;width:16px;height:16px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:btn-spin .6s linear infinite}.btn-primary.btn-loading:after,.btn-danger.btn-loading:after,.btn-success.btn-loading:after,.btn-warning.btn-loading:after{border-color:var(--color-white);border-right-color:transparent}@keyframes btn-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.btn-group{display:inline-flex}.btn-group .btn{border-radius:0}.btn-group .btn:first-child{border-radius:var(--radius-lg) 0 0 var(--radius-lg)}.btn-group .btn:last-child{border-radius:0 var(--radius-lg) var(--radius-lg) 0}.btn-group .btn:not(:last-child){border-right-width:0}.btn-group .btn:hover,.btn-group .btn:focus{z-index:1}.modal-actions .btn-secondary,.modal-footer .btn-secondary{background:transparent;color:var(--color-neutral-700);border:none;padding:var(--spacing-sm) var(--spacing-md)}.modal-actions .btn-secondary:hover,.modal-footer .btn-secondary:hover{color:var(--color-error);background:transparent}.modal-actions .btn-primary,.modal-footer .btn-primary{background:transparent;color:var(--color-neutral-700);border:none;padding:var(--spacing-sm) var(--spacing-md)}.modal-actions .btn-primary:hover:not(:disabled),.modal-footer .btn-primary:hover:not(:disabled){color:var(--color-success);background:transparent}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}*{border-color:hsl(var(--border))}body{background-color:hsl(var(--background));color:hsl(var(--foreground))}.container{width:100%}@media(min-width:640px){.container{max-width:640px}}@media(min-width:768px){.container{max-width:768px}}@media(min-width:1024px){.container{max-width:1024px}}@media(min-width:1280px){.container{max-width:1280px}}@media(min-width:1536px){.container{max-width:1536px}}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-1{inset:.25rem}.-right-2{right:-.5rem}.-top-2{top:-.5rem}.left-\[calc\(50\%\+40px\)\]{left:calc(50% + 40px)}.top-8{top:2rem}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.col-span-2{grid-column:span 2 / span 2}.-m-2\.5{margin:-.625rem}.m-auto{margin:auto}.mx-auto{margin-left:auto;margin-right:auto}.-mr-4{margin-right:-1rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.ml-2{margin-left:.5rem}.ml-4{margin-left:1rem}.mr-2{margin-right:.5rem}.mt-1{margin-top:.25rem}.mt-12{margin-top:3rem}.mt-16{margin-top:4rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.table-cell{display:table-cell}.table-row{display:table-row}.grid{display:grid}.hidden{display:none}.aspect-\[2\/3\]{aspect-ratio:2/3}.size-6{width:1.5rem;height:1.5rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-px{height:1px}.max-h-\[90vh\]{max-height:90vh}.min-h-screen{min-height:100vh}.w-10{width:2.5rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-\[calc\(100\%-80px\)\]{width:calc(100% - 80px)}.w-auto{width:auto}.w-full{width:100%}.w-max{width:-moz-max-content;width:max-content}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-md{max-width:28rem}.max-w-xl{max-width:36rem}.flex-1{flex:1 1 0%}.border-collapse{border-collapse:collapse}.-rotate-180{--tw-rotate: -180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-0{--tw-scale-x: 0;--tw-scale-y: 0;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.resize{resize:both}.scroll-mt-28{scroll-margin-top:7rem}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-12{gap:3rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-x-12{-moz-column-gap:3rem;column-gap:3rem}.gap-x-6{-moz-column-gap:1.5rem;column-gap:1.5rem}.gap-y-2{row-gap:.5rem}.gap-y-4{row-gap:1rem}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.text-nowrap{text-wrap:nowrap}.text-balance{text-wrap:balance}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-y{border-top-width:1px;border-bottom-width:1px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-\[var\(--color-neutral-100\)\]{border-color:var(--color-neutral-100)}.border-\[var\(--color-neutral-200\)\]{border-color:var(--color-neutral-200)}.border-\[var\(--color-neutral-300\)\]{border-color:var(--color-neutral-300)}.border-input{border-color:hsl(var(--input))}.border-white\/10{border-color:#ffffff1a}.border-white\/20{border-color:#fff3}.border-white\/30{border-color:#ffffff4d}.bg-\[\#4A63B3\]{--tw-bg-opacity: 1;background-color:rgb(74 99 179 / var(--tw-bg-opacity, 1))}.bg-\[var\(--color-neutral-300\)\]{background-color:var(--color-neutral-300)}.bg-\[var\(--color-neutral-50\)\]{background-color:var(--color-neutral-50)}.bg-background{background-color:hsl(var(--background))}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.bg-blue-100{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.bg-destructive{background-color:hsl(var(--destructive))}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.bg-green-50{--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity, 1))}.bg-primary{background-color:hsl(var(--primary))}.bg-purple-50{--tw-bg-opacity: 1;background-color:rgb(250 245 255 / var(--tw-bg-opacity, 1))}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-secondary{background-color:hsl(var(--secondary))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\/10{background-color:#ffffff1a}.bg-white\/60{background-color:#fff9}.bg-white\/70{background-color:#ffffffb3}.bg-yellow-50{--tw-bg-opacity: 1;background-color:rgb(254 252 232 / var(--tw-bg-opacity, 1))}.bg-opacity-50{--tw-bg-opacity: .5}.object-contain{-o-object-fit:contain;object-fit:contain}.p-12{padding:3rem}.p-2{padding:.5rem}.p-2\.5{padding:.625rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-24{padding-top:6rem;padding-bottom:6rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.pt-2{padding-top:.5rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.italic{font-style:italic}.leading-relaxed{line-height:1.625}.tracking-tight{letter-spacing:-.025em}.tracking-widest{letter-spacing:.1em}.text-\[\#8EB0DC\]{--tw-text-opacity: 1;color:rgb(142 176 220 / var(--tw-text-opacity, 1))}.text-\[var\(--color-error\)\]{color:var(--color-error)}.text-\[var\(--color-neutral-400\)\]{color:var(--color-neutral-400)}.text-\[var\(--color-neutral-500\)\]{color:var(--color-neutral-500)}.text-\[var\(--color-neutral-600\)\]{color:var(--color-neutral-600)}.text-\[var\(--color-neutral-700\)\]{color:var(--color-neutral-700)}.text-\[var\(--color-neutral-900\)\]{color:var(--color-neutral-900)}.text-\[var\(--color-primary-900\)\]{color:var(--color-primary-900)}.text-\[var\(--color-success\)\]{color:var(--color-success)}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-blue-700{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.text-destructive-foreground{color:hsl(var(--destructive-foreground))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-green-500{--tw-text-opacity: 1;color:rgb(34 197 94 / var(--tw-text-opacity, 1))}.text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-purple-600{--tw-text-opacity: 1;color:rgb(147 51 234 / var(--tw-text-opacity, 1))}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-white\/70{color:#ffffffb3}.text-white\/80{color:#fffc}.text-white\/90{color:#ffffffe6}.text-yellow-500{--tw-text-opacity: 1;color:rgb(234 179 8 / var(--tw-text-opacity, 1))}.text-yellow-600{--tw-text-opacity: 1;color:rgb(202 138 4 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.opacity-0{opacity:0}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[\#4A63B3\]\/30{--tw-shadow-color: rgb(74 99 179 / .3);--tw-shadow: var(--tw-shadow-colored)}.shadow-zinc-300\/20{--tw-shadow-color: rgb(212 212 216 / .2);--tw-shadow: var(--tw-shadow-colored)}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-1{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-offset-background{--tw-ring-offset-color: hsl(var(--background))}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-xl{--tw-backdrop-blur: blur(24px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}:root{--background: 0 0% 100%;--foreground: 222.2 84% 4.9%;--muted: 210 40% 96.1%;--muted-foreground: 215.4 16.3% 46.9%;--accent: 210 40% 96.1%;--accent-foreground: 222.2 47.4% 11.2%;--destructive: 0 84.2% 60.2%;--destructive-foreground: 210 40% 98%;--border: 214.3 31.8% 91.4%;--input: 214.3 31.8% 91.4%;--ring: 221.2 83.2% 53.3%;--primary: 221.2 83.2% 53.3%;--primary-foreground: 210 40% 98%;--secondary: 210 40% 96.1%;--secondary-foreground: 222.2 47.4% 11.2%;--radius: .5rem;font-family:var(--font-body);line-height:1.5;font-weight:var(--font-weight-regular);color-scheme:light;color:var(--color-neutral-900);background-color:var(--color-neutral-50);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.dark{--background: 222.2 84% 4.9%;--foreground: 210 40% 98%;--muted: 217.2 32.6% 17.5%;--muted-foreground: 215 20.2% 65.1%;--accent: 217.2 32.6% 17.5%;--accent-foreground: 210 40% 98%;--destructive: 0 62.8% 30.6%;--destructive-foreground: 210 40% 98%;--border: 217.2 32.6% 17.5%;--input: 217.2 32.6% 17.5%;--ring: 224.3 76.3% 48%;--primary: 210 40% 98%;--primary-foreground: 222.2 47.4% 11.2%;--secondary: 217.2 32.6% 17.5%;--secondary-foreground: 210 40% 98%}a{font-weight:var(--font-weight-medium);color:var(--color-primary-900);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-600);text-decoration:underline}body{margin:0;min-width:320px;min-height:100vh;background-color:var(--color-neutral-50)}#root{width:100%;min-height:100vh}button{border-radius:var(--radius-lg);border:1px solid transparent;padding:.6em 1.2em;font-size:var(--font-size-body);font-weight:var(--font-weight-medium);font-family:inherit;background-color:var(--color-white);cursor:pointer;transition:all var(--transition-fast)}button:focus-visible{outline:2px solid var(--color-primary-900);outline-offset:2px}button:focus:not(:focus-visible){outline:none}.placeholder\:text-\[var\(--color-neutral-400\)\]::-moz-placeholder{color:var(--color-neutral-400)}.placeholder\:text-\[var\(--color-neutral-400\)\]::placeholder{color:var(--color-neutral-400)}.hover\:border-\[var\(--color-primary-100\)\]:hover{border-color:var(--color-primary-100)}.hover\:border-white\/40:hover{border-color:#fff6}.hover\:bg-\[\#5a73c3\]:hover{--tw-bg-opacity: 1;background-color:rgb(90 115 195 / var(--tw-bg-opacity, 1))}.hover\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\:bg-blue-50:hover{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-700:hover{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.hover\:bg-destructive\/90:hover{background-color:hsl(var(--destructive) / .9)}.hover\:bg-gray-300:hover{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary) / .9)}.hover\:bg-red-50:hover{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.hover\:bg-secondary\/80:hover{background-color:hsl(var(--secondary) / .8)}.hover\:bg-white\/10:hover{background-color:#ffffff1a}.hover\:text-\[var\(--color-primary-900\)\]:hover{color:var(--color-primary-900)}.hover\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}.hover\:text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-90:hover{opacity:.9}.hover\:shadow-lg:hover{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-md:hover{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-xl:hover{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.focus\:border-\[var\(--color-primary-900\)\]:focus{border-color:var(--color-primary-900)}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color: hsl(var(--ring))}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-gray-400:disabled{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity, 1))}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.group[data-state=active] .group-data-\[state\=active\]\:block{display:block}.group[data-state=active] .group-data-\[state\=active\]\:rotate-0{--tw-rotate: 0deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group[data-state=active] .group-data-\[state\=active\]\:rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group[data-state=active] .group-data-\[state\=active\]\:scale-0{--tw-scale-x: 0;--tw-scale-y: 0;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group[data-state=active] .group-data-\[state\=active\]\:scale-100{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group[data-state=active] .group-data-\[state\=active\]\:opacity-0{opacity:0}.group[data-state=active] .group-data-\[state\=active\]\:opacity-100{opacity:1}.dark\:shadow-none:is(.dark *){--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}@media(min-width:640px){.sm\:aspect-video{aspect-ratio:16 / 9}.sm\:h-16{height:4rem}.sm\:w-auto{width:auto}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:justify-center{justify-content:center}.sm\:gap-3{gap:.75rem}.sm\:space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}.sm\:text-4xl{font-size:2.25rem;line-height:2.5rem}.sm\:text-5xl{font-size:3rem;line-height:1}}@media(min-width:768px){.md\:w-fit{width:-moz-fit-content;width:fit-content}.md\:flex-row{flex-direction:row}.md\:flex-nowrap{flex-wrap:nowrap}.md\:pb-32{padding-bottom:8rem}.md\:text-6xl{font-size:3.75rem;line-height:1}}@media(min-width:1024px){.lg\:m-0{margin:0}.lg\:block{display:block}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:h-28{height:7rem}.lg\:w-auto{width:auto}.lg\:w-fit{width:-moz-fit-content;width:fit-content}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:gap-0{gap:0px}.lg\:gap-6{gap:1.5rem}.lg\:space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}.lg\:rounded-\[3rem\]{border-radius:3rem}.lg\:border-transparent{border-color:transparent}.lg\:bg-transparent{background-color:transparent}.lg\:p-0{padding:0}.lg\:p-16{padding:4rem}.lg\:px-12{padding-left:3rem;padding-right:3rem}.lg\:py-24{padding-top:6rem;padding-bottom:6rem}.lg\:py-32{padding-top:8rem;padding-bottom:8rem}.lg\:py-6{padding-top:1.5rem;padding-bottom:1.5rem}.lg\:py-8{padding-top:2rem;padding-bottom:2rem}.lg\:pb-36{padding-bottom:9rem}.lg\:pt-72{padding-top:18rem}.lg\:shadow-none{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.group[data-state=active] .lg\:group-data-\[state\=active\]\:flex{display:flex}.dark\:lg\:bg-transparent:is(.dark *){background-color:transparent}}@media(min-width:1280px){.xl\:text-7xl{font-size:4.5rem;line-height:1}}.session-timeout-warning{position:fixed;top:0;left:0;right:0;background:linear-gradient(135deg,#ff6b35 0%,var(--color-error) 100%);color:var(--color-white);z-index:var(--z-toast);animation:slideDown .3s ease-out;box-shadow:0 2px 10px #dc26264d}@keyframes slideDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}.timeout-warning-content{display:flex;align-items:center;gap:1rem;padding:.75rem 1.5rem;max-width:1200px;margin:0 auto}.warning-icon{width:32px;height:32px;border-radius:var(--radius-full);background:#fff3;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:var(--font-weight-bold);flex-shrink:0}.warning-text{flex:1}.warning-text strong{display:block;font-size:.95rem;margin-bottom:.125rem}.warning-text p{margin:0;font-size:.875rem;opacity:.95}.time-remaining{font-weight:var(--font-weight-semibold);font-family:var(--font-mono);font-size:1rem;background:#fff3;padding:.125rem .375rem;border-radius:var(--radius-sm)}.warning-actions{display:flex;gap:.5rem;flex-shrink:0}.warning-actions button{padding:.5rem 1rem;border-radius:var(--radius-md);font-size:.875rem;font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-normal);border:none}.extend-button{background:var(--color-white);color:var(--color-error)}.extend-button:hover{background:var(--color-neutral-100)}.logout-now-button{background:transparent;color:var(--color-white);border:1px solid rgba(255,255,255,.5)!important}.logout-now-button:hover{background:#ffffff1a;border-color:var(--color-white)!important}@media(max-width:640px){.timeout-warning-content{flex-wrap:wrap;padding:1rem}.warning-icon{display:none}.warning-text{flex:100%}.warning-actions{width:100%;justify-content:flex-end}}.undo-toast-container{position:fixed;bottom:var(--spacing-lg);right:var(--spacing-lg);z-index:var(--z-toast);display:flex;flex-direction:column;gap:var(--spacing-sm)}.undo-toast{position:relative;min-width:320px;max-width:400px;background-color:var(--color-neutral-900);color:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden}.undo-progress{position:absolute;top:0;left:0;height:3px;background-color:var(--color-success);transition:width 1s linear}.undo-content{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);padding-top:15px}.undo-message{font-size:var(--font-size-body);flex:1;margin-right:var(--spacing-md)}.undo-actions{display:flex;align-items:center;gap:var(--spacing-sm)}.undo-timer{font-size:var(--font-size-caption);color:var(--color-neutral-500);font-family:var(--font-mono);min-width:28px;text-align:right}.undo-btn{background-color:transparent;border:none;color:var(--color-success);font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);cursor:pointer;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);transition:background-color var(--transition-normal)}.undo-btn:hover:not(:disabled){background-color:#05966926}.undo-btn:disabled{opacity:.5;cursor:not-allowed}.modal-backdrop{position:fixed;inset:0;background-color:var(--modal-backdrop-color);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--spacing-md);animation:fadeIn var(--transition-fast)}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal{background:var(--color-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);display:flex;flex-direction:column;max-height:calc(100vh - 2rem);animation:slideIn var(--transition-normal);outline:none}.modal-small{width:100%;max-width:400px}.modal-medium{width:100%;max-width:560px}.modal-large{width:100%;max-width:720px}.modal-xlarge{width:100%;max-width:960px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-neutral-200);flex-shrink:0}.modal-title{margin:0;font-size:var(--font-size-h4);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.modal-close-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;background:transparent;border-radius:var(--radius-md);color:var(--color-neutral-500);cursor:pointer;transition:all var(--transition-fast)}.modal-close-btn:hover{background-color:var(--color-neutral-100);color:var(--color-neutral-700)}.modal-close-btn:focus{outline:2px solid var(--color-primary-900);outline-offset:2px}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--color-neutral-200);flex-shrink:0}.modal-actions .btn-secondary,.modal-footer .btn-secondary{background:transparent!important;color:var(--color-neutral-700)!important;border:none!important;padding:.5rem 1rem;border-radius:var(--radius-md);font-weight:var(--font-weight-medium);cursor:pointer;transition:color var(--transition-normal)}.modal-actions .btn-secondary:hover,.modal-footer .btn-secondary:hover{color:var(--color-error)!important}.modal-actions .btn-primary,.modal-footer .btn-primary{background:transparent!important;color:var(--color-neutral-700)!important;border:none!important;padding:.5rem 1rem;border-radius:var(--radius-md);font-weight:var(--font-weight-medium);cursor:pointer;transition:color var(--transition-normal)}.modal-actions .btn-primary:hover:not(:disabled),.modal-footer .btn-primary:hover:not(:disabled){color:var(--color-success)!important}.modal-actions .btn-primary:disabled,.modal-footer .btn-primary:disabled{opacity:.5;cursor:not-allowed}@media(max-width:640px){.modal-backdrop{padding:0;align-items:flex-end}.modal{max-width:100%;max-height:90vh;border-radius:var(--radius-xl) var(--radius-xl) 0 0}}.confirm-dialog .modal-body{padding:var(--spacing-lg)}.confirm-content{display:flex;gap:var(--spacing-md);align-items:flex-start}.confirm-icon{flex-shrink:0;width:40px;height:40px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center}.confirm-info .confirm-icon{background-color:var(--color-info-light);color:var(--color-primary-900)}.confirm-warning .confirm-icon{background-color:var(--color-warning-light);color:var(--color-warning)}.confirm-danger .confirm-icon{background-color:var(--color-error-light);color:var(--color-error)}.confirm-message{flex:1}.confirm-message p{margin:0;color:var(--color-neutral-700);line-height:1.5}.confirm-message p+p{margin-top:var(--spacing-sm)}.btn-secondary{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);border-radius:var(--radius-md);border:1px solid var(--color-neutral-300);background:var(--color-white);color:var(--color-neutral-700);cursor:pointer;transition:all var(--transition-fast)}.btn-info{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);border-radius:var(--radius-md);border:none;background:var(--color-primary-900);color:var(--color-white);cursor:pointer;transition:all var(--transition-fast)}.btn-info:hover:not(:disabled){background:var(--color-primary-600)}.btn-info:disabled{opacity:.5;cursor:not-allowed}.btn-warning{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);border-radius:var(--radius-md);border:none;background:var(--color-warning);color:var(--color-white);cursor:pointer;transition:all var(--transition-fast)}.btn-warning:hover:not(:disabled){background:var(--color-warning-hover)}.btn-warning:disabled{opacity:.5;cursor:not-allowed}.btn-danger{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);border-radius:var(--radius-md);border:none;background:var(--color-error);color:var(--color-white);cursor:pointer;transition:all var(--transition-fast)}.btn-danger:hover:not(:disabled){background:var(--color-error-hover)}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.input-dialog-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.input-dialog-message{margin:0;color:var(--color-neutral-500);font-size:var(--font-size-body);line-height:1.5}.input-dialog-field{position:relative;display:flex;flex-direction:column;gap:var(--spacing-xs)}.input-dialog-field input,.input-dialog-field textarea{width:100%;padding:.625rem .75rem;font-size:var(--font-size-body);line-height:1.5;border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);background:var(--color-white);color:var(--color-neutral-900);transition:all var(--transition-fast);box-sizing:border-box}.input-dialog-field input:focus,.input-dialog-field textarea:focus{outline:none;border-color:var(--color-primary-900);box-shadow:0 0 0 3px #4a63b31a}.input-dialog-field input.has-error,.input-dialog-field textarea.has-error{border-color:var(--color-error)}.input-dialog-field input.has-error:focus,.input-dialog-field textarea.has-error:focus{box-shadow:0 0 0 3px #dc26261a}.input-dialog-field input:disabled,.input-dialog-field textarea:disabled{background:var(--color-neutral-50);color:var(--color-neutral-500);cursor:not-allowed}.input-dialog-field textarea{resize:vertical;min-height:80px}.input-dialog-field input::-moz-placeholder,.input-dialog-field textarea::-moz-placeholder{color:var(--color-neutral-500)}.input-dialog-field input::placeholder,.input-dialog-field textarea::placeholder{color:var(--color-neutral-500)}.input-dialog-error{color:var(--color-error);font-size:var(--font-size-caption)}.input-dialog-counter{align-self:flex-end;color:var(--color-neutral-500);font-size:var(--font-size-caption)}.btn-primary{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);border-radius:var(--radius-md);border:none;background:var(--color-primary-900);color:var(--color-white);cursor:pointer;transition:all var(--transition-fast)}.toast-container{position:fixed;z-index:var(--z-toast);display:flex;flex-direction:column;gap:var(--spacing-sm);pointer-events:none;padding:var(--spacing-md);max-width:420px;width:100%}.toast-top-right{top:0;right:0}.toast-top-left{top:0;left:0}.toast-bottom-right{bottom:0;right:0;flex-direction:column-reverse}.toast-bottom-left{bottom:0;left:0;flex-direction:column-reverse}.toast-top-center{top:0;left:50%;transform:translate(-50%);align-items:center}.toast-bottom-center{bottom:0;left:50%;transform:translate(-50%);align-items:center;flex-direction:column-reverse}.toast{display:flex;align-items:flex-start;gap:.75rem;padding:.875rem var(--spacing-md);background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border-left:4px solid;pointer-events:auto;animation:toastSlideIn var(--transition-normal)}@keyframes toastSlideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.toast-exit{animation:toastSlideOut var(--transition-normal) forwards}@keyframes toastSlideOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100%)}}.toast-success{border-left-color:var(--color-success)}.toast-success .toast-icon{color:var(--color-success)}.toast-error{border-left-color:var(--color-error)}.toast-error .toast-icon{color:var(--color-error)}.toast-warning{border-left-color:var(--color-warning)}.toast-warning .toast-icon{color:var(--color-warning)}.toast-info{border-left-color:var(--color-primary-900)}.toast-info .toast-icon{color:var(--color-primary-900)}.toast-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center}.toast-message{flex:1;font-size:var(--font-size-body);line-height:1.5;color:var(--color-neutral-700)}.toast-close{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;background:transparent;color:var(--color-neutral-500);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.toast-close:hover{background:var(--color-neutral-100);color:var(--color-neutral-500)}.toast-top-left .toast,.toast-bottom-left .toast{animation:toastSlideInLeft var(--transition-normal)}@keyframes toastSlideInLeft{0%{opacity:0;transform:translate(-100%)}to{opacity:1;transform:translate(0)}}.toast-top-left .toast-exit,.toast-bottom-left .toast-exit{animation:toastSlideOutLeft var(--transition-normal) forwards}@keyframes toastSlideOutLeft{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-100%)}}.toast-top-center .toast,.toast-bottom-center .toast{animation:toastSlideInCenter var(--transition-normal)}@keyframes toastSlideInCenter{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.toast-top-center .toast-exit,.toast-bottom-center .toast-exit{animation:toastSlideOutCenter var(--transition-normal) forwards}@keyframes toastSlideOutCenter{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-20px)}}@media(max-width:480px){.toast-container{max-width:100%;padding:var(--spacing-sm)}.toast{padding:.75rem}}.keyboard-hint{display:inline-flex;align-items:center;gap:.125rem;white-space:nowrap}.keyboard-hint__key{display:inline-flex;align-items:center;justify-content:center;min-width:1.25rem;padding:.125rem .375rem;background:var(--color-neutral-100, #f3f4f6);border:1px solid var(--color-neutral-300, #d1d5db);border-radius:.25rem;font-family:SF Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-weight:500;color:var(--color-neutral-700, #374151);box-shadow:0 1px #0000001a;-webkit-user-select:none;-moz-user-select:none;user-select:none}.keyboard-hint--small .keyboard-hint__key{font-size:.625rem;padding:.0625rem .25rem;min-width:1rem;border-radius:.1875rem}.keyboard-hint--medium .keyboard-hint__key{font-size:.75rem;padding:.125rem .375rem;min-width:1.25rem}.keyboard-hint--large .keyboard-hint__key{font-size:.875rem;padding:.25rem .5rem;min-width:1.5rem;border-radius:.375rem}.keyboard-hint--light .keyboard-hint__key{background:#fff3;border-color:#ffffff4d;color:var(--color-white, #ffffff);box-shadow:0 1px #0003}.keyboard-hint--hover-only{opacity:0;transition:opacity .15s ease}.keyboard-hint-wrapper{display:inline-flex;align-items:center;position:relative}.keyboard-hint-wrapper--inline{gap:.5rem}.keyboard-hint-wrapper--inline .keyboard-hint{margin-left:.25rem}.keyboard-hint-wrapper--hover:hover .keyboard-hint--hover-only,.keyboard-hint-wrapper--hover:focus-within .keyboard-hint--hover-only{opacity:1}.shortcut-display--text{font-family:SF Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.75rem;color:var(--color-neutral-500, #6b7280)}@keyframes keyHintPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.keyboard-hint-wrapper:focus-within .keyboard-hint__key{animation:keyHintPulse .2s ease}@media(hover:none)and (pointer:coarse){.keyboard-hint{display:none}}@media print{.keyboard-hint,.keyboard-hint-wrapper .keyboard-hint{display:none!important}}.keyboard-help-modal-backdrop{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal, 1000);padding:1rem;animation:fadeIn .15s ease-out}.keyboard-help-modal{background:var(--color-white, #ffffff);border-radius:.75rem;box-shadow:0 25px 50px -12px #00000040;max-width:560px;width:100%;max-height:80vh;display:flex;flex-direction:column;animation:slideUp .2s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.keyboard-help-modal__header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--color-neutral-200, #e5e7eb)}.keyboard-help-modal__header h2{margin:0;font-size:1.125rem;font-weight:600;color:var(--color-neutral-900, #111827)}.keyboard-help-modal__close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;color:var(--color-neutral-500, #6b7280);border-radius:.375rem;cursor:pointer;transition:background-color .15s,color .15s}.keyboard-help-modal__close:hover{background:var(--color-neutral-100, #f3f4f6);color:var(--color-neutral-700, #374151)}.keyboard-help-modal__close:focus{outline:2px solid var(--color-primary-500, #6366f1);outline-offset:2px}.keyboard-help-modal__content{flex:1;overflow-y:auto;padding:1rem 1.25rem}.shortcut-section{margin-bottom:1.5rem}.shortcut-section:last-child{margin-bottom:0}.shortcut-section__title{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-neutral-500, #6b7280);margin:0 0 .75rem;padding-bottom:.5rem;border-bottom:1px solid var(--color-neutral-100, #f3f4f6)}.shortcut-category{margin-bottom:1rem}.shortcut-category:last-child{margin-bottom:0}.shortcut-category__title{font-size:.6875rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--color-neutral-400, #9ca3af);margin:.75rem 0 .5rem}.shortcut-list{display:flex;flex-direction:column;gap:.5rem}.shortcut-row{display:flex;align-items:center;justify-content:space-between;padding:.375rem .5rem;border-radius:.375rem;transition:background-color .15s}.shortcut-row:hover{background:var(--color-neutral-50, #f9fafb)}.shortcut-row__keys{display:flex;align-items:center;gap:.25rem;min-width:100px}.shortcut-row__description{flex:1;font-size:.875rem;color:var(--color-neutral-700, #374151);text-align:right}.keyboard-help-modal__footer{padding:.75rem 1.25rem;border-top:1px solid var(--color-neutral-200, #e5e7eb);background:var(--color-neutral-50, #f9fafb);border-radius:0 0 .75rem .75rem}.keyboard-help-modal__tip{margin:0;font-size:.75rem;color:var(--color-neutral-500, #6b7280);text-align:center}.keyboard-help-modal__content::-webkit-scrollbar{width:6px}.keyboard-help-modal__content::-webkit-scrollbar-track{background:var(--color-neutral-100, #f3f4f6);border-radius:3px}.keyboard-help-modal__content::-webkit-scrollbar-thumb{background:var(--color-neutral-300, #d1d5db);border-radius:3px}.keyboard-help-modal__content::-webkit-scrollbar-thumb:hover{background:var(--color-neutral-400, #9ca3af)}@media(max-width:600px){.keyboard-help-modal{max-height:90vh}.keyboard-help-modal__header h2{font-size:1rem}.shortcut-row{flex-direction:column;align-items:flex-start;gap:.25rem}.shortcut-row__keys{min-width:auto}.shortcut-row__description{text-align:left;font-size:.8125rem;color:var(--color-neutral-600, #4b5563)}}.keyboard-help-modal:focus-visible{outline:none}.command-bar-overlay{position:fixed;inset:0;background:var(--modal-backdrop-color);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:flex-start;justify-content:center;padding-top:15vh;z-index:var(--z-modal);animation:fadeIn var(--transition-fast)}.command-bar-modal{width:100%;max-width:640px;background:var(--color-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-2xl),0 0 0 1px #0000001a;overflow:hidden;animation:slideIn var(--transition-normal)}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.command-bar-header{display:flex;align-items:center;padding:16px 20px;border-bottom:1px solid var(--color-neutral-200);background:var(--color-neutral-50)}.command-bar-input-wrapper{flex:1;display:flex;align-items:center;gap:12px}.command-bar-icon{font-family:var(--font-mono);font-size:18px;font-weight:var(--font-weight-semibold);color:var(--color-primary-900)}.command-bar-input{flex:1;border:none;background:transparent;font-size:16px;font-family:inherit;color:var(--color-neutral-900);outline:none}.command-bar-input::-moz-placeholder{color:var(--color-neutral-500)}.command-bar-input::placeholder{color:var(--color-neutral-500)}.command-bar-input:disabled{opacity:.5}.command-bar-spinner{width:18px;height:18px;border:2px solid var(--color-neutral-200);border-top-color:var(--color-primary-900);border-radius:var(--radius-full);animation:spin .6s linear infinite}.command-bar-close{display:flex;align-items:center;padding:6px 10px;border:none;background:var(--color-neutral-100);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast)}.command-bar-close:hover{background:var(--color-neutral-200)}.command-bar-close kbd{font-family:inherit;font-size:12px;color:var(--color-neutral-700)}.command-bar-content{max-height:400px;overflow-y:auto}.command-bar-disclosure{position:absolute;inset:0;background:var(--color-white);display:flex;align-items:center;justify-content:center;z-index:1;border-radius:var(--radius-xl)}.disclosure-content{max-width:400px;padding:32px;text-align:center}.disclosure-content h3{margin:0 0 16px;font-size:18px;font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.disclosure-content p{margin:0 0 16px;color:var(--color-neutral-700);line-height:1.5}.disclosure-content ul{margin:0 0 24px;padding:0;list-style:none;text-align:left}.disclosure-content li{position:relative;padding-left:24px;margin-bottom:8px;color:var(--color-neutral-700);font-size:14px}.disclosure-content li:before{content:"•";position:absolute;left:8px;color:var(--color-primary-900)}.disclosure-btn{padding:12px 24px;background:var(--color-primary-900);color:var(--color-white);border:none;border-radius:var(--radius-lg);font-size:14px;font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--transition-fast)}.disclosure-btn:hover{background:var(--color-primary-600)}.command-bar-suggestions{padding:12px 0}.suggestions-header{padding:8px 20px;font-size:11px;font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.5px;color:var(--color-neutral-500)}.suggestions-list,.history-list{display:flex;flex-direction:column}.suggestion-item{display:flex;align-items:center;gap:12px;padding:10px 20px;border:none;background:transparent;text-align:left;cursor:pointer;transition:background .1s}.suggestion-item:hover,.suggestion-item.selected{background:var(--color-neutral-50)}.suggestion-label{font-size:14px;font-weight:var(--font-weight-medium);color:var(--color-neutral-900)}.suggestion-command{flex:1;font-size:13px;color:var(--color-neutral-500);font-family:var(--font-mono)}.suggestion-shortcut{padding:2px 6px;background:var(--color-neutral-100);border-radius:var(--radius-sm);font-size:11px;color:var(--color-neutral-700)}.history-item{display:flex;align-items:center;gap:8px;padding:8px 20px;border:none;background:transparent;text-align:left;font-size:13px;color:var(--color-neutral-700);cursor:pointer;transition:background .1s}.history-item:hover{background:var(--color-neutral-50);color:var(--color-neutral-900)}.history-icon{font-size:12px;opacity:.5}.command-bar-message,.command-bar-navigation,.command-bar-error{display:flex;align-items:center;gap:12px;padding:16px 20px;font-size:14px}.command-bar-message{color:var(--color-neutral-700)}.command-bar-navigation{color:var(--color-primary-900)}.command-bar-error{color:var(--color-error);background:var(--color-error-light)}.command-bar-warning{display:flex;align-items:center;gap:12px;padding:12px 20px;font-size:13px;color:var(--color-warning);background:var(--color-warning-light);border-bottom:1px solid var(--color-warning)}.warning-icon{font-size:14px}.message-icon,.nav-icon,.error-icon{font-size:16px}.command-bar-data{padding:12px 0}.data-summary{padding:12px 20px;font-size:14px;font-weight:var(--font-weight-medium);color:var(--color-neutral-900);border-bottom:1px solid var(--color-neutral-200)}.command-bar-hint{padding:24px 20px;text-align:center;color:var(--color-neutral-500);font-size:13px}.result-list{display:flex;flex-direction:column}.result-item{display:flex;align-items:center;gap:12px;padding:12px 20px;border-bottom:1px solid var(--color-neutral-100)}.result-item:last-child{border-bottom:none}.patient-result .patient-name{font-weight:var(--font-weight-medium);color:var(--color-neutral-900)}.patient-badges{display:flex;gap:6px}.badge{padding:2px 8px;border-radius:var(--radius-sm);font-size:10px;font-weight:var(--font-weight-semibold);text-transform:uppercase}.badge.allergy{background:var(--color-warning-light);color:var(--color-warning)}.badge.vip{background:var(--color-info-light);color:var(--color-primary-900)}.badge.panel{background:var(--color-success-light);color:var(--color-success)}.patient-phone{margin-left:auto;font-size:13px;color:var(--color-neutral-500);font-family:var(--font-mono)}.queue-item .queue-number{font-weight:var(--font-weight-semibold);color:var(--color-primary-900);min-width:40px}.queue-item .wait-time{margin-left:auto;font-size:13px;color:var(--color-warning)}.inventory-item .item-name{flex:1;color:var(--color-neutral-900)}.inventory-item .item-stock{font-size:13px;font-family:var(--font-mono)}.inventory-item .item-stock.low{color:var(--color-error);font-weight:var(--font-weight-medium)}.result-stats{display:flex;gap:24px;padding:16px 20px}.stat-item{display:flex;flex-direction:column;align-items:center;gap:4px}.stat-item.primary .stat-value{color:var(--color-primary-900)}.stat-value{font-size:24px;font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.stat-label{font-size:12px;color:var(--color-neutral-500);text-transform:uppercase}.result-single{padding:16px 20px}.single-main{display:flex;align-items:center;gap:12px;margin-bottom:8px}.single-main .queue-number{font-size:20px;font-weight:var(--font-weight-semibold);color:var(--color-primary-900)}.single-main .patient-name{font-size:16px;font-weight:var(--font-weight-medium);color:var(--color-neutral-900)}.single-detail{font-size:13px;color:var(--color-neutral-700)}.help-content{padding:12px 20px}.help-section{margin-bottom:16px}.help-title{font-size:12px;font-weight:var(--font-weight-semibold);color:var(--color-neutral-500);margin-bottom:8px}.help-examples{display:flex;flex-wrap:wrap;gap:8px}.help-examples code{padding:4px 10px;background:var(--color-neutral-50);border-radius:var(--radius-sm);font-size:13px;color:var(--color-neutral-700)}.view-all-btn{display:block;width:calc(100% - 40px);margin:12px 20px;padding:10px;border:1px dashed var(--color-neutral-200);border-radius:var(--radius-lg);background:transparent;font-size:13px;color:var(--color-primary-900);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.view-all-btn:hover{background:var(--color-neutral-50);border-color:var(--color-primary-900)}.command-bar-footer{display:flex;gap:16px;padding:12px 20px;border-top:1px solid var(--color-neutral-200);background:var(--color-neutral-50)}.footer-hint{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--color-neutral-500)}.footer-hint kbd{padding:2px 6px;background:var(--color-neutral-100);border-radius:var(--radius-sm);font-family:inherit}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(prefers-color-scheme:dark){.command-bar-modal{--color-bg-primary: #1f2937;--color-bg-secondary: #111827;--color-bg-tertiary: #374151;--color-bg-hover: #374151;--color-text-primary: #f9fafb;--color-text-secondary: #d1d5db;--color-text-muted: #9ca3af;--color-border: #374151;--color-border-light: #1f2937}}@media(max-width:640px){.command-bar-overlay{padding-top:5vh}.command-bar-modal{margin:0 12px;max-height:80vh}.suggestion-shortcut{display:none}.result-stats{gap:12px}.stat-value{font-size:20px}}.patient-alert-badges{display:inline-flex;gap:4px;align-items:center;flex-wrap:wrap}.patient-alert-badges.compact{gap:2px}.alert-badge{display:inline-flex;align-items:center;gap:3px;padding:2px 6px;border-radius:4px;font-size:11px;font-weight:600;white-space:nowrap}.patient-alert-badges.compact .alert-badge{padding:1px 4px;font-size:10px}.badge-icon{font-size:10px}.patient-alert-badges.compact .badge-icon{font-size:9px}.badge-allergy{background-color:var(--color-error-light);color:var(--color-error);border:1px solid #ef9a9a}.badge-allergy .badge-icon{color:var(--color-error)}.badge-panel{background-color:var(--color-info-light);color:var(--color-primary-900);border:1px solid var(--color-primary-300)}.badge-panel .badge-icon{color:var(--color-primary-900)}.modal-overlay{position:fixed;inset:0;background-color:var(--modal-backdrop-color);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal)}.quick-checkin-modal{background-color:var(--color-white);border-radius:var(--radius-xl);width:90%;max-width:500px;max-height:80vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-xl)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--color-neutral-200)}.modal-header h2{margin:0;font-size:18px;font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.modal-close{background:none;border:none;font-size:24px;color:var(--color-neutral-500);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm)}.modal-close:hover{background-color:var(--color-neutral-100);color:var(--color-neutral-900)}.modal-body{padding:20px;overflow-y:auto;flex:1}.search-section{position:relative;margin-bottom:16px}.search-input{width:100%;padding:12px 16px;font-size:16px;border:2px solid var(--color-neutral-200);border-radius:var(--radius-lg);outline:none;transition:border-color var(--transition-normal)}.search-input:focus{border-color:var(--color-primary-900)}.search-loading{position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:12px;color:var(--color-neutral-500)}.error-message{background-color:var(--color-error-light);color:var(--color-error);padding:12px 16px;border-radius:var(--radius-lg);margin-bottom:16px;font-size:14px}.recent-patients{margin-bottom:16px}.recent-patients .patient-result.recent{border-left:3px solid var(--color-primary-900)}.recent-patients .patient-result.recent:hover{border-left-color:var(--color-primary-600)}.search-results{margin-bottom:16px}.results-label{font-size:12px;color:var(--color-neutral-500);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.patient-result{padding:12px 16px;border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);margin-bottom:8px;cursor:pointer;transition:all var(--transition-normal)}.patient-result:hover{background-color:var(--color-neutral-50);border-color:var(--color-primary-900)}.patient-result .patient-info{display:flex;align-items:center;gap:8px;margin-bottom:4px}.patient-result .patient-name{font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.patient-result .patient-details{display:flex;gap:16px;font-size:13px;color:var(--color-neutral-500)}.patient-phone{font-family:var(--font-mono)}.patient-nric{color:var(--color-neutral-500)}.no-results{text-align:center;padding:24px;color:var(--color-neutral-500);font-size:14px}.search-hint{text-align:center;padding:32px;color:var(--color-neutral-500);font-size:14px}.search-hint.subtle{padding:16px;font-size:13px;border-top:1px solid var(--color-neutral-200);margin-top:8px}.selected-patient-section{display:flex;flex-direction:column;gap:16px}.selected-patient-header{margin-bottom:8px}.back-btn{background:none;border:none;color:var(--color-primary-900);font-size:14px;cursor:pointer;padding:4px 0}.back-btn:hover{text-decoration:underline}.selected-patient-card{padding:16px;background-color:var(--color-neutral-50);border-radius:var(--radius-lg)}.selected-patient-card .patient-info{display:flex;align-items:center;gap:12px;margin-bottom:8px}.selected-patient-card .patient-name{font-size:18px;font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.selected-patient-card .patient-details{display:flex;gap:16px;font-size:14px;color:var(--color-neutral-500)}.bookings-section h3{font-size:14px;font-weight:var(--font-weight-semibold);color:var(--color-neutral-900);margin:0 0 12px;text-transform:uppercase;letter-spacing:.5px}.booking-list{display:flex;flex-direction:column;gap:8px}.booking-item{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background-color:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg)}.booking-info{display:flex;flex-direction:column;gap:2px}.booking-time{font-size:16px;font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.booking-reason{font-size:13px;color:var(--color-neutral-500)}.booking-doctor{font-size:12px;color:var(--color-neutral-500)}.checkin-btn{background-color:var(--color-success);color:var(--color-white);border:none;padding:10px 20px;border-radius:var(--radius-md);font-size:14px;font-weight:var(--font-weight-semibold);cursor:pointer;transition:background-color var(--transition-normal)}.checkin-btn:hover:not(:disabled){background-color:var(--color-success-hover)}.checkin-btn:disabled{background-color:var(--color-success-light);cursor:not-allowed}.no-bookings{text-align:center;padding:24px;background-color:var(--color-warning-light);border-radius:var(--radius-lg)}.no-bookings p{margin:0;color:var(--color-neutral-500)}.no-bookings .hint{font-size:13px;color:var(--color-neutral-500);margin-top:8px}.loading{text-align:center;padding:24px;color:var(--color-neutral-500);font-size:14px}@keyframes skeleton-shimmer{0%{background-position:-200px 0}to{background-position:200px 0}}.skeleton-results{display:flex;flex-direction:column;gap:8px}.patient-result.skeleton{pointer-events:none;cursor:default}.patient-result.skeleton:hover{background-color:var(--color-neutral-50);border-color:var(--color-neutral-200)}.skeleton-content{display:flex;flex-direction:column;gap:8px;width:100%}.skeleton-line{height:14px;border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--color-neutral-100) 25%,var(--color-neutral-200) 50%,var(--color-neutral-100) 75%);background-size:200px 100%;animation:skeleton-shimmer 1.2s infinite ease-in-out}.skeleton-line.name{width:60%}.skeleton-line.details{width:40%;height:12px}.checkin-data-loading{text-align:center;padding:16px;color:var(--color-neutral-500);font-size:13px}.checkin-summary{display:flex;flex-direction:column;gap:8px;margin-bottom:8px}.checkin-alert{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;border-radius:var(--radius-lg);font-size:14px}.checkin-alert .alert-icon{font-size:18px;flex-shrink:0}.checkin-alert .alert-content{display:flex;flex-direction:column;gap:2px}.checkin-alert .alert-content strong{font-weight:var(--font-weight-semibold)}.checkin-alert.balance-warning{background-color:#fff3e0;border:1px solid #ffb74d}.checkin-alert.balance-warning .balance-amount{color:#e65100;font-weight:var(--font-weight-semibold);font-size:16px}.checkin-alert.panel-status{background-color:var(--color-info-light);border:1px solid var(--color-primary-300)}.checkin-alert.panel-status.active{background-color:var(--color-success-light);border-color:var(--color-success)}.checkin-alert.panel-status.inactive{background-color:var(--color-error-light);border-color:var(--color-error)}.checkin-alert.panel-status .policy-number{font-size:12px;color:var(--color-neutral-500);font-family:var(--font-mono)}.visit-history{background-color:var(--color-neutral-50);border-radius:var(--radius-lg);padding:12px 16px}.visit-history .history-label{font-size:12px;color:var(--color-neutral-500);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.visit-history .history-list{display:flex;flex-direction:column;gap:6px}.visit-history .history-item{display:flex;gap:12px;font-size:13px;color:var(--color-neutral-900)}.visit-history .history-item .visit-date{color:var(--color-neutral-500);font-family:var(--font-mono);min-width:90px}.visit-history .history-item .visit-doctor{flex:1}.visit-history .history-item .visit-type{color:var(--color-neutral-500);font-size:12px}.checkin-success{text-align:center;padding:32px 24px;display:flex;flex-direction:column;align-items:center;gap:16px}.checkin-success .success-icon{width:64px;height:64px;background-color:var(--color-success);color:var(--color-white);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:var(--font-weight-bold);animation:checkmark-pop .3s ease-out}@keyframes checkmark-pop{0%{transform:scale(0);opacity:0}50%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}.checkin-success .success-content h3{margin:0 0 8px;font-size:20px;font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.checkin-success .success-content .patient-name{margin:0;font-size:16px;color:var(--color-neutral-600)}.checkin-success .queue-info{display:flex;gap:24px;margin-top:16px;padding:16px 24px;background-color:var(--color-primary-50);border-radius:var(--radius-lg)}.checkin-success .queue-info .queue-number,.checkin-success .queue-info .queue-position{display:flex;flex-direction:column;align-items:center;gap:4px}.checkin-success .queue-info .label{font-size:12px;color:var(--color-neutral-500);text-transform:uppercase;letter-spacing:.5px}.checkin-success .queue-info .queue-number .value{font-size:36px;font-weight:var(--font-weight-bold);color:var(--color-primary-900);line-height:1}.checkin-success .queue-info .queue-position .value{font-size:16px;font-weight:var(--font-weight-semibold);color:var(--color-neutral-700)}.checkin-success .success-actions{display:flex;gap:12px;margin-top:12px;justify-content:center}.checkin-success .print-ticket-btn{background-color:var(--color-white);color:var(--color-primary-900);border:2px solid var(--color-primary-900);padding:12px 24px;border-radius:var(--radius-md);font-size:15px;font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-normal)}.checkin-success .print-ticket-btn:hover{background-color:var(--color-primary-50, #f0f4ff);border-color:var(--color-primary-800)}.checkin-success .done-btn{background-color:var(--color-primary-900);color:var(--color-white);border:none;padding:12px 32px;border-radius:var(--radius-md);font-size:16px;font-weight:var(--font-weight-semibold);cursor:pointer;transition:background-color var(--transition-normal)}.checkin-success .done-btn:hover{background-color:var(--color-primary-800)}.checkin-success .done-btn:focus{outline:2px solid var(--color-primary-500);outline-offset:2px}.quick-report-trigger{display:flex;align-items:center;gap:6px;padding:6px 12px;background:transparent;border:1px solid var(--border-color, #e2e8f0);border-radius:6px;color:var(--text-secondary, #64748b);font-size:13px;cursor:pointer;transition:all .15s ease}.quick-report-trigger:hover{background:var(--bg-hover, #f8fafc);border-color:var(--primary-color, #3b82f6);color:var(--primary-color, #3b82f6)}.quick-report-trigger svg{flex-shrink:0}@media(max-width:768px){.quick-report-trigger-text{display:none}.quick-report-trigger{padding:8px}}.quick-report-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .15s ease}.quick-report-modal{background:var(--bg-primary, #ffffff);border-radius:12px;padding:24px;width:90%;max-width:400px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;animation:slideUp .2s ease}.quick-report-modal h3{margin:0 0 8px;font-size:18px;font-weight:600;color:var(--text-primary, #1e293b)}.quick-report-hint{margin:0 0 16px;font-size:14px;color:var(--text-secondary, #64748b);line-height:1.5}.quick-report-modal textarea{width:100%;padding:12px;border:1px solid var(--border-color, #e2e8f0);border-radius:8px;font-size:14px;font-family:inherit;resize:vertical;min-height:80px;transition:border-color .15s ease}.quick-report-modal textarea:focus{outline:none;border-color:var(--primary-color, #3b82f6);box-shadow:0 0 0 3px #3b82f61a}.quick-report-modal textarea:disabled{background:var(--bg-secondary, #f8fafc);cursor:not-allowed}.character-count{text-align:right;font-size:12px;color:var(--text-tertiary, #94a3b8);margin-top:4px}.error-context{display:flex;align-items:flex-start;gap:8px;margin-top:12px;padding:10px 12px;background:var(--warning-bg, #fef3c7);border-radius:6px;font-size:12px;color:var(--warning-text, #92400e)}.error-context svg{flex-shrink:0;margin-top:1px}.quick-report-error{margin-top:12px;padding:10px 12px;background:var(--error-bg, #fef2f2);border-radius:6px;font-size:13px;color:var(--error-text, #dc2626)}.quick-report-actions{display:flex;gap:12px;margin-top:20px}.quick-report-actions button{flex:1;padding:10px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease}.cancel-btn:hover:not(:disabled){background:var(--bg-hover, #f8fafc);border-color:var(--border-hover, #cbd5e1)}.submit-btn:disabled{background:var(--primary-disabled, #93c5fd);cursor:not-allowed}.cancel-btn:disabled{opacity:.5;cursor:not-allowed}.quick-report-tip{margin:12px 0 0;font-size:11px;color:var(--text-tertiary, #94a3b8);text-align:center}.quick-report-success{text-align:center;padding:20px 0}.quick-report-success .success-icon{color:var(--success-color, #10b981);margin-bottom:16px}.quick-report-success p{margin:0;font-size:16px;font-weight:500;color:var(--text-primary, #1e293b)}.quick-report-success .success-hint{margin-top:8px;font-size:14px;font-weight:400;color:var(--text-secondary, #64748b)}.support-drawer-backdrop{position:fixed;inset:0;background:#0000004d;z-index:9998;animation:fadeIn .2s ease}.support-drawer{position:fixed;top:0;right:0;bottom:0;width:400px;max-width:100%;background:var(--bg-primary, #ffffff);box-shadow:-4px 0 16px #0000001a;z-index:9999;display:flex;flex-direction:column;transform:translate(100%);transition:transform .3s ease}.support-drawer.open{transform:translate(0)}.drawer-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border-color, #e2e8f0)}.drawer-header h2{margin:0;font-size:18px;font-weight:600;color:var(--text-primary, #1e293b)}.drawer-close{width:32px;height:32px;border-radius:6px;background:transparent;border:none;color:var(--text-secondary, #64748b);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.drawer-close:hover{background:var(--bg-hover, #f1f5f9);color:var(--text-primary, #1e293b)}.drawer-tabs{display:flex;border-bottom:1px solid var(--border-color, #e2e8f0);padding:0 12px}.drawer-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:12px 16px;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-secondary, #64748b);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.drawer-tab:hover{color:var(--text-primary, #1e293b);background:var(--bg-hover, #f8fafc)}.drawer-tab.active{color:var(--primary-color, #3b82f6);border-bottom-color:var(--primary-color, #3b82f6)}.drawer-tab svg{flex-shrink:0}.drawer-content{flex:1;overflow-y:auto;padding:20px}.context-badge{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;background:var(--primary-light, #eff6ff);border-radius:20px;font-size:12px;color:var(--primary-color, #3b82f6);margin-bottom:16px}.help-tab .search-box{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--bg-secondary, #f8fafc);border:1px solid var(--border-color, #e2e8f0);border-radius:8px;margin-bottom:16px}.help-tab .search-box svg{color:var(--text-tertiary, #94a3b8);flex-shrink:0}.help-tab .search-box input{flex:1;border:none;background:transparent;font-size:14px;color:var(--text-primary, #1e293b);outline:none}.help-tab .search-box input::-moz-placeholder{color:var(--text-tertiary, #94a3b8)}.help-tab .search-box input::placeholder{color:var(--text-tertiary, #94a3b8)}.articles-list{display:flex;flex-direction:column;gap:8px}.article-item{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--border-color, #e2e8f0);border-radius:8px;text-decoration:none;color:inherit;transition:all .15s ease}.article-item:hover{border-color:var(--primary-color, #3b82f6);background:var(--bg-hover, #f8fafc)}.article-icon{width:36px;height:36px;border-radius:8px;background:var(--primary-light, #eff6ff);color:var(--primary-color, #3b82f6);display:flex;align-items:center;justify-content:center;flex-shrink:0}.article-content{flex:1;min-width:0}.article-content h4{margin:0 0 2px;font-size:14px;font-weight:500;color:var(--text-primary, #1e293b)}.article-content p{margin:0;font-size:12px;color:var(--text-secondary, #64748b);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.article-arrow{color:var(--text-tertiary, #94a3b8);flex-shrink:0}.article-text{flex:1;min-width:0}.article-text h4{margin:0 0 2px;font-size:14px;font-weight:500;color:var(--text-primary, #1e293b);text-align:left}.article-text p{margin:0;font-size:12px;color:var(--text-secondary, #64748b);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left}.no-results{padding:32px;text-align:center;color:var(--text-secondary, #64748b)}.article-detail{height:100%;display:flex;flex-direction:column}.back-button{display:flex;align-items:center;gap:6px;padding:8px 12px;background:var(--bg-secondary, #f8fafc);border:1px solid var(--border-color, #e2e8f0);border-radius:6px;color:var(--text-secondary, #64748b);font-size:13px;cursor:pointer;transition:all .15s ease;margin-bottom:16px;width:-moz-fit-content;width:fit-content}.back-button:hover{background:var(--bg-hover, #f1f5f9);color:var(--text-primary, #1e293b)}.article-detail-content{flex:1;overflow-y:auto}.article-detail-content>h2{margin:0 0 16px;font-size:20px;font-weight:600;color:var(--text-primary, #1e293b);padding-bottom:12px;border-bottom:1px solid var(--border-color, #e2e8f0)}.article-markdown h2{margin:24px 0 12px;font-size:18px;font-weight:600;color:var(--text-primary, #1e293b)}.article-markdown h2:first-child{margin-top:0}.article-markdown h3{margin:20px 0 10px;font-size:15px;font-weight:600;color:var(--text-primary, #1e293b)}.article-markdown h4{margin:16px 0 8px;font-size:14px;font-weight:600;color:var(--text-secondary, #64748b)}.article-markdown p{margin:0 0 8px;font-size:14px;line-height:1.6;color:var(--text-primary, #1e293b)}.article-markdown li{font-size:14px;line-height:1.6;color:var(--text-primary, #1e293b);margin-bottom:4px;margin-left:20px}.article-markdown li.numbered{list-style-type:decimal}.article-markdown strong{font-weight:600;color:var(--text-primary, #1e293b)}.article-markdown .table-row{display:flex;border-bottom:1px solid var(--border-color, #e2e8f0);padding:8px 0}.article-markdown .table-row:first-of-type{font-weight:600;background:var(--bg-secondary, #f8fafc);border-top:1px solid var(--border-color, #e2e8f0)}.article-markdown .table-cell{flex:1;padding:4px 12px;font-size:13px}.no-content{text-align:center;color:var(--text-secondary, #64748b);font-style:italic;padding:32px}.help-footer{margin-top:24px;padding-top:24px;border-top:1px solid var(--border-color, #e2e8f0);text-align:center}.help-footer p{margin:0 0 12px;font-size:14px;color:var(--text-secondary, #64748b)}.contact-support-btn{padding:10px 20px;background:var(--primary-color, #3b82f6);border:none;border-radius:6px;color:#fff;font-size:14px;font-weight:500;cursor:pointer;transition:background .15s ease}.contact-support-btn:hover{background:var(--primary-hover, #2563eb)}.shortcuts-section{margin-bottom:24px}.shortcuts-section h3{margin:0 0 12px;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary, #64748b)}.shortcuts-list{display:flex;flex-direction:column;gap:8px}.shortcut-item{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:var(--bg-secondary, #f8fafc);border-radius:6px}.shortcut-item kbd{display:inline-block;padding:4px 8px;background:var(--bg-primary, #ffffff);border:1px solid var(--border-color, #e2e8f0);border-radius:4px;font-family:SF Mono,Monaco,Inconsolata,monospace;font-size:12px;font-weight:500;color:var(--text-primary, #1e293b);box-shadow:0 1px 2px #0000000d}.shortcut-item span{font-size:13px;color:var(--text-secondary, #64748b)}.shortcuts-tip{display:flex;align-items:center;gap:10px;padding:12px;background:var(--info-light, #f0f9ff);border-radius:8px;margin-top:16px}.shortcuts-tip svg{color:var(--info-color, #0ea5e9);flex-shrink:0}.shortcuts-tip span{font-size:13px;color:var(--info-color, #0ea5e9)}.shortcuts-tip kbd{display:inline-block;padding:2px 6px;background:var(--bg-primary, #ffffff);border:1px solid var(--border-color, #e2e8f0);border-radius:3px;font-family:monospace;font-size:11px}.report-tab .report-intro{text-align:center;margin-bottom:24px}.report-tab .report-intro svg{color:var(--warning-color, #f59e0b);margin-bottom:12px}.report-tab .report-intro h3{margin:0 0 8px;font-size:18px;font-weight:600;color:var(--text-primary, #1e293b)}.report-tab .report-intro p{margin:0;font-size:14px;color:var(--text-secondary, #64748b);line-height:1.5}.report-form{margin-bottom:24px}.report-form textarea{width:100%;padding:12px;border:1px solid var(--border-color, #e2e8f0);border-radius:8px;font-size:14px;font-family:inherit;resize:vertical;min-height:100px;color:var(--text-primary, #1e293b);background:var(--bg-primary, #ffffff);transition:border-color .15s ease}.report-form textarea:focus{outline:none;border-color:var(--primary-color, #3b82f6);box-shadow:0 0 0 3px #3b82f61a}.report-form textarea::-moz-placeholder{color:var(--text-tertiary, #94a3b8)}.report-form textarea::placeholder{color:var(--text-tertiary, #94a3b8)}.report-form textarea:disabled{background:var(--bg-secondary, #f8fafc);cursor:not-allowed}.report-form .character-count{text-align:right;font-size:12px;color:var(--text-tertiary, #94a3b8);margin-top:4px}.report-form .report-error{padding:10px 12px;background:var(--error-light, #fef2f2);border:1px solid var(--error-color, #ef4444);border-radius:6px;color:var(--error-color, #ef4444);font-size:13px;margin-top:12px}.report-form .report-actions{margin-top:16px}.report-form .submit-report-btn{width:100%;padding:12px 20px;background:var(--primary-color, #3b82f6);border:none;border-radius:8px;color:#fff;font-size:14px;font-weight:500;cursor:pointer;transition:background .15s ease}.report-form .submit-report-btn:hover:not(:disabled){background:var(--primary-hover, #2563eb)}.report-form .submit-report-btn:disabled{background:var(--text-tertiary, #94a3b8);cursor:not-allowed}.report-form .report-tip{text-align:center;font-size:12px;color:var(--text-tertiary, #94a3b8);margin-top:8px}.report-success{text-align:center;padding:40px 20px}.report-success .success-icon{color:var(--success-color, #10b981);margin-bottom:16px}.report-success h3{margin:0 0 8px;font-size:20px;font-weight:600;color:var(--text-primary, #1e293b)}.report-success p{margin:0;font-size:14px;color:var(--text-secondary, #64748b)}.report-tips{padding:16px;background:var(--bg-secondary, #f8fafc);border-radius:8px}.report-tips h4{margin:0 0 12px;font-size:13px;font-weight:600;color:var(--text-primary, #1e293b)}.report-tips ul{margin:0;padding-left:20px}.report-tips li{font-size:13px;color:var(--text-secondary, #64748b);line-height:1.6}.my-reports-link{margin-top:20px;padding-top:20px;border-top:1px solid var(--border-color, #e2e8f0);text-align:center}.view-my-reports-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;background:transparent;border:1px solid var(--border-color, #e2e8f0);border-radius:6px;color:var(--text-secondary, #64748b);font-size:13px;cursor:pointer;transition:all .15s ease}.view-my-reports-btn:hover:not(:disabled){background:var(--bg-secondary, #f8fafc);border-color:var(--primary-color, #3b82f6);color:var(--primary-color, #3b82f6)}.view-my-reports-btn:disabled{opacity:.6;cursor:not-allowed}.my-reports-view{height:100%;display:flex;flex-direction:column}.my-reports-view h3{margin:0 0 16px;font-size:18px;font-weight:600;color:var(--text-primary, #1e293b)}.no-reports{text-align:center;padding:40px 20px;color:var(--text-secondary, #64748b)}.no-reports svg{color:var(--text-tertiary, #94a3b8);margin-bottom:12px}.no-reports p{margin:0;font-size:14px}.reports-list{display:flex;flex-direction:column;gap:12px;overflow-y:auto;flex:1}.report-item{padding:14px;background:var(--bg-secondary, #f8fafc);border:1px solid var(--border-color, #e2e8f0);border-radius:8px}.report-item-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.report-status-badge{display:inline-block;padding:3px 8px;border-radius:12px;font-size:11px;font-weight:500;color:#fff}.report-time{font-size:12px;color:var(--text-tertiary, #94a3b8)}.report-description{margin:0;font-size:14px;color:var(--text-primary, #1e293b);line-height:1.5;word-wrap:break-word}.report-review-notes{margin-top:10px;padding:10px 12px;background:var(--bg-primary, #ffffff);border-left:3px solid var(--primary-color, #3b82f6);border-radius:0 6px 6px 0;font-size:13px;color:var(--text-secondary, #64748b)}.report-review-notes strong{color:var(--text-primary, #1e293b)}.report-escalated{display:flex;align-items:center;gap:6px;margin-top:10px;padding:8px 10px;background:var(--success-light, #ecfdf5);border-radius:6px;font-size:12px;color:var(--success-color, #10b981)}.report-escalated svg{flex-shrink:0}@media(max-width:480px){.support-drawer{width:100%}.drawer-tabs{padding:0 8px}.drawer-tab{padding:10px 8px;font-size:12px}.drawer-content{padding:16px}.article-item{padding:10px}.article-content h4{font-size:13px}.shortcut-item{flex-direction:column;align-items:flex-start;gap:6px}}.support-drawer.open{animation:slideIn .3s ease}.help-button-container{position:fixed;display:flex;flex-direction:column;align-items:flex-end;gap:8px;z-index:1000;transition:transform .3s ease,opacity .3s ease}.help-button-container.bottom-right{bottom:88px;right:24px}.help-button-container.bottom-left{bottom:88px;left:24px;align-items:flex-start}.help-button-container.hidden{transform:translateY(200px);opacity:0;pointer-events:none}.help-button{position:relative;width:56px;height:56px;border-radius:50%;background:var(--primary-color, #3b82f6);border:none;color:#fff;cursor:pointer;box-shadow:0 4px 14px #3b82f666;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.help-button:hover{background:var(--primary-hover, #2563eb);transform:scale(1.05);box-shadow:0 6px 20px #3b82f680}.help-button:active{transform:scale(.98)}.help-button svg{stroke-width:2}.help-badge{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;padding:0 6px;background:var(--error-color, #ef4444);border-radius:10px;font-size:11px;font-weight:600;color:#fff;display:flex;align-items:center;justify-content:center}.help-minimize-btn{position:absolute;top:-8px;right:-8px;width:24px;height:24px;border-radius:50%;background:var(--bg-primary, #ffffff);border:1px solid var(--border-color, #e2e8f0);color:var(--text-secondary, #64748b);cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:all .15s ease}.help-button-container:hover .help-minimize-btn{opacity:1}.help-minimize-btn:hover{background:var(--bg-hover, #f8fafc);color:var(--text-primary, #1e293b)}.help-button-minimized{position:fixed;width:32px;height:32px;border-radius:50%;background:var(--bg-secondary, #f1f5f9);border:1px solid var(--border-color, #e2e8f0);color:var(--text-secondary, #64748b);cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:1000;transition:all .15s ease}.help-button-minimized.bottom-right{bottom:24px;right:24px}.help-button-minimized.bottom-left{bottom:24px;left:24px}.help-button-minimized:hover{background:var(--primary-color, #3b82f6);border-color:var(--primary-color, #3b82f6);color:#fff;transform:scale(1.1)}.help-shortcut-hint{background:var(--bg-primary, #ffffff);border:1px solid var(--border-color, #e2e8f0);border-radius:8px;padding:8px 12px;font-size:12px;color:var(--text-secondary, #64748b);box-shadow:0 2px 8px #00000014;opacity:0;transform:translateY(10px);transition:all .2s ease;pointer-events:none;white-space:nowrap}.help-button-container:hover .help-shortcut-hint{opacity:1;transform:translateY(0)}.help-shortcut-hint kbd{display:inline-block;padding:2px 6px;background:var(--bg-secondary, #f1f5f9);border:1px solid var(--border-color, #e2e8f0);border-radius:4px;font-family:monospace;font-size:11px;color:var(--text-primary, #1e293b)}@media(max-width:768px){.help-button-container{bottom:16px;right:16px}.help-button-container.bottom-left{left:16px}.help-button{width:48px;height:48px}.help-button svg{width:20px;height:20px}.help-shortcut-hint{display:none}.help-minimize-btn{opacity:1}}@keyframes helpButtonAppear{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.help-button-container{animation:helpButtonAppear .3s ease}.admin-issue-reports-panel.redesigned{padding:20px;max-width:1400px;margin:0 auto}.admin-issue-reports-panel .panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:12px}.admin-issue-reports-panel .header-title{display:flex;align-items:center;gap:12px}.admin-issue-reports-panel .header-title h2{margin:0;font-size:1.25rem;font-weight:600;color:#1e293b}.admin-issue-reports-panel .pending-badge{background:#fef3c7;color:#b45309;padding:4px 10px;border-radius:20px;font-size:.75rem;font-weight:600}.admin-issue-reports-panel .header-actions{display:flex;gap:8px;align-items:center}.admin-issue-reports-panel .filter-select{padding:8px 12px;border:1px solid #e2e8f0;border-radius:6px;font-size:.85rem;background:#fff;cursor:pointer}.admin-issue-reports-panel .refresh-btn{padding:8px 14px;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;font-size:.85rem;transition:all .15s}.admin-issue-reports-panel .refresh-btn:hover{background:#e2e8f0}.admin-issue-reports-panel .module-stats{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap;align-items:center}.admin-issue-reports-panel .stat-chip{display:flex;align-items:center;gap:8px;padding:8px 14px;border-radius:20px;border:2px solid transparent;background:var(--chip-bg);cursor:pointer;transition:all .15s;font-size:.85rem}.admin-issue-reports-panel .stat-chip:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.admin-issue-reports-panel .stat-chip.active{border-color:var(--chip-color);box-shadow:0 2px 8px #00000026}.admin-issue-reports-panel .stat-chip.empty{opacity:.5}.admin-issue-reports-panel .stat-label{color:var(--chip-color);font-weight:500}.admin-issue-reports-panel .stat-count{background:var(--chip-color);color:#fff;padding:2px 8px;border-radius:10px;font-size:.75rem;font-weight:600;min-width:20px;text-align:center}.admin-issue-reports-panel .clear-filter{padding:6px 12px;background:#fee2e2;color:#dc2626;border:none;border-radius:20px;font-size:.8rem;cursor:pointer;font-weight:500}.admin-issue-reports-panel .clear-filter:hover{background:#fecaca}.admin-issue-reports-panel .bulk-actions{display:flex;align-items:center;gap:16px;padding:12px 16px;background:#f8fafc;border-radius:8px;margin-bottom:16px}.admin-issue-reports-panel .select-all{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.9rem;color:#475569}.admin-issue-reports-panel .select-all input{width:16px;height:16px;cursor:pointer}.admin-issue-reports-panel .create-ticket-btn{padding:8px 16px;background:#3b82f6;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.85rem;font-weight:500;transition:background .15s}.admin-issue-reports-panel .create-ticket-btn:hover{background:#2563eb}.admin-issue-reports-panel .reports-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}.admin-issue-reports-panel .report-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:14px;cursor:pointer;transition:all .15s;position:relative}.admin-issue-reports-panel .report-card:hover{border-color:#cbd5e1;box-shadow:0 2px 8px #0000000f}.admin-issue-reports-panel .report-card.selected{border-color:#3b82f6;background:#eff6ff}.admin-issue-reports-panel .report-card.expanded{grid-column:span 1}.admin-issue-reports-panel .card-header{display:flex;align-items:center;gap:8px;margin-bottom:10px}.admin-issue-reports-panel .card-checkbox{width:16px;height:16px;cursor:pointer;flex-shrink:0}.admin-issue-reports-panel .module-badge{padding:3px 10px;border-radius:12px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.3px;border:1px solid}.admin-issue-reports-panel .report-time{margin-left:auto;font-size:.75rem;color:#94a3b8}.admin-issue-reports-panel .status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.admin-issue-reports-panel .card-reporter{display:flex;align-items:center;gap:8px;margin-bottom:8px}.admin-issue-reports-panel .reporter-name{font-weight:600;font-size:.9rem;color:#1e293b}.admin-issue-reports-panel .reporter-role{font-size:.75rem;color:#64748b;background:#f1f5f9;padding:2px 8px;border-radius:10px}.admin-issue-reports-panel .card-description{font-size:.85rem;color:#475569;line-height:1.5;margin:0 0 10px}.admin-issue-reports-panel .card-details{margin-top:12px;padding-top:12px;border-top:1px solid #e2e8f0}.admin-issue-reports-panel .detail-item{display:flex;gap:8px;margin-bottom:6px;font-size:.8rem}.admin-issue-reports-panel .detail-label{color:#64748b;font-weight:500;flex-shrink:0}.admin-issue-reports-panel .detail-value{color:#334155;word-break:break-word}.admin-issue-reports-panel .detail-item.error .detail-value{color:#dc2626}.admin-issue-reports-panel .card-actions{display:flex;gap:6px;margin-top:12px;padding-top:12px;border-top:1px solid #e2e8f0}.admin-issue-reports-panel .card-actions .action-btn{flex:1;padding:6px 10px;border:1px solid #e2e8f0;border-radius:6px;background:#fff;cursor:pointer;font-size:.75rem;font-weight:500;transition:all .15s}.admin-issue-reports-panel .card-actions .action-btn.review{color:#10b981}.admin-issue-reports-panel .card-actions .action-btn.review:hover{background:#ecfdf5;border-color:#10b981}.admin-issue-reports-panel .card-actions .action-btn.dismiss{color:#ef4444}.admin-issue-reports-panel .card-actions .action-btn.dismiss:hover{background:#fef2f2;border-color:#ef4444}.admin-issue-reports-panel .card-actions .action-btn.escalate{color:#3b82f6}.admin-issue-reports-panel .card-actions .action-btn.escalate:hover{background:#eff6ff;border-color:#3b82f6}.admin-issue-reports-panel .expand-indicator{position:absolute;bottom:8px;right:12px;font-size:.65rem;color:#94a3b8}.admin-issue-reports-panel .report-card.reviewed{opacity:.7;border-left:3px solid #10b981}.admin-issue-reports-panel .report-card.dismissed{opacity:.5;border-left:3px solid #6b7280}.admin-issue-reports-panel .report-card.escalated{border-left:3px solid #8b5cf6}.admin-issue-reports-panel .loading-state,.admin-issue-reports-panel .error-state,.admin-issue-reports-panel .empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px;color:#64748b;gap:12px}.admin-issue-reports-panel .empty-icon{font-size:2.5rem;opacity:.5}.admin-issue-reports-panel .error-state button{padding:8px 16px;background:#3b82f6;color:#fff;border:none;border-radius:6px;cursor:pointer}.admin-issue-reports-panel .modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.admin-issue-reports-panel .modal{background:#fff;padding:24px;border-radius:12px;max-width:400px;width:90%;box-shadow:0 20px 40px #0003}.admin-issue-reports-panel .modal h3{margin:0 0 8px;font-size:1.1rem}.admin-issue-reports-panel .modal p{color:#64748b;margin:0 0 16px;font-size:.9rem}.admin-issue-reports-panel .modal textarea{width:100%;padding:12px;border:1px solid #e2e8f0;border-radius:8px;resize:vertical;font-size:.9rem;margin-bottom:16px}.admin-issue-reports-panel .modal-actions{display:flex;gap:12px;justify-content:flex-end}.admin-issue-reports-panel .modal .cancel-btn{padding:8px 16px;background:#f1f5f9;border:none;border-radius:6px;cursor:pointer}.admin-issue-reports-panel .modal .confirm-btn{padding:8px 16px;background:#ef4444;color:#fff;border:none;border-radius:6px;cursor:pointer}.admin-issue-reports-panel .modal .confirm-btn:disabled{opacity:.6;cursor:not-allowed}@media(max-width:768px){.admin-issue-reports-panel .reports-grid{grid-template-columns:1fr}.admin-issue-reports-panel .module-stats{flex-wrap:nowrap;overflow-x:auto;padding-bottom:8px}.admin-issue-reports-panel .stat-chip{flex-shrink:0}}.admin-tickets-panel{background:var(--bg-primary, #ffffff);border-radius:8px;border:1px solid var(--border-color, #e2e8f0);height:100%;display:flex;flex-direction:column}.admin-tickets-panel .panel-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border-color, #e2e8f0);flex-shrink:0}.admin-tickets-panel .header-title{display:flex;align-items:center;gap:12px}.admin-tickets-panel .header-title h2{margin:0;font-size:18px;font-weight:600;color:var(--text-primary, #1e293b)}.admin-tickets-panel .active-badge{background:var(--primary-color, #3b82f6);color:#fff;font-size:12px;font-weight:600;padding:4px 10px;border-radius:12px}.admin-tickets-panel .header-actions{display:flex;gap:12px;align-items:center}.admin-tickets-panel .filter-select{padding:8px 12px;border:1px solid var(--border-color, #e2e8f0);border-radius:6px;font-size:14px;background:var(--bg-primary, #ffffff);cursor:pointer}.admin-tickets-panel .refresh-btn{padding:8px 16px;background:var(--bg-secondary, #f1f5f9);border:1px solid var(--border-color, #e2e8f0);border-radius:6px;font-size:14px;color:var(--text-secondary, #64748b);cursor:pointer;transition:all .15s ease}.admin-tickets-panel .refresh-btn:hover:not(:disabled){background:var(--bg-hover, #e2e8f0)}.admin-tickets-panel .panel-content{display:flex;flex:1;overflow:hidden}.admin-tickets-panel .tickets-list-section{width:400px;border-right:1px solid var(--border-color, #e2e8f0);overflow-y:auto;flex-shrink:0}.admin-tickets-panel .tickets-list{display:flex;flex-direction:column}.admin-tickets-panel .ticket-item{padding:16px 20px;border-bottom:1px solid var(--border-color, #e2e8f0);cursor:pointer;transition:background .15s ease}.admin-tickets-panel .ticket-item:hover{background:var(--bg-hover, #f8fafc)}.admin-tickets-panel .ticket-item.selected{background:var(--primary-bg, #eff6ff);border-left:3px solid var(--primary-color, #3b82f6)}.admin-tickets-panel .ticket-item.sla-breached{border-left:3px solid var(--error-color, #ef4444)}.admin-tickets-panel .ticket-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.admin-tickets-panel .ticket-number{font-size:12px;font-weight:600;color:var(--text-tertiary, #94a3b8);font-family:monospace}.admin-tickets-panel .status-badge{font-size:10px;font-weight:600;color:#fff;padding:2px 8px;border-radius:4px;text-transform:uppercase}.admin-tickets-panel .status-badge.large{font-size:11px;padding:4px 10px}.admin-tickets-panel .ticket-subject{margin:0 0 8px;font-size:14px;font-weight:500;color:var(--text-primary, #1e293b);line-height:1.4}.admin-tickets-panel .ticket-meta{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;color:var(--text-tertiary, #94a3b8)}.admin-tickets-panel .ticket-meta .priority{font-weight:500}.admin-tickets-panel .sla-info{margin-top:8px;font-size:11px;color:var(--text-tertiary, #94a3b8)}.admin-tickets-panel .sla-info.approaching{color:var(--warning-color, #f59e0b);font-weight:500}.admin-tickets-panel .sla-info.overdue{color:var(--error-color, #ef4444);font-weight:600}.admin-tickets-panel .loading-state,.admin-tickets-panel .empty-state,.admin-tickets-panel .error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 20px;color:var(--text-secondary, #64748b);gap:12px}.admin-tickets-panel .empty-state svg{opacity:.5}.admin-tickets-panel .empty-state small{color:var(--text-tertiary, #94a3b8)}.admin-tickets-panel .ticket-detail-section{flex:1;display:flex;flex-direction:column;overflow:hidden}.admin-tickets-panel .detail-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border-color, #e2e8f0);flex-shrink:0}.admin-tickets-panel .detail-title{display:flex;align-items:center;gap:12px}.admin-tickets-panel .detail-title h3{margin:0;font-size:16px;font-weight:600;color:var(--text-primary, #1e293b);font-family:monospace}.admin-tickets-panel .close-detail{background:transparent;border:none;color:var(--text-tertiary, #94a3b8);cursor:pointer;padding:4px;border-radius:4px}.admin-tickets-panel .close-detail:hover{background:var(--bg-hover, #f8fafc);color:var(--text-primary, #1e293b)}.admin-tickets-panel .detail-content{flex:1;overflow-y:auto;padding:20px}.admin-tickets-panel .detail-subject{margin:0 0 16px;font-size:18px;font-weight:600;color:var(--text-primary, #1e293b)}.admin-tickets-panel .detail-meta{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px;margin-bottom:20px;padding:16px;background:var(--bg-secondary, #f8fafc);border-radius:8px}.admin-tickets-panel .meta-item{display:flex;flex-direction:column;gap:4px}.admin-tickets-panel .meta-label{font-size:11px;font-weight:600;color:var(--text-tertiary, #94a3b8);text-transform:uppercase;letter-spacing:.5px}.admin-tickets-panel .meta-value{font-size:14px;color:var(--text-primary, #1e293b)}.admin-tickets-panel .detail-description,.admin-tickets-panel .detail-section{margin-bottom:20px}.admin-tickets-panel .detail-description h5,.admin-tickets-panel .detail-section h5{margin:0 0 8px;font-size:13px;font-weight:600;color:var(--text-secondary, #64748b);text-transform:uppercase;letter-spacing:.5px}.admin-tickets-panel .detail-description p,.admin-tickets-panel .detail-section p{margin:0;font-size:14px;color:var(--text-primary, #1e293b);line-height:1.6;white-space:pre-wrap}.admin-tickets-panel .detail-section.resolution{padding:16px;background:var(--success-bg, #ecfdf5);border-radius:8px;border:1px solid var(--success-color, #10b981)}.admin-tickets-panel .detail-section.resolution h5{color:var(--success-color, #10b981)}.admin-tickets-panel .comments-section{margin-top:24px;padding-top:20px;border-top:1px solid var(--border-color, #e2e8f0)}.admin-tickets-panel .comments-section h5{margin:0 0 16px;font-size:14px;font-weight:600;color:var(--text-primary, #1e293b)}.admin-tickets-panel .comments-list{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.admin-tickets-panel .comment-item{padding:12px;background:var(--bg-secondary, #f8fafc);border-radius:8px}.admin-tickets-panel .comment-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.admin-tickets-panel .comment-author{font-size:13px;font-weight:500;color:var(--text-primary, #1e293b)}.admin-tickets-panel .comment-role{font-size:11px;color:var(--text-tertiary, #94a3b8);background:var(--bg-primary, #ffffff);padding:2px 6px;border-radius:4px}.admin-tickets-panel .comment-time{font-size:11px;color:var(--text-tertiary, #94a3b8);margin-left:auto}.admin-tickets-panel .comment-content{margin:0;font-size:14px;color:var(--text-primary, #1e293b);line-height:1.5}.admin-tickets-panel .loading-comments,.admin-tickets-panel .no-comments{text-align:center;padding:20px;color:var(--text-tertiary, #94a3b8);font-size:14px}.admin-tickets-panel .add-comment{display:flex;flex-direction:column;gap:12px}.admin-tickets-panel .add-comment textarea{padding:12px;border:1px solid var(--border-color, #e2e8f0);border-radius:8px;font-size:14px;font-family:inherit;resize:vertical}.admin-tickets-panel .add-comment textarea:focus{outline:none;border-color:var(--primary-color, #3b82f6);box-shadow:0 0 0 3px #3b82f61a}.admin-tickets-panel .add-comment button{align-self:flex-end;padding:10px 20px;background:var(--primary-color, #3b82f6);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background .15s ease}.admin-tickets-panel .add-comment button:hover:not(:disabled){background:var(--primary-hover, #2563eb)}.admin-tickets-panel .add-comment button:disabled{opacity:.5;cursor:not-allowed}.admin-tickets-panel .detail-actions{display:flex;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid var(--border-color, #e2e8f0)}.admin-tickets-panel .action-btn{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease}.admin-tickets-panel .action-btn.close{background:var(--success-color, #10b981);color:#fff;border:none}.admin-tickets-panel .action-btn.close:hover{background:#059669}.admin-tickets-panel .action-btn.reopen{background:transparent;border:1px solid var(--border-color, #e2e8f0);color:var(--text-secondary, #64748b)}.admin-tickets-panel .action-btn.reopen:hover{background:var(--bg-hover, #f8fafc)}@media(max-width:900px){.admin-tickets-panel .panel-content{flex-direction:column}.admin-tickets-panel .tickets-list-section{width:100%;border-right:none;border-bottom:1px solid var(--border-color, #e2e8f0);max-height:300px}.admin-tickets-panel .ticket-detail-section{max-height:none}}.create-ticket-form-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:fadeIn .15s ease}.create-ticket-form{background:var(--bg-primary, #ffffff);border-radius:12px;width:100%;max-width:700px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;animation:slideUp .2s ease}.form-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border-color, #e2e8f0);position:sticky;top:0;background:var(--bg-primary, #ffffff);z-index:1}.form-header h2{margin:0;font-size:20px;font-weight:600;color:var(--text-primary, #1e293b)}.linked-count{font-size:13px;color:var(--primary-color, #3b82f6);background:var(--primary-bg, #eff6ff);padding:4px 10px;border-radius:4px}.form-error{margin:16px 24px 0;padding:12px;background:var(--error-bg, #fef2f2);border:1px solid var(--error-color, #ef4444);border-radius:6px;color:var(--error-text, #dc2626);font-size:14px}.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding:20px 24px 0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:0 24px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group.full-width{padding:0 24px;margin-top:16px}.form-group label{font-size:13px;font-weight:500;color:var(--text-secondary, #64748b)}.form-group input,.form-group select,.form-group textarea{padding:10px 12px;border:1px solid var(--border-color, #e2e8f0);border-radius:6px;font-size:14px;font-family:inherit;background:var(--bg-primary, #ffffff);transition:border-color .15s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color, #3b82f6);box-shadow:0 0 0 3px #3b82f61a}.form-group select{cursor:pointer}.char-count{font-size:11px;color:var(--text-tertiary, #94a3b8);text-align:right}.linked-reports-preview{margin:20px 24px 0;padding:16px;background:var(--bg-secondary, #f8fafc);border-radius:8px;border:1px solid var(--border-color, #e2e8f0)}.linked-reports-preview h4{margin:0 0 12px;font-size:13px;font-weight:600;color:var(--text-secondary, #64748b);text-transform:uppercase;letter-spacing:.5px}.linked-list{display:flex;flex-direction:column;gap:8px}.linked-report{display:flex;flex-direction:column;gap:2px;padding:8px 12px;background:var(--bg-primary, #ffffff);border-radius:6px;border:1px solid var(--border-color, #e2e8f0)}.linked-report .reporter{font-size:12px;font-weight:500;color:var(--text-primary, #1e293b)}.linked-report .description{font-size:12px;color:var(--text-secondary, #64748b)}.form-actions{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid var(--border-color, #e2e8f0);margin-top:20px;position:sticky;bottom:0;background:var(--bg-primary, #ffffff)}.form-actions button{padding:10px 24px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease}.cancel-btn{background:transparent;border:1px solid var(--border-color, #e2e8f0);color:var(--text-secondary, #64748b)}.cancel-btn:hover:not(:disabled){background:var(--bg-hover, #f8fafc)}.submit-btn{background:var(--primary-color, #3b82f6);border:none;color:#fff}.submit-btn:hover:not(:disabled){background:var(--primary-hover, #2563eb)}.submit-btn:disabled,.cancel-btn:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.create-ticket-form{max-height:100vh;border-radius:0}.form-grid,.form-row{grid-template-columns:1fr}.form-header{flex-direction:column;gap:8px;align-items:flex-start}}.admin-support-view{height:100%;display:flex;flex-direction:column}.admin-support-tabs{display:flex;gap:4px;padding:12px 20px;border-bottom:1px solid var(--border-color, #e2e8f0);background:var(--bg-primary, #ffffff)}.admin-support-tabs .tab-btn{display:flex;align-items:center;gap:8px;padding:10px 16px;border:none;background:transparent;border-radius:6px;font-size:14px;font-weight:500;color:var(--text-secondary, #64748b);cursor:pointer;transition:all .15s ease}.admin-support-tabs .tab-btn:hover{background:var(--bg-hover, #f1f5f9);color:var(--text-primary, #1e293b)}.admin-support-tabs .tab-btn.active{background:var(--primary-light, #eff6ff);color:var(--primary-color, #3b82f6)}.admin-support-tabs .tab-btn svg{flex-shrink:0}.admin-support-content{flex:1;overflow:hidden}.admin-support-content>*{height:100%}.support-dashboard{padding:24px;max-width:1600px;margin:0 auto}.support-dashboard.loading,.support-dashboard.error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px}.support-dashboard.error button{padding:8px 16px;background:var(--primary-color, #3b82f6);color:#fff;border:none;border-radius:6px;cursor:pointer}.dashboard-stats{display:flex;flex-wrap:nowrap;gap:16px;margin-bottom:24px;width:100%;box-sizing:border-box}.stat-card{flex:1 1 0;min-width:0;max-width:none;background:var(--bg-primary, #ffffff);border:1px solid var(--border-color, #e2e8f0);border-radius:8px;padding:16px;text-align:center;display:flex;flex-direction:column;gap:4px;box-sizing:border-box}.stat-card .stat-value{font-size:28px;font-weight:700;color:var(--text-primary, #1e293b)}.stat-card .stat-label{font-size:12px;color:var(--text-secondary, #64748b);text-transform:uppercase;letter-spacing:.5px}.stat-card.urgent{border-color:var(--error-color, #ef4444);background:var(--error-bg, #fef2f2)}.stat-card.urgent .stat-value{color:var(--error-color, #ef4444)}.stat-card.warning{border-color:var(--warning-color, #f59e0b);background:var(--warning-bg, #fffbeb)}.stat-card.warning .stat-value{color:var(--warning-color, #f59e0b)}.stat-card.success{border-color:var(--success-color, #10b981);background:var(--success-bg, #ecfdf5)}.stat-card.success .stat-value{color:var(--success-color, #10b981)}.dashboard-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:24px}@media(max-width:1024px){.dashboard-row{grid-template-columns:1fr}}.priority-breakdown{background:var(--bg-primary, #ffffff);border:1px solid var(--border-color, #e2e8f0);border-radius:8px;padding:16px;margin-bottom:0}.priority-breakdown h3{margin:0 0 12px;font-size:14px;font-weight:600;color:var(--text-primary, #1e293b)}.priority-bars{display:flex;gap:24px;flex-wrap:wrap}.priority-bar-item{display:flex;align-items:center;gap:8px}.priority-indicator{font-size:16px;font-weight:700}.priority-label{font-size:13px;color:var(--text-secondary, #64748b)}.priority-count{font-size:14px;font-weight:600;color:var(--text-primary, #1e293b);background:var(--bg-secondary, #f1f5f9);padding:2px 8px;border-radius:4px}.dashboard-tabs{display:flex;gap:4px;margin-bottom:16px;border-bottom:1px solid var(--border-color, #e2e8f0);padding-bottom:0}.dashboard-tabs .tab{padding:10px 16px;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-secondary, #64748b);font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;gap:6px}.dashboard-tabs .tab:hover{color:var(--text-primary, #1e293b)}.dashboard-tabs .tab.active{color:var(--primary-color, #3b82f6);border-bottom-color:var(--primary-color, #3b82f6)}.breach-badge{background:var(--error-color, #ef4444);color:#fff;font-size:11px;font-weight:600;padding:2px 6px;border-radius:10px}.dashboard-filters{display:flex;gap:12px;margin-bottom:16px;flex-wrap:wrap}.dashboard-filters .search-input{flex:1;min-width:200px;padding:8px 12px;border:1px solid var(--border-color, #e2e8f0);border-radius:6px;font-size:14px}.dashboard-filters .search-input:focus{outline:none;border-color:var(--primary-color, #3b82f6);box-shadow:0 0 0 3px #3b82f61a}.dashboard-filters select{padding:8px 12px;border:1px solid var(--border-color, #e2e8f0);border-radius:6px;font-size:14px;background:var(--bg-primary, #ffffff);cursor:pointer;min-width:140px}.dashboard-filters select:focus{outline:none;border-color:var(--primary-color, #3b82f6)}.dashboard-content{display:flex;gap:24px;min-height:500px}.ticket-list{flex:1;display:flex;flex-direction:column;gap:8px;max-height:calc(100vh - 400px);overflow-y:auto}.ticket-list.with-detail{max-width:50%}.ticket-list .empty-state{text-align:center;padding:48px;color:var(--text-secondary, #64748b)}.ticket-item{background:var(--bg-primary, #ffffff);border:1px solid var(--border-color, #e2e8f0);border-radius:8px;padding:12px 16px;cursor:pointer;transition:all .15s ease}.ticket-item:hover{border-color:var(--primary-color, #3b82f6);box-shadow:0 2px 8px #0000000d}.ticket-item.selected{border-color:var(--primary-color, #3b82f6);background:var(--primary-bg, #eff6ff)}.ticket-item.breached{border-left:3px solid var(--error-color, #ef4444)}.ticket-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.ticket-number{font-size:12px;font-weight:600;color:var(--text-secondary, #64748b);font-family:monospace}.ticket-priority{font-size:14px;font-weight:700}.ticket-status{font-size:11px;font-weight:500;color:#fff;padding:2px 8px;border-radius:4px;margin-left:auto}.ticket-subject{font-size:14px;font-weight:500;color:var(--text-primary, #1e293b);margin-bottom:6px;line-height:1.4}.ticket-meta{display:flex;gap:12px;font-size:12px;color:var(--text-tertiary, #94a3b8);margin-bottom:6px}.ticket-clinic,.ticket-category{background:var(--bg-secondary, #f1f5f9);padding:2px 6px;border-radius:3px}.ticket-sla{margin-left:auto;font-weight:500}.ticket-sla.overdue{color:var(--error-color, #ef4444)}.ticket-sla.approaching{color:var(--warning-color, #f59e0b)}.ticket-footer{display:flex;justify-content:space-between;font-size:11px;color:var(--text-tertiary, #94a3b8)}.ticket-detail{flex:1;max-width:50%;background:var(--bg-primary, #ffffff);border:1px solid var(--border-color, #e2e8f0);border-radius:8px;padding:20px;max-height:calc(100vh - 400px);overflow-y:auto}.detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.detail-header h2{margin:0;font-size:18px;font-weight:600;color:var(--text-primary, #1e293b);font-family:monospace}.close-detail{background:transparent;border:none;font-size:24px;color:var(--text-tertiary, #94a3b8);cursor:pointer;padding:0;line-height:1}.close-detail:hover{color:var(--text-primary, #1e293b)}.detail-status-bar{display:flex;gap:12px;align-items:center;margin-bottom:16px}.status-badge{font-size:12px;font-weight:500;color:#fff;padding:4px 10px;border-radius:4px}.priority-badge{font-size:13px;font-weight:600;display:flex;align-items:center;gap:4px}.sla-breach-badge{background:var(--error-color, #ef4444);color:#fff;font-size:11px;font-weight:600;padding:4px 8px;border-radius:4px;animation:pulse 1.5s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.detail-subject{margin:0 0 20px;font-size:16px;font-weight:500;color:var(--text-primary, #1e293b);line-height:1.4}.detail-info{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid var(--border-color, #e2e8f0)}.info-row{display:flex;flex-direction:column;gap:2px}.info-label{font-size:11px;color:var(--text-tertiary, #94a3b8);text-transform:uppercase;letter-spacing:.5px}.info-value{font-size:13px;color:var(--text-primary, #1e293b)}.info-value.overdue{color:var(--error-color, #ef4444);font-weight:500}.detail-description,.detail-section{margin-bottom:16px}.detail-description h4,.detail-section h4{margin:0 0 8px;font-size:12px;font-weight:600;color:var(--text-secondary, #64748b);text-transform:uppercase;letter-spacing:.5px}.detail-description p,.detail-section p{margin:0;font-size:14px;color:var(--text-primary, #1e293b);line-height:1.6;white-space:pre-wrap}.detail-section.resolution{background:var(--success-bg, #ecfdf5);padding:12px;border-radius:6px;border:1px solid var(--success-color, #10b981)}.detail-section.resolution h4{color:var(--success-color, #10b981)}.detail-actions{margin-top:24px;padding-top:16px;border-top:1px solid var(--border-color, #e2e8f0)}.action-btn{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease}.action-btn:disabled{opacity:.5;cursor:not-allowed}.action-btn.assign{background:var(--primary-color, #3b82f6);color:#fff}.action-btn.assign:hover:not(:disabled){background:var(--primary-hover, #2563eb)}.action-btn.resolve{background:var(--success-color, #10b981);color:#fff}.action-btn.resolve:hover:not(:disabled){background:#059669}.action-btn.close{background:var(--text-secondary, #64748b);color:#fff}.action-btn.close:hover:not(:disabled){background:var(--text-primary, #1e293b)}.resolve-section{display:flex;flex-direction:column;gap:12px}.resolve-section textarea{width:100%;padding:12px;border:1px solid var(--border-color, #e2e8f0);border-radius:6px;font-size:14px;font-family:inherit;resize:vertical}.resolve-section textarea:focus{outline:none;border-color:var(--success-color, #10b981);box-shadow:0 0 0 3px #10b9811a}@media(max-width:1024px){.dashboard-content{flex-direction:column}.ticket-list,.ticket-list.with-detail{max-width:100%;max-height:300px}.ticket-detail{max-width:100%;max-height:none}}@media(max-width:768px){.support-dashboard{padding:16px}.dashboard-stats{flex-wrap:wrap}.dashboard-stats .stat-card{flex:1 1 calc(50% - 8px);min-width:calc(50% - 8px)}.dashboard-filters{flex-direction:column}.dashboard-filters select,.dashboard-filters .search-input{width:100%}.detail-info{grid-template-columns:1fr}}.compliance-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden;transition:all .2s ease}.compliance-card.loading,.compliance-card.error{min-height:120px}.compliance-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;cursor:pointer;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:1px solid #e2e8f0}.compliance-header:hover{background:linear-gradient(135deg,#f1f5f9,#e2e8f0)}.header-left{display:flex;align-items:center;gap:10px}.compliance-icon{font-size:1.5rem}.compliance-title{font-size:1rem;font-weight:600;color:#1e293b}.header-right{display:flex;align-items:center;gap:12px}.overall-score{display:flex;flex-direction:column;align-items:center;padding:6px 12px;border-radius:8px;background:#fff;box-shadow:0 1px 3px #0000001a}.score-value{font-size:1.5rem;font-weight:700;color:var(--score-color, #22c55e);line-height:1}.score-label{font-size:.65rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px;margin-top:2px}.expand-btn{background:none;border:none;color:#94a3b8;cursor:pointer;font-size:.75rem;padding:4px}.compliance-loading,.compliance-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;color:#64748b;gap:12px}.retry-btn{padding:6px 12px;background:#3b82f6;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.85rem}.retry-btn:hover{background:#2563eb}.compliance-progress{height:6px;background:#e2e8f0;margin:0}.progress-fill{height:100%;transition:width .5s ease;border-radius:0 3px 3px 0}.compliance-categories{padding:16px 20px;display:flex;flex-direction:column;gap:12px}.category{border-radius:8px;background:#f8fafc;overflow:hidden}.category.status-ok,.category.status-compliant{border-left:3px solid #22c55e}.category.status-warning{border-left:3px solid #f59e0b}.category.status-critical{border-left:3px solid #ef4444}.category-header{display:flex;align-items:center;padding:10px 12px;background:#fff;border-bottom:1px solid #f1f5f9}.category-status{margin-right:8px;font-size:.9rem}.category-name{flex:1;font-weight:600;color:#334155;font-size:.9rem}.category-score{font-weight:600;color:#64748b;font-size:.85rem}.category-items{padding:8px 12px}.compliance-item{display:flex;align-items:center;padding:6px 0;font-size:.85rem;border-bottom:1px solid #f1f5f9}.compliance-item:last-child{border-bottom:none}.item-icon{width:24px;font-size:.8rem}.item-label{flex:1;color:#475569}.item-value{color:#64748b;text-align:right}.compliance-item.status-ok .item-value{color:#16a34a}.compliance-item.status-warning .item-value{color:#d97706}.compliance-item.status-critical .item-value{color:#dc2626}.compliance-footer{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;background:#f8fafc;border-top:1px solid #e2e8f0}.last-checked{font-size:.75rem;color:#94a3b8}.refresh-btn{background:none;border:1px solid #e2e8f0;padding:6px 12px;border-radius:6px;cursor:pointer;font-size:.8rem;color:#64748b;display:flex;align-items:center;gap:4px;transition:all .15s ease}.refresh-btn:hover{background:#fff;border-color:#cbd5e1;color:#334155}.compliance-card.collapsed .compliance-header{border-bottom:none}@media(max-width:640px){.compliance-header{flex-wrap:wrap;gap:12px}.header-right{width:100%;justify-content:space-between}.category-header{flex-wrap:wrap}.compliance-item{flex-wrap:wrap;gap:4px}.item-value{width:100%;text-align:left;padding-left:24px;color:#64748b}}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px}.modal-content{background:#fff;border-radius:12px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;width:100%}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb}.modal-header h2{margin:0;font-size:20px;font-weight:600;color:#111827}.modal-close{background:none;border:none;font-size:28px;line-height:1;color:#9ca3af;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:background-color .2s,color .2s}.modal-close:hover{background-color:#f3f4f6;color:#374151}.modal-body{padding:24px}.modal-footer{display:flex;gap:12px;justify-content:flex-end;padding:16px 24px;border-top:1px solid #e5e7eb;background:#f9fafb;border-bottom-left-radius:12px;border-bottom-right-radius:12px}.btn{padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s,transform .1s}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:#3b82f6;color:#fff}.btn-primary:hover:not(:disabled){background:#2563eb}.btn-secondary{background:#e5e7eb;color:#374151}.btn-secondary:hover:not(:disabled){background:#d1d5db}@media(max-width:768px){.modal-content{max-height:95vh}.modal-header,.modal-body{padding:16px}.modal-footer{padding:12px 16px;flex-direction:column-reverse}.modal-footer .btn{width:100%}}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-primary-600) 0%,var(--color-primary-900) 100%);padding:var(--spacing-md)}.login-card{background:var(--color-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);padding:3rem;width:100%;max-width:450px}.login-header{text-align:center;margin-bottom:var(--spacing-xl)}.login-header h1{font-family:var(--font-heading);font-size:var(--font-size-h1);font-weight:var(--font-weight-bold);color:var(--color-primary-900);margin:0 0 var(--spacing-md)}.login-logo-wrapper{display:flex;justify-content:center;margin-bottom:var(--spacing-md)}.login-logo{max-height:200px;max-width:560px;-o-object-fit:contain;object-fit:contain}.login-header p{color:var(--color-neutral-500);margin:0;font-size:.9rem}.login-form{display:flex;flex-direction:column;gap:1.25rem}.form-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.form-group input{padding:.75rem 1rem;border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);font-size:1rem;transition:border-color var(--transition-normal),box-shadow var(--transition-normal)}.form-group input:focus{outline:none;border-color:var(--color-primary-900);box-shadow:0 0 0 3px #4a63b333}.form-group input:disabled{background:var(--color-neutral-50);cursor:not-allowed}.login-button{padding:.875rem 1.5rem;background:var(--color-primary-900);color:var(--color-white);border:none;border-radius:var(--radius-lg);font-size:1rem;font-weight:var(--font-weight-semibold);cursor:pointer;transition:background-color var(--transition-normal),transform .1s;margin-top:var(--spacing-sm)}.login-button:hover:not(:disabled){background:var(--color-primary-600)}.login-button:active:not(:disabled){transform:scale(.98)}.login-button:disabled{background:var(--color-neutral-500);cursor:not-allowed}.login-error{padding:.75rem 1rem;background:var(--color-error-light);color:var(--color-error);border-radius:var(--radius-lg);font-size:var(--font-size-body);border:1px solid var(--color-error)}.login-footer{margin-top:var(--spacing-lg);text-align:center}.login-footer p{color:var(--color-neutral-500);margin:0}.login-footer small{font-size:var(--font-size-caption)}.logout-modal-backdrop{position:fixed;inset:0;background-color:var(--modal-backdrop-color);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);animation:fadeIn .2s ease-out}.logout-modal{background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);max-width:400px;width:90%;animation:slideIn .2s ease-out}@keyframes slideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.logout-modal-header{padding:1.25rem 1.5rem 0;text-align:center}.logout-modal-header h2{margin:0;font-size:1.25rem;font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.logout-modal-body{padding:1rem 1.5rem;text-align:center}.logout-modal-body p{margin:0 0 .5rem;color:var(--color-neutral-900);font-size:.95rem;line-height:1.5}.logout-warning{color:var(--color-error);font-size:.875rem!important;font-weight:var(--font-weight-medium)}.logout-modal-footer{padding:1rem 1.5rem 1.25rem;display:flex;justify-content:flex-end;gap:.75rem}.logout-modal-footer button{padding:.625rem 1.25rem;border-radius:var(--radius-md);font-size:.875rem;font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-normal)}.cancel-button{background:var(--color-white);border:1px solid var(--color-neutral-300);color:var(--color-neutral-700)}.cancel-button:hover:not(:disabled){background:var(--color-neutral-50);border-color:var(--color-neutral-500)}.confirm-button{background:var(--color-error);border:1px solid var(--color-error);color:var(--color-white)}.confirm-button:hover:not(:disabled){background:var(--color-error-hover);border-color:var(--color-error-hover)}@media(max-width:480px){.logout-modal{width:95%;margin:1rem}.logout-modal-footer{flex-direction:column-reverse}.logout-modal-footer button{width:100%}}.nav-dropdown{position:relative}.nav-dropdown-trigger{display:flex;align-items:center;gap:.5rem;padding:1rem 1.25rem;color:#a0aec0;background:transparent;border:none;text-decoration:none;font-size:.875rem;font-weight:500;border-bottom:3px solid transparent;cursor:pointer;transition:color .2s,border-color .2s;white-space:nowrap}.nav-dropdown-trigger:hover{color:#fff}.nav-dropdown-trigger:focus,.nav-dropdown-trigger:focus-visible{outline:none;box-shadow:none}.nav-dropdown-trigger.active{color:#fff;border-bottom-color:#3182ce}.nav-dropdown.open .nav-dropdown-trigger{color:#fff;background:#ffffff1a}.nav-dropdown-arrow{display:flex;align-items:center;transition:transform .2s}.nav-dropdown.open .nav-dropdown-arrow{transform:rotate(180deg)}.nav-dropdown-menu{position:absolute;top:100%;left:0;min-width:200px;background:linear-gradient(135deg,var(--color-primary-600) 0%,var(--color-primary-900) 100%);border-radius:0 0 8px 8px;box-shadow:0 4px 12px #0000004d;z-index:1000;padding:.5rem 0;animation:dropdownFadeIn .15s ease-out}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.nav-dropdown-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.625rem 1rem;color:#a0aec0;background:transparent;border:none;text-align:left;font-size:.875rem;cursor:pointer;transition:background .15s,color .15s}.nav-dropdown-item:hover:not(.disabled){background:#ffffff1a;color:#fff}.nav-dropdown-item.active{background:#3182ce33;color:#fff}.nav-dropdown-item.disabled{opacity:.5;cursor:not-allowed}.nav-dropdown-item-label{flex:1}.nav-dropdown-divider{height:1px;background:#ffffff1a;margin:.5rem 0}.nav-badge{font-size:.6875rem;font-weight:700;padding:.125rem .5rem;border-radius:10px;background:#3182ce;color:#fff;min-width:18px;text-align:center}.nav-badge.small{font-size:.625rem;padding:.1rem .375rem;min-width:16px}.nav-badge.muted{background:#4a5568}.nav-badge.warning{background:#d69e2e}.nav-badge.highlight{background:#38a169}.nav-dropdown.superadmin .nav-dropdown-trigger{background:#ffffff1a;border-radius:4px 4px 0 0;margin-right:.25rem}.nav-dropdown.superadmin .nav-dropdown-trigger:hover{background:#ffffff26}.nav-dropdown.superadmin .nav-dropdown-trigger.active,.nav-dropdown.superadmin.open .nav-dropdown-trigger{background:#fff3;border-bottom-color:#667eea}.patient-preview-overlay{position:fixed;inset:0;background:#0006;display:flex;justify-content:flex-end;z-index:1000;animation:fadeIn .2s ease-out}.patient-preview-panel{width:480px;max-width:90vw;height:100%;background:var(--color-white);box-shadow:-4px 0 20px #00000026;display:flex;flex-direction:column;animation:slideIn .3s ease-out}.preview-header{display:flex;align-items:flex-start;justify-content:space-between;padding:20px 24px;background:linear-gradient(135deg,var(--color-primary-900),var(--color-primary-800));color:var(--color-white)}.preview-header .header-content{flex:1}.preview-header .queue-badge{display:inline-block;padding:4px 12px;background:#fff3;border-radius:20px;font-size:13px;font-weight:600;margin-bottom:8px}.preview-header .patient-name-title{margin:0 0 6px;font-size:1.5rem;font-weight:600;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.preview-header .visit-reason-header{font-size:14px;opacity:.9;margin-top:4px}.preview-header .close-btn{width:32px;height:32px;background:#ffffff26;border:none;border-radius:8px;color:var(--color-white);font-size:24px;line-height:1;cursor:pointer;transition:background .2s;flex-shrink:0}.preview-header .close-btn:hover{background:#ffffff40}.preview-content{flex:1;overflow-y:auto;padding:20px 24px}.loading-state,.error-state{padding:40px 20px;text-align:center;color:var(--color-neutral-500)}.error-state{color:var(--color-error-700)}.error-state button{margin-top:16px;padding:8px 16px;background:var(--color-primary-700);color:#fff;border:none;border-radius:6px;cursor:pointer}.preview-section{margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--color-neutral-200)}.preview-section:last-child{border-bottom:none;margin-bottom:0}.preview-section.critical{background:var(--color-error-50);margin-left:-24px;margin-right:-24px;padding:16px 24px;border-radius:0;border-bottom:none;margin-bottom:16px}.preview-section .section-title{margin:0 0 12px;font-size:13px;font-weight:600;color:var(--color-neutral-500);text-transform:uppercase;letter-spacing:.5px;display:flex;align-items:center;gap:8px}.preview-section.critical .section-title{color:var(--color-error-700)}.preview-section .section-title .alert-badge{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;background:var(--color-error-600);color:#fff;border-radius:50%;font-size:12px;font-weight:700}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px 20px}.info-item{display:flex;flex-direction:column;gap:2px}.info-item .label{font-size:11px;font-weight:600;color:var(--color-neutral-400);text-transform:uppercase;letter-spacing:.3px}.info-item .value{font-size:14px;color:var(--color-neutral-800)}.allergy-list{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:8px}.allergy-item{display:inline-block;padding:6px 12px;background:var(--color-error-100);color:var(--color-error-800);border-radius:20px;font-size:13px;font-weight:500;border:1px solid var(--color-error-200)}.conditions-list{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:8px}.condition-item{display:inline-block;padding:6px 12px;background:var(--color-warning-100);color:var(--color-warning-800);border-radius:20px;font-size:13px;font-weight:500;border:1px solid var(--color-warning-200)}.panel-section{background:var(--color-info-light);margin-left:-24px;margin-right:-24px;padding:16px 24px;border-radius:0;border-bottom:none}.panel-section .section-title{color:var(--color-primary-800)}.visit-history-list{display:flex;flex-direction:column;gap:10px}.visit-history-item{display:flex;align-items:center;gap:16px;padding:10px 14px;background:var(--color-neutral-50);border-radius:8px;border:1px solid var(--color-neutral-200)}.visit-history-item .visit-date{font-size:12px;font-weight:600;color:var(--color-neutral-500);min-width:80px}.visit-history-item .visit-details{flex:1;display:flex;align-items:center;justify-content:space-between;gap:12px}.visit-history-item .visit-reason{font-size:13px;color:var(--color-neutral-700)}.visit-history-item .visit-status{font-size:10px;font-weight:600;text-transform:uppercase;padding:3px 8px;border-radius:4px;background:var(--color-neutral-200);color:var(--color-neutral-600)}.visit-history-item .visit-status.completed{background:var(--color-success-100);color:var(--color-success-700)}.visit-history-item .visit-status.cancelled,.visit-history-item .visit-status.no_show{background:var(--color-error-100);color:var(--color-error-700)}.no-data{margin:0;color:var(--color-neutral-400);font-size:13px;font-style:italic}.patient-remark{margin:0;padding:12px;background:var(--color-neutral-50);border-radius:8px;font-size:13px;color:var(--color-neutral-700);line-height:1.5}.preview-actions{display:flex;gap:12px;padding:16px 24px;background:var(--color-neutral-50);border-top:1px solid var(--color-neutral-200)}.preview-actions .btn-secondary{flex:1;padding:12px 20px;background:var(--color-white);color:var(--color-neutral-600);border:1px solid var(--color-neutral-300);border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.preview-actions .btn-secondary:hover{background:var(--color-neutral-100);color:var(--color-neutral-800)}.preview-actions .btn-primary{flex:2;padding:12px 20px;background:var(--color-success-600);color:var(--color-white);border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.preview-actions .btn-primary:hover:not(:disabled){background:var(--color-success-700)}.preview-actions .btn-primary:disabled{background:var(--color-neutral-300);cursor:not-allowed}.preview-actions .start-consultation-btn{background:var(--color-success-600)}.preview-actions .start-consultation-btn:hover:not(:disabled){background:var(--color-success-700)}@media(max-width:540px){.patient-preview-panel{width:100%;max-width:100%}.info-grid{grid-template-columns:1fr}.preview-header .patient-name-title{font-size:1.25rem}.preview-actions{flex-direction:column}.preview-actions .btn-secondary,.preview-actions .btn-primary{flex:none;width:100%}}.patient-link{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;margin:-2px -6px;background:transparent;border:none;border-radius:var(--radius-sm, 4px);color:var(--color-primary-600, #2563eb);font-size:inherit;font-weight:500;text-decoration:none;cursor:pointer;transition:all .15s ease}.patient-link:hover{background:var(--color-primary-50, #eff6ff);color:var(--color-primary-700, #1d4ed8);text-decoration:underline}.patient-link:focus{outline:2px solid var(--color-primary-300, #93c5fd);outline-offset:1px}.patient-link:active{background:var(--color-primary-100, #dbeafe)}.patient-link .patient-icon{font-size:.875em;opacity:.7}.patient-link .patient-name{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.patient-name-text{color:var(--color-neutral-700, #374151);font-weight:500}.patient-return-nav{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:var(--color-neutral-100, #f3f4f6);border:1px solid var(--color-neutral-200, #e5e7eb);border-radius:var(--radius-md, 6px);color:var(--color-neutral-700, #374151);font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease}.patient-return-nav:hover{background:var(--color-neutral-200, #e5e7eb);color:var(--color-neutral-800, #1f2937)}.patient-return-nav:focus{outline:2px solid var(--color-primary-300, #93c5fd);outline-offset:1px}.patient-return-nav .return-icon{font-size:1.1em}td .patient-link{display:flex;width:100%;margin:0;padding:4px 8px}.patient-link.compact{padding:1px 4px;margin:-1px -4px;font-size:.9em}.patient-link.subtle{color:var(--color-neutral-700, #374151)}.patient-link.subtle:hover{color:var(--color-primary-600, #2563eb)}.queue-module{display:flex;flex-direction:column;gap:var(--spacing-lg);width:100%;box-sizing:border-box}.module-error .error-hint{color:var(--color-neutral-600);font-size:var(--font-size-sm);margin-top:var(--spacing-xs)}.module-error .error-details{color:var(--color-neutral-400);font-size:var(--font-size-xs);font-family:monospace;margin-top:var(--spacing-sm)}.queue-summary{display:flex;flex-wrap:nowrap;gap:var(--spacing-md);width:100%;box-sizing:border-box}.queue-summary .summary-stat{flex:1 1 0;min-width:0;max-width:none}.summary-stat{background:var(--color-white);border-radius:10px;padding:var(--spacing-md);text-align:center;box-shadow:var(--shadow-sm);border-left:4px solid var(--color-neutral-200);box-sizing:border-box}.summary-stat .stat-number{display:block;font-size:var(--font-size-h2);font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.summary-stat .stat-label{font-size:var(--font-size-caption);color:var(--color-neutral-500);text-transform:uppercase;letter-spacing:.05em}.summary-stat.in-queue{border-left-color:var(--color-primary-900);transition:all var(--transition-fast)}.summary-stat.in-queue:hover{border:1px solid var(--color-primary-900);border-left-width:4px}.summary-stat.with-doctor{border-left-color:var(--color-success);transition:all var(--transition-fast)}.summary-stat.with-doctor:hover{border:1px solid var(--color-success);border-left-width:4px}.summary-stat.avg-wait{border-left-color:var(--color-warning);transition:all var(--transition-fast)}.summary-stat.avg-wait:hover{border:1px solid var(--color-warning);border-left-width:4px}.summary-stat.longest-wait{border-left-color:var(--color-error);transition:all var(--transition-fast)}.summary-stat.longest-wait:hover{border:1px solid var(--color-error);border-left-width:4px}.summary-stat.completed{border-left-color:var(--color-info);transition:all var(--transition-fast)}.summary-stat.completed:hover{border:1px solid var(--color-info);border-left-width:4px}.summary-stat.warning{border-left-color:var(--color-warning)}.summary-stat.highlight{border-left-color:var(--color-success);transition:all var(--transition-fast)}.summary-stat.highlight:hover{border:1px solid var(--color-success);border-left-width:4px}.peak-hour-banner{display:flex;align-items:center;gap:.875rem;padding:.875rem var(--spacing-md);border-radius:var(--radius-lg);margin-bottom:var(--spacing-sm)}.peak-hour-banner.peak-now{background:linear-gradient(135deg,#fef2f2 0%,var(--color-error-light) 100%);border:1px solid #fecaca}.peak-hour-banner.peak-approaching{background:linear-gradient(135deg,#fffbeb 0%,var(--color-warning-light) 100%);border:1px solid #fcd34d}.peak-hour-banner .peak-icon{font-size:var(--font-size-h2);flex-shrink:0}.peak-hour-banner .peak-content{display:flex;flex-direction:column;gap:.125rem}.peak-hour-banner .peak-title{font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-warning-hover)}.peak-hour-banner.peak-now .peak-title{color:var(--color-error)}.peak-hour-banner .peak-detail{font-size:.8125rem;color:#78716c}.peak-hour-banner.peak-now .peak-detail{color:#991b1b}.queue-sections{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-lg)}.queue-section{background:var(--color-white);border-radius:var(--radius-xl);padding:1.25rem;box-shadow:var(--shadow-sm);display:flex;flex-direction:column}.section-header{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.section-title{display:flex;align-items:center;gap:.75rem;margin:0;font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.section-actions{flex-shrink:0}.bulk-mode-btn{padding:.375rem .75rem;background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:var(--font-size-caption);color:var(--color-neutral-700);cursor:pointer;transition:all var(--transition-normal)}.bulk-mode-btn:hover{background:var(--color-neutral-50);border-color:var(--color-neutral-300)}.bulk-mode-btn.cancel{background:#fef2f2;border-color:#fecaca;color:var(--color-error)}.bulk-mode-btn.cancel:hover{background:var(--color-error-light)}.bulk-action-bar{display:flex;align-items:center;justify-content:space-between;padding:.75rem var(--spacing-md);background:#f8fafc;border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);margin-bottom:.75rem}.select-all-checkbox{display:flex;align-items:center;gap:var(--spacing-sm);font-size:.8125rem;color:var(--color-neutral-700);cursor:pointer}.select-all-checkbox input{width:16px;height:16px;cursor:pointer}.bulk-actions{display:flex;align-items:center;gap:var(--spacing-md)}.selected-count{font-size:.8125rem;color:var(--color-neutral-500)}.bulk-action-btn{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);border:none;font-size:.8125rem;font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-normal)}.bulk-action-btn.no-show{background:var(--color-error);color:var(--color-white)}.bulk-action-btn.no-show:hover:not(:disabled){background:var(--color-error-hover)}.bulk-action-btn:disabled{background:var(--color-neutral-500);cursor:not-allowed}.bulk-checkbox{flex-shrink:0}.bulk-checkbox input{width:18px;height:18px;cursor:pointer}.queue-card.bulk-selected{background:var(--color-info-light);border-color:#3b82f6}.title-icon{width:32px;height:32px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;font-weight:var(--font-weight-bold);font-size:var(--font-size-body);color:var(--color-white)}.title-icon.waiting{background:linear-gradient(135deg,var(--color-primary-900) 0%,var(--color-primary-600) 100%)}.title-icon.with-doctor{background:linear-gradient(135deg,var(--color-success) 0%,var(--color-success-hover) 100%)}.queue-list{display:flex;flex-direction:column;gap:.75rem;flex:1;overflow-y:auto;max-height:400px}.empty-queue{text-align:center;padding:var(--spacing-xl);color:var(--color-neutral-500);font-size:var(--font-size-body)}.queue-card{display:flex;align-items:center;gap:var(--spacing-md);padding:.875rem;border-radius:var(--radius-lg);border:1px solid var(--color-neutral-200);cursor:pointer;transition:all var(--transition-normal)}.queue-card:hover{border-color:var(--color-primary-900);background:var(--color-neutral-50)}.queue-card.selected{border-color:var(--color-primary-900);background:var(--color-info-light)}.queue-card.priority-urgent{border-left:4px solid var(--color-warning)}.queue-card.priority-emergency{border-left:4px solid var(--color-error);background:#fff5f5}.queue-card.long-wait{background:#fef2f2;border-color:#fca5a5}.queue-card.long-wait:hover{background:#fee2e2;border-color:var(--color-error)}.queue-number{font-size:1.25rem;font-weight:var(--font-weight-bold);color:var(--color-neutral-900);min-width:40px}.queue-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.25rem}.patient-name-row{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md)}.queue-info .patient-name{font-weight:var(--font-weight-semibold);color:var(--color-neutral-900);font-size:var(--font-size-body)}.patient-initials{font-weight:var(--font-weight-bold);color:var(--color-neutral-900);font-size:var(--font-size-body);min-width:40px}.doctor-assigned{font-size:var(--font-size-sm);color:var(--color-neutral-500)}.queue-info .wait-time{font-size:var(--font-size-sm);color:var(--color-neutral-500);font-weight:var(--font-weight-medium)}.queue-info .wait-time.long{color:var(--color-error);font-weight:var(--font-weight-bold)}.wait-time{font-size:var(--font-size-body);color:var(--color-warning);font-weight:var(--font-weight-medium);min-width:70px;text-align:right}.consultation-status{font-size:var(--font-size-body);color:var(--color-success);font-weight:var(--font-weight-medium)}.patient-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:.125rem}.patient-name{font-weight:var(--font-weight-semibold);color:var(--color-neutral-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.patient-phone{font-size:var(--font-size-caption);color:#64748b;font-family:monospace;margin-bottom:.125rem}.visit-reason{font-size:.8125rem;color:var(--color-neutral-500);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.queue-info .doctor-name{font-size:var(--font-size-caption);color:var(--color-success);margin-top:var(--spacing-xs)}.doctors-section{min-height:150px}.doctors-list{display:flex;flex-direction:column;gap:.75rem}.doctor-card{display:flex;align-items:center;justify-content:space-between;padding:.875rem;border-radius:var(--radius-lg);border:1px solid var(--color-neutral-200);transition:all var(--transition-normal)}.doctor-card.available{background:#f0fdf4;border-color:#bbf7d0}.doctor-card.busy{background:#fefce8;border-color:#fef08a}.doctor-card .doctor-info{display:flex;flex-direction:column;gap:.25rem}.doctor-card .doctor-name{font-weight:var(--font-weight-semibold);color:var(--color-neutral-900);font-size:var(--font-size-body);margin:0}.doctor-card .doctor-status{font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}.doctor-card .doctor-status.available{color:var(--color-success)}.doctor-card .doctor-status.busy{color:var(--color-warning)}.doctor-card .doctor-status .waiting-count{color:var(--color-neutral-500);font-weight:var(--font-weight-normal)}.doctor-card .doctor-status.busy .waiting-count{color:var(--color-warning-hover)}.doctor-card .current-patient{display:flex;align-items:center;gap:var(--spacing-sm);padding:.5rem .75rem;background:var(--color-white);border-radius:var(--radius-md);border:1px solid var(--color-neutral-200)}.doctor-card .current-patient .patient-queue{font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.doctor-card .current-patient .patient-initials,.doctor-card .current-patient .patient-name{color:var(--color-neutral-600);font-weight:var(--font-weight-medium)}.queue-actions{display:flex;align-items:center;gap:var(--spacing-sm);flex-shrink:0}.priority-badge{font-size:var(--font-size-tiny);font-weight:var(--font-weight-bold);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.05em}.priority-badge.priority-urgent{background:var(--color-warning-light);color:var(--color-warning-hover)}.priority-badge.priority-emergency{background:var(--color-error-light);color:var(--color-error)}.action-button{padding:.375rem .75rem;border-radius:var(--radius-md);border:none;font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-normal)}.action-button.start{background:var(--color-success);color:var(--color-white)}.action-button.start:hover{background:var(--color-success-hover)}.action-button.start:disabled{background:var(--color-neutral-500);cursor:not-allowed}.action-button.no-show{background:var(--color-neutral-200);color:var(--color-neutral-700)}.action-button.no-show:hover{background:var(--color-neutral-300)}.action-button.no-show:disabled{opacity:.5;cursor:not-allowed}.queue-status{flex-shrink:0}.status-badge{font-size:.6875rem;font-weight:var(--font-weight-semibold);padding:var(--spacing-xs) .625rem;border-radius:var(--radius-xl);text-transform:uppercase;letter-spacing:.03em}.status-badge.status-waiting{background:var(--color-info-light);color:var(--color-primary-600)}.status-badge.status-with-doctor{background:var(--color-success-light);color:var(--color-success-hover)}.status-badge.status-pharmacy{background:var(--color-warning-light);color:var(--color-warning-hover)}.status-badge.status-billing{background:var(--color-primary-100);color:var(--color-primary-700)}.status-badge.status-completed{background:var(--color-neutral-200);color:var(--color-neutral-700)}.status-badge.status-no-show{background:var(--color-error-light);color:var(--color-error)}.queue-footer{display:flex;justify-content:flex-start;align-items:center;gap:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-neutral-200)}.quick-action-bar{display:flex;gap:.75rem;margin-bottom:var(--spacing-md)}.quick-walkin-btn{padding:.625rem 1.25rem;background:var(--color-success);color:var(--color-white);border:none;border-radius:var(--radius-lg);font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);cursor:pointer;transition:background var(--transition-normal)}.quick-walkin-btn:hover{background:var(--color-success-hover)}.batch-walkin-btn{padding:.625rem 1.25rem;background:var(--color-white);color:var(--color-primary-900);border:2px solid var(--color-primary-900);border-radius:var(--radius-lg);font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-normal)}.batch-walkin-btn:hover{background:var(--color-primary-50)}.quick-walkin-modal .modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) 1.25rem;border-bottom:1px solid var(--color-neutral-200)}.quick-walkin-modal .modal-header h3{margin:0;font-size:var(--font-size-h4);color:var(--color-neutral-900)}.quick-walkin-modal .modal-body{padding:1.25rem}.modal-subtitle{margin:0 0 var(--spacing-md);font-size:var(--font-size-body);color:var(--color-neutral-500)}.error-message{background:var(--color-error-light);color:var(--color-error);padding:.75rem var(--spacing-md);border-radius:var(--radius-md);font-size:var(--font-size-body);margin-bottom:var(--spacing-md)}.draft-recovered-notice{display:flex;align-items:center;gap:var(--spacing-sm);padding:.625rem .875rem;background:linear-gradient(135deg,#e0f2fe,#dbeafe);border:1px solid #7dd3fc;border-radius:var(--radius-md);margin-bottom:var(--spacing-md);font-size:.8125rem}.draft-recovered-notice .notice-icon{font-size:var(--font-size-body);color:#0284c7}.draft-recovered-notice .notice-text{flex:1;color:#0369a1}.draft-recovered-notice .notice-clear{padding:var(--spacing-xs) var(--spacing-sm);background:transparent;border:1px solid #0284c7;border-radius:var(--radius-sm);color:#0284c7;font-size:var(--font-size-caption);cursor:pointer;transition:all var(--transition-normal)}.draft-recovered-notice .notice-clear:hover{background:#0284c7;color:var(--color-white)}.form-section{margin-bottom:1.25rem}.form-section h4{margin:0 0 .75rem;font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700);text-transform:uppercase;letter-spacing:.03em}.form-group{margin-bottom:.75rem}.form-group label{display:block;font-size:.8125rem;font-weight:var(--font-weight-medium);color:var(--color-neutral-700);margin-bottom:.375rem}.form-group input,.form-group select{width:100%;padding:.625rem .875rem;border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:.9375rem;outline:none;transition:border-color var(--transition-normal)}.form-group input:focus,.form-group select:focus{border-color:var(--color-primary-900)}.form-group input.input-error{border-color:#ef4444;background:#fef2f2}.form-group .field-error{display:block;font-size:var(--font-size-caption);color:var(--color-error);margin-top:var(--spacing-xs)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.quick-walkin-modal .modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:var(--spacing-md) 1.25rem;border-top:1px solid var(--color-neutral-200)}.batch-walkin-modal{max-width:720px}.batch-walkin-modal .modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) 1.25rem;border-bottom:1px solid var(--color-neutral-200)}.batch-walkin-modal .modal-header h3{margin:0;font-size:var(--font-size-h4);color:var(--color-neutral-900)}.batch-walkin-modal .modal-body{padding:1.25rem}.batch-walkin-modal .modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:var(--spacing-md) 1.25rem;border-top:1px solid var(--color-neutral-200)}.batch-entries{border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);overflow:hidden;margin-bottom:var(--spacing-md)}.batch-header{display:grid;grid-template-columns:40px 1fr 140px 1fr 40px;gap:var(--spacing-sm);padding:.625rem .875rem;background:var(--color-neutral-100);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);color:var(--color-neutral-600);text-transform:uppercase;letter-spacing:.03em}.batch-entry{display:grid;grid-template-columns:40px 1fr 140px 1fr 40px;gap:var(--spacing-sm);padding:.625rem .875rem;border-top:1px solid var(--color-neutral-200);align-items:center;transition:background var(--transition-normal)}.batch-entry:first-of-type{border-top:none}.batch-entry.processing{background:var(--color-warning-light)}.batch-entry.success{background:var(--color-success-light)}.batch-entry.error{background:var(--color-error-light)}.batch-entry .col-status{display:flex;align-items:center;justify-content:center}.batch-entry .entry-number{width:24px;height:24px;border-radius:50%;background:var(--color-neutral-200);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);color:var(--color-neutral-600)}.batch-entry .status-icon{font-size:var(--font-size-body)}.batch-entry .status-icon.processing{animation:spin 1s linear infinite}.batch-entry .status-icon.success{color:var(--color-success)}.batch-entry .status-icon.error{color:var(--color-error);cursor:help}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.batch-entry input{width:100%;padding:.5rem .625rem;border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:.875rem;outline:none;transition:border-color var(--transition-normal)}.batch-entry input:focus{border-color:var(--color-primary-900)}.batch-entry input:disabled{background:transparent;border-color:transparent;color:var(--color-neutral-700)}.batch-entry .col-actions{display:flex;justify-content:center}.remove-entry-btn{width:24px;height:24px;border-radius:50%;border:none;background:var(--color-neutral-200);color:var(--color-neutral-600);font-size:var(--font-size-body);cursor:pointer;transition:all var(--transition-normal);display:flex;align-items:center;justify-content:center}.remove-entry-btn:hover{background:var(--color-error-light);color:var(--color-error)}.add-row-btn{padding:.5rem var(--spacing-md);background:var(--color-white);border:1px dashed var(--color-neutral-300);border-radius:var(--radius-md);color:var(--color-neutral-600);font-size:var(--font-size-body);cursor:pointer;transition:all var(--transition-normal);width:100%}.add-row-btn:hover:not(:disabled){background:var(--color-neutral-50);border-color:var(--color-primary-900);color:var(--color-primary-900)}.add-row-btn:disabled{opacity:.5;cursor:not-allowed}.batch-progress{margin-top:var(--spacing-md)}.progress-bar{height:8px;background:var(--color-neutral-200);border-radius:var(--radius-xl);overflow:hidden;margin-bottom:var(--spacing-sm)}.progress-fill{height:100%;background:linear-gradient(90deg,var(--color-primary-900) 0%,var(--color-success) 100%);border-radius:var(--radius-xl);transition:width .3s ease-out}.progress-text{font-size:var(--font-size-caption);color:var(--color-neutral-600);text-align:center;display:block}.batch-error-summary{padding:.75rem var(--spacing-md);background:var(--color-error-light);border:1px solid var(--color-error);border-radius:var(--radius-md);color:var(--color-error);font-size:var(--font-size-body);margin-top:var(--spacing-md)}.priority-buttons{display:flex;gap:var(--spacing-sm)}.priority-btn{flex:1;padding:.5rem .75rem;border:2px solid var(--color-neutral-200);border-radius:var(--radius-md);background:var(--color-white);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-normal)}.priority-btn:hover{border-color:var(--color-neutral-400)}.priority-btn.normal.active{background:var(--color-primary-50);border-color:var(--color-primary-900);color:var(--color-primary-900)}.priority-btn.urgent.active{background:#fef3c7;border-color:#f59e0b;color:#b45309}.priority-btn.emergency.active{background:#fee2e2;border-color:#ef4444;color:#b91c1c}.success-modal{max-width:340px;text-align:center}.success-body{padding:2rem 1.5rem}.success-icon{width:64px;height:64px;margin:0 auto var(--spacing-md);background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;color:#fff}.success-title{margin:0 0 var(--spacing-lg);font-size:var(--font-size-h3);color:var(--color-neutral-900)}.queue-number-display{background:var(--color-primary-50);border:2px solid var(--color-primary-900);border-radius:var(--radius-lg);padding:var(--spacing-md) var(--spacing-lg);margin-bottom:var(--spacing-md)}.queue-label{display:block;font-size:var(--font-size-caption);color:var(--color-neutral-600);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--spacing-xs)}.queue-number{display:block;font-size:2.5rem;font-weight:var(--font-weight-bold);color:var(--color-primary-900);letter-spacing:.02em}.success-patient{font-size:var(--font-size-body);color:var(--color-neutral-700);margin:0 0 var(--spacing-sm)}.success-hint{font-size:var(--font-size-caption);color:var(--color-neutral-500);margin:0}.input-with-status{position:relative}.input-with-status input{width:100%;padding-right:100px}.input-status{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);padding:2px 8px;border-radius:var(--radius-sm)}.input-status.searching{color:var(--color-neutral-500);background:var(--color-neutral-100)}.input-status.found{color:#059669;background:#d1fae5}.input-status.new{color:#3b82f6;background:#dbeafe}.input-success,.select-highlight{border-color:#10b981!important;background:#f0fdf4!important}.doctor-hint{display:block;margin-top:var(--spacing-xs);font-size:var(--font-size-caption);color:#059669}.doctor-selection-list{display:flex;flex-direction:column;gap:4px;max-height:240px;overflow-y:auto;border:1px solid #e5e7eb;border-radius:8px;padding:4px;background:#fafafa}.doctor-option{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1.5px solid transparent;border-radius:6px;background:#fff;cursor:pointer;text-align:left;transition:all .15s ease;width:100%;font-size:13px}.doctor-option:hover{background:#f0f9ff;border-color:#bfdbfe}.doctor-option.selected{background:#eff6ff;border-color:#3b82f6;box-shadow:0 0 0 1px #3b82f626}.doctor-option.unavailable{opacity:.7}.doctor-option.unavailable:hover{opacity:.85}.doctor-option-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;font-size:13px;color:#fff;flex-shrink:0}.doctor-option-info{display:flex;flex-direction:column;gap:1px;flex:1;min-width:0}.doctor-option-name{font-weight:500;color:#1f2937;display:flex;align-items:center;gap:6px}.doctor-option-tag{font-size:10px;font-weight:600;padding:1px 6px;border-radius:4px;text-transform:uppercase;letter-spacing:.3px}.doctor-option-tag.previous{background:#dbeafe;color:#1d4ed8}.doctor-option-detail{display:flex;align-items:center;gap:6px;font-size:11.5px;color:#6b7280}.doctor-status-text{font-weight:600}.doctor-return-time,.doctor-queue-count,.doctor-current-patient{color:#9ca3af;font-size:11px}.doctor-option-check{font-size:14px;color:#3b82f6;font-weight:700;flex-shrink:0}.doctor-unavailable-warning{display:block;margin-top:6px;padding:6px 10px;background:#fef3c7;border:1px solid #fcd34d;border-radius:6px;font-size:12px;color:#92400e;line-height:1.4}.id-type-select,.resident-status-select{width:100%}.resident-status-hint{display:block;margin-top:var(--spacing-xs);font-size:var(--font-size-caption)}.resident-status-hint.tourism-tax{color:#f59e0b;background:#fef3c7;padding:.375rem .5rem;border-radius:var(--radius-sm);border-left:3px solid #f59e0b}@media(max-width:640px){.queue-summary{overflow-x:auto}.queue-summary .summary-stat{min-width:80px}.queue-sections{grid-template-columns:1fr}.queue-card{flex-wrap:wrap}.queue-actions{width:100%;justify-content:flex-end;margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--color-neutral-200)}.form-row{grid-template-columns:1fr}.quick-action-bar{flex-direction:column}.quick-walkin-btn,.batch-walkin-btn{width:100%}.batch-walkin-modal{max-width:95%}.batch-header,.batch-entry{grid-template-columns:32px 1fr 32px}.batch-header .col-phone,.batch-header .col-reason,.batch-entry .col-phone,.batch-entry .col-reason{display:none}}.queue-card.has-allergies{border-left:4px solid #dc2626;background:linear-gradient(to right,#fef2f2,#fff 8%)}.queue-card.has-allergies:hover{background:linear-gradient(to right,#fee2e2 0%,var(--color-neutral-50) 8%)}.queue-info .visit-reason{font-size:.8125rem;color:var(--color-neutral-600);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-style:italic}.allergy-warning{display:flex;align-items:center;gap:.375rem;padding:.25rem .5rem;background:#fef2f2;border:1px solid #fecaca;border-radius:var(--radius-sm);margin-top:.25rem}.allergy-warning .allergy-icon{color:#dc2626;font-size:.875rem;flex-shrink:0}.allergy-warning .allergy-list{font-size:.75rem;color:#991b1b;font-weight:var(--font-weight-medium);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.patient-name-row{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:nowrap}.patient-name-row .patient-name,.patient-name-row .patient-alert-badges{flex-shrink:0}.patient-name-row .wait-time{margin-left:auto;flex-shrink:0}.availability-toggle{position:relative}.availability-toggle .status-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem .875rem;background:var(--color-white);border:2px solid var(--color-neutral-200);border-radius:var(--radius-lg);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-normal)}.availability-toggle .status-btn:hover{background:var(--color-neutral-50)}.availability-toggle .status-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.availability-toggle .dropdown-arrow{font-size:.625rem;color:var(--color-neutral-500);margin-left:.25rem}.availability-menu{position:absolute;top:calc(100% + 4px);right:0;background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:100;min-width:180px;overflow:hidden}.availability-menu .menu-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.625rem .875rem;background:none;border:none;text-align:left;font-size:var(--font-size-body);color:var(--color-neutral-700);cursor:pointer;transition:background var(--transition-normal)}.availability-menu .menu-item:hover{background:var(--color-neutral-50)}.availability-menu .menu-item.active{background:var(--color-primary-50);color:var(--color-primary-900)}.availability-menu .menu-item .hint{margin-left:auto;font-size:var(--font-size-caption);color:var(--color-neutral-500)}.availability-menu .menu-item:disabled{opacity:.6;cursor:not-allowed}.doctor-name-row{display:flex;align-items:center;gap:.5rem}.doctor-name-row .availability-badge{font-size:.625rem;font-weight:var(--font-weight-semibold);padding:.125rem .5rem;border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.03em}.doctor-card.unavailable{background:var(--color-neutral-100);border-color:var(--color-neutral-300)}.doctor-card.unavailable .doctor-name,.doctor-card .doctor-status.unavailable{color:var(--color-neutral-500)}.doctor-card .doctor-status .return-time{color:var(--color-neutral-500);font-size:var(--font-size-caption)}.action-button.reassign{background:var(--color-info-light);color:var(--color-primary-700)}.action-button.reassign:hover{background:#bfdbfe}.reassign-modal{max-width:480px}.reassign-modal .modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) 1.25rem;border-bottom:1px solid var(--color-neutral-200)}.reassign-modal .modal-header h3{margin:0;font-size:var(--font-size-h4);color:var(--color-neutral-900)}.reassign-modal .modal-body{padding:1.25rem}.reassign-modal .modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:var(--spacing-md) 1.25rem;border-top:1px solid var(--color-neutral-200)}.reassign-patient-info{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:var(--color-neutral-50);border-radius:var(--radius-lg);margin-bottom:var(--spacing-md)}.reassign-patient-info .patient-queue{font-weight:var(--font-weight-bold);color:var(--color-primary-900);font-size:var(--font-size-body)}.reassign-patient-info .patient-name{font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.reassign-patient-info .patient-reason{color:var(--color-neutral-500);font-size:var(--font-size-caption);font-style:italic}.doctor-selection-list{display:flex;flex-direction:column;gap:.5rem;max-height:320px;overflow-y:auto}.doctor-option{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;background:var(--color-white);border:2px solid var(--color-neutral-200);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-normal)}.doctor-option:hover{background:var(--color-neutral-50);border-color:var(--color-neutral-300)}.doctor-option.selected{background:var(--color-primary-50);border-color:var(--color-primary-900)}.doctor-option.unavailable{opacity:.6}.doctor-option.unavailable:not(:has(input:checked)){cursor:not-allowed}.doctor-option input[type=radio]{margin-top:.25rem;flex-shrink:0;width:18px;height:18px;accent-color:var(--color-primary-900)}.doctor-option-content{flex:1;min-width:0}.doctor-option-content .doctor-name-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-bottom:.25rem}.doctor-option-content .doctor-name{font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.doctor-option-content .current-badge{font-size:.625rem;font-weight:var(--font-weight-semibold);padding:.125rem .5rem;background:var(--color-info-light);color:var(--color-primary-700);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.03em}.doctor-option-content .status-badge{font-size:.625rem;font-weight:var(--font-weight-semibold);padding:.125rem .5rem;color:#fff;border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.03em}.doctor-option-content .doctor-status{font-size:var(--font-size-caption);color:var(--color-neutral-500)}.doctor-option-content .doctor-status.busy{color:var(--color-warning-hover)}.doctor-option-content .doctor-status.available{color:var(--color-success)}.doctor-option-content .doctor-status.auto{color:var(--color-primary-700);font-style:italic}.no-doctors-available{padding:var(--spacing-lg);text-align:center;color:var(--color-neutral-500);background:var(--color-neutral-50);border-radius:var(--radius-lg);font-size:var(--font-size-body)}.ai-toggle-button{position:fixed;right:1rem;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;cursor:pointer;box-shadow:0 4px 12px #6366f166;display:flex;align-items:center;justify-content:center;transition:transform .2s,box-shadow .2s;z-index:var(--z-dropdown)}.ai-toggle-button:hover{transform:translateY(-50%) scale(1.1);box-shadow:0 6px 16px #6366f180}.ai-toggle-button .ai-icon{color:var(--color-white);font-weight:700;font-size:.875rem}.ai-assistant-panel{position:fixed;right:0;top:0;bottom:0;width:30%;min-width:320px;max-width:450px;background:var(--color-white);box-shadow:-4px 0 12px #0000001a;display:flex;flex-direction:column;z-index:var(--z-modal);animation:slideIn .2s ease-out}.panel-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:var(--color-white)}.panel-header h3{margin:0;font-size:1.125rem;font-weight:600}.panel-header .close-button{background:#fff3;border:none;color:var(--color-white);width:32px;height:32px;border-radius:50%;cursor:pointer;font-size:1rem;display:flex;align-items:center;justify-content:center}.panel-header .close-button:hover{background:#ffffff4d}.ai-usage-bar{padding:.75rem 1.25rem;background:var(--color-neutral-50);border-bottom:1px solid var(--color-neutral-200)}.ai-usage-bar .usage-info{display:flex;justify-content:space-between;margin-bottom:.5rem;font-size:.75rem}.ai-usage-bar .usage-label{color:var(--color-neutral-700)}.ai-usage-bar .usage-count{font-weight:500}.ai-usage-bar .usage-bar-container{height:4px;background:var(--color-neutral-200);border-radius:2px;overflow:hidden}.ai-usage-bar .usage-bar{height:100%;border-radius:2px;transition:width .3s}.panel-tabs{display:flex;border-bottom:1px solid var(--color-neutral-200)}.panel-tabs .tab-button{flex:1;padding:.75rem;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;font-size:.875rem;color:var(--color-neutral-700);transition:color .2s,border-color .2s}.panel-tabs .tab-button:hover{color:var(--color-neutral-900)}.panel-tabs .tab-button.active{color:#fff;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-bottom-color:transparent;border-radius:.375rem .375rem 0 0}.input-form{display:flex;flex-direction:column;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.875rem;font-weight:500;color:var(--color-neutral-900)}.form-group textarea,.form-group input,.form-group select{padding:.75rem;border:1px solid var(--color-neutral-200);border-radius:.375rem;font-size:.875rem;transition:border-color .2s}.form-group textarea:focus,.form-group input:focus,.form-group select:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.form-group input[type=number]{width:80px}.form-hint{color:var(--color-neutral-700);font-size:.875rem;margin:0 0 1rem}.soap-preview{background:var(--color-neutral-100);border:1px solid var(--color-neutral-200);border-radius:.375rem;padding:.5rem .75rem;font-size:.8125rem;color:var(--color-neutral-800);min-height:2.5rem;white-space:pre-wrap}.soap-preview em{color:var(--color-neutral-500);font-style:italic}.soap-preview-compact{background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:.375rem;padding:.75rem;margin-bottom:1rem;font-size:.8125rem;line-height:1.5}.soap-preview-compact div{margin-bottom:.25rem}.soap-preview-compact div:last-child{margin-bottom:0}.soap-preview-compact strong{color:#6366f1}.generate-button{padding:.875rem 1.5rem;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:var(--color-white);border:none;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:opacity .2s}.generate-button:hover:not(:disabled){opacity:.9}.generate-button:disabled{opacity:.6;cursor:not-allowed}.draft-result{display:flex;flex-direction:column;gap:1rem}.draft-warning{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;background:var(--color-warning-light);border:1px solid var(--color-warning);border-radius:.375rem}.draft-warning .warning-icon{width:20px;height:20px;background:var(--color-warning);color:var(--color-white);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.75rem;flex-shrink:0}.draft-warning .warning-text{font-size:.75rem;color:#92400e;line-height:1.4}.draft-meta{display:flex;justify-content:space-between;font-size:.75rem;color:var(--color-neutral-700)}.draft-content{background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:.375rem;padding:1rem;max-height:300px;overflow-y:auto}.draft-content pre{margin:0;white-space:pre-wrap;font-size:.875rem;line-height:1.6;font-family:inherit}.draft-editor{width:100%;padding:1rem;border:2px solid #6366f1;border-radius:.375rem;font-size:.875rem;line-height:1.6;resize:vertical}.draft-editor:focus{outline:none;box-shadow:0 0 0 3px #6366f11a}.soap-draft-display{display:flex;flex-direction:column;gap:.75rem}.soap-section{background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:.375rem;padding:.75rem}.soap-section label{display:block;font-size:.75rem;font-weight:600;color:#6366f1;margin-bottom:.25rem;text-transform:uppercase;letter-spacing:.05em}.soap-section p{margin:0;font-size:.875rem;color:var(--color-neutral-900);line-height:1.5}.draft-actions{display:flex;gap:.5rem;flex-wrap:wrap}.action-button{flex:1;min-width:80px;padding:.625rem .75rem;border:none;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:opacity .2s}.action-button:disabled{opacity:.6;cursor:not-allowed}.action-button.accept{background:var(--color-success);color:var(--color-white)}.action-button.edit{background:var(--color-primary-900);color:var(--color-white)}.action-button.regenerate{background:#6366f1;color:var(--color-white)}.action-button.reject{background:var(--color-error);color:var(--color-white)}.keyboard-hints{display:flex;flex-wrap:wrap;gap:.5rem;padding:.5rem 0;border-top:1px solid var(--color-neutral-200);margin-top:.5rem}.keyboard-hint{display:flex;align-items:center;gap:.25rem;font-size:.7rem;color:var(--color-neutral-600)}.keyboard-hint kbd{display:inline-block;padding:.125rem .375rem;background:var(--color-neutral-100);border:1px solid var(--color-neutral-300);border-radius:.25rem;font-family:monospace;font-size:.65rem;font-weight:500}.review-timer{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem;background:var(--color-warning-light);border:1px solid var(--color-warning);border-radius:.375rem;margin-bottom:.75rem}.review-timer .timer-icon{width:20px;height:20px;border:2px solid #b45309;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.75rem;color:#b45309;animation:pulse 1s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.review-timer .timer-text{font-size:.8rem;font-weight:500;color:#b45309}.review-timer .timer-count{font-weight:700;font-size:.9rem;color:#92400e}.action-button.accept.timer-active{opacity:.5;cursor:wait;position:relative}.action-button.accept.timer-active:after{content:"";position:absolute;bottom:0;left:0;height:3px;background:var(--color-white);animation:timerProgress 3s linear forwards}@keyframes timerProgress{0%{width:0%}to{width:100%}}.panel-footer{padding:.75rem 1.25rem;border-top:1px solid var(--color-neutral-200);background:var(--color-neutral-50)}.panel-footer .disclaimer{margin:0;font-size:.75rem;color:var(--color-neutral-700);text-align:center}@media(max-width:768px){.ai-assistant-panel{width:100%}.ai-toggle-button{right:.5rem;width:40px;height:40px}}.visits-module{display:flex;flex-direction:column;gap:1.25rem;width:100%;box-sizing:border-box}.visits-summary{display:flex;flex-wrap:nowrap;gap:.75rem;width:100%;box-sizing:border-box}.visits-summary .summary-item{flex:1 1 0;min-width:0;max-width:none;display:flex;flex-direction:column;align-items:center;justify-content:center}.summary-item{flex:1 1 0;min-width:0;background:var(--color-white);border-radius:10px;padding:var(--spacing-md);text-align:center;box-shadow:var(--shadow-sm);border-left:4px solid var(--color-neutral-200);transition:all var(--transition-fast)}.summary-item.total{border-left-color:var(--color-primary-900)}.summary-item.total:hover{border:1px solid var(--color-primary-900);border-left-width:4px}.summary-item.waiting{border-left-color:var(--color-warning)}.summary-item.waiting:hover{border:1px solid var(--color-warning);border-left-width:4px}.summary-item.with-doctor{border-left-color:var(--color-success)}.summary-item.with-doctor:hover{border:1px solid var(--color-success);border-left-width:4px}.summary-item.pharmacy{border-left-color:var(--color-primary-600)}.summary-item.pharmacy:hover{border:1px solid var(--color-primary-600);border-left-width:4px}.summary-item.billing{border-left-color:#0891b2}.summary-item.billing:hover{border:1px solid #0891b2;border-left-width:4px}.summary-item.completed{border-left-color:var(--color-neutral-500)}.summary-item.completed:hover{border:1px solid var(--color-neutral-500);border-left-width:4px}.summary-item .count{display:block;font-size:var(--font-size-h2);font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.summary-item .label{font-size:.6875rem;color:var(--color-neutral-500);text-transform:uppercase;letter-spacing:.05em}.visits-list{display:flex;flex-direction:column;gap:.75rem;max-height:500px;overflow-y:auto}.empty-visits{background:var(--color-white);border-radius:var(--radius-xl);padding:var(--spacing-2xl);text-align:center;color:var(--color-neutral-500);box-shadow:var(--shadow-sm)}.visit-card{display:flex;align-items:center;gap:var(--spacing-md);background:var(--color-white);border-radius:10px;padding:var(--spacing-md);box-shadow:var(--shadow-sm);cursor:pointer;transition:all var(--transition-normal);border:1px solid transparent}.visit-card:hover{border-color:var(--color-primary-900);box-shadow:0 2px 8px #4a63b326}.visit-card.selected{border-color:var(--color-primary-900);background:var(--color-info-light)}.visit-card.priority-urgent{border-left:4px solid var(--color-warning)}.visit-card.priority-emergency{border-left:4px solid var(--color-error);background:#fff5f5}.visit-queue-number{font-size:var(--font-size-h4);font-weight:var(--font-weight-bold);color:var(--color-neutral-900);min-width:45px;text-align:center}.visit-main{flex:1;min-width:0}.visit-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-xs)}.priority-tag{font-size:var(--font-size-tiny);font-weight:var(--font-weight-bold);padding:.125rem .375rem;border-radius:var(--radius-sm);text-transform:uppercase}.priority-tag.priority-urgent{background:var(--color-warning-light);color:var(--color-warning-hover)}.priority-tag.priority-emergency{background:var(--color-error-light);color:var(--color-error)}.visit-details{display:flex;gap:.75rem;font-size:.8125rem;color:var(--color-neutral-500);margin-bottom:var(--spacing-xs)}.visit-reason{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.visit-type{text-transform:capitalize;color:var(--color-neutral-500)}.visit-meta{display:flex;gap:.75rem;font-size:var(--font-size-caption);color:var(--color-neutral-500)}.doctor{color:var(--color-success)}.visit-status-section{display:flex;flex-direction:column;align-items:flex-end;gap:var(--spacing-sm);flex-shrink:0}.status-tag.status-scheduled{background:var(--color-neutral-200);color:var(--color-neutral-700)}.status-tag.status-waiting{background:var(--color-warning-light);color:var(--color-warning-hover)}.status-tag.status-with-doctor{background:var(--color-success-light);color:var(--color-success-hover)}.status-tag.status-pharmacy{background:#e9d8fd;color:var(--color-primary-900)}.status-tag.status-payment{background:#feebc8;color:#c05621}.action-btn.complete{background:var(--color-success);color:var(--color-white)}.action-btn.complete:hover{background:var(--color-success-hover)}.action-btn.complete:disabled{background:var(--color-neutral-500);cursor:not-allowed}.action-btn.consult{background:var(--color-primary-900);color:var(--color-white)}.action-btn.consult:hover{background:var(--color-primary-600)}.visits-footer{display:flex;justify-content:flex-start;align-items:center;gap:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-neutral-200)}.refresh-btn{padding:.375rem .875rem;background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:var(--font-size-caption);color:var(--color-neutral-700);cursor:pointer;transition:all var(--transition-normal)}.refresh-btn:hover{background:var(--color-neutral-50);border-color:var(--color-neutral-300)}@media(max-width:640px){.visits-summary{overflow-x:auto}.visits-summary .summary-item{min-width:80px}.visit-card{flex-wrap:wrap}.visit-status-section{width:100%;flex-direction:row;justify-content:space-between;margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--color-neutral-200)}.filter-tabs{padding-bottom:var(--spacing-sm)}}.drug-interaction-checker{border-radius:8px;overflow:hidden}.drug-interaction-checker.no-interactions{background:var(--color-success-light);border:1px solid #86efac;padding:.75rem 1rem}.check-passed{display:flex;align-items:center;gap:.5rem;color:var(--color-success-hover)}.check-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;background:var(--color-success);color:var(--color-white);border-radius:50%;font-size:.75rem;font-weight:700}.check-text{font-size:.875rem;font-weight:500}.drug-interaction-checker.has-interactions{background:var(--color-white);border:1px solid #fca5a5}.checker-header{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;color:var(--color-white)}.checker-header.severity-critical{background:linear-gradient(135deg,var(--color-error) 0%,var(--color-error-hover) 100%)}.checker-header.severity-major{background:linear-gradient(135deg,#ea580c,#c2410c)}.checker-header.severity-moderate{background:linear-gradient(135deg,var(--color-warning) 0%,var(--color-warning-hover) 100%)}.header-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#fff3;border-radius:8px}.header-icon svg{width:24px;height:24px}.header-content h4{margin:0 0 .25rem;font-size:1rem;font-weight:600}.header-content p{margin:0;font-size:.875rem;opacity:.9}.interaction-section{padding:1rem;border-bottom:1px solid var(--color-error-light)}.interaction-section:last-of-type{border-bottom:none}.section-title{display:flex;align-items:center;gap:.5rem;margin:0 0 .75rem;font-size:.8125rem;font-weight:600;color:var(--color-neutral-700);text-transform:uppercase;letter-spacing:.025em}.section-icon{font-size:1rem}.interaction-list{display:flex;flex-direction:column;gap:.5rem}.interaction-card{background:#fef2f2;border-radius:6px;overflow:hidden;border-left:4px solid;transition:all var(--transition-fast)}.interaction-card.severity-critical{border-left-color:var(--color-error);background:#fef2f2}.interaction-card.severity-major{border-left-color:#ea580c;background:#fff7ed}.interaction-card.severity-moderate{border-left-color:var(--color-warning);background:var(--color-warning-light)}.interaction-card.severity-minor{border-left-color:#0ea5e9;background:#f0f9ff}.interaction-card.expanded{box-shadow:var(--shadow-sm)}.interaction-summary{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;cursor:pointer;transition:background var(--transition-fast)}.interaction-summary:hover{background:#00000008}.interaction-drugs{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.drug-name{font-size:.875rem;font-weight:500;color:var(--color-neutral-900)}.allergen-name{display:flex;align-items:center;gap:.375rem;font-size:.875rem;font-weight:500;color:var(--color-error)}.cross-reaction-badge{font-size:.625rem;font-weight:600;text-transform:uppercase;padding:.125rem .375rem;background:#fecaca;color:var(--color-error-hover);border-radius:3px}.interaction-arrow{color:var(--color-neutral-500);font-size:.75rem}.interaction-meta{display:flex;align-items:center;gap:.75rem}.severity-badge{font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:.25rem .5rem;border-radius:4px}.severity-badge.severity-critical{background:var(--color-error);color:var(--color-white)}.severity-badge.severity-major{background:#ea580c;color:var(--color-white)}.severity-badge.severity-moderate{background:var(--color-warning);color:var(--color-white)}.severity-badge.severity-minor{background:#0ea5e9;color:var(--color-white)}.expand-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;font-size:1rem;font-weight:600;color:var(--color-neutral-700);transition:transform var(--transition-fast)}.interaction-details{padding:.75rem 1rem;border-top:1px solid rgba(0,0,0,.05);background:#ffffff80}.detail-row{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.75rem}.detail-label{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em;color:var(--color-neutral-700)}.detail-value{font-size:.8125rem;color:var(--color-neutral-700);line-height:1.5}.detail-row.recommendation .detail-value{font-weight:500;color:var(--color-neutral-900);padding:.5rem;background:var(--color-white);border-radius:4px;border:1px solid var(--color-neutral-200)}.acknowledge-section{padding:1rem;background:var(--color-warning-light);border-top:1px solid #fcd34d}.acknowledge-notice{margin:0 0 .75rem;font-size:.8125rem;color:#92400e;line-height:1.5}.acknowledge-btn{width:100%;padding:.75rem 1rem;font-size:.875rem;font-weight:600;border:none;border-radius:6px;cursor:pointer;transition:all var(--transition-fast);background:var(--color-warning);color:var(--color-white)}.acknowledge-btn:hover{background:var(--color-warning-hover)}.acknowledge-btn.critical{background:var(--color-error)}.acknowledge-btn.critical:hover{background:var(--color-error-hover)}.acknowledged-notice{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem;background:var(--color-success-light);border-top:1px solid #86efac;font-size:.8125rem;color:var(--color-success-hover)}.acknowledged-icon{display:flex;align-items:center;justify-content:center;width:18px;height:18px;background:var(--color-success);color:var(--color-white);border-radius:50%;font-size:.6875rem;font-weight:700}.drug-interaction-checker.compact .checker-header{padding:.75rem}.drug-interaction-checker.compact .header-icon{width:32px;height:32px}.drug-interaction-checker.compact .header-icon svg{width:18px;height:18px}.drug-interaction-checker.compact .header-content h4{font-size:.875rem}.drug-interaction-checker.compact .header-content p{font-size:.75rem}.drug-interaction-checker.compact .interaction-section{padding:.75rem}.drug-interaction-checker.compact .section-title{font-size:.75rem}.drug-interaction-checker.compact .interaction-summary{padding:.5rem .75rem}.drug-interaction-checker.compact .drug-name,.drug-interaction-checker.compact .allergen-name{font-size:.8125rem}.drug-interaction-checker.compact .severity-badge{font-size:.5625rem;padding:.1875rem .375rem}.drug-interaction-checker.compact .interaction-details{padding:.5rem .75rem}.drug-interaction-checker.compact .detail-value{font-size:.75rem}.drug-interaction-checker.compact .acknowledge-section{padding:.75rem}.drug-interaction-checker.compact .acknowledge-btn{padding:.5rem .75rem;font-size:.8125rem}@media(max-width:640px){.interaction-summary{flex-direction:column;align-items:flex-start;gap:.5rem}.interaction-meta{width:100%;justify-content:space-between}.interaction-drugs{width:100%}.drug-name{font-size:.8125rem}}.pharmacy-module{display:flex;flex-direction:column;gap:1.25rem;width:100%;box-sizing:border-box}.pharmacy-summary{display:flex;flex-wrap:nowrap;gap:var(--spacing-md);width:100%;box-sizing:border-box}.pharmacy-stat-card{flex:1 1 0;min-width:0;max-width:none;background:#fff;border-radius:10px;padding:1rem;text-align:center;box-shadow:0 1px 3px #0000001a;cursor:pointer;transition:all .15s ease;outline:none}.pharmacy-stat-card[data-card-type=pending],.pharmacy-stat-card[data-card-type=expiry],.pharmacy-stat-card[data-card-type=low-stock]{border-top:1px solid transparent;border-right:1px solid transparent;border-bottom:1px solid transparent;border-left:4px solid #ccc}.pharmacy-stat-card[data-card-type=pending]{border-left-color:var(--color-warning)}.pharmacy-stat-card[data-card-type=pending]:hover,.pharmacy-stat-card[data-card-type=pending].active{border-top-color:var(--color-warning);border-right-color:var(--color-warning);border-bottom-color:var(--color-warning)}.pharmacy-stat-card[data-card-type=expiry]{border-left-color:var(--color-error)}.pharmacy-stat-card[data-card-type=expiry]:hover,.pharmacy-stat-card[data-card-type=expiry].active{border-top-color:var(--color-error);border-right-color:var(--color-error);border-bottom-color:var(--color-error)}.pharmacy-stat-card[data-card-type=low-stock]{border-left-color:var(--color-primary-900)}.pharmacy-stat-card[data-card-type=low-stock]:hover,.pharmacy-stat-card[data-card-type=low-stock].active{border-top-color:var(--color-primary-900);border-right-color:var(--color-primary-900);border-bottom-color:var(--color-primary-900)}.pharmacy-stat-card .card-count{display:block;font-size:var(--font-size-h2);font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.pharmacy-stat-card .card-label{font-size:var(--font-size-caption);color:var(--color-neutral-500);text-transform:uppercase;letter-spacing:.05em}.pharmacy-content{background:var(--color-white);border-radius:var(--radius-xl);padding:1.25rem;box-shadow:var(--shadow-sm);min-height:300px;max-height:450px;overflow-y:auto}.empty-list{text-align:center;padding:var(--spacing-2xl);color:var(--color-neutral-400)}.pending-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.pending-card{background:var(--color-neutral-50);border-radius:var(--radius-lg);padding:var(--spacing-md);cursor:pointer;transition:all var(--transition-normal);border:1px solid var(--color-neutral-200)}.pending-card:hover{border-color:var(--color-warning-600);background:var(--color-warning-light)}.pending-header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.queue-badge-wrapper{display:flex;align-items:center;gap:var(--spacing-sm);width:100%;margin-bottom:var(--spacing-xs)}.queue-number-badge{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-xs) var(--spacing-md);background:var(--color-warning-600);color:var(--color-white);font-size:.9375rem;font-weight:var(--font-weight-bold);font-family:monospace;letter-spacing:.05em;border-radius:var(--radius-md);min-width:70px}.pharmacy-status-badge{display:inline-flex;align-items:center;padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-warning-light);color:var(--color-warning);font-size:.6875rem;font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.05em;border-radius:var(--radius-sm);border:1px solid var(--color-warning-200)}.pending-header .patient-info{display:flex;align-items:center;gap:var(--spacing-sm)}.pending-header .patient-name{font-weight:var(--font-weight-semibold);color:var(--color-neutral-800)}.pending-header .item-count{font-size:var(--font-size-caption);color:var(--color-neutral-500);background:var(--color-neutral-200);padding:var(--spacing-xs) var(--spacing-sm);border-radius:10px}.pending-items{display:flex;flex-direction:column;gap:.375rem;margin-bottom:var(--spacing-md)}.item-row{display:flex;justify-content:space-between;font-size:.8125rem}.item-name{color:var(--color-neutral-600)}.item-qty{color:var(--color-neutral-500);font-family:monospace}.more-items{font-size:var(--font-size-caption);color:var(--color-neutral-400);font-style:italic}.pending-footer{display:flex;justify-content:space-between;align-items:center;padding-top:var(--spacing-sm);border-top:1px solid var(--color-neutral-200)}.pending-footer .total{font-weight:var(--font-weight-semibold);color:var(--color-neutral-800)}.pending-footer .status{font-size:.6875rem;font-weight:var(--font-weight-semibold);padding:var(--spacing-xs) var(--spacing-sm);border-radius:10px;text-transform:uppercase}.pending-footer .status.pending{background:var(--color-warning-100);color:var(--color-warning-700)}.pending-footer .status.partially_dispensed{background:var(--color-primary-100);color:var(--color-primary-900)}.expiry-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.expiry-card{background:var(--color-neutral-50);border-radius:var(--radius-lg);padding:var(--spacing-md);border-left:4px solid var(--color-neutral-200)}.expiry-card.alert-warning{border-left-color:var(--color-warning-600);background:var(--color-warning-light)}.expiry-card.alert-critical{border-left-color:var(--color-warning-500);background:var(--color-warning-50)}.expiry-card.alert-expired{border-left-color:var(--color-error-700);background:var(--color-error-50)}.expiry-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.expiry-header .medication-name{font-weight:var(--font-weight-semibold);color:var(--color-neutral-800)}.expiry-badge{font-size:.625rem;font-weight:var(--font-weight-bold);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);text-transform:uppercase}.expiry-badge.alert-warning{background:var(--color-warning-100);color:var(--color-warning-700)}.expiry-badge.alert-critical{background:var(--color-warning-200);color:var(--color-warning-800)}.expiry-badge.alert-expired{background:var(--color-error-200);color:var(--color-error-700)}.expiry-details{display:flex;gap:var(--spacing-md);font-size:var(--font-size-caption);color:var(--color-neutral-500)}.low-stock-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.low-stock-card{background:var(--color-neutral-50);border-radius:var(--radius-lg);padding:var(--spacing-md);border:1px solid var(--color-neutral-200)}.stock-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.stock-header .medication-name{font-weight:var(--font-weight-semibold);color:var(--color-neutral-800)}.stock-level{font-size:.8125rem;color:var(--color-neutral-500);font-family:monospace}.stock-bar-container{height:6px;background:var(--color-neutral-200);border-radius:3px;overflow:hidden}.stock-bar{height:100%;background:linear-gradient(90deg,var(--color-error-700),var(--color-warning-500));border-radius:3px;transition:width .3s}.expiring-warning{margin-top:var(--spacing-sm);font-size:.6875rem;color:var(--color-warning-800);background:var(--color-warning-200);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);display:inline-block}.pharmacy-footer{display:flex;justify-content:flex-start;align-items:center;gap:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-neutral-200)}.last-updated{font-size:var(--font-size-caption);color:var(--color-neutral-400)}.refresh-button{padding:.375rem .875rem;background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:var(--font-size-caption);color:var(--color-neutral-600);cursor:pointer;transition:all var(--transition-normal)}.dispense-modal{background:var(--color-white);border-radius:var(--radius-xl);max-width:700px;width:95%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.dispense-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) 1.25rem;border-bottom:1px solid var(--color-neutral-200);background:var(--color-neutral-50)}.dispense-modal .modal-header h3{margin:0;font-size:1.125rem;color:var(--color-neutral-800)}.modal-close{background:none;border:none;font-size:var(--spacing-lg);color:var(--color-neutral-400);cursor:pointer;padding:0;line-height:1}.modal-close:hover{color:var(--color-neutral-600)}.dispense-modal .modal-body{flex:1;overflow-y:auto;padding:var(--spacing-md) 1.25rem}.patient-info-bar{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) 1.25rem;background:var(--color-info-50);border-bottom:1px solid var(--color-info-200)}.patient-info-bar .patient-name{font-weight:var(--font-weight-semibold);color:var(--color-primary-950)}.patient-info-bar .visit-time{font-size:var(--font-size-caption);color:var(--color-info-600)}.allergy-warning-banner{display:flex;align-items:flex-start;gap:var(--spacing-md);padding:.875rem var(--spacing-md);background:var(--color-error-50);border:1px solid var(--color-error-200);border-radius:var(--radius-lg);margin:0 1.25rem var(--spacing-md) 1.25rem}.allergy-warning-banner .warning-icon{font-size:1.25rem;flex-shrink:0}.allergy-warning-banner .warning-content{display:flex;flex-direction:column;gap:var(--spacing-xs)}.allergy-warning-banner .warning-content strong{color:var(--color-error-800);font-size:var(--font-size-body)}.allergy-warning-banner .warning-content span{color:var(--color-error-700);font-size:.8125rem}.dispense-items{flex:1;overflow-y:auto;padding:var(--spacing-md) 1.25rem;display:flex;flex-direction:column;gap:var(--spacing-md)}.dispense-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-lg);border:1px solid var(--color-neutral-200)}.dispense-item.dispensed{background:var(--color-success-50);border-color:var(--color-success-300)}.item-status-icon{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--spacing-md);flex-shrink:0}.item-status-icon.pending{background:var(--color-warning-100);color:var(--color-warning-700)}.item-status-icon.dispensed{background:var(--color-success-200);color:var(--color-success-800)}.item-details{flex:1;min-width:0}.item-details .medication-name{font-weight:var(--font-weight-semibold);color:var(--color-neutral-800);margin-bottom:var(--spacing-xs)}.item-details .dosage{font-size:.8125rem;color:var(--color-neutral-500);margin-bottom:var(--spacing-xs)}.item-details .quantity-info{display:flex;gap:var(--spacing-md);font-size:var(--font-size-caption);color:var(--color-neutral-400)}.item-actions{display:flex;align-items:center;gap:var(--spacing-lg);flex-shrink:0}.dispense-btn{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);font-size:.8125rem;font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-normal);border:1px solid #2563eb;background:#2563eb;color:#fff}.dispense-btn:hover{background:#1d4ed8;border-color:#1d4ed8}.dispense-btn.fefo{background:var(--color-success-600);color:var(--color-white)}.dispense-btn.fefo:hover{background:var(--color-success-800)}.dispense-btn.batch{background:var(--color-white);border:1px solid var(--color-neutral-200);color:var(--color-neutral-600)}.dispense-btn.batch:hover{background:var(--color-neutral-50);border-color:var(--color-neutral-300)}.dispense-btn:disabled{background:#9ca3af;border-color:#9ca3af;color:#fff;cursor:not-allowed;opacity:.7}.dispense-modal .modal-footer{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) 1.25rem;border-top:1px solid var(--color-neutral-200);background:var(--color-neutral-50)}.dispense-summary{font-size:var(--font-size-body);color:var(--color-neutral-600)}.dispense-summary strong{color:var(--color-neutral-800)}.btn-secondary{padding:.625rem 1.25rem;background:var(--color-white);color:var(--color-neutral-600);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:.9375rem;font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-normal)}.btn-outline{padding:.625rem 1.25rem;background:var(--color-white);color:var(--color-primary-700);border:1px solid var(--color-primary-300);border-radius:var(--radius-md);font-size:.9375rem;font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-normal)}.btn-outline:hover{background:var(--color-primary-50);border-color:var(--color-primary-500)}.btn-success{padding:.625rem 1.25rem;background:var(--color-success, #059669);color:var(--color-white, #ffffff);border:none;border-radius:var(--radius-md);font-size:.9375rem;font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--transition-normal)}.btn-success:hover:not(:disabled){background:var(--color-success-hover)}.dispense-modal .btn-complete-billing{padding:.625rem 1.25rem;background-color:var(--color-success)!important;color:#fff!important;border:none;border-radius:8px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:background-color .2s;display:inline-block;visibility:visible;opacity:1}.dispense-modal .btn-complete-billing:hover:not(:disabled){background-color:var(--color-success-hover)!important}.dispense-modal .btn-complete-billing:disabled{background-color:var(--color-neutral-400)!important;cursor:not-allowed}.batch-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1100}.batch-modal{background:var(--color-white);border-radius:var(--radius-xl);max-width:500px;width:95%;max-height:80vh;overflow:hidden;display:flex;flex-direction:column}.batch-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) 1.25rem;border-bottom:1px solid var(--color-neutral-200)}.batch-modal .modal-header h4{margin:0;font-size:var(--spacing-md);color:var(--color-neutral-800)}.batch-modal .modal-body{flex:1;overflow-y:auto;padding:var(--spacing-md) 1.25rem}.batch-info{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md);padding:var(--spacing-md) var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-md);font-size:var(--font-size-body);color:var(--color-neutral-600)}.batch-info .remaining{color:var(--color-warning-800);font-weight:var(--font-weight-medium)}.batch-info .complete{color:var(--color-success-700);font-weight:var(--font-weight-medium)}.batch-info .over-selected{color:var(--color-error-700);font-weight:var(--font-weight-semibold)}.batch-warning{padding:var(--spacing-md) var(--spacing-md);margin-bottom:var(--spacing-md);background:var(--color-error-200);border:1px solid var(--color-error-400);border-radius:var(--radius-md);color:var(--color-error-700);font-size:var(--font-size-body);font-weight:var(--font-weight-medium)}.batch-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.batch-row{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-md);border:1px solid var(--color-neutral-200)}.batch-row.expiring-soon{border-color:var(--color-warning-300);background:var(--color-warning-light)}.batch-row.expired{border-color:var(--color-error-300);background:var(--color-error-50);opacity:.7}.batch-checkbox{width:18px;height:18px;cursor:pointer}.batch-details{flex:1}.batch-number{font-weight:var(--font-weight-semibold);color:var(--color-neutral-800);font-size:var(--font-size-body)}.batch-meta{display:flex;gap:var(--spacing-md);font-size:var(--font-size-caption);color:var(--color-neutral-500);margin-top:var(--spacing-xs)}.batch-meta .expiry{color:var(--color-warning-800)}.batch-meta .expired{color:var(--color-error-700);font-weight:var(--font-weight-semibold)}.batch-qty-input{width:70px;padding:.375rem var(--spacing-sm);border:1px solid var(--color-neutral-200);border-radius:var(--radius-sm);font-size:var(--font-size-body);text-align:center}.batch-qty-input:focus{outline:none;border-color:var(--color-primary-900)}.batch-modal .modal-footer{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) 1.25rem;border-top:1px solid var(--color-neutral-200)}.batch-modal .selected-total{font-size:var(--font-size-body);color:var(--color-neutral-600)}.batch-modal .selected-total strong{color:var(--color-neutral-800)}.batch-modal .required-qty{color:var(--color-warning-800)}.interaction-checker-wrapper{margin-bottom:var(--spacing-md)}.interaction-warning-badge{display:inline-flex;align-items:center;gap:.375rem;margin-left:var(--spacing-md);padding:var(--spacing-xs) .625rem;background:var(--color-warning-100);color:var(--color-warning-800);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);border-radius:var(--radius-sm);border:1px solid var(--color-warning-400)}.dispense-all-btn{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-primary-900);color:var(--color-white);border:none;border-radius:var(--radius-md);font-size:.8125rem;font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--transition-normal)}.dispense-all-btn:hover:not(:disabled){background:var(--color-primary-600)}.dispense-all-btn:disabled{background:var(--color-neutral-400);cursor:not-allowed}@media(max-width:640px){.pharmacy-summary{overflow-x:auto}.pharmacy-stat-card{min-width:80px}.expiry-details{flex-direction:column;gap:var(--spacing-xs)}.dispense-modal{max-width:100%;width:100%;height:100vh;max-height:100vh;border-radius:0}.dispense-item{flex-direction:column;align-items:flex-start}.item-actions{width:100%;margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-neutral-200)}.dispense-btn{flex:1}.batch-modal{max-width:100%;width:100%;max-height:100vh;border-radius:0}.batch-row{flex-wrap:wrap}.batch-qty-input{width:100%;margin-top:var(--spacing-sm)}.modal-footer{flex-direction:column;gap:var(--spacing-md)}.footer-actions{width:100%}.footer-actions button{flex:1}}.booking-card-popover{position:fixed;z-index:1000;background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026,0 2px 6px #0000001a;min-width:200px;max-width:280px;animation:popoverFadeIn .15s ease-out;border:1px solid var(--color-neutral-200, #e5e7eb)}@keyframes popoverFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.popover-header{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border-bottom:1px solid var(--color-neutral-200, #e5e7eb);background:var(--color-neutral-50, #f9fafb);border-radius:8px 8px 0 0}.popover-patient-name{font-weight:600;font-size:13px;color:var(--color-neutral-800, #1f2937);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:160px}.popover-time{font-size:12px;color:var(--color-neutral-500, #6b7280);font-weight:500}.popover-actions{padding:6px 0}.popover-action{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:none;background:transparent;cursor:pointer;text-align:left;font-size:13px;color:var(--color-neutral-700, #374151);transition:background-color .1s ease}.popover-action:hover{background-color:var(--color-neutral-100, #f3f4f6)}.popover-action:active{background-color:var(--color-neutral-200, #e5e7eb)}.popover-action-icon{font-size:14px;width:20px;text-align:center;flex-shrink:0}.popover-action-label{flex:1}.popover-action-checkin{color:var(--color-success-700, #15803d)}.popover-action-checkin:hover{background-color:var(--color-success-50, #f0fdf4)}.popover-action-checkin .popover-action-icon{color:var(--color-success-600, #16a34a);font-weight:700}.popover-action+.popover-action-checkin{border-top:1px solid var(--color-neutral-200, #e5e7eb);margin-top:4px;padding-top:10px}.drag-ghost{position:fixed;z-index:9999;pointer-events:none;width:220px;padding:var(--spacing-3);background:#fff;border-radius:var(--radius-md);box-shadow:var(--shadow-lg);border-left:4px solid var(--color-primary-500);transform:translate(-50%,-50%);opacity:.95;transition:opacity .15s,box-shadow .15s}.drag-ghost.valid-target{box-shadow:0 8px 24px #10b9814d;border-left-color:var(--color-success-500)}.drag-ghost.invalid-target{box-shadow:0 8px 24px #ef44444d;border-left-color:var(--color-error-500);opacity:.7}.ghost-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-1)}.ghost-patient{font-weight:600;color:var(--color-neutral-900);font-size:.9rem}.ghost-time{font-size:.8rem;color:var(--color-neutral-500)}.ghost-reason{font-size:.8rem;color:var(--color-neutral-600);margin-bottom:var(--spacing-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ghost-hint{font-size:.75rem;padding:var(--spacing-1) var(--spacing-2);border-radius:var(--radius-sm);text-align:center}.valid-target .ghost-hint{background:var(--color-success-50);color:var(--color-success-700)}.invalid-target .ghost-hint{background:var(--color-error-50);color:var(--color-error-700)}.month-view{background:#fff;border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--color-neutral-200)}.month-view.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;color:var(--color-neutral-600);gap:var(--spacing-3)}.month-view .loading-spinner{width:40px;height:40px;border:3px solid var(--color-neutral-200);border-top-color:var(--color-primary-500);border-radius:50%;animation:spin 1s linear infinite}.month-header{display:grid;grid-template-columns:repeat(7,1fr);background:var(--color-neutral-50);border-bottom:1px solid var(--color-neutral-200)}.weekday-header{padding:var(--spacing-3);text-align:center;font-weight:600;font-size:.85rem;color:var(--color-neutral-600)}.month-grid{display:grid;grid-template-columns:repeat(7,1fr)}.month-day-header{padding:var(--spacing-3);text-align:center;font-weight:600;font-size:.85rem;color:var(--color-neutral-600);background:var(--color-neutral-50);border-bottom:1px solid var(--color-neutral-200)}.month-day{min-height:80px;padding:var(--spacing-2);border-right:1px solid var(--color-neutral-100);border-bottom:1px solid var(--color-neutral-100);cursor:pointer;transition:background-color .15s;position:relative}.month-day:nth-child(7n){border-right:none}.month-day:hover:not(.disabled):not(.other-month){background:var(--color-primary-50)}.month-day.selected{background:var(--color-primary-100);box-shadow:inset 0 0 0 2px var(--color-primary-500)}.month-day.today .day-number{background:var(--color-primary-500);color:#fff;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center}.month-day.other-month{background:var(--color-neutral-50)}.month-day.other-month .day-number{color:var(--color-neutral-400)}.month-day.disabled{cursor:not-allowed;background:var(--color-neutral-100)}.month-day.disabled .day-number{color:var(--color-neutral-400)}.month-day.past{background:var(--color-neutral-50);cursor:default}.month-day.past .day-number{color:var(--color-neutral-400)}.month-day.weekend{background:var(--color-neutral-25, #fafafa)}.month-day.no-availability{background:var(--color-neutral-50)}.month-day.no-availability .day-number{color:var(--color-neutral-500)}.month-day.clickable{cursor:pointer}.month-day.clickable:hover{background:var(--color-primary-50)}.month-day.clickable:focus{outline:2px solid var(--color-primary-500);outline-offset:-2px}.day-number{font-weight:500;font-size:.9rem;color:var(--color-neutral-800);margin-bottom:var(--spacing-1)}.availability-indicator{display:flex;align-items:center;gap:var(--spacing-1);margin-top:var(--spacing-1)}.availability-dot{width:8px;height:8px;border-radius:50%}.availability-text{font-size:.7rem;color:var(--color-neutral-500)}.month-day.fully-booked .availability-dot{background:var(--color-error-500)}.month-day.fully-booked .availability-text{color:var(--color-error-600)}.day-indicators{display:flex;align-items:center;gap:var(--spacing-1);margin-top:var(--spacing-1)}.fully-booked-indicator{font-size:.65rem;color:var(--color-error-600);background:var(--color-error-100);padding:1px 4px;border-radius:var(--radius-sm);font-weight:600}.day-bookings{display:flex;flex-direction:column;gap:2px;margin-top:var(--spacing-1);max-height:40px;overflow-y:auto}.day-booking-chip{padding:2px 4px;background:var(--color-primary-100);border-radius:var(--radius-sm);font-size:.65rem;color:var(--color-primary-700);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;transition:background-color .15s}.day-booking-chip:hover{background:var(--color-primary-200)}.day-booking-chip.status-confirmed{background:var(--color-primary-100);color:var(--color-primary-700)}.day-booking-chip.status-arrived,.day-booking-chip.status-checked_in{background:var(--color-success-100);color:var(--color-success-700)}.day-booking-chip.status-cancelled,.day-booking-chip.status-no_show{background:var(--color-neutral-100);color:var(--color-neutral-500);text-decoration:line-through}.day-booking{margin-top:var(--spacing-1);padding:var(--spacing-1) var(--spacing-2);background:var(--color-primary-100);border-radius:var(--radius-sm);font-size:.7rem;color:var(--color-primary-700);display:flex;align-items:center;gap:var(--spacing-1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.day-booking .booking-time{font-weight:600}.day-booking .booking-icon{font-size:.75rem}.month-legend,.month-view-legend{display:flex;flex-wrap:wrap;gap:var(--spacing-4);padding:var(--spacing-3) var(--spacing-4);background:var(--color-neutral-50);border-top:1px solid var(--color-neutral-200);font-size:.8rem}.legend-dot.good{background:var(--color-success-500)}.legend-dot.moderate{background:var(--color-warning-500)}.legend-dot.limited{background:var(--color-error-500)}.legend-dot.unavailable{background:var(--color-neutral-400)}@media(max-width:640px){.month-day{min-height:60px;padding:var(--spacing-1)}.day-number{font-size:.8rem}.month-day-header{padding:var(--spacing-2);font-size:.75rem}.day-booking{padding:2px 4px;font-size:.65rem}.availability-text{display:none}.month-view-legend{padding:var(--spacing-2);gap:var(--spacing-2)}}.reception-month-view{background:#fff;border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--color-neutral-200)}.reception-month-view.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;color:var(--color-neutral-600);gap:var(--spacing-3)}.reception-month-view .loading-spinner{width:40px;height:40px;border:3px solid var(--color-neutral-200);border-top-color:var(--color-primary-500);border-radius:50%;animation:spin 1s linear infinite}.quarter-stats-bar{display:flex;justify-content:center;align-items:flex-start;gap:48px;padding:16px 24px;background:#fff;border-bottom:1px solid var(--color-neutral-200)}.quarter-stat{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:60px}.quarter-stat-value{font-size:24px;font-weight:700;color:var(--color-neutral-800);line-height:1}.quarter-stat-label{font-size:10px;font-weight:500;color:var(--color-neutral-500);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.quarter-stat.stat-pending .quarter-stat-value{color:#22c55e}.quarter-stat.stat-completed .quarter-stat-value,.quarter-stat.stat-noshow .quarter-stat-value{color:var(--color-neutral-600)}.quarter-stat.stat-alerts .quarter-stat-value{color:#f59e0b;display:flex;align-items:center;gap:4px}.quarter-stat .alert-icon{color:#f59e0b;font-size:14px}.month-cards-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:1px;background:var(--color-neutral-200)}.month-card{background:#fff;padding:16px;cursor:pointer;transition:all .15s ease;display:flex;flex-direction:column;min-height:380px}.month-card:hover{background:#f8f5ff}.month-card:focus{outline:2px solid var(--color-primary-500);outline-offset:-2px;z-index:2}.month-card.is-current{box-shadow:inset 0 0 0 2px var(--color-primary-500);border-radius:8px}.month-card.is-past{background:#fafafa}.month-card.is-past .month-card-content{opacity:.6}.month-card.no-bookings{background:#fafafa}.month-card-header{display:flex;flex-direction:column;align-items:center;padding-bottom:12px;border-bottom:1px solid #f0f0f0;margin-bottom:16px}.month-name{font-size:11px;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.5px}.month-day{font-size:24px;font-weight:700;color:var(--color-neutral-800);margin-top:2px}.month-card.is-current .month-day{color:#8b5cf6}.month-card-content{flex:1;display:flex;flex-direction:column;align-items:center;gap:12px}.capacity-ring-container{position:relative;width:72px;height:72px}.capacity-ring{width:100%;height:100%;transform:rotate(-90deg)}.capacity-ring .ring-bg{fill:none;stroke:#e5e7eb;stroke-width:4}.capacity-ring .ring-fill{fill:none;stroke-width:4;stroke-linecap:round;transition:stroke-dasharray .3s ease}.capacity-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:16px;font-weight:600;color:#6b7280}.booking-count{font-size:14px;color:#6b7280;margin-top:4px}.status-breakdown{width:100%;display:flex;flex-direction:column;gap:6px;margin-top:8px}.status-row{display:flex;align-items:center;gap:8px;padding:4px 0}.status-row .status-value{font-size:14px;font-weight:600;min-width:24px}.status-row .status-bar{flex:1;height:10px;border-radius:5px;min-width:60px}.status-row .status-label{font-size:13px;color:#9ca3af;min-width:60px;text-align:right}.status-row.pending .status-value{color:#16a34a}.status-row.pending .status-bar{background:#4ade80}.status-row.arrived .status-value{color:#6b7280}.status-row.arrived .status-bar{background:#d1d5db}.status-row.completed .status-value{color:#6b7280}.status-row.completed .status-bar{background:#d1d5db}.status-row.noshow .status-value{color:#6b7280}.status-row.noshow .status-bar{background:#d1d5db}.month-card-footer{display:flex;justify-content:center;gap:24px;margin-top:auto;padding-top:12px}.footer-stat{display:flex;align-items:center;gap:4px;font-size:13px;color:#9ca3af}.footer-stat.late .late-icon{color:#ef4444}.footer-stat.alerts,.footer-stat.alerts .alert-icon{color:#f59e0b}.no-bookings-text{flex:1;display:flex;align-items:center;justify-content:center;color:#9ca3af;font-size:14px}.quarter-footer{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#fafafa;border-top:1px solid var(--color-neutral-200)}.capacity-legend{display:flex;gap:16px}.legend-item{display:flex;align-items:center;gap:6px;font-size:12px;color:#6b7280}.legend-dot{width:8px;height:8px;border-radius:50%}.quarter-hint{font-size:12px;color:#9ca3af}@media(max-width:1200px){.month-cards-grid{grid-template-columns:repeat(3,1fr)}.month-card{min-height:340px}}@media(max-width:900px){.month-cards-grid{grid-template-columns:repeat(2,1fr)}.month-card{padding:12px;min-height:320px}.capacity-ring-container{width:64px;height:64px}.capacity-text{font-size:14px}.quarter-stats-bar{gap:24px;padding:12px 16px}.quarter-stat-value{font-size:20px}}@media(max-width:640px){.month-cards-grid{grid-template-columns:1fr}.month-card{min-height:auto;padding:16px}.month-card-header{flex-direction:row;justify-content:flex-start;gap:8px;border-bottom:none;padding-bottom:0;margin-bottom:8px}.month-card-content{flex-direction:row;flex-wrap:wrap;justify-content:space-between;align-items:flex-start}.capacity-ring-container{width:56px;height:56px}.status-breakdown{flex:1;min-width:150px}.month-card-footer{width:100%;justify-content:flex-end;margin-top:8px;padding-top:8px;border-top:1px solid #f0f0f0}.quarter-footer{flex-direction:column;gap:8px}.capacity-legend{flex-wrap:wrap;justify-content:center;gap:8px}.quarter-stats-bar{gap:16px;flex-wrap:wrap;justify-content:center}.quarter-stat-value{font-size:18px}.quarter-stat-label{font-size:9px}}@media(max-width:480px){.month-card{padding:12px}.capacity-ring-container{width:48px;height:48px}.capacity-text{font-size:12px}.status-row .status-label{display:none}}.booking-calendar{display:flex;flex-direction:column;width:100%;height:100%;background:var(--color-neutral-50);border-radius:var(--radius-lg);overflow:hidden}.calendar-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--spacing-md) var(--spacing-lg);background:#fff;border-bottom:1px solid var(--color-neutral-200);gap:var(--spacing-lg);box-sizing:border-box}.calendar-header-left{display:flex;align-items:center;gap:var(--spacing-lg);flex:1}.calendar-header-center,.calendar-header-right{display:flex;align-items:center;flex-shrink:0}.calendar-nav{display:flex;align-items:center;gap:var(--spacing-xs)}.nav-btn{display:flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:0 var(--spacing-md);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);background:#fff;color:var(--color-neutral-700);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all .15s ease}.nav-btn:hover{background:var(--color-neutral-100);border-color:var(--color-neutral-400)}.nav-btn.active{background:var(--color-primary-50);border-color:var(--color-primary-500);color:var(--color-primary-700)}.nav-btn.nav-today{padding:0 16px;min-width:70px;font-size:var(--font-size-lg);font-weight:600}.nav-icon{font-size:var(--font-size-md);font-weight:700}.calendar-date-display{display:flex;align-items:center;gap:var(--spacing-sm)}.current-date-title{font-size:var(--font-size-lg);font-weight:600;color:var(--color-neutral-900);margin:0}.date-picker-input{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-neutral-700);cursor:pointer}.calendar-header .view-toggle{display:flex;border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);overflow:hidden;background:transparent;padding:0}.calendar-header .view-btn{padding:var(--spacing-sm) var(--spacing-md);border:none;background:#fff;color:var(--color-neutral-600);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all .15s ease}.calendar-header .view-btn:not(:last-child){border-right:1px solid var(--color-neutral-300)}.calendar-header .view-btn:hover{background:var(--color-neutral-100)}.calendar-header .view-btn.active{background:var(--color-primary-900);color:#fff}.doctor-filter{display:flex;align-items:center;gap:var(--spacing-sm)}.filter-label{font-size:var(--font-size-sm);color:var(--color-neutral-600);font-weight:500}.doctor-chips{display:flex;gap:var(--spacing-xs)}.doctor-chip{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-neutral-300);border-radius:var(--radius-full);background:#fff;color:var(--color-neutral-600);font-size:var(--font-size-xs);cursor:pointer;transition:all .15s ease}.doctor-chip:hover{background:var(--color-neutral-100)}.doctor-chip.active{background:var(--color-primary-100);border-color:var(--color-primary-500);color:var(--color-primary-700)}.doctor-more{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs);color:var(--color-neutral-500)}.calendar-content{flex:1;width:100%;overflow:auto;padding:var(--spacing-md);box-sizing:border-box}.calendar-error{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--color-error-50);border:1px solid var(--color-error-200);border-radius:var(--radius-md);margin:var(--spacing-md)}.error-icon{font-size:var(--font-size-lg)}.error-message{flex:1;color:var(--color-error-700)}.btn-retry{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-error-300);border-radius:var(--radius-md);background:#fff;color:var(--color-error-700);font-size:var(--font-size-sm);cursor:pointer}.day-view{display:flex;flex-direction:column;width:100%;height:100%}.day-view.loading,.day-view.empty{display:flex;align-items:center;justify-content:center;min-height:400px}.loading-spinner{width:32px;height:32px;border:3px solid var(--color-neutral-200);border-top-color:var(--color-primary-500);border-radius:50%;animation:spin 1s linear infinite}.empty-state{text-align:center;color:var(--color-neutral-500)}.empty-icon{font-size:48px;margin-bottom:var(--spacing-md)}.day-view-grid{display:grid;flex:1;width:100%;overflow:auto;background:#fff;border-radius:var(--radius-md);border:1px solid var(--color-neutral-200);position:relative}.time-column{display:flex;flex-direction:column;border-right:1px solid var(--color-neutral-200);background:var(--color-neutral-50)}.time-column-header{height:48px;display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--color-neutral-200);background:#fff}.time-label-header{font-size:var(--font-size-xs);font-weight:600;color:var(--color-neutral-500);text-transform:uppercase}.time-labels{flex:1}.time-label{height:40px;display:flex;align-items:flex-start;justify-content:flex-end;padding-right:var(--spacing-sm);font-size:var(--font-size-xs);color:var(--color-neutral-500)}.time-label.hour-label{font-weight:600;color:var(--color-neutral-700)}.time-tick{width:8px;height:1px;background:var(--color-neutral-300)}.doctor-column{display:flex;flex-direction:column;border-right:1px solid var(--color-neutral-200);min-width:150px}.doctor-column:last-child{border-right:none}.doctor-column.unavailable{opacity:.5}.doctor-column-header{height:48px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xs) var(--spacing-sm);border-bottom:1px solid var(--color-neutral-200);border-top:3px solid var(--color-primary-500);background:#fff}.doctor-name{font-size:var(--font-size-sm);font-weight:600;color:var(--color-neutral-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.doctor-spec{font-size:var(--font-size-xs);color:var(--color-neutral-500)}.doctor-leave{font-size:var(--font-size-xs);color:var(--color-error-600)}.doctor-status-badge{font-size:.625rem;font-weight:600;padding:2px 6px;border-radius:4px;margin-top:2px;white-space:nowrap;text-transform:uppercase;letter-spacing:.025em}.doctor-slots{flex:1;position:relative;display:flex;flex-direction:column}.unavailable-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--color-neutral-100);color:var(--color-neutral-500);font-size:var(--font-size-sm)}.time-slot{height:40px;min-height:40px;border-bottom:1px solid var(--color-neutral-100);cursor:pointer;transition:background .15s ease;position:relative;flex-shrink:0}.time-slot:hover{background:var(--color-primary-50)}.time-slot.selected{background:var(--color-primary-100);box-shadow:inset 0 0 0 2px var(--color-primary-400)}.time-slot.unavailable{cursor:not-allowed}.time-slot.outside-hours{background:var(--color-neutral-100);cursor:not-allowed}.time-slot.outside-hours:hover{background:var(--color-neutral-100)}.time-slot.has-booking{height:40px;min-height:40px;padding:2px 4px;overflow:hidden}.slot-hint{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:var(--font-size-xs);color:var(--color-primary-600);pointer-events:none}.booking-card{display:flex;align-items:center;height:100%;padding:0 8px;border-radius:var(--radius-sm);border-left:4px solid var(--color-primary-500);cursor:pointer;transition:all .1s ease;overflow:hidden;background:var(--color-primary-50)}.booking-card:hover{filter:brightness(.97)}.booking-card.selected{box-shadow:0 0 0 2px var(--color-primary-500)}.booking-card-inline{display:flex;align-items:center;gap:8px;width:100%;font-size:12px}.booking-time-inline{font-weight:600;color:var(--color-neutral-700);min-width:40px}.booking-name-inline{flex:1;font-weight:500;color:var(--color-primary-700);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.booking-name-inline:hover{text-decoration:underline}.booking-name-inline.clickable,.booking-patient-compact.clickable{cursor:pointer;transition:color .15s ease}.booking-name-inline.clickable:hover,.booking-patient-compact.clickable:hover{color:var(--color-primary-600);text-decoration:underline}.status-badge-inline{font-size:10px;font-weight:600;text-transform:uppercase;padding:2px 6px;border-radius:var(--radius-sm);white-space:nowrap}.status-badge-inline.status-confirmed{background:var(--color-primary-100);color:var(--color-primary-700)}.status-badge-inline.status-arrived{background:var(--color-success-100);color:var(--color-success-700)}.status-badge-inline.status-converted{background:var(--color-info-100);color:var(--color-info-700)}.status-badge-inline.status-cancelled{background:var(--color-neutral-200);color:var(--color-neutral-600)}.status-badge-inline.status-no_show{background:var(--color-error-100);color:var(--color-error-700)}.status-badge-inline.status-late{background:var(--color-warning-100);color:var(--color-warning-700);animation:pulse-late 1.5s ease-in-out infinite}.status-badge-inline.status-walkin{background:var(--color-info-100);color:var(--color-info-700);font-weight:600}.btn-checkin-inline{width:24px;height:24px;border:none;border-radius:var(--radius-sm);background:var(--color-success-500);color:#fff;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .1s ease}.btn-checkin-inline:hover{background:var(--color-success-600);transform:scale(1.1)}.status-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.status-dot.status-arrived{background:var(--color-success-500)}.status-dot.status-converted{background:var(--color-info-500)}.status-dot.status-cancelled{background:var(--color-neutral-400)}.status-dot.status-no_show{background:var(--color-error-500)}.booking-card.status-confirmed{background:var(--color-primary-100)!important;border-left-color:var(--color-primary-900)}.booking-card.status-arrived{background:var(--color-success-light)!important;border-left-color:var(--color-success)}.booking-card.status-converted{background:var(--color-info-light)!important;border-left-color:var(--color-info)}.booking-card.status-cancelled{background:var(--color-neutral-200)!important;border-left-color:var(--color-neutral-500);opacity:.6}.booking-card.status-no_show{background:var(--color-error-light)!important;border-left-color:var(--color-error)}.booking-card.is-late{background:var(--color-warning-light)!important;border-left-color:var(--color-warning)}.booking-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-xs)}.booking-patient-name{font-size:var(--font-size-sm);font-weight:600;color:var(--color-neutral-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.booking-card .patient-link{padding:0;margin:0;font-size:var(--font-size-sm);font-weight:600;color:var(--color-primary-700)}.booking-card .patient-link:hover{color:var(--color-primary-800)}.booking-card .patient-link .patient-name{max-width:120px}.booking-status-badge{flex-shrink:0;padding:2px 6px;border-radius:var(--radius-sm);font-size:10px;font-weight:600;color:#fff;text-transform:uppercase}.booking-reason{font-size:var(--font-size-xs);color:var(--color-neutral-600);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.booking-badges{display:flex;gap:var(--spacing-xs);flex-wrap:wrap}.badge{padding:2px 6px;border-radius:var(--radius-sm);font-size:10px;font-weight:500}.badge-allergies{background:var(--color-error-100);color:var(--color-error-700)}.badge-vip{background:var(--color-warning-100);color:var(--color-warning-700)}.badge-panel{background:var(--color-info-100);color:var(--color-info-700)}.badge-dot{width:8px;height:8px;border-radius:50%}.badge-dot.badge-allergies{background:var(--color-error-500)}.badge-dot.badge-vip{background:var(--color-warning-500)}.booking-time-info{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-xs);color:var(--color-neutral-500)}.booking-time{font-weight:600}.booking-doctor{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-xs);color:var(--color-neutral-600)}.doctor-icon{font-size:var(--font-size-sm)}.booking-actions{display:flex;gap:var(--spacing-xs);margin-top:var(--spacing-xs)}.btn-action{flex:1;padding:var(--spacing-xs) var(--spacing-sm);border:none;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:500;cursor:pointer;transition:all .15s ease}.btn-check-in{background:var(--color-success-500);color:#fff}.btn-check-in:hover{background:var(--color-success-600)}.btn-cancel{background:var(--color-neutral-200);color:var(--color-neutral-700)}.btn-cancel:hover{background:var(--color-neutral-300)}.booking-code{font-size:10px;color:var(--color-neutral-400);font-family:monospace}.booking-card-compact{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs);background:#fff;border-radius:var(--radius-sm);border-left:3px solid var(--color-primary-500);font-size:var(--font-size-xs);height:auto;min-height:24px}.booking-card-compact .booking-time{font-weight:600;color:var(--color-neutral-700)}.booking-initials{font-weight:600;color:var(--color-neutral-900)}.booking-patient-compact{flex:1;font-weight:600;color:var(--color-neutral-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100px}.current-time-indicator{position:absolute;left:60px;right:0;display:flex;align-items:center;z-index:10;pointer-events:none}.current-time-dot{width:10px;height:10px;border-radius:50%;background:var(--color-error-500);margin-left:-5px}.current-time-line{flex:1;height:2px;background:var(--color-error-500)}.current-time-label{position:absolute;left:-55px;padding:2px 4px;background:var(--color-error-500);color:#fff;font-size:10px;font-weight:600;border-radius:var(--radius-sm)}.day-view-summary{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md);background:#fff;border-top:1px solid var(--color-neutral-200);border-radius:0 0 var(--radius-md) var(--radius-md)}.summary-item{display:flex;align-items:center;gap:var(--spacing-xs)}.summary-label{font-size:var(--font-size-sm);color:var(--color-neutral-600)}.summary-value{font-size:var(--font-size-sm);font-weight:600;color:var(--color-neutral-900)}.summary-legend{display:flex;gap:var(--spacing-md)}.legend-item{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-xs);color:var(--color-neutral-600)}.week-view{display:flex;flex-direction:column;height:100%}.week-view.loading{display:flex;align-items:center;justify-content:center;min-height:400px}.week-view-grid{display:grid;flex:1;gap:var(--spacing-sm);background:var(--color-neutral-50);padding:var(--spacing-sm);border-radius:var(--radius-md)}.week-day-column{display:flex;flex-direction:column;background:#fff;border-radius:var(--radius-md);border:1px solid var(--color-neutral-200);overflow:hidden;cursor:pointer;transition:all .15s ease}.week-day-column:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.week-day-column.is-today{border-color:var(--color-primary-400);box-shadow:0 0 0 1px var(--color-primary-200)}.day-header{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-sm);background:var(--color-neutral-50);border-bottom:1px solid var(--color-neutral-200)}.day-name{font-size:var(--font-size-xs);font-weight:500;color:var(--color-neutral-500);text-transform:uppercase}.day-number{font-size:var(--font-size-xl);font-weight:700;color:var(--color-neutral-900)}.day-number.today{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--color-primary-500);color:#fff;border-radius:50%}.today-badge{font-size:10px;font-weight:600;color:var(--color-primary-600);text-transform:uppercase}.capacity-bar-container{height:4px;background:var(--color-neutral-100)}.capacity-bar{height:100%;transition:width .3s ease}.day-summary{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-xs) var(--spacing-sm);border-bottom:1px solid var(--color-neutral-100)}.booking-count{font-size:var(--font-size-sm);font-weight:600;color:var(--color-neutral-900)}.status-count{font-size:var(--font-size-xs);color:var(--color-neutral-500)}.status-count.confirmed{color:var(--color-primary-600)}.status-count.arrived{color:var(--color-success-600)}.day-bookings{flex:1;padding:var(--spacing-xs);display:flex;flex-direction:column;gap:var(--spacing-xs);overflow-y:auto;max-height:300px}.more-bookings{text-align:center;font-size:var(--font-size-xs);color:var(--color-primary-600);font-weight:500;padding:var(--spacing-xs)}.no-bookings{text-align:center;font-size:var(--font-size-sm);color:var(--color-neutral-400);padding:var(--spacing-md)}.week-view-summary{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md);background:#fff;border-radius:var(--radius-md);margin-top:var(--spacing-sm)}.capacity-legend{display:flex;gap:var(--spacing-md)}.legend-bar{width:24px;height:8px;border-radius:var(--radius-sm)}.slot-action-panel{position:fixed;bottom:var(--spacing-lg);left:50%;transform:translate(-50%);background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--spacing-md) var(--spacing-lg);z-index:100;animation:slideUp .2s ease}@keyframes slideUp{0%{opacity:0;transform:translate(-50%) translateY(20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.panel-content h4{margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-md);font-weight:600}.panel-content p{margin:0 0 var(--spacing-sm) 0;font-size:var(--font-size-sm);color:var(--color-neutral-600)}.panel-actions{display:flex;gap:var(--spacing-sm)}.btn-primary{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-primary-500);color:#fff;border:none;border-radius:var(--radius-md);font-weight:500;cursor:pointer;transition:background .15s ease}.btn-secondary{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-neutral-100);color:var(--color-neutral-700);border:none;border-radius:var(--radius-md);font-weight:500;cursor:pointer;transition:background .15s ease}.keyboard-hints{display:flex;justify-content:center;gap:var(--spacing-md);padding:var(--spacing-sm);background:var(--color-neutral-100);border-top:1px solid var(--color-neutral-200);font-size:var(--font-size-xs);color:var(--color-neutral-500)}.keyboard-hints span{display:flex;align-items:center;gap:var(--spacing-xs)}.booking-card.draggable{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.booking-card.draggable:active{cursor:grabbing}.booking-card.dragging{opacity:.4;pointer-events:none}.time-slot.drop-target{background:var(--color-primary-100);box-shadow:inset 0 0 0 2px var(--color-primary-400)}.time-slot.drop-target.valid{background:var(--color-success-100);box-shadow:inset 0 0 0 2px var(--color-success-400)}.time-slot.drop-target.invalid{background:var(--color-error-100);box-shadow:inset 0 0 0 2px var(--color-error-400);cursor:not-allowed}.reschedule-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999}.reschedule-modal{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);width:100%;max-width:400px;padding:var(--spacing-lg);animation:modalIn .2s ease}@keyframes modalIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.reschedule-modal h3{margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-lg);font-weight:600;color:var(--color-neutral-900)}.reschedule-details{background:var(--color-neutral-50);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-md)}.reschedule-detail-row{display:flex;justify-content:space-between;margin-bottom:var(--spacing-sm)}.reschedule-detail-row:last-child{margin-bottom:0}.reschedule-label{font-size:var(--font-size-sm);color:var(--color-neutral-500)}.reschedule-value{font-size:var(--font-size-sm);font-weight:600;color:var(--color-neutral-900)}.reschedule-arrow{display:flex;align-items:center;justify-content:center;padding:var(--spacing-sm);color:var(--color-primary-500);font-size:var(--font-size-lg)}.reschedule-actions{display:flex;gap:var(--spacing-sm);justify-content:flex-end}.reschedule-patient{display:flex;flex-direction:column;gap:var(--spacing-xs);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-neutral-200);margin-bottom:var(--spacing-md)}.reschedule-patient strong{font-size:var(--font-size-md);color:var(--color-neutral-900)}.reschedule-reason{font-size:var(--font-size-sm);color:var(--color-neutral-600)}.reschedule-time-change{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md)}.time-block{display:flex;flex-direction:column;align-items:center;flex:1;padding:var(--spacing-sm);border-radius:var(--radius-md)}.time-block.original{background:var(--color-neutral-100)}.time-block.new{background:var(--color-success-50);border:1px solid var(--color-success-200)}.time-block .time-label{font-size:var(--font-size-xs);color:var(--color-neutral-500);text-transform:uppercase;font-weight:500}.time-block .time-date{font-size:var(--font-size-sm);color:var(--color-neutral-700)}.time-block .time-value{font-size:var(--font-size-lg);font-weight:600;color:var(--color-neutral-900)}.notify-checkbox{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);font-size:var(--font-size-sm);color:var(--color-neutral-700);cursor:pointer}.notify-checkbox input{width:16px;height:16px;cursor:pointer}.time-slot.drop-target-valid{background:var(--color-success-100);box-shadow:inset 0 0 0 2px var(--color-success-400);animation:pulseGreen 1s ease-in-out infinite}.time-slot.drop-target-invalid{background:var(--color-error-100);box-shadow:inset 0 0 0 2px var(--color-error-400);cursor:not-allowed}@keyframes pulseGreen{0%,to{box-shadow:inset 0 0 0 2px var(--color-success-400)}50%{box-shadow:inset 0 0 0 3px var(--color-success-500)}}.drop-hint{display:flex;align-items:center;justify-content:center;height:100%;font-size:var(--font-size-xs);font-weight:500;pointer-events:none}.drop-target-valid .drop-hint{color:var(--color-success-700)}.drop-target-invalid .drop-hint{color:var(--color-error-700)}.time-slot.being-dragged{opacity:.5;background:var(--color-neutral-200)}.doctor-column.drag-active .doctor-slots{border:1px dashed var(--color-neutral-300)}.swap-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999}.swap-modal{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);width:100%;max-width:450px;padding:var(--spacing-lg);animation:modalIn .2s ease}.swap-modal-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.swap-modal-header svg{color:var(--color-warning-500)}.swap-modal-header h3{margin:0;font-size:var(--font-size-lg);font-weight:600;color:var(--color-neutral-900)}.swap-modal-description{font-size:var(--font-size-sm);color:var(--color-neutral-600);margin-bottom:var(--spacing-lg);line-height:1.5}.swap-visual{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.swap-card{flex:1;padding:var(--spacing-md);border-radius:var(--radius-md);background:var(--color-neutral-50);border:1px solid var(--color-neutral-200)}.swap-card.moving{background:var(--color-warning-50);border-color:var(--color-warning-200)}.swap-card.conflicting{background:var(--color-neutral-50);border-color:var(--color-neutral-200)}.swap-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-xs)}.swap-card-label{font-size:var(--font-size-xs);color:var(--color-neutral-500);text-transform:uppercase;font-weight:500}.urgent-badge{font-size:10px;font-weight:600;padding:2px 6px;border-radius:var(--radius-sm);background:var(--color-error-100);color:var(--color-error-700)}.swap-card-patient{font-size:var(--font-size-md);font-weight:600;color:var(--color-neutral-900);margin-bottom:var(--spacing-xs);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.swap-card-time{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm)}.swap-card-time .time-from{color:var(--color-neutral-500);text-decoration:line-through}.swap-card-time .time-to{color:var(--color-success-600);font-weight:600}.swap-card-time svg{color:var(--color-neutral-400);flex-shrink:0}.swap-arrows{display:flex;align-items:center;justify-content:center;color:var(--color-neutral-400);flex-shrink:0}.swap-warning{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-warning-50);border:1px solid var(--color-warning-200);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);font-size:var(--font-size-sm);color:var(--color-warning-700)}.swap-warning svg{flex-shrink:0;margin-top:2px}.swap-actions{display:flex;gap:var(--spacing-sm);justify-content:flex-end}@media(max-width:1024px){.calendar-header{flex-wrap:wrap;gap:var(--spacing-md)}.doctor-filter{width:100%;justify-content:center}.doctor-chips{flex-wrap:wrap;justify-content:center}}@media(max-width:768px){.calendar-header{flex-direction:column;align-items:stretch}.calendar-header-left,.calendar-header-center,.calendar-header-right{justify-content:center}.day-view-grid{grid-template-columns:50px 1fr}.doctor-column{min-width:120px}.week-view-grid{grid-template-columns:repeat(3,1fr)}.day-view-summary{flex-direction:column;gap:var(--spacing-sm)}.summary-legend{flex-wrap:wrap;justify-content:center}.keyboard-hints{display:none}}@media(max-width:480px){.week-view-grid{grid-template-columns:1fr}.doctor-column{min-width:100%}}.badge-dot.badge-noshow-risk{width:8px;height:8px;border-radius:50%;display:inline-block;margin-left:4px;flex-shrink:0}.badge-dot.badge-noshow-risk.risk-medium{background:var(--color-warning-500)}.badge-dot.badge-noshow-risk.risk-high{background:var(--color-error-500);animation:pulse-risk 1.5s ease-in-out infinite}.badge.badge-noshow-risk{font-size:var(--font-size-xs);padding:2px 6px;border-radius:var(--radius-sm);font-weight:var(--font-weight-semibold)}.badge.badge-noshow-risk.risk-medium{background:var(--color-warning-500);color:#fff}.badge.badge-noshow-risk.risk-high{background:var(--color-error-500);color:#fff;animation:pulse-risk 1.5s ease-in-out infinite}.booking-card.blacklisted{border:2px solid var(--color-error-500);background:var(--color-error-50)}.booking-card.blacklisted .blacklist-banner{background:var(--color-error-500);color:#fff;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);text-align:center;padding:2px 8px;margin:-8px -8px 8px;text-transform:uppercase;letter-spacing:.5px}.booking-card-compact.blacklisted{background:var(--color-error-50);border-left-color:var(--color-error-500)!important}@keyframes pulse-risk{0%,to{opacity:1}50%{opacity:.6}}.badge-noshow-risk[title]{cursor:help;position:relative}.badge.badge-noshow-risk:hover{transform:scale(1.05);transition:transform .15s ease}.alert-banner{display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:2px var(--spacing-sm);margin:calc(-1 * var(--spacing-sm)) calc(-1 * var(--spacing-sm)) var(--spacing-sm) calc(-1 * var(--spacing-sm));font-size:var(--font-size-xs);font-weight:700;text-transform:uppercase;letter-spacing:.5px}.alert-banner.alert-tier-1{background:var(--color-error-500);color:#fff}.alert-banner.alert-late{background:var(--color-warning-500);color:var(--color-warning-900)}.booking-card.alert-tier-1{border-left-color:var(--color-error-500);background:linear-gradient(135deg,var(--color-error-50) 0%,white 100%);box-shadow:0 0 0 1px var(--color-error-200),var(--shadow-sm)}.booking-card.alert-tier-2{border-left-color:var(--color-warning-500);background:linear-gradient(135deg,var(--color-warning-50) 0%,white 100%)}.booking-card.is-late{animation:pulse-late 2s ease-in-out infinite}@keyframes pulse-late{0%,to{box-shadow:0 0 0 1px var(--color-warning-300),var(--shadow-sm)}50%{box-shadow:0 0 0 3px var(--color-warning-300),var(--shadow-md)}}.booking-card.is-upcoming{border-left-color:var(--color-success-500);background:linear-gradient(135deg,var(--color-success-50) 0%,white 100%)}.alert-icons{display:flex;align-items:center;gap:var(--spacing-xs)}.alert-icon{font-size:var(--font-size-sm);cursor:help}.alert-icon.alert-allergies{animation:pulse-allergy 1.5s ease-in-out infinite}@keyframes pulse-allergy{0%,to{opacity:1}50%{opacity:.6}}.booking-patient-row{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm)}.patient-phone{font-size:var(--font-size-xs);color:var(--color-neutral-500);font-family:monospace;white-space:nowrap}.booking-time-row{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-xs);color:var(--color-neutral-600)}.booking-duration{color:var(--color-neutral-400)}.time-countdown{display:inline-flex;align-items:center;padding:2px 6px;border-radius:var(--radius-full);font-size:10px;font-weight:600;background:var(--color-neutral-100);color:var(--color-neutral-600)}.time-countdown.upcoming{background:var(--color-success-100);color:var(--color-success-700)}.time-countdown.now{background:var(--color-success-500);color:#fff;animation:pulse-now 1s ease-in-out infinite}@keyframes pulse-now{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.time-countdown.late{background:var(--color-warning-500);color:#fff;animation:pulse-late-badge 1.5s ease-in-out infinite}@keyframes pulse-late-badge{0%,to{opacity:1}50%{opacity:.8}}.time-indicator{font-size:10px;font-weight:600;padding:1px 4px;border-radius:var(--radius-sm);background:var(--color-neutral-100);color:var(--color-neutral-600);margin-left:auto}.time-indicator.upcoming{background:var(--color-success-100);color:var(--color-success-700)}.time-indicator.late{background:var(--color-warning-500);color:#fff}.alert-dots{display:flex;align-items:center;gap:3px;margin-left:var(--spacing-xs)}.badge-dot.badge-panel{background:var(--color-info-500)}.badge-allergies-large{background:var(--color-error-100);color:var(--color-error-700);border:1px solid var(--color-error-300);font-weight:700;animation:pulse-allergy 1.5s ease-in-out infinite}.booking-actions-row{display:flex;gap:var(--spacing-xs);margin-top:var(--spacing-xs)}.btn-check-in-primary{flex:1;padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-success-500);color:#fff;border:none;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:600;cursor:pointer;transition:all .15s ease}.btn-check-in-primary:hover{background:var(--color-success-600);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-check-in-primary:active{transform:translateY(0)}.btn-cancel-secondary{padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-neutral-100);color:var(--color-neutral-600);border:1px solid var(--color-neutral-200);border-radius:var(--radius-sm);font-size:var(--font-size-xs);cursor:pointer;transition:all .15s ease}.btn-cancel-secondary:hover{background:var(--color-neutral-200);color:var(--color-neutral-700)}.card-checkin-btn{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:20px;height:20px;padding:0;display:flex;align-items:center;justify-content:center;background:var(--color-success-500);color:#fff;border:none;border-radius:var(--radius-full);font-size:12px;font-weight:700;cursor:pointer;transition:all .15s ease;z-index:10}.card-checkin-btn:hover{background:var(--color-success-600);transform:translateY(-50%) scale(1.1)}.booking-card-compact{position:relative;min-height:28px}.booking-card-compact:hover{background:var(--color-neutral-50)}.booking-card-compact.is-late{background:var(--color-warning-50);border-left-color:var(--color-warning-500)}.booking-card-compact.is-upcoming{background:var(--color-success-50);border-left-color:var(--color-success-500)}.booking-status-info{display:flex;align-items:center;justify-content:center;padding:var(--spacing-xs);margin-top:auto;border-radius:var(--radius-sm);font-size:var(--font-size-xs);background:var(--color-neutral-100);color:var(--color-neutral-600)}.booking-status-info .status-message{font-weight:500}.booking-status-info.cancelled{background:var(--color-neutral-200);color:var(--color-neutral-500);text-decoration:line-through}.booking-status-info.no-show{background:var(--color-error-100);color:var(--color-error-600)}.booking-card.status-confirmed{border-left-color:var(--color-primary-900);background:var(--color-primary-100)!important}.booking-card.status-arrived{border-left-color:var(--color-success);background:var(--color-success-light)!important}.booking-card.status-converted{border-left-color:var(--color-info);background:var(--color-info-light)!important}.booking-card.status-cancelled{opacity:.6;border-left-color:var(--color-neutral-500);background:var(--color-neutral-200)!important}.booking-card.status-no_show{border-left-color:var(--color-error);background:var(--color-error-light)!important}.booking-card.status-completed{border-left-color:var(--color-info);background:var(--color-info-light)!important}.booking-card.is-late.status-confirmed{border-left-color:var(--color-warning);background:var(--color-warning-light)!important}.booking-card.is-walkin{border-left-color:var(--color-info-500);background:var(--color-info-50)!important;border-left-width:4px}.booking-card.is-walkin:before{content:"🚶";position:absolute;top:2px;right:4px;font-size:10px;opacity:.7}.week-view-summary-mode{display:flex;flex-direction:column;gap:var(--spacing-md)}.week-quick-stats{display:flex;justify-content:center;gap:var(--spacing-lg);padding:var(--spacing-md) var(--spacing-lg);background:#fff;border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.quick-stat{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);min-width:80px}.quick-stat-value{font-size:var(--font-size-2xl);font-weight:700;color:var(--color-neutral-900);line-height:1}.quick-stat-label{font-size:var(--font-size-xs);color:var(--color-neutral-500);text-transform:uppercase;font-weight:500;margin-top:var(--spacing-xs)}.quick-stat.stat-confirmed{background:var(--color-primary-50)}.quick-stat.stat-confirmed .quick-stat-value{color:var(--color-primary-600)}.quick-stat.stat-completed{background:var(--color-success-50)}.quick-stat.stat-completed .quick-stat-value{color:var(--color-success-600)}.quick-stat.stat-noshow{background:var(--color-error-50)}.quick-stat.stat-noshow .quick-stat-value{color:var(--color-error-600)}.quick-stat.stat-alerts{background:var(--color-warning-50)}.quick-stat.stat-alerts .quick-stat-value{color:var(--color-warning-600)}.week-day-column.summary-column{display:flex;flex-direction:column;padding:0;min-height:320px;transition:all .2s ease}.week-day-column.summary-column:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.week-day-column.summary-column.fully-booked{border-color:var(--color-error-300)}.capacity-visual{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-md);background:var(--color-neutral-50)}.capacity-circle-container{position:relative;width:80px;height:80px}.capacity-circle{width:100%;height:100%;transform:rotate(-90deg)}.capacity-circle-bg{fill:none;stroke:var(--color-neutral-200);stroke-width:3}.capacity-circle-fill{fill:none;stroke-width:3;stroke-linecap:round;transition:stroke-dasharray .5s ease}.capacity-percent{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:baseline}.capacity-value{font-size:var(--font-size-xl);font-weight:700;color:var(--color-neutral-900)}.capacity-unit{font-size:var(--font-size-xs);color:var(--color-neutral-500)}.capacity-label{font-size:var(--font-size-sm);color:var(--color-neutral-600);margin-top:var(--spacing-xs)}.status-breakdown{display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--color-neutral-100)}.status-row{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-xs)}.status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.status-row .status-count{font-weight:600;color:var(--color-neutral-900);min-width:16px}.status-row .status-label{color:var(--color-neutral-500)}.heat-map{display:flex;gap:2px;padding:var(--spacing-sm) var(--spacing-md);justify-content:center}.heat-slot{width:12px;height:20px;border-radius:2px;transition:transform .15s ease}.heat-slot:hover{transform:scaleY(1.2)}.day-alerts{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);justify-content:center;min-height:24px}.alert-badge{display:inline-flex;align-items:center;padding:2px 6px;border-radius:var(--radius-sm);font-size:10px;font-weight:600}.alert-badge.alert-late{background:var(--color-warning-100);color:var(--color-warning-700)}.alert-badge.alert-special{background:var(--color-error-100);color:var(--color-error-700)}.alert-badge.alert-slots{background:var(--color-info-100);color:var(--color-info-700)}.alert-badge.alert-full{background:var(--color-error-500);color:#fff;text-transform:uppercase;letter-spacing:.5px}.day-action-hint{display:flex;align-items:center;justify-content:center;padding:var(--spacing-sm);background:var(--color-primary-500);color:#fff;font-size:var(--font-size-sm);font-weight:500;margin-top:auto;opacity:0;transition:opacity .2s ease}.week-day-column.summary-column:hover .day-action-hint{opacity:1}.week-hint{font-size:var(--font-size-xs);color:var(--color-neutral-400);text-align:center}@media(max-width:1024px){.week-quick-stats{flex-wrap:wrap;gap:var(--spacing-sm)}.quick-stat{min-width:60px;padding:var(--spacing-xs) var(--spacing-sm)}.quick-stat-value{font-size:var(--font-size-lg)}.capacity-circle-container{width:60px;height:60px}.capacity-value{font-size:var(--font-size-md)}}@media(max-width:768px){.week-view-summary-mode .week-view-grid{grid-template-columns:repeat(3,1fr)!important}.week-day-column.summary-column{min-height:280px}.heat-map{display:none}}@media(max-width:480px){.week-view-summary-mode .week-view-grid{grid-template-columns:1fr 1fr!important}.week-quick-stats{justify-content:space-around}.capacity-circle-container{width:50px;height:50px}}.day-quick-stats{display:flex;justify-content:flex-start;gap:var(--spacing-md);width:100%;padding:var(--spacing-sm) var(--spacing-md);background:#fff;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);margin-bottom:var(--spacing-md);overflow-x:auto;box-sizing:border-box}.day-quick-stats .quick-stat{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-md);min-width:60px}.day-quick-stats .quick-stat-value{font-size:var(--font-size-xl);font-weight:700;color:var(--color-neutral-900);line-height:1}.day-quick-stats .quick-stat-label{font-size:10px;color:var(--color-neutral-500);text-transform:uppercase;font-weight:500;margin-top:2px;white-space:nowrap}.day-quick-stats .stat-pending{background:var(--color-primary-50)}.day-quick-stats .stat-pending .quick-stat-value{color:var(--color-primary-600)}.day-quick-stats .stat-arrived{background:var(--color-success-50)}.day-quick-stats .stat-arrived .quick-stat-value{color:var(--color-success-600)}.day-quick-stats .stat-completed{background:var(--color-info-50)}.day-quick-stats .stat-completed .quick-stat-value{color:var(--color-info-600)}.day-quick-stats .stat-late{background:var(--color-warning-100);animation:pulse-stat 2s ease-in-out infinite}.day-quick-stats .stat-late .quick-stat-value{color:var(--color-warning-700)}@keyframes pulse-stat{0%,to{opacity:1}50%{opacity:.8}}.day-quick-stats .stat-upcoming{background:var(--color-success-100);border:1px solid var(--color-success-300)}.day-quick-stats .stat-upcoming .quick-stat-value{color:var(--color-success-700)}.day-quick-stats .stat-noshow{background:var(--color-error-50)}.day-quick-stats .stat-noshow .quick-stat-value{color:var(--color-error-600)}.day-quick-stats .stat-alerts{background:var(--color-warning-50)}.day-quick-stats .stat-alerts .quick-stat-value{color:var(--color-warning-600)}.day-quick-stats .stat-available{background:var(--color-neutral-100)}.day-quick-stats .stat-available .quick-stat-value{color:var(--color-neutral-700)}@media(max-width:768px){.day-quick-stats{gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm)}.day-quick-stats .quick-stat{min-width:50px;padding:var(--spacing-xs)}.day-quick-stats .quick-stat-value{font-size:var(--font-size-lg)}.day-quick-stats .quick-stat-label{font-size:9px}}.doctor-column.doctor-column-dimmed{opacity:.7}.doctor-column.doctor-column-dimmed .doctor-slots .time-slot:not(.has-booking){background:#9ca3af14}.doctor-column.doctor-column-dimmed .doctor-column-header{background:var(--color-neutral-50)}.doctor-column.doctor-column-offline{opacity:.5}.doctor-column.doctor-column-offline .doctor-column-header{background:var(--color-neutral-200)}.doctor-column.doctor-column-offline .doctor-slots .time-slot:not(.has-booking){background:repeating-linear-gradient(-45deg,transparent,transparent 4px,rgba(156,163,175,.12) 4px,rgba(156,163,175,.12) 8px);cursor:not-allowed}.doctor-column.doctor-column-offline .doctor-slots .time-slot:not(.has-booking):hover{background:repeating-linear-gradient(-45deg,transparent,transparent 4px,rgba(156,163,175,.12) 4px,rgba(156,163,175,.12) 8px)}.doctor-column.doctor-column-offline .doctor-slots .time-slot.has-booking{opacity:.65}.doctor-return-time{font-size:.6rem;color:var(--color-neutral-500);font-weight:500;margin-top:1px;white-space:nowrap;font-style:italic}.slot-picker-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-4)}.slot-picker-modal{background:#fff;border-radius:var(--radius-lg);width:100%;max-width:500px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-xl)}.slot-picker-header{padding:var(--spacing-4) var(--spacing-5);border-bottom:1px solid var(--color-neutral-200);position:relative}.slot-picker-header h3{font-size:1.25rem;font-weight:600;color:var(--color-neutral-900);margin:0}.slot-picker-date{color:var(--color-neutral-600);font-size:.9rem;margin:var(--spacing-1) 0 0 0}.slot-picker-close{position:absolute;top:var(--spacing-3);right:var(--spacing-3);width:32px;height:32px;border:none;background:var(--color-neutral-100);border-radius:var(--radius-md);cursor:pointer;font-size:1.5rem;line-height:1;color:var(--color-neutral-600);transition:all .15s}.slot-picker-close:hover{background:var(--color-neutral-200);color:var(--color-neutral-800)}.slot-picker-filter{padding:var(--spacing-3) var(--spacing-5);border-bottom:1px solid var(--color-neutral-200);display:flex;align-items:center;gap:var(--spacing-3);background:var(--color-neutral-50)}.slot-picker-filter label{font-size:.9rem;font-weight:500;color:var(--color-neutral-700);white-space:nowrap}.slot-picker-filter select{flex:1;padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);background:#fff;font-size:.9rem}.slot-picker-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-8);color:var(--color-neutral-600);gap:var(--spacing-3)}.slot-picker-loading .loading-spinner{width:32px;height:32px;border:3px solid var(--color-neutral-200);border-top-color:var(--color-primary-500);border-radius:50%;animation:spin 1s linear infinite}.slot-picker-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-8);text-align:center}.slot-picker-empty .empty-icon{font-size:3rem;margin-bottom:var(--spacing-3)}.slot-picker-empty p{margin:0;color:var(--color-neutral-700);font-weight:500}.slot-picker-empty .empty-hint{color:var(--color-neutral-500);font-size:.9rem;font-weight:400;margin-top:var(--spacing-1)}.slot-picker-content{padding:var(--spacing-4) var(--spacing-5);overflow-y:auto;flex:1}.slot-group{margin-bottom:var(--spacing-5)}.slot-group:last-child{margin-bottom:0}.slot-group-label{font-size:.9rem;font-weight:600;color:var(--color-neutral-700);margin:0 0 var(--spacing-3) 0;display:flex;align-items:center;gap:var(--spacing-2)}.group-icon{font-size:1.1rem}.slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:var(--spacing-2)}.slot-button{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-3) var(--spacing-2);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);background:#fff;cursor:pointer;transition:all .15s;min-height:60px}.slot-button:hover{border-color:var(--color-primary-500);background:var(--color-primary-50)}.slot-button.hovered{border-color:var(--color-primary-500);background:var(--color-primary-50);transform:scale(1.02)}.slot-time{font-weight:600;font-size:.95rem;color:var(--color-neutral-900)}.slot-count{font-size:.75rem;color:var(--color-primary-600);margin-top:2px}.slot-doctor{font-size:.75rem;color:var(--color-neutral-600);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.slot-picker-footer{padding:var(--spacing-3) var(--spacing-5);border-top:1px solid var(--color-neutral-200);background:var(--color-neutral-50)}.slot-count{font-size:.85rem;color:var(--color-neutral-600);text-align:center}@media(max-width:480px){.slot-picker-overlay{padding:0;align-items:flex-end}.slot-picker-modal{border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-height:85vh}.slot-picker-filter{flex-direction:column;align-items:stretch}.slot-grid{grid-template-columns:repeat(3,1fr)}.slot-button{padding:var(--spacing-2);min-height:50px}.slot-time{font-size:.85rem}}.patient-booking-calendar{max-width:800px;margin:0 auto;padding:var(--spacing-4)}.patient-calendar-header{text-align:center;margin-bottom:var(--spacing-6)}.patient-calendar-header h2{font-size:1.75rem;font-weight:600;color:var(--color-neutral-900);margin:0 0 var(--spacing-2) 0}.header-subtitle{color:var(--color-neutral-600);font-size:.95rem;margin:0}.patient-calendar-filter{display:flex;align-items:center;gap:var(--spacing-3);margin-bottom:var(--spacing-4);padding:var(--spacing-3);background:var(--color-neutral-50);border-radius:var(--radius-md)}.patient-calendar-filter label{font-weight:500;color:var(--color-neutral-700);white-space:nowrap}.patient-calendar-filter select{flex:1;padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);background:#fff;font-size:.9rem}.patient-calendar-nav{display:flex;align-items:center;justify-content:center;gap:var(--spacing-4);margin-bottom:var(--spacing-4)}.patient-calendar-nav .nav-btn{width:36px;height:36px;border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);background:#fff;cursor:pointer;font-size:1.1rem;color:var(--color-neutral-700);transition:all .15s}.patient-calendar-nav .nav-btn:hover{background:var(--color-primary-50);border-color:var(--color-primary-500);color:var(--color-primary-600)}.patient-calendar-nav .current-month{font-size:1.25rem;font-weight:600;color:var(--color-neutral-900);min-width:180px;text-align:center}.booking-confirmation-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-4)}.booking-confirmation-modal{background:#fff;border-radius:var(--radius-lg);padding:var(--spacing-6);width:100%;max-width:480px;box-shadow:var(--shadow-xl)}.booking-confirmation-modal h3{font-size:1.25rem;font-weight:600;color:var(--color-neutral-900);margin:0 0 var(--spacing-5) 0;text-align:center}.confirmation-details{background:var(--color-neutral-50);border-radius:var(--radius-md);padding:var(--spacing-4);margin-bottom:var(--spacing-5)}.detail-row{display:flex;justify-content:space-between;padding:var(--spacing-2) 0}.detail-row:not(:last-child){border-bottom:1px solid var(--color-neutral-200)}.detail-label{color:var(--color-neutral-600);font-weight:500}.detail-value{color:var(--color-neutral-900);font-weight:500;text-align:right}.reason-input{margin-bottom:var(--spacing-4)}.reason-input label{display:block;font-weight:500;color:var(--color-neutral-700);margin-bottom:var(--spacing-2)}.reason-input textarea{width:100%;padding:var(--spacing-3);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);font-size:.95rem;resize:vertical;font-family:inherit}.reason-input textarea:focus{outline:none;border-color:var(--color-primary-500);box-shadow:0 0 0 3px #3b82f61a}.booking-error{display:flex;align-items:flex-start;gap:var(--spacing-2);padding:var(--spacing-3);background:var(--color-error-50);color:var(--color-error-700);border-radius:var(--radius-md);margin-bottom:var(--spacing-4);font-size:.9rem}.booking-error .error-icon{width:20px;height:20px;background:var(--color-error-500);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0}.confirmation-actions{display:flex;gap:var(--spacing-3);justify-content:flex-end}.confirmation-actions .btn-cancel{padding:var(--spacing-2) var(--spacing-4);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);background:#fff;color:var(--color-neutral-700);font-weight:500;cursor:pointer;transition:all .15s}.confirmation-actions .btn-cancel:hover:not(:disabled){background:var(--color-neutral-100)}.confirmation-actions .btn-confirm{padding:var(--spacing-2) var(--spacing-5);border:none;border-radius:var(--radius-md);background:var(--color-primary-500);color:#fff;font-weight:500;cursor:pointer;transition:all .15s}.confirmation-actions .btn-confirm:hover:not(:disabled){background:var(--color-primary-600)}.confirmation-actions .btn-confirm:disabled,.confirmation-actions .btn-cancel:disabled{opacity:.6;cursor:not-allowed}.booking-success{display:flex;align-items:flex-start;gap:var(--spacing-3);padding:var(--spacing-4);background:var(--color-success-50);border:1px solid var(--color-success-200);border-radius:var(--radius-lg);margin-top:var(--spacing-4)}.booking-success .success-icon{width:32px;height:32px;background:var(--color-success-500);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0}.booking-success strong{display:block;color:var(--color-success-800);margin-bottom:var(--spacing-1)}.booking-success p{margin:0;color:var(--color-success-700);font-size:.9rem}@media(max-width:480px){.patient-booking-calendar{padding:var(--spacing-3)}.patient-calendar-header h2{font-size:1.5rem}.patient-calendar-filter{flex-direction:column;align-items:stretch}.booking-confirmation-modal{padding:var(--spacing-4)}.confirmation-actions{flex-direction:column-reverse}.confirmation-actions .btn-cancel,.confirmation-actions .btn-confirm{width:100%;padding:var(--spacing-3)}}.doctor-schedule-view{background:var(--color-neutral-50);min-height:100%;display:flex;flex-direction:column}.schedule-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-4) var(--spacing-6);background:#fff;border-bottom:1px solid var(--color-neutral-200)}.header-left{display:flex;flex-direction:column;gap:2px}.schedule-title{font-size:1.5rem;font-weight:600;color:var(--color-neutral-900);margin:0}.doctor-subtitle{color:var(--color-neutral-500);font-size:.875rem}.header-center{display:flex;align-items:center;gap:var(--spacing-2)}.nav-btn{width:36px;height:36px;border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);background:#fff;cursor:pointer;font-size:1.25rem;font-weight:300;color:var(--color-neutral-600);transition:all .15s ease;display:flex;align-items:center;justify-content:center}.nav-btn:hover{border-color:var(--color-primary-500);color:var(--color-primary-600);background:var(--color-primary-50)}.date-btn{position:relative;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);background:#fff;cursor:pointer;font-weight:500;font-size:.95rem;color:var(--color-neutral-800);min-width:140px;text-align:center;transition:all .15s ease}.date-btn:hover{border-color:var(--color-primary-400)}.date-btn.is-today{background:var(--color-primary-50);border-color:var(--color-primary-300)}.today-indicator{position:absolute;top:-6px;right:-6px;font-size:.55rem;padding:2px 5px;background:var(--color-primary-500);color:#fff;border-radius:var(--radius-full);font-weight:600;text-transform:uppercase;letter-spacing:.02em}.header-right{display:flex;align-items:center}.availability-btn{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-3);border:2px solid;border-radius:var(--radius-md);background:#fff;cursor:pointer;font-size:.875rem;font-weight:500;color:var(--color-neutral-700);transition:all .15s ease}.availability-btn:hover{background:var(--color-neutral-50)}.availability-btn .status-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.availability-btn .chevron{font-size:.7rem;color:var(--color-neutral-500);margin-left:var(--spacing-1)}.summary-cards{display:flex;gap:var(--spacing-4);padding:var(--spacing-4) var(--spacing-6);background:#fff;border-bottom:1px solid var(--color-neutral-200)}.summary-card{position:relative;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-4) var(--spacing-3);background:#fff;border-radius:10px;min-width:100px;box-shadow:var(--shadow-sm);border-left:10px solid var(--color-neutral-200);transition:all .15s ease;cursor:default}.summary-card.total{border-left-color:var(--color-error)}.summary-card.total:hover{border:1px solid var(--color-error);border-left-width:10px}.summary-card.total .card-value{color:var(--color-error)}.summary-card.scheduled{border-left-color:var(--color-primary-900)}.summary-card.scheduled:hover{border:1px solid var(--color-primary-900);border-left-width:10px}.summary-card.scheduled .card-value{color:var(--color-primary-900)}.summary-card.waiting{border-left-color:var(--color-warning)}.summary-card.waiting:hover{border:1px solid var(--color-warning);border-left-width:10px}.summary-card.waiting .card-value{color:var(--color-warning)}.summary-card.completed{border-left-color:var(--color-success)}.summary-card.completed:hover{border:1px solid var(--color-success);border-left-width:10px}.summary-card.completed .card-value{color:var(--color-success)}.summary-card .card-value{font-size:2rem;font-weight:700;line-height:1}.summary-card .card-label{font-size:.75rem;color:var(--color-neutral-500);text-transform:uppercase;letter-spacing:.05em;margin-top:var(--spacing-1)}.schedule-content{display:flex;flex:1;position:relative;overflow:hidden}.appointments-section{flex:1;display:flex;flex-direction:column;overflow-y:auto;padding:var(--spacing-4) var(--spacing-6)}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-12);color:var(--color-neutral-600);gap:var(--spacing-3)}.loading-state .spinner{width:40px;height:40px;border:3px solid var(--color-neutral-200);border-top-color:var(--color-primary-500);border-radius:50%;animation:spin 1s linear infinite}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-12);text-align:center}.empty-state .empty-icon{font-size:4rem;margin-bottom:var(--spacing-4);opacity:.5}.empty-state h3{margin:0 0 var(--spacing-2) 0;color:var(--color-neutral-700);font-size:1.25rem}.empty-state p{margin:0;color:var(--color-neutral-500);font-size:.95rem}.appointment-list{display:flex;flex-direction:column;gap:var(--spacing-3)}.appointment-card{display:grid;grid-template-columns:90px 1fr auto auto;gap:var(--spacing-4);padding:var(--spacing-4) var(--spacing-5);background:#fff;border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);cursor:pointer;transition:all .2s ease;align-items:center;border-left:4px solid transparent}.appointment-card:hover{border-color:var(--color-primary-300);box-shadow:0 4px 12px #0000001a;transform:translateY(-1px)}.appointment-card.is-next{border-left-color:var(--color-warning-500);background:linear-gradient(to right,var(--color-warning-50),white)}.appointment-card.is-current{border-left-color:var(--color-primary-500);background:linear-gradient(to right,var(--color-primary-50),white);box-shadow:0 0 0 2px var(--color-primary-200)}.appointment-card.is-past{opacity:.6;background:var(--color-neutral-50)}.appointment-card.is-late{border-left-color:var(--color-error-400)}.appointment-card.status-converted,.appointment-card.status-completed{border-left-color:var(--color-success-500)}.appointment-card.status-cancelled,.appointment-card.status-no_show{border-left-color:var(--color-neutral-400);opacity:.6}.card-time-section{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.appointment-time{font-weight:600;font-size:1rem;color:var(--color-neutral-900)}.appointment-duration{font-size:.75rem;color:var(--color-neutral-500)}.time-badge{display:inline-block;font-size:.6rem;padding:2px 6px;border-radius:var(--radius-full);font-weight:700;text-transform:uppercase;letter-spacing:.03em;margin-top:var(--spacing-1)}.time-badge.next{background:var(--color-warning-500);color:#fff}.time-badge.current{background:var(--color-primary-500);color:#fff}.time-badge.late{background:var(--color-error-100);color:var(--color-error-700)}.card-patient-section{display:flex;flex-direction:column;gap:4px;min-width:0}.patient-header{display:flex;align-items:center;gap:var(--spacing-2)}.patient-name{font-weight:600;font-size:1rem;color:var(--color-neutral-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.patient-name-link{font-weight:600;font-size:1rem;color:var(--color-primary-900);background:none;border:none;padding:0;cursor:pointer;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color var(--transition-fast)}.patient-name-link:hover{color:var(--color-primary-600);text-decoration:underline}.patient-name-link:focus{outline:2px solid var(--color-primary-300);outline-offset:2px;border-radius:2px}.patient-badges{display:flex;gap:4px;flex-shrink:0}.alert-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 5px;border-radius:var(--radius-sm);font-size:.65rem;font-weight:700}.alert-badge.allergy{background:var(--color-error-100);color:var(--color-error-700)}.appointment-type{font-size:.875rem;color:var(--color-neutral-600);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.appointment-notes{font-size:.8rem;color:var(--color-neutral-500);font-style:italic;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-status-section{display:flex;align-items:center;justify-content:center}.status-badge{padding:var(--spacing-1) var(--spacing-3);border-radius:var(--radius-full);font-size:.75rem;font-weight:600;white-space:nowrap}.status-badge.confirmed{background:var(--color-primary-100);color:var(--color-primary-700)}.status-badge.arrived,.status-badge.checked_in{background:var(--color-warning-100);color:var(--color-warning-700)}.status-badge.in_progress{background:var(--color-info-100);color:var(--color-info-700)}.status-badge.converted,.status-badge.completed{background:var(--color-success-100);color:var(--color-success-700)}.status-badge.cancelled,.status-badge.no_show{background:var(--color-neutral-200);color:var(--color-neutral-600)}.card-actions-section{display:flex;gap:var(--spacing-2);align-items:center}.action-btn{padding:var(--spacing-2) var(--spacing-3);border-radius:var(--radius-md);font-size:.8rem;font-weight:500;cursor:pointer;transition:all .15s ease;white-space:nowrap}.action-btn.secondary{background:#fff;border:1px solid var(--color-neutral-300);color:var(--color-neutral-700)}.action-btn.secondary:hover{border-color:var(--color-primary-400);color:var(--color-primary-600);background:var(--color-primary-50)}.action-btn.primary{background:var(--color-primary-500);border:1px solid var(--color-primary-500);color:#fff}.action-btn.primary:hover{background:var(--color-primary-600);border-color:var(--color-primary-600)}.last-refresh{padding:var(--spacing-3) 0;text-align:center;font-size:.75rem;color:var(--color-neutral-500);margin-top:auto}.availability-dropdown-container{position:relative}.dropdown-backdrop{position:fixed;inset:0;z-index:999}.availability-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:220px;background:#fff;border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);box-shadow:0 10px 40px #00000026;z-index:1000;animation:dropdownFadeIn .15s ease;overflow:hidden}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.dropdown-header{padding:var(--spacing-3) var(--spacing-4);border-bottom:1px solid var(--color-neutral-100);background:var(--color-neutral-50)}.dropdown-label{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-neutral-500);margin-bottom:2px}.dropdown-current{font-weight:600;font-size:.9rem}.dropdown-sublabel{display:block;font-size:.8rem;color:var(--color-neutral-600);margin-top:2px}.dropdown-options{max-height:280px;overflow-y:auto}.dropdown-option{display:flex;align-items:center;gap:var(--spacing-3);width:100%;padding:var(--spacing-3) var(--spacing-4);border:none;background:#fff;cursor:pointer;transition:all .1s ease;text-align:left}.dropdown-option:hover{background:var(--color-neutral-50)}.dropdown-option.active{background:var(--color-primary-50)}.dropdown-option:disabled{opacity:.5;cursor:not-allowed}.option-icon{font-size:1.1rem;width:24px;text-align:center}.option-label{flex:1;font-size:.9rem;font-weight:500;color:var(--color-neutral-800)}.option-check{color:var(--color-primary-500);font-weight:700;font-size:.9rem}.dropdown-cancel{display:block;width:100%;padding:var(--spacing-3) var(--spacing-4);border:none;border-top:1px solid var(--color-neutral-100);background:var(--color-neutral-50);color:var(--color-neutral-600);font-size:.85rem;font-weight:500;cursor:pointer;transition:all .1s ease}.dropdown-cancel:hover{background:var(--color-neutral-100);color:var(--color-neutral-800)}.dropdown-back{display:block;width:100%;padding:var(--spacing-3) var(--spacing-4);border:none;border-top:1px solid var(--color-neutral-100);background:#fff;color:var(--color-primary-600);font-size:.85rem;font-weight:500;cursor:pointer;transition:all .1s ease;text-align:left}.dropdown-back:hover{background:var(--color-primary-50)}.time-options{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-4)}.time-option{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-3) var(--spacing-2);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);background:#fff;cursor:pointer;transition:all .15s ease}.time-option:hover{border-color:var(--color-primary-400);background:var(--color-primary-50)}.time-option .time-value{font-size:1.1rem;font-weight:700;color:var(--color-neutral-800);line-height:1}.time-option .time-unit{font-size:.65rem;color:var(--color-neutral-500);text-transform:uppercase;letter-spacing:.02em;margin-top:2px}.time-option.full-day{grid-column:span 3;flex-direction:row;gap:var(--spacing-1)}.time-option.full-day .time-value{font-size:.95rem}.time-option.full-day .time-unit{font-size:.75rem;margin-top:0}@media(max-width:1024px){.availability-dropdown{width:200px}}@media(max-width:768px){.schedule-header{flex-direction:column;gap:var(--spacing-3);padding:var(--spacing-3) var(--spacing-4)}.header-left{align-items:center;text-align:center}.summary-cards{flex-wrap:wrap;padding:var(--spacing-3) var(--spacing-4);gap:var(--spacing-2)}.summary-card{flex:1 1 calc(50% - var(--spacing-2));min-width:80px;padding:var(--spacing-3) var(--spacing-2)}.summary-card .card-value{font-size:1.5rem}.appointments-section{padding:var(--spacing-3) var(--spacing-4)}.appointment-card{grid-template-columns:1fr;gap:var(--spacing-3);padding:var(--spacing-4)}.card-time-section{flex-direction:row;align-items:center;gap:var(--spacing-3)}.card-status-section{justify-content:flex-start}.card-actions-section{justify-content:flex-end;padding-top:var(--spacing-3);border-top:1px solid var(--color-neutral-100)}.availability-dropdown{width:180px}.time-options{grid-template-columns:repeat(2,1fr)}.time-option.full-day{grid-column:span 2}}@media(max-width:480px){.schedule-title{font-size:1.25rem}.summary-card{flex:1 1 calc(50% - var(--spacing-1))}.card-actions-section{flex-wrap:wrap;gap:var(--spacing-2)}.action-btn{flex:1;text-align:center}}.hr-calendar{background:#fff;border-radius:var(--radius-lg);overflow:hidden}.hr-calendar-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-4) var(--spacing-5);border-bottom:1px solid var(--color-neutral-200);background:var(--color-neutral-50);flex-wrap:wrap;gap:var(--spacing-3)}.header-title .week-range{display:block;color:var(--color-neutral-600);font-size:.9rem;margin-top:2px}.staff-filter{padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);background:#fff;font-size:.9rem;min-width:150px}.week-nav{display:flex;gap:var(--spacing-1)}.pending-leave-section{padding:var(--spacing-4) var(--spacing-5);background:var(--color-warning-50);border-bottom:1px solid var(--color-warning-200)}.pending-leave-section h3{font-size:1rem;font-weight:600;color:var(--color-warning-800);margin:0 0 var(--spacing-3) 0}.pending-leave-list{display:flex;flex-direction:column;gap:var(--spacing-2)}.pending-leave-card{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-3);background:#fff;border-radius:var(--radius-md);border:1px solid var(--color-warning-300)}.pending-leave-card .leave-info{display:flex;flex-wrap:wrap;gap:var(--spacing-2);align-items:center}.pending-leave-card .staff-name{font-weight:600;color:var(--color-neutral-900)}.pending-leave-card .leave-type{padding:2px 8px;background:var(--color-neutral-100);border-radius:var(--radius-sm);font-size:.8rem;text-transform:capitalize}.pending-leave-card .leave-dates{color:var(--color-neutral-600);font-size:.9rem}.pending-leave-card .leave-reason{color:var(--color-neutral-500);font-size:.85rem;font-style:italic}.pending-leave-card .leave-actions{display:flex;gap:var(--spacing-2)}.approve-btn,.reject-btn{padding:var(--spacing-1) var(--spacing-3);border-radius:var(--radius-sm);font-size:.85rem;cursor:pointer;transition:all .15s}.approve-btn{background:var(--color-success-500);color:#fff;border:none}.approve-btn:hover{background:var(--color-success-600)}.reject-btn{background:#fff;color:var(--color-error-600);border:1px solid var(--color-error-300)}.reject-btn:hover{background:var(--color-error-50)}.hr-calendar-grid{overflow-x:auto}.grid-header{display:grid;grid-template-columns:200px repeat(7,1fr);border-bottom:2px solid var(--color-neutral-200);background:var(--color-neutral-50);position:sticky;top:0;z-index:10}.header-cell{padding:var(--spacing-3);text-align:center;border-right:1px solid var(--color-neutral-200)}.header-cell:last-child{border-right:none}.header-cell.staff-col{text-align:left;font-weight:600;color:var(--color-neutral-700)}.header-cell .day-name{display:block;font-size:.8rem;color:var(--color-neutral-500);text-transform:uppercase}.header-cell .day-number{display:block;font-size:1.1rem;font-weight:600;color:var(--color-neutral-800)}.header-cell.today{background:var(--color-primary-100)}.header-cell.today .day-number{color:var(--color-primary-600)}.header-cell.weekend{background:var(--color-neutral-100)}.grid-row{display:grid;grid-template-columns:200px repeat(7,1fr);border-bottom:1px solid var(--color-neutral-200)}.grid-row:last-child{border-bottom:none}.staff-cell{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-3);border-right:1px solid var(--color-neutral-200);cursor:pointer;transition:background .15s}.staff-cell:hover{background:var(--color-neutral-50)}.staff-avatar{width:36px;height:36px;border-radius:50%;background:var(--color-primary-100);color:var(--color-primary-600);display:flex;align-items:center;justify-content:center;font-weight:600;overflow:hidden}.staff-avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.staff-info{display:flex;flex-direction:column}.staff-info .staff-name{font-weight:500;color:var(--color-neutral-900);font-size:.9rem}.staff-info .staff-role{font-size:.75rem;color:var(--color-neutral-500);text-transform:capitalize}.day-cell{padding:var(--spacing-2);border-right:1px solid var(--color-neutral-200);min-height:60px;display:flex;align-items:center;justify-content:center}.day-cell:last-child{border-right:none}.day-cell.today{background:var(--color-primary-50)}.day-cell.weekend{background:var(--color-neutral-50)}.day-cell.on-leave{background:var(--color-error-50)}.working-indicator{padding:var(--spacing-1) var(--spacing-2);background:var(--color-success-100);color:var(--color-success-700);border-radius:var(--radius-sm);font-size:.75rem}.shift-indicator{padding:var(--spacing-1) var(--spacing-2);border-radius:var(--radius-sm);font-size:.75rem}.shift-regular{background:var(--color-success-100);color:var(--color-success-700)}.shift-overtime{background:var(--color-warning-100);color:var(--color-warning-700)}.shift-on-call{background:var(--color-info-100);color:var(--color-info-700)}.leave-indicator{padding:var(--spacing-1) var(--spacing-2);border-radius:var(--radius-sm);font-size:.8rem;font-weight:600}.leave-annual{background:var(--color-info-100);color:var(--color-info-700)}.leave-sick{background:var(--color-warning-100);color:var(--color-warning-700)}.leave-emergency{background:var(--color-error-100);color:var(--color-error-700)}.leave-unpaid{background:var(--color-neutral-200);color:var(--color-neutral-700)}.hr-calendar-legend{display:flex;flex-wrap:wrap;gap:var(--spacing-4);padding:var(--spacing-3) var(--spacing-5);background:var(--color-neutral-50);border-top:1px solid var(--color-neutral-200);font-size:.8rem}.legend-color.working{background:var(--color-success-100);border:1px solid var(--color-success-300)}.legend-color.leave-annual{background:var(--color-info-100);border:1px solid var(--color-info-300)}.legend-color.leave-sick{background:var(--color-warning-100);border:1px solid var(--color-warning-300)}.legend-color.leave-emergency{background:var(--color-error-100);border:1px solid var(--color-error-300)}@media(max-width:768px){.hr-calendar-header{flex-direction:column;align-items:stretch}.header-actions{flex-direction:column}.staff-filter{width:100%}.grid-header,.grid-row{min-width:800px}}.finance-calendar{background:#fff;border-radius:var(--radius-lg);overflow:hidden}.finance-calendar-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-4) var(--spacing-5);border-bottom:1px solid var(--color-neutral-200);background:var(--color-neutral-50);flex-wrap:wrap;gap:var(--spacing-3)}.header-title h2{font-size:1.25rem;font-weight:600;color:var(--color-neutral-900);margin:0}.header-title .month-display{display:block;color:var(--color-neutral-600);font-size:.9rem;margin-top:2px}.header-actions{display:flex;align-items:center;gap:var(--spacing-3)}.type-filter{padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);background:#fff;font-size:.9rem;min-width:150px}.month-nav{display:flex;gap:var(--spacing-1)}.month-nav .nav-btn,.month-nav .today-btn{padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);background:#fff;cursor:pointer;font-size:.9rem;transition:all .15s}.month-nav .nav-btn:hover,.month-nav .today-btn:hover{border-color:var(--color-primary-500);color:var(--color-primary-600)}.finance-stats{display:flex;gap:var(--spacing-4);padding:var(--spacing-3) var(--spacing-5);background:#fff;border-bottom:1px solid var(--color-neutral-200)}.finance-stats .stat-item{display:flex;flex-direction:column;align-items:center;min-width:70px}.finance-stats .stat-value{font-size:1.5rem;font-weight:700;color:var(--color-neutral-800)}.finance-stats .stat-label{font-size:.75rem;color:var(--color-neutral-500)}.finance-stats .stat-item.urgent .stat-value{color:var(--color-error-600)}.finance-calendar-content{display:grid;grid-template-columns:1fr 300px;min-height:450px}.calendar-section{border-right:1px solid var(--color-neutral-200);padding:var(--spacing-4)}.weekday-headers{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:var(--spacing-2)}.weekday-header{text-align:center;font-size:.8rem;font-weight:600;color:var(--color-neutral-500);text-transform:uppercase;padding:var(--spacing-2)}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.calendar-day{aspect-ratio:1;padding:var(--spacing-1);border:1px solid transparent;border-radius:var(--radius-sm);cursor:pointer;transition:all .15s;display:flex;flex-direction:column;align-items:center}.calendar-day:hover{background:var(--color-neutral-50)}.calendar-day.other-month{opacity:.4}.calendar-day.today .day-number{background:var(--color-primary-500);color:#fff;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.calendar-day.selected{background:var(--color-primary-50);border-color:var(--color-primary-500)}.calendar-day.has-urgent{background:var(--color-error-50)}.calendar-day.has-urgent.selected{background:var(--color-error-100);border-color:var(--color-error-500)}.day-number{font-size:.85rem;font-weight:500;color:var(--color-neutral-800)}.event-dots{display:flex;gap:3px;margin-top:4px;flex-wrap:wrap;justify-content:center}.event-dot{width:6px;height:6px;border-radius:50%}.event-dot.panel_deadline{background:var(--color-info-500)}.event-dot.payment_due{background:var(--color-warning-500)}.event-dot.einvoice_deadline{background:var(--color-success-500)}.event-dot.monthly_close{background:var(--color-primary-500)}.event-dot.tax_deadline{background:var(--color-error-500)}.event-dot.high{box-shadow:0 0 0 2px var(--color-error-200)}.more-indicator{font-size:.65rem;color:var(--color-neutral-500)}.events-panel{padding:var(--spacing-4);background:var(--color-neutral-50);overflow-y:auto}.events-panel h3{font-size:1rem;font-weight:600;color:var(--color-neutral-800);margin:0 0 var(--spacing-3) 0}.no-events{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-6);text-align:center;color:var(--color-neutral-500)}.no-events .empty-icon{font-size:2.5rem;margin-bottom:var(--spacing-2)}.no-events p{margin:0}.events-list{display:flex;flex-direction:column;gap:var(--spacing-2)}.event-card{display:flex;gap:var(--spacing-3);padding:var(--spacing-3);background:#fff;border-radius:var(--radius-md);border:1px solid var(--color-neutral-200);cursor:pointer;transition:all .15s}.event-card:hover{border-color:var(--color-primary-300);box-shadow:var(--shadow-sm)}.event-card.urgency-high{border-left:3px solid var(--color-error-500)}.event-card.urgency-medium{border-left:3px solid var(--color-warning-500)}.event-icon{font-size:1.5rem;flex-shrink:0}.event-info{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.event-title{font-weight:600;color:var(--color-neutral-900);font-size:.9rem}.event-type{font-size:.75rem;color:var(--color-neutral-500)}.event-amount{font-weight:600;color:var(--color-primary-600);font-size:.9rem}.event-description{font-size:.8rem;color:var(--color-neutral-600);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.urgency-badge{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;font-weight:700;font-size:.9rem}.urgency-badge.high{background:var(--color-error-100);color:var(--color-error-600)}.urgency-badge.medium{background:var(--color-warning-100);color:var(--color-warning-600)}.finance-calendar-legend{display:flex;flex-wrap:wrap;gap:var(--spacing-4);padding:var(--spacing-3) var(--spacing-5);background:var(--color-neutral-50);border-top:1px solid var(--color-neutral-200);font-size:.8rem}.legend-dot{width:10px;height:10px;border-radius:50%}.legend-dot.panel_deadline{background:var(--color-info-500)}.legend-dot.payment_due{background:var(--color-warning-500)}.legend-dot.einvoice_deadline{background:var(--color-success-500)}.legend-dot.monthly_close{background:var(--color-primary-500)}.legend-dot.tax_deadline{background:var(--color-error-500)}@media(max-width:768px){.finance-calendar-content{grid-template-columns:1fr}.calendar-section{border-right:none;border-bottom:1px solid var(--color-neutral-200)}.events-panel{max-height:300px}}.stock-calendar{background:#fff;border-radius:var(--radius-lg);overflow:hidden}.stock-calendar-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-4) var(--spacing-5);border-bottom:1px solid var(--color-neutral-200);background:var(--color-neutral-50);flex-wrap:wrap;gap:var(--spacing-3)}.stock-calendar-header .header-title h2{font-size:1.25rem;font-weight:600;color:var(--color-neutral-900);margin:0}.stock-calendar-header .header-title .month-display{display:block;color:var(--color-neutral-600);font-size:.9rem;margin-top:2px}.stock-calendar-header .header-actions{display:flex;align-items:center;gap:var(--spacing-3)}.stock-calendar-header .type-filter{padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);background:#fff;font-size:.9rem;min-width:140px}.stock-calendar-header .month-nav{display:flex;gap:var(--spacing-1)}.stock-calendar-header .month-nav .nav-btn,.stock-calendar-header .month-nav .today-btn{padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);background:#fff;cursor:pointer;font-size:.9rem;transition:all .15s}.stock-calendar-header .month-nav .nav-btn:hover,.stock-calendar-header .month-nav .today-btn:hover{border-color:var(--color-primary-500);color:var(--color-primary-600)}.stock-stats{display:flex;gap:var(--spacing-4);padding:var(--spacing-3) var(--spacing-5);background:#fff;border-bottom:1px solid var(--color-neutral-200)}.stock-stats .stat-item{display:flex;flex-direction:column;align-items:center;min-width:70px}.stock-stats .stat-value{font-size:1.5rem;font-weight:700;color:var(--color-neutral-800)}.stock-stats .stat-label{font-size:.75rem;color:var(--color-neutral-500)}.stock-stats .stat-item.deliveries .stat-value{color:var(--color-info-600)}.stock-stats .stat-item.expiring .stat-value{color:var(--color-error-600)}.stock-stats .stat-item.reorders .stat-value{color:var(--color-warning-600)}.expiry-alerts{padding:var(--spacing-3) var(--spacing-5);background:var(--color-error-50);border-bottom:1px solid var(--color-error-200)}.expiry-alerts .alerts-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-2)}.expiry-alerts .alerts-header h3{font-size:.95rem;font-weight:600;color:var(--color-error-800);margin:0}.expiry-alerts .alerts-header button{background:none;border:none;color:var(--color-error-600);font-size:.8rem;cursor:pointer;text-decoration:underline}.alerts-list{display:flex;gap:var(--spacing-2);overflow-x:auto;padding-bottom:var(--spacing-1)}.expiry-alert-item{flex-shrink:0;padding:var(--spacing-2) var(--spacing-3);background:#fff;border-radius:var(--radius-md);border:1px solid var(--color-error-200);cursor:pointer;transition:all .15s}.expiry-alert-item:hover{border-color:var(--color-error-400)}.expiry-alert-item .item-name{display:block;font-weight:600;color:var(--color-neutral-900);font-size:.85rem}.expiry-alert-item .expiry-date{display:block;font-size:.75rem;color:var(--color-error-600)}.expiry-alert-item .quantity{display:block;font-size:.75rem;color:var(--color-neutral-500)}.stock-calendar-content{display:grid;grid-template-columns:1fr 280px;min-height:400px}.stock-calendar-content .calendar-section{border-right:1px solid var(--color-neutral-200);padding:var(--spacing-4)}.stock-calendar-content .weekday-headers{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:var(--spacing-2)}.stock-calendar-content .weekday-header{text-align:center;font-size:.8rem;font-weight:600;color:var(--color-neutral-500);text-transform:uppercase;padding:var(--spacing-2)}.stock-calendar-content .calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.stock-calendar-content .calendar-day{aspect-ratio:1;padding:var(--spacing-1);border:1px solid transparent;border-radius:var(--radius-sm);cursor:pointer;transition:all .15s;display:flex;flex-direction:column;align-items:center}.stock-calendar-content .calendar-day:hover{background:var(--color-neutral-50)}.stock-calendar-content .calendar-day.other-month{opacity:.4}.stock-calendar-content .calendar-day.today .day-number{background:var(--color-primary-500);color:#fff;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.stock-calendar-content .calendar-day.selected{background:var(--color-primary-50);border-color:var(--color-primary-500)}.stock-calendar-content .calendar-day.has-expiry{background:var(--color-error-50)}.stock-calendar-content .calendar-day.has-delivery{border-color:var(--color-info-300)}.stock-calendar-content .day-number{font-size:.85rem;font-weight:500;color:var(--color-neutral-800)}.event-indicators{display:flex;gap:2px;margin-top:4px;flex-wrap:wrap;justify-content:center}.event-indicator{font-size:.7rem}.stock-calendar-content .more-indicator{font-size:.6rem;color:var(--color-neutral-500)}.stock-calendar-content .events-panel{padding:var(--spacing-4);background:var(--color-neutral-50);overflow-y:auto}.stock-calendar-content .events-panel h3{font-size:1rem;font-weight:600;color:var(--color-neutral-800);margin:0 0 var(--spacing-3) 0}.stock-calendar-content .no-events{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-6);text-align:center;color:var(--color-neutral-500)}.stock-calendar-content .no-events .empty-icon{font-size:2.5rem;margin-bottom:var(--spacing-2)}.stock-calendar-content .no-events p{margin:0}.stock-calendar-content .events-list{display:flex;flex-direction:column;gap:var(--spacing-2)}.stock-calendar-content .event-card{display:flex;gap:var(--spacing-3);padding:var(--spacing-3);background:#fff;border-radius:var(--radius-md);border:1px solid var(--color-neutral-200);cursor:pointer;transition:all .15s;position:relative}.stock-calendar-content .event-card:hover{border-color:var(--color-primary-300);box-shadow:var(--shadow-sm)}.stock-calendar-content .event-card.expiry{border-left:3px solid var(--color-error-500)}.stock-calendar-content .event-card.delivery{border-left:3px solid var(--color-info-500)}.stock-calendar-content .event-card.reorder{border-left:3px solid var(--color-warning-500)}.stock-calendar-content .event-card.stock_audit{border-left:3px solid var(--color-primary-500)}.stock-calendar-content .event-icon{font-size:1.25rem;flex-shrink:0}.stock-calendar-content .event-info{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.stock-calendar-content .event-title{font-weight:600;color:var(--color-neutral-900);font-size:.85rem}.stock-calendar-content .event-type{font-size:.7rem;color:var(--color-neutral-500);text-transform:uppercase}.stock-calendar-content .item-name,.stock-calendar-content .quantity,.stock-calendar-content .supplier,.stock-calendar-content .description{font-size:.8rem;color:var(--color-neutral-600)}.stock-calendar-content .urgency-badge{position:absolute;top:var(--spacing-2);right:var(--spacing-2);width:20px;height:20px;background:var(--color-error-100);color:var(--color-error-600);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem}.stock-calendar-legend{display:flex;flex-wrap:wrap;gap:var(--spacing-4);padding:var(--spacing-3) var(--spacing-5);background:var(--color-neutral-50);border-top:1px solid var(--color-neutral-200);font-size:.8rem}.stock-calendar-legend .legend-item{display:flex;align-items:center;gap:var(--spacing-2);color:var(--color-neutral-600)}.stock-calendar-legend .legend-icon{font-size:1rem}@media(max-width:768px){.stock-calendar-content{grid-template-columns:1fr}.stock-calendar-content .calendar-section{border-right:none;border-bottom:1px solid var(--color-neutral-200)}.stock-calendar-content .events-panel{max-height:300px}.alerts-list{flex-wrap:nowrap}}.print-schedule-container{background:var(--color-neutral-100);min-height:100vh}.print-preview-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-4) var(--spacing-6);background:#fff;border-bottom:1px solid var(--color-neutral-200);position:sticky;top:0;z-index:100}.print-preview-header h2{margin:0;font-size:1.25rem;font-weight:600;color:var(--color-neutral-900)}.preview-actions{display:flex;gap:var(--spacing-3)}.preview-actions .btn-primary,.preview-actions .btn-secondary{padding:var(--spacing-2) var(--spacing-4);border-radius:var(--radius-md);font-weight:500;cursor:pointer;transition:all .15s}.preview-actions .btn-primary{background:var(--color-primary-500);color:#fff;border:none}.preview-actions .btn-primary:hover{background:var(--color-primary-600)}.preview-actions .btn-secondary{background:#fff;color:var(--color-neutral-700);border:1px solid var(--color-neutral-300)}.preview-actions .btn-secondary:hover{background:var(--color-neutral-50)}.print-content{max-width:1000px;margin:0 auto;padding:var(--spacing-6);background:#fff;min-height:calc(100vh - 70px)}.print-header{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:var(--spacing-4);border-bottom:2px solid var(--color-neutral-900);margin-bottom:var(--spacing-6)}.clinic-info h1{margin:0;font-size:1.75rem;font-weight:700;color:var(--color-neutral-900)}.schedule-date{margin:var(--spacing-1) 0 0 0;font-size:1.1rem;color:var(--color-neutral-600)}.print-summary{display:flex;gap:var(--spacing-4);font-size:.95rem;color:var(--color-neutral-600)}.print-summary span{padding:var(--spacing-1) var(--spacing-3);background:var(--color-neutral-100);border-radius:var(--radius-md)}.doctor-section{margin-bottom:var(--spacing-6);page-break-inside:avoid}.doctor-header{display:flex;justify-content:space-between;align-items:baseline;padding:var(--spacing-2) var(--spacing-3);background:var(--color-neutral-100);border-radius:var(--radius-md);margin-bottom:var(--spacing-3)}.doctor-header h2{margin:0;font-size:1.1rem;font-weight:600;color:var(--color-neutral-900)}.doctor-header h2 .spec{font-weight:400;color:var(--color-neutral-600)}.doctor-count{font-size:.9rem;color:var(--color-neutral-500)}.no-appointments{padding:var(--spacing-4);text-align:center;color:var(--color-neutral-500);font-style:italic}.appointments-table{width:100%;border-collapse:collapse;font-size:.9rem}.appointments-table th,.appointments-table td{padding:var(--spacing-2) var(--spacing-3);text-align:left;border-bottom:1px solid var(--color-neutral-200)}.appointments-table th{font-weight:600;color:var(--color-neutral-700);background:var(--color-neutral-50);font-size:.8rem;text-transform:uppercase}.appointments-table tbody tr:hover{background:var(--color-neutral-50)}.col-time{width:80px;white-space:nowrap}.col-patient{width:180px}.col-phone{width:120px}.col-reason{min-width:150px}.col-status{width:100px}.col-alerts{width:120px}.col-notes{min-width:150px}.confirmation-code{display:block;font-size:.75rem;color:var(--color-neutral-500);font-family:monospace}.alert-badge{display:inline-block;padding:2px 6px;border-radius:var(--radius-sm);font-size:.7rem;font-weight:600;margin-right:4px}.alert-badge.allergies{background:var(--color-error-100);color:var(--color-error-700)}.alert-badge.vip{background:var(--color-warning-100);color:var(--color-warning-700)}.alert-badge.panel{background:var(--color-info-100);color:var(--color-info-700)}.appointments-table tr.status-cancelled{opacity:.5;text-decoration:line-through}.appointments-table tr.status-arrived td:first-child{border-left:3px solid var(--color-success-500)}.appointments-table tr.status-confirmed td:first-child{border-left:3px solid var(--color-primary-500)}.print-footer{margin-top:var(--spacing-8);padding-top:var(--spacing-4);border-top:1px solid var(--color-neutral-200);text-align:center;font-size:.8rem;color:var(--color-neutral-500)}.print-footer p{margin:var(--spacing-1) 0}.confidential{font-weight:600;text-transform:uppercase;letter-spacing:.5px}@media print{.no-print{display:none!important}body{print-color-adjust:exact;-webkit-print-color-adjust:exact}.print-schedule-container{background:#fff}.print-content{padding:0;max-width:100%;min-height:auto}.doctor-section{page-break-inside:avoid}.appointments-table{page-break-inside:auto}.appointments-table tr{page-break-inside:avoid}.print-header{position:running(header)}.print-footer{position:running(footer);border-top:none;margin-top:0;padding-top:var(--spacing-2)}@page{size:A4 portrait;margin:1.5cm;@top-center{content:element(header)}@bottom-center{content:element(footer)}}}@media print and (orientation:landscape){@page{size:A4 landscape}.appointments-table{font-size:.85rem}}.leave-overlay{position:absolute;left:0;right:0;border-left:4px solid;display:flex;align-items:center;justify-content:center;overflow:hidden;z-index:5;pointer-events:auto;cursor:pointer;transition:opacity .15s,transform .15s}.leave-overlay:hover{opacity:.9;transform:scale(1.01)}.leave-overlay.full-day{top:0;bottom:0;background-image:repeating-linear-gradient(45deg,transparent,transparent 10px,rgba(255,255,255,.1) 10px,rgba(255,255,255,.1) 20px)}.leave-overlay.partial-day{min-height:40px}.leave-overlay.break-block{min-height:30px;border-left-width:3px;background-image:repeating-linear-gradient(-45deg,transparent,transparent 5px,rgba(0,0,0,.03) 5px,rgba(0,0,0,.03) 10px)}.leave-content{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--spacing-2);gap:var(--spacing-1)}.leave-content.compact{padding:var(--spacing-1);gap:2px}.leave-icon{font-size:1.5rem;margin-bottom:var(--spacing-1)}.leave-label{font-size:.85rem;font-weight:600;color:inherit;white-space:nowrap}.leave-content.compact .leave-label{font-size:.75rem}.leave-time{font-size:.75rem;font-weight:500;opacity:.8}.leave-reason{font-size:.75rem;opacity:.7;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.leave-indicator-dot{display:inline-block;width:8px;height:8px;border-radius:50%;flex-shrink:0}.leave-indicator-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--radius-full);border:1px solid;font-size:.7rem;font-weight:600;white-space:nowrap}.leave-overlay[role=button]{cursor:pointer}.leave-overlay[role=button]:hover{box-shadow:0 2px 8px #0000001a}@media(max-width:768px){.leave-icon{font-size:1.25rem}.leave-label{font-size:.75rem}.leave-reason{display:none}}.multi-clinic-view{background:#fff;border-radius:var(--radius-lg);overflow:hidden}.multi-clinic-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-4) var(--spacing-5);border-bottom:1px solid var(--color-neutral-200);background:var(--color-neutral-50);flex-wrap:wrap;gap:var(--spacing-3)}.header-title{display:flex;align-items:baseline;gap:var(--spacing-3)}.header-title h2{margin:0;font-size:1.25rem;font-weight:600;color:var(--color-neutral-900)}.clinic-count{font-size:.9rem;color:var(--color-neutral-500);padding:var(--spacing-1) var(--spacing-2);background:var(--color-neutral-200);border-radius:var(--radius-full)}.header-controls{display:flex;align-items:center;gap:var(--spacing-4)}.metric-select{padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);background:#fff;font-size:.9rem;min-width:120px}.week-nav{display:flex;align-items:center;gap:var(--spacing-2)}.week-nav .nav-btn,.week-nav .today-btn{padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);background:#fff;cursor:pointer;font-size:.9rem;transition:all .15s}.week-nav .nav-btn:hover,.week-nav .today-btn:hover{border-color:var(--color-primary-500);color:var(--color-primary-600)}.week-display{font-weight:500;color:var(--color-neutral-700);min-width:180px;text-align:center}.summary-cards{display:flex;gap:var(--spacing-4);padding:var(--spacing-4) var(--spacing-5);background:#fff;border-bottom:1px solid var(--color-neutral-200)}.summary-card{flex:1;display:flex;flex-direction:column;align-items:center;padding:var(--spacing-3);background:var(--color-neutral-50);border-radius:var(--radius-md)}.summary-card .summary-value{font-size:1.5rem;font-weight:700;color:var(--color-neutral-900)}.summary-card .summary-label{font-size:.8rem;color:var(--color-neutral-500);margin-top:var(--spacing-1)}.multi-clinic-grid{overflow-x:auto}.grid-header{display:grid;grid-template-columns:200px repeat(7,1fr);border-bottom:2px solid var(--color-neutral-300);background:var(--color-neutral-100);position:sticky;top:0;z-index:10}.clinic-column-header{padding:var(--spacing-3) var(--spacing-4);font-weight:600;color:var(--color-neutral-700);font-size:.85rem;text-transform:uppercase}.day-column-header{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-2);border-left:1px solid var(--color-neutral-200)}.day-column-header.today{background:var(--color-primary-50)}.day-column-header .day-name{font-size:.75rem;color:var(--color-neutral-500);text-transform:uppercase}.day-column-header .day-date{font-size:1.1rem;font-weight:600;color:var(--color-neutral-800)}.day-column-header.today .day-date{color:var(--color-primary-600)}.clinic-row{display:grid;grid-template-columns:200px repeat(7,1fr);border-bottom:1px solid var(--color-neutral-100);transition:background .15s}.clinic-row:hover{background:var(--color-neutral-50)}.clinic-info{display:flex;flex-direction:column;justify-content:center;padding:var(--spacing-3) var(--spacing-4);border-right:1px solid var(--color-neutral-200)}.clinic-name{font-weight:600;color:var(--color-neutral-900);font-size:.9rem}.clinic-location{font-size:.75rem;color:var(--color-neutral-500);margin-top:2px}.day-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-2);border-left:1px solid var(--color-neutral-100);cursor:pointer;transition:all .15s;min-height:60px}.day-cell:hover{background:var(--color-primary-50)}.day-cell.today{background:var(--color-primary-50);border-left:2px solid var(--color-primary-300)}.day-cell.empty{color:var(--color-neutral-300)}.cell-value{font-size:1.1rem;font-weight:600;color:var(--color-neutral-900)}.cell-detail{font-size:.7rem;color:var(--color-neutral-500);margin-top:2px}.loading-state{grid-column:1 / -1;padding:var(--spacing-8);text-align:center;color:var(--color-neutral-500)}.multi-clinic-legend{display:flex;justify-content:center;gap:var(--spacing-4);padding:var(--spacing-3) var(--spacing-5);background:var(--color-neutral-50);border-top:1px solid var(--color-neutral-200);font-size:.8rem}.legend-item{display:flex;align-items:center;gap:var(--spacing-2);color:var(--color-neutral-600)}.legend-color{width:12px;height:12px;border-radius:var(--radius-sm)}.legend-note{color:var(--color-neutral-500);font-style:italic}@media(max-width:1024px){.multi-clinic-header{flex-direction:column;align-items:stretch}.header-title{justify-content:center}.header-controls{justify-content:center;flex-wrap:wrap}.grid-header,.clinic-row{grid-template-columns:150px repeat(7,minmax(70px,1fr))}.clinic-info{padding:var(--spacing-2)}.clinic-name{font-size:.8rem}.cell-value{font-size:.9rem}}@media(max-width:768px){.summary-cards{flex-wrap:wrap}.summary-card{flex:1 1 calc(50% - var(--spacing-2));min-width:120px}.grid-header,.clinic-row{grid-template-columns:120px repeat(7,minmax(50px,1fr))}.day-column-header .day-name{font-size:.65rem}.day-column-header .day-date{font-size:.9rem}.cell-detail{display:none}}.booking-hover-trigger{display:contents}.booking-hover-preview{min-width:280px;max-width:320px;background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);z-index:9999;animation:previewFadeIn .15s ease;overflow:hidden}@keyframes previewFadeIn{0%{opacity:0;transform:translate(-5px)}to{opacity:1;transform:translate(0)}}.booking-hover-preview.position-right{margin-left:8px}.booking-hover-preview.position-left{margin-right:8px}.booking-hover-preview.position-top{margin-bottom:8px}.booking-hover-preview.position-bottom{margin-top:8px}.preview-alert-banner{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs);font-weight:700;text-align:center;text-transform:uppercase;letter-spacing:.5px}.preview-alert-banner.blacklisted{background:var(--color-error-500);color:#fff}.preview-alert-banner.allergies{background:var(--color-warning-500);color:var(--color-warning-900)}.preview-section{padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--color-neutral-100)}.preview-section:last-of-type{border-bottom:none}.preview-patient-name{font-size:var(--font-size-md);font-weight:600;color:var(--color-neutral-900);margin-bottom:var(--spacing-xs)}.preview-phone{font-size:var(--font-size-sm);color:var(--color-neutral-600);font-family:monospace}.preview-row{display:flex;justify-content:space-between;font-size:var(--font-size-sm);margin-bottom:var(--spacing-xs)}.preview-row:last-child{margin-bottom:0}.preview-label{color:var(--color-neutral-500)}.preview-value{color:var(--color-neutral-900);font-weight:500;text-align:right;max-width:60%}.preview-badges{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-neutral-50)}.preview-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:500}.preview-badge.badge-status{background:var(--color-neutral-100);color:var(--color-neutral-700)}.preview-badge.badge-status.status-confirmed{background:var(--color-primary-100);color:var(--color-primary-700)}.preview-badge.badge-status.status-arrived{background:var(--color-success-100);color:var(--color-success-700)}.preview-badge.badge-status.status-completed{background:var(--color-info-100);color:var(--color-info-700)}.preview-badge.badge-status.status-cancelled{background:var(--color-neutral-200);color:var(--color-neutral-600)}.preview-badge.badge-status.status-no_show{background:var(--color-error-100);color:var(--color-error-700)}.preview-badge.badge-vip{background:var(--color-warning-100);color:var(--color-warning-700)}.preview-badge.badge-panel{background:var(--color-info-100);color:var(--color-info-700)}.preview-noshow-risk{padding:var(--spacing-sm) var(--spacing-md);border-top:1px solid var(--color-neutral-100)}.preview-noshow-risk.risk-medium{background:var(--color-warning-50)}.preview-noshow-risk.risk-high{background:var(--color-error-50)}.preview-risk-header{font-size:var(--font-size-sm);font-weight:600;margin-bottom:var(--spacing-xs)}.preview-noshow-risk.risk-medium .preview-risk-header{color:var(--color-warning-700)}.preview-noshow-risk.risk-high .preview-risk-header{color:var(--color-error-700)}.preview-risk-detail{font-size:var(--font-size-xs);color:var(--color-neutral-600);margin-left:var(--spacing-md)}.preview-confirmation{padding:var(--spacing-xs) var(--spacing-md);background:var(--color-neutral-50);font-size:var(--font-size-xs);color:var(--color-neutral-500)}.preview-confirmation code{background:var(--color-neutral-100);padding:2px 4px;border-radius:var(--radius-sm);font-family:monospace;color:var(--color-neutral-700)}.preview-hint{padding:var(--spacing-xs) var(--spacing-md);background:var(--color-neutral-100);font-size:10px;color:var(--color-neutral-500);text-align:center;border-top:1px solid var(--color-neutral-200)}.bookings-module{display:flex;flex-direction:column;gap:1.25rem;width:100%;box-sizing:border-box}.bookings-header{display:flex;gap:var(--spacing-md);align-items:center;flex-wrap:wrap}.bookings-header-left{display:flex;gap:var(--spacing-md);align-items:center}.view-toggle{display:flex;background:var(--color-neutral-100);border-radius:var(--radius-lg);padding:2px}.view-toggle-btn{padding:.5rem 1rem;background:transparent;border:none;border-radius:var(--radius-md);font-size:var(--font-size-small);font-weight:var(--font-weight-medium);color:var(--color-neutral-600);cursor:pointer;transition:all var(--transition-fast)}.view-toggle-btn:hover{color:var(--color-neutral-800)}.view-toggle-btn.active{background:var(--color-white);color:var(--color-primary-900);box-shadow:var(--shadow-sm)}.bookings-calendar-container{display:flex;flex-direction:column;flex:1;width:100%;min-height:600px;background:var(--color-white);border-radius:var(--radius-lg);overflow:hidden}.new-booking-btn{background:var(--color-primary-900);color:var(--color-white);border:none;padding:.75rem 1.25rem;border-radius:var(--radius-lg);font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);cursor:pointer;transition:background var(--transition-normal);white-space:nowrap}.new-booking-btn:hover{background:var(--color-primary-600)}.quick-checkin-btn{background:#e9d8fd;color:var(--color-primary-900);border:none;padding:.75rem 1.25rem;border-radius:var(--radius-lg);font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);cursor:pointer;transition:background var(--transition-normal);white-space:nowrap}.quick-checkin-btn:hover{background:#d6bcfa}.search-box{flex:1;position:relative}.search-box .search-input{width:100%;padding:.75rem var(--spacing-md);padding-right:2.5rem;border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);font-size:var(--font-size-body);outline:none;transition:border-color var(--transition-normal)}.search-box .search-input:focus{border-color:var(--color-primary-900)}.search-box .clear-search{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;font-size:1.25rem;color:var(--color-neutral-500);cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.search-box .clear-search:hover{color:var(--color-neutral-700)}.bookings-summary{display:flex;flex-wrap:nowrap;gap:.75rem;width:100%;box-sizing:border-box}.bookings-summary .summary-stat{flex:1 1 0;min-width:0;max-width:none;background:var(--color-white);border-radius:10px;padding:.875rem;text-align:center;box-shadow:var(--shadow-sm);border-left:4px solid var(--color-neutral-200);transition:all var(--transition-fast);box-sizing:border-box}.bookings-summary .summary-stat.total{border-left-color:var(--color-primary-900)}.bookings-summary .summary-stat.total:hover{border:1px solid var(--color-primary-900);border-left-width:4px}.bookings-summary .summary-stat.confirmed{border-left-color:var(--color-success)}.bookings-summary .summary-stat.confirmed:hover{border:1px solid var(--color-success);border-left-width:4px}.bookings-summary .summary-stat.checked-in{border-left-color:var(--color-primary-900)}.bookings-summary .summary-stat.checked-in:hover{border:1px solid var(--color-primary-900);border-left-width:4px}.bookings-summary .summary-stat.cancelled{border-left-color:var(--color-error)}.bookings-summary .summary-stat.cancelled:hover{border:1px solid var(--color-error);border-left-width:4px}.bookings-summary .stat-number{display:block;font-size:var(--font-size-h2);font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.bookings-summary .stat-label{font-size:.6875rem;color:var(--color-neutral-500);text-transform:uppercase;letter-spacing:.05em}.filter-tabs{display:flex;gap:var(--spacing-sm);overflow-x:auto;padding-bottom:var(--spacing-xs)}.filter-tab{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:20px;font-size:.8125rem;color:var(--color-neutral-700);cursor:pointer;white-space:nowrap;transition:all var(--transition-normal)}.filter-tab:hover{background:var(--color-neutral-50);border-color:var(--color-neutral-300)}.filter-tab.active{background:var(--color-primary-900);border-color:var(--color-primary-900);color:var(--color-white)}.bookings-list{max-height:450px;overflow-y:auto}.empty-bookings{background:var(--color-white);border-radius:var(--radius-xl);padding:var(--spacing-2xl);text-align:center;color:var(--color-neutral-500);box-shadow:var(--shadow-sm)}.bookings-timeline{display:flex;flex-direction:column;gap:var(--spacing-lg)}.timeline-section{display:flex;flex-direction:column;gap:.75rem}.section-label{font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);color:var(--color-neutral-500);text-transform:uppercase;letter-spacing:.05em;margin:0;padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-neutral-200)}.booking-card{display:flex;align-items:center;gap:var(--spacing-md);background:var(--color-white);border-radius:10px;padding:var(--spacing-md);box-shadow:var(--shadow-sm);cursor:pointer;transition:all var(--transition-normal);border:1px solid transparent}.booking-card:hover{border-color:var(--color-primary-900);box-shadow:0 2px 8px #805ad526}.booking-card.selected{border-color:var(--color-primary-900);background:#faf5ff}.booking-time{display:flex;flex-direction:column;align-items:center;min-width:70px;padding-right:var(--spacing-md);border-right:1px solid var(--color-neutral-200)}.booking-time .time{font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.booking-time .duration{font-size:.6875rem;color:var(--color-neutral-500)}.booking-main{flex:1;min-width:0}.booking-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-xs)}.patient-name{font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.booking-type{font-size:var(--font-size-tiny);font-weight:var(--font-weight-semibold);padding:.125rem .375rem;border-radius:var(--radius-sm);text-transform:uppercase;background:var(--color-neutral-200);color:var(--color-neutral-700)}.booking-type.online{background:var(--color-info-light);color:var(--color-primary-600)}.booking-type.phone{background:var(--color-warning-light);color:var(--color-warning-hover)}.booking-type.in_person{background:var(--color-success-light);color:var(--color-success-hover)}.booking-details{display:flex;gap:.75rem;font-size:var(--font-size-caption);color:var(--color-neutral-500);margin-bottom:var(--spacing-xs)}.booking-details .patient-phone{font-family:monospace}.booking-details .confirmation-code{color:var(--color-primary-900);font-weight:var(--font-weight-medium)}.booking-reason{font-size:.8125rem;color:var(--color-neutral-500);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.booking-doctor{font-size:var(--font-size-caption);color:var(--color-success);margin-top:var(--spacing-xs)}.booking-status-section{display:flex;flex-direction:column;align-items:flex-end;gap:var(--spacing-sm);flex-shrink:0}.status-tag{font-size:.6875rem;font-weight:var(--font-weight-semibold);padding:var(--spacing-xs) .625rem;border-radius:var(--radius-xl);text-transform:uppercase;letter-spacing:.03em}.status-tag.status-pending{background:var(--color-warning-light);color:var(--color-warning-hover)}.status-tag.status-confirmed{background:var(--color-success-light);color:var(--color-success-hover)}.status-tag.status-checked-in{background:var(--color-info-light);color:var(--color-primary-600)}.status-tag.status-cancelled{background:var(--color-error-light);color:var(--color-error)}.status-tag.status-no-show{background:var(--color-error-light);color:var(--color-error-hover)}.status-tag.status-completed{background:var(--color-neutral-200);color:var(--color-neutral-700)}.action-btn{padding:.375rem .75rem;border-radius:var(--radius-md);border:none;font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-normal)}.action-btn.check-in{background:var(--color-success);color:var(--color-white)}.action-btn.check-in:hover{background:var(--color-success-hover)}.action-btn.check-in:disabled{background:var(--color-neutral-500);cursor:not-allowed}.action-btn.cancel{background:var(--color-neutral-200);color:var(--color-error)}.action-btn.cancel:hover{background:var(--color-error-light)}.action-btn.cancel:disabled{opacity:.5;cursor:not-allowed}.action-btn.edit{background:var(--color-neutral-200);color:var(--color-neutral-700)}.action-btn.edit:hover{background:var(--color-neutral-300)}.booking-actions{display:flex;gap:var(--spacing-sm)}.booking-modal{max-width:500px;width:100%}.booking-modal .form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.booking-modal .form-group{margin-bottom:var(--spacing-md)}.booking-modal .form-group label{display:block;font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700);margin-bottom:.375rem}.booking-modal .form-group input,.booking-modal .form-group select{width:100%;padding:.625rem .75rem;border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:var(--font-size-body);outline:none;transition:border-color var(--transition-normal)}.booking-modal .form-group input:focus,.booking-modal .form-group select:focus{border-color:var(--color-primary-900)}.booking-modal .selected-patient{display:flex;align-items:center;justify-content:space-between;padding:.625rem .75rem;background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md)}.booking-modal .selected-patient span{font-weight:var(--font-weight-medium);color:var(--color-neutral-900)}.booking-modal .read-only-field{padding:.625rem .75rem;background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);color:var(--color-neutral-700)}.booking-modal .patient-search-results{position:absolute;top:100%;left:0;right:0;background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);box-shadow:var(--shadow-md);max-height:200px;overflow-y:auto;z-index:10}.booking-modal .search-result-item{padding:.75rem;cursor:pointer;border-bottom:1px solid #f0f0f0;display:flex;flex-direction:column;gap:var(--spacing-xs)}.booking-modal .search-result-item:last-child{border-bottom:none}.booking-modal .search-result-item:hover{background:var(--color-neutral-50)}.booking-modal .search-result-item .patient-name{font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.booking-modal .search-result-item .patient-details{font-size:var(--font-size-caption);color:var(--color-neutral-500)}.booking-modal .form-group{position:relative}.bookings-footer{display:flex;justify-content:flex-start;align-items:center;gap:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-neutral-200)}.refresh-button{padding:.375rem .875rem;background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:var(--font-size-caption);color:var(--color-neutral-700);cursor:pointer;transition:all var(--transition-normal)}.refresh-button:hover{background:var(--color-neutral-50);border-color:var(--color-neutral-300)}.booking-modal .new-patient-form{background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:var(--spacing-md)}.booking-modal .new-patient-form .form-group,.booking-modal .new-patient-form .form-row{margin-bottom:.75rem}.booking-modal .new-patient-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:var(--spacing-md);padding-top:.75rem;border-top:1px solid var(--color-neutral-200)}.booking-modal .search-results-footer{padding:var(--spacing-sm) .75rem;background:var(--color-neutral-50);border-top:1px solid var(--color-neutral-200);text-align:center}.booking-modal .create-new-link{color:var(--color-success);font-weight:var(--font-weight-semibold)}.booking-modal .create-new-link:hover{color:var(--color-success-hover)}.booking-modal .no-results-box{padding:var(--spacing-lg);text-align:center;background:var(--color-neutral-50);border:1px dashed var(--color-neutral-300);border-radius:var(--radius-lg);margin-top:var(--spacing-sm)}.booking-modal .no-results-box p{color:var(--color-neutral-500);font-size:var(--font-size-body);margin:0 0 var(--spacing-md) 0}.booking-modal .input-error{border-color:#fc8181!important;background:#fff5f5}.booking-modal .field-error{display:block;color:var(--color-error);font-size:var(--font-size-caption);margin-top:var(--spacing-xs)}@media(max-width:640px){.bookings-summary{overflow-x:auto}.bookings-summary .summary-stat{min-width:80px}.booking-card{flex-wrap:wrap}.booking-time{border-right:none;padding-right:0;min-width:auto}.booking-status-section{width:100%;flex-direction:row;justify-content:space-between;margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--color-neutral-200)}.booking-modal .new-patient-form .form-row{grid-template-columns:1fr}}.onboarding-wizard{max-width:720px;margin:0 auto;padding:2rem 1.5rem}.wizard-header{text-align:center;margin-bottom:2rem}.wizard-phases{display:flex;justify-content:center;gap:.5rem;margin-bottom:1.25rem}.wizard-phase{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:2rem;font-size:.8125rem;font-weight:500;color:var(--color-neutral-400);background:var(--color-neutral-100);transition:all .2s ease}.wizard-phase.active{color:#fff;background:var(--color-primary-900);box-shadow:0 2px 8px #4a63b34d}.wizard-phase.completed{color:var(--color-success);background:var(--color-success-light, #ecfdf5)}.phase-number{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;font-size:.75rem;font-weight:700;background:#fff3}.wizard-phase.active .phase-number{background:#ffffff40;color:#fff}.wizard-phase.completed .phase-number{background:var(--color-success);color:#fff}.phase-label{white-space:nowrap}.wizard-progress{margin-bottom:1rem}.progress-text{display:block;font-size:.8125rem;color:var(--color-neutral-500);margin-bottom:.5rem;font-weight:500}.progress-bar{width:100%;height:6px;background:var(--color-neutral-200);border-radius:3px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--color-primary-900),var(--color-primary-600, #5a7fd4));border-radius:3px;transition:width .4s ease}.btn-skip{padding:.5rem 1.25rem;background:transparent;border:1px solid var(--color-neutral-300);border-radius:.5rem;color:var(--color-neutral-500);font-size:.8125rem;cursor:pointer;transition:all .2s ease;margin-top:.75rem}.btn-skip:hover{background:var(--color-neutral-50);border-color:var(--color-neutral-400);color:var(--color-neutral-700)}.wizard-content{background:#fff;border-radius:1rem;padding:1.75rem;box-shadow:0 1px 3px #0000000f,0 4px 12px #0000000a;border:1px solid var(--color-neutral-200);margin-bottom:1.5rem}.step-title{margin:0 0 1.5rem;font-size:1.125rem;font-weight:600;color:var(--color-primary-900);padding-bottom:.75rem;border-bottom:2px solid var(--color-primary-900);display:inline-block}.wizard-questions{display:flex;flex-direction:column;gap:1.5rem}.wizard-question{padding:1.25rem;background:var(--color-neutral-50);border-radius:.75rem;border:1px solid var(--color-neutral-200);transition:border-color .2s ease}.wizard-question:hover{border-color:var(--color-neutral-300)}.wizard-question.gated{opacity:.55;position:relative}.wizard-question.has-conflict{border-color:var(--color-error, #ef4444);background:var(--color-error-light, #fef2f2)}.wizard-question .question-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:.25rem}.wizard-question .question-header h4{margin:0;font-size:.9375rem;font-weight:600;color:var(--color-neutral-900);line-height:1.4}.question-description{margin:0 0 1rem;font-size:.8125rem;color:var(--color-neutral-500);line-height:1.5}.gated-badge{flex-shrink:0;padding:.2rem .6rem;background:#fef3c7;color:#d97706;font-size:.6875rem;font-weight:600;border-radius:1rem;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}.question-warning{margin-bottom:.75rem;padding:.625rem .875rem;background:#fef3c7;border:1px solid #fcd34d;border-radius:.5rem;font-size:.8125rem;color:#92400e;line-height:1.4}.question-conflict{margin-bottom:.75rem;padding:.625rem .875rem;background:#fef2f2;border:1px solid #fecaca;border-radius:.5rem;font-size:.8125rem;color:var(--color-error, #dc2626);line-height:1.4}.question-options{margin-top:.5rem}.options-group{display:flex;flex-direction:column;gap:.5rem}.option-card{display:flex;align-items:flex-start;gap:.75rem;padding:.875rem 1rem;background:#fff;border:2px solid var(--color-neutral-200);border-radius:.625rem;cursor:pointer;transition:all .15s ease}.option-card:hover{border-color:var(--color-primary-900);background:#f8f9ff}.option-card.selected{border-color:var(--color-primary-900);background:linear-gradient(135deg,#f0f3ff,#e8ecfa);box-shadow:0 0 0 1px var(--color-primary-900)}.option-card.recommended{position:relative}.option-card input[type=radio]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:20px;height:20px;border:2px solid var(--color-neutral-300);border-radius:50%;flex-shrink:0;margin-top:1px;cursor:pointer;transition:all .15s ease;position:relative}.option-card input[type=radio]:checked{border-color:var(--color-primary-900);background:var(--color-primary-900)}.option-card input[type=radio]:checked:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:8px;height:8px;background:#fff;border-radius:50%}.option-card input[type=radio]:disabled{opacity:.4;cursor:not-allowed}.option-content{display:flex;flex-direction:column;gap:.2rem;min-width:0}.option-label{font-size:.875rem;font-weight:600;color:var(--color-neutral-900);display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.recommended-tag{font-size:.6875rem;font-weight:600;color:var(--color-success, #059669);background:var(--color-success-light, #ecfdf5);padding:.1rem .5rem;border-radius:1rem;white-space:nowrap}.option-description{font-size:.8125rem;color:var(--color-neutral-500);line-height:1.4}.number-input-group{display:flex;align-items:center;gap:.75rem}.number-input-group .number-input{width:100px;padding:.625rem .875rem;border:2px solid var(--color-neutral-200);border-radius:.5rem;font-size:1rem;font-weight:600;color:var(--color-neutral-900);text-align:center;transition:border-color .15s ease}.number-input-group .number-input:focus{outline:none;border-color:var(--color-primary-900);box-shadow:0 0 0 3px #4a63b31a}.number-input-group .number-input:disabled{background:var(--color-neutral-100);cursor:not-allowed}.input-unit{font-size:.875rem;color:var(--color-neutral-500);font-weight:500}.wizard-footer{display:flex;justify-content:space-between;align-items:center;padding-top:.5rem}.btn-back{padding:.625rem 1.25rem;background:var(--color-neutral-100);border:1px solid var(--color-neutral-200);border-radius:.5rem;color:var(--color-neutral-600);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-back:hover:not(:disabled){background:var(--color-neutral-200);color:var(--color-neutral-800)}.btn-back:disabled{opacity:.4;cursor:not-allowed}.btn-next{padding:.75rem 2rem;background:var(--color-primary-900);border:none;border-radius:.5rem;color:#fff;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 6px #4a63b340}.btn-next:hover:not(:disabled){background:var(--color-primary-600, #5a7fd4);box-shadow:0 4px 12px #4a63b359;transform:translateY(-1px)}.btn-next:disabled{opacity:.6;cursor:not-allowed;transform:none}.phase-complete{text-align:center;padding:2.5rem 2rem;background:#fff;border-radius:1rem;box-shadow:0 1px 3px #0000000f,0 4px 12px #0000000a;border:1px solid var(--color-neutral-200)}.phase-complete-header{margin-bottom:2rem}.phase-complete-icon{display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,var(--color-success, #059669) 0%,#10b981 100%);font-size:2rem;color:#fff;margin-bottom:1rem;box-shadow:0 6px 20px #0596694d}.phase-complete h2{margin:0;font-size:1.375rem;font-weight:700;color:var(--color-neutral-900)}.phase-complete-content{display:flex;gap:2rem;justify-content:center;text-align:left;margin-bottom:2rem;flex-wrap:wrap}.phase-complete-section{flex:1;min-width:200px;max-width:280px;padding:1.25rem;background:var(--color-neutral-50);border-radius:.75rem;border:1px solid var(--color-neutral-200)}.phase-complete-section h4{margin:0 0 .75rem;font-size:.8125rem;font-weight:600;color:var(--color-neutral-600);text-transform:uppercase;letter-spacing:.04em}.phase-complete-section ul{list-style:none;padding:0;margin:0}.phase-complete-section li{padding:.3rem 0;font-size:.8125rem;color:var(--color-neutral-700);line-height:1.4}.phase-complete-actions{display:flex;justify-content:center;gap:.75rem}.phase-complete-actions .btn-secondary{padding:.75rem 1.5rem;background:transparent;border:1px solid var(--color-neutral-300);border-radius:.5rem;color:var(--color-neutral-600);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.phase-complete-actions .btn-secondary:hover{background:var(--color-neutral-50);border-color:var(--color-neutral-400)}.phase-complete-actions .btn-primary{padding:.75rem 2rem;background:var(--color-primary-900);border:none;border-radius:.5rem;color:#fff;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 6px #4a63b340}.phase-complete-actions .btn-primary:hover{background:var(--color-primary-600, #5a7fd4);box-shadow:0 4px 12px #4a63b359}.wizard-loading{display:flex;align-items:center;justify-content:center;padding:4rem 2rem;color:var(--color-neutral-500);font-size:.9375rem}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.wizard-content{animation:fadeSlideIn .3s ease}.phase-complete{animation:fadeSlideIn .4s ease}@media(max-width:640px){.onboarding-wizard{padding:1rem}.wizard-phases{flex-direction:column;gap:.375rem}.wizard-phase{justify-content:center}.wizard-content{padding:1.25rem}.wizard-question{padding:1rem}.option-card{padding:.75rem}.wizard-footer{flex-direction:column-reverse;gap:.75rem}.wizard-footer .btn-back,.wizard-footer .btn-next{width:100%;text-align:center}.phase-complete-content,.phase-complete-actions{flex-direction:column}}.settings-import-export{padding:var(--spacing-lg);max-width:700px;margin:0 auto}.ie-header{margin-bottom:var(--spacing-lg)}.ie-header h3{margin:0 0 var(--spacing-xs) 0;font-size:1.25rem;color:var(--color-neutral-900)}.ie-header p{margin:0;color:var(--color-neutral-500);font-size:var(--font-size-body)}.ie-header .btn-back{margin-bottom:.75rem;padding:var(--spacing-sm) .75rem;background:transparent;border:none;color:var(--color-primary-900);font-size:var(--font-size-body);cursor:pointer;transition:color var(--transition-normal)}.ie-header .btn-back:hover{color:var(--color-primary-600)}.ie-options{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.ie-option-card{display:flex;align-items:center;gap:var(--spacing-md);padding:1.25rem;background:var(--color-white);border:2px solid var(--color-neutral-200);border-radius:var(--radius-lg);cursor:pointer;text-align:left;transition:var(--transition-normal)}.ie-option-card:hover{border-color:var(--color-primary-900);box-shadow:0 4px 12px #4a63b31a}.ie-option-icon{width:48px;height:48px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-h2);font-weight:var(--font-weight-bold)}.ie-option-icon.export-icon{background:linear-gradient(135deg,var(--color-success) 0%,var(--color-success-hover) 100%);color:var(--color-white)}.ie-option-icon.import-icon{background:linear-gradient(135deg,var(--color-primary-900) 0%,var(--color-primary-600) 100%);color:var(--color-white)}.ie-option-content h4{margin:0 0 var(--spacing-xs) 0;font-size:1rem;color:var(--color-neutral-900)}.ie-option-content p{margin:0;font-size:.8125rem;color:var(--color-neutral-500)}.ie-built-in-section h4{margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700);text-transform:uppercase;letter-spacing:.05em}.built-in-templates{display:flex;flex-direction:column;gap:.75rem}.built-in-template-card{display:block;padding:var(--spacing-md);background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);cursor:pointer;text-align:left;transition:var(--transition-normal)}.built-in-template-card:hover{border-color:var(--color-primary-900);background:var(--color-neutral-50)}.template-name{font-weight:var(--font-weight-semibold);color:var(--color-neutral-900);margin-bottom:var(--spacing-xs)}.template-description{font-size:.8125rem;color:var(--color-neutral-500);margin-bottom:var(--spacing-sm)}.template-categories{display:flex;flex-wrap:wrap;gap:.375rem}.category-tag{padding:.125rem var(--spacing-sm);background:var(--color-info-light);color:var(--color-primary-900);font-size:.6875rem;font-weight:var(--font-weight-medium);border-radius:var(--radius-full);text-transform:capitalize}.export-form{background:var(--color-white);padding:var(--spacing-lg);border-radius:var(--radius-lg);border:1px solid var(--color-neutral-200)}.form-group{margin-bottom:1.25rem}.form-group label{display:block;margin-bottom:var(--spacing-sm);font-weight:var(--font-weight-semibold);font-size:var(--font-size-body);color:var(--color-neutral-700)}.form-group input[type=text],.form-group textarea{width:100%;padding:.625rem .875rem;border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);font-size:var(--font-size-body);color:var(--color-neutral-900);transition:border-color var(--transition-normal),box-shadow var(--transition-normal)}.form-group input[type=text]:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary-900);box-shadow:0 0 0 3px #4a63b31a}.category-actions{display:flex;gap:var(--spacing-md);margin-bottom:.75rem}.btn-link{background:none;border:none;color:var(--color-primary-900);font-size:.8125rem;cursor:pointer;padding:0}.category-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm)}.category-checkbox{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:.625rem;background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-normal)}.category-checkbox:hover{background:var(--color-neutral-100)}.category-checkbox input[type=checkbox]{margin-top:.125rem}.category-label{display:flex;flex-direction:column}.category-title{font-size:.8125rem;font-weight:var(--font-weight-medium);color:var(--color-neutral-900)}.category-count{font-size:.6875rem;color:var(--color-neutral-500)}.hint{margin-top:var(--spacing-sm);font-size:var(--font-size-caption);color:var(--color-neutral-500);font-style:italic}.form-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--color-neutral-200)}.btn-cancel{padding:.625rem 1.25rem;background:var(--color-neutral-100);border:none;border-radius:var(--radius-md);color:var(--color-neutral-700);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--transition-normal)}.btn-cancel:hover{background:var(--color-neutral-200)}.btn-export,.btn-confirm{padding:.625rem var(--spacing-lg);background:var(--color-success);border:none;border-radius:var(--radius-md);color:var(--color-white);font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);cursor:pointer;transition:background var(--transition-normal)}.btn-export:hover:not(:disabled),.btn-confirm:hover:not(:disabled){background:var(--color-success-hover)}.btn-export:disabled,.btn-confirm:disabled{opacity:.5;cursor:not-allowed}.import-section{background:var(--color-white);padding:var(--spacing-lg);border-radius:var(--radius-lg);border:1px solid var(--color-neutral-200)}.file-upload-area{margin-bottom:var(--spacing-lg)}.file-input{position:absolute;opacity:0;width:0;height:0}.file-upload-label{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl);border:2px dashed var(--color-neutral-300);border-radius:var(--radius-lg);cursor:pointer;transition:var(--transition-normal);text-align:center}.file-upload-label:hover{border-color:var(--color-primary-900);background:var(--color-neutral-50)}.upload-icon{font-size:var(--font-size-h1);margin-bottom:.75rem}.upload-text{font-size:.9375rem;color:var(--color-neutral-700);margin-bottom:var(--spacing-xs)}.upload-hint{font-size:var(--font-size-caption);color:var(--color-neutral-500)}.import-errors{padding:var(--spacing-md);background:var(--color-error-light);border:1px solid #fecaca;border-radius:var(--radius-md);margin-bottom:var(--spacing-lg)}.import-errors h4{margin:0 0 var(--spacing-sm) 0;font-size:var(--font-size-body);color:var(--color-error)}.import-errors ul{margin:0;padding-left:1.25rem}.import-errors li{font-size:.8125rem;color:var(--color-error);margin-bottom:var(--spacing-xs)}.divider{display:flex;align-items:center;margin:var(--spacing-lg) 0}.divider:before,.divider:after{content:"";flex:1;height:1px;background:var(--color-neutral-200)}.divider span{padding:0 var(--spacing-md);font-size:var(--font-size-caption);color:var(--color-neutral-500);text-transform:uppercase}.preview-section{background:var(--color-white);padding:var(--spacing-lg);border-radius:var(--radius-lg);border:1px solid var(--color-neutral-200)}.template-info{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-neutral-200)}.template-info h4{margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-h4);color:var(--color-neutral-900)}.template-info p{margin:0 0 var(--spacing-sm) 0;font-size:var(--font-size-body);color:var(--color-neutral-500)}.preview-group{margin-bottom:var(--spacing-lg)}.preview-group h4{margin:0 0 .75rem;font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700)}.preview-group.changes h4{color:var(--color-success)}.preview-group.gated h4{color:var(--color-warning)}.gated-note{font-size:.8125rem;color:var(--color-warning);margin-bottom:.75rem}.change-list,.gated-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.change-item{display:flex;justify-content:space-between;align-items:center;padding:.625rem .75rem;background:var(--color-success-light);border-radius:var(--radius-md);font-size:.8125rem}.change-key{font-weight:var(--font-weight-medium);color:var(--color-neutral-900)}.change-values{display:flex;align-items:center;gap:var(--spacing-sm)}.arrow{color:var(--color-neutral-500)}.new-value{color:var(--color-success);font-weight:var(--font-weight-medium)}.gated-item{display:flex;justify-content:space-between;align-items:center;padding:.625rem .75rem;background:var(--color-warning-light);border-radius:var(--radius-md);font-size:.8125rem}.gated-key{color:var(--color-neutral-900)}.required-tier{color:var(--color-warning);font-weight:var(--font-weight-medium);text-transform:capitalize}.no-changes{padding:var(--spacing-xl);text-align:center;color:var(--color-neutral-500);background:var(--color-neutral-50);border-radius:var(--radius-lg)}.preview-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--color-neutral-200)}@media(max-width:768px){.settings-import-export{padding:var(--spacing-md)}.ie-options{grid-template-columns:1fr}.ie-option-card{flex-direction:column;text-align:center}.category-grid{grid-template-columns:1fr}.change-item,.gated-item{flex-direction:column;align-items:flex-start;gap:var(--spacing-xs)}.form-actions,.preview-actions{flex-direction:column}.btn-cancel,.btn-export,.btn-confirm{width:100%}}.access-control-settings{padding:var(--spacing-md) 0}.settings-section-header{margin-bottom:var(--spacing-lg)}.settings-section-header h3{margin:0 0 var(--spacing-sm) 0;color:var(--color-neutral-900)}.settings-section-header p{margin:0;color:var(--color-neutral-500);font-size:.9rem}.role-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--spacing-md)}.role-card{background:var(--color-white);border-radius:var(--radius-xl);padding:1.25rem;box-shadow:var(--shadow-sm);border:2px solid transparent;transition:border-color var(--transition-normal)}.role-card:hover{border-color:var(--color-neutral-200)}.role-card.customized{border-color:var(--color-primary-900)}.role-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-md)}.role-info h4{margin:0 0 var(--spacing-xs) 0;color:var(--color-neutral-900);font-size:1.1rem}.role-info p{margin:0;color:var(--color-neutral-500);font-size:.85rem}.system-badge{background:var(--color-neutral-100);color:var(--color-neutral-500);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-tiny);font-weight:var(--font-weight-medium);text-transform:uppercase}.role-permissions{margin-bottom:var(--spacing-md)}.permissions-label{display:block;font-size:.8rem;color:var(--color-neutral-500);margin-bottom:var(--spacing-sm)}.permission-badges{display:flex;flex-wrap:wrap;gap:.375rem}.group-badge{background:var(--color-primary-100);color:var(--color-primary-900);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}.role-stats{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md);padding:.75rem;background:var(--color-neutral-50);border-radius:var(--radius-md)}.role-stats .stat{font-size:.85rem;color:var(--color-neutral-500)}.role-stats .stat strong{color:var(--color-neutral-900)}.customized-notice{background:var(--color-warning-light);color:var(--color-warning-hover);padding:var(--spacing-sm) .75rem;border-radius:var(--radius-sm);font-size:.8rem;margin-bottom:var(--spacing-md)}.role-actions{display:flex;justify-content:flex-end}.permission-editor{max-height:70vh;overflow-y:auto}.editor-description{margin:0 0 var(--spacing-lg) 0;color:var(--color-neutral-500);font-size:.9rem}.permission-groups{display:flex;flex-direction:column;gap:var(--spacing-lg)}.permission-group{background:var(--color-neutral-50);border-radius:var(--radius-lg);padding:var(--spacing-md)}.group-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-neutral-200)}.group-header h4{margin:0;color:var(--color-neutral-900);font-size:.95rem}.btn-link{background:none;border:none;color:var(--color-primary-900);font-size:.8rem;cursor:pointer;padding:0}.btn-link:hover{text-decoration:underline}.permission-items{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--spacing-sm)}.permission-item{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-sm);background:var(--color-white);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast)}.permission-item:hover{background:var(--color-neutral-100)}.permission-item input[type=checkbox]{margin-top:.125rem}.item-info{display:flex;flex-direction:column}.item-label{font-size:.9rem;font-weight:var(--font-weight-medium);color:var(--color-neutral-900)}.item-description{font-size:var(--font-size-caption);color:var(--color-neutral-500)}.btn-small{padding:.375rem .75rem;font-size:.85rem}.portal-settings-panel{display:flex;flex-direction:column;height:100%;background:var(--color-surface)}.portal-settings-panel .panel-header{display:flex;justify-content:space-between;align-items:flex-start;padding:var(--spacing-lg);border-bottom:1px solid var(--color-border);background:var(--color-background)}.portal-settings-panel .header-content h2{margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-xl);font-weight:600;color:var(--color-text)}.portal-settings-panel .header-content p{margin:0;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.portal-settings-panel .close-btn{background:none;border:none;font-size:24px;color:var(--color-text-secondary);cursor:pointer;padding:0;line-height:1}.portal-settings-panel .close-btn:hover{color:var(--color-text)}.portal-settings-panel .loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xxl);gap:var(--spacing-md);color:var(--color-text-secondary)}.portal-settings-panel .settings-groups{flex:1;overflow-y:auto;padding:var(--spacing-md)}.portal-settings-panel .setting-group{background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:var(--spacing-md);overflow:hidden}.portal-settings-panel .group-header{display:flex;justify-content:space-between;align-items:center;width:100%;padding:var(--spacing-md) var(--spacing-lg);background:none;border:none;cursor:pointer;text-align:left}.portal-settings-panel .group-header:hover{background:var(--color-hover)}.portal-settings-panel .group-info h3{margin:0 0 var(--spacing-xxs) 0;font-size:var(--font-size-md);font-weight:600;color:var(--color-text)}.portal-settings-panel .group-info p{margin:0;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.portal-settings-panel .expand-icon{font-size:20px;font-weight:600;color:var(--color-text-secondary);width:24px;text-align:center}.portal-settings-panel .group-content{border-top:1px solid var(--color-border);padding:var(--spacing-md) var(--spacing-lg)}.portal-settings-panel .setting-row{display:flex;justify-content:space-between;align-items:flex-start;padding:var(--spacing-md) 0;border-bottom:1px solid var(--color-border-light);gap:var(--spacing-lg)}.portal-settings-panel .setting-row:last-child{border-bottom:none;padding-bottom:0}.portal-settings-panel .setting-row.disabled{opacity:.5;pointer-events:none}.portal-settings-panel .setting-info{flex:1}.portal-settings-panel .setting-info label{display:block;font-weight:500;color:var(--color-text);margin-bottom:var(--spacing-xxs)}.portal-settings-panel .setting-info p{margin:0;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.portal-settings-panel .setting-warning{display:inline-block;margin-top:var(--spacing-xs);padding:var(--spacing-xxs) var(--spacing-xs);background:var(--color-warning-light);color:var(--color-warning-dark);font-size:var(--font-size-xs);border-radius:var(--radius-sm)}.portal-settings-panel .setting-control{flex-shrink:0}.portal-settings-panel .toggle-switch{position:relative;display:inline-block;width:48px;height:26px}.portal-settings-panel .toggle-switch input{opacity:0;width:0;height:0}.portal-settings-panel .toggle-slider{position:absolute;cursor:pointer;inset:0;background:var(--color-border);border-radius:26px;transition:background .2s}.portal-settings-panel .toggle-slider:before{position:absolute;content:"";height:20px;width:20px;left:3px;bottom:3px;background:#fff;border-radius:50%;transition:transform .2s;box-shadow:0 1px 3px #0003}.portal-settings-panel .toggle-switch input:checked+.toggle-slider{background:var(--color-primary)}.portal-settings-panel .toggle-switch input:checked+.toggle-slider:before{transform:translate(22px)}.portal-settings-panel .toggle-switch input:disabled+.toggle-slider{background:var(--color-border-light);cursor:not-allowed}.portal-settings-panel .toggle-switch.has-change .toggle-slider{box-shadow:0 0 0 2px var(--color-warning)}.portal-settings-panel .number-input{display:flex;align-items:center;gap:var(--spacing-xs)}.portal-settings-panel .number-input input{width:80px;padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-sm)}.portal-settings-panel .number-input input:focus{outline:none;border-color:var(--color-primary)}.portal-settings-panel .number-input input:disabled{background:var(--color-surface);cursor:not-allowed}.portal-settings-panel .number-input.has-change input{border-color:var(--color-warning);background:var(--color-warning-light)}.portal-settings-panel .number-input .unit{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.portal-settings-panel select{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-sm);background:var(--color-background);min-width:150px}.portal-settings-panel select:focus{outline:none;border-color:var(--color-primary)}.portal-settings-panel select:disabled{background:var(--color-surface);cursor:not-allowed}.portal-settings-panel select.has-change{border-color:var(--color-warning);background:var(--color-warning-light)}.portal-settings-panel input[type=text]{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-sm);min-width:200px}.portal-settings-panel input[type=text]:focus{outline:none;border-color:var(--color-primary)}.portal-settings-panel input[type=text]:disabled{background:var(--color-surface);cursor:not-allowed}.portal-settings-panel input[type=text].has-change{border-color:var(--color-warning);background:var(--color-warning-light)}.portal-settings-panel .save-bar{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);background:var(--color-surface);border-top:1px solid var(--color-border);gap:var(--spacing-lg)}.portal-settings-panel .change-reason{flex:1;display:flex;align-items:center;gap:var(--spacing-sm)}.portal-settings-panel .change-reason label{font-size:var(--font-size-sm);color:var(--color-text-secondary);white-space:nowrap}.portal-settings-panel .change-reason input{flex:1;padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-sm)}.portal-settings-panel .save-actions{display:flex;align-items:center;gap:var(--spacing-md)}.portal-settings-panel .change-count{font-size:var(--font-size-sm);color:var(--color-warning-dark);background:var(--color-warning-light);padding:var(--spacing-xxs) var(--spacing-sm);border-radius:var(--radius-sm)}.portal-settings-panel .discard-btn{padding:var(--spacing-xs) var(--spacing-md);background:none;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--color-text);cursor:pointer}.portal-settings-panel .discard-btn:hover:not(:disabled){background:var(--color-hover)}.portal-settings-panel .save-btn{padding:var(--spacing-xs) var(--spacing-md);background:var(--color-primary);border:none;border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:#fff;font-weight:500;cursor:pointer}.portal-settings-panel .save-btn:hover:not(:disabled){background:var(--color-primary-dark)}.portal-settings-panel .save-btn:disabled,.portal-settings-panel .discard-btn:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.portal-settings-panel .setting-row{flex-direction:column;gap:var(--spacing-sm)}.portal-settings-panel .setting-control{align-self:flex-start}.portal-settings-panel .save-bar{flex-direction:column;gap:var(--spacing-md)}.portal-settings-panel .change-reason{width:100%;flex-direction:column;align-items:flex-start;gap:var(--spacing-xs)}.portal-settings-panel .save-actions{width:100%;justify-content:space-between}}.branding-settings-panel{display:flex;flex-direction:column;height:100%;background:var(--color-surface)}.branding-settings-panel .panel-header{display:flex;justify-content:space-between;align-items:flex-start;padding:var(--spacing-lg);border-bottom:1px solid var(--color-border);background:var(--color-background)}.branding-settings-panel .header-content h2{margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-xl);font-weight:600}.branding-settings-panel .header-content p{margin:0;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.branding-settings-panel .header-actions{display:flex;align-items:center;gap:var(--spacing-md)}.branding-settings-panel .status-badge{padding:var(--spacing-xxs) var(--spacing-sm);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:500}.branding-settings-panel .status-badge.status-draft{background:var(--color-warning-light);color:var(--color-warning-dark)}.branding-settings-panel .status-badge.status-active{background:var(--color-success-light);color:var(--color-success-dark)}.branding-settings-panel .status-badge.status-retired{background:var(--color-border);color:var(--color-text-secondary)}.branding-settings-panel .close-btn{background:none;border:none;font-size:24px;color:var(--color-text-secondary);cursor:pointer}.branding-settings-panel .branding-nav{display:flex;gap:var(--spacing-xs);padding:var(--spacing-md) var(--spacing-lg);background:var(--color-background);border-bottom:1px solid var(--color-border);overflow-x:auto}.branding-settings-panel .nav-btn{padding:var(--spacing-xs) var(--spacing-md);background:none;border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer;white-space:nowrap}.branding-settings-panel .nav-btn:hover{background:var(--color-hover);color:var(--color-text)}.branding-settings-panel .nav-btn.active{background:var(--color-primary);color:#fff}.branding-settings-panel .branding-content{flex:1;overflow-y:auto;padding:var(--spacing-lg)}.branding-settings-panel .branding-content h3{margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-lg);font-weight:600}.branding-settings-panel .branding-content>p{margin:0 0 var(--spacing-lg) 0;color:var(--color-text-secondary)}.branding-settings-panel .loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xxl);gap:var(--spacing-md);color:var(--color-text-secondary)}.branding-settings-panel .overview-section{display:grid;gap:var(--spacing-lg)}.branding-settings-panel .preview-card,.branding-settings-panel .quick-actions{background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-lg)}.branding-settings-panel .preview-box{border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;margin-top:var(--spacing-md)}.branding-settings-panel .preview-header{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);font-weight:600}.branding-settings-panel .preview-logo{height:32px;width:auto}.branding-settings-panel .preview-surface{padding:var(--spacing-lg)}.branding-settings-panel .preview-surface p{margin:0 0 var(--spacing-md) 0}.branding-settings-panel .preview-surface button{padding:var(--spacing-xs) var(--spacing-md);border:none;border-radius:var(--radius-sm);font-weight:500;cursor:pointer}.branding-settings-panel .action-buttons{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-md)}.branding-settings-panel .action-buttons button{padding:var(--spacing-xs) var(--spacing-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer}.branding-settings-panel .action-buttons button:hover{background:var(--color-hover)}.branding-settings-panel .activate-banner{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);background:var(--color-info-light);border:1px solid var(--color-info);border-radius:var(--radius-md)}.branding-settings-panel .activate-btn{padding:var(--spacing-xs) var(--spacing-md);background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-sm);font-weight:500;cursor:pointer}.branding-settings-panel .color-grid{display:grid;gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.branding-settings-panel .color-input-group{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-md)}.branding-settings-panel .color-input-group label{display:flex;flex-direction:column;gap:var(--spacing-xxs)}.branding-settings-panel .color-label{font-weight:500}.branding-settings-panel .color-desc{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.branding-settings-panel .color-input-wrapper{display:flex;align-items:center;gap:var(--spacing-sm)}.branding-settings-panel .color-input-wrapper input[type=color]{width:48px;height:36px;padding:0;border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer}.branding-settings-panel .color-input-wrapper input[type=text]{width:100px;padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:monospace}.branding-settings-panel .accessibility-warnings{margin-bottom:var(--spacing-lg);padding:var(--spacing-md);background:var(--color-warning-light);border:1px solid var(--color-warning);border-radius:var(--radius-md)}.branding-settings-panel .accessibility-warnings h4{margin:0 0 var(--spacing-sm) 0;font-size:var(--font-size-md)}.branding-settings-panel .warning-item{display:flex;gap:var(--spacing-sm);padding:var(--spacing-sm);background:var(--color-background);border-radius:var(--radius-sm);margin-bottom:var(--spacing-xs)}.branding-settings-panel .warning-item:last-child{margin-bottom:0}.branding-settings-panel .warning-item.error{border-left:3px solid var(--color-error)}.branding-settings-panel .warning-icon{font-weight:700;color:var(--color-warning-dark)}.branding-settings-panel .warning-content p{margin:0 0 var(--spacing-xxs) 0}.branding-settings-panel .warning-detail{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.branding-settings-panel .warning-suggestion{font-size:var(--font-size-sm);color:var(--color-success-dark)}.branding-settings-panel .contrast-preview{background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md)}.branding-settings-panel .contrast-preview h4{margin:0 0 var(--spacing-md) 0}.branding-settings-panel .contrast-samples{display:flex;gap:var(--spacing-md)}.branding-settings-panel .contrast-samples .sample{flex:1;padding:var(--spacing-md);border-radius:var(--radius-sm);text-align:center}.branding-settings-panel .contrast-samples .sample small{display:block;margin-top:var(--spacing-xs);opacity:.8}.branding-settings-panel .logo-upload-area{display:flex;gap:var(--spacing-xl);align-items:flex-start;margin-bottom:var(--spacing-xl);padding:var(--spacing-lg);background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-md)}.branding-settings-panel .current-logo{width:200px;height:100px;display:flex;align-items:center;justify-content:center;background:var(--color-surface);border:1px dashed var(--color-border);border-radius:var(--radius-md)}.branding-settings-panel .current-logo img{max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain}.branding-settings-panel .no-logo{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.branding-settings-panel .upload-controls{display:flex;flex-direction:column;gap:var(--spacing-sm)}.branding-settings-panel .upload-btn{padding:var(--spacing-sm) var(--spacing-lg);background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-sm);font-weight:500;cursor:pointer}.branding-settings-panel .upload-btn:disabled{opacity:.5;cursor:not-allowed}.branding-settings-panel .upload-hint{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.branding-settings-panel .logo-settings,.branding-settings-panel .typography-settings,.branding-settings-panel .messages-settings{display:flex;flex-direction:column;gap:var(--spacing-md)}.branding-settings-panel .setting-row{display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-md);background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-md)}.branding-settings-panel .setting-row label{font-weight:500;font-size:var(--font-size-sm)}.branding-settings-panel .setting-row input,.branding-settings-panel .setting-row select,.branding-settings-panel .setting-row textarea{padding:var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-sm)}.branding-settings-panel .setting-row textarea{resize:vertical}.branding-settings-panel .domains-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.branding-settings-panel .add-domain-btn{padding:var(--spacing-xs) var(--spacing-md);background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-sm);font-weight:500;cursor:pointer}.branding-settings-panel .empty-domains{text-align:center;padding:var(--spacing-xxl);color:var(--color-text-secondary)}.branding-settings-panel .empty-domains .hint{font-size:var(--font-size-sm);margin-top:var(--spacing-xs)}.branding-settings-panel .domains-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.branding-settings-panel .domain-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-md)}.branding-settings-panel .domain-info{display:flex;align-items:center;gap:var(--spacing-md)}.branding-settings-panel .domain-name{font-weight:500}.branding-settings-panel .domain-status{padding:var(--spacing-xxs) var(--spacing-xs);border-radius:var(--radius-sm);font-size:var(--font-size-xs)}.branding-settings-panel .domain-status.status-active{background:var(--color-success-light);color:var(--color-success-dark)}.branding-settings-panel .domain-status.status-pending_dns_setup,.branding-settings-panel .domain-status.status-pending_verification,.branding-settings-panel .domain-status.status-pending_tls{background:var(--color-warning-light);color:var(--color-warning-dark)}.branding-settings-panel .domain-status.status-verification_failed{background:var(--color-error-light);color:var(--color-error-dark)}.branding-settings-panel .domain-type{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.branding-settings-panel .domain-actions{display:flex;gap:var(--spacing-xs)}.branding-settings-panel .domain-actions button{padding:var(--spacing-xxs) var(--spacing-sm);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-sm);cursor:pointer}.branding-settings-panel .domain-actions button:hover{background:var(--color-hover)}.branding-settings-panel .domain-actions .delete-btn{color:var(--color-error)}.branding-settings-panel .modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.branding-settings-panel .modal-content{background:var(--color-background);border-radius:var(--radius-lg);padding:var(--spacing-xl);width:90%;max-width:500px}.branding-settings-panel .modal-content h3{margin:0 0 var(--spacing-lg) 0}.branding-settings-panel .modal-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.branding-settings-panel .form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.branding-settings-panel .form-group label{font-weight:500;font-size:var(--font-size-sm)}.branding-settings-panel .form-group input,.branding-settings-panel .form-group select{padding:var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm)}.branding-settings-panel .modal-actions{display:flex;justify-content:flex-end;gap:var(--spacing-sm);margin-top:var(--spacing-lg)}.branding-settings-panel .modal-actions button{padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-sm);cursor:pointer}.branding-settings-panel .modal-actions button:first-child{background:none;border:1px solid var(--color-border)}.branding-settings-panel .primary-btn{background:var(--color-primary);color:#fff;border:none;font-weight:500}.branding-settings-panel .verification-modal{max-width:600px}.branding-settings-panel .dns-record{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md);margin:var(--spacing-md) 0}.branding-settings-panel .record-row{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-xs)}.branding-settings-panel .record-row:last-child{margin-bottom:0}.branding-settings-panel .record-label{font-weight:500;min-width:60px}.branding-settings-panel .dns-record code{background:var(--color-background);padding:var(--spacing-xxs) var(--spacing-xs);border-radius:var(--radius-sm);font-size:var(--font-size-sm);word-break:break-all}.branding-settings-panel .instructions{margin:var(--spacing-md) 0}.branding-settings-panel .instructions p{margin:var(--spacing-xs) 0;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.branding-settings-panel .templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:var(--spacing-lg)}.branding-settings-panel .template-card{background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.branding-settings-panel .template-preview{height:80px;display:flex;align-items:center;justify-content:center;font-weight:600}.branding-settings-panel .template-info{padding:var(--spacing-md)}.branding-settings-panel .template-info h4{margin:0 0 var(--spacing-xs) 0}.branding-settings-panel .template-info p{margin:0 0 var(--spacing-sm) 0;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.branding-settings-panel .template-colors{display:flex;gap:var(--spacing-xs)}.branding-settings-panel .color-dot{width:20px;height:20px;border-radius:50%;border:1px solid var(--color-border)}.branding-settings-panel .apply-template-btn{width:100%;padding:var(--spacing-sm);background:var(--color-surface);border:none;border-top:1px solid var(--color-border);cursor:pointer;font-weight:500}.branding-settings-panel .apply-template-btn:hover{background:var(--color-hover)}.branding-settings-panel .save-bar{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);background:var(--color-surface);border-top:1px solid var(--color-border)}.branding-settings-panel .change-count{font-size:var(--font-size-sm);color:var(--color-warning-dark);background:var(--color-warning-light);padding:var(--spacing-xxs) var(--spacing-sm);border-radius:var(--radius-sm)}.branding-settings-panel .save-actions{display:flex;gap:var(--spacing-sm)}.branding-settings-panel .discard-btn{padding:var(--spacing-xs) var(--spacing-md);background:none;border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer}.branding-settings-panel .save-btn{padding:var(--spacing-xs) var(--spacing-md);background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-sm);font-weight:500;cursor:pointer}.branding-settings-panel .save-btn:disabled,.branding-settings-panel .discard-btn:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.branding-settings-panel .branding-nav{padding:var(--spacing-sm) var(--spacing-md)}.branding-settings-panel .logo-upload-area{flex-direction:column;align-items:center}.branding-settings-panel .color-input-group{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.branding-settings-panel .contrast-samples{flex-direction:column}.branding-settings-panel .templates-grid{grid-template-columns:1fr}.branding-settings-panel .save-bar{flex-direction:column;gap:var(--spacing-sm)}}.doctor-profiles-panel{padding:var(--spacing-lg);max-width:1200px}.doctor-profiles-panel.loading{display:flex;justify-content:center;align-items:center;min-height:400px}.panel-header{margin-bottom:var(--spacing-xl)}.panel-header h2{margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-h2);color:var(--color-neutral-900)}.panel-header p{margin:0;color:var(--color-neutral-500)}.error-banner{background:var(--color-error-light);border:1px solid #fecaca;color:var(--color-error);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-lg);margin-bottom:var(--spacing-lg);display:flex;justify-content:space-between;align-items:center}.doctors-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.empty-state{text-align:center;padding:60px 20px;background:var(--color-neutral-50);border-radius:var(--radius-xl);border:2px dashed var(--color-neutral-200)}.empty-state p{margin:0;color:var(--color-neutral-600)}.empty-state .hint{margin-top:var(--spacing-sm);font-size:var(--font-size-caption);color:var(--color-neutral-500)}.doctor-card{display:flex;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-lg);background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-xl);transition:box-shadow var(--transition-normal)}.doctor-card:hover{box-shadow:var(--shadow-md)}.doctor-card.hidden-on-portal{opacity:.7;background:var(--color-neutral-50)}.doctor-photo{flex-shrink:0;width:80px;height:80px;border-radius:var(--radius-full);overflow:hidden;background:var(--color-neutral-100)}.doctor-photo img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.photo-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--color-primary-100);color:var(--color-primary-700);font-size:var(--font-size-h2);font-weight:var(--font-weight-semibold)}.photo-placeholder.large{width:120px;height:120px;font-size:var(--font-size-h1)}.doctor-info h3{margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-h4);color:var(--color-neutral-900)}.doctor-info .specialty{margin:0 0 var(--spacing-xs) 0;color:var(--color-primary-700);font-weight:var(--font-weight-medium)}.doctor-info .bio-preview{margin:0 0 var(--spacing-sm) 0;color:var(--color-neutral-600);font-size:var(--font-size-caption);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doctor-meta{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-sm);font-size:var(--font-size-caption);color:var(--color-neutral-500)}.visibility-status .visible{color:var(--color-success-600);font-size:var(--font-size-tiny);font-weight:var(--font-weight-medium)}.visibility-status .hidden{color:var(--color-warning-600);font-size:var(--font-size-tiny);font-weight:var(--font-weight-medium)}.doctor-actions{display:flex;flex-direction:column;gap:var(--spacing-sm);align-items:flex-end}.reorder-buttons{display:flex;gap:var(--spacing-xs)}.btn-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);background:var(--color-white);cursor:pointer;font-size:var(--font-size-body);transition:all var(--transition-normal)}.btn-icon:hover:not(:disabled){background:var(--color-neutral-100)}.btn-icon:disabled{opacity:.4;cursor:not-allowed}.doctor-edit-form{background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-xl);overflow:hidden}.form-header{padding:var(--spacing-lg);border-bottom:1px solid var(--color-neutral-200);background:var(--color-neutral-50)}.form-header h3{margin:var(--spacing-sm) 0 0 0;font-size:var(--font-size-h3)}.btn-back{background:none;border:none;color:var(--color-primary-700);cursor:pointer;padding:0;font-weight:var(--font-weight-medium)}.form-content{padding:var(--spacing-lg)}.form-section{margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-xl);border-bottom:1px solid var(--color-neutral-100)}.form-section:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.form-section h4{margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.section-hint{margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-caption);color:var(--color-neutral-500)}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md)}.form-field label{display:block;margin-bottom:var(--spacing-xs);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);color:var(--color-neutral-700)}.form-field input[type=text],.form-field input[type=number],.form-field textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:var(--font-size-body);transition:border-color var(--transition-normal);box-sizing:border-box}.form-field input:focus,.form-field textarea:focus{outline:none;border-color:var(--color-primary-500)}.form-field textarea{resize:vertical;min-height:100px}.field-hint{display:block;margin-top:var(--spacing-xs);font-size:var(--font-size-tiny);color:var(--color-neutral-500)}.photo-upload-area{display:flex;align-items:center;gap:var(--spacing-lg)}.photo-preview-container{width:120px;height:120px;border-radius:var(--radius-full);overflow:hidden;border:3px solid var(--color-neutral-200)}.photo-preview{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.photo-actions,.tags-input{display:flex;flex-direction:column;gap:var(--spacing-sm)}.tags-list{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);min-height:32px}.tag{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-primary-100);color:var(--color-primary-800);border-radius:var(--radius-full);font-size:var(--font-size-caption)}.tag button{background:none;border:none;color:var(--color-primary-600);cursor:pointer;font-size:var(--font-size-body);padding:0;line-height:1}.tag button:hover{color:var(--color-error)}.add-tag{display:flex;gap:var(--spacing-sm)}.add-tag input{flex:1;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:var(--font-size-caption)}.toggle-field{margin-bottom:var(--spacing-md)}.toggle-field label{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;font-weight:var(--font-weight-medium)}.toggle-field input[type=checkbox]{width:18px;height:18px}.toggle-field .field-hint{margin-left:26px}.form-actions{display:flex;justify-content:flex-end;gap:var(--spacing-sm);padding:var(--spacing-lg);border-top:1px solid var(--color-neutral-200);background:var(--color-neutral-50)}.btn-primary{background:var(--color-primary-900);color:var(--color-white);border:none;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);font-weight:var(--font-weight-medium);cursor:pointer;transition:opacity var(--transition-normal)}.btn-secondary{background:var(--color-white);color:var(--color-neutral-700);border:1px solid var(--color-neutral-200);padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-normal)}.btn-danger-outline{background:transparent;color:var(--color-error);border:1px solid var(--color-error);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal)}.btn-danger-outline:hover{background:var(--color-error-light)}.preview-section{margin-top:var(--spacing-xl);padding-top:var(--spacing-xl);border-top:2px solid var(--color-neutral-200)}.preview-section h3{margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-h4)}.preview-section>p{margin:0 0 var(--spacing-lg) 0;color:var(--color-neutral-500)}.portal-preview{background:var(--color-neutral-100);border-radius:var(--radius-xl);padding:var(--spacing-lg)}.portal-doctor-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-md)}.portal-doctor-card{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-md);display:flex;flex-direction:column;align-items:center;text-align:center;box-shadow:var(--shadow-sm)}.portal-doctor-photo{width:80px;height:80px;border-radius:var(--radius-full);overflow:hidden;margin-bottom:var(--spacing-sm);background:var(--color-neutral-100)}.portal-doctor-photo img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.portal-photo-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--color-primary-100);color:var(--color-primary-700);font-size:var(--font-size-h3);font-weight:var(--font-weight-semibold)}.portal-doctor-info{margin-bottom:var(--spacing-sm)}.portal-doctor-info h4{margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-body);color:var(--color-neutral-900)}.portal-doctor-info .specialty{margin:0 0 var(--spacing-xs) 0;color:var(--color-primary-600);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}.portal-doctor-info .qualifications{margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-tiny);color:var(--color-neutral-500)}.portal-doctor-info .languages,.portal-doctor-info .experience{margin:0;font-size:var(--font-size-tiny);color:var(--color-neutral-500)}.portal-select-btn{width:100%;padding:var(--spacing-sm);background:var(--color-primary-500);color:var(--color-white);border:none;border-radius:var(--radius-md);cursor:pointer;font-weight:var(--font-weight-medium);transition:background var(--transition-normal)}.portal-select-btn:hover{background:var(--color-primary-600)}@media(max-width:768px){.doctor-card{flex-direction:column;text-align:center}.doctor-actions{width:100%;flex-direction:row;justify-content:center}.photo-upload-area{flex-direction:column}.form-row{grid-template-columns:1fr}}.capability-settings{display:flex;flex-direction:column;gap:var(--spacing-lg);width:100%}.capability-header{margin-bottom:var(--spacing-md)}.capability-header h2{margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-h2);font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.capability-header p{margin:0;font-size:var(--font-size-body);color:var(--color-neutral-500)}.operating-mode-section{background:var(--color-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);border:1px solid var(--color-neutral-200);padding:var(--spacing-lg)}.operating-mode-header{margin-bottom:var(--spacing-lg)}.operating-mode-header h3{margin:0 0 var(--spacing-sm) 0;font-size:var(--font-size-h4);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.operating-mode-header p{margin:0;font-size:var(--font-size-body);color:var(--color-neutral-500);line-height:1.5}.mode-options{display:flex;flex-direction:column;gap:var(--spacing-md)}.mode-option{display:flex;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-md);border:2px solid var(--color-neutral-200);border-radius:var(--radius-lg);background:var(--color-white);cursor:pointer;transition:all var(--transition-normal)}.mode-option:hover{border-color:var(--color-neutral-300);background:var(--color-neutral-50)}.mode-option.selected{border-color:var(--color-primary-900);background:var(--color-info-light);box-shadow:0 0 0 3px #4a63b31a}.mode-option input[type=radio]{margin-top:.25rem;cursor:pointer;flex-shrink:0;accent-color:var(--color-primary-900)}.mode-option-content{flex:1;min-width:0}.mode-option-title{font-weight:var(--font-weight-semibold);color:var(--color-neutral-900);margin-bottom:var(--spacing-xs)}.mode-option-description{font-size:var(--font-size-body);color:var(--color-neutral-500);margin-bottom:var(--spacing-sm);line-height:1.5}.mode-option-roles{font-size:var(--font-size-caption);color:var(--color-neutral-500)}.mode-current-badge{display:inline-block;padding:.375rem var(--spacing-sm);background:var(--color-primary-100);color:var(--color-primary-900);border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);white-space:nowrap;flex-shrink:0}.staff-overview-section{background:var(--color-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);border:1px solid var(--color-neutral-200);overflow:hidden}.staff-overview-header{padding:var(--spacing-lg);border-bottom:1px solid var(--color-neutral-200)}.staff-overview-header h3{margin:0 0 var(--spacing-sm) 0;font-size:var(--font-size-h4);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.staff-overview-header p{margin:0;font-size:var(--font-size-body);color:var(--color-neutral-500)}.staff-table-wrapper{overflow-x:auto}.staff-table{width:100%;border-collapse:collapse}.staff-table thead{background:var(--color-neutral-50)}.staff-table th{padding:.875rem var(--spacing-md);text-align:left;font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);color:var(--color-neutral-500);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--color-neutral-200)}.staff-table tbody tr{border-bottom:1px solid var(--color-neutral-200);transition:background var(--transition-fast)}.staff-table tbody tr:last-child{border-bottom:none}.staff-table td{padding:.875rem var(--spacing-md);font-size:var(--font-size-body);color:var(--color-neutral-700)}.staff-info .staff-name{font-weight:var(--font-weight-semibold);color:var(--color-neutral-900);display:block}.staff-info .staff-email{font-size:var(--font-size-caption);color:var(--color-neutral-500);display:block;margin-top:.25rem}.role-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-neutral-100);color:var(--color-neutral-700);border-radius:var(--radius-full);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);text-transform:capitalize}.capability-progress{display:flex;align-items:center;gap:var(--spacing-sm)}.progress-bar{flex:1;max-width:100px;height:6px;background:var(--color-neutral-200);border-radius:var(--radius-full);overflow:hidden}.progress-fill{height:100%;background:var(--color-primary-900);border-radius:var(--radius-full);transition:width var(--transition-normal)}.capability-count{font-size:var(--font-size-caption);color:var(--color-neutral-500);white-space:nowrap;font-weight:var(--font-weight-medium)}.modules-list{display:flex;flex-wrap:wrap;gap:.375rem}.module-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-neutral-100);color:var(--color-neutral-700);border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);text-transform:capitalize;white-space:nowrap}.modules-more{font-size:var(--font-size-caption);color:var(--color-neutral-500)}.status-badge{display:inline-flex;align-items:center;padding:.375rem var(--spacing-sm);border-radius:var(--radius-full);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold)}.status-badge.customized{background:var(--color-warning-light);color:var(--color-warning-hover)}.status-badge.default{background:var(--color-success-light);color:var(--color-success)}.btn-edit-staff{color:var(--color-primary-900);font-weight:var(--font-weight-medium);font-size:var(--font-size-body);background:none;border:none;cursor:pointer;text-decoration:none;transition:color var(--transition-fast);padding:0}.btn-edit-staff:hover{color:var(--color-primary-600);text-decoration:underline}.modal-backdrop{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-md)}.modal-container{background:var(--color-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-2xl);max-width:720px;width:100%;max-height:90vh;display:flex;flex-direction:column;animation:modalSlideIn var(--transition-normal)}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);border-bottom:1px solid var(--color-neutral-200);flex-shrink:0}.btn-close-modal{background:none;border:none;color:var(--color-neutral-400);font-size:1.75rem;cursor:pointer;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);transition:all var(--transition-fast);line-height:1}.btn-close-modal:hover{background:var(--color-neutral-100);color:var(--color-neutral-700)}.modal-toolbar{display:flex;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-neutral-200);background:var(--color-neutral-50);flex-wrap:wrap;align-items:center;flex-shrink:0}.btn-reset{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-white);color:var(--color-neutral-700);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-normal)}.btn-reset:hover:not(:disabled){background:var(--color-neutral-100);border-color:var(--color-neutral-400)}.btn-reset:disabled{opacity:.6;cursor:not-allowed}.reason-input{flex:1;min-width:200px;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);font-size:var(--font-size-body);transition:border-color var(--transition-normal),box-shadow var(--transition-normal)}.reason-input:focus{outline:none;border-color:var(--color-primary-900);box-shadow:0 0 0 3px #4a63b31a}.reason-input::-moz-placeholder{color:var(--color-neutral-400)}.reason-input::placeholder{color:var(--color-neutral-400)}.modal-content{flex:1;overflow-y:auto;padding:var(--spacing-lg)}.module-group{margin-bottom:var(--spacing-md);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);overflow:hidden}.module-group-header{background:var(--color-neutral-50);padding:var(--spacing-md);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;display:flex;justify-content:space-between;align-items:center;transition:background var(--transition-fast);border:none;width:100%;text-align:left}.module-group-header:hover{background:var(--color-neutral-100)}.module-group-title{font-weight:var(--font-weight-semibold);color:var(--color-neutral-900);text-transform:capitalize}.module-group-stats{font-size:var(--font-size-caption);color:var(--color-neutral-500)}.capability-items{padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-xs);background:var(--color-white)}.capability-item{display:flex;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-sm);background:var(--color-white);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast)}.capability-item:hover{background:var(--color-neutral-50)}.capability-item input[type=checkbox]{margin-top:.25rem;cursor:pointer;flex-shrink:0;accent-color:var(--color-primary-900)}.capability-content{flex:1;min-width:0}.capability-name{font-weight:var(--font-weight-medium);color:var(--color-neutral-900);margin-bottom:var(--spacing-xs);display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap;font-size:var(--font-size-body)}.capability-description{font-size:var(--font-size-caption);color:var(--color-neutral-500);line-height:1.4}.badge-customized{display:inline-block;padding:.25rem .5rem;background:var(--color-warning-light);color:var(--color-warning-hover);border-radius:var(--radius-sm);font-size:var(--font-size-tiny);font-weight:var(--font-weight-semibold);white-space:nowrap}.badge-high-risk{display:inline-block;padding:.25rem .5rem;background:#ffedd5;color:#9a3412;border-radius:var(--radius-sm);font-size:var(--font-size-tiny);font-weight:var(--font-weight-semibold);white-space:nowrap}.badge-critical{display:inline-block;padding:.25rem .5rem;background:var(--color-error-light);color:var(--color-error);border-radius:var(--radius-sm);font-size:var(--font-size-tiny);font-weight:var(--font-weight-semibold);white-space:nowrap}.modal-footer{padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--color-neutral-200);display:flex;justify-content:flex-end;gap:.75rem;flex-shrink:0}.btn-primary{padding:var(--spacing-sm) 1.5rem;background:var(--color-primary-900);color:var(--color-white);border:none;border-radius:var(--radius-md);font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--transition-normal)}.confirm-modal{background:var(--color-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-2xl);max-width:480px;width:100%;padding:var(--spacing-lg);animation:modalSlideIn var(--transition-normal)}.confirm-modal h4{margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-h4);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.confirm-modal p{margin:0 0 var(--spacing-lg) 0;font-size:var(--font-size-body);color:var(--color-neutral-600);line-height:1.5}.confirm-modal .checkbox-label{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-body);color:var(--color-neutral-700);margin-bottom:var(--spacing-lg);cursor:pointer}.confirm-modal .checkbox-label input[type=checkbox]{accent-color:var(--color-primary-900)}.btn-cancel{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-white);color:var(--color-neutral-700);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-normal)}.btn-cancel:hover{background:var(--color-neutral-100);border-color:var(--color-neutral-400)}.btn-confirm{padding:var(--spacing-sm) 1.5rem;background:var(--color-primary-900);color:var(--color-white);border:none;border-radius:var(--radius-md);font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--transition-normal)}.btn-confirm:hover:not(:disabled){background:var(--color-primary-600)}.btn-confirm:disabled{opacity:.6;cursor:not-allowed}.loading-state,.empty-state{padding:var(--spacing-2xl);text-align:center;color:var(--color-neutral-500);font-size:var(--font-size-body)}@media(max-width:768px){.modal-container{max-width:100%;max-height:100vh;border-radius:0}.modal-toolbar{flex-direction:column;align-items:stretch}.reason-input{width:100%;min-width:unset}.staff-table{font-size:var(--font-size-caption)}.staff-table th,.staff-table td{padding:var(--spacing-sm) var(--spacing-xs)}.modules-list{max-height:80px;overflow:hidden}.confirm-modal{max-width:90%}.confirm-actions{flex-direction:column}.confirm-actions button{width:100%}}@media(max-width:480px){.modal-toolbar{gap:var(--spacing-sm)}.staff-table-wrapper{display:block;overflow-x:auto}}.superadmin-view{padding:20px}.view-header{display:flex;align-items:center;gap:16px;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #e5e7eb}.view-header h3{margin:0;flex-grow:1}.btn-back{background:none;border:1px solid #d1d5db;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;color:#374151}.btn-back:hover{background:#f3f4f6}.btn-primary{background:#2563eb;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500}.btn-primary:hover{background:#1d4ed8}.compliance-summary-cards,.billing-summary-cards,.revenue-summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:24px}.summary-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px;text-align:center}.summary-value{font-size:28px;font-weight:700;color:#1a1a1a;margin-bottom:4px}.summary-label{font-size:13px;color:#6b7280}.compliance-table,.billing-table,.subscription-table,.health-table,.staff-table{overflow-x:auto;background:#fff;border:1px solid #e5e7eb;border-radius:8px}.compliance-table table,.billing-table table,.subscription-table table,.health-table table,.staff-table table{width:100%;border-collapse:collapse}.compliance-table th,.billing-table th,.subscription-table th,.health-table th,.staff-table th,.compliance-table td,.billing-table td,.subscription-table td,.health-table td,.staff-table td{padding:12px 16px;text-align:left;border-bottom:1px solid #e5e7eb}.compliance-table th,.billing-table th,.subscription-table th,.health-table th,.staff-table th{background:#f9fafb;font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase}.compliance-table tr:last-child td,.billing-table tr:last-child td,.subscription-table tr:last-child td,.health-table tr:last-child td,.staff-table tr:last-child td{border-bottom:none}.compliance-table tr:hover,.billing-table tr:hover,.subscription-table tr:hover,.health-table tr:hover,.staff-table tr:hover{background:#f9fafb}.status-badge{display:inline-block;padding:3px 8px;border-radius:4px;font-size:11px;font-weight:600}.tier-badge{display:inline-block;padding:3px 8px;border-radius:4px;font-size:11px;font-weight:600;color:#fff;text-transform:uppercase}.progress-bar{position:relative;height:20px;background:#e5e7eb;border-radius:10px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#2563eb);border-radius:10px}.progress-bar span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:11px;font-weight:600;color:#1a1a1a}.violations-filters,.billing-filters,.subscription-filters,.staff-filters{display:flex;gap:16px;margin-bottom:20px;flex-wrap:wrap;align-items:center}.filter-group{display:flex;align-items:center;gap:8px}.filter-group label{font-size:14px;color:#374151}.filter-group select{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;background:#fff}.checkbox-label{display:flex;align-items:center;gap:8px;font-size:14px;cursor:pointer}.violations-summary{display:flex;gap:16px;margin-bottom:20px}.violation-count{padding:4px 12px;border-radius:20px;font-size:13px;font-weight:500}.violation-count.low{background:#dcfce7;color:#166534}.violations-list{display:flex;flex-direction:column;gap:12px}.violation-item{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:16px}.violation-item.resolved{opacity:.6}.violation-header{display:flex;align-items:center;gap:12px;margin-bottom:8px}.severity-badge{padding:3px 8px;border-radius:4px;font-size:10px;font-weight:700;color:#fff;text-transform:uppercase}.violation-type{font-size:12px;color:#6b7280;text-transform:capitalize}.violation-clinic{font-size:13px;font-weight:500;color:#374151}.resolved-badge{background:#dcfce7;color:#166534;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:500}.violation-description{font-size:14px;color:#1a1a1a;margin-bottom:8px}.violation-meta{font-size:12px;color:#6b7280;margin-bottom:12px}.violation-actions{display:flex;gap:8px}.btn-resolve,.btn-investigate{padding:6px 12px;border-radius:4px;font-size:12px;cursor:pointer}.btn-resolve{background:#dcfce7;border:1px solid #86efac;color:#166534}.btn-investigate{background:#fff7ed;border:1px solid #fed7aa;color:#9a3412}.health-summary{display:flex;gap:16px;margin-bottom:24px}.health-card{padding:20px 30px;border-radius:8px;text-align:center}.health-card.healthy{background:#dcfce7}.health-card.degraded{background:#fef3c7}.health-card.down{background:#fee2e2}.health-count{font-size:32px;font-weight:700}.health-label{font-size:13px;color:#374151}.status-indicator{padding:4px 10px;border-radius:4px;font-size:12px;font-weight:500;color:#fff;text-transform:capitalize}.storage-bar{position:relative;height:20px;background:#e5e7eb;border-radius:4px;overflow:hidden;min-width:120px}.storage-fill{height:100%;background:#3b82f6}.storage-bar span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:10px;font-weight:600;color:#1a1a1a;white-space:nowrap}.unhealthy-row{background:#fef2f2!important}.staff-summary{display:flex;gap:24px;margin-bottom:16px;font-size:14px;color:#374151}.mfa-badge{padding:3px 8px;border-radius:4px;font-size:11px;font-weight:500}.inactive-row{opacity:.6}.amount{font-family:SF Mono,Monaco,monospace;font-size:13px}.amount.pending{color:#d97706}.aging-cell{font-family:SF Mono,Monaco,monospace;font-size:12px;text-align:right}.aging-cell.warning{color:#d97706}.aging-cell.danger{color:#dc2626}.aging-header th{font-size:10px!important;padding:4px 16px!important}.totals-row{background:#f3f4f6!important;font-weight:600}.high-aging{background:#fef2f2!important}.revenue-by-tier{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px;margin-bottom:24px}.revenue-by-tier h4{margin:0 0 16px;font-size:14px;color:#374151}.tier-breakdown{display:flex;gap:24px;flex-wrap:wrap}.tier-item{display:flex;flex-direction:column;gap:4px}.tier-header{display:flex;align-items:center;gap:8px}.tier-count{font-size:12px;color:#6b7280}.tier-mrr{font-size:16px;font-weight:600;color:#1a1a1a}.past-due-row{background:#fef3c7!important}.trial-ends{display:block;font-size:11px;color:#6b7280;margin-top:2px}.payment-amount{font-size:11px;color:#6b7280;margin-left:4px}.announcements-list{display:flex;flex-direction:column;gap:16px}.announcement-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px}.announcement-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.announcement-header h4{margin:0;font-size:16px}.priority-badge{padding:3px 8px;border-radius:4px;font-size:10px;font-weight:700;color:#fff;text-transform:uppercase}.announcement-body{margin-bottom:16px}.announcement-body p{margin:0;font-size:14px;color:#374151;line-height:1.5}.announcement-meta{display:flex;gap:16px;font-size:12px;color:#6b7280;flex-wrap:wrap}.platform-branding{max-width:800px}.branding-section{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px;margin-bottom:20px}.branding-section h4{margin:0 0 16px;font-size:15px;font-weight:600;color:#1a1a1a}.branding-fields{display:flex;flex-direction:column;gap:16px}.branding-field{display:flex;flex-direction:column;gap:4px}.branding-field label{font-size:13px;font-weight:500;color:#374151}.branding-field input,.branding-field textarea{padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px}.branding-field input:focus,.branding-field textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.field-hint{font-size:12px;color:#6b7280}.color-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.color-field{display:flex;flex-direction:column;gap:4px}.color-input-group{display:flex;gap:8px}.color-input-group input[type=color]{width:40px;height:38px;padding:2px;border:1px solid #d1d5db;border-radius:6px;cursor:pointer}.color-input-group input[type=text]{flex:1;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-family:SF Mono,Monaco,monospace;font-size:13px}.color-preview{margin-top:16px;display:flex;align-items:center;gap:12px}.preview-label{font-size:13px;color:#6b7280}.preview-bar{flex:1;padding:12px 20px;border-radius:6px;font-weight:600}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:12px;padding:24px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto}.modal-content h4{margin:0 0 20px;font-size:18px}.form-group label{display:block;font-size:13px;font-weight:500;color:#374151;margin-bottom:6px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.btn-cancel{background:#fff;border:1px solid #d1d5db;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;color:#374151}.empty-state{text-align:center;padding:40px 20px;color:#6b7280}@media(max-width:768px){.compliance-summary-cards,.billing-summary-cards,.revenue-summary-cards{grid-template-columns:repeat(2,1fr)}.color-fields{grid-template-columns:1fr}.violations-filters,.billing-filters,.subscription-filters,.staff-filters,.filter-group{flex-direction:column;align-items:stretch}.health-summary,.tier-breakdown{flex-direction:column}}.settings-module{display:flex;flex-direction:column;gap:var(--spacing-lg);width:100%;box-sizing:border-box}.settings-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-sm)}.settings-header-content h3{margin:0 0 var(--spacing-xs);font-size:var(--font-size-h3);color:var(--color-neutral-900)}.settings-header-content h3 .clinic-name-suffix{font-weight:var(--font-weight-normal);color:var(--color-primary-900)}.settings-subtitle{margin:0;font-size:var(--font-size-body);color:var(--color-neutral-500)}.btn-audit-log{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-neutral-100);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);color:var(--color-neutral-700);font-size:.8125rem;cursor:pointer;transition:all var(--transition-normal);white-space:nowrap}.btn-audit-log:hover{background:var(--color-neutral-200);color:var(--color-neutral-900)}.settings-header-actions{display:flex;gap:var(--spacing-sm);flex-wrap:wrap;align-items:center}.btn-secondary{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-primary-900);border:none;border-radius:var(--radius-md);color:var(--color-white);font-size:.8125rem;font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-normal);white-space:nowrap}.btn-secondary:hover{background:var(--color-primary-600)}.btn-back{padding:var(--spacing-sm) .75rem;background:transparent;border:none;color:var(--color-primary-900);font-size:var(--font-size-body);cursor:pointer;transition:color var(--transition-normal)}.btn-back:hover{color:var(--color-primary-600)}.settings-categories{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.75rem}.settings-category{display:flex;align-items:center;gap:var(--spacing-md);background:var(--color-white);border-radius:10px;padding:var(--spacing-md) 1.25rem;box-shadow:var(--shadow-sm);cursor:pointer;transition:all var(--transition-normal);border:1px solid transparent}.settings-category:hover:not(.disabled){border-color:var(--color-primary-900);box-shadow:0 2px 8px #4a63b326;transform:translateY(-1px)}.settings-category.disabled{opacity:.6;cursor:not-allowed}.category-icon{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:var(--font-weight-bold);font-size:var(--font-size-body);color:var(--color-white);flex-shrink:0}.category-icon svg{width:22px;height:22px}.category-icon.queue{background:linear-gradient(135deg,var(--color-primary-900) 0%,var(--color-primary-600) 100%)}.category-icon.bookings{background:linear-gradient(135deg,var(--color-primary-900) 0%,var(--color-primary-900) 100%)}.category-icon.pharmacy{background:linear-gradient(135deg,var(--color-warning) 0%,var(--color-warning-hover) 100%)}.category-icon.billing{background:linear-gradient(135deg,var(--color-success) 0%,var(--color-success-hover) 100%)}.category-icon.notifications{background:linear-gradient(135deg,#ed8936,#c05621)}.category-icon.security{background:linear-gradient(135deg,var(--color-error) 0%,var(--color-error-hover) 100%)}.category-icon.visit{background:linear-gradient(135deg,#0bc5ea,#00a3c4)}.category-icon.compliance{background:linear-gradient(135deg,var(--color-neutral-500) 0%,var(--color-neutral-700) 100%)}.category-icon.reporting{background:linear-gradient(135deg,#667eea,#5a67d8)}.category-icon.portal{background:linear-gradient(135deg,#48bb78 0%,var(--color-success) 100%)}.category-icon.ai{background:linear-gradient(135deg,var(--color-primary-300) 0%,var(--color-primary-900) 100%)}.category-icon.inventory{background:linear-gradient(135deg,#f6ad55,#dd6b20)}.category-icon.branding{background:linear-gradient(135deg,#f687b3,#d53f8c)}.category-icon.templates{background:linear-gradient(135deg,#4fd1c5,#319795)}.category-icon.data-import-export{background:linear-gradient(135deg,#38b2ac,#2c7a7b)}.category-title{margin:0 0 var(--spacing-xs);font-size:.9375rem;font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.category-description{margin:0 0 var(--spacing-xs);font-size:.8125rem;color:var(--color-neutral-500)}.category-count{font-size:var(--font-size-caption);color:var(--color-neutral-500)}.category-arrow{font-size:var(--font-size-h3);color:var(--color-neutral-500);flex-shrink:0}.settings-notice{background:var(--color-warning-light);border:1px solid var(--color-warning-light);border-radius:var(--radius-lg);padding:var(--spacing-md);text-align:center}.settings-notice p{margin:0;font-size:var(--font-size-body);color:var(--color-warning-hover)}.category-detail-view{display:flex;flex-direction:column;gap:var(--spacing-md)}.category-detail-header{display:flex;align-items:center;gap:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-neutral-200)}.btn-back{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-neutral-100);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);color:var(--color-neutral-700);font-size:var(--font-size-body);cursor:pointer;transition:all var(--transition-normal)}.category-detail-title{display:flex;align-items:center;gap:var(--spacing-md);flex:1}.category-detail-title h3{margin:0;font-size:var(--font-size-h4);color:var(--color-neutral-900)}.category-detail-description{margin:var(--spacing-xs) 0 0;font-size:.8125rem;color:var(--color-neutral-500)}.settings-fields{display:flex;flex-direction:column;gap:var(--spacing-sm)}.setting-field{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) 1.25rem;background:var(--color-white);border-radius:var(--radius-lg);border:1px solid var(--color-neutral-200);gap:var(--spacing-lg);transition:all var(--transition-normal)}.setting-field:hover{border-color:var(--color-neutral-300)}.setting-field.modified{border-color:var(--color-primary-900);background:var(--color-info-light)}.setting-field.disabled{opacity:.6;background:var(--color-neutral-50)}.setting-field.gated{position:relative}.setting-info{flex:1;min-width:0}.setting-label{display:flex;align-items:center;gap:var(--spacing-sm);font-size:.9375rem;font-weight:var(--font-weight-medium);color:var(--color-neutral-900);margin-bottom:var(--spacing-xs)}.gated-badge{display:inline-block;padding:.125rem var(--spacing-sm);background:linear-gradient(135deg,var(--color-primary-300) 0%,var(--color-primary-900) 100%);color:var(--color-white);font-size:var(--font-size-tiny);font-weight:var(--font-weight-semibold);border-radius:10px;text-transform:uppercase;letter-spacing:.5px}.setting-description{margin:0;font-size:.8125rem;color:var(--color-neutral-500)}.setting-warning{margin:var(--spacing-xs) 0 0;font-size:var(--font-size-caption);color:var(--color-error);font-style:italic}.setting-control{flex-shrink:0}.toggle-slider:before{position:absolute;content:"";height:20px;width:20px;left:3px;bottom:3px;background-color:var(--color-white);transition:var(--transition-slow);border-radius:50%;box-shadow:0 2px 4px #00000026}input:checked+.toggle-slider{background:linear-gradient(135deg,var(--color-success) 0%,var(--color-success-hover) 100%)}input:disabled+.toggle-slider{opacity:.5;cursor:not-allowed}input:checked+.toggle-slider:before{transform:translate(22px)}.number-input-group{display:flex;align-items:center;gap:var(--spacing-sm)}.setting-number-input{width:80px;padding:var(--spacing-sm) .75rem;border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:var(--font-size-body);text-align:center;transition:border-color var(--transition-normal)}.setting-number-input:focus{outline:none;border-color:var(--color-primary-900);box-shadow:0 0 0 3px #4a63b31a}.setting-number-input:disabled{background:var(--color-neutral-50);cursor:not-allowed}.input-unit{font-size:.8125rem;color:var(--color-neutral-500)}.setting-text-input{width:200px;padding:var(--spacing-sm) .75rem;border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:var(--font-size-body);transition:border-color var(--transition-normal)}.setting-text-input:focus{outline:none;border-color:var(--color-primary-900);box-shadow:0 0 0 3px #4a63b31a}.setting-text-input:disabled{background:var(--color-neutral-50);cursor:not-allowed}.setting-select{min-width:160px;padding:var(--spacing-sm) .75rem;border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:var(--font-size-body);background:var(--color-white);cursor:pointer;transition:border-color var(--transition-normal)}.setting-select:focus{outline:none;border-color:var(--color-primary-900);box-shadow:0 0 0 3px #4a63b31a}.setting-select:disabled{background:var(--color-neutral-50);cursor:not-allowed}.pending-changes-bar{position:sticky;bottom:0;display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) 1.25rem;background:linear-gradient(135deg,var(--color-info-light) 0%,#e6fffa 100%);border:1px solid var(--color-primary-300);border-radius:10px;margin-top:var(--spacing-md);gap:var(--spacing-md)}.changes-count{font-size:var(--font-size-body);font-weight:var(--font-weight-medium);color:var(--color-primary-900);white-space:nowrap}.changes-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.reason-input{flex:1;min-width:200px;padding:var(--spacing-sm) .75rem;border:1px solid var(--color-primary-300);border-radius:var(--radius-md);font-size:var(--font-size-body)}.reason-input:focus{outline:none;border-color:var(--color-primary-900)}.btn-cancel{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);color:var(--color-neutral-700);font-size:var(--font-size-body);cursor:pointer;transition:all var(--transition-normal)}.btn-cancel:hover{background:var(--color-neutral-50)}.btn-save{padding:var(--spacing-sm) 1.25rem;background:linear-gradient(135deg,var(--color-success) 0%,var(--color-success-hover) 100%);border:none;border-radius:var(--radius-md);color:var(--color-white);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-normal)}.btn-save:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.btn-save:disabled{opacity:.6;cursor:not-allowed}.confirm-modal{background:var(--color-white);border-radius:var(--radius-xl);padding:var(--spacing-lg);max-width:500px;width:100%;max-height:80vh;overflow-y:auto;box-shadow:var(--shadow-2xl)}.confirm-modal h4{margin:0 0 var(--spacing-sm);font-size:var(--font-size-h4);color:var(--color-neutral-900)}.confirm-modal>p{margin:0 0 var(--spacing-md);font-size:var(--font-size-body);color:var(--color-neutral-500)}.changes-summary{background:var(--color-neutral-50);border-radius:var(--radius-lg);padding:var(--spacing-md);margin-bottom:var(--spacing-md);max-height:200px;overflow-y:auto}.change-item{display:flex;gap:var(--spacing-sm);padding:.375rem 0;border-bottom:1px solid var(--color-neutral-200);font-size:.8125rem}.change-item:last-child{border-bottom:none}.change-key{color:var(--color-neutral-700);font-weight:var(--font-weight-medium);word-break:break-word}.change-value{color:var(--color-success);font-weight:var(--font-weight-medium)}.change-reason-preview{margin:0 0 var(--spacing-md);padding:.75rem;background:var(--color-warning-light);border-radius:var(--radius-md);font-size:var(--font-size-body);color:#744210}.btn-confirm{padding:var(--spacing-sm) 1.25rem;background:linear-gradient(135deg,var(--color-primary-900) 0%,var(--color-primary-600) 100%);border:none;border-radius:var(--radius-md);color:var(--color-white);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-normal)}.btn-confirm:hover{opacity:.9}.audit-log-view{display:flex;flex-direction:column;gap:var(--spacing-md)}.audit-log-header{display:flex;align-items:center;gap:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-neutral-200)}.audit-log-header h3{margin:0;font-size:var(--font-size-h4);color:var(--color-neutral-900)}.audit-log-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.audit-log-entry{background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:var(--spacing-md)}.audit-entry-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.audit-setting-name{font-weight:var(--font-weight-semibold);color:var(--color-neutral-900);font-size:var(--font-size-body);word-break:break-word}.audit-date{font-size:var(--font-size-caption);color:var(--color-neutral-500);white-space:nowrap}.audit-entry-values{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm);padding:var(--spacing-sm);background:var(--color-neutral-50);border-radius:var(--radius-md);font-size:.8125rem;flex-wrap:wrap}.audit-old-value{color:var(--color-error);text-decoration:line-through;word-break:break-word}.audit-arrow{color:var(--color-neutral-500)}.audit-new-value{color:var(--color-success);font-weight:var(--font-weight-medium);word-break:break-word}.audit-entry-reason{font-size:.8125rem;color:#744210;background:var(--color-warning-light);padding:var(--spacing-sm);border-radius:var(--radius-sm);margin-bottom:var(--spacing-sm)}.audit-entry-user{font-size:var(--font-size-caption);color:var(--color-neutral-500)}.loading{text-align:center;padding:var(--spacing-2xl);color:var(--color-neutral-500);font-size:var(--font-size-body)}@media(max-width:768px){.settings-header{flex-direction:column;gap:.75rem}.btn-audit-log{align-self:flex-start}.settings-categories{grid-template-columns:1fr}.settings-category{padding:var(--font-size-body) var(--spacing-md)}.category-icon{width:38px;height:38px;font-size:var(--font-size-caption)}.setting-field{flex-direction:column;align-items:flex-start;gap:.75rem}.setting-control,.setting-text-input,.setting-select,.number-input-group{width:100%}.setting-number-input{flex:1}.pending-changes-bar{flex-direction:column;align-items:stretch;gap:.75rem}.changes-actions{flex-direction:column}.reason-input{width:100%;min-width:unset}.category-detail-header{flex-direction:column;align-items:flex-start}.category-detail-title{flex-direction:column;align-items:flex-start;gap:.75rem}}@media(max-width:480px){.audit-entry-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-xs)}.confirm-actions{flex-direction:column}.confirm-actions button{width:100%}}.tier-badge{display:inline-block;padding:.125rem var(--spacing-sm);border-radius:10px;font-size:var(--font-size-tiny);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900);text-transform:uppercase}.tier-badge.small{font-size:.625rem;padding:.0625rem .375rem;margin-left:var(--spacing-xs)}.loading-indicator{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-info-light);border-radius:var(--radius-md);color:var(--color-primary-900);font-size:var(--font-size-caption);font-style:italic;text-align:center}.settings-category.superadmin-tool{border:2px solid transparent}.settings-category.superadmin-tool:hover{border-color:var(--color-primary-600)}.category-icon.superadmin-clinics{background:linear-gradient(135deg,#667eea,#764ba2)}.category-icon.superadmin-compare{background:linear-gradient(135deg,#4299e1,#3182ce)}.category-icon.superadmin-audit{background:linear-gradient(135deg,#48bb78,#38a169)}.category-icon.superadmin-templates{background:linear-gradient(135deg,#ed8936,#dd6b20)}.category-icon.superadmin-locks{background:linear-gradient(135deg,#e53e3e,#c53030)}.inline-clinic-selector{width:100%;padding:var(--spacing-sm) var(--spacing-md);margin-top:var(--spacing-sm);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);font-size:var(--font-size-body);background:var(--color-white);cursor:pointer;transition:all var(--transition-normal)}.inline-clinic-selector:hover{border-color:var(--color-primary-900)}.inline-clinic-selector:focus{outline:none;border-color:var(--color-primary-900);box-shadow:0 0 0 3px #4a63b326}.superadmin-clinic-bar{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);margin-bottom:var(--spacing-md);flex-wrap:wrap;gap:var(--spacing-sm)}.btn-back-to-tools{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-white);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);color:var(--color-neutral-700);font-size:var(--font-size-body);cursor:pointer;transition:all var(--transition-normal)}.btn-back-to-tools:hover{background:var(--color-neutral-100);color:var(--color-primary-900);border-color:var(--color-primary-300)}.selected-clinic-badge{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);color:var(--color-neutral-900)}.selected-clinic-badge svg{color:var(--color-primary-900)}.selected-clinic-badge .tier-badge{margin-left:var(--spacing-xs)}.btn-primary{padding:var(--spacing-sm) var(--spacing-md);background:linear-gradient(135deg,var(--color-primary-900) 0%,var(--color-primary-600) 100%);border:none;border-radius:var(--radius-md);color:var(--color-white);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-normal)}.btn-primary:hover:not(:disabled){opacity:.9}.superadmin-notice{background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:var(--spacing-md) var(--spacing-lg);text-align:center}.superadmin-notice p{margin:0;font-size:var(--font-size-body);color:var(--color-neutral-600)}.comparison-view{display:flex;flex-direction:column;gap:var(--spacing-md)}.comparison-header{display:flex;flex-direction:column;gap:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-neutral-200)}.comparison-clinics{display:flex;gap:var(--spacing-md);flex-wrap:wrap}.comparison-clinic-header{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-md)}.comparison-clinic-header .clinic-name{font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.comparison-filters{display:flex;align-items:center;gap:var(--spacing-md);flex-wrap:wrap}.comparison-filters label{font-size:var(--font-size-body);color:var(--color-neutral-700)}.comparison-filters select{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:var(--font-size-body);background:var(--color-white)}.show-diff-only{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-body);color:var(--color-neutral-700);cursor:pointer}.comparison-table{overflow-x:auto;border-radius:var(--radius-lg);border:1px solid var(--color-neutral-200)}.comparison-table table{width:100%;border-collapse:collapse;font-size:var(--font-size-body)}.comparison-table th,.comparison-table td{padding:var(--spacing-sm) var(--spacing-md);text-align:left;border-bottom:1px solid var(--color-neutral-100)}.comparison-table th{background:var(--color-neutral-50);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700);white-space:nowrap}.comparison-table tr.different{background:#fef3c7}.comparison-table tr.same:hover,.comparison-table tr.different:hover{background:var(--color-neutral-50)}.comparison-table .setting-key{min-width:200px}.comparison-table .key-label{display:block;font-weight:var(--font-weight-medium);color:var(--color-neutral-900)}.comparison-table .key-category{display:block;font-size:var(--font-size-caption);color:var(--color-neutral-500)}.comparison-table .setting-value{min-width:100px;word-break:break-word}.comparison-table .status{font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);text-transform:uppercase}.comparison-table .status.different{color:var(--color-warning-hover)}.comparison-table .status.same{color:var(--color-success)}.comparison-summary{padding:var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-md)}.comparison-summary p{margin:0;font-size:var(--font-size-body);color:var(--color-neutral-700)}.comparison-setup{text-align:center;padding:var(--spacing-xl)}.comparison-setup h4{margin:0 0 var(--spacing-sm);font-size:var(--font-size-h4);color:var(--color-neutral-900)}.comparison-setup>p{margin:0 0 var(--spacing-lg);font-size:var(--font-size-body);color:var(--color-neutral-500)}.clinic-selector-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);text-align:left}.clinic-checkbox{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal)}.clinic-checkbox:hover{border-color:var(--color-primary-900)}.clinic-checkbox input{width:18px;height:18px;cursor:pointer}.clinic-checkbox .clinic-label{font-size:var(--font-size-body);color:var(--color-neutral-900)}.audit-dashboard{display:flex;flex-direction:column;gap:var(--spacing-md)}.audit-filters{display:flex;gap:var(--spacing-md);flex-wrap:wrap;padding:var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-lg);align-items:center}.filter-group label{font-size:var(--font-size-body);color:var(--color-neutral-700);white-space:nowrap}.filter-group select{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:var(--font-size-body);background:var(--color-white)}.btn-refresh{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);color:var(--color-neutral-700);font-size:var(--font-size-body);cursor:pointer;margin-left:auto}.btn-refresh:hover{background:var(--color-neutral-100)}.audit-log-list.cross-clinic .audit-log-entry{border-left:3px solid var(--color-primary-900)}.audit-log-list.cross-clinic .clinic-name{padding:.125rem var(--spacing-sm);background:var(--color-primary-100);color:var(--color-primary-900);border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);margin-right:var(--spacing-sm)}.templates-library{display:flex;flex-direction:column;gap:var(--spacing-md)}.templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-md)}.template-card{background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-sm);transition:all var(--transition-normal)}.template-card:hover{border-color:var(--color-primary-300);box-shadow:var(--shadow-md)}.template-header{display:flex;align-items:center;justify-content:space-between}.template-header h4{margin:0;font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.global-badge{padding:.125rem var(--spacing-sm);background:linear-gradient(135deg,#667eea,#764ba2);color:var(--color-white);font-size:var(--font-size-tiny);font-weight:var(--font-weight-semibold);border-radius:10px;text-transform:uppercase}.template-description{margin:0;font-size:.8125rem;color:var(--color-neutral-500);line-height:1.4}.template-meta{display:flex;gap:var(--spacing-md);font-size:var(--font-size-caption);color:var(--color-neutral-500)}.template-footer{padding-top:var(--spacing-sm);border-top:1px solid var(--color-neutral-100)}.created-by{font-size:var(--font-size-tiny);color:var(--color-neutral-400)}.template-actions{display:flex;gap:var(--spacing-sm);padding-top:var(--spacing-sm)}.btn-apply{flex:1;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-success);border:none;border-radius:var(--radius-md);color:var(--color-white);font-size:.8125rem;font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-normal)}.btn-apply:hover:not(:disabled){background:var(--color-success-hover)}.btn-apply:disabled{opacity:.5;cursor:not-allowed}.btn-delete{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-white);border:1px solid var(--color-error);border-radius:var(--radius-md);color:var(--color-error);font-size:.8125rem;cursor:pointer;transition:all var(--transition-normal)}.btn-delete:hover{background:var(--color-error);color:var(--color-white)}.empty-state p{margin:0 0 var(--spacing-sm);font-size:var(--font-size-body)}.locks-management{display:flex;flex-direction:column;gap:var(--spacing-md)}.locks-description{margin:0;padding:var(--spacing-md);background:var(--color-warning-light);border-radius:var(--radius-md);color:#744210;font-size:var(--font-size-body)}.locks-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.lock-item{background:var(--color-white);border:1px solid var(--color-neutral-200);border-left:3px solid var(--color-error);border-radius:var(--radius-lg);padding:var(--spacing-md)}.lock-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.lock-setting{font-weight:var(--font-weight-semibold);color:var(--color-neutral-900);word-break:break-word}.lock-scope{padding:.125rem var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}.lock-scope.global{background:var(--color-error-light);color:var(--color-error)}.lock-scope.clinic{background:var(--color-info-light);color:var(--color-primary-900)}.lock-value,.lock-reason{font-size:var(--font-size-body);color:var(--color-neutral-700);margin-bottom:var(--spacing-xs)}.lock-meta{font-size:var(--font-size-caption);color:var(--color-neutral-500);margin-bottom:var(--spacing-sm)}.lock-expiry{color:var(--color-warning-hover)}.lock-actions{display:flex;gap:var(--spacing-sm)}.btn-unlock{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-white);border:1px solid var(--color-warning);border-radius:var(--radius-md);color:var(--color-warning-hover);font-size:.8125rem;cursor:pointer;transition:all var(--transition-normal)}.btn-unlock:hover{background:var(--color-warning);color:var(--color-white)}.modal-content{background:var(--color-white);border-radius:var(--radius-xl);padding:var(--spacing-lg);max-width:500px;width:100%;max-height:80vh;overflow-y:auto;box-shadow:var(--shadow-2xl)}.modal-content h4{margin:0 0 var(--spacing-md);font-size:var(--font-size-h4);color:var(--color-neutral-900)}.form-group>label{display:block;margin-bottom:var(--spacing-xs);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);color:var(--color-neutral-700)}.form-group input[type=text],.form-group textarea,.form-group select{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:var(--font-size-body);font-family:inherit}.form-group input[type=text]:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--color-primary-900);box-shadow:0 0 0 3px #4a63b31a}.form-group textarea{min-height:80px;resize:vertical}.form-group input[type=checkbox]{margin-right:var(--spacing-sm)}.category-checkboxes{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-xs);max-height:200px;overflow-y:auto;padding:var(--spacing-sm);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md)}.category-checkbox{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-body);color:var(--color-neutral-700);cursor:pointer}.modal-actions{display:flex;justify-content:flex-end;gap:var(--spacing-sm);margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-neutral-100)}@media(max-width:768px){.superadmin-clinic-bar{flex-direction:column;align-items:stretch}.btn-back-to-tools{width:100%}.selected-clinic-badge{justify-content:center}.comparison-table{font-size:.8125rem}.comparison-table th,.comparison-table td{padding:var(--spacing-xs) var(--spacing-sm)}.templates-grid,.category-checkboxes{grid-template-columns:1fr}}.category-icon.superadmin-compliance{background:linear-gradient(135deg,#10b981,#059669)}.category-icon.superadmin-violations{background:linear-gradient(135deg,#f59e0b,#d97706)}.category-icon.superadmin-performance{background:linear-gradient(135deg,#6366f1,#4f46e5)}.category-icon.superadmin-staff{background:linear-gradient(135deg,var(--color-primary-600) 0%,var(--color-primary-900) 100%)}.category-icon.superadmin-access{background:linear-gradient(135deg,#06b6d4,#0891b2)}.category-icon.superadmin-health{background:linear-gradient(135deg,#22c55e,#16a34a)}.category-icon.superadmin-broadcast{background:linear-gradient(135deg,#f43f5e,#e11d48)}.compliance-overview{display:flex;flex-direction:column;gap:var(--spacing-lg)}.compliance-summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md)}.summary-card{background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:var(--spacing-lg);text-align:center}.summary-value{font-size:2.5rem;font-weight:var(--font-weight-bold);color:var(--color-primary-900);margin-bottom:var(--spacing-xs)}.summary-label{font-size:var(--font-size-body);color:var(--color-neutral-500)}.compliance-table{overflow-x:auto;border-radius:var(--radius-lg);border:1px solid var(--color-neutral-200)}.compliance-table table{width:100%;border-collapse:collapse;font-size:var(--font-size-body)}.compliance-table th,.compliance-table td{padding:var(--spacing-sm) var(--spacing-md);text-align:left;border-bottom:1px solid var(--color-neutral-100)}.compliance-table th{background:var(--color-neutral-50);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700);white-space:nowrap}.compliance-table tr.non-compliant{background:#fef2f2}.compliance-table tr:hover{background:var(--color-neutral-50)}.progress-bar{position:relative;height:20px;background:var(--color-neutral-200);border-radius:10px;overflow:hidden;min-width:100px}.progress-fill{height:100%;background:linear-gradient(90deg,#22c55e,#16a34a);transition:width .3s ease}.progress-bar span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.status-badge{display:inline-block;padding:.125rem var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold)}.status-badge.success{background:#dcfce7;color:#166534}.status-badge.error{background:#fee2e2;color:#991b1b}.status-badge.warning{background:#fef3c7;color:#92400e}.violations-dashboard{display:flex;flex-direction:column;gap:var(--spacing-md)}.violations-filters{display:flex;gap:var(--spacing-md);flex-wrap:wrap;padding:var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-lg);align-items:center}.checkbox-label{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-body);color:var(--color-neutral-700);cursor:pointer}.violations-summary{display:flex;gap:var(--spacing-md);flex-wrap:wrap}.violation-count{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);font-size:var(--font-size-body);font-weight:var(--font-weight-semibold)}.violation-count.critical{background:#fee2e2;color:#991b1b}.violation-count.high{background:#ffedd5;color:#9a3412}.violation-count.medium{background:#fef3c7;color:#92400e}.violation-count.low{background:#ecfccb;color:#365314}.violations-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.violation-item{background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:var(--spacing-md)}.violation-item.resolved{opacity:.7;border-left:3px solid var(--color-success)}.violation-item:not(.resolved){border-left:3px solid var(--color-warning)}.violation-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm);flex-wrap:wrap}.severity-badge{padding:.125rem var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-tiny);font-weight:var(--font-weight-bold);color:var(--color-white)}.violation-type{padding:.125rem var(--spacing-sm);background:var(--color-neutral-100);border-radius:var(--radius-sm);font-size:var(--font-size-caption);color:var(--color-neutral-700);text-transform:capitalize}.violation-clinic{font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900);margin-left:auto}.resolved-badge{padding:.125rem var(--spacing-sm);background:#dcfce7;border-radius:var(--radius-sm);font-size:var(--font-size-tiny);font-weight:var(--font-weight-semibold);color:#166534}.violation-description{font-size:var(--font-size-body);color:var(--color-neutral-700);margin-bottom:var(--spacing-sm)}.violation-meta{font-size:var(--font-size-caption);color:var(--color-neutral-500);margin-bottom:var(--spacing-sm)}.violation-actions{display:flex;gap:var(--spacing-sm)}.btn-resolve{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-success);border:none;border-radius:var(--radius-md);color:var(--color-white);font-size:.8125rem;cursor:pointer}.btn-resolve:hover{background:var(--color-success-hover)}.btn-investigate{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-white);border:1px solid var(--color-primary-900);border-radius:var(--radius-md);color:var(--color-primary-900);font-size:.8125rem;cursor:pointer}.btn-investigate:hover{background:var(--color-primary-100)}.performance-dashboard{display:flex;flex-direction:column;gap:var(--spacing-md)}.performance-table{overflow-x:auto;border-radius:var(--radius-lg);border:1px solid var(--color-neutral-200)}.performance-table table{width:100%;border-collapse:collapse;font-size:var(--font-size-body)}.performance-table th,.performance-table td{padding:var(--spacing-sm) var(--spacing-md);text-align:left;border-bottom:1px solid var(--color-neutral-100)}.performance-table th{background:var(--color-neutral-50);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700);white-space:nowrap}.performance-table tr:hover{background:var(--color-neutral-50)}.performance-table .clinic-name{font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.rating{display:inline-flex;align-items:center;gap:var(--spacing-xs);font-weight:var(--font-weight-semibold)}.rating.good{color:#16a34a}.rating.average{color:#d97706}.staff-directory{display:flex;flex-direction:column;gap:var(--spacing-md)}.staff-filters{display:flex;gap:var(--spacing-md);flex-wrap:wrap;padding:var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-lg)}.staff-summary{display:flex;gap:var(--spacing-lg);font-size:var(--font-size-body);color:var(--color-neutral-700)}.staff-table{overflow-x:auto;border-radius:var(--radius-lg);border:1px solid var(--color-neutral-200)}.staff-table table{width:100%;border-collapse:collapse;font-size:var(--font-size-body)}.staff-table th,.staff-table td{padding:var(--spacing-sm) var(--spacing-md);text-align:left;border-bottom:1px solid var(--color-neutral-100)}.staff-table th{background:var(--color-neutral-50);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700);white-space:nowrap}.staff-table tr:hover{background:var(--color-neutral-50)}.staff-table tr.inactive-row{opacity:.6}.role-cell{text-transform:capitalize}.mfa-badge{display:inline-block;padding:.125rem var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold)}.mfa-badge.enabled{background:#dcfce7;color:#166534}.mfa-badge.disabled{background:#fee2e2;color:#991b1b}.status-badge.active{background:#dcfce7;color:#166534}.status-badge.inactive{background:var(--color-neutral-200);color:var(--color-neutral-700)}.status-badge.suspended{background:#fee2e2;color:#991b1b}.access-audit-dashboard{display:flex;flex-direction:column;gap:var(--spacing-md)}.access-log-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.access-log-entry{background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:var(--spacing-md)}.log-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm);flex-wrap:wrap}.action-badge{padding:.125rem var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-tiny);font-weight:var(--font-weight-bold);color:var(--color-white);text-transform:uppercase}.action-badge.view{background:#3b82f6}.action-badge.update{background:#f59e0b}.action-badge.create{background:#22c55e}.action-badge.delete{background:#ef4444}.action-badge.export{background:var(--color-primary-600)}.log-resource{font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.log-clinic{padding:.125rem var(--spacing-sm);background:var(--color-primary-100);border-radius:var(--radius-sm);font-size:var(--font-size-caption);color:var(--color-primary-900);margin-left:auto}.log-details{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-body);color:var(--color-neutral-700);margin-bottom:var(--spacing-sm)}.log-user{font-weight:var(--font-weight-medium);color:var(--color-neutral-900)}.log-separator{color:var(--color-neutral-400)}.log-resource-id{font-family:monospace;padding:.125rem var(--spacing-sm);background:var(--color-neutral-100);border-radius:var(--radius-sm);font-size:var(--font-size-caption)}.log-meta{display:flex;gap:var(--spacing-md);font-size:var(--font-size-caption);color:var(--color-neutral-500)}.health-dashboard{display:flex;flex-direction:column;gap:var(--spacing-lg)}.health-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:var(--spacing-md)}.health-card{text-align:center;padding:var(--spacing-lg);border-radius:var(--radius-lg);background:var(--color-white);border:1px solid var(--color-neutral-200)}.health-card.healthy{border-color:#22c55e}.health-card.degraded{border-color:#f59e0b}.health-card.down{border-color:#ef4444}.health-count{font-size:2rem;font-weight:var(--font-weight-bold)}.health-card.healthy .health-count{color:#22c55e}.health-card.degraded .health-count{color:#f59e0b}.health-card.down .health-count{color:#ef4444}.health-label{font-size:var(--font-size-body);color:var(--color-neutral-500)}.health-table{overflow-x:auto;border-radius:var(--radius-lg);border:1px solid var(--color-neutral-200)}.health-table table{width:100%;border-collapse:collapse;font-size:var(--font-size-body)}.health-table th,.health-table td{padding:var(--spacing-sm) var(--spacing-md);text-align:left;border-bottom:1px solid var(--color-neutral-100)}.health-table th{background:var(--color-neutral-50);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700);white-space:nowrap}.health-table tr:hover{background:var(--color-neutral-50)}.health-table tr.unhealthy-row{background:#fef2f2}.status-indicator{display:inline-block;padding:.25rem var(--spacing-sm);border-radius:var(--radius-md);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);color:var(--color-white);text-transform:capitalize}.storage-bar{position:relative;height:20px;background:var(--color-neutral-200);border-radius:10px;overflow:hidden;min-width:120px}.storage-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#2563eb);transition:width .3s ease}.storage-bar span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:var(--font-size-tiny);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900);white-space:nowrap}.announcements-dashboard,.announcements-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.announcement-card{background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:var(--spacing-lg)}.announcement-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.priority-badge{padding:.125rem var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-tiny);font-weight:var(--font-weight-bold);color:var(--color-white);text-transform:uppercase}.announcement-header h4{margin:0;font-size:var(--font-size-h4);color:var(--color-neutral-900)}.announcement-body{margin-bottom:var(--spacing-md)}.announcement-body p{margin:0;font-size:var(--font-size-body);color:var(--color-neutral-700);line-height:1.5}.announcement-meta{display:flex;gap:var(--spacing-lg);flex-wrap:wrap;font-size:var(--font-size-caption);color:var(--color-neutral-500);padding-top:var(--spacing-md);border-top:1px solid var(--color-neutral-100)}.announcement-modal{max-width:600px}.announcement-modal textarea{min-height:120px}.category-icon.superadmin-billing{background:linear-gradient(135deg,#059669,#047857)}.billing-overview{display:flex;flex-direction:column;gap:var(--spacing-lg)}.billing-summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md)}.billing-summary-cards .summary-card.billing-outstanding .summary-value{color:#dc2626}.billing-summary-cards .summary-card.billing-claims .summary-value{color:#2563eb}.billing-summary-cards .summary-card.billing-aging .summary-value{color:#ea580c}.billing-summary-cards .summary-card.billing-clinics .summary-value{color:var(--color-primary-900)}.billing-filters{display:flex;gap:var(--spacing-md);flex-wrap:wrap;padding:var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-lg);align-items:center}.billing-table{overflow-x:auto;border-radius:var(--radius-lg);border:1px solid var(--color-neutral-200)}.billing-table table{width:100%;border-collapse:collapse;font-size:var(--font-size-body)}.billing-table th,.billing-table td{padding:var(--spacing-sm) var(--spacing-md);text-align:left;border-bottom:1px solid var(--color-neutral-100)}.billing-table th{background:var(--color-neutral-50);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700);white-space:nowrap}.billing-table tr.aging-header th{background:var(--color-neutral-100);font-size:var(--font-size-caption);padding:var(--spacing-xs) var(--spacing-md)}.billing-table tr:hover{background:var(--color-neutral-50)}.billing-table tr.high-aging{background:#fef2f2}.billing-table tr.high-aging:hover{background:#fee2e2}.billing-table .clinic-name{font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.billing-table .amount{text-align:right;font-family:SF Mono,Monaco,Inconsolata,monospace}.billing-table .amount.pending{color:#2563eb}.billing-table .aging-cell{text-align:right;font-family:SF Mono,Monaco,Inconsolata,monospace;font-size:var(--font-size-caption)}.billing-table .aging-cell.warning{color:#d97706}.billing-table .aging-cell.danger{color:#dc2626;font-weight:var(--font-weight-semibold)}.billing-table tfoot .totals-row{background:var(--color-neutral-100);font-weight:var(--font-weight-semibold)}.billing-table tfoot .totals-row td{border-top:2px solid var(--color-neutral-300)}.aging-summary{background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:var(--spacing-lg)}.aging-summary h4{margin:0 0 var(--spacing-md);font-size:var(--font-size-h4);color:var(--color-neutral-900)}.aging-bars{display:flex;flex-direction:column;gap:var(--spacing-sm)}.aging-bar-row{display:flex;align-items:center;gap:var(--spacing-md)}.aging-bar-row .clinic-label{width:150px;font-size:var(--font-size-body);font-weight:var(--font-weight-medium);color:var(--color-neutral-700);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aging-bar{flex:1;height:24px;background:var(--color-neutral-100);border-radius:var(--radius-md);display:flex;overflow:hidden}.aging-segment{height:100%;transition:width .3s ease}.aging-segment.segment-0-30{background:#22c55e}.aging-segment.segment-31-60{background:#84cc16}.aging-segment.segment-61-90{background:#eab308}.aging-segment.segment-90-plus{background:#ef4444}.aging-bar-row .aging-total{width:100px;text-align:right;font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900);font-family:SF Mono,Monaco,Inconsolata,monospace}.aging-legend{display:flex;gap:var(--spacing-lg);margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-neutral-100);flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-caption);color:var(--color-neutral-600)}.legend-color{width:16px;height:16px;border-radius:var(--radius-sm)}.legend-color.segment-0-30{background:#22c55e}.legend-color.segment-31-60{background:#84cc16}.legend-color.segment-61-90{background:#eab308}.legend-color.segment-90-plus{background:#ef4444}.category-icon.superadmin-subscription{background:linear-gradient(135deg,var(--color-primary-600) 0%,var(--color-primary-600) 100%)}.category-icon.superadmin-branding{background:linear-gradient(135deg,#ec4899,#be185d)}.subscription-revenue{display:flex;flex-direction:column;gap:var(--spacing-lg)}.revenue-summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--spacing-md)}.revenue-summary-cards .summary-card.revenue-mrr .summary-value{color:#22c55e}.revenue-summary-cards .summary-card.revenue-arr .summary-value{color:#3b82f6}.revenue-summary-cards .summary-card.revenue-active .summary-value{color:#22c55e}.revenue-summary-cards .summary-card.revenue-trial .summary-value{color:#3b82f6}.revenue-summary-cards .summary-card.revenue-pastdue .summary-value{color:#f59e0b}.revenue-by-tier{background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:var(--spacing-lg)}.revenue-by-tier h4{margin:0 0 var(--spacing-md);font-size:var(--font-size-h4);color:var(--color-neutral-900)}.tier-breakdown{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md)}.tier-item{background:var(--color-neutral-50);border-radius:var(--radius-md);padding:var(--spacing-md)}.tier-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-sm)}.tier-count{font-size:var(--font-size-caption);color:var(--color-neutral-500)}.tier-mrr{font-size:1.25rem;font-weight:var(--font-weight-bold);color:var(--color-neutral-900);font-family:SF Mono,Monaco,Inconsolata,monospace}.subscription-filters{display:flex;gap:var(--spacing-md);flex-wrap:wrap;padding:var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-lg);align-items:center}.subscription-table{overflow-x:auto;border-radius:var(--radius-lg);border:1px solid var(--color-neutral-200)}.subscription-table table{width:100%;border-collapse:collapse;font-size:var(--font-size-body)}.subscription-table th,.subscription-table td{padding:var(--spacing-sm) var(--spacing-md);text-align:left;border-bottom:1px solid var(--color-neutral-100)}.subscription-table th{background:var(--color-neutral-50);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700);white-space:nowrap}.subscription-table tr:hover{background:var(--color-neutral-50)}.subscription-table tr.past-due-row{background:#fef3c7}.subscription-table tr.past-due-row:hover{background:#fde68a}.subscription-table .billing-cycle{text-transform:capitalize}.subscription-table .payment-amount{font-size:var(--font-size-caption);color:var(--color-neutral-500);margin-left:var(--spacing-xs)}.subscription-table .trial-ends{display:block;font-size:var(--font-size-tiny);color:var(--color-neutral-500);margin-top:2px}.subscription-table tfoot .totals-row{background:var(--color-neutral-100);font-weight:var(--font-weight-semibold)}.subscription-table tfoot .totals-row td{border-top:2px solid var(--color-neutral-300)}.platform-branding{display:flex;flex-direction:column;gap:var(--spacing-lg)}.branding-section{background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:var(--spacing-lg)}.branding-section h4{margin:0 0 var(--spacing-md);font-size:var(--font-size-h4);color:var(--color-neutral-900);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-neutral-100)}.branding-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-md)}.branding-field{display:flex;flex-direction:column;gap:var(--spacing-xs)}.branding-field label{font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700)}.branding-field input,.branding-field textarea{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);font-size:var(--font-size-body);background:var(--color-white);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.branding-field input:focus,.branding-field textarea:focus{outline:none;border-color:var(--color-primary-900);box-shadow:0 0 0 3px #1e3a5f1a}.branding-field textarea{resize:vertical;min-height:80px}.field-hint{font-size:var(--font-size-caption);color:var(--color-neutral-500)}.color-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md)}.color-field{display:flex;flex-direction:column;gap:var(--spacing-xs)}.color-field label{font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700)}.color-input-group input[type=color]{width:48px;height:40px;padding:2px;border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);cursor:pointer;background:var(--color-white)}.color-input-group input[type=text]{flex:1;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);font-size:var(--font-size-body);font-family:SF Mono,Monaco,Inconsolata,monospace}.color-preview{margin-top:var(--spacing-md);display:flex;align-items:center;gap:var(--spacing-md)}.preview-label{font-size:var(--font-size-body);color:var(--color-neutral-500)}.preview-bar{flex:1;height:48px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-h4);font-weight:var(--font-weight-bold);box-shadow:0 2px 8px #0000001a}.admin-tools-heading{margin:var(--spacing-xl) 0 var(--spacing-md);font-size:var(--font-size-h4);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-neutral-200)}.admin-tools-grid{margin-bottom:var(--spacing-lg)}.settings-category.admin-tool{border-left:3px solid transparent}.settings-category.admin-tool:hover{border-left-color:var(--color-primary-900)}.settings-category.admin-tool.completed{border-left-color:var(--color-success-500, #10b981);background:linear-gradient(135deg,#10b9810d,#10b98105)}.setup-complete-badge{display:inline-flex;align-items:center;gap:4px;margin-left:8px;padding:2px 8px;font-size:11px;font-weight:600;color:var(--color-success-700, #047857);background:var(--color-success-100, #d1fae5);border-radius:12px}.category-icon.icon-blue{background:linear-gradient(135deg,var(--color-primary-900) 0%,var(--color-primary-600) 100%)}.category-icon.icon-purple{background:linear-gradient(135deg,#667eea,#5a67d8)}.category-icon.icon-orange{background:linear-gradient(135deg,#ed8936,#c05621)}.category-icon.icon-teal{background:linear-gradient(135deg,#4fd1c5,#319795)}.category-icon.icon-gray{background:linear-gradient(135deg,var(--color-neutral-500) 0%,var(--color-neutral-700) 100%)}.settings-search{display:flex;align-items:center;gap:var(--spacing-sm);background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:var(--spacing-sm) var(--spacing-md);min-width:280px;max-width:400px;transition:border-color var(--transition-normal),box-shadow var(--transition-normal)}.settings-search:focus-within{border-color:var(--color-primary-900);box-shadow:0 0 0 3px #4a63b31a}.settings-search-input{flex:1;border:none;outline:none;font-size:var(--font-size-body);color:var(--color-neutral-900);background:transparent}.settings-search-input::-moz-placeholder{color:var(--color-neutral-400)}.settings-search-input::placeholder{color:var(--color-neutral-400)}.settings-search-clear{background:none;border:none;cursor:pointer;color:var(--color-neutral-400);font-size:1.25rem;line-height:1;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.settings-search-clear:hover{background:var(--color-neutral-100);color:var(--color-neutral-700)}.search-results-info{padding:var(--spacing-sm) 0;margin-bottom:var(--spacing-sm)}.search-results-info .no-results{color:var(--color-neutral-500);font-size:var(--font-size-body);text-align:center;padding:var(--spacing-xl)}.search-results-info .results-count{color:var(--color-neutral-600);font-size:var(--font-size-caption);margin:0}.settings-category.has-matches{border-left:3px solid var(--color-primary-900)}.matching-settings{display:flex;flex-wrap:wrap;gap:.375rem;margin-top:var(--spacing-sm)}.matching-setting{display:inline-block;padding:.25rem .5rem;background:var(--color-primary-100);color:var(--color-primary-900);border-radius:var(--radius-sm);font-size:var(--font-size-tiny);font-weight:var(--font-weight-medium)}.more-matches{display:inline-block;padding:.25rem .5rem;background:var(--color-neutral-100);color:var(--color-neutral-600);border-radius:var(--radius-sm);font-size:var(--font-size-tiny);font-weight:var(--font-weight-medium)}@media(max-width:768px){.settings-search{min-width:100%;max-width:100%;margin-top:var(--spacing-md)}.settings-header{flex-direction:column;align-items:flex-start}}.subscription-module{padding:var(--spacing-md);width:100%;box-sizing:border-box}.subscription-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-lg)}.header-left{display:flex;align-items:center;gap:var(--spacing-md)}.subscription-header h2{margin:0;font-size:var(--font-size-h2);color:var(--color-neutral-900)}.btn-billing-history{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-neutral-100);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);color:var(--color-neutral-700);font-size:.8125rem;cursor:pointer;transition:var(--transition-normal)}.btn-billing-history:hover{background:var(--color-neutral-200);color:var(--color-neutral-900)}.current-tier-badge{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-full);color:var(--color-neutral-900);font-weight:var(--font-weight-semibold);text-transform:uppercase;font-size:var(--font-size-body);letter-spacing:.05em}.subscription-section{background:var(--color-white);border-radius:var(--radius-lg);padding:1.25rem;margin-bottom:var(--spacing-lg);box-shadow:var(--shadow-sm)}.subscription-section h3{margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-h4);color:var(--color-neutral-700);border-bottom:1px solid var(--color-neutral-200);padding-bottom:var(--spacing-sm)}.plan-info{display:flex;flex-direction:column;gap:var(--spacing-sm)}.plan-name{font-size:1.25rem;color:var(--color-neutral-900)}.plan-price{font-size:var(--font-size-h2);font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.plan-annual-note{font-size:var(--font-size-body);color:var(--color-neutral-500)}.usage-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--spacing-md)}.usage-card{background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:var(--spacing-md)}.usage-card-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:.75rem}.usage-icon{width:28px;height:28px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-weight:var(--font-weight-bold);font-size:var(--font-size-tiny);color:var(--color-white)}.usage-icon.ai-icon{background:linear-gradient(135deg,var(--color-success) 0%,var(--color-success-hover) 100%)}.usage-icon.storage-icon{background:linear-gradient(135deg,var(--color-primary-900) 0%,var(--color-primary-600) 100%)}.usage-icon.api-icon{background:linear-gradient(135deg,var(--color-primary-600) 0%,var(--color-primary-900) 100%)}.usage-title{font-weight:var(--font-weight-semibold);font-size:var(--font-size-body);color:var(--color-neutral-700)}.usage-bar-container{width:100%;height:var(--spacing-sm);background:var(--color-neutral-200);border-radius:var(--radius-full);overflow:hidden;margin-bottom:var(--spacing-sm)}.usage-bar{height:100%;border-radius:var(--radius-full);transition:width var(--transition-slow)}.usage-details{display:flex;align-items:baseline;gap:var(--spacing-xs);font-size:1rem;flex-wrap:wrap}.usage-current{font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.usage-separator,.usage-limit{color:var(--color-neutral-500)}.usage-remaining,.usage-percent{margin-left:var(--spacing-xs);font-size:var(--font-size-caption);color:var(--color-neutral-500)}.usage-remaining{color:var(--color-success)}.usage-period{font-size:var(--font-size-caption);color:var(--color-neutral-500);margin-top:var(--spacing-xs)}.features-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:.75rem}.feature-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:.75rem;background:var(--color-neutral-50);border-radius:var(--radius-md);border:1px solid var(--color-neutral-200)}.feature-item.enabled{background:var(--color-success-light);border-color:#bbf7d0}.feature-item.disabled{background:var(--color-neutral-50);border-color:var(--color-neutral-200);opacity:.7}.feature-icon{font-size:1rem;width:var(--spacing-lg);text-align:center}.feature-label{flex:1;font-size:var(--font-size-body);color:var(--color-neutral-700)}.feature-value{font-weight:var(--font-weight-semibold);font-size:var(--font-size-body);color:var(--color-neutral-900)}.feature-item.disabled .feature-value{color:var(--color-neutral-500)}.tiers-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--spacing-md)}.tier-card{background:var(--color-white);border:2px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:1.25rem;transition:var(--transition-normal)}.tier-card.current{border-color:var(--color-primary-900);box-shadow:0 0 0 4px #4a63b31a}.tier-card.upgrade:hover{border-color:var(--color-success);box-shadow:0 4px 12px #10b98126}.tier-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-md);padding-bottom:.75rem;border-bottom:2px solid}.tier-header h4{margin:0;font-size:var(--font-size-h4);color:var(--color-neutral-900)}.current-badge{padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-primary-900);color:var(--color-white);font-size:var(--font-size-caption);border-radius:var(--radius-full);font-weight:var(--font-weight-semibold)}.tier-price{font-size:var(--font-size-h2);font-weight:var(--font-weight-bold);color:var(--color-neutral-900);margin-bottom:var(--spacing-md)}.tier-price .per-month{font-size:var(--font-size-body);font-weight:var(--font-weight-regular);color:var(--color-neutral-500)}.tier-price .price-editable-indicator{font-size:.6875rem;font-weight:var(--font-weight-medium);color:var(--color-primary-600);margin-left:var(--spacing-xs)}.tier-features{list-style:none;padding:0;margin:0 0 var(--spacing-md) 0}.tier-features li{padding:.375rem 0;font-size:var(--font-size-body);color:var(--color-neutral-700);border-bottom:1px solid var(--color-neutral-100)}.tier-features li:last-child{border-bottom:none}.upgrade-button{width:100%;padding:.75rem;background:var(--color-success);color:var(--color-white);border:none;border-radius:var(--radius-md);font-weight:var(--font-weight-semibold);font-size:var(--font-size-body);cursor:pointer;transition:background var(--transition-normal)}.upgrade-button:hover:not(:disabled){background:var(--color-success-hover)}.upgrade-button:disabled{opacity:.6;cursor:not-allowed}.upgrade-button.disabled{background:var(--color-neutral-500);opacity:.7}.section-header-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-md);border-bottom:1px solid var(--color-neutral-200);padding-bottom:var(--spacing-sm)}.section-header-row h3{margin:0;border-bottom:none;padding-bottom:0}.pricing-readonly-badge{font-size:var(--font-size-caption);color:var(--color-neutral-500);background:var(--color-neutral-100);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm)}.billing-history-view{display:flex;flex-direction:column;gap:var(--spacing-md)}.billing-history-header{display:flex;align-items:center;gap:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-neutral-200)}.billing-history-header h3{margin:0;font-size:var(--font-size-h4);color:var(--color-neutral-900)}.btn-back{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-neutral-100);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);color:var(--color-neutral-700);font-size:var(--font-size-body);cursor:pointer;transition:var(--transition-normal)}.btn-back:hover{background:var(--color-neutral-200)}.billing-history-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.empty-message{text-align:center;color:var(--color-neutral-500);padding:var(--spacing-xl);font-size:var(--font-size-body)}.billing-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);gap:var(--spacing-md)}.billing-item-left{display:flex;flex-direction:column;gap:var(--spacing-xs)}.billing-date{font-size:var(--font-size-caption);color:var(--color-neutral-500)}.billing-description{font-size:var(--font-size-body);color:var(--color-neutral-900);font-weight:var(--font-weight-medium)}.billing-item-right{display:flex;align-items:center;gap:.75rem}.billing-amount{font-weight:var(--font-weight-semibold);font-size:.9375rem;color:var(--color-neutral-900)}.billing-status{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-full);font-size:.6875rem;font-weight:var(--font-weight-semibold);text-transform:uppercase}.status-paid{background:var(--color-success-light);color:var(--color-success)}.status-failed{background:var(--color-error-light);color:var(--color-error)}.status-refunded{background:var(--color-info-light);color:var(--color-primary-900)}.billing-invoice-link{font-size:var(--font-size-caption);color:var(--color-primary-900);text-decoration:none}.billing-invoice-link:hover{text-decoration:underline}.modal-content{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-lg);max-width:400px;width:90%;box-shadow:var(--shadow-xl)}.modal-content h3{margin:0 0 var(--spacing-md) 0;font-size:1.25rem;color:var(--color-neutral-900)}.modal-content p{margin:0 0 var(--spacing-md) 0;color:var(--color-neutral-700)}.modal-note{font-size:var(--font-size-body);color:var(--color-neutral-500)!important}.modal-actions{display:flex;gap:.75rem;margin-top:var(--spacing-lg)}.cancel-button{flex:1;padding:.75rem;background:var(--color-neutral-100);color:var(--color-neutral-700);border:none;border-radius:var(--radius-md);font-weight:var(--font-weight-semibold);cursor:pointer;transition:background var(--transition-normal)}.cancel-button:hover:not(:disabled){background:var(--color-neutral-200)}.confirm-button{flex:1;padding:.75rem;background:var(--color-success);color:var(--color-white);border:none;border-radius:var(--radius-md);font-weight:var(--font-weight-semibold);cursor:pointer;transition:background var(--transition-normal)}.confirm-button:hover:not(:disabled){background:var(--color-success-hover)}.confirm-button:disabled,.cancel-button:disabled{opacity:.6;cursor:not-allowed}.modal-error{margin-top:var(--spacing-md);padding:.75rem;background:var(--color-error-light);border:1px solid #fecaca;border-radius:var(--radius-md);color:var(--color-error);font-size:var(--font-size-body)}.loading-state,.error-state{padding:var(--spacing-xl);text-align:center;color:var(--color-neutral-500)}.error-state{color:var(--color-error)}@media(max-width:768px){.subscription-header{flex-direction:column;align-items:flex-start;gap:.75rem}.header-left{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.usage-grid,.features-grid,.tiers-grid{grid-template-columns:1fr}.modal-actions{flex-direction:column}.billing-item{flex-direction:column;align-items:flex-start}.billing-item-right{width:100%;justify-content:space-between}}.panel-claims-module{padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-md);width:100%;box-sizing:border-box}.claims-header{display:flex;justify-content:space-between;align-items:center}.claims-header h2{margin:0;font-size:var(--font-size-h3);color:var(--color-neutral-900)}.refresh-button{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-primary-900);color:var(--color-white);border:none;border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-body)}.refresh-button:hover{background:var(--color-primary-600)}.claims-summary{display:flex;flex-wrap:nowrap;gap:var(--spacing-md);width:100%;box-sizing:border-box}.claims-summary .summary-card{flex:1 1 0;min-width:0;max-width:none;background:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-md);border-left:4px solid;cursor:pointer;transition:transform var(--transition-normal),box-shadow var(--transition-normal);box-shadow:var(--shadow-sm);box-sizing:border-box}.claims-summary .summary-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.claims-summary .summary-card.active{box-shadow:var(--shadow-lg)}.summary-card .card-count{font-size:1.75rem;font-weight:var(--font-weight-bold)}.summary-card .card-label{font-size:var(--font-size-body);color:var(--color-neutral-500);margin-top:var(--spacing-xs)}.summary-card .card-amount{font-size:var(--font-size-body);color:var(--color-neutral-900);font-weight:var(--font-weight-medium);margin-top:var(--spacing-sm)}.claims-tabs{display:flex;gap:var(--spacing-sm);border-bottom:1px solid var(--color-neutral-200);padding-bottom:var(--spacing-sm);overflow-x:auto}.tab-button{padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:none;border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-body);color:var(--color-neutral-500);white-space:nowrap}.tab-button:hover{background:var(--color-neutral-100)}.tab-button.active{background:var(--color-primary-900);color:var(--color-white)}.claims-content{flex:1;overflow-y:auto;min-height:300px}.empty-state,.module-loading{text-align:center;padding:var(--spacing-2xl);color:var(--color-neutral-500)}.ageing-overview{display:flex;flex-direction:column;gap:var(--spacing-lg)}.ageing-totals{display:flex;gap:var(--spacing-lg);flex-wrap:wrap}.total-card{background:var(--color-white);padding:var(--spacing-lg);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);min-width:200px}.total-card .total-label{display:block;font-size:var(--font-size-body);color:var(--color-neutral-500)}.total-card .total-value{display:block;font-size:1.75rem;font-weight:var(--font-weight-bold);color:var(--color-neutral-900);margin:var(--spacing-xs) 0}.total-card .total-count{display:block;font-size:var(--font-size-body);color:var(--color-neutral-500)}.ageing-buckets{display:flex;gap:.75rem;flex-wrap:wrap;flex:1}.bucket{padding:var(--spacing-md);border-radius:var(--radius-lg);min-width:120px;flex:1}.bucket .bucket-label{display:block;font-size:var(--font-size-caption);color:var(--color-neutral-500);margin-bottom:var(--spacing-xs)}.bucket .bucket-amount{display:block;font-size:var(--font-size-h4);font-weight:var(--font-weight-semibold)}.bucket.overdue{border:2px solid #991b1b}.ageing-table{background:var(--color-white);border-radius:var(--radius-lg);overflow-x:auto;box-shadow:var(--shadow-sm)}.ageing-table table{width:100%;border-collapse:collapse;font-size:var(--font-size-body)}.ageing-table th,.ageing-table td{padding:.75rem var(--spacing-md);text-align:left;border-bottom:1px solid var(--color-neutral-200)}.ageing-table th{background:var(--color-neutral-50);font-weight:var(--font-weight-semibold);color:var(--color-neutral-500)}.ageing-table .company-name{font-weight:var(--font-weight-medium)}.ageing-table .claims-count{color:var(--color-neutral-500)}.ageing-table .total-amount{font-weight:var(--font-weight-semibold)}.claims-list{display:flex;flex-direction:column;gap:.75rem}.claim-card{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-md);box-shadow:var(--shadow-sm);cursor:pointer;transition:box-shadow var(--transition-normal)}.claim-card:hover{box-shadow:var(--shadow-md)}.claim-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.claim-number{font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.claim-status{font-size:var(--font-size-caption);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-weight:var(--font-weight-medium)}.claim-body{display:flex;justify-content:space-between;gap:var(--spacing-md)}.claim-info{display:flex;flex-direction:column;gap:var(--spacing-xs)}.panel-name{font-weight:var(--font-weight-medium);color:var(--color-neutral-900)}.patient-info{font-size:var(--font-size-body);color:var(--color-neutral-500)}.service-date{font-size:var(--font-size-caption);color:var(--color-neutral-500)}.claim-amounts{text-align:right}.amount-row{display:flex;justify-content:flex-end;gap:var(--spacing-sm);font-size:var(--font-size-body)}.amount-row .amount-label{color:var(--color-neutral-500)}.amount-row .amount-value{font-weight:var(--font-weight-medium)}.amount-row.approved .amount-value{color:var(--color-success)}.ageing-info{margin-top:var(--spacing-sm)}.ageing-badge{font-size:var(--font-size-caption);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);color:var(--color-white)}.claim-actions{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--color-neutral-200);display:flex;justify-content:flex-end}.submit-button{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-primary-900);color:var(--color-white);border:none;border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-body)}.submit-button:hover{background:var(--color-primary-600)}.submit-button:disabled{background:var(--color-neutral-500);cursor:not-allowed}.modal-overlay{position:fixed;inset:0;background:var(--modal-backdrop-color);display:flex;justify-content:center;align-items:center;z-index:var(--z-modal);padding:var(--spacing-md)}.modal-content{background:var(--color-white);border-radius:var(--radius-lg);max-width:600px;width:100%;max-height:90vh;overflow-y:auto}.claim-detail-modal{max-width:700px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-neutral-200)}.modal-header h3{margin:0;font-size:var(--font-size-h4)}.close-button{background:none;border:none;font-size:var(--font-size-h3);cursor:pointer;color:var(--color-neutral-500)}.detail-section{margin-bottom:var(--spacing-lg)}.detail-section h4{margin:0 0 .75rem;font-size:var(--font-size-body);color:var(--color-neutral-500);text-transform:uppercase;letter-spacing:.05em}.detail-row{display:flex;justify-content:space-between;padding:var(--spacing-sm) 0;border-bottom:1px solid var(--color-neutral-100)}.detail-label{color:var(--color-neutral-500)}.detail-value{font-weight:var(--font-weight-medium)}.status-badge{padding:var(--spacing-xs) .75rem;border-radius:var(--radius-sm);font-size:var(--font-size-body)}.amounts-section .amounts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md)}.amount-box{background:var(--color-neutral-50);padding:var(--spacing-md);border-radius:var(--radius-md);text-align:center}.amount-box .amount-label{display:block;font-size:var(--font-size-caption);color:var(--color-neutral-500);margin-bottom:var(--spacing-xs)}.amount-box .amount-value{font-size:var(--font-size-h4);font-weight:var(--font-weight-semibold)}.amount-box.approved{background:var(--color-success-light)}.amount-box.approved .amount-value{color:var(--color-success)}.amount-box.copay{background:var(--color-warning-light)}.amount-box.copay .amount-value{color:var(--color-warning)}.line-items-table{width:100%;border-collapse:collapse;font-size:var(--font-size-body)}.line-items-table th,.line-items-table td{padding:var(--spacing-sm);text-align:left;border-bottom:1px solid var(--color-neutral-200)}.line-items-table th{background:var(--color-neutral-50);font-weight:var(--font-weight-medium);color:var(--color-neutral-500)}.line-items-table tr.rejected{background:var(--color-error-light)}.service-name{font-weight:var(--font-weight-medium)}.service-code{font-size:var(--font-size-caption);color:var(--color-neutral-500)}.rejection-section{background:var(--color-error-light);padding:var(--spacing-md);border-radius:var(--radius-md);border-left:4px solid var(--color-error)}.rejection-reason{margin:0;color:#991b1b}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--color-neutral-200)}.cancel-button{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-neutral-100);color:var(--color-neutral-900);border:none;border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-body)}.cancel-button:hover{background:var(--color-neutral-200)}.claims-footer{display:flex;justify-content:flex-start;align-items:center;gap:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-neutral-200)}.last-updated{font-size:var(--font-size-caption);color:var(--color-neutral-500)}.header-actions{display:flex;gap:.75rem}.btn-secondary{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-white);color:var(--color-primary-900);border:1px solid var(--color-primary-900);border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-body);transition:all var(--transition-normal)}.btn-secondary:hover{background:var(--color-primary-900);color:var(--color-white)}.btn-primary{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-primary-900);color:var(--color-white);border:none;border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-body)}.btn-success{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-success);color:var(--color-white);border:none;border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-body)}.btn-success:hover{background:var(--color-success-hover)}.btn-success:disabled{background:var(--color-neutral-500);cursor:not-allowed}.btn-danger{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-error);color:var(--color-white);border:none;border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-body)}.eligibility-modal{max-width:500px}.form-group label{display:block;font-size:var(--font-size-body);font-weight:var(--font-weight-medium);color:var(--color-neutral-900);margin-bottom:.375rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.625rem .75rem;border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:var(--font-size-body);transition:border-color var(--transition-normal)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary-900);box-shadow:0 0 0 2px #4a63b31a}.field-hint{display:block;font-size:var(--font-size-caption);margin-top:var(--spacing-xs);color:var(--color-neutral-500)}.field-hint.warning{color:var(--color-warning)}.eligibility-result{margin-top:var(--spacing-lg);padding:var(--spacing-md);border-radius:var(--radius-lg);display:flex;gap:var(--spacing-md)}.eligibility-result.eligible{background:var(--color-success-light);border:1px solid var(--color-success)}.eligibility-result.not-eligible{background:var(--color-error-light);border:1px solid var(--color-error)}.result-icon{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-h3);flex-shrink:0}.result-icon.success{background:var(--color-success);color:var(--color-white)}.result-icon.error{background:var(--color-error);color:var(--color-white)}.result-details{flex:1}.result-details h4{margin:0 0 var(--spacing-sm);color:var(--color-neutral-900)}.result-row{display:flex;justify-content:space-between;padding:var(--spacing-xs) 0;font-size:var(--font-size-body)}.result-row span{color:var(--color-neutral-500)}.result-row strong{color:var(--color-neutral-900)}.result-row.highlight{margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid rgba(0,0,0,.1)}.result-row .remaining{color:var(--color-success);font-size:var(--font-size-body)}.approve-modal,.reject-modal,.payment-modal{max-width:450px}.claim-summary{background:var(--color-neutral-50);padding:var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg)}.summary-row span{color:var(--color-neutral-500)}.summary-row strong{color:var(--color-neutral-900)}.warning-box{background:var(--color-warning-light);border:1px solid var(--color-warning);border-radius:var(--radius-md);padding:.75rem var(--spacing-md);font-size:var(--font-size-body);color:#92400e;margin-top:var(--spacing-md)}.warning-box strong{color:#78350f}@media(max-width:768px){.claims-summary{grid-template-columns:repeat(2,1fr)}.ageing-totals{flex-direction:column}.amounts-section .amounts-grid{grid-template-columns:1fr}.claim-body{flex-direction:column}.claim-amounts{text-align:left}.header-actions{flex-direction:column;gap:var(--spacing-sm)}.modal-footer{flex-direction:column}.modal-footer button{width:100%}}.history-filters{display:flex;flex-direction:column;gap:12px;padding:12px 16px;background:var(--color-background, #f9fafb);border-bottom:1px solid var(--color-border, #e5e7eb)}.history-filters-tabs{display:flex;gap:4px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.history-filters-tabs::-webkit-scrollbar{display:none}.history-filters-tab{padding:6px 12px;font-size:13px;font-weight:500;color:var(--color-text-secondary, #6b7280);background:transparent;border:1px solid transparent;border-radius:6px;cursor:pointer;white-space:nowrap;transition:all .15s ease}.history-filters-tab:hover{color:var(--color-text-primary, #111827);background:var(--color-surface, #fff)}.history-filters-tab--active{color:var(--color-primary, #2563eb);background:var(--color-surface, #fff);border-color:var(--color-primary, #2563eb)}.history-filters-controls{display:flex;gap:8px}.history-filters-search{flex:1;display:flex;align-items:center;gap:8px;padding:0 12px;background:var(--color-surface, #fff);border:1px solid var(--color-border, #e5e7eb);border-radius:8px;transition:border-color .15s ease,box-shadow .15s ease}.history-filters-search--focused{border-color:var(--color-primary, #2563eb);box-shadow:0 0 0 3px #2563eb1a}.history-filters-search-icon{font-size:14px;opacity:.5}.history-filters-search-input{flex:1;padding:8px 0;font-size:14px;color:var(--color-text-primary, #111827);background:transparent;border:none;outline:none}.history-filters-search-input::-moz-placeholder{color:var(--color-text-tertiary, #9ca3af)}.history-filters-search-input::placeholder{color:var(--color-text-tertiary, #9ca3af)}.history-filters-search-clear{display:flex;align-items:center;justify-content:center;width:20px;height:20px;font-size:12px;color:var(--color-text-tertiary, #9ca3af);background:var(--color-background, #f3f4f6);border:none;border-radius:4px;cursor:pointer;transition:all .15s ease}.history-filters-search-clear:hover{color:var(--color-text-primary, #111827);background:var(--color-border, #e5e7eb)}.history-filters-time-range{flex-shrink:0;padding:8px 32px 8px 12px;font-size:13px;font-weight:500;color:var(--color-text-primary, #111827);background:var(--color-surface, #fff);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' 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 10px center;border:1px solid var(--color-border, #e5e7eb);border-radius:8px;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none}.history-filters-time-range:hover{border-color:var(--color-text-tertiary, #9ca3af)}.history-filters-time-range:focus{outline:none;border-color:var(--color-primary, #2563eb);box-shadow:0 0 0 3px #2563eb1a}.history-event-card{display:flex;gap:12px;padding:12px;background:var(--color-surface, #fff);border-radius:8px;border-left:3px solid var(--event-color, #3B82F6);transition:background-color .15s ease}.history-event-card:hover{background:var(--color-surface-hover, #f9fafb)}.history-event-icon{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:20px;background:var(--color-background, #f3f4f6);border-radius:8px}.history-event-content{flex:1;min-width:0}.history-event-header{display:flex;align-items:center;gap:8px;margin-bottom:4px;font-size:12px;color:var(--color-text-secondary, #6b7280)}.history-event-date{font-weight:500}.history-event-time{color:var(--color-text-tertiary, #9ca3af)}.history-event-title{margin:0 0 2px;font-size:14px;font-weight:600;color:var(--color-text-primary, #111827);line-height:1.4}.history-event-subtitle{margin:0 0 8px;font-size:13px;color:var(--color-text-secondary, #6b7280)}.history-event-badges{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.history-event-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:500;border-radius:4px;background:var(--color-background, #f3f4f6);color:var(--color-text-secondary, #6b7280)}.history-event-badge--mc{background:#fef3c7;color:#92400e}.history-event-badge--pharmacy{background:#ede9fe;color:var(--color-primary-900)}.history-event-badge--success{background:#d1fae5;color:#065f46}.history-event-badge--error{background:#fee2e2;color:#991b1b}.history-event-badge--pending{background:#dbeafe;color:#1e40af}.history-event-details{margin-bottom:8px}.history-event-detail{font-size:12px;color:var(--color-text-secondary, #6b7280);margin-bottom:2px}.history-event-detail-label{font-weight:500;color:var(--color-text-primary, #374151)}.history-event-detail--error{color:#dc2626}.history-event-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.history-event-action-btn{padding:4px 10px;font-size:12px;font-weight:500;color:var(--color-primary, #2563eb);background:transparent;border:1px solid var(--color-border, #e5e7eb);border-radius:4px;cursor:pointer;transition:all .15s ease}.history-event-action-btn:hover{background:var(--color-primary, #2563eb);color:#fff;border-color:var(--color-primary, #2563eb)}.history-event-action-btn:focus{outline:none;box-shadow:0 0 0 2px #2563eb33}.history-event-card--clickable{cursor:pointer}.history-event-card--clickable:focus{outline:none;box-shadow:0 0 0 2px #2563eb4d}.history-event-expand-icon{margin-left:auto;font-size:10px;color:var(--color-text-tertiary, #9ca3af);transition:transform .2s ease}.history-event-expand-icon--expanded{transform:rotate(180deg)}.history-event-card--expanded{background:var(--color-surface-hover, #f9fafb);border-left-width:4px}.history-event-expanded{margin-top:12px;padding-top:12px;border-top:1px solid var(--color-border, #e5e7eb);animation:expandIn .2s ease}@keyframes expandIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.history-event-expanded-section{margin-bottom:12px}.history-event-expanded-section:last-child{margin-bottom:0}.history-event-expanded-section h5{margin:0 0 6px;font-size:12px;font-weight:600;color:var(--color-text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.5px}.history-event-expanded-section p{margin:0;font-size:13px;color:var(--color-text-primary, #111827)}.history-event-expanded-grid{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--color-text-primary, #111827)}.history-event-expanded-grid strong{color:var(--color-text-secondary, #6b7280);font-weight:500}.history-event-medications-list{margin:0;padding:0 0 0 20px;font-size:13px;color:var(--color-text-primary, #111827)}.history-event-medications-list li{margin-bottom:2px}.history-event-rejection{color:#dc2626}.history-event-expanded-actions{margin-top:12px;padding-top:12px;border-top:1px solid var(--color-border, #e5e7eb);display:flex;flex-wrap:wrap;gap:6px}.history-timeline{display:flex;flex-direction:column;gap:16px}.history-timeline-group{display:flex;flex-direction:column;gap:8px}.history-timeline-month{position:relative;display:flex;align-items:center;padding:8px 0}.history-timeline-month:before,.history-timeline-month:after{content:"";flex:1;height:1px;background:var(--color-border, #e5e7eb)}.history-timeline-month-label{padding:0 12px;font-size:13px;font-weight:600;color:var(--color-text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.05em}.history-timeline-events{display:flex;flex-direction:column;gap:8px}.history-timeline-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center}.history-timeline-empty-icon{font-size:48px;margin-bottom:16px;opacity:.5}.history-timeline-empty h4{margin:0 0 8px;font-size:16px;font-weight:600;color:var(--color-text-primary, #111827)}.history-timeline-empty p{margin:0;font-size:14px;color:var(--color-text-secondary, #6b7280)}.history-timeline-load-more{display:flex;justify-content:center;padding:16px 0}.history-timeline-load-more-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:500;color:var(--color-primary, #2563eb);background:transparent;border:1px solid var(--color-border, #e5e7eb);border-radius:8px;cursor:pointer;transition:all .15s ease}.history-timeline-load-more-btn:hover:not(:disabled){background:var(--color-primary-50, #eff6ff);border-color:var(--color-primary, #2563eb)}.history-timeline-load-more-btn:disabled{cursor:not-allowed;opacity:.6}.history-timeline-spinner{width:16px;height:16px;border:2px solid var(--color-border, #e5e7eb);border-top-color:var(--color-primary, #2563eb);border-radius:50%;animation:spin .8s linear infinite}.history-panel-backdrop{position:fixed;inset:0;background:#0000004d;z-index:1000;animation:fadeIn .2s ease}.history-panel{position:fixed;top:0;right:0;bottom:0;width:480px;max-width:100vw;display:flex;flex-direction:column;background:var(--color-surface, #fff);box-shadow:-4px 0 24px #00000026;z-index:1001;animation:slideIn .2s ease;outline:none}.history-panel-header{display:flex;justify-content:space-between;align-items:flex-start;padding:20px 20px 16px;border-bottom:1px solid var(--color-border, #e5e7eb)}.history-panel-header-content{flex:1;min-width:0}.history-panel-title{margin:0 0 4px;font-size:18px;font-weight:600;color:var(--color-text-primary, #111827)}.history-panel-patient-name{margin:0 0 2px;font-size:16px;font-weight:500;color:var(--color-text-primary, #111827)}.history-panel-patient-info{margin:0;font-size:13px;color:var(--color-text-secondary, #6b7280)}.history-panel-separator{margin:0 4px;color:var(--color-text-tertiary, #9ca3af)}.history-panel-close{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;font-size:16px;color:var(--color-text-secondary, #6b7280);background:transparent;border:none;border-radius:6px;cursor:pointer;transition:all .15s ease}.history-panel-close:hover{color:var(--color-text-primary, #111827);background:var(--color-background, #f3f4f6)}.history-panel-close:focus{outline:none;box-shadow:0 0 0 2px #2563eb4d}.history-panel-content{flex:1;overflow-y:auto;padding:16px}.history-panel-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center}.history-panel-spinner{width:32px;height:32px;margin-bottom:16px;border:3px solid var(--color-border, #e5e7eb);border-top-color:var(--color-primary, #2563eb);border-radius:50%;animation:spin .8s linear infinite}.history-panel-loading p{margin:0;font-size:14px;color:var(--color-text-secondary, #6b7280)}.history-panel-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center}.history-panel-error-icon{font-size:48px;margin-bottom:16px}.history-panel-error h4{margin:0 0 8px;font-size:16px;font-weight:600;color:var(--color-text-primary, #111827)}.history-panel-error p{margin:0 0 16px;font-size:14px;color:var(--color-text-secondary, #6b7280)}.history-panel-retry-btn{padding:8px 16px;font-size:14px;font-weight:500;color:var(--color-surface, #fff);background:var(--color-primary, #2563eb);border:none;border-radius:6px;cursor:pointer;transition:background-color .15s ease}.history-panel-retry-btn:hover{background:var(--color-primary-dark, #1d4ed8)}.history-panel-no-results{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center}.history-panel-no-results-icon{font-size:48px;margin-bottom:16px;opacity:.5}.history-panel-no-results h4{margin:0 0 8px;font-size:16px;font-weight:600;color:var(--color-text-primary, #111827)}.history-panel-no-results p{margin:0;font-size:14px;color:var(--color-text-secondary, #6b7280)}@media(max-width:520px){.history-panel{width:100vw}}.history-drawer{position:fixed;left:0;right:0;bottom:0;background:var(--color-surface, #fff);border-top:1px solid var(--color-border, #e5e7eb);box-shadow:0 -4px 24px #0000001a;z-index:100;transition:height .6s ease,transform .6s ease;display:flex;flex-direction:column}.history-drawer--collapsed{height:56px}.history-drawer--expanded{height:calc(100vh - 200px);max-height:600px;min-height:300px}.history-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:var(--color-primary-100);border-bottom:1px solid #e9e5ff;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0}.history-drawer-header:hover{background:#ede9fe}.history-drawer-header-content{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.history-drawer-toggle{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;background:#ddd6fe;color:var(--color-primary-900);flex-shrink:0}.history-drawer-chevron{font-size:12px;transition:transform .3s ease}.history-drawer-chevron--down{transform:rotate(180deg)}.history-drawer-title-section{display:flex;flex-direction:column;min-width:0}.history-drawer-title{margin:0;font-size:15px;font-weight:600;color:var(--color-text-primary, #111827);line-height:1.3}.history-drawer-patient-info{font-size:13px;color:var(--color-text-secondary, #6b7280);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.history-drawer-count{flex-shrink:0;padding:4px 10px;font-size:12px;font-weight:500;color:var(--color-text-secondary, #6b7280);background:var(--color-surface, #fff);border:1px solid var(--color-border, #e5e7eb);border-radius:12px}.history-drawer-close{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;font-size:16px;color:var(--color-text-secondary, #6b7280);background:transparent;border:none;border-radius:6px;cursor:pointer;transition:all .15s ease}.history-drawer-close:hover{color:var(--color-text-primary, #111827);background:var(--color-surface, #fff)}.history-drawer-body{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.history-drawer-content{flex:1;overflow-y:auto;padding:16px}.history-drawer-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center}.history-drawer-spinner{width:32px;height:32px;margin-bottom:16px;border:3px solid var(--color-border, #e5e7eb);border-top-color:var(--color-primary, #2563eb);border-radius:50%;animation:drawer-spin .8s linear infinite}@keyframes drawer-spin{to{transform:rotate(360deg)}}.history-drawer-loading p{margin:0;font-size:14px;color:var(--color-text-secondary, #6b7280)}.history-drawer-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center}.history-drawer-error-icon{font-size:48px;margin-bottom:16px}.history-drawer-error h4{margin:0 0 8px;font-size:16px;font-weight:600;color:var(--color-text-primary, #111827)}.history-drawer-error p{margin:0 0 16px;font-size:14px;color:var(--color-text-secondary, #6b7280)}.history-drawer-retry-btn{padding:8px 16px;font-size:14px;font-weight:500;color:var(--color-surface, #fff);background:var(--color-primary, #2563eb);border:none;border-radius:6px;cursor:pointer;transition:background-color .15s ease}.history-drawer-retry-btn:hover{background:var(--color-primary-dark, #1d4ed8)}.history-drawer-no-results,.history-drawer-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center}.history-drawer-no-results-icon,.history-drawer-empty-icon{font-size:48px;margin-bottom:16px;opacity:.5}.history-drawer-no-results h4,.history-drawer-empty h4{margin:0 0 8px;font-size:16px;font-weight:600;color:var(--color-text-primary, #111827)}.history-drawer-no-results p,.history-drawer-empty p{margin:0;font-size:14px;color:var(--color-text-secondary, #6b7280)}@media(max-width:768px){.history-drawer--expanded{height:calc(100vh - 120px);max-height:none}.history-drawer-header{padding:12px 16px}.history-drawer-content{padding:12px}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.patients-module{display:flex;flex-direction:column;gap:var(--spacing-lg);width:100%;box-sizing:border-box}.patients-list-view{display:flex;flex-direction:column;gap:var(--spacing-md)}.patients-header{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);flex-wrap:wrap}.patients-tabs{display:flex;gap:0;border-bottom:2px solid #E2E8F0;margin-bottom:16px}.patients-tab{padding:10px 20px;border:none;background:transparent;font-family:inherit;font-size:14px;font-weight:500;color:#64748b;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;position:relative;transition:color .15s,border-color .15s}.patients-tab:hover{color:#1e293b}.patients-tab.active{color:#4a63b3;border-bottom-color:#4a63b3}.tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;margin-left:6px;border-radius:9px;background:#dc2626;color:#fff;font-size:11px;font-weight:600;line-height:1}.checkin-unack{background-color:#c9d8ea!important}.search-section{flex:1;min-width:250px;max-width:400px}.search-input{width:100%;padding:.75rem var(--spacing-md);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);font-size:.9375rem}.search-input:focus{outline:none;border-color:var(--color-primary-900);box-shadow:0 0 0 3px #4a63b31a}.patients-table,.visit-history-table{background:var(--color-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden}.patients-module .patients-table .table-header{display:grid;grid-template-columns:1fr 2fr .6fr .6fr 1.5fr 1.3fr 2fr .8fr .8fr;padding:.875rem var(--spacing-md);background:var(--color-neutral-50);border-bottom:1px solid var(--color-neutral-200);font-weight:var(--font-weight-semibold);font-size:.8125rem;color:var(--color-neutral-700);text-transform:uppercase;letter-spacing:.03em}.patients-module .visit-history-table .table-header{grid-template-columns:120px 120px 1fr 150px 100px}.patients-module .patients-table .table-row{display:grid;grid-template-columns:1fr 2fr .6fr .6fr 1.5fr 1.3fr 2fr .8fr .8fr;padding:.875rem var(--spacing-md);border-bottom:1px solid var(--color-neutral-200);align-items:center;cursor:pointer;transition:all var(--transition-normal)}.patients-module .visit-history-table .table-row{grid-template-columns:120px 120px 1fr 150px 100px}.patients-module .patients-table .table-row:hover{background:var(--color-primary-50, #f0f4ff);border-left:3px solid var(--color-primary-900);padding-left:calc(var(--spacing-md) - 3px)}.patients-module .table-row:last-child{border-bottom:none}.patients-module .col-number{font-weight:var(--font-weight-semibold);color:var(--color-primary-900)}.patients-module .col-name{font-weight:var(--font-weight-medium);color:var(--color-neutral-900)}.patients-module .col-gender,.patients-module .col-age{text-align:center;color:var(--color-neutral-600);font-size:var(--font-size-body)}.patients-module .col-ic,.patients-module .col-phone{color:var(--color-neutral-700);font-size:var(--font-size-body);font-family:SF Mono,Monaco,Consolas,monospace;letter-spacing:.02em}.patients-module .col-email{color:var(--color-neutral-600);font-size:.875rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.patients-module .col-panel{text-align:center}.patients-module .col-actions{text-align:right}.panel-badge{display:inline-block;background:linear-gradient(135deg,#10b981,#059669);color:var(--color-white);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm)}.pagination{display:flex;justify-content:center;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md)}.pagination button{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-neutral-200);background:var(--color-white);border-radius:var(--radius-md);cursor:pointer}.pagination button:disabled{opacity:.5;cursor:not-allowed}.patient-detail-view{display:flex;flex-direction:column;gap:var(--spacing-lg);padding-bottom:72px}.patient-title{flex:1;display:flex;align-items:center;gap:.75rem}.patient-title h2{margin:0;font-size:var(--font-size-h2);color:var(--color-neutral-900)}.modal-overlay{position:fixed;inset:0;background:var(--modal-backdrop-color);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal)}.modal-content{background:var(--color-white);border-radius:var(--radius-xl);max-width:500px;width:90%;max-height:90vh;overflow-y:auto}.walkin-modal .modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) 1.25rem;border-bottom:1px solid var(--color-neutral-200)}.walkin-modal .modal-header h3{margin:0;font-size:var(--font-size-h4);color:var(--color-neutral-900)}.modal-close{background:none;border:none;font-size:var(--font-size-h2);color:var(--color-neutral-500);cursor:pointer;padding:0;line-height:1}.modal-close:hover{color:var(--color-neutral-700)}.walkin-modal .modal-body{padding:1.25rem}.patient-summary{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:var(--color-neutral-50);border-radius:var(--radius-lg);margin-bottom:1.25rem}.patient-summary .patient-name{font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.walkin-modal .modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:var(--spacing-md) 1.25rem;border-top:1px solid var(--color-neutral-200)}.walkin-modal .form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md);margin-top:var(--spacing-md)}.priority-select{padding:.625rem .875rem;border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:.9375rem;cursor:pointer}.priority-select.priority-normal{background:var(--color-white)}.priority-select.priority-urgent{background:var(--color-warning-light);border-color:#f59e0b}.priority-select.priority-emergency{background:var(--color-error-light);border-color:#ef4444}.priority-warning{background:var(--color-error-light);color:#991b1b;padding:.75rem var(--spacing-md);border-radius:var(--radius-md);font-size:var(--font-size-body);margin-top:var(--spacing-md);border-left:4px solid #ef4444}.priority-info{background:var(--color-warning-light);color:#92400e;padding:.75rem var(--spacing-md);border-radius:var(--radius-md);font-size:var(--font-size-body);margin-top:var(--spacing-md);border-left:4px solid #f59e0b}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:var(--spacing-lg)}.detail-section{background:var(--color-white);border-radius:var(--radius-xl);padding:1.25rem;box-shadow:var(--shadow-sm)}.detail-section h3{margin:0 0 var(--spacing-md);font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-neutral-200)}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}.info-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.info-item.full-width{grid-column:1 / -1}.info-item label{font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);color:var(--color-neutral-500);text-transform:uppercase;letter-spacing:.03em}.info-item span{font-size:.9375rem;color:var(--color-neutral-900)}.info-item span.multiline{white-space:pre-wrap;line-height:1.5}.tags{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.tag{font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);padding:var(--spacing-xs) .625rem;border-radius:var(--radius-full);background:var(--color-neutral-200);color:var(--color-neutral-700)}.tag.allergy{background:var(--color-error-light);color:var(--color-error)}.visit-history-section{background:var(--color-white);border-radius:var(--radius-xl);padding:1.25rem;box-shadow:var(--shadow-sm)}.visit-history-section h3{margin:0 0 var(--spacing-md);font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.status-badge{font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);text-transform:capitalize}.status-badge.status-completed{background:var(--color-success-light);color:var(--color-success-hover)}.status-badge.status-waiting,.status-badge.status-pending{background:var(--color-warning-light);color:var(--color-warning-hover)}.status-badge.status-with_doctor{background:var(--color-info-light);color:var(--color-primary-600)}.status-badge.status-cancelled{background:var(--color-error-light);color:var(--color-error)}.patient-form-view{display:flex;flex-direction:column;gap:var(--spacing-lg)}.form-header{display:flex;align-items:center;gap:var(--spacing-md)}.form-header h2{flex:1;margin:0;font-size:var(--font-size-h2);color:var(--color-neutral-900)}.duplicate-error{background:#fef2f2;border:2px solid #ef4444;border-radius:var(--radius-lg);padding:var(--spacing-md) 1.25rem;margin-bottom:var(--spacing-md)}.error-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.error-icon{font-size:1.25rem}.error-title{font-weight:var(--font-weight-semibold);color:#991b1b}.error-message{color:var(--color-error-hover);font-size:var(--font-size-body);margin:0 0 .75rem}.duplicate-item.exact-match{background:var(--color-error-light);border:1px solid #fca5a5}.duplicate-item.exact-match .btn-primary{background:var(--color-error)}.duplicate-item.exact-match .btn-primary:hover{background:var(--color-error-hover)}.duplicate-warning{background:#fffbeb;border:1px solid #fcd34d;border-radius:var(--radius-lg);padding:var(--spacing-md) 1.25rem;margin-bottom:var(--spacing-md)}.warning-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.warning-icon{color:#f59e0b;font-size:1.25rem}.warning-title{font-weight:var(--font-weight-semibold);color:var(--color-warning-hover)}.warning-message{color:#92400e;font-size:var(--font-size-body);margin:0 0 .75rem}.duplicate-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.duplicate-item{display:flex;align-items:center;justify-content:space-between;padding:.625rem .875rem;background:var(--color-white);border-radius:var(--radius-md);border:1px solid #fcd34d}.duplicate-info{display:flex;flex-direction:column;gap:.125rem}.duplicate-name{font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.duplicate-details{display:flex;gap:var(--spacing-md);font-size:var(--font-size-caption);color:var(--color-neutral-500)}.btn-link{background:none;border:none;color:var(--color-primary-900);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);cursor:pointer;text-decoration:underline}.checking-duplicates{padding:.75rem;text-align:center;color:var(--color-neutral-500);font-size:var(--font-size-body);font-style:italic}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:var(--spacing-lg)}.form-section{background:var(--color-white);border-radius:var(--radius-xl);padding:1.25rem;box-shadow:var(--shadow-sm)}.form-section h3{margin:0 0 var(--spacing-md);font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-neutral-200)}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.form-group.full-width{grid-column:1 / -1}.form-group label{font-size:.8125rem;font-weight:var(--font-weight-medium);color:var(--color-neutral-700)}.form-group input,.form-group select,.form-group textarea{padding:.625rem .875rem;border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:.9375rem;font-family:inherit}.form-actions{display:flex;justify-content:flex-end;gap:var(--spacing-md);padding-top:var(--spacing-md)}.btn-primary{padding:.625rem 1.25rem;background:var(--color-primary-900);color:var(--color-white);border:none;border-radius:var(--radius-md);font-size:.9375rem;font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--transition-normal)}.btn-book-confirm{padding:.625rem 1.25rem;background:#059669;color:var(--color-white);border:none;border-radius:var(--radius-md);font-size:.9375rem;font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--transition-normal)}.btn-book-confirm:hover:not(:disabled){background:#047857}.btn-book-confirm:disabled{background:var(--color-neutral-500);cursor:not-allowed}.btn-secondary{padding:.625rem 1.25rem;background:var(--color-white);color:var(--color-neutral-700);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:.9375rem;font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-normal)}.btn-secondary:hover{background:var(--color-neutral-50);border-color:var(--color-neutral-300)}.btn-back{padding:var(--spacing-sm) .875rem;background:transparent;color:var(--color-neutral-700);border:none;font-size:.9375rem;cursor:pointer}.btn-small{padding:.375rem .75rem;background:var(--color-neutral-100);color:var(--color-neutral-700);border:none;border-radius:var(--radius-sm);font-size:.8125rem;cursor:pointer}@media(max-width:1400px){.patients-module .patients-table .table-header,.patients-module .patients-table .table-row{grid-template-columns:1fr 2fr .6fr .6fr 1.5fr 1.3fr .8fr .8fr}.patients-module .col-email{display:none}}@media(max-width:1200px){.patients-module .patients-table .table-header,.patients-module .patients-table .table-row{grid-template-columns:1fr 2fr .6fr .6fr 1.5fr .8fr .8fr}.patients-module .col-email,.patients-module .col-phone{display:none}}@media(max-width:900px){.patients-module .patients-table .table-header,.patients-module .patients-table .table-row{grid-template-columns:1fr 2fr .6fr .6fr .8fr .8fr}.patients-module .col-email,.patients-module .col-phone,.patients-module .col-ic{display:none}}@media(max-width:768px){.patients-header{flex-direction:column;align-items:stretch}.search-section{max-width:none}.patients-module .patients-table .table-header,.patients-module .patients-table .table-row{grid-template-columns:1fr 2fr .6fr .8fr}.patients-module .col-email,.patients-module .col-phone,.patients-module .col-ic,.patients-module .col-panel,.patients-module .col-age{display:none}.detail-grid,.form-grid,.info-grid{grid-template-columns:1fr}}.tourism-tax-badge{display:inline-block;margin-left:.5rem;padding:.125rem .375rem;background:var(--color-warning-100, #fef3c7);color:var(--color-warning-700, #b45309);font-size:.6875rem;font-weight:var(--font-weight-semibold);border-radius:var(--radius-sm);text-transform:uppercase;vertical-align:middle}.field-hint.tourism-tax-warning{display:block;margin-top:.375rem;padding:.375rem .5rem;background:var(--color-warning-50, #fffbeb);border-left:3px solid var(--color-warning-500, #f59e0b);color:var(--color-warning-800, #92400e);font-size:.8125rem;border-radius:0 var(--radius-sm) var(--radius-sm) 0}.field-hint{display:block;margin-top:.25rem;font-size:.8125rem;color:var(--color-neutral-600)}.documents-section{grid-column:1 / -1}.documents-header.clickable{cursor:pointer;display:flex;align-items:center;justify-content:space-between;-webkit-user-select:none;-moz-user-select:none;user-select:none}.documents-header.clickable:hover{color:var(--color-primary-900)}.documents-header-text{display:flex;align-items:center;gap:.5rem}.documents-count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.5rem;height:1.5rem;padding:0 .375rem;background:var(--color-primary-900);color:#fff;font-size:.75rem;font-weight:var(--font-weight-semibold);border-radius:var(--radius-full, 9999px)}.collapse-icon{font-size:.875rem;transition:transform .2s ease;color:var(--color-neutral-500)}.collapse-icon.expanded{transform:rotate(0)}.collapse-icon:not(.expanded){transform:rotate(-90deg)}.documents-content{display:flex;flex-direction:column;gap:var(--spacing-lg);margin-top:var(--spacing-md)}.documents-loading{padding:var(--spacing-lg);text-align:center;color:var(--color-neutral-500);font-size:.875rem}.documents-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.documents-group-header{display:flex;align-items:center;gap:.375rem;font-size:.9375rem;font-weight:var(--font-weight-semibold);color:var(--color-neutral-800);margin:0;padding-bottom:.375rem;border-bottom:1px solid var(--color-neutral-100)}.doc-type-icon{font-size:1rem}.documents-group-count{display:inline-flex;align-items:center;justify-content:center;min-width:1.25rem;height:1.25rem;padding:0 .25rem;background:var(--color-neutral-100);color:var(--color-neutral-600);font-size:.6875rem;font-weight:var(--font-weight-semibold);border-radius:var(--radius-full, 9999px);margin-left:auto}.documents-empty{padding:.75rem 1rem;color:var(--color-neutral-400);font-size:.8125rem;font-style:italic}.documents-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-sm)}.document-card{background:var(--color-surface);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:.75rem;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.document-card:hover{border-color:var(--color-primary-300, #a3b1d6);box-shadow:0 2px 8px #4a63b314}.document-card-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.doc-type-badge{display:inline-block;padding:.125rem .5rem;font-size:.6875rem;font-weight:var(--font-weight-semibold);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.02em}.mc-badge{background:#dbeafe;color:#1d4ed8}.referral-badge{background:#fce7f3;color:#be185d}.lab-badge{background:#e0e7ff;color:#4338ca}.doc-number{font-size:.8125rem;font-weight:var(--font-weight-medium);color:var(--color-neutral-800)}.doc-status-badge{display:inline-block;margin-left:auto;padding:.0625rem .375rem;font-size:.625rem;font-weight:var(--font-weight-semibold);color:#fff;border-radius:var(--radius-sm);text-transform:capitalize}.document-card-body{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.5rem}.doc-info-row{display:flex;gap:.375rem;font-size:.8125rem;color:var(--color-neutral-700);line-height:1.4}.doc-info-label{flex-shrink:0;font-weight:var(--font-weight-medium);color:var(--color-neutral-500);min-width:3.5rem}.doc-info-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:180px}.doc-urgency-badge{font-weight:var(--font-weight-semibold)}.document-card-footer{display:flex;align-items:center;justify-content:space-between;padding-top:.5rem;border-top:1px solid var(--color-neutral-100)}.doc-date{font-size:.75rem;color:var(--color-neutral-400)}.btn-doc-print{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;font-size:.75rem;font-weight:var(--font-weight-medium);color:var(--color-primary-900);background:transparent;border:1px solid var(--color-neutral-200);border-radius:var(--radius-sm);cursor:pointer;transition:background .15s ease,border-color .15s ease}.btn-doc-print:hover{background:var(--color-neutral-50);border-color:var(--color-primary-300, #a3b1d6)}.documents-header-row{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);margin-bottom:0}.documents-header-row .documents-header{margin-bottom:0;border-bottom:none;padding-bottom:0;flex:1}.documents-create-buttons{display:flex;gap:.375rem;flex-shrink:0;flex-wrap:wrap;justify-content:flex-end}.btn-doc-create{display:inline-flex;align-items:center;padding:.25rem .625rem;font-size:.75rem;font-weight:var(--font-weight-semibold);border:1px solid var(--color-neutral-200);border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease;background:var(--color-white);color:var(--color-neutral-700);white-space:nowrap}.btn-doc-create:hover{border-color:var(--color-primary-300, #a3b1d6);color:var(--color-primary-900);background:var(--color-primary-50, #f0f4ff)}.btn-doc-mc:hover{border-color:#93c5fd;background:#eff6ff;color:#1d4ed8}.btn-doc-referral:hover{border-color:#f9a8d4;background:#fdf2f8;color:#be185d}.btn-doc-lab:hover{border-color:#a5b4fc;background:#eef2ff;color:#4338ca}.btn-doc-upload:hover{border-color:#86efac;background:#f0fdf4;color:#15803d}.visit-selector-modal{max-width:560px;width:90%}.visit-selector-modal .modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) 1.25rem;border-bottom:1px solid var(--color-neutral-200)}.visit-selector-modal .modal-header h3{margin:0;font-size:var(--font-size-h4);color:var(--color-neutral-900)}.visit-selector-modal .modal-body{padding:1.25rem;max-height:60vh;overflow-y:auto}.visit-selector-instruction{margin:0 0 var(--spacing-md);font-size:.875rem;color:var(--color-neutral-600);line-height:1.5}.visit-selector-loading,.visit-selector-empty{padding:var(--spacing-lg);text-align:center;color:var(--color-neutral-500);font-size:.875rem}.visit-selector-empty p{margin:0 0 .5rem}.visit-selector-note{color:var(--color-warning-hover, #92400e);background:var(--color-warning-light, #fffbeb);padding:.5rem .75rem;border-radius:var(--radius-md);font-size:.8125rem;display:inline-block}.visit-selector-list{display:flex;flex-direction:column;gap:.5rem}.visit-selector-item{display:flex;flex-direction:column;gap:.25rem;width:100%;padding:.75rem 1rem;background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);cursor:pointer;text-align:left;transition:all .15s ease}.visit-selector-item:hover{border-color:var(--color-primary-300, #a3b1d6);background:var(--color-primary-50, #f0f4ff);box-shadow:0 2px 4px #0000000d}.visit-selector-item-main{display:flex;align-items:center;gap:.75rem}.visit-selector-date{font-weight:var(--font-weight-semibold);font-size:.875rem;color:var(--color-neutral-900)}.visit-selector-time{font-size:.8125rem;color:var(--color-neutral-500)}.visit-selector-doctor{font-size:.8125rem;color:var(--color-neutral-700);margin-left:auto}.visit-selector-item-detail{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.visit-selector-reason{font-size:.8125rem;color:var(--color-neutral-600);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:300px}.visit-selector-status{font-size:.6875rem;font-weight:var(--font-weight-semibold);padding:.125rem .5rem;border-radius:var(--radius-sm);text-transform:capitalize;flex-shrink:0}.visit-selector-status.status-in_consultation{background:var(--color-info-light, #dbeafe);color:var(--color-primary-600, #4A63B3)}.visit-selector-status.status-with_pharmacy{background:#fef3c7;color:#b45309}.visit-selector-status.status-with_billing{background:#fce7f3;color:#be185d}.visit-selector-status.status-completed{background:var(--color-success-light, #d1fae5);color:var(--color-success-hover, #047857)}.visit-selector-item-disabled{opacity:.5;cursor:not-allowed;background:var(--color-neutral-50)}.visit-selector-item-disabled:hover{border-color:var(--color-neutral-200);background:var(--color-neutral-50);box-shadow:none}.visit-selector-already-badge{font-size:.6875rem;font-weight:var(--font-weight-semibold);padding:.125rem .5rem;border-radius:var(--radius-sm);background:#fef3c7;color:#92400e;flex-shrink:0}.visit-selector-subheading{font-size:.8125rem;color:var(--color-neutral-500);margin:.75rem 0 .25rem;padding-bottom:.25rem;border-bottom:1px solid var(--color-neutral-100)}.visit-selector-list-dimmed{margin-top:.75rem}.visit-selector-no-visit{display:block;width:100%;margin-top:var(--spacing-md);padding:.625rem;background:var(--color-neutral-50);border:1px dashed var(--color-neutral-300);border-radius:var(--radius-md);color:var(--color-neutral-600);font-size:.875rem;cursor:pointer;text-align:center;transition:all .15s ease}.visit-selector-no-visit:hover{background:var(--color-neutral-100);border-color:var(--color-neutral-400);color:var(--color-neutral-800)}@media(max-width:768px){.documents-header-row{flex-direction:column;align-items:flex-start}.documents-create-buttons{justify-content:flex-start;margin-top:.375rem}}.scheduling-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.625rem .875rem;background:var(--color-neutral-50, #f9fafb);border:1px dashed var(--color-neutral-300, #d1d5db);border-radius:.5rem;cursor:pointer;transition:all .15s;font-size:.9rem}.scheduling-toggle:hover{background:var(--color-primary-50, #eff6ff);border-color:var(--color-primary-300, #93c5fd)}.scheduling-toggle.active{background:var(--color-primary-50, #eff6ff);border-color:var(--color-primary-400, #60a5fa);border-style:solid}.scheduling-toggle-label{color:var(--color-primary-700, #1d4ed8);font-weight:500}.scheduling-toggle-icon{font-size:.75rem;color:var(--color-neutral-500, #6b7280)}.scheduling-section{margin-top:.75rem;padding:.875rem;background:var(--color-neutral-50, #f9fafb);border-radius:.5rem;border:1px solid var(--color-neutral-200, #e5e7eb)}.scheduling-date-row{margin-bottom:.75rem}.scheduling-date-row label{display:block;font-size:.85rem;font-weight:600;color:var(--color-neutral-600, #4b5563);margin-bottom:.25rem}.scheduling-date-row input[type=date]{width:100%;padding:.5rem .75rem;border:1px solid var(--color-neutral-300, #d1d5db);border-radius:.375rem;font-size:.9rem}.scheduling-hint{font-size:.85rem;color:var(--color-neutral-500, #6b7280);font-style:italic;padding:.5rem 0}.scheduling-loading,.scheduling-empty{font-size:.85rem;color:var(--color-neutral-500, #6b7280);padding:1rem 0;text-align:center}.scheduling-slot-group{margin-bottom:.75rem}.scheduling-slot-group-label{font-size:.8rem;font-weight:600;color:var(--color-neutral-600, #4b5563);display:block;margin-bottom:.375rem;text-transform:uppercase;letter-spacing:.03em}.scheduling-slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:.375rem}.scheduling-slot-btn{padding:.375rem .25rem;border:1px solid var(--color-neutral-300, #d1d5db);border-radius:.375rem;background:#fff;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .15s;text-align:center;color:var(--color-neutral-700, #374151)}.scheduling-slot-btn:hover{border-color:var(--color-primary-500, #3b82f6);background:var(--color-primary-50, #eff6ff)}.scheduling-slot-btn.selected{background:var(--color-primary-500, #3b82f6);border-color:var(--color-primary-500, #3b82f6);color:#fff;font-weight:600}.scheduling-slot-count{font-size:.8rem;color:var(--color-neutral-500, #6b7280);text-align:right;margin-top:.375rem}.payment-modal-overlay{position:fixed;inset:0;background:#11182799;display:flex;align-items:center;justify-content:center;padding:1rem;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.payment-modal{background:#fff;border-radius:1rem;box-shadow:0 25px 50px -12px #00000040;width:100%;max-width:640px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;position:relative;z-index:1001}.payment-modal button,.payment-modal input,.payment-modal select,.payment-modal .btn-primary,.payment-modal .btn-secondary,.payment-modal .btn-confirm{position:relative;z-index:1}.payment-modal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1.5rem;padding:1.25rem 1.5rem;background:var(--color-neutral-50, #f9fafb);border-bottom:1px solid var(--color-neutral-200, #e5e7eb)}.header-left{flex:0 1 auto;min-width:0}.header-title{font-size:1.125rem;font-weight:600;color:var(--color-neutral-900, #111827);margin:0;white-space:nowrap}.header-invoice{font-size:.875rem;color:var(--color-neutral-500, #6b7280);margin:.25rem 0 0;white-space:nowrap}.header-right{text-align:right;flex:0 1 auto;min-width:0}.header-patient{font-weight:500;color:var(--color-neutral-900, #111827);margin:0;white-space:nowrap}.header-ic{font-size:.875rem;color:var(--color-neutral-500, #6b7280);margin:.125rem 0 0;white-space:nowrap}.modal-close-btn{position:absolute;top:1rem;right:1rem;width:2rem;height:2rem;border:none;background:transparent;font-size:1.5rem;color:var(--color-neutral-400, #9ca3af);cursor:pointer;border-radius:.375rem;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.modal-close-btn:hover{background:var(--color-neutral-100, #f3f4f6);color:var(--color-neutral-600, #4b5563)}.payment-steps{display:flex;align-items:center;justify-content:center;padding:1rem 1.5rem;background:var(--color-neutral-50, #f9fafb);border-bottom:1px solid var(--color-neutral-200, #e5e7eb);gap:.5rem}.step-item{display:flex;align-items:center}.step-circle{width:2rem;height:2rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:500;background:var(--color-neutral-200, #e5e7eb);color:var(--color-neutral-500, #6b7280);transition:all .2s ease}.step-circle.active{background:var(--color-primary-600, #2563eb);color:#fff}.step-circle.completed{background:var(--color-success-500, #22c55e);color:#fff}.step-label{margin-left:.5rem;font-size:.875rem;color:var(--color-neutral-500, #6b7280)}.step-label.active{font-weight:500;color:var(--color-neutral-900, #111827)}.step-connector{width:3rem;height:2px;background:var(--color-neutral-200, #e5e7eb);margin:0 .75rem}.payment-step-content{padding:1.5rem;overflow-y:auto;flex:1}.step-title{font-size:1rem;font-weight:500;color:var(--color-neutral-900, #111827);margin:0 0 1rem}.charges-table-wrapper{border:1px solid var(--color-neutral-200, #e5e7eb);border-radius:.5rem;overflow:hidden;margin-bottom:1rem}.charges-table{width:100%;border-collapse:collapse}.charges-table th,.charges-table td{padding:.75rem 1rem;text-align:left;font-size:.875rem}.charges-table th{background:var(--color-neutral-50, #f9fafb);font-weight:500;color:var(--color-neutral-600, #4b5563)}.charges-table tbody tr{border-top:1px solid var(--color-neutral-100, #f3f4f6)}.charges-table tbody td{color:var(--color-neutral-900, #111827)}.charges-table .text-right{text-align:right}.charges-table tfoot{background:var(--color-neutral-50, #f9fafb)}.charges-table tfoot tr{border-top:1px solid var(--color-neutral-200, #e5e7eb)}.charges-table .subtotal-row td,.charges-table .discount-row td,.charges-table .tax-row td{padding-top:.5rem;padding-bottom:.5rem;font-size:.8125rem;color:var(--color-neutral-600, #4b5563)}.charges-table .discount-row td{color:var(--color-success-600, #16a34a)}.charges-table .total-row td{font-weight:600;color:var(--color-neutral-900, #111827)}.charges-table .total-amount{font-size:1.125rem;font-weight:700}.einvoice-toggle-section{background:var(--color-primary-50, #eff6ff);border:1px solid var(--color-primary-200, #bfdbfe);border-radius:.5rem;padding:1rem;margin-bottom:1.5rem}.einvoice-toggle-content{display:flex;align-items:center;justify-content:space-between;gap:1rem}.einvoice-info{flex:1}.einvoice-question{font-weight:500;color:var(--color-primary-900, #1e3a8a);margin:0}.einvoice-description{font-size:.875rem;color:var(--color-primary-700, #1d4ed8);margin:.25rem 0 0}.toggle-switch{position:relative;width:2.75rem;height:1.5rem;min-width:2.75rem;background:var(--color-neutral-300, #d1d5db);border:none;border-radius:999px;cursor:pointer;transition:background .2s ease;flex-shrink:0;align-self:center;-moz-appearance:none;appearance:none;-webkit-appearance:none;padding:0;margin:0;outline:none;font-size:0;line-height:0;overflow:hidden}.toggle-switch:focus{outline:2px solid var(--color-primary-300, #93c5fd);outline-offset:2px}.toggle-switch:focus:not(:focus-visible){outline:none}.toggle-switch.active{background:var(--color-primary-600, #2563eb)}.einvoice-toggle-section .toggle-switch:after,.einvoice-toggle-section .toggle-switch:before{content:none!important;display:none!important}.einvoice-toggle-section .toggle-slider{position:absolute!important;top:50%!important;left:.125rem!important;width:1.25rem!important;height:1.25rem!important;background:#fff!important;border-radius:50%!important;transition:transform .2s ease!important;box-shadow:0 1px 3px #0000001a!important;transform:translateY(-50%)!important}.einvoice-toggle-section .toggle-slider:before,.einvoice-toggle-section .toggle-slider:after{content:none!important;display:none!important}.einvoice-toggle-section .toggle-switch.active .toggle-slider{transform:translateY(-50%) translate(1.25rem)!important}.payment-modal .btn-primary{background:var(--color-primary-600, #2563eb);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:.5rem;font-size:1rem;font-weight:500;cursor:pointer;transition:background .15s ease}.payment-modal .btn-primary:hover{background:var(--color-primary-700, #1d4ed8);color:#fff!important}.btn-secondary{background:#fff;color:var(--color-neutral-700, #374151);border:1px solid var(--color-neutral-300, #d1d5db);padding:.75rem 1.5rem;border-radius:.5rem;font-size:1rem;font-weight:500;cursor:pointer;transition:all .15s ease}.btn-secondary:hover{background:var(--color-neutral-50, #f9fafb);border-color:var(--color-neutral-400, #9ca3af)}.btn-full{width:100%}.review-step-actions{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.btn-show-invoice{width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem}.btn-show-invoice:before{content:"🖨️";font-size:1rem}.payment-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.payment-total{font-size:1.5rem;font-weight:700;color:var(--color-neutral-900, #111827);margin:0}.payment-methods-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-bottom:1.5rem}.payment-method-btn{display:flex;flex-direction:column;align-items:flex-start;padding:1rem;border:2px solid var(--color-neutral-200, #e5e7eb);border-radius:.5rem;background:#fff;cursor:pointer;transition:all .15s ease}.payment-method-btn:hover{border-color:var(--color-neutral-300, #d1d5db)}.payment-method-btn.selected{border-color:var(--color-primary-600, #2563eb);background:var(--color-primary-50, #eff6ff)}.method-icon{font-size:1.5rem;margin-bottom:.25rem}.method-label{font-weight:500;color:var(--color-neutral-900, #111827)}.method-details{background:var(--color-neutral-50, #f9fafb);border-radius:.5rem;padding:1rem;margin-bottom:1.5rem}.detail-label{display:block;font-size:.875rem;font-weight:500;color:var(--color-neutral-700, #374151);margin-bottom:.5rem}.cash-quick-amounts{display:flex;gap:.5rem;margin-bottom:.75rem;flex-wrap:wrap}.quick-amount-btn{padding:.375rem .75rem;background:#fff;border:1px solid var(--color-neutral-300, #d1d5db);border-radius:.375rem;font-size:.875rem;color:var(--color-neutral-700, #374151);cursor:pointer;transition:all .15s ease}.quick-amount-btn:hover{background:var(--color-neutral-100, #f3f4f6)}.cash-input,.reference-input{width:100%;padding:.625rem .75rem;border:1px solid var(--color-neutral-300, #d1d5db);border-radius:.5rem;font-size:1rem}.cash-input:focus,.reference-input:focus{outline:none;border-color:var(--color-primary-500, #3b82f6);box-shadow:0 0 0 3px #3b82f61a}.cash-change-row{display:flex;justify-content:space-between;margin-top:.75rem;font-size:.875rem}.change-label{color:var(--color-neutral-600, #4b5563)}.change-amount{font-weight:600;color:var(--color-success-600, #16a34a)}.terminal-prompt,.transfer-prompt{font-size:.875rem;color:var(--color-neutral-600, #4b5563);margin:0 0 .75rem}.ewallet-providers{display:flex;flex-wrap:wrap;gap:.5rem}.ewallet-btn{padding:.5rem .875rem;background:#fff;border:1px solid var(--color-neutral-300, #d1d5db);border-radius:.5rem;font-size:.875rem;cursor:pointer;transition:all .15s ease}.ewallet-btn:hover{background:var(--color-neutral-100, #f3f4f6)}.ewallet-btn.selected{background:var(--color-primary-600, #2563eb);border-color:var(--color-primary-600, #2563eb);color:#fff}.step-actions{display:flex;gap:.75rem}.btn-secondary{flex:1;padding:.75rem 1.5rem;background:#fff;border:1px solid var(--color-neutral-300, #d1d5db);border-radius:.5rem;font-size:1rem;font-weight:500;color:var(--color-neutral-700, #374151);cursor:pointer;transition:background .15s ease}.btn-secondary:hover{background:var(--color-neutral-50, #f9fafb)}.btn-confirm{flex:1;padding:.75rem 1.5rem;background:var(--color-success-600, #16a34a);border:none;border-radius:.5rem;font-size:1rem;font-weight:500;color:#fff;cursor:pointer;transition:background .15s ease}.btn-confirm:hover{background:var(--color-success-700, #15803d)}.btn-confirm.disabled{background:var(--color-neutral-200, #e5e7eb);color:var(--color-neutral-500, #6b7280);cursor:not-allowed}.processing-text{display:flex;align-items:center;justify-content:center;gap:.5rem}.spinner{width:1.25rem;height:1.25rem;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.receipt-step{display:flex;flex-direction:column;gap:1rem}.success-message{text-align:center;margin-bottom:.5rem}.success-icon{width:4rem;height:4rem;background:var(--color-success-100, #dcfce7);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto .75rem}.success-icon svg{width:2rem;height:2rem;color:var(--color-success-600, #16a34a)}.success-title{font-size:1.25rem;font-weight:600;color:var(--color-neutral-900, #111827);margin:0}.success-subtitle{color:var(--color-neutral-500, #6b7280);margin:.25rem 0 0}.receipt-preview{border:1px solid var(--color-neutral-200, #e5e7eb);border-radius:.5rem;padding:1rem;background:var(--color-neutral-50, #f9fafb);font-size:.8125rem}.receipt-header{text-align:center;padding-bottom:.75rem;border-bottom:1px dashed var(--color-neutral-300, #d1d5db);margin-bottom:.75rem}.receipt-clinic-name{font-weight:700;color:var(--color-neutral-900, #111827);margin:0}.receipt-clinic-address,.receipt-clinic-reg{color:var(--color-neutral-500, #6b7280);margin:.125rem 0 0;font-size:.75rem}.receipt-details{margin-bottom:.75rem}.receipt-row{display:flex;justify-content:space-between;margin-bottom:.25rem}.receipt-label{color:var(--color-neutral-500, #6b7280)}.receipt-value{font-weight:500}.receipt-items{padding:.75rem 0;border-top:1px dashed var(--color-neutral-300, #d1d5db);border-bottom:1px dashed var(--color-neutral-300, #d1d5db)}.receipt-item-row{display:flex;justify-content:space-between;margin-bottom:.25rem}.item-desc{flex:1;color:var(--color-neutral-600, #4b5563);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-right:.5rem}.receipt-totals{padding:.75rem 0;border-bottom:1px dashed var(--color-neutral-300, #d1d5db)}.receipt-total-row{display:flex;justify-content:space-between;font-weight:700}.total-bold{font-size:1rem}.receipt-payment-method{display:flex;justify-content:space-between;font-size:.75rem;color:var(--color-neutral-500, #6b7280);margin-top:.25rem}.receipt-footer{padding-top:.75rem;font-size:.75rem;color:var(--color-neutral-500, #6b7280)}.receipt-footer p{margin:.125rem 0}.einvoice-status{margin-top:.75rem;padding:.5rem;border-radius:.375rem;text-align:center;font-size:.75rem}.einvoice-green{background:var(--color-success-100, #dcfce7);color:var(--color-success-800, #166534)}.einvoice-amber{background:var(--color-warning-100, #fef3c7);color:var(--color-warning-800, #92400e)}.einvoice-blue{background:var(--color-primary-100, #dbeafe);color:var(--color-primary-800, #1e40af)}.einvoice-gray{background:var(--color-neutral-100, #f3f4f6);color:var(--color-neutral-600, #4b5563)}.einvoice-validated{display:flex;align-items:center;justify-content:center;gap:.5rem}.qr-code{font-family:monospace}.einvoice-pending p{margin:0}.einvoice-email-note{margin-top:.25rem!important;font-size:.6875rem}.einvoice-consolidated{margin:0}.receipt-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.btn-print,.btn-email{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;border-radius:.5rem;font-size:1rem;font-weight:500;cursor:pointer;transition:background .15s ease;border:none}.btn-print{background:var(--color-neutral-900, #111827);color:#fff}.btn-print:hover{background:var(--color-neutral-800, #1f2937)}.btn-email{background:var(--color-primary-600, #2563eb);color:#fff}.btn-email:hover{background:var(--color-primary-700, #1d4ed8)}.btn-icon{width:1.25rem;height:1.25rem}.btn-text-link{display:block;width:100%;padding:.5rem;background:transparent;border:none;font-size:.875rem;color:var(--color-neutral-600, #4b5563);cursor:pointer;text-align:center;transition:color .15s ease}.btn-text-link:hover{color:var(--color-neutral-900, #111827)}.btn-done{width:100%;padding:.75rem 1.5rem;background:#fff;border:1px solid var(--color-neutral-300, #d1d5db);border-radius:.5rem;font-size:1rem;font-weight:500;color:var(--color-neutral-700, #374151);cursor:pointer;transition:background .15s ease;margin-top:.5rem}.btn-done:hover{background:var(--color-neutral-50, #f9fafb)}@media(max-width:640px){.payment-modal{max-width:100%;max-height:100vh;border-radius:0}.payment-modal-header{flex-direction:column;gap:.5rem}.header-right{text-align:left}.payment-steps{padding:.75rem 1rem}.step-connector{width:1.5rem;margin:0 .375rem}.step-label{display:none}.payment-methods-grid{grid-template-columns:1fr}.payment-method-btn{flex-direction:row;align-items:center;gap:.75rem}.method-icon{margin-bottom:0}.receipt-actions{grid-template-columns:1fr}.step-actions{flex-direction:column-reverse}.review-step-actions{gap:.5rem}}.input-label.required:after{content:" *";color:#ef4444}.input-label{display:block;font-size:.875rem;font-weight:500;color:var(--color-neutral-700, #374151);margin-bottom:.375rem}.input-hint{font-size:.75rem;color:var(--color-neutral-500, #6b7280);margin-top:.25rem}.terminal-instructions{background:var(--color-blue-50, #eff6ff);border:1px solid var(--color-blue-200, #bfdbfe);border-radius:.5rem;padding:1rem;margin-bottom:1rem}.terminal-steps{margin:.75rem 0 0;padding-left:1.25rem;font-size:.875rem;color:var(--color-neutral-600, #4b5563)}.terminal-steps li{margin-bottom:.25rem}.approval-code-input{margin-top:.5rem}.ewallet-instructions{background:var(--color-purple-50, #faf5ff);border:1px solid var(--color-purple-200, #e9d5ff);border-radius:.5rem;padding:1rem;margin:1rem 0;text-align:center}.instruction-text{margin:0 0 .5rem;color:var(--color-neutral-700, #374151)}.instruction-amount{margin:0;font-size:1.125rem}.confirmation-checkbox{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;background:var(--color-green-50, #f0fdf4);border:1px solid var(--color-green-200, #bbf7d0);border-radius:.5rem;margin-top:1rem;cursor:pointer}.confirmation-checkbox input[type=checkbox]{width:1.25rem;height:1.25rem;margin-top:.125rem;cursor:pointer}.checkbox-label{font-size:.875rem;color:var(--color-neutral-700, #374151);font-weight:500}.transfer-instructions{background:var(--color-amber-50, #fffbeb);border:1px solid var(--color-amber-200, #fde68a);border-radius:.5rem;padding:1rem;margin-bottom:1rem}.transfer-prompt{margin:0 0 .5rem;color:var(--color-neutral-700, #374151)}.transfer-warning{margin:0;font-size:.875rem;color:var(--color-amber-700, #b45309);font-weight:500}.reference-input-group{margin-top:.5rem}.billing-module{display:flex;flex-direction:column;gap:var(--spacing-lg);width:100%;box-sizing:border-box}.billing-summary{display:flex;flex-wrap:nowrap;gap:var(--spacing-md);width:100%;box-sizing:border-box}.billing-module .summary-card{flex:1 1 0;min-width:0;max-width:none;background:var(--color-white);border-radius:var(--radius-xl);padding:1.25rem;text-align:center;box-shadow:var(--shadow-sm)}.summary-card.highlight{background:linear-gradient(135deg,var(--color-primary-900) 0%,var(--color-primary-950) 100%);color:var(--color-white)}.summary-value{display:block;font-size:var(--spacing-lg);font-weight:var(--font-weight-bold);color:var(--color-neutral-800)}.summary-card.highlight .summary-value{color:var(--color-white)}.summary-label{font-size:var(--font-size-caption);color:var(--color-neutral-500);text-transform:uppercase;letter-spacing:.03em}.summary-card.highlight .summary-label{color:#fffc}.filter-section{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-md)}.filter-row{display:flex;align-items:center;gap:var(--spacing-lg);flex-wrap:wrap}.date-filter{display:flex;gap:var(--spacing-xs);background:var(--color-primary-50);padding:var(--spacing-xs);border-radius:var(--radius-lg);border:1px solid var(--color-primary-200)}.date-filter .filter-tab.active{background:var(--color-primary-600);color:var(--color-white)}.filter-tabs{display:flex;gap:var(--spacing-xs);background:var(--color-neutral-100);padding:var(--spacing-xs);border-radius:var(--radius-lg)}.filter-tab{padding:var(--spacing-sm) var(--spacing-md);border:none;background:transparent;border-radius:var(--radius-md);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);color:var(--color-neutral-600);cursor:pointer;transition:all var(--transition-normal)}.filter-tab:hover{color:var(--color-neutral-800)}.invoices-table{background:var(--color-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden}.table-header{display:grid;grid-template-columns:130px 1fr 120px 90px 90px 80px 80px 90px 120px;padding:.875rem var(--spacing-md);background:var(--color-neutral-50);border-bottom:1px solid var(--color-neutral-200);font-weight:var(--font-weight-semibold);font-size:.8125rem;color:var(--color-neutral-600);text-transform:uppercase;letter-spacing:.03em}.table-row{display:grid;grid-template-columns:130px 1fr 120px 90px 90px 80px 80px 90px 120px;padding:.875rem var(--spacing-md);border-bottom:1px solid var(--color-neutral-200);align-items:center;cursor:pointer;transition:background var(--transition-normal)}.col-number{font-weight:var(--font-weight-semibold);color:var(--color-primary-900)}.col-patient{font-weight:var(--font-weight-medium);color:var(--color-neutral-800);min-width:0}.col-patient .patient-info{display:flex;flex-direction:column;gap:2px;min-width:0}.col-patient .patient-info a{font-weight:var(--font-weight-semibold);color:var(--color-neutral-800);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.col-patient .patient-info a:hover{color:var(--color-primary-700);text-decoration:underline}.col-patient .patient-number{font-size:var(--font-size-caption);color:var(--color-primary-600);font-family:SF Mono,Monaco,monospace;cursor:pointer;padding:1px 4px;border-radius:var(--radius-xs);transition:background .15s ease}.col-patient .patient-number:hover{background:var(--color-primary-50)}.col-contact{font-size:var(--font-size-body);color:var(--color-neutral-600)}.col-contact .contact-phone{font-family:SF Mono,Monaco,monospace;font-size:var(--font-size-caption)}.col-contact .no-contact{color:var(--color-neutral-400)}.col-actions .action-buttons{display:flex;gap:var(--spacing-xs);flex-wrap:nowrap}.btn-small.btn-print{background:var(--color-neutral-100);color:var(--color-neutral-700);border:1px solid var(--color-neutral-300)}.btn-small.btn-print:hover{background:var(--color-neutral-200)}.col-amount,.col-paid,.col-due{font-family:SF Mono,Monaco,monospace;font-size:var(--font-size-body)}.col-due{color:var(--color-error-700);font-weight:var(--font-weight-semibold)}.status-badge.status-draft{background:var(--color-neutral-200);color:var(--color-neutral-600)}.status-badge.status-pending{background:var(--color-warning-100);color:var(--color-warning-700)}.status-badge.status-partial{background:var(--color-info-100);color:var(--color-primary-950)}.status-badge.status-paid{background:var(--color-success-200);color:var(--color-success-800)}.status-badge.status-cancelled,.status-badge.status-void{background:var(--color-error-200);color:var(--color-error-700)}.btn-small{padding:.375rem var(--spacing-md);border:none;border-radius:var(--radius-sm);font-size:.8125rem;font-weight:var(--font-weight-medium);cursor:pointer}.btn-small.btn-pay{background:var(--color-success-600);color:var(--color-white)}.btn-small.btn-pay:hover{background:var(--color-success-800)}.btn-danger{padding:.625rem 1.25rem;background:var(--color-error-700);color:var(--color-white);border:none;border-radius:var(--radius-md);font-size:.9375rem;font-weight:var(--font-weight-medium);cursor:pointer}.btn-danger:hover{background:var(--color-error-800)}.invoice-detail-view{display:flex;flex-direction:column;gap:var(--spacing-lg)}.invoice-title{flex:1;display:flex;align-items:center;gap:var(--spacing-md)}.invoice-title h2{margin:0;font-size:var(--spacing-lg);color:var(--color-neutral-800)}.detail-actions{display:flex;gap:var(--spacing-sm)}.invoice-content{background:var(--color-white);border-radius:var(--radius-xl);padding:var(--spacing-lg);box-shadow:var(--shadow-sm)}.invoice-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-xl);margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-neutral-200)}.info-section h3{margin:0 0 var(--spacing-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);color:var(--color-neutral-500);text-transform:uppercase;letter-spacing:.05em}.info-section p{margin:var(--spacing-xs) 0;color:var(--color-neutral-600)}.patient-name{font-size:1.125rem;font-weight:var(--font-weight-semibold);color:var(--color-neutral-800)!important}.panel-info{font-size:var(--font-size-body);color:var(--color-success-600)!important}.invoice-items{margin-bottom:var(--spacing-lg)}.invoice-items h3{margin:0 0 var(--spacing-md);font-size:var(--spacing-md);font-weight:var(--font-weight-semibold);color:var(--color-neutral-800)}.invoice-items table,.payments-section table{width:100%;border-collapse:collapse}.invoice-items th,.payments-section th{text-align:left;padding:var(--spacing-md);background:var(--color-neutral-50);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);color:var(--color-neutral-600);text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid var(--color-neutral-200)}.invoice-items td,.payments-section td{padding:var(--spacing-md);border-bottom:1px solid var(--color-neutral-200);color:var(--color-neutral-600)}.invoice-items tr:last-child td,.payments-section tr:last-child td{border-bottom:none}.invoice-totals{max-width:300px;margin-left:auto;padding:var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-lg)}.total-row{display:flex;justify-content:space-between;padding:var(--spacing-sm) 0;color:var(--color-neutral-600)}.total-row.discount{color:var(--color-success-600)}.total-row.grand{font-weight:var(--font-weight-bold);font-size:1.125rem;color:var(--color-neutral-800);border-top:1px solid var(--color-neutral-200);padding-top:var(--spacing-md);margin-top:var(--spacing-sm)}.total-row.paid{color:var(--color-success-600)}.total-row.due{font-weight:var(--font-weight-bold);color:var(--color-error-700)}.payments-section{margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:1px solid var(--color-neutral-200)}.payments-section h3{margin:0 0 var(--spacing-md);font-size:var(--spacing-md);font-weight:var(--font-weight-semibold);color:var(--color-neutral-800)}.notes-section{margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--color-neutral-200)}.notes-section h3{margin:0 0 var(--spacing-sm);font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-500)}.notes-section p{margin:0;color:var(--color-neutral-600);white-space:pre-wrap}.payment-form-view{max-width:500px}.payment-info{background:var(--color-neutral-50);padding:var(--spacing-md);border-radius:var(--radius-lg);margin-bottom:var(--spacing-lg)}.payment-info p{margin:var(--spacing-xs) 0;color:var(--color-neutral-600)}.payment-form{background:var(--color-white);padding:var(--spacing-lg);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm)}.form-group label{display:block;margin-bottom:.375rem;font-size:var(--font-size-body);font-weight:var(--font-weight-medium);color:var(--color-neutral-600)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.625rem .875rem;border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:.9375rem;font-family:inherit}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary-900);box-shadow:0 0 0 3px #3182ce1a}.form-actions{display:flex;justify-content:flex-end;gap:var(--spacing-md);margin-top:var(--spacing-lg)}.btn-panel{padding:.625rem 1.25rem;background:var(--color-primary-900);color:var(--color-white);border:none;border-radius:var(--radius-md);font-size:.9375rem;font-weight:var(--font-weight-medium);cursor:pointer}.btn-panel:hover{background:var(--color-primary-600)}.btn-success{padding:.625rem 1.25rem;background:var(--color-success, #059669);color:var(--color-white, #ffffff);border:none;border-radius:var(--radius-md);font-size:.9375rem;font-weight:var(--font-weight-medium);cursor:pointer}.btn-success:hover:not(:disabled){background:var(--color-success-hover, #047857)}.btn-success:disabled{background:var(--color-neutral-400, #9ca3af);cursor:not-allowed}.panel-claim-form-view{max-width:600px}.claim-invoice-info{background:var(--color-neutral-50);padding:var(--spacing-md);border-radius:var(--radius-lg);margin-bottom:var(--spacing-lg);border-left:4px solid var(--color-primary-900)}.claim-invoice-info p{margin:var(--spacing-xs) 0;color:var(--color-neutral-600)}.panel-claim-form{background:var(--color-white);padding:var(--spacing-lg);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm)}.eligibility-status{margin:var(--spacing-md) 0;padding:var(--spacing-md);border-radius:var(--radius-lg);border:1px solid var(--color-neutral-200)}.eligibility-status.checking{background:var(--color-neutral-50);color:var(--color-neutral-600);font-style:italic}.eligibility-status.eligible{background:var(--color-success-50);border-color:var(--color-success-200)}.eligibility-status.not-eligible{background:var(--color-warning-50);border-color:var(--color-warning-200)}.eligibility-details{display:flex;flex-direction:column;gap:var(--spacing-sm)}.eligibility-info{font-size:var(--font-size-caption);color:var(--color-neutral-700)}.eligibility-info p{margin:var(--spacing-xs) 0}.eligibility-info .warning{color:var(--color-warning-600);font-weight:var(--font-weight-semibold);margin-top:var(--spacing-sm)}.eligibility-not-found{display:flex;flex-direction:column;gap:var(--spacing-xs)}.eligibility-not-found p{margin:0;font-size:var(--font-size-caption);color:var(--color-neutral-600)}.eligibility-not-found .hint{color:var(--color-neutral-500);font-style:italic}.status-badge{display:inline-block;padding:var(--spacing-xxs) var(--spacing-sm);border-radius:var(--radius-full);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold)}.status-badge.eligible{background:var(--color-success-100);color:var(--color-success-700)}.status-badge.not-eligible{background:var(--color-warning-100);color:var(--color-warning-700)}.claim-items-preview{margin:var(--spacing-lg) 0;padding:var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-lg)}.claim-items-preview h4{margin:0 0 var(--spacing-md);font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-600)}.claim-items-preview table{width:100%;border-collapse:collapse}.claim-items-preview th{text-align:left;padding:var(--spacing-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);color:var(--color-neutral-500);border-bottom:1px solid var(--color-neutral-200)}.claim-items-preview td{padding:var(--spacing-sm);color:var(--color-neutral-600);border-bottom:1px solid var(--color-neutral-200)}.claim-items-preview tfoot td{padding-top:var(--spacing-md);border-bottom:none;background:var(--color-neutral-100)}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;padding:var(--spacing-md)}.modal-content{background:var(--color-white);border-radius:var(--radius-xl);max-width:400px;width:100%;max-height:90vh;overflow-y:auto}.completion-modal .modal-header{padding:1.25rem var(--spacing-lg);border-bottom:1px solid var(--color-neutral-200)}.completion-modal .modal-header h3{margin:0;font-size:1.125rem;color:var(--color-neutral-800)}.completion-modal .modal-body{padding:var(--spacing-lg);text-align:center}.completion-icon{width:60px;height:60px;margin:0 auto var(--spacing-md);background:var(--color-success-light, #D1FAE5);color:var(--color-success, #059669);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--spacing-xl)}.completion-modal .modal-body p{margin:var(--spacing-sm) 0;color:var(--color-neutral-600)}.completion-modal .modal-footer.completion-footer{display:flex;justify-content:center;align-items:center;gap:12px;padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--color-neutral-200)}.completion-modal .btn-skip{background:#e5e7eb;color:#dc2626;border:none;padding:.625rem 1.25rem;border-radius:8px;font-weight:500;font-size:.9375rem;cursor:pointer}.completion-modal .btn-skip:hover{background:#d1d5db}.status-badge.status-issued{background:var(--color-info-100);color:var(--color-primary-950)}.status-badge.status-partially_paid{background:var(--color-warning-100);color:var(--color-warning-700)}.payment-status{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}.payment-status.status-completed{background:var(--color-success-200);color:var(--color-success-800)}.payment-status.status-reversed{background:var(--color-error-200);color:var(--color-error-800)}.reversed-row{background:#fef5f5;opacity:.7}.reversed-row td{text-decoration:line-through;color:var(--color-neutral-400)}.reversed-row .payment-status,.reversed-row .reversal-note{text-decoration:none}.reversal-note{font-size:var(--font-size-caption);color:var(--color-error-800);font-style:italic}.btn-small.btn-danger{background:var(--color-error-400);color:var(--color-error-800)}.btn-small.btn-danger:hover{background:var(--color-error-300)}.deadline-info{color:var(--color-primary-800);background:var(--color-info-50);padding:var(--spacing-md) var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-md);font-size:var(--font-size-body)}.deadline-warning{color:var(--color-error-800);background:var(--color-error-50);padding:var(--spacing-md) var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-md);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);border-left:4px solid var(--color-error-400)}@media(max-width:1024px){.table-header,.table-row{grid-template-columns:100px 1fr 90px 90px 80px}.col-paid,.col-date,.col-actions{display:none}}@media(max-width:768px){.billing-summary{overflow-x:auto}.billing-summary .summary-card{min-width:100px}.table-header,.table-row{grid-template-columns:1fr 100px 80px}.col-amount{display:none}.detail-header{flex-direction:column;align-items:flex-start}.invoice-totals{max-width:none}.detail-actions{flex-direction:column;width:100%}.detail-actions button{width:100%}.completion-modal .modal-footer{flex-direction:column}.completion-modal .modal-footer button{width:100%}}.settlement-view{background:var(--color-white);border-radius:var(--radius-xl);padding:var(--spacing-lg);box-shadow:var(--shadow-sm)}.settlement-header{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);flex-wrap:wrap}.settlement-header h2{margin:0;font-size:1.25rem;font-weight:var(--font-weight-semibold);flex:1}.settlement-badge{padding:.375rem var(--spacing-md);border-radius:var(--radius-md);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);text-transform:uppercase}.settlement-badge.status-open{background:var(--color-neutral-200);color:var(--color-neutral-500)}.settlement-badge.status-in_progress{background:var(--color-warning-100);color:var(--color-warning-800)}.settlement-badge.status-reconciled{background:var(--color-success-100);color:var(--color-success-700)}.settlement-badge.status-reconciled_with_discrepancy{background:var(--color-warning-100);color:var(--color-warning-900)}.summary-card.settlement-card{cursor:pointer;transition:all var(--transition-normal);border:2px solid transparent}.summary-card.settlement-card:hover{border-color:var(--color-primary-900);transform:translateY(-2px)}.settlement-status{display:block;font-size:.625rem;color:var(--color-neutral-500);margin-top:var(--spacing-xs)}.settlement-summary{background:var(--color-neutral-50);border-radius:var(--radius-lg);padding:var(--spacing-md);margin-bottom:var(--spacing-lg)}.summary-row{display:flex;justify-content:space-between;padding:var(--spacing-sm) 0;border-bottom:1px solid var(--color-neutral-200)}.summary-row:last-child{border-bottom:none}.summary-row.total{border-top:2px solid var(--color-neutral-300);margin-top:var(--spacing-sm);padding-top:var(--spacing-md);font-weight:var(--font-weight-semibold)}.start-reconciliation{text-align:center;padding:var(--spacing-xl);background:var(--color-info-50);border-radius:var(--radius-lg);border:2px dashed var(--color-primary-900)}.start-reconciliation p{margin:0 0 var(--spacing-md);color:var(--color-primary-900)}.reconciliation-form h3{margin:0 0 var(--spacing-md);font-size:var(--spacing-md);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700)}.reconciliation-table{width:100%;border-collapse:collapse;margin-bottom:var(--spacing-lg)}.reconciliation-table th,.reconciliation-table td{padding:var(--spacing-md);text-align:left;border-bottom:1px solid var(--color-neutral-200)}.reconciliation-table th{background:var(--color-neutral-50);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.03em;color:var(--color-neutral-500)}.reconciliation-table th:nth-child(2),.reconciliation-table th:nth-child(3),.reconciliation-table th:nth-child(4){text-align:right}.reconciliation-table td:nth-child(2),.reconciliation-table td:nth-child(3),.reconciliation-table td:nth-child(4){text-align:right}.reconciliation-table input{width:120px;padding:var(--spacing-sm);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);text-align:right;font-size:var(--font-size-body)}.reconciliation-table input:focus{outline:none;border-color:var(--color-primary-900);box-shadow:0 0 0 3px #3182ce1a}.reconciliation-table td.discrepancy{color:var(--color-error-700);font-weight:var(--font-weight-semibold)}.reconciliation-table .total-row{background:var(--color-neutral-100)}.reconciliation-table .total-row td{border-top:2px solid var(--color-neutral-300);font-weight:var(--font-weight-semibold)}.discrepancy-warning{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-md);background:var(--color-error-50);border:1px solid var(--color-error-200);border-radius:var(--radius-lg);color:var(--color-error-700);margin-bottom:var(--spacing-md)}.discrepancy-warning .warning-icon{font-size:1.25rem}.discrepancy-notes{margin-bottom:var(--spacing-lg)}.discrepancy-notes label{display:block;margin-bottom:var(--spacing-sm);font-weight:var(--font-weight-medium);color:var(--color-neutral-700)}.discrepancy-notes .required{color:var(--color-error-700)}.discrepancy-notes textarea{width:100%;padding:var(--spacing-md);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);font-size:var(--font-size-body);resize:vertical}.discrepancy-notes textarea:focus{outline:none;border-color:var(--color-primary-900);box-shadow:0 0 0 3px #3182ce1a}.discrepancy-notes .notes-text{padding:var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-lg);color:var(--color-neutral-600);font-style:italic}.reconciliation-info{padding:var(--spacing-md);background:var(--color-success-100);border-radius:var(--radius-lg);color:var(--color-success-800);text-align:center}.reconciliation-info p{margin:0}.billing-queue-section{background:var(--color-white);border-radius:var(--radius-xl);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);margin-bottom:var(--spacing-lg);border-left:4px solid var(--color-primary-500)}.billing-queue-section .section-title{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-neutral-800);margin:0 0 var(--spacing-md) 0}.billing-queue-section .queue-count{background:var(--color-primary-500);color:var(--color-white);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);padding:2px 10px;border-radius:var(--radius-full);min-width:24px;text-align:center}.billing-queue{display:flex;flex-wrap:wrap;gap:var(--spacing-md)}.billing-queue .queue-card{flex:1 1 280px;max-width:320px;background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:var(--spacing-md);cursor:pointer;transition:all .15s ease}.billing-queue .queue-card:hover{border-color:var(--color-primary-300);box-shadow:var(--shadow-md);transform:translateY(-2px)}.billing-queue .queue-card-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-xs)}.billing-queue .queue-number{font-weight:var(--font-weight-bold);font-size:var(--font-size-lg);color:var(--color-primary-600)}.billing-queue .patient-name{font-weight:var(--font-weight-medium);color:var(--color-neutral-800);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.billing-queue .queue-card-body{display:flex;justify-content:space-between;align-items:center;font-size:var(--font-size-sm);color:var(--color-neutral-600);margin-bottom:var(--spacing-sm)}.billing-queue .visit-reason{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.billing-queue .visit-time{color:var(--color-neutral-500)}.billing-queue .queue-card-footer{display:flex;justify-content:space-between;align-items:center}.billing-queue .status-badge.status-billing{background:var(--color-success-100);color:var(--color-success-700);font-size:var(--font-size-xs);padding:2px 8px;border-radius:var(--radius-full)}.billing-queue .btn-small.btn-pay{background:var(--color-primary-500);color:var(--color-white);border:none;padding:6px 12px;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:background .15s ease}.billing-queue .btn-small.btn-pay:hover{background:var(--color-primary-600)}.invoice-items .items-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.invoice-items .items-header h3{margin:0}.invoice-items .items-actions{display:flex;gap:var(--spacing-sm)}.price-edit-input{width:80px;padding:var(--spacing-xs);border:1px solid var(--color-primary-400);border-radius:var(--radius-sm);font-size:var(--font-size-sm);text-align:right}.price-edit-input:focus{outline:none;border-color:var(--color-primary-500);box-shadow:0 0 0 2px var(--color-primary-100)}.edit-actions{display:flex;gap:var(--spacing-xxs)}.btn-tiny{padding:2px 8px;font-size:var(--font-size-xs);border-radius:var(--radius-sm);border:none;cursor:pointer;transition:background .15s ease}.btn-tiny.btn-primary{background:var(--color-primary-500);color:var(--color-white)}.btn-tiny.btn-primary:hover{background:var(--color-primary-600)}.btn-tiny.btn-text{background:transparent;color:var(--color-primary-600)}.btn-tiny.btn-text:hover{background:var(--color-primary-50)}.btn-tiny:disabled{opacity:.5;cursor:not-allowed}.add-service-modal{width:500px;max-width:95vw}.add-service-modal .services-list{max-height:300px;overflow-y:auto;border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);margin-top:var(--spacing-sm)}.add-service-modal .service-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--color-neutral-100);cursor:pointer;transition:background .15s ease}.add-service-modal .service-item:hover{background:var(--color-neutral-50)}.add-service-modal .service-item.selected{background:var(--color-primary-50);border-left:3px solid var(--color-primary-500)}.add-service-modal .service-item:last-child{border-bottom:none}.add-service-modal .service-info{display:flex;flex-direction:column;gap:2px}.add-service-modal .service-code{font-size:var(--font-size-xs);color:var(--color-neutral-500);font-family:monospace}.add-service-modal .service-name{font-size:var(--font-size-sm);color:var(--color-neutral-800)}.add-service-modal .service-price{font-weight:var(--font-weight-semibold);color:var(--color-primary-600)}.add-service-modal .quantity-group{margin-top:var(--spacing-md)}.add-service-modal .quantity-group input{width:80px}.add-service-modal .no-results{padding:var(--spacing-lg);text-align:center;color:var(--color-neutral-500)}.price-audit-modal{width:700px;max-width:95vw}.price-audit-modal .audit-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.price-audit-modal .audit-table th,.price-audit-modal .audit-table td{padding:var(--spacing-sm);text-align:left;border-bottom:1px solid var(--color-neutral-200)}.price-audit-modal .audit-table th{background:var(--color-neutral-50);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700)}.price-audit-modal .auditor{display:flex;flex-direction:column;gap:2px}.price-audit-modal .role-badge{font-size:var(--font-size-xs);color:var(--color-neutral-500);text-transform:capitalize}.price-audit-modal .reason-cell{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.price-audit-modal .reason-cell:hover{white-space:normal}.btn-text{background:transparent;color:var(--color-primary-600);border:none;padding:var(--spacing-xs) var(--spacing-sm);cursor:pointer;font-size:var(--font-size-sm)}.btn-text:hover{background:var(--color-primary-50);border-radius:var(--radius-sm)}.btn-close{background:transparent;border:none;font-size:1.5rem;cursor:pointer;color:var(--color-neutral-500);padding:0;line-height:1}.btn-close:hover{color:var(--color-neutral-700)}.billing-queue-empty{background:var(--color-success-50);border:2px dashed var(--color-success-200);border-radius:var(--radius-xl);padding:var(--spacing-xl);text-align:center;margin-bottom:var(--spacing-lg)}.billing-queue-empty .empty-icon{font-size:2.5rem;color:var(--color-success-500);margin-bottom:var(--spacing-sm)}.billing-queue-empty p{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-success-700)}.billing-queue-empty .empty-hint{font-size:var(--font-size-sm);color:var(--color-success-600)}.billing-queue-section .queue-header{margin-bottom:var(--spacing-lg)}.billing-queue-section .queue-title{margin:0;font-size:1.5rem;font-weight:var(--font-weight-bold);color:var(--color-neutral-900);display:flex;align-items:center;gap:var(--spacing-sm)}.billing-queue-section .queue-badge{background:var(--color-primary-500);color:#fff;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);padding:4px 12px;border-radius:var(--radius-full)}.payment-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-md)}.payment-card{background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-xl);padding:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-md);transition:all .2s ease;position:relative}.payment-card:hover{border-color:var(--color-primary-300);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.payment-card.priority{border-color:var(--color-success-300);background:linear-gradient(135deg,var(--color-success-50) 0%,var(--color-white) 100%)}.card-priority-badge{position:absolute;top:-8px;right:var(--spacing-md);background:var(--color-success-500);color:#fff;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);padding:4px 12px;border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.05em}.card-patient-section{display:flex;align-items:center;gap:var(--spacing-md)}.patient-avatar{width:48px;height:48px;border-radius:var(--radius-full);background:var(--color-primary-100);color:var(--color-primary-700);display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:var(--font-weight-bold);flex-shrink:0}.patient-details{flex:1;min-width:0}.patient-details .patient-name{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.patient-details .patient-name a{color:inherit;text-decoration:none}.patient-details .patient-name a:hover{color:var(--color-primary-600)}.patient-details .patient-id{display:block;font-size:var(--font-size-sm);color:var(--color-neutral-500);font-family:SF Mono,Monaco,monospace}.patient-details .patient-phone{display:block;font-size:var(--font-size-sm);color:var(--color-neutral-600);margin-top:2px}.card-visit-info{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-md)}.card-visit-info .visit-reason{font-size:var(--font-size-sm);color:var(--color-neutral-700);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-visit-info .visit-queue{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-primary-600)}.card-invoice-info{display:flex;justify-content:space-between;align-items:center}.card-invoice-info .invoice-number{font-size:var(--font-size-sm);color:var(--color-neutral-500);font-family:SF Mono,Monaco,monospace}.card-invoice-info .status-pill{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);padding:2px 8px;border-radius:var(--radius-full)}.status-pill.status-issued{background:var(--color-warning-100);color:var(--color-warning-700)}.status-pill.status-partially_paid{background:var(--color-info-100);color:var(--color-info-700)}.card-amount-section{text-align:center;padding:var(--spacing-md) 0;border-top:1px solid var(--color-neutral-100)}.card-amount-section .amount-label{display:block;font-size:var(--font-size-xs);color:var(--color-neutral-500);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.card-amount-section .amount-value{font-size:1.75rem;font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.btn-collect-payment{width:100%;padding:var(--spacing-md);background:var(--color-success-500);color:#fff;border:none;border-radius:var(--radius-lg);font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all .15s ease}.btn-collect-payment:hover{background:var(--color-success-600);transform:scale(1.02)}.btn-collect-payment.secondary{background:var(--color-primary-500)}.btn-collect-payment.secondary:hover{background:var(--color-primary-600)}.billing-stats-bar{display:flex;align-items:center;justify-content:center;gap:var(--spacing-lg);background:var(--color-white);border-radius:var(--radius-xl);padding:var(--spacing-md) var(--spacing-xl);box-shadow:var(--shadow-sm);margin-bottom:var(--spacing-lg)}.stat-item{display:flex;flex-direction:column;align-items:center;gap:2px}.stat-item.clickable{cursor:pointer;padding:var(--spacing-sm);border-radius:var(--radius-md);transition:background .15s ease}.stat-item.clickable:hover{background:var(--color-neutral-50)}.stat-value{font-size:1.25rem;font-weight:var(--font-weight-bold);color:var(--color-neutral-800)}.stat-value.success{color:var(--color-success-600)}.stat-value.warning{color:var(--color-warning-600)}.stat-label{font-size:var(--font-size-xs);color:var(--color-neutral-500);text-transform:uppercase;letter-spacing:.05em}.stat-divider{width:1px;height:32px;background:var(--color-neutral-200)}.invoice-history-section{background:var(--color-white);border-radius:var(--radius-xl);padding:var(--spacing-lg);box-shadow:var(--shadow-sm)}.history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);flex-wrap:wrap;gap:var(--spacing-md)}.history-header h3{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-neutral-800)}.filter-controls{display:flex;gap:var(--spacing-md)}.date-filter-compact,.status-filter-compact{display:flex;gap:2px;background:var(--color-neutral-100);padding:2px;border-radius:var(--radius-md)}.filter-btn{padding:6px 12px;background:transparent;border:none;border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-neutral-600);cursor:pointer;transition:all .15s ease}.filter-btn:hover{color:var(--color-neutral-800)}.filter-btn.active{background:var(--color-white);color:var(--color-primary-700);box-shadow:var(--shadow-sm)}.invoice-list-compact{display:flex;flex-direction:column;gap:var(--spacing-xs)}.invoice-row-compact{display:grid;grid-template-columns:1fr 140px 120px 100px 100px;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);border-radius:var(--radius-lg);cursor:pointer;transition:background .15s ease}.invoice-row-compact:hover{background:var(--color-neutral-50)}.invoice-row-compact.has-balance{background:var(--color-warning-50);border:1px solid var(--color-warning-100)}.invoice-row-compact.has-balance:hover{background:var(--color-warning-100)}.invoice-patient-col{display:flex;align-items:center;gap:var(--spacing-sm);min-width:0}.patient-avatar-small{width:36px;height:36px;border-radius:var(--radius-full);background:var(--color-primary-100);color:var(--color-primary-700);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);flex-shrink:0}.patient-info-compact{min-width:0}.patient-name-compact{display:block;font-weight:var(--font-weight-semibold);color:var(--color-neutral-800);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.patient-meta{display:block;font-size:var(--font-size-xs);color:var(--color-neutral-500);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.invoice-details-col{display:flex;flex-direction:column;gap:2px}.invoice-num{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-neutral-700);font-family:SF Mono,Monaco,monospace}.invoice-date{font-size:var(--font-size-xs);color:var(--color-neutral-500)}.invoice-amount-col{display:flex;flex-direction:column;text-align:right}.amount-total{font-weight:var(--font-weight-semibold);color:var(--color-neutral-800)}.amount-due{font-size:var(--font-size-xs);color:var(--color-error-600);font-weight:var(--font-weight-medium)}.invoice-status-col{display:flex;align-items:center;gap:6px}.status-dot{width:8px;height:8px;border-radius:var(--radius-full)}.status-dot.status-draft{background:var(--color-neutral-400)}.status-dot.status-issued,.status-dot.status-partially_paid{background:var(--color-warning-500)}.status-dot.status-paid{background:var(--color-success-500)}.status-dot.status-cancelled,.status-dot.status-refunded{background:var(--color-error-500)}.status-text{font-size:var(--font-size-sm);color:var(--color-neutral-600)}.invoice-actions-col{display:flex;gap:var(--spacing-xs);justify-content:flex-end}.btn-action-pay,.btn-action-view{padding:6px 12px;border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .15s ease}.btn-action-pay{background:var(--color-success-500);color:#fff}.btn-action-pay:hover{background:var(--color-success-600)}.btn-action-view{background:var(--color-neutral-100);color:var(--color-neutral-700)}.btn-action-view:hover{background:var(--color-neutral-200)}.empty-state-compact{text-align:center;padding:var(--spacing-xl);color:var(--color-neutral-500)}@media(max-width:768px){.payment-cards-grid{grid-template-columns:1fr}.billing-stats-bar{flex-wrap:wrap;padding:var(--spacing-md)}.stat-divider{display:none}.invoice-row-compact{grid-template-columns:1fr;gap:var(--spacing-sm)}.invoice-details-col,.invoice-amount-col,.invoice-status-col{flex-direction:row;justify-content:space-between;padding-left:44px}.filter-controls{flex-direction:column;width:100%}}.btn-icon{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background:var(--color-neutral-100);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-neutral-700);cursor:pointer;transition:all .15s ease}.btn-icon:hover{background:var(--color-neutral-200);border-color:var(--color-neutral-300)}.btn-icon:disabled{opacity:.5;cursor:not-allowed}.btn-icon .icon{font-size:1rem}.print-preview-overlay{background:#000000bf;padding:var(--spacing-lg);z-index:1100!important}.print-preview-modal{z-index:1101;max-width:900px;width:100%;height:90vh;display:flex;flex-direction:column}.print-preview-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-neutral-200);background:var(--color-white);border-radius:var(--radius-xl) var(--radius-xl) 0 0}.print-preview-header h3{margin:0;font-size:1.125rem;color:var(--color-neutral-800)}.preview-actions{display:flex;align-items:center;gap:var(--spacing-md)}.preview-actions .btn-primary{display:flex;align-items:center;gap:6px}.preview-actions .btn-close{margin-left:var(--spacing-sm)}.print-preview-body{flex:1;padding:0;overflow:hidden;background:var(--color-neutral-100)}.print-preview-frame{width:100%;height:100%;border:none;background:#fff}.print-preview-footer{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--color-neutral-200);background:var(--color-white);border-radius:0 0 var(--radius-xl) var(--radius-xl)}.preview-info{font-size:var(--font-size-sm);color:var(--color-neutral-500)}.footer-actions{display:flex;gap:var(--spacing-md)}@media(max-width:768px){.print-preview-overlay{padding:0}.print-preview-modal{max-width:100%;height:100vh;border-radius:0}.print-preview-header,.print-preview-footer{border-radius:0}.print-preview-footer{flex-direction:column;gap:var(--spacing-md)}.footer-actions{width:100%;justify-content:stretch}.footer-actions button{flex:1}}.billing-dashboard{display:flex;flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-md)}.billing-title{margin:0 0 var(--spacing-md) 0;font-size:1.5rem;font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.billing-search{width:100%;padding:.625rem 1rem;font-size:var(--font-size-body);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);background:var(--color-white);margin-bottom:var(--spacing-md);transition:all .2s ease}.billing-search:focus{outline:none;border-color:var(--color-primary-400);box-shadow:0 0 0 3px #3b82f61a}.billing-search::-moz-placeholder{color:var(--color-neutral-400)}.billing-search::placeholder{color:var(--color-neutral-400)}.billing-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.stat-card{padding:var(--spacing-md);border-radius:0 var(--radius-lg) var(--radius-lg) 0;border-left:4px solid}.stat-card .stat-value,.stat-card .stat-number{font-size:1.75rem;font-weight:var(--font-weight-bold);line-height:1.2}.stat-card .stat-label{font-size:var(--font-size-sm);margin-top:2px}.stat-card.stat-pending .stat-value{color:#b45309}.stat-card.stat-collected .stat-value{color:#15803d}.stat-card.stat-total .stat-value{color:#1d4ed8}.stat-card.stat-pending{background:#fffbeb;border-left-color:#f59e0b}.stat-card.stat-pending .stat-number{color:#b45309}.stat-card.stat-pending .stat-label{color:#d97706}.stat-card.stat-collected{background:#f0fdf4;border-left-color:#22c55e}.stat-card.stat-collected .stat-number{color:#15803d}.stat-card.stat-collected .stat-label{color:#16a34a}.stat-card.stat-total{background:#eff6ff;border-left-color:#3b82f6}.stat-card.stat-total .stat-number{color:#1d4ed8}.stat-card.stat-total .stat-label{color:#2563eb}.billing-section{background:var(--color-white);border-radius:var(--radius-lg);margin-bottom:var(--spacing-md);overflow:hidden;box-shadow:0 1px 3px #0000001a}.section-header{display:flex;align-items:center;gap:var(--spacing-sm);padding:.75rem 1rem;font-size:var(--font-size-body);font-weight:var(--font-weight-semibold)}.section-header h2{margin:0;font-size:var(--font-size-body);font-weight:var(--font-weight-semibold)}.section-header-pending{background:#fef3c7;color:#92400e}.section-header-completed{background:var(--color-neutral-100);color:var(--color-neutral-700)}.pulse-dot{width:8px;height:8px;border-radius:50%;background:#f59e0b;animation:pulse 2s infinite}@keyframes pulse{0%{box-shadow:0 0 #f59e0b66}70%{box-shadow:0 0 0 10px #f59e0b00}to{box-shadow:0 0 #f59e0b00}}.section-rows{display:flex;flex-direction:column}.billing-row{display:grid;grid-template-columns:35% 20% 15% 12% 18%;align-items:center;padding:.75rem 1.5rem .75rem 1rem;border-bottom:1px solid var(--color-neutral-100);transition:background .15s ease;cursor:pointer;gap:.5rem}.billing-row:last-child{border-bottom:none}.billing-row:hover{background:#00000005}.billing-row-pending{border-left:4px solid #f59e0b}.billing-row-pending:hover{background:#fffbeb}.billing-row-completed{background:#fafafa}.billing-row-completed:hover{background:#f5f5f5}.row-info{min-width:0;overflow:hidden}.row-name,.row-patient-name{font-weight:600;color:#111827;font-size:.9375rem;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row-meta,.row-invoice-number{font-size:.8125rem;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:.125rem}.row-service-col{min-width:0;overflow:hidden}.row-service{font-size:.875rem;color:#374151;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row-doctor{font-size:.8125rem;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:.125rem}.row-amount-col{display:flex;flex-direction:column;align-items:flex-end;text-align:right}.row-amount,.row-amount-value{font-weight:700;font-size:.9375rem;color:#111827}.row-pending,.row-pending-time{font-size:.75rem;color:#d97706;font-weight:500;margin-top:.125rem}.row-time,.row-completed-time{font-size:.75rem;color:#6b7280;margin-top:.125rem}.row-status-col{display:flex;justify-content:center}.status-pill{display:inline-block;padding:.375rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;text-transform:capitalize;white-space:nowrap}.status-pill.status-paid{background:#dcfce7;color:#166534}.status-pill.status-cancelled{background:#fee2e2;color:#991b1b}.status-pill.status-refunded,.status-pill.status-issued,.status-pill.status-partially_paid{background:#fef3c7;color:#92400e}.row-buttons{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;padding-right:.5rem}.btn-row-action{padding:.5rem 1rem;border-radius:var(--radius-md);font-size:.8125rem;font-weight:500;border:1px solid transparent;cursor:pointer;transition:all .15s ease;white-space:nowrap;min-width:60px;text-align:center}.btn-row-action.btn-pay{background-color:#22c55e!important;color:#fff!important;border-color:#22c55e!important;font-weight:600}.btn-row-action.btn-pay:hover{background-color:#16a34a!important;border-color:#16a34a!important}.btn-row-action.btn-print,.btn-row-action.btn-email,.btn-row-action.btn-secondary{background-color:#fff!important;color:#4b5563!important;border-color:#d1d5db!important}.btn-row-action.btn-print:hover,.btn-row-action.btn-email:hover,.btn-row-action.btn-secondary:hover{background-color:#f3f4f6!important;border-color:#9ca3af!important}.row-status-badge{padding:.25rem .75rem;border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);background:#dcfce7;color:#166534}.billing-legend{display:flex;justify-content:center;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-md) 0;margin-top:var(--spacing-sm)}.legend-item{display:flex;align-items:center;gap:.375rem;font-size:var(--font-size-sm);color:var(--color-neutral-600)}.legend-dot,.legend-square{width:12px;height:12px;border-radius:2px}.legend-dot-pending,.legend-pending{background:#f59e0b}.legend-dot-paid,.legend-paid{background:#22c55e}.legend-dot-cancelled,.legend-cancelled{background:var(--color-neutral-400)}.billing-empty,.billing-empty-state{text-align:center;padding:var(--spacing-xl);color:var(--color-neutral-500);background:var(--color-white);border-radius:var(--radius-lg)}@media(max-width:1024px){.billing-row{grid-template-columns:40% 20% 15% 25%}.row-service-col{display:none}}@media(max-width:768px){.billing-stats{grid-template-columns:1fr;gap:var(--spacing-sm)}.billing-row{display:flex;flex-direction:column;align-items:stretch;gap:.5rem;padding:.875rem 1rem}.billing-row-pending{border-left:4px solid #f59e0b}.row-info{order:1}.row-service-col{display:none}.row-amount-col{order:2;flex-direction:row;justify-content:space-between;align-items:center;width:100%;padding-top:.5rem;border-top:1px dashed var(--color-neutral-200)}.row-status-col{order:3;justify-content:flex-start;padding-top:.5rem}.row-buttons{order:4;width:100%;justify-content:flex-end;padding-top:.5rem;border-top:1px dashed var(--color-neutral-200)}.btn-row-action{flex:1;text-align:center}.billing-legend{flex-wrap:wrap;gap:var(--spacing-md)}}.invoice-group{background:var(--color-white);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-sm)}.group-header{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-neutral-100)}.group-indicator{width:8px;height:8px;border-radius:var(--radius-full)}.group-indicator.needs-action{background:var(--color-warning-500)}.group-title{margin:0;font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700)}.needs-action-group .group-header{background:var(--color-warning-50)}.needs-action-group .group-title{color:var(--color-warning-700)}.invoice-rows{display:flex;flex-direction:column}.invoice-row.grouped-row{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-neutral-100);cursor:pointer;transition:background .15s ease}.invoice-row.grouped-row:last-child{border-bottom:none}.invoice-row.grouped-row:hover,.completed-row{background:var(--color-neutral-50)}.row-patient{display:flex;flex-direction:column;gap:2px;min-width:0}.patient-name-grouped{font-weight:var(--font-weight-semibold);color:var(--color-neutral-900);font-size:var(--font-size-body)}.patient-meta-grouped{font-size:var(--font-size-sm);color:var(--color-neutral-500)}.row-amount{display:flex;flex-direction:column;align-items:flex-end;gap:2px;min-width:120px}.amount-main{font-weight:var(--font-weight-bold);font-size:var(--font-size-body);color:var(--color-neutral-900)}.amount-pending{font-size:var(--font-size-sm);color:var(--color-warning-600);font-weight:var(--font-weight-medium)}.amount-time{font-size:var(--font-size-sm);color:var(--color-neutral-500)}.row-actions{display:flex;align-items:center;gap:var(--spacing-xs)}.btn-row-action{padding:6px 14px;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);border:1px solid transparent;cursor:pointer;transition:all .15s ease;white-space:nowrap}.btn-row-action:disabled{opacity:.5;cursor:not-allowed}.status-badge-inline{padding:4px 12px;border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.status-badge-inline.status-paid{background:var(--color-success-100);color:var(--color-success-700)}.status-badge-inline.status-refunded,.status-badge-inline.status-cancelled{background:var(--color-neutral-200);color:var(--color-neutral-600)}.status-legend{display:flex;justify-content:center;gap:var(--spacing-lg);padding:var(--spacing-md) 0;border-top:1px solid var(--color-neutral-100);margin-top:var(--spacing-md)}.legend-item{display:flex;align-items:center;gap:var(--spacing-xs)}.legend-dot{width:10px;height:10px;border-radius:var(--radius-full)}.legend-dot.pending{background:var(--color-warning-500)}.legend-dot.paid{background:var(--color-success-500)}.legend-dot.cancelled{background:var(--color-neutral-400)}.legend-label{font-size:var(--font-size-sm);color:var(--color-neutral-600)}.empty-state-grouped{text-align:center;padding:var(--spacing-xxl) var(--spacing-lg);color:var(--color-neutral-500);font-size:var(--font-size-body);background:var(--color-white);border-radius:var(--radius-xl)}@media(max-width:768px){.billing-summary-bar{grid-template-columns:1fr 1fr}.collected-metric{grid-column:1 / -1;order:-1}.invoice-row.grouped-row{grid-template-columns:1fr;gap:var(--spacing-sm)}.row-amount{flex-direction:row;justify-content:space-between;align-items:center;width:100%;min-width:auto}.row-actions{width:100%;justify-content:flex-end}.status-legend{flex-wrap:wrap;gap:var(--spacing-md)}}.inventory-module{display:flex;flex-direction:column;gap:var(--spacing-lg);width:100%;box-sizing:border-box}.inventory-summary{display:flex;flex-wrap:nowrap;gap:var(--spacing-md);width:100%;box-sizing:border-box}.inventory-module .summary-card{flex:1 1 0;min-width:0;max-width:none;background:var(--color-white);border-radius:10px;padding:var(--spacing-md);text-align:center;box-shadow:var(--shadow-sm);border:none;border-left:4px solid transparent;cursor:default;transition:all var(--transition-fast);outline:none;box-sizing:border-box}.summary-card:focus{outline:none}.inventory-module .summary-card.default{border-left-color:var(--color-primary-900)}.inventory-module .summary-card.default:hover{border:1px solid var(--color-primary-900);border-left-width:4px}.inventory-module .summary-card.value{border-left-color:var(--color-success)}.inventory-module .summary-card.value:hover{border:1px solid var(--color-success);border-left-width:4px}.inventory-module .summary-card.warning{border-left-color:var(--color-warning);background:var(--color-white);cursor:pointer}.inventory-module .summary-card.warning:hover{border:1px solid var(--color-warning);border-left-width:4px}.inventory-module .summary-card.danger{border-left-color:var(--color-primary-900);background:var(--color-white);cursor:pointer}.inventory-module .summary-card.danger:hover{border:1px solid var(--color-primary-900);border-left-width:4px}.summary-value{display:block;font-size:var(--font-size-h2);font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.summary-label{font-size:var(--font-size-caption);color:var(--color-neutral-500);text-transform:uppercase;letter-spacing:.05em}.list-header{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);flex-wrap:wrap}.search-section{display:flex;gap:var(--spacing-md);flex:1;max-width:500px}.search-input{flex:1;padding:.625rem var(--spacing-md);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);font-size:.9375rem}.search-input:focus{outline:none;border-color:var(--color-primary-900)}.category-filter{padding:.625rem var(--spacing-md);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);font-size:.9375rem;background:var(--color-white)}.action-buttons{display:flex;gap:var(--spacing-md)}.medications-table,.batches-table{background:var(--color-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden}.table-header{display:grid;grid-template-columns:1fr 100px 100px 100px 100px 100px 100px;padding:.875rem var(--spacing-md);background:var(--color-neutral-50);border-bottom:1px solid var(--color-neutral-200);font-weight:var(--font-weight-semibold);font-size:.8125rem;color:var(--color-neutral-600);text-transform:uppercase;letter-spacing:.03em}.batches-table .table-header{grid-template-columns:120px 100px 120px 100px 100px 80px}.table-row{display:grid;grid-template-columns:1fr 100px 100px 100px 100px 100px 100px;padding:.875rem var(--spacing-md);border-bottom:1px solid var(--color-neutral-200);align-items:center;cursor:pointer;transition:background var(--transition-normal)}.batches-table .table-row{grid-template-columns:120px 100px 120px 100px 100px 80px;cursor:default}.table-row:hover{background:var(--color-neutral-50)}.table-row:last-child{border-bottom:none}.table-row.inactive{opacity:.6}.col-name strong{display:block;color:var(--color-neutral-800)}.col-name .generic{font-size:.8125rem;color:var(--color-neutral-500)}.expiring{color:var(--color-error-700);font-weight:var(--font-weight-semibold)}.status-badge{display:inline-block;font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);padding:var(--spacing-xs) .625rem;border-radius:9999px;text-transform:capitalize}.status-badge.in-stock,.status-badge.status-active{background:var(--color-success-200);color:var(--color-success-800)}.status-badge.low-stock{background:var(--color-warning-100);color:var(--color-warning-700)}.status-badge.out-of-stock,.status-badge.status-depleted{background:var(--color-error-200);color:var(--color-error-700)}.status-badge.status-expired{background:var(--color-neutral-200);color:var(--color-neutral-600)}.medication-detail-view{display:flex;flex-direction:column;gap:var(--spacing-lg)}.detail-header{display:flex;align-items:center;gap:var(--spacing-md);flex-wrap:wrap}.medication-title{flex:1;display:flex;align-items:center;gap:var(--spacing-md)}.medication-title h2{margin:0;font-size:var(--spacing-lg);color:var(--color-neutral-800)}.detail-content{display:flex;flex-direction:column;gap:var(--spacing-lg)}.info-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-md)}.info-card{background:var(--color-white);border-radius:var(--radius-xl);padding:1.25rem;box-shadow:var(--shadow-sm)}.info-card h3{margin:0 0 var(--spacing-md);font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-500);text-transform:uppercase;letter-spacing:.03em}.stock-stats{display:flex;gap:var(--spacing-lg);margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-neutral-200)}.stat{text-align:center}.stat.highlight .stat-value{color:var(--color-primary-900);font-size:1.75rem}.stat-value{display:block;font-size:var(--spacing-lg);font-weight:var(--font-weight-bold);color:var(--color-neutral-800)}.stat-label{font-size:var(--font-size-caption);color:var(--color-neutral-500)}.info-row{display:flex;justify-content:space-between;padding:var(--spacing-sm) 0;border-bottom:1px solid var(--color-neutral-100)}.info-row:last-child{border-bottom:none}.info-row span:first-child{color:var(--color-neutral-500)}.info-row span:last-child{color:var(--color-neutral-800);font-weight:var(--font-weight-medium)}.batches-section{background:var(--color-white);border-radius:var(--radius-xl);padding:1.25rem;box-shadow:var(--shadow-sm)}.batches-section h3{margin:0 0 var(--spacing-md);font-size:var(--spacing-md);font-weight:var(--font-weight-semibold);color:var(--color-neutral-800)}.alerts-view{display:flex;flex-direction:column;gap:var(--spacing-lg)}.alerts-header{display:flex;align-items:center;gap:var(--spacing-md)}.alerts-header h2{margin:0;flex:1;font-size:var(--spacing-lg);color:var(--color-neutral-800)}.alert-filters{display:flex;gap:var(--spacing-xs);background:var(--color-neutral-100);padding:var(--spacing-xs);border-radius:var(--radius-lg);width:-moz-fit-content;width:fit-content}.filter-tab{padding:var(--spacing-sm) var(--spacing-md);border:none;background:transparent;border-radius:var(--radius-md);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);color:var(--color-neutral-600);cursor:pointer}.filter-tab.active{background:var(--color-white);color:var(--color-primary-900);box-shadow:var(--shadow-sm)}.alerts-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.alert-card{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-white);border-radius:10px;box-shadow:var(--shadow-sm);cursor:pointer;transition:all var(--transition-normal)}.alert-card:hover{transform:translate(4px)}.alert-card.warning{border-left:4px solid var(--color-warning-600)}.alert-card.critical{border-left:4px solid var(--color-error-700)}.alert-icon{font-size:var(--spacing-lg)}.alert-content{flex:1}.alert-content strong{display:block;color:var(--color-neutral-800)}.alert-content p{margin:var(--spacing-xs) 0 0;font-size:var(--font-size-body);color:var(--color-neutral-500)}.severity-badge{font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);padding:var(--spacing-xs) .625rem;border-radius:var(--radius-sm);text-transform:uppercase}.severity-badge.warning{background:var(--color-warning-100);color:var(--color-warning-700)}.severity-badge.critical{background:var(--color-error-200);color:var(--color-error-700)}.create-form-view,.receive-form-view{max-width:700px}.form-header{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.form-header h2{margin:0;flex:1;font-size:var(--spacing-lg);color:var(--color-neutral-800)}.receive-info{background:var(--color-neutral-50);padding:var(--spacing-md);border-radius:var(--radius-lg);margin-bottom:var(--spacing-lg)}.receive-info p{margin:var(--spacing-xs) 0;color:var(--color-neutral-600)}.form-content{background:var(--color-white);padding:var(--spacing-lg);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm)}.form-section{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-neutral-200)}.form-section:last-of-type{margin-bottom:0;padding-bottom:0;border-bottom:none}.form-section h3{margin:0 0 var(--spacing-md);font-size:var(--spacing-md);font-weight:var(--font-weight-semibold);color:var(--color-neutral-800)}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.form-row:last-child{margin-bottom:0}.form-group{display:flex;flex-direction:column;gap:.375rem}.form-group.checkbox{flex-direction:row;align-items:center;gap:var(--spacing-sm)}.form-group.checkbox label{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer}.form-group.checkbox input[type=checkbox]{width:auto}.form-group label{font-size:.8125rem;font-weight:var(--font-weight-medium);color:var(--color-neutral-600)}.form-group input,.form-group select{padding:.625rem .875rem;border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:.9375rem;font-family:inherit}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--color-primary-900);box-shadow:0 0 0 3px #4a63b31a}.form-actions{display:flex;justify-content:flex-end;gap:var(--spacing-md);margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--color-neutral-200)}.btn-primary{padding:.625rem 1.25rem;background:var(--color-primary-900);color:var(--color-white);border:none;border-radius:var(--radius-md);font-size:.9375rem;font-weight:var(--font-weight-medium);cursor:pointer}.btn-primary:disabled{background:var(--color-neutral-400);cursor:not-allowed}.btn-secondary{padding:.625rem 1.25rem;background:var(--color-white);color:var(--color-neutral-600);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:.9375rem;font-weight:var(--font-weight-medium);cursor:pointer}.btn-back{padding:var(--spacing-sm) .875rem;background:transparent;color:var(--color-neutral-600);border:none;font-size:.9375rem;cursor:pointer}.loading,.empty-state{padding:var(--spacing-2xl);text-align:center;color:var(--color-neutral-500);background:var(--color-white);border-radius:var(--radius-xl)}.empty-state.success{color:var(--color-success-600);background:var(--color-success-50)}.pagination-controls{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-sm);flex-wrap:wrap;gap:var(--spacing-sm)}.pagination-page{font-size:var(--font-size-body);font-weight:var(--font-weight-medium);color:var(--color-neutral-700);min-width:100px;text-align:center}.btn-sm{padding:var(--spacing-xs) .75rem;font-size:var(--font-size-caption)}.sortable-header .sortable{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:color var(--transition-fast)}.sortable-header .sortable:hover{color:var(--color-primary-900)}.btn-danger-outline{color:var(--color-error-700);border-color:var(--color-error-200)}.btn-danger-outline:hover{background:var(--color-error-50);border-color:var(--color-error-400)}.btn-danger{background:var(--color-error-700)!important}.hint{font-weight:var(--font-weight-normal);color:var(--color-neutral-400);font-size:var(--font-size-caption)}.text-danger{color:var(--color-error-700);font-weight:var(--font-weight-semibold)}.text-warning{color:var(--color-warning-700);font-weight:var(--font-weight-semibold)}.history-filters{display:flex;gap:var(--spacing-md);align-items:flex-end;flex-wrap:wrap}.history-filters .form-group{min-width:160px}.history-table-header{display:grid!important;grid-template-columns:170px 110px 110px 90px 1fr 120px!important}.history-table-row{display:grid!important;grid-template-columns:170px 110px 110px 90px 1fr 120px!important;cursor:default}.tx-badge{display:inline-block;font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);padding:2px 8px;border-radius:9999px;text-transform:capitalize}.tx-badge.tx-dispense,.tx-badge.tx-writeoff{background:var(--color-error-200);color:var(--color-error-700)}.tx-qty.tx-receive{color:var(--color-success-700);font-weight:var(--font-weight-semibold)}.tx-qty.tx-dispense,.tx-qty.tx-writeoff{color:var(--color-error-700);font-weight:var(--font-weight-semibold)}.tx-qty.tx-adjust{color:var(--color-warning-700);font-weight:var(--font-weight-semibold)}.tx-ref{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reorder-table-header,.reorder-table-row{display:grid!important;grid-template-columns:1fr 120px 120px 120px 150px!important}.suggested-qty{color:var(--color-primary-900);font-weight:var(--font-weight-semibold)}.pagination-controls{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);background:var(--color-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm)}.pagination-info{font-size:var(--font-size-body);color:var(--color-neutral-500)}.pagination-buttons{display:flex;align-items:center;gap:var(--spacing-md)}.btn-pagination{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-white);color:var(--color-neutral-600);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:var(--font-size-body);cursor:pointer;transition:all var(--transition-fast)}.btn-pagination:hover:not(:disabled){background:var(--color-neutral-50);border-color:var(--color-primary-900);color:var(--color-primary-900)}.btn-pagination:disabled{opacity:.4;cursor:not-allowed}.pagination-page{font-size:var(--font-size-body);color:var(--color-neutral-600);font-weight:var(--font-weight-medium)}.sortable{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:color var(--transition-fast)}.sortable:hover{color:var(--color-primary-900)}.detail-actions{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.btn-danger-outline{color:var(--color-error-700)!important;border-color:var(--color-error-200)!important}.btn-danger-outline:hover{background:var(--color-error-50)!important;border-color:var(--color-error-700)!important}.btn-danger{background:var(--color-error-700)!important;color:var(--color-white)!important}.btn-danger:hover:not(:disabled){background:var(--color-error-800)!important}.warning-info{background:var(--color-warning-50)!important;border-left:4px solid var(--color-warning-600)}.field-error{font-size:var(--font-size-caption);color:var(--color-error-700);margin-top:.25rem}.history-view{display:flex;flex-direction:column;gap:var(--spacing-lg)}.history-filters{display:flex;align-items:flex-end;gap:var(--spacing-md);flex-wrap:wrap}.history-filters .form-group{min-width:150px}.history-count{font-size:var(--font-size-body);color:var(--color-neutral-500);padding-bottom:var(--spacing-sm)}.history-cols{grid-template-columns:120px 120px 120px 100px 1fr!important}.history-table{background:var(--color-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden}.tx-badge{display:inline-block;font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);padding:var(--spacing-xs) .625rem;border-radius:9999px}.tx-badge.tx-receive{background:var(--color-success-200);color:var(--color-success-800)}.tx-badge.tx-reduce{background:var(--color-error-200);color:var(--color-error-700)}.tx-badge.tx-adjust{background:var(--color-warning-100);color:var(--color-warning-700)}.qty-positive{color:var(--color-success-800);font-weight:var(--font-weight-semibold)}.qty-negative{color:var(--color-error-700);font-weight:var(--font-weight-semibold)}.qty-warning{color:var(--color-warning-700);font-weight:var(--font-weight-semibold)}.tx-notes{font-size:var(--font-size-body);color:var(--color-neutral-500);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reorder-view{display:flex;flex-direction:column;gap:var(--spacing-lg)}.reorder-summary{padding:var(--spacing-md);background:var(--color-warning-50);border-radius:var(--radius-lg);color:var(--color-warning-800);font-size:var(--font-size-body);border-left:4px solid var(--color-warning-600)}.reorder-cols{grid-template-columns:1fr 100px 100px 100px 120px 120px 120px!important}@media(max-width:1024px){.table-header,.table-row{grid-template-columns:1fr 80px 80px 80px 80px}.col-reorder,.col-price{display:none}}@media(max-width:768px){.list-header{flex-direction:column;align-items:stretch}.search-section{max-width:none;flex-direction:column}.action-buttons{justify-content:stretch}.action-buttons button{flex:1}.table-header,.table-row{grid-template-columns:1fr 80px 80px}.col-form,.col-strength{display:none}.info-cards{grid-template-columns:1fr}.stock-stats{flex-wrap:wrap;justify-content:center}}.services-tab{display:flex;flex-direction:column;gap:var(--spacing-md);height:100%}.services-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-neutral-200)}.services-title{margin:0;font-size:var(--font-size-h4);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.add-service-btn{padding:.5rem 1rem;background:var(--color-primary-900);color:var(--color-white);border:none;border-radius:var(--radius-md);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--transition-normal)}.add-service-btn:hover{background:var(--color-primary-600)}.service-search-panel{background:var(--color-neutral-50);border-radius:var(--radius-lg);padding:var(--spacing-md);border:1px solid var(--color-neutral-200);position:relative;z-index:10}.search-input-wrapper{position:relative}.service-search-input{width:100%;padding:.75rem 1rem;padding-right:40px;border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);font-size:var(--font-size-body);outline:none;transition:border-color var(--transition-normal)}.service-search-input:focus{border-color:var(--color-primary-900);box-shadow:0 0 0 3px var(--color-primary-100)}.search-spinner{position:absolute;right:12px;top:50%;transform:translateY(-50%);animation:spin 1s linear infinite}@keyframes spin{0%{transform:translateY(-50%) rotate(0)}to{transform:translateY(-50%) rotate(360deg)}}.search-results{margin-top:var(--spacing-sm);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);overflow:hidden;max-height:300px;overflow-y:auto;position:relative;z-index:11;background:var(--color-white)}.search-result-item{display:flex;align-items:center;gap:var(--spacing-md);padding:.75rem 1rem;background:var(--color-white);cursor:pointer;border-bottom:1px solid var(--color-neutral-100);transition:background var(--transition-normal)}.search-result-item:last-child{border-bottom:none}.search-result-item:hover{background:var(--color-primary-50)}.result-icon{font-size:1.25rem;width:32px;text-align:center;flex-shrink:0}.result-info{flex:1;min-width:0}.result-name{font-weight:var(--font-weight-medium);color:var(--color-neutral-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.result-meta{display:flex;gap:var(--spacing-sm);font-size:var(--font-size-caption);color:var(--color-neutral-500);margin-top:2px}.result-code{font-family:monospace;background:var(--color-neutral-100);padding:0 4px;border-radius:var(--radius-sm)}.result-category{color:var(--color-neutral-400)}.result-price{font-weight:var(--font-weight-semibold);color:var(--color-primary-900);flex-shrink:0}.no-results{padding:var(--spacing-lg);text-align:center;color:var(--color-neutral-500);font-size:var(--font-size-body)}.services-list{flex:1;overflow-y:auto;min-height:200px}.no-services{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-2xl);text-align:center;color:var(--color-neutral-500)}.no-services-icon{font-size:3rem;margin-bottom:var(--spacing-md);opacity:.5}.no-services p{margin:0}.no-services-hint{font-size:var(--font-size-caption);color:var(--color-neutral-400);margin-top:var(--spacing-xs)!important}.service-item{display:flex;align-items:flex-start;gap:var(--spacing-md);padding:.875rem;background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);margin-bottom:var(--spacing-sm);transition:border-color var(--transition-normal)}.service-item:hover{border-color:var(--color-neutral-300)}.service-icon{font-size:1.25rem;width:32px;text-align:center;flex-shrink:0;padding-top:2px}.service-details{flex:1;min-width:0}.service-name{font-weight:var(--font-weight-medium);color:var(--color-neutral-900)}.service-meta{display:flex;gap:var(--spacing-sm);font-size:var(--font-size-caption);color:var(--color-neutral-500);margin-top:2px}.service-code{font-family:monospace;background:var(--color-neutral-100);padding:0 4px;border-radius:var(--radius-sm)}.service-qty{font-weight:var(--font-weight-medium);color:var(--color-neutral-600)}.service-notes{font-size:var(--font-size-caption);color:var(--color-neutral-600);font-style:italic;margin-top:4px}.service-pricing{text-align:right;flex-shrink:0}.service-total{font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.service-discount{font-size:var(--font-size-caption);color:var(--color-success)}.remove-service-btn{width:24px;height:24px;border-radius:50%;border:none;background:var(--color-neutral-100);color:var(--color-neutral-500);font-size:var(--font-size-caption);cursor:pointer;transition:all var(--transition-normal);display:flex;align-items:center;justify-content:center;flex-shrink:0}.remove-service-btn:hover{background:var(--color-error-light);color:var(--color-error)}.remove-service-btn:disabled{opacity:.5;cursor:not-allowed}.services-summary{background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:var(--spacing-md);margin-top:auto}.summary-row{display:flex;justify-content:space-between;padding:.375rem 0;font-size:var(--font-size-body)}.summary-row.discount{color:var(--color-success)}.summary-row.tax{color:var(--color-neutral-600);font-size:var(--font-size-caption)}.summary-row.total{border-top:1px solid var(--color-neutral-200);padding-top:var(--spacing-sm);margin-top:var(--spacing-xs);font-weight:var(--font-weight-bold);font-size:var(--font-size-h4);color:var(--color-neutral-900)}.summary-label{color:var(--color-neutral-600)}.summary-value{font-weight:var(--font-weight-medium)}.summary-row.total .summary-value{color:var(--color-primary-900)}.services-loading{display:flex;align-items:center;justify-content:center;padding:var(--spacing-2xl);color:var(--color-neutral-500)}.service-catalog{margin-top:var(--spacing-sm);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);background:var(--color-white);max-height:360px;overflow-y:auto;position:relative;z-index:11}.catalog-category{border-bottom:1px solid var(--color-neutral-100)}.catalog-category:last-child{border-bottom:none}.catalog-category-header{display:flex;align-items:center;gap:var(--spacing-sm);padding:.5rem 1rem;background:var(--color-neutral-50);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);color:var(--color-neutral-600);text-transform:uppercase;letter-spacing:.04em;position:sticky;top:0;z-index:1}.catalog-category-icon{font-size:.875rem}.catalog-category-name{flex:1}.catalog-category-count{background:var(--color-neutral-200);color:var(--color-neutral-600);font-size:.65rem;padding:1px 6px;border-radius:99px;font-weight:var(--font-weight-medium)}.catalog-items{display:flex;flex-direction:column}.catalog-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 1rem .5rem 2.25rem;cursor:pointer;transition:background var(--transition-normal);font-size:var(--font-size-body)}.catalog-item:hover{background:var(--color-primary-50)}.catalog-item-name{color:var(--color-neutral-800);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;margin-right:var(--spacing-md)}.catalog-item-price{color:var(--color-primary-900);font-weight:var(--font-weight-semibold);font-size:var(--font-size-caption);flex-shrink:0}@media(max-width:640px){.services-header{flex-direction:column;gap:var(--spacing-sm);align-items:stretch}.add-service-btn{width:100%;text-align:center}.service-item{flex-wrap:wrap}.service-pricing{width:100%;text-align:left;margin-top:var(--spacing-xs);padding-top:var(--spacing-xs);border-top:1px dashed var(--color-neutral-200);order:3}.remove-service-btn{order:2;margin-left:auto}}.incident-report-tab{padding:16px;height:100%;overflow-y:auto}.incident-tab-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px;padding-bottom:12px;border-bottom:1px solid #e5e7eb}.header-info h3{margin:0 0 4px;font-size:18px;font-weight:600;color:#1a1a1a}.patient-context{margin:0;font-size:13px;color:#666}.btn-report-incident{padding:8px 16px;background:#dc2626;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:background .2s}.btn-report-incident:hover:not(:disabled){background:#b91c1c}.btn-report-incident:disabled{opacity:.5;cursor:not-allowed}.incident-tab-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#666}.loading-spinner{width:32px;height:32px;border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:12px}.incident-error{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;margin-bottom:16px;color:#dc2626;font-size:14px}.incident-error button{background:none;border:none;font-size:18px;color:#dc2626;cursor:pointer;padding:0 4px}.incident-form-container{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px;margin-bottom:24px;box-shadow:0 1px 3px #0000001a}.incident-form-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #e5e7eb}.incident-form-header h4{margin:0;font-size:16px;font-weight:600;color:#1a1a1a}.btn-close{background:none;border:none;font-size:24px;color:#666;cursor:pointer;padding:0;line-height:1}.btn-close:hover{color:#333}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin-bottom:16px}.form-group{display:flex;flex-direction:column}.form-group label{font-size:13px;font-weight:500;color:#374151;margin-bottom:6px}.form-group input,.form-group select,.form-group textarea{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group textarea{resize:vertical;min-height:80px}.checkbox-group{flex-direction:row;align-items:center}.checkbox-group label{display:flex;align-items:center;gap:8px;margin-bottom:0;cursor:pointer}.checkbox-group input[type=checkbox]{width:16px;height:16px;cursor:pointer}.harm-assessment{background:#fef3c7;border:1px solid #fcd34d;border-radius:6px;padding:16px;margin-bottom:16px}.harm-assessment h5{margin:0 0 12px;font-size:14px;font-weight:600;color:#92400e}.harm-assessment .form-row{margin-bottom:12px}.harm-assessment .form-row:last-child{margin-bottom:0}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid #e5e7eb}.form-actions button{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.form-actions button:disabled{opacity:.5;cursor:not-allowed}.btn-cancel{background:#fff;border:1px solid #d1d5db;color:#374151}.btn-cancel:hover:not(:disabled){background:#f3f4f6}.btn-save-draft{background:#f3f4f6;border:1px solid #d1d5db;color:#374151}.btn-save-draft:hover:not(:disabled){background:#e5e7eb}.btn-submit{background:#dc2626;border:none;color:#fff}.btn-submit:hover:not(:disabled){background:#b91c1c}.incidents-section{margin-bottom:24px}.incidents-section h4{margin:0 0 12px;font-size:15px;font-weight:600;color:#374151}.incidents-section.patient-history{padding-top:16px;border-top:1px solid #e5e7eb}.incidents-section.patient-history h4{color:#6b7280}.no-incidents{color:#9ca3af;font-size:14px;font-style:italic;padding:20px;text-align:center;background:#f9fafb;border-radius:6px}.incidents-list{display:flex;flex-direction:column;gap:12px}.incident-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:14px 16px;transition:box-shadow .2s}.incident-card:hover{box-shadow:0 2px 8px #00000014}.incident-card.history{background:#f9fafb;opacity:.9}.incident-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.incident-number{font-family:SF Mono,Monaco,monospace;font-size:12px;color:#6b7280;font-weight:500}.incident-badges{display:flex;gap:8px}.badge{padding:3px 8px;border-radius:4px;font-size:11px;font-weight:600;color:#fff;text-transform:uppercase;letter-spacing:.3px}.incident-card-body h5.incident-title{margin:0 0 4px;font-size:14px;font-weight:600;color:#1a1a1a}.incident-type{margin:0 0 8px;font-size:13px;color:#6b7280}.incident-meta{display:flex;gap:12px;font-size:12px;color:#9ca3af}.harm-indicator{margin-top:10px;padding:6px 10px;background:#fef2f2;border:1px solid #fecaca;border-radius:4px;font-size:12px;color:#dc2626;font-weight:500}@media(max-width:768px){.incident-tab-header{flex-direction:column;gap:12px;align-items:stretch}.btn-report-incident{width:100%;text-align:center}.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column}.form-actions button{width:100%}.incident-card-header{flex-direction:column;align-items:flex-start;gap:8px}}@media print{.btn-report-incident,.incident-form-container,.form-actions{display:none!important}.incident-card{-moz-column-break-inside:avoid;break-inside:avoid;page-break-inside:avoid}}.history-panel-overlay{position:fixed;inset:0;background:var(--modal-backdrop-color);z-index:var(--z-modal);animation:fadeIn .15s ease-out}.history-panel{position:absolute;top:0;right:0;width:420px;max-width:100%;height:100%;background:var(--color-white);box-shadow:-4px 0 20px #0000001a;display:flex;flex-direction:column;animation:slideIn .25s ease-out}@keyframes slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.panel-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--color-neutral-200);flex-shrink:0}.panel-header h3{display:flex;align-items:center;gap:.5rem;margin:0;font-size:1rem;font-weight:600;color:var(--color-neutral-900)}.btn-close{width:32px;height:32px;padding:0;border:none;background:transparent;color:var(--color-neutral-700);cursor:pointer;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.btn-close:hover{background:var(--color-neutral-100);color:var(--color-neutral-700)}.panel-content{flex:1;overflow-y:auto;padding:1.25rem}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;color:var(--color-neutral-700)}.loading-spinner{width:32px;height:32px;border:3px solid var(--color-neutral-200);border-top-color:var(--color-primary-900);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:1rem}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;text-align:center;color:var(--color-neutral-700)}.empty-state svg{opacity:.4;margin-bottom:1rem}.empty-state p{margin:0;font-weight:500;color:var(--color-neutral-700)}.empty-state span{font-size:.8125rem;margin-top:.25rem}.visit-timeline{display:flex;flex-direction:column}.timeline-item{display:flex;gap:1rem}.timeline-marker{display:flex;flex-direction:column;align-items:center;width:20px;flex-shrink:0}.marker-dot{width:12px;height:12px;border-radius:50%;background:var(--color-neutral-300);border:2px solid var(--color-white);box-shadow:0 0 0 2px var(--color-neutral-200);flex-shrink:0}.marker-dot.current{background:var(--color-primary-900);box-shadow:0 0 0 2px var(--color-primary-300)}.marker-line{flex:1;width:2px;background:var(--color-neutral-200);margin:4px 0}.timeline-content{flex:1;padding-bottom:1.25rem}.visit-card{background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:8px;padding:.875rem;transition:all var(--transition-fast)}.visit-card:hover{border-color:var(--color-neutral-300);box-shadow:0 2px 4px #0000000d}.visit-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.visit-date{font-size:.8125rem;font-weight:600;color:var(--color-neutral-900)}.visit-relative{font-size:.6875rem;color:var(--color-neutral-500)}.visit-body{font-size:.8125rem;color:var(--color-neutral-700)}.visit-reason,.visit-type{margin-bottom:.25rem}.visit-reason strong,.visit-type strong{color:var(--color-neutral-700);font-weight:500}.visit-status{margin-top:.5rem}.status-badge{display:inline-block;padding:.125rem .5rem;font-size:.6875rem;font-weight:500;border-radius:4px;background:var(--color-neutral-100);color:var(--color-neutral-700)}.status-badge.completed{background:var(--color-success-light);color:var(--color-success-hover)}.status-badge.in-progress{background:var(--color-info-light);color:var(--color-primary-900)}.status-badge.cancelled{background:var(--color-error-light);color:var(--color-error)}.status-badge.no-show{background:var(--color-warning-light);color:var(--color-warning)}.btn-view-details{display:flex;align-items:center;gap:.25rem;margin-top:.75rem;padding:0;font-size:.75rem;font-weight:500;color:var(--color-primary-900);background:transparent;border:none;cursor:pointer;transition:color var(--transition-fast)}.btn-view-details:hover{color:var(--color-primary-600)}.panel-footer{padding:1rem 1.25rem;border-top:1px solid var(--color-neutral-200);flex-shrink:0}.btn-view-all{width:100%;padding:.625rem 1rem;font-size:.875rem;font-weight:500;border:1px solid var(--color-neutral-300);border-radius:6px;background:var(--color-white);color:var(--color-neutral-700);cursor:pointer;transition:all var(--transition-fast)}.btn-view-all:hover{background:var(--color-neutral-50);border-color:var(--color-neutral-500)}@media(max-width:480px){.history-panel{width:100%}}.vitals-form{display:flex;flex-direction:column;gap:1.5rem}.vitals-header{display:flex;align-items:center;justify-content:space-between}.vitals-header h3{margin:0;font-size:1rem;font-weight:600;color:var(--color-neutral-900)}.btn-save-vitals{padding:.5rem 1rem;font-size:.8125rem;font-weight:500;border:none;border-radius:6px;background:var(--color-primary-900);color:var(--color-white);cursor:pointer;transition:all var(--transition-fast)}.btn-save-vitals:hover:not(:disabled){background:var(--color-primary-600)}.btn-save-vitals:disabled{opacity:.5;cursor:not-allowed}.vitals-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem}.vital-card{background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:10px;padding:1rem;display:flex;flex-direction:column;gap:.5rem}.vital-icon{width:36px;height:36px;border-radius:8px;background:var(--color-info-light);color:var(--color-primary-900);display:flex;align-items:center;justify-content:center}.vital-card label{font-size:.75rem;font-weight:500;color:var(--color-neutral-700);text-transform:uppercase;letter-spacing:.025em}.vital-input-row{display:flex;align-items:center;gap:.375rem}.vital-card input{width:80px;padding:.5rem;font-size:1.25rem;font-weight:600;border:1px solid var(--color-neutral-200);border-radius:6px;text-align:center;color:var(--color-neutral-900)}.vital-card input:focus{outline:none;border-color:var(--color-primary-900);box-shadow:0 0 0 3px #4a63b31a}.vital-card input::-moz-placeholder{color:var(--color-neutral-300)}.vital-card input::placeholder{color:var(--color-neutral-300)}.vital-unit{font-size:.8125rem;color:var(--color-neutral-700)}.vital-indicator{font-size:.75rem;font-weight:500}.blood-pressure .bp-inputs{display:flex;align-items:center;gap:.25rem}.blood-pressure .bp-inputs input{width:60px}.bp-divider{font-size:1.25rem;color:var(--color-neutral-500);font-weight:300}.weight-height .wh-inputs{display:flex;gap:.5rem}.wh-input{display:flex;align-items:center;gap:.25rem}.wh-input input{width:70px}.wh-input span{font-size:.75rem;color:var(--color-neutral-700)}.bmi-result{display:flex;align-items:center;gap:.5rem;padding-top:.375rem;border-top:1px solid var(--color-neutral-100);font-size:.8125rem;color:var(--color-neutral-700)}.vitals-notes{display:flex;flex-direction:column;gap:.375rem}.vitals-notes label{font-size:.8125rem;font-weight:500;color:var(--color-neutral-700)}.vitals-notes textarea{padding:.625rem .75rem;font-size:.875rem;border:1px solid var(--color-neutral-200);border-radius:6px;resize:vertical;min-height:60px}.vitals-notes textarea:focus{outline:none;border-color:var(--color-primary-900);box-shadow:0 0 0 3px #4a63b31a}@media(max-width:640px){.vitals-grid{grid-template-columns:1fr 1fr}.vital-card.blood-pressure,.vital-card.weight-height{grid-column:span 2}}.soap-notes-form{display:flex;flex-direction:column;gap:1.25rem}.soap-header{display:flex;align-items:center;justify-content:space-between}.soap-header h3{margin:0;font-size:1rem;font-weight:600;color:var(--color-neutral-900)}.soap-actions{display:flex;gap:.5rem}.btn-ai-assist{display:flex;align-items:center;gap:.375rem;padding:.5rem .75rem;font-size:.8125rem;font-weight:500;border:1px solid #a855f7;border-radius:6px;background:var(--color-white);color:#a855f7;cursor:pointer;transition:all var(--transition-fast)}.btn-ai-assist:hover{background:#faf5ff}.btn-save-soap{padding:.5rem 1rem;font-size:.8125rem;font-weight:500;border:none;border-radius:6px;background:var(--color-primary-900);color:var(--color-white);cursor:pointer;transition:all var(--transition-fast)}.btn-save-soap:hover:not(:disabled){background:var(--color-primary-600)}.btn-save-soap:disabled{opacity:.5;cursor:not-allowed}.soap-progress{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:8px}.progress-item{display:flex;align-items:center;gap:.375rem;font-size:.75rem;font-weight:500;color:var(--color-neutral-500)}.progress-item.complete{color:var(--color-success)}.progress-item.partial{color:var(--color-warning)}.progress-connector{flex:1;height:2px;background:var(--color-neutral-200);max-width:40px}.status-icon{width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.625rem;font-weight:600}.status-icon.complete{background:var(--color-success-light);color:var(--color-success-hover)}.status-icon.partial{background:var(--color-warning-light);color:var(--color-warning)}.status-icon.empty{background:var(--color-neutral-100);color:var(--color-neutral-500)}.soap-fields{display:flex;flex-direction:column;gap:1rem}.soap-field{background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:10px;padding:1rem;transition:all .2s}.soap-field.active{border-color:var(--color-primary-900);box-shadow:0 0 0 3px #4a63b31a}.field-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:.5rem}.field-header label{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;color:var(--color-neutral-900)}.field-letter{width:24px;height:24px;border-radius:6px;background:var(--color-primary-900);color:var(--color-white);display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700}.field-hint{font-size:.6875rem;color:var(--color-neutral-500);max-width:300px;text-align:right}.soap-field textarea{width:100%;padding:.625rem;font-size:.875rem;line-height:1.5;border:1px solid var(--color-neutral-200);border-radius:6px;resize:vertical;min-height:80px;font-family:inherit}.soap-field textarea:focus{outline:none;border-color:var(--color-primary-900)}.soap-field textarea::-moz-placeholder{color:var(--color-neutral-500)}.soap-field textarea::placeholder{color:var(--color-neutral-500)}.char-count{display:block;text-align:right;font-size:.6875rem;color:var(--color-neutral-500);margin-top:.25rem}.ai-assist-panel{background:linear-gradient(135deg,#faf5ff,#f3e8ff);border:1px solid #e9d5ff;border-radius:10px;overflow:hidden}.ai-panel-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:var(--color-white);border-bottom:1px solid #e9d5ff}.ai-panel-header h4{display:flex;align-items:center;gap:.5rem;margin:0;font-size:.875rem;font-weight:600;color:var(--color-primary-900)}.btn-close-panel{width:24px;height:24px;padding:0;border:none;background:transparent;color:var(--color-neutral-500);font-size:1.25rem;cursor:pointer;border-radius:4px;transition:all var(--transition-fast)}.btn-close-panel:hover{background:var(--color-neutral-100);color:var(--color-neutral-700)}.ai-panel-content{padding:1rem}.ai-disclaimer{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:var(--color-warning-light);border-radius:6px;font-size:.75rem;color:#92400e;margin-bottom:1rem}.ai-context{margin-bottom:1rem;font-size:.8125rem;color:var(--color-neutral-700)}.ai-context strong{color:var(--color-neutral-900)}.ai-context p{margin:.25rem 0}.ai-allergies{color:var(--color-error);font-weight:500}.ai-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.ai-action-btn{padding:.5rem .75rem;font-size:.75rem;font-weight:500;border:1px solid var(--color-primary-300);border-radius:6px;background:var(--color-white);color:var(--color-primary-900);cursor:pointer;transition:all var(--transition-fast)}.ai-action-btn:hover{background:#ede9fe;border-color:#a78bfa}.ai-note{margin:0;font-size:.75rem;color:var(--color-neutral-700);font-style:italic}@media(max-width:640px){.soap-progress{flex-wrap:wrap;justify-content:center}.progress-connector{display:none}.field-header{flex-direction:column;gap:.25rem}.field-hint{max-width:none;text-align:left}}.prescription-form{display:flex;flex-direction:column;gap:1.25rem}.prescription-header{display:flex;align-items:center;justify-content:space-between}.prescription-header h3{margin:0;font-size:1rem;font-weight:600;color:var(--color-neutral-900)}.btn-save-rx{padding:.5rem 1rem;font-size:.8125rem;font-weight:500;border:none;border-radius:6px;background:var(--color-primary-900);color:var(--color-white);cursor:pointer;transition:all var(--transition-fast)}.btn-save-rx:hover:not(:disabled){background:var(--color-primary-600)}.btn-save-rx:disabled{opacity:.5;cursor:not-allowed}.allergy-warning{display:flex;align-items:center;gap:.5rem;padding:.625rem .875rem;background:var(--color-error-light);border:1px solid #fecaca;border-radius:6px;color:var(--color-error);font-size:.8125rem}.allergy-warning strong{color:var(--color-error-hover)}.prescription-list{display:flex;flex-direction:column;gap:.5rem}.prescription-item{display:flex;align-items:flex-start;gap:.75rem;padding:.875rem 1rem;background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:8px;transition:all var(--transition-fast)}.prescription-item.editing{border-color:var(--color-primary-900);background:var(--color-info-light)}.rx-icon{width:36px;height:36px;border-radius:8px;background:var(--color-primary-100);color:var(--color-primary-900);display:flex;align-items:center;justify-content:center;flex-shrink:0}.rx-details{flex:1}.rx-name{font-size:.875rem;font-weight:600;color:var(--color-neutral-900)}.rx-dosage{font-size:.75rem;color:var(--color-neutral-700);margin-top:.125rem}.rx-instructions{font-size:.75rem;color:var(--color-success-hover);font-style:italic;margin-top:.25rem}.rx-actions{display:flex;gap:.25rem;flex-shrink:0}.btn-edit{padding:.25rem .5rem;font-size:.6875rem;font-weight:500;border:1px solid var(--color-neutral-300);border-radius:4px;background:var(--color-white);color:var(--color-neutral-700);cursor:pointer;transition:all var(--transition-fast)}.btn-edit:hover{background:var(--color-neutral-100)}.btn-remove{padding:.25rem .5rem;font-size:.6875rem;font-weight:500;border:1px solid var(--color-error);border-radius:4px;background:var(--color-white);color:var(--color-error);cursor:pointer;transition:all var(--transition-fast)}.btn-remove:hover{background:var(--color-error);color:var(--color-white)}.add-prescription{background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:10px;padding:1rem}.add-prescription h4{margin:0 0 1rem;font-size:.875rem;font-weight:600;color:var(--color-neutral-700)}.medication-search{position:relative;margin-bottom:1rem}.medication-search label{display:block;font-size:.75rem;font-weight:500;color:var(--color-neutral-700);margin-bottom:.375rem}.medication-search input{width:100%;padding:.625rem .75rem;font-size:.875rem;border:1px solid var(--color-neutral-300);border-radius:6px;transition:all var(--transition-fast)}.medication-search input:focus{outline:none;border-color:var(--color-primary-900);box-shadow:0 0 0 3px #4a63b31a}.selected-medication{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;background:var(--color-info-light);border:1px solid var(--color-primary-300);border-radius:6px}.selected-medication span{font-size:.875rem;font-weight:500;color:var(--color-primary-900)}.selected-medication button{font-size:.75rem;color:var(--color-primary-900);background:transparent;border:none;cursor:pointer;text-decoration:underline}.search-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:8px;box-shadow:var(--shadow-lg);max-height:300px;overflow-y:auto;z-index:50}.search-loading,.no-results{padding:1rem;text-align:center;font-size:.8125rem;color:var(--color-neutral-700)}.search-results,.common-medications{padding:.5rem 0}.common-label{padding:.375rem .75rem;font-size:.6875rem;font-weight:600;color:var(--color-neutral-500);text-transform:uppercase;letter-spacing:.025em}.search-result-item{display:block;width:100%;padding:.625rem .75rem;text-align:left;background:transparent;border:none;cursor:pointer;transition:background .1s}.search-result-item:hover{background:var(--color-neutral-100)}.med-name{font-size:.8125rem;font-weight:500;color:var(--color-neutral-900)}.med-form{font-weight:400;color:var(--color-neutral-700);margin-left:.375rem}.med-info{font-size:.6875rem;color:var(--color-neutral-700);margin-top:.125rem;display:flex;gap:.5rem}.generic{font-style:italic}.out-of-stock{color:var(--color-error)}.in-stock{color:var(--color-success-hover)}.prescription-details{display:flex;flex-direction:column;gap:.75rem}.prescription-details .form-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.prescription-details .form-group{display:flex;flex-direction:column;gap:.25rem}.prescription-details .form-group.full-width{grid-column:span 2}.prescription-details label{font-size:.75rem;font-weight:500;color:var(--color-neutral-700)}.prescription-details input,.prescription-details select,.prescription-details textarea{padding:.5rem .625rem;font-size:.8125rem;border:1px solid var(--color-neutral-300);border-radius:6px;transition:all var(--transition-fast)}.prescription-details input:focus,.prescription-details select:focus,.prescription-details textarea:focus{outline:none;border-color:var(--color-primary-900);box-shadow:0 0 0 3px #4a63b31a}.prescription-details textarea{resize:vertical;min-height:50px}.form-actions{display:flex;justify-content:flex-end;gap:.5rem;padding-top:.5rem;border-top:1px solid var(--color-neutral-200)}.btn-cancel{padding:.5rem .875rem;font-size:.8125rem;font-weight:500;border:1px solid var(--color-neutral-300);border-radius:6px;background:var(--color-white);color:var(--color-neutral-700);cursor:pointer;transition:all var(--transition-fast)}.btn-cancel:hover{background:var(--color-neutral-100)}.btn-add-rx{padding:.5rem .875rem;font-size:.8125rem;font-weight:500;border:none;border-radius:6px;background:var(--color-success);color:var(--color-white);cursor:pointer;transition:all var(--transition-fast)}.btn-add-rx:hover{background:var(--color-success-hover)}@media(max-width:640px){.prescription-details .form-row{grid-template-columns:1fr}.prescription-details .form-group.full-width{grid-column:span 1}}.consultation-form{display:flex;flex-direction:column;height:100%;background:var(--color-neutral-50)}.consultation-header{background:var(--color-white);border-bottom:1px solid var(--color-neutral-200);padding:1rem 1.5rem}.patient-summary{display:flex;align-items:center;gap:1rem}.patient-avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary-900) 0%,var(--color-primary-600) 100%);color:var(--color-white);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.25rem;flex-shrink:0}.patient-details{flex:1}.patient-name-row{display:flex;align-items:center;gap:.5rem}.patient-name-row h2{margin:0;font-size:1.125rem;font-weight:600;color:var(--color-neutral-900)}.vip-badge{background:linear-gradient(135deg,var(--color-warning) 0%,var(--color-warning-hover) 100%);color:var(--color-white);font-size:.625rem;font-weight:600;padding:.125rem .375rem;border-radius:4px;text-transform:uppercase}.patient-meta{display:flex;align-items:center;gap:.375rem;margin-top:.25rem;font-size:.8125rem;color:var(--color-neutral-700)}.patient-meta .separator{color:var(--color-neutral-300)}.panel-badge{background:var(--color-info-light);color:var(--color-primary-900);padding:.125rem .375rem;border-radius:4px;font-size:.75rem}.visit-info{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem}.queue-number{font-size:1.5rem;font-weight:700;color:var(--color-primary-900)}.visit-reason{font-size:.75rem;color:var(--color-neutral-700)}.header-actions{margin-left:auto}.btn-history{display:flex;align-items:center;gap:.375rem;padding:.5rem .75rem;font-size:.8125rem;font-weight:500;border:1px solid var(--color-neutral-300);border-radius:6px;background:var(--color-white);color:var(--color-neutral-700);cursor:pointer;transition:all var(--transition-fast)}.btn-history:hover{background:var(--color-neutral-50);border-color:var(--color-neutral-500)}.patient-alerts{margin-top:.75rem}.alert-badge{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border-radius:6px;font-size:.75rem;font-weight:600}.alert-danger{background:var(--color-error-light);color:var(--color-error)}.consultation-tabs{display:flex;background:var(--color-white);border-bottom:1px solid var(--color-neutral-200);padding:0 1.5rem}.consultation-tabs .tab{display:flex;align-items:center;gap:.5rem;padding:.875rem 1.25rem;font-size:.875rem;font-weight:500;color:var(--color-neutral-700);background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all var(--transition-fast);margin-bottom:-1px}.consultation-tabs .tab:hover{color:var(--color-neutral-700)}.consultation-tabs .tab.active{color:var(--color-primary-900);border-bottom-color:var(--color-primary-900)}.tab-number{width:20px;height:20px;border-radius:50%;background:var(--color-neutral-200);color:var(--color-neutral-700);display:flex;align-items:center;justify-content:center;font-size:.6875rem;font-weight:600}.tab.active .tab-number{background:var(--color-primary-900);color:var(--color-white)}.tab-check{color:var(--color-success);font-size:.75rem}.tab-count{background:var(--color-info-light);color:var(--color-primary-900);padding:.125rem .375rem;border-radius:4px;font-size:.6875rem;font-weight:600}.consultation-content{flex:1;overflow:hidden;display:flex;flex-direction:column}.tab-content{flex:1;overflow-y:auto;padding:1.5rem}.summary-tab{display:flex;flex-direction:column;gap:1.5rem}.summary-section h3{margin:0 0 .75rem;font-size:.9375rem;font-weight:600;color:var(--color-neutral-900)}.summary-section .form-row{display:grid;grid-template-columns:2fr 1fr;gap:1rem}.summary-section .form-group{display:flex;flex-direction:column;gap:.375rem}.summary-section .form-group label{font-size:.8125rem;font-weight:500;color:var(--color-neutral-700)}.summary-section input,.summary-section textarea{padding:.5rem .75rem;font-size:.875rem;border:1px solid var(--color-neutral-300);border-radius:6px;background:var(--color-white);transition:all var(--transition-fast)}.summary-section input:focus,.summary-section textarea:focus{outline:none;border-color:var(--color-primary-900);box-shadow:0 0 0 3px #4a63b31a}.summary-section textarea{resize:vertical;min-height:60px}.review-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.review-card{background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:8px;padding:1rem}.review-card h4{margin:0 0 .75rem;font-size:.8125rem;font-weight:600;color:var(--color-neutral-700);text-transform:uppercase;letter-spacing:.025em}.review-card ul{margin:0;padding:0;list-style:none}.review-card li{font-size:.8125rem;color:var(--color-neutral-700);padding:.25rem 0;border-bottom:1px solid var(--color-neutral-100)}.review-card li:last-child{border-bottom:none}.review-card .empty{margin:0;font-size:.8125rem;color:var(--color-neutral-500);font-style:italic}.consultation-footer{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;background:var(--color-white);border-top:1px solid var(--color-neutral-200)}.footer-right{display:flex;align-items:center;gap:1rem}.unsaved-indicator{font-size:.75rem;color:var(--color-warning)}.btn-secondary{padding:.5rem 1rem;font-size:.875rem;font-weight:500;border:1px solid var(--color-neutral-300);border-radius:6px;background:var(--color-white);color:var(--color-neutral-700);cursor:pointer;transition:all var(--transition-fast)}.btn-secondary:hover:not(:disabled){background:var(--color-neutral-50);border-color:var(--color-neutral-500)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-complete{padding:.625rem 1.25rem;font-size:.875rem;font-weight:500;border:none;border-radius:6px;background:linear-gradient(135deg,var(--color-success) 0%,var(--color-success-hover) 100%);color:var(--color-white);cursor:pointer;transition:all var(--transition-fast)}.btn-complete:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 6px -1px #05966940}.btn-complete:disabled{opacity:.5;cursor:not-allowed;transform:none}@media(max-width:768px){.patient-summary{flex-wrap:wrap}.visit-info{width:100%;flex-direction:row;justify-content:space-between;margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--color-neutral-200)}.consultation-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.consultation-tabs .tab{white-space:nowrap}.review-cards,.summary-section .form-row{grid-template-columns:1fr}}.print-preview-modal .modal-body{padding:0;overflow:hidden}.print-preview-container{width:100%;height:70vh;min-height:400px;background:var(--color-neutral-100);display:flex;align-items:center;justify-content:center}.print-preview-iframe{width:100%;height:100%;border:none;background:#fff}.print-preview-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;width:100%}.print-preview-actions .btn{padding:.625rem 1.5rem;border-radius:var(--radius-md);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-normal)}.print-preview-actions .btn-outline{background:transparent;border:1px solid var(--color-neutral-300);color:var(--color-neutral-700)}.print-preview-actions .btn-outline:hover{background:var(--color-neutral-50);border-color:var(--color-neutral-400)}.print-preview-actions .btn-primary{background:var(--color-primary-900);border:1px solid var(--color-primary-900);color:#fff}.print-preview-actions .btn-primary:hover{background:var(--color-primary-600)}@media print{.print-preview-modal{display:none!important}}.consultation-module{display:flex;flex-direction:column;gap:var(--spacing-md);height:100%;position:relative;width:100%;box-sizing:border-box}.consultation-header{display:flex;align-items:center;flex-wrap:wrap;gap:var(--spacing-md);padding:var(--spacing-md) 1.25rem;background:var(--color-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm)}.header-left{display:flex;align-items:center;gap:var(--spacing-md);flex:1;min-width:200px}.header-right{display:flex;align-items:center;gap:var(--spacing-md);flex-shrink:0;margin-left:auto}.back-btn{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:var(--font-size-body);color:var(--color-neutral-600);cursor:pointer;transition:all var(--transition-normal)}.back-btn:hover{background:var(--color-neutral-100);border-color:var(--color-neutral-300)}.patient-summary .patient-name{display:flex;align-items:center;gap:var(--spacing-sm);margin:0 0 var(--spacing-xs);font-size:1.25rem;font-weight:var(--font-weight-semibold);color:var(--color-neutral-800)}.patient-meta{display:flex;align-items:center;gap:var(--spacing-md);font-size:var(--font-size-body);color:var(--color-neutral-500)}.patient-meta .priority-badge{font-size:.625rem;font-weight:var(--font-weight-bold);padding:.125rem var(--spacing-sm);border-radius:var(--radius-sm);text-transform:uppercase}.patient-meta .priority-badge.urgent{background:var(--color-warning-100);color:var(--color-warning-800)}.patient-meta .priority-badge.emergency{background:var(--color-error-100);color:var(--color-error-700)}.consultation-state-container{display:flex;align-items:center;flex-shrink:0}.consultation-state-badge{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-full);font-size:.75rem;font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.05em;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.consultation-state-badge .badge-icon{font-size:.875rem}.consultation-state-badge.saved{background:var(--color-success-100);color:var(--color-success-700);border:1px solid var(--color-success-300)}.consultation-state-badge.unsaved{background:var(--color-warning-100);color:var(--color-warning-800);border:1px solid var(--color-warning-400);animation:pulse-unsaved 1.5s ease-in-out infinite}@keyframes pulse-unsaved{0%,to{box-shadow:0 0 #f59e0b66}50%{box-shadow:0 0 0 4px #f59e0b00}}.consultation-state-badge.locked{background:var(--color-neutral-100);color:var(--color-neutral-600);border:1px solid var(--color-neutral-300)}.ai-toggle-btn{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-primary-900);color:var(--color-white);border:none;border-radius:var(--radius-md);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-normal)}.ai-toggle-btn:hover{background:var(--color-primary-600)}.ai-toggle-btn.active{background:var(--color-primary-900);box-shadow:inset 0 2px 4px #0003}.complete-btn{padding:.75rem 1.25rem;background:linear-gradient(135deg,#059669,#047857);color:var(--color-white);border:none;border-radius:var(--radius-lg);font-size:.875rem;font-weight:var(--font-weight-bold);cursor:pointer;transition:all var(--transition-normal);box-shadow:0 2px 8px #05966959;white-space:nowrap;flex-shrink:0;min-width:180px;text-align:center}.complete-btn:hover:not(:disabled){background:linear-gradient(135deg,#047857,#065f46);box-shadow:0 4px 12px #05966973;transform:translateY(-1px)}.complete-btn:disabled{background:var(--color-neutral-400);box-shadow:none;cursor:not-allowed;transform:none}.consultation-footer{position:absolute;bottom:var(--spacing-md);left:var(--spacing-lg);display:flex;align-items:center}.consultation-footer .last-updated{font-size:.75rem;color:var(--color-neutral-500);font-style:italic}.patient-info-bar{display:flex;flex-wrap:wrap;gap:var(--spacing-md);padding:.875rem 1.25rem;background:var(--color-neutral-50);border-radius:10px;border:1px solid var(--color-neutral-200)}.patient-info-bar .info-item{display:flex;flex-direction:column;gap:.125rem}.patient-info-bar .info-item .label{font-size:.625rem;font-weight:var(--font-weight-semibold);color:var(--color-neutral-400);text-transform:uppercase;letter-spacing:.05em}.patient-info-bar .info-item .value{font-size:var(--font-size-body);color:var(--color-neutral-800)}.patient-info-bar .info-item.panel .value{color:var(--color-primary-900);font-weight:var(--font-weight-medium)}.patient-info-bar .info-item.allergies{flex:1;min-width:200px}.patient-info-bar .info-item.allergies .value{color:var(--color-error-700);font-weight:var(--font-weight-medium)}.tab-navigation{display:flex;gap:6px;background:var(--color-neutral-100);padding:6px;border-radius:12px;box-shadow:inset 0 1px 3px #00000014;border:1px solid var(--color-neutral-200)}.tab-btn{flex:1;padding:10px var(--spacing-md);border:1px solid transparent;border-radius:8px;font-size:var(--font-size-body);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s ease;position:relative;text-align:center;min-width:100px}.tab-btn[data-tab=vitals]{background:#fef2f2;color:#b91c1c;border-color:#fecaca}.tab-btn[data-tab=soap]{background:#fef9c3;color:#a16207;border-color:#fde047}.tab-btn[data-tab=diagnosis]{background:#dcfce7;color:#15803d;border-color:#86efac}.tab-btn[data-tab=prescriptions]{background:#e0e7ff;color:#4338ca;border-color:#a5b4fc}.tab-btn[data-tab=documents]{background:#f3e8ff;color:var(--color-primary-900);border-color:#d8b4fe}.tab-btn[data-tab=summary]{background:#ecfeff;color:#0e7490;border-color:#a5f3fc}.tab-btn:hover:not(.active){filter:brightness(.95);box-shadow:0 1px 3px #0000001a;transform:translateY(-1px)}.tab-btn:focus{outline:none;box-shadow:0 0 0 2px var(--color-primary-200)}.tab-btn:focus:not(:focus-visible){box-shadow:none}.tab-btn:focus-visible{box-shadow:0 0 0 2px var(--color-primary-200)}.tab-btn.active{background:var(--color-white)!important;color:var(--color-primary-900)!important;border-color:transparent!important;border-bottom:3px solid var(--color-primary-900)!important;box-shadow:none;font-weight:var(--font-weight-semibold);transform:translateY(0);border-radius:8px 8px 0 0}.tab-btn.active:after{display:none}.tab-content{flex:1;background:var(--color-white);border-radius:var(--radius-xl);padding:1.25rem;box-shadow:var(--shadow-sm);overflow-y:auto}.tab-actions{display:flex;justify-content:flex-end;gap:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-neutral-200);margin-top:var(--spacing-md)}.save-btn{padding:.625rem var(--spacing-lg);background:var(--color-primary-900);color:var(--color-white);border:none;border-radius:var(--radius-md);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--transition-normal)}.save-btn:hover:not(:disabled){background:var(--color-primary-600)}.save-btn:disabled{background:var(--color-neutral-400);cursor:not-allowed}.auto-save-status{display:flex;justify-content:flex-end;padding-top:var(--spacing-md);min-height:28px}.auto-save-status .status{font-size:var(--font-size-caption);padding:4px 12px;border-radius:var(--radius-md)}.auto-save-status .status.saving{color:var(--color-neutral-600);background:var(--color-neutral-100)}.auto-save-status .status.saved{color:var(--color-success);background:var(--color-success-light)}.auto-save-status .status.error{color:var(--color-error);background:var(--color-error-light)}.vitals-tab .vitals-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md)}.vitals-tab .vitals-group{grid-column:span 2}.vitals-tab .vitals-group h4{margin:0 0 var(--spacing-md);font-size:.8125rem;font-weight:var(--font-weight-semibold);color:var(--color-neutral-600)}.vitals-tab .bp-inputs{display:flex;align-items:flex-end;gap:var(--spacing-sm)}.vitals-tab .bp-divider{font-size:var(--spacing-lg);color:var(--color-neutral-400);padding-bottom:.375rem}.vitals-tab .body-measurements{display:flex;gap:var(--spacing-md)}.vitals-tab .form-group{display:flex;flex-direction:column;gap:.375rem}.vitals-tab .form-group.full-width{grid-column:1 / -1}.vitals-tab .form-group label{font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);color:var(--color-neutral-600)}.vitals-tab .form-group input,.vitals-tab .form-group textarea{padding:.625rem var(--spacing-md);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:.9375rem;outline:none;transition:border-color var(--transition-normal)}.vitals-tab .form-group input:focus,.vitals-tab .form-group textarea:focus{border-color:var(--color-primary-900)}.vitals-tab .form-group input.read-only{background:var(--color-neutral-50);color:var(--color-neutral-500)}.soap-tab .soap-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.soap-tab .soap-section{display:flex;flex-direction:column;gap:var(--spacing-sm)}.soap-tab .soap-section label{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);color:var(--color-neutral-600)}.soap-tab .soap-letter{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background:var(--color-primary-900);color:var(--color-white);border-radius:var(--radius-sm);font-weight:var(--font-weight-bold);font-size:var(--font-size-caption)}.soap-tab .soap-section textarea{padding:var(--spacing-md);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);font-size:.9375rem;font-family:inherit;resize:vertical;outline:none;transition:border-color var(--transition-normal)}.soap-tab .soap-section textarea:focus{border-color:var(--color-primary-900)}.prescriptions-tab .allergy-warning{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-md);background:var(--color-error-50);border:1px solid var(--color-error-200);border-radius:var(--radius-lg);color:var(--color-error-700);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);margin-bottom:var(--spacing-md)}.prescriptions-tab .allergy-warning .warning-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;background:var(--color-error-700);color:var(--color-white);border-radius:50%;font-size:var(--font-size-caption);font-weight:var(--font-weight-bold)}.add-medication-section{margin-bottom:var(--spacing-md)}.add-med-btn{padding:.625rem var(--spacing-md);background:var(--color-success-600);color:var(--color-white);border:none;border-radius:var(--radius-md);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--transition-normal)}.add-med-btn:hover{background:var(--color-success-800)}.medication-search{margin-top:var(--spacing-md);position:relative}.medication-search input{width:100%;padding:var(--spacing-md) var(--spacing-md);border:2px solid var(--color-primary-900);border-radius:var(--radius-lg);font-size:.9375rem;outline:none}.medication-search .search-loading{position:absolute;right:var(--spacing-md);top:50%;transform:translateY(-50%);font-size:var(--font-size-caption);color:var(--color-neutral-500)}.medication-search .search-results,.medication-search .common-meds{position:absolute;top:100%;left:0;right:0;background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);max-height:250px;overflow-y:auto;z-index:10}.medication-search .common-label{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-caption);color:var(--color-neutral-500);border-bottom:1px solid var(--color-neutral-200)}.medication-search .search-result{padding:var(--spacing-md);cursor:pointer;border-bottom:1px solid var(--color-neutral-100);transition:background var(--transition-normal)}.medication-search .search-result:last-child{border-bottom:none}.medication-search .search-result:hover{background:var(--color-neutral-50)}.medication-search .search-result.out-of-stock{opacity:.6;cursor:not-allowed}.medication-search .med-name{font-weight:var(--font-weight-medium);color:var(--color-neutral-800)}.medication-search .med-details{font-size:var(--font-size-caption);color:var(--color-neutral-500);margin-top:.125rem}.medication-search .stock-warning{color:var(--color-error-700);font-weight:var(--font-weight-medium);margin-left:var(--spacing-sm)}.prescriptions-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.empty-prescriptions{padding:var(--spacing-xl);text-align:center;color:var(--color-neutral-400);background:var(--color-neutral-50);border-radius:var(--radius-lg)}.prescription-card{border:1px solid var(--color-neutral-200);border-radius:10px;padding:var(--spacing-md)}.prescription-card .rx-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-md)}.prescription-card .rx-name{font-weight:var(--font-weight-semibold);color:var(--color-neutral-800)}.prescription-card .remove-btn{padding:.25rem .5rem;font-size:.6875rem;font-weight:500;border:1px solid var(--color-error);border-radius:4px;background:var(--color-white);color:var(--color-error);cursor:pointer;transition:all var(--transition-normal)}.prescription-card .remove-btn:hover{background:var(--color-error);color:var(--color-white)}.prescription-card .rx-fields{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.prescription-card .form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.prescription-card .form-group.full-width{grid-column:1 / -1}.prescription-card .form-group label{font-size:.6875rem;font-weight:var(--font-weight-semibold);color:var(--color-neutral-500);text-transform:uppercase}.prescription-card .form-group input,.prescription-card .form-group select{padding:var(--spacing-sm) .625rem;border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:var(--font-size-body);outline:none;transition:border-color var(--transition-normal)}.prescription-card .form-group input:focus,.prescription-card .form-group select:focus{border-color:var(--color-primary-900)}.summary-tab .summary-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}.summary-tab .summary-section{background:var(--color-neutral-50);border-radius:10px;padding:var(--spacing-md)}.summary-tab .summary-section.full-width{grid-column:1 / -1}.summary-tab .summary-section h4{margin:0 0 var(--spacing-md);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);color:var(--color-neutral-500);text-transform:uppercase;letter-spacing:.05em}.summary-tab .diagnosis-input{width:100%;padding:var(--spacing-md);border:2px solid var(--color-neutral-200);border-radius:var(--radius-lg);font-size:var(--spacing-md);font-weight:var(--font-weight-medium);outline:none;transition:border-color var(--transition-normal)}.summary-tab .diagnosis-input:focus{border-color:var(--color-primary-900)}.summary-tab .summary-vitals{display:flex;flex-wrap:wrap;gap:var(--spacing-md)}.summary-tab .summary-vitals span{font-size:var(--font-size-body);color:var(--color-neutral-800)}.summary-tab .summary-vitals .no-data,.summary-tab .no-data{color:var(--color-neutral-400);font-style:italic}.summary-tab .soap-summary p{margin:0 0 var(--spacing-sm);font-size:var(--font-size-body);color:var(--color-neutral-600)}.summary-tab .soap-summary p strong{color:var(--color-neutral-800)}.summary-tab .rx-summary-list{margin:0;padding-left:1.25rem}.summary-tab .rx-summary-list li{font-size:var(--font-size-body);color:var(--color-neutral-600);margin-bottom:.375rem}.summary-tab textarea{width:100%;padding:var(--spacing-md);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);font-size:var(--font-size-body);font-family:inherit;resize:vertical;outline:none;transition:border-color var(--transition-normal)}.summary-tab textarea:focus{border-color:var(--color-primary-900)}.summary-tab .previous-visits{display:flex;flex-direction:column;gap:var(--spacing-sm)}.summary-tab .prev-visit-card{display:flex;align-items:center;gap:var(--spacing-md);padding:.625rem var(--spacing-md);background:var(--color-white);border-radius:var(--radius-md);font-size:.8125rem}.summary-tab .prev-visit-card .visit-date{color:var(--color-neutral-500);min-width:80px}.summary-tab .prev-visit-card .visit-reason{color:var(--color-neutral-800);flex:1}.summary-tab .prev-visit-card .visit-diagnosis{color:var(--color-success-600);font-weight:var(--font-weight-medium)}.unsaved-indicator{position:fixed;bottom:var(--spacing-md);left:50%;transform:translate(-50%);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-warning-100);border:1px solid var(--color-warning-500);border-radius:20px;font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);color:var(--color-warning-800);box-shadow:var(--shadow-sm)}.module-error{color:var(--color-error-700)}.retry-button:hover{background:var(--color-primary-950)}.consultation-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem var(--spacing-xl);background:var(--color-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);text-align:center;min-height:400px}.consultation-empty-state .empty-icon{font-size:4rem;margin-bottom:var(--spacing-lg)}.consultation-empty-state h3{margin:0 0 var(--spacing-md);font-size:var(--spacing-lg);color:var(--color-neutral-800)}.consultation-empty-state p{margin:0 0 var(--spacing-lg);font-size:var(--spacing-md);color:var(--color-neutral-500);max-width:400px}.consultation-empty-state p strong{color:var(--color-primary-600);font-weight:var(--font-weight-semibold)}.consultation-empty-state .call-next-btn{padding:var(--spacing-md) var(--spacing-xl);font-size:1rem;font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-md)}.consultation-empty-state .btn-secondary{margin-top:var(--spacing-sm)}.diagnosis-tab{display:flex;flex-direction:column;gap:var(--spacing-lg)}.add-diagnosis-section{display:flex;flex-direction:column;gap:var(--spacing-md)}.diagnosis-type-selector{display:flex;align-items:center;gap:var(--spacing-md)}.diagnosis-type-selector label{font-size:var(--font-size-body);font-weight:var(--font-weight-medium);color:var(--color-neutral-600)}.type-buttons{display:flex;gap:var(--spacing-sm)}.type-btn{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-white);border:2px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:.8125rem;font-weight:var(--font-weight-medium);color:var(--color-neutral-600);cursor:pointer;transition:all var(--transition-normal)}.type-btn:hover{background:var(--color-neutral-50);border-color:var(--color-neutral-300)}.type-btn.active{background:var(--color-neutral-50);color:var(--color-neutral-800);font-weight:var(--font-weight-semibold)}.diagnosis-search-container{position:relative;margin-bottom:var(--spacing-md)}.search-input-wrapper{display:flex;align-items:center;gap:var(--spacing-sm);background:var(--color-white);border:2px solid var(--color-neutral-300);border-radius:var(--radius-lg);padding:0 var(--spacing-md);transition:all var(--transition-normal)}.search-input-wrapper:focus-within{border-color:var(--color-primary-600);box-shadow:0 0 0 3px var(--color-primary-100)}.search-input-wrapper .search-icon{position:static;font-size:1rem;color:var(--color-neutral-400);flex-shrink:0;align-self:center;line-height:1;display:flex;align-items:center}.diagnosis-search-input{flex:1;padding:var(--spacing-md) 0;border:none;font-size:.9375rem;outline:none;background:transparent}.diagnosis-search-input::-moz-placeholder{color:var(--color-neutral-400)}.diagnosis-search-input::placeholder{color:var(--color-neutral-400)}.clear-search-btn{background:none;border:none;font-size:1.25rem;color:var(--color-neutral-400);cursor:pointer;padding:.25rem;line-height:1}.clear-search-btn:hover{color:var(--color-neutral-600)}.search-loading{position:absolute;right:var(--spacing-xl);top:50%;transform:translateY(-50%);font-size:var(--font-size-caption);color:var(--color-primary-600)}.search-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-height:400px;overflow-y:auto;z-index:100;margin-top:var(--spacing-xs)}.search-dropdown .results-header{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-caption);color:var(--color-neutral-500);background:var(--color-neutral-50);border-bottom:1px solid var(--color-neutral-200)}.search-dropdown .no-results{padding:var(--spacing-lg) var(--spacing-md);text-align:center;color:var(--color-neutral-500);font-size:var(--font-size-body)}.search-dropdown .frequent-label{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);color:var(--color-neutral-600);background:var(--color-neutral-50);border-bottom:1px solid var(--color-neutral-200)}.search-dropdown .search-result{padding:var(--spacing-md) var(--spacing-md);cursor:pointer;border-bottom:1px solid var(--color-neutral-100);transition:background var(--transition-normal);display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md)}.search-dropdown .search-result:last-child{border-bottom:none}.search-dropdown .search-result:hover{background:var(--color-primary-50)}.search-dropdown .search-result.common:hover{background:var(--color-success-100)}.search-dropdown .code-info{display:flex;align-items:center;gap:var(--spacing-md);flex:1;min-width:0}.search-dropdown .icd-code{font-family:monospace;font-weight:var(--font-weight-bold);color:var(--color-primary-800);background:var(--color-primary-100);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:.8125rem;white-space:nowrap}.search-dropdown .code-description{color:var(--color-neutral-700);font-size:var(--font-size-body);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-dropdown .code-meta{display:flex;align-items:center;gap:var(--spacing-sm);flex-shrink:0}.search-dropdown .category-badge{font-size:.625rem;font-weight:var(--font-weight-medium);color:var(--color-neutral-600);background:var(--color-neutral-100);padding:.125rem var(--spacing-sm);border-radius:var(--radius-sm);text-transform:uppercase}.search-dropdown .common-badge{font-size:.625rem;font-weight:var(--font-weight-semibold);color:var(--color-success-700);background:var(--color-success-100);padding:.125rem var(--spacing-sm);border-radius:var(--radius-sm);text-transform:uppercase}.diagnoses-list{display:flex;flex-direction:column;gap:1.25rem}.empty-diagnoses{padding:var(--spacing-2xl) var(--spacing-xl);text-align:center;background:var(--color-neutral-50);border-radius:10px;border:2px dashed var(--color-neutral-200)}.empty-diagnoses p{margin:0;color:var(--color-neutral-500)}.empty-diagnoses .hint{font-size:.8125rem;color:var(--color-neutral-400);margin-top:var(--spacing-sm)}.diagnosis-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.diagnosis-group h4{margin:0;font-size:.8125rem;font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.05em}.diagnosis-card{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-md);background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);transition:box-shadow var(--transition-normal)}.diagnosis-card:hover{box-shadow:0 2px 8px #00000014}.diagnosis-main{display:flex;align-items:center;gap:var(--spacing-md)}.diagnosis-type-badge{font-size:.625rem;font-weight:var(--font-weight-semibold);color:var(--color-white);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);text-transform:uppercase}.diagnosis-code{font-family:monospace;font-weight:var(--font-weight-semibold);color:var(--color-primary-900);font-size:.9375rem}.diagnosis-description{color:var(--color-neutral-700);font-size:.9375rem}.diagnosis-card .remove-btn{width:24px;height:24px;background:var(--color-error-100);color:var(--color-error-700);border:none;border-radius:var(--radius-sm);font-size:1.25rem;line-height:1;cursor:pointer;transition:background var(--transition-normal)}.diagnosis-card .remove-btn:hover{background:var(--color-error-200)}.documents-tab .documents-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-lg)}.document-section{display:flex;flex-direction:column;gap:var(--spacing-md)}.document-section .section-header{display:flex;align-items:center;justify-content:space-between}.document-section .section-header h4{margin:0;font-size:var(--spacing-md);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.create-doc-btn{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-success-700);color:var(--color-white);border:none;border-radius:var(--radius-md);font-size:.8125rem;font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--transition-normal)}.create-doc-btn:hover{background:var(--color-success-800)}.documents-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.empty-docs{padding:var(--spacing-xl);text-align:center;color:var(--color-neutral-400);background:var(--color-neutral-50);border-radius:var(--radius-lg);border:1px dashed var(--color-neutral-200);font-size:var(--font-size-body)}.document-card{background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:10px;padding:var(--spacing-md);transition:box-shadow var(--transition-normal)}.document-card:hover{box-shadow:0 2px 8px #00000014}.document-card .doc-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-md)}.document-card .doc-number{font-weight:var(--font-weight-semibold);font-family:monospace;color:var(--color-neutral-900);font-size:.9375rem}.document-card .doc-status,.document-card .urgency-badge{font-size:.625rem;font-weight:var(--font-weight-semibold);color:var(--color-white);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);text-transform:uppercase}.document-card .doc-details{display:flex;flex-direction:column;gap:.375rem;margin-bottom:var(--spacing-md)}.document-card .detail-row{display:flex;gap:var(--spacing-sm);font-size:.8125rem}.document-card .detail-row .label{color:var(--color-neutral-500);min-width:60px}.document-card .detail-row .value{color:var(--color-neutral-700)}.document-card .doc-actions{display:flex;gap:var(--spacing-sm)}.btn-small{padding:.375rem var(--spacing-md);background:var(--color-neutral-100);color:var(--color-neutral-700);border:1px solid var(--color-neutral-200);border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-normal)}.btn-small:hover{background:var(--color-neutral-200)}.document-section.full-width{grid-column:1 / -1}.past-documents-section{margin-top:var(--spacing-md);border-top:1px solid var(--color-neutral-100);padding-top:var(--spacing-md)}.toggle-past-btn{display:flex;align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:var(--font-size-body);color:var(--color-neutral-600);cursor:pointer;transition:all var(--transition-normal);text-align:left}.toggle-past-btn:hover{background:var(--color-neutral-100);border-color:var(--color-neutral-300)}.past-documents-list{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-top:var(--spacing-md)}.document-card.past{background:var(--color-neutral-50);border-color:var(--color-neutral-150);opacity:.9}.document-card.past .doc-header{margin-bottom:var(--spacing-sm)}.document-card.past .doc-date{font-size:.75rem;color:var(--color-neutral-500)}.more-docs-note{padding:var(--spacing-sm);text-align:center;font-size:var(--font-size-caption);color:var(--color-neutral-500);font-style:italic}.upload-area{margin-top:var(--spacing-sm)}.upload-placeholder{padding:var(--spacing-xl) var(--spacing-lg);text-align:center;background:var(--color-neutral-50);border:2px dashed var(--color-neutral-300);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-normal)}.upload-placeholder:hover{background:var(--color-primary-50);border-color:var(--color-primary-300)}.upload-placeholder .upload-icon{font-size:2rem;margin-bottom:var(--spacing-sm);display:block}.upload-placeholder p{margin:var(--spacing-xs) 0;color:var(--color-neutral-600);font-size:var(--font-size-body)}.upload-placeholder .upload-hint{color:var(--color-neutral-500);font-size:var(--font-size-caption)}.upload-placeholder .upload-formats{color:var(--color-neutral-400);font-size:var(--font-size-caption);margin-top:var(--spacing-sm)}.upload-modal{max-width:500px}.file-drop-zone{position:relative}.file-input{display:none}.file-drop-label{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xl);border:2px dashed var(--color-neutral-300);border-radius:var(--radius-lg);background:var(--color-neutral-50);cursor:pointer;transition:all var(--transition-normal);min-height:120px;justify-content:center}.file-drop-label:hover{background:var(--color-primary-50);border-color:var(--color-primary-300)}.file-drop-zone.dragging .file-drop-label{background:var(--color-primary-100);border-color:var(--color-primary-500);border-width:3px}.file-drop-label .upload-icon{font-size:1.5rem}.file-drop-label span{color:var(--color-neutral-600);font-size:var(--font-size-body);text-align:center}.file-drop-label .file-formats{color:var(--color-neutral-400);font-size:var(--font-size-caption)}.selected-files{margin-top:var(--spacing-md);padding:var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-md)}.selected-files h5{margin:0 0 var(--spacing-sm);font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700)}.file-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--spacing-xs)}.file-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-sm)}.file-item .file-name{flex:1;font-size:var(--font-size-body);color:var(--color-neutral-700);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-item .file-size{font-size:var(--font-size-caption);color:var(--color-neutral-500)}.remove-file-btn{display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;background:var(--color-neutral-100);border:none;border-radius:50%;color:var(--color-neutral-500);cursor:pointer;font-size:.875rem;transition:all var(--transition-normal)}.remove-file-btn:hover{background:var(--color-error-100);color:var(--color-error-600)}.diagnoses-summary{display:flex;flex-direction:column;gap:var(--spacing-sm)}.diagnosis-summary-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-white);border-radius:var(--radius-md)}.diagnosis-summary-item .type-indicator{width:8px;height:8px;border-radius:50%;flex-shrink:0}.diagnosis-summary-item .code{font-family:monospace;font-weight:var(--font-weight-semibold);color:var(--color-primary-900);font-size:.8125rem}.diagnosis-summary-item .description{color:var(--color-neutral-600);font-size:.8125rem}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:100;padding:var(--spacing-md)}.modal-content{background:var(--color-white);border-radius:var(--radius-xl);width:100%;max-width:600px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-lg)}.modal-content.referral-modal{max-width:800px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) 1.25rem;border-bottom:1px solid var(--color-neutral-200)}.modal-header h3{margin:0;font-size:1.125rem;font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.modal-header .close-btn{width:32px;height:32px;background:var(--color-neutral-100);border:none;border-radius:var(--radius-md);font-size:1.25rem;color:var(--color-neutral-500);cursor:pointer;transition:all var(--transition-normal)}.modal-header .close-btn:hover{background:var(--color-neutral-200);color:var(--color-neutral-700)}.modal-body{flex:1;overflow-y:auto;padding:1.25rem}.modal-body.referral-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.modal-actions{display:flex;justify-content:flex-end;gap:var(--spacing-md);padding:var(--spacing-md) 1.25rem;border-top:1px solid var(--color-neutral-200);background:var(--color-neutral-50)}.mc-modal .mc-preview{padding:var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-lg);margin-bottom:var(--spacing-md)}.mc-modal .patient-line{margin:0;color:var(--color-neutral-700)}.mc-modal .form-row{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.mc-modal .form-group{display:flex;flex-direction:column;gap:.375rem}.mc-modal .form-group label{font-size:.8125rem;font-weight:var(--font-weight-medium);color:var(--color-neutral-700)}.mc-modal .form-group input,.mc-modal .form-group select,.mc-modal .form-group textarea{padding:.625rem var(--spacing-md);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);font-size:.9375rem;outline:none;transition:border-color var(--transition-normal)}.mc-modal .form-group input:focus,.mc-modal .form-group select:focus,.mc-modal .form-group textarea:focus{border-color:var(--color-primary-700)}.mc-modal .form-group input.read-only,.mc-modal .form-group textarea.read-only{background:var(--color-neutral-50);color:var(--color-neutral-500)}.referral-modal .ai-draft-section{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-primary-100);border:1px solid var(--color-primary-300);border-radius:var(--radius-lg)}.referral-modal .ai-draft-btn{padding:.625rem 1.25rem;background:var(--color-primary-900);color:var(--color-white);border:none;border-radius:var(--radius-md);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--transition-normal)}.referral-modal .ai-draft-btn:hover:not(:disabled){background:var(--color-primary-600)}.referral-modal .ai-draft-btn:disabled{background:var(--color-primary-300);cursor:not-allowed}.referral-modal .ai-disclaimer{font-size:var(--font-size-caption);color:var(--color-primary-900)}.referral-modal .form-section{display:flex;flex-direction:column;gap:var(--spacing-md)}.referral-modal .form-section h4{margin:0;font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-neutral-200)}.referral-modal .form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.referral-modal .form-group{display:flex;flex-direction:column;gap:.375rem}.referral-modal .form-group label{font-size:.8125rem;font-weight:var(--font-weight-medium);color:var(--color-neutral-700)}.referral-modal .form-group input,.referral-modal .form-group select,.referral-modal .form-group textarea{padding:.625rem var(--spacing-md);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);font-size:.9375rem;font-family:inherit;outline:none;transition:border-color var(--transition-normal)}.referral-modal .form-group input:focus,.referral-modal .form-group select:focus,.referral-modal .form-group textarea:focus{border-color:var(--color-primary-700)}.referral-modal .form-group input.read-only,.referral-modal .form-group textarea.read-only{background:var(--color-neutral-50);color:var(--color-neutral-500)}.referral-modal .urgency-buttons{display:flex;gap:var(--spacing-sm)}.referral-modal .urgency-btn{flex:1;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-white);border:2px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:.8125rem;font-weight:var(--font-weight-medium);color:var(--color-neutral-600);cursor:pointer;transition:all var(--transition-normal)}.referral-modal .urgency-btn:hover{background:var(--color-neutral-50)}.referral-modal .urgency-btn.active{color:var(--color-white);border-width:2px}.btn-cancel{padding:.625rem 1.25rem;background:var(--color-white);color:var(--color-neutral-500);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-normal)}.btn-cancel:hover{background:var(--color-neutral-50);color:var(--color-neutral-700)}.btn-secondary{padding:.625rem 1.25rem;background:var(--color-neutral-100);color:var(--color-neutral-700);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-normal)}.btn-primary{padding:.625rem 1.25rem;background:var(--color-primary-700);color:var(--color-white);border:none;border-radius:var(--radius-md);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--transition-normal)}.btn-primary:hover:not(:disabled){background:var(--color-primary-800)}.btn-primary:disabled{background:var(--color-primary-300);cursor:not-allowed}@media(max-width:768px){.consultation-header{flex-direction:column;align-items:flex-start}.header-right{width:100%;justify-content:flex-end}.tab-navigation{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.tab-navigation::-webkit-scrollbar{display:none}.tab-btn{min-width:90px;flex-shrink:0;padding:8px 12px;font-size:13px}.soap-tab .soap-grid{grid-template-columns:1fr}.prescription-card .rx-fields{grid-template-columns:repeat(2,1fr)}.summary-tab .summary-grid,.documents-tab .documents-grid,.mc-modal .form-row,.referral-modal .form-row{grid-template-columns:1fr}.modal-content{max-height:95vh}}.interaction-warnings-panel{background:var(--color-warning-50);border:1px solid var(--color-warning-500);border-radius:var(--radius-lg);padding:var(--spacing-md);margin-bottom:var(--spacing-md)}.interaction-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);font-weight:var(--font-weight-semibold);color:var(--color-warning-800)}.interaction-header .warning-icon{font-size:1.25rem}.interaction-header .dismiss-btn{margin-left:auto;background:transparent;border:none;font-size:1.25rem;color:var(--color-warning-800);cursor:pointer;padding:var(--spacing-xs);line-height:1;opacity:.7;transition:opacity var(--transition-normal)}.interaction-header .dismiss-btn:hover{opacity:1}.interaction-section{margin-bottom:var(--spacing-md)}.interaction-section:last-child{margin-bottom:0}.interaction-section h5{margin:0 0 var(--spacing-sm);font-size:.8125rem;font-weight:var(--font-weight-semibold);color:var(--color-warning-900);text-transform:uppercase;letter-spacing:.05em}.interaction-item{display:flex;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-white);border-radius:var(--radius-md);margin-bottom:var(--spacing-sm);border-left:4px solid var(--color-warning-500)}.interaction-item:last-child{margin-bottom:0}.interaction-severity{flex-shrink:0}.severity-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);font-size:.6875rem;font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.03em;color:var(--color-white);border-radius:var(--radius-sm)}.interaction-details{flex:1;min-width:0}.drugs-involved{font-size:.9375rem;margin-bottom:var(--spacing-xs);color:var(--color-neutral-800)}.drugs-involved strong{color:var(--color-neutral-900)}.interaction-description{font-size:.8125rem;color:var(--color-neutral-500);margin-bottom:var(--spacing-xs)}.interaction-effect{font-size:.8125rem;color:var(--color-neutral-600);font-style:italic;margin-bottom:var(--spacing-xs)}.interaction-recommendation{font-size:.8125rem;color:var(--color-neutral-700);background:var(--color-neutral-50);padding:var(--spacing-sm);border-radius:var(--radius-sm);margin-top:var(--spacing-sm)}.interaction-recommendation strong{color:var(--color-neutral-800)}.allergy-conflicts .interaction-item{background:var(--color-error-50)}.allergy-conflicts .interaction-section h5{color:var(--color-error-800)}.staff-module{padding:var(--spacing-lg);width:100%;box-sizing:border-box}.staff-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.staff-header h2{margin:0;color:var(--color-neutral-900)}.staff-stats{display:flex;flex-wrap:nowrap;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);width:100%;box-sizing:border-box}.staff-stats .stat-card{flex:1 1 0;min-width:0;max-width:none;background:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-md);text-align:center;box-shadow:var(--shadow-sm);box-sizing:border-box}.stat-value{display:block;font-size:var(--font-size-h1);font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.stat-label{display:block;font-size:var(--font-size-body);color:var(--color-neutral-500);margin-top:var(--spacing-xs)}.staff-filters{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);flex-wrap:wrap;align-items:center}.search-input{flex:1;min-width:200px;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:var(--font-size-body)}.filter-select{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:var(--font-size-body);background:var(--color-white)}.checkbox-label{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-body);color:var(--color-neutral-700);cursor:pointer}.staff-table{width:100%;background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border-collapse:collapse;overflow:hidden}.staff-table th,.staff-table td{padding:.75rem var(--spacing-md);text-align:left;border-bottom:1px solid var(--color-neutral-200)}.staff-table th{background:var(--color-neutral-50);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700);font-size:var(--font-size-caption);text-transform:uppercase;letter-spacing:.05em}.staff-table tbody tr:hover{background:var(--color-neutral-50)}.staff-table tbody tr.inactive{opacity:.6}.role-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}.role-badge.role-clinic_admin{background:#faf5ff;color:var(--color-primary-600)}.role-badge.role-doctor{background:var(--color-info-light);color:var(--color-primary-900)}.role-badge.role-nurse{background:#e6fffa;color:#0d9488}.role-badge.role-reception{background:var(--color-warning-light);color:var(--color-warning)}.role-badge.role-pharmacy{background:var(--color-success-light);color:var(--color-success)}.role-badge.role-stock{background:var(--color-error-light);color:var(--color-error)}.role-badge.role-finance{background:#fff7ed;color:#c2410c}.role-badge.role-hr{background:#fdf4ff;color:#a21caf}.status-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}.status-badge.active{background:var(--color-success-light);color:var(--color-success)}.status-badge.inactive{background:var(--color-error-light);color:var(--color-error)}.actions{display:flex;gap:var(--spacing-sm)}.btn-small{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-caption);border-radius:var(--radius-sm);border:1px solid var(--color-neutral-200);background:var(--color-white);cursor:pointer;transition:var(--transition-fast)}.btn-small:hover{background:var(--color-neutral-50)}.btn-small.btn-danger{color:var(--color-error);border-color:var(--color-error-light)}.btn-small.btn-danger:hover{background:var(--color-error-light)}.btn-small.btn-success{color:var(--color-success);border-color:var(--color-success-light)}.btn-small.btn-success:hover{background:var(--color-success-light)}.btn-primary{padding:var(--spacing-sm) var(--spacing-md);background:transparent;color:var(--color-neutral-700);border:none;border-radius:var(--radius-md);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);cursor:pointer;transition:color var(--transition-fast)}.btn-primary:hover{color:var(--color-primary-900)}.btn-secondary{padding:var(--spacing-sm) var(--spacing-md);background:transparent;color:var(--color-neutral-700);border:none;border-radius:var(--radius-md);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);cursor:pointer;transition:color var(--transition-fast)}.btn-secondary:hover{color:var(--color-neutral-700)}.staff-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.form-group input,.form-group select{padding:var(--spacing-sm) .75rem;border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:var(--font-size-body)}.form-group input:disabled{background:var(--color-neutral-50);color:var(--color-neutral-500)}.form-hint{font-size:var(--font-size-caption);color:var(--color-neutral-500)}.form-note{font-size:var(--font-size-body);color:var(--color-neutral-500);background:var(--color-neutral-50);padding:.75rem;border-radius:var(--radius-md);margin:var(--spacing-sm) 0}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-neutral-200)}.password-modal p{margin:0 0 var(--spacing-md);color:var(--color-neutral-700)}.password-modal .warning-text{font-size:var(--font-size-body);color:var(--color-warning);background:var(--color-warning-light);padding:.75rem;border-radius:var(--radius-md);border-left:3px solid var(--color-warning)}.loading,.empty-state{text-align:center;padding:var(--spacing-2xl);color:var(--color-neutral-500)}@media(max-width:768px){.staff-filters{flex-direction:column;align-items:stretch}.search-input{min-width:100%}.staff-table{font-size:var(--font-size-body)}.staff-table th,.staff-table td{padding:var(--spacing-sm)}.actions{flex-direction:column}}.reports-module{padding:var(--spacing-lg);background:var(--color-neutral-50);min-height:100%;width:100%;box-sizing:border-box}.reports-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-lg)}.reports-header .header-info h2{margin:0;color:var(--color-neutral-900);font-size:var(--font-size-h2);font-weight:var(--font-weight-semibold)}.reports-header .header-actions{display:flex;gap:var(--spacing-sm)}.reports-header .btn-export{padding:10px 20px;background:var(--color-success-500, #22c55e);color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;font-size:14px;font-weight:600;transition:background .2s}.reports-header .btn-export:hover:not(:disabled){background:var(--color-success-600, #16a34a)}.reports-header .btn-export:disabled{background:var(--color-neutral-300);cursor:not-allowed}.reports-module h2{margin:0 0 var(--spacing-lg) 0;color:var(--color-neutral-900);font-size:var(--font-size-h2);font-weight:var(--font-weight-semibold)}.report-tabs{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);border-bottom:2px solid var(--color-neutral-200);padding-bottom:var(--spacing-sm);flex-wrap:wrap}.report-tab{padding:.75rem 1.25rem;border:none;background:transparent;cursor:pointer;font-size:var(--font-size-body);font-weight:var(--font-weight-medium);color:var(--color-neutral-700);border-radius:.375rem .375rem 0 0;transition:all var(--transition-normal)}.report-tab:hover{color:var(--color-primary-900);background:var(--color-info-light)}.report-tab.active{color:var(--color-primary-900);background:var(--color-info-light);border-bottom:2px solid var(--color-primary-900);margin-bottom:-2px}.report-content{background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--spacing-lg)}.date-filter{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);padding:var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-md);flex-wrap:wrap}.date-filter label{font-size:var(--font-size-body);color:var(--color-neutral-700);font-weight:var(--font-weight-medium)}.dashboard-overview h3{margin:0 0 var(--spacing-lg) 0;color:var(--color-neutral-900);font-size:var(--font-size-h4);font-weight:var(--font-weight-semibold)}.overview-grid{display:flex;flex-wrap:nowrap;gap:var(--spacing-md);margin-bottom:var(--spacing-xl);width:100%;box-sizing:border-box}.overview-card{flex:1 1 0;min-width:0;max-width:none;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:var(--radius-lg);padding:1.25rem;color:var(--color-white);box-sizing:border-box}.overview-card:nth-child(2){background:linear-gradient(135deg,#11998e,#38ef7d)}.overview-card:nth-child(3){background:linear-gradient(135deg,#ee0979,#ff6a00)}.overview-card:nth-child(4){background:linear-gradient(135deg,#4776e6,#8e54e9)}.overview-card:nth-child(5){background:linear-gradient(135deg,#f093fb,#f5576c)}.overview-card:nth-child(6){background:linear-gradient(135deg,#5ee7df,#b490ca)}.overview-card .label{font-size:var(--font-size-caption);text-transform:uppercase;letter-spacing:.05em;opacity:.9;margin-bottom:var(--spacing-sm)}.overview-card .value{font-size:1.75rem;font-weight:var(--font-weight-bold)}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-md)}.section-header h3{margin:0;color:var(--color-neutral-900);font-size:var(--font-size-h4);font-weight:var(--font-weight-semibold)}.daily-summary h3{margin:0 0 var(--spacing-lg) 0;color:var(--color-neutral-900);font-size:var(--font-size-h4);font-weight:var(--font-weight-semibold)}.summary-grid{display:flex;flex-wrap:nowrap;gap:var(--spacing-md);margin-bottom:var(--spacing-xl);width:100%;box-sizing:border-box}.reports-module .summary-card{flex:1 1 0;min-width:0;max-width:none;background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:var(--spacing-md);text-align:center;box-sizing:border-box}.summary-card .label{font-size:var(--font-size-caption);text-transform:uppercase;letter-spacing:.05em;color:var(--color-neutral-700);margin-bottom:var(--spacing-sm)}.summary-card .value{font-size:var(--font-size-h2);font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.summary-card .value.positive{color:var(--color-success)}.summary-card .value.warning{color:var(--color-warning)}.breakdown-section{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--color-neutral-200)}.breakdown-section h4{margin:0 0 var(--spacing-md) 0;color:var(--color-neutral-900);font-size:var(--font-size-body);font-weight:var(--font-weight-semibold)}.breakdown-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.breakdown-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-md)}.breakdown-item .method{font-weight:var(--font-weight-medium);color:var(--color-neutral-900)}.breakdown-item .amount{font-weight:var(--font-weight-semibold);color:var(--color-success)}.revenue-report h3{margin:0 0 var(--spacing-lg) 0;color:var(--color-neutral-900);font-size:var(--font-size-h4);font-weight:var(--font-weight-semibold)}.revenue-summary{display:flex;flex-wrap:nowrap;gap:var(--spacing-md);margin-bottom:var(--spacing-xl);width:100%;box-sizing:border-box}.revenue-card{flex:1 1 0;min-width:0;max-width:none;background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:1.25rem;box-sizing:border-box}.revenue-card .label{font-size:var(--font-size-caption);text-transform:uppercase;letter-spacing:.05em;color:var(--color-neutral-700);margin-bottom:var(--spacing-sm)}.revenue-card .value{font-size:var(--font-size-h2);font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.revenue-card .value.positive{color:var(--color-success)}.revenue-card .trend{font-size:var(--font-size-caption);margin-top:var(--spacing-sm);color:var(--color-neutral-700)}.revenue-card .trend.up{color:var(--color-success)}.revenue-card .trend.down{color:var(--color-error)}.report-table-container{overflow-x:auto;margin-top:var(--spacing-lg)}.report-table th{text-align:left;padding:.75rem var(--spacing-md);background:var(--color-neutral-100);color:var(--color-neutral-700);font-weight:var(--font-weight-semibold);border-bottom:2px solid var(--color-neutral-200);white-space:nowrap}.report-table td{padding:.75rem var(--spacing-md);border-bottom:1px solid var(--color-neutral-200);color:var(--color-neutral-900)}.report-table tr:hover td{background:var(--color-neutral-50)}.report-table .amount{font-weight:var(--font-weight-semibold);text-align:right}.report-table .amount.positive{color:var(--color-success)}.report-table .count{text-align:center;font-weight:var(--font-weight-medium)}.visit-report h3{margin:0 0 var(--spacing-lg) 0;color:var(--color-neutral-900);font-size:var(--font-size-h4);font-weight:var(--font-weight-semibold)}.visit-summary{display:flex;flex-wrap:nowrap;gap:var(--spacing-md);margin-bottom:var(--spacing-xl);width:100%;box-sizing:border-box}.visit-card{flex:1 1 0;min-width:0;max-width:none;background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:var(--spacing-md);text-align:center;box-sizing:border-box}.visit-card .label{font-size:var(--font-size-caption);text-transform:uppercase;letter-spacing:.05em;color:var(--color-neutral-700);margin-bottom:var(--spacing-sm)}.visit-card .value{font-size:var(--font-size-h3);font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.doctor-breakdown{margin-top:var(--spacing-lg)}.doctor-breakdown h4{margin:0 0 var(--spacing-md) 0;color:var(--color-neutral-900);font-size:var(--font-size-body);font-weight:var(--font-weight-semibold)}.doctor-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.doctor-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-md)}.doctor-item .name{font-weight:var(--font-weight-medium);color:var(--color-neutral-900)}.doctor-item .stats{display:flex;gap:var(--spacing-lg);font-size:var(--font-size-body)}.doctor-item .stats span{color:var(--color-neutral-700)}.doctor-item .stats strong{color:var(--color-neutral-900)}.inventory-report h3{margin:0 0 var(--spacing-lg) 0;color:var(--color-neutral-900);font-size:var(--font-size-h4);font-weight:var(--font-weight-semibold)}.inventory-summary{display:flex;flex-wrap:nowrap;gap:var(--spacing-md);margin-bottom:var(--spacing-xl);width:100%;box-sizing:border-box}.inventory-card{flex:1 1 0;min-width:0;max-width:none;background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:1.25rem;box-sizing:border-box}.inventory-card .label{font-size:var(--font-size-caption);text-transform:uppercase;letter-spacing:.05em;color:var(--color-neutral-700);margin-bottom:var(--spacing-sm)}.inventory-card .value{font-size:var(--font-size-h2);font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.inventory-card .value.warning{color:var(--color-warning)}.inventory-card .value.danger{color:var(--color-error)}.inventory-card .value.positive{color:var(--color-success)}.alerts-section{margin-top:var(--spacing-lg)}.alerts-section h4{margin:0 0 var(--spacing-md) 0;color:var(--color-neutral-900);font-size:var(--font-size-body);font-weight:var(--font-weight-semibold)}.alert-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.alert-item{display:flex;align-items:center;gap:.75rem;padding:.75rem var(--spacing-md);border-radius:var(--radius-md);font-size:var(--font-size-body)}.alert-item.warning{background:var(--color-warning-light);border:1px solid var(--color-warning);color:#92400e}.alert-item.danger{background:var(--color-error-light);border:1px solid var(--color-error);color:#991b1b}.alert-item .icon{font-size:var(--font-size-body)}.reports-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-3xl) var(--spacing-xl);color:var(--color-neutral-700)}.reports-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-3xl) var(--spacing-xl);color:var(--color-error)}.reports-error .icon{font-size:var(--font-size-h1);margin-bottom:var(--spacing-md)}.reports-error .message{font-size:var(--font-size-body);color:var(--color-neutral-700);text-align:center}.no-data{text-align:center;padding:var(--spacing-2xl) var(--spacing-xl);color:var(--color-neutral-700)}.no-data .icon{font-size:var(--spacing-2xl);margin-bottom:var(--spacing-md);opacity:.5}.no-data p{margin:0;font-size:var(--font-size-body)}.export-btn{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-primary-900);color:var(--color-white);border:none;border-radius:var(--radius-md);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--transition-normal)}.export-btn:hover{background:var(--color-primary-600)}.export-btn:disabled{background:var(--color-neutral-500);cursor:not-allowed}@media(max-width:768px){.reports-module{padding:var(--spacing-md)}.report-tabs{flex-wrap:wrap}.report-tab{padding:var(--spacing-sm) .75rem;font-size:var(--font-size-caption)}.date-filter{flex-direction:column;align-items:stretch}.overview-grid,.summary-grid,.revenue-summary,.visit-summary,.inventory-summary{flex-wrap:wrap}.overview-grid .overview-card,.summary-grid .summary-card,.revenue-summary .revenue-card,.visit-summary .visit-card,.inventory-summary .inventory-card{flex:1 1 calc(50% - var(--spacing-md));min-width:calc(50% - var(--spacing-md))}.overview-card .value,.summary-card .value{font-size:var(--font-size-h3)}.report-table{font-size:var(--font-size-caption)}.report-table th,.report-table td{padding:var(--spacing-sm)}.doctor-item{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.doctor-item .stats{flex-wrap:wrap;gap:.75rem}}.einvoice-module{padding:var(--spacing-lg);background:var(--color-neutral-50);min-height:100%;width:100%;box-sizing:border-box}.einvoice-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-lg)}.einvoice-header h2{margin:0;color:var(--color-neutral-900);font-size:var(--font-size-h2);font-weight:var(--font-weight-semibold)}.lhdn-badge{display:inline-flex;align-items:center;padding:.375rem .75rem;background:linear-gradient(135deg,#1e3a5f,#0f172a);color:var(--color-white);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);border-radius:var(--radius-md);letter-spacing:.025em}.compliance-banner{display:flex;gap:var(--spacing-md);padding:var(--spacing-md) 1.25rem;background:var(--color-info-light);border:1px solid var(--color-primary-900);border-radius:var(--radius-lg);margin-bottom:var(--spacing-lg)}.banner-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:var(--color-primary-900);color:var(--color-white);border-radius:50%;font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);flex-shrink:0}.banner-content{flex:1}.banner-content strong{display:block;color:var(--color-primary-900);margin-bottom:var(--spacing-xs);font-size:var(--font-size-body)}.banner-content p{margin:0;color:var(--color-primary-900);font-size:.8125rem;line-height:1.5}.einvoice-tabs{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);border-bottom:2px solid var(--color-neutral-200);padding-bottom:var(--spacing-sm)}.einvoice-tab{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:.75rem 1.25rem;border:none;background:transparent;cursor:pointer;font-size:var(--font-size-body);font-weight:var(--font-weight-medium);color:var(--color-neutral-500);border-radius:var(--radius-md) var(--radius-md) 0 0;transition:var(--transition-normal)}.einvoice-tab:hover{color:var(--color-primary-900);background:var(--color-info-light)}.einvoice-tab.active{color:var(--color-primary-900);background:var(--color-info-light);border-bottom:2px solid var(--color-primary-900);margin-bottom:-2px}.tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 .375rem;background:var(--color-warning);color:var(--color-white);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);border-radius:10px}.date-filter{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);padding:var(--spacing-md);background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.date-filter label{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-body);color:var(--color-neutral-500);font-weight:var(--font-weight-medium)}.date-filter input[type=date]{padding:var(--spacing-sm) .75rem;border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);font-size:var(--font-size-body);color:var(--color-neutral-900)}.date-filter input[type=date]:focus{outline:none;border-color:var(--color-primary-900);box-shadow:0 0 0 3px #4a63b31a}.einvoice-content{background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.einvoice-table-container{overflow-x:auto}.einvoice-table{width:100%;border-collapse:collapse;font-size:var(--font-size-body)}.einvoice-table th{text-align:left;padding:.875rem var(--spacing-md);background:var(--color-neutral-100);color:var(--color-neutral-700);font-weight:var(--font-weight-semibold);border-bottom:2px solid var(--color-neutral-200);white-space:nowrap}.einvoice-table td{padding:.875rem var(--spacing-md);border-bottom:1px solid var(--color-neutral-200);color:var(--color-neutral-900)}.einvoice-table tr:hover td{background:var(--color-neutral-50)}.einvoice-table .invoice-number{font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.einvoice-table .buyer-name{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.einvoice-table .amount,.einvoice-table .tax{font-weight:var(--font-weight-semibold);text-align:right;white-space:nowrap}.einvoice-table .uuid{font-family:var(--font-mono);font-size:var(--font-size-caption)}.uuid-text,.no-uuid{color:var(--color-neutral-500)}.einvoice-table .actions{white-space:nowrap}.status-badge{display:inline-flex;align-items:center;padding:var(--spacing-xs) .625rem;font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.025em}.status-badge.gray{background:var(--color-neutral-100);color:var(--color-neutral-700)}.status-badge.yellow{background:var(--color-warning-light);color:var(--color-warning)}.status-badge.blue{background:var(--color-info-light);color:var(--color-primary-900)}.status-badge.green{background:var(--color-success-light);color:var(--color-success)}.status-badge.red{background:var(--color-error-light);color:var(--color-error)}.action-btn{padding:.375rem .625rem;border:none;border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);cursor:pointer;transition:var(--transition-normal);margin-right:.375rem}.action-btn:last-child{margin-right:0}.action-btn.view{background:var(--color-neutral-200);color:var(--color-neutral-700)}.action-btn.view:hover{background:var(--color-neutral-300)}.action-btn.submit{background:var(--color-primary-900);color:var(--color-white)}.action-btn.submit:hover{background:var(--color-primary-600)}.action-btn.submit:disabled{background:var(--color-neutral-500);cursor:not-allowed}.action-btn.cancel{background:var(--color-warning-light);color:var(--color-warning)}.action-btn.cancel:hover{background:#fde68a}.action-btn.cancel:disabled{background:var(--color-neutral-100);color:var(--color-neutral-500);cursor:not-allowed}.no-invoices{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-3xl) var(--spacing-xl);color:var(--color-neutral-500)}.no-data-icon{font-size:3rem;margin-bottom:var(--spacing-md);opacity:.5}.no-invoices p{margin:0;font-size:var(--font-size-body)}.einvoice-loading,.einvoice-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-3xl) var(--spacing-xl);background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.einvoice-loading p,.einvoice-error p{color:var(--color-neutral-500);margin:0}.einvoice-error .icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--color-error-light);color:var(--color-error);border-radius:50%;font-size:1.25rem;font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-md)}.modal-content{background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);width:100%;max-width:600px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.modal-header h3{margin:0;font-size:var(--font-size-h4);color:var(--color-neutral-900);font-weight:var(--font-weight-semibold)}.close-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;font-size:1.5rem;color:var(--color-neutral-500);cursor:pointer;border-radius:var(--radius-sm);transition:var(--transition-normal)}.close-btn:hover{background:var(--color-neutral-100);color:var(--color-neutral-900)}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--color-neutral-200);background:var(--color-neutral-50)}.detail-section{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-neutral-200)}.detail-section:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.detail-section h4{margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700);text-transform:uppercase;letter-spacing:.05em}.detail-row{display:flex;gap:var(--spacing-lg);margin-bottom:.75rem}.detail-row:last-child{margin-bottom:0}.detail-item{flex:1}.detail-item.full-width{flex:100%}.detail-item label{display:block;font-size:var(--font-size-caption);color:var(--color-neutral-500);margin-bottom:var(--spacing-xs);text-transform:uppercase;letter-spacing:.05em}.detail-item span,.detail-item .value{font-size:var(--font-size-body);color:var(--color-neutral-900);font-weight:var(--font-weight-medium)}.uuid-full{font-family:var(--font-mono);font-size:var(--font-size-caption);word-break:break-all}.amount-breakdown{background:var(--color-neutral-50);border-radius:var(--radius-md);padding:var(--spacing-md)}.amount-row{display:flex;justify-content:space-between;padding:var(--spacing-sm) 0;font-size:var(--font-size-body);color:var(--color-neutral-700)}.amount-row.discount{color:var(--color-success)}.amount-row.total{border-top:2px solid var(--color-neutral-200);margin-top:var(--spacing-sm);padding-top:.75rem;font-weight:var(--font-weight-semibold);font-size:1rem;color:var(--color-neutral-900)}.lhdn-section{background:var(--color-success-light);border:1px solid var(--color-success);border-radius:var(--radius-lg);padding:var(--spacing-md);margin:0 -.5rem}.lhdn-section h4{color:var(--color-success)}.error-section{background:var(--color-error-light);border:1px solid var(--color-error);border-radius:var(--radius-lg);padding:var(--spacing-md);margin:0 -.5rem}.error-section h4{color:var(--color-error)}.error-message{color:var(--color-error);font-size:var(--font-size-body);line-height:1.5}.warning-section{background:var(--color-warning-light);border:1px solid var(--color-warning);border-radius:var(--radius-lg);padding:var(--spacing-md);margin:0 -.5rem}.warning-section h4{color:var(--color-warning)}.warning-message{color:var(--color-warning);font-size:var(--font-size-body);line-height:1.5;margin-bottom:.75rem}.btn{padding:.625rem 1.25rem;border:none;border-radius:var(--radius-md);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);cursor:pointer;transition:var(--transition-normal)}.btn-primary:disabled{background:var(--color-neutral-500);cursor:not-allowed}.btn-danger{background:var(--color-error);color:var(--color-white)}.btn-danger:hover{background:var(--color-error-hover)}.btn-danger:disabled{background:var(--color-neutral-500);cursor:not-allowed}@media(max-width:768px){.einvoice-module{padding:var(--spacing-md)}.einvoice-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.compliance-banner{flex-direction:column}.einvoice-tabs{flex-wrap:wrap}.einvoice-tab{padding:var(--spacing-sm) .75rem;font-size:var(--font-size-caption)}.date-filter{flex-direction:column;align-items:stretch}.date-filter label{flex-direction:column;align-items:flex-start}.date-filter input[type=date]{width:100%}.einvoice-table{font-size:var(--font-size-caption)}.einvoice-table th,.einvoice-table td{padding:.625rem var(--spacing-sm)}.einvoice-table .buyer-name{max-width:120px}.action-btn{padding:var(--spacing-xs) var(--spacing-sm);font-size:.6875rem}.modal-content{max-height:85vh}.detail-row{flex-direction:column;gap:.75rem}.modal-footer{flex-direction:column}.modal-footer .btn{width:100%}}.notifications-module{padding:var(--spacing-lg);background:var(--color-neutral-50);min-height:100%;width:100%;box-sizing:border-box}.notifications-module h2{margin:0 0 var(--spacing-lg) 0;color:var(--color-neutral-900);font-size:var(--font-size-h2);font-weight:var(--font-weight-semibold)}.notifications-tabs{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);border-bottom:2px solid var(--color-neutral-200);padding-bottom:var(--spacing-sm)}.notifications-tabs .tab{padding:.75rem var(--spacing-lg);border:none;background:transparent;cursor:pointer;font-size:var(--font-size-body);font-weight:var(--font-weight-medium);color:var(--color-neutral-500);border-radius:var(--radius-md) var(--radius-md) 0 0;transition:var(--transition-normal)}.notifications-tabs .tab:hover{color:var(--color-primary-900);background:var(--color-info-light)}.notifications-tabs .tab.active{color:var(--color-primary-900);background:var(--color-info-light);border-bottom:2px solid var(--color-primary-900);margin-bottom:-2px}.notifications-content{background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--spacing-lg)}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-2xl);color:var(--color-neutral-500)}.loading-spinner{width:40px;height:40px;border:3px solid var(--color-neutral-200);border-top-color:var(--color-primary-900);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:var(--spacing-md)}.date-filter{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);padding:var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-md)}.date-filter label{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-body);color:var(--color-neutral-500)}.date-filter input[type=date]{padding:var(--spacing-sm);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);font-size:var(--font-size-body)}.no-data{text-align:center;padding:var(--spacing-2xl);color:var(--color-neutral-500)}.notification-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.notification-item{display:flex;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-lg);border:1px solid var(--color-neutral-200)}.notification-icon{flex-shrink:0}.channel-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:1.25rem;font-weight:var(--font-weight-semibold)}.channel-icon.email{background:var(--color-info-light);color:var(--color-primary-900)}.channel-icon.sms{background:var(--color-success-light);color:var(--color-success)}.channel-icon.push,.channel-icon.in_app{background:var(--color-warning-light);color:var(--color-warning)}.notification-content{flex:1;min-width:0}.notification-header{display:flex;align-items:center;gap:.75rem;margin-bottom:var(--spacing-xs)}.notification-type{font-size:var(--font-size-caption);text-transform:uppercase;letter-spacing:.05em;color:var(--color-neutral-500)}.notification-status{font-size:var(--font-size-tiny);font-weight:var(--font-weight-semibold);text-transform:uppercase;padding:.125rem var(--spacing-sm);border-radius:var(--radius-full)}.notification-status.green{background:var(--color-success-light);color:var(--color-success)}.notification-status.yellow{background:var(--color-warning-light);color:var(--color-warning)}.notification-status.red{background:var(--color-error-light);color:var(--color-error)}.notification-status.gray{background:var(--color-neutral-100);color:var(--color-neutral-700)}.notification-subject{font-weight:var(--font-weight-medium);color:var(--color-neutral-900);margin-bottom:var(--spacing-xs)}.notification-recipient{font-size:var(--font-size-body);color:var(--color-neutral-500)}.notification-time{font-size:var(--font-size-caption);color:var(--color-neutral-500);margin-top:var(--spacing-xs)}.notification-error{font-size:var(--font-size-caption);color:var(--color-error);margin-top:var(--spacing-xs)}.preferences-section{display:flex;flex-direction:column;gap:var(--spacing-xl)}.preference-group h3{margin:0 0 var(--spacing-md) 0;font-size:1rem;font-weight:var(--font-weight-semibold);color:var(--color-neutral-900);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-neutral-200)}.preference-item{padding:.75rem 0}.preference-item label{display:flex;align-items:center;gap:.75rem;cursor:pointer}.preference-item input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-primary-900)}.preference-item span{font-weight:var(--font-weight-medium);color:var(--color-neutral-900)}.preference-description{margin:var(--spacing-xs) 0 0 1.75rem;font-size:var(--font-size-caption);color:var(--color-neutral-500)}.preference-item select{margin-left:auto;padding:var(--spacing-sm);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);font-size:var(--font-size-body);min-width:200px}.templates-section{display:flex;flex-direction:column;gap:var(--spacing-xl)}.template-group h3{margin:0 0 var(--spacing-md) 0;font-size:1rem;font-weight:var(--font-weight-semibold);color:var(--color-neutral-900);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-neutral-200)}.template-item{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-md);border:1px solid var(--color-neutral-200)}.template-info{display:flex;align-items:center;gap:.75rem}.template-name{font-weight:var(--font-weight-medium);color:var(--color-neutral-900)}.template-channel{font-size:var(--font-size-tiny);font-weight:var(--font-weight-semibold);text-transform:uppercase;padding:.125rem var(--spacing-sm);border-radius:var(--radius-full)}.template-channel.email{background:var(--color-info-light);color:var(--color-primary-900)}.template-channel.sms{background:var(--color-success-light);color:var(--color-success)}.template-subject{flex:1;font-size:var(--font-size-body);color:var(--color-neutral-500);margin:0 var(--spacing-md);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.template-actions{display:flex;align-items:center;gap:.75rem}.toggle-switch{position:relative;width:44px;height:24px}.toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:var(--color-neutral-300);transition:var(--transition-slow);border-radius:24px}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:var(--color-white);transition:var(--transition-slow);border-radius:50%}.toggle-switch input:checked+.toggle-slider{background-color:var(--color-success)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(20px)}.btn-view{padding:.375rem .75rem;border:1px solid var(--color-neutral-300);background:var(--color-white);border-radius:var(--radius-md);font-size:var(--font-size-caption);color:var(--color-neutral-700);cursor:pointer;transition:var(--transition-normal)}.btn-view:hover{background:var(--color-neutral-50);border-color:var(--color-primary-900);color:var(--color-primary-900)}.modal-content{background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);width:100%;max-width:600px;max-height:80vh;overflow:hidden;display:flex;flex-direction:column}.close-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;font-size:1.25rem;color:var(--color-neutral-500);cursor:pointer;border-radius:var(--radius-sm)}.template-detail{margin-bottom:var(--spacing-lg)}.template-detail label{display:block;font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);color:var(--color-neutral-500);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--spacing-sm)}.template-detail span{color:var(--color-neutral-900)}.variable-list{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.variable-tag{font-size:var(--font-size-caption);font-family:var(--font-mono);padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-info-light);color:var(--color-primary-900);border-radius:var(--radius-sm)}.template-body{background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);padding:var(--spacing-md);font-size:var(--font-size-body);color:var(--color-neutral-900);white-space:pre-wrap;max-height:200px;overflow-y:auto}.html-preview{background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);padding:var(--spacing-md);max-height:300px;overflow-y:auto}.btn{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);cursor:pointer;transition:var(--transition-normal)}.btn-secondary{background:var(--color-neutral-200);border:none;color:var(--color-neutral-700)}@media(max-width:768px){.notifications-module{padding:var(--spacing-md)}.date-filter{flex-direction:column}.notification-item{flex-direction:column;align-items:flex-start}.template-item{flex-direction:column;align-items:flex-start;gap:.75rem}.template-subject{margin:0;width:100%}.template-actions{width:100%;justify-content:flex-end}}.templates-module{padding:var(--spacing-lg);background:var(--color-neutral-50);min-height:100%;width:100%;box-sizing:border-box}.templates-module h2{margin:0 0 var(--spacing-lg) 0;color:var(--color-neutral-900);font-size:var(--font-size-h2);font-weight:var(--font-weight-semibold)}.templates-tabs{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);border-bottom:2px solid var(--color-neutral-200);padding-bottom:var(--spacing-sm)}.templates-tabs .tab{padding:.75rem var(--spacing-lg);border:none;background:transparent;cursor:pointer;font-size:var(--font-size-body);font-weight:var(--font-weight-medium);color:var(--color-neutral-700);border-radius:var(--radius-md) var(--radius-md) 0 0;transition:all var(--transition-normal)}.templates-tabs .tab:hover{color:var(--color-primary-900);background:var(--color-info-light)}.templates-tabs .tab.active{color:var(--color-primary-900);background:var(--color-info-light);border-bottom:2px solid var(--color-primary-900);margin-bottom:-2px}.templates-tabs .tab-actions{margin-left:auto}.templates-content{display:grid;grid-template-columns:320px 1fr;gap:var(--spacing-lg);background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.templates-sidebar{border-right:1px solid var(--color-neutral-200);padding:var(--spacing-md);max-height:calc(100vh - 250px);overflow-y:auto}.template-list{display:flex;flex-direction:column;gap:.75rem}.template-card{padding:var(--spacing-md);background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-normal)}.template-card:hover{border-color:var(--color-primary-900);background:var(--color-info-light)}.template-card.selected{border-color:var(--color-primary-900);background:var(--color-info-light);box-shadow:0 0 0 2px #4a63b333}.template-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-sm)}.template-name{font-weight:var(--font-weight-medium);color:var(--color-neutral-900);font-size:var(--font-size-body)}.template-card-meta{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.template-card-footer{font-size:var(--font-size-caption);color:var(--color-neutral-700)}.badge{font-size:var(--font-size-tiny);font-weight:var(--font-weight-semibold);text-transform:uppercase;padding:.125rem var(--spacing-sm);border-radius:var(--radius-full)}.badge.default{background:#dbeafe;color:#1e40af}.badge.system{background:#f3e8ff;color:#7e22ce}.badge.required{background:var(--color-error-light);color:#991b1b}.badge.type{background:var(--color-neutral-100);color:var(--color-neutral-700)}.badge.type.medical_certificate{background:var(--color-success-light);color:#065f46}.badge.type.invoice,.badge.type.receipt{background:#dbeafe;color:#1e40af}.badge.type.referral_letter{background:var(--color-warning-light);color:#92400e}.badge.format{background:#e0e7ff;color:#3730a3}.templates-main{padding:var(--spacing-lg);max-height:calc(100vh - 250px);overflow-y:auto}.template-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-3xl) var(--spacing-xl);text-align:center;color:var(--color-neutral-700)}.empty-icon{font-size:4rem;margin-bottom:var(--spacing-md);opacity:.5}.template-empty-state h3{margin:0 0 var(--spacing-sm) 0;color:var(--color-neutral-900)}.template-empty-state p{margin:0 0 var(--spacing-lg) 0}.template-details{display:flex;flex-direction:column;gap:var(--spacing-lg)}.details-header{display:flex;align-items:flex-start;justify-content:space-between;padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-neutral-200)}.details-title h3{margin:0 0 var(--spacing-sm) 0;color:var(--color-neutral-900);font-size:var(--font-size-h3)}.details-badges,.details-actions{display:flex;gap:var(--spacing-sm)}.details-section{padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-neutral-200)}.details-section:last-child{border-bottom:none}.details-section h4{margin:0 0 .75rem;font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700);text-transform:uppercase;letter-spacing:.05em}.settings-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md)}.setting-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.setting-item label{font-size:var(--font-size-caption);color:var(--color-neutral-700)}.setting-item span{font-weight:var(--font-weight-medium);color:var(--color-neutral-900)}.capitalize{text-transform:capitalize}.variables-list{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.variable-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) .75rem;background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md)}.variable-item code{font-family:var(--font-mono);font-size:var(--font-size-caption);color:var(--color-primary-900);background:var(--color-info-light);padding:.125rem var(--spacing-sm);border-radius:var(--radius-sm)}.variable-label{font-size:var(--font-size-body);color:var(--color-neutral-700)}.content-preview{background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);padding:var(--spacing-md);font-size:var(--font-size-body);color:var(--color-neutral-900);max-height:300px;overflow-y:auto}.content-preview pre{margin:0;white-space:pre-wrap;word-break:break-word;font-family:var(--font-mono);font-size:.8rem}.template-form{display:flex;flex-direction:column;height:100%}.form-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-neutral-200);margin-bottom:var(--spacing-lg)}.form-header h3{margin:0;color:var(--color-neutral-900);font-size:var(--font-size-h3)}.form-actions{display:flex;gap:var(--spacing-sm)}.form-body{flex:1;overflow-y:auto}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.form-row.margins-row{grid-template-columns:repeat(4,1fr)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.form-group label{font-size:var(--font-size-body);font-weight:var(--font-weight-medium);color:var(--color-neutral-700)}.form-group input[type=text],.form-group input[type=number],.form-group select,.form-group textarea{padding:.625rem .75rem;border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);font-size:var(--font-size-body);transition:border-color var(--transition-normal)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary-900);box-shadow:0 0 0 3px #4a63b31a}.form-group textarea{resize:vertical;font-family:inherit}.checkbox-group label{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;font-weight:var(--font-weight-regular)}.checkbox-group input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-primary-900)}.content-editor-container{display:flex;flex-direction:column;gap:var(--spacing-sm)}.content-editor-container textarea{font-family:"Fira Code","Consolas",var(--font-mono);font-size:.8rem;line-height:1.5}.extracted-variables{display:flex;flex-wrap:wrap;align-items:center;gap:var(--spacing-sm);padding:.75rem;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:var(--radius-md)}.variables-label{font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);color:#166534}.variables-chips{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.variable-chip{font-family:var(--font-mono);font-size:.7rem;padding:.125rem var(--spacing-sm);background:#dcfce7;color:#166534;border-radius:var(--radius-sm)}.btn{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-normal);border:none}.btn-primary{background:var(--color-primary-900);color:var(--color-white)}.btn-primary:hover{background:var(--color-primary-600)}.btn-secondary{background:var(--color-neutral-200);color:var(--color-neutral-700)}.btn-secondary:hover{background:var(--color-neutral-300)}.btn-danger{background:var(--color-error-light);color:var(--color-error)}.btn-danger:hover{background:#fecaca}.modal-overlay{position:fixed;inset:0;background:var(--modal-backdrop-color);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--spacing-md)}.modal-content{background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);width:100%;max-width:800px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.modal-content.preview-modal{max-width:900px}.modal-header h3{margin:0;font-size:var(--font-size-h4);color:var(--color-neutral-900)}.close-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;font-size:1.5rem;color:var(--color-neutral-700);cursor:pointer;border-radius:var(--radius-sm)}.close-btn:hover{background:var(--color-neutral-100)}.modal-body{padding:var(--spacing-lg);overflow-y:auto;flex:1}.modal-footer{padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--color-neutral-200);display:flex;justify-content:flex-end;gap:.75rem}.preview-content{background:var(--color-white);border:1px solid var(--color-neutral-200);padding:var(--spacing-xl);min-height:400px;font-family:Times New Roman,serif}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-2xl);color:var(--color-neutral-700)}.no-data{text-align:center;padding:var(--spacing-2xl);color:var(--color-neutral-700)}.no-data p{margin:0 0 var(--spacing-md) 0}@media(max-width:1024px){.templates-content{grid-template-columns:1fr}.templates-sidebar{max-height:none;border-right:none;border-bottom:1px solid var(--color-neutral-200)}.template-list{flex-direction:row;flex-wrap:wrap}.template-card{flex:1;min-width:250px;max-width:300px}}@media(max-width:768px){.templates-module{padding:var(--spacing-md)}.templates-tabs{flex-wrap:wrap}.templates-tabs .tab-actions{width:100%;margin-left:0;margin-top:var(--spacing-sm)}.form-row{grid-template-columns:1fr}.form-row.margins-row{grid-template-columns:repeat(2,1fr)}.settings-grid{grid-template-columns:1fr}.details-header{flex-direction:column;gap:var(--spacing-md)}.details-actions{width:100%;justify-content:flex-start}}.clinic-settings-tab{max-width:780px;margin:0 auto;padding:4px 0 40px}.cs-section{margin-bottom:40px}.cs-section-title{font-family:Poppins,sans-serif;font-weight:600;font-size:16px;color:#171717;margin:0 0 4px}.cs-section-desc{font-family:Inter,sans-serif;font-size:13px;color:#6b7280;margin:0 0 20px}.cs-card{background:#fff;border:1px solid #E5E7EB;border-radius:12px;padding:20px;margin-bottom:16px}.cs-card-title{font-family:Poppins,sans-serif;font-weight:600;font-size:14px;color:#171717;margin:0 0 16px}.cs-field{margin-bottom:16px}.cs-field:last-child{margin-bottom:0}.cs-field label{display:block;font-family:Inter,sans-serif;font-weight:500;font-size:12px;color:#4b5563;margin-bottom:6px}.cs-field input[type=text],.cs-field input[type=number],.cs-field select,.cs-field textarea{width:100%;height:40px;padding:0 12px;border:1px solid #E5E7EB;border-radius:6px;font-family:Inter,sans-serif;font-size:14px;color:#171717;background:#fff;box-sizing:border-box;transition:border-color .15s}.cs-field textarea{height:auto;padding:10px 12px;resize:vertical;line-height:1.5}.cs-field input:focus,.cs-field select:focus,.cs-field textarea:focus{outline:none;border-color:#4a63b3;box-shadow:0 0 0 3px #4a63b31a}.cs-field input::-moz-placeholder,.cs-field textarea::-moz-placeholder{color:#9ca3af}.cs-field input::placeholder,.cs-field textarea::placeholder{color:#9ca3af}.cs-field select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%234B5563' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}.cs-char-count{display:block;text-align:right;font-family:Inter,sans-serif;font-size:11px;color:#9ca3af;margin-top:4px}.cs-field-inline{display:flex;flex-direction:column;gap:6px}.cs-field-inline label{font-family:Inter,sans-serif;font-weight:500;font-size:12px;color:#4b5563}.cs-field-inline input[type=number]{width:80px;height:36px;padding:0 8px;border:1px solid #E5E7EB;border-radius:6px;font-family:Inter,sans-serif;font-size:14px;color:#171717;box-sizing:border-box}.cs-field-inline input:focus{outline:none;border-color:#4a63b3;box-shadow:0 0 0 3px #4a63b31a}.cs-logo-area{display:flex;flex-direction:column;gap:12px}.cs-logo-dropzone{width:100%;min-height:120px;border:2px dashed #D1D5DB;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .15s,background-color .15s;overflow:hidden}.cs-logo-dropzone:hover{border-color:#4a63b3;background-color:#f9fafb}.cs-logo-dropzone.has-logo{border-style:solid;border-color:#e5e7eb;padding:12px}.cs-logo-preview-img{max-width:200px;max-height:100px;-o-object-fit:contain;object-fit:contain}.cs-logo-placeholder{display:flex;flex-direction:column;align-items:center;gap:8px;padding:20px}.cs-logo-placeholder span{font-family:Inter,sans-serif;font-size:13px;color:#6b7280}.cs-logo-hint{font-size:11px!important;color:#9ca3af!important}.cs-file-input{display:none}.cs-logo-file-info{display:flex;gap:12px;align-items:center}.cs-logo-filename{font-family:Inter,sans-serif;font-size:13px;color:#171717;font-weight:500}.cs-logo-filesize{font-family:Inter,sans-serif;font-size:12px;color:#9ca3af}.cs-logo-dimensions{display:flex;gap:16px}.cs-colour-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:12px}.cs-colour-picker-wrap{display:flex;gap:8px;align-items:center}.cs-colour-input{width:40px;height:40px;padding:2px;border:1px solid #E5E7EB;border-radius:6px;cursor:pointer;background:none}.cs-colour-input::-webkit-color-swatch-wrapper{padding:2px}.cs-colour-input::-webkit-color-swatch{border:none;border-radius:4px}.cs-colour-text{flex:1;height:40px;padding:0 12px;border:1px solid #E5E7EB;border-radius:6px;font-family:Inter,sans-serif;font-size:14px;color:#171717;box-sizing:border-box}.cs-colour-text:focus{outline:none;border-color:#4a63b3;box-shadow:0 0 0 3px #4a63b31a}.cs-colour-text::-moz-placeholder{color:#9ca3af}.cs-colour-text::placeholder{color:#9ca3af}.cs-colour-preview{display:flex;gap:4px;border-radius:6px;overflow:hidden;height:8px}.cs-colour-swatch{flex:1;height:100%}.cs-typography-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.cs-font-preview{margin-top:8px;padding:8px 12px;background:#f9fafb;border:1px solid #F3F4F6;border-radius:6px;font-size:13px;color:#374151;line-height:1.4}.cs-placeholder-text{color:#9ca3af;font-style:italic}.cs-toggles{display:flex;flex-direction:column;gap:12px}.cs-toggle-row{display:flex;align-items:center;gap:12px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.cs-toggle-row span{font-family:Inter,sans-serif;font-size:14px;color:#374151}.cs-toggle{position:relative;width:40px;height:22px;background:#d1d5db;border-radius:11px;transition:background-color .2s;flex-shrink:0;cursor:pointer}.cs-toggle:focus-visible{outline:2px solid #4A63B3;outline-offset:2px}.cs-toggle-on{background:#4a63b3}.cs-toggle-thumb{position:absolute;top:2px;left:2px;width:18px;height:18px;background:#fff;border-radius:50%;transition:transform .2s;box-shadow:0 1px 3px #00000026}.cs-toggle-on .cs-toggle-thumb{transform:translate(18px)}.cs-accordion-header{width:100%;display:flex;align-items:center;justify-content:space-between;background:none;border:none;padding:0;cursor:pointer;text-align:left}.cs-accordion-title-row{display:flex;align-items:center;gap:12px}.cs-updated-label{font-family:Inter,sans-serif;font-size:11px;color:#9ca3af;font-weight:400}.cs-chevron{transition:transform .2s;flex-shrink:0}.cs-chevron-open{transform:rotate(180deg)}.cs-accordion-body{margin-top:16px;padding-top:16px;border-top:1px solid #F3F4F6}.cs-no-template{font-family:Inter,sans-serif;font-size:13px;color:#9ca3af;font-style:italic;margin:0}.cs-slider-row{display:flex;align-items:center;gap:12px}.cs-slider{flex:1;height:4px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#e5e7eb;border-radius:2px;outline:none}.cs-slider::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;background:#4a63b3;border-radius:50%;cursor:pointer;border:2px solid #ffffff;box-shadow:0 1px 3px #0003}.cs-slider::-moz-range-thumb{width:18px;height:18px;background:#4a63b3;border-radius:50%;cursor:pointer;border:2px solid #ffffff;box-shadow:0 1px 3px #0003}.cs-slider-value{font-family:Inter,sans-serif;font-size:13px;color:#4b5563;font-weight:500;min-width:36px;text-align:right}.cs-radio-group{display:flex;flex-direction:column;gap:8px}.cs-radio-label{display:flex;align-items:center;gap:8px;cursor:pointer}.cs-radio-label input[type=radio]{width:16px;height:16px;accent-color:#4A63B3;margin:0}.cs-radio-label span{font-family:Inter,sans-serif;font-size:14px;color:#374151}.cs-save-btn{display:inline-flex;align-items:center;justify-content:center;height:40px;padding:0 24px;background:#4a63b3;color:#fff;border:none;border-radius:8px;font-family:Inter,sans-serif;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .15s}.cs-save-btn:hover:not(:disabled){background:#3d5299}.cs-save-btn:disabled{opacity:.6;cursor:not-allowed}.cs-save-btn-sm{height:36px;padding:0 20px;font-size:13px}.cs-doc-save-row{display:flex;align-items:center;gap:12px;margin-top:16px;padding-top:12px;border-top:1px solid #F3F4F6}.cs-toast{position:fixed;top:20px;right:20px;display:flex;align-items:center;gap:8px;padding:12px 20px;border-radius:8px;font-family:Inter,sans-serif;font-size:14px;font-weight:500;z-index:9999;box-shadow:0 4px 12px #00000026;animation:cs-toast-in .25s ease-out}.cs-toast-success{background:#059669;color:#fff}.cs-toast-error{background:#dc2626;color:#fff}.cs-inline-toast{font-family:Inter,sans-serif;font-size:13px;font-weight:500}.cs-inline-toast.cs-toast-success{background:none;box-shadow:none;color:#059669}.cs-inline-toast.cs-toast-error{background:none;box-shadow:none;color:#dc2626}@keyframes cs-toast-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.cs-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;color:#6b7280}.cs-loading p{font-family:Inter,sans-serif;font-size:14px;margin:16px 0 0}.cs-spinner{width:32px;height:32px;border:3px solid #E5E7EB;border-top-color:#4a63b3;border-radius:50%;animation:cs-spin .8s linear infinite}@keyframes cs-spin{to{transform:rotate(360deg)}}.cs-field-hint{font-family:Inter,sans-serif;font-size:12.5px;color:#6b7280;margin:0 0 12px;line-height:1.4}.cs-loading-text{font-family:Inter,sans-serif;font-size:13px;color:#9ca3af;padding:12px 0}.cs-otp-channel-group{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.cs-radio-card{display:flex;align-items:flex-start;gap:10px;padding:14px 16px;border:1.5px solid #E5E7EB;border-radius:8px;cursor:pointer;transition:border-color .15s,background .15s;background:#fff}.cs-radio-card:hover{border-color:#93c5fd;background:#f8fafc}.cs-radio-card-active{border-color:#3b82f6;background:#eff6ff}.cs-radio-card input[type=radio]{margin-top:3px;accent-color:#3B82F6}.cs-radio-card-content{display:flex;flex-direction:column;gap:2px}.cs-radio-card-content strong{font-family:Inter,sans-serif;font-size:13.5px;font-weight:600;color:#171717}.cs-radio-card-desc{font-family:Inter,sans-serif;font-size:12px;color:#6b7280;line-height:1.4}.cs-radio-card-badge{display:inline-block;font-family:Inter,sans-serif;font-size:10.5px;font-weight:600;color:#059669;background:#d1fae5;padding:2px 8px;border-radius:4px;margin-top:4px;width:-moz-fit-content;width:fit-content}.cs-otp-save-row{display:flex;align-items:center;gap:12px}@media(max-width:640px){.cs-colour-row,.cs-typography-row{grid-template-columns:1fr}.cs-logo-dimensions{flex-direction:column}}.kiosk-settings{max-width:720px;padding:24px}.kiosk-settings-title{font-size:22px;font-weight:600;margin:0 0 4px}.kiosk-settings-subtitle{color:#6b7280;margin:0 0 24px}.kiosk-settings-section{margin-bottom:32px;background:#fff;border:1px solid #E5E7EB;border-radius:12px;padding:24px}.kiosk-settings-section h3{font-size:16px;font-weight:600;margin:0 0 8px}.kiosk-section-hint{color:#6b7280;font-size:13px;margin:0 0 16px}.kiosk-url-box{display:flex;align-items:center;gap:12px;background:#f9fafb;border:1px solid #E5E7EB;border-radius:8px;padding:12px 16px;margin-bottom:8px}.kiosk-url{flex:1;font-size:13px;color:#4a63b3;word-break:break-all}.kiosk-url-copy{padding:6px 16px;background:#4a63b3;color:#fff;border:none;border-radius:6px;font-size:13px;cursor:pointer;white-space:nowrap}.kiosk-url-copy:hover{background:#3b4f94}.kiosk-url-hint{font-size:12px;color:#9ca3af;margin:0}.kiosk-qr-section{margin-top:16px}.kiosk-qr-placeholder{width:160px;height:160px;border:2px dashed #D1D5DB;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#9ca3af}.kiosk-qr-text{font-size:32px;font-weight:700}.kiosk-qr-hint{font-size:11px;text-align:center;margin:4px 0 0}.kiosk-conditions-list{display:flex;flex-direction:column;gap:2px}.kiosk-condition-row{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-radius:6px;transition:background .1s}.kiosk-condition-row:hover{background:#f9fafb}.kiosk-condition-info{display:flex;align-items:center;gap:8px;font-size:14px}.kiosk-lock-icon{font-size:12px}.kiosk-condition-inactive{color:#9ca3af;text-decoration:line-through}.kiosk-toggle{width:40px;height:22px;border-radius:11px;background:#d1d5db;border:none;cursor:pointer;position:relative;transition:background .2s;padding:0}.kiosk-toggle.active{background:#4a63b3}.kiosk-toggle-slider{position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .2s;box-shadow:0 1px 2px #0000001a}.kiosk-toggle.active .kiosk-toggle-slider{transform:translate(18px)}.kiosk-add-condition{display:flex;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid #E5E7EB}.kiosk-add-condition input{flex:1;padding:8px 12px;border:1px solid #D1D5DB;border-radius:6px;font-size:14px}.kiosk-add-condition input:focus{outline:none;border-color:#4a63b3}.kiosk-add-btn{padding:8px 16px;background:#f3f4f6;border:1px solid #D1D5DB;border-radius:6px;font-size:13px;cursor:pointer;white-space:nowrap}.kiosk-add-btn:hover:not(:disabled){background:#e5e7eb}.kiosk-add-btn:disabled{opacity:.5;cursor:not-allowed}.hr-module{padding:var(--spacing-md);width:100%;box-sizing:border-box}.hr-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.hr-header h2{margin:0;color:var(--color-neutral-900)}.hr-tabs{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);border-bottom:2px solid var(--color-neutral-200);padding-bottom:0}.leave-management{padding:var(--spacing-md) 0}.leave-balance-summary{display:flex;flex-wrap:nowrap;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);width:100%;box-sizing:border-box}.balance-card{flex:1 1 0;min-width:0;max-width:none;background:linear-gradient(135deg,var(--color-primary-900) 0%,var(--color-primary-950) 100%);color:var(--color-white);padding:1.25rem;border-radius:var(--radius-xl);display:flex;flex-direction:column;align-items:center;text-align:center;box-sizing:border-box}.balance-value{font-size:2.5rem;font-weight:var(--font-weight-bold);line-height:1}.balance-label{font-size:.9rem;font-weight:var(--font-weight-medium);margin-top:var(--spacing-sm);opacity:.9}.balance-detail{font-size:var(--font-size-caption);opacity:.7;margin-top:var(--spacing-xs)}.leave-actions,.leave-filters{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.leave-table,.attendance-table{width:100%;border-collapse:collapse;background:var(--color-white);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}.leave-table th,.leave-table td,.attendance-table th,.attendance-table td{padding:var(--spacing-md) var(--spacing-md);text-align:left;border-bottom:1px solid var(--color-neutral-200)}.leave-table th,.attendance-table th{background:var(--color-neutral-50);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700);font-size:.85rem;text-transform:uppercase}.leave-table td,.attendance-table td{font-size:.9rem}.leave-table .actions,.attendance-table .actions{display:flex;gap:var(--spacing-sm)}.leave-form{padding:var(--spacing-md) 0}.calculated-days{background:var(--color-primary-100);padding:var(--spacing-md) var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-md);color:var(--color-primary-900);text-align:center}.balance-details{padding:var(--spacing-md) 0}.balance-table{width:100%;border-collapse:collapse}.balance-table th,.balance-table td{padding:var(--spacing-md) var(--spacing-md);text-align:left;border-bottom:1px solid var(--color-neutral-200)}.balance-table th{background:var(--color-neutral-50);font-weight:var(--font-weight-semibold)}.balance-table .remaining{font-weight:var(--font-weight-bold);color:var(--color-primary-900)}.roster-management{padding:var(--spacing-md) 0}.roster-controls{display:flex;align-items:center;justify-content:center;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.week-label{font-weight:var(--font-weight-semibold);font-size:1.1rem;color:var(--color-neutral-900)}.my-roster-summary{background:var(--color-neutral-50);padding:var(--spacing-md) 1.25rem;border-radius:var(--radius-lg);margin-bottom:var(--spacing-lg)}.my-roster-summary h4{margin:0 0 var(--spacing-md) 0;font-size:.9rem;color:var(--color-neutral-500)}.my-shifts{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.shift-badge{background:var(--color-primary-900);color:var(--color-white);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);display:flex;gap:var(--spacing-sm);font-size:.85rem}.shift-date{font-weight:var(--font-weight-semibold)}.shift-time{opacity:.9}.roster-grid{background:var(--color-white);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}.roster-header,.roster-row{display:grid;grid-template-columns:150px repeat(7,1fr)}.roster-header{background:var(--color-neutral-50);border-bottom:2px solid var(--color-neutral-200)}.roster-cell{padding:var(--spacing-md);border-right:1px solid var(--color-neutral-200);min-height:60px;display:flex;flex-direction:column;justify-content:center}.roster-cell:last-child{border-right:none}.staff-column{font-weight:var(--font-weight-medium);background:var(--color-neutral-50)}.day-column{text-align:center;align-items:center}.day-name{font-weight:var(--font-weight-semibold);font-size:.85rem;color:var(--color-neutral-700)}.day-date{font-size:.8rem;color:var(--color-neutral-500)}.roster-row{border-bottom:1px solid var(--color-neutral-200)}.roster-row:last-child{border-bottom:none}.shift-entry{background:var(--color-primary-100);padding:var(--spacing-sm);border-radius:var(--radius-sm);font-size:.8rem;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs)}.shift-entry.draft{background:var(--color-warning-100);border:1px dashed var(--color-warning-500)}.shift-entry.published{background:var(--color-success-100);border:1px solid var(--color-success-600)}.shift-name{font-size:var(--font-size-caption);color:var(--color-neutral-500)}.no-shift{color:var(--color-neutral-400)}.attendance-management{padding:var(--spacing-md) 0}.clock-card{background:linear-gradient(135deg,var(--color-neutral-900) 0%,var(--color-neutral-800) 100%);color:var(--color-white);padding:var(--spacing-xl);border-radius:var(--radius-xl);text-align:center;margin-bottom:var(--spacing-lg)}.clock-time{font-size:var(--spacing-2xl);font-weight:var(--font-weight-bold);font-family:Monaco,Menlo,monospace}.clock-date{font-size:var(--spacing-md);opacity:.8;margin-bottom:var(--spacing-lg)}.clock-status{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md)}.clock-info{display:flex;gap:var(--spacing-sm);align-items:center}.clock-info span{opacity:.8}.clock-info strong{font-size:1.25rem}.btn-large{padding:var(--spacing-md) 2.5rem;font-size:1.1rem}.late-warning{background:#ffc10733;color:var(--color-warning-500);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);font-size:.85rem}.attendance-filters{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.attendance-filters label{font-weight:var(--font-weight-medium);color:var(--color-neutral-700)}.attendance-filters input[type=date]{padding:var(--spacing-sm);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:.9rem}.finance-module{padding:var(--spacing-md);width:100%;box-sizing:border-box}.finance-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.finance-header h2{margin:0;color:var(--color-neutral-900)}.finance-tabs{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);border-bottom:2px solid var(--color-neutral-200);padding-bottom:0}.tab-btn{padding:var(--spacing-md) var(--spacing-lg);border:none;background:transparent;color:var(--color-neutral-500);font-size:.95rem;font-weight:var(--font-weight-medium);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all var(--transition-normal)}.tab-btn:hover{color:var(--color-primary-900)}.tab-btn.active{color:var(--color-primary-900);border-bottom-color:var(--color-primary-900)}.finance-dashboard{padding:var(--spacing-md) 0}.dashboard-section{margin-bottom:var(--spacing-xl)}.dashboard-section h3{margin:0 0 var(--spacing-md) 0;color:var(--color-neutral-700);font-size:var(--spacing-md);text-transform:uppercase;letter-spacing:.5px}.kpi-grid{display:flex;flex-wrap:nowrap;gap:var(--spacing-md);width:100%;box-sizing:border-box}.kpi-card{flex:1 1 0;min-width:0;max-width:none;background:var(--color-white);padding:var(--spacing-lg);border-radius:var(--radius-xl);box-sizing:border-box;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;border-left:4px solid var(--color-neutral-200)}.kpi-card.revenue{border-left-color:var(--color-success-600)}.kpi-card.expense{border-left-color:var(--color-error-600)}.kpi-card.profit{border-left-color:var(--color-primary-900)}.kpi-card.loss{border-left-color:var(--color-error-600)}.kpi-label{font-size:.85rem;color:var(--color-neutral-500);margin-bottom:var(--spacing-sm)}.kpi-value{font-size:1.75rem;font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.kpi-subvalue{font-size:.85rem;color:var(--color-neutral-500);margin-top:var(--spacing-xs)}.alert-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--spacing-md)}.alert-card{background:var(--color-neutral-50);padding:1.25rem;border-radius:var(--radius-lg);display:flex;flex-direction:column;align-items:center;text-align:center;border:1px solid var(--color-neutral-200)}.alert-card.warning{background:var(--color-warning-100);border-color:var(--color-warning-500)}.alert-card.danger{background:var(--color-error-100);border-color:var(--color-error-600)}.alert-card.info{background:var(--color-info-100);border-color:var(--color-primary-900)}.alert-count{font-size:var(--spacing-lg);font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.alert-label{font-size:.85rem;color:var(--color-neutral-500);margin-top:var(--spacing-xs)}.expense-management{padding:var(--spacing-md) 0}.expense-actions,.expense-filters{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.expense-table,.revenue-table,.pl-table{width:100%;border-collapse:collapse;background:var(--color-white);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}.expense-table th,.expense-table td,.revenue-table th,.revenue-table td,.pl-table th,.pl-table td{padding:var(--spacing-md) var(--spacing-md);text-align:left;border-bottom:1px solid var(--color-neutral-200)}.expense-table th,.revenue-table th,.pl-table th{background:var(--color-neutral-50);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700);font-size:.85rem;text-transform:uppercase}.expense-table td,.revenue-table td,.pl-table td{font-size:.9rem}.description-cell{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.amount-cell{font-family:Monaco,Menlo,monospace;font-weight:var(--font-weight-medium);text-align:right}.amount-cell.profit{color:var(--color-success-600)}.amount-cell.loss{color:var(--color-error-600)}.expense-table .actions,.pl-table .actions{display:flex;gap:var(--spacing-sm)}.expense-form{padding:var(--spacing-md) 0}.expense-summary{background:var(--color-neutral-50);padding:var(--spacing-md);border-radius:var(--radius-lg);margin-bottom:var(--spacing-md);text-align:center}.expense-summary .amount{font-size:var(--spacing-lg);font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.revenue-view{padding:var(--spacing-md) 0}.period-selector{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.period-btn{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-neutral-200);background:var(--color-white);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal)}.period-btn:hover{background:var(--color-neutral-100)}.period-btn.active{background:var(--color-primary-900);color:var(--color-white);border-color:var(--color-primary-900)}.revenue-summary{background:var(--color-white);padding:var(--spacing-lg);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);margin-bottom:var(--spacing-lg)}.summary-total{text-align:center;padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-neutral-200);margin-bottom:var(--spacing-md)}.summary-label{display:block;font-size:.85rem;color:var(--color-neutral-500);margin-bottom:var(--spacing-sm)}.summary-value{font-size:2.5rem;font-weight:var(--font-weight-bold);color:var(--color-success-600)}.summary-detail{display:block;font-size:.85rem;color:var(--color-neutral-400);margin-top:var(--spacing-xs)}.revenue-breakdown{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:var(--spacing-md)}.breakdown-item{text-align:center}.breakdown-label{display:block;font-size:.8rem;color:var(--color-neutral-500);margin-bottom:var(--spacing-xs)}.breakdown-value{font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.pl-view{padding:var(--spacing-md) 0}.pl-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.trend-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-md);background:var(--color-white);padding:1.25rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:var(--spacing-lg)}.trend-item{text-align:center}.trend-label{display:block;font-size:.8rem;color:var(--color-neutral-500);margin-bottom:var(--spacing-xs)}.trend-value{font-size:1.25rem;font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.trend-value.positive{color:var(--color-success-600)}.trend-value.negative{color:var(--color-error-600)}.pl-detail{padding:var(--spacing-md) 0}.pl-period{text-align:center;font-size:1.1rem;font-weight:var(--font-weight-semibold);color:var(--color-neutral-700);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:2px solid var(--color-neutral-200)}.pl-section{margin-bottom:var(--spacing-lg)}.pl-section h4{margin:0 0 var(--spacing-md) 0;color:var(--color-neutral-500);font-size:.85rem;text-transform:uppercase}.pl-line{display:flex;justify-content:space-between;padding:var(--spacing-sm) 0;border-bottom:1px solid var(--color-neutral-100)}.pl-line.total{font-weight:var(--font-weight-semibold);border-top:1px solid var(--color-neutral-200);margin-top:var(--spacing-sm);padding-top:var(--spacing-md)}.pl-line.gross-profit{background:var(--color-primary-100);padding:var(--spacing-md) var(--spacing-md);border-radius:var(--radius-md);font-weight:var(--font-weight-semibold);margin:var(--spacing-md) 0}.pl-line.net-profit{background:var(--color-neutral-900);color:var(--color-white);padding:var(--spacing-md);border-radius:var(--radius-lg);font-size:1.1rem;font-weight:var(--font-weight-semibold);margin-top:var(--spacing-md)}.pl-line.net-profit.profit{background:linear-gradient(135deg,var(--color-success-600) 0%,var(--color-success-700) 100%)}.pl-line.net-profit.loss{background:linear-gradient(135deg,var(--color-error-600) 0%,var(--color-error-700) 100%)}.status-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-xl);font-size:.8rem;font-weight:var(--font-weight-medium)}.status-badge.success{background:var(--color-success-100);color:var(--color-success-800)}.status-badge.warning{background:var(--color-warning-100);color:var(--color-warning-800)}.status-badge.danger{background:var(--color-error-100);color:var(--color-error-800)}.status-badge.info{background:var(--color-info-100);color:var(--color-info-600)}.btn-primary{background:var(--color-primary-900);color:var(--color-white);border:none;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--transition-normal)}.btn-primary:hover:not(:disabled){background:var(--color-primary-950)}.btn-secondary{background:var(--color-neutral-100);color:var(--color-neutral-700);border:1px solid var(--color-neutral-200);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-normal)}.btn-secondary:hover{background:var(--color-neutral-200)}.btn-small{padding:.35rem var(--spacing-md);font-size:.8rem;border-radius:var(--radius-sm);border:1px solid var(--color-neutral-200);background:var(--color-white);cursor:pointer}.btn-small.btn-success{background:var(--color-success-600);color:var(--color-white);border-color:var(--color-success-600)}.btn-small.btn-success:hover{background:var(--color-success-700)}.btn-small.btn-danger{background:var(--color-error-600);color:var(--color-white);border-color:var(--color-error-600)}.btn-small.btn-danger:hover{background:var(--color-error-700)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:.9rem}.checkbox-label{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer}.checkbox-label input[type=checkbox]{width:auto}.modal-actions{display:flex;justify-content:flex-end;gap:var(--spacing-md);margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--color-neutral-200)}.empty-state{text-align:center;padding:var(--spacing-2xl);color:var(--color-neutral-400);background:var(--color-neutral-50);border-radius:var(--radius-lg)}.superadmin-module{padding:var(--spacing-md);width:100%;box-sizing:border-box}.superadmin-persistent-header{position:sticky;top:0;z-index:var(--z-dropdown);background:var(--color-white);padding:var(--spacing-md) 0;margin:calc(-1 * var(--spacing-md)) calc(-1 * var(--spacing-md)) 0 calc(-1 * var(--spacing-md));padding:var(--spacing-md);border-bottom:1px solid var(--color-neutral-200);margin-bottom:var(--spacing-md)}.superadmin-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-md)}.superadmin-title-row{display:flex;align-items:center;gap:var(--spacing-md)}.superadmin-header h2{margin:0;color:var(--color-neutral-900)}.superadmin-badge{background:linear-gradient(135deg,#667eea,#764ba2);color:var(--color-white);padding:.35rem .75rem;border-radius:var(--radius-2xl);font-size:.8rem;font-weight:var(--font-weight-medium)}.superadmin-filter-bar{display:flex;align-items:center;justify-content:flex-end;gap:var(--spacing-md);margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--color-neutral-200)}.current-filter-indicator{font-size:.85rem;color:var(--color-neutral-500);padding:.35rem .75rem;background:#f0f0ff;border-radius:var(--radius-sm);border:1px solid rgba(102,126,234,.2)}.current-filter-indicator strong{color:#667eea}.global-clinic-selector{display:flex;align-items:center;gap:.75rem;padding:var(--spacing-sm) var(--spacing-md);background:linear-gradient(135deg,#667eea1a,#764ba21a);border-radius:var(--radius-lg);border:1px solid rgba(102,126,234,.3)}.global-clinic-selector label{font-size:.85rem;font-weight:var(--font-weight-medium);color:#667eea;white-space:nowrap}.global-clinic-selector .clinic-select{min-width:200px;padding:.4rem .75rem;border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:.9rem;background:var(--color-white)}.superadmin-tabs{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);border-bottom:2px solid var(--color-neutral-200);padding-bottom:0}.tab-btn{padding:.75rem var(--spacing-lg);border:none;background:transparent;color:var(--color-neutral-500);font-size:.95rem;font-weight:var(--font-weight-medium);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:var(--transition-normal);border-radius:var(--radius-md) var(--radius-md) 0 0}.tab-btn:hover{color:#667eea;background:#667eea14}.tab-btn.active{color:var(--color-white);background:linear-gradient(135deg,#667eea,#764ba2);border-bottom-color:#667eea}.superadmin-content{padding:var(--spacing-md) 0}.system-dashboard{display:flex;flex-direction:column;gap:var(--spacing-xl)}.dashboard-summary-banner{display:flex;flex-wrap:wrap;gap:var(--spacing-lg);padding:var(--spacing-md) var(--spacing-lg);background:linear-gradient(135deg,#667eea14,#764ba214);border-radius:var(--radius-xl);border:1px solid rgba(102,126,234,.2)}.summary-item{display:flex;align-items:center;gap:var(--spacing-sm)}.summary-icon{font-size:1.25rem}.summary-text{font-size:.9rem;color:var(--color-neutral-700)}.summary-text strong{color:#667eea}.clinic-breakdown-section{background:var(--color-white);border-radius:var(--radius-xl);padding:var(--spacing-lg);box-shadow:var(--shadow-sm)}.clinic-breakdown-section h3{margin:0 0 var(--spacing-md) 0;color:var(--color-neutral-700);font-size:1rem;text-transform:uppercase;letter-spacing:.5px}.clinic-breakdown-table{width:100%;border-collapse:collapse}.clinic-breakdown-table th,.clinic-breakdown-table td{padding:.75rem var(--spacing-md);text-align:left;border-bottom:1px solid var(--color-neutral-200)}.clinic-breakdown-table th{background:var(--color-neutral-50);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700);font-size:.8rem;text-transform:uppercase}.clinic-breakdown-table td{font-size:.9rem}.clinic-breakdown-table tbody tr:hover{background:var(--color-neutral-50)}.clinic-breakdown-table tfoot .totals-row{background:linear-gradient(135deg,#667eea1a,#764ba21a)}.clinic-breakdown-table tfoot .totals-row td{border-bottom:none;font-size:.95rem}.metrics-section h3,.distribution-section h3,.growth-section h3,.compliance-summary-section h3{margin:0 0 var(--spacing-md) 0;color:var(--color-neutral-700);font-size:1rem;text-transform:uppercase;letter-spacing:.5px}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--spacing-md)}.metric-card{background:var(--color-white);padding:var(--spacing-lg);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;border-left:4px solid var(--color-neutral-200)}.metric-card.primary{border-left-color:#667eea;background:linear-gradient(135deg,#f8f9ff 0%,var(--color-white) 100%)}.metric-card.highlight{border-left-color:var(--color-primary-900)}.metric-card.revenue{border-left-color:var(--color-success)}.metric-value{font-size:var(--font-size-h1);font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.metric-label{font-size:.85rem;color:var(--color-neutral-500);margin-top:var(--spacing-xs)}.metric-detail{font-size:.8rem;color:var(--color-neutral-500);margin-top:var(--spacing-xs)}.tier-distribution{display:flex;gap:var(--spacing-md);flex-wrap:wrap}.tier-bar{flex:1;min-width:120px;padding:1.25rem;border-radius:var(--radius-xl);text-align:center;color:var(--color-white)}.tier-bar.bronze{background:linear-gradient(135deg,#cd7f32,#a06428)}.tier-bar.silver{background:linear-gradient(135deg,silver,#8a8a8a)}.tier-bar.gold{background:linear-gradient(135deg,gold,#c8a600);color:var(--color-neutral-900)}.tier-bar.platinum{background:linear-gradient(135deg,#e5e4e2,#9a9a9a);color:var(--color-neutral-900)}.tier-count{display:block;font-size:2.5rem;font-weight:var(--font-weight-bold)}.tier-name{display:block;font-size:.9rem;opacity:.9;margin-top:var(--spacing-xs)}.growth-cards{display:flex;gap:var(--spacing-md);flex-wrap:wrap}.growth-card{flex:1;min-width:140px;padding:1.25rem;border-radius:var(--radius-xl);text-align:center;background:var(--color-white);box-shadow:var(--shadow-sm)}.growth-card.positive{border:2px solid var(--color-success)}.growth-card.negative{border:2px solid var(--color-error)}.growth-value{display:block;font-size:1.75rem;font-weight:var(--font-weight-bold)}.growth-card.positive .growth-value{color:var(--color-success)}.growth-card.negative .growth-value{color:var(--color-error)}.growth-label{display:block;font-size:.85rem;color:var(--color-neutral-500);margin-top:var(--spacing-xs)}.compliance-overview{display:flex;gap:var(--spacing-xl);align-items:center;flex-wrap:wrap}.compliance-rate{padding:var(--spacing-lg) var(--spacing-xl);border-radius:var(--radius-xl);text-align:center}.compliance-rate.good{background:linear-gradient(135deg,var(--color-success-light) 0%,#c3e6cb 100%)}.compliance-rate.warning{background:linear-gradient(135deg,var(--color-warning-light) 0%,#ffeeba 100%)}.compliance-rate.danger{background:linear-gradient(135deg,var(--color-error-light) 0%,#f5c6cb 100%)}.rate-value{display:block;font-size:3rem;font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.rate-label{display:block;font-size:.9rem;color:var(--color-neutral-500)}.compliance-stats{display:flex;gap:var(--spacing-xl)}.compliance-stats .stat{text-align:center}.compliance-stats .stat-value{display:block;font-size:var(--font-size-h2);font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.compliance-stats .stat-label{display:block;font-size:.8rem;color:var(--color-neutral-500)}.clinic-management{display:flex;flex-direction:column;gap:var(--spacing-md)}.clinic-actions{display:flex;gap:.75rem}.clinic-filters{display:flex;gap:.75rem;flex-wrap:wrap}.search-input{flex:1;min-width:200px;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:.9rem}.filter-select{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:.9rem;min-width:150px}.clinics-table{width:100%;border-collapse:collapse;background:var(--color-white);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}.clinics-table th,.clinics-table td{padding:.75rem var(--spacing-md);text-align:left;border-bottom:1px solid var(--color-neutral-200)}.clinics-table th{background:var(--color-neutral-50);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700);font-size:.85rem;text-transform:uppercase}.clinics-table td{font-size:.9rem}.clinic-info{display:flex;flex-direction:column}.clinic-name{font-weight:var(--font-weight-medium);color:var(--color-neutral-900)}.clinic-email{font-size:.8rem;color:var(--color-neutral-500)}.tier-badge{display:inline-block;padding:var(--spacing-xs) .75rem;border-radius:var(--radius-xl);font-size:.8rem;font-weight:var(--font-weight-medium);color:var(--color-white)}.status-badge{display:inline-block;padding:var(--spacing-xs) .75rem;border-radius:var(--radius-xl);font-size:.8rem;font-weight:var(--font-weight-medium)}.status-badge.success{background:var(--color-success-light);color:var(--color-success)}.status-badge.warning{background:var(--color-warning-light);color:var(--color-warning)}.status-badge.danger{background:var(--color-error-light);color:var(--color-error)}.status-badge.info{background:var(--color-info-light);color:var(--color-primary-900)}.status-badge.muted{background:var(--color-neutral-100);color:var(--color-neutral-500)}.compliance-badge{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;font-size:.9rem}.compliance-badge.yes{background:var(--color-success-light);color:var(--color-success)}.compliance-badge.no{background:var(--color-error-light);color:var(--color-error)}.clinics-table .actions{display:flex;gap:var(--spacing-sm)}.clinic-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.form-section{padding:var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-lg)}.form-section h4{margin:0 0 var(--spacing-md) 0;color:var(--color-neutral-700);font-size:.95rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.form-group label{display:block;margin-bottom:var(--spacing-sm);font-weight:var(--font-weight-medium);color:var(--color-neutral-700)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:var(--spacing-sm) .75rem;border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:.9rem}.form-group textarea{resize:vertical}.tier-options{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-sm)}.tier-option{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-md);border:2px solid var(--color-neutral-200);border-radius:var(--radius-lg);cursor:pointer;transition:var(--transition-normal)}.tier-option:hover{background:var(--color-neutral-50)}.tier-option.selected{background:#f8f9ff}.tier-option input{display:none}.tier-option .tier-name{font-weight:var(--font-weight-semibold);font-size:.9rem}.clinic-details{display:flex;flex-direction:column;gap:var(--spacing-lg)}.details-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-neutral-200)}.details-header h3{margin:0;color:var(--color-neutral-900)}.details-badges{display:flex;gap:var(--spacing-sm)}.details-section{padding:var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-lg)}.details-section h4{margin:0 0 .75rem;color:var(--color-neutral-500);font-size:.85rem;text-transform:uppercase}.details-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}.detail-item{display:flex;flex-direction:column}.detail-label{font-size:.8rem;color:var(--color-neutral-500)}.detail-value{font-weight:var(--font-weight-medium);color:var(--color-neutral-900)}.usage-stats{display:flex;flex-direction:column;gap:.75rem}.usage-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.usage-fill{height:100%;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:var(--radius-sm)}.usage-label{font-size:.8rem;color:var(--color-neutral-500)}.compliance-details{display:flex;flex-direction:column;gap:var(--spacing-sm)}.compliance-item{display:flex;align-items:center;gap:.75rem;padding:var(--spacing-sm);background:var(--color-white);border-radius:var(--radius-sm)}.compliance-item.warning{background:var(--color-warning-light)}.compliance-indicator{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:.8rem;font-weight:var(--font-weight-semibold)}.compliance-indicator.yes{background:var(--color-success-light);color:var(--color-success)}.compliance-indicator.no{background:var(--color-error-light);color:var(--color-error)}.compliance-indicator.info{background:var(--color-info-light);color:var(--color-primary-900)}.compliance-indicator.warning{background:var(--color-warning);color:var(--color-neutral-900)}.compliance-monitor{display:flex;flex-direction:column;gap:var(--spacing-xl)}.compliance-overview-section{display:grid;grid-template-columns:auto 1fr 1fr;gap:var(--spacing-xl);align-items:start}.compliance-rate-card{padding:var(--spacing-xl);border-radius:var(--radius-2xl);text-align:center;min-width:180px}.compliance-rate-card.good{background:linear-gradient(135deg,var(--color-success) 0%,var(--color-success-hover) 100%);color:var(--color-white)}.compliance-rate-card.warning{background:linear-gradient(135deg,var(--color-warning) 0%,var(--color-warning-hover) 100%);color:var(--color-neutral-900)}.compliance-rate-card.danger{background:linear-gradient(135deg,var(--color-error) 0%,var(--color-error-hover) 100%);color:var(--color-white)}.compliance-rate-card .rate-value{font-size:3.5rem;color:inherit}.compliance-rate-card .rate-label{color:inherit;opacity:.9}.compliance-rate-card .rate-detail{display:block;font-size:.85rem;opacity:.8;margin-top:var(--spacing-sm)}.issues-by-type h4,.issues-by-severity h4{margin:0 0 .75rem;color:var(--color-neutral-700);font-size:.9rem}.type-bars{display:flex;flex-direction:column;gap:var(--spacing-sm)}.type-bar-item{display:grid;grid-template-columns:100px 1fr 40px;align-items:center;gap:.75rem}.type-name{font-size:.85rem;color:var(--color-neutral-500);text-transform:capitalize}.type-bar{height:8px;background:var(--color-neutral-200);border-radius:var(--radius-sm);overflow:hidden}.type-fill{height:100%;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:var(--radius-sm)}.type-count{font-size:.85rem;font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.severity-badges{display:flex;gap:.75rem;flex-wrap:wrap}.severity-badge{display:flex;flex-direction:column;align-items:center;padding:.75rem 1.25rem;border-radius:var(--radius-lg)}.severity-badge.danger{background:var(--color-error-light)}.severity-badge.warning{background:var(--color-warning-light)}.severity-badge.info{background:var(--color-info-light)}.severity-count{font-size:var(--font-size-h2);font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.severity-label{font-size:var(--font-size-caption);color:var(--color-neutral-500)}.issues-section{background:var(--color-white);border-radius:var(--radius-xl);padding:var(--spacing-lg);box-shadow:var(--shadow-sm)}.issues-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.issues-header h3{margin:0;color:var(--color-neutral-900)}.issues-table{width:100%;border-collapse:collapse}.issues-table th,.issues-table td{padding:.75rem var(--spacing-md);text-align:left;border-bottom:1px solid var(--color-neutral-200)}.issues-table th{background:var(--color-neutral-50);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700);font-size:.85rem;text-transform:uppercase}.issues-table td{font-size:.9rem}.description-cell{max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.issues-table .actions{display:flex;gap:var(--spacing-sm)}.feature-flags-manager{display:flex;flex-direction:column;gap:var(--spacing-lg)}.feature-flags-manager h3{margin:0;color:var(--color-neutral-900)}.section-description{margin:calc(-1 * var(--spacing-md)) 0 0 0;color:var(--color-neutral-500);font-size:.9rem}.flags-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.flag-card{display:flex;justify-content:space-between;align-items:center;padding:1.25rem;background:var(--color-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm)}.flag-info{display:flex;flex-direction:column;gap:var(--spacing-xs)}.flag-info h4{margin:0;color:var(--color-neutral-900);font-size:1rem}.flag-info p{margin:0;color:var(--color-neutral-500);font-size:.85rem}.tier-requirement{display:inline-block;font-size:var(--font-size-caption);color:#667eea;background:#f0f0ff;padding:.2rem var(--spacing-sm);border-radius:var(--radius-sm);margin-top:var(--spacing-xs)}.overrides-count{display:inline-block;font-size:var(--font-size-caption);color:var(--color-neutral-500);margin-left:var(--spacing-sm)}.flag-toggle{display:flex;align-items:center;gap:.75rem}.toggle-switch{position:relative;display:inline-block;width:48px;height:26px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:var(--color-neutral-300);transition:var(--transition-slow);border-radius:26px}.toggle-slider:before{position:absolute;content:"";height:20px;width:20px;left:3px;bottom:3px;background-color:var(--color-white);transition:var(--transition-slow);border-radius:50%}.toggle-switch input:checked+.toggle-slider{background:linear-gradient(135deg,#667eea,#764ba2)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(22px)}.toggle-label{font-size:.85rem;color:var(--color-neutral-500);min-width:60px}.audit-logs-viewer{display:flex;flex-direction:column;gap:var(--spacing-lg)}.audit-logs-viewer h3{margin:0;color:var(--color-neutral-900)}.audit-filters{display:flex;flex-direction:column;gap:.75rem;padding:var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-lg)}.filter-row{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.filter-input{flex:1;min-width:200px;padding:var(--spacing-sm) .75rem;border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:.9rem}.filter-row label{display:flex;align-items:center;gap:var(--spacing-sm);font-size:.9rem;color:var(--color-neutral-700)}.filter-row input[type=date],.filter-row input[type=time]{padding:var(--spacing-sm);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:.9rem}.filter-group{display:flex;align-items:center;gap:var(--spacing-sm)}.filter-group label{font-size:.85rem;font-weight:var(--font-weight-medium);color:var(--color-neutral-700);white-space:nowrap}.filter-group .clinic-select{min-width:180px;padding:var(--spacing-sm) .75rem;border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:.9rem}.filter-note{font-size:var(--font-size-caption);color:#667eea;font-style:italic}.search-btn{padding:var(--spacing-sm) var(--spacing-lg);font-size:.9rem;white-space:nowrap}.filter-indicator{color:#667eea;font-style:italic}.override-indicator{display:inline-block;font-size:var(--font-size-caption);color:var(--color-warning);background:var(--color-warning-light);padding:.2rem var(--spacing-sm);border-radius:var(--radius-sm);margin-left:var(--spacing-sm)}.audit-table{width:100%;border-collapse:collapse;background:var(--color-white);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}.audit-table th,.audit-table td{padding:.75rem var(--spacing-md);text-align:left;border-bottom:1px solid var(--color-neutral-200)}.audit-table th{background:var(--color-neutral-50);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700);font-size:.85rem;text-transform:uppercase}.audit-table td{font-size:.9rem}.timestamp-cell{font-family:var(--font-mono);font-size:.8rem;color:var(--color-neutral-500)}.action-badge{display:inline-block;padding:.2rem var(--spacing-sm);background:var(--color-info-light);color:var(--color-primary-900);border-radius:var(--radius-sm);font-size:.8rem;font-weight:var(--font-weight-medium)}.resource-id{font-size:var(--font-size-caption);color:var(--color-neutral-500);margin-left:var(--spacing-sm);font-family:var(--font-mono)}.ip-cell{font-family:var(--font-mono);font-size:.8rem;color:var(--color-neutral-500)}.superadmin-module .btn-primary,.superadmin-module .modal-actions .btn-primary{background:transparent!important;color:var(--color-neutral-700)!important;border:none!important;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);font-weight:var(--font-weight-medium);cursor:pointer;transition:color var(--transition-normal)}.superadmin-module .btn-primary:hover:not(:disabled),.superadmin-module .modal-actions .btn-primary:hover:not(:disabled){color:var(--color-success)!important}.superadmin-module .btn-primary:disabled{opacity:.6;cursor:not-allowed}.superadmin-module .btn-secondary,.superadmin-module .modal-actions .btn-secondary{background:transparent!important;color:var(--color-neutral-700)!important;border:none!important;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);font-weight:var(--font-weight-medium);cursor:pointer;transition:color var(--transition-normal)}.superadmin-module .btn-secondary:hover{color:var(--color-error)!important}.btn-small{padding:.35rem .75rem;font-size:.8rem;border-radius:var(--radius-sm);border:1px solid var(--color-neutral-200);background:var(--color-white);cursor:pointer}.btn-small:hover{background:var(--color-neutral-100)}.btn-small.btn-success{background:var(--color-success);color:var(--color-white);border-color:var(--color-success)}.btn-small.btn-success:hover{background:var(--color-success-hover)}.btn-small.btn-danger{background:var(--color-error);color:var(--color-white);border-color:var(--color-error)}.btn-small.btn-danger:hover{background:var(--color-error-hover)}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--color-neutral-200)}.loading{text-align:center;padding:var(--spacing-xl);color:var(--color-neutral-500)}.empty-state{text-align:center;padding:var(--spacing-2xl);color:var(--color-neutral-500);background:var(--color-neutral-50);border-radius:var(--radius-lg)}.error-state{text-align:center;padding:var(--spacing-xl);color:var(--color-error);background:var(--color-error-light);border:1px solid #fecaca;border-radius:var(--radius-lg)}.error-state small{display:block;margin-top:var(--spacing-sm);color:var(--color-neutral-500);font-family:var(--font-mono)}.user-management{padding:0}.user-filters{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);flex-wrap:wrap}.user-filters .search-input{flex:1;min-width:200px}.users-table{width:100%;border-collapse:collapse;background:var(--color-white);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-sm)}.users-table th{text-align:left;padding:var(--spacing-md);background:var(--color-neutral-50);font-weight:var(--font-weight-semibold);font-size:.85rem;color:var(--color-neutral-500);text-transform:uppercase;letter-spacing:.5px}.users-table td{padding:var(--spacing-md);border-top:1px solid var(--color-neutral-200)}.users-table .user-info{display:flex;flex-direction:column}.users-table .user-name{font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.users-table .user-email{font-size:.85rem;color:var(--color-neutral-500)}.users-table tr.sensitive-user{background:#667eea0d}.users-table tr:hover{background:var(--color-neutral-50)}.users-table tr.sensitive-user:hover{background:#667eea1a}.role-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.3px}.role-badge.superadmin{background:linear-gradient(135deg,#667eea,#764ba2);color:var(--color-white)}.role-badge.support{background:var(--color-primary-900);color:var(--color-white)}.role-badge.clinic_admin{background:#8b5cf6;color:var(--color-white)}.role-badge.doctor{background:var(--color-success-hover);color:var(--color-white)}.role-badge.nurse{background:var(--color-success);color:var(--color-white)}.role-badge.pharmacist{background:var(--color-warning);color:var(--color-white)}.role-badge.receptionist{background:#6366f1;color:var(--color-white)}.role-badge.finance{background:#ec4899;color:var(--color-white)}.role-badge.stock{background:#78716c;color:var(--color-white)}.mfa-badge{display:inline-block;width:24px;height:24px;border-radius:50%;text-align:center;line-height:24px;font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold)}.mfa-badge.enabled{background:var(--color-success-light);color:var(--color-success-hover)}.mfa-badge.disabled{background:var(--color-error-light);color:var(--color-error)}.no-clinic{color:var(--color-neutral-500);font-style:italic}.never-logged{color:var(--color-neutral-500);font-style:italic;font-size:.85rem}.btn-warning{background:var(--color-warning);color:var(--color-white);border:none;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);cursor:pointer;font-weight:var(--font-weight-medium)}.btn-warning:hover{background:var(--color-warning-hover)}.btn-small.btn-warning{padding:.35rem .75rem;font-size:.85rem}.user-form{padding:0}.user-detail-header{display:flex;gap:.75rem;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-neutral-200)}.user-meta{margin-top:var(--spacing-lg);padding:var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-lg)}.meta-item{display:flex;justify-content:space-between;padding:var(--spacing-sm) 0;border-bottom:1px solid var(--color-neutral-200)}.meta-item:last-child{border-bottom:none}.meta-label{color:var(--color-neutral-500);font-size:.9rem}.meta-value{font-weight:var(--font-weight-medium);color:var(--color-neutral-900)}.confirm-modal-content{padding:var(--spacing-md) 0}.confirm-warning{display:flex;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-warning-light);border-radius:var(--radius-lg);border:1px solid var(--color-warning);margin-bottom:var(--spacing-lg)}.confirm-warning .warning-icon{font-size:var(--font-size-h2)}.confirm-warning p{margin:0;color:var(--color-warning);line-height:1.5}.sensitive-warning{color:var(--color-error);font-weight:var(--font-weight-medium)}.confirm-actions{display:flex;justify-content:flex-end;gap:.75rem}@media(max-width:768px){.compliance-overview-section{grid-template-columns:1fr}.tier-options{grid-template-columns:repeat(2,1fr)}.form-row,.details-grid{grid-template-columns:1fr}.clinics-table{display:block;overflow-x:auto}.superadmin-tabs{overflow-x:auto;white-space:nowrap;padding-bottom:2px}}.import-module{background:var(--color-white);border-radius:var(--radius-xl);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);width:100%;box-sizing:border-box}.module-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-neutral-200)}.header-content h2{margin:0 0 var(--spacing-xs) 0;color:var(--color-primary-900)}.header-content p{margin:0;color:var(--color-neutral-500);font-size:var(--font-size-body)}.access-denied{text-align:center;padding:var(--spacing-2xl);color:var(--color-neutral-500)}.access-denied h3{color:var(--color-error)}.rate-limit-banner{display:flex;justify-content:space-between;align-items:center;padding:.75rem var(--spacing-md);background:var(--color-info-light);border-radius:var(--radius-lg);margin-bottom:var(--spacing-md);font-size:var(--font-size-body);color:var(--color-primary-900)}.rate-limit-banner .remaining{font-weight:var(--font-weight-semibold)}.filters{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.filters select{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:var(--font-size-body);min-width:150px}.import-table{width:100%;border-collapse:collapse}.import-table th,.import-table td{padding:.75rem var(--spacing-md);text-align:left;border-bottom:1px solid var(--color-neutral-200)}.import-table th{font-weight:var(--font-weight-semibold);color:var(--color-neutral-700);font-size:.8125rem;text-transform:uppercase}.import-table td{font-size:var(--font-size-body)}.file-name{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.domain-badge{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) .75rem;background:var(--color-neutral-50);border-radius:var(--radius-md);font-size:var(--font-size-body)}.domain-badge.large{font-size:1rem;padding:var(--spacing-sm) var(--spacing-md)}.status-badge{display:inline-block;padding:var(--spacing-xs) .75rem;border-radius:var(--radius-xl);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);color:var(--color-white)}.empty-state{text-align:center;padding:var(--spacing-2xl);color:var(--color-neutral-500)}.empty-state .hint{font-size:var(--font-size-body);margin-top:var(--spacing-sm)}.loading,.error{text-align:center;padding:var(--spacing-xl);color:var(--color-neutral-500)}.error{color:var(--color-error)}.create-import-view h3{margin:0 0 var(--spacing-sm) 0;color:var(--color-primary-900)}.step-description{margin:0 0 var(--spacing-lg) 0;color:var(--color-neutral-500)}.domain-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.domain-card{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-lg);background:var(--color-neutral-50);border:2px solid transparent;border-radius:var(--radius-xl);cursor:pointer;transition:all var(--transition-normal);text-align:center}.domain-card:hover{background:var(--color-neutral-100)}.domain-card.selected{border-color:var(--color-primary-900);background:var(--color-info-light)}.domain-icon{font-size:2rem;margin-bottom:var(--spacing-sm)}.domain-label{font-weight:var(--font-weight-semibold);color:var(--color-primary-900);margin-bottom:var(--spacing-xs)}.domain-description{font-size:var(--font-size-caption);color:var(--color-neutral-500)}.clinical-warning{padding:var(--spacing-md);background:var(--color-warning-light);border-radius:var(--radius-lg);font-size:var(--font-size-body);color:#92400e;margin-bottom:var(--spacing-lg)}.step-actions{display:flex;justify-content:flex-end;gap:var(--spacing-md);margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--color-neutral-200)}.template-section{margin-bottom:var(--spacing-md)}.file-drop-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl);border:2px dashed var(--color-neutral-300);border-radius:var(--radius-xl);background:var(--color-neutral-50);transition:all var(--transition-normal);min-height:150px}.file-drop-zone.active{border-color:var(--color-primary-900);background:var(--color-info-light)}.file-drop-zone.has-file{border-style:solid;border-color:var(--color-success);background:var(--color-success-light)}.drop-icon{font-size:2rem;margin-bottom:var(--spacing-sm)}.drop-text{color:var(--color-neutral-700);margin-bottom:var(--spacing-xs)}.drop-hint{font-size:var(--font-size-caption);color:var(--color-neutral-500)}.file-label{color:var(--color-primary-900);cursor:pointer;text-decoration:underline}.selected-file{display:flex;align-items:center;gap:var(--spacing-sm)}.selected-file .file-icon{font-size:1.5rem}.selected-file .file-name{font-weight:var(--font-weight-semibold);color:var(--color-primary-900)}.selected-file .file-size{color:var(--color-neutral-500);font-size:var(--font-size-body)}.remove-file{color:var(--color-error)!important;margin-left:var(--spacing-md)}.mode-section{margin-top:var(--spacing-lg)}.mode-section>label{display:block;font-weight:var(--font-weight-semibold);color:var(--color-neutral-700);margin-bottom:.75rem}.mode-options{display:flex;gap:var(--spacing-md)}.mode-option{display:flex;flex-direction:column;padding:var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-lg);cursor:pointer;flex:1}.mode-option input{margin-right:var(--spacing-sm)}.mode-label{font-weight:var(--font-weight-semibold);color:var(--color-primary-900)}.mode-description{font-size:var(--font-size-caption);color:var(--color-neutral-500);margin-top:var(--spacing-xs)}.detail-header{margin-bottom:var(--spacing-lg)}.detail-title{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-sm)}.detail-meta{display:flex;gap:var(--spacing-xl);font-size:var(--font-size-body);color:var(--color-neutral-500)}.progress-steps{display:flex;justify-content:space-between;margin-bottom:var(--spacing-xl);position:relative}.progress-steps:before{content:"";position:absolute;top:1rem;left:2rem;right:2rem;height:2px;background:var(--color-neutral-200)}.step{display:flex;flex-direction:column;align-items:center;position:relative;z-index:1}.step-number{width:2rem;height:2rem;border-radius:var(--radius-full);background:var(--color-neutral-200);color:var(--color-neutral-500);display:flex;align-items:center;justify-content:center;font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-sm)}.step.active .step-number{background:var(--color-primary-900);color:var(--color-white)}.step.complete .step-number{background:var(--color-success);color:var(--color-white)}.step-label{font-size:var(--font-size-caption);color:var(--color-neutral-500)}.step.active .step-label,.step.complete .step-label{color:var(--color-primary-900);font-weight:var(--font-weight-semibold)}.summary-section{margin-bottom:var(--spacing-lg)}.summary-section h4{margin:0 0 var(--spacing-md) 0;color:var(--color-primary-900)}.summary-grid{display:flex;gap:var(--spacing-md)}.summary-item{flex:1;padding:var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-lg);text-align:center}.summary-item.success{background:var(--color-success-light)}.summary-item.error{background:var(--color-error-light)}.summary-item.warning{background:var(--color-warning-light)}.summary-value{display:block;font-size:1.5rem;font-weight:var(--font-weight-bold);color:var(--color-primary-900)}.summary-item.success .summary-value{color:var(--color-success)}.summary-item.error .summary-value{color:var(--color-error)}.summary-item.warning .summary-value{color:var(--color-warning)}.summary-label{font-size:var(--font-size-caption);color:var(--color-neutral-500);text-transform:uppercase}.errors-section,.warnings-section{margin-bottom:var(--spacing-lg)}.errors-section h4,.warnings-section h4{margin:0 0 var(--spacing-md) 0;color:var(--color-primary-900)}.errors-section h4 .hint,.warnings-section h4 .hint{font-weight:var(--font-weight-regular);font-size:var(--font-size-body);color:var(--color-neutral-500)}.errors-table,.warnings-table{width:100%;border-collapse:collapse;font-size:var(--font-size-body)}.errors-table th,.errors-table td,.warnings-table th,.warnings-table td{padding:var(--spacing-sm);text-align:left;border-bottom:1px solid var(--color-neutral-200)}.errors-table th,.warnings-table th{font-weight:var(--font-weight-semibold);color:var(--color-neutral-700);font-size:var(--font-size-caption);text-transform:uppercase}.value-cell{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-neutral-500)}.error-cell{color:var(--color-error)}.detail-actions{display:flex;justify-content:flex-end;gap:var(--spacing-md);margin-top:var(--spacing-xl);padding-top:var(--spacing-md);border-top:1px solid var(--color-neutral-200)}.btn-primary{padding:var(--spacing-sm) var(--spacing-lg);background:var(--color-primary-900);color:var(--color-white);border:none;border-radius:var(--radius-md);font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--transition-normal)}.btn-primary:hover:not(:disabled){background:var(--color-primary-600)}.btn-primary.btn-commit{background:var(--color-success)}.btn-primary.btn-commit:hover:not(:disabled){background:var(--color-success-hover)}.btn-secondary{padding:var(--spacing-sm) var(--spacing-lg);background:var(--color-neutral-100);color:var(--color-neutral-700);border:none;border-radius:var(--radius-md);font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--transition-normal)}.btn-secondary:hover:not(:disabled){background:var(--color-neutral-200)}.btn-secondary.btn-danger{color:var(--color-error)}.btn-secondary.btn-danger:hover:not(:disabled){background:var(--color-error-light)}.btn-link{background:none;border:none;color:var(--color-primary-900);cursor:pointer;padding:0;text-decoration:underline}.btn-link:hover{color:var(--color-primary-600)}.commit-modal{padding:var(--spacing-md)}.commit-warning{padding:var(--spacing-md);background:var(--color-warning-light);border-radius:var(--radius-lg);margin-bottom:var(--spacing-lg)}.commit-warning ul{margin:var(--spacing-sm) 0 0 var(--spacing-lg);padding:0}.confirm-checkbox{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);cursor:pointer}.modal-actions{display:flex;justify-content:flex-end;gap:var(--spacing-md)}@media(max-width:768px){.domain-grid{grid-template-columns:1fr 1fr}.mode-options{flex-direction:column}.summary-grid{flex-wrap:wrap}.summary-item{flex-basis:calc(50% - var(--spacing-sm))}.detail-meta{flex-direction:column;gap:var(--spacing-xs)}}.branding-module{padding:var(--spacing-lg);width:100%;box-sizing:border-box}.branding-module.loading{display:flex;justify-content:center;align-items:center;min-height:400px}.loading-spinner{color:var(--color-neutral-500);font-size:var(--font-size-body)}.error-banner{background:var(--color-error-light);border:1px solid #fecaca;color:var(--color-error);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-lg);margin-bottom:20px;display:flex;justify-content:space-between;align-items:center}.error-banner button{background:none;border:none;color:var(--color-error);cursor:pointer;font-weight:var(--font-weight-medium)}.branding-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-lg);gap:var(--spacing-md);flex-wrap:wrap}.header-info h3{margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-h2);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.header-info p{margin:0;color:var(--color-neutral-500)}.header-actions{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.btn-primary{background:var(--color-primary-900);color:var(--color-white);border:none;padding:10px 20px;border-radius:var(--radius-md);font-weight:var(--font-weight-medium);cursor:pointer;transition:opacity var(--transition-normal)}.btn-primary:hover{opacity:.9}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:var(--color-white);color:var(--color-neutral-900);border:1px solid var(--color-neutral-200);padding:10px 20px;border-radius:var(--radius-md);font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--transition-normal)}.btn-secondary:hover{background:var(--color-neutral-50)}.btn-danger{background:var(--color-error-light);color:var(--color-error);border:1px solid #fecaca;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);font-weight:var(--font-weight-medium);cursor:pointer}.btn-danger:hover{background:var(--color-error-light)}.btn-back{background:none;border:none;color:var(--color-neutral-500);cursor:pointer;padding:var(--spacing-sm) 0;font-size:var(--font-size-body)}.btn-back:hover{color:var(--color-neutral-900)}.btn-activate{background:var(--color-success);color:var(--color-white);border:none;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);font-weight:var(--font-weight-medium);cursor:pointer;margin-left:var(--spacing-sm)}.no-branding{text-align:center;padding:60px 20px;background:var(--color-white);border-radius:var(--radius-xl);border:2px dashed var(--color-neutral-200)}.no-branding h4{margin:var(--spacing-md) 0 var(--spacing-sm) 0;color:var(--color-neutral-900)}.no-branding p{color:var(--color-neutral-500);margin:0 0 var(--spacing-lg) 0}.no-branding-actions{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm)}.no-branding-actions .btn-primary{background:var(--color-primary-900);color:var(--color-white);border:none;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);font-weight:var(--font-weight-medium);font-size:var(--font-size-body);cursor:pointer;transition:opacity var(--transition-normal)}.no-branding-actions .btn-primary:hover{opacity:.9}.no-branding-actions .btn-secondary{background:transparent;border:none;color:var(--color-neutral-500);text-decoration:underline;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-body);cursor:pointer}.no-branding-actions .btn-secondary:hover{color:var(--color-primary-900)}.current-branding{margin-bottom:var(--spacing-lg)}.branding-status{margin-bottom:var(--spacing-md);display:flex;align-items:center}.status-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-full);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}.status-badge.default{background:var(--color-neutral-100);color:var(--color-neutral-500)}.branding-preview-card{border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-md);max-width:600px}.branding-preview-card .preview-header{padding:20px}.branding-preview-card .preview-header h4{margin:0;font-size:var(--font-size-h3)}.branding-preview-card .preview-body{padding:20px}.color-swatches{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.color-swatches .swatch{width:32px;height:32px;border-radius:var(--radius-md);box-shadow:inset 0 0 0 1px #0000001a}.branding-details p{margin:var(--spacing-sm) 0;font-size:var(--font-size-body)}.accessibility-notice{padding:var(--spacing-md);border-radius:var(--radius-lg);margin-top:var(--spacing-md)}.accessibility-notice.warning{background:var(--color-warning-light);border:1px solid #fcd34d}.accessibility-notice h5{margin:0 0 var(--spacing-sm) 0;color:#92400e}.accessibility-notice p{margin:0;color:#78350f;font-size:var(--font-size-body)}.branding-stats{display:flex;flex-wrap:nowrap;gap:var(--spacing-md);margin-top:var(--spacing-lg);width:100%}.branding-stats .stat-card{flex:1;min-width:0}.stat-card{background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:20px;display:flex;align-items:center;gap:var(--spacing-md)}.stat-card .stat-value{font-size:var(--font-size-h2);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900);display:block}.stat-card .stat-label{font-size:var(--font-size-body);color:var(--color-neutral-500)}.edit-layout{display:grid;grid-template-columns:1fr 400px;gap:var(--spacing-xl)}@media(max-width:1024px){.edit-layout{grid-template-columns:1fr}}.edit-header{margin-bottom:var(--spacing-lg)}.edit-header h3{margin:var(--spacing-sm) 0 0 0}.form-section{background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:20px;margin-bottom:20px}.form-section h4{margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.form-field{margin-bottom:var(--spacing-md)}.form-field:last-child{margin-bottom:0}.form-field label{display:block;font-size:var(--font-size-body);font-weight:var(--font-weight-medium);color:var(--color-neutral-900);margin-bottom:var(--spacing-xs)}.form-field input[type=text],.form-field input[type=email],.form-field input[type=tel],.form-field select,.form-field textarea{width:100%;padding:10px var(--spacing-sm);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:var(--font-size-body);background:var(--color-neutral-50);color:var(--color-neutral-900)}.form-field textarea{resize:vertical;min-height:60px}.color-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--spacing-md)}.color-field label{display:block;font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);margin-bottom:var(--spacing-xs)}.color-input-group{display:flex;gap:var(--spacing-sm);align-items:center}.color-input-group input[type=color]{width:40px;height:36px;border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);cursor:pointer;padding:2px}.color-input-group input[type=text]{flex:1;padding:var(--spacing-sm) 10px;border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-family:var(--font-mono);font-size:var(--font-size-caption)}.accessibility-panel{margin-top:20px;padding:var(--spacing-md);border-radius:var(--radius-lg)}.accessibility-panel.valid{background:var(--color-success-light);border:1px solid #86efac}.accessibility-panel.invalid{background:var(--color-error-light);border:1px solid #fecaca}.accessibility-panel h5{margin:0 0 var(--spacing-sm) 0;font-size:var(--font-size-body)}.accessibility-warnings{list-style:none;padding:0;margin:0}.accessibility-warnings li{padding:10px;margin-bottom:var(--spacing-sm);border-radius:var(--radius-md);font-size:var(--font-size-caption)}.accessibility-warnings li.error{background:var(--color-error-light)}.accessibility-warnings li.warning{background:var(--color-warning-light)}.accessibility-warnings .suggestion{display:block;margin-top:var(--spacing-xs);color:var(--color-success);font-weight:var(--font-weight-medium)}.accessibility-warnings .contrast-info{display:block;margin-top:var(--spacing-xs);font-size:var(--font-size-tiny);color:var(--color-neutral-500)}.computed-colors{margin-top:var(--spacing-md)}.computed-colors p{margin:0 0 var(--spacing-sm) 0;font-size:var(--font-size-caption);color:var(--color-neutral-500)}.color-chips{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.color-chip{padding:var(--spacing-sm) var(--spacing-sm);border-radius:var(--radius-md);font-size:var(--font-size-tiny);font-weight:var(--font-weight-medium)}.form-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;padding-top:var(--spacing-lg);margin-top:var(--spacing-lg);border-top:1px solid var(--color-neutral-200)}.form-actions .btn-secondary{display:inline-flex;align-items:center;justify-content:center;height:var(--btn-height-md, 40px);padding:0 var(--spacing-lg);background-color:var(--color-white);color:var(--color-neutral-700);border:1px solid var(--color-neutral-300);border-radius:var(--radius-lg);font-family:var(--font-heading);font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-fast)}.form-actions .btn-secondary:hover{background-color:var(--color-neutral-50);border-color:var(--color-neutral-400);color:var(--color-neutral-900)}.form-actions .btn-primary{display:inline-flex;align-items:center;justify-content:center;height:var(--btn-height-md, 40px);padding:0 var(--spacing-lg);background-color:var(--color-primary-900);color:var(--color-white);border:1px solid var(--color-primary-900);border-radius:var(--radius-lg);font-family:var(--font-heading);font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-fast)}.form-actions .btn-primary:hover:not(:disabled){background-color:var(--color-primary-600);border-color:var(--color-primary-600)}.form-actions .btn-primary:disabled{background-color:var(--color-neutral-300);border-color:var(--color-neutral-300);color:var(--color-neutral-500);cursor:not-allowed}.edit-preview{position:sticky;top:var(--spacing-lg)}.edit-preview h4{margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-body)}.color-preview{border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-md)}.color-preview .preview-header{padding:20px}.color-preview .preview-header h4{margin:0}.color-preview .preview-content{padding:20px}.color-preview .preview-content p{margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-body)}.preview-btn-primary,.preview-btn-secondary{padding:var(--spacing-sm) var(--spacing-md);border:none;border-radius:var(--radius-md);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);margin-right:var(--spacing-sm);cursor:pointer}.templates-header{margin-bottom:var(--spacing-lg)}.templates-header h3{margin:var(--spacing-sm) 0 var(--spacing-xs) 0}.templates-header p{margin:0;color:var(--color-neutral-500)}.templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.template-card{background:var(--color-white);border:2px solid var(--color-neutral-200);border-radius:var(--radius-xl);overflow:hidden;cursor:pointer;transition:all var(--transition-normal)}.template-card:hover{border-color:var(--color-primary-900);box-shadow:0 4px 12px #0000001a}.template-card.selected{border-color:var(--color-primary-900)}.template-preview{border-bottom:2px solid}.template-header{padding:var(--spacing-md);font-weight:var(--font-weight-semibold)}.template-body{padding:var(--spacing-md)}.template-swatches{display:flex;gap:var(--spacing-xs)}.template-swatches span{width:24px;height:24px;border-radius:var(--radius-sm)}.template-info{padding:var(--spacing-md)}.template-info h4{margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-body)}.template-info p{margin:0;font-size:var(--font-size-caption);color:var(--color-neutral-500)}.domains-header{margin-bottom:var(--spacing-lg)}.domains-header h3{margin:var(--spacing-sm) 0 var(--spacing-xs) 0}.domains-header p{margin:0;color:var(--color-neutral-500)}.add-domain-form{background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:20px;margin-bottom:var(--spacing-lg)}.add-domain-form .form-row{display:flex;gap:var(--spacing-sm);align-items:center;flex-wrap:wrap}.add-domain-form input[type=text]{flex:1;min-width:200px;padding:10px var(--spacing-sm);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md)}.add-domain-form select{padding:10px var(--spacing-sm);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md)}.no-domains{text-align:center;padding:60px 20px;color:var(--color-neutral-500)}.no-domains p{margin:var(--spacing-md) 0 0 0}.domains-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.domain-card{background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:var(--spacing-md)}.domain-card.active{border-color:#86efac}.domain-card.verification_failed{border-color:#fecaca}.domain-info{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap;margin-bottom:var(--spacing-sm)}.domain-info h4{margin:0;font-size:var(--font-size-body);font-weight:var(--font-weight-semibold)}.domain-type{font-size:var(--font-size-caption);color:var(--color-neutral-500);background:var(--color-neutral-50);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm)}.domain-status{font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm)}.domain-status.active{background:var(--color-success-light);color:#166534}.domain-status.pending_dns_setup,.domain-status.pending_verification,.domain-status.pending_tls{background:var(--color-warning-light);color:#92400e}.domain-status.verification_failed{background:var(--color-error-light);color:var(--color-error)}.domain-actions{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.domain-error{margin-top:var(--spacing-sm);padding:10px;background:var(--color-error-light);color:var(--color-error);border-radius:var(--radius-md);font-size:var(--font-size-caption)}.domain-instructions-modal{position:fixed;inset:0;background:var(--modal-backdrop-color);display:flex;justify-content:center;align-items:center;z-index:var(--z-modal);padding:20px}.domain-instructions-modal .modal-content{background:var(--color-white);border-radius:var(--radius-xl);padding:var(--spacing-lg);max-width:600px;width:100%;max-height:80vh;overflow-y:auto}.domain-instructions-modal h4{margin:0 0 var(--spacing-md) 0}.domain-instructions-modal ol{padding-left:20px;margin:0 0 20px}.domain-instructions-modal li{margin-bottom:var(--spacing-sm);line-height:1.5}.logo-upload-area{margin-top:var(--spacing-md)}.logo-preview-container{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-lg);border:1px solid var(--color-neutral-200)}.logo-preview-container img{max-width:120px;max-height:60px;-o-object-fit:contain;object-fit:contain;border-radius:var(--radius-sm)}.logo-preview-container .logo-actions{display:flex;flex-direction:column;gap:var(--spacing-sm)}.logo-preview-container .logo-actions button{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-caption);cursor:pointer;border-radius:var(--radius-sm)}.logo-upload-dropzone{display:block;border:2px dashed var(--color-neutral-300);border-radius:var(--radius-lg);padding:var(--spacing-xl) 20px;text-align:center;cursor:pointer;transition:all var(--transition-normal);background:var(--color-neutral-50);outline:none}.logo-upload-dropzone:hover{border-color:var(--color-primary-500);background:#4a63b30d}.logo-upload-dropzone:focus,.logo-upload-dropzone:focus-within{border-color:var(--color-primary-500);outline:none;box-shadow:none}.logo-upload-dropzone.dragging{border-color:var(--color-primary-900);background:#4a63b31a}.logo-upload-dropzone input[type=file]{display:none}.logo-upload-dropzone svg{width:48px;height:48px;color:var(--color-neutral-500);margin-bottom:var(--spacing-sm)}.logo-upload-dropzone p{margin:0;color:var(--color-neutral-500);font-size:var(--font-size-body)}.logo-upload-dropzone p:first-of-type{font-weight:var(--font-weight-medium);color:var(--color-neutral-900);margin-bottom:var(--spacing-xs)}.logo-upload-dropzone small{display:block;margin-top:var(--spacing-sm);font-size:var(--font-size-tiny);color:var(--color-neutral-500)}.logo-uploading{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:20px;color:var(--color-neutral-500)}.image-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-md)}.image-gallery-item{position:relative;aspect-ratio:16/9;border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--color-neutral-200);background:var(--color-neutral-50)}.image-gallery-item img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.image-gallery-item .image-overlay{position:absolute;inset:0;background:var(--modal-backdrop-color);display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);opacity:0;transition:opacity var(--transition-normal)}.image-gallery-item:hover .image-overlay{opacity:1}.image-gallery-item .image-overlay button{background:var(--color-white);border:none;padding:var(--spacing-sm);border-radius:var(--radius-full);cursor:pointer;transition:transform var(--transition-normal)}.image-gallery-item .image-overlay button:hover{transform:scale(1.1)}.add-image-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;aspect-ratio:16/9;border:2px dashed var(--color-neutral-200);border-radius:var(--radius-lg);background:var(--color-neutral-50);cursor:pointer;transition:all var(--transition-normal);color:var(--color-neutral-500)}.add-image-btn:hover{border-color:var(--color-primary-900);color:var(--color-primary-900)}.add-image-btn svg{width:32px;height:32px;margin-bottom:var(--spacing-sm)}.add-image-btn span{font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}.favicon-upload{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-lg);border:1px solid var(--color-neutral-200)}.favicon-preview{width:32px;height:32px;border-radius:var(--radius-sm);border:1px solid var(--color-neutral-200);display:flex;align-items:center;justify-content:center;background:var(--color-white)}.favicon-preview img{max-width:24px;max-height:24px}.favicon-upload .upload-btn{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:var(--font-size-caption);cursor:pointer;transition:background var(--transition-normal)}.favicon-upload .upload-btn:hover{background:var(--color-neutral-50)}.typography-preview{background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:20px;margin-top:var(--spacing-md)}.typography-preview h5{margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-body);color:var(--color-neutral-500)}.font-sample{margin-bottom:var(--spacing-md)}.font-sample:last-child{margin-bottom:0}.font-sample label{display:block;font-size:var(--font-size-tiny);color:var(--color-neutral-500);margin-bottom:var(--spacing-xs)}.font-sample .sample-heading{font-size:var(--font-size-h2);font-weight:var(--font-weight-semibold);margin:0}.font-sample .sample-body{font-size:var(--font-size-body);line-height:1.6;margin:0}.section-description{font-size:var(--font-size-caption);color:var(--color-neutral-500);margin:0 0 var(--spacing-sm) 0}.dropzone-content{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm)}.dropzone-text{font-weight:var(--font-weight-medium);color:var(--color-neutral-900)}.dropzone-hint{font-size:var(--font-size-tiny);color:var(--color-neutral-500)}.btn-small{padding:var(--spacing-xs) var(--spacing-sm)!important;font-size:var(--font-size-caption)!important}.logo-preview-image{max-width:150px;max-height:80px;-o-object-fit:contain;object-fit:contain}.field-hint{display:block;font-size:var(--font-size-tiny);color:var(--color-neutral-500);margin-top:var(--spacing-xs);text-align:right}.branding-all-clinics{padding:0}.branding-all-clinics .branding-header{margin-bottom:var(--spacing-xl)}.branding-all-clinics .header-info h3{font-size:var(--font-size-h1);margin-bottom:var(--spacing-xs)}.no-clinics{text-align:center;padding:80px 20px;background:var(--color-white);border-radius:var(--radius-xl);border:2px dashed var(--color-neutral-200)}.no-clinics h4{margin:var(--spacing-md) 0 var(--spacing-sm) 0;color:var(--color-neutral-900)}.no-clinics p{color:var(--color-neutral-500);margin:0}.clinics-branding-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--spacing-lg)}.clinic-branding-card{background:var(--color-white);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-sm);cursor:pointer;transition:transform var(--transition-normal),box-shadow var(--transition-normal);border:1px solid var(--color-neutral-200)}.clinic-branding-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.clinic-branding-card.no-branding{border-style:dashed}.clinic-branding-header{padding:var(--spacing-md) var(--spacing-lg);min-height:60px;display:flex;align-items:center}.clinic-branding-header h4{margin:0;font-size:var(--font-size-h4);font-weight:var(--font-weight-semibold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.clinic-branding-body{padding:var(--spacing-md) var(--spacing-lg);min-height:100px;display:flex;flex-direction:column;gap:var(--spacing-sm)}.branding-info{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap}.branding-info .display-name{font-weight:var(--font-weight-medium);color:var(--color-neutral-900)}.color-swatches-mini{display:flex;gap:var(--spacing-xs)}.swatch-mini{width:24px;height:24px;border-radius:var(--radius-sm);box-shadow:inset 0 0 0 1px #0000001a}.last-updated{font-size:var(--font-size-caption);color:var(--color-neutral-500);margin-top:auto}.no-branding-indicator{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md) 0;color:var(--color-neutral-500);font-size:var(--font-size-body)}.clinic-branding-actions{padding:var(--spacing-sm) var(--spacing-lg) var(--spacing-md);border-top:1px solid var(--color-neutral-100)}.clinic-branding-actions .btn-secondary{width:100%;text-align:center;padding:var(--spacing-sm) var(--spacing-md)}.branding-overview .header-info .btn-back{display:block;margin-bottom:var(--spacing-sm);padding:0;color:var(--color-primary-900);font-weight:var(--font-weight-medium)}.branding-overview .header-info .btn-back:hover{text-decoration:underline}@media(max-width:768px){.clinics-branding-grid{grid-template-columns:1fr}.clinic-branding-card{max-width:100%}}.full-portal-preview{display:flex;flex-direction:column;gap:var(--spacing-lg);height:calc(100vh - 200px);min-height:600px}.preview-toolbar{display:flex;align-items:center;gap:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-neutral-200)}.preview-toolbar h3{margin:0;flex:1}.preview-controls{display:flex;align-items:center;gap:var(--spacing-md)}.device-selector{display:flex;gap:var(--spacing-xs);background:var(--color-neutral-100);padding:4px;border-radius:var(--radius-md)}.device-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;border-radius:var(--radius-sm);cursor:pointer;font-size:18px;transition:all var(--transition-normal)}.device-btn:hover{background:var(--color-neutral-200)}.device-btn.active{background:var(--color-white);box-shadow:var(--shadow-sm)}.page-selector{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);background:var(--color-white);font-size:var(--font-size-body)}.preview-frame-container{flex:1;display:flex;justify-content:center;background:var(--color-neutral-100);border-radius:var(--radius-xl);padding:var(--spacing-lg);overflow:auto}.preview-frame{background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);overflow:hidden;display:flex;flex-direction:column;max-height:100%;transition:width .3s ease}.preview-frame.device-desktop{width:100%;max-width:1200px}.preview-frame.device-tablet{width:768px;max-width:100%}.preview-frame.device-mobile{width:375px;max-width:100%}.mock-portal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);gap:var(--spacing-md)}.mock-logo{font-weight:var(--font-weight-semibold);font-size:var(--font-size-h4)}.mock-logo img{height:32px;-o-object-fit:contain;object-fit:contain}.mock-user{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-caption)}.mock-user button{padding:var(--spacing-xs) var(--spacing-sm);border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-caption)}.mock-portal-nav{display:flex;gap:var(--spacing-lg);padding:0 var(--spacing-lg);border-bottom:1px solid var(--color-neutral-200);overflow-x:auto}.mock-nav-item{padding:var(--spacing-md) 0;font-size:var(--font-size-body);cursor:pointer;border-bottom:2px solid transparent;white-space:nowrap;transition:all var(--transition-normal)}.mock-nav-item.active{border-bottom-width:2px;border-bottom-style:solid}.mock-portal-content{flex:1;padding:var(--spacing-lg);overflow-y:auto}.mock-login-page{display:flex;justify-content:center;align-items:center;min-height:400px}.mock-login-card{width:100%;max-width:400px;padding:var(--spacing-xl);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);text-align:center}.mock-login-logo{max-height:60px;margin-bottom:var(--spacing-lg)}.mock-login-card h1{font-size:var(--font-size-h2);margin:0 0 var(--spacing-sm) 0}.mock-login-card>p{margin:0 0 var(--spacing-xl) 0;opacity:.8}.mock-input{text-align:left;margin-bottom:var(--spacing-md)}.mock-input label{display:block;font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);margin-bottom:var(--spacing-xs)}.mock-input input{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);font-size:var(--font-size-body);box-sizing:border-box}.mock-btn-primary{width:100%;padding:var(--spacing-md);border:none;border-radius:var(--radius-md);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);cursor:pointer}.mock-dashboard{max-width:1000px;margin:0 auto}.mock-welcome{margin-bottom:var(--spacing-xl)}.mock-welcome h1{font-size:var(--font-size-h2);margin:0 0 var(--spacing-xs) 0}.mock-welcome p{margin:0;opacity:.7}.mock-quick-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.mock-action-card{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-lg);border-radius:var(--radius-lg);cursor:pointer;transition:transform var(--transition-normal)}.mock-action-card:hover{transform:translateY(-2px)}.mock-icon{font-size:28px}.mock-summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md)}.mock-card{padding:var(--spacing-lg);border-radius:var(--radius-lg)}.mock-card h4{font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);margin:0 0 var(--spacing-sm) 0;opacity:.7}.mock-value{font-size:var(--font-size-h1);font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-xs)}.mock-card p{font-size:var(--font-size-caption);margin:0;opacity:.7}.mock-appointments h1,.mock-records h1,.mock-bills h1{font-size:var(--font-size-h2);margin:0 0 var(--spacing-lg) 0}.mock-filters{display:flex;gap:var(--spacing-sm);padding:var(--spacing-sm);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg)}.mock-filters button{padding:var(--spacing-sm) var(--spacing-md);border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-caption);background:transparent}.mock-appointment-card,.mock-record-card,.mock-bill-card{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);border-radius:var(--radius-lg);margin-bottom:var(--spacing-sm)}.mock-appt-info h4,.mock-record-info h4,.mock-bill-info h4{font-size:var(--font-size-body);margin:0 0 var(--spacing-xs) 0}.mock-appt-info p,.mock-record-info p,.mock-bill-info p{font-size:var(--font-size-caption);margin:0 0 var(--spacing-sm) 0;opacity:.7}.mock-status{display:inline-block;font-size:var(--font-size-tiny);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-full);font-weight:var(--font-weight-medium)}.mock-appt-actions button{padding:var(--spacing-xs) var(--spacing-sm);border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-caption)}.mock-tabs{display:flex;gap:var(--spacing-lg);border-bottom:1px solid var(--color-neutral-200);margin-bottom:var(--spacing-lg)}.mock-tabs span{padding:var(--spacing-sm) 0;cursor:pointer;border-bottom:2px solid transparent;font-size:var(--font-size-body)}.mock-diagnosis{color:var(--color-neutral-600);font-style:italic}.mock-record-card button{background:none;border:none;cursor:pointer;font-weight:var(--font-weight-medium)}.mock-balance-summary{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);border-radius:var(--radius-lg);margin-bottom:var(--spacing-lg)}.mock-balance-summary span{font-size:var(--font-size-caption);opacity:.7}.mock-balance-summary strong{display:block;font-size:var(--font-size-h3);margin-top:var(--spacing-xs)}.mock-balance-summary button{padding:var(--spacing-sm) var(--spacing-lg);border:none;border-radius:var(--radius-md);cursor:pointer;font-weight:var(--font-weight-medium)}.mock-bill-amount{text-align:right}.mock-bill-amount strong{display:block;margin-bottom:var(--spacing-xs)}.mock-portal-footer{padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--color-neutral-200);text-align:center}.mock-portal-footer p{margin:0;font-size:var(--font-size-tiny);opacity:.6}.mock-portal-footer p:first-child{margin-bottom:var(--spacing-xs)}.preview-info{background:var(--color-primary-50);border:1px solid var(--color-primary-200);border-radius:var(--radius-lg);padding:var(--spacing-lg)}.preview-info h4{margin:0 0 var(--spacing-sm) 0;color:var(--color-primary-900)}.preview-info p{margin:0 0 var(--spacing-md) 0;color:var(--color-neutral-700)}.preview-info ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-sm)}.preview-info li{color:var(--color-neutral-700);font-size:var(--font-size-caption)}@media(max-width:900px){.preview-toolbar{flex-wrap:wrap}.preview-toolbar h3{order:-1;width:100%}.preview-frame-container{padding:var(--spacing-sm)}.mock-portal-nav{gap:var(--spacing-md)}.mock-quick-actions{grid-template-columns:repeat(2,1fr)}.mock-summary-cards{grid-template-columns:1fr}}.reception-reports-module{display:grid;grid-template-columns:240px 1fr;gap:0;min-height:calc(100vh - 60px);background:var(--color-neutral-50)}.reports-sidebar{background:var(--color-white);border-right:1px solid var(--color-neutral-200);display:flex;flex-direction:column}.sidebar-header{padding:var(--spacing-lg);border-bottom:1px solid var(--color-neutral-200)}.sidebar-header h2{margin:0;font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.reports-nav{flex:1;padding:var(--spacing-sm);overflow-y:auto}.reports-nav .nav-item{display:flex;align-items:center;gap:var(--spacing-sm);width:100%;padding:.625rem .875rem;border:none;background:transparent;border-radius:var(--radius-md);font-size:var(--font-size-body);color:var(--color-neutral-700);text-align:left;cursor:pointer;transition:all var(--transition-fast);border-bottom:none}.reports-nav .nav-item:hover{background:var(--color-neutral-100);color:var(--color-neutral-900)}.reports-nav .nav-item.active{background:var(--color-primary-100);color:var(--color-primary-900);font-weight:var(--font-weight-medium)}.reports-nav .nav-icon{font-size:var(--font-size-body)}.reports-nav .nav-section{margin-top:var(--spacing-md)}.reports-nav .nav-section:first-of-type{margin-top:0}.reports-nav .nav-section-title{padding:var(--spacing-sm) .875rem;margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-tiny);font-weight:var(--font-weight-semibold);color:var(--color-neutral-500);text-transform:uppercase;letter-spacing:.05em}.reports-content{display:flex;flex-direction:column;min-width:0}.content-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);background:var(--color-white);border-bottom:1px solid var(--color-neutral-200)}.header-info{display:flex;align-items:center;gap:var(--spacing-md)}.back-btn{padding:.375rem var(--spacing-sm);background:transparent;border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:.8125rem;color:var(--color-neutral-500);cursor:pointer;transition:all var(--transition-fast)}.back-btn:hover{background:var(--color-neutral-50);border-color:var(--color-neutral-300)}.header-info h1{margin:0;font-size:var(--font-size-h3);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.header-info p{margin:.125rem 0 0;font-size:.8125rem;color:var(--color-neutral-500)}.header-actions{display:flex;gap:var(--spacing-sm)}.btn-export{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-primary-900);color:var(--color-white);border:none;border-radius:var(--radius-md);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--transition-fast)}.btn-export:hover{background:var(--color-primary-600)}.btn-export:disabled{background:var(--color-neutral-500);cursor:not-allowed}.report-container{flex:1;padding:var(--spacing-lg);overflow-y:auto}.reception-reports-module.no-sidebar{grid-template-columns:1fr}.reception-reports-module.no-sidebar .reports-content{max-width:900px;margin:0 auto;width:100%}.reports-dashboard{max-width:1200px}.reports-dashboard.simplified{max-width:800px;margin:0 auto}.reports-dashboard .dashboard-header{margin-bottom:var(--spacing-lg);background:transparent;color:var(--color-neutral-900);padding:0}.reports-dashboard .dashboard-header h1{margin:0;font-size:var(--font-size-h2);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.reports-dashboard .dashboard-date{margin:var(--spacing-xs) 0 0;font-size:var(--font-size-body);color:var(--color-neutral-500)}.quick-views-section{margin-bottom:var(--spacing-xl)}.quick-views-section h3{margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.quick-views-section .section-description{margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-caption);color:var(--color-neutral-500)}.quick-view-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-sm)}.quick-view-card{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);text-align:left}.quick-view-card:hover{border-color:var(--color-primary-500);background:var(--color-primary-50);box-shadow:var(--shadow-sm)}.quick-view-card:active{transform:scale(.98)}.quick-view-icon{font-size:1.5rem;flex-shrink:0}.quick-view-content{display:flex;flex-direction:column;gap:2px;min-width:0}.quick-view-label{font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.quick-view-description{font-size:var(--font-size-caption);color:var(--color-neutral-500);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.quick-stats{display:flex;flex-wrap:nowrap;gap:var(--spacing-md);margin-bottom:var(--spacing-xl);width:100%;box-sizing:border-box}.stat-card{flex:1 1 0;min-width:0;max-width:none;background:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);box-sizing:border-box}.stat-card .stat-value{display:block;font-size:1.75rem;font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.stat-card .stat-label{display:block;margin-top:var(--spacing-xs);font-size:var(--font-size-caption);color:var(--color-neutral-500);text-transform:uppercase;letter-spacing:.02em}.report-categories{display:flex;flex-direction:column;gap:var(--spacing-xl)}.category h3{margin:0 0 var(--spacing-md);font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700)}.report-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--spacing-md)}.report-card{display:flex;flex-direction:column;align-items:flex-start;padding:var(--spacing-lg);background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);text-align:left;cursor:pointer;transition:all var(--transition-fast)}.report-card:hover{border-color:var(--color-primary-900);box-shadow:var(--shadow-md)}.report-card h4{margin:0;font-size:.9375rem;font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.report-card p{margin:.375rem 0 0;font-size:.8125rem;color:var(--color-neutral-500)}.export-badge{display:inline-block;margin-top:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-success-light);border-radius:var(--radius-sm);font-size:var(--font-size-tiny);font-weight:var(--font-weight-medium);color:var(--color-success)}.report-filters{display:flex;flex-wrap:wrap;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);padding:var(--spacing-md);background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs)}.filter-select,.filter-input{padding:var(--spacing-sm) var(--spacing-sm);background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:var(--font-size-body);color:var(--color-neutral-700)}.filter-select:focus,.filter-input:focus{outline:none;border-color:var(--color-primary-900)}.filter-input{min-width:200px}.filter-checkbox{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-body);color:var(--color-neutral-700);cursor:pointer}.filter-checkbox input{width:16px;height:16px}.filter-refresh{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-neutral-100);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:var(--font-size-body);color:var(--color-neutral-700);cursor:pointer;transition:all var(--transition-fast)}.filter-refresh:hover{background:var(--color-neutral-200)}.report-summary{display:flex;flex-wrap:nowrap;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);width:100%;box-sizing:border-box}.report-summary .summary-stat{flex:1 1 0;min-width:0;max-width:none;background:var(--color-white);border-radius:10px;padding:var(--spacing-md);text-align:center;box-shadow:var(--shadow-sm);border-left:4px solid var(--color-neutral-200);box-sizing:border-box}.report-summary .summary-stat .stat-number{display:block;font-size:var(--font-size-h2);font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.report-summary .summary-stat .stat-label{font-size:var(--font-size-caption);color:var(--color-neutral-500);text-transform:uppercase;letter-spacing:.05em}.report-summary .summary-stat.stat-total{border-left-color:var(--color-primary-900)}.report-summary .summary-stat.stat-success{border-left-color:var(--color-success)}.report-summary .summary-stat.stat-warning{border-left-color:var(--color-warning)}.report-summary .summary-stat.stat-error{border-left-color:var(--color-error)}.report-summary .summary-stat.stat-info{border-left-color:var(--color-info)}.summary-item{font-size:var(--font-size-body);color:var(--color-neutral-500)}.summary-item strong{color:var(--color-neutral-900)}.report-table-container{background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.report-table{width:100%;border-collapse:collapse;font-size:var(--font-size-body)}.report-table th{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-neutral-50);border-bottom:1px solid var(--color-neutral-200);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700);text-align:left;white-space:nowrap}.report-table td{padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--color-neutral-100);color:var(--color-neutral-700)}.report-table tbody tr:hover{background:var(--color-neutral-50)}.report-table tbody tr:last-child td{border-bottom:none}.empty-row{text-align:center!important;color:var(--color-neutral-500)!important;padding:var(--spacing-xl) var(--spacing-md)!important}.time-cell{font-weight:var(--font-weight-medium);white-space:nowrap}.patient-cell{font-weight:var(--font-weight-medium)}.ic-cell{font-family:var(--font-mono);color:var(--color-neutral-500)}.visit-type-cell{text-transform:capitalize}.panel-cell{color:var(--color-neutral-500);font-size:.8125rem}.phone-cell a{color:var(--color-primary-900);text-decoration:none}.phone-cell a:hover{text-decoration:underline}.queue-number-cell{font-weight:var(--font-weight-bold);color:var(--color-primary-900)}.refund-amount,.outstanding{color:var(--color-error);font-weight:var(--font-weight-medium)}.voided-row{background:var(--color-error-light)!important;text-decoration:line-through;opacity:.7}.status-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);text-transform:capitalize}.status-confirmed{background:var(--color-success-light);color:var(--color-success)}.status-pending{background:var(--color-warning-light);color:var(--color-warning)}.status-cancelled{background:var(--color-error-light);color:var(--color-error)}.arrival-not-arrived{background:var(--color-neutral-100);color:var(--color-neutral-500)}.arrival-checked-in{background:var(--color-success-light);color:var(--color-success)}.arrival-late{background:var(--color-warning-light);color:var(--color-warning)}.arrival-no-show{background:var(--color-error-light);color:var(--color-error)}.confirm-pending{background:var(--color-warning-light);color:var(--color-warning)}.confirm-confirmed{background:var(--color-success-light);color:var(--color-success)}.confirm-no-answer{background:var(--color-error-light);color:var(--color-error)}.queue-waiting{background:var(--color-neutral-100);color:var(--color-neutral-500)}.queue-in-consultation{background:var(--color-info-light);color:var(--color-info)}.queue-at-pharmacy{background:var(--color-primary-100);color:var(--color-primary-900)}.queue-completed{background:var(--color-success-light);color:var(--color-success)}.followup-not-contacted{background:var(--color-error-light);color:var(--color-error)}.followup-contacted{background:var(--color-warning-light);color:var(--color-warning)}.followup-rescheduled{background:var(--color-success-light);color:var(--color-success)}.followup-cancelled{background:var(--color-neutral-100);color:var(--color-neutral-500)}.invoice-paid{background:var(--color-success-light);color:var(--color-success)}.invoice-partial{background:var(--color-warning-light);color:var(--color-warning)}.invoice-outstanding{background:var(--color-error-light);color:var(--color-error)}.rebooked{background:var(--color-success-light);color:var(--color-success)}.not-rebooked{background:var(--color-neutral-100);color:var(--color-neutral-500)}.voided{background:var(--color-error-light);color:var(--color-error)}.valid{background:var(--color-success-light);color:var(--color-success)}.activity-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}.activity-check-in{background:var(--color-success-light);color:var(--color-success)}.activity-payment{background:var(--color-info-light);color:var(--color-info)}.activity-booking{background:var(--color-primary-100);color:var(--color-primary-900)}.activity-walk-in{background:var(--color-warning-light);color:var(--color-warning)}.activity-cancellation{background:var(--color-error-light);color:var(--color-error)}.activity-reschedule{background:var(--color-primary-100);color:var(--color-primary-900)}.actions-cell{display:flex;flex-wrap:wrap;gap:.375rem}.action-btn{padding:var(--spacing-xs) var(--spacing-sm);border:none;border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);cursor:pointer;transition:opacity var(--transition-fast);white-space:nowrap}.action-btn:hover{opacity:.85}.action-btn.check-in{background:var(--color-success-light);color:var(--color-success)}.action-btn.late{background:var(--color-warning-light);color:var(--color-warning)}.action-btn.no-show{background:var(--color-error-light);color:var(--color-error)}.action-btn.reminder{background:var(--color-info-light);color:var(--color-info)}.action-btn.confirm{background:var(--color-success-light);color:var(--color-success)}.action-btn.no-answer{background:var(--color-error-light);color:var(--color-error)}.action-btn.call{background:var(--color-info-light);color:var(--color-info)}.action-btn.contacted{background:var(--color-warning-light);color:var(--color-warning)}.action-btn.reschedule{background:var(--color-primary-100);color:var(--color-primary-900)}.action-btn.reprint{background:var(--color-neutral-100);color:var(--color-neutral-700)}.action-btn.void{background:var(--color-error-light);color:var(--color-error)}.daily-sales-report{display:flex;flex-direction:column;gap:var(--spacing-lg)}.sales-summary-cards{display:flex;flex-wrap:nowrap;gap:var(--spacing-md);width:100%}.sales-summary-cards>*{flex:1;min-width:0}.sales-card{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm)}.sales-card.total{background:linear-gradient(135deg,var(--color-primary-900),var(--color-primary-600));color:var(--color-white)}.sales-card.total .card-label{color:var(--color-white);opacity:.8}.sales-card .card-label{display:block;font-size:var(--font-size-caption);color:var(--color-neutral-500);text-transform:uppercase;letter-spacing:.02em}.sales-card .card-value{display:block;margin-top:var(--spacing-sm);font-size:var(--font-size-h2);font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.sales-card.total .card-value{color:var(--color-white)}.sales-breakdown,.sales-by-staff{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm)}.sales-breakdown h3,.sales-by-staff h3{margin:0 0 var(--spacing-md);font-size:.9375rem;font-weight:var(--font-weight-semibold);color:var(--color-neutral-700)}.breakdown-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-md)}.breakdown-item{display:flex;justify-content:space-between;padding:var(--spacing-sm);background:var(--color-neutral-50);border-radius:var(--radius-md)}.method-label{font-size:var(--font-size-body);color:var(--color-neutral-500)}.method-value{font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.report-loading,.report-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-2xl);background:var(--color-white);border-radius:var(--radius-lg);text-align:center;color:var(--color-neutral-500)}.report-error{color:var(--color-error)}.report-error button{margin-top:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-primary-900);color:var(--color-white);border:none;border-radius:var(--radius-md);cursor:pointer}@media(max-width:1024px){.reception-reports-module{grid-template-columns:200px 1fr}}@media(max-width:768px){.reception-reports-module{grid-template-columns:1fr}.reports-sidebar{display:none}.report-filters{flex-direction:column;align-items:stretch}.filter-select,.filter-input{width:100%}.report-table-container{overflow-x:auto}.report-table{min-width:800px}.actions-cell{flex-direction:column}}.modal-overlay{position:fixed;inset:0;background-color:var(--modal-backdrop-color);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal-backdrop)}.modal-content{background:var(--color-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);max-height:90vh;overflow-y:auto}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-neutral-200)}.modal-header h3{margin:0;font-size:var(--font-size-h4);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.modal-close{background:transparent;border:none;font-size:1.5rem;color:var(--color-neutral-500);cursor:pointer;padding:0;line-height:1;transition:color var(--transition-fast)}.modal-close:hover{color:var(--color-neutral-900)}.modal-body{padding:var(--spacing-lg)}.modal-footer{display:flex;justify-content:flex-end;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--color-neutral-200)}.form-group{margin-bottom:var(--spacing-md)}.form-group label{display:block;margin-bottom:.375rem;font-size:var(--font-size-body);font-weight:var(--font-weight-medium);color:var(--color-neutral-700)}.form-group input,.form-group textarea{width:100%;padding:.625rem var(--spacing-sm);font-size:.9375rem;border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);transition:border-color var(--transition-fast)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary-900);box-shadow:0 0 0 3px var(--color-primary-100)}.error-message{padding:var(--spacing-sm) var(--spacing-md);margin-bottom:var(--spacing-md);background-color:var(--color-error-light);border:1px solid var(--color-error);border-radius:var(--radius-md);color:var(--color-error);font-size:var(--font-size-body)}.btn-secondary{background-color:var(--color-neutral-100);color:var(--color-neutral-700);border:1px solid var(--color-neutral-200);padding:.625rem var(--spacing-lg);border-radius:var(--radius-md);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color var(--transition-fast)}.btn-secondary:hover:not(:disabled){background-color:var(--color-neutral-200)}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.void-receipt-modal{width:90%;max-width:420px}.void-warning{margin:0 0 var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-warning-light);border:1px solid var(--color-warning);border-radius:var(--radius-md);color:var(--color-warning-hover);font-size:var(--font-size-body)}.void-receipt-modal .form-group{margin-bottom:var(--spacing-md)}.void-receipt-modal .form-group label{display:block;margin-bottom:.375rem;font-size:var(--font-size-body);font-weight:var(--font-weight-medium);color:var(--color-neutral-700)}.void-receipt-modal .form-group input[type=password],.void-receipt-modal .form-group textarea{width:100%;padding:.625rem var(--spacing-sm);font-size:.9375rem;border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);transition:border-color var(--transition-fast)}.void-receipt-modal .form-group input[type=password]:focus,.void-receipt-modal .form-group textarea:focus{outline:none;border-color:var(--color-primary-900);box-shadow:0 0 0 3px var(--color-primary-100)}.void-receipt-modal .form-group textarea{resize:vertical;min-height:80px}.btn-danger{background-color:var(--color-error);color:var(--color-white);border:none;padding:.625rem var(--spacing-lg);border-radius:var(--radius-md);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color var(--transition-fast)}.btn-danger:hover:not(:disabled){background-color:var(--color-error-hover)}.btn-danger:disabled{background-color:var(--color-error);opacity:.6;cursor:not-allowed}.reports-index{display:flex;flex-direction:column;gap:var(--spacing-xl);max-width:900px;margin:0 auto}.report-section{background:var(--color-white);border-radius:var(--radius-xl);padding:var(--spacing-lg);box-shadow:var(--shadow-sm)}.report-section h2{margin:0 0 var(--spacing-md);font-size:var(--font-size-h4);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-neutral-100)}.report-section .report-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--spacing-md)}.report-section .report-card{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);background:var(--color-neutral-50);border:1px solid transparent;border-radius:var(--radius-lg);text-align:left;cursor:pointer;transition:all var(--transition-fast)}.report-section .report-card:hover{background:var(--color-white);border-color:var(--color-primary-500);box-shadow:var(--shadow-sm)}.report-section .report-card .report-card-content{flex:1;min-width:0}.report-section .report-card h3{margin:0;font-size:var(--font-size-body);font-weight:var(--font-weight-medium);color:var(--color-neutral-900)}.report-section .report-card p{margin:.25rem 0 0;font-size:var(--font-size-caption);color:var(--color-neutral-500)}.report-section .export-indicator{flex-shrink:0;padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-success-light);border-radius:var(--radius-sm);font-size:var(--font-size-tiny);font-weight:var(--font-weight-medium);color:var(--color-success)}@media(max-width:640px){.report-section .report-cards{grid-template-columns:1fr}}.dashboard-header-simplified{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-neutral-200)}.dashboard-header-simplified .header-left{display:flex;align-items:baseline;gap:var(--spacing-md)}.dashboard-header-simplified h1{margin:0;font-size:var(--font-size-h2);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.dashboard-date-inline{font-size:var(--font-size-body);color:var(--color-neutral-500)}.dashboard-tabs{display:flex;gap:var(--spacing-xs);background:var(--color-neutral-100);padding:4px;border-radius:var(--radius-lg)}.tab-btn{padding:var(--spacing-sm) var(--spacing-lg);border:none;background:transparent;border-radius:var(--radius-md);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);color:var(--color-neutral-600);cursor:pointer;transition:all var(--transition-fast)}.tab-btn:hover{color:var(--color-neutral-900)}.tab-btn.active{background:var(--color-white);color:var(--color-neutral-900);box-shadow:var(--shadow-sm)}.primary-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.primary-stat-card{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl) var(--spacing-lg);background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-xl);cursor:pointer;transition:all var(--transition-fast)}.primary-stat-card:hover{border-color:var(--color-primary-500);box-shadow:var(--shadow-md)}.primary-stat-card.highlight{background:linear-gradient(135deg,var(--color-primary-900),var(--color-primary-600));border-color:transparent}.primary-stat-card.highlight:hover{transform:scale(1.02)}.primary-stat-card .stat-number{font-size:2.5rem;font-weight:var(--font-weight-bold);color:var(--color-neutral-900);line-height:1}.primary-stat-card.highlight .stat-number{color:var(--color-white)}.primary-stat-card .stat-name{margin-top:var(--spacing-sm);font-size:var(--font-size-body);color:var(--color-neutral-500)}.primary-stat-card.highlight .stat-name{color:#ffffffd9}.live-view{display:flex;flex-direction:column;gap:var(--spacing-lg)}.live-section{background:var(--color-white);border-radius:var(--radius-xl);padding:var(--spacing-lg);box-shadow:var(--shadow-sm)}.live-section .section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-md)}.live-section h3{margin:0;font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700)}.see-all-btn{padding:var(--spacing-xs) var(--spacing-sm);background:transparent;border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:var(--font-size-caption);color:var(--color-neutral-600);cursor:pointer;transition:all var(--transition-fast)}.see-all-btn:hover{background:var(--color-neutral-50);border-color:var(--color-neutral-300)}.waiting-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.waiting-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-md)}.queue-badge{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--color-primary-900);color:var(--color-white);border-radius:var(--radius-md);font-weight:var(--font-weight-bold);font-size:var(--font-size-body)}.waiting-item .patient-info{flex:1;display:flex;flex-direction:column;min-width:0}.waiting-item .patient-name{font-weight:var(--font-weight-medium);color:var(--color-neutral-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.waiting-item .doctor-name{font-size:var(--font-size-caption);color:var(--color-neutral-500)}.wait-time{font-size:var(--font-size-body);font-weight:var(--font-weight-medium);color:var(--color-neutral-600);white-space:nowrap}.wait-time.long-wait{color:var(--color-warning)}.empty-live-list{padding:var(--spacing-xl);text-align:center;color:var(--color-neutral-500);font-size:var(--font-size-body)}.action-badges{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md)}.action-badge{display:flex;flex-direction:column;align-items:flex-start;padding:var(--spacing-md);background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);text-align:left}.action-badge:hover{background:var(--color-white);border-color:var(--color-neutral-300);box-shadow:var(--shadow-sm)}.action-badge.urgent{background:var(--color-warning-light);border-color:var(--color-warning)}.action-badge.urgent .badge-count{color:var(--color-warning)}.action-badge.warning{background:var(--color-error-light);border-color:var(--color-error)}.action-badge.warning .badge-count{color:var(--color-error)}.badge-count{font-size:var(--font-size-h3);font-weight:var(--font-weight-bold);color:var(--color-neutral-900);line-height:1}.badge-icon{font-size:1.5rem}.badge-label{margin-top:var(--spacing-xs);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);color:var(--color-neutral-700)}.badge-detail{font-size:var(--font-size-caption);color:var(--color-neutral-500)}.other-reports-row{display:flex;gap:var(--spacing-sm)}.mini-report-btn{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-neutral-100);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:var(--font-size-body);color:var(--color-neutral-700);cursor:pointer;transition:all var(--transition-fast)}.mini-report-btn:hover{background:var(--color-neutral-200)}.finance-view{padding-top:var(--spacing-md)}.finance-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}.finance-card{display:flex;flex-direction:column;align-items:flex-start;padding:var(--spacing-lg);background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);text-align:left;cursor:pointer;transition:all var(--transition-fast)}.finance-card:hover{border-color:var(--color-primary-500);box-shadow:var(--shadow-md)}.finance-card h4{margin:0;font-size:.9375rem;font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.finance-card p{margin:.25rem 0 0;font-size:var(--font-size-caption);color:var(--color-neutral-500)}.finance-card .export-badge{margin-top:var(--spacing-sm)}@media(max-width:768px){.report-summary{flex-wrap:wrap}.report-summary .summary-stat{flex:1 1 calc(50% - var(--spacing-sm));min-width:calc(50% - var(--spacing-sm))}}@media(max-width:640px){.dashboard-header-simplified{flex-direction:column;align-items:stretch;gap:var(--spacing-md)}.dashboard-header-simplified .header-left{justify-content:space-between}.dashboard-tabs{justify-content:center}.primary-stats,.action-badges,.finance-cards{grid-template-columns:1fr}}.mc-referral-log-report{display:flex;flex-direction:column;gap:var(--spacing-lg)}.mc-referral-details-cell{max-width:300px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:var(--font-size-caption);color:var(--color-neutral-600)}.doc-type-mc{background:var(--color-info-light);color:var(--color-info)}.doc-type-referral{background:var(--color-primary-100);color:var(--color-primary-900)}.doc-status-draft{background:var(--color-warning-light);color:var(--color-warning)}.doc-status-issued{background:var(--color-success-light);color:var(--color-success)}.doc-status-voided{background:var(--color-error-light);color:var(--color-error)}.doc-status-sent{background:var(--color-success-light);color:var(--color-success)}.payment-history-report{display:flex;flex-direction:column;gap:var(--spacing-lg)}.payment-history-report .filter-date{padding:.5rem;border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);font-size:var(--font-size-body)}.payment-history-report .filter-date-separator{color:var(--color-neutral-500);align-self:center}.payment-history-report .payment-number-cell{font-family:var(--font-mono);font-size:var(--font-size-caption);color:var(--color-neutral-600)}.payment-history-report .patient-number{display:block;font-size:var(--font-size-caption);color:var(--color-neutral-500)}.payment-history-report .amount-cell{font-weight:600;text-align:right}.payment-history-report .amount-cell.strikethrough{text-decoration:line-through;color:var(--color-neutral-400)}.payment-history-report .status-voided,.payment-history-report tr.status-voided{background-color:var(--color-warning-50, #fffbeb)}.payment-history-report .status-refunded,.payment-history-report tr.status-refunded{background-color:var(--color-error-50, #fef2f2)}.payment-history-report .status-badge{padding:.25rem .5rem;border-radius:var(--radius-full);font-size:var(--font-size-caption);font-weight:500;text-transform:capitalize}.payment-history-report .status-badge.status-completed{background-color:var(--color-success-100, #dcfce7);color:var(--color-success-700, #15803d)}.payment-history-report .status-badge.status-voided{background-color:var(--color-warning-100, #fef3c7);color:var(--color-warning-700, #b45309)}.payment-history-report .status-badge.status-refunded{background-color:var(--color-error-100, #fee2e2);color:var(--color-error-700, #b91c1c)}.payment-history-report .action-btn.print{background:var(--color-primary-50);color:var(--color-primary-700);border:1px solid var(--color-primary-200);padding:.25rem .5rem;border-radius:var(--radius-md);font-size:var(--font-size-caption);cursor:pointer;transition:all .15s ease}.payment-history-report .action-btn.print:hover{background:var(--color-primary-100);border-color:var(--color-primary-300)}.payment-history-report .void-reason{cursor:help}.payment-history-report .capitalize{text-transform:capitalize}.doctor-reports-module{display:grid;grid-template-columns:260px 1fr;gap:0;min-height:calc(100vh - 60px);background:var(--color-neutral-50)}.doctor-reports-module .reports-sidebar{background:var(--color-white);border-right:1px solid var(--color-neutral-200);display:flex;flex-direction:column}.doctor-reports-module .sidebar-header{padding:1.25rem;border-bottom:1px solid var(--color-neutral-200)}.doctor-reports-module .sidebar-header h2{margin:0;font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.doctor-reports-module .reports-nav{flex:1;padding:.75rem;overflow-y:auto}.doctor-reports-module .nav-item{display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%;padding:.625rem .875rem;border:none;background:transparent;border-radius:var(--radius-md);font-size:var(--font-size-body);color:var(--color-neutral-700);text-align:left;cursor:pointer;transition:all var(--transition-fast)}.doctor-reports-module .nav-item:hover{background:var(--color-neutral-100);color:var(--color-neutral-900)}.doctor-reports-module .nav-item.active{background:#e0f2fe;color:#0369a1;font-weight:var(--font-weight-medium)}.doctor-reports-module .nav-item.critical{border-left:3px solid var(--color-error);padding-left:calc(.875rem - 3px)}.doctor-reports-module .nav-item.critical.active{background:var(--color-error-light);color:var(--color-error)}.doctor-reports-module .critical-badge{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;background:var(--color-error);color:var(--color-white);border-radius:var(--radius-full);font-size:var(--font-size-caption);font-weight:var(--font-weight-bold)}.doctor-reports-module .nav-icon{font-size:var(--font-size-body)}.doctor-reports-module .nav-section{margin-top:var(--spacing-md)}.doctor-reports-module .nav-section:first-of-type{margin-top:0}.doctor-reports-module .nav-section-title{padding:var(--spacing-sm) .875rem;margin:0 0 var(--spacing-xs) 0;font-size:.6875rem;font-weight:var(--font-weight-semibold);color:var(--color-neutral-500);text-transform:uppercase;letter-spacing:.05em}.doctor-reports-module .reports-content{display:flex;flex-direction:column;min-width:0}.doctor-reports-module .content-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);background:var(--color-white);border-bottom:1px solid var(--color-neutral-200)}.doctor-reports-module .header-info{display:flex;align-items:center;gap:var(--spacing-md)}.doctor-reports-module .back-btn{padding:.375rem .75rem;background:transparent;border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:.8125rem;color:var(--color-neutral-500);cursor:pointer;transition:all var(--transition-fast)}.doctor-reports-module .back-btn:hover{background:var(--color-neutral-50);border-color:var(--color-neutral-300)}.doctor-reports-module .header-info h1{display:flex;align-items:center;gap:.75rem;margin:0;font-size:1.25rem;font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.doctor-reports-module .critical-tag{padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-error);color:var(--color-white);border-radius:var(--radius-sm);font-size:var(--font-size-tiny);font-weight:var(--font-weight-bold);letter-spacing:.05em}.doctor-reports-module .header-info p{margin:.125rem 0 0;font-size:.8125rem;color:var(--color-neutral-500)}.doctor-reports-module .header-actions{display:flex;gap:.75rem}.doctor-reports-module .btn-export{padding:var(--spacing-sm) var(--spacing-md);background:#0369a1;color:var(--color-white);border:none;border-radius:var(--radius-md);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--transition-fast)}.doctor-reports-module .btn-export:hover{background:#075985}.doctor-reports-module .btn-export:disabled{background:var(--color-neutral-500);cursor:not-allowed}.doctor-reports-module .report-container{flex:1;padding:var(--spacing-lg);overflow-y:auto}.doctor-reports-module .reports-dashboard{max-width:1200px}.doctor-reports-module .dashboard-header{margin-bottom:var(--spacing-lg)}.doctor-reports-module .dashboard-header h1{margin:0;font-size:var(--font-size-h2);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.doctor-reports-module .dashboard-date{margin:var(--spacing-xs) 0 0;font-size:var(--font-size-body);color:var(--color-neutral-500)}.doctor-reports-module .critical-alerts{margin-bottom:var(--spacing-lg)}.doctor-reports-module .critical-alerts h3{margin:0 0 .75rem;font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-error);text-transform:uppercase;letter-spacing:.05em}.doctor-reports-module .alert-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md)}.doctor-reports-module .alert-card{display:flex;flex-direction:column;align-items:flex-start;padding:var(--spacing-md);background:var(--color-white);border:2px solid var(--color-neutral-200);border-radius:10px;cursor:pointer;transition:all var(--transition-fast)}.doctor-reports-module .alert-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.doctor-reports-module .alert-card.critical{border-color:var(--color-error);background:var(--color-error-light)}.doctor-reports-module .alert-card.warning{border-color:#f59e0b;background:#fffbeb}.doctor-reports-module .alert-count{font-size:var(--font-size-h1);font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.doctor-reports-module .alert-card.critical .alert-count{color:var(--color-error)}.doctor-reports-module .alert-card.warning .alert-count{color:#b45309}.doctor-reports-module .alert-label{margin-top:var(--spacing-xs);font-size:.8125rem;color:var(--color-neutral-500)}.doctor-reports-module .quick-stats{display:flex;flex-wrap:nowrap;gap:var(--spacing-md);margin-bottom:var(--spacing-xl);width:100%;box-sizing:border-box}.doctor-reports-module .stat-card{flex:1 1 0;min-width:0;max-width:none;background:var(--color-white);border-radius:10px;padding:1.25rem;box-shadow:var(--shadow-sm);box-sizing:border-box}.doctor-reports-module .stat-card .stat-value{display:block;font-size:1.75rem;font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.doctor-reports-module .stat-card .stat-label{display:block;margin-top:var(--spacing-xs);font-size:var(--font-size-caption);color:var(--color-neutral-500);text-transform:uppercase;letter-spacing:.02em}.doctor-reports-module .report-categories{display:flex;flex-direction:column;gap:var(--spacing-xl)}.doctor-reports-module .category h3{margin:0 0 var(--spacing-md);font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.doctor-reports-module .category-note{margin:-.75rem 0 var(--spacing-md);font-size:.8125rem;color:var(--color-neutral-500);font-style:italic}.doctor-reports-module .report-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-md)}.doctor-reports-module .report-card{display:flex;flex-direction:column;align-items:flex-start;padding:1.25rem;background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:10px;text-align:left;cursor:pointer;transition:all var(--transition-fast)}.doctor-reports-module .report-card:hover{border-color:#0369a1;box-shadow:0 4px 12px #0369a11a}.doctor-reports-module .report-card.critical{border-left:4px solid var(--color-error)}.doctor-reports-module .report-card.critical:hover{border-color:var(--color-error);box-shadow:0 4px 12px #dc26261a}.doctor-reports-module .report-card h4{margin:0;font-size:.9375rem;font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.doctor-reports-module .report-card p{margin:.375rem 0 0;font-size:.8125rem;color:var(--color-neutral-500)}.doctor-reports-module .card-badges{display:flex;gap:var(--spacing-sm);margin-top:.75rem}.doctor-reports-module .export-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-success-light);border-radius:var(--radius-sm);font-size:.6875rem;font-weight:var(--font-weight-medium);color:#15803d}.doctor-reports-module .critical-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-error-light);border-radius:var(--radius-sm);font-size:.6875rem;font-weight:var(--font-weight-semibold);color:var(--color-error)}.doctor-reports-module .report-notice{padding:var(--spacing-md);margin-bottom:var(--spacing-md);border-radius:var(--radius-lg);font-size:var(--font-size-body)}.doctor-reports-module .report-notice.critical{background:var(--color-error-light);border:1px solid #fecaca;color:#991b1b}.doctor-reports-module .report-notice.warning{background:#fffbeb;border:1px solid #fde68a;color:#92400e}.doctor-reports-module .report-info{padding:var(--spacing-md);margin-bottom:var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-lg);font-size:var(--font-size-body);color:var(--color-neutral-500)}.doctor-reports-module .report-filters{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:var(--spacing-md);padding:var(--spacing-md);background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs)}.doctor-reports-module .filter-select,.doctor-reports-module .filter-input{padding:var(--spacing-sm) .75rem;background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:var(--font-size-body);color:var(--color-neutral-900)}.doctor-reports-module .filter-select:focus,.doctor-reports-module .filter-input:focus{outline:none;border-color:#0369a1}.doctor-reports-module .filter-input{min-width:150px}.doctor-reports-module .filter-input[type=date]{min-width:140px}.doctor-reports-module .filter-checkbox{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-body);color:var(--color-neutral-700);cursor:pointer}.doctor-reports-module .filter-checkbox input{width:16px;height:16px}.doctor-reports-module .filter-refresh{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-neutral-100);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:var(--font-size-body);color:var(--color-neutral-700);cursor:pointer;transition:all var(--transition-fast)}.doctor-reports-module .filter-refresh:hover{background:var(--color-neutral-200)}.doctor-reports-module .report-summary{display:flex;flex-wrap:wrap;gap:var(--spacing-lg);margin-bottom:var(--spacing-md);padding:.75rem var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-lg)}.doctor-reports-module .summary-item{font-size:var(--font-size-body);color:var(--color-neutral-500)}.doctor-reports-module .summary-item strong{color:var(--color-neutral-900)}.doctor-reports-module .summary-item.critical,.doctor-reports-module .summary-item.critical strong{color:var(--color-error)}.doctor-reports-module .summary-item.warning,.doctor-reports-module .summary-item.warning strong{color:#b45309}.doctor-reports-module .report-table-container{background:var(--color-white);border-radius:10px;box-shadow:var(--shadow-sm);overflow:hidden}.doctor-reports-module .report-table{width:100%;border-collapse:collapse;font-size:var(--font-size-body)}.doctor-reports-module .report-table th{padding:.75rem var(--spacing-md);background:var(--color-neutral-50);border-bottom:1px solid var(--color-neutral-200);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700);text-align:left;white-space:nowrap}.doctor-reports-module .report-table td{padding:.75rem var(--spacing-md);border-bottom:1px solid var(--color-neutral-100);color:var(--color-neutral-900)}.doctor-reports-module .report-table tbody tr:hover{background:var(--color-neutral-50)}.doctor-reports-module .report-table tbody tr:last-child td{border-bottom:none}.doctor-reports-module .empty-row{text-align:center!important;color:var(--color-neutral-500)!important;padding:var(--spacing-xl) var(--spacing-md)!important}.doctor-reports-module .highlight-red{background:var(--color-error-light)!important}.doctor-reports-module .highlight-orange{background:#fff7ed!important}.doctor-reports-module .interaction-row,.doctor-reports-module .overdue-row{background:var(--color-error-light)!important}.doctor-reports-module .substitution-row{background:#fffbeb!important}.doctor-reports-module .queue-number-cell{font-weight:var(--font-weight-bold);color:#0369a1}.doctor-reports-module .complaint-cell{max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.doctor-reports-module .diagnosis-cell{max-width:250px}.doctor-reports-module .diagnosis-code{display:inline-block;margin-right:var(--spacing-sm);padding:.125rem .375rem;background:var(--color-neutral-200);border-radius:3px;font-family:var(--font-mono);font-size:var(--font-size-caption);color:var(--color-neutral-700)}.doctor-reports-module .medication-cell{display:flex;align-items:center;gap:var(--spacing-sm)}.doctor-reports-module .substitution-badge{padding:.125rem .375rem;background:var(--color-warning-light);border-radius:3px;font-size:.6875rem;color:#b45309}.doctor-reports-module .days-critical{color:var(--color-error);font-weight:var(--font-weight-semibold)}.doctor-reports-module .overdue-days{display:inline-block;margin-left:var(--spacing-sm);padding:.125rem .375rem;background:var(--color-error-light);border-radius:3px;font-size:var(--font-size-caption);color:var(--color-error)}.doctor-reports-module .condition-cell{max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.doctor-reports-module .reason-cell{max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.doctor-reports-module .mc-number-cell{font-family:var(--font-mono);font-weight:var(--font-weight-medium)}.doctor-reports-module .hash-cell code{padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-neutral-100);border-radius:3px;font-size:var(--font-size-caption);color:var(--color-neutral-500)}.doctor-reports-module .substituted{color:#b45309;font-weight:var(--font-weight-medium)}.doctor-reports-module .partial{color:var(--color-error);font-weight:var(--font-weight-medium)}.doctor-reports-module .substitution-reason{font-size:.8125rem;color:#b45309;font-style:italic}.doctor-reports-module .status-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);text-transform:capitalize}.doctor-reports-module .status-waiting{background:var(--color-neutral-100);color:var(--color-neutral-500)}.doctor-reports-module .status-in-progress{background:#dbeafe;color:#1d4ed8}.doctor-reports-module .status-completed{background:var(--color-success-light);color:#15803d}.doctor-reports-module .status-no-show{background:var(--color-error-light);color:var(--color-error)}.doctor-reports-module .dispensing-dispensed{background:var(--color-success-light);color:#15803d}.doctor-reports-module .dispensing-pending{background:var(--color-warning-light);color:#b45309}.doctor-reports-module .dispensing-partially-dispensed{background:#e0f2fe;color:#0369a1}.doctor-reports-module .dispensing-cancelled{background:var(--color-error-light);color:var(--color-error)}.doctor-reports-module .lab-ordered{background:var(--color-neutral-100);color:var(--color-neutral-500)}.doctor-reports-module .lab-sample-collected{background:var(--color-warning-light);color:#b45309}.doctor-reports-module .lab-processing{background:#dbeafe;color:#1d4ed8}.doctor-reports-module .lab-results-ready{background:var(--color-success-light);color:#15803d}.doctor-reports-module .result-badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}.doctor-reports-module .result-normal{background:var(--color-success-light);color:#15803d}.doctor-reports-module .result-abnormal{background:var(--color-error-light);color:var(--color-error)}.doctor-reports-module .priority-badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}.doctor-reports-module .priority-routine{background:var(--color-neutral-100);color:var(--color-neutral-500)}.doctor-reports-module .priority-urgent{background:var(--color-error-light);color:var(--color-error)}.doctor-reports-module .contact-badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}.doctor-reports-module .contact-not-contacted{background:var(--color-error-light);color:var(--color-error)}.doctor-reports-module .contact-contacted{background:var(--color-warning-light);color:#b45309}.doctor-reports-module .contact-appointment-booked{background:var(--color-success-light);color:#15803d}.doctor-reports-module .urgency-badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}.doctor-reports-module .urgency-routine{background:var(--color-neutral-100);color:var(--color-neutral-500)}.doctor-reports-module .urgency-urgent{background:var(--color-warning-light);color:#b45309}.doctor-reports-module .urgency-emergency{background:var(--color-error-light);color:var(--color-error)}.doctor-reports-module .interaction-badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold)}.doctor-reports-module .severity-low{background:var(--color-success-light);color:#15803d}.doctor-reports-module .severity-medium{background:var(--color-warning-light);color:#b45309}.doctor-reports-module .severity-high{background:var(--color-error-light);color:var(--color-error)}.doctor-reports-module .action-badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}.doctor-reports-module .action-accepted{background:var(--color-success-light);color:#15803d}.doctor-reports-module .action-edited{background:#dbeafe;color:#1d4ed8}.doctor-reports-module .action-rejected{background:var(--color-error-light);color:var(--color-error)}.doctor-reports-module .action-regenerated{background:var(--color-neutral-100);color:var(--color-neutral-500)}.doctor-reports-module .feature-badge{padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-neutral-100);border-radius:var(--radius-sm);font-size:var(--font-size-caption);color:var(--color-neutral-700);text-transform:uppercase}.doctor-reports-module .feedback-received{color:#15803d;font-weight:var(--font-weight-medium)}.doctor-reports-module .feedback-pending{color:var(--color-neutral-500)}.doctor-reports-module .viewed-badge{color:#15803d;font-size:.8125rem}.doctor-reports-module .not-viewed-badge{color:var(--color-neutral-500);font-size:.8125rem}.doctor-reports-module .ai-aggregate-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.doctor-reports-module .ai-aggregate-stats .stat-card{background:var(--color-white);border-radius:10px;padding:var(--spacing-md);box-shadow:var(--shadow-sm);text-align:center}.doctor-reports-module .ai-aggregate-stats .stat-card.accepted{border-top:3px solid #15803d}.doctor-reports-module .ai-aggregate-stats .stat-card.edited{border-top:3px solid #1d4ed8}.doctor-reports-module .ai-aggregate-stats .stat-card.rejected{border-top:3px solid var(--color-error)}.doctor-reports-module .ai-aggregate-stats .stat-value{display:block;font-size:var(--font-size-h2);font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.doctor-reports-module .ai-aggregate-stats .stat-label{display:block;margin-top:var(--spacing-xs);font-size:.6875rem;color:var(--color-neutral-500);text-transform:uppercase}.doctor-reports-module .actions-cell{display:flex;flex-wrap:wrap;gap:.375rem}.doctor-reports-module .action-btn{padding:var(--spacing-xs) var(--spacing-sm);border:none;border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);cursor:pointer;transition:opacity var(--transition-fast);white-space:nowrap}.doctor-reports-module .action-btn:hover{opacity:.85}.doctor-reports-module .action-btn.start{background:var(--color-success-light);color:#15803d}.doctor-reports-module .action-btn.view{background:#dbeafe;color:#1d4ed8}.doctor-reports-module .action-btn.addendum{background:#fae8ff;color:#a21caf}.doctor-reports-module .action-btn.export{background:var(--color-neutral-100);color:var(--color-neutral-700)}.doctor-reports-module .action-btn.release{background:var(--color-success-light);color:#15803d}.doctor-reports-module .action-btn.reminder{background:#dbeafe;color:#1d4ed8}.doctor-reports-module .action-btn.contacted{background:var(--color-warning-light);color:#b45309}.doctor-reports-module .action-btn.book{background:#e0f2fe;color:#0369a1}.doctor-reports-module .action-btn.history,.doctor-reports-module .action-btn.reprint{background:var(--color-neutral-100);color:var(--color-neutral-700)}.doctor-reports-module .action-btn.feedback{background:var(--color-warning-light);color:#b45309}.doctor-reports-module .report-loading,.doctor-reports-module .report-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-2xl);background:var(--color-white);border-radius:10px;text-align:center;color:var(--color-neutral-500)}.doctor-reports-module .report-error{color:var(--color-error)}.doctor-reports-module .report-error button{margin-top:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:#0369a1;color:var(--color-white);border:none;border-radius:var(--radius-md);cursor:pointer}@media(max-width:1024px){.doctor-reports-module{grid-template-columns:220px 1fr}}@media(max-width:768px){.doctor-reports-module{grid-template-columns:1fr}.doctor-reports-module .reports-sidebar{display:none}.doctor-reports-module .report-filters{flex-direction:column;align-items:stretch}.doctor-reports-module .filter-select,.doctor-reports-module .filter-input{width:100%}.doctor-reports-module .report-table-container{overflow-x:auto}.doctor-reports-module .report-table{min-width:900px}.doctor-reports-module .actions-cell{flex-direction:column}.doctor-reports-module .ai-aggregate-stats{grid-template-columns:repeat(2,1fr)}}.pharmacist-reports-module{display:grid;grid-template-columns:280px 1fr;gap:0;min-height:calc(100vh - 60px);background:var(--color-neutral-50)}.pharmacist-reports-module .reports-sidebar{background:var(--color-white);border-right:1px solid var(--color-neutral-200);display:flex;flex-direction:column}.pharmacist-reports-module .sidebar-header{padding:var(--spacing-lg);border-bottom:1px solid var(--color-neutral-200)}.pharmacist-reports-module .sidebar-header h2{margin:0;font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.pharmacist-reports-module .reports-nav{flex:1;padding:var(--spacing-sm);overflow-y:auto}.pharmacist-reports-module .nav-item{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);width:100%;padding:.625rem .875rem;border:none;background:transparent;border-radius:var(--radius-md);font-size:.8125rem;color:var(--color-neutral-700);text-align:left;cursor:pointer;transition:all var(--transition-fast)}.pharmacist-reports-module .nav-item:hover{background:var(--color-neutral-100);color:var(--color-neutral-900)}.pharmacist-reports-module .nav-item.active{background:var(--color-primary-100);color:var(--color-primary-900);font-weight:var(--font-weight-medium)}.pharmacist-reports-module .nav-item.mandatory{border-left:3px solid var(--color-primary-900);padding-left:calc(.875rem - 3px)}.pharmacist-reports-module .nav-item.mandatory.active{background:var(--color-primary-100);color:var(--color-primary-600)}.pharmacist-reports-module .nav-item.critical{border-left:3px solid var(--color-error);padding-left:calc(.875rem - 3px)}.pharmacist-reports-module .nav-item.critical.active{background:var(--color-error-light);color:var(--color-error)}.pharmacist-reports-module .mandatory-badge{display:inline-flex;align-items:center;justify-content:center;padding:.125rem .375rem;background:var(--color-primary-900);color:var(--color-white);border-radius:3px;font-size:.5625rem;font-weight:var(--font-weight-bold);letter-spacing:.05em}.pharmacist-reports-module .critical-badge{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;background:var(--color-error);color:var(--color-white);border-radius:var(--radius-full);font-size:var(--font-size-caption);font-weight:var(--font-weight-bold)}.pharmacist-reports-module .nav-icon{font-size:var(--font-size-body)}.pharmacist-reports-module .nav-section{margin-top:var(--spacing-md)}.pharmacist-reports-module .nav-section:first-of-type{margin-top:0}.pharmacist-reports-module .nav-section-title{padding:var(--spacing-sm) .875rem;margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-tiny);font-weight:var(--font-weight-semibold);color:var(--color-neutral-500);text-transform:uppercase;letter-spacing:.05em}.pharmacist-reports-module .nav-section-title.regulatory{color:var(--color-primary-900)}.pharmacist-reports-module .mandatory-indicator{display:inline-block;margin-left:var(--spacing-sm);padding:.125rem .375rem;background:var(--color-error);color:var(--color-white);border-radius:3px;font-size:.5rem;font-weight:var(--font-weight-bold);letter-spacing:.05em;vertical-align:middle}.pharmacist-reports-module .reports-content{display:flex;flex-direction:column;min-width:0}.pharmacist-reports-module .content-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);background:var(--color-white);border-bottom:1px solid var(--color-neutral-200)}.pharmacist-reports-module .header-info{display:flex;align-items:center;gap:var(--spacing-md)}.pharmacist-reports-module .back-btn{padding:.375rem var(--spacing-sm);background:transparent;border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:.8125rem;color:var(--color-neutral-500);cursor:pointer;transition:all var(--transition-fast)}.pharmacist-reports-module .back-btn:hover{background:var(--color-neutral-50);border-color:var(--color-neutral-300)}.pharmacist-reports-module .header-info h1{display:flex;align-items:center;gap:var(--spacing-sm);margin:0;font-size:var(--font-size-h3);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.pharmacist-reports-module .mandatory-tag{padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-primary-900);color:var(--color-white);border-radius:var(--radius-sm);font-size:var(--font-size-tiny);font-weight:var(--font-weight-bold);letter-spacing:.05em}.pharmacist-reports-module .critical-tag{padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-error);color:var(--color-white);border-radius:var(--radius-sm);font-size:var(--font-size-tiny);font-weight:var(--font-weight-bold);letter-spacing:.05em}.pharmacist-reports-module .header-info p{margin:.125rem 0 0;font-size:.8125rem;color:var(--color-neutral-500)}.pharmacist-reports-module .header-actions{display:flex;gap:var(--spacing-sm)}.pharmacist-reports-module .btn-export{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-primary-900);color:var(--color-white);border:none;border-radius:var(--radius-md);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--transition-fast)}.pharmacist-reports-module .btn-export:hover{background:var(--color-primary-600)}.pharmacist-reports-module .btn-export:disabled{background:var(--color-neutral-500);cursor:not-allowed}.pharmacist-reports-module .btn-export.mandatory{background:var(--color-primary-900)}.pharmacist-reports-module .btn-export.mandatory:hover{background:var(--color-primary-600)}.pharmacist-reports-module .report-container{flex:1;padding:var(--spacing-lg);overflow-y:auto}.pharmacist-reports-module .reports-dashboard{max-width:1200px}.pharmacist-reports-module .dashboard-header{margin-bottom:var(--spacing-lg)}.pharmacist-reports-module .dashboard-header h1{margin:0;font-size:var(--font-size-h2);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.pharmacist-reports-module .dashboard-date{margin:var(--spacing-xs) 0 0;font-size:var(--font-size-body);color:var(--color-neutral-500)}.pharmacist-reports-module .regulatory-banner{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);margin-bottom:var(--spacing-lg);background:linear-gradient(135deg,var(--color-primary-900) 0%,var(--color-primary-600) 100%);border-radius:var(--radius-lg);color:var(--color-white)}.pharmacist-reports-module .regulatory-banner-icon{font-size:var(--font-size-h1)}.pharmacist-reports-module .regulatory-banner-content h3{margin:0;font-size:var(--font-size-body);font-weight:var(--font-weight-semibold)}.pharmacist-reports-module .regulatory-banner-content p{margin:var(--spacing-xs) 0 0;font-size:.8125rem;opacity:.9}.pharmacist-reports-module .critical-alerts{margin-bottom:var(--spacing-lg)}.pharmacist-reports-module .critical-alerts h3{margin:0 0 var(--spacing-sm);font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-error);text-transform:uppercase;letter-spacing:.05em}.pharmacist-reports-module .alert-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md)}.pharmacist-reports-module .alert-card{display:flex;flex-direction:column;align-items:flex-start;padding:var(--spacing-md);background:var(--color-white);border:2px solid var(--color-neutral-200);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast)}.pharmacist-reports-module .alert-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.pharmacist-reports-module .alert-card.critical{border-color:var(--color-error);background:var(--color-error-light)}.pharmacist-reports-module .alert-card.warning{border-color:var(--color-warning);background:var(--color-warning-light)}.pharmacist-reports-module .alert-card.mandatory{border-color:var(--color-primary-900);background:var(--color-primary-100)}.pharmacist-reports-module .alert-count{font-size:var(--font-size-h1);font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.pharmacist-reports-module .alert-card.critical .alert-count{color:var(--color-error)}.pharmacist-reports-module .alert-card.warning .alert-count{color:var(--color-warning)}.pharmacist-reports-module .alert-card.mandatory .alert-count{color:var(--color-primary-900)}.pharmacist-reports-module .alert-label{margin-top:var(--spacing-xs);font-size:.8125rem;color:var(--color-neutral-500)}.pharmacist-reports-module .quick-stats{display:flex;flex-wrap:nowrap;gap:var(--spacing-md);margin-bottom:var(--spacing-xl);width:100%;box-sizing:border-box}.pharmacist-reports-module .stat-card{flex:1 1 0;min-width:0;max-width:none;background:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);box-sizing:border-box}.pharmacist-reports-module .stat-card .stat-value{display:block;font-size:1.75rem;font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.pharmacist-reports-module .stat-card .stat-label{display:block;margin-top:var(--spacing-xs);font-size:var(--font-size-caption);color:var(--color-neutral-500);text-transform:uppercase;letter-spacing:.02em}.pharmacist-reports-module .report-categories{display:flex;flex-direction:column;gap:var(--spacing-xl)}.pharmacist-reports-module .category h3{margin:0 0 var(--spacing-md);font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700)}.pharmacist-reports-module .category.regulatory h3{color:var(--color-primary-900)}.pharmacist-reports-module .category-note{margin:-.75rem 0 var(--spacing-md);font-size:.8125rem;color:var(--color-neutral-500);font-style:italic}.pharmacist-reports-module .regulatory-note{display:flex;align-items:flex-start;gap:var(--spacing-sm);margin:-.5rem 0 var(--spacing-md);padding:var(--spacing-sm);background:var(--color-primary-100);border:1px solid var(--color-primary-300);border-radius:var(--radius-md);font-size:.8125rem;color:var(--color-primary-600)}.pharmacist-reports-module .regulatory-note-icon{font-size:var(--font-size-body)}.pharmacist-reports-module .report-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-md)}.pharmacist-reports-module .report-card{display:flex;flex-direction:column;align-items:flex-start;padding:var(--spacing-lg);background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);text-align:left;cursor:pointer;transition:all var(--transition-fast)}.pharmacist-reports-module .report-card:hover{border-color:var(--color-primary-900);box-shadow:0 4px 12px #4a63b31a}.pharmacist-reports-module .report-card.mandatory{border-left:4px solid var(--color-primary-900)}.pharmacist-reports-module .report-card.mandatory:hover{border-color:var(--color-primary-900);box-shadow:0 4px 12px #4a63b326}.pharmacist-reports-module .report-card.critical{border-left:4px solid var(--color-error)}.pharmacist-reports-module .report-card.critical:hover{border-color:var(--color-error);box-shadow:0 4px 12px #dc26261a}.pharmacist-reports-module .report-card h4{margin:0;font-size:.9375rem;font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.pharmacist-reports-module .report-card p{margin:.375rem 0 0;font-size:.8125rem;color:var(--color-neutral-500)}.pharmacist-reports-module .card-badges{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-top:var(--spacing-sm)}.pharmacist-reports-module .export-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-success-light);border-radius:var(--radius-sm);font-size:var(--font-size-tiny);font-weight:var(--font-weight-medium);color:var(--color-success)}.pharmacist-reports-module .regulatory-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-primary-100);border-radius:var(--radius-sm);font-size:var(--font-size-tiny);font-weight:var(--font-weight-semibold);color:var(--color-primary-900)}.pharmacist-reports-module .critical-badge-sm{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-error-light);border-radius:var(--radius-sm);font-size:var(--font-size-tiny);font-weight:var(--font-weight-semibold);color:var(--color-error)}.pharmacist-reports-module .report-notice{padding:var(--spacing-md);margin-bottom:var(--spacing-md);border-radius:var(--radius-lg);font-size:var(--font-size-body)}.pharmacist-reports-module .report-notice.mandatory{background:var(--color-primary-100);border:1px solid var(--color-primary-300);color:var(--color-primary-900)}.pharmacist-reports-module .report-notice.mandatory strong{display:block;margin-bottom:var(--spacing-sm);color:var(--color-primary-900)}.pharmacist-reports-module .report-notice.critical{background:var(--color-error-light);border:1px solid var(--color-error-200);color:var(--color-error)}.pharmacist-reports-module .report-notice.warning{background:var(--color-warning-light);border:1px solid var(--color-warning-200);color:#92400e}.pharmacist-reports-module .report-info{padding:var(--spacing-md);margin-bottom:var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-lg);font-size:var(--font-size-body);color:var(--color-neutral-500)}.pharmacist-reports-module .report-filters{display:flex;flex-wrap:wrap;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);padding:var(--spacing-md);background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs)}.pharmacist-reports-module .filter-select,.pharmacist-reports-module .filter-input{padding:var(--spacing-sm) var(--spacing-sm);background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:var(--font-size-body);color:var(--color-neutral-700)}.pharmacist-reports-module .filter-select:focus,.pharmacist-reports-module .filter-input:focus{outline:none;border-color:var(--color-primary-900)}.pharmacist-reports-module .filter-input{min-width:150px}.pharmacist-reports-module .filter-input[type=date]{min-width:140px}.pharmacist-reports-module .filter-checkbox{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-body);color:var(--color-neutral-700);cursor:pointer}.pharmacist-reports-module .filter-checkbox input{width:16px;height:16px}.pharmacist-reports-module .filter-refresh{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-neutral-100);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:var(--font-size-body);color:var(--color-neutral-700);cursor:pointer;transition:all var(--transition-fast)}.pharmacist-reports-module .filter-refresh:hover{background:var(--color-neutral-200)}.pharmacist-reports-module .report-summary{display:flex;flex-wrap:wrap;gap:var(--spacing-lg);margin-bottom:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-lg)}.pharmacist-reports-module .summary-item{font-size:var(--font-size-body);color:var(--color-neutral-500)}.pharmacist-reports-module .summary-item strong{color:var(--color-neutral-900)}.pharmacist-reports-module .summary-item.critical,.pharmacist-reports-module .summary-item.critical strong{color:var(--color-error)}.pharmacist-reports-module .summary-item.warning,.pharmacist-reports-module .summary-item.warning strong{color:var(--color-warning)}.pharmacist-reports-module .summary-item.mandatory{color:var(--color-primary-600)}.pharmacist-reports-module .summary-item.mandatory strong{color:var(--color-primary-900)}.pharmacist-reports-module .report-table-container{background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.pharmacist-reports-module .report-table{width:100%;border-collapse:collapse;font-size:var(--font-size-body)}.pharmacist-reports-module .report-table th{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-neutral-50);border-bottom:1px solid var(--color-neutral-200);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700);text-align:left;white-space:nowrap}.pharmacist-reports-module .report-table td{padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--color-neutral-100);color:var(--color-neutral-700)}.pharmacist-reports-module .report-table tbody tr:hover{background:var(--color-neutral-50)}.pharmacist-reports-module .report-table tbody tr:last-child td{border-bottom:none}.pharmacist-reports-module .empty-row{text-align:center!important;color:var(--color-neutral-500)!important;padding:var(--spacing-xl) var(--spacing-md)!important}.pharmacist-reports-module .highlight-red{background:var(--color-error-light)!important}.pharmacist-reports-module .highlight-orange{background:var(--color-warning-light, #FEF3C7)!important}.pharmacist-reports-module .highlight-purple,.pharmacist-reports-module .controlled-row{background:var(--color-primary-100)!important}.pharmacist-reports-module .expired-row{background:var(--color-error-light)!important}.pharmacist-reports-module .low-stock-row{background:var(--color-warning-light)!important}.pharmacist-reports-module .recall-row{background:var(--color-error-light)!important}.pharmacist-reports-module .destruction-row{background:var(--color-primary-100)!important}.pharmacist-reports-module .queue-number-cell{font-weight:var(--font-weight-bold);color:var(--color-primary-900)}.pharmacist-reports-module .drug-name-cell{font-weight:var(--font-weight-medium)}.pharmacist-reports-module .drug-name-cell.controlled{color:var(--color-primary-900)}.pharmacist-reports-module .lot-number-cell{font-family:var(--font-mono);font-size:.8125rem;color:var(--color-neutral-700)}.pharmacist-reports-module .batch-number-cell{font-family:var(--font-mono);font-size:.8125rem;font-weight:var(--font-weight-medium)}.pharmacist-reports-module .balance-cell{font-weight:var(--font-weight-semibold)}.pharmacist-reports-module .balance-cell.critical{color:var(--color-error)}.pharmacist-reports-module .balance-cell.warning{color:var(--color-warning)}.pharmacist-reports-module .balance-cell.ok{color:var(--color-success)}.pharmacist-reports-module .quantity-in{color:var(--color-success);font-weight:var(--font-weight-medium)}.pharmacist-reports-module .quantity-out{color:var(--color-error);font-weight:var(--font-weight-medium)}.pharmacist-reports-module .quantity-destroyed{color:var(--color-primary-900);font-weight:var(--font-weight-medium)}.pharmacist-reports-module .expiry-cell{font-weight:var(--font-weight-medium)}.pharmacist-reports-module .expiry-cell.expired{color:var(--color-error)}.pharmacist-reports-module .expiry-cell.expiring-soon{color:var(--color-warning)}.pharmacist-reports-module .expiry-days{display:inline-block;margin-left:var(--spacing-sm);padding:.125rem .375rem;background:var(--color-error-light);border-radius:3px;font-size:var(--font-size-caption);color:var(--color-error)}.pharmacist-reports-module .reason-cell{max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pharmacist-reports-module .witness-cell{font-size:.8125rem;color:var(--color-neutral-700)}.pharmacist-reports-module .registration-cell{font-family:var(--font-mono);font-size:.8125rem}.pharmacist-reports-module .hash-cell code{padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-neutral-100);border-radius:3px;font-size:var(--font-size-caption);color:var(--color-neutral-500)}.pharmacist-reports-module .variance-cell{font-weight:var(--font-weight-semibold)}.pharmacist-reports-module .variance-cell.positive{color:var(--color-success)}.pharmacist-reports-module .variance-cell.negative{color:var(--color-error)}.pharmacist-reports-module .variance-cell.zero{color:var(--color-neutral-500)}.pharmacist-reports-module .status-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);text-transform:capitalize}.pharmacist-reports-module .status-pending{background:var(--color-warning-light);color:var(--color-warning)}.pharmacist-reports-module .status-dispensed{background:var(--color-success-light);color:var(--color-success)}.pharmacist-reports-module .status-partially-dispensed{background:var(--color-primary-100);color:var(--color-primary-900)}.pharmacist-reports-module .status-cancelled{background:var(--color-error-light);color:var(--color-error)}.pharmacist-reports-module .status-voided{background:var(--color-neutral-100);color:var(--color-neutral-500)}.pharmacist-reports-module .status-returned{background:var(--color-primary-100);color:var(--color-primary-900)}.pharmacist-reports-module .drug-class-badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold)}.pharmacist-reports-module .drug-class-a{background:var(--color-error-light);color:var(--color-error)}.pharmacist-reports-module .drug-class-b{background:var(--color-warning-light, #FEF3C7);color:var(--color-warning)}.pharmacist-reports-module .drug-class-c{background:var(--color-warning-light);color:var(--color-warning)}.pharmacist-reports-module .drug-class-poison{background:var(--color-primary-100);color:var(--color-primary-900)}.pharmacist-reports-module .movement-badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}.pharmacist-reports-module .movement-receipt{background:var(--color-success-light);color:var(--color-success)}.pharmacist-reports-module .movement-dispensed{background:var(--color-info-light, #EFF6FF);color:var(--color-primary-900)}.pharmacist-reports-module .movement-destroyed{background:var(--color-primary-100);color:var(--color-primary-900)}.pharmacist-reports-module .movement-adjustment{background:var(--color-warning-light);color:var(--color-warning)}.pharmacist-reports-module .movement-transfer{background:var(--color-neutral-100);color:var(--color-neutral-700)}.pharmacist-reports-module .recall-badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold)}.pharmacist-reports-module .recall-active{background:var(--color-error-light);color:var(--color-error)}.pharmacist-reports-module .recall-quarantined{background:var(--color-warning-light, #FEF3C7);color:var(--color-warning)}.pharmacist-reports-module .recall-returned{background:var(--color-success-light);color:var(--color-success)}.pharmacist-reports-module .recall-destroyed{background:var(--color-primary-100);color:var(--color-primary-900)}.pharmacist-reports-module .recon-badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}.pharmacist-reports-module .recon-balanced{background:var(--color-success-light);color:var(--color-success)}.pharmacist-reports-module .recon-variance{background:var(--color-error-light);color:var(--color-error)}.pharmacist-reports-module .recon-pending{background:var(--color-warning-light);color:var(--color-warning)}.pharmacist-reports-module .verification-badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}.pharmacist-reports-module .verified{background:var(--color-success-light);color:var(--color-success)}.pharmacist-reports-module .not-verified{background:var(--color-error-light);color:var(--color-error)}.pharmacist-reports-module .notify-badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}.pharmacist-reports-module .notify-pending{background:var(--color-error-light);color:var(--color-error)}.pharmacist-reports-module .notify-contacted{background:var(--color-warning-light);color:var(--color-warning)}.pharmacist-reports-module .notify-resolved{background:var(--color-success-light);color:var(--color-success)}.pharmacist-reports-module .substitution-badge{padding:.125rem .375rem;background:var(--color-warning-light);border-radius:3px;font-size:var(--font-size-tiny);color:var(--color-warning)}.pharmacist-reports-module .controlled-drug-header{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md);padding:var(--spacing-md);background:linear-gradient(135deg,var(--color-primary-900) 0%,var(--color-primary-600) 100%);border-radius:var(--radius-lg);color:var(--color-white)}.pharmacist-reports-module .controlled-drug-header h3{margin:0;font-size:var(--font-size-body)}.pharmacist-reports-module .controlled-drug-header p{margin:var(--spacing-xs) 0 0;font-size:.8125rem;opacity:.9}.pharmacist-reports-module .register-entry{display:flex;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-primary-100);border:1px solid var(--color-primary-300);border-radius:var(--radius-lg);margin-bottom:var(--spacing-md)}.pharmacist-reports-module .register-entry-label{font-weight:var(--font-weight-semibold);color:var(--color-primary-900);min-width:100px}.pharmacist-reports-module .register-entry-value{color:var(--color-neutral-700)}.pharmacist-reports-module .destruction-witness-section{margin-top:var(--spacing-md);padding:var(--spacing-md);background:var(--color-primary-100);border:1px solid var(--color-primary-300);border-radius:var(--radius-lg)}.pharmacist-reports-module .destruction-witness-section h4{margin:0 0 var(--spacing-sm);font-size:var(--font-size-body);color:var(--color-primary-600)}.pharmacist-reports-module .running-balance{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem var(--spacing-sm);background:var(--color-neutral-50);border-radius:var(--radius-sm);font-size:var(--font-size-body)}.pharmacist-reports-module .running-balance-label{color:var(--color-neutral-500)}.pharmacist-reports-module .running-balance-value{font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.pharmacist-reports-module .aggregate-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.pharmacist-reports-module .aggregate-stats .stat-card{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-md);box-shadow:var(--shadow-sm);text-align:center}.pharmacist-reports-module .aggregate-stats .stat-card.controlled{border-top:3px solid var(--color-primary-900)}.pharmacist-reports-module .aggregate-stats .stat-card.expiring{border-top:3px solid var(--color-warning)}.pharmacist-reports-module .aggregate-stats .stat-card.low-stock{border-top:3px solid var(--color-error)}.pharmacist-reports-module .aggregate-stats .stat-card.balanced{border-top:3px solid var(--color-success)}.pharmacist-reports-module .aggregate-stats .stat-value{display:block;font-size:var(--font-size-h2);font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.pharmacist-reports-module .aggregate-stats .stat-label{display:block;margin-top:var(--spacing-xs);font-size:var(--font-size-tiny);color:var(--color-neutral-500);text-transform:uppercase}.pharmacist-reports-module .actions-cell{display:flex;flex-wrap:wrap;gap:.375rem}.pharmacist-reports-module .action-btn{padding:var(--spacing-xs) var(--spacing-sm);border:none;border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);cursor:pointer;transition:opacity var(--transition-fast);white-space:nowrap}.pharmacist-reports-module .action-btn:hover{opacity:.85}.pharmacist-reports-module .action-btn.start{background:var(--color-success);color:var(--color-white)}.pharmacist-reports-module .action-btn.start:hover{background:var(--color-success-hover);opacity:1}.pharmacist-reports-module .action-btn.dispense{background:var(--color-success-light);color:var(--color-success)}.pharmacist-reports-module .action-btn.view{background:var(--color-info-light, #EFF6FF);color:var(--color-primary-900)}.pharmacist-reports-module .action-btn.void{background:var(--color-error-light);color:var(--color-error)}.pharmacist-reports-module .action-btn.return{background:var(--color-primary-100);color:var(--color-primary-900)}.pharmacist-reports-module .action-btn.export{background:var(--color-neutral-100);color:var(--color-neutral-700)}.pharmacist-reports-module .action-btn.quarantine{background:var(--color-warning-light);color:var(--color-warning)}.pharmacist-reports-module .action-btn.notify{background:var(--color-info-light, #EFF6FF);color:var(--color-primary-900)}.pharmacist-reports-module .action-btn.resolve{background:var(--color-success-light);color:var(--color-success)}.pharmacist-reports-module .action-btn.reconcile,.pharmacist-reports-module .action-btn.reorder{background:var(--color-primary-100);color:var(--color-primary-900)}.pharmacist-reports-module .action-btn.adjust{background:var(--color-warning-light);color:var(--color-warning)}.pharmacist-reports-module .action-btn.print{background:var(--color-neutral-100);color:var(--color-neutral-700)}.pharmacist-reports-module .action-btn.destroy{background:var(--color-primary-100);color:var(--color-primary-900)}.pharmacist-reports-module .totals-cards{display:flex;flex-wrap:nowrap;gap:var(--spacing-md);width:100%;box-sizing:border-box;margin-bottom:var(--spacing-md)}.pharmacist-reports-module .total-card{flex:1 1 0;min-width:0;max-width:none;background:var(--color-white);border-radius:10px;padding:1rem;text-align:center;box-shadow:0 1px 3px #0000001a;border-left:4px solid var(--color-primary-900);transition:all .15s ease}.pharmacist-reports-module .total-card:first-child{border-left-color:var(--color-success)}.pharmacist-reports-module .total-card:nth-child(2){border-left-color:var(--color-primary-900)}.pharmacist-reports-module .total-card:nth-child(3){border-left-color:var(--color-warning)}.pharmacist-reports-module .total-card.pending-total{border-left-color:var(--color-warning)}.pharmacist-reports-module .total-card.urgent-total{border-left-color:var(--color-error)}.pharmacist-reports-module .total-card.urgent-total .total-value{color:var(--color-error)}.pharmacist-reports-module .total-value{display:block;font-size:var(--font-size-h2);font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.pharmacist-reports-module .total-label{font-size:var(--font-size-caption);color:var(--color-neutral-500);text-transform:uppercase;letter-spacing:.05em}.pharmacist-reports-module .queue-cell{font-weight:var(--font-weight-bold);font-family:monospace;color:var(--color-primary-900);letter-spacing:.05em}.pharmacist-reports-module .priority-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.05em}.pharmacist-reports-module .priority-badge.priority-urgent{background:var(--color-error-light);color:var(--color-error)}.pharmacist-reports-module .priority-badge.priority-normal{background:var(--color-success-light);color:var(--color-success)}.pharmacist-reports-module .urgent-row{background:var(--color-error-light)!important}.pharmacist-reports-module .urgent-row:hover{background:var(--color-error-200, #fecaca)!important}.pharmacist-reports-module .summary-item.urgent,.pharmacist-reports-module .summary-item.urgent strong{color:var(--color-error)}.pharmacist-reports-module .batch-cell{font-family:var(--font-mono, monospace);font-size:.8125rem;color:var(--color-neutral-700)}.pharmacist-reports-module .ref-cell{font-family:var(--font-mono, monospace);font-size:.8125rem;color:var(--color-neutral-500)}.pharmacist-reports-module .qty-cell{font-family:var(--font-mono, monospace);font-weight:var(--font-weight-medium);text-align:center}.pharmacist-reports-module .void-return-report .reason-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}.pharmacist-reports-module .reason-badge.dispensing-error{background:var(--color-error-light);color:var(--color-error)}.pharmacist-reports-module .reason-badge.patient-return{background:var(--color-success-light);color:var(--color-success)}.pharmacist-reports-module .reason-badge.expired{background:var(--color-warning-light);color:var(--color-warning)}.pharmacist-reports-module .reason-badge.damaged{background:var(--color-primary-100);color:var(--color-primary-900)}.pharmacist-reports-module .reason-badge.other{background:var(--color-neutral-100);color:var(--color-neutral-500)}.pharmacist-reports-module .reason-details{display:block;font-size:var(--font-size-caption);color:var(--color-neutral-500);margin-top:var(--spacing-xs)}.pharmacist-reports-module .status-badge.restored{background:var(--color-success-light);color:var(--color-success)}.pharmacist-reports-module .status-badge.not-restored{background:var(--color-error-light);color:var(--color-error)}.pharmacist-reports-module .variance-summary{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.pharmacist-reports-module .variance-summary .summary-card{flex:1 1 0;min-width:0;padding:var(--spacing-md);background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);text-align:center;box-sizing:border-box}.pharmacist-reports-module .variance-summary .summary-card.negative{border-color:var(--color-error-200);background:var(--color-error-light)}.pharmacist-reports-module .variance-summary .summary-card.positive{border-color:var(--color-success-200);background:var(--color-success-light)}.pharmacist-reports-module .variance-summary .summary-card.warning{border-color:var(--color-warning-200);background:var(--color-warning-light)}.pharmacist-reports-module .variance-summary .summary-label{display:block;font-size:var(--font-size-caption);color:var(--color-neutral-500);margin-bottom:var(--spacing-xs)}.pharmacist-reports-module .variance-summary .summary-value{font-size:var(--font-size-h2);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.pharmacist-reports-module .variance-positive{color:var(--color-success)!important}.pharmacist-reports-module .variance-negative{color:var(--color-error)!important}.pharmacist-reports-module .variance-zero{color:var(--color-neutral-500)!important}.pharmacist-reports-module .pending-row{background:var(--color-warning-light)!important}.pharmacist-reports-module .status-badge.pending{background:var(--color-warning-light);color:var(--color-warning)}.pharmacist-reports-module .status-badge.approved{background:var(--color-success-light);color:var(--color-success)}.pharmacist-reports-module .status-badge.rejected{background:var(--color-error-light);color:var(--color-error)}.pharmacist-reports-module .report-loading,.pharmacist-reports-module .report-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-2xl);background:var(--color-white);border-radius:var(--radius-lg);text-align:center;color:var(--color-neutral-500)}.pharmacist-reports-module .report-error{color:var(--color-error)}.pharmacist-reports-module .report-error button{margin-top:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-primary-900);color:var(--color-white);border:none;border-radius:var(--radius-md);cursor:pointer}@media print{.pharmacist-reports-module{display:block;background:var(--color-white)}.pharmacist-reports-module .reports-sidebar,.pharmacist-reports-module .header-actions,.pharmacist-reports-module .report-filters,.pharmacist-reports-module .action-btn{display:none}.pharmacist-reports-module .regulatory-banner{background:var(--color-primary-100)!important;color:var(--color-primary-900)!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.pharmacist-reports-module .report-table{font-size:10pt}.pharmacist-reports-module .report-table th,.pharmacist-reports-module .report-table td{padding:var(--spacing-sm)}.pharmacist-reports-module .status-badge,.pharmacist-reports-module .drug-class-badge,.pharmacist-reports-module .movement-badge{-webkit-print-color-adjust:exact;print-color-adjust:exact}}@media(max-width:1024px){.pharmacist-reports-module{grid-template-columns:240px 1fr}}@media(max-width:768px){.pharmacist-reports-module{grid-template-columns:1fr}.pharmacist-reports-module .reports-sidebar{display:none}.pharmacist-reports-module .report-filters{flex-direction:column;align-items:stretch}.pharmacist-reports-module .filter-select,.pharmacist-reports-module .filter-input{width:100%}.pharmacist-reports-module .report-table-container{overflow-x:auto}.pharmacist-reports-module .report-table{min-width:900px}.pharmacist-reports-module .actions-cell{flex-direction:column}.pharmacist-reports-module .aggregate-stats{grid-template-columns:repeat(2,1fr)}.pharmacist-reports-module .regulatory-banner{flex-direction:column;text-align:center}}.finance-reports-module{padding:var(--spacing-lg);background:var(--color-neutral-50);min-height:100%;width:100%;box-sizing:border-box}.finance-reports-module .module-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:2px solid var(--color-neutral-200)}.finance-reports-module .module-header h2{margin:0;font-size:var(--font-size-h2);color:var(--color-neutral-900)}.finance-reports-module .header-actions{display:flex;gap:var(--spacing-sm)}.finance-reports-module .export-btn,.finance-reports-module .refresh-btn{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);background:var(--color-white);cursor:pointer;font-size:var(--font-size-body);transition:all var(--transition-normal)}.finance-reports-module .export-btn:hover,.finance-reports-module .refresh-btn:hover{background:var(--color-neutral-100)}.finance-reports-module .export-btn:disabled,.finance-reports-module .refresh-btn:disabled{opacity:.5;cursor:not-allowed}.finance-reports-module .error-message{background:var(--color-error-light);color:#721c24;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);display:flex;justify-content:space-between;align-items:center}.finance-reports-module .error-message button{background:none;border:none;color:#721c24;cursor:pointer;text-decoration:underline}.finance-reports-selector{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);box-shadow:var(--shadow-sm)}.finance-reports-selector .category-section{margin-bottom:var(--spacing-md)}.finance-reports-selector .category-section:last-child{margin-bottom:0}.finance-reports-selector .category-section h4{font-size:var(--font-size-caption);text-transform:uppercase;color:var(--color-neutral-500);margin:0 0 var(--spacing-sm) 0;font-weight:var(--font-weight-semibold)}.finance-reports-selector .report-buttons{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.finance-reports-selector .report-button{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) 14px;border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);background:var(--color-white);cursor:pointer;transition:all var(--transition-normal);font-size:13px}.finance-reports-selector .report-button:hover{border-color:var(--color-primary-900);background:var(--color-neutral-50)}.finance-reports-selector .report-button.active{border-color:var(--color-primary-900);background:var(--color-primary-100);color:var(--color-primary-900)}.finance-reports-selector .report-button.critical{border-color:var(--color-error)}.finance-reports-selector .report-button.critical.active{background:var(--color-error-light);color:var(--color-error)}.finance-reports-selector .report-icon{font-size:16px}.finance-reports-selector .critical-badge{background:var(--color-error);color:var(--color-white);padding:2px 6px;border-radius:var(--radius-sm);font-size:var(--font-size-tiny);font-weight:var(--font-weight-semibold)}.finance-reports-module .date-filters{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-md) var(--spacing-lg);margin-bottom:var(--spacing-lg);display:flex;align-items:center;gap:var(--spacing-lg);box-shadow:var(--shadow-sm)}.finance-reports-module .preset-buttons{display:flex;gap:var(--spacing-sm)}.finance-reports-module .preset-button{padding:6px var(--spacing-sm);border:1px solid var(--color-neutral-200);border-radius:var(--radius-sm);background:var(--color-white);cursor:pointer;font-size:13px;transition:all var(--transition-normal)}.finance-reports-module .preset-button:hover{background:var(--color-neutral-50)}.finance-reports-module .preset-button.active{background:var(--color-primary-900);color:var(--color-white);border-color:var(--color-primary-900)}.finance-reports-module .custom-dates{display:flex;gap:var(--spacing-md);margin-left:auto}.finance-reports-module .custom-dates label{display:flex;align-items:center;gap:var(--spacing-sm);font-size:13px;color:var(--color-neutral-700)}.finance-reports-module .custom-dates input{padding:6px var(--spacing-sm);border:1px solid var(--color-neutral-200);border-radius:var(--radius-sm);font-size:13px}.finance-reports-module .loading-spinner{text-align:center;padding:60px;color:var(--color-neutral-500);font-size:16px}.finance-reports-module .report-content{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm)}.finance-reports-module .compliance-warning{display:flex;align-items:flex-start;gap:var(--spacing-sm);background:var(--color-warning-light);border:1px solid var(--color-warning);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-lg)}.finance-reports-module .compliance-warning .warning-icon{font-size:var(--font-size-h2)}.finance-reports-module .compliance-warning .warning-text strong{display:block;color:#856404;margin-bottom:var(--spacing-xs)}.finance-reports-module .compliance-warning .warning-text p{margin:0;font-size:13px;color:#856404}.finance-reports-module .alerts-section{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.finance-reports-module .alert-item{flex:1;display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);border-radius:var(--radius-md);border-left:4px solid}.finance-reports-module .alert-item.critical{background:var(--color-error-light);border-left-color:var(--color-error)}.finance-reports-module .alert-item.warning{background:var(--color-warning-light);border-left-color:var(--color-warning)}.finance-reports-module .alert-count{font-size:28px;font-weight:var(--font-weight-bold);min-width:50px}.finance-reports-module .alert-item.critical .alert-count{color:var(--color-error)}.finance-reports-module .alert-item.warning .alert-count{color:#856404}.finance-reports-module .alert-content strong{display:block;margin-bottom:var(--spacing-xs)}.finance-reports-module .alert-content p{margin:0;font-size:13px;color:var(--color-neutral-500)}.finance-reports-module .summary-cards{display:flex;flex-wrap:nowrap;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);width:100%;box-sizing:border-box}.finance-reports-module .summary-card{flex:1 1 0;min-width:0;max-width:none;background:var(--color-neutral-50);border-radius:var(--radius-lg);padding:var(--spacing-md);text-align:center;box-sizing:border-box}.finance-reports-module .summary-card .card-value{display:block;font-size:28px;font-weight:var(--font-weight-bold);color:var(--color-neutral-900);margin-bottom:var(--spacing-xs)}.finance-reports-module .summary-card .card-label{font-size:var(--font-size-caption);color:var(--color-neutral-500);text-transform:uppercase}.finance-reports-module .summary-card.success{background:var(--color-success-light)}.finance-reports-module .summary-card.success .card-value{color:#0f5132}.finance-reports-module .summary-card.warning{background:var(--color-warning-light)}.finance-reports-module .summary-card.warning .card-value{color:#856404}.finance-reports-module .summary-card.error{background:var(--color-error-light)}.finance-reports-module .summary-card.error .card-value{color:#842029}.finance-reports-module .summary-card.info{background:var(--color-info-light)}.finance-reports-module .summary-card.info .card-value{color:#055160}.finance-reports-module .filter-section{background:var(--color-neutral-50);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-lg)}.finance-reports-module .filter-section label{font-weight:var(--font-weight-semibold);margin-right:var(--spacing-md)}.finance-reports-module .status-filters{display:inline-flex;gap:var(--spacing-md)}.finance-reports-module .checkbox-label{display:flex;align-items:center;gap:5px;font-weight:400;cursor:pointer}.finance-reports-module .data-table-container{overflow-x:auto}.finance-reports-module .data-table{width:100%;border-collapse:collapse;font-size:13px}.finance-reports-module .data-table th,.finance-reports-module .data-table td{padding:var(--spacing-sm);text-align:left;border-bottom:1px solid var(--color-neutral-200)}.finance-reports-module .data-table th{background:var(--color-neutral-50);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700);white-space:nowrap}.finance-reports-module .data-table tbody tr:hover{background:var(--color-neutral-50)}.finance-reports-module .uuid-cell{font-family:var(--font-mono);font-size:11px;color:var(--color-neutral-500)}.finance-reports-module .total-cell{font-weight:var(--font-weight-semibold)}.finance-reports-module .status-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:11px;font-weight:var(--font-weight-semibold);text-transform:uppercase}.finance-reports-module .status-badge.success,.finance-reports-module .status-badge.approved{background:var(--color-success-light);color:#0f5132}.finance-reports-module .status-badge.info,.finance-reports-module .status-badge.submitted{background:var(--color-info-light);color:#055160}.finance-reports-module .status-badge.warning,.finance-reports-module .status-badge.draft{background:var(--color-warning-light);color:#856404}.finance-reports-module .status-badge.error,.finance-reports-module .status-badge.rejected{background:var(--color-error-light);color:#842029}.finance-reports-module .status-badge.neutral,.finance-reports-module .status-badge.cancelled{background:var(--color-neutral-100);color:var(--color-neutral-500)}.finance-reports-module .status-badge.confirmed{background:var(--color-success-light);color:#0f5132}.finance-reports-module .status-badge.locked{background:var(--color-neutral-900);color:var(--color-white)}.finance-reports-module .action-btn{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-neutral-200);border-radius:var(--radius-sm);background:var(--color-white);cursor:pointer;font-size:11px;margin-right:5px;transition:all var(--transition-normal)}.finance-reports-module .action-btn:hover{background:var(--color-neutral-100)}.finance-reports-module .action-btn.submit{border-color:var(--color-primary-900);color:var(--color-primary-900)}.finance-reports-module .action-btn.retry{border-color:var(--color-warning);color:#856404}.finance-reports-module .action-btn.view{border-color:var(--color-success);color:var(--color-success)}.finance-reports-module .daily-closing .closing-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-neutral-200)}.finance-reports-module .daily-closing .closing-header h3{margin:0}.finance-reports-module .closing-sections{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.finance-reports-module .closing-section{background:var(--color-neutral-50);border-radius:var(--radius-lg);padding:var(--spacing-md)}.finance-reports-module .closing-section h4{margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-body);color:var(--color-neutral-700)}.finance-reports-module .section-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm)}.finance-reports-module .grid-item{display:flex;flex-direction:column}.finance-reports-module .grid-item .label{font-size:var(--font-size-caption);color:var(--color-neutral-500);margin-bottom:var(--spacing-xs)}.finance-reports-module .grid-item .value{font-size:16px;font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.finance-reports-module .grid-item .value.positive{color:var(--color-success)}.finance-reports-module .grid-item .value.negative{color:var(--color-error)}.finance-reports-module .grid-item .value.warning{color:#856404}.finance-reports-module .grid-item.highlight{background:var(--color-white);padding:var(--spacing-sm);border-radius:var(--radius-md);grid-column:span 2}.finance-reports-module .grid-item.variance-warning{background:var(--color-error-light)}.finance-reports-module .cash-count-input{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-neutral-200)}.finance-reports-module .cash-count-input label{display:flex;flex-direction:column;gap:var(--spacing-sm)}.finance-reports-module .cash-count-input input{padding:var(--spacing-sm);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:16px}.finance-reports-module .variance-notes-section{margin-bottom:var(--spacing-lg)}.finance-reports-module .variance-warning-message{background:var(--color-error-light);color:#842029;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-md);display:flex;align-items:center;gap:var(--spacing-sm)}.finance-reports-module .variance-notes-section label{display:flex;flex-direction:column;gap:var(--spacing-sm)}.finance-reports-module .variance-notes-section textarea{padding:var(--spacing-sm);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-family:inherit;font-size:var(--font-size-body);resize:vertical}.finance-reports-module .closing-actions{display:flex;justify-content:flex-end}.finance-reports-module .primary-btn{padding:var(--spacing-sm) var(--spacing-lg);background:var(--color-primary-900);color:var(--color-white);border:none;border-radius:var(--radius-md);font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);cursor:pointer;transition:background var(--transition-normal)}.finance-reports-module .primary-btn:hover{background:var(--color-primary-600)}.finance-reports-module .primary-btn:disabled{opacity:.5;cursor:not-allowed}.finance-reports-module .primary-btn.confirm{background:var(--color-success)}.finance-reports-module .primary-btn.confirm:hover{background:var(--color-success-hover)}.finance-reports-module .confirmation-info{background:var(--color-success-light);border-radius:var(--radius-md);padding:var(--spacing-md);margin-top:var(--spacing-lg)}.finance-reports-module .confirmation-info p{margin:0 0 var(--spacing-sm) 0}.finance-reports-module .confirmation-info p:last-child{margin-bottom:0}.finance-reports-module .prepare-closing{text-align:center;padding:40px}.finance-reports-module .prepare-closing p{margin-bottom:var(--spacing-lg);color:var(--color-neutral-500)}.finance-reports-module .payment-breakdown .summary-row{margin-bottom:var(--spacing-lg)}.finance-reports-module .total-card{background:linear-gradient(135deg,#667eea,#764ba2);color:var(--color-white);padding:25px;border-radius:var(--radius-xl);text-align:center}.finance-reports-module .total-card .label{display:block;font-size:var(--font-size-body);opacity:.9;margin-bottom:var(--spacing-sm)}.finance-reports-module .total-card .value{display:block;font-size:36px;font-weight:var(--font-weight-bold)}.finance-reports-module .total-card .sub-label{display:block;font-size:13px;opacity:.8;margin-top:5px}.finance-reports-module .payment-methods-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-md);margin-bottom:25px}.finance-reports-module .method-card{background:var(--color-neutral-50);border-radius:var(--radius-lg);padding:var(--spacing-md)}.finance-reports-module .method-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.finance-reports-module .method-icon{font-size:20px}.finance-reports-module .method-name{font-weight:var(--font-weight-semibold)}.finance-reports-module .method-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.finance-reports-module .method-stats .stat{text-align:center}.finance-reports-module .method-stats .stat-value{display:block;font-size:16px;font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.finance-reports-module .method-stats .stat-label{font-size:11px;color:var(--color-neutral-500)}.finance-reports-module .method-bar{height:6px;background:var(--color-neutral-100);border-radius:3px;overflow:hidden}.finance-reports-module .method-bar .bar-fill{height:100%;background:linear-gradient(90deg,var(--color-primary-900),#6610f2);border-radius:3px}.finance-reports-module .trend-section h4{margin-bottom:var(--spacing-md)}.finance-reports-module .sst-report .sst-header{display:flex;justify-content:space-between;padding:var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-lg);margin-bottom:var(--spacing-lg)}.finance-reports-module .sst-header .sst-info,.finance-reports-module .sst-header .period-info{text-align:center}.finance-reports-module .sst-header .label{display:block;font-size:var(--font-size-caption);color:var(--color-neutral-500);margin-bottom:var(--spacing-xs)}.finance-reports-module .sst-header .value{font-size:16px;font-weight:var(--font-weight-semibold)}.finance-reports-module .sst-sections{display:flex;flex-direction:column;gap:var(--spacing-lg)}.finance-reports-module .sst-section{background:var(--color-neutral-50);border-radius:var(--radius-lg);padding:var(--spacing-lg)}.finance-reports-module .sst-section h4{margin:0 0 5px}.finance-reports-module .sst-section .legal-ref{font-size:var(--font-size-caption);color:var(--color-neutral-500);margin:0 0 var(--spacing-md) 0}.finance-reports-module .sst-section.exempt{border-left:4px solid var(--color-success)}.finance-reports-module .sst-section.taxable{border-left:4px solid var(--color-warning)}.finance-reports-module .sst-section.tourism{border-left:4px solid #0dcaf0}.finance-reports-module .sst-section.summary{background:var(--color-white);border:2px solid var(--color-neutral-200)}.finance-reports-module .sst-section .grid-item.highlight.error{background:var(--color-error-light)}.finance-reports-module .sst-section .grid-item .value.success{color:var(--color-success)}.finance-reports-module .panel-aging .aging-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.finance-reports-module .aging-header h3{margin:0}.finance-reports-module .aging-header .as-of{color:var(--color-neutral-500);font-size:var(--font-size-body)}.finance-reports-module .aging-alerts{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.finance-reports-module .alert-badge{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);font-size:13px;font-weight:var(--font-weight-medium)}.finance-reports-module .alert-badge.critical{background:var(--color-error-light);color:#842029}.finance-reports-module .alert-badge.warning{background:var(--color-warning-light);color:#856404}.finance-reports-module .aging-summary{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.finance-reports-module .aging-bucket{padding:var(--spacing-md);border-radius:var(--radius-lg);text-align:center;background:var(--color-neutral-50)}.finance-reports-module .aging-bucket.success{background:var(--color-success-light)}.finance-reports-module .aging-bucket.warning{background:var(--color-warning-light)}.finance-reports-module .aging-bucket.error{background:var(--color-error-light)}.finance-reports-module .aging-bucket.critical{background:#842029;color:var(--color-white)}.finance-reports-module .aging-bucket.total{background:var(--color-neutral-900);color:var(--color-white)}.finance-reports-module .bucket-label{display:block;font-size:11px;margin-bottom:5px}.finance-reports-module .bucket-value{display:block;font-size:20px;font-weight:var(--font-weight-bold)}.finance-reports-module .aging-table td.warning{background:var(--color-warning-light)}.finance-reports-module .aging-table td.error{background:var(--color-error-light)}.finance-reports-module .aging-table td.critical{background:#842029;color:var(--color-white)}.finance-reports-module .aging-table .critical-row{background:#fff5f5}.finance-reports-module .aging-table tfoot{background:var(--color-neutral-50);font-weight:var(--font-weight-semibold)}.finance-reports-module .revenue-summary .revenue-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.finance-reports-module .revenue-card{padding:var(--spacing-lg);border-radius:var(--radius-lg);text-align:center}.finance-reports-module .revenue-card.gross{background:var(--color-info-light)}.finance-reports-module .revenue-card.deductions{background:var(--color-error-light)}.finance-reports-module .revenue-card.net{background:var(--color-success-light)}.finance-reports-module .revenue-card .card-label{display:block;font-size:var(--font-size-caption);color:var(--color-neutral-500);margin-bottom:5px}.finance-reports-module .revenue-card .card-value{display:block;font-size:var(--font-size-h2);font-weight:var(--font-weight-bold)}.finance-reports-module .revenue-card .card-value.negative{color:var(--color-error)}.finance-reports-module .revenue-split{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md);margin-bottom:25px}.finance-reports-module .split-item{background:var(--color-neutral-50);border-radius:var(--radius-lg);padding:var(--spacing-md);display:flex;justify-content:space-between;align-items:center}.finance-reports-module .split-label{font-weight:var(--font-weight-medium)}.finance-reports-module .split-value{font-size:var(--font-size-h4);font-weight:var(--font-weight-semibold)}.finance-reports-module .split-percent{background:var(--color-neutral-100);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-caption)}.finance-reports-module .breakdown-section h4{margin-bottom:var(--spacing-md)}.finance-reports-module .breakdown-bars{display:flex;flex-direction:column;gap:var(--spacing-sm)}.finance-reports-module .breakdown-item{display:grid;grid-template-columns:150px 1fr 80px 60px;align-items:center;gap:var(--spacing-md)}.finance-reports-module .breakdown-name{font-weight:var(--font-weight-medium)}.finance-reports-module .breakdown-bar{height:24px;background:var(--color-neutral-100);border-radius:var(--radius-sm);overflow:hidden}.finance-reports-module .breakdown-bar .bar-fill{height:100%;background:linear-gradient(90deg,var(--color-success),#20c997)}.finance-reports-module .breakdown-amount{font-weight:var(--font-weight-semibold);text-align:right}.finance-reports-module .breakdown-percent{color:var(--color-neutral-500);font-size:13px}.finance-reports-module .outstanding-collections .collections-summary{display:flex;flex-wrap:nowrap;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);width:100%;box-sizing:border-box}.finance-reports-module .collections-summary .summary-card{flex:1 1 0;min-width:0;max-width:none;padding:var(--spacing-lg);box-sizing:border-box}.finance-reports-module .collections-summary .summary-card.total{flex:2 1 0;background:linear-gradient(135deg,#667eea,#764ba2);color:var(--color-white)}.finance-reports-module .collections-summary .summary-card.total .card-value,.finance-reports-module .collections-summary .summary-card.total .card-label,.finance-reports-module .collections-summary .summary-card.total .card-sub{color:var(--color-white)}.finance-reports-module .collections-summary .summary-card.current{background:var(--color-success-light)}.finance-reports-module .collections-summary .summary-card.overdue{background:var(--color-warning-light)}.finance-reports-module .collections-summary .summary-card.serious{background:var(--color-error-light)}.finance-reports-module .collections-summary .summary-card.bad-debt{background:#842029;color:var(--color-white)}.finance-reports-module .collections-summary .summary-card.bad-debt .card-value,.finance-reports-module .collections-summary .summary-card.bad-debt .card-label{color:var(--color-white)}.finance-reports-module .collections-summary .card-sub{display:block;font-size:var(--font-size-caption);margin-top:5px;opacity:.8}.finance-reports-module .collections-table .status-current{background:#f8fff8}.finance-reports-module .collections-table .status-overdue{background:#fffef8}.finance-reports-module .collections-table .status-seriously_overdue{background:#fff8f8}.finance-reports-module .collections-table .status-bad_debt{background:#fef2f2}.finance-reports-module .collections-table td.critical{color:#842029;font-weight:var(--font-weight-semibold)}.finance-reports-module .collections-table td.warning{color:#856404}.finance-reports-module .collections-table .actions-cell{white-space:nowrap}@media(max-width:1200px){.finance-reports-module .closing-sections{grid-template-columns:1fr}.finance-reports-module .aging-summary{grid-template-columns:repeat(3,1fr)}.finance-reports-module .revenue-cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.finance-reports-module .module-header{flex-direction:column;gap:var(--spacing-md);align-items:flex-start}.finance-reports-module .date-filters{flex-direction:column;align-items:flex-start}.finance-reports-module .custom-dates{margin-left:0;margin-top:var(--spacing-sm);flex-direction:column}.finance-reports-module .payment-methods-grid{grid-template-columns:1fr}.finance-reports-module .aging-summary{grid-template-columns:repeat(2,1fr)}.finance-reports-module .revenue-cards,.finance-reports-module .collections-summary{grid-template-columns:1fr}.finance-reports-module .breakdown-item{grid-template-columns:1fr;gap:5px}}.support-reports-module{padding:var(--spacing-lg);background:var(--color-neutral-50);min-height:100%;width:100%;box-sizing:border-box}.support-reports-module .module-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:2px solid var(--color-neutral-200)}.support-reports-module .module-header h2{margin:0;font-size:var(--font-size-h2);color:var(--color-neutral-900)}.support-reports-module .header-actions{display:flex;gap:var(--spacing-sm)}.support-reports-module .export-btn,.support-reports-module .refresh-btn{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);background:var(--color-white);cursor:pointer;font-size:var(--font-size-body);font-weight:var(--font-weight-medium);color:var(--color-neutral-700);transition:all var(--transition-normal)}.support-reports-module .export-btn:hover,.support-reports-module .refresh-btn:hover{background:var(--color-neutral-100);border-color:var(--color-neutral-300)}.support-reports-module .export-btn:disabled,.support-reports-module .refresh-btn:disabled{opacity:.5;cursor:not-allowed}.support-reports-module .error-message{background:var(--color-error-light);color:#721c24;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);display:flex;justify-content:space-between;align-items:center}.support-reports-module .error-message button{background:none;border:none;color:#721c24;cursor:pointer;text-decoration:underline}.support-reports-module .pii-masking-notice{background:var(--color-info-light);border:1px solid #74c0fc;border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-md);margin-bottom:var(--spacing-lg);display:flex;align-items:center;gap:var(--spacing-sm)}.support-reports-module .pii-masking-notice .notice-icon{font-size:var(--font-size-h4)}.support-reports-module .pii-masking-notice span{flex:1;color:#1864ab;font-size:var(--font-size-caption)}.support-reports-module .escalation-btn{padding:var(--spacing-xs) var(--spacing-sm);background:#1864ab;color:var(--color-white);border:none;border-radius:var(--radius-sm);font-size:var(--font-size-caption);cursor:pointer;transition:background var(--transition-normal)}.support-reports-module .escalation-btn:hover{background:#1971c2}.support-reports-selector{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);box-shadow:var(--shadow-sm)}.support-reports-selector .category-section{margin-bottom:var(--spacing-md)}.support-reports-selector .category-section:last-child{margin-bottom:0}.support-reports-selector .category-section h4{font-size:var(--font-size-caption);text-transform:uppercase;color:var(--color-neutral-500);margin:0 0 var(--spacing-sm) 0;font-weight:var(--font-weight-semibold)}.support-reports-selector .report-buttons{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.support-reports-selector .report-button{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);background:var(--color-white);cursor:pointer;transition:all var(--transition-normal);font-size:var(--font-size-caption)}.support-reports-selector .report-button:hover{border-color:var(--color-neutral-700);background:var(--color-neutral-50)}.support-reports-selector .report-button.active{border-color:var(--color-neutral-700);background:var(--color-neutral-700);color:var(--color-white)}.support-reports-selector .report-icon{font-size:var(--font-size-body)}.support-reports-selector .masked-badge{background:var(--color-info-light);color:#1864ab;padding:2px var(--spacing-xs);border-radius:var(--radius-sm);font-size:var(--font-size-tiny);font-weight:var(--font-weight-semibold)}.support-reports-selector .report-button.active .masked-badge{background:#fff3;color:var(--color-white)}.support-reports-module .date-filters{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-md) var(--spacing-lg);margin-bottom:var(--spacing-lg);display:flex;align-items:center;gap:var(--spacing-lg);box-shadow:var(--shadow-sm)}.support-reports-module .preset-buttons{display:flex;gap:var(--spacing-sm)}.support-reports-module .preset-button{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-neutral-200);border-radius:var(--radius-sm);background:var(--color-white);cursor:pointer;font-size:var(--font-size-caption);transition:all var(--transition-normal)}.support-reports-module .preset-button:hover{background:var(--color-neutral-50)}.support-reports-module .preset-button.active{background:var(--color-neutral-700);color:var(--color-white);border-color:var(--color-neutral-700)}.support-reports-module .custom-dates{display:flex;gap:var(--spacing-md);margin-left:auto}.support-reports-module .custom-dates label{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-caption);color:var(--color-neutral-700)}.support-reports-module .custom-dates input{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-neutral-200);border-radius:var(--radius-sm);font-size:var(--font-size-caption)}.support-reports-module .auto-refresh-toggle{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer}.support-reports-module .auto-refresh-toggle input{cursor:pointer}.support-reports-module .loading-spinner{text-align:center;padding:var(--spacing-3xl);color:var(--color-neutral-500);font-size:var(--font-size-body)}.support-reports-module .report-content{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm)}.support-reports-module .summary-cards{display:flex;flex-wrap:nowrap;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);width:100%;box-sizing:border-box}.support-reports-module .summary-card{flex:1 1 0;min-width:0;max-width:none;background:var(--color-neutral-50);border-radius:var(--radius-lg);padding:var(--spacing-md);text-align:center;box-sizing:border-box}.support-reports-module .summary-card .card-value{display:block;font-size:1.75rem;font-weight:var(--font-weight-bold);color:var(--color-neutral-900);margin-bottom:var(--spacing-xs)}.support-reports-module .summary-card .card-label{font-size:var(--font-size-caption);color:var(--color-neutral-500);text-transform:uppercase}.support-reports-module .summary-card.success{background:var(--color-success-light)}.support-reports-module .summary-card.success .card-value{color:var(--color-success)}.support-reports-module .summary-card.warning{background:var(--color-warning-light)}.support-reports-module .summary-card.warning .card-value{color:var(--color-warning)}.support-reports-module .summary-card.error{background:var(--color-error-light)}.support-reports-module .summary-card.error .card-value{color:var(--color-error)}.support-reports-module .summary-card.critical{background:var(--color-error);color:var(--color-white)}.support-reports-module .summary-card.critical .card-value,.support-reports-module .summary-card.critical .card-label{color:var(--color-white)}.support-reports-module .summary-card.info{background:var(--color-info-light)}.support-reports-module .summary-card.info .card-value{color:#055160}.support-reports-module .summary-card.alert{background:var(--color-error-light);border:2px solid var(--color-error)}.support-reports-module .summary-card.alert .card-value{color:var(--color-error)}.support-reports-module .summary-card.queued{background:var(--color-neutral-100)}.support-reports-module .summary-card.running{background:var(--color-info-light)}.support-reports-module .filter-section{background:var(--color-neutral-50);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-lg)}.support-reports-module .filter-section label{font-weight:var(--font-weight-semibold);margin-right:var(--spacing-md)}.support-reports-module .filter-section select{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-neutral-200);border-radius:var(--radius-sm);font-size:var(--font-size-caption)}.support-reports-module .filter-group{margin-bottom:var(--spacing-sm)}.support-reports-module .filter-group:last-child{margin-bottom:0}.support-reports-module .filter-options{display:inline-flex;gap:var(--spacing-md)}.support-reports-module .checkbox-label{display:flex;align-items:center;gap:5px;font-weight:var(--font-weight-regular);cursor:pointer}.support-reports-module .top-modules,.support-reports-module .api-analysis,.support-reports-module .failed-reasons{background:var(--color-neutral-50);border-radius:var(--radius-lg);padding:var(--spacing-md);margin-bottom:var(--spacing-lg)}.support-reports-module .top-modules h4,.support-reports-module .api-analysis h4,.support-reports-module .failed-reasons h4{margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-body)}.support-reports-module .module-bars{display:flex;flex-direction:column;gap:var(--spacing-sm)}.support-reports-module .module-bar{display:grid;grid-template-columns:120px 1fr 50px;align-items:center;gap:var(--spacing-sm)}.support-reports-module .module-name{font-weight:var(--font-weight-medium);font-size:var(--font-size-caption)}.support-reports-module .bar-container{height:20px;background:var(--color-neutral-200);border-radius:var(--radius-sm);overflow:hidden}.support-reports-module .bar-fill{height:100%;background:linear-gradient(90deg,var(--color-error),#fd7e14);border-radius:var(--radius-sm)}.support-reports-module .module-count{font-weight:var(--font-weight-semibold);text-align:right;font-size:var(--font-size-caption)}.support-reports-module .data-table-container{overflow-x:auto}.support-reports-module .data-table{width:100%;border-collapse:collapse;font-size:var(--font-size-caption)}.support-reports-module .data-table th,.support-reports-module .data-table td{padding:var(--spacing-sm);text-align:left;border-bottom:1px solid var(--color-neutral-200)}.support-reports-module .data-table th{background:var(--color-neutral-50);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700);white-space:nowrap}.support-reports-module .data-table tbody tr:hover{background:var(--color-neutral-50)}.support-reports-module .timestamp-cell{white-space:nowrap;font-family:var(--font-mono);font-size:var(--font-size-caption)}.support-reports-module .message-cell{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.support-reports-module .masked-cell{color:var(--color-neutral-500);font-style:italic}.support-reports-module .request-id-cell,.support-reports-module .job-id-cell{font-family:var(--font-mono);font-size:11px;color:var(--color-neutral-500)}.support-reports-module .code-cell{font-family:var(--font-mono);font-size:var(--font-size-caption)}.support-reports-module .endpoint-cell{font-family:var(--font-mono);font-size:var(--font-size-caption);max-width:200px;overflow:hidden;text-overflow:ellipsis}.support-reports-module .severity-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:11px;font-weight:var(--font-weight-semibold);text-transform:uppercase}.support-reports-module .severity-badge.critical{background:var(--color-error);color:var(--color-white)}.support-reports-module .severity-badge.error{background:var(--color-error-light);color:var(--color-error)}.support-reports-module .severity-badge.warning{background:var(--color-warning-light);color:var(--color-warning)}.support-reports-module .severity-badge.info{background:var(--color-info-light);color:#055160}.support-reports-module .status-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:11px;font-weight:var(--font-weight-semibold);text-transform:uppercase}.support-reports-module .status-badge.new{background:var(--color-info-light);color:#055160}.support-reports-module .status-badge.investigating{background:var(--color-warning-light);color:var(--color-warning)}.support-reports-module .status-badge.resolved{background:var(--color-success-light);color:var(--color-success)}.support-reports-module .status-badge.wont_fix{background:var(--color-neutral-100);color:var(--color-neutral-500)}.support-reports-module .status-badge.success{background:var(--color-success-light);color:var(--color-success)}.support-reports-module .status-badge.denied{background:var(--color-error-light);color:var(--color-error)}.support-reports-module .integration-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:11px;font-weight:var(--font-weight-semibold);text-transform:uppercase}.support-reports-module .integration-badge.einvoice{background:var(--color-info-light);color:#1864ab}.support-reports-module .integration-badge.payment{background:var(--color-warning-light);color:var(--color-warning)}.support-reports-module .integration-badge.sms{background:#d3f9d8;color:#2f9e44}.support-reports-module .integration-badge.email{background:#ffe8cc;color:#d9480f}.support-reports-module .event-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:11px;font-weight:var(--font-weight-medium);text-transform:capitalize}.support-reports-module .event-badge.login_success,.support-reports-module .event-badge.mfa_success{background:var(--color-success-light);color:var(--color-success)}.support-reports-module .event-badge.login_failed,.support-reports-module .event-badge.mfa_failed{background:var(--color-error-light);color:var(--color-error)}.support-reports-module .event-badge.logout,.support-reports-module .event-badge.session_expired{background:var(--color-neutral-100);color:var(--color-neutral-500)}.support-reports-module .event-badge.mfa_challenge{background:var(--color-warning-light);color:var(--color-warning)}.support-reports-module .method-badge{display:inline-block;padding:3px var(--spacing-xs);border-radius:3px;font-size:var(--font-size-tiny);font-weight:var(--font-weight-semibold);font-family:var(--font-mono)}.support-reports-module .method-badge.get{background:var(--color-success-light);color:var(--color-success)}.support-reports-module .method-badge.post{background:var(--color-info-light);color:#055160}.support-reports-module .method-badge.put{background:var(--color-warning-light);color:var(--color-warning)}.support-reports-module .method-badge.delete{background:var(--color-error-light);color:var(--color-error)}.support-reports-module .method-badge.patch{background:#e2d9f3;color:#5f3dc4}.support-reports-module .status-code-badge{display:inline-block;padding:3px var(--spacing-xs);border-radius:3px;font-size:11px;font-weight:var(--font-weight-semibold);font-family:var(--font-mono)}.support-reports-module .status-code-badge.code-4xx{background:var(--color-warning-light);color:var(--color-warning)}.support-reports-module .status-code-badge.code-5xx{background:var(--color-error-light);color:var(--color-error)}.support-reports-module .category-badge{display:inline-block;padding:3px var(--spacing-xs);border-radius:3px;font-size:var(--font-size-tiny);font-weight:var(--font-weight-medium);background:var(--color-neutral-100);color:var(--color-neutral-700);text-transform:capitalize}.support-reports-module .result-badge{display:inline-block;padding:3px var(--spacing-xs);border-radius:3px;font-size:11px;font-weight:var(--font-weight-semibold)}.support-reports-module .result-badge.success{background:var(--color-success-light);color:var(--color-success)}.support-reports-module .result-badge.denied{background:var(--color-error-light);color:var(--color-error)}.support-reports-module .result-badge.error{background:var(--color-warning-light);color:var(--color-warning)}.support-reports-module .data-table tr.severity-critical{background:#fff5f5}.support-reports-module .data-table tr.severity-error{background:#fff8f8}.support-reports-module .data-table tr.failed-row,.support-reports-module .data-table tr.result-denied{background:#fff5f5}.support-reports-module .data-table td.slow{color:var(--color-error);font-weight:var(--font-weight-semibold)}.support-reports-module .alerts-section{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.support-reports-module .alert-item{flex:1;display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-md);border-radius:var(--radius-md);border-left:4px solid}.support-reports-module .alert-item.critical{background:var(--color-error-light);border-left-color:var(--color-error)}.support-reports-module .alert-item.warning{background:var(--color-warning-light);border-left-color:var(--color-warning)}.support-reports-module .alert-icon{font-size:var(--font-size-h3)}.support-reports-module .alert-content strong{display:block;margin-bottom:var(--spacing-xs)}.support-reports-module .alert-content p{margin:0;font-size:var(--font-size-caption);color:var(--color-neutral-500)}.support-reports-module .integration-summary{display:flex;flex-wrap:nowrap;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);width:100%;box-sizing:border-box}.support-reports-module .integration-card{flex:1 1 0;min-width:0;max-width:none;background:var(--color-neutral-50);border-radius:var(--radius-lg);padding:var(--spacing-md);text-align:center;box-sizing:border-box}.support-reports-module .integration-card .card-icon{display:block;font-size:var(--font-size-h2);margin-bottom:var(--spacing-sm)}.support-reports-module .integration-card .card-title{display:block;font-weight:var(--font-weight-semibold);font-size:var(--font-size-caption);margin-bottom:var(--spacing-sm)}.support-reports-module .integration-card .card-stats{display:flex;justify-content:space-around}.support-reports-module .integration-card .stat{text-align:center}.support-reports-module .integration-card .stat-value{display:block;font-size:var(--font-size-h4);font-weight:var(--font-weight-bold)}.support-reports-module .integration-card .stat-label{font-size:var(--font-size-tiny);color:var(--color-neutral-500)}.support-reports-module .integration-card.einvoice{border-top:3px solid #1864ab}.support-reports-module .integration-card.payment{border-top:3px solid var(--color-warning)}.support-reports-module .integration-card.sms{border-top:3px solid #2f9e44}.support-reports-module .integration-card.email{border-top:3px solid #d9480f}.support-reports-module .suspicious-activity{background:var(--color-error-light);border:1px solid var(--color-error);border-radius:var(--radius-lg);padding:var(--spacing-md);margin-bottom:var(--spacing-lg)}.support-reports-module .suspicious-activity h4{margin:0 0 var(--spacing-md) 0;color:var(--color-error)}.support-reports-module .activity-item{display:grid;grid-template-columns:150px 150px 1fr auto;gap:var(--spacing-md);padding:var(--spacing-sm);background:var(--color-white);border-radius:var(--radius-md);margin-bottom:var(--spacing-sm);font-size:var(--font-size-caption)}.support-reports-module .activity-item:last-child{margin-bottom:0}.support-reports-module .activity-user{font-weight:var(--font-weight-semibold)}.support-reports-module .activity-type{color:var(--color-error);text-transform:capitalize}.support-reports-module .activity-time{color:var(--color-neutral-500);font-size:var(--font-size-caption)}.support-reports-module .reason-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.support-reports-module .reason-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-white);border-radius:var(--radius-md)}.support-reports-module .reason-name{font-weight:var(--font-weight-medium)}.support-reports-module .reason-count{background:var(--color-error-light);color:var(--color-error);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-weight:var(--font-weight-semibold)}.support-reports-module .api-analysis{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-lg)}.support-reports-module .analysis-section h4{margin:0 0 var(--spacing-sm) 0;font-size:var(--font-size-body)}.support-reports-module .endpoint-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.support-reports-module .endpoint-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm);background:var(--color-white);border-radius:var(--radius-md);font-size:var(--font-size-caption)}.support-reports-module .endpoint-name{font-family:var(--font-mono);font-size:var(--font-size-caption)}.support-reports-module .endpoint-count,.support-reports-module .endpoint-time{font-weight:var(--font-weight-semibold)}.support-reports-module .endpoint-rate{color:var(--color-neutral-500);font-size:var(--font-size-caption)}.support-reports-module .status-distribution{background:var(--color-neutral-50);border-radius:var(--radius-lg);padding:var(--spacing-md);margin-bottom:var(--spacing-lg)}.support-reports-module .status-distribution h4{margin:0 0 var(--spacing-md) 0}.support-reports-module .status-codes{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.support-reports-module .status-code{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);min-width:80px}.support-reports-module .status-code.code-4xx{background:var(--color-warning-light)}.support-reports-module .status-code.code-5xx{background:var(--color-error-light)}.support-reports-module .status-code .code{font-size:var(--font-size-h4);font-weight:var(--font-weight-bold);font-family:var(--font-mono)}.support-reports-module .status-code .count{font-size:var(--font-size-caption);color:var(--color-neutral-500)}.support-reports-module .job-types{background:var(--color-neutral-50);border-radius:var(--radius-lg);padding:var(--spacing-md);margin-bottom:var(--spacing-lg)}.support-reports-module .job-types h4{margin:0 0 var(--spacing-md) 0}.support-reports-module .job-type-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-sm)}.support-reports-module .job-type-card{background:var(--color-white);border-radius:var(--radius-md);padding:var(--spacing-sm)}.support-reports-module .job-type-name{display:block;font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-sm);text-transform:capitalize}.support-reports-module .job-type-stats{display:flex;gap:var(--spacing-md);font-size:var(--font-size-caption);color:var(--color-neutral-500)}.support-reports-module .progress-bar{position:relative;height:20px;background:var(--color-neutral-200);border-radius:var(--radius-sm);overflow:hidden}.support-reports-module .progress-fill{height:100%;background:linear-gradient(90deg,var(--color-primary-900),#6610f2);transition:width var(--transition-slow)}.support-reports-module .progress-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:11px;font-weight:var(--font-weight-semibold);color:var(--color-white);text-shadow:0 1px 2px rgba(0,0,0,.3)}.support-reports-module .action-btn{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-neutral-200);border-radius:var(--radius-sm);background:var(--color-white);cursor:pointer;font-size:11px;margin-right:5px;transition:all var(--transition-normal)}.support-reports-module .action-btn:hover{background:var(--color-neutral-100)}.support-reports-module .action-btn.retry{border-color:var(--color-primary-900);color:var(--color-primary-900)}.support-reports-module .action-btn.cancel{border-color:var(--color-error);color:var(--color-error)}.support-reports-module .actions-cell{white-space:nowrap}.support-reports-module .system-metrics{display:flex;flex-wrap:nowrap;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);width:100%;box-sizing:border-box}.support-reports-module .metric-card{flex:1 1 0;min-width:0;max-width:none;box-sizing:border-box}.support-reports-module .health-report .health-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-neutral-200)}.support-reports-module .overall-status{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-lg)}.support-reports-module .overall-status.success{background:var(--color-success-light);color:var(--color-success)}.support-reports-module .overall-status.warning{background:var(--color-warning-light);color:var(--color-warning)}.support-reports-module .overall-status.error{background:var(--color-error-light);color:var(--color-error)}.support-reports-module .overall-status .status-icon{font-size:var(--font-size-h2)}.support-reports-module .overall-status .status-text{font-size:var(--font-size-h4);font-weight:var(--font-weight-semibold);text-transform:capitalize}.support-reports-module .last-updated{color:var(--color-neutral-500);font-size:var(--font-size-caption)}.support-reports-module .system-metrics{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.support-reports-module .metric-card{background:var(--color-neutral-50);border-radius:var(--radius-lg);padding:var(--spacing-md);text-align:center}.support-reports-module .metric-label{display:block;font-size:var(--font-size-caption);color:var(--color-neutral-500);margin-bottom:var(--spacing-sm)}.support-reports-module .metric-bar{height:8px;background:var(--color-neutral-200);border-radius:var(--radius-sm);overflow:hidden;margin-bottom:var(--spacing-sm)}.support-reports-module .metric-bar .bar-fill{height:100%;background:linear-gradient(90deg,var(--color-success),#20c997);transition:width var(--transition-slow)}.support-reports-module .metric-value{font-size:var(--font-size-body);font-weight:var(--font-weight-semibold)}.support-reports-module .metric-value.large{font-size:var(--font-size-h2)}.support-reports-module .component-health{background:var(--color-neutral-50);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.support-reports-module .component-health h4{margin:0 0 var(--spacing-md) 0}.support-reports-module .component-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-sm)}.support-reports-module .component-card{background:var(--color-white);border-radius:var(--radius-md);padding:var(--spacing-sm);border-left:4px solid}.support-reports-module .component-card.success{border-left-color:var(--color-success)}.support-reports-module .component-card.warning{border-left-color:var(--color-warning)}.support-reports-module .component-card.error{border-left-color:var(--color-error)}.support-reports-module .component-card.neutral{border-left-color:var(--color-neutral-500)}.support-reports-module .component-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.support-reports-module .component-name{font-weight:var(--font-weight-semibold);font-size:var(--font-size-caption)}.support-reports-module .component-status{font-size:var(--font-size-body)}.support-reports-module .component-status.healthy{color:var(--color-success)}.support-reports-module .component-status.degraded{color:var(--color-warning)}.support-reports-module .component-status.critical{color:var(--color-error)}.support-reports-module .component-details{display:flex;flex-direction:column;gap:var(--spacing-xs)}.support-reports-module .component-details .detail{font-size:var(--font-size-caption);color:var(--color-neutral-500)}.support-reports-module .incidents-section{background:var(--color-neutral-50);border-radius:var(--radius-lg);padding:var(--spacing-lg)}.support-reports-module .incidents-section h4{margin:0 0 var(--spacing-md) 0}.support-reports-module .incident-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm);background:var(--color-white);border-radius:var(--radius-md);margin-bottom:var(--spacing-sm)}.support-reports-module .incident-item:last-child{margin-bottom:0}.support-reports-module .incident-component{font-weight:var(--font-weight-semibold);min-width:100px}.support-reports-module .incident-message{flex:1}.support-reports-module .incident-time{font-size:var(--font-size-caption);color:var(--color-neutral-500)}.support-reports-module .incident-badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:11px;font-weight:var(--font-weight-semibold);text-transform:uppercase}.support-reports-module .incident-badge.active{background:var(--color-error-light);color:var(--color-error)}.support-reports-module .incident-badge.resolved{background:var(--color-success-light);color:var(--color-success)}.support-reports-module .category-breakdown{background:var(--color-neutral-50);border-radius:var(--radius-lg);padding:var(--spacing-md);margin-bottom:var(--spacing-lg)}.support-reports-module .category-breakdown h4{margin:0 0 var(--spacing-md) 0}.support-reports-module .category-bars{display:flex;flex-direction:column;gap:var(--spacing-sm)}.support-reports-module .category-bar{display:grid;grid-template-columns:150px 1fr 50px;align-items:center;gap:var(--spacing-sm)}.support-reports-module .category-name{font-size:var(--font-size-caption);text-transform:capitalize}.support-reports-module .category-count{font-weight:var(--font-weight-semibold);text-align:right;font-size:var(--font-size-caption)}.support-reports-module .modal-overlay{position:fixed;inset:0;background:var(--modal-backdrop-color);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal)}.support-reports-module .escalation-modal{background:var(--color-white);border-radius:var(--radius-xl);padding:var(--spacing-xl);width:100%;max-width:500px;max-height:90vh;overflow-y:auto}.support-reports-module .escalation-modal h3{margin:0 0 var(--spacing-sm) 0}.support-reports-module .modal-description{color:var(--color-neutral-500);font-size:var(--font-size-body);margin-bottom:var(--spacing-lg)}.support-reports-module .form-group{margin-bottom:var(--spacing-md)}.support-reports-module .form-group label{display:block;font-weight:var(--font-weight-semibold);margin-bottom:5px;font-size:var(--font-size-body)}.support-reports-module .form-group input,.support-reports-module .form-group select,.support-reports-module .form-group textarea{width:100%;padding:var(--spacing-sm);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);font-size:var(--font-size-body);font-family:inherit}.support-reports-module .form-group textarea{resize:vertical}.support-reports-module .modal-actions{display:flex;justify-content:flex-end;gap:var(--spacing-sm);margin-top:var(--spacing-lg)}.support-reports-module .cancel-btn{padding:var(--spacing-sm) var(--spacing-lg);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);background:var(--color-white);cursor:pointer;font-size:var(--font-size-body)}.support-reports-module .submit-btn{padding:var(--spacing-sm) var(--spacing-lg);border:none;border-radius:var(--radius-md);background:var(--color-primary-900);color:var(--color-white);cursor:pointer;font-size:var(--font-size-body);font-weight:var(--font-weight-semibold)}.support-reports-module .submit-btn:disabled{opacity:.5;cursor:not-allowed}@media(max-width:1200px){.support-reports-module .integration-summary{grid-template-columns:repeat(2,1fr)}.support-reports-module .system-metrics{grid-template-columns:repeat(3,1fr)}.support-reports-module .api-analysis{grid-template-columns:1fr}}@media(max-width:768px){.support-reports-module .module-header{flex-direction:column;gap:var(--spacing-md);align-items:flex-start}.support-reports-module .date-filters{flex-direction:column;align-items:flex-start}.support-reports-module .custom-dates{margin-left:0;margin-top:var(--spacing-sm);flex-direction:column}.support-reports-module .integration-summary{grid-template-columns:1fr}.support-reports-module .system-metrics{grid-template-columns:repeat(2,1fr)}.support-reports-module .activity-item,.support-reports-module .category-bar,.support-reports-module .module-bar{grid-template-columns:1fr;gap:5px}.support-reports-module .pii-masking-notice{flex-direction:column;align-items:flex-start}.support-reports-module .escalation-btn{width:100%;margin-top:var(--spacing-sm)}}.support-reports-module.jarvis-theme{--jarvis-bg-primary: #0a0e17;--jarvis-bg-secondary: #0d1420;--jarvis-bg-panel: rgba(13, 25, 45, .85);--jarvis-cyan: #00d4ff;--jarvis-cyan-dim: #00a0cc;--jarvis-cyan-glow: rgba(0, 212, 255, .3);--jarvis-orange: #ff6b35;--jarvis-orange-dim: #cc5a30;--jarvis-amber: #ffc107;--jarvis-red: #ff3b3b;--jarvis-green: #00ff88;--jarvis-purple: #a855f7;--jarvis-text: #e0f4ff;--jarvis-text-dim: #7aa5c0;--jarvis-border: rgba(0, 212, 255, .3);--jarvis-grid: rgba(0, 212, 255, .05);background:var(--jarvis-bg-primary);background-image:linear-gradient(var(--jarvis-grid) 1px,transparent 1px),linear-gradient(90deg,var(--jarvis-grid) 1px,transparent 1px);background-size:50px 50px;color:var(--jarvis-text);font-family:Roboto Mono,SF Mono,Consolas,monospace;position:relative}.support-reports-module.jarvis-theme:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,212,255,.02) 2px,rgba(0,212,255,.02) 4px);pointer-events:none;z-index:1}.support-reports-module.jarvis-theme>*{position:relative;z-index:2}.support-reports-module.jarvis-theme .module-header{border-bottom:1px solid var(--jarvis-cyan);box-shadow:0 2px 20px var(--jarvis-cyan-glow)}.support-reports-module.jarvis-theme .module-header h2{color:var(--jarvis-cyan);text-transform:uppercase;letter-spacing:3px;text-shadow:0 0 20px var(--jarvis-cyan-glow);font-weight:300}.support-reports-module.jarvis-theme .export-btn,.support-reports-module.jarvis-theme .refresh-btn{background:transparent;border:1px solid var(--jarvis-cyan);color:var(--jarvis-cyan);text-transform:uppercase;letter-spacing:1px;font-size:11px;transition:all .3s ease;position:relative;overflow:hidden}.support-reports-module.jarvis-theme .export-btn:before,.support-reports-module.jarvis-theme .refresh-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,var(--jarvis-cyan-glow),transparent);transition:left .5s}.support-reports-module.jarvis-theme .export-btn:hover:before,.support-reports-module.jarvis-theme .refresh-btn:hover:before{left:100%}.support-reports-module.jarvis-theme .export-btn:hover,.support-reports-module.jarvis-theme .refresh-btn:hover{background:var(--jarvis-cyan-glow);box-shadow:0 0 20px var(--jarvis-cyan-glow),inset 0 0 20px var(--jarvis-cyan-glow)}.support-reports-module.jarvis-theme .support-reports-selector{background:var(--jarvis-bg-panel);border:1px solid var(--jarvis-border);border-radius:4px;box-shadow:0 0 30px #00000080,inset 0 0 30px #00d4ff08;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.support-reports-module.jarvis-theme .category-section h4{color:var(--jarvis-cyan-dim);font-size:10px;letter-spacing:2px;border-bottom:1px solid var(--jarvis-border);padding-bottom:8px}.support-reports-module.jarvis-theme .report-button{background:#00d4ff0d;border:1px solid var(--jarvis-border);color:var(--jarvis-text);transition:all .3s ease}.support-reports-module.jarvis-theme .report-button:hover{background:#00d4ff26;border-color:var(--jarvis-cyan);box-shadow:0 0 15px var(--jarvis-cyan-glow)}.support-reports-module.jarvis-theme .report-button.active{background:linear-gradient(135deg,var(--jarvis-cyan-glow),rgba(0,212,255,.1));border-color:var(--jarvis-cyan);color:var(--jarvis-cyan);box-shadow:0 0 20px var(--jarvis-cyan-glow),inset 0 0 15px var(--jarvis-cyan-glow)}.support-reports-module.jarvis-theme .masked-badge{background:#ff6b3533;color:var(--jarvis-orange);border:1px solid var(--jarvis-orange-dim)}.support-reports-module.jarvis-theme .date-filters{background:var(--jarvis-bg-panel);border:1px solid var(--jarvis-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.support-reports-module.jarvis-theme .preset-button{background:transparent;border:1px solid var(--jarvis-border);color:var(--jarvis-text-dim)}.support-reports-module.jarvis-theme .preset-button:hover{border-color:var(--jarvis-cyan);color:var(--jarvis-cyan)}.support-reports-module.jarvis-theme .preset-button.active{background:var(--jarvis-cyan-glow);border-color:var(--jarvis-cyan);color:var(--jarvis-cyan);box-shadow:0 0 10px var(--jarvis-cyan-glow)}.support-reports-module.jarvis-theme .custom-dates input{background:var(--jarvis-bg-secondary);border:1px solid var(--jarvis-border);color:var(--jarvis-text)}.support-reports-module.jarvis-theme .custom-dates label{color:var(--jarvis-text-dim)}.support-reports-module.jarvis-theme .report-content{background:var(--jarvis-bg-panel);border:1px solid var(--jarvis-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 0 40px #00000080}.support-reports-module.jarvis-theme .summary-card{background:var(--jarvis-bg-secondary);border:1px solid var(--jarvis-border);position:relative;overflow:hidden}.support-reports-module.jarvis-theme .summary-card:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:conic-gradient(transparent,var(--jarvis-cyan-glow),transparent 30%);animation:rotate-glow 4s linear infinite;opacity:.3}@keyframes rotate-glow{to{transform:rotate(360deg)}}.support-reports-module.jarvis-theme .summary-card .card-value{color:var(--jarvis-cyan);text-shadow:0 0 20px var(--jarvis-cyan-glow);font-weight:300;position:relative;z-index:1}.support-reports-module.jarvis-theme .summary-card .card-label{color:var(--jarvis-text-dim);text-transform:uppercase;letter-spacing:1px;font-size:10px;position:relative;z-index:1}.support-reports-module.jarvis-theme .summary-card.success{border-color:var(--jarvis-green)}.support-reports-module.jarvis-theme .summary-card.success .card-value{color:var(--jarvis-green);text-shadow:0 0 20px rgba(0,255,136,.5)}.support-reports-module.jarvis-theme .summary-card.warning{border-color:var(--jarvis-amber)}.support-reports-module.jarvis-theme .summary-card.warning .card-value{color:var(--jarvis-amber);text-shadow:0 0 20px rgba(255,193,7,.5)}.support-reports-module.jarvis-theme .summary-card.error,.support-reports-module.jarvis-theme .summary-card.critical{border-color:var(--jarvis-red);background:linear-gradient(135deg,rgba(255,59,59,.1),transparent)}.support-reports-module.jarvis-theme .summary-card.error .card-value,.support-reports-module.jarvis-theme .summary-card.critical .card-value{color:var(--jarvis-red);text-shadow:0 0 20px rgba(255,59,59,.5);animation:pulse-red 2s ease-in-out infinite}@keyframes pulse-red{0%,to{opacity:1}50%{opacity:.7}}.support-reports-module.jarvis-theme .metric-card{background:var(--jarvis-bg-secondary);border:1px solid var(--jarvis-border)}.support-reports-module.jarvis-theme .metric-label{color:var(--jarvis-text-dim);text-transform:uppercase;letter-spacing:1px;font-size:10px}.support-reports-module.jarvis-theme .metric-bar{background:#00d4ff1a;border:1px solid var(--jarvis-border)}.support-reports-module.jarvis-theme .metric-bar .bar-fill{background:linear-gradient(90deg,var(--jarvis-cyan) 0%,var(--jarvis-green) 50%,var(--jarvis-amber) 75%,var(--jarvis-red) 100%);background-size:300% 100%;animation:gradient-shift 3s ease infinite;box-shadow:0 0 10px var(--jarvis-cyan-glow)}@keyframes gradient-shift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.support-reports-module.jarvis-theme .metric-value{color:var(--jarvis-cyan);text-shadow:0 0 10px var(--jarvis-cyan-glow)}.support-reports-module.jarvis-theme .overall-status{border:2px solid;animation:status-pulse 2s ease-in-out infinite}.support-reports-module.jarvis-theme .overall-status.success{background:#00ff881a;border-color:var(--jarvis-green);color:var(--jarvis-green);box-shadow:0 0 30px #00ff884d}.support-reports-module.jarvis-theme .overall-status.warning{background:#ffc1071a;border-color:var(--jarvis-amber);color:var(--jarvis-amber);box-shadow:0 0 30px #ffc1074d}.support-reports-module.jarvis-theme .overall-status.error{background:#ff3b3b1a;border-color:var(--jarvis-red);color:var(--jarvis-red);box-shadow:0 0 30px #ff3b3b4d;animation:alert-pulse 1s ease-in-out infinite}@keyframes status-pulse{0%,to{opacity:1}50%{opacity:.8}}@keyframes alert-pulse{0%,to{box-shadow:0 0 30px #ff3b3b4d}50%{box-shadow:0 0 50px #ff3b3b99}}.support-reports-module.jarvis-theme .data-table{border-collapse:separate;border-spacing:0 4px}.support-reports-module.jarvis-theme .data-table th{background:#00d4ff1a;color:var(--jarvis-cyan);text-transform:uppercase;letter-spacing:1px;font-size:10px;border:none;border-bottom:2px solid var(--jarvis-cyan)}.support-reports-module.jarvis-theme .data-table td{background:#0000004d;border:none;border-left:1px solid var(--jarvis-border);color:var(--jarvis-text)}.support-reports-module.jarvis-theme .data-table td:first-child{border-left:3px solid var(--jarvis-cyan)}.support-reports-module.jarvis-theme .data-table tbody tr:hover td{background:#00d4ff1a;box-shadow:inset 0 0 20px var(--jarvis-cyan-glow)}.support-reports-module.jarvis-theme .data-table tr.severity-critical td{border-left-color:var(--jarvis-red);background:#ff3b3b1a}.support-reports-module.jarvis-theme .data-table tr.severity-error td{border-left-color:var(--jarvis-orange);background:#ff6b351a}.support-reports-module.jarvis-theme .severity-badge{border:1px solid;background:transparent}.support-reports-module.jarvis-theme .severity-badge.critical{border-color:var(--jarvis-red);color:var(--jarvis-red);box-shadow:0 0 10px #ff3b3b80;animation:badge-pulse 1.5s ease-in-out infinite}.support-reports-module.jarvis-theme .severity-badge.error{border-color:var(--jarvis-orange);color:var(--jarvis-orange);box-shadow:0 0 10px #ff6b354d}.support-reports-module.jarvis-theme .severity-badge.warning{border-color:var(--jarvis-amber);color:var(--jarvis-amber)}.support-reports-module.jarvis-theme .severity-badge.info{border-color:var(--jarvis-cyan);color:var(--jarvis-cyan)}@keyframes badge-pulse{0%,to{box-shadow:0 0 10px #ff3b3b80}50%{box-shadow:0 0 20px #ff3b3bcc}}.support-reports-module.jarvis-theme .component-health{background:var(--jarvis-bg-panel);border:1px solid var(--jarvis-border)}.support-reports-module.jarvis-theme .component-health h4{color:var(--jarvis-cyan);text-transform:uppercase;letter-spacing:2px}.support-reports-module.jarvis-theme .component-card{background:var(--jarvis-bg-secondary);border:1px solid var(--jarvis-border);border-left-width:3px}.support-reports-module.jarvis-theme .component-card.success{border-left-color:var(--jarvis-green)}.support-reports-module.jarvis-theme .component-card.warning{border-left-color:var(--jarvis-amber)}.support-reports-module.jarvis-theme .component-card.error{border-left-color:var(--jarvis-red)}.support-reports-module.jarvis-theme .component-name{color:var(--jarvis-text)}.support-reports-module.jarvis-theme .component-status.healthy{color:var(--jarvis-green);text-shadow:0 0 10px rgba(0,255,136,.5)}.support-reports-module.jarvis-theme .component-status.degraded{color:var(--jarvis-amber);text-shadow:0 0 10px rgba(255,193,7,.5)}.support-reports-module.jarvis-theme .component-status.critical{color:var(--jarvis-red);text-shadow:0 0 10px rgba(255,59,59,.5);animation:pulse-red 1s ease-in-out infinite}.support-reports-module.jarvis-theme .component-details .detail{color:var(--jarvis-text-dim);font-family:Roboto Mono,monospace;font-size:11px}.support-reports-module.jarvis-theme .progress-bar{background:#00d4ff1a;border:1px solid var(--jarvis-border)}.support-reports-module.jarvis-theme .progress-fill{background:linear-gradient(90deg,var(--jarvis-cyan),var(--jarvis-purple),var(--jarvis-cyan));background-size:200% 100%;animation:progress-glow 2s linear infinite;box-shadow:0 0 15px var(--jarvis-cyan-glow)}@keyframes progress-glow{0%{background-position:0% 50%}to{background-position:200% 50%}}.support-reports-module.jarvis-theme .alert-item{background:var(--jarvis-bg-secondary);border:1px solid}.support-reports-module.jarvis-theme .alert-item.critical{border-color:var(--jarvis-red);border-left-width:4px;box-shadow:0 0 20px #ff3b3b33}.support-reports-module.jarvis-theme .alert-item.warning{border-color:var(--jarvis-amber);border-left-width:4px;box-shadow:0 0 20px #ffc10733}.support-reports-module.jarvis-theme .loading-spinner{color:var(--jarvis-cyan)}.support-reports-module.jarvis-theme .loading-spinner:after{content:"INITIALIZING SYSTEMS...";display:block;font-size:12px;letter-spacing:2px;animation:loading-text 1.5s steps(20) infinite}@keyframes loading-text{0%,to{opacity:1}50%{opacity:.5}}.support-reports-module.jarvis-theme .error-message{background:#ff3b3b1a;border:1px solid var(--jarvis-red);color:var(--jarvis-red);box-shadow:0 0 20px #ff3b3b33}.support-reports-module.jarvis-theme .pii-masking-notice{background:#ff6b351a;border:1px solid var(--jarvis-orange);color:var(--jarvis-orange)}.support-reports-module.jarvis-theme .escalation-btn{background:transparent;border:1px solid var(--jarvis-orange);color:var(--jarvis-orange)}.support-reports-module.jarvis-theme .escalation-btn:hover{background:#ff6b3533;box-shadow:0 0 15px #ff6b354d}.support-reports-module.jarvis-theme .last-updated{color:var(--jarvis-text-dim);font-family:Roboto Mono,monospace;font-size:11px}.support-reports-module.jarvis-theme .filter-section{background:var(--jarvis-bg-secondary);border:1px solid var(--jarvis-border)}.support-reports-module.jarvis-theme .filter-section select{background:var(--jarvis-bg-primary);border:1px solid var(--jarvis-border);color:var(--jarvis-text)}.support-reports-module.jarvis-theme ::-webkit-scrollbar{width:8px;height:8px}.support-reports-module.jarvis-theme ::-webkit-scrollbar-track{background:var(--jarvis-bg-secondary)}.support-reports-module.jarvis-theme ::-webkit-scrollbar-thumb{background:var(--jarvis-cyan-dim);border-radius:4px}.support-reports-module.jarvis-theme ::-webkit-scrollbar-thumb:hover{background:var(--jarvis-cyan)}.support-reports-module.jarvis-theme .timestamp-cell{color:var(--jarvis-cyan-dim);font-family:Roboto Mono,monospace}.support-reports-module.jarvis-theme .code-cell,.support-reports-module.jarvis-theme .request-id-cell,.support-reports-module.jarvis-theme .endpoint-cell{color:var(--jarvis-text-dim)}.support-reports-module.jarvis-theme .report-content:before,.support-reports-module.jarvis-theme .report-content:after,.support-reports-module.jarvis-theme .support-reports-selector:before,.support-reports-module.jarvis-theme .support-reports-selector:after{content:"";position:absolute;width:20px;height:20px;border:2px solid var(--jarvis-cyan)}.support-reports-module.jarvis-theme .report-content:before,.support-reports-module.jarvis-theme .support-reports-selector:before{top:-1px;left:-1px;border-right:none;border-bottom:none}.support-reports-module.jarvis-theme .report-content:after,.support-reports-module.jarvis-theme .support-reports-selector:after{bottom:-1px;right:-1px;border-left:none;border-top:none}.support-reports-module.jarvis-theme .auto-refresh-toggle{color:var(--jarvis-text-dim)}.support-reports-module.jarvis-theme .auto-refresh-toggle input[type=checkbox]{accent-color:var(--jarvis-cyan)}.admin-dashboard{padding:var(--spacing-md) var(--spacing-lg);max-width:1400px;margin:0 auto;font-family:Inter,sans-serif}.admin-loading,.admin-error{text-align:center;padding:60px var(--spacing-md);color:var(--color-neutral-500);font-size:var(--font-size-body)}.admin-error p{margin-bottom:var(--spacing-sm);color:var(--color-error)}.retry-btn{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-lg);border:1px solid var(--color-primary-900);background:transparent;color:var(--color-primary-900);cursor:pointer;font-family:Poppins,sans-serif;font-size:var(--font-size-body);font-weight:var(--font-weight-semibold)}.retry-btn:hover{background:var(--color-primary-900);color:var(--color-white)}.setup-checklist{background:linear-gradient(135deg,var(--color-info-light),var(--color-primary-100));border:1px solid var(--color-primary-100);border-radius:var(--card-radius);padding:var(--spacing-md) var(--spacing-lg);margin-bottom:var(--spacing-md)}.setup-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.setup-header h3{font-family:Poppins,sans-serif;font-size:15px;font-weight:var(--font-weight-bold);color:var(--color-primary-900)}.setup-progress{font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);color:var(--color-primary-900);background:var(--color-white);padding:2px 10px;border-radius:var(--radius-full)}.setup-items{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.setup-item{display:flex;align-items:center;gap:6px;background:var(--color-white);padding:6px var(--spacing-sm);border-radius:var(--radius-lg);font-size:var(--font-size-caption);border:1px solid var(--color-neutral-200)}.setup-item.done{opacity:.6}.setup-check{font-size:var(--font-size-body)}.setup-label{color:var(--color-neutral-900);font-weight:var(--font-weight-medium)}.setup-hint{color:var(--color-neutral-500);font-size:var(--font-size-tiny);margin-left:4px}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.admin-header-left{display:flex;align-items:baseline;gap:var(--spacing-sm)}.admin-header h2{font-family:Poppins,sans-serif;font-size:var(--font-size-h2);font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.admin-refresh-time{font-size:var(--font-size-caption);color:var(--color-neutral-500)}.admin-refresh-btn{padding:6px var(--spacing-md);border-radius:var(--radius-lg);border:1px solid var(--color-neutral-200);background:var(--color-white);color:var(--color-neutral-700);cursor:pointer;font-family:Inter,sans-serif;font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);transition:all .15s}.admin-refresh-btn:hover{border-color:var(--color-primary-900);color:var(--color-primary-900)}.admin-refresh-btn:disabled{opacity:.6;cursor:not-allowed}.admin-header-actions{display:flex;gap:var(--spacing-sm);align-items:center}.admin-kpi-row{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.admin-kpi-card{background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--card-radius);padding:var(--spacing-md) var(--spacing-lg);display:flex;gap:14px;align-items:flex-start;box-shadow:var(--shadow-xs);transition:box-shadow .15s}.admin-kpi-card:hover{box-shadow:var(--shadow-sm)}.kpi-icon{font-size:28px;line-height:1;padding-top:2px}.kpi-content{flex:1}.kpi-value{font-family:Poppins,sans-serif;font-size:var(--font-size-h2);font-weight:var(--font-weight-bold);color:var(--color-neutral-900);line-height:1.2}.kpi-label{font-size:var(--font-size-caption);color:var(--color-neutral-500);margin-top:2px}.kpi-change{font-size:var(--font-size-tiny);margin-top:4px;font-weight:var(--font-weight-semibold)}.kpi-change.positive{color:var(--color-success)}.kpi-change.negative{color:var(--color-error)}.kpi-sub{font-size:var(--font-size-tiny);color:var(--color-neutral-500);margin-top:4px}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.admin-col{display:flex;flex-direction:column;gap:var(--spacing-md)}.admin-widget{background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--card-radius);padding:var(--spacing-md) var(--spacing-lg);box-shadow:var(--shadow-xs)}.admin-widget.compact{padding:var(--spacing-sm) var(--spacing-lg)}.widget-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.widget-header h3{font-family:Poppins,sans-serif;font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.widget-badge{font-size:var(--font-size-tiny);background:var(--color-neutral-100);color:var(--color-neutral-700);padding:2px 10px;border-radius:var(--radius-full);font-weight:var(--font-weight-semibold)}.widget-badge.alert{background:var(--color-error-light);color:var(--color-error)}.queue-bars{display:flex;flex-direction:column;gap:var(--spacing-sm)}.queue-bar-row{display:flex;align-items:center;gap:10px}.queue-bar-label{font-size:var(--font-size-caption);color:var(--color-neutral-700);width:90px;flex-shrink:0}.queue-bar-track{flex:1;height:20px;background:var(--color-neutral-100);border-radius:var(--radius-md);overflow:hidden}.queue-bar-fill{height:100%;border-radius:var(--radius-md);transition:width .5s ease;min-width:0}.queue-bar-count{font-size:var(--font-size-body);font-weight:var(--font-weight-bold);color:var(--color-neutral-900);width:30px;text-align:right}.revenue-chart{display:flex;gap:var(--spacing-sm);align-items:flex-end;height:160px;padding-top:var(--spacing-md)}.chart-bar-wrapper{flex:1;display:flex;flex-direction:column;align-items:center;height:100%}.chart-value{font-size:9px;color:var(--color-neutral-500);margin-bottom:4px;white-space:nowrap}.chart-bar-track{flex:1;width:100%;display:flex;align-items:flex-end}.chart-bar-fill{width:100%;background:linear-gradient(180deg,var(--color-primary-600),var(--color-primary-900));border-radius:var(--radius-sm) var(--radius-sm) 0 0;transition:height .5s ease;min-height:4px}.chart-bar-wrapper.today .chart-bar-fill{background:linear-gradient(180deg,var(--color-success),var(--color-success-hover))}.chart-day{font-size:var(--font-size-tiny);color:var(--color-neutral-500);margin-top:6px;font-weight:var(--font-weight-medium)}.chart-bar-wrapper.today .chart-day{color:var(--color-success);font-weight:var(--font-weight-bold)}.staff-list{display:flex;flex-direction:column;gap:6px;max-height:220px;overflow-y:auto}.staff-row{display:flex;align-items:center;gap:var(--spacing-sm);padding:6px var(--spacing-sm);border-radius:var(--radius-md);font-size:var(--font-size-caption)}.staff-row.offline{opacity:.5}.staff-dot{width:8px;height:8px;border-radius:var(--radius-full);flex-shrink:0}.staff-dot.online{background:var(--color-success);box-shadow:0 0 4px var(--color-success)}.staff-dot.offline{background:var(--color-neutral-300)}.staff-name{flex:1;font-weight:var(--font-weight-medium);color:var(--color-neutral-900)}.staff-role{font-size:var(--font-size-tiny);font-weight:var(--font-weight-semibold)}.staff-row-container{border-radius:var(--radius-md);transition:background-color .15s ease}.staff-row-container.expanded{background:var(--color-neutral-50)}.staff-row.expandable{cursor:pointer}.staff-row.expandable:hover{background:var(--color-neutral-100)}.staff-expand-icon{font-size:10px;margin-left:2px;opacity:.6}.staff-modules-list{padding:var(--spacing-xs) var(--spacing-sm) var(--spacing-sm) calc(var(--spacing-md) + 14px);animation:slideDown .15s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.staff-module-item{display:flex;align-items:center;gap:6px;padding:3px 0;font-size:11px;color:var(--color-neutral-600)}.staff-module-arrow{color:var(--color-neutral-400);font-size:10px}.staff-module-icon{font-size:12px}.staff-module-name{font-weight:var(--font-weight-medium)}.staff-module-note{font-size:10px;color:var(--color-primary-600);font-style:italic;margin-top:4px;padding-left:16px}.alerts-list{display:flex;flex-direction:column;gap:var(--spacing-sm);max-height:200px;overflow-y:auto}.alert-item{display:flex;align-items:flex-start;gap:var(--spacing-sm);font-size:var(--font-size-caption);color:var(--color-neutral-700);line-height:1.4;padding:6px var(--spacing-sm);border-radius:var(--radius-md)}.alert-item.critical{background:var(--color-error-light)}.alert-item.warning{background:var(--color-warning-light)}.alert-item.info{background:var(--color-info-light)}.alert-dot{width:6px;height:6px;border-radius:var(--radius-full);flex-shrink:0;margin-top:5px}.alert-dot.critical{background:var(--color-error)}.alert-dot.warning{background:var(--color-warning)}.alert-dot.info{background:var(--color-primary-600)}.no-alerts{text-align:center;padding:var(--spacing-md);color:var(--color-success);font-size:var(--font-size-caption)}.activity-feed{display:flex;flex-direction:column;gap:4px;max-height:220px;overflow-y:auto}.activity-row{display:flex;align-items:center;gap:var(--spacing-sm);padding:5px var(--spacing-sm);border-radius:var(--radius-md);font-size:var(--font-size-caption)}.activity-row:hover{background:var(--color-neutral-50)}.activity-user{font-weight:var(--font-weight-semibold);color:var(--color-neutral-900);white-space:nowrap}.activity-action{flex:1;color:var(--color-neutral-500);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-time{color:var(--color-neutral-500);font-size:var(--font-size-tiny);white-space:nowrap}.bookings-summary{display:flex;align-items:center;gap:var(--spacing-lg);justify-content:center;padding:var(--spacing-sm) 0}.booking-stat{display:flex;align-items:baseline;gap:var(--spacing-sm)}.booking-num{font-family:Poppins,sans-serif;font-size:28px;font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.booking-label{font-size:var(--font-size-caption);color:var(--color-neutral-500)}.booking-divider{width:1px;height:40px;background:var(--color-neutral-200)}.doctor-perf-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.doctor-perf-row{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) 10px;background:var(--color-neutral-50);border-radius:var(--radius-lg)}.doctor-name{font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.doctor-stats{display:flex;gap:4px;align-items:center}.doctor-stat{font-size:var(--font-size-caption);color:var(--color-neutral-700)}.doctor-stat-sep{color:var(--color-neutral-300);font-size:var(--font-size-tiny)}.peak-hours-chart{display:flex;flex-direction:column;gap:4px}.peak-hour-bar{display:flex;align-items:center;gap:var(--spacing-sm)}.peak-hour-label{font-size:var(--font-size-tiny);color:var(--color-neutral-500);width:40px;text-align:right;flex-shrink:0}.peak-hour-track{flex:1;height:16px;background:var(--color-neutral-100);border-radius:var(--radius-sm);overflow:hidden}.peak-hour-fill{height:100%;background:linear-gradient(90deg,var(--color-primary-300),var(--color-primary-900));border-radius:var(--radius-sm);transition:width .5s ease}.peak-hour-count{font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700);width:24px;text-align:right}.payment-breakdown{display:flex;flex-direction:column;gap:4px}.payment-row{display:flex;align-items:center;gap:var(--spacing-sm);padding:6px var(--spacing-sm);border-radius:var(--radius-md);font-size:var(--font-size-caption)}.payment-row:hover{background:var(--color-neutral-50)}.payment-method{flex:1;color:var(--color-neutral-700)}.payment-count{color:var(--color-neutral-500);font-size:var(--font-size-caption);width:30px;text-align:right}.payment-total{font-weight:var(--font-weight-semibold);color:var(--color-neutral-900);width:90px;text-align:right}.payment-total-row{border-top:1px solid var(--color-neutral-200);margin-top:4px;padding-top:var(--spacing-sm)}.no-data{text-align:center;padding:var(--spacing-md);color:var(--color-neutral-500);font-size:var(--font-size-caption)}@media(max-width:1024px){.admin-kpi-row{grid-template-columns:repeat(2,1fr)}.admin-grid{grid-template-columns:1fr}}@media(max-width:640px){.admin-kpi-row{grid-template-columns:1fr}.admin-dashboard{padding:var(--spacing-sm)}}.clinic-admin-reports-module{padding:var(--spacing-lg);width:100%;box-sizing:border-box}.module-header{margin-bottom:var(--spacing-lg);display:flex;justify-content:space-between;align-items:flex-start}.report-layout{display:grid;grid-template-columns:280px 1fr;gap:var(--spacing-lg);min-height:600px}.category-btn.active{background:var(--color-primary-900);color:var(--color-white);border-color:var(--color-primary-900)}.report-item.active{border-color:var(--color-primary-900);box-shadow:0 0 0 2px #4a63b31a}.metadata-notice,.data-notice{display:flex;align-items:center;gap:12px;padding:12px var(--spacing-md);background:var(--color-info-light);border:1px solid #bae6fd;border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);font-size:var(--font-size-body);color:#0369a1}.security-alerts{display:flex;flex-direction:column;gap:12px;margin-bottom:var(--spacing-lg)}.alert-item{display:flex;align-items:flex-start;gap:12px;padding:12px var(--spacing-md);border-radius:var(--radius-md)}.alert-item.warning{background:var(--color-warning-light);border:1px solid #fcd34d}.alert-item.info{background:var(--color-info-light);border:1px solid #7dd3fc}.alert-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);font-weight:var(--font-weight-bold);font-size:var(--font-size-body);flex-shrink:0}.alert-item.warning .alert-icon{background:var(--color-warning);color:var(--color-white)}.alert-item.info .alert-icon{background:#0ea5e9;color:var(--color-white)}.alert-content{display:flex;flex-direction:column;gap:var(--spacing-xs)}.alert-content strong{font-size:var(--font-size-body);color:var(--color-neutral-900)}.alert-count{font-size:var(--font-size-caption);color:var(--color-neutral-500)}.alert-action{font-size:var(--font-size-caption);color:var(--color-primary-900)}.summary-cards{display:flex;flex-wrap:nowrap;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);width:100%;box-sizing:border-box}.clinic-admin-reports-module .summary-card{flex:1 1 0;min-width:0;max-width:none;background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:var(--spacing-md);text-align:center;box-sizing:border-box}.clinic-admin-reports-module .summary-card.success{border-color:#86efac;background:#f0fdf4}.clinic-admin-reports-module .summary-card.warning{border-color:#fcd34d;background:var(--color-warning-light)}.clinic-admin-reports-module .summary-card.error{border-color:#fca5a5;background:var(--color-error-light)}.clinic-admin-reports-module .summary-card.info{border-color:#7dd3fc;background:var(--color-info-light)}.summary-value{display:block;font-size:var(--font-size-h2);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.summary-label{display:block;font-size:var(--font-size-caption);color:var(--color-neutral-500);margin-top:var(--spacing-xs)}.roles-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md)}.role-card{background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:var(--spacing-md)}.role-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.role-name{font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.role-count{font-size:var(--font-size-caption);padding:2px var(--spacing-sm);background:var(--color-neutral-200);border-radius:3px;color:var(--color-neutral-700)}.role-description{margin:0 0 12px;font-size:var(--font-size-body);color:var(--color-neutral-500)}.role-access{font-size:var(--font-size-caption)}.access-label{color:var(--color-neutral-500)}.access-groups{color:var(--color-primary-900)}.role-tags{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.role-tag{display:inline-block;padding:2px var(--spacing-sm);background:#e0e7ff;color:#4338ca;border-radius:3px;font-size:var(--font-size-caption)}.mfa-badge{display:inline-block;padding:2px var(--spacing-sm);border-radius:3px;font-size:var(--font-size-caption)}.mfa-badge.enabled{background:var(--color-success-light);color:#166534}.mfa-badge.disabled{background:var(--color-warning-light);color:#92400e}.rate-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}.rate-badge.good{background:var(--color-success-light);color:#166534}.rate-badge.fair{background:var(--color-warning-light);color:#92400e}.rate-badge.poor{background:var(--color-error-light);color:#991b1b}.balance-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-body);font-weight:var(--font-weight-medium)}.balance-badge.good{background:var(--color-success-light);color:#166534}.balance-badge.low{background:var(--color-warning-light);color:#92400e}.balance-badge.zero{background:var(--color-error-light);color:#991b1b}.text-info{color:#0284c7}.pending-requests{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-md)}.pending-request-card{background:var(--color-warning-light);border:1px solid #fcd34d;border-radius:var(--radius-lg);padding:var(--spacing-md)}.request-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.staff-name{font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.request-details{display:flex;flex-direction:column;gap:var(--spacing-xs);font-size:var(--font-size-body);margin-bottom:var(--spacing-sm)}.leave-type{font-weight:var(--font-weight-medium);color:var(--color-neutral-700)}.leave-dates{color:var(--color-neutral-500)}.leave-reason{margin:0;font-size:var(--font-size-body);color:var(--color-neutral-500);font-style:italic}.coverage-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--spacing-md)}.coverage-card{background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:var(--spacing-md);text-align:center}.coverage-card.adequate{border-color:#86efac;background:#f0fdf4}.coverage-card.understaffed{border-color:#fca5a5;background:var(--color-error-light)}.coverage-card.overstaffed{border-color:#fcd34d;background:var(--color-warning-light)}.shift-name{display:block;font-weight:var(--font-weight-medium);color:var(--color-neutral-900);margin-bottom:var(--spacing-xs)}.coverage-count{display:block;font-size:var(--font-size-h3);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.coverage-status{display:block;font-size:var(--font-size-caption);color:var(--color-neutral-500);margin-top:var(--spacing-xs);text-transform:capitalize}.conflicts-list{display:flex;flex-direction:column;gap:12px}.conflict-item{display:flex;align-items:flex-start;gap:12px;padding:12px var(--spacing-md);background:var(--color-error-light);border:1px solid #fca5a5;border-radius:var(--radius-md)}.conflict-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:var(--color-error);color:var(--color-white);border-radius:var(--radius-full);font-weight:var(--font-weight-bold);flex-shrink:0}.conflict-details{font-size:var(--font-size-body)}.conflict-details strong{color:var(--color-neutral-900)}.conflict-details p{margin:var(--spacing-xs) 0 0 0;color:var(--color-neutral-500)}.subscription-overview{margin-bottom:var(--spacing-lg)}.plan-card{background:var(--color-white);border:2px solid var(--color-neutral-200);border-radius:var(--radius-xl);padding:var(--spacing-lg);max-width:350px}.plan-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.plan-tier{padding:var(--spacing-xs) 12px;border-radius:var(--radius-sm);color:var(--color-white);font-weight:var(--font-weight-semibold);text-transform:uppercase;font-size:var(--font-size-caption)}.plan-status{font-size:var(--font-size-caption);padding:2px var(--spacing-sm);border-radius:3px}.plan-price{margin-bottom:var(--spacing-md)}.price-amount{font-size:var(--font-size-h1);font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.price-period,.plan-dates{font-size:var(--font-size-body);color:var(--color-neutral-500)}.plan-dates div{margin-bottom:var(--spacing-xs)}.usage-bars{display:flex;flex-direction:column;gap:var(--spacing-md)}.usage-item{background:var(--color-neutral-50);border-radius:var(--radius-lg);padding:var(--spacing-md)}.usage-header{display:flex;justify-content:space-between;margin-bottom:var(--spacing-sm);font-size:var(--font-size-body)}.usage-bar{height:8px;background:var(--color-neutral-200);border-radius:var(--radius-sm);overflow:hidden}.usage-fill{height:100%;background:var(--color-primary-900);border-radius:var(--radius-sm);transition:width var(--transition-slow)}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.feature-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:12px;background:var(--color-neutral-50);border-radius:var(--radius-md);font-size:var(--font-size-body)}.feature-item.enabled .feature-icon{color:var(--color-success)}.feature-item.disabled{opacity:.5}.feature-item.disabled .feature-icon{color:var(--color-error)}.feature-name{flex:1}.feature-limit{font-size:var(--font-size-caption);color:var(--color-neutral-500)}.visit-types{display:flex;gap:var(--spacing-md);flex-wrap:wrap}.visit-type-card{background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:var(--spacing-md) var(--spacing-lg);text-align:center}.type-name{display:block;font-size:var(--font-size-body);color:var(--color-neutral-500);margin-bottom:var(--spacing-xs)}.type-count{display:block;font-size:var(--font-size-h2);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.peak-hours-chart{display:flex;align-items:flex-end;gap:var(--spacing-sm);height:200px;padding:var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-lg)}.hour-bar{flex:1;display:flex;flex-direction:column;align-items:center;height:100%}.hour-fill{width:100%;background:var(--color-primary-900);border-radius:var(--radius-sm) var(--radius-sm) 0 0;transition:height var(--transition-slow)}.hour-label{font-size:var(--font-size-tiny);color:var(--color-neutral-500);margin-top:var(--spacing-xs)}.hour-count{font-size:var(--font-size-tiny);color:var(--color-neutral-900);font-weight:var(--font-weight-medium)}.action-tags{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.action-tag{display:inline-block;padding:2px 6px;background:var(--color-neutral-100);color:var(--color-neutral-700);border-radius:3px;font-size:var(--font-size-tiny)}.category-badge{display:inline-block;padding:2px var(--spacing-sm);background:#e0e7ff;color:#4338ca;border-radius:3px;font-size:var(--font-size-caption);text-transform:capitalize}.old-value{color:var(--color-error);text-decoration:line-through}.new-value{color:var(--color-success)}.loading-spinner{width:40px;height:40px;border:3px solid var(--color-neutral-200);border-top-color:var(--color-primary-900);border-radius:var(--radius-full);animation:spin 1s linear infinite;margin-bottom:var(--spacing-md)}@media(max-width:1024px){.report-layout{grid-template-columns:1fr}.report-sidebar{order:2}.report-main{order:1}}.superadmin-reports-module{padding:var(--spacing-lg);width:100%;box-sizing:border-box}.module-header{margin-bottom:var(--spacing-md);display:flex;justify-content:space-between;align-items:flex-start}.module-header .header-info h2{margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-h2);color:var(--color-neutral-900)}.module-header .header-info p{margin:0;color:var(--color-neutral-500)}.module-header .header-actions{display:flex;gap:var(--spacing-sm)}.module-header .btn-export{padding:10px 20px;background:var(--color-success-500, #22c55e);color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;font-size:14px;font-weight:600;transition:background .2s}.module-header .btn-export:hover:not(:disabled){background:var(--color-success-600, #16a34a)}.module-header .btn-export:disabled{background:var(--color-neutral-300);cursor:not-allowed}.export-restriction-banner{display:flex;align-items:center;gap:12px;padding:12px var(--spacing-md);background:var(--color-warning-light);border:1px solid #fcd34d;border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);font-size:var(--font-size-body);color:#92400e}.restriction-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:var(--color-warning);color:var(--color-white);border-radius:var(--radius-full);font-weight:var(--font-weight-bold);font-size:var(--font-size-body);flex-shrink:0}.report-layout{display:grid;grid-template-columns:300px 1fr;gap:var(--spacing-lg);min-height:600px}.report-sidebar{background:var(--color-neutral-50);border-radius:var(--radius-lg);padding:var(--spacing-md);border:1px solid var(--color-neutral-200)}.category-filter{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-neutral-200)}.category-btn{padding:6px 12px;border:1px solid var(--color-neutral-200);background:var(--color-white);border-radius:var(--radius-sm);font-size:var(--font-size-caption);cursor:pointer;transition:all var(--transition-fast)}.category-btn:hover{border-color:var(--color-neutral-500)}.category-btn.active{background:#6366f1;color:var(--color-white);border-color:#6366f1}.report-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.report-item{display:block;width:100%;padding:12px;background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);text-align:left;cursor:pointer;transition:all var(--transition-fast)}.report-item:hover{border-color:var(--color-neutral-500)}.report-item.active{border-color:#6366f1;box-shadow:0 0 0 2px #6366f11a}.report-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xs)}.report-name{font-weight:var(--font-weight-medium);font-size:var(--font-size-body);color:var(--color-neutral-900)}.priority-badge{font-size:var(--font-size-tiny);padding:2px 6px;border-radius:3px;text-transform:uppercase}.priority-badge.critical{background:var(--color-error-light);color:var(--color-error)}.priority-badge.high{background:#fff7ed;color:#ea580c}.priority-badge.medium{background:var(--color-info-light);color:#0284c7}.report-description{margin:0;font-size:var(--font-size-caption);color:var(--color-neutral-500);line-height:1.4}.patient-data-warning{display:block;margin-top:6px;font-size:var(--font-size-tiny);color:var(--color-warning);font-style:italic}.report-main{background:var(--color-white);border-radius:var(--radius-lg);border:1px solid var(--color-neutral-200);overflow:hidden}.report-content{padding:var(--spacing-lg)}.report-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-neutral-200)}.report-header h3{margin:0;font-size:var(--font-size-h3);color:var(--color-neutral-900)}.report-date{font-size:var(--font-size-body);color:var(--color-neutral-500)}.data-notice{display:flex;align-items:center;gap:12px;padding:12px var(--spacing-md);background:var(--color-info-light);border:1px solid #bae6fd;border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);font-size:var(--font-size-body);color:#0369a1}.notice-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#0ea5e9;color:var(--color-white);border-radius:var(--radius-full);font-weight:var(--font-weight-bold);font-size:var(--font-size-caption);flex-shrink:0}.platform-aggregates{display:flex;flex-wrap:nowrap;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);width:100%;box-sizing:border-box}.aggregate-card{flex:1 1 0;min-width:0;max-width:none;background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:var(--spacing-md);text-align:center;box-sizing:border-box}.aggregate-card.success{border-color:#86efac;background:#f0fdf4}.aggregate-card.highlight{border-color:#a5b4fc;background:#eef2ff}.aggregate-value{display:block;font-size:var(--font-size-h2);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.aggregate-label{display:block;font-size:var(--font-size-caption);color:var(--color-neutral-500);margin-top:var(--spacing-xs)}.rankings-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.ranking-card{background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:var(--spacing-md)}.ranking-card h4{margin:0 0 12px;font-size:var(--font-size-body);color:var(--color-neutral-700);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-neutral-200)}.ranking-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) 0;font-size:var(--font-size-body)}.ranking-item .rank{width:28px;font-weight:var(--font-weight-semibold);color:#6366f1}.ranking-item .clinic-name{flex:1;color:var(--color-neutral-900)}.ranking-item .value{font-weight:var(--font-weight-medium);color:var(--color-neutral-900)}.ranking-item .change{font-size:var(--font-size-caption);min-width:50px;text-align:right}.ranking-item .change.positive{color:var(--color-success)}.ranking-item .change.negative{color:var(--color-error)}.revenue-summary{display:flex;flex-wrap:nowrap;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);width:100%;box-sizing:border-box}.revenue-card{flex:1 1 0;min-width:0;max-width:none;background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:var(--spacing-md);text-align:center;box-sizing:border-box}.revenue-card.primary{background:#eef2ff;border-color:#a5b4fc}.revenue-card.success{background:#f0fdf4;border-color:#86efac}.revenue-card.error{background:var(--color-error-light);border-color:#fca5a5}.revenue-card.highlight{background:#fefce8;border-color:#fde047}.revenue-value{display:block;font-size:var(--font-size-h3);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.revenue-value.positive{color:var(--color-success)}.revenue-value.negative{color:var(--color-error)}.revenue-label{display:block;font-size:var(--font-size-caption);color:var(--color-neutral-500);margin-top:var(--spacing-xs)}.tier-revenue-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--spacing-md)}.tier-card{border:2px solid var(--color-neutral-200);border-radius:var(--radius-lg);overflow:hidden}.tier-header{padding:var(--spacing-sm);color:var(--color-white);font-weight:var(--font-weight-semibold);text-align:center;text-transform:uppercase;font-size:var(--font-size-caption)}.tier-stats{padding:var(--spacing-md);display:flex;flex-direction:column;gap:12px}.tier-stat{text-align:center}.tier-stat .stat-value{display:block;font-size:var(--font-size-h3);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.tier-stat .stat-label{display:block;font-size:var(--font-size-tiny);color:var(--color-neutral-500);text-transform:uppercase}.projections-chart{display:flex;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-lg);overflow-x:auto}.projection-bar{flex:1;min-width:100px;text-align:center}.projection-value{font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.projection-confidence{display:inline-block;margin:var(--spacing-xs) 0;padding:2px 6px;border-radius:3px;font-size:var(--font-size-tiny);text-transform:uppercase}.projection-confidence.high{background:var(--color-success-light);color:#166534}.projection-confidence.medium{background:var(--color-warning-light);color:#92400e}.projection-confidence.low{background:var(--color-error-light);color:#991b1b}.projection-month{font-size:var(--font-size-caption);color:var(--color-neutral-500)}.feature-heatmap{display:flex;flex-direction:column;gap:12px}.feature-row{display:grid;grid-template-columns:200px 1fr 200px;gap:var(--spacing-md);align-items:center;padding:12px;background:var(--color-neutral-50);border-radius:var(--radius-md)}.feature-info .feature-name{display:block;font-weight:var(--font-weight-medium);color:var(--color-neutral-900)}.feature-info .feature-category{display:block;font-size:var(--font-size-caption);color:var(--color-neutral-500)}.adoption-bar{height:24px;background:var(--color-neutral-200);border-radius:var(--radius-sm);position:relative;overflow:hidden}.adoption-fill{height:100%;background:linear-gradient(90deg,#6366f1,#8b5cf6);border-radius:var(--radius-sm);transition:width var(--transition-slow)}.adoption-value{position:absolute;right:8px;top:50%;transform:translateY(-50%);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);color:var(--color-neutral-900)}.feature-stats{display:flex;gap:var(--spacing-md);font-size:var(--font-size-caption);color:var(--color-neutral-500)}.feature-stats .trend{padding:2px 6px;border-radius:3px}.feature-stats .trend.increasing{background:var(--color-success-light);color:#166534}.feature-stats .trend.stable{background:var(--color-neutral-100);color:var(--color-neutral-700)}.feature-stats .trend.decreasing{background:var(--color-error-light);color:#991b1b}.recommendations-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-md)}.recommendation-card{background:#f0fdf4;border:1px solid #86efac;border-radius:var(--radius-lg);padding:var(--spacing-md)}.rec-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.rec-header .clinic-name{font-weight:var(--font-weight-medium);color:var(--color-neutral-900)}.rec-header .rec-feature{font-size:var(--font-size-caption);padding:2px var(--spacing-sm);background:#6366f1;color:var(--color-white);border-radius:3px}.rec-reason{margin:0 0 var(--spacing-sm) 0;font-size:var(--font-size-body);color:var(--color-neutral-500)}.rec-value{font-size:var(--font-size-caption);color:var(--color-success);font-weight:var(--font-weight-medium)}.utilization-bar{height:20px;background:var(--color-neutral-200);border-radius:var(--radius-sm);position:relative;overflow:hidden}.utilization-fill{height:100%;background:#6366f1;border-radius:var(--radius-sm)}.utilization-bar span{position:absolute;right:8px;top:50%;transform:translateY(-50%);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}.unused-features{font-size:var(--font-size-caption);color:var(--color-warning)}.all-used{font-size:var(--font-size-caption);color:var(--color-success)}.sla-overview{display:flex;gap:var(--spacing-xl);margin-bottom:var(--spacing-lg);padding:var(--spacing-lg);background:var(--color-neutral-50);border-radius:var(--radius-lg)}.sla-card{text-align:center;padding:var(--spacing-lg) var(--spacing-xl);border-radius:var(--radius-lg);border:2px solid var(--color-neutral-200);background:var(--color-white)}.sla-card.success{border-color:#86efac}.sla-card.error{border-color:#fca5a5}.sla-value{display:block;font-size:2.5rem;font-weight:var(--font-weight-bold);color:var(--color-neutral-900)}.sla-label{display:block;font-size:var(--font-size-body);color:var(--color-neutral-500);margin:var(--spacing-xs) 0}.sla-target{display:block;font-size:var(--font-size-caption);color:var(--color-neutral-500)}.sla-status{display:inline-block;margin-top:12px;padding:var(--spacing-xs) 12px;border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold)}.sla-status.met{background:var(--color-success-light);color:#166534}.sla-status.missed{background:var(--color-error-light);color:#991b1b}.downtime-breakdown{flex:1;display:flex;flex-direction:column;justify-content:center;gap:12px}.downtime-stat{display:flex;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-white);border-radius:var(--radius-sm)}.downtime-stat .stat-value{font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.downtime-stat .stat-label{color:var(--color-neutral-500)}.component-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--spacing-md)}.component-card{background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:var(--spacing-md);text-align:center}.comp-name{display:block;font-size:var(--font-size-body);font-weight:var(--font-weight-medium);color:var(--color-neutral-900);margin-bottom:var(--spacing-sm)}.comp-uptime{display:block;font-size:var(--font-size-h2);font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-sm)}.comp-uptime.good{color:var(--color-success)}.comp-uptime.fair{color:var(--color-warning)}.comp-uptime.poor{color:var(--color-error)}.comp-stats{font-size:var(--font-size-caption);color:var(--color-neutral-500);display:flex;justify-content:center;gap:var(--spacing-md)}.region-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-md)}.region-card{background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:var(--spacing-md);text-align:center}.region-name{display:block;font-weight:var(--font-weight-medium);color:var(--color-neutral-900);margin-bottom:var(--spacing-xs)}.region-uptime{display:block;font-size:var(--font-size-h3);font-weight:var(--font-weight-semibold);color:var(--color-success)}.region-clinics{display:block;font-size:var(--font-size-caption);color:var(--color-neutral-500)}.severity-badge{display:inline-block;padding:2px var(--spacing-sm);border-radius:3px;font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);text-transform:capitalize}.severity-badge.error,.severity-badge.critical{background:var(--color-error-light);color:#991b1b}.severity-badge.warning,.severity-badge.major,.severity-badge.high{background:var(--color-warning-light);color:#92400e}.severity-badge.info,.severity-badge.minor,.severity-badge.medium{background:#dbeafe;color:#1e40af}.severity-badge.neutral,.severity-badge.low{background:var(--color-neutral-100);color:var(--color-neutral-700)}.compliance-overview{display:flex;gap:var(--spacing-xl);margin-bottom:var(--spacing-lg);padding:var(--spacing-lg);background:var(--color-neutral-50);border-radius:var(--radius-lg)}.compliance-score-card{text-align:center;padding:var(--spacing-lg) var(--spacing-xl)}.score-circle{width:120px;height:120px;border-radius:var(--radius-full);background:linear-gradient(135deg,#6366f1,#8b5cf6);display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--color-white);margin:0 auto 12px}.score-value{font-size:var(--font-size-h1);font-weight:var(--font-weight-bold)}.score-max{font-size:var(--font-size-body);opacity:.8}.score-label{font-size:var(--font-size-body);color:var(--color-neutral-500)}.compliance-breakdown{flex:1;display:flex;flex-direction:column;justify-content:center;gap:12px}.breakdown-item{display:flex;justify-content:space-between;padding:12px var(--spacing-md);background:var(--color-white);border-radius:var(--radius-sm)}.breakdown-item.success{border-left:3px solid var(--color-success)}.breakdown-item.warning{border-left:3px solid var(--color-warning)}.breakdown-item.error{border-left:3px solid var(--color-error)}.breakdown-value{font-size:var(--font-size-h3);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.breakdown-label{color:var(--color-neutral-500)}.data-table{width:100%;border-collapse:collapse;font-size:var(--font-size-body)}.data-table th,.data-table td{padding:12px;text-align:left;border-bottom:1px solid var(--color-neutral-200)}.data-table th{background:var(--color-neutral-50);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700);font-size:var(--font-size-caption);text-transform:uppercase}.data-table tbody tr:hover{background:var(--color-neutral-50)}.req-name{font-weight:var(--font-weight-medium);color:var(--color-neutral-900)}.req-desc{font-size:var(--font-size-caption);color:var(--color-neutral-500);margin-top:var(--spacing-xs)}.category-badge{display:inline-block;padding:2px var(--spacing-sm);background:#e0e7ff;color:#4338ca;border-radius:3px;font-size:var(--font-size-caption);text-transform:uppercase}.criticality-badge{display:inline-block;padding:2px var(--spacing-sm);border-radius:3px;font-size:var(--font-size-caption);text-transform:capitalize}.compliance-bar{width:100px;height:20px;background:var(--color-neutral-200);border-radius:var(--radius-sm);position:relative;overflow:hidden;display:inline-block}.compliance-fill{height:100%;background:#6366f1;border-radius:var(--radius-sm)}.compliance-bar span{position:absolute;right:8px;top:50%;transform:translateY(-50%);font-size:var(--font-size-tiny);font-weight:var(--font-weight-medium)}.protection-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md)}.protection-card{background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:var(--spacing-md)}.protection-name{display:block;font-size:var(--font-size-body);color:var(--color-neutral-500);text-transform:capitalize;margin-bottom:var(--spacing-sm)}.protection-value{display:block;font-size:var(--font-size-h3);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900);margin-bottom:var(--spacing-sm)}.protection-bar{height:6px;background:var(--color-neutral-200);border-radius:3px;overflow:hidden}.protection-fill{height:100%;background:var(--color-success);border-radius:3px}.readiness-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-md)}.readiness-card{background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:var(--spacing-md);text-align:center}.readiness-card.overall{background:#eef2ff;border-color:#a5b4fc}.readiness-label{display:block;font-size:var(--font-size-caption);color:var(--color-neutral-500);margin-bottom:var(--spacing-xs)}.readiness-value{display:block;font-size:var(--font-size-h2);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.health-status-banner{display:flex;align-items:center;justify-content:center;gap:12px;padding:var(--spacing-md);border-radius:var(--radius-lg);margin-bottom:var(--spacing-lg);font-size:var(--font-size-body);font-weight:var(--font-weight-semibold)}.health-status-banner.healthy{background:var(--color-success-light);color:#166534}.health-status-banner.degraded{background:var(--color-warning-light);color:#92400e}.health-status-banner.critical{background:var(--color-error-light);color:#991b1b}.status-icon{font-size:var(--font-size-h3)}.health-metrics{display:flex;flex-wrap:nowrap;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);width:100%;box-sizing:border-box}.metric-card{flex:1 1 0;min-width:0;max-width:none;background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:var(--spacing-md);text-align:center;box-sizing:border-box}.metric-card.warning{border-color:#fcd34d;background:var(--color-warning-light)}.metric-card.success{border-color:#86efac;background:#f0fdf4}.metric-card.highlight{border-color:#a5b4fc;background:#eef2ff}.metric-value{display:block;font-size:var(--font-size-h2);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.metric-label{display:block;font-size:var(--font-size-caption);color:var(--color-neutral-500);margin-top:var(--spacing-xs)}.components-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md)}.component-health-card{background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:var(--spacing-md)}.component-health-card.healthy{border-left:3px solid var(--color-success)}.component-health-card.degraded{border-left:3px solid var(--color-warning)}.component-health-card.critical{border-left:3px solid var(--color-error)}.comp-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.comp-status-badge{display:inline-block;padding:2px 6px;border-radius:3px;font-size:var(--font-size-tiny);text-transform:uppercase}.comp-status-badge.healthy{background:var(--color-success-light);color:#166534}.comp-status-badge.degraded{background:var(--color-warning-light);color:#92400e}.comp-status-badge.critical{background:var(--color-error-light);color:#991b1b}.comp-metrics{font-size:var(--font-size-caption);color:var(--color-neutral-500)}.comp-metric{display:block}.alerts-list{display:flex;flex-direction:column;gap:12px}.alert-item{padding:12px var(--spacing-md);border-radius:var(--radius-md);border:1px solid var(--color-neutral-200)}.alert-item.info{background:var(--color-info-light);border-color:#7dd3fc}.alert-item.warning{background:var(--color-warning-light);border-color:#fcd34d}.alert-item.critical{background:var(--color-error-light);border-color:#fca5a5}.alert-header{display:flex;gap:12px;align-items:center;margin-bottom:var(--spacing-xs)}.alert-severity{padding:2px 6px;border-radius:3px;font-size:var(--font-size-tiny);text-transform:uppercase;font-weight:var(--font-weight-semibold)}.alert-severity.info{background:#0ea5e9;color:var(--color-white)}.alert-severity.warning{background:var(--color-warning);color:var(--color-white)}.alert-severity.critical{background:var(--color-error);color:var(--color-white)}.alert-component{font-weight:var(--font-weight-medium);color:var(--color-neutral-900)}.alert-time{font-size:var(--font-size-caption);color:var(--color-neutral-500);margin-left:auto}.alert-message{margin:0;font-size:var(--font-size-body);color:var(--color-neutral-700)}.alert-ack{display:inline-block;margin-top:var(--spacing-sm);font-size:var(--font-size-caption);color:var(--color-success)}.onboarding-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.progress-bar{width:100px;height:20px;background:var(--color-neutral-200);border-radius:var(--radius-sm);position:relative;overflow:hidden;display:inline-block}.progress-fill{height:100%;background:#6366f1;border-radius:var(--radius-sm)}.progress-bar span{position:absolute;right:8px;top:50%;transform:translateY(-50%);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}.stalled-row{background:var(--color-warning-light)!important}.audit-notice{display:flex;align-items:center;gap:12px;padding:12px var(--spacing-md);background:var(--color-warning-light);border:1px solid #fcd34d;border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);font-size:var(--font-size-body);color:#92400e}.audit-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.admin-activity-grid{display:flex;gap:var(--spacing-md);flex-wrap:wrap}.admin-card{background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);padding:var(--spacing-md) var(--spacing-lg);text-align:center}.admin-name{display:block;font-weight:var(--font-weight-medium);color:var(--color-neutral-900);margin-bottom:var(--spacing-xs)}.admin-actions{font-size:var(--font-size-body);color:var(--color-neutral-500)}.result-badge{display:inline-block;padding:2px var(--spacing-sm);border-radius:3px;font-size:var(--font-size-caption)}.result-badge.success{background:var(--color-success-light);color:#166534}.result-badge.denied{background:var(--color-warning-light);color:#92400e}.result-badge.error{background:var(--color-error-light);color:#991b1b}.security-alerts{display:flex;flex-direction:column;gap:12px}.security-alert{display:flex;align-items:flex-start;gap:12px;padding:12px var(--spacing-md);border-radius:var(--radius-md)}.security-alert.warning{background:var(--color-warning-light);border:1px solid #fcd34d}.security-alert.critical{background:var(--color-error-light);border:1px solid #fca5a5}.alert-type{padding:2px 6px;border-radius:3px;font-size:var(--font-size-tiny);text-transform:uppercase;font-weight:var(--font-weight-semibold)}.security-alert.warning .alert-type{background:var(--color-warning);color:var(--color-white)}.security-alert.critical .alert-type{background:var(--color-error);color:var(--color-white)}.security-alert .alert-content{display:flex;flex-direction:column;gap:var(--spacing-xs)}.security-alert .alert-content strong{color:var(--color-neutral-900)}.security-alert .alert-content span{font-size:var(--font-size-caption);color:var(--color-neutral-500)}.tier-badge{display:inline-block;padding:2px var(--spacing-sm);border-radius:3px;font-size:var(--font-size-caption);color:var(--color-white);text-transform:uppercase}.status-badge{display:inline-block;padding:2px var(--spacing-sm);border-radius:3px;font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}.status-badge.success{background:var(--color-success-light);color:#166534}.status-badge.warning{background:var(--color-warning-light);color:#92400e}.status-badge.error{background:var(--color-error-light);color:#991b1b}.status-badge.info{background:#dbeafe;color:#1e40af}.status-badge.neutral{background:var(--color-neutral-100);color:var(--color-neutral-700)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-error{color:var(--color-error)}.section{margin-bottom:var(--spacing-xl)}.section h4{margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-body);color:var(--color-neutral-900);border-bottom:1px solid var(--color-neutral-200);padding-bottom:var(--spacing-sm)}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-3xl);color:var(--color-neutral-500)}.loading-spinner{width:40px;height:40px;border:3px solid var(--color-neutral-200);border-top-color:#6366f1;border-radius:var(--radius-full);animation:spin 1s linear infinite;margin-bottom:var(--spacing-md)}.no-report{display:flex;align-items:center;justify-content:center;padding:var(--spacing-3xl);color:var(--color-neutral-500);font-size:var(--font-size-body)}@media(max-width:1024px){.report-layout{grid-template-columns:1fr}.report-sidebar{order:2}.report-main{order:1}.rankings-section{grid-template-columns:1fr}.sla-overview,.compliance-overview{flex-direction:column}}.doctor-status-panel{background:var(--color-surface, #fff);border:1px solid var(--color-border, #e2e8f0);border-radius:8px;padding:16px;margin-bottom:16px}.panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.panel-header h3{margin:0;font-size:16px;font-weight:600;color:var(--color-text-primary, #1e293b)}.current-status{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--color-surface-secondary, #f8fafc);border-radius:20px;border:2px solid}.current-status .status-icon{font-size:16px}.current-status .status-text{display:flex;flex-direction:column}.current-status .status-label{font-size:13px;font-weight:600;color:var(--color-text-primary, #1e293b)}.current-status .return-info{font-size:11px;color:var(--color-text-secondary, #64748b)}.status-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:16px}.status-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 8px;background:var(--color-surface-secondary, #f8fafc);border:2px solid transparent;border-radius:8px;cursor:pointer;transition:all .2s ease}.status-btn:hover{background:var(--color-surface-hover, #f1f5f9);border-color:var(--status-color)}.status-btn.active{background:var(--color-surface-hover, #f1f5f9);border-color:var(--status-color);box-shadow:0 0 0 3px color-mix(in srgb,var(--status-color) 20%,transparent)}.status-btn:disabled{opacity:.6;cursor:not-allowed}.status-btn .btn-icon{font-size:20px}.status-btn .btn-label{font-size:11px;font-weight:500;color:var(--color-text-secondary, #64748b)}.status-btn.active .btn-label{color:var(--color-text-primary, #1e293b);font-weight:600}.time-blocking-section{border-top:1px solid var(--color-border, #e2e8f0);padding-top:16px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.section-header h4{margin:0;font-size:14px;font-weight:600;color:var(--color-text-primary, #1e293b)}.btn-add-block{padding:6px 12px;font-size:12px;font-weight:500;color:var(--color-primary-600, #2563eb);background:var(--color-primary-50, #eff6ff);border:1px solid var(--color-primary-200, #bfdbfe);border-radius:6px;cursor:pointer;transition:all .2s ease}.btn-add-block:hover{background:var(--color-primary-100, #dbeafe)}.time-blocks-list{display:flex;flex-direction:column;gap:8px}.time-block{display:flex;align-items:center;gap:12px;padding:10px 12px;background:var(--color-surface-secondary, #f8fafc);border-radius:6px;border-left:3px solid var(--color-neutral-400, #94a3b8)}.time-block.block-blocked{border-left-color:var(--color-error-500, #ef4444);background:var(--color-error-50, #fef2f2)}.time-block.block-break{border-left-color:var(--color-info-500, #3b82f6);background:var(--color-info-50, #eff6ff)}.time-block.block-meeting{border-left-color:var(--color-purple-500, #8b5cf6);background:#f5f3ff}.block-time{font-size:13px;font-weight:600;color:var(--color-text-primary, #1e293b);white-space:nowrap}.block-reason{flex:1;font-size:12px;color:var(--color-text-secondary, #64748b);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-remove-block{width:24px;height:24px;padding:0;display:flex;align-items:center;justify-content:center;font-size:16px;color:var(--color-text-tertiary, #94a3b8);background:transparent;border:none;border-radius:4px;cursor:pointer;transition:all .2s ease}.btn-remove-block:hover{color:var(--color-error-600, #dc2626);background:var(--color-error-50, #fef2f2)}.btn-remove-block:disabled{opacity:.5;cursor:not-allowed}.no-blocks,.loading-blocks{padding:16px;text-align:center;font-size:13px;color:var(--color-text-tertiary, #94a3b8)}.doctor-status-compact{display:flex;align-items:center;gap:8px;position:relative}.status-indicator{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-md, 6px);cursor:pointer;transition:all .2s ease;white-space:nowrap;flex-shrink:0}.status-indicator:hover{background:#fff3;border-color:#ffffff4d}.status-indicator .status-icon-box{width:20px;height:20px;min-width:20px;border-radius:var(--radius-sm, 4px);display:inline-flex;align-items:center;justify-content:center;font-size:11px;color:#fff;flex-shrink:0}.status-indicator .status-icon{font-size:11px;line-height:1}.status-indicator .status-label{font-size:.6875rem;font-weight:600;color:#ffffffd9;text-transform:uppercase;letter-spacing:.02em;white-space:nowrap}.status-indicator .status-chevron{font-size:8px;color:#fff9;margin-left:2px;flex-shrink:0}.return-time{font-size:11px;color:#ffffffb3}.dropdown-backdrop-compact{position:fixed;inset:0;z-index:99}.quick-status-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:200px;background:var(--color-surface, #fff);border:1px solid var(--color-border, #e2e8f0);border-radius:8px;box-shadow:0 10px 40px #00000026;z-index:100;overflow:hidden;animation:dropdownSlideIn .15s ease}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.dropdown-header{padding:10px 12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-tertiary, #94a3b8);background:var(--color-surface-secondary, #f8fafc);border-bottom:1px solid var(--color-border, #e2e8f0)}.dropdown-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;font-size:13px;text-align:left;color:var(--color-text-primary, #1e293b);background:transparent;border:none;cursor:pointer;transition:background .15s ease}.dropdown-item:hover{background:var(--color-surface-hover, #f8fafc)}.dropdown-item.active{background:var(--color-primary-50, #eff6ff)}.dropdown-item .item-icon{font-size:16px}.dropdown-item .item-label{flex:1}.dropdown-item .item-check{color:var(--color-primary-600, #2563eb);font-weight:600}.dropdown-close{width:100%;padding:10px 12px;font-size:12px;font-weight:500;text-align:center;color:var(--color-text-secondary, #64748b);background:var(--color-surface-secondary, #f8fafc);border:none;border-top:1px solid var(--color-border, #e2e8f0);cursor:pointer;transition:background .15s ease}.dropdown-close:hover{background:var(--color-surface-hover, #f1f5f9)}.dropdown-header .dropdown-status-icon{margin-right:6px}.dropdown-header .dropdown-status-label{font-weight:600;color:var(--color-text-primary, #1e293b)}.dropdown-sublabel{padding:8px 12px;font-size:12px;color:var(--color-text-secondary, #64748b);border-bottom:1px solid var(--color-border, #e2e8f0)}.dropdown-time-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:10px 12px}.dropdown-time-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:10px 6px;background:var(--color-surface, #fff);border:1px solid var(--color-border, #e2e8f0);border-radius:6px;cursor:pointer;transition:all .15s ease}.dropdown-time-btn:hover{background:var(--color-primary-50, #eff6ff);border-color:var(--color-primary-400, #60a5fa)}.dropdown-time-btn:disabled{opacity:.6;cursor:not-allowed}.dropdown-time-btn .time-value{font-size:15px;font-weight:700;color:var(--color-text-primary, #1e293b);line-height:1}.dropdown-time-btn .time-unit{font-size:10px;color:var(--color-text-tertiary, #94a3b8);text-transform:uppercase;margin-top:2px}.dropdown-time-btn.full-day{grid-column:span 3;flex-direction:row;gap:4px;padding:8px}.dropdown-time-btn.full-day .time-value{font-size:13px}.dropdown-time-btn.full-day .time-unit{font-size:11px;margin-top:0}.dropdown-back{width:100%;padding:10px 12px;font-size:12px;font-weight:500;text-align:left;color:var(--color-primary-600, #2563eb);background:var(--color-surface-secondary, #f8fafc);border:none;border-top:1px solid var(--color-border, #e2e8f0);cursor:pointer;transition:background .15s ease}.dropdown-back:hover{background:var(--color-primary-50, #eff6ff)}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .15s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:var(--color-surface, #fff);border-radius:12px;box-shadow:0 20px 60px #0003;animation:slideUp .2s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--color-border, #e2e8f0)}.modal-header h3{margin:0;font-size:16px;font-weight:600;color:var(--color-text-primary, #1e293b);display:flex;align-items:center}.modal-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:20px;color:var(--color-text-tertiary, #94a3b8);background:transparent;border:none;border-radius:6px;cursor:pointer;transition:all .15s ease}.modal-close:hover{background:var(--color-surface-secondary, #f8fafc);color:var(--color-text-primary, #1e293b)}.modal-body{padding:20px}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 20px;border-top:1px solid var(--color-border, #e2e8f0);background:var(--color-surface-secondary, #f8fafc);border-radius:0 0 12px 12px}.form-group{margin-bottom:16px}.form-group:last-child{margin-bottom:0}.form-group label{display:block;margin-bottom:8px;font-size:13px;font-weight:500;color:var(--color-text-primary, #1e293b)}.form-group select,.form-group input{width:100%;padding:10px 12px;font-size:14px;color:var(--color-text-primary, #1e293b);background:var(--color-surface, #fff);border:1px solid var(--color-border, #e2e8f0);border-radius:6px;transition:border-color .15s ease}.form-group select:focus,.form-group input:focus{outline:none;border-color:var(--color-primary-500, #3b82f6)}.btn-primary{padding:10px 20px;font-size:14px;font-weight:500;color:#fff;background:var(--color-primary-600, #2563eb);border:none;border-radius:6px;cursor:pointer;transition:background .15s ease}.btn-primary:hover{background:var(--color-primary-700, #1d4ed8)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{padding:10px 20px;font-size:14px;font-weight:500;color:var(--color-text-secondary, #64748b);background:var(--color-surface, #fff);border:1px solid var(--color-border, #e2e8f0);border-radius:6px;cursor:pointer;transition:all .15s ease}.btn-secondary:hover{background:var(--color-surface-secondary, #f8fafc);color:var(--color-text-primary, #1e293b)}.status-modal,.block-modal{max-width:400px;width:90%}.status-description{margin:0 0 16px;padding:12px;font-size:13px;color:var(--color-text-secondary, #64748b);background:var(--color-surface-secondary, #f8fafc);border-radius:6px}.duration-options{display:flex;flex-wrap:wrap;gap:8px}.duration-btn{padding:8px 16px;font-size:13px;color:var(--color-text-secondary, #64748b);background:var(--color-surface-secondary, #f8fafc);border:1px solid var(--color-border, #e2e8f0);border-radius:6px;cursor:pointer;transition:all .2s ease}.duration-btn:hover{background:var(--color-surface-hover, #f1f5f9);border-color:var(--color-primary-300, #93c5fd)}.duration-btn.active{color:var(--color-primary-700, #1d4ed8);background:var(--color-primary-50, #eff6ff);border-color:var(--color-primary-500, #3b82f6)}.block-type-options{display:flex;gap:8px}.type-btn{flex:1;padding:10px;font-size:12px;text-align:center;color:var(--color-text-secondary, #64748b);background:var(--color-surface-secondary, #f8fafc);border:2px solid transparent;border-radius:6px;cursor:pointer;transition:all .2s ease}.type-btn:hover{background:var(--color-surface-hover, #f1f5f9)}.type-btn.active{color:var(--color-text-primary, #1e293b);background:var(--color-surface, #fff);border-color:var(--color-primary-500, #3b82f6)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(max-width:480px){.status-buttons{grid-template-columns:repeat(2,1fr)}.form-row{grid-template-columns:1fr}.duration-options{flex-direction:column}.duration-btn{width:100%}.block-type-options{flex-direction:column}}.dashboard{min-height:100vh;display:flex;flex-direction:column;background:var(--color-neutral-50)}.dashboard-header{background:var(--color-primary-900);color:#fff;padding:1rem 2rem;display:flex;justify-content:flex-start;align-items:center;gap:var(--spacing-lg)}.header-left{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:var(--spacing-md);flex:0 0 auto;text-align:left}.header-left .clinic-name{white-space:nowrap}.header-right{margin-left:auto;display:flex;align-items:center;gap:var(--spacing-lg)}.header-logo{height:55px;width:auto;max-width:184px;-o-object-fit:contain;object-fit:contain;background:var(--color-white);padding:6px 12px;border-radius:var(--radius-sm);box-shadow:0 1px 3px #0000001a}.header-left h1{margin:0;font-family:var(--font-heading);font-size:var(--font-size-h2);font-weight:var(--font-weight-bold);color:#fff}.clinic-name{font-size:var(--font-size-h3);font-weight:var(--font-weight-semibold);color:#fff}.header-stats{display:flex;align-items:center;gap:var(--spacing-sm)}.header-stat{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);color:#fff}.header-stat:hover{background:#fff3;border-color:#ffffff4d}.header-stat.active{background:#ffffff40;border-color:#fff6}.header-stat-icon{width:22px;height:22px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0}.header-stat-icon.queue{background:linear-gradient(135deg,var(--color-primary-900) 0%,var(--color-primary-600) 100%)}.header-stat-icon.visits{background:linear-gradient(135deg,var(--color-success) 0%,var(--color-success-hover) 100%)}.header-stat-value{font-size:.9375rem;font-weight:var(--font-weight-bold);color:#fff;line-height:1;min-width:16px;text-align:center}.header-stat-label{font-size:var(--font-size-caption);color:#fffc;white-space:nowrap}.header-user-section{display:flex;align-items:center;gap:var(--spacing-md)}.header-user-section .header-date{font-size:var(--font-size-caption);color:#ffffffb3}.user-dropdown-container{position:relative}.user-dropdown-trigger{display:flex;align-items:center;padding:var(--spacing-sm) var(--spacing-md);background:#ffffff1a;color:var(--color-white);border:1px solid rgba(255,255,255,.3);border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-body);transition:background var(--transition-normal)}.user-dropdown-trigger:hover{background:#fff3}.user-dropdown-trigger .user-info{font-size:var(--font-size-body);color:#fff}.user-dropdown-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:200px;background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:9999;padding:var(--spacing-xs) 0}.user-dropdown-item{display:block;width:100%;padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:none;text-align:left;font-size:var(--font-size-body);color:var(--color-neutral-700);cursor:pointer;transition:background var(--transition-fast)}.user-dropdown-item:hover{background:var(--color-neutral-100)}.user-dropdown-item.logout{color:var(--color-error)}.user-dropdown-item.logout:hover{background:var(--color-error-light)}.user-dropdown-divider{height:1px;background:var(--color-neutral-200);margin:var(--spacing-xs) 0}.command-bar-hint{display:flex;align-items:center;gap:4px;padding:6px 10px;background:#ffffff1a;border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-normal)}.command-bar-hint:hover{background:#fff3}.command-bar-hint kbd{padding:2px 6px;background:#ffffff26;border-radius:var(--radius-sm);font-size:var(--font-size-caption);font-family:inherit;color:#ffffffe6}.user-info{font-size:var(--font-size-body)}.logout-button{padding:var(--spacing-sm) var(--spacing-md);background:#ffffff1a;color:var(--color-white);border:1px solid rgba(255,255,255,.3);border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-body);transition:background var(--transition-normal)}.logout-button:hover{background:#fff3}.dashboard-nav{background:var(--color-primary-900);padding:0 2rem;display:flex;gap:.25rem;overflow:visible;position:relative;z-index:var(--z-dropdown)}.nav-item{padding:var(--spacing-md) 1.25rem;color:var(--color-neutral-500);background:transparent;border:none;text-decoration:none;font-size:var(--font-size-body);font-weight:var(--font-weight-medium);border-bottom:3px solid transparent;cursor:pointer;transition:color var(--transition-normal),border-color var(--transition-normal);display:flex;align-items:center;gap:var(--spacing-sm);white-space:nowrap}.nav-item:hover{color:var(--color-white)}.nav-item.active{color:var(--color-white);border-bottom-color:var(--color-primary-900)}.nav-item.superadmin{background:linear-gradient(135deg,#667eea33,#764ba233);border-radius:var(--radius-sm) var(--radius-sm) 0 0;margin-right:var(--spacing-sm)}.nav-item.superadmin:hover{background:linear-gradient(135deg,#667eea4d,#764ba24d)}.nav-item.superadmin.active{background:linear-gradient(135deg,#667eea66,#764ba266);border-bottom-color:#667eea}.nav-item.support{width:-moz-fit-content;width:fit-content;flex-shrink:0}.nav-item.support:hover{background:#ffffff14}.nav-item.support.active{border-bottom-color:var(--color-primary-900)}.nav-item.single-item{gap:var(--spacing-sm);width:-moz-fit-content;width:fit-content;flex-shrink:0}.nav-item-arrow{display:flex;align-items:center;opacity:.7;transition:opacity var(--transition-normal)}.nav-item:hover .nav-item-arrow{opacity:1}.nav-badge{font-size:.6875rem;font-weight:var(--font-weight-bold);padding:.125rem var(--spacing-sm);border-radius:10px;background:var(--color-primary-900);color:var(--color-white);min-width:18px;text-align:center}.nav-badge.muted{background:var(--color-neutral-700)}.nav-badge.warning{background:var(--color-warning)}.nav-badge.highlight{background:var(--color-success)}.nav-horizontal-group{display:flex;align-items:center;gap:0}.nav-horizontal-label{padding:var(--spacing-md) 1.25rem;color:var(--color-white);font-size:var(--font-size-body);font-weight:var(--font-weight-bold);border-bottom:3px solid transparent;background:#ffffff1a;border-radius:var(--radius-sm) 0 0 0}.nav-horizontal-item{padding:var(--spacing-md) 1rem;color:#ffffffd9;background:transparent;border:none;font-size:var(--font-size-body);font-weight:var(--font-weight-medium);border-bottom:3px solid transparent;cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;gap:var(--spacing-sm);white-space:nowrap;position:relative}.nav-horizontal-item:hover{color:var(--color-white);background:#ffffff14}.nav-horizontal-item.active{color:var(--color-white);background:#ffffff26;border-bottom-color:var(--color-primary-300)}.nav-horizontal-item:after{content:"";position:absolute;right:0;top:50%;transform:translateY(-50%);height:20px;width:1px;background:#fff3}.nav-horizontal-item:last-child:after{display:none}.nav-stats{display:flex;align-items:center;gap:var(--spacing-sm);margin-left:auto;padding-right:var(--spacing-sm)}.nav-action-btn{padding:6px 14px;border-radius:var(--radius-md);font-size:.8125rem;font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.nav-action-btn.primary{background:var(--color-success);color:#fff;border:none}.nav-action-btn.primary:hover{background:var(--color-success-hover);transform:translateY(-1px)}.nav-action-btn.secondary{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.6)}.nav-action-btn.secondary:hover{background:#ffffff1a;border-color:#fff}.nav-stat{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);color:#fff}.nav-stat-icon{width:22px;height:22px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0}.nav-stat-icon.queue{background:linear-gradient(135deg,var(--color-primary-900) 0%,var(--color-primary-600) 100%)}.nav-stat-icon.visits{background:linear-gradient(135deg,var(--color-success) 0%,var(--color-success-hover) 100%)}.nav-stat-icon.bookings{background:linear-gradient(135deg,var(--color-primary-900) 0%,var(--color-primary-900) 100%)}.nav-stat-icon.consultation{background:linear-gradient(135deg,#38a169,#276749)}.nav-stat-icon.pharmacy{background:linear-gradient(135deg,var(--color-warning) 0%,var(--color-warning-hover) 100%)}.nav-stat-icon.billing{background:linear-gradient(135deg,#3182ce,#2b6cb0)}.nav-stat-value{font-size:.9375rem;font-weight:var(--font-weight-bold);color:#fff;line-height:1;min-width:16px;text-align:center}.nav-stat-label{font-size:var(--font-size-caption);color:#fffc;white-space:nowrap}.nav-doctor-status{margin-left:var(--spacing-sm);padding-left:var(--spacing-sm);border-left:1px solid rgba(255,255,255,.2)}.schedule-with-status{display:flex;gap:var(--spacing-lg);height:100%}.schedule-with-status>*:first-child{flex:1;min-width:0}.schedule-status-sidebar{width:320px;flex-shrink:0;position:sticky;top:var(--spacing-lg);height:-moz-fit-content;height:fit-content;max-height:calc(100vh - 150px);overflow-y:auto}@media(max-width:1200px){.schedule-status-sidebar{display:none}}.dashboard-content{flex:1;padding:var(--spacing-xl);width:100%;box-sizing:border-box}.compact-header{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-lg);margin-bottom:var(--spacing-md);padding:var(--spacing-sm) 0}.header-date{font-size:var(--font-size-body);color:var(--color-neutral-600);white-space:nowrap}.inline-stats{display:flex;gap:var(--spacing-xs)}.inline-stat{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast)}.inline-stat:hover:not(:disabled){border-color:var(--color-neutral-300);box-shadow:var(--shadow-sm)}.inline-stat:disabled{opacity:.5;cursor:not-allowed}.inline-stat.active{border-color:var(--color-primary-900);background:var(--color-primary-50)}.inline-stat-icon{width:28px;height:28px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0}.inline-stat-icon svg{width:16px;height:16px}.inline-stat-icon.queue{background:linear-gradient(135deg,var(--color-primary-900) 0%,var(--color-primary-600) 100%)}.inline-stat-icon.visits{background:linear-gradient(135deg,var(--color-success) 0%,var(--color-success-hover) 100%)}.inline-stat-icon.pharmacy{background:linear-gradient(135deg,var(--color-warning) 0%,var(--color-warning-hover) 100%)}.inline-stat-icon.bookings{background:linear-gradient(135deg,var(--color-primary-900) 0%,var(--color-primary-900) 100%)}.inline-stat-icon.inventory{background:linear-gradient(135deg,var(--color-info) 0%,var(--color-primary-600) 100%)}.inline-stat-value{font-size:1.125rem;font-weight:var(--font-weight-bold);color:var(--color-neutral-900);line-height:1;min-width:20px;text-align:center}.inline-stat-label{font-size:var(--font-size-caption);color:var(--color-neutral-500);white-space:nowrap}@media(max-width:768px){.compact-header{flex-direction:column;align-items:stretch;gap:var(--spacing-sm)}.header-date{text-align:center}.inline-stats{justify-content:center;flex-wrap:wrap}.inline-stat-label{display:none}}.welcome-section{margin-bottom:var(--spacing-lg);display:none}.welcome-section h2{margin:0 0 var(--spacing-xs);font-family:var(--font-heading);font-size:var(--font-size-h2);color:var(--color-neutral-900)}.welcome-section p{margin:0;color:var(--color-neutral-500);font-size:.9375rem}.stats-grid{display:none;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.stat-card{background:var(--color-white);border-radius:var(--radius-xl);padding:var(--spacing-lg) var(--spacing-md);display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--spacing-sm);box-shadow:var(--shadow-sm);border:2px solid transparent;transition:all var(--transition-normal)}.stat-card.clickable{cursor:pointer}.stat-card.clickable:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.stat-card.active{border-color:var(--color-primary-900)}.stat-icon{width:48px;height:48px;border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;font-weight:var(--font-weight-bold);font-size:1rem;color:var(--color-white);flex-shrink:0}.stat-icon svg{width:24px;height:24px}.stat-icon.queue{background:linear-gradient(135deg,var(--color-primary-900) 0%,var(--color-primary-600) 100%)}.stat-icon.visits{background:linear-gradient(135deg,var(--color-success) 0%,var(--color-success-hover) 100%)}.stat-icon.pharmacy{background:linear-gradient(135deg,var(--color-warning) 0%,var(--color-warning-hover) 100%)}.stat-icon.bookings{background:linear-gradient(135deg,var(--color-primary-900) 0%,var(--color-primary-900) 100%)}.stat-info{display:flex;flex-direction:column;align-items:center;min-width:0}.stat-value{font-size:1.75rem;font-weight:var(--font-weight-bold);color:var(--color-neutral-900);line-height:1.2}.stat-label{font-size:.8125rem;color:var(--color-neutral-500);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.module-container{background:transparent;min-height:400px;width:100%;box-sizing:border-box}.content-placeholder{background:var(--color-white);border-radius:var(--radius-xl);padding:var(--spacing-2xl);text-align:center;color:var(--color-neutral-500);box-shadow:var(--shadow-sm)}.content-placeholder p{margin:var(--spacing-sm) 0}.module-loading,.module-error{background:var(--color-white);border-radius:var(--radius-xl);padding:var(--spacing-2xl);text-align:center;color:var(--color-neutral-500);box-shadow:var(--shadow-sm)}.module-error{color:var(--color-error)}.retry-button{margin-top:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-lg);background:var(--color-primary-900);color:var(--color-white);border:none;border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-body);transition:background var(--transition-normal)}.retry-button:hover{background:var(--color-primary-600)}@media(max-width:1024px){.dashboard-content{padding:var(--spacing-lg)}.stats-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.dashboard-header{padding:var(--spacing-md);flex-direction:column;gap:.75rem;align-items:flex-start}.header-right{width:100%;justify-content:space-between}.dashboard-nav{padding:0 var(--spacing-md)}.nav-item{padding:.875rem var(--spacing-md);font-size:.8125rem}.dashboard-content{padding:var(--spacing-md)}.welcome-section h2{font-size:1.25rem}}@media(max-width:480px){.stats-grid{grid-template-columns:1fr;gap:.75rem}.stat-card{padding:var(--spacing-md)}.stat-value,.header-left h1{font-size:1.25rem}}.help-button-fixed{position:fixed;bottom:24px;right:24px;width:48px;height:48px;border-radius:50%;background:var(--color-primary-900);color:#fff;border:none;font-size:1.5rem;font-weight:var(--font-weight-bold);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #00000040;transition:all var(--transition-fast);z-index:1000}.help-button-fixed:hover{background:var(--color-primary-600);transform:scale(1.1);box-shadow:0 6px 16px #0000004d}.help-button-fixed:active{transform:scale(1.05)}@media(max-width:768px){.help-button-fixed{bottom:16px;right:16px;width:40px;height:40px;font-size:1.25rem}}.staff-directory-page{padding:var(--spacing-lg);max-width:1400px;margin:0 auto;background:var(--color-neutral-50);min-height:100vh}.page-header{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-neutral-200)}.back-button{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;margin-bottom:var(--spacing-md);background:var(--color-white);border:1px solid var(--color-neutral-300);border-radius:var(--radius-lg);font-family:var(--font-body);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);color:var(--color-neutral-700);cursor:pointer;transition:all var(--transition-normal)}.back-button:hover{background:var(--color-neutral-50);border-color:var(--color-primary-300);color:var(--color-primary-900)}.back-button svg{flex-shrink:0}.page-header h1{margin:0 0 var(--spacing-xs) 0;font-family:var(--font-heading);font-size:var(--font-size-h1);font-weight:var(--font-weight-bold);color:var(--color-primary-900);line-height:var(--line-height-h1)}.page-subtitle{margin:0;font-family:var(--font-body);color:var(--color-neutral-700);font-size:var(--font-size-body)}.filters-bar{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);padding:var(--spacing-md);background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);position:relative;z-index:10}.search-box{position:relative;flex:1;max-width:400px}.search-input{width:100%;height:var(--input-height);padding:0 var(--spacing-md) 0 44px;border:var(--input-border-width) solid var(--color-neutral-300);border-radius:var(--radius-lg);font-family:var(--font-body);font-size:var(--font-size-body);color:var(--color-neutral-900);background:var(--color-white);transition:border-color var(--transition-normal),box-shadow var(--transition-normal)}.search-input::-moz-placeholder{color:var(--color-neutral-500)}.search-input::placeholder{color:var(--color-neutral-500)}.search-input:focus{outline:none;border-color:var(--color-primary-900);box-shadow:0 0 0 3px #4a63b326}.search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--color-neutral-500);pointer-events:none}.role-filter{height:var(--input-height);padding:0 var(--spacing-md);border:var(--input-border-width) solid var(--color-neutral-300);border-radius:var(--radius-lg);font-family:var(--font-body);font-size:var(--font-size-body);color:var(--color-neutral-900);background:var(--color-white);cursor:pointer;transition:border-color var(--transition-normal);min-width:160px}.role-filter:focus{outline:none;border-color:var(--color-primary-900);box-shadow:0 0 0 3px #4a63b326}.results-count{margin-bottom:var(--spacing-md);font-family:var(--font-body);color:var(--color-neutral-700);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}.profile-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.profile-card{background:var(--color-white);border:1px solid var(--color-neutral-200);border-radius:var(--radius-xl);padding:var(--spacing-lg);cursor:pointer;transition:transform var(--transition-normal),box-shadow var(--transition-normal),border-color var(--transition-normal);position:relative;z-index:1}.profile-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--color-primary-300)}.profile-card:active{transform:translateY(-2px)}.profile-photo{display:flex;justify-content:center;margin-bottom:var(--spacing-md)}.profile-photo img{width:88px;height:88px;border-radius:var(--radius-full);-o-object-fit:cover;object-fit:cover;border:3px solid var(--color-primary-100);box-shadow:var(--shadow-sm)}.profile-info{text-align:center}.profile-name{margin:0 0 var(--spacing-xs) 0;font-family:var(--font-heading);font-size:var(--font-size-h4);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.profile-role{margin-bottom:var(--spacing-sm)}.contact-info{display:flex;flex-direction:column;gap:var(--spacing-xs);margin:var(--spacing-sm) 0;padding-top:var(--spacing-sm);border-top:1px solid var(--color-neutral-100)}.contact-item{display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);font-family:var(--font-body);font-size:var(--font-size-caption);color:var(--color-neutral-700)}.contact-item svg{flex-shrink:0;color:var(--color-primary-900)}.bio-preview{margin:var(--spacing-sm) 0 0 0;padding-top:var(--spacing-sm);border-top:1px solid var(--color-neutral-100);font-family:var(--font-body);font-size:var(--font-size-caption);color:var(--color-neutral-700);line-height:1.5;text-align:left}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-3xl) var(--spacing-lg);color:var(--color-neutral-700)}.spinner{width:48px;height:48px;border:4px solid var(--color-neutral-200);border-top-color:var(--color-primary-900);border-radius:var(--radius-full);animation:spin .8s linear infinite;margin-bottom:var(--spacing-md)}.loading-state p{font-family:var(--font-body);font-size:var(--font-size-body);color:var(--color-neutral-700)}.error-state{padding:var(--spacing-3xl) var(--spacing-lg);text-align:center}.error-state p{font-family:var(--font-body);font-size:var(--font-size-body);color:var(--color-error)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-3xl) var(--spacing-lg);text-align:center}.empty-state svg{color:var(--color-neutral-300);margin-bottom:var(--spacing-md)}.empty-state h3{margin:0 0 var(--spacing-xs) 0;font-family:var(--font-heading);font-size:var(--font-size-h4);font-weight:var(--font-weight-semibold);color:var(--color-neutral-900)}.empty-state p{margin:0;font-family:var(--font-body);font-size:var(--font-size-body);color:var(--color-neutral-500)}@media(max-width:1024px){.profile-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--spacing-md)}}@media(max-width:768px){.staff-directory-page{padding:var(--spacing-md)}.page-header h1{font-size:var(--font-size-h2)}.filters-bar{flex-direction:column;padding:var(--spacing-sm);gap:var(--spacing-sm)}.search-box{max-width:none}.profile-grid{grid-template-columns:1fr;gap:var(--spacing-md)}.profile-card{padding:var(--spacing-md)}.profile-photo img{width:72px;height:72px}}.superadmin-login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1e1b4b,#4c1d95,#7c3aed);padding:var(--spacing-md)}.superadmin-login-card{background:var(--color-white);border-radius:var(--radius-xl);box-shadow:0 25px 50px -12px #0006;padding:3rem;width:100%;max-width:450px;border-top:4px solid #7c3aed}.superadmin-login-header{text-align:center;margin-bottom:var(--spacing-xl)}.platform-badge{display:inline-block;background:linear-gradient(135deg,#7c3aed,#a855f7);color:#fff;font-size:.75rem;font-weight:var(--font-weight-semibold);padding:.25rem .75rem;border-radius:var(--radius-full);margin-bottom:var(--spacing-md);text-transform:uppercase;letter-spacing:.05em}.superadmin-login-header h1{font-family:var(--font-heading);font-size:var(--font-size-h1);font-weight:var(--font-weight-bold);color:#1e1b4b;margin:0 0 var(--spacing-sm)}.superadmin-login-header p{color:var(--color-neutral-500);margin:0;font-size:.95rem}.superadmin-login-form{display:flex;flex-direction:column;gap:1.25rem}.superadmin-login-form .form-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.superadmin-login-form .form-group label{font-size:var(--font-size-body);font-weight:var(--font-weight-medium);color:var(--color-neutral-700)}.superadmin-login-form .form-group input{padding:.75rem 1rem;border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);font-size:1rem;transition:border-color var(--transition-normal),box-shadow var(--transition-normal)}.superadmin-login-form .form-group input:focus{outline:none;border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed33}.superadmin-login-form .form-group input:disabled{background:var(--color-neutral-50);cursor:not-allowed}.superadmin-login-button{padding:.875rem 1.5rem;background:linear-gradient(135deg,#7c3aed,#6d28d9);color:var(--color-white);border:none;border-radius:var(--radius-lg);font-size:1rem;font-weight:var(--font-weight-semibold);cursor:pointer;transition:background-color var(--transition-normal),transform .1s,box-shadow var(--transition-normal);margin-top:var(--spacing-sm)}.superadmin-login-button:hover:not(:disabled){background:linear-gradient(135deg,#6d28d9,#5b21b6);box-shadow:0 4px 12px #7c3aed66}.superadmin-login-button:active:not(:disabled){transform:scale(.98)}.superadmin-login-button:disabled{background:var(--color-neutral-500);cursor:not-allowed}.superadmin-login-error{padding:.75rem 1rem;background:#fef2f2;color:#dc2626;border-radius:var(--radius-lg);font-size:var(--font-size-body);border:1px solid #fca5a5}.superadmin-login-footer{margin-top:var(--spacing-lg);text-align:center;padding-top:var(--spacing-lg);border-top:1px solid var(--color-neutral-100)}.superadmin-login-footer p{color:var(--color-neutral-500);margin:0}.superadmin-login-footer small{font-size:var(--font-size-caption);line-height:1.6}.superadmin-login-footer a{color:#7c3aed;text-decoration:none;font-weight:var(--font-weight-medium)}.superadmin-login-footer a:hover{text-decoration:underline}.superadmin-portal{min-height:100vh;display:flex;flex-direction:column;background:#f8f7ff}.portal-header{background:linear-gradient(135deg,#1e1b4b,#4c1d95);color:#fff;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center;box-shadow:0 4px 12px #00000026}.header-left{display:flex;align-items:center;gap:1rem}.platform-logo{display:flex;align-items:center;gap:.75rem}.logo-icon{width:40px;height:40px;background:linear-gradient(135deg,#7c3aed,#a855f7);border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.25rem}.logo-text{display:flex;flex-direction:column}.logo-name{font-weight:700;font-size:1.25rem}.logo-subtitle{font-size:.75rem;opacity:.8}.header-right{display:flex;align-items:center;gap:1.5rem}.user-info{display:flex;flex-direction:column;align-items:flex-end}.user-name{font-weight:600}.user-role{font-size:.75rem;opacity:.8}.btn-logout{display:flex;align-items:center;gap:.5rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;padding:.5rem 1rem;border-radius:8px;cursor:pointer;transition:all .2s}.btn-logout:hover{background:#fff3}.portal-main{flex:1;padding:2rem;max-width:1400px;margin:0 auto;width:100%}.portal-footer{background:#1e1b4b;color:#fff9;padding:1rem 2rem;text-align:center;font-size:.875rem}.portal-dashboard{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.tools-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.25rem}.tool-card{background:#fff;border-radius:12px;padding:1.25rem;display:flex;align-items:center;gap:1rem;cursor:pointer;transition:all .2s;border:1px solid #e5e7eb;box-shadow:0 1px 3px #0000000d}.tool-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px #7c3aed26;border-color:#a78bfa}.tool-icon{width:50px;height:50px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.tool-icon.superadmin-clinics{background:linear-gradient(135deg,#3b82f6,#1d4ed8)}.tool-icon.superadmin-access{background:linear-gradient(135deg,#f59e0b,#d97706)}.tool-icon.superadmin-billing{background:linear-gradient(135deg,#10b981,#059669)}.tool-icon.superadmin-broadcast{background:linear-gradient(135deg,#ef4444,#dc2626)}.tool-icon.superadmin-health{background:linear-gradient(135deg,#22c55e,#16a34a)}.tool-icon.superadmin-performance{background:linear-gradient(135deg,#6366f1,#4f46e5)}.tool-icon.superadmin-compare{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.tool-icon.superadmin-compliance{background:linear-gradient(135deg,#14b8a6,#0d9488)}.tool-icon.superadmin-locks{background:linear-gradient(135deg,#64748b,#475569)}.tool-icon.superadmin-branding{background:linear-gradient(135deg,#ec4899,#be185d)}.tool-icon.superadmin-violations{background:linear-gradient(135deg,#f97316,#ea580c)}.tool-icon.superadmin-staff{background:linear-gradient(135deg,#06b6d4,#0891b2)}.tool-icon.superadmin-subscription{background:linear-gradient(135deg,#8b5cf6,#6d28d9)}.tool-icon.superadmin-support{background:linear-gradient(135deg,#0ea5e9,#0284c7)}.tool-icon.superadmin-templates{background:linear-gradient(135deg,#a855f7,#9333ea)}.tool-content{flex:1;min-width:0}.tool-title{font-weight:600;color:#1e1b4b;margin:0 0 .25rem;font-size:1rem}.tool-description{color:#6b7280;font-size:.875rem;margin:0;line-height:1.4}.tool-arrow{color:#a78bfa;font-size:1.25rem;font-weight:600}.portal-view{animation:fadeIn .3s ease}.view-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #e5e7eb}.view-header h2{margin:0;color:#1e1b4b;font-size:1.5rem;flex:1}.btn-back{background:none;border:none;color:#7c3aed;font-size:.9rem;cursor:pointer;padding:.5rem 0;font-weight:500}.btn-back:hover{text-decoration:underline}.btn-primary{background:linear-gradient(135deg,#7c3aed,#6d28d9);color:#fff;border:none;padding:.5rem 1rem;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary:hover{box-shadow:0 4px 12px #7c3aed66}.support-dashboard-container{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.compliance-summary-cards,.revenue-summary-cards,.billing-summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1.5rem}.summary-card{background:#fff;padding:1.25rem;border-radius:12px;text-align:center;border:1px solid #e5e7eb}.summary-card .summary-value{font-size:1.75rem;font-weight:700;color:#1e1b4b}.summary-card .summary-label{font-size:.875rem;color:#6b7280;margin-top:.25rem}.summary-card.warning .summary-value{color:#f59e0b}.summary-card.revenue-mrr{border-left:4px solid #22c55e}.summary-card.revenue-arr{border-left:4px solid #3b82f6}.summary-card.revenue-active{border-left:4px solid #8b5cf6}.summary-card.revenue-trial{border-left:4px solid #06b6d4}.summary-card.revenue-pastdue{border-left:4px solid #f59e0b}.compliance-breakdown{background:#fff;border-radius:12px;padding:1.25rem;margin-bottom:1.5rem;border:1px solid #e5e7eb}.compliance-breakdown h3{font-size:1rem;font-weight:600;color:#374151;margin:0 0 1rem}.breakdown-grid{display:flex;flex-wrap:wrap;gap:.75rem}.breakdown-item{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.breakdown-item .breakdown-label{font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase}.breakdown-item .breakdown-value{font-size:1.125rem;font-weight:700;color:#1e1b4b}.breakdown-item.severity-critical{border-left:3px solid #dc2626}.breakdown-item.severity-high{border-left:3px solid #ea580c}.breakdown-item.severity-medium{border-left:3px solid #ca8a04}.breakdown-item.severity-low{border-left:3px solid #65a30d}.type-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.7rem;font-weight:600;text-transform:uppercase}.type-badge.type-pdpa{background:#dbeafe;color:#1d4ed8}.type-badge.type-security{background:#fee2e2;color:#dc2626}.type-badge.type-audit{background:#fef3c7;color:#d97706}.type-badge.type-subscription{background:#d1fae5;color:#059669}.type-badge.type-data{background:#e0e7ff;color:#4338ca}.severity-badge.severity-critical{background:#dc2626}.severity-badge.severity-high{background:#ea580c}.severity-badge.severity-medium{background:#ca8a04}.severity-badge.severity-low{background:#65a30d}.compliance-footer{margin-top:1.5rem;padding-top:1rem;border-top:1px solid #e5e7eb;color:#6b7280;font-size:.875rem}.data-table{background:#fff;border-radius:12px;overflow:hidden;border:1px solid #e5e7eb}.data-table table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:.875rem 1rem;text-align:left;border-bottom:1px solid #f3f4f6}.data-table th{background:#f9fafb;font-weight:600;color:#374151;font-size:.875rem;text-transform:uppercase;letter-spacing:.025em}.data-table tbody tr:hover{background:#faf5ff}.data-table tbody tr.past-due-row{background:#fef3c7}.data-table tfoot tr{background:#f9fafb;font-weight:600}.data-table .clinic-name{font-weight:500;color:#1e1b4b}.data-table .amount{font-family:SF Mono,monospace;color:#059669}.data-table .amount.warning{color:#f59e0b}.tier-badge{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;color:#fff;text-transform:uppercase}.status-badge{display:inline-block;padding:.25rem .5rem;border-radius:6px;font-size:.75rem;font-weight:500}.status-badge.success{background:#dcfce7;color:#16a34a}.status-badge.warning{background:#fef3c7;color:#d97706}.status-badge.error{background:#fee2e2;color:#dc2626}.status-indicator{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;color:#fff}.filters-bar{display:flex;gap:1rem;align-items:center;margin-bottom:1rem;padding:1rem;background:#fff;border-radius:12px;border:1px solid #e5e7eb}.filter-group{display:flex;align-items:center;gap:.5rem}.filter-group label{font-size:.875rem;color:#6b7280;font-weight:500}.filter-group select{padding:.5rem 1rem;border:1px solid #e5e7eb;border-radius:8px;font-size:.875rem;background:#fff;cursor:pointer}.checkbox-label{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#6b7280;cursor:pointer}.progress-bar{width:100%;height:24px;background:#f3f4f6;border-radius:12px;position:relative;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(135deg,#7c3aed,#a855f7);border-radius:12px;transition:width .3s}.progress-bar span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.75rem;font-weight:600;color:#374151}.storage-bar{width:120px;height:20px;background:#f3f4f6;border-radius:10px;position:relative;overflow:hidden}.storage-fill{height:100%;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:10px}.storage-bar span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.65rem;font-weight:500;color:#374151}.health-summary{display:flex;gap:1rem;margin-bottom:1.5rem}.health-card{padding:1.25rem 2rem;border-radius:12px;text-align:center;color:#fff;min-width:120px}.health-card.healthy{background:linear-gradient(135deg,#22c55e,#16a34a)}.health-card.degraded{background:linear-gradient(135deg,#f59e0b,#d97706)}.health-card.down{background:linear-gradient(135deg,#ef4444,#dc2626)}.health-value{font-size:2rem;font-weight:700}.health-label{font-size:.875rem;opacity:.9}.violations-summary{display:flex;gap:1rem;margin-bottom:1.5rem}.violation-count{padding:.5rem 1rem;border-radius:8px;font-size:.875rem;font-weight:600;color:#fff}.violation-count.critical{background:#dc2626}.violation-count.high{background:#ea580c}.violation-count.medium{background:#ca8a04}.violation-count.low{background:#65a30d}.violations-list{display:flex;flex-direction:column;gap:1rem}.violation-item{background:#fff;border-radius:12px;padding:1.25rem;border:1px solid #e5e7eb;border-left:4px solid #ef4444}.violation-item.resolved{opacity:.6;border-left-color:#22c55e}.violation-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.severity-badge{padding:.25rem .5rem;border-radius:4px;font-size:.7rem;font-weight:700;color:#fff}.violation-type{font-weight:500;color:#6b7280;text-transform:capitalize}.violation-clinic{color:#1e1b4b;font-weight:600}.resolved-badge{background:#dcfce7;color:#16a34a;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;margin-left:auto}.violation-description{color:#374151;margin-bottom:.5rem}.violation-meta{font-size:.8rem;color:#9ca3af}.violation-actions{display:flex;gap:.75rem;margin-top:1rem}.btn-resolve,.btn-investigate{padding:.5rem 1rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-resolve{background:#dcfce7;color:#16a34a;border:1px solid #bbf7d0}.btn-investigate{background:#f3f4f6;color:#374151;border:1px solid #e5e7eb}.revenue-by-tier{background:#fff;border-radius:12px;padding:1.25rem;margin-bottom:1.5rem;border:1px solid #e5e7eb}.revenue-by-tier h4{margin:0 0 1rem;color:#1e1b4b}.tier-breakdown{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.tier-item{padding:1rem;background:#f9fafb;border-radius:8px}.tier-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.tier-count{font-size:.8rem;color:#6b7280}.tier-mrr{font-size:1.25rem;font-weight:700;color:#1e1b4b}.platform-branding{display:flex;flex-direction:column;gap:1.5rem}.branding-section{background:#fff;border-radius:12px;padding:1.5rem;border:1px solid #e5e7eb}.branding-section h4{margin:0 0 1rem;color:#1e1b4b;font-size:1.1rem;padding-bottom:.75rem;border-bottom:1px solid #f3f4f6}.branding-fields{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}.branding-field{display:flex;flex-direction:column;gap:.375rem}.branding-field label{font-size:.875rem;font-weight:500;color:#374151}.branding-field input,.branding-field textarea{padding:.625rem .875rem;border:1px solid #e5e7eb;border-radius:8px;font-size:.9rem;transition:all .2s}.branding-field input:focus,.branding-field textarea:focus{outline:none;border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed1a}.field-hint{font-size:.75rem;color:#9ca3af}.color-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.color-field{display:flex;flex-direction:column;gap:.375rem}.color-input-group{display:flex;gap:.5rem}.color-input-group input[type=color]{width:44px;height:36px;padding:2px;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer}.color-input-group input[type=text]{flex:1;padding:.5rem .75rem;border:1px solid #e5e7eb;border-radius:8px;font-family:SF Mono,monospace;font-size:.875rem}.color-preview{display:flex;align-items:center;gap:1rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #f3f4f6}.preview-label{font-size:.875rem;color:#6b7280}.preview-bar{flex:1;height:48px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.1rem}.file-upload-area{width:100%}.file-upload-label{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1.5rem;background:#f9fafb;border:2px dashed #d1d5db;border-radius:10px;cursor:pointer;transition:all .2s}.file-upload-label:hover{border-color:#7c3aed;background:#faf5ff}.file-input-hidden{display:none}.upload-icon{width:48px;height:48px;background:#e9d5ff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:300;color:#7c3aed;margin-bottom:.5rem}.upload-text{font-size:.9375rem;font-weight:500;color:#374151;margin-bottom:.25rem}.upload-hint{font-size:.75rem;color:#9ca3af}.uploaded-file-preview{display:flex;align-items:center;gap:1rem;padding:1rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px}.logo-preview{max-width:200px;max-height:60px;-o-object-fit:contain;object-fit:contain;border-radius:4px}.favicon-preview{width:32px;height:32px;-o-object-fit:contain;object-fit:contain;border-radius:4px}.btn-remove-file{background:#fee2e2;color:#dc2626;border:1px solid #fecaca;padding:.375rem .75rem;border-radius:6px;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .2s;margin-left:auto}.btn-remove-file:hover{background:#fecaca;border-color:#f87171}.announcements-list{display:flex;flex-direction:column;gap:1rem}.announcement-item{background:#fff;border-radius:12px;padding:1.25rem;border:1px solid #e5e7eb}.announcement-item.priority-urgent{border-left:4px solid #dc2626}.announcement-item.priority-high{border-left:4px solid #f59e0b}.announcement-item.priority-normal{border-left:4px solid #3b82f6}.announcement-item.priority-low{border-left:4px solid #22c55e}.announcement-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.priority-badge{padding:.25rem .5rem;border-radius:4px;font-size:.7rem;font-weight:700;color:#fff}.priority-badge.urgent{background:#dc2626}.priority-badge.high{background:#f59e0b}.priority-badge.normal{background:#3b82f6}.priority-badge.low{background:#22c55e}.announcement-header h4{flex:1;margin:0;color:#1e1b4b}.announcement-date{font-size:.8rem;color:#9ca3af}.announcement-message{color:#4b5563;margin:0 0 .75rem;line-height:1.5}.announcement-footer{display:flex;justify-content:space-between;font-size:.8rem;color:#9ca3af}.clinic-selector{animation:fadeIn .3s ease}.selector-hint{color:#6b7280;margin-bottom:1.5rem}.clinic-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.clinic-card{background:#fff;border-radius:12px;padding:1.25rem;display:flex;justify-content:space-between;align-items:center;cursor:pointer;border:1px solid #e5e7eb;transition:all .2s}.clinic-card:hover{border-color:#a78bfa;box-shadow:0 4px 12px #7c3aed26}.clinic-info h4{margin:0 0 .25rem;color:#1e1b4b}.clinic-email{font-size:.8rem;color:#9ca3af}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem;color:#6b7280}.loading-spinner{width:40px;height:40px;border:3px solid #f3f4f6;border-top-color:#7c3aed;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.empty-state{text-align:center;padding:3rem;color:#9ca3af}.placeholder-content{background:#fff;border-radius:12px;padding:3rem;text-align:center;color:#6b7280;border:1px solid #e5e7eb}.rating.good{color:#22c55e}.rating.average{color:#f59e0b}.trial-ends{display:block;font-size:.7rem;color:#9ca3af;margin-top:.25rem}.payment-amount{display:block;font-size:.75rem;color:#9ca3af}.billing-cycle,.role-cell{text-transform:capitalize}.action-cell{font-family:SF Mono,monospace;font-size:.8rem}.ip-cell{font-family:SF Mono,monospace;font-size:.8rem;color:#9ca3af}@media(max-width:768px){.portal-header{flex-direction:column;gap:1rem;text-align:center}.header-right{flex-direction:column;gap:1rem}.user-info{align-items:center}.tools-grid,.branding-fields,.color-fields{grid-template-columns:1fr}.tier-breakdown{grid-template-columns:repeat(2,1fr)}.health-summary,.violations-summary{flex-wrap:wrap}.filters-bar{flex-direction:column;align-items:stretch}}.portal-nav{background:linear-gradient(135deg,#4c1d95,#1a365d);padding:.75rem 2rem;display:flex;justify-content:space-between;align-items:center}.nav-links{display:flex;gap:.5rem}.nav-link{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border:none;background:#ffffff1a;color:#ffffffe6;border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s;border:1px solid rgba(255,255,255,.1)}.nav-link:hover{background:#fff3;color:#fff}.nav-link.active{background:#ffffff40;color:#fff;border-color:#ffffff4d}.nav-link svg{flex-shrink:0}.clinic-selector-dropdown{display:flex;align-items:center;gap:.5rem;padding:.375rem .5rem .375rem .75rem;background:#ffffff26;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:#fff}.clinic-selector-dropdown svg{flex-shrink:0}.clinic-dropdown{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;color:#fff;font-size:.875rem;font-weight:500;cursor:pointer;padding-right:1.5rem;min-width:200px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' 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 .25rem center}.clinic-dropdown:focus{outline:none}.clinic-dropdown option{background:#1e1b4b;color:#fff;padding:.5rem}.nav-quick-stats{display:flex;gap:.5rem}.nav-stat{display:flex;align-items:center;gap:.375rem;padding:.375rem .75rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.15);border-radius:9999px;cursor:pointer;transition:all .2s;color:#fff}.nav-stat:hover{background:#fff3;border-color:#ffffff4d}.nav-stat.active{background:#ffffff40;border-color:#fff6}.nav-stat-icon{width:24px;height:24px;border-radius:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.nav-stat-icon svg{width:14px;height:14px}.nav-stat-icon.queue{background:linear-gradient(135deg,#4c1d95,#7c3aed)}.nav-stat-icon.bookings{background:linear-gradient(135deg,#805ad5,#553c9a)}.nav-stat-icon.pharmacy{background:linear-gradient(135deg,#d97706,#f59e0b)}.nav-stat-icon.inventory{background:linear-gradient(135deg,#dc2626,#ef4444)}.nav-stat-icon.visits{background:linear-gradient(135deg,#059669,#10b981)}.nav-stat-value{font-size:1rem;font-weight:700;color:#fff;min-width:1.25rem;text-align:center}.nav-stat-label{font-size:.75rem;color:#fffc;white-space:nowrap;text-transform:uppercase;letter-spacing:.025em}.clinic-settings-view{animation:fadeIn .3s ease}.settings-header-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding:1rem 1.5rem;background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014}.settings-header-left{display:flex;align-items:center;gap:1rem}.settings-header-left h2{margin:0;font-size:1.25rem;color:#1f2937}.settings-header-right{display:flex;align-items:center}.settings-count-label{font-size:.875rem;color:#6b7280;background:#f3f4f6;padding:.25rem .75rem;border-radius:9999px}.selected-clinic-badge{display:inline-flex;align-items:center;gap:.5rem;font-size:.95rem;color:#4b5563;font-weight:500;padding-left:1rem;border-left:2px solid #e5e7eb}.tier-badge-inline{display:inline-block;padding:.125rem .5rem;border-radius:9999px;font-size:.7rem;font-weight:600;color:#fff}.settings-quick-actions{display:flex;justify-content:flex-end;align-items:center;margin-bottom:1.5rem}.quick-action-buttons{display:flex;gap:.75rem}.btn-quick-action{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#374151;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-quick-action:hover{background:#f9fafb;border-color:#7c3aed;color:#7c3aed}.btn-quick-action .btn-icon{font-size:1rem}.settings-categories-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;margin-bottom:1.5rem}.settings-category-card{background:#fff;border-radius:12px;padding:1.25rem;display:flex;align-items:flex-start;gap:1rem;cursor:pointer;border:2px solid transparent;box-shadow:0 1px 3px #00000014;transition:all .2s}.settings-category-card:hover{box-shadow:0 4px 12px #0000001a;border-color:#e9d5ff}.settings-category-card.selected{border-color:#7c3aed;box-shadow:0 4px 12px #7c3aed33}.category-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.category-icon.icon-ai{background:linear-gradient(135deg,#8b5cf6,#a855f7)}.category-icon.icon-billing{background:linear-gradient(135deg,#10b981,#34d399)}.category-icon.icon-bookings{background:linear-gradient(135deg,#f59e0b,#fbbf24)}.category-icon.icon-branding{background:linear-gradient(135deg,#ec4899,#f472b6)}.category-icon.icon-compliance{background:linear-gradient(135deg,#6366f1,#818cf8)}.category-icon.icon-inventory{background:linear-gradient(135deg,#f97316,#fb923c)}.category-icon.icon-notifications{background:linear-gradient(135deg,#ef4444,#f87171)}.category-icon.icon-portal{background:linear-gradient(135deg,#06b6d4,#22d3ee)}.category-icon.icon-pharmacy{background:linear-gradient(135deg,#14b8a6,#2dd4bf)}.category-icon.icon-queue{background:linear-gradient(135deg,#3b82f6,#60a5fa)}.category-icon.icon-reporting{background:linear-gradient(135deg,#6366f1,#818cf8)}.category-icon.icon-security{background:linear-gradient(135deg,#ef4444,#f87171)}.category-icon.icon-visits{background:linear-gradient(135deg,#0ea5e9,#38bdf8)}.category-icon.icon-templates{background:linear-gradient(135deg,#84cc16,#a3e635)}.category-icon.icon-data-import-export{background:linear-gradient(135deg,#64748b,#94a3b8)}.category-content{flex:1;min-width:0}.category-content h4{margin:0 0 .25rem;font-size:1rem;font-weight:600;color:#1f2937}.category-content p{margin:0 0 .5rem;font-size:.8rem;color:#6b7280;line-height:1.4}.settings-count{display:inline-block;font-size:.75rem;color:#9ca3af}.category-arrow{color:#9ca3af;font-size:1.25rem;align-self:center}.category-details-panel{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 4px 12px #0000001a;border-left:4px solid #7c3aed;animation:slideIn .2s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid #e5e7eb}.panel-header h3{margin:0;font-size:1.125rem;color:#1f2937}.btn-close-panel{background:none;border:none;font-size:1.25rem;color:#9ca3af;cursor:pointer;padding:.25rem;line-height:1;transition:color .2s}.btn-close-panel:hover{color:#4b5563}.panel-content p{margin:0 0 .5rem;color:#4b5563}.panel-hint{color:#9ca3af!important;font-style:italic}@media(max-width:1024px){.portal-nav{flex-direction:column;gap:1rem;padding:1rem}.nav-links,.nav-quick-stats{flex-wrap:wrap;justify-content:center}.settings-quick-actions{flex-direction:column;gap:1rem;align-items:stretch}.quick-action-buttons{justify-content:center;flex-wrap:wrap}.settings-categories-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}}@media(max-width:640px){.nav-link span{display:none}.nav-link{padding:.5rem}.nav-stat-label{display:none}.nav-stat{padding:.25rem .5rem}.settings-category-card{padding:1rem}.category-icon{width:40px;height:40px}}.currency-selector{display:flex;align-items:center;gap:.5rem}.currency-selector label{font-size:.75rem;opacity:.8}.currency-dropdown{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;padding:.375rem .75rem;border-radius:6px;font-size:.875rem;cursor:pointer}.currency-dropdown option{background:#1e1b4b;color:#fff}.error-banner{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:.75rem 1rem;border-radius:8px;display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.error-banner button{background:none;border:none;color:#dc2626;cursor:pointer;font-size:1rem}.btn-export{display:flex;align-items:center;gap:.5rem;background:#059669;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;font-size:.875rem;cursor:pointer;transition:all .2s}.btn-export:hover{background:#047857}.pagination{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:1.5rem;padding:1rem 0}.pagination-btn{background:#4c1d95;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;cursor:pointer;transition:all .2s}.pagination-btn:hover:not(:disabled){background:#5b21b6}.pagination-btn:disabled{background:#9ca3af;cursor:not-allowed}.pagination-info{color:#6b7280;font-size:.875rem}.results-count{color:#6b7280;font-size:.875rem;margin-left:auto}.empty-cell{text-align:center;color:#9ca3af;padding:2rem!important}.announcement-form-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 2px 8px #0000000d}.announcement-form-card h4{margin:0 0 1rem;color:#1f2937}.announcement-form-card .form-group{margin-bottom:1rem}.announcement-form-card label{display:block;font-size:.875rem;font-weight:500;color:#374151;margin-bottom:.375rem}.announcement-form-card input,.announcement-form-card textarea,.announcement-form-card select{width:100%;padding:.625rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem}.announcement-form-card textarea{resize:vertical;min-height:80px}.form-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1rem}.btn-secondary{background:#e5e7eb;color:#374151;border:none;padding:.5rem 1rem;border-radius:6px;cursor:pointer}.btn-secondary:hover{background:#d1d5db}.settings-editor{max-height:500px;overflow-y:auto}.settings-list{display:flex;flex-direction:column;gap:.75rem}.setting-item{display:flex;justify-content:space-between;align-items:flex-start;padding:.875rem 1rem;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.setting-info{flex:1}.setting-label{font-weight:500;color:#1f2937;display:block}.setting-description{font-size:.75rem;color:#6b7280;display:block;margin-top:.25rem}.setting-control{min-width:200px;text-align:right}.setting-value-display{display:flex;align-items:center;gap:.75rem;justify-content:flex-end}.setting-value{font-size:.875rem;color:#374151}.setting-value.enabled{color:#059669;font-weight:500}.setting-value.disabled{color:#dc2626;font-weight:500}.btn-edit-setting{background:#4c1d95;color:#fff;border:none;padding:.25rem .75rem;border-radius:4px;font-size:.75rem;cursor:pointer}.btn-edit-setting:hover{background:#5b21b6}.setting-edit-form{display:flex;gap:.5rem;align-items:center}.setting-edit-form input,.setting-edit-form select{padding:.375rem .5rem;border:1px solid #d1d5db;border-radius:4px;font-size:.875rem;min-width:100px}.btn-save-setting{background:#059669;color:#fff;border:none;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;cursor:pointer}.btn-save-setting:hover:not(:disabled){background:#047857}.btn-save-setting:disabled{background:#9ca3af;cursor:not-allowed}.btn-cancel-setting{background:#e5e7eb;color:#374151;border:none;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;cursor:pointer}.btn-cancel-setting:hover{background:#d1d5db}.change-history-panel{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1rem 1.5rem;margin-bottom:1.5rem}.change-history-panel h4{margin:0 0 1rem;color:#1f2937;font-size:.9375rem}.change-history-list{display:flex;flex-direction:column;gap:.5rem;max-height:200px;overflow-y:auto}.change-item{display:flex;align-items:center;gap:1rem;padding:.5rem;background:#f9fafb;border-radius:6px;font-size:.75rem}.change-setting{font-weight:500;color:#4c1d95;min-width:150px}.change-value{color:#374151;flex:1}.change-date{color:#9ca3af}.change-by{color:#6b7280}.settings-detail-view{display:flex;flex-direction:column;min-height:calc(100vh - 200px)}.settings-detail-header{display:flex;align-items:center;gap:1.5rem;padding:1rem 0;margin-bottom:1rem;border-bottom:1px solid #e5e7eb}.settings-detail-header .btn-back{background:linear-gradient(135deg,#7c3aed,#a855f7);border:none;padding:.625rem 1.25rem;border-radius:8px;cursor:pointer;font-size:.9375rem;font-weight:500;color:#fff;transition:transform .2s,box-shadow .2s;white-space:nowrap}.settings-detail-header .btn-back:hover{transform:translateY(-1px);box-shadow:0 4px 12px #7c3aed4d}.settings-detail-title{display:flex;align-items:center;gap:1rem}.settings-detail-title h2{margin:0;font-size:1.5rem;color:#1f2937}.clinic-name-badge{font-size:.875rem;color:#6b7280;display:flex;align-items:center}.settings-detail-content{flex:1;overflow-y:auto}.empty-state-box{background:#f9fafb;border:1px dashed #d1d5db;border-radius:8px;padding:3rem;text-align:center;color:#6b7280}.settings-list-full{display:flex;flex-direction:column;gap:.75rem}.setting-item-full{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:1rem 1.25rem;display:flex;justify-content:space-between;align-items:center;gap:1.5rem;transition:box-shadow .2s,border-color .2s}.setting-item-full:hover{border-color:#c4b5fd;box-shadow:0 2px 8px #7c3aed14}.setting-item-full .setting-info{flex:1}.setting-item-full .setting-label{display:block;font-weight:500;color:#1f2937;font-size:.9375rem;margin-bottom:.25rem}.setting-item-full .setting-description{display:block;font-size:.8125rem;color:#6b7280}.setting-item-full .setting-control{flex-shrink:0}.setting-item-full .setting-value-display{display:flex;align-items:center;gap:.75rem}.setting-item-full .setting-value{font-size:.9375rem;font-weight:500}.setting-item-full .setting-value.enabled{color:#059669}.setting-item-full .setting-value.disabled{color:#dc2626}.setting-item-full .btn-edit-setting{background:#7c3aed;color:#fff;border:none;padding:.375rem .875rem;border-radius:6px;font-size:.8125rem;cursor:pointer;transition:background .2s}.setting-item-full .btn-edit-setting:hover{background:#6d28d9}.setting-item-full .setting-edit-form{display:flex;align-items:center;gap:.5rem}.setting-item-full .setting-edit-form select,.setting-item-full .setting-edit-form input{padding:.375rem .75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;min-width:120px}.setting-item-full .btn-save-setting{background:#059669;color:#fff;border:none;padding:.375rem .75rem;border-radius:6px;font-size:.8125rem;cursor:pointer}.setting-item-full .btn-save-setting:hover{background:#047857}.setting-item-full .btn-save-setting:disabled{background:#9ca3af;cursor:not-allowed}.setting-item-full .btn-cancel-setting{background:#f3f4f6;color:#4b5563;border:1px solid #d1d5db;padding:.375rem .75rem;border-radius:6px;font-size:.8125rem;cursor:pointer}.setting-item-full .btn-cancel-setting:hover{background:#e5e7eb}.settings-detail-footer{position:sticky;bottom:0;background:#fff;border-top:1px solid #e5e7eb;padding:1rem;margin-top:1.5rem;display:flex;justify-content:space-between;align-items:center;box-shadow:0 -4px 12px #0000000d;border-radius:12px 12px 0 0}.btn-back-footer{background:linear-gradient(135deg,#7c3aed,#a855f7);color:#fff;border:none;padding:.625rem 1.25rem;border-radius:8px;font-size:.9375rem;font-weight:500;cursor:pointer;transition:transform .2s,box-shadow .2s}.btn-back-footer:hover{transform:translateY(-1px);box-shadow:0 4px 12px #7c3aed4d}.settings-count-footer{font-size:.875rem;color:#6b7280}.skip-to-content{position:absolute;top:-100px;left:50%;transform:translate(-50%);background:var(--color-primary-700);color:var(--color-white);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md);z-index:9999;font-size:16px;font-weight:500;text-decoration:none;transition:top .2s ease-in-out}.skip-to-content:focus{top:var(--spacing-md);outline:3px solid var(--color-primary-300);outline-offset:2px}.portal-footer{background:var(--color-neutral-100);border-top:1px solid var(--color-neutral-200);padding:var(--spacing-xl) var(--spacing-lg);margin-top:auto}.portal-footer-content{max-width:1200px;margin:0 auto;text-align:center}.portal-footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.portal-footer-links .footer-link{color:var(--color-primary-700);text-decoration:none;font-size:14px;font-weight:500;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);transition:background .2s}.portal-footer-links .footer-link:hover,.portal-footer-links .footer-link:focus{background:var(--color-primary-100);text-decoration:underline;outline:none}.portal-footer-links .footer-link:focus{outline:2px solid var(--color-primary-500);outline-offset:2px}.portal-footer-links .footer-separator{color:var(--color-neutral-400)}.portal-footer-info{font-size:14px;color:var(--color-neutral-600)}.portal-footer-info .footer-contact{margin-bottom:var(--spacing-sm)}.portal-footer-info .footer-phone{color:var(--color-primary-700);font-weight:600;text-decoration:none}.portal-footer-info .footer-phone:hover{text-decoration:underline}.portal-footer-info .footer-copyright{margin-bottom:var(--spacing-xs)}.portal-footer-info .footer-compliance{font-size:13px;color:var(--color-neutral-500)}.status-badge-accessible{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:6px 12px;border-radius:var(--radius-full);font-size:14px;font-weight:500;line-height:1}.status-badge-accessible .status-icon{font-size:12px;font-weight:700}.status-badge-accessible .status-label{text-transform:capitalize}.status-badge-accessible.status-success{background:#dcfce7;color:#166534;border:1px solid #86efac}.status-badge-accessible.status-warning{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}.status-badge-accessible.status-danger{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.status-badge-accessible.status-critical{background:#7f1d1d;color:#fff;border:1px solid #991b1b;animation:pulse-critical 2s infinite}.status-badge-accessible.status-mild{background:#f0f9ff;color:#075985;border:1px solid #7dd3fc}.status-badge-accessible.status-neutral{background:#f3f4f6;color:#374151;border:1px solid #d1d5db}@keyframes pulse-critical{0%,to{opacity:1}50%{opacity:.8}}.medical-indicator-wrapper{display:flex;flex-direction:column;gap:var(--spacing-xs)}.medical-indicator-wrapper .indicator-explanation{font-size:14px;color:var(--color-neutral-600);margin:0;padding-left:var(--spacing-md);border-left:2px solid var(--color-neutral-300)}.allergy-badge{display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-md);border-radius:var(--radius-md)}.allergy-badge.allergy-mild{background:#f0f9ff;border-left:4px solid #0ea5e9}.allergy-badge.allergy-moderate{background:#fffbeb;border-left:4px solid #f59e0b}.allergy-badge.allergy-severe{background:#fef2f2;border-left:4px solid #dc2626}.allergy-badge .allergy-warning{font-size:14px;font-weight:500;margin:0}.allergy-badge.allergy-severe .allergy-warning{color:#991b1b;font-weight:700}.consent-checkbox-wrapper{margin-bottom:var(--spacing-lg);padding:var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-md);border:1px solid var(--color-neutral-200)}.consent-checkbox-wrapper.has-error{border-color:var(--color-error-500);background:var(--color-error-50)}.consent-checkbox-main{display:flex;gap:var(--spacing-sm);align-items:flex-start}.consent-input{width:20px;height:20px;margin-top:2px;flex-shrink:0;cursor:pointer;accent-color:var(--color-primary-600)}.consent-input:focus{outline:2px solid var(--color-primary-500);outline-offset:2px}.consent-label{display:flex;flex-direction:column;gap:var(--spacing-xs);cursor:pointer}.consent-label-text{font-size:16px;font-weight:500;color:var(--color-neutral-900)}.consent-label-text .required-marker{color:var(--color-error-600)}.consent-description{font-size:14px;color:var(--color-neutral-600);line-height:1.5}.consent-full-text-section{margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--color-neutral-200)}.consent-expand-btn{background:none;border:none;color:var(--color-primary-600);font-size:14px;cursor:pointer;padding:var(--spacing-xs) 0;font-weight:500}.consent-expand-btn:hover{text-decoration:underline}.consent-expand-btn:focus{outline:2px solid var(--color-primary-500);outline-offset:2px;border-radius:var(--radius-sm)}.consent-full-text{margin-top:var(--spacing-md);padding:var(--spacing-md);background:var(--color-white);border-radius:var(--radius-md);font-size:14px;line-height:1.6;color:var(--color-neutral-700);max-height:300px;overflow-y:auto;white-space:pre-line}.consent-error{margin-top:var(--spacing-sm);font-size:14px;color:var(--color-error-600);font-weight:500}.doctor-selection-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-lg)}.doctor-card{background:var(--color-white);border:2px solid var(--color-neutral-200);border-radius:var(--radius-xl);padding:var(--spacing-lg);cursor:pointer;transition:all .2s;display:flex;flex-direction:column}.doctor-card:hover{border-color:var(--color-primary-300);box-shadow:var(--shadow-md)}.doctor-card:focus-within{outline:2px solid var(--color-primary-500);outline-offset:2px}.doctor-card.selected{border-color:var(--color-primary-500);background:var(--color-primary-50)}.doctor-card-header{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.doctor-photo{width:80px;height:80px;border-radius:var(--radius-full);-o-object-fit:cover;object-fit:cover;background:var(--color-neutral-200);flex-shrink:0}.doctor-photo-placeholder{width:80px;height:80px;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--color-primary-100),var(--color-primary-200));display:flex;align-items:center;justify-content:center;font-size:32px;color:var(--color-primary-600);flex-shrink:0}.doctor-info{flex:1;min-width:0}.doctor-name{font-size:18px;font-weight:600;color:var(--color-neutral-900);margin:0 0 var(--spacing-xs)}.doctor-specialty{font-size:14px;color:var(--color-primary-700);font-weight:500;margin:0 0 var(--spacing-xs)}.doctor-experience{font-size:14px;color:var(--color-neutral-600);margin:0}.doctor-availability{display:flex;align-items:center;gap:var(--spacing-xs);margin-top:var(--spacing-sm)}.availability-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:var(--radius-full);font-size:13px;font-weight:500}.availability-badge.available-today{background:#dcfce7;color:#166534}.availability-badge.next-available{background:#f0f9ff;color:#075985}.doctor-bio{font-size:14px;color:var(--color-neutral-600);line-height:1.5;margin:var(--spacing-md) 0;flex:1}.doctor-details{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.doctor-detail-item{display:flex;align-items:center;gap:var(--spacing-xs);font-size:14px;color:var(--color-neutral-700);padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-neutral-100);border-radius:var(--radius-md)}.doctor-detail-item .detail-icon{font-size:16px}.doctor-qualifications{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-bottom:var(--spacing-md)}.qualification-tag{background:var(--color-primary-100);color:var(--color-primary-800);padding:4px 10px;border-radius:var(--radius-full);font-size:13px;font-weight:500}.doctor-languages{font-size:14px;color:var(--color-neutral-600);margin-bottom:var(--spacing-md)}.doctor-fee{display:flex;justify-content:space-between;align-items:center;padding-top:var(--spacing-md);border-top:1px solid var(--color-neutral-200);margin-top:auto}.fee-label{font-size:14px;color:var(--color-neutral-600)}.fee-amount{font-size:18px;font-weight:600;color:var(--color-neutral-900)}.doctor-select-btn{width:100%;margin-top:var(--spacing-md);padding:var(--spacing-md);font-size:16px}.portal-form input[type=text],.portal-form input[type=tel],.portal-form input[type=email],.portal-form select,.portal-form textarea{min-height:44px;font-size:16px;padding:var(--spacing-sm) var(--spacing-md)}.portal-form label{font-size:16px;font-weight:500;color:var(--color-neutral-800);margin-bottom:var(--spacing-xs);display:block}.portal-form .form-hint{font-size:14px;color:var(--color-neutral-600);margin-top:var(--spacing-xs)}.portal-form .field-error{font-size:14px;color:var(--color-error-600);margin-top:var(--spacing-xs);display:flex;align-items:center;gap:var(--spacing-xs)}.portal-form .field-error:before{content:"!";display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;background:var(--color-error-600);color:#fff;border-radius:50%;font-size:12px;font-weight:700}.portal-form input:focus,.portal-form select:focus,.portal-form textarea:focus{outline:2px solid var(--color-primary-500);outline-offset:2px;border-color:var(--color-primary-500)}.privacy-settings-section{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-xl);margin-bottom:var(--spacing-lg);border:1px solid var(--color-neutral-200)}.privacy-settings-section h2{font-size:20px;font-weight:600;color:var(--color-neutral-900);margin:0 0 var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-neutral-200)}.consent-history-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.consent-history-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-md)}.consent-history-item .consent-name{font-weight:500;font-size:16px}.consent-history-item .consent-date{font-size:14px;color:var(--color-neutral-600)}.data-sharing-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.data-sharing-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-md)}.data-sharing-item .entity-name{font-weight:500;font-size:16px}.data-sharing-item .entity-type{font-size:14px;color:var(--color-neutral-600)}.data-export-section{display:flex;flex-direction:column;gap:var(--spacing-md)}.data-export-section p{font-size:16px;color:var(--color-neutral-700);line-height:1.6;margin:0}@media(max-width:768px){.portal-footer-links{flex-direction:column;gap:var(--spacing-md)}.portal-footer-links .footer-separator{display:none}.doctor-selection-grid{grid-template-columns:1fr}.doctor-card-header{flex-direction:column;align-items:center;text-align:center}.consent-checkbox-main{flex-direction:column}.consent-input{align-self:flex-start}}@media(prefers-contrast:high){.status-badge-accessible{border-width:2px}.doctor-card{border-width:3px}.consent-checkbox-wrapper{border-width:2px}}@media(prefers-reduced-motion:reduce){.skip-to-content,.doctor-card,.status-badge-accessible.status-critical{animation:none;transition:none}}.patient-portal-login{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-lg);background:linear-gradient(135deg,var(--color-primary-50) 0%,var(--color-primary-100) 100%)}.patient-portal-login .login-card{background:var(--color-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);padding:var(--spacing-2xl);width:100%;max-width:400px}.patient-portal-login .login-header{text-align:center;margin-bottom:var(--spacing-xl)}.patient-portal-login .login-header h1{font-size:var(--font-size-h2);font-weight:600;color:var(--color-primary-900);margin-bottom:var(--spacing-xs)}.patient-portal-login .login-header p{color:var(--color-neutral-600);font-size:var(--font-size-sm)}.patient-portal-login .login-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.patient-portal-login .form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.patient-portal-login .form-group label{font-weight:500;color:var(--color-neutral-700);font-size:var(--font-size-sm)}.patient-portal-login .form-group input{padding:var(--spacing-md);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);font-size:var(--font-size-base);transition:border-color .2s,box-shadow .2s}.patient-portal-login .form-group input:focus{outline:none;border-color:var(--color-primary-500);box-shadow:0 0 0 3px var(--color-primary-100)}.patient-portal-login .form-hint{font-size:var(--font-size-xs);color:var(--color-neutral-500)}.patient-portal-login .otp-input{font-size:var(--font-size-2xl);text-align:center;letter-spacing:.5em;font-family:monospace}.patient-portal-login .otp-info{text-align:center;padding:var(--spacing-md);background:var(--color-neutral-50);border-radius:var(--radius-md)}.patient-portal-login .otp-info p{margin:0;color:var(--color-neutral-700)}.patient-portal-login .otp-expires{font-size:var(--font-size-xs);color:var(--color-warning-600);margin-top:var(--spacing-xs)}.patient-portal-login .error-message{background:var(--color-error-50);color:var(--color-error-700);padding:var(--spacing-md);border-radius:var(--radius-md);font-size:var(--font-size-sm);text-align:center}.patient-portal-login .otp-actions{display:flex;justify-content:center;gap:var(--spacing-lg)}.patient-portal-login .login-footer{text-align:center;padding-top:var(--spacing-md);border-top:1px solid var(--color-neutral-200)}.patient-portal-login .login-footer p{margin:0;font-size:var(--font-size-sm);color:var(--color-neutral-600)}.patient-portal-login .login-footer a{color:var(--color-primary-600);text-decoration:none;font-weight:500}.patient-portal-login .login-security-note{margin-top:var(--spacing-xl);text-align:center}.patient-portal-login .login-security-note p{font-size:var(--font-size-xs);color:var(--color-neutral-500)}.patient-portal{min-height:100vh;display:flex;flex-direction:column;background:var(--color-neutral-50)}.patient-portal-header{background:var(--color-white);border-bottom:1px solid var(--color-neutral-200);padding:var(--spacing-md) var(--spacing-lg);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100}.patient-portal-header .logo{display:flex;align-items:center;gap:var(--spacing-sm)}.patient-portal-header .logo h1{font-size:var(--font-size-lg);font-weight:600;color:var(--color-primary-900);margin:0}.patient-portal-header .logo img{height:32px;width:auto}.patient-portal-header .user-menu{display:flex;align-items:center;gap:var(--spacing-md)}.patient-portal-header .user-name{font-size:var(--font-size-sm);color:var(--color-neutral-700)}.patient-portal-nav{background:var(--color-white);border-bottom:1px solid var(--color-neutral-200);padding:0 var(--spacing-lg);display:flex;gap:var(--spacing-xs);overflow-x:auto}.patient-portal-nav .nav-item{padding:var(--spacing-md) var(--spacing-lg);color:var(--color-neutral-600);text-decoration:none;font-size:var(--font-size-sm);font-weight:500;border-bottom:2px solid transparent;white-space:nowrap;transition:all .2s}.patient-portal-nav .nav-item:hover{color:var(--color-primary-600);background:var(--color-primary-50)}.patient-portal-nav .nav-item.active{color:var(--color-primary-700);border-bottom-color:var(--color-primary-500)}.patient-portal-nav .nav-item .badge{background:var(--color-error-500);color:var(--color-white);font-size:var(--font-size-xs);padding:2px 6px;border-radius:var(--radius-full);margin-left:var(--spacing-xs)}.patient-portal-content{flex:1;padding:var(--spacing-xl);max-width:1200px;margin:0 auto;width:100%}.patient-dashboard{display:flex;flex-direction:column;gap:var(--spacing-xl)}.patient-dashboard .welcome-section{background:linear-gradient(135deg,var(--color-primary-600) 0%,var(--color-primary-700) 100%);color:var(--color-white);padding:var(--spacing-xl);border-radius:var(--radius-xl)}.patient-dashboard .welcome-section h1{font-size:var(--font-size-h3);margin-bottom:var(--spacing-xs)}.patient-dashboard .welcome-section p{opacity:.9;margin:0}.patient-dashboard .quick-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md)}.patient-dashboard .quick-action-card{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-lg);display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);text-decoration:none;color:inherit;transition:all .2s;border:1px solid var(--color-neutral-200)}.patient-dashboard .quick-action-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.patient-dashboard .quick-action-card .icon{font-size:var(--font-size-2xl);color:var(--color-primary-600)}.patient-dashboard .quick-action-card h3{font-size:var(--font-size-sm);font-weight:500;margin:0;text-align:center}.patient-dashboard .section-title{font-size:var(--font-size-lg);font-weight:600;color:var(--color-neutral-800);margin-bottom:var(--spacing-md)}.patient-dashboard .summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-lg)}.patient-dashboard .summary-card{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-lg);border:1px solid var(--color-neutral-200)}.patient-dashboard .summary-card h4{font-size:var(--font-size-sm);color:var(--color-neutral-600);font-weight:500;margin-bottom:var(--spacing-md)}.patient-dashboard .summary-card .value{font-size:var(--font-size-2xl);font-weight:600;color:var(--color-neutral-900)}.patient-dashboard .summary-card .subtext{font-size:var(--font-size-xs);color:var(--color-neutral-500);margin-top:var(--spacing-xs)}.patient-portal .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.patient-portal .page-header h1{font-size:var(--font-size-h3);color:var(--color-neutral-900);margin:0}.patient-portal .card-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.patient-portal .list-card{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-lg);border:1px solid var(--color-neutral-200);display:flex;justify-content:space-between;align-items:center;transition:box-shadow .2s}.patient-portal .list-card:hover{box-shadow:var(--shadow-sm)}.patient-portal .list-card .card-main{flex:1}.patient-portal .list-card .card-title{font-weight:600;color:var(--color-neutral-900);margin-bottom:var(--spacing-xs)}.patient-portal .list-card .card-subtitle{font-size:var(--font-size-sm);color:var(--color-neutral-600)}.patient-portal .list-card .card-meta{font-size:var(--font-size-xs);color:var(--color-neutral-500);margin-top:var(--spacing-sm)}.patient-portal .list-card .card-actions{display:flex;gap:var(--spacing-sm)}.patient-portal .status-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:500}.patient-portal .status-badge.confirmed,.patient-portal .status-badge.completed,.patient-portal .status-badge.paid,.patient-portal .status-badge.active{background:var(--color-success-50);color:var(--color-success-700)}.patient-portal .status-badge.pending{background:var(--color-warning-50);color:var(--color-warning-700)}.patient-portal .status-badge.cancelled,.patient-portal .status-badge.overdue,.patient-portal .status-badge.no_show{background:var(--color-error-50);color:var(--color-error-700)}.patient-portal .status-badge.partial{background:var(--color-warning-50);color:var(--color-warning-700)}.patient-portal .clinic-selector{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.patient-portal .clinic-selector label{font-size:var(--font-size-sm);color:var(--color-neutral-600)}.patient-portal .clinic-selector select{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);font-size:var(--font-size-sm);background:var(--color-white);cursor:pointer}.patient-portal .empty-state{text-align:center;padding:var(--spacing-2xl);background:var(--color-white);border-radius:var(--radius-lg);border:1px solid var(--color-neutral-200)}.patient-portal .empty-state .icon{font-size:48px;color:var(--color-neutral-400);margin-bottom:var(--spacing-md)}.patient-portal .empty-state h3{font-size:var(--font-size-lg);color:var(--color-neutral-700);margin-bottom:var(--spacing-sm)}.patient-portal .empty-state p{color:var(--color-neutral-500);margin-bottom:var(--spacing-lg)}.patient-portal .loading{display:flex;align-items:center;justify-content:center;padding:var(--spacing-2xl);color:var(--color-neutral-500)}.patient-portal .loading-spinner{width:24px;height:24px;border:2px solid var(--color-neutral-200);border-top-color:var(--color-primary-500);border-radius:50%;animation:spin .8s linear infinite;margin-right:var(--spacing-sm)}.patient-portal .btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all .2s}.patient-portal .btn-primary{background:var(--color-primary-600);color:var(--color-white)}.patient-portal .btn-primary:hover{background:var(--color-primary-700)}.patient-portal .btn-secondary{background:var(--color-neutral-100);color:var(--color-neutral-700)}.patient-portal .btn-secondary:hover{background:var(--color-neutral-200)}.patient-portal .btn-danger{background:var(--color-error-600);color:var(--color-white)}.patient-portal .btn-danger:hover{background:var(--color-error-700)}.patient-portal .btn-link{background:transparent;color:var(--color-primary-600);padding:0}.patient-portal .btn-link:hover{text-decoration:underline}.patient-portal .btn-lg{padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-size-base)}.patient-portal .btn-block{width:100%}.patient-portal .btn:disabled{opacity:.6;cursor:not-allowed}.patient-portal,.patient-portal-login{font-size:16px}.patient-portal .form-hint,.patient-portal-login .form-hint,.patient-portal .otp-expires,.patient-portal-login .otp-expires{font-size:max(var(--font-size-sm),14px)}.patient-portal p,.patient-portal span,.patient-portal label,.patient-portal-login p,.patient-portal-login span,.patient-portal-login label{font-size:max(inherit,14px)}.patient-portal .status-badge{font-size:max(var(--font-size-xs),14px)}.registration-progress{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-xl);padding:var(--spacing-md) 0;border-bottom:1px solid var(--color-neutral-200)}.registration-progress .progress-step{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--color-neutral-400)}.registration-progress .progress-step.active{color:var(--color-primary-600);font-weight:600}.registration-progress .progress-step.completed{color:var(--color-success-600)}.registration-progress .step-number{width:28px;height:28px;border-radius:50%;background:var(--color-neutral-200);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-sm);font-weight:600}.registration-progress .progress-step.active .step-number{background:var(--color-primary-600);color:var(--color-white)}.registration-progress .progress-step.completed .step-number{background:var(--color-success-600);color:var(--color-white)}.registration-progress .step-label{font-size:var(--font-size-sm)}.consent-form .consent-intro{background:var(--color-primary-50);padding:var(--spacing-lg);border-radius:var(--radius-lg);margin-bottom:var(--spacing-xl)}.consent-form .consent-intro h2{font-size:var(--font-size-lg);margin-bottom:var(--spacing-sm)}.consent-form .consent-section{display:flex;flex-direction:column;gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.consent-form .consent-actions{display:flex;gap:var(--spacing-md)}.consent-form .privacy-note{background:var(--color-neutral-50);padding:var(--spacing-md);border-radius:var(--radius-md);margin-top:var(--spacing-lg);font-size:var(--font-size-sm)}.form-error{color:var(--color-error-600);font-size:var(--font-size-sm);margin-top:var(--spacing-xs);display:block}.required{color:var(--color-error-600)}.booking-progress .progress-step{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-neutral-100);border-radius:var(--radius-full);font-size:var(--font-size-sm)}.booking-progress .progress-step.active{background:var(--color-primary-600);color:var(--color-white)}.booking-progress .progress-step.completed{background:var(--color-success-100);color:var(--color-success-700)}@media(max-width:768px){.patient-portal-header{padding:var(--spacing-sm) var(--spacing-md)}.patient-portal-nav{padding:0 var(--spacing-sm)}.patient-portal-nav .nav-item{padding:var(--spacing-sm) var(--spacing-md)}.patient-portal-content{padding:var(--spacing-md)}.patient-dashboard .quick-actions{grid-template-columns:repeat(2,1fr)}.patient-portal .list-card{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.patient-portal .list-card .card-actions{width:100%}.patient-portal .list-card .card-actions .btn{flex:1}.registration-progress{flex-wrap:wrap;gap:var(--spacing-sm)}.registration-progress .step-label{display:none}.consent-form .consent-actions{flex-direction:column}.consent-form .consent-actions .btn{width:100%}.booking-progress{flex-wrap:wrap}.booking-progress .step-label{display:none}}@media(prefers-contrast:high){.patient-portal .status-badge,.patient-portal .btn{border:2px solid currentColor}.patient-portal-nav .nav-item.active{border-bottom-width:4px}}@media(prefers-reduced-motion:reduce){.patient-portal *,.patient-portal-login *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.patient-portal .loading-spinner{animation:none;border-top-color:var(--color-primary-500)}}.kiosk-page{min-height:100vh;background:#f8fafc;font-family:Inter,sans-serif;font-size:15px;color:#1e293b;display:flex;flex-direction:column;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;-moz-user-select:none;user-select:none}.kiosk-progress{position:relative;height:6px;background:#e2e8f0}.kiosk-progress-bar{height:100%;background:#4a63b3;transition:width .3s ease;border-radius:0 3px 3px 0}.kiosk-progress-label{position:absolute;right:16px;top:12px;font-size:12px;color:#64748b}.kiosk-content{flex:1;display:flex;justify-content:center;align-items:center;padding:32px 24px;overflow-y:auto}.kiosk-center{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;max-width:480px;width:100%;gap:16px}.kiosk-form-wrapper{align-self:flex-start}.kiosk-form{max-width:560px;width:100%}.kiosk-welcome{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;max-width:480px;width:100%;gap:4px}.kiosk-welcome-logo{max-height:208px;max-width:520px;-o-object-fit:contain;object-fit:contain;margin-bottom:8px}.kiosk-welcome-clinic-name{font-family:Poppins,sans-serif;font-weight:600;font-size:20px;color:#171717;margin:0 0 16px}.kiosk-welcome-title{font-family:Poppins,sans-serif;font-weight:600;font-size:32px;margin:0 0 8px}.kiosk-welcome-subtitle{color:#64748b;font-size:16px;margin:0 0 32px}.kiosk-welcome-buttons{display:flex;flex-direction:column;gap:16px;width:100%;max-width:360px}.kiosk-pdpa-notice{margin-top:40px;font-size:12px;color:#94a3b8;max-width:400px;line-height:1.5}.kiosk-btn{min-height:48px;padding:12px 24px;border:none;border-radius:8px;font-family:Poppins,sans-serif;font-weight:500;font-size:15px;cursor:pointer;transition:background .15s,opacity .15s}.kiosk-btn:disabled{opacity:.6;cursor:not-allowed}.kiosk-btn-primary{background:#4a63b3;color:#fff}.kiosk-btn-primary:hover:not(:disabled){background:#3b4f94}.kiosk-btn-secondary{background:#e2e8f0;color:#1e293b}.kiosk-btn-secondary:hover:not(:disabled){background:#cbd5e1}.kiosk-btn-back{background:transparent;color:#64748b;border:1px solid #CBD5E1}.kiosk-btn-back:hover{background:#f1f5f9}.kiosk-btn-large{min-height:56px;font-size:17px}.kiosk-step-title{font-family:Poppins,sans-serif;font-weight:600;font-size:24px;margin:0 0 24px}.kiosk-subtitle{color:#64748b;margin:-16px 0 24px}.kiosk-field{margin-bottom:20px}.kiosk-field label{display:block;font-weight:500;font-size:14px;color:#374151;margin-bottom:6px}.kiosk-field input[type=text],.kiosk-field input[type=tel],.kiosk-field input[type=email],.kiosk-field input[type=date],.kiosk-field select{width:100%;min-height:48px;padding:12px 16px;border:1px solid #CBD5E1;border-radius:8px;font-family:Inter,sans-serif;font-size:15px;background:#fff;box-sizing:border-box;transition:border-color .15s}.kiosk-field input:focus,.kiosk-field select:focus{outline:none;border-color:#4a63b3;box-shadow:0 0 0 3px #4a63b31a}.kiosk-error{display:block;color:#dc2626;font-family:Inter,sans-serif;font-size:12px;margin-top:4px}.kiosk-field.has-error input[type=text],.kiosk-field.has-error input[type=tel],.kiosk-field.has-error input[type=email],.kiosk-field.has-error input[type=date]{border-color:#dc2626}.kiosk-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px}.kiosk-radio-group{display:flex;gap:12px;flex-wrap:wrap}.kiosk-radio{display:flex;align-items:center;gap:8px;min-height:48px;padding:10px 20px;border:2px solid #CBD5E1;border-radius:8px;cursor:pointer;font-size:15px;transition:border-color .15s,background .15s;flex:1;justify-content:center}.kiosk-radio input{display:none}.kiosk-radio.selected{border-color:#4a63b3;background:#eef2ff;color:#4a63b3;font-weight:500}.kiosk-consent{margin-top:24px}.kiosk-checkbox{display:flex;align-items:flex-start;gap:12px;cursor:pointer;font-size:14px;line-height:1.5}.kiosk-checkbox input{display:none}.kiosk-checkbox-box{flex-shrink:0;width:24px;height:24px;border:2px solid #CBD5E1;border-radius:4px;margin-top:2px;transition:all .15s}.kiosk-checkbox.checked .kiosk-checkbox-box{background:#4a63b3;border-color:#4a63b3}.kiosk-checkbox.checked .kiosk-checkbox-box:after{content:"✓";display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;width:100%;height:100%}.kiosk-search-input{margin-bottom:8px}.kiosk-chip-list{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.kiosk-chip{padding:8px 16px;border:1px solid #CBD5E1;border-radius:20px;background:#fff;font-size:14px;cursor:pointer;transition:all .15s;min-height:36px}.kiosk-chip:hover{border-color:#4a63b3}.kiosk-chip.selected{background:#4a63b3;color:#fff;border-color:#4a63b3}.kiosk-other-input{margin-top:4px}.kiosk-actions{display:flex;justify-content:space-between;gap:16px;margin-top:32px;padding-top:24px;border-top:1px solid #E2E8F0}.kiosk-actions .kiosk-btn-primary{flex:1;max-width:200px}.kiosk-confirm-identity{background:#eef2ff;border:1px solid #C7D2FE;border-radius:12px;padding:20px;margin-bottom:24px;text-align:center}.kiosk-confirm-name{font-family:Poppins,sans-serif;font-weight:600;font-size:20px;color:#4a63b3}.kiosk-confirm-buttons{margin-top:12px}.kiosk-blocked-icon{width:64px;height:64px;border-radius:50%;background:#fef2f2;color:#dc2626;display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:700}.kiosk-blocked-title{font-family:Poppins,sans-serif;font-weight:600;font-size:20px;color:#dc2626;max-width:400px}.kiosk-success-icon{width:80px;height:80px;border-radius:50%;background:#ecfdf5;color:#059669;display:flex;align-items:center;justify-content:center;font-size:40px;font-weight:700}.kiosk-success-title{font-family:Poppins,sans-serif;font-weight:600;font-size:24px;margin:0}.kiosk-patient-number{font-family:Poppins,sans-serif;font-weight:700;font-size:36px;color:#4a63b3;letter-spacing:2px}.kiosk-patient-name{font-size:18px;color:#374151;margin:0}.kiosk-success-text{color:#64748b}.kiosk-countdown{font-size:13px;color:#94a3b8}.kiosk-error-title{font-family:Poppins,sans-serif;font-weight:600;font-size:24px;color:#dc2626}.kiosk-error-text{color:#64748b}.kiosk-idle-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:9999}.kiosk-idle-card{background:#fff;border-radius:16px;padding:48px;text-align:center;box-shadow:0 25px 50px #00000040}.kiosk-idle-card h2{font-family:Poppins,sans-serif;font-weight:600;font-size:28px;margin:0 0 8px}.kiosk-idle-card p{color:#64748b;font-size:16px}.kiosk-spinner{width:40px;height:40px;border:3px solid #E2E8F0;border-top-color:#4a63b3;border-radius:50%;animation:kiosk-spin .8s linear infinite}@keyframes kiosk-spin{to{transform:rotate(360deg)}}.kiosk-footer{position:fixed;bottom:0;left:0;right:0;text-align:center;padding:12px;font-family:Inter,sans-serif;font-size:12px;color:#9ca3af}.kiosk-dots{display:flex;justify-content:center;width:100%;gap:8px;margin-bottom:16px}.kiosk-dot{width:10px;height:10px;border-radius:50%;background:#e5e7eb;border:1px solid #E5E7EB}.kiosk-dot.active{background:#4a63b3;border-color:#4a63b3}.kiosk-dot.done{background:#8eb0dc;border-color:#8eb0dc}.kiosk-consent-label{display:flex;align-items:center;gap:16px;cursor:pointer;font-family:Inter,sans-serif;font-size:14px;color:#171717}.kiosk-consent-label input[type=checkbox]{margin-top:3px;width:18px;height:18px;cursor:pointer;flex-shrink:0}.kiosk-scan-btn{width:100%;min-height:56px;background:#4a63b3;color:#fff;border:none;border-radius:8px;font-family:Poppins,sans-serif;font-weight:600;font-size:18px;cursor:pointer;transition:background .15s}.kiosk-scan-btn:hover{background:#3b4f94}.kiosk-scan-loading{text-align:center;font-size:16px;color:#4a63b3;padding:16px 0;animation:kiosk-pulse 1.5s ease-in-out infinite}@keyframes kiosk-pulse{0%,to{opacity:1}50%{opacity:.4}}.kiosk-divider{display:flex;align-items:center;gap:16px;margin:24px 0;color:#9ca3af;font-size:14px}.kiosk-divider:before,.kiosk-divider:after{content:"";flex:1;height:1px;background:#e2e8f0}*{box-sizing:border-box}body{margin:0;font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}.app-loading{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--color-neutral-50);color:var(--color-neutral-700)}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px}.loading-spinner{width:40px;height:40px;border:3px solid var(--color-neutral-200);border-top-color:var(--color-primary-900);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.access-denied{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--color-neutral-50);color:var(--color-neutral-700);text-align:center;padding:var(--spacing-xl)}.access-denied h2{color:var(--color-error);margin-bottom:var(--spacing-md)}.access-denied p{margin:var(--spacing-sm) 0}
