@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.04o39dzmj.ey..woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e629b5bc06499d58-s.0b_~8bw~gzh90.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/1a099d89ee94ee96-s.0_qb~~5cn13jl.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.0eehd8tgys7nv.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.04o39dzmj.ey..woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/e629b5bc06499d58-s.0b_~8bw~gzh90.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1a099d89ee94ee96-s.0_qb~~5cn13jl.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.0eehd8tgys7nv.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.04o39dzmj.ey..woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/e629b5bc06499d58-s.0b_~8bw~gzh90.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1a099d89ee94ee96-s.0_qb~~5cn13jl.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.0eehd8tgys7nv.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.04o39dzmj.ey..woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/e629b5bc06499d58-s.0b_~8bw~gzh90.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/1a099d89ee94ee96-s.0_qb~~5cn13jl.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.0eehd8tgys7nv.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.04o39dzmj.ey..woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(../media/e629b5bc06499d58-s.0b_~8bw~gzh90.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(../media/1a099d89ee94ee96-s.0_qb~~5cn13jl.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.0eehd8tgys7nv.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans Fallback;src:local(Arial);ascent-override:98.88%;descent-override:21.15%;line-gap-override:0.0%;size-adjust:104.98%}.plus_jakarta_sans_9d745193-module__Fxzc9a__className{font-family:Plus Jakarta Sans,Plus Jakarta Sans Fallback;font-style:normal}.plus_jakarta_sans_9d745193-module__Fxzc9a__variable{--font-jakarta:"Plus Jakarta Sans", "Plus Jakarta Sans Fallback"}
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--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-ease:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.absolute{position:absolute}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.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}.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}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.capitalize{text-transform:capitalize}.uppercase{text-transform:uppercase}.italic{font-style:italic}.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))}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}}:root{--sand-50:#f8fafc;--sand-100:#f1f5f9;--sand-200:#e2e8f0;--sand-300:#cbd5e1;--ink-950:#0f172a;--ink-900:#1e293b;--ink-700:#475569;--ink-500:#94a3b8;--mint-800:#002040;--mint-700:#003153;--mint-600:#0d3f6b;--mint-500:#1a5a8a;--mint-100:#d4e5f0;--mint-50:#eaf3f9;--line:#e2e8f0;--line-light:var(--line)}@supports (color:color-mix(in lab, red, red)){:root{--line-light:color-mix(in oklab, var(--line), white 22%)}}:root{--line-strong:#cbd5e1;--card:#fff;--surface-0:#fff;--surface-1:var(--card);--surface-2:#f8fafc;--surface-3:#f1f5f9;--status-scheduled-bg:#fff4df;--status-scheduled-fg:#8a5a10;--status-scheduled-border:#e9c58a;--status-confirmed-bg:#e7f4ef;--status-confirmed-fg:#1f715f;--status-confirmed-border:#98cdbf;--status-completed-bg:#e6f2ff;--status-completed-fg:#225f9f;--status-completed-border:#8bb5e2;--status-cancelled-bg:#ffeaea;--status-cancelled-fg:#a43a33;--status-cancelled-border:#e3a9a4;--danger-bg:#ffe7e4;--danger-fg:#a12f27;--danger-border:#efb7b2;--success-bg:#e7f4ef;--success-fg:#1f715f;--success-border:#98cdbf;--warning-bg:#fff4df;--warning-fg:#8a5a10;--warning-border:#e9c58a;--info-bg:#e6f2ff;--info-fg:#225f9f;--info-border:#8bb5e2;--space-0:0;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-2xl:26px;--radius-full:999px;--text-xs:.8125rem;--text-sm:.875rem;--text-base:.9375rem;--text-md:1rem;--text-lg:1.25rem;--text-xl:1.5rem;--text-2xl:2rem;--shadow-sm:0 1px 3px #0f172a0f;--shadow-md:0 4px 12px #0f172a12;--shadow-lg:0 8px 24px #0f172a14, 0 1px 4px #0f172a0a;--shadow-xl:0 20px 48px #0f172a1a, 0 4px 12px #0f172a0f;--shadow-primary:0 10px 18px #00315340;--shadow-primary-hover:0 14px 24px #0031534d;--shadow-brand:0 14px 24px #00204047;--ease-out:cubic-bezier(.16, 1, .3, 1);--duration-fast:.15s;--duration-normal:.2s;--duration-slow:.32s;--sidebar-width:272px;--sidebar-width-collapsed:72px}*{box-sizing:border-box}html,body{min-height:100%;color:var(--ink-900);font-family:var(--font-jakarta), "Avenir Next", "Segoe UI", sans-serif;font-size:var(--text-base);background:#f8fafc;margin:0;padding:0;line-height:1.5}h1,h2,h3,h4{font-family:var(--font-jakarta), "Avenir Next", "Segoe UI", sans-serif;color:var(--ink-950);margin:0;line-height:1.2}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.auth-screen{min-height:100vh;padding:var(--space-6);place-items:center;display:grid}.auth-card{border-radius:var(--radius-2xl);border:1px solid var(--line);width:min(480px,100%);padding:var(--space-8);box-shadow:var(--shadow-xl);animation:rise var(--duration-slow) var(--ease-out);background:#fff}.auth-brand{align-items:center;gap:var(--space-3);margin-bottom:var(--space-6);padding-bottom:var(--space-5);border-bottom:1px solid var(--line);display:flex}.auth-brand-icon{border-radius:var(--radius-md);background:linear-gradient(135deg, var(--mint-800), var(--mint-600));color:#fff;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.auth-brand-name{font-size:var(--text-md);color:var(--ink-950);letter-spacing:-.01em;margin:0;font-weight:700}.auth-brand-sub{font-size:var(--text-xs);color:var(--ink-500);text-transform:uppercase;letter-spacing:.08em;margin:0;font-weight:500}.auth-title{margin:0 0 var(--space-1);font-size:clamp(1.4rem,3vw,1.75rem)}.auth-copy{margin:var(--space-2) 0 var(--space-5);color:var(--ink-700);font-size:var(--text-sm);max-width:46ch}.auth-form{gap:var(--space-3);display:grid}.auth-form label{gap:var(--space-1);font-size:var(--text-base);color:var(--ink-900);font-weight:500;display:grid}.password-input{gap:var(--space-2);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.password-toggle{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-0);color:var(--ink-900);padding:var(--space-2) var(--space-3);cursor:pointer;white-space:nowrap;transition:background var(--duration-normal), border-color var(--duration-normal)}.password-toggle:hover{background:var(--sand-50);border-color:var(--line-strong)}.auth-foot{margin:var(--space-4) 0 0;color:var(--ink-700)}.auth-foot a{color:var(--mint-700);font-weight:600}.auth-foot a:hover{text-decoration:underline}.shell{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--line);padding:var(--space-4);background:#fff;flex-direction:column;height:100vh;display:flex;position:sticky;top:0;overflow-y:auto}.brand-block{padding:var(--space-4);border-radius:var(--radius-xl);color:#f0f7ff;box-shadow:var(--shadow-brand);background:radial-gradient(120% 130% at 20% 0,#0d4a7a 0%,#0000 60%),linear-gradient(165deg,#003153,#001a2e);flex-shrink:0}.brand-block-top{align-items:center;gap:var(--space-2);display:flex}.brand-block p{letter-spacing:.03em;font-weight:700;font-size:var(--text-xl);margin:0}.brand-beta{letter-spacing:.08em;text-transform:uppercase;color:#a8d8f0;border-radius:var(--radius-full);background:#ffffff1a;border:1px solid #a8d8f059;flex-shrink:0;align-self:center;padding:2px 7px;font-size:.65rem;font-weight:700;line-height:1.4}.brand-block small{opacity:.86;font-size:var(--text-sm)}.nav-section-label{margin:var(--space-4) 0 var(--space-1);padding:0 var(--space-3);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.14em;color:var(--ink-500);font-weight:700}.nav-section-label:first-of-type{margin-top:var(--space-3)}.nav-menu{margin-top:var(--space-2);align-content:start;gap:2px;display:grid}.nav-link{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--ink-700);font-weight:500;font-size:var(--text-base);transition:background var(--duration-normal) var(--ease-out), color var(--duration-normal), transform var(--duration-normal) var(--ease-out);display:flex}.nav-link:hover{background:var(--surface-3);color:var(--ink-900);transform:translate(2px)}.nav-link-active{color:#fff;background:radial-gradient(130% 120% at 0% 0%, #0d4a7a 0%, transparent 60%), var(--mint-700);font-weight:600;box-shadow:0 6px 16px #00315338}.nav-link-active:hover{background:radial-gradient(130% 120% at 0% 0%, #0d4a7a 0%, transparent 60%), var(--mint-700);color:#fff;transform:none}.nav-link svg{opacity:.7;flex-shrink:0}.nav-link-active svg{opacity:1}.mobile-nav-toggle{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-0);padding:var(--space-2);cursor:pointer;color:var(--ink-900);transition:background var(--duration-fast);justify-content:center;align-items:center;display:none}.mobile-nav-toggle:hover{background:var(--sand-50)}.sidebar-footer{padding-top:var(--space-4);border-top:1px solid var(--line-light);flex-shrink:0;margin-top:auto}.content-wrap{padding:var(--space-5) var(--space-6) var(--space-8)}.topbar{justify-content:space-between;align-items:flex-start;gap:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5);box-shadow:var(--shadow-sm);background:#fff;display:flex}.kicker{text-transform:uppercase;letter-spacing:.14em;font-size:var(--text-xs);color:var(--ink-500);margin:0;font-weight:700}.topbar h1{margin-top:var(--space-1);font-size:clamp(var(--text-xl), 2vw, var(--text-2xl))}.subtitle{margin:var(--space-1) 0 0;color:var(--ink-700);font-size:var(--text-base)}.session-box{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-0);padding:var(--space-2) var(--space-3);align-items:center;gap:var(--space-3);flex-shrink:0;min-width:200px;display:flex}.notif-center{flex-shrink:0;position:relative}.notif-trigger{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--sand-50);width:38px;height:38px;color:var(--ink-900);cursor:pointer;transition:background var(--duration-fast), border-color var(--duration-fast);justify-content:center;align-items:center;display:inline-flex;position:relative}.notif-trigger:hover{background:var(--surface-3);border-color:var(--line-strong)}.notif-badge{border-radius:var(--radius-full);background:var(--danger-fg);color:#fff;border:2px solid #fff;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:11px;font-weight:700;display:inline-flex;position:absolute;top:-6px;right:-8px}.notif-popover{border:1px solid var(--line);border-radius:var(--radius-lg);width:min(430px,100vw - 32px);box-shadow:var(--shadow-xl);z-index:40;background:#fff;position:absolute;top:calc(100% + 10px);right:0;overflow:hidden}.notif-header{justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--line-light);background:var(--surface-2);align-items:flex-start;display:flex}.notif-header h3{font-size:var(--text-md);margin:0}.notif-connection{margin:var(--space-1) 0 0;font-size:var(--text-xs);color:var(--ink-500);align-items:center;gap:6px;font-weight:600;display:inline-flex}.notif-header-actions{align-items:center;gap:var(--space-2);display:inline-flex}.notif-icon-btn,.notif-link-btn{border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink-700);font-size:var(--text-xs);cursor:pointer;background:#fff;align-items:center;gap:6px;padding:6px 10px;font-weight:600;display:inline-flex}.notif-icon-btn:hover,.notif-link-btn:hover{background:var(--sand-50);color:var(--ink-900)}.notif-link-btn:disabled{opacity:.55;cursor:not-allowed}.notif-body{max-height:420px;overflow:auto}.notif-empty{padding:var(--space-4);font-size:var(--text-sm);color:var(--ink-700);margin:0}.notif-empty-error{color:var(--danger-fg)}.notif-list{margin:0;padding:0;list-style:none}.notif-item{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--line-light);gap:var(--space-2);display:grid}.notif-item:last-child{border-bottom:none}.notif-item-main strong{font-size:var(--text-sm);display:block}.notif-item-main p{font-size:var(--text-sm);color:var(--ink-700);margin:2px 0 0}.notif-extra{margin:var(--space-1) 0 0;font-size:var(--text-xs);color:var(--mint-700);font-weight:600}.notif-detail-grid{margin-top:var(--space-1);gap:2px;display:grid}.notif-detail-grid p{font-size:var(--text-xs);color:var(--ink-700);margin:0}.notif-detail-grid span{color:var(--ink-900);font-weight:700}.notif-item-main small{margin-top:var(--space-1);font-size:var(--text-xs);color:var(--ink-500);display:inline-block}.notif-item-actions{align-items:center;gap:var(--space-2);display:inline-flex}.session-meta{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.session-meta p{font-weight:600;font-size:var(--text-sm);margin:0}.session-meta span{font-size:var(--text-xs);color:var(--ink-500);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.session-logout-btn{border:1px solid var(--line);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);background:var(--sand-50);cursor:pointer;font-size:var(--text-sm);color:var(--ink-700);transition:background var(--duration-fast), color var(--duration-fast);font-weight:500}.session-logout-btn:hover{background:var(--surface-3);color:var(--ink-900)}.page-content{margin-top:var(--space-5);gap:var(--space-4);display:grid}.page-content>*{animation:rise .28s var(--ease-out)}.card{border:1px solid var(--line-light);border-radius:var(--radius-xl);padding:var(--space-5);box-shadow:var(--shadow-md);background:#fff}.card-accent{background:var(--mint-50)}@supports (color:color-mix(in lab, red, red)){.card-accent{background:color-mix(in oklab, var(--mint-50), white 55%)}}.card-muted{background:var(--surface-2)}.card h3{margin-bottom:var(--space-4);font-size:var(--text-lg)}.module-head{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.module-head h3{margin:0}.module-head p{margin:var(--space-1) 0 0;color:var(--ink-700);max-width:62ch}.module-head.compact{margin-bottom:var(--space-3)}.appointment-view-switch{gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;display:inline-flex}.btn-view-active{background:linear-gradient(120deg, var(--mint-800), var(--mint-600));border-color:var(--mint-700)}@supports (color:color-mix(in lab, red, red)){.btn-view-active{border-color:color-mix(in oklab, var(--mint-700), black 8%)}}.btn-view-active{color:#f6fffc;box-shadow:var(--shadow-primary)}.btn-view-active:hover{color:#f6fffc;transform:translateY(-1px)}.grid-3{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.grid-4{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.grid-2{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(300px,1fr));display:grid}.stat-card{border:1px solid var(--line-light);border-radius:var(--radius-lg);padding:var(--space-4);transition:box-shadow var(--duration-normal), transform var(--duration-normal);background:#fff}.stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.stat-card p{color:var(--ink-500);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;margin:0;font-weight:700}.stat-card strong{margin-top:var(--space-2);font-size:1.75rem;font-family:var(--font-jakarta), "Avenir Next", "Segoe UI", sans-serif;color:var(--ink-950);display:block}.stat-card small{margin-top:var(--space-1);color:var(--ink-500);font-size:var(--text-xs);display:block}.insight-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));display:grid}.insight-value{margin:var(--space-2) 0 var(--space-1);font-size:var(--text-2xl);font-family:var(--font-jakarta), "Avenir Next", "Segoe UI", sans-serif}.btn-primary{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-md);background:radial-gradient(130% 120% at 0% 0%, #0d4a7a 0%, transparent 60%), var(--mint-700);color:#fff;padding:var(--space-2) var(--space-4);font-weight:600;font-size:var(--text-base);cursor:pointer;transition:transform var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast), filter var(--duration-fast);box-shadow:var(--shadow-primary);white-space:nowrap;border:0;display:inline-flex}.btn-primary:hover{filter:brightness(1.06);box-shadow:var(--shadow-primary-hover);transform:translateY(-1px)}.btn-primary:active{filter:brightness(.96);transform:translateY(0)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;filter:none;transform:none}.btn-secondary{justify-content:center;align-items:center;gap:var(--space-2);border:1px solid var(--mint-600);border-radius:var(--radius-md);background:var(--mint-50);color:var(--mint-800);padding:var(--space-2) var(--space-4);font-weight:600;font-size:var(--text-base);cursor:pointer;transition:background var(--duration-fast), border-color var(--duration-fast);white-space:nowrap;display:inline-flex}.btn-secondary:hover{background:var(--mint-100)}.btn-ghost{justify-content:center;align-items:center;gap:var(--space-2);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-0);color:var(--ink-900);padding:var(--space-2) var(--space-3);font-weight:500;font-size:var(--text-sm);cursor:pointer;transition:background var(--duration-fast), border-color var(--duration-fast), color var(--duration-fast);white-space:nowrap;display:inline-flex}.btn-ghost:hover{background:var(--surface-2);border-color:var(--line-strong)}.btn-ghost:active{background:var(--surface-3)}.btn-ghost:disabled{opacity:.4;cursor:not-allowed}.btn-danger{justify-content:center;align-items:center;gap:var(--space-2);border:1px solid var(--danger-border);border-radius:var(--radius-md);background:var(--danger-bg);color:var(--danger-fg);padding:var(--space-2) var(--space-3);font-weight:600;font-size:var(--text-sm);cursor:pointer;transition:background var(--duration-fast), filter var(--duration-fast);white-space:nowrap;display:inline-flex}.btn-danger:hover{filter:brightness(.96)}.btn-icon{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-0);color:var(--ink-700);padding:var(--space-2);cursor:pointer;transition:background var(--duration-fast), color var(--duration-fast);justify-content:center;align-items:center;display:inline-flex}.btn-icon:hover{background:var(--surface-2);color:var(--ink-900)}.error-banner{border:1px solid var(--danger-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);color:var(--danger-fg);background:var(--danger-bg);font-size:var(--text-sm);align-items:center;gap:var(--space-2);margin:0;font-weight:500;display:flex}.error-banner-close{color:inherit;opacity:.8;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;margin-left:auto;padding:0;display:inline-flex}.error-banner-close:hover{opacity:1}.success-banner{border:1px solid var(--success-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);color:var(--success-fg);background:var(--success-bg);font-size:var(--text-sm);align-items:center;gap:var(--space-2);margin:0;font-weight:500;display:flex}.empty-state{color:var(--ink-500);text-align:center;padding:var(--space-8) var(--space-4);margin:0;font-style:italic}.toast-container{bottom:var(--space-6);right:var(--space-6);z-index:9999;gap:var(--space-2);pointer-events:none;display:grid;position:fixed}.toast{pointer-events:auto;border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);font-size:var(--text-sm);box-shadow:var(--shadow-lg);align-items:center;gap:var(--space-2);animation:toast-in .3s var(--ease-out);max-width:380px;font-weight:500;display:flex}.toast-success{background:var(--success-bg);border:1px solid var(--success-border);color:var(--success-fg)}.toast-error{background:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger-fg)}.toast-info{background:var(--info-bg);border:1px solid var(--info-border);color:var(--info-fg)}@keyframes toast-in{0%{opacity:0;transform:translateY(12px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:1s linear infinite spin}input,select,textarea{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-0);color:var(--ink-900);padding:var(--space-2) var(--space-3);font-size:var(--text-base);transition:border-color var(--duration-fast), box-shadow var(--duration-fast)}input::placeholder,textarea::placeholder{color:var(--ink-500)}input:focus,select:focus,textarea:focus{border-color:var(--mint-600);box-shadow:0 0 0 3px var(--mint-100);outline:none}@supports (color:color-mix(in lab, red, red)){input:focus,select:focus,textarea:focus{box-shadow:0 0 0 3px color-mix(in oklab, var(--mint-100), white 20%)}}input[readonly],textarea[readonly]{background:var(--surface-2);color:var(--ink-700)}textarea{resize:vertical;min-height:88px}.form-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.form-grid label{gap:var(--space-1);font-size:var(--text-sm);color:var(--ink-700);grid-template-columns:1fr;font-weight:500;display:grid}.form-grid label.required{grid-template-columns:1fr auto}.form-grid label.required:after{content:"*";color:var(--danger-fg);padding-left:var(--space-1);grid-area:1/2;align-self:center;font-weight:700}.form-grid label.required>input,.form-grid label.required>select,.form-grid label.required>textarea,.form-grid label.required>.patient-search{grid-column:1/-1}.field-error{font-size:var(--text-xs);color:var(--danger-fg);margin-top:calc(var(--space-1) * -.25);grid-column:1/-1}.has-error{border-color:var(--danger-fg)!important;box-shadow:0 0 0 3px var(--danger-fg)!important}@supports (color:color-mix(in lab, red, red)){.has-error{box-shadow:0 0 0 3px color-mix(in oklab, var(--danger-fg) 10%, transparent)!important}}.has-error:focus{border-color:var(--danger-fg)!important;box-shadow:0 0 0 3px var(--danger-fg)!important}@supports (color:color-mix(in lab, red, red)){.has-error:focus{box-shadow:0 0 0 3px color-mix(in oklab, var(--danger-fg) 18%, transparent)!important}}.user-avatar{aspect-ratio:1;background:var(--mint-600);color:#fff;width:36px;height:36px;font-size:var(--text-xs);letter-spacing:.04em;border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:700;line-height:1;display:flex}.form-grid .full{grid-column:1/-1}table{border-collapse:separate;border-spacing:0;width:100%;min-width:700px}.card:has(table){overflow-x:auto}th,td{text-align:left;padding:var(--space-3) var(--space-3);border-bottom:1px solid var(--line-light);vertical-align:middle}th{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--ink-500);padding-top:var(--space-2);padding-bottom:var(--space-2);background:var(--surface-2);font-weight:700}th:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm)}th:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0}td{font-size:var(--text-sm)}tbody tr{transition:background var(--duration-fast)}tbody tr:hover td{background:var(--surface-2)}.appointment-row-focus td{background:var(--mint-100)}@supports (color:color-mix(in lab, red, red)){.appointment-row-focus td{background:color-mix(in oklab, var(--mint-100), white 45%)}}.actions{gap:var(--space-1);flex-wrap:nowrap;align-items:center;display:flex}td .actions{justify-content:flex-end}.status-chip{align-items:center;gap:var(--space-1);border-radius:var(--radius-full);padding:var(--space-1) var(--space-3);font-size:var(--text-xs);letter-spacing:.02em;font-weight:700;display:inline-flex}.status-scheduled{background:var(--status-scheduled-bg);color:var(--status-scheduled-fg);border:1px solid var(--status-scheduled-border)}.status-confirmed{background:var(--status-confirmed-bg);color:var(--status-confirmed-fg);border:1px solid var(--status-confirmed-border)}.status-completed{background:var(--status-completed-bg);color:var(--status-completed-fg);border:1px solid var(--status-completed-border)}.status-cancelled{background:var(--status-cancelled-bg);color:var(--status-cancelled-fg);border:1px solid var(--status-cancelled-border)}.toolbar{gap:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.list-toolbar{align-items:flex-end;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--line-light);border-radius:var(--radius-lg);background:var(--card);flex-wrap:wrap;display:flex}@supports (color:color-mix(in lab, red, red)){.list-toolbar{background:color-mix(in oklab, var(--card), white 16%)}}.list-toolbar{margin-bottom:var(--space-3)}.toolbar-field{gap:var(--space-1);min-width:160px;font-size:var(--text-sm);color:var(--ink-700);flex-direction:column;font-weight:500;display:flex}.toolbar-field-grow{flex:1;min-width:min(320px,100%)}.toolbar-field input,.toolbar-field select,.list-toolbar>.btn-primary,.list-toolbar>.btn-ghost{height:38px;min-height:38px}.list-result{margin:0 0 var(--space-3);font-size:var(--text-sm);color:var(--ink-500);font-weight:500}.patient-search{width:100%;position:relative}.patient-search-wrap{align-items:center;gap:var(--space-2);height:38px;padding:0 var(--space-3);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-0);transition:border-color var(--duration-fast), box-shadow var(--duration-fast);display:flex}.patient-search-wrap:focus-within{border-color:var(--mint-600);box-shadow:0 0 0 3px var(--mint-100)}@supports (color:color-mix(in lab, red, red)){.patient-search-wrap:focus-within{box-shadow:0 0 0 3px color-mix(in oklab, var(--mint-100), white 20%)}}.patient-search-wrap svg{color:var(--ink-400);flex-shrink:0}.patient-search-input{font-size:var(--text-base);color:var(--ink-900);flex:1;box-shadow:none!important;height:auto!important;min-height:unset!important;background:0 0!important;border:none!important;outline:none!important;padding:0!important}.patient-search-input--selected{font-weight:500}.patient-search-input::placeholder{color:var(--ink-400);font-weight:400}.patient-search-clear{cursor:pointer;color:var(--ink-400);border-radius:var(--radius-sm);transition:color var(--duration-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:2px;line-height:1;display:flex}.patient-search-clear:hover{color:var(--ink-700)}.patient-search-dropdown{background:var(--surface-0);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-1);z-index:200;max-height:260px;margin:0;list-style:none;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px -4px #0000001f,0 2px 8px -2px #00000014}.patient-search-item{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);cursor:pointer;transition:background var(--duration-fast);display:flex}.patient-search-item:hover{background:var(--surface-2)}.patient-search-name{font-size:var(--text-sm);color:var(--ink-900);font-weight:500}.patient-search-doc{font-size:var(--text-xs);color:var(--ink-500);flex-shrink:0}.patient-search-hint{font-size:var(--text-sm);color:var(--ink-400);cursor:default;padding:var(--space-2) var(--space-3);font-style:italic}.list-pagination{margin-top:var(--space-3);justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.list-pagination p{font-size:var(--text-sm);color:var(--ink-500);margin:0}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:var(--space-6);animation:fade-in var(--duration-fast) var(--ease-out);background:#18141066;place-items:center;display:grid;position:fixed;inset:0}.modal-panel{border-radius:var(--radius-xl);border:1px solid var(--line);background:var(--card);width:min(540px,100%);max-height:90vh;padding:var(--space-6);box-shadow:var(--shadow-xl);animation:modal-in .18s var(--ease-out);overflow-y:auto}.modal-panel--lg{width:min(900px,96vw)}.modal-table-wrap{margin-bottom:var(--space-6);overflow-x:auto}.checkbox-row{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--ink-700);cursor:pointer;-webkit-user-select:none;user-select:none;margin-top:var(--space-1);flex-direction:row;font-weight:500;display:flex}.checkbox-row input[type=checkbox]{width:16px;height:16px;accent-color:var(--brand);cursor:pointer;flex-shrink:0}.modal-header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-5);display:flex}.modal-header h3{font-size:var(--text-lg);margin:0}.modal-footer{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--line-light);display:flex}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-in{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg,#f1f5f9 0%,#e2e8f0 40%,#f1f5f9 80%) 0 0/200% 100%;animation:1.5s ease-in-out infinite shimmer}.skeleton-text{width:80%;height:14px}.skeleton-title{width:50%;height:28px}.skeleton-stat{width:60%;height:42px;margin-top:var(--space-2)}.skeleton-row{width:100%;height:48px;margin-bottom:var(--space-2)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.field-label{margin:0 0 var(--space-1);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--ink-500);font-weight:700;display:block}.audit-filter-field{min-width:280px}.audit-summary{margin:0;font-weight:600}.audit-summary-cell{min-width:280px}.audit-tech-line{font-family:SFMono-Regular,Menlo,Consolas,monospace;font-size:var(--text-xs);color:var(--ink-500);word-break:break-word;margin:0}.audit-user{gap:var(--space-1);display:grid}.audit-user-name{margin:0;font-weight:600}.audit-user-meta{font-size:var(--text-xs);color:var(--ink-500);margin:0}.tenant-grid{gap:var(--space-3);margin-top:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(210px,1fr));display:grid}.tenant-item{border:1px solid var(--line-light);border-radius:var(--radius-lg);background:var(--surface-0);padding:var(--space-3)}.tenant-item p{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--ink-500);margin:0;font-weight:700}.tenant-item strong{margin-top:var(--space-1);font-size:var(--text-md);word-break:break-all;display:block}.tenant-item-wide{grid-column:1/-1}.tenant-pill{margin-top:var(--space-1);border-radius:var(--radius-full);border:1px solid var(--mint-600);display:inline-flex}@supports (color:color-mix(in lab, red, red)){.tenant-pill{border:1px solid color-mix(in oklab, var(--mint-600), white 60%)}}.tenant-pill{background:var(--mint-100);color:var(--mint-800);padding:var(--space-1) var(--space-3);font-size:var(--text-xs);font-weight:700}.platform-config-form{margin-top:var(--space-4)}.platform-list-toolbar{align-items:end;gap:var(--space-3);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.platform-search,.platform-page-size{gap:var(--space-1);font-size:var(--text-sm);color:var(--ink-700);font-weight:500;display:grid}.platform-search{flex:1;min-width:min(400px,100%)}.platform-page-size select{min-width:86px}.platform-results{font-size:var(--text-sm);color:var(--ink-500);margin:0}.platform-badge{border-radius:var(--radius-full);border:1px solid var(--line);padding:var(--space-1) var(--space-3);font-size:var(--text-xs);letter-spacing:.02em;background:var(--surface-0);color:var(--ink-900);align-items:center;font-weight:700;display:inline-flex}.platform-badge-status-active{background:var(--status-confirmed-bg);color:var(--status-confirmed-fg);border-color:var(--status-confirmed-border)}.platform-badge-status-suspended{background:var(--status-cancelled-bg);color:var(--status-cancelled-fg);border-color:var(--status-cancelled-border)}.platform-badge-status-trial{background:var(--status-scheduled-bg);color:var(--status-scheduled-fg);border-color:var(--status-scheduled-border)}.platform-badge-plan-free{background:var(--surface-2);color:var(--ink-700)}.platform-badge-plan-basic{background:var(--info-bg);color:var(--info-fg);border-color:var(--info-border)}.platform-badge-plan-pro{background:var(--success-bg);color:var(--success-fg);border-color:var(--success-border)}.platform-badge-plan-enterprise{color:#6c2b90;background:#f7edff;border-color:#d0b0e6}.platform-pagination{margin-top:var(--space-3);justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.platform-pagination p{font-size:var(--text-sm);color:var(--ink-500);margin:0}.branding-layout{gap:var(--space-8);flex-direction:column;display:flex}.branding-block{gap:var(--space-4);flex-direction:column;display:flex}.branding-block-label{font-size:var(--text-xs);color:var(--ink-500);text-transform:uppercase;letter-spacing:.07em;font-weight:700}.branding-hint{font-size:var(--text-xs);color:var(--ink-400)}.branding-logo-area{gap:var(--space-5);align-items:center;display:flex}.branding-logo-preview{border:1.5px dashed var(--border);border-radius:var(--radius);background:var(--surface-2);flex-shrink:0;justify-content:center;align-items:center;width:88px;height:88px;display:flex;overflow:hidden}.branding-logo-img{object-fit:contain;width:100%;height:100%}.branding-logo-empty{color:var(--ink-300);justify-content:center;align-items:center;gap:var(--space-1);font-size:var(--text-xs);flex-direction:column;display:flex}.branding-logo-right{gap:var(--space-2);flex-direction:column;display:flex}.branding-file-trigger{cursor:pointer;display:inline-block}.branding-filename{font-size:var(--text-xs);color:var(--ink-500);font-style:italic}.branding-colors-grid{gap:var(--space-4);grid-template-columns:repeat(3,1fr);display:grid}.branding-color-card{gap:var(--space-3);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-4);flex-direction:column;display:flex}.branding-color-card-header{justify-content:space-between;align-items:baseline;gap:var(--space-2);display:flex}.branding-color-name{font-size:var(--text-sm);color:var(--ink-700);font-weight:600}.branding-color-default{font-size:var(--text-xs);color:var(--ink-400);font-family:monospace}.branding-color-input-row{align-items:center;gap:var(--space-2);display:flex}.branding-picker{border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;background:0 0;flex-shrink:0;width:36px;height:36px;padding:2px}.branding-hex{width:100%;font-family:monospace;font-size:var(--text-sm)}.branding-swatch-bar{border-radius:999px;width:100%;height:6px;display:block}.branding-top-row{gap:var(--space-6);grid-template-columns:1fr 1fr;align-items:start;display:grid}.branding-logo-block,.branding-preview-block{gap:var(--space-3);flex-direction:column;display:flex}.branding-color-role{font-size:var(--text-xs);color:var(--ink-400);margin-left:auto}.brand-mockup{border-radius:var(--radius-lg);border:1px solid var(--border);min-height:140px;overflow:hidden}.brand-mockup-header{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);display:flex}.brand-mockup-logo-slot{border-radius:var(--radius);flex-shrink:0;width:28px;height:28px;position:relative;overflow:hidden}.brand-mockup-logo{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.brand-mockup-logo-placeholder{border-radius:var(--radius);background:#ffffff4d;width:100%;height:100%}.brand-mockup-nav{gap:var(--space-2);margin-left:auto;display:flex}.brand-mockup-nav span{border-radius:999px;width:28px;height:8px;display:block}.brand-mockup-body{gap:var(--space-3);padding:var(--space-4);display:flex}.brand-mockup-card{border-radius:var(--radius);padding:var(--space-3);gap:var(--space-2);background:#ffffffd9;flex-direction:column;flex:1;display:flex}.brand-mockup-line{border-radius:999px;height:6px}.brand-mockup-btn{border-radius:var(--radius);width:50%;height:14px;margin-top:var(--space-1);opacity:.85}.bk-page{background:#f1f5f9;flex-direction:column;min-height:100dvh;display:flex}.bk-topbar{z-index:50;background:0 0;position:sticky;top:0}.bk-header{flex-shrink:0;padding:14px 16px}.bk-header-inner{justify-content:space-between;align-items:center;max-width:680px;margin:0 auto;display:flex}.bk-header-center{flex:1;justify-content:center;align-items:center;gap:10px;min-width:0;padding:0 8px;display:flex;overflow:hidden}.bk-back-btn{color:#fff;cursor:pointer;background:#ffffff2e;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;transition:background .15s;display:flex}.bk-back-btn:hover{background:#ffffff47}.bk-back-placeholder{flex-shrink:0;width:36px;height:36px}.bk-logo{object-fit:contain;border-radius:8px;width:auto;height:38px}.bk-clinic-name{color:#fff;letter-spacing:-.02em;white-space:nowrap;text-overflow:ellipsis;font-size:1.05rem;font-weight:700;overflow:hidden}.bk-progress-wrap{background:#0000001a;flex-shrink:0;height:3px}.bk-progress-bar{height:100%;transition:width .4s}.bk-steps{flex-shrink:0;justify-content:center;gap:10px;padding:20px 24px 0;display:flex}.bk-step-dot{color:#94a3b8;border:2px solid #cbd5e1;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;font-size:.72rem;font-weight:700;transition:all .2s;display:flex}.bk-step-dot.active{color:#fff;font-size:.75rem}.bk-step-dot.done{color:var(--bp);background:0 0;font-size:.82rem}.bk-main{flex:1;justify-content:center;align-items:flex-start;padding:24px 20px 56px;display:flex}.bk-card{background:#fff;border-radius:20px;width:100%;max-width:680px;padding:40px 36px;animation:.25s bk-rise;box-shadow:0 4px 24px #0f172a14,0 1px 4px #0f172a0a}@keyframes bk-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.bk-step-content{flex-direction:column;gap:24px;display:flex}.bk-step-title{color:#0f172a;letter-spacing:-.03em;margin:0;font-family:inherit;font-size:1.55rem;font-weight:800;line-height:1.2}.bk-step-sub{color:#64748b;margin:-12px 0 0;font-size:1.03rem;line-height:1.5}.bk-identity-choices{grid-template-columns:1fr 1fr;gap:14px;display:grid}.bk-choice-card{cursor:pointer;text-align:center;background:#fff;border:2px solid #e2e8f0;border-radius:14px;flex-direction:column;align-items:center;gap:8px;padding:24px 18px;transition:all .15s;display:flex}.bk-choice-card:hover{border-color:var(--bp-border);transform:translateY(-2px);box-shadow:0 4px 16px #00000014}.bk-choice-card strong{color:#0f172a;font-size:1.05rem;font-weight:700}.bk-choice-card span{color:#94a3b8;font-size:.9rem;line-height:1.4}.bk-choice-icon{font-size:2rem}.bk-doc-form{flex-direction:column;gap:14px;display:flex}.bk-doc-row{gap:10px;display:flex}.bk-doc-actions{justify-content:flex-end;align-items:center;display:flex}.bk-select,.bk-input{color:#0f172a;background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;outline:none;width:100%;padding:12px 14px;font-family:inherit;font-size:16px;transition:border-color .15s,box-shadow .15s}.bk-select:focus,.bk-input:focus{border-color:var(--bp);box-shadow:0 0 0 3px var(--bp-light)}.bk-select{flex-shrink:0;width:auto}.bk-textarea{resize:vertical;min-height:72px;font-family:inherit;line-height:1.5}.bk-greeting{border:1.5px solid;border-radius:12px;align-items:flex-start;gap:14px;padding:16px 18px;display:flex}.bk-greeting-icon{flex-shrink:0;font-size:1.6rem}.bk-greeting strong{color:#0f172a;font-size:1.1rem;font-weight:700;display:block}.bk-greeting p{color:#64748b;margin:4px 0 0;font-size:.95rem;line-height:1.5}.bk-suggestions{flex-direction:column;gap:12px;display:flex}.bk-suggestions-label{text-transform:uppercase;letter-spacing:.07em;color:#94a3b8;margin:0 0 2px;font-size:.7rem;font-weight:700}.bk-suggestion-card{cursor:pointer;text-align:left;background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;flex-direction:column;align-items:flex-start;gap:4px;padding:14px 16px;transition:all .15s;display:flex}.bk-suggestion-card:hover,.bk-suggestion-card.selected{border-color:var(--bp-border);box-shadow:0 2px 12px #00000012}.bk-suggestion-card strong{color:#0f172a;font-size:1rem;font-weight:700}.bk-suggestion-card span:last-child{color:#64748b;font-size:.9rem;line-height:1.4}.bk-suggestion-badge{color:#fff;letter-spacing:.02em;border-radius:999px;margin-bottom:2px;padding:3px 9px;font-size:.67rem;font-weight:700;display:inline-block}.bk-lookup-result{flex-direction:column;gap:20px;display:flex}.bk-not-found-inline{flex-direction:column;gap:16px;display:flex}.bk-not-found-inline p{color:#64748b;margin:0;font-size:1rem;line-height:1.5}.bk-services-grid{flex-direction:column;gap:10px;display:flex}.bk-service-card{cursor:pointer;text-align:left;background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;transition:all .15s;display:flex}.bk-service-card:hover{border-color:var(--bp-border);box-shadow:0 2px 10px #0000000f}.bk-service-card strong{color:#0f172a;font-size:1rem;font-weight:700}.bk-service-meta{color:#64748b;white-space:nowrap;flex-direction:column;flex-shrink:0;align-items:flex-end;gap:2px;font-size:.9rem;display:flex}.bk-service-meta span:first-child{color:#0f172a;font-size:.97rem;font-weight:700}.bk-professionals-grid{grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:12px;display:grid}.bk-professional-card{cursor:pointer;text-align:center;background:#fff;border:1.5px solid #e2e8f0;border-radius:14px;flex-direction:column;align-items:center;gap:10px;padding:20px 14px;transition:all .15s;display:flex}.bk-professional-card:hover{border-color:var(--bp-border);transform:translateY(-2px);box-shadow:0 4px 16px #00000014}.bk-professional-card strong{color:#0f172a;font-size:.95rem;font-weight:700}.bk-professional-avatar{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;font-size:1rem;font-weight:800;display:flex}.bk-professional-specialty{color:#94a3b8;font-size:.85rem;line-height:1.4}.bk-calendar{border:1.5px solid #e2e8f0;border-radius:14px;overflow:hidden}.bk-cal-header{background:#f8fafc;border-bottom:1.5px solid #e2e8f0;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.bk-cal-month{color:#334155;text-transform:capitalize;letter-spacing:-.01em;font-size:.97rem;font-weight:700}.bk-cal-nav{cursor:pointer;color:#64748b;background:#fff;border:1.5px solid #e2e8f0;border-radius:8px;padding:4px 10px;font-size:1rem;line-height:1;transition:all .12s}.bk-cal-nav:hover{background:#f1f5f9;border-color:#cbd5e1}.bk-cal-days{grid-template-columns:repeat(7,1fr);display:grid}.bk-cal-day{cursor:pointer;background:0 0;border:none;border-radius:0;flex-direction:column;align-items:center;gap:2px;padding:10px 4px;font-family:inherit;transition:all .12s;display:flex}.bk-cal-day:hover:not(.past){background:#f1f5f9}.bk-cal-day.past{opacity:.3;cursor:default}.bk-cal-day.selected{border-radius:8px}.bk-cal-day-name{text-transform:capitalize;color:#94a3b8;letter-spacing:.02em;font-size:.78rem;font-weight:700}.bk-cal-day-num{color:#0f172a;font-size:1.05rem;font-weight:700}.bk-cal-day.selected .bk-cal-day-name,.bk-cal-day.selected .bk-cal-day-num{color:#fff}.bk-slots{flex-direction:column;gap:12px;display:flex}.bk-slots-label{text-transform:uppercase;letter-spacing:.07em;color:#94a3b8;margin:0;font-size:.7rem;font-weight:700}.bk-slots-grid{flex-wrap:wrap;gap:8px;display:flex}.bk-slot{cursor:pointer;color:#334155;background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;padding:9px 16px;font-family:inherit;font-size:.94rem;font-weight:700;transition:all .12s}.bk-slot:hover{border-color:var(--bp-border);background:var(--bp-light);color:var(--bp)}.bk-slots-loading,.bk-slots-empty{color:#94a3b8;text-align:center;padding:16px 0;font-size:.92rem}.bk-details-form{flex-direction:column;gap:20px;display:flex}.bk-form-section{flex-direction:column;gap:10px;display:flex}.bk-form-section-label{color:#94a3b8;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid #e2e8f0;margin:0;padding-bottom:4px;font-size:.72rem;font-weight:700}.bk-form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.bk-label-narrow{max-width:120px}.bk-label{color:#334155;flex-direction:column;gap:5px;font-size:.9rem;font-weight:600;display:flex}.bk-label span{align-items:center;gap:4px;display:flex}.bk-required{color:var(--bp,#003153);font-size:.85em;font-weight:700}.bk-optional{color:#94a3b8;font-size:.85rem;font-weight:400}.bk-summary-mini{color:#475569;border:1.5px solid;border-radius:12px;flex-direction:column;gap:4px;padding:14px 18px;font-size:.95rem;line-height:1.5;display:flex}.bk-summary-mini strong{color:#0f172a;font-size:1.05rem}.bk-btn-primary{color:#fff;cursor:pointer;letter-spacing:-.01em;border:none;border-radius:10px;padding:14px 26px;font-family:inherit;font-size:1rem;font-weight:700;transition:opacity .15s,transform .1s,box-shadow .15s}.bk-btn-primary:hover:not(:disabled){opacity:.88;transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.bk-btn-primary:disabled{opacity:.4;cursor:default}.bk-btn-primary.bk-btn-full{width:100%}.bk-btn-ghost{color:#64748b;cursor:pointer;background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;padding:11px 18px;font-family:inherit;font-size:.88rem;font-weight:600;transition:all .12s}.bk-btn-ghost:hover{color:#334155;background:#f8fafc;border-color:#cbd5e1}.bk-nav{border-top:1.5px solid #f1f5f9;justify-content:flex-end;align-items:center;margin-top:4px;padding-top:12px;display:flex}.bk-error{color:#dc2626;margin:0;font-size:.92rem}.bk-success{text-align:center;align-items:center}.bk-success-icon{width:72px;height:72px;color:var(--bp);border:2px solid;border-radius:50%;justify-content:center;align-items:center;font-size:2rem;display:flex}.bk-confirmation-card{border:1.5px solid;border-radius:14px;width:100%;overflow:hidden}.bk-conf-row{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;font-size:.97rem;display:flex}.bk-conf-row:last-child{border-bottom:none}.bk-conf-row span{color:#94a3b8;flex-shrink:0}.bk-conf-row strong{color:#0f172a;text-align:right;font-weight:700}.bk-conf-note{color:#94a3b8;max-width:380px;font-size:.9rem;line-height:1.5}.bk-contact-card{background:#f8fafc;border:1px solid;border-radius:14px;flex-direction:column;gap:10px;width:100%;max-width:440px;padding:20px 24px;display:flex}.bk-contact-title{color:#475569;text-transform:uppercase;letter-spacing:.04em;margin:0;font-size:.8rem;font-weight:700}.bk-contact-address{color:#334155;margin:0;font-size:.97rem;line-height:1.4}.bk-contact-actions{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.bk-contact-btn{border-radius:8px;align-items:center;padding:8px 16px;font-size:.85rem;font-weight:600;text-decoration:none;transition:opacity .15s;display:inline-flex}.bk-contact-btn:hover{opacity:.85}.contact-url-preview{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:8px;flex-direction:column;gap:10px;padding:14px 16px;display:flex}.fb-page{background:radial-gradient(circle at top, var(--fb-primary) 0%, #f3f4f6 45%, #eef2f7 100%);min-height:100vh;padding:24px 16px}@supports (color:color-mix(in lab, red, red)){.fb-page{background:radial-gradient(circle at top, color-mix(in srgb, var(--fb-primary) 8%, #fff) 0%, #f3f4f6 45%, #eef2f7 100%)}}.fb-card{background:var(--fb-secondary);border-top:6px solid var(--fb-primary);border-radius:18px;max-width:680px;margin:0 auto;padding:26px 22px;box-shadow:0 20px 48px #0f172a1f}.fb-header h1{color:var(--fb-primary);margin:6px 0 8px;font-size:clamp(1.6rem,2.4vw,2rem);line-height:1.1}.fb-header p{color:#334155;margin:0}.fb-clinic{color:#0f172a;margin:0;font-weight:700}.fb-summary{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;margin-top:18px;padding:14px}.fb-summary p{color:#0f172a;gap:6px;margin:0;padding:5px 0;display:flex}.fb-summary span:first-child{font-weight:700}.fb-cap{text-transform:capitalize}.fb-form{gap:14px;margin-top:18px;display:grid}.fb-rating{justify-content:center;gap:8px;display:flex}.fb-star{color:#cbd5e1;cursor:pointer;background:0 0;border:none;font-size:34px;line-height:1;transition:transform .12s,color .12s}.fb-star:hover{transform:translateY(-1px)}.fb-star.is-active{color:var(--fb-primary)}.fb-comment{width:100%;font:inherit;resize:vertical;border:1px solid #d1d5db;border-radius:10px;min-height:108px;padding:12px 14px}.fb-submit{background:var(--fb-primary);color:#fff;cursor:pointer;border:none;border-radius:999px;padding:12px 18px;font-weight:700}.fb-submit:disabled{opacity:.7;cursor:not-allowed}.fb-thanks{color:#065f46;background:#ecfdf5;border:1px solid #d1fae5;border-radius:10px;margin-top:18px;padding:14px}.fb-status{text-align:center;color:#334155;margin:0}.fb-status-error{color:#b91c1c}.contact-url-label{color:#64748b;text-transform:uppercase;letter-spacing:.04em;margin:0;font-size:.78rem;font-weight:600}.contact-map-iframe{border:0;border-radius:8px;width:100%;height:260px}.contact-url-links{flex-wrap:wrap;gap:8px;display:flex}.bk-page-center{justify-content:center;align-items:center}.bk-splash{flex-direction:column;align-items:center;gap:18px;display:flex}.bk-splash-spinner{border:3px solid #e2e8f0;border-top-color:#94a3b8;border-radius:50%;width:46px;height:46px;animation:.8s linear infinite bk-spin}.bk-splash-text{color:#94a3b8;letter-spacing:.01em;margin:0;font-size:.87rem}@keyframes bk-spin{to{transform:rotate(360deg)}}.bk-error-screen{text-align:center;background:#fff;border-radius:24px;flex-direction:column;align-items:center;gap:18px;width:calc(100% - 40px);max-width:420px;padding:56px 44px;display:flex;box-shadow:0 4px 32px #0f172a14}.bk-error-icon{color:#cbd5e1}.bk-error-title{color:#0f172a;letter-spacing:-.02em;margin:0;font-size:1.2rem;font-weight:800}.bk-error-body{color:#64748b;margin:-4px 0 0;font-size:.9rem;line-height:1.6}.bk-retry-btn{color:#334155;cursor:pointer;background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;align-items:center;gap:8px;margin-top:4px;padding:12px 24px;font-family:inherit;font-size:.9rem;font-weight:700;transition:all .15s;display:inline-flex}.bk-retry-btn:hover{background:#f8fafc;border-color:#cbd5e1;transform:translateY(-1px);box-shadow:0 4px 12px #00000012}@media (max-width:520px){.bk-card{border-radius:16px;padding:24px 20px}.bk-step-content{gap:18px}.bk-step-title{font-size:1.35rem}.bk-identity-choices,.bk-form-row{grid-template-columns:1fr}.bk-professionals-grid{grid-template-columns:repeat(2,1fr)}.bk-steps{gap:6px;padding:16px 16px 0}.bk-step-dot{width:26px;height:26px;font-size:.65rem}.bk-main{padding:16px 12px 40px}}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (max-width:1200px){.shell{grid-template-columns:240px minmax(0,1fr)}}@media (max-width:980px){.mobile-nav-toggle{display:flex}.shell{grid-template-columns:1fr}.sidebar{z-index:100;width:280px;transition:transform var(--duration-slow) var(--ease-out);box-shadow:none;border-right:1px solid var(--line);position:fixed;top:0;left:0;transform:translate(-100%)}.sidebar.sidebar-open{box-shadow:var(--shadow-xl);transform:translate(0)}.sidebar-backdrop{z-index:99;animation:fade-in var(--duration-normal);background:#1814104d;position:fixed;inset:0}.topbar,.module-head{flex-direction:column}.session-box{width:100%;min-width:0}thead,tbody,tr{min-width:660px}}@media (max-width:640px){.content-wrap{padding:var(--space-4) var(--space-3) var(--space-6)}.brand-block p{font-size:var(--text-lg)}.card{padding:var(--space-4)}.card h3{font-size:var(--text-md)}.auth-card{padding:var(--space-5)}.toast-container{right:var(--space-3);left:var(--space-3);bottom:var(--space-4)}.toast{max-width:100%}.modal-overlay{padding:var(--space-3)}.modal-panel{padding:var(--space-4)}}@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-ease{syntax:"*";inherits:false}
