/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:host,:root{--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-slate-900:oklch(20.8% .042 265.755);--color-white:#fff;--spacing:.25rem;--container-xl:36rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--radius-xl:.75rem;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--ease-out:cubic-bezier(0,0,.2,1);--blur-md:12px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--color-public-navy:#253a8e;--color-public-navy-strong:#1c2c6d;--color-public-muted:#6b7a99}}@layer base{*{box-sizing:border-box;margin:0;padding:0}}@layer components;@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:0}.inset-x-0{inset-inline:0}.top-0{top:0}.top-\[var\(--nav-h\)\]{top:var(--nav-h)}.right-0{right:0}.bottom-0{bottom:0}.left-1\/2{left:50%}.z-10{z-index:10}.z-20{z-index:20}.z-40{z-index:40}.z-50{z-index:50}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mt-1{margin-top:var(--spacing)}.mt-auto{margin-top:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-0\.5{height:calc(var(--spacing) * .5)}.h-4{height:calc(var(--spacing) * 4)}.h-8{height:calc(var(--spacing) * 8)}.h-11{height:calc(var(--spacing) * 11)}.h-\[18px\]{height:18px}.h-\[200px\]{height:200px}.h-full{height:100%}.min-h-11{min-height:calc(var(--spacing) * 11)}.min-h-12{min-height:calc(var(--spacing) * 12)}.min-h-\[calc\(100svh-var\(--nav-h\)\)\]{min-height:calc(100svh - var(--nav-h))}.w-0{width:0}.w-4{width:calc(var(--spacing) * 4)}.w-8{width:calc(var(--spacing) * 8)}.w-11{width:calc(var(--spacing) * 11)}.w-\[18px\]{width:18px}.w-\[min\(100\%\,22rem\)\]{width:min(100%,22rem)}.w-full{width:100%}.max-w-\[12rem\]{max-width:12rem}.max-w-\[31rem\]{max-width:31rem}.max-w-xl{max-width:var(--container-xl)}.min-w-0{min-width:0}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1)}.-translate-x-1\/2,.translate-x-0{translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-0{--tw-translate-x:0px}.translate-x-full{--tw-translate-x:100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.self-start{align-self:flex-start}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.overscroll-contain{overscroll-behavior:contain}.rounded-\[9px\]{border-radius:9px}.rounded-\[10px\]{border-radius:10px}.rounded-full{border-radius:3.40282e+38px}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-\[1\.5px\]{border-style:var(--tw-border-style);border-width:1.5px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-\[rgba\(37\,58\,142\,0\.08\)\]{border-color:#253a8e14}.border-\[var\(--line\)\]{border-color:var(--line)}.border-public-navy{border-color:var(--color-public-navy)}.bg-\[\#eef2fb\]{background-color:#eef2fb}.bg-\[rgba\(191\,219\,254\,0\.5\)\]{background-color:#bfdbfe80}.bg-public-navy{background-color:var(--color-public-navy)}.bg-slate-900\/40{background-color:#0f172b66}@supports (color:color-mix(in lab,red,red)){.bg-slate-900\/40{background-color:color-mix(in oklab,var(--color-slate-900) 40%,transparent)}}.bg-white{background-color:var(--color-white)}.bg-white\/90{background-color:#ffffffe6}@supports (color:color-mix(in lab,red,red)){.bg-white\/90{background-color:color-mix(in oklab,var(--color-white) 90%,transparent)}}.bg-white\/95{background-color:#fffffff2}@supports (color:color-mix(in lab,red,red)){.bg-white\/95{background-color:color-mix(in oklab,var(--color-white) 95%,transparent)}}.bg-\[radial-gradient\(ellipse_65\%_60\%_at_8\%_28\%\,rgba\(191\,219\,254\,0\.5\)\,transparent_62\%\)\,linear-gradient\(180deg\,\#eff4fb_0\%\,\#f7fafd_55\%\,\#ffffff_100\%\)\]{background-image:radial-gradient(65% 60% at 8% 28%,#bfdbfe80,#0000 62%),linear-gradient(#eff4fb,#f7fafd 55%,#fff)}.object-cover{object-fit:cover}.object-\[center_40\%\]{object-position:center 40%}.px-0{padding-inline:0}.px-3\.5{padding-inline:calc(var(--spacing) * 3.5)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-\[var\(--public-pad\)\]{padding-inline:var(--public-pad)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-5{padding-block:calc(var(--spacing) * 5)}.py-8{padding-block:calc(var(--spacing) * 8)}.pb-1{padding-bottom:var(--spacing)}.pb-\[max\(1\.25rem\,env\(safe-area-inset-bottom\)\)\]{padding-bottom:max(1.25rem,env(safe-area-inset-bottom))}.text-center{text-align:center}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-\[0\.8rem\]{font-size:.8rem}.text-\[0\.9rem\]{font-size:.9rem}.text-\[0\.62rem\]{font-size:.62rem}.text-\[0\.66rem\]{font-size:.66rem}.text-\[0\.86rem\]{font-size:.86rem}.text-\[0\.88rem\]{font-size:.88rem}.text-\[0\.92rem\]{font-size:.92rem}.text-\[0\.94rem\]{font-size:.94rem}.text-\[0\.95rem\]{font-size:.95rem}.text-\[1\.02rem\]{font-size:1.02rem}.text-\[clamp\(1\.85rem\,8vw\,2\.5rem\)\]{font-size:clamp(1.85rem,8vw,2.5rem)}.leading-\[1\.12\]{--tw-leading:1.12;line-height:1.12}.leading-none{--tw-leading:1;line-height:1}.leading-normal{--tw-leading:var(--leading-normal);line-height:var(--leading-normal)}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-extrabold{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[-0\.025em\]{--tw-tracking:-.025em;letter-spacing:-.025em}.tracking-\[0\.09em\]{--tw-tracking:.09em;letter-spacing:.09em}.tracking-\[0\.12em\]{--tw-tracking:.12em;letter-spacing:.12em}.tracking-\[0\.14em\]{--tw-tracking:.14em;letter-spacing:.14em}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.text-\[\#3b4a6b\]{color:#3b4a6b}.text-\[\#56658a\]{color:#56658a}.text-public-muted{color:var(--color-public-muted)}.text-public-navy{color:var(--color-public-navy)}.text-white{color:var(--color-white)}.capitalize{text-transform:capitalize}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.no-underline{text-decoration-line:none}.opacity-0{opacity:0}.opacity-100{opacity:1}.shadow-\[-16px_0_40px_rgba\(15\,23\,42\,0\.12\)\]{--tw-shadow:-16px 0 40px var(--tw-shadow-color,#0f172a1f)}.shadow-\[-16px_0_40px_rgba\(15\,23\,42\,0\.12\)\],.shadow-\[0_6px_24px_rgba\(15\,23\,42\,0\.05\)\]{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_6px_24px_rgba\(15\,23\,42\,0\.05\)\]{--tw-shadow:0 6px 24px var(--tw-shadow-color,#0f172a0d)}.shadow-\[0_8px_18px_rgba\(37\,58\,142\,0\.2\)\]{--tw-shadow:0 8px 18px var(--tw-shadow-color,#253a8e33)}.shadow-\[0_12px_26px_rgba\(37\,58\,142\,0\.24\)\],.shadow-\[0_8px_18px_rgba\(37\,58\,142\,0\.2\)\]{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_12px_26px_rgba\(37\,58\,142\,0\.24\)\]{--tw-shadow:0 12px 26px var(--tw-shadow-color,#253a8e3d)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.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-md{--tw-backdrop-blur:blur(var(--blur-md))}.backdrop-blur-md,.backdrop-filter{-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,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}@media (hover:hover){.hover\:-translate-y-0\.5:hover{--tw-translate-y:calc(var(--spacing) * -.5);translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:-translate-y-px:hover{--tw-translate-y:-1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:bg-\[\#f6f8fc\]:hover{background-color:#f6f8fc}.hover\:bg-public-navy-strong:hover{background-color:var(--color-public-navy-strong)}.hover\:text-public-navy:hover{color:var(--color-public-navy)}}@media (min-width:40rem){.sm\:block{display:block}.sm\:h-\[240px\]{height:240px}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:flex-wrap{flex-wrap:wrap}.sm\:items-center{align-items:center}.sm\:gap-x-0{column-gap:0}.sm\:gap-y-4{row-gap:calc(var(--spacing) * 4)}.sm\:border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.sm\:border-\[var\(--line\)\]{border-color:var(--line)}.sm\:px-4{padding-inline:calc(var(--spacing) * 4)}.sm\:pl-0{padding-left:0}.sm\:text-\[0\.66rem\]{font-size:.66rem}}@media (min-width:48rem){.md\:h-\[280px\]{height:280px}.md\:w-\[24rem\]{width:24rem}.md\:gap-4{gap:calc(var(--spacing) * 4)}.md\:py-10{padding-block:calc(var(--spacing) * 10)}.md\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}}@media (min-width:64rem){.lg\:absolute{position:absolute}.lg\:inset-y-0{inset-block:0}.lg\:right-0{right:0}.lg\:inline{display:inline}.lg\:h-auto{height:auto}.lg\:w-\[72\%\]{width:72%}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.lg\:border-\[var\(--line\)\]{border-color:var(--line)}.lg\:bg-white\/80{background-color:#fffc}@supports (color:color-mix(in lab,red,red)){.lg\:bg-white\/80{background-color:color-mix(in oklab,var(--color-white) 80%,transparent)}}.lg\:object-\[right_center\]{object-position:right center}.lg\:py-\[clamp\(1\.5rem\,5vh\,3\.5rem\)\]{padding-block:clamp(1.5rem,5vh,3.5rem)}.lg\:pl-0{padding-left:0}.lg\:text-\[clamp\(2rem\,4\.2vw\,3\.5rem\)\]{font-size:clamp(2rem,4.2vw,3.5rem)}}@media (min-width:80rem){.xl\:flex{display:flex}.xl\:hidden{display:none}.xl\:max-w-\[13rem\]{max-width:13rem}.xl\:gap-8{gap:calc(var(--spacing) * 8)}}.\[\&\>svg\]\:h-full>svg{height:100%}.\[\&\>svg\]\:w-full>svg{width:100%}}:root{--primary:#0e7490;--primary-dark:#0c5f73;--primary-light:#67e8f9;--primary-bg:#ecfeff;--secondary:#6366f1;--success:#10b981;--warning:#f59e0b;--danger:#ef4444;--gray-50:#f9fafb;--gray-100:#f3f4f6;--gray-200:#e5e7eb;--gray-300:#d1d5db;--gray-400:#9ca3af;--gray-500:#6b7280;--gray-600:#4b5563;--gray-700:#374151;--gray-800:#1f2937;--gray-900:#111827;--sidebar-width:260px;--header-height:64px;--radius:8px;--shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--bg-body:#f9fafb;--bg-card:#fff;--bg-header:#fff;--bg-table-head:#f9fafb;--bg-table-hover:#f9fafb;--bg-modal:#fff;--bg-input:#fff;--border-color:#e5e7eb;--border-light:#f3f4f6;--text-primary:#111827;--text-secondary:#374151;--text-muted:#6b7280;--text-faint:#9ca3af;--badge-success-bg:#d1fae5;--badge-success-text:#065f46;--badge-warning-bg:#fef3c7;--badge-warning-text:#92400e;--badge-danger-bg:#fee2e2;--badge-danger-text:#991b1b;--badge-info-bg:#dbeafe;--badge-info-text:#1e40af;--badge-secondary-bg:#e5e7eb;--badge-secondary-text:#374151;--stat-patients-bg:#dbeafe;--stat-patients-text:#2563eb;--stat-doctors-bg:#d1fae5;--stat-doctors-text:#059669;--stat-appointments-bg:#fef3c7;--stat-appointments-text:#d97706;--stat-revenue-bg:#ede9fe;--stat-revenue-text:#7c3aed;--btn-secondary-bg:#e5e7eb;--btn-secondary-text:#374151;--btn-secondary-hover:#d1d5db;--btn-icon-hover-bg:#f3f4f6;--btn-icon-hover-text:#374151;--btn-edit-hover-bg:#eef2ff;--btn-delete-hover-bg:#fef2f2;--modal-overlay:#00000080;--sidebar-bg:linear-gradient(180deg,#111175,#1a30b5);--sidebar-border:#ffffff14;--sidebar-text:#fff9;--sidebar-text-active:#ffd54f;--sidebar-text-heading:#fff;--sidebar-text-faint:#ffffff59;--sidebar-text-fainter:#fff3;--sidebar-text-faintest:#ffffff2e;--sidebar-link-dev:#ffffff4d;--sidebar-active-bg:#ffffff26;--sidebar-btn-bg:#ffffff14;--sidebar-btn-text:#ffffff80;--sidebar-subtitle:#ffffff73;--sidebar-logo-bg:white}[data-theme=dark]{--bg-body:#0f1117;--bg-card:#1a1c2e;--bg-header:#1a1c2e;--bg-table-head:#15172a;--bg-table-hover:#1f2140;--bg-modal:#1e2035;--bg-input:#252840;--border-color:#2e3150;--border-light:#252840;--text-primary:#f1f2f6;--text-secondary:#c8cbd5;--text-muted:#8b8fa5;--text-faint:#5d6179;--shadow:0 1px 3px #0006,0 1px 2px #0000004d;--shadow-md:0 4px 6px -1px #0006,0 2px 4px -2px #0000004d;--shadow-lg:0 10px 15px -3px #00000080,0 4px 6px -4px #0006;--badge-success-bg:#064e3b;--badge-success-text:#6ee7b7;--badge-warning-bg:#78350f;--badge-warning-text:#fcd34d;--badge-danger-bg:#7f1d1d;--badge-danger-text:#fca5a5;--badge-info-bg:#1e3a5f;--badge-info-text:#93c5fd;--badge-secondary-bg:#2e3150;--badge-secondary-text:#c8cbd5;--stat-patients-bg:#1e3a5f;--stat-patients-text:#60a5fa;--stat-doctors-bg:#064e3b;--stat-doctors-text:#34d399;--stat-appointments-bg:#78350f;--stat-appointments-text:#fbbf24;--stat-revenue-bg:#3b1f7a;--stat-revenue-text:#a78bfa;--btn-secondary-bg:#2e3150;--btn-secondary-text:#c8cbd5;--btn-secondary-hover:#3a3d5c;--btn-icon-hover-bg:#252840;--btn-icon-hover-text:#c8cbd5;--btn-edit-hover-bg:#1e2460;--btn-delete-hover-bg:#3b1111;--modal-overlay:#000000b3;--sidebar-bg:linear-gradient(180deg,#13152a,#1a1c2e);--sidebar-border:#2e3150;--sidebar-text:#8b8fa5;--sidebar-text-active:#67e8f9;--sidebar-text-heading:#f1f2f6;--sidebar-text-faint:#5d6179;--sidebar-text-fainter:#4a4d65;--sidebar-text-faintest:#3e4158;--sidebar-link-dev:#5d6179;--sidebar-active-bg:#0e749026;--sidebar-btn-bg:#252840;--sidebar-btn-text:#8b8fa5;--sidebar-subtitle:#5d6179;--sidebar-logo-bg:#252840;--primary-bg:var(--primary)}@supports (color:color-mix(in lab,red,red)){[data-theme=dark]{--primary-bg:color-mix(in srgb,var(--primary) 22%,var(--bg-modal))}}*{transition:background-color .3s,border-color .3s,color .3s}body,html{background:var(--bg-body);height:100%;color:var(--text-primary);-webkit-text-size-adjust:100%;font-family:Segoe UI,system-ui,-apple-system,sans-serif;line-height:1.6}body:has(.public-site){background:#fff;overflow-x:clip}a{color:inherit;text-decoration:none}button{cursor:pointer;-webkit-tap-highlight-color:transparent;font-family:inherit}input,select,textarea{-webkit-appearance:none;font-family:inherit}input[type=checkbox],input[type=radio]{appearance:auto;width:16px;height:16px;accent-color:var(--primary)}.app-layout{min-height:100vh;display:flex}.main-area{flex-direction:column;flex:1;min-width:0;display:flex}.page-content{margin-top:var(--header-height);flex:1;padding:24px}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;display:flex}.page-header h1{color:var(--text-primary);font-size:1.75rem;font-weight:700}.card{background:var(--bg-card);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid var(--border-color);padding:24px;overflow-x:auto}.stats-grid{grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:24px;display:grid}.stats-grid.stats-grid-4{grid-template-columns:repeat(4,1fr)}.stat-card{background:var(--bg-card);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid var(--border-color);align-items:center;gap:16px;padding:20px 24px;transition:transform .15s,box-shadow .15s;display:flex}.stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.stat-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;font-size:1.5rem;display:flex}.stat-icon.patients{background:var(--stat-patients-bg);color:var(--stat-patients-text)}.stat-icon.doctors{background:var(--stat-doctors-bg);color:var(--stat-doctors-text)}.stat-icon.appointments{background:var(--stat-appointments-bg);color:var(--stat-appointments-text)}.stat-icon.revenue{background:var(--stat-revenue-bg);color:var(--stat-revenue-text)}.stat-info h3{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:2px;font-size:.8rem}.stat-info p{color:var(--text-primary);font-size:1.6rem;font-weight:700}.btn{border-radius:var(--radius);white-space:nowrap;border:none;align-items:center;gap:6px;padding:10px 20px;font-size:.875rem;font-weight:600;transition:all .15s;display:inline-flex}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-dark)}.btn-success{background:var(--success);color:#fff}.btn-success:hover{background:#059669}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{background:#dc2626}.btn-secondary{background:var(--btn-secondary-bg);color:var(--btn-secondary-text)}.btn-secondary:hover{background:var(--btn-secondary-hover)}.btn-sm{padding:6px 12px;font-size:.8rem}.btn:disabled,.btn[disabled]{opacity:.5;cursor:not-allowed;pointer-events:none;box-shadow:none}.btn-danger:disabled,.btn-danger[disabled],.btn-primary:disabled,.btn-primary[disabled]{filter:brightness(.92)saturate(.7)}.btn-icon{color:var(--text-muted);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:8px;font-size:1.1rem;transition:all .15s;display:inline-flex}.btn-icon:disabled,.btn-icon[disabled]{opacity:.45;cursor:not-allowed;pointer-events:none}.btn-icon:hover{background:var(--btn-icon-hover-bg);color:var(--btn-icon-hover-text)}.btn-icon.edit:hover{color:var(--secondary);background:var(--btn-edit-hover-bg)}.btn-icon.delete:hover{color:var(--danger);background:var(--btn-delete-hover-bg)}.table-container{background:var(--bg-card);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid var(--border-color);overflow:hidden}.table-toolbar{border-bottom:1px solid var(--border-color);flex-wrap:wrap;align-items:center;gap:12px;padding:16px 20px;display:flex}.search-input{border:1px solid var(--border-color);border-radius:var(--radius);background-color:var(--bg-input);min-width:180px;max-width:320px;color:var(--text-primary);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%239ca3af' viewBox='0 0 16 16'%3E%3Cpath d='M11.742 10.344a6.5 6.5 0 1 0-1.397 1.398h-.001l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85zm-5.242.156a5 5 0 1 1 0-10 5 5 0 0 1 0 10z'/%3E%3C/svg%3E");background-position:10px;background-repeat:no-repeat;outline:none;flex:1;padding:8px 14px 8px 36px;font-size:.875rem;transition:border-color .15s}.search-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0e74901a}.table-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.doctors-table{min-width:1280px}table{border-collapse:collapse;width:100%;min-width:600px}thead{background:var(--bg-table-head)}th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);border-bottom:1px solid var(--border-color);white-space:nowrap;font-size:.75rem;font-weight:600}td,th{padding:12px 16px}td{border-bottom:1px solid var(--border-light);color:var(--text-secondary);font-size:.85rem}tr:hover td{background:var(--bg-table-hover)}.actions-cell{gap:4px;display:flex}.badge{white-space:nowrap;border-radius:20px;align-items:center;padding:2px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.badge-success{background:var(--badge-success-bg);color:var(--badge-success-text)}.badge-warning{background:var(--badge-warning-bg);color:var(--badge-warning-text)}.badge-danger{background:var(--badge-danger-bg);color:var(--badge-danger-text)}.badge-info{background:var(--badge-info-bg);color:var(--badge-info-text)}.badge-secondary{background:var(--badge-secondary-bg);color:var(--badge-secondary-text)}.modal-overlay{background:var(--modal-overlay);z-index:1000;justify-content:center;align-items:center;padding:16px;animation:fadeIn .15s;display:flex;position:fixed;inset:0}.modal-overlay.modal-overlay-stacked{z-index:2000}.modal{box-shadow:var(--shadow-lg);border:1px solid var(--border-color);border-radius:12px;width:100%;max-width:560px;max-height:90vh;animation:slideUp .2s;overflow-y:auto}.modal,.modal-header{background:var(--bg-modal)}.modal-header{border-bottom:1px solid var(--border-color);z-index:1;justify-content:space-between;align-items:center;padding:16px 20px;display:flex;position:sticky;top:0}.modal-header h2{color:var(--text-primary);font-size:1.1rem;font-weight:700}.modal-body{padding:20px}.modal-body p{color:var(--text-muted)}.modal-footer{border-top:1px solid var(--border-color);background:var(--bg-modal);justify-content:flex-end;gap:10px;padding:14px 20px;display:flex;position:sticky;bottom:0}.modal.modal-session-marker-confirm{max-width:420px}.session-marker-confirm{text-align:center;flex-direction:column;align-items:center;gap:14px;display:flex}.session-marker-confirm-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;display:flex}.session-marker-confirm-icon--positive{background:var(--primary)}@supports (color:color-mix(in lab,red,red)){.session-marker-confirm-icon--positive{background:color-mix(in srgb,var(--primary) 18%,transparent)}}.session-marker-confirm-icon--positive{color:var(--primary)}.session-marker-confirm-icon--caution{background:var(--danger,#ef4444)}@supports (color:color-mix(in lab,red,red)){.session-marker-confirm-icon--caution{background:color-mix(in srgb,var(--danger,#ef4444) 14%,transparent)}}.session-marker-confirm-icon--caution{color:var(--danger,#ef4444)}.session-marker-confirm-meta{text-align:left;background:var(--gray-50,#0000000a);border:1px solid var(--border-color);border-radius:10px;flex-direction:column;gap:8px;width:100%;padding:12px 14px;display:flex}.session-marker-confirm-meta-row{color:var(--text-primary);align-items:flex-start;gap:10px;font-size:.9rem;font-weight:600;display:flex}.session-marker-confirm-meta-row svg{color:var(--text-muted);flex-shrink:0;margin-top:2px}.session-marker-confirm-desc{color:var(--text-muted);max-width:100%;margin:0;font-size:.9rem;line-height:1.5}.session-marker-confirm-sms{text-align:left;background:var(--primary);border-radius:10px;align-items:flex-start;gap:12px;width:100%;padding:12px 14px;display:flex}@supports (color:color-mix(in lab,red,red)){.session-marker-confirm-sms{background:color-mix(in srgb,var(--primary) 8%,transparent)}}.session-marker-confirm-sms{border:1px solid var(--primary)}@supports (color:color-mix(in lab,red,red)){.session-marker-confirm-sms{border:1px solid color-mix(in srgb,var(--primary) 22%,var(--border-color))}}.session-marker-confirm-sms{color:var(--text-secondary);font-size:.82rem;line-height:1.45}.session-marker-confirm-sms svg{color:var(--primary);flex-shrink:0;margin-top:2px}.session-marker-confirm-sms strong{color:var(--text-primary);margin-bottom:4px;font-size:.8rem;font-weight:700;display:block}.session-marker-confirm-sms span{font-weight:500;display:block}.form-group{margin-bottom:16px}.form-group label{color:var(--text-secondary);margin-bottom:6px;font-size:.85rem;font-weight:600;display:block}.form-control{border:1px solid var(--border-color);border-radius:var(--radius);background:var(--bg-input);width:100%;color:var(--text-primary);outline:none;padding:10px 14px;font-size:.875rem;transition:border-color .15s}.form-control:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0e74901a}.form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}select.form-control{appearance:auto}textarea.form-control{resize:vertical;min-height:80px}.empty-state{text-align:center;color:var(--text-faint);padding:50px 20px}.empty-state svg{margin-bottom:12px;font-size:3rem}.empty-state p{margin-bottom:4px;font-size:1rem}.empty-state .sub{font-size:.85rem}.loading{justify-content:center;align-items:center;padding:60px;display:flex}.spinner{border:3px solid var(--border-color);border-top-color:var(--primary);border-radius:50%;width:36px;height:36px;animation:spin .7s linear infinite}.user-badge{border:1px solid var(--border-color);border-radius:8px;align-items:center;gap:8px;padding:6px 12px 6px 6px;display:flex}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.3)}}@media (min-width:1280px){.stats-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:1024px) and (max-width:1279px){.stats-grid{grid-template-columns:repeat(3,1fr);gap:16px}.stat-card{padding:16px 18px}.stat-info p{font-size:1.4rem}}@media (max-width:1023px){.page-content{padding:20px 16px}.stats-grid{grid-template-columns:repeat(2,1fr);gap:14px}.stat-card{padding:16px 18px}.stat-icon{width:44px;height:44px;font-size:1.25rem}.stat-info p{font-size:1.35rem}.page-header h1{font-size:1.4rem}.card{padding:18px}td,th{padding:10px 14px}.table-toolbar{padding:12px 16px}.modal{max-width:500px}.modal-header{padding:14px 18px}.modal-body{padding:18px}.modal-footer{padding:12px 18px}}@media (max-width:767px){.page-content{padding:16px 12px}.page-header{margin-bottom:16px}.page-header h1{font-size:1.25rem}.stats-grid{grid-template-columns:repeat(2,1fr);gap:10px}.stat-card{gap:10px;padding:14px}.stat-icon{border-radius:10px;width:40px;height:40px;font-size:1.1rem}.stat-info h3{font-size:.7rem}.stat-info p{font-size:1.15rem}.card{padding:14px}.card,.table-container{border-radius:10px}.table-toolbar{flex-wrap:wrap;gap:8px;padding:12px 14px}.search-input{min-width:0;max-width:100%}table{min-width:500px}th{font-size:.7rem}td,th{padding:10px 12px}td{font-size:.8rem}.btn{padding:9px 16px;font-size:.82rem}.form-row{gap:0;grid-template-columns:1fr!important}.modal{border-radius:12px;max-width:100%}.modal-header h2{font-size:1rem}.hide-mobile{display:none!important}.user-badge span{display:none}}@media (max-width:479px){.page-content{padding:12px 10px}.page-header{gap:8px;margin-bottom:12px}.page-header h1{font-size:1.1rem}.stats-grid{grid-template-columns:1fr 1fr;gap:8px}.stat-card{flex-direction:column;align-items:flex-start;gap:8px;padding:12px 10px}.stat-icon{border-radius:8px;width:36px;height:36px;font-size:1rem}.stat-info h3{font-size:.65rem}.stat-info p{font-size:1.05rem}.card{padding:12px}.table-toolbar{padding:10px 12px}.search-input{padding:7px 12px 7px 34px;font-size:.82rem}table{min-width:420px}th{font-size:.68rem}td,th{padding:8px 10px}td{font-size:.78rem}.btn{padding:8px 14px;font-size:.8rem}.btn-sm{padding:5px 10px;font-size:.75rem}.form-group{margin-bottom:12px}.form-control{padding:9px 12px;font-size:.82rem}.modal-overlay{padding:8px}.modal-header{padding:12px 14px}.modal-header h2{font-size:.95rem}.modal-body{padding:14px}.modal-footer{padding:10px 14px}.empty-state{padding:30px 14px}.empty-state svg{font-size:2rem}.empty-state p{font-size:.85rem}.empty-state .sub{font-size:.75rem}.hide-mobile-sm{display:none!important}}@media (max-width:359px){.stats-grid{grid-template-columns:1fr;gap:8px}.stat-card{flex-direction:row;align-items:center}.page-header{flex-direction:column;align-items:flex-start}.btn{justify-content:center;width:100%}}.bmi-display{flex-direction:column;align-items:flex-start;display:flex}.barcode-modal-content{flex-direction:column;align-items:center;gap:16px;display:flex}.barcode-patient-info{text-align:center}.barcode-patient-info h3{color:var(--text-primary);margin-bottom:4px;font-size:1.15rem;font-weight:700}.barcode-patient-info p{color:var(--text-muted);margin-bottom:2px;font-size:.85rem}.barcode-display{border-radius:var(--radius);border:1px solid var(--border-color);background:#fff;justify-content:center;align-items:center;width:100%;padding:16px;display:flex}.barcode-display svg{max-width:100%;height:auto}.barcode-success-icon{color:var(--success);justify-content:center;animation:fadeIn .3s;display:flex}.barcode-hint{color:var(--text-faint);text-align:center;font-size:.75rem}.modal.modal-wide{max-width:640px}.modal.unpaid-auto-cancel-modal{width:96vw;max-width:min(1040px,96vw)}@media (max-width:767px){.modal.unpaid-auto-cancel-modal{width:100%;max-width:100%}}.modal.modal-bank-deposit{width:95vw;max-width:720px}.bank-deposit-stats-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (max-width:767px){.modal.modal-bank-deposit{width:100%;max-width:100%}.bank-deposit-stats-grid{grid-template-columns:1fr;gap:12px}}@media (max-width:479px){.modal.modal-bank-deposit{max-height:85vh}}.schedule-container{flex-direction:column;gap:10px;display:flex}.schedule-day{border-left:1px solid var(--border-color);border-radius:var(--radius);border:1px solid var(--border-color);border-left-width:3px;transition:border-color .2s;overflow:hidden}.schedule-day-active{border-left-color:var(--primary)}.schedule-day-header{background:var(--bg-table-head);justify-content:space-between;align-items:center;padding:8px 14px;display:flex}.schedule-day-label{align-items:center;gap:10px;display:flex}.schedule-day-short{letter-spacing:.06em;color:var(--primary);background:var(--primary-bg);text-align:center;border-radius:4px;min-width:34px;padding:2px 7px;font-size:.68rem;font-weight:700}[data-theme=dark] .schedule-day-short{background:#0e74902e}.schedule-day-full{color:var(--text-primary);font-size:.88rem;font-weight:600}.schedule-add-slot{border:1px dashed var(--border-color);color:var(--primary);cursor:pointer;background:0 0;border-radius:6px;align-items:center;gap:4px;padding:4px 10px;font-size:.73rem;font-weight:600;transition:all .15s;display:inline-flex}.schedule-add-slot:hover{background:var(--primary-bg);border-color:var(--primary);border-style:solid}[data-theme=dark] .schedule-add-slot:hover{background:#0e74901f}.schedule-day-body{padding:10px 14px}.schedule-slots{flex-direction:column;gap:8px;display:flex}.schedule-slot{align-items:center;gap:8px;display:flex}.schedule-time-input{border:1px solid var(--border-color);background:var(--bg-input);color:var(--text-primary);border-radius:6px;outline:none;width:130px;min-width:0;padding:7px 10px;font-family:inherit;font-size:.85rem;transition:border-color .15s}.schedule-time-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0e74901a}.schedule-slot-separator{color:var(--text-muted);flex-shrink:0;font-size:.78rem;font-weight:500}.schedule-slot-empty{color:var(--text-faint);align-items:center;gap:6px;padding:2px 0;font-size:.82rem;font-style:italic;display:flex}.schedule-badge{cursor:pointer;background:var(--badge-info-bg);color:var(--badge-info-text);border:none;border-radius:20px;align-items:center;gap:5px;padding:3px 10px;font-size:.73rem;font-weight:600;transition:all .15s;display:inline-flex}.schedule-badge:hover{filter:brightness(.95);transform:scale(1.03)}.schedule-badge-empty{color:var(--text-faint);font-size:.73rem;font-style:italic}.schedule-dot{background:var(--success);border:1.5px solid var(--bg-card);border-radius:50%;width:7px;height:7px;position:absolute;top:3px;right:3px}.btn-icon.schedule:hover{color:var(--primary);background:var(--primary-bg)}[data-theme=dark] .btn-icon.schedule:hover{background:#0e749026}@media (max-width:767px){.modal.modal-wide{max-width:100%}.schedule-time-input{flex:1;width:auto;padding:6px;font-size:.8rem}.schedule-day-body,.schedule-day-header{padding:8px 10px}.schedule-slot{gap:5px}}@media (max-width:479px){.schedule-day-full{display:none}.schedule-time-input{padding:5px 4px;font-size:.78rem}}.modal.modal-appointment{width:92vw;max-width:880px}.modal.modal-appointment .modal-header{background:linear-gradient(135deg,var(--primary) 0,var(--primary-dark) 100%);border-bottom:none}.modal.modal-appointment .modal-header h2{color:#fff}.modal.modal-appointment .modal-header .btn-icon{color:#fffc}.modal.modal-appointment .modal-header .btn-icon:hover{color:#fff;background:#ffffff26}.modal.modal-appointment .modal-body{padding:24px}.modal.modal-appointment .modal-footer{border-top:1px solid var(--border-color);gap:12px;padding:16px 24px}@media (min-width:1280px){.modal.modal-appointment{max-width:920px}}@media (max-width:1023px){.modal.modal-appointment{width:94vw;max-width:700px}}@media (max-width:767px){.modal.modal-appointment{border-radius:18px 18px 0 0;align-self:flex-end;width:100%;max-width:100%;max-height:94vh}.modal-overlay:has(.modal-appointment){align-items:flex-end;padding:0}.modal.modal-appointment .modal-body{padding:16px}.modal.modal-appointment .modal-header{border-radius:18px 18px 0 0;padding:14px 16px}.modal.modal-appointment .modal-footer{padding:12px 16px}.modal.modal-appointment .form-row{gap:0;grid-template-columns:1fr!important}}@media (max-width:479px){.modal.modal-appointment{border-radius:16px 16px 0 0;max-height:95vh}.modal.modal-appointment .modal-body{padding:14px 12px}.modal.modal-appointment .modal-header{border-radius:16px 16px 0 0;padding:12px 14px}.modal.modal-appointment .modal-header h2{font-size:.95rem}.modal.modal-appointment .modal-footer{gap:8px;padding:10px 12px}.modal.modal-appointment .modal-footer .btn{flex:1;padding:9px 14px;font-size:.8rem}}@media (max-width:359px){.modal.modal-appointment{max-height:97vh}.modal.modal-appointment .modal-body{padding:10px 8px}.modal.modal-appointment .modal-footer .btn{padding:8px 12px;font-size:.78rem}}.apt-form{flex-direction:column;gap:0;display:flex}.apt-step{border:1px solid var(--border-color);background:var(--bg-card);border-radius:12px;margin-bottom:16px}.apt-step-last{margin-bottom:0}.apt-step-header{background:var(--bg-table-head);border-bottom:1px solid var(--border-light);border-radius:11px 11px 0 0;align-items:center;gap:12px;padding:14px 18px;display:flex}.apt-step-number{background:var(--primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:.78rem;font-weight:700;display:flex}.apt-step-label{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.apt-step-title{color:var(--text-primary);font-size:.9rem;font-weight:700}.apt-step-hint{color:var(--text-muted);font-size:.75rem}.apt-step-check{background:var(--success);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:.72rem;font-weight:700;animation:fadeIn .2s;display:flex}.apt-step-body{padding:18px}.apt-patient-card{background:var(--primary-bg);border:1.5px solid var(--primary);border-radius:10px;align-items:center;gap:14px;padding:16px 18px;animation:slideUp .2s;display:flex}[data-theme=dark] .apt-patient-card{background:#0e74901a}.apt-patient-avatar{background:var(--primary);color:#fff;letter-spacing:.5px;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:.88rem;font-weight:700;display:flex}.apt-patient-info{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.apt-patient-name{color:var(--text-primary);font-size:1rem;font-weight:700}.apt-patient-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:10px;font-size:.8rem;display:flex}.apt-patient-meta span{align-items:center;gap:3px;display:inline-flex}.apt-card-clear{width:30px;height:30px;color:var(--text-muted);cursor:pointer;background:#0000000f;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:all .15s;display:inline-flex}[data-theme=dark] .apt-card-clear{background:#ffffff14}.apt-card-clear:hover{background:var(--badge-danger-bg);color:var(--danger)}.apt-barcode-input{font-weight:500;border:2px dashed var(--primary)!important;background:var(--primary-bg)!important}[data-theme=dark] .apt-barcode-input{background:#0e74900f!important}.apt-barcode-input:focus{border-style:solid!important;box-shadow:0 0 0 4px #0e74901f!important}.apt-divider-text{align-items:center;gap:14px;margin:4px 0 12px;display:flex}.apt-divider-text:after,.apt-divider-text:before{content:"";background:var(--border-color);flex:1;height:1px}.apt-divider-text span{color:var(--text-faint);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;font-size:.72rem;font-weight:600}.apt-doctor-chip{border-radius:var(--radius);border:1.5px solid var(--primary);background:var(--primary-bg);align-items:center;gap:10px;min-height:42px;padding:8px 12px;display:flex}[data-theme=dark] .apt-doctor-chip{background:#0e74901a}.apt-doctor-chip-avatar{background:var(--secondary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.7rem;font-weight:700;display:flex}.apt-doctor-chip-info{flex-direction:column;flex:1;min-width:0;display:flex}.apt-doctor-chip-name{color:var(--text-primary);font-size:.88rem;font-weight:600}.apt-doctor-chip-spec,.form-hint{color:var(--text-muted);font-size:.73rem}.form-hint{margin-top:4px;font-weight:500;display:block}.mercantile-holiday-note{background:var(--warning,#d97706);flex-wrap:wrap;align-items:baseline;gap:6px 8px;margin-top:6px;padding:6px 10px;display:flex}@supports (color:color-mix(in lab,red,red)){.mercantile-holiday-note{background:color-mix(in srgb,var(--warning,#d97706) 12%,var(--bg-card,#fff))}}.mercantile-holiday-note{border:1px solid var(--warning,#d97706)}@supports (color:color-mix(in lab,red,red)){.mercantile-holiday-note{border:1px solid color-mix(in srgb,var(--warning,#d97706) 28%,var(--border-color,#e5e7eb))}}.mercantile-holiday-note{color:var(--text-primary);border-radius:6px;font-size:.75rem;line-height:1.35}.mercantile-holiday-note--inline{color:var(--text-muted,#64748b);background:0 0;border:none;margin-top:0;margin-left:4px;padding:0;font-size:.7rem;display:inline}.mercantile-holiday-pill{text-transform:uppercase;letter-spacing:.04em;background:var(--warning,#b45309);border-radius:4px;padding:1px 7px;font-size:.65rem;font-weight:700;display:inline-block}@supports (color:color-mix(in lab,red,red)){.mercantile-holiday-pill{background:color-mix(in srgb,var(--warning,#b45309) 18%,transparent)}}.mercantile-holiday-pill{color:var(--text-primary,#0f172a)}.mercantile-holiday-name{color:var(--text-primary);font-weight:500}.mercantile-restricted-hint{color:var(--danger,#b91c1c);margin:6px 0 0;font-size:.75rem;font-weight:500;line-height:1.35}.modal.modal-appointment .apt-doctor-leave-warning{color:#dc2626;margin-top:8px;font-size:.8125rem;font-weight:600;line-height:1.4}[data-theme=dark] .modal.modal-appointment .apt-doctor-leave-warning{color:#f87171}.rcpt-date-holiday-stack{flex-direction:column;align-items:center;width:100%;max-width:520px;margin:0 auto;display:flex}.rcpt-merc-holiday{text-align:left;align-self:stretch;max-width:100%;margin-top:8px}.mcal-field{width:100%;max-width:100%;display:block;position:relative}.mcal-field--sm{max-width:200px}.mcal-field__btn{text-align:left;border:1px solid var(--border-color);border-radius:var(--radius);background:var(--bg-input);width:100%;min-height:40px;color:var(--text-primary);cursor:pointer;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px 10px 14px;font-size:.875rem;line-height:1.2;transition:border-color .15s,background .15s;display:flex}.mcal-field--sm .mcal-field__btn{min-height:36px;padding:6px 10px;font-size:.8rem}.mcal-field__btn:hover:not(:disabled){border-color:var(--primary,#2563eb);background:var(--bg-card)}.mcal-field__btn:disabled{opacity:.55;cursor:not-allowed}.mcal-field__value{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.mcal-field__icon{color:var(--text-muted,#64748b);opacity:.9;flex-shrink:0}.mcal-pop{background:var(--bg-card,#fff);width:min(292px,100vw - 16px);max-height:min(420px,90vh);color:var(--text-primary,#0f172a);border:1px solid var(--border-color,#e5e7eb);box-shadow:0 10px 40px #0000001f,0 0 0 1px var(--border-color);border-radius:10px;padding:10px 10px 6px;position:fixed;overflow:auto}@supports (color:color-mix(in lab,red,red)){.mcal-pop{box-shadow:0 10px 40px #0000001f,0 0 0 1px color-mix(in srgb,var(--border-color) 60%,transparent)}}.mcal-pop{animation:mcalFade .12s}@keyframes mcalFade{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.mcal-header{-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:4px;margin-bottom:6px;display:flex}.mcal-title{text-align:center;color:var(--text-primary);letter-spacing:.02em;flex:1;font-size:.82rem;font-weight:700}.mcal-nav-btn{background:var(--bg-body,#f8fafc);width:30px;height:30px;color:var(--text-secondary,#334155);cursor:pointer;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;transition:background .12s;display:flex}.mcal-nav-btn:hover{background:var(--bg-table-head,#f1f5f9);color:var(--primary,#2563eb)}.mcal-weekdays{grid-template-columns:repeat(7,1fr);gap:1px;margin-bottom:2px;display:grid}.mcal-wd{text-align:center;color:var(--text-muted,#94a3b8);text-transform:uppercase;letter-spacing:.04em;padding:1px 0 3px;font-size:.6rem;font-weight:600}.mcal-grid{grid-template-columns:repeat(7,1fr);gap:2px;margin-top:2px;display:grid}.mcal-day--pad{pointer-events:none;background:0 0}.mcal-day,.mcal-day--pad{border:none;min-height:32px}.mcal-day{background:var(--bg-body,#f8fafc);min-width:0;color:var(--text-primary,#0f172a);cursor:pointer;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:1px;padding:1px 0 3px;font-size:.8rem;font-weight:500;line-height:1;transition:background .1s,color .1s,box-shadow .1s;display:flex;position:relative}.mcal-day--disabled,.mcal-day:disabled{opacity:.35;cursor:not-allowed;background:var(--bg-table-stripe,transparent)}.mcal-day:hover:not(:disabled){background:var(--primary,#2563eb)}@supports (color:color-mix(in lab,red,red)){.mcal-day:hover:not(:disabled){background:color-mix(in srgb,var(--primary,#2563eb) 10%,var(--bg-body))}}.mcal-day--today{box-shadow:0 0 0 1.5px var(--primary,#2563eb) inset;font-weight:800}@supports (color:color-mix(in lab,red,red)){.mcal-day--today{box-shadow:0 0 0 1.5px color-mix(in srgb,var(--primary,#2563eb) 50%,var(--border-color)) inset}}.mcal-day--mercantile:not(:disabled){background:var(--warning,#d97706)}@supports (color:color-mix(in lab,red,red)){.mcal-day--mercantile:not(:disabled){background:color-mix(in srgb,var(--warning,#d97706) 14%,var(--bg-body,#f8fafc))}}.mcal-day--mercantile:not(:disabled){color:var(--text-primary);font-weight:600}.mcal-day--mercantile:hover:not(:disabled){background:var(--warning,#b45309)}@supports (color:color-mix(in lab,red,red)){.mcal-day--mercantile:hover:not(:disabled){background:color-mix(in srgb,var(--warning,#b45309) 22%,var(--bg-body))}}.mcal-day--selected,.mcal-day--selected:disabled{box-shadow:0 1px 4px var(--primary);background:var(--primary,#2563eb)!important;color:#fff!important;opacity:1!important}@supports (color:color-mix(in lab,red,red)){.mcal-day--selected,.mcal-day--selected:disabled{box-shadow:0 1px 4px color-mix(in srgb,var(--primary) 35%,transparent)}}.mcal-day--selected,.mcal-day--selected:disabled{font-weight:700}.mcal-holiday-dot{background:var(--warning,#d97706);width:4px;height:4px;box-shadow:0 0 0 .5px var(--text-primary,#0f172a);border-radius:50%;display:block}.mcal-day--selected .mcal-holiday-dot,.mcal-day:disabled .mcal-holiday-dot{display:none}.mcal-day--selected.mcal-day--mercantile{color:#fff}.mcal-legend{border-top:1px solid var(--border-light,#e2e8f0);color:var(--text-muted,#94a3b8);flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;padding:4px 2px 0;font-size:.6rem;line-height:1.3;display:flex}.mcal-legend-sample{background:var(--warning,#d97706);border-radius:3px;width:12px;height:12px;display:inline-block}@supports (color:color-mix(in lab,red,red)){.mcal-legend-sample{background:color-mix(in srgb,var(--warning,#d97706) 14%,var(--bg-body,#f8fafc))}}.mcal-legend-sample{box-shadow:0 0 0 .5px var(--border-color) inset}.mcal-legend-text{text-transform:uppercase;letter-spacing:.04em;font-weight:500}.mcal-legend-sub{text-transform:none;letter-spacing:.01em;color:var(--text-muted);margin-top:4px;font-size:.58rem;font-weight:500;line-height:1.25;display:block}.mapt-toolbar-mcal{flex:none;width:150px;min-width:0}.apt-slots-section{margin-top:4px}.apt-fee-section,.apt-slots-section{border-top:1px solid var(--border-light);padding-top:16px}.apt-fee-section{margin-top:16px}.apt-new-charge-hint{color:var(--text-muted);margin-bottom:14px;font-size:.82rem;line-height:1.45}.apt-new-charge-card{background:var(--gray-50);border:1px solid var(--border-color);border-radius:10px;margin-top:14px;padding:16px;transition:border-color .2s,box-shadow .2s}.apt-new-charge-card:hover{border-color:var(--primary-light,#0e749059)}[data-theme=dark] .apt-new-charge-card{background:var(--gray-900);border-color:var(--gray-700)}[data-theme=dark] .apt-new-charge-card:hover{border-color:var(--gray-600)}.apt-new-charge-header{align-items:flex-start;gap:10px;margin-bottom:14px;display:flex}.apt-new-charge-icon{color:var(--primary);flex-shrink:0;margin-top:2px}.apt-new-charge-title{color:var(--text-secondary);font-size:.9rem;font-weight:700;display:block}.apt-new-charge-subtitle{color:var(--text-muted);margin-top:2px;font-size:.75rem;display:block}.apt-new-charge-fields{grid-template-columns:1fr auto auto auto;align-items:end;gap:12px;margin-bottom:14px;display:grid}.apt-new-charge-field{flex-direction:column;gap:4px;display:flex}.apt-new-charge-field label{color:var(--text-muted);font-size:.75rem;font-weight:600}.apt-new-charge-name{min-width:0}.apt-new-charge-amount{width:90px}.apt-new-charge-total{background:var(--primary-bg);border-radius:8px;flex-direction:column;gap:4px;min-width:100px;padding:8px 12px;display:flex}.apt-new-charge-total label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:.7rem;font-weight:600}.apt-new-charge-total-value{color:var(--primary);font-size:1rem;font-weight:700}.apt-new-charge-actions{flex-wrap:wrap;gap:10px;display:flex}.apt-new-charge-btn-save,.apt-new-charge-btn-use{align-items:center;gap:6px;display:inline-flex}.apt-spin{animation:spin .7s linear infinite}@media (max-width:600px){.apt-new-charge-fields{grid-template-columns:1fr 1fr}.apt-new-charge-total{grid-column:1/-1}.apt-new-charge-amount{width:100%}}@media (max-width:400px){.apt-new-charge-fields{grid-template-columns:1fr}.apt-new-charge-actions{flex-direction:column}.apt-new-charge-actions .btn{justify-content:center;width:100%}}.apt-charges-hint{color:var(--text-muted);margin-bottom:8px;font-size:.78rem}.apt-selected-charges{background:var(--gray-50);border:1px solid var(--border-color);border-radius:8px;margin-top:12px;padding:12px}[data-theme=dark] .apt-selected-charges{background:var(--gray-900)}.apt-selected-charges-list{flex-direction:column;gap:8px;margin-bottom:12px;display:flex}.apt-selected-charge-row{background:var(--bg-modal);border:1px solid var(--border-light);border-radius:6px;align-items:center;gap:10px;padding:8px 10px;display:flex}.apt-selected-charge-info{flex-direction:column;flex:1;gap:6px;display:flex}.apt-selected-charge-label{color:var(--text-secondary);font-size:.85rem;font-weight:600}.apt-selected-charge-inputs{gap:8px;display:flex}.apt-charge-input{width:80px;padding:6px 8px;font-size:.85rem}.apt-remove-charge-btn{color:#ef4444;cursor:pointer;background:#ef44441a;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;transition:background .15s;display:inline-flex}.apt-remove-charge-btn:hover{background:#ef444433}.apt-selected-charges-total{border-top:1px solid var(--border-color);flex-wrap:wrap;gap:12px 20px;padding-top:10px;font-size:.85rem;display:flex}.apt-selected-charges-total strong{color:var(--primary)}.apt-slots-label{color:var(--text-secondary);align-items:center;gap:6px;margin-bottom:10px;font-size:.85rem;font-weight:600;display:flex}.apt-slots-day{letter-spacing:.03em;background:var(--badge-info-bg);color:var(--badge-info-text);border-radius:4px;margin-left:4px;padding:1px 8px;font-size:.7rem;font-weight:700;display:inline-flex}.searchable-field,.searchable-input-wrap{position:relative}.searchable-icon{color:var(--text-faint);pointer-events:none;z-index:1;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.searchable-input{padding-left:34px!important}.search-dropdown{z-index:50;background:var(--bg-modal);border:1px solid var(--border-color);border-radius:var(--radius);max-height:240px;box-shadow:var(--shadow-lg);animation:fadeIn .12s;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.search-dropdown-item{color:var(--text-secondary);cursor:pointer;border-bottom:1px solid var(--border-light);align-items:center;gap:10px;padding:10px 14px;font-size:.85rem;transition:background .1s;display:flex}.search-dropdown-item:last-child{border-bottom:none}.search-dropdown-item.highlighted,.search-dropdown-item:hover{background:var(--primary-bg)}[data-theme=dark] .search-dropdown-item.highlighted,[data-theme=dark] .search-dropdown-item:hover{background:#0e749014}.search-dropdown-avatar{background:var(--primary);color:#fff;letter-spacing:.5px;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.68rem;font-weight:700;display:flex}.search-dropdown-avatar.doctor{background:var(--secondary)}.search-dropdown-info{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.search-dropdown-primary{color:var(--text-primary);font-size:.85rem;font-weight:600}.search-dropdown-primary,.search-dropdown-secondary{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.search-dropdown-secondary{color:var(--text-muted);font-size:.73rem}.time-slots-grid{flex-wrap:wrap;gap:10px;display:flex}.time-slot-btn{border:2px solid var(--border-color);background:var(--bg-input);color:var(--text-secondary);cursor:pointer;border-radius:10px;align-items:center;gap:7px;padding:11px 20px;font-size:.85rem;font-weight:600;transition:all .18s;display:inline-flex}.time-slot-range{white-space:nowrap}.time-slot-btn:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-bg);transform:translateY(-1px);box-shadow:0 2px 8px #0e74901f}[data-theme=dark] .time-slot-btn:hover{background:#0e74901a;box-shadow:0 2px 8px #0e749014}.time-slot-btn.active{border-color:var(--primary);background:var(--primary);color:#fff;box-shadow:0 3px 10px #0e749040}.time-slot-btn.active:hover{background:var(--primary-dark);color:#fff;transform:translateY(-1px)}.apt-patient-cell{flex-direction:column;align-items:flex-start;gap:6px;min-width:0;display:flex}.apt-patient-cell__name{color:var(--text-primary);word-break:break-word;font-weight:600;line-height:1.3}.apt-patient-cell__meta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.apt-booking-channel-checks{flex-wrap:wrap;align-items:center;gap:12px 28px;display:flex}.apt-booking-source-block .apt-booking-channel-checks label.apt-booking-channel-check,label.apt-booking-channel-check{white-space:nowrap;color:var(--text-primary);cursor:pointer;align-items:center;gap:10px;margin:0;font-weight:500;line-height:1.3;display:inline-flex}.apt-booking-source-block .apt-booking-channel-checks label.apt-booking-channel-check input[type=checkbox],label.apt-booking-channel-check input[type=checkbox]{flex-shrink:0;margin:0}.apt-booking-channel-check__label{line-height:1.3;display:inline-block}.apt-confirmation-checks{flex-direction:column;gap:6px;min-width:max-content;display:flex}.apt-confirmation-row{white-space:nowrap;flex-flow:row;align-items:center;column-gap:14px;display:flex}.apt-confirmation-checks label.apt-confirmation-check{white-space:nowrap;cursor:pointer;color:var(--text-primary);flex-shrink:0;align-items:center;gap:8px;margin:0;font-weight:500;display:inline-flex}.apt-confirmation-checks label.apt-confirmation-check input[type=checkbox]{flex-shrink:0;margin:0}.apt-booking-channel-badge{white-space:nowrap;letter-spacing:.01em;border:1px solid var(--border-color);background:var(--text-muted);border-radius:6px;align-items:center;padding:3px 8px;font-size:.68rem;font-weight:600;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.apt-booking-channel-badge{background:color-mix(in srgb,var(--text-muted) 12%,var(--bg-card))}}.apt-booking-channel-badge{color:var(--text-secondary)}[data-theme=dark] .apt-booking-channel-badge{background:var(--text-muted)}@supports (color:color-mix(in lab,red,red)){[data-theme=dark] .apt-booking-channel-badge{background:color-mix(in srgb,var(--text-muted) 22%,var(--bg-card))}}[data-theme=dark] .apt-booking-channel-badge{color:var(--text-secondary)}.apt-visit-type-badge{white-space:nowrap;vertical-align:middle;letter-spacing:.02em;text-transform:uppercase;border:1px solid #0000;border-radius:6px;align-items:center;gap:4px;padding:3px 8px;font-size:.7rem;font-weight:700;display:inline-flex}.apt-visit-type-badge--physical{background:var(--badge-secondary-bg);color:var(--badge-secondary-text);border-color:var(--border-color)}.apt-visit-type-badge--online{background:var(--badge-info-bg);color:var(--badge-info-text);border-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.apt-visit-type-badge--online{border-color:color-mix(in srgb,var(--primary) 40%,var(--border-color))}}[data-theme=dark] .apt-visit-type-badge--online{background:var(--primary)}@supports (color:color-mix(in lab,red,red)){[data-theme=dark] .apt-visit-type-badge--online{background:color-mix(in srgb,var(--primary) 35%,var(--bg-card))}}[data-theme=dark] .apt-visit-type-badge--online{color:var(--primary-light,#67e8f9)}[data-theme=dark] .apt-visit-type-badge--physical{background:var(--text-muted)}@supports (color:color-mix(in lab,red,red)){[data-theme=dark] .apt-visit-type-badge--physical{background:color-mix(in srgb,var(--text-muted) 18%,var(--bg-card))}}[data-theme=dark] .apt-visit-type-badge--physical{color:var(--text-secondary)}.no-slots-msg{background:var(--badge-warning-bg);color:var(--badge-warning-text);border-radius:10px;align-items:center;gap:8px;padding:14px 16px;font-size:.84rem;font-weight:500;line-height:1.5;display:flex}@media (max-width:767px){.apt-step{border-radius:10px;margin-bottom:12px}.apt-step-header{gap:10px;padding:12px 14px}.apt-step-number{width:26px;height:26px;font-size:.74rem}.apt-step-title{font-size:.85rem}.apt-step-body{padding:14px}.apt-patient-card{gap:10px;padding:12px 14px}.apt-patient-avatar{width:38px;height:38px;font-size:.82rem}.apt-patient-name{font-size:.92rem}.apt-patient-meta{gap:8px;font-size:.76rem}.time-slots-grid{gap:8px}.time-slot-btn{border-radius:8px;flex:calc(50% - 8px);justify-content:center;min-width:0;padding:10px 14px;font-size:.82rem}.search-dropdown{max-height:200px}.search-dropdown-item{gap:8px;padding:9px 12px}.search-dropdown-avatar{width:28px;height:28px;font-size:.64rem}.apt-doctor-chip{min-height:38px;padding:7px 10px}.apt-doctor-chip-avatar{width:28px;height:28px;font-size:.64rem}}@media (max-width:479px){.apt-step{border-radius:8px;margin-bottom:10px}.apt-step-header{padding:10px 12px}.apt-step-body{padding:12px}.apt-step-hint{font-size:.68rem}.apt-patient-card{flex-wrap:wrap;padding:10px 12px}.apt-patient-avatar{width:34px;height:34px;font-size:.76rem}.apt-patient-meta{gap:6px;font-size:.73rem}.apt-divider-text{margin:2px 0 8px}.time-slot-btn{border-radius:8px;flex:100%;padding:9px 10px;font-size:.78rem}.search-dropdown-item{gap:6px;padding:8px 10px;font-size:.8rem}.no-slots-msg{padding:10px 12px;font-size:.8rem}.searchable-icon{left:10px}.searchable-input{padding-left:30px!important}.apt-card-clear{width:26px;height:26px}}@media (max-width:359px){.apt-step-number{width:24px;height:24px;font-size:.7rem}.apt-step-title{font-size:.8rem}.time-slot-btn{gap:4px;padding:8px;font-size:.75rem}.apt-patient-meta .badge{padding:1px 7px;font-size:.68rem}}.view-toggle{border:1px solid var(--border-color);border-radius:var(--radius);margin-left:auto;display:inline-flex;overflow:hidden}.view-toggle-btn{background:var(--bg-card);color:var(--text-faint);cursor:pointer;border:none;justify-content:center;align-items:center;padding:6px 12px;transition:all .15s;display:flex}.view-toggle-btn:first-child{border-right:1px solid var(--border-color)}.view-toggle-btn:hover{color:var(--primary);background:var(--primary-bg)}.view-toggle-btn.active{color:#fff;background:var(--primary)}.sessions-container{padding:16px}.sessions-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.session-card{border:1px solid var(--border-color);background:var(--bg-card);border-radius:14px;flex-direction:column;transition:box-shadow .2s,border-color .2s,transform .15s;display:flex}.session-card:hover{border-color:var(--primary-light);transform:translateY(-2px);box-shadow:0 6px 24px #00000014}.session-card-top{align-items:center;gap:12px;padding:18px 18px 12px;display:flex}.session-doctor-avatar{background:linear-gradient(135deg,var(--primary),var(--primary-dark,#0e7490));color:#fff;letter-spacing:.03em;border-radius:50%;justify-content:center;align-items:center;width:46px;min-width:46px;height:46px;font-size:.88rem;font-weight:700;display:flex}.session-card-title{color:var(--text-primary);font-size:1rem;font-weight:700;line-height:1.3}.session-card-body{flex-direction:column;gap:6px;padding:0 18px 12px;display:flex}.session-card-detail{color:var(--text-secondary);align-items:center;gap:8px;font-size:.82rem;display:flex}.session-card-detail svg{color:var(--text-faint);flex-shrink:0}.session-day-tag{letter-spacing:.03em;background:var(--badge-info-bg);color:var(--badge-info-text);border-radius:4px;margin-left:6px;padding:1px 7px;font-size:.68rem;font-weight:700;display:inline-block}.session-card-stats{flex-wrap:wrap;gap:6px;padding:0 18px 14px;display:flex}.session-card-stats .badge{font-size:.7rem}.session-card-actions{gap:8px;padding:0 18px 18px;display:flex}.session-card-btn{text-align:center;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:5px;padding:8px 0;font-size:.82rem;display:inline-flex}.modal.modal-session-detail{width:min(98vw,1440px);max-width:min(98vw,1440px)}.sd-content{flex-direction:column;gap:16px;display:flex}.sd-header-card{background:var(--bg-table-head);border:1px solid var(--border-light);border-radius:12px;align-items:center;gap:14px;padding:16px;display:flex}.sd-doctor-avatar{background:linear-gradient(135deg,var(--primary),var(--primary-dark,#0e7490));color:#fff;border-radius:50%;justify-content:center;align-items:center;width:50px;min-width:50px;height:50px;font-size:.95rem;font-weight:700;display:flex}.sd-header-info{flex:1;min-width:0}.sd-doctor-name{color:var(--text-primary);margin-bottom:4px;font-size:1.05rem;font-weight:700}.sd-header-meta{flex-wrap:wrap;gap:14px;display:flex}.sd-header-meta>span{color:var(--text-secondary);align-items:center;gap:5px;font-size:.82rem;display:inline-flex}.sd-table-scroll-outer{border:1px solid var(--border-light);border-radius:10px;max-width:100%;overflow:hidden}.table-container>.sd-table-scroll-outer{border:none;border-radius:0}.sd-table-scroll-top{background:var(--bg-table-head);border-bottom:1px solid var(--border-light);scrollbar-gutter:stable;scrollbar-width:thin;min-height:16px;overflow:auto hidden}.sd-table-scroll-top::-webkit-scrollbar{height:10px}.sd-table-scroll-top::-webkit-scrollbar-thumb{background:var(--text-faint)}@supports (color:color-mix(in lab,red,red)){.sd-table-scroll-top::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--text-faint) 45%,transparent)}}.sd-table-scroll-top::-webkit-scrollbar-thumb{border-radius:5px}.sd-table-scroll-spacer{pointer-events:none;display:block}.sd-table-wrap{border:none;border-radius:0;max-width:100%;overflow-x:auto}.sd-table-wrap--scroll-main{scrollbar-width:thin}.sd-table-wrap--scroll-main::-webkit-scrollbar{height:10px}.sd-table-wrap--scroll-main::-webkit-scrollbar-thumb{background:var(--text-faint)}@supports (color:color-mix(in lab,red,red)){.sd-table-wrap--scroll-main::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--text-faint) 45%,transparent)}}.sd-table-wrap--scroll-main::-webkit-scrollbar-thumb{border-radius:5px}.sd-table{border-collapse:collapse;width:100%;font-size:.85rem}.sd-table thead{background:var(--bg-table-head)}.sd-table th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--text-faint);white-space:nowrap;border-bottom:1px solid var(--border-color);padding:10px 14px;font-size:.73rem;font-weight:700}.sd-table td{color:var(--text-secondary);border-bottom:1px solid var(--border-light);white-space:nowrap;padding:12px 14px}.sd-table tbody tr:last-child td{border-bottom:none}.sd-table tbody tr:hover{background:var(--primary-bg)}.sd-td-num{text-align:center;width:40px;font-weight:700}.sd-notes,.sd-td-num{color:var(--text-faint)}.sd-notes{white-space:normal;max-width:160px;font-size:.78rem;font-style:italic}@media (max-width:1023px){.modal.modal-session-detail{width:calc(100vw - 32px);max-width:calc(100vw - 32px)}}@media (max-width:768px){.modal.modal-session-detail{width:calc(100vw - 24px);max-width:calc(100vw - 24px)}.sd-header-card{flex-direction:column;align-items:flex-start;gap:10px;padding:14px}.sd-header-meta{gap:10px}.sd-table td,.sd-table th{padding:8px 10px;font-size:.78rem}}@media (max-width:480px){.sessions-grid{grid-template-columns:1fr;gap:10px}.sessions-container{padding:10px}.session-card-top{padding:14px 14px 10px}.session-card-body,.session-card-stats{padding:0 14px 10px}.session-card-actions{gap:6px;padding:0 14px 14px}}.apt-add-patient-btn{border:2px dashed var(--border-color);width:100%;color:var(--primary);background:0 0;border-radius:10px;justify-content:center;padding:12px 20px;font-size:.88rem;transition:all .18s}.apt-add-patient-btn:hover{border-color:var(--primary);background:var(--primary-bg);color:var(--primary-dark);border-style:solid}[data-theme=dark] .apt-add-patient-btn:hover{background:#0e74901a}.apt-new-patient-form{border:1.5px solid var(--primary);background:var(--primary-bg);border-radius:10px;padding:16px;animation:slideUp .2s}[data-theme=dark] .apt-new-patient-form{background:#0e74900f}.apt-new-patient-header{border-bottom:1px solid var(--border-color);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;padding-bottom:10px;display:flex}.apt-new-patient-title{color:var(--primary);align-items:center;gap:6px;font-size:.9rem;font-weight:700;display:inline-flex}.apt-new-patient-shortcuts{color:var(--text-muted);align-items:center;gap:2px;margin-left:auto;font-size:.75rem;display:flex}.apt-kbd{color:var(--text-secondary);background:var(--gray-100);border:1px solid var(--border-color);box-shadow:0 1px 0 var(--border-color);border-radius:4px;padding:2px 6px;font-family:inherit;font-size:.7rem;font-weight:600;line-height:1.2;display:inline-block}[data-theme=dark] .apt-kbd{background:var(--gray-800);border-color:var(--gray-600);color:var(--gray-300)}.apt-kbd-inline{color:var(--text-muted);border:1px solid var(--border-color);background:#0000000f;border-radius:3px;margin-left:6px;padding:1px 5px;font-family:inherit;font-size:.7rem;font-weight:600;display:inline-block}.apt-patient-actions{flex-shrink:0;align-items:center;gap:6px;display:flex}.apt-card-print{width:32px;height:32px;color:var(--primary);cursor:pointer;background:#0e74901f;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:all .15s;display:inline-flex}.apt-card-print:hover{background:var(--primary);color:#fff;transform:scale(1.08)}[data-theme=dark] .apt-card-print{background:#0e74902e}[data-theme=dark] .apt-card-print:hover{background:var(--primary);color:#fff}@media (max-width:479px){.apt-new-patient-form{padding:12px}.apt-new-patient-header{margin-bottom:10px;padding-bottom:8px}.apt-new-patient-title{font-size:.82rem}.apt-add-patient-btn{padding:10px 14px;font-size:.82rem}.apt-card-print{width:28px;height:28px}}.status-select{appearance:none;cursor:pointer;white-space:nowrap;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;background-size:10px;border:none;border-radius:20px;outline:none;padding:3px 24px 3px 10px;font-family:inherit;font-size:.75rem;font-weight:600;transition:all .15s}.status-select:hover{filter:brightness(.92)}.status-select:focus{box-shadow:0 0 0 3px #0e749026}.status-select.badge-warning{background-color:var(--badge-warning-bg);color:var(--badge-warning-text)}.status-select.badge-info{background-color:var(--badge-info-bg);color:var(--badge-info-text)}.status-select.badge-success{background-color:var(--badge-success-bg);color:var(--badge-success-text)}.status-select.badge-danger{background-color:var(--badge-danger-bg);color:var(--badge-danger-text)}.status-select.badge-secondary{background-color:var(--badge-secondary-bg);color:var(--badge-secondary-text)}.status-select option{background:var(--bg-modal);color:var(--text-primary);padding:6px 10px;font-weight:500}.status-select-sm{background-position:right 6px center;background-size:9px;padding:2px 22px 2px 8px;font-size:.73rem}@media (max-width:479px){.status-select{background-position:right 6px center;background-size:8px;padding:2px 20px 2px 8px;font-size:.7rem}.status-select-sm{padding:2px 18px 2px 6px;font-size:.68rem}}.rpt-tabs{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius);box-shadow:var(--shadow);gap:4px;margin-bottom:16px;padding:4px;display:flex}.rpt-tab{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;flex:1;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:.88rem;font-weight:600;transition:all .2s;display:flex}.rpt-tab:hover{background:var(--bg-table-head);color:var(--text-primary)}.rpt-tab.active{background:var(--primary);color:#fff;box-shadow:0 2px 8px #0e74904d}.rpt-tab-count{background:#fff3;border-radius:12px;justify-content:center;align-items:center;min-width:24px;height:22px;padding:0 7px;font-size:.72rem;font-weight:700;display:inline-flex}.rpt-tab:not(.active) .rpt-tab-count{background:var(--bg-table-head);color:var(--text-muted)}.rpt-filters-panel{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:16px;overflow:hidden}.rpt-filters-header{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:12px 16px;transition:background .15s;display:flex}.rpt-filters-header:hover{background:var(--bg-table-head)}.rpt-filters-title{color:var(--text-primary);align-items:center;gap:8px;font-size:.88rem;font-weight:600;display:flex}.rpt-active-filter-badge{background:var(--primary-bg);color:var(--primary);border-radius:10px;align-items:center;padding:2px 8px;font-size:.68rem;font-weight:700;display:inline-flex}[data-theme=dark] .rpt-active-filter-badge{background:#0e749033}.rpt-filters-actions{color:var(--text-muted);align-items:center;gap:10px;display:flex}.rpt-clear-btn{border:1px solid var(--border-color);color:var(--danger);cursor:pointer;background:0 0;border-radius:6px;align-items:center;gap:4px;padding:4px 10px;font-size:.75rem;font-weight:600;transition:all .15s;display:flex}.rpt-clear-btn:hover{background:var(--badge-danger-bg)}.rpt-filters-body{border-top:1px solid var(--border-color);padding:0 16px 16px}.rpt-date-presets{flex-wrap:wrap;gap:6px;padding:14px 0 12px;display:flex}.rpt-preset-btn{border:1px solid var(--border-color);color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border-radius:20px;padding:6px 16px;font-size:.8rem;font-weight:600;transition:all .2s}.rpt-preset-btn:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-bg)}[data-theme=dark] .rpt-preset-btn:hover{background:#0e749026}.rpt-preset-btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}.rpt-filter-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;display:grid}.rpt-filter-group{flex-direction:column;gap:4px;display:flex}.rpt-filter-group label{color:var(--text-muted);align-items:center;gap:5px;font-size:.76rem;font-weight:600;display:flex}.rpt-filter-group .form-control{padding:7px 10px;font-size:.82rem}.rpt-stats-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px;margin-bottom:16px;display:grid}.rpt-stats-grid-4col{grid-template-columns:repeat(4,1fr)}.rpt-stat-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius);box-shadow:var(--shadow);align-items:center;gap:12px;padding:14px 16px;transition:transform .15s,box-shadow .15s;display:flex}.rpt-stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.rpt-stat-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.rpt-stat-info{flex-direction:column;min-width:0;display:flex}.rpt-stat-num{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:1.1rem;font-weight:700;line-height:1.2;overflow:hidden}.rpt-stat-label{color:var(--text-muted);margin-top:2px;font-size:.72rem;font-weight:500}.rpt-stat-total .rpt-stat-icon{background:var(--stat-appointments-bg);color:var(--stat-appointments-text)}.rpt-stat-scheduled .rpt-stat-icon{background:var(--badge-info-bg);color:var(--badge-info-text)}.rpt-stat-completed .rpt-stat-icon{background:var(--badge-success-bg);color:var(--badge-success-text)}.rpt-stat-cancelled .rpt-stat-icon{background:var(--badge-danger-bg);color:var(--badge-danger-text)}.rpt-stat-patients .rpt-stat-icon{background:var(--stat-patients-bg);color:var(--stat-patients-text)}.rpt-stat-fees .rpt-stat-icon{background:var(--stat-revenue-bg);color:var(--stat-revenue-text)}.table-container tfoot td{border-top:2px solid var(--border-color);padding:10px 12px;font-size:.85rem}@media (max-width:768px){.rpt-filter-grid{grid-template-columns:1fr 1fr}.rpt-stats-grid,.rpt-stats-grid-4col{grid-template-columns:repeat(2,1fr)}.rpt-stat-card{padding:10px 12px}.rpt-stat-num{font-size:.95rem}}@media (max-width:479px){.rpt-tabs{flex-direction:row}.rpt-tab{gap:5px;padding:8px 10px;font-size:.8rem}.rpt-filter-grid{grid-template-columns:1fr}.rpt-stats-grid{gap:8px}.rpt-stats-grid,.rpt-stats-grid-4col{grid-template-columns:1fr 1fr}.rpt-date-presets{gap:4px}.rpt-preset-btn{padding:5px 12px;font-size:.75rem}}.rcpt-loading{color:var(--text-muted);justify-content:center;align-items:center;gap:16px;font-size:.9rem}.rcpt-loading,.rcpt-page{background:var(--bg-body);min-height:100vh;flex-direction:column;display:flex}.rcpt-header{background:var(--bg-card);border-bottom:1px solid var(--border-color);height:64px;box-shadow:var(--shadow);z-index:100;justify-content:space-between;padding:0 24px;position:sticky;top:0}.rcpt-header,.rcpt-header-left{align-items:center;gap:16px;display:flex}.rcpt-header-left{flex-shrink:0}.rcpt-back-btn{background:var(--btn-secondary-bg);color:var(--btn-secondary-text);border-radius:var(--radius);cursor:pointer;white-space:nowrap;border:none;align-items:center;gap:6px;padding:7px 14px;font-size:.82rem;font-weight:500;transition:all .2s;display:flex}.rcpt-back-btn:hover{background:var(--btn-secondary-hover);transform:translate(-2px)}.rcpt-brand{gap:10px}.rcpt-brand,.rcpt-brand-icon{align-items:center;display:flex}.rcpt-brand-icon{color:#fff;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:10px;justify-content:center;width:36px;height:36px;font-size:1.1rem;font-weight:700}.rcpt-brand-text h1{color:var(--text-primary);margin:0;font-size:1rem;font-weight:700;line-height:1.2}.rcpt-brand-text span{color:var(--text-muted);font-size:.7rem;line-height:1}.rcpt-header-center{flex:1;justify-content:center;display:flex}.rcpt-date-nav{background:var(--bg-body);border-radius:var(--radius);border:1px solid var(--border-color);align-items:center;gap:0;padding:4px;display:flex}.rcpt-date-arrow{width:34px;height:34px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;transition:all .15s;display:flex}.rcpt-date-arrow:hover{background:var(--bg-card);color:var(--primary)}.rcpt-date-display{color:var(--text-primary);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:6px;align-items:center;gap:8px;margin:0 2px;padding:4px 10px;display:flex}.rcpt-date-display:hover{background:var(--bg-card)}.rcpt-date-input-hidden{opacity:0;pointer-events:none;width:0;height:0;position:absolute;overflow:hidden}.rcpt-date-label{white-space:nowrap;font-size:.85rem;font-weight:600}.rcpt-today-badge{letter-spacing:.3px;border-radius:10px;padding:2px 8px;font-size:.68rem;font-weight:600}.rcpt-today-badge,.rcpt-today-btn{background:var(--primary);color:#fff}.rcpt-today-btn{cursor:pointer;white-space:nowrap;border:none;border-radius:6px;flex-shrink:0;margin-left:6px;padding:5px 12px;font-size:.75rem;font-weight:500;transition:background .2s}.rcpt-today-btn:hover{background:var(--primary-dark)}.rcpt-header-right{flex-shrink:0;align-items:center;gap:10px;display:flex}.rcpt-theme-btn{border:1px solid var(--border-color);background:var(--bg-body);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;transition:all .2s;display:flex}.rcpt-theme-btn:hover{background:var(--bg-card);color:var(--primary);border-color:var(--primary)}.rcpt-leave-btn{border:1px solid var(--border-color);background:var(--bg-body);height:36px;color:var(--text-primary);cursor:pointer;white-space:nowrap;border-radius:8px;align-items:center;gap:6px;padding:0 10px 0 8px;font-size:.78rem;font-weight:600;transition:all .2s;display:inline-flex}.rcpt-leave-btn:hover{background:var(--primary)}@supports (color:color-mix(in lab,red,red)){.rcpt-leave-btn:hover{background:color-mix(in srgb,var(--primary) 10%,var(--bg-body))}}.rcpt-leave-btn:hover{border-color:var(--primary);color:var(--primary)}.leave-req-form .form-row{flex-wrap:wrap;gap:12px;display:flex}.leave-req-who{margin:0 0 8px;font-size:.9rem}.leave-req-sub{color:var(--text-muted);font-size:.8rem;font-weight:400}.leave-req-quick{margin:0 0 4px}.leave-req-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:4px;font-size:.7rem;display:block}.leave-req-quick-btns{flex-wrap:wrap;gap:6px;display:flex}.leave-req-hint{color:var(--text-muted);margin:4px 0 0;font-size:.75rem;line-height:1.3}.modal-leave-request-footer{justify-content:flex-end;gap:8px;width:100%;display:flex}.modal.modal-leave-request.modal-leave-request-wide{width:min(95vw,780px);max-width:780px}@media (max-width:820px){.modal.modal-leave-request.modal-leave-request-wide{width:100%;max-width:100%}}.page-header-sub{color:var(--text-muted);margin-top:4px;font-size:.82rem;font-weight:500;display:block}.leave-req-picker{border-bottom:1px solid var(--border-light,#e2e8f0);margin-bottom:10px;padding-bottom:8px}.leave-req-pick-seg{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.leave-req-seg-btn{border:1px solid var(--border-color);background:var(--bg-body);color:var(--text-secondary);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:.8rem;font-weight:600;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.leave-req-seg-btn:hover{border-color:var(--primary,#2563eb);color:var(--primary,#2563eb)}.leave-req-seg-btn.active{border-color:var(--primary,#2563eb);background:var(--primary)}@supports (color:color-mix(in lab,red,red)){.leave-req-seg-btn.active{background:color-mix(in srgb,var(--primary) 10%,var(--bg-card,#fff))}}.leave-req-seg-btn.active{color:var(--primary,#1d4ed8)}.leave-req-mine-row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.leave-req-selected-badg{color:var(--text-primary);margin:0 0 4px;font-size:.8rem}.leave-req-pick-list{border:1px solid var(--border-color);background:var(--bg-input,#fff);border-radius:8px;max-height:220px;overflow-y:auto}.leave-req-pick-item{text-align:left;border:none;border-bottom:1px solid var(--border-light,#f1f5f9);cursor:pointer;width:100%;color:var(--text-primary);background:0 0;padding:8px 10px;font-size:.8rem;line-height:1.3;transition:background .1s;display:block}.leave-req-pick-item:last-child{border-bottom:none}.leave-req-pick-item:hover{background:var(--bg-table-hover,#f8fafc)}.leave-req-pick-item.pick-item--sel{background:var(--primary)}@supports (color:color-mix(in lab,red,red)){.leave-req-pick-item.pick-item--sel{background:color-mix(in srgb,var(--primary) 12%,var(--bg-input))}}.leave-req-pick-item.pick-item--sel{box-shadow:inset 0 0 0 1px var(--primary)}.pick-item-line1{flex-wrap:wrap;align-items:center;gap:8px;font-weight:600;display:flex}.pick-item-line2{color:var(--text-muted);margin-top:2px;font-size:.75rem}.pick-item-role{background:var(--bg-table-head,#f1f5f9);color:var(--text-secondary);border-radius:4px;padding:1px 6px;font-size:.68rem;font-weight:500}.leave-req-empty{text-align:center;color:var(--text-muted);margin:0;padding:14px 10px;font-size:.8rem}.rcpt-user-badge{align-items:center;gap:8px;display:flex}.rcpt-user-avatar{background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;font-size:.85rem;font-weight:600;display:flex}.rcpt-stats-bar{flex-shrink:0;gap:12px;padding:16px 24px;display:flex;overflow-x:auto}.rcpt-stat-card{border-radius:var(--radius);background:var(--bg-card);border:1px solid var(--border-color);flex:1;align-items:center;gap:12px;min-width:160px;padding:14px 20px;transition:transform .2s,box-shadow .2s;display:flex}.rcpt-stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.rcpt-stat-num{color:var(--text-primary);font-size:1.15rem;font-weight:700;line-height:1.2;display:block}.rcpt-stat-label{color:var(--text-muted);font-size:.72rem;line-height:1;display:block}.rcpt-stat-appointments,.rcpt-stat-appointments .rcpt-stat-num{color:var(--stat-appointments-text)}.rcpt-stat-sessions,.rcpt-stat-sessions .rcpt-stat-num{color:var(--primary)}.rcpt-stat-patients,.rcpt-stat-patients .rcpt-stat-num{color:var(--stat-patients-text)}.rcpt-stat-revenue,.rcpt-stat-revenue .rcpt-stat-num{color:var(--stat-revenue-text)}.rcpt-stat-collected,.rcpt-stat-collected .rcpt-stat-num{color:var(--success)}.rcpt-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:0 24px 12px;display:flex}.rcpt-toolbar-left{flex:1;align-items:center;gap:10px;min-width:280px;display:flex}.rcpt-patient-alltime-toggle{border:1px solid var(--border-color);border-radius:var(--radius);background:var(--bg-card);color:var(--text-primary);cursor:pointer;white-space:nowrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;font-size:.82rem;font-weight:600;transition:background .2s,border-color .2s,color .2s;display:inline-flex}.rcpt-patient-alltime-toggle:hover{border-color:var(--primary);color:var(--primary)}.rcpt-patient-alltime-toggle.active{background:var(--primary);border-color:var(--primary);color:#fff}.rcpt-alltime-search-label{text-transform:uppercase;letter-spacing:.06em;color:var(--primary);white-space:nowrap;font-size:.75rem;font-weight:700}.rcpt-search-wrap{flex:1;max-width:420px;position:relative}.rcpt-search-icon{color:var(--text-faint);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.rcpt-search-input{border:1px solid var(--border-color);border-radius:var(--radius);background:var(--bg-card);width:100%;color:var(--text-primary);outline:none;padding:9px 36px 9px 38px;font-size:.85rem;transition:border-color .2s,box-shadow .2s}.rcpt-search-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0e74901a}.rcpt-search-input::placeholder{color:var(--text-faint)}.rcpt-search-clear{background:var(--btn-secondary-bg);width:22px;height:22px;cursor:pointer;border:none;border-radius:50%;justify-content:center;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.rcpt-filter-wrap,.rcpt-search-clear{color:var(--text-muted);align-items:center;display:flex}.rcpt-filter-wrap{gap:6px}.rcpt-filter-select{border:1px solid var(--border-color);border-radius:var(--radius);background:var(--bg-card);color:var(--text-primary);cursor:pointer;outline:none;padding:8px 12px;font-size:.82rem}.rcpt-toolbar-right{align-items:center;gap:10px;display:flex}.rcpt-view-toggle{border:1px solid var(--border-color);border-radius:var(--radius);display:flex;overflow:hidden}.rcpt-view-btn{background:var(--bg-card);color:var(--text-muted);cursor:pointer;border:none;align-items:center;gap:5px;padding:7px 14px;font-size:.8rem;font-weight:500;transition:all .15s;display:flex}.rcpt-view-btn:not(:last-child){border-right:1px solid var(--border-color)}.rcpt-view-btn.active{background:var(--primary);color:#fff}.rcpt-view-btn:not(.active):hover{background:var(--bg-body);color:var(--text-primary)}.rcpt-add-btn{background:var(--primary);color:#fff;border-radius:var(--radius);cursor:pointer;white-space:nowrap;border:none;align-items:center;gap:6px;padding:8px 18px;font-size:.85rem;font-weight:600;transition:background .2s,transform .15s;display:flex}.rcpt-add-btn:hover{background:var(--primary-dark);transform:translateY(-1px)}.rcpt-doctor-schedule-btn{background:var(--bg-card);color:var(--text-primary);border:2px solid var(--secondary,#8b5cf6);border-radius:var(--radius);cursor:pointer;white-space:nowrap;align-items:center;gap:8px;padding:8px 18px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.rcpt-doctor-schedule-btn:hover{color:var(--secondary);background:#8b5cf614;transform:translateY(-1px)}.rcpt-open-billing-btn{background:var(--bg-card);color:var(--text-primary);border:2px solid var(--primary);border-radius:var(--radius);cursor:pointer;white-space:nowrap;align-items:center;gap:8px;padding:8px 18px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.rcpt-open-billing-btn:hover{background:var(--primary-bg);color:var(--primary);transform:translateY(-1px);box-shadow:0 2px 8px #0e749033}.rcpt-content{flex:1;padding:0 24px 24px;overflow-y:auto}.rcpt-empty{color:var(--text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:80px 20px;display:flex}.rcpt-empty h3{color:var(--text-secondary);margin:0;font-size:1.1rem}.rcpt-empty p{margin:0;font-size:.85rem}.rcpt-sessions-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;display:grid}.rcpt-session-card{background:var(--bg-card);border:1px solid var(--border-color);cursor:pointer;border-radius:12px;flex-direction:column;gap:14px;padding:20px;transition:all .2s;display:flex}.rcpt-session-card:hover{border-color:var(--primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.rcpt-sc-header{align-items:center;gap:12px;display:flex}.rcpt-sc-avatar{background:linear-gradient(135deg,var(--secondary),#8b5cf6);color:#fff;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:.95rem;font-weight:700;display:flex}.rcpt-sc-info{flex:1;min-width:0}.rcpt-sc-info h3{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.95rem;font-weight:700;line-height:1.3;overflow:hidden}.rcpt-sc-spec{color:var(--text-muted);font-size:.73rem;display:block}.rcpt-sc-count{background:var(--primary-bg);width:38px;height:38px;color:var(--primary);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:1.1rem;font-weight:800;display:flex}.rcpt-sc-details{flex-wrap:wrap;gap:16px;display:flex}.rcpt-sc-detail{color:var(--text-muted);align-items:center;gap:6px;font-size:.8rem;display:flex}.rcpt-sc-badges{flex-wrap:wrap;gap:6px;display:flex}.rcpt-sc-actions{border-top:1px solid var(--border-light);gap:8px;padding-top:4px;display:flex}.rcpt-sc-btn{cursor:pointer;border:none;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:5px;padding:8px 12px;font-size:.78rem;font-weight:600;transition:all .15s;display:flex}.rcpt-sc-btn-add{background:var(--btn-secondary-bg);color:var(--btn-secondary-text)}.rcpt-sc-btn-add:hover{background:var(--btn-secondary-hover)}.rcpt-sc-btn-view{background:var(--primary);color:#fff}.rcpt-sc-btn-view:hover{background:var(--primary-dark)}.rcpt-table-container{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;overflow:hidden}.rcpt-table-scroll{overflow-x:auto}.rcpt-table{border-collapse:collapse;width:100%}.rcpt-table thead th{background:var(--bg-table-head);text-align:left;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border-color);white-space:nowrap;padding:12px 14px;font-size:.75rem;font-weight:600}.rcpt-table tbody td{color:var(--text-secondary);border-bottom:1px solid var(--border-light);white-space:nowrap;padding:11px 14px;font-size:.84rem}.rcpt-table tbody tr:hover{background:var(--bg-table-hover)}.rcpt-table tbody tr:last-child td{border-bottom:none}.rcpt-td-num{color:var(--text-faint);text-align:center;width:36px;font-size:.78rem;font-weight:500}.modal-doctor-schedule .modal{flex-direction:column;max-width:920px;max-height:90vh;display:flex}.modal-doctor-schedule .modal-body{padding:0;overflow-y:auto}.ds-modal-content{flex-direction:column;min-height:400px;display:flex}.ds-modal-tabs{border-bottom:1px solid var(--border-color);gap:4px;padding:0 24px;display:flex}.ds-tab{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:8px;margin-bottom:-1px;padding:12px 20px;font-size:.9rem;font-weight:500;transition:all .15s;display:flex}.ds-tab:hover{color:var(--text-primary)}.ds-tab.active{color:var(--primary);border-bottom-color:var(--primary)}.ds-spec-tab{flex-direction:column;flex:1;gap:16px;padding:20px 24px;display:flex;overflow-y:auto}.ds-spec-search{align-items:center;display:flex;position:relative}.ds-spec-search input{border:1px solid var(--border-color);border-radius:var(--radius);background:var(--bg-card);color:var(--text-primary);outline:none;flex:1;padding:10px 14px 10px 40px;font-size:.9rem}.ds-spec-search input:focus{border-color:var(--primary)}.ds-spec-search>svg:first-child{color:var(--text-faint);position:absolute;left:12px}.ds-spec-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;font-size:.8rem;font-weight:600;display:block}.ds-spec-list{flex-wrap:wrap;gap:8px;display:flex}.ds-spec-btn{border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-secondary);cursor:pointer;border-radius:8px;padding:8px 16px;font-size:.85rem;transition:all .15s}.ds-spec-btn.selected,.ds-spec-btn:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-bg)}.ds-spec-btn.selected{font-weight:600}.ds-spec-empty{color:var(--text-muted);margin:0;padding:12px 0;font-size:.9rem}.ds-spec-doctor-list{flex-direction:column;gap:8px;display:flex}.ds-spec-doctor-btn{border:1px solid var(--border-color);background:var(--bg-card);width:100%;color:var(--text-primary);text-align:left;cursor:pointer;border-radius:10px;align-items:center;gap:12px;padding:12px 16px;transition:all .15s;display:flex}.ds-spec-doctor-btn:hover{border-color:var(--primary);background:var(--primary-bg)}.ds-spec-doc-avatar{background:linear-gradient(135deg,var(--secondary),#8b5cf6);color:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:.85rem;font-weight:700;display:flex}.ds-spec-doc-info{flex-direction:column;flex:1;gap:2px;display:flex}.ds-spec-doc-name{font-size:.9rem;font-weight:600}.ds-spec-doc-spec{color:var(--text-muted);font-size:.8rem}.ds-spec-doctor-btn>svg:last-child{color:var(--text-faint);flex-shrink:0}.ds-search-row{align-items:center;gap:10px;display:flex;position:relative}.ds-search-row .ds-search-bar{flex:1}.ds-search-bar-dropdown{position:relative}.ds-doctor-dropdown{background:var(--bg-card);border:1px solid var(--border-color);z-index:100;border-radius:8px;max-height:240px;margin-top:4px;padding:6px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 4px 12px #00000026}.ds-doctor-drop-item{width:100%;color:var(--text-primary);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:10px;padding:10px 12px;transition:background .15s;display:flex}.ds-doctor-drop-item.selected,.ds-doctor-drop-item:hover{background:var(--primary-bg)}.ds-doctor-drop-avatar{background:linear-gradient(135deg,var(--secondary),#8b5cf6);color:#fff;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.75rem;font-weight:700;display:flex}.ds-doctor-drop-info{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.ds-doctor-drop-name{font-size:.88rem;font-weight:600}.ds-doctor-drop-spec{color:var(--text-muted);font-size:.75rem}.ds-doctor-drop-empty{text-align:center;color:var(--text-muted);padding:16px;font-size:.85rem}.ds-clear-doctor-btn{border:1px solid var(--border-color);border-radius:var(--radius);background:var(--bg-card);color:var(--text-muted);cursor:pointer;white-space:nowrap;align-items:center;gap:6px;padding:8px 14px;font-size:.82rem;font-weight:500;transition:all .15s;display:flex}.ds-clear-doctor-btn:hover{border-color:var(--danger,#ef4444);color:var(--danger)}.ds-modal-top{border-bottom:1px solid var(--border-color);flex-shrink:0;padding:0 24px 16px}.ds-week-nav{gap:16px;margin-bottom:12px}.ds-nav-btn,.ds-week-nav{justify-content:center;align-items:center;display:flex}.ds-nav-btn{border:1px solid var(--border-color);background:var(--bg-card);width:36px;height:36px;color:var(--text-primary);cursor:pointer;border-radius:8px;transition:all .15s}.ds-nav-btn:hover{background:var(--primary-bg);border-color:var(--primary);color:var(--primary)}.ds-week-label{color:var(--text-primary);font-size:.9rem;font-weight:600}.ds-date-grid{grid-template-columns:repeat(7,1fr);gap:6px;margin-bottom:12px;display:grid}.ds-date-cell{background:var(--bg-body);color:var(--text-secondary);cursor:pointer;border:2px solid #0000;border-radius:8px;flex-direction:column;align-items:center;gap:2px;padding:10px 6px;font-size:.8rem;transition:all .15s;display:flex}.ds-date-cell:hover{background:var(--bg-table-hover)}.ds-date-cell.selected{border-color:var(--primary);background:var(--primary-bg);color:var(--primary);font-weight:600}.ds-date-cell.today{box-shadow:0 0 0 1px var(--primary)}.ds-date-cell.has-schedule{color:#16a34a;background:#22c55e26;border-color:#22c55e80}.ds-date-cell.has-schedule:hover{background:#22c55e40}.ds-date-cell.has-schedule .ds-date-num{color:#16a34a}.ds-date-cell.has-schedule.selected{color:#15803d;background:#22c55e40;border-color:#16a34a}.ds-date-day{text-transform:uppercase;opacity:.8;font-size:.65rem}.ds-date-num{font-size:1rem;font-weight:700}.ds-date-count{background:var(--primary);color:#fff;text-align:center;border-radius:10px;min-width:18px;padding:2px 6px;font-size:.65rem}.ds-search-bar{align-items:center;display:flex;position:relative}.ds-search-bar input{border:1px solid var(--border-color);border-radius:var(--radius);background:var(--bg-card);color:var(--text-primary);outline:none;flex:1;padding:10px 36px 10px 40px;font-size:.9rem}.ds-search-bar input:focus{border-color:var(--primary)}.ds-search-bar>svg:first-child{color:var(--text-faint);position:absolute;left:12px}.ds-search-clear{background:var(--btn-secondary-bg);width:24px;height:24px;color:var(--text-muted);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;right:8px}.ds-modal-body{flex:1;padding:16px 24px 24px;overflow-y:auto}.ds-hint{color:var(--text-muted);margin:0 0 12px;font-size:.85rem}.modal.modal-override-schedule{max-width:560px}.modal.modal-override-schedule .modal-body,.override-modal-content{padding:0}.override-modal-info{background:linear-gradient(135deg,var(--primary-bg) 0,#0e74900a 100%);border-bottom:1px solid var(--border-color);align-items:flex-start;gap:12px;padding:16px 20px;display:flex}.override-modal-info svg{color:var(--primary);flex-shrink:0;margin-top:2px}.override-modal-info p{color:var(--text-secondary);margin:0;font-size:.88rem;line-height:1.5}.override-modal-steps{flex-direction:column;gap:24px;padding:20px;display:flex}.override-step{flex-direction:column;gap:10px;display:flex}.override-step-label{color:var(--text-primary);align-items:center;gap:10px;font-size:.9rem;font-weight:600;display:flex}.override-step-num{background:var(--primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:.75rem;font-weight:700;display:flex}.override-date-options{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.override-date-btn{border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-secondary);cursor:pointer;border-radius:10px;align-items:center;gap:6px;padding:10px 16px;font-size:.88rem;font-weight:500;transition:all .15s;display:inline-flex}.override-date-btn:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-bg)}.override-date-btn.active{border-color:var(--primary);background:var(--primary);color:#fff}.override-date-picker{color:var(--text-muted);align-items:center;gap:8px;font-size:.82rem;display:flex}.override-date-picker input{border:1px solid var(--border-color);background:var(--bg-input);color:var(--text-primary);border-radius:8px;padding:8px 12px}.override-mcal-wrap{flex:1;min-width:200px;max-width:260px}.override-date-display{color:var(--text-muted);margin:4px 0 0;font-size:.8rem}.override-doctor-chip{background:var(--primary-bg);border:1px solid var(--primary-light,#0e74904d);border-radius:12px;align-items:center;gap:12px;padding:14px 16px;display:flex}.override-doctor-avatar{background:linear-gradient(135deg,var(--primary),var(--primary-dark,#0d5a6e));color:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:.95rem;font-weight:700;display:flex}.override-doctor-info{flex:1;min-width:0}.override-doctor-info strong{color:var(--text-primary);font-size:.95rem;display:block}.override-doctor-info span{color:var(--text-muted);font-size:.8rem}.override-doctor-change{border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-secondary);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:8px 14px;font-size:.82rem;font-weight:500;transition:all .15s;display:inline-flex}.override-doctor-change:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-bg)}.override-doctor-search{position:relative}.override-doctor-search .searchable-input-wrap{border:1px solid var(--border-color);border-radius:10px;padding:10px 14px}.override-doctor-dropdown{max-height:220px;margin-top:4px}.override-badge{background:var(--primary-bg);color:var(--primary);border-radius:6px;margin-left:8px;padding:2px 8px;font-size:.7rem;font-weight:600}.override-slots-empty{background:var(--bg-body);border:2px dashed var(--border-color);text-align:center;border-radius:12px;flex-direction:column;align-items:center;gap:8px;padding:28px 20px;display:flex}.override-slots-empty svg{color:var(--text-faint)}.override-slots-empty p{color:var(--text-secondary);margin:0;font-size:.9rem}.override-slots-empty-hint{color:var(--text-muted)!important;font-size:.8rem!important}.override-add-first{margin-top:4px}.override-slots-list{flex-direction:column;gap:10px;display:flex}.override-slot-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.override-slot-row .schedule-time-input{border-radius:8px;width:110px;padding:9px 12px}.override-slot-to{color:var(--text-muted);font-size:.82rem;font-weight:500}.override-slot-remove{width:36px;height:36px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;transition:all .15s;display:inline-flex}.override-slot-remove:hover{color:var(--danger);background:#ef44441f}.override-add-slot{align-self:flex-start}.override-modal-footer{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}[data-theme=dark] .override-modal-info{background:linear-gradient(135deg,var(--primary) 0,var(--primary) 100%)}@supports (color:color-mix(in lab,red,red)){[data-theme=dark] .override-modal-info{background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 30%,var(--bg-modal)) 0,color-mix(in srgb,var(--primary) 12%,var(--bg-modal)) 100%)}}[data-theme=dark] .override-modal-info{border-bottom-color:var(--border-color)}[data-theme=dark] .override-modal-info p{color:var(--text-secondary)}[data-theme=dark] .override-modal-info p strong{color:var(--text-primary)}[data-theme=dark] .override-date-btn:hover{background:var(--primary)}@supports (color:color-mix(in lab,red,red)){[data-theme=dark] .override-date-btn:hover{background:color-mix(in srgb,var(--primary) 16%,var(--bg-card))}}[data-theme=dark] .override-date-btn:hover{color:var(--primary-light,#67e8f9)}[data-theme=dark] .override-doctor-chip{background:var(--primary)}@supports (color:color-mix(in lab,red,red)){[data-theme=dark] .override-doctor-chip{background:color-mix(in srgb,var(--primary) 18%,var(--bg-card))}}[data-theme=dark] .override-doctor-chip{border-color:var(--primary-light,#67e8f9)}@supports (color:color-mix(in lab,red,red)){[data-theme=dark] .override-doctor-chip{border-color:color-mix(in srgb,var(--primary-light,#67e8f9) 32%,var(--border-color))}}[data-theme=dark] .override-doctor-change:hover{background:var(--primary)}@supports (color:color-mix(in lab,red,red)){[data-theme=dark] .override-doctor-change:hover{background:color-mix(in srgb,var(--primary) 12%,var(--bg-card))}}[data-theme=dark] .override-doctor-search .searchable-input-wrap{background:var(--bg-input);border-color:var(--border-color)}[data-theme=dark] .override-badge{background:var(--primary)}@supports (color:color-mix(in lab,red,red)){[data-theme=dark] .override-badge{background:color-mix(in srgb,var(--primary) 25%,var(--bg-card))}}[data-theme=dark] .override-badge{color:var(--primary-light,#67e8f9)}[data-theme=dark] .override-slots-empty{background:var(--bg-body)}@supports (color:color-mix(in lab,red,red)){[data-theme=dark] .override-slots-empty{background:color-mix(in srgb,var(--bg-body) 85%,var(--bg-card))}}[data-theme=dark] .override-slots-empty{border-color:var(--border-color)}[data-theme=dark] .override-slot-remove:hover{background:#ef444433}[data-theme=dark] .modal.modal-override-schedule .schedule-time-input:focus{box-shadow:0 0 0 3px #67e8f938}[data-theme=dark] .modal.modal-override-schedule input[type=time]{color-scheme:dark}.ds-empty{text-align:center;color:var(--text-muted);padding:40px 20px}.ds-empty svg{opacity:.5;margin-bottom:8px}.ds-doctor-list{gap:12px}.ds-doctor-card,.ds-doctor-list{flex-direction:column;display:flex}.ds-doctor-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:10px;gap:10px;padding:14px}.ds-doc-header{gap:12px}.ds-doc-avatar,.ds-doc-header{align-items:center;display:flex}.ds-doc-avatar{background:linear-gradient(135deg,var(--secondary),#8b5cf6);color:#fff;border-radius:10px;flex-shrink:0;justify-content:center;width:40px;height:40px;font-size:.85rem;font-weight:700}.ds-doc-info{flex:1;min-width:0}.ds-doc-info h4{color:var(--text-primary);margin:0;font-size:.9rem;font-weight:700}.ds-doc-info span{color:var(--text-muted);font-size:.75rem}.ds-doc-booked{color:var(--primary);background:var(--primary-bg);border-radius:6px;padding:4px 10px;font-size:.8rem;font-weight:600}.ds-doc-slots{flex-wrap:wrap;gap:6px;display:flex}.ds-slot-row{background:var(--bg-body);color:var(--text-secondary);border-radius:6px;align-items:center;gap:8px;padding:6px 10px;font-size:.8rem;display:flex}.ds-slot-row span:first-child{color:var(--text-primary);font-weight:600}.ds-slot-cnt{color:var(--text-muted);font-size:.75rem}.ds-no-schedule{color:var(--text-muted);font-size:.8rem;font-style:italic}.ds-doc-sessions{flex-direction:column;gap:4px;display:flex}.ds-session-row{background:var(--bg-body);cursor:pointer;border-radius:6px;align-items:center;gap:8px;padding:8px 10px;font-size:.82rem;transition:background .15s;display:flex}.ds-session-row:hover{background:var(--primary-bg)}.ds-session-row span:first-of-type{flex:1;font-weight:600}.ds-add-btn{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:6px;margin-top:4px;padding:8px 14px;font-size:.82rem;font-weight:600;transition:background .2s;display:flex}.ds-add-btn:hover{background:var(--primary-dark)}.bank-deposit-slip-upload .bank-deposit-slip-hint{color:var(--text-muted);margin:0 0 8px;font-size:.78rem;line-height:1.4}.modal-payment .modal{max-width:560px}.modal-add-charges.modal-payment .modal{max-width:720px}.modal.modal-open-billing{max-width:540px}.open-billing-content{gap:24px}.open-billing-hero{background:linear-gradient(135deg,var(--primary-bg) 0,#6366f10f 100%);border:1px solid var(--border-light);border-radius:12px;gap:16px;padding:20px;display:flex}.open-billing-hero-icon{background:var(--primary);color:#fff;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;display:flex}.open-billing-hero-text h3{color:var(--text-primary);margin:0 0 6px;font-size:1rem;font-weight:700}.open-billing-hero-text p{color:var(--text-muted);margin:0;font-size:.85rem;line-height:1.45}.open-billing-charges-section{background:var(--bg-body);border:1px solid var(--border-color);border-radius:12px;padding:16px}.open-billing-label{color:var(--text-secondary);margin-bottom:10px;font-size:.85rem;font-weight:600;display:block}.open-billing-search-wrap{position:relative}.open-billing-search-icon{color:var(--text-muted);pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.open-billing-search-input{padding-left:42px!important}.open-billing-dropdown{background:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-lg);z-index:100;border-radius:10px;max-height:220px;margin-top:4px;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.open-billing-dropdown-item{text-align:left;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;width:100%;padding:12px 14px;font-size:.9rem;transition:background .15s;display:flex}.open-billing-dropdown-item:hover{background:var(--bg-body)}.open-billing-dropdown-item.highlighted{background:var(--primary-bg);color:var(--primary)}.open-billing-dropdown-item.highlighted .open-billing-dropdown-price{color:var(--primary)}.open-billing-dropdown-price{color:var(--primary);font-size:.9rem;font-weight:600}.open-billing-empty-hint{color:var(--text-muted);margin:14px 0 0;font-size:.82rem}.open-billing-selected-list{border-top:1px solid var(--border-color);margin-top:14px;padding-top:14px}.open-billing-selected-item{border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;padding:8px 0;font-size:.9rem;display:flex}.open-billing-selected-item:last-of-type{border-bottom:none}.open-billing-selected-name{color:var(--text-secondary)}.open-billing-selected-row{align-items:center;gap:10px;display:flex}.open-billing-selected-amount{color:var(--text-primary);font-weight:600}.open-billing-remove-btn{width:26px;height:26px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:0;transition:all .15s;display:flex}.open-billing-remove-btn:hover{background:var(--btn-delete-hover-bg);color:var(--danger)}.open-billing-selected-total{border-top:2px dashed var(--border-color);justify-content:space-between;margin-top:10px;padding-top:10px;font-size:.95rem;font-weight:700;display:flex}.open-billing-payment-section{flex-direction:column;gap:18px;display:flex}.open-billing-total-card{background:linear-gradient(135deg,var(--primary) 0,var(--primary-dark) 100%);color:#fff;border-radius:12px;flex-direction:column;gap:4px;padding:18px 20px;display:flex;box-shadow:0 4px 12px #0e749040}.open-billing-total-label{opacity:.9;font-size:.82rem;font-weight:500}.open-billing-total-value{letter-spacing:.5px;font-size:1.35rem;font-weight:800}.open-billing-form-group,.open-billing-form-row{margin-top:0}.open-billing-change{color:var(--success);margin-top:8px;font-size:.9rem}.pay-content{flex-direction:column;gap:20px;display:flex}.pay-patient-info{background:var(--bg-body);border-radius:var(--radius);border:1px solid var(--border-light);align-items:center;gap:14px;padding:16px;display:flex}.pay-patient-avatar{background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.05rem;font-weight:700;display:flex}.pay-patient-details h3{color:var(--text-primary);margin:0 0 4px;font-size:1rem;font-weight:700}.pay-patient-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:10px;font-size:.78rem;display:flex}.pay-methods-label{color:var(--text-secondary);margin-bottom:10px;font-size:.82rem;font-weight:600;display:block}.pay-method-grid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.pay-method-btn{border:2px solid var(--border-color);background:var(--bg-card);cursor:pointer;border-radius:10px;flex-direction:column;align-items:center;gap:6px;padding:14px 8px;transition:all .2s;display:flex}.pay-method-btn:hover{border-color:var(--method-color);background:var(--bg-body)}.pay-method-btn:disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.pay-method-btn:disabled:hover{border-color:var(--border-color);background:var(--bg-card)}.pay-method-btn.active{border-color:var(--method-color);background:var(--bg-body);box-shadow:0 0 0 3px var(--method-color)}@supports (color:color-mix(in lab,red,red)){.pay-method-btn.active{box-shadow:0 0 0 3px color-mix(in srgb,var(--method-color) 15%,transparent)}}.pay-method-icon{color:var(--text-muted);transition:color .2s}.pay-method-btn.active .pay-method-icon,.pay-method-btn:hover .pay-method-icon{color:var(--method-color)}.pay-method-name{color:var(--text-muted);font-size:.72rem;font-weight:600;transition:color .2s}.pay-method-btn.active .pay-method-name{color:var(--method-color)}.pay-form{flex-direction:column;gap:14px;display:flex}.pay-amount-input{letter-spacing:.5px;font-size:1.05rem!important;font-weight:600!important}.pay-summary{background:var(--bg-body);border:1px solid var(--border-color);border-radius:var(--radius);flex-direction:column;gap:8px;padding:14px 18px;display:flex}.pay-summary-row{color:var(--text-secondary);justify-content:space-between;align-items:center;font-size:.84rem;display:flex}.pay-summary-amount{font-weight:600}.pay-summary-divider{background:var(--border-color);height:1px;margin:4px 0}.pay-summary-balance{color:var(--text-primary);font-size:.95rem;font-weight:700}.pay-summary-balance .pay-summary-amount{color:var(--danger);font-size:1rem}.pay-summary-change{color:var(--text-primary);font-size:.95rem;font-weight:700}.pay-summary-change .pay-summary-amount{color:var(--success);font-size:1rem}.pay-cash-section{background:var(--bg-body);padding:14px}.pay-cash-section,.pay-change-display{border:1px solid var(--border-color);border-radius:var(--radius)}.pay-change-display{background:var(--bg-card);color:var(--text-faint);letter-spacing:.5px;align-items:center;min-height:44px;padding:10px 14px;font-size:1.05rem;font-weight:700;display:flex}.pay-change-display.has-change{color:var(--success);border-color:var(--success);background:var(--badge-success-bg)}.apt-detail-content{flex-direction:column;gap:20px;display:flex}.apt-detail-section{border-bottom:1px solid var(--border-light);padding-bottom:16px}.apt-detail-section:last-child{border-bottom:none;padding-bottom:0}.apt-detail-section h4{color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px;margin:0 0 12px;font-size:.85rem;font-weight:700}.apt-detail-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;display:grid}.apt-detail-item{flex-direction:column;gap:3px;display:flex}.apt-detail-label{color:var(--text-faint);text-transform:uppercase;letter-spacing:.3px;font-size:.72rem;font-weight:500}.apt-detail-value{color:var(--text-primary);font-size:.88rem;font-weight:500}@media (max-width:1023px){.rcpt-header{gap:10px;padding:0 16px}.rcpt-brand-text h1{font-size:.9rem}.rcpt-brand-text span{display:none}.rcpt-stats-bar{gap:8px;padding:12px 16px}.rcpt-stat-card{min-width:130px;padding:10px 14px}.rcpt-toolbar{padding:0 16px 10px}.rcpt-content{padding:0 16px 16px}.rcpt-sessions-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (max-width:767px){.rcpt-header{flex-wrap:wrap;gap:8px;height:auto;padding:10px 14px}.rcpt-header-left{order:1}.rcpt-header-right{order:2}.rcpt-header-center{order:3;justify-content:center;width:100%}.rcpt-back-btn span{display:none}.rcpt-back-btn{padding:7px 10px}.rcpt-brand-icon{width:32px;height:32px;font-size:.95rem}.rcpt-stats-bar{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;gap:6px;padding:10px 14px;overflow-x:auto}.rcpt-stat-card{flex:none;min-width:120px;padding:8px 12px}.rcpt-stat-num{font-size:.95rem}.rcpt-toolbar{padding:0 14px 8px}.rcpt-toolbar,.rcpt-toolbar-left{flex-direction:column;align-items:stretch}.rcpt-toolbar-left{min-width:0}.rcpt-search-wrap{max-width:100%}.rcpt-toolbar-right{justify-content:space-between}.rcpt-content{padding:0 14px 14px}.rcpt-sessions-grid{grid-template-columns:1fr}.pay-method-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:479px){.rcpt-header{padding:8px 10px}.rcpt-brand{display:none}.rcpt-date-label{font-size:.78rem}.rcpt-stats-bar{padding:8px 10px}.rcpt-stat-card{gap:8px;min-width:100px;padding:6px 10px}.rcpt-stat-num{font-size:.85rem}.rcpt-stat-label{font-size:.65rem}.rcpt-content{padding:0 10px 10px}.rcpt-session-card{padding:14px}}.cashier-indicator{cursor:pointer;white-space:nowrap;border:none;border-radius:20px;align-items:center;gap:6px;padding:6px 14px;font-size:.78rem;font-weight:600;transition:all .2s;display:flex}.cashier-active-indicator{color:#10b981;background:#10b9811f;border:1px solid #10b98140}.cashier-active-indicator:hover{background:#10b98133}.cashier-inactive-indicator{background:var(--btn-secondary-bg);color:var(--text-secondary);border:1px solid var(--border-color)}.cashier-inactive-indicator:hover{background:var(--btn-secondary-hover)}@keyframes cashierPulse{0%,to{opacity:1}50%{opacity:.4}}.cashier-pulse{animation:cashierPulse 1.5s ease-in-out infinite}.modal.modal-cashier-session{width:94vw;max-width:720px}.modal.modal-cashier-session .modal-body{padding:0}.cs-start{padding:28px 28px 20px}.cs-start-hero{text-align:center;margin-bottom:20px}.cs-start-icon{background:linear-gradient(135deg,var(--primary) 0,var(--primary-dark) 100%);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 14px;display:flex}.cs-start-hero h3{color:var(--text-primary);margin-bottom:6px;font-size:1.2rem;font-weight:700}.cs-start-hero p{color:var(--text-muted);max-width:360px;margin:0 auto;font-size:.85rem;line-height:1.5}.cs-start-info{background:var(--bg-table-head);border-radius:var(--radius);flex-direction:column;gap:6px;margin-bottom:16px;padding:12px 16px;display:flex}.cs-info-row{justify-content:space-between;font-size:.82rem;display:flex}.cs-info-row>span:first-child{color:var(--text-muted)}.cs-info-row>span:last-child{color:var(--text-primary);font-weight:600}.cs-amount-group{margin-bottom:0}.cs-amount-input{text-align:center;letter-spacing:.5px;padding:14px!important;font-size:1.3rem!important;font-weight:700!important}.cs-active{padding:20px 24px}.cs-session-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:18px;display:flex}.cs-session-status{color:#10b981;align-items:center;gap:6px;font-size:.9rem;font-weight:700;display:flex}.cs-session-meta{color:var(--text-muted);align-items:center;gap:14px;font-size:.78rem;display:flex}.cs-session-meta span{align-items:center;gap:4px;display:flex}.cs-stats-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px;display:grid}.cs-stat{border-radius:var(--radius);border:1px solid var(--border-color);background:var(--bg-card);gap:10px;padding:12px 14px}.cs-stat,.cs-stat-icon{align-items:center;display:flex}.cs-stat-icon{border-radius:8px;flex-shrink:0;justify-content:center;width:36px;height:36px}.cs-stat-start .cs-stat-icon{color:#2563eb;background:#dbeafe}.cs-stat-cash .cs-stat-icon{color:#059669;background:#d1fae5}.cs-stat-card .cs-stat-icon{color:#7c3aed;background:#ede9fe}.cs-stat-bankdeposit .cs-stat-icon{color:#059669;background:#d1fae5}.cs-stat-expense .cs-stat-icon{color:#db2777;background:#fce7f3}[data-theme=dark] .cs-stat-start .cs-stat-icon{color:#60a5fa;background:#1e3a5f}[data-theme=dark] .cs-stat-cash .cs-stat-icon{color:#34d399;background:#064e3b}[data-theme=dark] .cs-stat-card .cs-stat-icon{color:#a78bfa;background:#3b1f7a}[data-theme=dark] .cs-stat-bankdeposit .cs-stat-icon{color:#34d399;background:#064e3b}[data-theme=dark] .cs-stat-expense .cs-stat-icon{color:#f9a8d4;background:#831843}.cs-stat-info{flex-direction:column;min-width:0;display:flex}.cs-stat-value{color:var(--text-primary);font-size:.95rem;font-weight:700}.cs-stat-label{color:var(--text-muted);margin-top:1px;font-size:.7rem}.cs-expected-bar{background:linear-gradient(135deg,var(--primary) 0,var(--primary-dark) 100%);color:#fff;border-radius:var(--radius);justify-content:space-between;align-items:center;margin-bottom:14px;padding:14px 18px;display:flex}.cs-expected-label{align-items:center;gap:8px;font-size:.88rem;font-weight:600;display:flex}.cs-expected-value{letter-spacing:.3px;font-size:1.2rem;font-weight:800}.cs-summary-row{border-bottom:1px solid var(--border-light);justify-content:space-between;padding:8px 0;font-size:.85rem;display:flex}.cs-summary-row>span:first-child{color:var(--text-muted)}.cs-summary-val{color:var(--text-primary);font-weight:700}.cs-cash-breakdown{border-top:1px solid var(--border-color);margin-top:14px;padding-top:12px}.cs-cash-breakdown h4{color:var(--text-primary);align-items:center;gap:6px;margin-bottom:10px;font-size:.85rem;font-weight:700;display:flex}.cs-cash-breakdown-list{flex-direction:column;gap:5px;max-height:180px;display:flex;overflow-y:auto}.cs-cash-breakdown-item{background:var(--bg-table-head);border-radius:6px;justify-content:space-between;align-items:center;gap:10px;padding:6px 10px;display:flex}.cs-cash-breakdown-info{flex-direction:column;min-width:0;display:flex}.cs-cash-breakdown-name{color:var(--text-primary);font-size:.82rem;font-weight:600}.cs-cash-breakdown-id{color:var(--text-muted);font-size:.7rem}.cs-cash-breakdown-meta{color:var(--text-muted);opacity:.9;margin-top:1px;font-size:.62rem}.cs-cash-breakdown-amt{color:#059669;flex-shrink:0;font-size:.85rem;font-weight:700}.cs-cash-breakdown-total{background:var(--bg-table-head);border-radius:6px;justify-content:space-between;margin-top:8px;padding:8px 10px;font-size:.9rem;font-weight:700;display:flex}.cs-end-cash-breakdown{background:var(--bg-table-head);border-top:1px dashed var(--border-color);flex-direction:column;gap:3px;padding:6px 16px 8px;display:flex}.cs-end-cash-breakdown-item{justify-content:space-between;align-items:flex-start;gap:8px;padding:3px 0;font-size:.78rem;display:flex}.cs-end-cash-breakdown-left{flex-direction:column;min-width:0;display:flex}.cs-end-cash-meta,.cs-end-cash-name{color:var(--text-muted)}.cs-end-cash-meta{opacity:.85;margin-top:1px;font-size:.6rem}.cs-end-cash-amt{color:#059669;font-weight:600}.cs-doctor-sessions{border-top:1px solid var(--border-color);margin-top:14px;padding-top:12px}.cs-doctor-sessions h4{color:var(--text-primary);align-items:center;gap:6px;margin-bottom:10px;font-size:.85rem;font-weight:700;display:flex}.cs-doctor-sessions-list{flex-direction:column;gap:10px;max-height:220px;display:flex;overflow-y:auto}.cs-doctor-session-item{background:var(--bg-table-head);border-left:3px solid #7c3aed;border-radius:6px;padding:10px 12px}.cs-doctor-session-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:6px;margin-bottom:6px;display:flex}.cs-doctor-session-name{color:var(--text-primary);font-size:.9rem;font-weight:700}.cs-doctor-session-meta{color:var(--text-muted);font-size:.75rem}.cs-doctor-session-row{justify-content:space-between;padding:2px 0;font-size:.8rem;display:flex}.cs-doctor-session-row span:first-child{color:var(--text-muted)}.cs-doctor-session-split{color:var(--text-muted);flex-wrap:wrap;gap:8px;margin-top:4px;font-size:.72rem;display:flex}.cs-doctor-session-fees span:last-child{color:#7c3aed;font-weight:700}.cs-end-doctor-sessions{background:var(--bg-table-head);border-top:1px dashed var(--border-color);padding:8px 16px 10px}.cs-end-doctor-sessions-title{color:var(--text-muted);text-transform:uppercase;margin-bottom:6px;font-size:.75rem;font-weight:700}.cs-end-doctor-session-item{border-bottom:1px solid var(--border-light);flex-direction:column;gap:2px;padding:4px 0;font-size:.78rem;display:flex}.cs-end-doctor-session-item:last-child{border-bottom:none}.cs-end-doctor-session-name{color:var(--text-primary);font-weight:600}.cs-end-doctor-session-stats{color:var(--text-muted);font-size:.72rem}.cs-expenses-section{border-top:1px solid var(--border-color);margin-top:18px;padding-top:14px}.cs-expenses-section h4{color:var(--text-primary);align-items:center;gap:6px;margin-bottom:10px;font-size:.88rem;font-weight:700;display:flex}.cs-expenses-list{flex-direction:column;gap:6px;display:flex}.cs-expense-item{background:var(--bg-table-head);border-radius:6px;justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;display:flex}.cs-expense-info{flex-direction:column;min-width:0;display:flex}.cs-expense-desc{color:var(--text-primary);font-size:.82rem;font-weight:600}.cs-expense-cat{color:var(--text-muted);font-size:.7rem}.cs-expense-right{flex-shrink:0;align-items:center;gap:8px;display:flex}.cs-expense-amt{color:#db2777;font-size:.85rem;font-weight:700}.cs-end{padding:20px 24px}.cs-end-summary{margin-bottom:18px}.cs-end-summary h4{color:var(--text-primary);margin-bottom:10px;font-size:.95rem;font-weight:700}.cs-end-grid{background:var(--border-light);border-radius:var(--radius);border:1px solid var(--border-color);flex-direction:column;gap:1px;display:flex;overflow:hidden}.cs-end-row{background:var(--bg-card);justify-content:space-between;padding:10px 16px;font-size:.85rem;display:flex}.cs-end-row>span:first-child{color:var(--text-muted)}.cs-end-row>span:last-child{color:var(--text-primary);font-weight:700}.cs-end-row-expense>span:last-child{color:#db2777}.cs-end-row-total{background:var(--bg-table-head);font-weight:600}.cs-end-row-total>span:last-child{color:var(--primary);font-weight:800}.cs-expected-bar-end{margin-bottom:18px}.cs-diff-alert{border-radius:var(--radius);border:1px solid;margin-top:14px;padding:14px 16px}.cs-diff-under{color:#dc2626;background:#fef2f2;border-color:#fecaca}.cs-diff-over{color:#d97706;background:#fefce8;border-color:#fde68a}[data-theme=dark] .cs-diff-under{background:#dc26261a;border-color:#dc26264d}[data-theme=dark] .cs-diff-over{background:#d977061a;border-color:#d977064d}.cs-diff-header{font-size:.9rem;font-weight:700}.cs-diff-header,.cs-diff-ok{align-items:center;gap:8px;display:flex}.cs-diff-ok{border-radius:var(--radius);color:#059669;background:#d1fae5;border:1px solid #a7f3d0;margin-top:14px;padding:12px 16px;font-size:.85rem;font-weight:600}[data-theme=dark] .cs-diff-ok{color:#34d399;background:#10b9811a;border-color:#10b9814d}.expense-form{flex-direction:column;gap:14px;display:flex}@media (max-width:767px){.modal.modal-cashier-session{border-radius:18px 18px 0 0;align-self:flex-end;width:100%;max-width:100%;max-height:94vh}.modal-overlay:has(.modal-cashier-session){align-items:flex-end;padding:0}.cs-stats-grid{grid-template-columns:repeat(2,1fr)}.cs-active,.cs-end,.cs-start{padding:16px}.cashier-indicator span{display:none}.cashier-indicator{padding:8px}}@media (max-width:479px){.cs-stats-grid{grid-template-columns:1fr}.cs-expected-bar{text-align:center;flex-direction:column;gap:4px}}.expenses-page{max-width:1100px;margin:0 auto;padding:24px}.expenses-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;display:flex}.expenses-header-text{flex:1;min-width:220px}.expenses-header-sub{color:var(--text-muted);max-width:480px;margin:6px 0 0;font-size:.875rem;line-height:1.45}.expenses-add-btn{color:#831843;cursor:pointer;text-align:left;font:inherit;background:linear-gradient(135deg,#fdf2f8,#fce7f3 55%,#fbcfe8);border:1px solid #db277738;border-radius:14px;align-items:center;gap:12px;padding:10px 18px 10px 10px;transition:transform .18s,box-shadow .18s,border-color .18s;display:inline-flex;box-shadow:0 2px 8px #db27771f}.expenses-add-btn:hover{border-color:#db27776b;transform:translateY(-1px);box-shadow:0 8px 22px #db27772e}.expenses-add-btn:active{transform:translateY(0);box-shadow:0 2px 8px #db27771f}.expenses-add-btn-icon{color:#fff;background:linear-gradient(145deg,#ec4899,#db2777);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;display:flex;box-shadow:0 4px 12px #db277759}.expenses-add-btn-copy{flex-direction:column;gap:2px;min-width:0;display:flex}.expenses-add-btn-title{color:#9d174d;font-size:.92rem;font-weight:700;line-height:1.2}.expenses-add-btn-sub{color:#be185d;opacity:.85;font-size:.72rem;font-weight:500;line-height:1.25}[data-theme=dark] .expenses-add-btn{background:linear-gradient(135deg,#500724,#831843);border-color:#f9a8d42e;box-shadow:0 2px 10px #00000040}[data-theme=dark] .expenses-add-btn:hover{border-color:#f9a8d459;box-shadow:0 8px 24px #00000059}[data-theme=dark] .expenses-add-btn-title{color:#fce7f3}[data-theme=dark] .expenses-add-btn-sub{color:#f9a8d4}.expenses-add-btn-empty{margin-top:18px}.expenses-empty .expenses-add-btn{margin-left:auto;margin-right:auto}.expenses-page h1{color:var(--text-primary);align-items:center;gap:10px;margin:0;font-size:1.5rem;font-weight:700;display:flex}.expenses-filters{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px;display:flex}.expenses-filters .form-control{max-width:200px}.expenses-summary-bar{flex-wrap:wrap;gap:14px;margin-bottom:20px;display:flex}.expenses-summary-card{border-radius:var(--radius);background:var(--bg-card);border:1px solid var(--border-color);flex:1;align-items:center;gap:10px;min-width:160px;padding:14px 18px;display:flex}.expenses-summary-card .icon{color:#db2777;background:#fce7f3;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;display:flex}[data-theme=dark] .expenses-summary-card .icon{color:#f9a8d4;background:#831843}.expenses-summary-card .info{flex-direction:column;display:flex}.expenses-summary-card .info .val{color:var(--text-primary);font-size:1.1rem;font-weight:700}.expenses-summary-card .info .lbl{color:var(--text-muted);font-size:.72rem}.expenses-table-wrap{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border-color);overflow:hidden}.expenses-table{border-collapse:collapse;width:100%}.expenses-table td,.expenses-table th{text-align:left;border-bottom:1px solid var(--border-light);padding:10px 14px;font-size:.85rem}.expenses-table th{background:var(--bg-table-head);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:600}.expenses-table td{color:var(--text-primary)}.expenses-table tr:hover td{background:var(--bg-table-hover)}.expenses-empty{text-align:center;color:var(--text-muted);padding:60px 20px}.expenses-empty svg{color:var(--text-faint);margin-bottom:12px}.expenses-empty h3{color:var(--text-secondary);margin-bottom:6px;font-size:1.1rem}.modal.modal-expense{max-width:480px}.expense-modal-intro{background:#fdf2f8;border:1px solid #db277726;border-radius:12px;align-items:flex-start;gap:12px;margin-bottom:18px;padding:12px 14px;display:flex}[data-theme=dark] .expense-modal-intro{background:#83184338;border-color:#f9a8d41f}.expense-modal-intro-icon{color:#db2777;background:#fce7f3;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}[data-theme=dark] .expense-modal-intro-icon{color:#f9a8d4;background:#db277740}.expense-modal-intro p{color:var(--text-muted);margin:0;font-size:.82rem;line-height:1.5}.expense-modal-intro strong{color:#be185d;font-weight:700}[data-theme=dark] .expense-modal-intro strong{color:#f9a8d4}.expense-form-modal .form-group{margin-bottom:14px}.expense-form-modal .form-group:last-child{margin-bottom:0}.expense-form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.expense-input-wrap{position:relative}.expense-input-icon{color:var(--text-faint);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.expense-input-with-icon{width:100%;padding-left:36px!important}.expense-amount-wrap{border:1px solid var(--border-color);border-radius:var(--radius);background:var(--bg-input,var(--bg-card));align-items:stretch;transition:border-color .15s,box-shadow .15s;display:flex;overflow:hidden}.expense-amount-wrap:focus-within{border-color:#db2777;box-shadow:0 0 0 3px #db27771f}.expense-amount-prefix{color:#db2777;border-right:1px solid var(--border-color);white-space:nowrap;background:#fdf2f8;align-items:center;padding:0 14px;font-size:.9rem;font-weight:700;display:flex}[data-theme=dark] .expense-amount-prefix{color:#f9a8d4;background:#83184359}.expense-amount-input{flex:1;min-width:0;box-shadow:none!important;border:none!important;border-radius:0!important;padding:12px 14px!important;font-size:1.15rem!important;font-weight:700!important}.expense-amount-input:focus{outline:none}.btn.expenses-modal-submit{color:#fff;background:linear-gradient(145deg,#ec4899,#db2777);border:none;box-shadow:0 4px 14px #db277747}.btn.expenses-modal-submit:hover:not(:disabled){background:linear-gradient(145deg,#db2777,#be185d)}.btn.expenses-modal-submit:disabled{filter:grayscale(.15)brightness(.95)}@media (max-width:767px){.expenses-page{padding:16px}.expenses-header{flex-direction:column;align-items:stretch}.expenses-add-btn{justify-content:flex-start;width:100%}.expense-form-row{grid-template-columns:1fr}.expenses-summary-bar{flex-direction:column}.expenses-filters .form-control{max-width:100%}.expenses-table-wrap{overflow-x:auto}}.petty-cash-page{max-width:1100px;margin:0 auto;padding:24px}.petty-cash-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.petty-cash-page h1{color:var(--text-primary);align-items:center;gap:10px;margin:0;font-size:1.5rem;font-weight:700;display:flex}.petty-cash-actions{flex-wrap:wrap;gap:10px;display:flex}.petty-cash-actions .btn{align-items:center;gap:6px;display:flex}.petty-cash-filters{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px;display:flex}.petty-cash-filters .form-control{max-width:200px}.petty-cash-summary-bar{flex-wrap:wrap;gap:14px;margin-bottom:20px;display:flex}.petty-cash-summary-card{border-radius:var(--radius);background:var(--bg-card);border:1px solid var(--border-color);flex:1;align-items:center;gap:10px;min-width:160px;padding:14px 18px;display:flex}.petty-cash-summary-card .icon{color:#2563eb;background:#dbeafe;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.petty-cash-summary-card.balance .icon{color:#d97706;background:#fef3c7}.petty-cash-summary-card.added .icon{color:#059669;background:#d1fae5}.petty-cash-summary-card.decreased .icon{color:#dc2626;background:#fee2e2}[data-theme=dark] .petty-cash-summary-card .icon{color:#93c5fd;background:#1e3a5f}[data-theme=dark] .petty-cash-summary-card.balance .icon{color:#fcd34d;background:#78350f}[data-theme=dark] .petty-cash-summary-card.added .icon{color:#6ee7b7;background:#064e3b}[data-theme=dark] .petty-cash-summary-card.decreased .icon{color:#fca5a5;background:#7f1d1d}.petty-cash-summary-card .info{flex-direction:column;display:flex}.petty-cash-summary-card .info .val{color:var(--text-primary);font-size:1.1rem;font-weight:700}.petty-cash-summary-card .info .lbl{color:var(--text-muted);font-size:.72rem}.petty-cash-table-wrap{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border-color);overflow:hidden}.petty-cash-table{border-collapse:collapse;width:100%}.petty-cash-table td,.petty-cash-table th{text-align:left;border-bottom:1px solid var(--border-light);padding:10px 14px;font-size:.85rem}.petty-cash-table th{background:var(--bg-table-head);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:600}.petty-cash-table td{color:var(--text-primary)}.petty-cash-table tr:hover td{background:var(--bg-table-hover)}.petty-cash-empty{text-align:center;color:var(--text-muted);padding:60px 20px}.petty-cash-empty svg{color:var(--text-faint);margin-bottom:12px}.petty-cash-empty h3{color:var(--text-secondary);margin-bottom:6px;font-size:1.1rem}@media (max-width:767px){.petty-cash-page{padding:16px}.petty-cash-header{align-items:flex-start}.petty-cash-header,.petty-cash-summary-bar{flex-direction:column}.petty-cash-filters .form-control{max-width:100%}.petty-cash-table-wrap{overflow-x:auto}}.dash-section-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:12px;font-size:.78rem}.dash-card-title,.dash-section-label{align-items:center;gap:8px;font-weight:700;display:flex}.dash-card-title{color:var(--text-primary);margin-bottom:16px;font-size:1rem}.dash-count-badge{background:var(--primary);color:#fff;border-radius:12px;justify-content:center;align-items:center;min-width:22px;height:22px;padding:0 7px;font-size:.72rem;font-weight:700;display:inline-flex}.stat-currency{font-size:1.25rem!important}.dash-two-col{grid-template-columns:1fr 1fr;gap:20px;margin-bottom:24px;display:grid}.dash-cashier-list{flex-direction:column;gap:10px;display:flex}.dash-cashier-item{border:1px solid var(--border-color);background:var(--bg-card);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.dash-cashier-item.dash-cashier-ongoing{border-left:4px solid var(--primary)}.dash-cashier-item.dash-cashier-ended{border-left:4px solid var(--text-muted)}.dash-cashier-info{flex-direction:column;gap:2px;display:flex}.dash-cashier-email{color:var(--text-primary);font-size:.9rem;font-weight:700}.dash-cashier-time{color:var(--text-muted);font-size:.78rem}.dash-cashier-amount{color:var(--text-secondary);margin-top:2px;font-size:.8rem;font-weight:600}.dash-status-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px;display:grid}.dash-status-item{border:1px solid var(--border-color);border-radius:10px;align-items:center;gap:10px;padding:12px 14px;transition:transform .15s,box-shadow .15s;display:flex}.dash-status-item:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.dash-status-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.dash-status-scheduled .dash-status-icon{background:var(--badge-warning-bg);color:var(--badge-warning-text)}.dash-status-completed .dash-status-icon{background:var(--badge-success-bg);color:var(--badge-success-text)}.dash-status-cancelled .dash-status-icon{background:var(--badge-danger-bg);color:var(--badge-danger-text)}.dash-status-info{flex-direction:column;display:flex}.dash-status-count{color:var(--text-primary);font-size:1.25rem;font-weight:800;line-height:1.2}.dash-status-label{color:var(--text-muted);font-size:.72rem;font-weight:500}.dash-progress-section{border-top:1px solid var(--border-light);padding-top:12px}.dash-progress-header{color:var(--text-muted);justify-content:space-between;align-items:center;margin-bottom:8px;font-size:.78rem;font-weight:500;display:flex}.dash-progress-pct{color:var(--success);font-weight:700}.dash-progress-bar{background:var(--border-color);border-radius:4px;height:8px;overflow:hidden}.dash-progress-fill{background:linear-gradient(90deg,var(--success),#34d399);border-radius:4px;min-width:0;height:100%;transition:width .6s}.dash-pay-grid{flex-direction:column;gap:10px;margin-bottom:14px;display:flex}.dash-pay-item{border:1px solid var(--border-color);border-radius:10px;align-items:center;gap:12px;padding:10px 14px;transition:background .15s;display:flex}.dash-pay-item:hover{background:var(--bg-table-head)}.dash-pay-icon{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.dash-pay-cash{background:var(--badge-success-bg);color:var(--badge-success-text)}.dash-pay-card{background:var(--badge-info-bg);color:var(--badge-info-text)}.dash-pay-bankdeposit{color:#059669;background:#d1fae5}.dash-pay-info{flex-direction:column;flex:1;min-width:0;display:flex}.dash-pay-label{color:var(--text-muted);font-size:.73rem;font-weight:500}.dash-pay-amount{color:var(--text-primary);font-size:.9rem;font-weight:700}.dash-pay-summary{border-top:1px solid var(--border-light);flex-direction:column;gap:0;padding-top:12px;display:flex}.dash-pay-summary-row{color:var(--text-muted);justify-content:space-between;align-items:center;padding:6px 0;font-size:.82rem;font-weight:500;display:flex}.dash-pay-val{font-size:.88rem;font-weight:700}.dash-pay-val-success{color:var(--success)}.dash-pay-val-danger{color:var(--danger)}@media (min-width:1280px){.stats-grid.stats-grid-4{grid-template-columns:repeat(4,1fr)}}@media (min-width:1024px) and (max-width:1279px){.stats-grid.stats-grid-4{grid-template-columns:repeat(4,1fr);gap:14px}.stat-currency{font-size:1.1rem!important}}@media (max-width:1023px){.stats-grid.stats-grid-4{grid-template-columns:repeat(2,1fr)}.dash-two-col{grid-template-columns:1fr;gap:16px}}@media (max-width:767px){.stats-grid.stats-grid-4{grid-template-columns:repeat(2,1fr);gap:10px}.dash-two-col{grid-template-columns:1fr;gap:12px}.dash-status-grid{grid-template-columns:repeat(3,1fr);gap:8px}.dash-status-item{gap:8px;padding:10px}.dash-status-icon{width:32px;height:32px}.dash-status-count{font-size:1.05rem}.dash-pay-icon{width:30px;height:30px}.stat-currency{font-size:1rem!important}}@media (max-width:479px){.stats-grid.stats-grid-4{grid-template-columns:1fr 1fr;gap:8px}.dash-status-grid{grid-template-columns:1fr;gap:6px}.dash-status-item{flex-direction:row}.stat-currency{font-size:.9rem!important}.dash-card-title{font-size:.9rem}}@media (max-width:359px){.stats-grid.stats-grid-4{grid-template-columns:1fr;gap:8px}}.profile-page{min-height:calc(100vh - var(--header-height) - 48px)}.profile-layout,.profile-page{width:100%;flex-direction:column;display:flex}.profile-layout{flex:1;gap:24px}.profile-header-card{flex-wrap:wrap;align-items:center;gap:24px;padding:28px 24px;display:flex}.profile-header-avatar{background:linear-gradient(135deg,var(--primary) 0,var(--primary-dark) 100%);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:80px;height:80px;font-size:1.75rem;font-weight:700;display:flex}.profile-header-info{flex:1;min-width:0}.profile-header-name{color:var(--text-primary);margin:0 0 4px;font-size:1.35rem;font-weight:700;line-height:1.3}.profile-header-email{color:var(--text-muted);word-break:break-all;margin:0 0 10px;font-size:.9rem}.profile-role-badge{padding:4px 12px;font-size:.8rem;font-weight:600;display:inline-block}.profile-grid{flex:1;grid-template-columns:repeat(2,1fr);align-content:start;gap:24px;display:grid}.profile-details-card,.profile-password-card{padding:24px}.profile-section-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.profile-section-title{color:var(--text-primary);align-items:center;margin:0 0 20px;font-size:1.05rem;font-weight:700;display:flex}.profile-section-header .profile-section-title{margin:0}.profile-edit-actions{align-items:center;gap:8px;display:flex}.profile-details-form .form-group{margin-bottom:16px}.profile-details-form .form-group:last-child{margin-bottom:0}.profile-details-list{flex-direction:column;display:flex}.profile-detail-item{border-bottom:1px solid var(--border-color);align-items:flex-start;gap:14px;padding:14px 0;display:flex}.profile-detail-item-last{border-bottom:none;padding-bottom:0}.profile-detail-icon{background:var(--primary-bg);width:40px;height:40px;color:var(--primary);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.profile-detail-content{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.profile-detail-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:.75rem;font-weight:600}.profile-detail-value{color:var(--text-primary);word-break:break-word;font-size:.95rem;font-weight:600}.profile-detail-email{word-break:break-all;font-size:.9rem}.profile-password-form .form-group{margin-bottom:18px}.profile-password-form .form-group:last-of-type{margin-bottom:22px}.profile-submit-btn{min-width:160px}@media (max-width:1023px){.profile-grid{grid-template-columns:1fr;gap:20px}}@media (max-width:767px){.profile-page{min-height:auto}.profile-header-card{text-align:center;flex-direction:column;gap:16px;padding:24px 20px}.profile-header-avatar{width:72px;height:72px;font-size:1.5rem}.profile-header-name{font-size:1.2rem}.profile-grid{gap:20px}.profile-details-card,.profile-password-card{padding:20px 18px}.profile-section-header{flex-direction:column;align-items:flex-start}.profile-section-title{margin-bottom:18px;font-size:1rem}.profile-detail-item{padding:12px 0}.profile-submit-btn{width:100%;min-width:0}}@media (max-width:479px){.profile-header-card{padding:20px 16px}.profile-header-avatar{width:64px;height:64px;font-size:1.25rem}.profile-header-name{font-size:1.1rem}.profile-header-email{font-size:.85rem}.profile-details-card,.profile-password-card{padding:18px 16px}.profile-detail-item{flex-direction:column;align-items:flex-start;gap:8px}.profile-detail-icon{width:36px;height:36px}.profile-edit-actions{justify-content:flex-end;width:100%}}@media (max-width:359px){.profile-header-card{padding:16px 12px}.profile-header-avatar{width:56px;height:56px;font-size:1.1rem}.profile-details-card,.profile-password-card{padding:16px 12px}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}