/*! tailwindcss v4.1.14 | MIT License | https://tailwindcss.com */@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;--color-white:#fff;--spacing:.25rem;--container-md:28rem;--container-2xl:42rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--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-bold:700;--radius-xs:.125rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--shadow-xs:0 1px 2px 0 #0000000d;--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);--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--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{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::-webkit-file-upload-button{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{color:inherit;border-top-width:1px;height:0}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;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{position:relative;vertical-align:baseline;font-size:75%;line-height:0}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{display:block;vertical-align:middle}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}::-webkit-file-upload-button{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:-webkit-any([multiple],[size])) optgroup{font-weight:bolder}:where(select:-moz-any([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:-webkit-any([multiple],[size])) optgroup option{padding-inline-start:20px}:where(select:-moz-any([multiple],[size])) optgroup option{padding-inline-start:20px}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::-webkit-file-upload-button{margin-inline-end:4px}::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{text-align:inherit;min-height:1lh}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-year-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-month-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-day-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-hour-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-minute-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-second-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-millisecond-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-meridiem-field{padding-block-start:0;padding-block-end:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button{appearance:button}input:where([type=button],[type=reset],[type=submit]){appearance:button}::-webkit-file-upload-button{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 utilities{.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{position:absolute;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.z-10{z-index:10}.\!container{width:100%!important}@media (min-width:40rem){.\!container{max-width:40rem!important}}@media (min-width:48rem){.\!container{max-width:48rem!important}}@media (min-width:64rem){.\!container{max-width:64rem!important}}@media (min-width:80rem){.\!container{max-width:80rem!important}}@media (min-width:96rem){.\!container{max-width:96rem!important}}.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}}.mx-auto{margin-inline-start:auto;margin-inline-end:auto}.mt-6{margin-top:calc(var(--spacing)*6)}.mt-8{margin-top:calc(var(--spacing)*8)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-6{margin-bottom:calc(var(--spacing)*6)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.h-4{height:calc(var(--spacing)*4)}.min-h-\[140px\]{min-height:140px}.min-h-screen{min-height:100vh}.w-4{width:calc(var(--spacing)*4)}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-md{max-width:var(--container-md)}.min-w-\[0px\]{min-width:0}.flex-1{flex:1}.flex-shrink,.shrink{flex-shrink:1}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.cursor-pointer{cursor:pointer}.resize{resize:both}.resize-y{resize:vertical}.appearance-none{appearance:none}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items: center}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing)*2)}.gap-4{gap:calc(var(--spacing)*4)}.overflow-hidden{overflow:hidden}.rounded{border-radius:.25rem}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-\[\#fbf0df\]{border-color:#fbf0df}.bg-\[\#1a1a1a\]{background-color:#1a1a1a}.bg-\[\#fbf0df\]{background-color:#fbf0df}.bg-transparent{background-color:#0000}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-5{padding-inline:calc(var(--spacing)*5)}.py-1{padding-block:calc(var(--spacing)*1)}.py-1\.5{padding-block:calc(var(--spacing)*1.5)}.py-3{padding-block:calc(var(--spacing)*3)}.py-20{padding-block:calc(var(--spacing)*20)}.text-center{text-align:center}.text-left{text-align:left}.font-mono{font-family:var(--font-mono)}.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-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.whitespace-nowrap{white-space:nowrap}.text-\[\#1a1a1a\]{color:#1a1a1a}.text-\[\#fbf0df\]{color:#fbf0df}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.placeholder-\[\#fbf0df\]\/40::placeholder{color:#fbf0df66;color:color(display-p3 .976839 .942651 .881576/.4);color:lab(95.3308% 1.75327 9.63873/.4)}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.backdrop-blur{--tw-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.backdrop-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))}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.outline-none{--tw-outline-style:none;outline-style:none}.focus-within\:border-\[\#f3d5a3\]:focus-within{border-color:#f3d5a3}@media (hover:hover){.hover\:-translate-y-px:hover{--tw-translate-y:-1px;translate:var(--tw-translate-x)var(--tw-translate-y)}}@media (hover:hover){.hover\:bg-\[\#f3d5a3\]:hover{background-color:#f3d5a3}}.focus\:border-\[\#f3d5a3\]:focus{border-color:#f3d5a3}.focus\:text-white:focus{color:var(--color-white)}}:root{--buncss-light: ;--buncss-dark:initial;color-scheme:dark;color:var(--text);background-color:var(--bg);--brand-primary:oklch(.55 .15 220);--brand-primary-rgb:0,139,189;--primary:var(--brand-primary);--brand-secondary:oklch(.55 .15 220/.2);--brand-text:#fff;--brand-text-muted:#ffffffbf;--brand-bg:oklch(.55 .15 220);--brand-border:oklch(.55 .15 220/.2);--brand-hover:oklch(.55 .15 220/.1);--brand-shadow:0 6px 14px oklch(.15 .02 220/.16);--brand-shadow-hover:0 8px 18px oklch(.15 .02 220/.2);--brand-grad:oklch(.55 .15 220);--color-accent:oklch(.55 .15 220);--state-error:oklch(.72 .22 20);--state-error-bg:oklch(.72 .22 20/.14);--state-error-border:oklch(.72 .22 20/.4);--state-success:oklch(.74 .19 152);--state-success-bg:oklch(.74 .19 152/.14);--state-success-border:oklch(.74 .19 152/.35);--state-warning:oklch(.82 .17 78);--state-warning-bg:oklch(.82 .17 78/.14);--state-warning-border:oklch(.82 .17 78/.35);--state-info:oklch(.74 .18 245);--state-info-bg:oklch(.74 .18 245/.14);--state-info-border:oklch(.74 .18 245/.35);--bg:oklch(.145 .004 260);--text:oklch(.93 0 0);--text-muted:oklch(.65 .005 260);--page-gradient:radial-gradient(ellipse at center,oklch(.18 .01 260/.3)0%,transparent 60%);--auth-gradient:linear-gradient(180deg,oklch(.16 .005 260),oklch(.12 .003 260));--card-bg:oklch(.195 .006 260);--card-border:oklch(.28 .006 260);--card-shadow:0 2px 8px oklch(0 0 0/.3),0 8px 24px oklch(0 0 0/.25);--card-header-shadow:inset 0 -1px 0 oklch(.28 .006 260);--glass-bg:oklch(.17 .005 260/.82);--glass-border:oklch(.3 .006 260);--glass-shadow:0 1px 4px oklch(0 0 0/.12);--sidebar-shadow:1px 0 12px oklch(0 0 0/.2);--popup-glass-bg:oklch(.2 .006 260/.94);--popup-glass-border:oklch(.32 .006 260);--popup-glass-shadow:0 8px 30px oklch(0 0 0/.4);--popup-glass-blur:16px;--popup-badge-bg-mix:88%;--popup-badge-border-mix:70%;--input-bg:oklch(.17 .005 260);--input-border:oklch(.3 .006 260);--placeholder-color:oklch(.5 .005 260);--input-focus-ring:0 0 0 3px oklch(.55 .15 220/.2);--hover-bg:oklch(.93 0 0/.07);--hover-bg-subtle:oklch(.93 0 0/.04);--inset-bg:oklch(1 0 0/.03);--inset-border:oklch(1 0 0/.05);--inset-separator:oklch(1 0 0/.06);--border-subtle:oklch(.28 .005 260);--border-section:oklch(.24 .004 260);--nav-active-shadow:0 2px 8px oklch(.55 .15 220/.2);--nav-children-bg:oklch(0 0 0/.15);--avatar-shadow:0 2px 8px oklch(.55 .15 220/.25);--scrollbar-thumb:oklch(.35 .005 260);--scrollbar-thumb-hover:oklch(.42 .005 260);--toggle-bg:oklch(.22 .005 260);--toggle-color:oklch(.93 0 0);--auth-overflow:hidden;--transition-fast:.15s ease;--sidebar-width:280px;--header-height:80px;--bottomnav-height:56px;--font-2xl:1.5rem;--font-xl:1.25rem;--font-lg:1.125rem;--font-base:.875rem;--font-sm:.8125rem;--font-xs:.75rem;--font-2xs:.625rem;--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;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-pill:9999px;--shadow-xs:0 1px 2px oklch(0 0 0/.2);--shadow-sm:0 1px 3px oklch(0 0 0/.2),0 2px 8px oklch(0 0 0/.15);--shadow-md:0 2px 4px oklch(0 0 0/.2),0 6px 16px oklch(0 0 0/.2);--shadow-lg:0 4px 8px oklch(0 0 0/.2),0 12px 32px oklch(0 0 0/.3);--shadow-xl:0 6px 16px oklch(0 0 0/.25),0 20px 48px oklch(0 0 0/.4);--shadow-glow:0 0 0 1px var(--brand-primary),0 0 16px oklch(.55 .15 220/.3);--page-mesh:radial-gradient(ellipse at 20% 30%,oklch(.2 .015 260/.5)0%,transparent 50%),radial-gradient(ellipse at 80% 70%,oklch(.18 .01 280/.35)0%,transparent 50%),var(--bg);--z-dropdown:50;--z-sticky:80;--z-bottom-nav:100;--z-sidebar-overlay:149;--z-sidebar:150;--z-modal-overlay:200;--z-modal:201;--z-notification:300;--z-popover:400;--z-toast:500;--z-drag-ghost:600;--content-max-width:1280px;--booking-bg:var(--bg);--booking-text:var(--text);--booking-muted:var(--text-muted);--booking-card-bg:var(--card-bg);--booking-card-border:var(--card-border);--booking-card-shadow:var(--card-shadow);--booking-card-hover-shadow:0 8px 32px oklch(0 0 0/.35);--booking-summary-bg:oklch(.17 .005 260/.92);--booking-summary-border:oklch(.3 .006 260);--booking-hero-overlay:linear-gradient(to bottom,transparent 30%,oklch(0 0 0/.55));--booking-badge-bg:oklch(.55 .15 220/.12);--booking-badge-text:oklch(.75 .12 220);--booking-border:oklch(.28 .005 260);--booking-breadcrumb-bg:oklch(.19 .005 260/.85);--booking-breadcrumb-border:oklch(.3 .006 260);--booking-chip-bg:oklch(.93 0 0/.05);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,Arial,sans-serif}:root.light{--buncss-light:initial;--buncss-dark: ;color-scheme:light;--brand-primary:oklch(.55 .15 220);--primary:var(--brand-primary);--brand-secondary:oklch(.55 .15 220/.1);--brand-border:oklch(.55 .15 220/.25);--brand-bg:oklch(.55 .15 220);--brand-shadow:0 4px 12px oklch(.55 .15 220/.18);--brand-shadow-hover:0 6px 16px oklch(.55 .15 220/.22);--brand-text:#fff;--brand-text-muted:#ffffffe6;--brand-grad:oklch(.5 .14 220);--color-accent:oklch(.55 .15 220);--state-error:oklch(.52 .22 22);--state-error-bg:oklch(.96 .02 22);--state-error-border:oklch(.86 .08 22);--state-success:oklch(.48 .17 150);--state-success-bg:oklch(.96 .02 150);--state-success-border:oklch(.86 .08 150);--state-warning:oklch(.52 .17 72);--state-warning-bg:oklch(.96 .02 72);--state-warning-border:oklch(.86 .08 72);--state-info:oklch(.5 .17 242);--state-info-bg:oklch(.96 .02 242);--state-info-border:oklch(.86 .08 242);--bg:oklch(.97 .005 220);--text:oklch(.2 .02 220);--text-muted:oklch(.4 .02 220);--page-gradient:none;--auth-gradient:linear-gradient(180deg,oklch(.96 .008 220),oklch(.94 .01 220));--card-bg:oklch(1 0 0);--card-border:oklch(.88 .008 220);--card-shadow:0 1px 3px #00000014,0 4px 14px #0000000f;--card-header-shadow:none;--glass-bg:oklch(1 0 0/.88);--glass-border:oklch(.86 .008 220);--glass-shadow:0 1px 4px #0000000f;--sidebar-shadow:1px 0 8px #0000000f;--popup-glass-bg:oklch(1 0 0/.85);--popup-glass-border:oklch(.84 .01 220);--popup-glass-shadow:0 10px 30px #00000024;--popup-glass-blur:12px;--popup-badge-bg-mix:82%;--popup-badge-border-mix:64%;--input-bg:oklch(1 0 0);--input-border:oklch(.84 .01 220);--placeholder-color:oklch(.56 .01 220);--input-focus-ring:0 0 0 3px oklch(.55 .15 220/.18);--hover-bg:oklch(.55 .15 220/.08);--hover-bg-subtle:oklch(.55 .15 220/.05);--inset-bg:oklch(0 0 0/.024);--inset-border:oklch(0 0 0/.055);--inset-separator:oklch(0 0 0/.06);--border-subtle:oklch(.88 .008 220);--border-section:oklch(.9 .005 220);--nav-active-shadow:0 1px 4px oklch(.55 .15 220/.12);--nav-children-bg:oklch(.97 .005 220);--avatar-shadow:0 2px 6px oklch(.55 .15 220/.2);--scrollbar-thumb:oklch(.78 .005 220);--scrollbar-thumb-hover:oklch(.7 .01 220);--toggle-bg:oklch(.94 .005 220);--toggle-color:oklch(.2 .02 220);--auth-overflow:visible;--shadow-xs:0 1px 2px #0000000a;--shadow-sm:0 1px 2px #0000000a,0 2px 6px #00000008;--shadow-md:0 1px 3px #0000000d,0 4px 14px #0000000f;--shadow-lg:0 2px 6px #0000000d,0 10px 28px #00000014;--shadow-xl:0 4px 12px #0000000f,0 16px 40px #0000001a;--shadow-glow:0 0 0 1px var(--brand-primary),0 0 12px oklch(.55 .15 220/.15);--page-mesh:radial-gradient(ellipse at 20% 30%,oklch(.92 .02 220/.4)0%,transparent 50%),radial-gradient(ellipse at 80% 70%,oklch(.9 .02 260/.25)0%,transparent 50%),var(--bg)}.card{background:var(--card-bg);border:1px solid var(--card-border);box-shadow:var(--card-shadow);color:inherit;border-radius:1rem;transition:background-color .15s,box-shadow .15s,transform .15s}.card .card-header{background:var(--brand-primary);color:var(--brand-text);box-shadow:var(--card-header-shadow)}:root.light{--booking-bg:var(--bg);--booking-text:var(--text);--booking-muted:var(--text-muted);--booking-card-bg:var(--card-bg);--booking-card-border:var(--card-border);--booking-card-shadow:var(--card-shadow);--booking-card-hover-shadow:0 6px 24px #0000001a;--booking-summary-bg:oklch(1 0 0/.92);--booking-summary-border:oklch(.86 .008 220);--booking-hero-overlay:linear-gradient(to bottom,transparent 30%,oklch(0 0 0/.45));--booking-badge-bg:oklch(.55 .15 220/.08);--booking-badge-text:oklch(.45 .14 220);--booking-border:oklch(.88 .008 220);--booking-breadcrumb-bg:oklch(1 0 0/.88);--booking-breadcrumb-border:oklch(.88 .008 220);--booking-chip-bg:oklch(0 0 0/.03)}@keyframes tm-fade-in{0%{opacity:0}to{opacity:1}}@keyframes tm-fade-in-up{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes tm-scale-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes tm-slide-in-right{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}@keyframes tm-pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes tm-spin{to{transform:rotate(360deg)}}@keyframes tm-dropdown-in{0%{opacity:0;transform:translateY(-6px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.tm-animate-enter{animation:tm-fade-in-up .25s ease both}.tm-animate-fade{animation:tm-fade-in .2s ease both}.tm-animate-scale{animation:tm-scale-in .25s ease-out both}.tm-animate-slide{animation:tm-slide-in-right .25s ease both}.tm-stagger{animation-delay:calc(var(--tm-stagger-index,0)*40ms)}.tm-page{max-width:var(--content-max-width);padding:var(--space-8)var(--space-8);width:100%;margin-left:auto;margin-right:auto}@media (max-width:768px){.tm-page{padding:var(--space-5)var(--space-4)}}@media (max-width:640px){.tm-page-header{margin-bottom:var(--space-4);gap:.5rem}.tm-page-title{font-size:var(--font-lg)}.tm-page-subtitle{font-size:var(--font-xs);margin-top:.125rem}}.tm-page-mesh{background:var(--page-mesh);min-height:100%}.tm-page-header{display:flex;justify-content:space-between;align-items: center;gap:var(--space-4);margin-bottom:var(--space-6);flex-wrap:wrap}.tm-page-title{font-size:var(--font-2xl);letter-spacing:-.025em;color:var(--text);font-weight:700;line-height:1.2}.tm-page-subtitle{font-size:var(--font-sm);color:var(--text-muted);margin-top:var(--space-1);line-height:1.5}.tm-page-actions{display:flex;align-items: center;gap:var(--space-3);flex-shrink:0}.tm-card{background:var(--glass-bg);backdrop-filter:blur(12px)saturate(150%);-webkit-backdrop-filter:blur(12px)saturate(150%);border:1px solid var(--glass-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:var(--space-5);transition:box-shadow .2s,transform .2s}.tm-card-hoverable:hover{box-shadow:var(--shadow-lg);transform:translateY(-1px)}.tm-glass{background:var(--popup-glass-bg);backdrop-filter:blur(20px)saturate(180%);-webkit-backdrop-filter:blur(20px)saturate(180%);border:1px solid var(--popup-glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.tm-overlay{position:fixed;background:oklch(0 0 0/.5);z-index:50;animation:tm-fade-in .2s ease both;inset:0}.tm-modal-panel{position:fixed;z-index:51;width:calc(100% - var(--space-8));max-height:calc(100vh - var(--space-12));overflow-y:auto;animation:tm-scale-in .25s ease-out both;max-width:540px;top:50%;left:50%;transform:translate(-50%,-50%)}.tm-btn{display:inline-flex;justify-content:center;align-items: center;gap:var(--space-2);font-size:var(--font-base);border-radius:var(--radius-pill);cursor:pointer;user-select:none;white-space:nowrap;outline:none;border:1px solid #0000;padding:.625rem 1.25rem;transition:all .2s;font-weight:600;line-height:1}.tm-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.tm-btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.tm-btn-primary{background:var(--brand-bg);color:var(--brand-text);box-shadow:var(--brand-shadow)}.tm-btn-primary:hover{box-shadow:var(--brand-shadow-hover);filter:brightness(1.08);transform:translateY(-1px)scale(1.02)}.tm-btn-primary:active{box-shadow:var(--brand-shadow);transform:scale(.98)}.tm-btn-secondary{color:var(--brand-primary);border-color:var(--brand-border);background:0 0}.tm-btn-secondary:hover{background:var(--brand-hover);border-color:var(--brand-primary)}.tm-btn-secondary:active{transform:scale(.98)}.tm-btn-ghost{color:var(--text-muted);background:0 0;border-color:#0000}.tm-btn-ghost:hover{background:var(--hover-bg);color:var(--text)}.tm-btn-ghost:active{transform:scale(.98)}.tm-btn-danger{background:var(--state-error);color:var(--brand-text);box-shadow:0 2px 8px oklch(.7 .15 20/.2)}.tm-btn-danger:hover{filter:brightness(1.08);box-shadow:0 4px 12px oklch(.7 .15 20/.3);transform:translateY(-1px)scale(1.02)}.tm-btn-danger:active{transform:scale(.98)}.tm-btn-sm{font-size:var(--font-xs);padding:.4rem .875rem}.tm-btn-lg{padding:.75rem 1.5rem;font-size:1rem}.tm-btn-icon{border-radius:var(--radius-sm);padding:.5rem}.tm-input{display:block;font-size:var(--font-base);border-radius:var(--radius-sm);border:1px solid var(--input-border);background:var(--input-bg);color:var(--text);outline:none;width:100%;padding:.625rem .875rem;transition:border-color .2s,box-shadow .2s;line-height:1.5}.tm-input::placeholder{color:var(--placeholder-color)}.tm-input:focus{border-color:var(--brand-primary);box-shadow:0 0 0 3px oklch(.55 .15 220/.12)}.tm-input-error{border-color:var(--state-error);box-shadow:0 0 0 3px var(--state-error-bg)}.tm-input-error:focus{border-color:var(--state-error);box-shadow:0 0 0 3px var(--state-error-border)}.tm-label{display:block;font-size:var(--font-xs);letter-spacing:.025em;text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--space-2);font-weight:600}.tm-field{display:flex;flex-direction:column}.tm-field-error{font-size:var(--font-xs);color:var(--state-error);margin-top:var(--space-1)}.tm-badge{display:inline-flex;align-items: center;gap:var(--space-1);font-size:var(--font-xs);letter-spacing:.02em;border-radius:var(--radius-pill);white-space:nowrap;border:1px solid;padding:2px 10px;font-weight:500;line-height:1.5}.tm-badge-success{background:var(--state-success-bg);color:var(--state-success);border-color:var(--state-success-border)}.tm-badge-warning{background:var(--state-warning-bg);color:var(--state-warning);border-color:var(--state-warning-border)}.tm-badge-error{background:var(--state-error-bg);color:var(--state-error);border-color:var(--state-error-border)}.tm-badge-info{background:var(--state-info-bg);color:var(--state-info);border-color:var(--state-info-border)}.tm-badge-neutral{background:var(--hover-bg);color:var(--text-muted);border-color:var(--border-subtle)}.tm-empty{display:flex;justify-content:center;align-items: center;gap:var(--space-4);padding:var(--space-12)var(--space-6);text-align:center;flex-direction:column}.tm-empty-icon{display:flex;border-radius:var(--radius-lg);background:var(--brand-hover);color:var(--brand-primary);justify-content:center;align-items: center;width:56px;height:56px}.tm-empty-title{font-size:var(--font-base);color:var(--text);font-weight:600}.tm-empty-desc{font-size:var(--font-sm);color:var(--text-muted);max-width:320px;line-height:1.5}.tm-skeleton{border-radius:var(--radius-sm);background:var(--hover-bg);animation:tm-pulse 1.5s ease-in-out infinite}.tm-skeleton-text{border-radius:4px;height:.875rem}.tm-skeleton-title{border-radius:4px;width:60%;height:1.25rem}.tm-skeleton-card{border-radius:var(--radius-md);height:120px}.tm-divider{background:var(--border-section);margin:var(--space-4)0;border:none;height:1px}.tm-section-title{font-size:var(--font-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--space-3);font-weight:600}.tm-toolbar{display:flex;align-items: center;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap}.tm-toolbar-spacer{flex:1;min-width:0}.tm-stat{display:flex;gap:var(--space-1);flex-direction:column}.tm-stat-value{font-size:var(--font-2xl);letter-spacing:-.025em;color:var(--text);font-weight:700;line-height:1.2}.tm-stat-label{font-size:var(--font-xs);color:var(--text-muted);letter-spacing:.02em;font-weight:500}.tm-focusable:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.tm-transition{transition:all .2s}.tm-transition-fast{transition:all .15s}.tm-transition-colors{transition:color .15s,background-color .15s,border-color .15s}@layer base{body{display:grid;position:relative;background-color:var(--bg);place-items: center;min-width:320px;min-height:100dvh;margin:0}html,body,#root{overflow:hidden;width:100%;height:100%;min-height:100dvh}#root{display:flex}#root>*{position:relative;box-sizing:border-box;width:100%}#root>.auth-page-bg{overflow-y:auto;overflow-x:hidden;min-height:100dvh}#root>.allow-scroll{overflow:visible}.auth-page-bg{background-color:var(--bg);background-image:var(--auth-gradient),var(--page-gradient);background-repeat:no-repeat;background-size:cover,auto;background-attachment:fixed;min-height:100dvh}@media screen and (max-width:1024px){input,select,textarea,.input,.dd-trigger{font-size:16px!important}}@media (max-width:767px){button,[role=button],.cal-nav-btn,.cal-modal-close,.bubble-popup-trigger,.dd-trigger,.queue-act{min-width:44px;min-height:44px}.cal-modal-btn{min-height:44px;padding-left:1rem;padding-right:1rem}input[type=checkbox],input[type=radio]{min-width:24px;min-height:24px}}.input{background:var(--input-bg);border:1px solid var(--input-border);color:inherit;transition:background-color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.input::placeholder{color:var(--placeholder-color)}.input:focus{outline:none;border-color:var(--color-accent);box-shadow:var(--input-focus-ring)}.input.input-error{border-color:var(--state-error);box-shadow:0 0 0 3px var(--state-error-bg)}.input:disabled,.input[disabled],.dd-trigger.dd-disabled,.picker-trigger:disabled{opacity:.55;cursor:not-allowed;background:var(--input-bg);border-color:var(--card-border);color:var(--text-muted);box-shadow:none;-webkit-text-fill-color:var(--text-muted);pointer-events:auto;user-select:none}@supports (color: color-mix(in lab, red, red)){:is(.input:disabled,.input[disabled],.dd-trigger.dd-disabled,.picker-trigger:disabled){background:color-mix(in oklch,var(--input-bg)60%,var(--card-border)40%)}}.input:disabled::placeholder,.dd-trigger.dd-disabled .dd-value{color:var(--text-muted);opacity:.7}.input:disabled:focus,.dd-trigger.dd-disabled:focus,.picker-trigger:disabled:focus{outline:none;border-color:var(--card-border);box-shadow:none}.input.input-error:focus{border-color:var(--state-error);box-shadow:0 0 0 3px var(--state-error-border)}.input:-webkit-autofill{-webkit-box-shadow:0 0 0px 1000px var(--input-bg)inset!important;box-shadow:0 0 0px 1000px var(--input-bg)inset!important;-webkit-text-fill-color:var(--text)!important;background-clip:padding-box!important;transition:background-color 5000s ease-in-out!important}.input:-webkit-autofill:hover{-webkit-box-shadow:0 0 0px 1000px var(--input-bg)inset!important;box-shadow:0 0 0px 1000px var(--input-bg)inset!important;-webkit-text-fill-color:var(--text)!important;background-clip:padding-box!important;transition:background-color 5000s ease-in-out!important}.input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0px 1000px var(--input-bg)inset!important;box-shadow:0 0 0px 1000px var(--input-bg)inset!important;-webkit-text-fill-color:var(--text)!important;background-clip:padding-box!important;transition:background-color 5000s ease-in-out!important}.input:-webkit-autofill:active{-webkit-box-shadow:0 0 0px 1000px var(--input-bg)inset!important;box-shadow:0 0 0px 1000px var(--input-bg)inset!important;-webkit-text-fill-color:var(--text)!important;background-clip:padding-box!important;transition:background-color 5000s ease-in-out!important}.input:-webkit-autofill:first-line{-webkit-text-fill-color:var(--text)!important}.input[type=email]:invalid{box-shadow:none}.input[type=email]:invalid:not(:focus):not(:placeholder-shown){border-color:var(--state-error-border);background:var(--state-error-bg)}.input[type=email]:valid:not(:placeholder-shown){border-color:var(--state-success-border)}.input::-webkit-validation-bubble-message{display:none}.input::-webkit-validation-bubble-arrow{display:none}.input::-webkit-validation-bubble{display:none}.link{color:var(--brand-primary);text-decoration:none;transition:opacity var(--transition-fast),color var(--transition-fast);cursor:pointer;font-weight:500;font:inherit;background:0 0;border:none;padding:0}.link:hover{opacity:.8;text-decoration:underline}.link:focus{outline:2px solid var(--brand-primary);outline-offset:2px}.brand-btn{background:var(--brand-bg);color:var(--brand-text);box-shadow:var(--brand-shadow);transition:transform var(--transition-fast),box-shadow var(--transition-fast),filter var(--transition-fast)}.brand-btn:hover{filter:brightness(1.1);box-shadow:var(--brand-shadow-hover);transform:translateY(-1px)}.muted{color:var(--text-muted)}.accent{color:var(--brand-primary)}.alert{border:1px solid;border-radius:.5rem;padding:1rem;font-size:.875rem;font-weight:500}.alert-error{background:var(--state-error-bg);border-color:var(--state-error-border);color:var(--state-error)}.alert-success{background:var(--state-success-bg);border-color:var(--state-success-border);color:var(--state-success)}.alert-warning{background:var(--state-warning-bg);border-color:var(--state-warning-border);color:var(--state-warning)}.alert-info{background:var(--state-info-bg);border-color:var(--state-info-border);color:var(--state-info)}.error-text{color:var(--state-error);margin-top:.25rem;font-size:.75rem}.success-text{color:var(--state-success);margin-top:.25rem;font-size:.75rem}.warning-text{color:var(--state-warning);margin-top:.25rem;font-size:.75rem}.info-text{color:var(--state-info);margin-top:.25rem;font-size:.75rem}.theme-toggle{background:var(--toggle-bg);color:var(--toggle-color);transition:background-color var(--transition-fast),color var(--transition-fast)}.toggle-switch{position:relative;display:inline-block;width:52px;height:28px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;background:var(--input-bg);border:1px solid var(--input-border);border-radius:28px;transition:all .3s cubic-bezier(.4,0,.2,1);inset:0}.toggle-slider:before{position:absolute;content:"";background:var(--text-muted);border-radius:50%;width:20px;height:20px;transition:all .3s cubic-bezier(.4,0,.2,1);bottom:3px;left:3px}.toggle-switch input:checked+.toggle-slider{background:var(--brand-primary);border-color:var(--brand-primary)}.toggle-switch input:checked+.toggle-slider:before{background:var(--toggle-color);transform:translate(24px)}.toggle-switch input:focus+.toggle-slider{box-shadow:var(--input-focus-ring)}.toggle-switch input:disabled+.toggle-slider{opacity:.5;cursor:not-allowed}.settings-row{display:flex;border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items: center;padding:1rem 0}.settings-row:last-child{border-bottom:none}.settings-row-info{flex:1}.settings-row-label{margin-bottom:.25rem;font-size:.9375rem;font-weight:500}.settings-row-description{color:var(--text-muted);font-size:.8125rem}@keyframes skeleton-pulse{0%,to{opacity:.4}50%{opacity:.15}}.skeleton{background:var(--card-border);animation:skeleton-pulse 1.8s ease-in-out infinite;border-radius:.5rem}.skeleton-card{border-radius:.75rem;height:5rem}.avatar{display:flex;color:var(--brand-text);background:var(--brand-primary);box-shadow:var(--avatar-shadow);text-transform:uppercase;border-radius:50%;flex-shrink:0;justify-content:center;align-items: center;font-weight:600}.avatar-sm{width:28px;height:28px;font-size:.625rem}}.ptr-indicator{position:absolute;z-index:10;display:flex;background:var(--card-bg);border:1px solid var(--card-border);box-shadow:var(--card-shadow);pointer-events:none;border-radius:50%;justify-content:center;align-items: center;width:36px;height:36px;transition:opacity .15s;top:0;left:50%;translate:-50%}.ptr-spinner{color:var(--brand-primary);transition:none}.ptr-spinning{animation:ptrSpin .8s linear infinite}@keyframes ptrSpin{to{transform:rotate(360deg)}}.dt-wrap{border:1px solid var(--card-border);overflow:hidden;background:var(--card-bg);border-radius:.75rem;min-height:20rem}.dt-table{border-collapse:collapse;width:100%;font-size:.875rem}.dt-table thead{background:var(--sidebar-bg,var(--bg))}.dt-th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);border-bottom:1px solid var(--card-border);white-space:nowrap;user-select:none;padding:.75rem 1rem;font-size:.75rem;font-weight:600}.dt-th-sortable{cursor:pointer;transition:color .15s}.dt-th-sortable:hover{color:var(--text)}.dt-th-content{display:inline-flex;align-items: center;gap:.375rem}.dt-sort-icon{display:inline-flex;flex-shrink:0;align-items: center}.dt-filter-row{border-bottom:1px solid var(--card-border)}.dt-filter-cell{background:var(--sidebar-bg,var(--bg));padding:.375rem .5rem}@supports (color: color-mix(in lab, red, red)){.dt-filter-cell{background:color-mix(in oklch,var(--sidebar-bg,var(--bg))60%,var(--card-bg))}}.dt-filter-input{border:1px solid var(--input-border);background:var(--input-bg);color:var(--text);outline:none;border-radius:.375rem;width:100%;padding:.3rem .5rem;transition:border-color .15s;font-size:.75rem}.dt-filter-input::placeholder{color:var(--text-muted);opacity:.6}.dt-filter-input:focus{border-color:var(--brand-primary);box-shadow:0 0 0 2px var(--brand-primary)}@supports (color: color-mix(in lab, red, red)){.dt-filter-input:focus{box-shadow:0 0 0 2px color-mix(in oklch,var(--brand-primary)20%,transparent)}}.dt-filter-dropdown{width:100%}.dt-filter-dropdown .dd-trigger{min-height:unset;border-radius:.375rem;padding:.3rem .5rem;font-size:.75rem}.dt-filter-dropdown .dd-menu{min-width:100%;font-size:.75rem}.dt-filter-dropdown .dd-option{padding:.3rem .5rem}.dt-row{border-bottom:1px solid var(--card-border);transition:background .15s}.dt-row:nth-child(2n){background:var(--brand-primary)}@supports (color: color-mix(in lab, red, red)){.dt-row:nth-child(2n){background:color-mix(in oklch,var(--brand-primary)2%,transparent)}}.dt-row:last-child{border-bottom:none}.dt-row:hover{background:var(--brand-primary)}@supports (color: color-mix(in lab, red, red)){.dt-row:hover{background:color-mix(in oklch,var(--brand-primary)6%,transparent)}}.dt-row-clickable{cursor:pointer}.dt-row-clickable:active{background:var(--brand-primary)}@supports (color: color-mix(in lab, red, red)){.dt-row-clickable:active{background:color-mix(in oklch,var(--brand-primary)8%,transparent)}}.dt-td{color:var(--text);vertical-align:middle;padding:.75rem 1rem}.dt-empty{display:flex;border:1px solid var(--card-border);background:var(--card-bg);border-radius:.75rem;flex-direction:column;justify-content:center;align-items: center;gap:.75rem;padding:4rem 1rem}.dt-empty-inline{display:flex;flex-direction:column;justify-content:center;align-items: center;gap:.75rem;padding:3rem 1rem}.dt-empty-text{color:var(--text-muted);font-size:.875rem;font-weight:500}.dt-filter-bar{display:flex;border-top:1px solid var(--card-border);justify-content:space-between;align-items: center;padding:.5rem 1rem;font-size:.75rem}.dt-filter-bar-text{color:var(--text-muted)}.dt-clear-filters{color:var(--brand-primary);cursor:pointer;background:0 0;border:none;border-radius:.25rem;padding:.25rem .5rem;transition:background .15s;font-size:.75rem;font-weight:500}.dt-clear-filters:hover{background:var(--brand-primary)}@supports (color: color-mix(in lab, red, red)){.dt-clear-filters:hover{background:color-mix(in oklch,var(--brand-primary)10%,transparent)}}@media (max-width:640px){.dt-wrap{overflow-x:auto}.dt-table{min-width:600px}}.dt-card-list{display:flex;flex-direction:column;gap:.5rem}.dt-card{border-radius:var(--radius-lg);border:1px solid var(--card-border);background:var(--card-bg);padding:.875rem 1rem;transition:background .15s,box-shadow .15s}.dt-card-clickable{cursor:pointer}.dt-card-clickable:active{background:var(--hover-bg)}.dt-pagination{display:flex;justify-content:center;align-items: center;gap:.75rem;margin-top:1rem;padding:.5rem 0}.dt-pagination-btn{display:inline-flex;border:1px solid var(--card-border);background:var(--card-bg);color:var(--text);cursor:pointer;border-radius:.5rem;align-items: center;gap:.25rem;padding:.375rem .875rem;transition:all .15s;font-size:.8125rem;font-weight:500}.dt-pagination-btn:hover:not(:disabled){background:var(--brand-hover);border-color:var(--brand-primary);color:var(--brand-primary)}.dt-pagination-btn:disabled{opacity:.4;cursor:not-allowed}.dt-pagination-info{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.8125rem}.dd{position:relative;width:100%;min-width:0}.tm-page-header .dd,.ana-controls .dd,.queue-filters .dd,.eml-toolbar-filters .dd,.dt-filter-row .dd{width:auto;min-width:140px;max-width:220px}.dd-trigger{display:flex;cursor:pointer;text-align:left;justify-content:space-between;align-items: center;gap:.5rem;width:100%}.dd-trigger.dd-disabled{opacity:.5;cursor:not-allowed}.dd-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.dd-placeholder{color:var(--text-muted)}.dd-chevron{color:var(--text-muted);flex-shrink:0;transition:transform .2s}.dd-trigger.dd-open .dd-chevron{transform:rotate(180deg)}.dd-trigger:focus-visible{outline:2px solid var(--brand-primary);outline-offset:-2px}.dd-popover{position:absolute;z-index:var(--z-dropdown);background:var(--popup-glass-bg);backdrop-filter:blur(16px)saturate(180%);-webkit-backdrop-filter:blur(16px)saturate(180%);border:1px solid var(--popup-glass-border);overflow:hidden;animation:ddSlideIn .18s cubic-bezier(.4,0,.2,1);border-radius:.625rem;min-width:100%;top:calc(100% + 4px);left:0;right:auto;box-shadow:0 8px 32px #00000040,0 2px 8px #0000001a,inset 0 .5px #ffffff0d}@keyframes ddSlideIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.dd-search-wrap{position:relative;border-bottom:1px solid var(--card-border);padding:.5rem}.dd-search-icon{position:absolute;color:var(--text-muted);pointer-events:none;top:50%;left:1rem;transform:translateY(-50%)}.dd-search{border:1px solid var(--border-subtle);background:var(--bg);color:var(--text);outline:none;border-radius:.375rem;width:100%;padding:.5rem .5rem .5rem 2rem;transition:border-color .15s;font-size:.8125rem}.dd-search::placeholder{color:var(--text-muted)}.dd-search:focus{border-color:var(--brand-primary)}.dd-list{list-style:none;overflow-y:auto;max-height:220px;margin:0;padding:.25rem 0}.dd-list::-webkit-scrollbar{width:5px}.dd-list::-webkit-scrollbar-thumb{background:var(--card-border);border-radius:3px}.dd-option{display:flex;color:var(--text);cursor:pointer;justify-content:space-between;align-items: center;padding:.5rem .75rem;transition:background .1s;font-size:.8125rem}.dd-option.dd-focused,.dd-option:hover{background:var(--brand-primary)}@supports (color: color-mix(in lab, red, red)){:is(.dd-option.dd-focused,.dd-option:hover){background:color-mix(in oklch,var(--brand-primary)10%,transparent)}}.dd-option.dd-selected{color:var(--brand-primary);font-weight:500}.dd-check{color:var(--brand-primary);flex-shrink:0}.dd-empty{color:var(--text-muted);text-align:center;padding:1rem .75rem;font-size:.8125rem}.dd-color-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.sb{position:relative;max-width:360px;margin-bottom:1rem}.sb-icon{position:absolute;color:var(--text-muted);pointer-events:none;transition:color .2s;top:50%;left:.875rem;transform:translateY(-50%)}.sb-focused .sb-icon{color:var(--brand-primary)}.sb-input{border:1px solid var(--glass-border);background:var(--glass-bg);backdrop-filter:blur(12px)saturate(180%);-webkit-backdrop-filter:blur(12px)saturate(180%);color:var(--text);outline:none;border-radius:.625rem;width:100%;padding:.625rem 2.25rem .625rem 2.5rem;transition:border-color .2s,box-shadow .2s,background .2s;font-size:.875rem}.sb-input::placeholder{color:var(--text-muted)}.sb-input:focus{border-color:var(--brand-primary);box-shadow:0 0 0 3px var(--brand-primary)}@supports (color: color-mix(in lab, red, red)){.sb-input:focus{box-shadow:0 0 0 3px color-mix(in oklch,var(--brand-primary)15%,transparent)}}.sb-input:hover:not(:focus){border-color:var(--text-muted)}@supports (color: color-mix(in lab, red, red)){.sb-input:hover:not(:focus){border-color:color-mix(in oklch,var(--text-muted)50%,var(--border-subtle))}}.sb-clear{position:absolute;display:flex;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:.375rem;justify-content:center;align-items: center;width:1.5rem;height:1.5rem;transition:all .15s;top:50%;right:.5rem;transform:translateY(-50%)}.sb-clear:hover{background:var(--text-muted);color:var(--text)}@supports (color: color-mix(in lab, red, red)){.sb-clear:hover{background:color-mix(in oklch,var(--text-muted)15%,transparent)}}.sb-has-value .sb-input{padding-right:2.25rem}.bubble-popup-wrapper{position:relative}.bubble-popup-trigger{display:flex;border:1px solid var(--border-subtle);background:var(--surface-2);color:var(--text-secondary);cursor:pointer;border-radius:.5rem;justify-content:center;align-items: center;width:2.25rem;height:2.25rem;transition:all .15s}.bubble-popup-trigger:hover{color:var(--text-primary);border-color:var(--brand-primary);background:var(--brand-primary)}@supports (color: color-mix(in lab, red, red)){.bubble-popup-trigger:hover{background:color-mix(in oklch,var(--brand-primary)8%,var(--surface-2))}}.bubble-popup-trigger.active{color:var(--brand-primary);border-color:var(--brand-primary);background:var(--brand-primary)}@supports (color: color-mix(in lab, red, red)){.bubble-popup-trigger.active{background:color-mix(in oklch,var(--brand-primary)12%,var(--surface-2))}}.bubble-popup-panel{border:1px solid var(--border-subtle);background:var(--card-bg);backdrop-filter:blur(16px)saturate(1.4);-webkit-backdrop-filter:blur(16px)saturate(1.4);display:flex;animation:bubble-popup-in .15s ease;border-radius:.75rem;flex-direction:column;gap:.75rem;padding:.75rem;box-shadow:0 4px 24px #0000001f,0 1px 4px #0000000f,inset 0 .5px #ffffff0f}@supports (color: color-mix(in lab, red, red)){.bubble-popup-panel{border:1px solid color-mix(in oklch,var(--border-subtle)60%,transparent)}}@keyframes bubble-popup-in{0%{opacity:0;transform:translateY(-4px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.bubble-popup-section{display:flex;flex-direction:column;gap:.375rem}.bubble-popup-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-size:.675rem;font-weight:600}.multi-select{position:relative;width:100%}.multi-select.disabled{opacity:.5;pointer-events:none}.multi-select-control{display:flex;background:var(--input-bg);border:1px solid var(--border-subtle);cursor:text;border-radius:.5rem;flex-wrap:wrap;align-items: center;gap:.25rem;min-height:2.125rem;padding:.3rem .5rem;transition:border-color .15s,box-shadow .15s}.multi-select.open .multi-select-control,.multi-select-control:focus-within{border-color:var(--brand-primary);box-shadow:0 0 0 2px var(--brand-primary)}@supports (color: color-mix(in lab, red, red)){:is(.multi-select.open .multi-select-control,.multi-select-control:focus-within){box-shadow:0 0 0 2px color-mix(in oklch,var(--brand-primary)20%,transparent)}}.multi-select-input{outline:none;color:var(--text);background:0 0;border:none;flex:3rem;min-width:3rem;padding:.125rem 0;font-size:.8125rem}.multi-select-input::placeholder{color:var(--text-muted)}.multi-select-tag{display:inline-flex;background:var(--brand-primary);border:1px solid var(--brand-primary);color:var(--brand-primary);white-space:nowrap;animation:multi-select-tag-in .12s ease;border-radius:.375rem;align-items: center;gap:.25rem;padding:.125rem .25rem .125rem .5rem;font-size:.75rem;font-weight:500}@supports (color: color-mix(in lab, red, red)){.multi-select-tag{background:color-mix(in oklch,var(--brand-primary)14%,transparent)}}@keyframes multi-select-tag-in{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.multi-select-tag-label{line-height:1.3}.multi-select-tag-remove{display:inline-flex;color:var(--brand-primary);cursor:pointer;background:0 0;border:none;border-radius:.25rem;justify-content:center;align-items: center;width:1.125rem;height:1.125rem;padding:0;transition:background .12s,color .12s}.multi-select-tag-remove:hover{background:var(--brand-primary);color:var(--text)}@supports (color: color-mix(in lab, red, red)){.multi-select-tag-remove:hover{background:color-mix(in oklch,var(--brand-primary)20%,transparent)}}.multi-select-menu{position:absolute;z-index:var(--z-popover);overflow-y:auto;list-style:none;background:var(--popup-glass-bg);backdrop-filter:blur(16px)saturate(180%);-webkit-backdrop-filter:blur(16px)saturate(180%);border:1px solid var(--popup-glass-border);animation:ddSlideIn .18s cubic-bezier(.4,0,.2,1);border-radius:.625rem;min-width:100%;max-height:180px;margin:0;padding:.25rem;top:calc(100% + .25rem);left:0;right:auto;box-shadow:0 8px 32px #00000040,0 2px 8px #0000001a,inset 0 .5px #ffffff0d}.multi-select-option{color:var(--text);cursor:pointer;border-radius:.375rem;padding:.375rem .625rem;transition:background .1s;font-size:.8125rem}.multi-select-option:hover{background:var(--brand-primary);color:var(--brand-primary)}@supports (color: color-mix(in lab, red, red)){.multi-select-option:hover{background:color-mix(in oklch,var(--brand-primary)10%,transparent)}}.multi-select-empty{color:var(--text-muted);text-align:center;padding:.5rem .625rem;font-size:.75rem}.cal-modal-overlay{position:fixed;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:var(--z-modal-overlay);display:flex;padding:var(--space-4);animation:tm-fade-in .2s ease;background:#00000080;justify-content:center;align-items: center;inset:0}.cal-modal{background:var(--popup-glass-bg);border:1px solid var(--popup-glass-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);backdrop-filter:blur(var(--popup-glass-blur));-webkit-backdrop-filter:blur(var(--popup-glass-blur));width:90%;max-width:480px;max-height:90vh;overflow:hidden;display:flex;animation:calSlideUp .25s cubic-bezier(.4,0,.15,1);flex-direction:column;max-height:90dvh}.cal-modal--closing{animation:calSlideOut .18s cubic-bezier(.4,0,1,1)forwards}.cal-modal-overlay--closing{animation:tm-fade-out .18s ease forwards}@keyframes calSlideUp{0%{opacity:0;transform:translateY(16px)scale(.96)}to{opacity:1;transform:none}}@keyframes calSlideOut{0%{opacity:1;transform:none}to{opacity:0;transform:translateY(12px)scale(.97)}}@keyframes tm-fade-out{0%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.cal-modal,.cal-modal--closing,.cal-modal--sheet,.cal-modal--sheet.cal-modal--closing,.cal-modal-overlay,.cal-modal-overlay--closing{animation:none!important;transition:none!important}}.confirm-dialog-body{display:flex;text-align:center;padding:var(--space-2)var(--space-4)var(--space-3);align-items: center;gap:var(--space-3);flex-direction:column}.confirm-dialog-icon{display:flex;color:var(--accent);background:#6366f11f;border-radius:50%;flex-shrink:0;justify-content:center;align-items: center;width:48px;height:48px}.confirm-dialog-icon svg{width:24px;height:24px}.confirm-dialog-icon--danger{color:var(--danger,#e53935);background:#e539351f}.confirm-dialog-text{font-size:var(--font-sm);color:var(--text-secondary);line-height:1.5}.confirm-dialog-spinner{animation:spin .8s linear infinite;flex-shrink:0}@keyframes spin{to{transform:rotate(360deg)}}.cal-modal-discard-banner{display:flex;font-size:var(--font-sm);color:var(--danger,#e53935);animation:tm-fade-in .15s ease;background:#e5393514;border-bottom:1px solid #e5393533;flex-shrink:0;justify-content:space-between;align-items: center;gap:.75rem;padding:.5rem 1.25rem;font-weight:500}.cal-modal-discard-actions{display:flex;flex-shrink:0;gap:.375rem}.cal-modal-discard-actions .cal-modal-btn{font-size:var(--font-xs);padding:.3rem .75rem}@media (max-width:767px){.cal-modal-discard-banner{text-align:center;flex-direction:column;gap:.5rem;padding:.625rem 1rem}.cal-modal-discard-actions{width:100%}.cal-modal-discard-actions .cal-modal-btn{flex:1;justify-content:center;min-height:2rem}}.cal-modal::-webkit-scrollbar{width:6px}.cal-modal::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px}.cal-modal>.page-alert{flex-shrink:0}.cal-modal-header{display:flex;padding:var(--space-5)var(--space-6)var(--space-3);flex-shrink:0;justify-content:space-between;align-items: center}.cal-modal-title{font-size:var(--font-xl);color:var(--text);margin:0;font-weight:700}.cal-modal-close{display:flex;color:var(--text-muted);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;justify-content:center;align-items: center;width:32px;height:32px;transition:all .15s}.cal-modal-close:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.cal-modal-close:hover{background:var(--hover-bg);color:var(--text)}.cal-modal-form{padding:var(--space-3)var(--space-6)var(--space-6);display:flex;gap:var(--space-4);overflow-y:auto;flex-direction:column;flex:auto;min-height:0}.cal-modal-form::-webkit-scrollbar{width:6px}.cal-modal-form::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px}.cal-form-group{display:flex;flex-direction:column}.cal-form-input{border-radius:var(--radius-md);font-size:var(--font-base);--buncss-light: ;--buncss-dark:initial;color-scheme:dark;padding:.5625rem .75rem}.light .cal-form-input{--buncss-light:initial;--buncss-dark: ;color-scheme:light}.cal-form-row{display:flex;gap:.75rem}.cal-form-half{flex:1;min-width:0}.cal-form-textarea{resize:vertical;min-height:72px}.cal-color-picker{display:flex;flex-wrap:wrap;gap:.5rem}.cal-color-swatch{cursor:pointer;border:2px solid #0000;border-radius:50%;width:28px;height:28px;padding:0;transition:all .15s}.cal-color-swatch:hover{transform:scale(1.15);box-shadow:0 2px 8px #0003}.cal-color-swatch.active{border-color:var(--text);box-shadow:0 0 0 2px var(--bg),0 0 0 4px currentColor;transform:scale(1.1)}.modal-section{border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow:hidden;transition:border-color .15s}.modal-section--open{border-color:var(--border-subtle)}@supports (color: color-mix(in lab, red, red)){.modal-section--open{border-color:color-mix(in oklch,var(--border-subtle)80%,var(--brand-primary)20%)}}.modal-section-header{display:flex;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;justify-content:space-between;align-items: center;gap:.75rem;width:100%;padding:.625rem .875rem;transition:background .15s}.modal-section-header:hover{background:var(--hover-bg)}.modal-section-header:focus-visible{outline:2px solid var(--brand-primary);outline-offset:-2px}.modal-section-header-text{display:flex;flex-direction:column;align-items: flex-start;gap:.125rem;min-width:0}.modal-section-title{font-size:var(--font-sm);color:var(--text);font-weight:600}.modal-section-desc{font-size:var(--font-xs);color:var(--text-muted);line-height:1.3}.modal-section-header-end{display:flex;flex-shrink:0;align-items: center;gap:.5rem}.modal-section-badge{display:inline-flex;background:var(--brand-primary);color:var(--brand-text);border-radius:10px;justify-content:center;align-items: center;min-width:20px;height:20px;padding:0 6px;font-size:.6875rem;font-weight:700}.modal-section-chevron{color:var(--text-muted);flex-shrink:0;transition:transform .2s}.modal-section--open .modal-section-chevron{transform:rotate(180deg)}.modal-section-body{display:flex;gap:var(--space-3);flex-direction:column;padding:0 .875rem .875rem}.modal-stepper{position:relative;display:flex;padding:.5rem var(--space-6).75rem;overflow-x:auto;scrollbar-width:none;flex-shrink:0;justify-content:center;align-items: center;gap:0}.modal-stepper::-webkit-scrollbar{display:none}.modal-stepper-step{display:flex;cursor:pointer;white-space:nowrap;background:0 0;border:none;flex:1 1 0;justify-content:center;align-items: center;gap:.375rem;padding:.375rem .75rem;transition:opacity .2s}.modal-stepper-step:disabled{cursor:default}.modal-stepper-step--upcoming{opacity:.4}.modal-stepper-step--upcoming:hover:not(:disabled){opacity:.6}.modal-stepper-dot{display:inline-flex;border:1.5px solid var(--border-subtle);color:var(--text-muted);background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items: center;width:22px;height:22px;transition:background .2s,color .2s,border-color .2s;font-size:.6875rem;font-weight:700}.modal-stepper-step--active .modal-stepper-dot{background:var(--brand-primary);border-color:var(--brand-primary);color:var(--brand-text)}.modal-stepper-step--done .modal-stepper-dot{background:var(--brand-primary);border-color:var(--brand-primary);color:var(--brand-primary)}@supports (color: color-mix(in lab, red, red)){.modal-stepper-step--done .modal-stepper-dot{background:color-mix(in oklch,var(--brand-primary)15%,transparent)}}.modal-stepper-num{line-height:1}.modal-stepper-icon{display:inline-flex;color:inherit;align-items: center}.modal-stepper-label{font-size:var(--font-xs);color:var(--text-muted);transition:color .2s;font-weight:600}.modal-stepper-step--active .modal-stepper-label{color:var(--text)}.modal-stepper-step--done .modal-stepper-label{color:var(--brand-primary)}.modal-stepper-track{position:absolute;bottom:0;left:var(--space-6);right:var(--space-6);background:var(--border-subtle);border-radius:1px;height:2px}.modal-stepper-fill{background:var(--brand-primary);border-radius:1px;height:100%;transition:width .3s cubic-bezier(.4,0,.2,1)}.modal-stepper-content{overflow-y:auto;display:flex;flex-direction:column;flex:auto;min-height:320px}@media (max-width:767px){.modal-stepper{padding:.375rem var(--space-4).625rem;gap:0}.modal-stepper-step{padding:.25rem .375rem}.modal-stepper-label{font-size:.625rem}.modal-stepper-dot{width:20px;height:20px;font-size:.625rem}.modal-stepper-track{left:var(--space-4);right:var(--space-4)}}.cal-modal-tabs{display:flex;border-bottom:1px solid var(--border-subtle);padding:0 var(--space-6);overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-shrink:0;gap:0}.cal-modal-tabs::-webkit-scrollbar{display:none}.cal-modal-tab{position:relative;display:inline-flex;font-size:var(--font-sm);color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;flex-shrink:0;align-items: center;gap:.375rem;padding:.6rem 1rem;transition:color .2s,border-color .2s;font-weight:500}.cal-modal-tab:focus-visible{outline:2px solid var(--brand-primary);outline-offset:-2px}.cal-modal-tab:hover{color:var(--text)}.cal-modal-tab.active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.cal-modal-tab svg{opacity:.6;flex-shrink:0;transition:opacity .2s}.cal-modal-tab:hover svg,.cal-modal-tab.active svg{opacity:1}.cal-modal-actions{display:flex;border-top:1px solid var(--border-subtle);flex-shrink:0;justify-content:flex-end;gap:.5rem;margin-top:auto;padding-top:.625rem;transition:box-shadow .2s}.cal-modal-actions--shadow{box-shadow:0 -4px 12px #00000014}.cal-modal-btn{border-radius:var(--radius-sm);font-size:var(--font-base);cursor:pointer;border:none;padding:.5rem 1.25rem;transition:all .15s;font-weight:600}.cal-modal-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.cal-btn-secondary{color:var(--text);border:1px solid var(--border-subtle);background:0 0}.cal-btn-secondary:hover{background:var(--hover-bg);border-color:var(--text-muted)}.cal-btn-primary{background:var(--brand-primary);color:var(--brand-text);box-shadow:var(--brand-shadow)}.cal-btn-primary:hover{filter:brightness(1.1);box-shadow:var(--brand-shadow-hover);transform:translateY(-1px)}.cal-btn-primary:active{transform:translateY(0)}.cal-btn-danger{background:var(--state-error);color:var(--brand-text);box-shadow:0 2px 8px oklch(.55 .2 25/.3)}.cal-btn-danger:hover{filter:brightness(1.1);transform:translateY(-1px)}.cal-btn-danger:active{transform:translateY(0)}.cal-modal-drag-handle{display:none}@media (max-width:767px){.cal-modal-overlay{align-items: flex-end;padding:0}.cal-modal--sheet{border-radius:var(--radius-xl)var(--radius-xl)0 0;width:100%;max-height:96dvh;animation:calSlideUpSheet .3s cubic-bezier(.32,.72,0,1);padding-bottom:env(safe-area-inset-bottom,0);max-height:96svh;transition:transform .25s cubic-bezier(.32,.72,0,1);max-width:100%!important}.cal-modal--sheet.cal-modal--closing{animation:calSlideDownSheet .22s cubic-bezier(.4,0,1,1)forwards}.cal-modal-drag-handle{display:flex;cursor:grab;-webkit-tap-highlight-color:transparent;flex-shrink:0;justify-content:center;align-items: center;padding:.5rem 0 .125rem}.cal-modal-drag-pill{background:var(--text-muted);opacity:.4;border-radius:2px;width:36px;height:4px}.cal-modal-header{padding:var(--space-2)var(--space-4)var(--space-1)}.cal-modal-title{font-size:var(--font-lg)}.cal-modal-form{padding:var(--space-2)var(--space-4)var(--space-3);gap:var(--space-3);overflow-x:hidden;-webkit-overflow-scrolling:touch}.cal-modal-actions{padding-bottom:calc(.625rem + env(safe-area-inset-bottom,0));padding-left:var(--space-4);padding-right:var(--space-4)}.cal-modal-close{min-width:44px;min-height:44px}.cal-form-row{gap:.5rem}.cal-form-input,.cal-modal-form .input,.cal-modal-form .dd-trigger{font-size:var(--font-sm);min-height:2.5rem}.cal-form-textarea{min-height:3rem}.cal-modal-actions{padding-top:.375rem;padding-bottom:calc(.375rem + env(safe-area-inset-bottom,0));padding-left:var(--space-4);padding-right:var(--space-4);flex-direction:row;gap:.5rem}.cal-modal-actions .tm-btn,.cal-modal-actions .cal-modal-btn{flex:1;justify-content:center;min-height:2.5rem}.cal-modal-label{margin-bottom:.125rem;font-size:.65rem}.cal-form-section-body{gap:var(--space-3);padding:0 .625rem .625rem}.cal-form-section-summary{font-size:var(--font-xs);min-height:40px;padding:.5rem .75rem}.cal-form-section-badge{min-width:18px;height:18px;font-size:.625rem}.cal-form-section-divider{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);border-top:1px solid var(--border-subtle);padding-top:.25rem;font-size:.65rem;font-weight:700}}@keyframes calSlideUpSheet{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes calSlideDownSheet{0%{transform:translateY(0)}to{transform:translateY(100%)}}.cal-modal-label{display:block;font-size:var(--font-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:var(--space-2);font-weight:600}.cal-form-section{border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow:clip}.cal-form-section[open]{overflow:visible}.cal-form-section-summary{display:flex;font-size:var(--font-sm);color:var(--text);cursor:pointer;list-style:none;-webkit-tap-highlight-color:transparent;align-items: center;gap:.5rem;min-height:44px;padding:.75rem 1rem;transition:background .15s;font-weight:600}.cal-form-section-summary::-webkit-details-marker{display:none}.cal-form-section-summary:after{content:"";border-right:2px solid var(--text-muted);border-bottom:2px solid var(--text-muted);flex-shrink:0;width:8px;height:8px;margin-left:auto;transition:transform .2s;transform:rotate(-45deg)}.cal-form-section[open]>.cal-form-section-summary:after{transform:rotate(45deg)}.cal-form-section-summary:active{background:var(--hover-bg)}.cal-form-section-badge{display:inline-flex;background:var(--brand-primary);color:var(--brand-text);border-radius:10px;justify-content:center;align-items: center;min-width:20px;height:20px;padding:0 6px;font-size:.6875rem;font-weight:700}.cal-form-section-body{display:flex;gap:var(--space-4);flex-direction:column;padding:0 1rem 1rem}.page-alert{border:1px solid;border-radius:.5rem;margin-bottom:1rem;padding:.625rem 1rem;font-size:.8125rem;font-weight:500}.page-alert-success{background:var(--state-success-bg);border-color:var(--state-success-border);color:var(--state-success)}.page-alert-error{background:var(--state-error-bg);border-color:var(--state-error-border);color:var(--state-error)}.page-alert-retry{display:inline-flex;align-items: center;gap:.5rem}.page-alert-retry button{text-decoration:underline;color:inherit;cursor:pointer;font-weight:500;font:inherit;background:0 0;border:none;padding:0}.form-field{display:flex;flex-direction:column;gap:.25rem}.form-label{color:var(--text);font-size:.85rem;font-weight:600}.form-hint{color:var(--text-muted);margin:0 0 .35rem;font-size:.78rem;line-height:1.4}.form-chips{display:flex;flex-wrap:wrap;gap:.375rem}.form-chip{border:1px solid var(--card-border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:.375rem;padding:.3rem .7rem;transition:all .15s;font-size:.8rem;font-weight:500}.form-chip:hover{border-color:var(--brand-primary);color:var(--text)}.form-chip.active{background:var(--brand-primary);border-color:var(--brand-primary);color:var(--brand-text)}.form-chip.active:hover{opacity:.9;color:var(--brand-text)}.form-inline{display:flex;align-items: center;gap:.5rem}.form-number-input{text-align:center;width:5.5rem}.form-unit{color:var(--text-muted);font-size:.82rem}.cb{display:inline-flex;cursor:pointer;user-select:none;align-items: center;gap:.5rem}.cb-input{position:absolute;opacity:0;pointer-events:none;width:0;height:0}.cb-box{position:relative;border:1.5px solid var(--input-border);background:var(--input-bg);display:flex;border-radius:.3rem;flex-shrink:0;justify-content:center;align-items: center;width:1.125rem;height:1.125rem;transition:background .15s,border-color .15s,box-shadow .15s}.cb-check{color:var(--brand-text);opacity:0;width:.7rem;height:.7rem;transition:opacity .12s,transform .12s;transform:scale(.5)}.cb-input:checked+.cb-box{background:var(--brand-primary);border-color:var(--brand-primary)}.cb-input:checked+.cb-box .cb-check{opacity:1;transform:scale(1)}.cb-input:focus-visible+.cb-box{box-shadow:var(--input-focus-ring);border-color:var(--color-accent)}.cb:hover .cb-box{border-color:var(--color-accent)}.cb-input:disabled+.cb-box,.cb-input:disabled~.cb-label{opacity:.5;cursor:not-allowed}.cb-label{color:var(--text);font-size:.85rem;line-height:1.3}.skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--text-muted)0%,var(--text-muted)50%,var(--text-muted)100%);animation:skeleton-shimmer 1.5s ease-in-out infinite;background-size:200% 100%}@supports (color: color-mix(in lab, red, red)){.skeleton{background:linear-gradient(90deg,color-mix(in oklch,var(--text-muted)8%,transparent)0%,color-mix(in oklch,var(--text-muted)16%,transparent)50%,color-mix(in oklch,var(--text-muted)8%,transparent)100%)}}.skeleton--circle{border-radius:50%}.skeleton-lines{display:flex;flex-direction:column;gap:.5rem}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.skeleton{animation:none}}.pi-wrap{display:flex;align-items:stretch;gap:.5rem}.pi-code-wrap{position:relative;flex-shrink:0}.pi-code-trigger{display:flex;cursor:pointer;white-space:nowrap;align-items: center;gap:.35rem;min-width:5.5rem;padding-left:.6rem!important;padding-right:.5rem!important}.pi-code-trigger:focus-visible{outline:2px solid var(--brand-primary);outline-offset:-2px}.pi-flag{font-size:1.1rem;line-height:1}.pi-code-text{color:var(--text);font-size:.8rem;font-weight:500}.pi-chevron{color:var(--text-muted);flex-shrink:0;transition:transform .15s}.pi-chevron-up{transform:rotate(180deg)}.pi-number{flex:1;min-width:0}.pi-popover{position:absolute;z-index:100;display:flex;background:var(--card-bg);border:1px solid var(--card-border);overflow:hidden;border-radius:.5rem;flex-direction:column;width:18rem;max-height:16rem;top:calc(100% + 4px);left:0;box-shadow:0 8px 24px #00000059}.pi-search-wrap{border-bottom:1px solid var(--card-border);padding:.5rem}.pi-search{border:1px solid var(--card-border);background:var(--bg);color:var(--text);outline:none;border-radius:.375rem;width:100%;padding:.4rem .6rem;font-size:.8rem}.pi-search:focus{border-color:var(--brand-primary)}.pi-search::placeholder{color:var(--text-muted);opacity:.6}.pi-list{list-style:none;overflow-y:auto;flex:1;margin:0;padding:.25rem 0}.pi-list::-webkit-scrollbar{width:6px}.pi-list::-webkit-scrollbar-thumb{background:var(--text-muted);opacity:.3;border-radius:3px}.pi-option{display:flex;cursor:pointer;align-items: center;gap:.5rem;padding:.4rem .75rem;transition:background .1s;font-size:.8rem}.pi-option.pi-focused,.pi-option:hover{background:var(--hover-bg)}.pi-option.pi-selected{font-weight:600}.pi-option-flag{font-size:1rem;line-height:1}.pi-option-country{color:var(--text);flex:1}.pi-option-code{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.75rem}.pi-empty{text-align:center;color:var(--text-muted);padding:.75rem;font-size:.8rem}@media (max-width:480px){.pi-code-trigger{min-width:4.5rem}.pi-popover{width:calc(100vw - 3rem);max-width:18rem}}.snackbar-host{position:fixed;z-index:var(--z-toast);display:flex;pointer-events:none;overflow:hidden;flex-direction:column-reverse;gap:.5rem;max-height:calc(100vh - 3rem);bottom:1.5rem;right:1.5rem}.snackbar{display:flex;background:var(--popup-glass-bg);backdrop-filter:blur(16px)saturate(180%);-webkit-backdrop-filter:blur(16px)saturate(180%);border:1px solid var(--popup-glass-border);pointer-events:auto;opacity:0;position:relative;overflow:hidden;border-radius:.75rem;align-items: center;gap:.625rem;min-width:280px;max-width:420px;padding:.75rem 1rem;transition:opacity .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1);transform:translate(100%);box-shadow:0 8px 32px #0000004d,0 2px 8px #0000001f,inset 0 .5px #ffffff0f}.snackbar-enter{opacity:1;transform:translate(0)}.snackbar-exit{opacity:0;transform:translate(100%)}.snackbar--info{border-left:3px solid var(--state-info)}.snackbar--info .snackbar-icon{color:var(--state-info)}.snackbar--success{border-left:3px solid var(--state-success)}.snackbar--success .snackbar-icon{color:var(--state-success)}.snackbar--warning{border-left:3px solid var(--state-warning)}.snackbar--warning .snackbar-icon{color:var(--state-warning)}.snackbar--error{border-left:3px solid var(--state-error)}.snackbar--error .snackbar-icon{color:var(--state-error)}.snackbar-icon{flex-shrink:0}.snackbar-msg{color:var(--text);flex:1;font-size:.8125rem;font-weight:500;line-height:1.4}.snackbar-action{color:var(--brand-primary);cursor:pointer;background:0 0;border:none;border-radius:.375rem;flex-shrink:0;padding:.25rem .5rem;transition:background .15s;font-size:.8125rem;font-weight:600}.snackbar-action:hover{background:var(--brand-hover)}.snackbar-close{color:var(--text-muted);cursor:pointer;display:flex;background:0 0;border:none;border-radius:.25rem;flex-shrink:0;align-items: center;padding:.25rem;transition:color .15s}.snackbar-close:hover{color:var(--text)}.snackbar-progress{position:absolute;animation:snackbar-countdown linear forwards;border-radius:0 0 .75rem .75rem;height:2px;bottom:0;left:0}.snackbar--info .snackbar-progress{background:var(--state-info)}.snackbar--success .snackbar-progress{background:var(--state-success)}.snackbar--warning .snackbar-progress{background:var(--state-warning)}.snackbar--error .snackbar-progress{background:var(--state-error)}@keyframes snackbar-countdown{0%{width:100%}to{width:0%}}@media (max-width:640px){.snackbar-host{bottom:5rem;left:1rem;right:1rem}.snackbar{min-width:0;max-width:100%}}.queue-btn{display:inline-flex;cursor:pointer;border:1px solid #0000;border-radius:.5rem;align-items: center;gap:.375rem;padding:.4375rem .875rem;transition:background .15s,box-shadow .15s,opacity .15s;font-size:.8125rem;font-weight:600}.queue-btn:disabled{opacity:.5;cursor:not-allowed}.queue-btn-approve{background:var(--state-success-bg);color:var(--state-success);border-color:var(--state-success-border)}.queue-btn-approve:hover:not(:disabled){background:var(--state-success);color:var(--brand-text)}.queue-btn-reject{background:var(--state-error-bg);color:var(--state-error);border-color:var(--state-error-border)}.queue-btn-reject:hover:not(:disabled){background:var(--state-error);color:var(--brand-text)}@layer base{.app-layout{display:flex;height:100vh;background:var(--bg);overflow:hidden;padding-top:env(safe-area-inset-top,0);width:100%;max-width:100vw;height:100dvh}.app-layout-main{display:flex;margin-left:var(--sidebar-width);max-width:calc(100% - var(--sidebar-width));flex-direction:column;flex:1;min-width:0;min-height:0;transition:margin-left .3s cubic-bezier(.4,0,.2,1)}.app-layout-content{background:var(--page-mesh);overflow-x:auto;overflow-y:auto;flex:1;min-width:0;padding-top:0}@media (max-width:1024px){.app-layout-main{max-width:100%;margin-left:0}.app-layout-content{padding-bottom:calc(var(--bottomnav-height) + env(safe-area-inset-bottom,0))}}.bottom-nav{display:none}[data-keyboard=open] .bottom-nav{display:none!important}[data-keyboard=open] .app-layout-content{padding-bottom:0!important}@media (max-width:1024px){.bottom-nav{display:flex;position:fixed;height:calc(var(--bottomnav-height) + env(safe-area-inset-bottom,0));background:var(--glass-bg);backdrop-filter:blur(20px)saturate(180%);-webkit-backdrop-filter:blur(20px)saturate(180%);border-top:1px solid var(--glass-border);z-index:var(--z-bottom-nav);padding:0;padding-bottom:env(safe-area-inset-bottom,0);justify-content:space-around;align-items: flex-start;bottom:0;left:0;right:0}.bottom-nav-item{display:flex;color:var(--text-muted);text-decoration:none;letter-spacing:.01em;cursor:pointer;-webkit-tap-highlight-color:transparent;position:relative;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items: center;gap:2px;padding:4px 0;transition:color .15s;font-size:.625rem;font-weight:500}.bottom-nav-item.active{color:var(--brand-primary)}.bottom-nav-item.active:before{content:"";position:absolute;background:var(--brand-primary);border-radius:0 0 2px 2px;width:32px;height:2px;top:0;left:50%;transform:translate(-50%)}.bottom-nav-icon{display:flex;justify-content:center;align-items: center;width:24px;height:24px}.bottom-nav-icon svg{width:20px;height:20px}.bottom-nav-label{line-height:1}}.sidebar{width:var(--sidebar-width);height:100vh;background:var(--glass-bg);backdrop-filter:blur(24px)saturate(200%);-webkit-backdrop-filter:blur(24px)saturate(200%);border-right:1px solid var(--glass-border);display:flex;position:fixed;z-index:var(--z-sidebar);box-shadow:var(--sidebar-shadow);overflow:hidden;flex-direction:column;height:100dvh;transition:transform .3s cubic-bezier(.4,0,.2,1);top:0;left:0}.sidebar:after{content:"";position:absolute;pointer-events:none;z-index:1;border-top:1px solid #ffffff0a;border-right:1px solid #ffffff08;inset:0}.sidebar-close-btn{display:none;position:absolute;top:calc((var(--header-height) - 36px)/2);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;z-index:10;background:0 0;border:none;justify-content:center;align-items: center;width:36px;height:36px;transition:all .2s;right:1rem}.sidebar-close-btn:hover{color:var(--text);background:var(--hover-bg)}.sidebar-close-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sidebar-header{height:var(--header-height);display:flex;padding:0 var(--space-5);position:relative;flex-shrink:0;align-items: center}.sidebar-header:after{content:"";position:absolute;bottom:0;left:var(--space-5);right:var(--space-5);background:linear-gradient(to right,transparent,var(--border-section),transparent);height:1px}.sidebar-brand{display:flex;align-items: center;gap:var(--space-3)}.sidebar-logo-glow{border-radius:var(--radius-sm);display:flex;background:linear-gradient(135deg,oklch(.55 .15 220/.18),oklch(.55 .15 220/.06));border:1px solid oklch(.55 .15 220/.18);box-shadow:0 2px 8px oklch(.55 .15 220/.14),inset 0 1px 0 #ffffff0f;flex-shrink:0;justify-content:center;align-items: center;width:38px;height:38px;transition:all .3s}.sidebar:hover .sidebar-logo-glow{box-shadow:0 4px 16px oklch(.55 .15 220/.22),inset 0 1px 0 #ffffff14}.sidebar-logo{object-fit:contain;filter:drop-shadow(0 0 4px oklch(.55 .15 220/.4));width:22px;height:22px}.sidebar-brand-text{display:flex;flex-direction:column;gap:0}.sidebar-brand-name{color:var(--text);letter-spacing:-.025em;font-size:1.1rem;font-weight:700;line-height:1.2}.sidebar-brand-sub{font-size:var(--font-2xs);color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;opacity:.55;font-weight:600;line-height:1}.sidebar-nav{overflow-y:auto;overflow-x:hidden;padding:var(--space-3)0;scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb)transparent;flex:1}.sidebar-nav::-webkit-scrollbar{width:4px}.sidebar-nav::-webkit-scrollbar-track{background:0 0}.sidebar-nav::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:999px}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.nav-section{margin-bottom:var(--space-2)}.nav-section+.nav-section{margin-top:var(--space-1)}.nav-section+.nav-section:before{content:"";display:block;margin:0 var(--space-5)var(--space-3);background:linear-gradient(to right,transparent,var(--border-section),transparent);height:1px}.nav-section-title{display:flex;font-size:var(--font-2xs);text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);opacity:.5;padding:var(--space-2)var(--space-5).375rem;align-items: center;gap:.4rem;font-weight:700}.nav-section-dot{background:var(--brand-primary);opacity:.5;border-radius:50%;flex-shrink:0;width:4px;height:4px}.nav-section-items{display:flex;flex-direction:column;gap:2px}@keyframes navItemIn{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:none}}.nav-item-wrapper{animation:navItemIn .25s cubic-bezier(.16,1,.3,1)both}.nav-item-wrapper:first-child{animation-delay:20ms}.nav-item-wrapper:nth-child(2){animation-delay:50ms}.nav-item-wrapper:nth-child(3){animation-delay:80ms}.nav-item-wrapper:nth-child(4){animation-delay:.11s}.nav-item-wrapper:nth-child(5){animation-delay:.14s}.nav-item-wrapper:nth-child(6){animation-delay:.17s}.nav-item-wrapper:nth-child(7){animation-delay:.2s}.nav-item-wrapper:nth-child(8){animation-delay:.23s}.nav-item{display:flex;margin:0 var(--space-2);border-radius:var(--radius-sm);color:var(--text-muted);text-decoration:none;font-size:var(--font-base);cursor:pointer;width:calc(100% - var(--space-4));text-align:left;position:relative;background:0 0;border:1px solid #0000;justify-content:space-between;align-items: center;padding:.5rem .75rem;transition:all .2s cubic-bezier(.4,0,.2,1);font-family:inherit;font-weight:500}.nav-item:focus-visible{outline:2px solid var(--brand-primary);outline-offset:-2px}.nav-item:hover{color:var(--text);background:var(--hover-bg)}.nav-item:hover .nav-item-icon-wrap{background:var(--hover-bg);border-color:var(--border-subtle)}.nav-item.active{color:var(--brand-primary);background:var(--brand-hover);border-color:oklch(.55 .15 220/.12);box-shadow:var(--shadow-xs)}.nav-item.active:before{content:"";position:absolute;background:var(--brand-primary);box-shadow:0 0 8px oklch(.55 .15 220/.3);border-radius:0 3px 3px 0;width:3px;height:18px;top:50%;left:-1px;transform:translateY(-50%)}.nav-item.active .nav-item-icon-wrap{background:oklch(.55 .15 220/.15);border-color:oklch(.55 .15 220/.2);color:var(--brand-primary);box-shadow:0 2px 6px oklch(.55 .15 220/.12)}.nav-item.active .nav-item-label{font-weight:600}.nav-item-icon-wrap{display:flex;background:0 0;border:1px solid #0000;border-radius:.4375rem;flex-shrink:0;justify-content:center;align-items: center;width:30px;height:30px;transition:all .2s}.nav-item-icon{display:flex;flex-shrink:0;justify-content:center;align-items: center;width:18px;height:18px}.nav-item-icon svg{width:18px;height:18px}.nav-item-content{display:flex;flex:1;align-items: center;gap:.625rem;min-width:0}.nav-item-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.nav-item-badge{background:var(--brand-primary);color:var(--brand-text);font-size:var(--font-2xs);border-radius:var(--radius-pill);text-align:center;box-shadow:0 1px 4px oklch(.55 .15 220/.2);min-width:1.125rem;padding:.1rem .45rem;font-weight:700;line-height:1.4}.nav-item-chevron{display:flex;color:var(--text-muted);opacity:.5;justify-content:center;align-items: center;transition:transform .25s cubic-bezier(.4,0,.2,1)}.nav-item-chevron.expanded{transform:rotate(90deg)}.nav-item-children{display:flex;margin-top:2px;margin-left:var(--space-2);margin-right:var(--space-2);padding:var(--space-1)0;border-radius:var(--radius-sm);background:var(--nav-children-bg);flex-direction:column;gap:2px}.nav-item-children .nav-item-icon-wrap{border-radius:.375rem;width:24px;height:24px}.nav-item-children .nav-item-icon svg{width:15px;height:15px}.sidebar-footer{padding:var(--space-3);display:flex;gap:var(--space-2);position:relative;flex-direction:column;flex-shrink:0}.sidebar-footer:before{content:"";position:absolute;top:0;left:var(--space-5);right:var(--space-5);background:linear-gradient(to right,transparent,var(--border-section),transparent);height:1px}.sidebar-user-card{display:flex;align-items: center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-sm);background:var(--hover-bg-subtle);border:1px solid var(--border-subtle);transition:all .2s}.sidebar-user-card:hover{background:var(--hover-bg);border-color:var(--glass-border)}.sidebar-user-avatar{background:linear-gradient(135deg,var(--brand-primary),var(--brand-grad));color:var(--brand-text);display:flex;letter-spacing:.02em;box-shadow:0 2px 8px oklch(.55 .15 220/.2);position:relative;border-radius:.625rem;flex-shrink:0;justify-content:center;align-items: center;width:34px;height:34px;font-size:.78rem;font-weight:700}.sidebar-user-avatar:after{content:"";position:absolute;background:var(--state-success);border:2px solid var(--glass-bg);box-shadow:0 0 4px oklch(.7 .15 140/.5);border-radius:50%;width:9px;height:9px;bottom:-2px;right:-2px}.sidebar-user-info{display:flex;flex-direction:column;flex:1;gap:.05rem;min-width:0}.sidebar-user-name{font-weight:600;font-size:var(--font-sm);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.sidebar-user-email{font-size:var(--font-2xs);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:.7;line-height:1.3}.sidebar-role-badge{font-size:var(--font-2xs);text-transform:uppercase;letter-spacing:.05em;border-radius:var(--radius-pill);background:oklch(.55 .15 220/.12);color:var(--brand-primary);border:1px solid oklch(.55 .15 220/.1);white-space:nowrap;flex-shrink:0;padding:2px 8px;font-weight:700;line-height:1.3}.sidebar-footer-actions{display:flex;gap:.375rem}.sidebar-footer-btn{display:flex;justify-content:center;align-items: center;gap:var(--space-1);padding:.45rem var(--space-2);border-radius:var(--radius-sm);border:1px solid var(--border-subtle);color:var(--text-muted);font-size:var(--font-xs);cursor:pointer;text-decoration:none;background:0 0;flex:1;transition:all .15s;font-family:inherit;font-weight:500}.sidebar-footer-btn svg{opacity:.7;flex-shrink:0;width:15px;height:15px}.sidebar-footer-btn:hover{background:var(--hover-bg);color:var(--text);border-color:var(--glass-border)}.sidebar-footer-btn:hover svg{opacity:1}.sidebar-footer-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sidebar-footer-btn-logout{color:var(--text-muted)}.sidebar-footer-btn-logout:hover{color:var(--state-error);background:var(--state-error-bg);border-color:var(--state-error-border)}:root.light .sidebar:after{border-top-color:#0000;border-right-color:#0000}:root.light .sidebar-logo-glow{background:linear-gradient(135deg,oklch(.55 .15 220/.1),oklch(.55 .15 220/.04));border-color:oklch(.55 .15 220/.12);box-shadow:0 2px 8px oklch(.55 .15 220/.08)}:root.light .sidebar-user-card{background:oklch(.97 .005 220);border-color:oklch(.88 .008 220)}:root.light .sidebar-user-card:hover{background:oklch(.95 .008 220)}:root.light .sidebar-role-badge{background:oklch(.55 .15 220/.08)}:root.light .nav-item.active{background:oklch(.55 .15 220/.08);border-color:oklch(.55 .15 220/.12);box-shadow:0 1px 4px oklch(.55 .15 220/.06)}:root.light .nav-item.active .nav-item-icon-wrap{background:oklch(.55 .15 220/.1);border-color:oklch(.55 .15 220/.15);box-shadow:0 1px 4px oklch(.55 .15 220/.1)}:root.light .sidebar-role-badge{border-color:oklch(.55 .15 220/.08)}:root.light .sidebar-footer-btn{border-color:oklch(.88 .008 220)}:root.light .sidebar-footer-btn:hover{background:oklch(.95 .008 220);border-color:oklch(.84 .01 220)}:root.light .sidebar-footer-btn-logout:hover{background:var(--state-error-bg);border-color:var(--state-error-border)}.main-content{margin-left:var(--sidebar-width);width:calc(100% - var(--sidebar-width));max-width:calc(100% - var(--sidebar-width));min-width:0;min-height:100vh;transition:margin-left .3s cubic-bezier(.4,0,.2,1)}@media (max-width:1024px){.main-content{width:100%;margin-left:0}}.mobile-menu-btn{display:none}.sidebar-overlay{display:none;position:fixed;background:oklch(0 0 0/.5);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:var(--z-sidebar-overlay);animation:tm-fade-in .2s ease-out;inset:0}@media (max-width:1024px){.sidebar{box-shadow:none;background:oklch(.17 .005 260/.85);transform:translate(-100%)}:root.light .sidebar{background:oklch(1 0 0/.75)}.sidebar.open{box-shadow:var(--shadow-xl);transform:translate(0)}.sidebar-overlay{display:block}.sidebar-close-btn{display:flex}.main-content{padding-bottom:calc(var(--bottomnav-height) + env(safe-area-inset-bottom,0));width:100%;max-width:100%;margin-left:0}.mobile-menu-btn{display:flex}}}@layer components{.calendar-page-wrapper{padding:var(--space-6);overflow:hidden;box-sizing:border-box;background:var(--page-mesh);width:100%;max-width:100%;height:100vh}.calendar-page{display:flex;overflow:hidden;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);backdrop-filter:blur(12px)saturate(150%);-webkit-backdrop-filter:blur(12px)saturate(150%);flex-direction:column;max-width:100%;height:100%}.cal-header{display:flex;padding:.75rem var(--space-6);border-bottom:1px solid var(--border-subtle);background:var(--glass-bg);backdrop-filter:blur(16px)saturate(150%);-webkit-backdrop-filter:blur(16px)saturate(150%);justify-content:space-between;align-items: center;gap:var(--space-4);border-radius:var(--radius-lg)var(--radius-lg)0 0;flex-wrap:nowrap;flex-shrink:0;min-height:52px}.cal-header-left{display:flex;flex:1;align-items: center;gap:.625rem;min-width:0}.cal-date-label-wrap{position:relative;display:inline-flex;align-items: center}.cal-date-label{display:inline-flex;color:var(--text);white-space:nowrap;letter-spacing:-.025em;cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;align-items: center;gap:.375rem;margin-left:.25rem;padding:.25rem .5rem;transition:background .15s,color .15s;font-size:1.25rem;font-weight:700;line-height:1.2}.cal-date-label:hover{background:var(--hover-bg)}.cal-date-label:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.cal-date-chevron{color:var(--text-muted);flex-shrink:0;transition:transform .2s}.cal-nav-btn{display:inline-flex;border:1px solid var(--border-subtle);color:var(--text-muted);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-sm);background:0 0;justify-content:center;align-items: center;transition:background .15s,border-color .15s,color .15s,transform .1s;font-weight:600}.cal-nav-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.cal-nav-btn:hover{background:var(--hover-bg);border-color:var(--brand-primary);color:var(--text)}@supports (color: color-mix(in lab, red, red)){.cal-nav-btn:hover{border-color:color-mix(in oklch,var(--brand-primary)30%,transparent)}}.cal-nav-btn:active{transform:scale(.95)}.cal-today-btn{letter-spacing:.01em;border-radius:var(--radius-pill);padding:.375rem .875rem;font-size:.8125rem;font-weight:600}.cal-nav-arrows{display:flex;gap:2px}.cal-arrow-btn{border-radius:var(--radius-sm);width:32px;height:32px;padding:0}.cal-view-tabs{display:flex;background:var(--input-bg);border:1px solid var(--border-subtle);border-radius:var(--radius-pill);position:relative;flex-shrink:0;gap:2px;padding:3px}.cal-interval-tabs{display:flex;background:var(--surface-2);border-radius:var(--radius-sm);gap:2px;padding:2px}.cal-view-tab,.cal-interval-tab{border-radius:var(--radius-pill);cursor:pointer;position:relative;z-index:1;background:0 0;border:none;transition:background .2s,color .2s,box-shadow .2s;font-weight:500}.cal-view-tab:focus-visible{outline:2px solid var(--brand-primary);outline-offset:-2px}.cal-interval-tab:focus-visible{outline:2px solid var(--brand-primary);outline-offset:-2px}.cal-view-tab{color:var(--text-muted);white-space:nowrap;padding:.375rem 1rem;font-size:.8125rem}.cal-interval-tab{color:var(--text-secondary);text-align:center;border-radius:var(--radius-sm);flex:1;padding:.3rem .5rem;font-size:.75rem}.cal-view-tab:hover:not(.active){color:var(--text);background:var(--hover-bg)}.cal-interval-tab:hover:not(.active){color:var(--text-primary);background:var(--brand-primary)}@supports (color: color-mix(in lab, red, red)){.cal-interval-tab:hover:not(.active){background:color-mix(in oklch,var(--brand-primary)8%,transparent)}}.cal-view-tab.active{background:var(--brand-primary);color:var(--brand-text);box-shadow:0 1px 6px var(--brand-primary);font-weight:600}@supports (color: color-mix(in lab, red, red)){.cal-view-tab.active{box-shadow:0 1px 6px color-mix(in oklch,var(--brand-primary)35%,transparent)}}.cal-interval-tab.active{background:var(--brand-primary);color:var(--brand-text);box-shadow:0 1px 6px var(--brand-primary);font-weight:600}@supports (color: color-mix(in lab, red, red)){.cal-interval-tab.active{box-shadow:0 1px 6px color-mix(in oklch,var(--brand-primary)35%,transparent)}}.cal-split-mode-tabs{display:flex;background:var(--hover-bg-subtle);border-radius:var(--radius-sm);gap:2px;padding:2px}.cal-split-mode-tab{display:inline-flex;color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;background:0 0;border:none;flex:1;justify-content:center;align-items: center;gap:.375rem;padding:.375rem .625rem;transition:background .2s,color .2s,box-shadow .2s;font-size:.75rem;font-weight:500}.cal-split-mode-tab:focus-visible{outline:2px solid var(--brand-primary);outline-offset:-2px}.cal-split-mode-tab:hover:not(.active){color:var(--text-primary);background:var(--brand-primary)}@supports (color: color-mix(in lab, red, red)){.cal-split-mode-tab:hover:not(.active){background:color-mix(in oklch,var(--brand-primary)8%,transparent)}}.cal-split-mode-tab.active{background:var(--brand-primary);color:var(--brand-text);box-shadow:0 1px 6px var(--brand-primary);font-weight:600}@supports (color: color-mix(in lab, red, red)){.cal-split-mode-tab.active{box-shadow:0 1px 6px color-mix(in oklch,var(--brand-primary)35%,transparent)}}.cal-header-right{display:flex;flex:none;justify-content:flex-end}.cal-header-filter{min-width:8rem}.calendar-body{overflow:hidden;position:relative;flex:1}.cal-time-grid{display:flex;flex-direction:column;height:100%}.cal-grid-header{display:flex;border-bottom:1px solid var(--border-subtle);background:var(--glass-bg);backdrop-filter:blur(12px)saturate(150%);-webkit-backdrop-filter:blur(12px)saturate(150%);position:sticky;z-index:5;overflow-y:scroll;scrollbar-gutter:stable;flex-shrink:0;top:0}.cal-grid-header::-webkit-scrollbar{width:5px}.cal-grid-header::-webkit-scrollbar-track{background:0 0}.cal-grid-header::-webkit-scrollbar-thumb{background:0 0}.cal-grid-gutter{border-right:1px solid var(--border-subtle);flex-shrink:0;width:56px}.cal-grid-day-header{display:flex;border-right:1px solid var(--border-subtle);flex-direction:column;flex:1;align-items: center;gap:.25rem;min-width:0;padding:.5rem 0 .625rem;transition:background .2s}.cal-grid-day-header:last-child{border-right:none}.cal-day-name{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);transition:color .2s;font-size:.625rem;font-weight:600}.cal-grid-day-header.today .cal-day-name{color:var(--brand-primary)}.cal-day-number{color:var(--text);display:flex;border-radius:50%;justify-content:center;align-items: center;width:34px;height:34px;transition:background .2s,color .2s,box-shadow .2s;font-size:1.25rem;font-weight:700;line-height:1}.cal-day-number.today{background:var(--brand-primary);color:var(--brand-text);box-shadow:0 2px 8px var(--brand-primary)}@supports (color: color-mix(in lab, red, red)){.cal-day-number.today{box-shadow:0 2px 8px color-mix(in oklch,var(--brand-primary)35%,transparent)}}.cal-grid-scroll{overflow-y:auto;overflow-x:hidden;scrollbar-gutter:stable;flex:1}.cal-grid-scroll::-webkit-scrollbar{width:5px}.cal-grid-scroll::-webkit-scrollbar-track{background:0 0}.cal-grid-scroll::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px;transition:background .15s}.cal-grid-scroll::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.cal-grid-body{display:flex;position:relative;min-height:100%}.cal-grid-time-col{border-right:1px solid var(--border-subtle);flex-shrink:0;width:56px}.cal-time-label{display:flex;position:relative;justify-content:flex-end;align-items: flex-start;padding-right:.625rem}.cal-time-label span{color:var(--text-muted);white-space:nowrap;font-variant-numeric:tabular-nums;opacity:.8;font-size:.5625rem;font-weight:500;line-height:1;transform:translateY(-.45em)}.cal-grid-day-col{position:relative;border-right:1px solid var(--border-subtle);flex:1;min-width:0}.cal-grid-day-col:last-child{border-right:none}.cal-grid-day-col.today{background:var(--brand-primary)}@supports (color: color-mix(in lab, red, red)){.cal-grid-day-col.today{background:color-mix(in oklch,var(--brand-primary)6%,transparent)}}:root.light .cal-grid-day-col.today{background:var(--brand-primary)}@supports (color: color-mix(in lab, red, red)){:root.light .cal-grid-day-col.today{background:color-mix(in oklch,var(--brand-primary)6%,transparent)}}.cal-time-slot{border-bottom:1px solid var(--border-section);cursor:pointer;position:relative;height:48px;transition:background .15s}@supports (color: color-mix(in lab, red, red)){.cal-time-slot{border-bottom:1px solid color-mix(in oklch,var(--border-section)50%,transparent)}}.cal-time-slot.hour-start{border-bottom:1px solid var(--border-subtle)}.cal-time-slot:not(.hour-start){border-bottom:1px dashed var(--border-section)}@supports (color: color-mix(in lab, red, red)){.cal-time-slot:not(.hour-start){border-bottom:1px dashed color-mix(in oklch,var(--border-section)35%,transparent)}}.cal-time-slot:hover{background:var(--hover-bg)}.cal-time-slot--drop-target{box-shadow:inset 0 0 0 2px var(--brand-primary);border-radius:.375rem;transition:all .15s;background:var(--brand-primary)!important}@supports (color: color-mix(in lab, red, red)){.cal-time-slot--drop-target{background:color-mix(in srgb,var(--brand-primary)10%,transparent)!important}}.cal-slot-hover-label{display:none;position:absolute;color:var(--text-muted);pointer-events:none;opacity:.7;white-space:nowrap;font-variant-numeric:tabular-nums;font-size:.5625rem;top:2px;left:4px}.cal-time-slot:hover .cal-slot-hover-label{display:block}.cal-time-slot--off-hours{background:repeating-linear-gradient(-45deg,transparent,transparent 4px,oklch(.55 .18 15/.14)4px,oklch(.55 .18 15/.14)8px),oklch(.55 .18 15/.07)}:root.light .cal-time-slot--off-hours{background:repeating-linear-gradient(-45deg,transparent,transparent 4px,oklch(.6 .18 18/.14)4px,oklch(.6 .18 18/.14)8px),oklch(.6 .18 18/.06)}.cal-time-slot--off-hours{cursor:not-allowed}.cal-time-slot--off-hours .cal-slot-hover-label{display:none!important}.cal-time-slot--past{opacity:.5}.cal-event,.mobile-cal-event{position:absolute;display:flex;border-radius:var(--radius-sm);cursor:pointer;z-index:2;box-sizing:border-box;transition:box-shadow .2s,transform .15s}.cal-event-color-bar,.mobile-cal-event-accent{background:var(--event-color);flex-shrink:0}.cal-event-content,.mobile-cal-event-body{display:flex;overflow:hidden;flex-direction:column;flex:1;gap:.0625rem;min-width:0;padding:.25rem .5rem}.cal-event-title,.mobile-cal-event-title{color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600;line-height:1.3}.cal-event-time,.mobile-cal-event-time{color:var(--text-muted);white-space:nowrap}.cal-event--past,.mobile-cal-event.past{filter:grayscale(.4);cursor:default;pointer-events:none}.cal-event{overflow:visible;background:var(--event-color);border:1px solid var(--event-color);box-shadow:0 1px 3px var(--event-color);border-radius:.375rem;min-height:1.5rem}@supports (color: color-mix(in lab, red, red)){.cal-event{background:color-mix(in srgb,var(--event-color)22%,var(--glass-bg))}}:root.light .cal-event{background:var(--event-color);border:1px solid var(--event-color);box-shadow:0 1px 3px var(--event-color)}@supports (color: color-mix(in lab, red, red)){:root.light .cal-event{background:color-mix(in srgb,var(--event-color)18%,var(--glass-bg))}}.cal-event:hover{box-shadow:0 4px 12px var(--event-color),0 0 0 1px var(--event-color);z-index:3;transform:scale(1.01)}@supports (color: color-mix(in lab, red, red)){.cal-event:hover{box-shadow:0 4px 12px color-mix(in srgb,var(--event-color)18%,transparent),0 0 0 1px color-mix(in srgb,var(--event-color)25%,transparent)}}:root.light .cal-event:hover{box-shadow:0 4px 12px var(--event-color),0 0 0 1px var(--event-color)}@supports (color: color-mix(in lab, red, red)){:root.light .cal-event:hover{box-shadow:0 4px 12px color-mix(in srgb,var(--event-color)18%,transparent),0 0 0 1px color-mix(in srgb,var(--event-color)25%,transparent)}}.cal-event:focus-visible{outline:2px solid var(--brand-primary);outline-offset:1px}.cal-event[draggable=true]{cursor:grab}.cal-event[draggable=true]:active{cursor:grabbing}.cal-event--dragging{opacity:.4;box-shadow:none;transform:none}.cal-touch-drag-ghost{overflow:hidden;opacity:.85;pointer-events:none;z-index:var(--z-drag-ghost);touch-action:none;border-radius:6px;transform:scale(1.04);box-shadow:0 4px 16px #00000040}.cal-event--past{opacity:.45}.cal-event--pending{opacity:.7;border-style:dashed}.cal-event--pending .cal-event-color-bar{animation:tm-pulse 2s ease-in-out infinite}.cal-event--cancelled,.cal-event--no-show{opacity:.35;filter:grayscale(.7);pointer-events:auto;cursor:pointer;border-style:dashed}.cal-event--cancelled .cal-event-color-bar,.cal-event--no-show .cal-event-color-bar{background:var(--text-muted)!important}.cal-event-status-tag{display:inline-block;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-left:.25rem;font-size:.5625rem;font-weight:600}.cal-event-color-bar{box-shadow:1px 0 6px var(--event-color);border-radius:4px 0 0 4px;width:4px}@supports (color: color-mix(in lab, red, red)){.cal-event-color-bar{box-shadow:1px 0 6px color-mix(in srgb,var(--event-color)25%,transparent)}}:root.light .cal-event-color-bar{box-shadow:1px 0 4px var(--event-color)}@supports (color: color-mix(in lab, red, red)){:root.light .cal-event-color-bar{box-shadow:1px 0 4px color-mix(in srgb,var(--event-color)18%,transparent)}}.cal-event-title{font-size:.6875rem}.cal-event-time{opacity:.75;font-size:.5625rem}.cal-event--compact .cal-event-content{flex-direction:row;align-items:baseline;gap:.375rem;padding:.125rem .4rem}.cal-event--compact .cal-event-title{font-size:.6875rem}.cal-event--compact .cal-event-time{flex-shrink:0;font-size:.5625rem}.cal-view-tab-short{display:none}@media (max-width:767px){.cal-header{padding:.5rem var(--space-3);flex-wrap:wrap;gap:.375rem .5rem;min-height:auto}.cal-header-left{flex:auto;gap:.375rem}.cal-date-label{padding:.25rem .375rem;font-size:1rem}.cal-view-tabs{flex:100%;order:10;justify-content:center}.cal-view-tab{padding:.3rem .625rem;font-size:.75rem}.cal-view-tab-full{display:none}.cal-view-tab-short{display:inline}.cal-header-right{flex:none}.cal-header-right .tm-btn{padding:.375rem .625rem;font-size:.75rem}}.cal-now-line{position:absolute;background:var(--state-error);z-index:4;pointer-events:none;box-shadow:0 0 8px var(--state-error),0 0 2px var(--state-error);height:2px;left:56px;right:0}@supports (color: color-mix(in lab, red, red)){.cal-now-line{box-shadow:0 0 8px color-mix(in oklch,var(--state-error)50%,transparent),0 0 2px var(--state-error)}}.cal-now-dot{position:absolute;background:var(--state-error);box-shadow:0 0 6px var(--state-error);border-radius:50%;width:8px;height:8px;top:-3px;left:-4px}@supports (color: color-mix(in lab, red, red)){.cal-now-dot{box-shadow:0 0 6px color-mix(in oklch,var(--state-error)50%,transparent)}}.cal-now-label{position:absolute;color:var(--state-error);text-align:right;font-variant-numeric:tabular-nums;width:44px;font-size:.5625rem;font-weight:700;line-height:1;top:-.5em;left:-50px}.cal-event--day .cal-event-title{font-size:.75rem}.cal-event--day .cal-event-time{font-size:.625rem}.cal-event-assignee{opacity:.7;font-weight:400}.cal-event-resource{opacity:.8;font-style:italic}.cal-event-customer{opacity:.8}.cal-split-header{display:flex;border-bottom:1px solid var(--border-subtle);background:var(--glass-bg);overflow-y:scroll;scrollbar-gutter:stable;flex-shrink:0}.cal-split-header::-webkit-scrollbar{width:5px}.cal-split-header::-webkit-scrollbar-track{background:0 0}.cal-split-header::-webkit-scrollbar-thumb{background:0 0}.cal-split-header-group{display:flex;border-right:1px solid var(--border-subtle);flex:1;min-width:0}.cal-split-header-group:last-child{border-right:none}.cal-split-header-cell{display:flex;border-right:1px solid var(--border-subtle);background:oklch(.35 .07 var(--split-hue)/.6);flex:1;justify-content:center;align-items: center;min-width:0;padding:.375rem .25rem;transition:background .2s}@supports (color: color-mix(in lab, red, red)){.cal-split-header-cell{border-right:1px solid color-mix(in oklch,var(--border-subtle)40%,transparent)}}:root.light .cal-split-header-cell{background:oklch(.85 .07 var(--split-hue)/.55)}.cal-split-header-cell:last-child{border-right:none}.cal-split-header-name{color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.6875rem;font-weight:600}.cal-split-header-initials{display:none;color:var(--text);font-size:.6875rem;font-weight:700}.cal-grid-day-col--split{display:flex;flex-direction:row}.cal-split-col{position:relative;border-right:1px solid var(--border-subtle);flex:1;min-width:0}@supports (color: color-mix(in lab, red, red)){.cal-split-col{border-right:1px solid color-mix(in oklch,var(--border-subtle)40%,transparent)}}.cal-split-col:last-child{border-right:none}.cal-split-col:before{content:"";position:absolute;background:oklch(.35 .05 var(--split-hue)/.25);pointer-events:none;z-index:0;inset:0}:root.light .cal-split-col:before{background:oklch(.8 .06 var(--split-hue)/.3)}.cal-split-header-cell[data-narrow=true] .cal-split-header-name{display:none}.cal-split-header-cell[data-narrow=true] .cal-split-header-initials{display:block}.cal-month-grid{display:flex;flex-direction:column;height:100%}.cal-month-header{display:grid;grid-template-columns:repeat(7,1fr);border-bottom:1px solid var(--border-subtle);background:var(--glass-bg);backdrop-filter:blur(12px)saturate(150%);-webkit-backdrop-filter:blur(12px)saturate(150%);flex-shrink:0}.cal-month-day-name{text-align:center;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);border-right:1px solid var(--border-subtle);padding:.5rem;font-size:.625rem;font-weight:600}@supports (color: color-mix(in lab, red, red)){.cal-month-day-name{border-right:1px solid color-mix(in oklch,var(--border-subtle)60%,transparent)}}.cal-month-day-name:last-child{border-right:none}.cal-month-body{display:grid;grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(6,1fr);flex:1;min-height:0}@keyframes monthSlideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes monthSlideDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.cal-month-slide-up{animation:monthSlideUp .2s ease forwards}.cal-month-slide-down{animation:monthSlideDown .2s ease forwards}.cal-month-cell{position:relative;border-right:1px solid var(--border-section);border-bottom:1px solid var(--border-section);cursor:pointer;overflow:hidden;display:flex;flex-direction:column;min-height:0;padding:.375rem .375rem .25rem;transition:background .15s}@supports (color: color-mix(in lab, red, red)){.cal-month-cell{border-right:1px solid color-mix(in oklch,var(--border-section)60%,transparent)}}.cal-month-cell:nth-child(7n){border-right:none}.cal-month-cell:hover{background:var(--hover-bg-subtle)}.cal-month-cell--drop-target{box-shadow:inset 0 0 0 2px var(--brand-primary);background:var(--brand-primary)!important}@supports (color: color-mix(in lab, red, red)){.cal-month-cell--drop-target{background:color-mix(in srgb,var(--brand-primary)10%,transparent)!important}}.cal-month-cell.outside{opacity:.4}.cal-month-cell.today{background:var(--brand-primary)}@supports (color: color-mix(in lab, red, red)){.cal-month-cell.today{background:color-mix(in oklch,var(--brand-primary)6%,transparent)}}:root.light .cal-month-cell.today{background:var(--brand-primary)}@supports (color: color-mix(in lab, red, red)){:root.light .cal-month-cell.today{background:color-mix(in oklch,var(--brand-primary)6%,transparent)}}.cal-month-date{color:var(--text);display:flex;border-radius:50%;flex-shrink:0;justify-content:center;align-items: center;width:26px;height:26px;margin-bottom:.1875rem;transition:background .2s,color .2s,box-shadow .2s;font-size:.8125rem;font-weight:500}.cal-month-date.today{background:var(--brand-primary);color:var(--brand-text);box-shadow:0 2px 6px var(--brand-primary);font-weight:700}@supports (color: color-mix(in lab, red, red)){.cal-month-date.today{box-shadow:0 2px 6px color-mix(in oklch,var(--brand-primary)35%,transparent)}}.cal-month-events{display:flex;overflow:hidden;flex-direction:column;flex:1;gap:.125rem;min-height:0}.cal-month-event{position:relative;display:flex;cursor:pointer;background:var(--event-color);border:1px solid var(--event-color);border-radius:.25rem;align-items: center;gap:.375rem;min-width:0;padding:.1875rem .375rem;transition:background .15s,transform .1s;font-size:.6875rem}@supports (color: color-mix(in lab, red, red)){.cal-month-event{background:color-mix(in srgb,var(--event-color)20%,transparent)}}:root.light .cal-month-event{background:var(--event-color);border-color:var(--event-color)}@supports (color: color-mix(in lab, red, red)){:root.light .cal-month-event{background:color-mix(in srgb,var(--event-color)18%,transparent)}}.cal-month-event:hover{background:var(--event-color);transform:translate(1px)}@supports (color: color-mix(in lab, red, red)){.cal-month-event:hover{background:color-mix(in srgb,var(--event-color)30%,transparent)}}:root.light .cal-month-event:hover{background:var(--event-color)}@supports (color: color-mix(in lab, red, red)){:root.light .cal-month-event:hover{background:color-mix(in srgb,var(--event-color)28%,transparent)}}.cal-event-popup{position:absolute;padding:var(--space-3).875rem;border-radius:var(--radius-md);background:var(--popup-glass-bg);border:1px solid var(--popup-glass-border);box-shadow:var(--popup-glass-shadow);backdrop-filter:blur(var(--popup-glass-blur));-webkit-backdrop-filter:blur(var(--popup-glass-blur));color:var(--text);z-index:20;opacity:0;visibility:hidden;pointer-events:none;width:min(280px,80vw);transition:opacity .18s,transform .18s;top:calc(100% + 8px);left:50%;transform:translate(-50%)translateY(6px)}.cal-event:hover .cal-event-popup,.cal-event:focus-within .cal-event-popup,.cal-month-event:hover .cal-event-popup,.cal-month-event:focus-within .cal-event-popup{opacity:1;visibility:visible;transform:translate(-50%)translateY(0)}.cal-event-popup-title-row{display:flex;justify-content:space-between;align-items: center;gap:.5rem;margin-bottom:.375rem}.cal-event-popup-title{color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;font-size:.8125rem;font-weight:700}.cal-event-popup-category{display:inline-flex;color:var(--event-color-contrast,#fff);background:var(--event-color);border:1px solid var(--event-color);backdrop-filter:blur(calc(var(--popup-glass-blur)*.75));-webkit-backdrop-filter:blur(calc(var(--popup-glass-blur)*.75));border-radius:999px;flex-shrink:0;align-items: center;padding:.125rem .45rem;font-size:.625rem;font-weight:700}@supports (color: color-mix(in lab, red, red)){.cal-event-popup-category{background:color-mix(in srgb,var(--event-color)var(--popup-badge-bg-mix),transparent)}}.cal-event-popup-line{display:grid;grid-template-columns:54px 1fr;color:var(--text);align-items: start;gap:.5rem;margin-bottom:.25rem;font-size:.6875rem;line-height:1.35}.cal-event-popup-label{color:var(--text-muted);font-weight:600}.cal-event-popup-desc{color:var(--text-muted);display:-webkit-box;line-clamp:2;-webkit-line-clamp:2;overflow:hidden;-webkit-box-orient:vertical;margin-top:.35rem;font-size:.6875rem;line-height:1.35}.cal-event-popup-notes{border-top:1px solid var(--glass-border);display:flex;flex-direction:column;gap:.25rem;margin-top:.35rem;padding-top:.35rem}.cal-event-popup-note{display:flex;color:var(--text-muted);gap:.375rem;font-size:.6875rem;line-height:1.35}.cal-event-popup-note-label{color:var(--state-warning);white-space:nowrap;flex-shrink:0;font-weight:600}.cal-month-event[draggable=true]{cursor:grab}.cal-month-event[draggable=true]:active{cursor:grabbing}.cal-month-event--dragging{opacity:.4}.cal-month-event--past{opacity:.4;filter:grayscale(.4);cursor:default;pointer-events:none}.cal-month-event--pending{opacity:.7;border-style:dashed}.cal-month-event--pending .cal-month-event-dot{animation:tm-pulse 2s ease-in-out infinite}.cal-month-event--cancelled,.cal-month-event--no-show{opacity:.35;filter:grayscale(.7);pointer-events:auto;cursor:pointer;border-style:dashed}.cal-month-event--cancelled .cal-month-event-dot,.cal-month-event--no-show .cal-month-event-dot{background:var(--text-muted)}.cal-month-cell.past{opacity:.7}.cal-month-event-dot{background:var(--event-color);box-shadow:0 0 6px var(--event-color);border-radius:50%;flex-shrink:0;width:5px;height:5px}@supports (color: color-mix(in lab, red, red)){.cal-month-event-dot{box-shadow:0 0 6px color-mix(in srgb,var(--event-color)55%,transparent)}}:root.light .cal-month-event-dot{box-shadow:0 0 5px var(--event-color)}@supports (color: color-mix(in lab, red, red)){:root.light .cal-month-event-dot{box-shadow:0 0 5px color-mix(in srgb,var(--event-color)50%,transparent)}}.cal-month-event-title{color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0;font-size:.625rem;font-weight:600}.cal-month-event-time{color:var(--text-muted);flex-shrink:0;font-size:.5625rem;font-weight:400}.cal-month-more{color:var(--brand-primary);opacity:.8;padding:.125rem .375rem;font-size:.5625rem;font-weight:600}.cal-modal-templates{padding:0 var(--space-6);margin-bottom:var(--space-1)}.cal-template-grid{display:flex;flex-wrap:wrap;gap:.3125rem}.cal-template-chip{display:inline-flex;border:1px solid var(--border-subtle);border-radius:var(--radius-pill);cursor:pointer;font-size:var(--font-xs);color:var(--text);background:0 0;align-items:baseline;gap:.3125rem;padding:.3125rem .625rem;transition:all .2s;font-weight:500}.cal-template-chip:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.cal-template-chip:hover{border-color:var(--chip-color);background:var(--chip-color);transform:translateY(-1px)}@supports (color: color-mix(in lab, red, red)){.cal-template-chip:hover{background:color-mix(in srgb,var(--chip-color)8%,transparent)}}.cal-template-chip.active{border-color:var(--chip-color);background:var(--chip-color);box-shadow:0 0 0 1px var(--chip-color),0 2px 6px var(--chip-color)}@supports (color: color-mix(in lab, red, red)){.cal-template-chip.active{background:color-mix(in srgb,var(--chip-color)12%,transparent)}}.cal-template-dot{background:var(--chip-color);border-radius:50%;flex-shrink:0;align-self: center;width:7px;height:7px}.cal-template-duration{color:var(--text-muted);opacity:.8;font-size:.625rem}.picker-container{position:relative}.picker-trigger{display:flex;cursor:pointer;text-align:left;white-space:nowrap;align-items: center;gap:.5rem;width:100%}.picker-trigger-icon{color:var(--text-muted);flex-shrink:0}.picker-native-wrap{display:flex;border-radius:var(--radius-md);border:1px solid var(--input-border);background:var(--input-bg);color:var(--text);align-items: center;gap:.5rem;width:100%;padding:.5rem .75rem;font-size:.875rem}.picker-native-input{color:var(--text);font-size:inherit;outline:none;-webkit-appearance:none;appearance:none;background:0 0;border:none;flex:1;min-width:0;padding:0;font-family:inherit}.picker-native-input::-webkit-calendar-picker-indicator{filter:invert(.5)}.picker-dropdown{position:absolute;z-index:100;background:var(--popup-glass-bg);border:1px solid var(--popup-glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);animation:calSlideUp .15s cubic-bezier(.4,0,.2,1);backdrop-filter:blur(var(--popup-glass-blur));-webkit-backdrop-filter:blur(var(--popup-glass-blur));overflow:hidden;top:calc(100% + 6px);left:0}.datepicker-dropdown{width:280px;padding:.75rem}.datepicker-nav{display:flex;justify-content:space-between;align-items: center;padding:.25rem 0 .625rem}.datepicker-nav-btn{display:flex;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items: center;width:30px;height:30px;transition:all .15s}.datepicker-nav-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.datepicker-nav-btn:hover{background:var(--hover-bg);color:var(--text)}.datepicker-nav-label{color:var(--text);user-select:none;font-size:.875rem;font-weight:600}.datepicker-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;padding-bottom:.25rem}.datepicker-weekday{text-align:center;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;padding:.25rem 0;font-size:.6875rem;font-weight:600}.datepicker-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.datepicker-day{aspect-ratio:1;display:flex;color:var(--text);cursor:pointer;position:relative;background:0 0;border:none;border-radius:.375rem;justify-content:center;align-items: center;width:100%;transition:all .12s;font-size:.8125rem;font-weight:500}.datepicker-day:hover:not(.outside):not(.selected){background:var(--hover-bg)}.datepicker-day.outside{color:var(--text-muted);opacity:.35;cursor:default}.datepicker-day.today:not(.selected){color:var(--brand-primary);font-weight:700}.datepicker-day.today:not(.selected):after{content:"";position:absolute;background:var(--brand-primary);border-radius:50%;width:4px;height:4px;bottom:3px;left:50%;transform:translate(-50%)}.datepicker-day.selected{background:var(--brand-primary);color:var(--brand-text);font-weight:600}.datepicker-day.disabled{color:var(--state-warning);opacity:.5;cursor:not-allowed;text-decoration:line-through}.datepicker-day.disabled:hover{background:0 0}.datepicker-footer{display:flex;justify-content:center;padding-top:.5rem}.datepicker-today-btn{color:var(--brand-primary);cursor:pointer;background:0 0;border:none;border-radius:.375rem;padding:.375rem .75rem;transition:background .15s;font-size:.75rem;font-weight:600}.datepicker-today-btn:hover{background:var(--hover-bg)}.timepicker-dropdown{width:220px}.timepicker-presets{display:grid;grid-template-columns:1fr 1fr;gap:.375rem;padding:.75rem}.timepicker-preset{font-size:var(--font-xs);color:var(--text);background:var(--hover-bg);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);cursor:pointer;text-align:center;padding:.375rem .5rem;transition:all .12s;font-weight:500}.timepicker-preset:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.timepicker-preset:hover{background:var(--brand-primary);border-color:var(--brand-primary);color:var(--brand-primary)}@supports (color: color-mix(in lab, red, red)){.timepicker-preset:hover{background:color-mix(in srgb,var(--brand-primary)12%,transparent)}}.timepicker-preset.active{background:var(--brand-primary);border-color:var(--brand-primary);color:var(--brand-primary);font-weight:600}@supports (color: color-mix(in lab, red, red)){.timepicker-preset.active{background:color-mix(in srgb,var(--brand-primary)15%,transparent)}}.timepicker-divider{background:var(--border-subtle);height:1px;margin:0}.timepicker-columns{display:flex;height:200px;padding:0 .375rem}.timepicker-col{display:flex;flex-direction:column;flex:1;min-width:0}.timepicker-col-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);text-align:center;flex-shrink:0;padding:.5rem 0 .25rem;font-size:.625rem;font-weight:700}.timepicker-col-sep{background:var(--border-subtle);flex-shrink:0;width:1px;margin:.5rem 0}.timepicker-scroll{overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border-subtle)transparent;flex:1;padding:0 .25rem .25rem}.timepicker-scroll::-webkit-scrollbar{width:4px}.timepicker-scroll::-webkit-scrollbar-track{background:0 0}.timepicker-scroll::-webkit-scrollbar-thumb{background:var(--border-subtle);border-radius:2px}.timepicker-cell{display:flex;font-variant-numeric:tabular-nums;color:var(--text);cursor:pointer;background:0 0;border:none;border-radius:.375rem;justify-content:center;align-items: center;width:100%;padding:.375rem 0;transition:all .12s;font-size:.8125rem;font-weight:500}.timepicker-cell:hover:not(.active){background:var(--hover-bg)}.timepicker-cell.active{background:var(--brand-primary);color:var(--brand-text);font-weight:600}.timepicker-footer{padding:.5rem .75rem .75rem}.timepicker-done{padding:var(--space-2);font-size:var(--font-sm);color:var(--brand-text);background:var(--brand-primary);border-radius:var(--radius-sm);cursor:pointer;border:none;width:100%;transition:opacity .15s;font-weight:600}.timepicker-done:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.timepicker-done:hover{opacity:.9}.cal-detail-modal{background:var(--popup-glass-bg);border:1px solid var(--popup-glass-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);backdrop-filter:blur(var(--popup-glass-blur));-webkit-backdrop-filter:blur(var(--popup-glass-blur));width:90%;max-width:460px;max-height:90vh;overflow:hidden;animation:calModalIn .25s cubic-bezier(.2,.6,.35,1);display:flex;position:relative;max-height:90dvh}.cal-detail-close{position:absolute;display:flex;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;z-index:2;background:0 0;border:none;justify-content:center;align-items: center;width:44px;height:44px;transition:all .2s;top:.625rem;right:.625rem}.cal-detail-close:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.cal-detail-close:hover{background:var(--hover-bg);color:var(--text);transform:scale(1.05)}.cal-detail-accent{border-radius:1rem 0 0 1rem;flex-shrink:0;width:4px}.cal-detail-content{display:flex;overflow-y:auto;flex-direction:column;flex:1;gap:1rem;min-width:0;padding:1.25rem 1.5rem 1.125rem}.cal-detail-top{display:flex;flex-direction:column;gap:.5rem;padding-right:2rem}.cal-detail-category{display:inline-flex;letter-spacing:.04em;text-transform:uppercase;background:var(--event-color);color:var(--event-color);border:1px solid var(--event-color);border-radius:9999px;align-items: center;width:-moz-fit-content;width:fit-content;padding:.1875rem .5rem;font-size:.625rem;font-weight:600}@supports (color: color-mix(in lab, red, red)){.cal-detail-category{background:color-mix(in srgb,var(--event-color)20%,transparent)}}:root.light .cal-detail-category{background:var(--event-color);border-color:var(--event-color)}@supports (color: color-mix(in lab, red, red)){:root.light .cal-detail-category{background:color-mix(in srgb,var(--event-color)18%,transparent)}}.cal-detail-title{color:var(--text);letter-spacing:-.015em;margin:0;font-size:1.25rem;font-weight:700;line-height:1.3}.cal-detail-info-rows,.cal-detail-assignee,.cal-detail-desc{background:var(--hover-bg);border-radius:var(--radius-md);border:1px solid var(--border-subtle)}.cal-detail-info-rows{display:flex;flex-direction:column;gap:.5rem;padding:.75rem .875rem}.cal-detail-info-row{display:flex;color:var(--text);align-items: center;gap:.5rem;font-size:.8125rem;font-weight:500}.cal-detail-info-row svg{color:var(--text-muted);flex-shrink:0}.cal-detail-duration{color:var(--text-muted);background:var(--card-bg);border:1px solid var(--border-subtle);white-space:nowrap;border-radius:9999px;padding:.125rem .4375rem;font-size:.6875rem;font-weight:600}.cal-detail-price-delta{color:var(--state-success);background:var(--state-success-bg);border:1px solid var(--state-success-border);white-space:nowrap;border-radius:9999px;margin-left:.375rem;padding:.125rem .375rem;font-size:.6875rem;font-weight:600}.cal-detail-section{display:flex;flex-direction:column;gap:.5rem}.cal-detail-section-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-size:.6875rem;font-weight:600;line-height:1}.cal-detail-assignee{display:flex;align-items: center;gap:.75rem;padding:.625rem .875rem}.cal-detail-avatar{background:var(--event-color);color:var(--brand-text);display:flex;letter-spacing:.02em;box-shadow:0 2px 8px var(--event-color),0 0 14px var(--event-color);border-radius:50%;flex-shrink:0;justify-content:center;align-items: center;width:36px;height:36px;font-size:.75rem;font-weight:700}@supports (color: color-mix(in lab, red, red)){.cal-detail-avatar{box-shadow:0 2px 8px color-mix(in srgb,var(--event-color)40%,transparent),0 0 14px color-mix(in srgb,var(--event-color)15%,transparent)}}:root.light .cal-detail-avatar{box-shadow:0 2px 8px var(--event-color)}@supports (color: color-mix(in lab, red, red)){:root.light .cal-detail-avatar{box-shadow:0 2px 8px color-mix(in srgb,var(--event-color)35%,transparent)}}.cal-detail-assignee-name{color:var(--text);font-size:.875rem;font-weight:500}.cal-detail-desc{color:var(--text);opacity:.8;margin:0;padding:.625rem .875rem;font-size:.875rem;line-height:1.65}.cal-detail-notes{display:flex;flex-direction:column;gap:.5rem}.cal-detail-note{border:1px solid var(--state-warning-border);background:var(--state-warning-bg);border-radius:.5rem;padding:.5rem .75rem}.cal-detail-note-label{display:block;text-transform:uppercase;letter-spacing:.04em;color:var(--state-warning);margin-bottom:.125rem;font-size:.6875rem;font-weight:600}.cal-detail-note-body{color:var(--text);margin:0;font-size:.8125rem;line-height:1.5}.cal-detail-addons{display:flex;flex-wrap:wrap;gap:.375rem}.cal-detail-addon-chip{display:inline-flex;background:var(--hover-bg);border:1px solid var(--border-subtle);color:var(--text);border-radius:9999px;align-items: center;gap:.375rem;padding:.25rem .625rem;font-size:.75rem;font-weight:500}.cal-detail-addon-price{color:var(--brand-primary);font-size:.6875rem;font-weight:600}.cal-detail-addon-dur{color:var(--text-muted);font-size:.6875rem}.cal-detail-footer{display:flex;border-top:1px solid var(--border-subtle);flex-wrap:wrap;justify-content:flex-end;gap:.5rem;margin-top:.25rem;padding-top:.625rem}.cal-detail-btn-cancel{color:#ef4444;background:#ef44441f;border:1px solid #ef444440}.cal-detail-btn-cancel:hover{background:#ef444438}.cal-detail-btn-noshow{color:#f59e0b;background:#f59e0b1f;border:1px solid #f59e0b40}.cal-detail-btn-noshow:hover{background:#f59e0b38}@media (max-width:767px){.cal-detail-content{gap:.75rem;padding:1rem 1rem .875rem}.cal-detail-info-row{display:flex;align-items: center;gap:.625rem;min-height:44px}.cal-detail-footer{position:sticky;padding:.625rem 0;padding-bottom:calc(.625rem + env(safe-area-inset-bottom,0));border-top:1px solid var(--border-subtle);z-index:1;background:0 0;flex-wrap:wrap;gap:.5rem;bottom:0}.cal-detail-footer .tm-btn,.cal-detail-footer .queue-btn{flex:1 1 0;min-height:44px}.cal-modal-templates{margin:0;padding:0}.cal-template-grid{flex-wrap:wrap;gap:.375rem}.cal-template-chip{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;min-height:1.75rem;padding:.3rem .5rem;font-size:.72rem}.cal-template-chip>span:nth-child(2){overflow:hidden;text-overflow:ellipsis;max-width:7rem}.cal-template-dot{width:6px;height:6px}.cal-template-duration{font-size:.6rem}.cal-multi-chip{gap:.25rem;padding:.25rem .5rem;font-size:.78rem}.cal-multi-chip-remove{width:1.5rem;height:1.5rem;font-size:1rem}.cal-form-note-row{padding:.375rem .5rem}.cal-form-note-input{min-height:2rem;font-size:.78rem}.cal-new-customer-form{gap:.375rem;padding:.625rem}.cal-new-customer-row{flex-direction:column;gap:.375rem}.cal-new-customer-save,.cal-new-customer-cancel{text-align:center;flex:1;min-height:2.25rem}}.mobile-cal{display:flex;height:calc(100dvh - var(--bottomnav-height));overflow:hidden;flex-direction:column;width:100%;max-width:100vw}.mobile-cal-top-bar{display:flex;flex-shrink:0;justify-content:space-between;align-items: center;padding:.5rem .875rem .375rem}.mobile-cal-month-btn{display:inline-flex;color:var(--text);letter-spacing:-.02em;cursor:pointer;border-radius:var(--radius-md);background:0 0;border:none;align-items: center;gap:.375rem;padding:.25rem .5rem;transition:background .2s;font-size:1.125rem;font-weight:700}.mobile-cal-month-btn:active{background:var(--hover-bg);transform:scale(.97)}.mobile-cal-month-btn svg{opacity:.4;transition:transform .2s}.mobile-cal-top-actions{display:flex;align-items: center;gap:.5rem}.mobile-cal-today-chip{border:1px solid var(--border-subtle);color:var(--primary);font-size:var(--font-2xs);border-radius:var(--radius-pill);cursor:pointer;text-transform:uppercase;letter-spacing:.04em;background:0 0;padding:.3125rem .75rem;transition:all .2s;font-weight:600}.mobile-cal-today-chip:active{background:var(--primary);border-color:var(--primary);transform:scale(.95)}@supports (color: color-mix(in lab, red, red)){.mobile-cal-today-chip:active{background:color-mix(in srgb,var(--primary)10%,transparent)}}.mobile-cal-add-chip{background:var(--primary);color:var(--primary-text,#fff);display:flex;cursor:pointer;box-shadow:0 2px 8px var(--primary);border:none;border-radius:50%;justify-content:center;align-items: center;width:34px;height:34px;transition:transform .15s,box-shadow .2s}@supports (color: color-mix(in lab, red, red)){.mobile-cal-add-chip{box-shadow:0 2px 8px color-mix(in oklch,var(--primary)35%,transparent)}}.mobile-cal-add-chip:active{transform:scale(.9)}.mobile-cal-picker{border-bottom:1px solid var(--border-subtle);background:var(--glass-bg);backdrop-filter:blur(12px)saturate(150%);-webkit-backdrop-filter:blur(12px)saturate(150%);flex-shrink:0;padding:.25rem .75rem .5rem}.mobile-cal-picker-nav{display:flex;justify-content:space-between;align-items: center;margin-bottom:.25rem}.mobile-cal-picker-arrow{display:flex;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items: center;width:32px;height:32px;transition:background .15s,color .15s}.mobile-cal-picker-arrow:active{background:var(--hover-bg);color:var(--text)}.mobile-cal-picker-label{color:var(--text);font-size:.875rem;font-weight:700}.mobile-cal-picker-weekdays{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;margin-bottom:.125rem}.mobile-cal-picker-wd{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;padding:.25rem 0;font-size:.5625rem;font-weight:600}.mobile-cal-picker-grid{display:grid;grid-template-columns:repeat(7,1fr);justify-items:center;gap:2px}.mobile-cal-picker-day{position:relative;display:flex;color:var(--text);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items: center;width:36px;height:36px;transition:all .15s;font-size:.8125rem;font-weight:500}.mobile-cal-picker-day:active{background:var(--hover-bg)}.mobile-cal-picker-day.outside{color:var(--text-muted);opacity:.25;pointer-events:none}.mobile-cal-picker-day.today{background:var(--primary);color:var(--primary);font-weight:700}@supports (color: color-mix(in lab, red, red)){.mobile-cal-picker-day.today{background:color-mix(in srgb,var(--primary)15%,transparent)}}.mobile-cal-picker-day.selected{background:var(--primary);color:var(--primary-text,#fff);box-shadow:0 2px 6px var(--primary);font-weight:700}@supports (color: color-mix(in lab, red, red)){.mobile-cal-picker-day.selected{box-shadow:0 2px 6px color-mix(in oklch,var(--primary)35%,transparent)}}.mobile-cal-picker-day.selected.today{background:var(--primary);color:var(--primary-text,#fff)}.mobile-cal-picker-dot{position:absolute;background:var(--primary);opacity:.6;border-radius:50%;width:4px;height:4px;bottom:2px}.mobile-cal-strip{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;border-bottom:1px solid var(--border-subtle);mask-image:linear-gradient(90deg,#0000,#000 1rem calc(100% - 1rem),#0000);-webkit-mask-image:linear-gradient(90deg,#0000,#000 1rem calc(100% - 1rem),#0000);flex-shrink:0;gap:.125rem;padding:.375rem .5rem}.mobile-cal-strip::-webkit-scrollbar{display:none}.mobile-cal-day{display:flex;border-radius:var(--radius-lg);cursor:pointer;scroll-snap-align:center;position:relative;background:0 0;border:none;flex-direction:column;justify-content:center;align-items: center;gap:.0625rem;min-width:46px;padding:.3125rem .375rem .4375rem;transition:all .2s}.mobile-cal-day:active{transform:scale(.93)}.mobile-cal-day.weekend .mobile-cal-day-name{color:var(--text-muted)}@supports (color: color-mix(in lab, red, red)){.mobile-cal-day.weekend .mobile-cal-day-name{color:color-mix(in srgb,var(--text-muted)60%,transparent)}}.mobile-cal-day-name{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.5625rem;font-weight:600;line-height:1}.mobile-cal-day-num{color:var(--text);display:flex;border-radius:50%;justify-content:center;align-items: center;width:32px;height:32px;transition:all .2s;font-size:.9375rem;font-weight:600}.mobile-cal-day-dot{background:var(--primary);opacity:.5;border-radius:50%;width:4px;height:4px;margin-top:-1px}.mobile-cal-day-dot.invisible{visibility:hidden}.mobile-cal-day.today .mobile-cal-day-num{color:var(--primary);font-weight:800}.mobile-cal-day.today .mobile-cal-day-name{color:var(--primary);font-weight:700}.mobile-cal-day.selected{background:var(--primary);z-index:2;box-shadow:0 1px 4px var(--primary)}@supports (color: color-mix(in lab, red, red)){.mobile-cal-day.selected{background:color-mix(in srgb,var(--primary)14%,transparent)}}.mobile-cal-day.selected .mobile-cal-day-num{color:var(--primary);box-shadow:none;background:0 0;font-weight:800}.mobile-cal-day.selected .mobile-cal-day-name{color:var(--primary);font-weight:700}.mobile-cal-day.selected .mobile-cal-day-dot{background:var(--primary);opacity:1;visibility:visible}.mobile-cal-agenda{overflow-y:auto;overflow-x:hidden;flex:1;padding:0}.mobile-cal-timeline{position:relative;min-height:100%;margin:0 .75rem}.mobile-cal-hour-line{position:absolute;display:flex;cursor:pointer;align-items: flex-start;height:1px;left:0;right:0}.mobile-cal-hour-line:after{content:"";position:absolute;background:var(--border-subtle);height:1px;top:0;left:50px;right:0}@supports (color: color-mix(in lab, red, red)){.mobile-cal-hour-line:after{background:color-mix(in srgb,var(--border-subtle)70%,transparent)}}.mobile-cal-hour-line:active:after{background:var(--primary);opacity:.4}.mobile-cal-hour-text{position:absolute;color:var(--text-muted);text-align:right;user-select:none;white-space:nowrap;font-variant-numeric:tabular-nums;opacity:.8;width:44px;font-size:.5625rem;font-weight:500;top:-.375rem;left:0}.mobile-cal-event{overflow:hidden;background:var(--event-color);border:1px solid var(--event-color);text-align:left;box-shadow:0 1px 4px var(--event-color),0 0 10px var(--event-color);min-height:1.75rem;padding:0}@supports (color: color-mix(in lab, red, red)){.mobile-cal-event{background:color-mix(in srgb,var(--event-color)20%,var(--glass-bg))}}:root.light .mobile-cal-event{background:var(--event-color);border:1px solid var(--event-color);box-shadow:0 1px 4px var(--event-color)}@supports (color: color-mix(in lab, red, red)){:root.light .mobile-cal-event{background:color-mix(in srgb,var(--event-color)16%,var(--glass-bg))}}.mobile-cal-event:active{box-shadow:0 4px 16px var(--event-color);transform:scale(.97);z-index:10!important}@supports (color: color-mix(in lab, red, red)){.mobile-cal-event:active{box-shadow:0 4px 16px color-mix(in srgb,var(--event-color)20%,transparent)}}.mobile-cal-event.overlapping{box-shadow:0 1px 4px #0000000f}.mobile-cal-event.past{opacity:.4}.mobile-cal-event.pending{opacity:.7;border-style:dashed}.mobile-cal-event.pending .mobile-cal-event-accent{animation:tm-pulse 2s ease-in-out infinite}.mobile-cal-event.cancelled,.mobile-cal-event.no-show{opacity:.35;filter:grayscale(.7);border-style:dashed}.mobile-cal-event.cancelled .mobile-cal-event-accent,.mobile-cal-event.no-show .mobile-cal-event-accent{background:var(--text-muted)!important}.mobile-cal-event-accent{box-shadow:1px 0 6px var(--event-color);border-radius:4px 0 0 4px;width:4px}@supports (color: color-mix(in lab, red, red)){.mobile-cal-event-accent{box-shadow:1px 0 6px color-mix(in srgb,var(--event-color)25%,transparent)}}:root.light .mobile-cal-event-accent{box-shadow:1px 0 4px var(--event-color);width:3.5px}@supports (color: color-mix(in lab, red, red)){:root.light .mobile-cal-event-accent{box-shadow:1px 0 4px color-mix(in srgb,var(--event-color)16%,transparent)}}.mobile-cal-event-body{justify-content:center}.mobile-cal-event-title{font-size:.6875rem}.mobile-cal-event-time{display:flex;align-items: center;gap:.25rem;font-size:.5625rem;line-height:1.3}.mobile-cal-event-dur{background:var(--event-color);border-radius:.1875rem;padding:0 .25rem;font-size:.5rem;font-weight:600}@supports (color: color-mix(in lab, red, red)){.mobile-cal-event-dur{background:color-mix(in srgb,var(--event-color)16%,var(--hover-bg))}}:root.light .mobile-cal-event-dur{background:var(--event-color)}@supports (color: color-mix(in lab, red, red)){:root.light .mobile-cal-event-dur{background:color-mix(in srgb,var(--event-color)14%,var(--hover-bg))}}.mobile-cal-event.compact .mobile-cal-event-body{flex-direction:row;align-items: center;gap:.375rem;padding:.125rem .375rem}.mobile-cal-event.compact .mobile-cal-event-title{flex-shrink:1;min-width:0;font-size:.625rem}.mobile-cal-event.compact .mobile-cal-event-time{opacity:.7;flex-shrink:0;font-size:.5rem}.mobile-cal-event.compact .mobile-cal-event-accent{width:2.5px}.mobile-cal-event.tiny{border-radius:.25rem}.mobile-cal-event.tiny .mobile-cal-event-body{justify-content:center;padding:0 .375rem}.mobile-cal-event.tiny .mobile-cal-event-title{font-size:.5625rem;font-weight:700;line-height:1}.mobile-cal-event.tiny .mobile-cal-event-accent{width:2px}.mobile-cal-now-line{position:absolute;background:var(--primary);z-index:5;pointer-events:none;box-shadow:0 0 8px var(--primary),0 0 2px var(--primary);height:2px;left:40px;right:0}@supports (color: color-mix(in lab, red, red)){.mobile-cal-now-line{box-shadow:0 0 8px color-mix(in oklch,var(--primary)45%,transparent),0 0 2px var(--primary)}}.mobile-cal-now-dot{position:absolute;background:var(--primary);box-shadow:0 0 6px var(--primary);border-radius:50%;width:8px;height:8px;top:-3px;left:-4px}@supports (color: color-mix(in lab, red, red)){.mobile-cal-now-dot{box-shadow:0 0 6px color-mix(in oklch,var(--primary)45%,transparent)}}@media (max-width:1024px){.calendar-page-wrapper{height:calc(100dvh - var(--bottomnav-height) - env(safe-area-inset-top,0) - env(safe-area-inset-bottom,0))}}@media (max-width:1400px){.calendar-page-wrapper{padding:var(--space-4)}.cal-header{padding:.625rem var(--space-4);flex-wrap:wrap;gap:.625rem}.cal-now-line{left:48px}.cal-now-label{width:38px;left:-42px}.cal-header-left{flex:0 auto;order:1}.cal-view-tabs{order:3;justify-content:center;width:100%}.cal-header-right{flex:none;order:2;margin-left:auto}.cal-date-label{font-size:1.0625rem}.cal-grid-gutter,.cal-grid-time-col{width:46px}}@media (max-width:640px){.calendar-page-wrapper{height:calc(100dvh - var(--bottomnav-height) - env(safe-area-inset-top,0) - env(safe-area-inset-bottom,0));overflow:hidden;max-width:100%;padding:0}.calendar-page{box-shadow:none;overflow:hidden;backdrop-filter:none;-webkit-backdrop-filter:none;border:none;border-radius:0;max-width:100%}.calendar-body{overflow:hidden;max-width:100%}}}@keyframes calModalIn{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.cal-grid-day-header.blocked{background:var(--state-warning-bg);border-bottom:2px solid var(--state-warning-border)}.cal-day-blocked-label{color:var(--state-warning);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:var(--state-warning-bg);border-radius:.25rem;max-width:100%;margin-top:.125rem;padding:.125rem .375rem;font-size:.5625rem;font-weight:600;line-height:1.1}.cal-grid-day-col--blocked{background:repeating-linear-gradient(-45deg,var(--state-warning-bg),var(--state-warning-bg)6px,transparent 6px,transparent 14px);pointer-events:auto;cursor:not-allowed}.cal-grid-day-col--blocked .cal-time-slot{cursor:not-allowed}.cal-grid-day-col--blocked .cal-time-slot:hover{background:0 0}.cal-grid-day-col--blocked .cal-slot-hover-label{display:none}.cal-month-cell.blocked{background:var(--state-warning-bg);cursor:not-allowed}.cal-month-cell.blocked:hover{background:var(--state-warning-bg)}.cal-month-blocked-label{color:var(--state-warning);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:var(--state-warning-bg);border:1px solid var(--state-warning-border);border-radius:.1875rem;max-width:100%;margin-bottom:.125rem;padding:.0625rem .25rem;font-size:.5625rem;font-weight:600;line-height:1.1}.mobile-cal-day.blocked{border-color:var(--state-warning)}.mobile-cal-day-dot.blocked{visibility:visible;background:var(--state-warning);border-radius:50%;width:6px;height:6px;font-size:0}@media (prefers-reduced-motion:reduce){.calendar-page,.cal-header,.cal-grid-header,.cal-month-header,.mobile-cal-picker{backdrop-filter:none;-webkit-backdrop-filter:none}.cal-detail-modal,.picker-dropdown,.cal-event-popup{animation:none}.cal-event,.cal-month-event,.cal-nav-btn,.cal-view-tab,.cal-add-btn,.cal-template-chip,.mobile-cal-day,.mobile-cal-event,.datepicker-day,.timepicker-cell,.timepicker-preset{transition:none}}.cal-confirm-overlay{position:fixed;backdrop-filter:blur(4px);display:flex;z-index:var(--z-modal-overlay);animation:cal-fade-in .15s ease;background:#00000073;justify-content:center;align-items: center;inset:0}@keyframes cal-fade-in{0%{opacity:0}to{opacity:1}}.cal-confirm-dialog{background:var(--card-bg);border:1px solid var(--border-subtle);border-radius:var(--radius-lg,12px);padding:var(--space-5)var(--space-6);width:90%;max-width:380px;box-shadow:0 8px 32px #00000040}.cal-confirm-title{font-size:var(--font-lg,1.125rem);color:var(--text);margin:0 0 var(--space-2)0;font-weight:600}.cal-confirm-text{font-size:var(--font-sm,.875rem);color:var(--text-secondary);margin:0 0 var(--space-4)0;line-height:1.5}.cal-confirm-actions{display:flex;justify-content:flex-end;gap:var(--space-2)}.cal-multi-chips{display:flex;gap:var(--space-1);margin-bottom:var(--space-2);flex-wrap:wrap}.cal-multi-chip{display:inline-flex;border-radius:var(--radius-sm);background:var(--glass-bg);border:1px solid var(--border);color:var(--text);align-items: center;gap:4px;padding:2px 8px;font-size:.75rem}.cal-multi-chip-remove{all:unset;cursor:pointer;display:inline-flex;color:var(--text-secondary);border-radius:50%;justify-content:center;align-items: center;width:16px;height:16px;transition:color .15s,background .15s;font-size:14px;line-height:1}.cal-multi-chip-remove:hover{color:var(--state-error);background:#ff3b301f}.cal-new-customer-btn{display:inline-flex;color:var(--brand-primary);font-size:var(--font-xs);cursor:pointer;background:0 0;border:none;align-items: center;gap:.375rem;padding:.375rem 0;transition:opacity .15s;font-weight:600}.cal-new-customer-btn:hover{opacity:.8}.cal-new-customer-btn svg{flex-shrink:0}.cal-new-customer-form{display:flex;border:1px solid var(--card-border);border-radius:var(--radius-md);background:var(--card-bg);flex-direction:column;gap:.5rem;padding:.75rem}.cal-new-customer-row{display:flex;gap:.5rem}.cal-new-customer-row .cal-form-input{flex:1;min-width:0}.cal-new-customer-actions{display:flex;gap:.5rem;padding-top:.25rem}.cal-new-customer-save{border-radius:var(--radius-md);background:var(--brand-primary);color:#fff;font-size:var(--font-xs);cursor:pointer;white-space:nowrap;border:none;padding:.4375rem .875rem;transition:opacity .15s;font-weight:600}.cal-new-customer-save:hover:not(:disabled){opacity:.85}.cal-new-customer-save:disabled{opacity:.5;cursor:not-allowed}.cal-new-customer-cancel{border:1px solid var(--card-border);border-radius:var(--radius-md);color:var(--text-muted);font-size:var(--font-xs);cursor:pointer;background:0 0;padding:.4375rem .75rem;transition:all .15s;font-weight:500}.cal-new-customer-cancel:hover{background:var(--brand-hover);color:var(--text)}.cal-recurrence-actions{display:flex;gap:var(--space-2);margin-top:var(--space-3);flex-direction:column}.cal-recurrence-actions .tm-btn{justify-content:center;width:100%}.cal-form-hint{margin:var(--space-1)0 0;color:var(--text-secondary);font-size:.75rem}.cal-form-notes{display:flex;flex-direction:column;gap:.5rem}.cal-form-note-row{border:1px solid var(--state-warning-border);background:var(--state-warning-bg);border-radius:.5rem;padding:.5rem .625rem}.cal-form-note-label{display:block;text-transform:uppercase;letter-spacing:.04em;color:var(--state-warning);margin-bottom:.25rem;font-size:.6875rem;font-weight:600}.cal-form-note-input{resize:vertical;min-height:2.25rem;font-size:.8125rem;line-height:1.5}.cal-detail-recurrence{display:inline-flex;border-radius:var(--radius-sm);background:var(--glass-bg);border:1px solid var(--border);color:var(--text-secondary);text-transform:capitalize;align-items: center;gap:4px;padding:2px 8px;font-size:.6875rem;font-weight:500}@layer base{.login-orb{position:absolute;filter:blur(80px);opacity:.35;pointer-events:none;will-change:transform;border-radius:50%}.login-orb--1{background:var(--brand-primary);animation:login-orb-float 12s ease-in-out infinite;width:400px;height:400px;top:-10%;left:-5%}.login-orb--2{background:var(--brand-primary);animation:login-orb-float 15s ease-in-out infinite reverse;width:300px;height:300px;bottom:-5%;right:-8%}@supports (color: color-mix(in lab, red, red)){.login-orb--2{background:color-mix(in oklch,var(--brand-primary)60%,oklch(.6 .2 280))}}.login-orb--3{background:var(--brand-primary);animation:login-orb-float 10s ease-in-out infinite 2s;width:200px;height:200px;top:50%;left:60%}@supports (color: color-mix(in lab, red, red)){.login-orb--3{background:color-mix(in oklch,var(--brand-primary)40%,oklch(.65 .18 160))}}@keyframes login-orb-float{0%,to{transform:translate(0)scale(1)}25%{transform:translate(30px,-40px)scale(1.08)}50%{transform:translate(-20px,25px)scale(.95)}75%{transform:translate(15px,15px)scale(1.05)}}.login-card{position:relative;border-radius:var(--radius-lg);background:var(--card-bg);border:1px solid var(--glass-border);backdrop-filter:blur(24px)saturate(1.5);-webkit-backdrop-filter:blur(24px)saturate(1.5);animation:login-card-in .4s cubic-bezier(.4,0,.15,1);overflow:hidden;padding:2.5rem 2rem 2rem;box-shadow:0 8px 32px #0000002e,0 1.5px 4px #00000014,inset 0 .5px #ffffff0f}@supports (color: color-mix(in lab, red, red)){.login-card{background:color-mix(in oklch,var(--card-bg)72%,transparent)}}.login-card:before{content:"";position:absolute;background:linear-gradient(90deg,transparent,var(--brand-primary),transparent);border-radius:1px;height:1px;top:0;left:10%;right:10%}@supports (color: color-mix(in lab, red, red)){.login-card:before{background:linear-gradient(90deg,transparent,color-mix(in oklch,var(--brand-primary)40%,transparent),transparent)}}@keyframes login-card-in{0%{opacity:0;transform:translateY(24px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.login-brand{display:flex;justify-content:center;align-items: center;gap:.625rem;margin-bottom:1.75rem}.login-brand-icon{display:flex;border-radius:var(--radius-md);background:var(--brand-primary);border:1px solid var(--brand-primary);color:var(--brand-primary);justify-content:center;align-items: center;width:44px;height:44px}@supports (color: color-mix(in lab, red, red)){.login-brand-icon{background:color-mix(in oklch,var(--brand-primary)15%,transparent)}}.login-brand-text{letter-spacing:-.03em;color:var(--text);font-size:1.375rem;font-weight:800}.login-title{color:var(--text);letter-spacing:-.02em;margin:0 0 .25rem;font-size:1.625rem;font-weight:700}.login-subtitle{color:var(--text-muted);margin:0;font-size:.875rem}.login-bubble{display:flex;border-radius:var(--radius-md);background:var(--card-bg);backdrop-filter:blur(20px)saturate(1.3);-webkit-backdrop-filter:blur(20px)saturate(1.3);animation:login-bubble-in .3s cubic-bezier(.4,0,.15,1);align-items: center;gap:.5rem;margin-bottom:.75rem;padding:.75rem 1rem;font-size:.8125rem;font-weight:500;box-shadow:0 4px 20px #00000014,inset 0 .5px #ffffff0a}@supports (color: color-mix(in lab, red, red)){.login-bubble{background:color-mix(in oklch,var(--card-bg)70%,transparent)}}.login-bubble--error{border:1px solid var(--state-error);color:var(--state-error);animation:login-bubble-in .3s cubic-bezier(.4,0,.15,1),login-shake .4s .15s ease}@supports (color: color-mix(in lab, red, red)){.login-bubble--error{border:1px solid color-mix(in oklch,var(--state-error)18%,var(--glass-border))}}.login-bubble--success{border:1px solid var(--state-success);color:var(--state-success)}@supports (color: color-mix(in lab, red, red)){.login-bubble--success{border:1px solid color-mix(in oklch,var(--state-success)18%,var(--glass-border))}}@keyframes login-bubble-in{0%{opacity:0;transform:translateY(8px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes login-shake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(5px)}60%{transform:translate(-4px)}80%{transform:translate(2px)}}.login-form{display:flex;flex-direction:column;gap:1.25rem}.login-field{display:flex;flex-direction:column;gap:.375rem}.login-label-row{display:flex;justify-content:space-between;align-items: center}.login-label{color:var(--text-muted);font-size:.8125rem;font-weight:600}.login-forgot{font-size:.75rem}.login-input-wrap{position:relative;display:flex;align-items: center}.login-input-icon{position:absolute;color:var(--text-muted);pointer-events:none;z-index:1;transition:color .15s;left:.875rem}.login-input-wrap:focus-within .login-input-icon{color:var(--brand-primary)}.login-input{border-radius:var(--radius-md);font-size:var(--font-sm);background:var(--input-bg);border:1px solid var(--border-subtle);color:var(--text);width:100%;padding:.75rem .875rem .75rem 2.75rem;transition:border-color .15s,box-shadow .15s,background .15s}@supports (color: color-mix(in lab, red, red)){.login-input{background:color-mix(in oklch,var(--input-bg)80%,transparent)}}.login-input::placeholder{color:var(--text-muted);opacity:.6}.login-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 3px var(--brand-primary),0 0 20px var(--brand-primary);background:var(--input-bg)}@supports (color: color-mix(in lab, red, red)){.login-input:focus{box-shadow:0 0 0 3px color-mix(in oklch,var(--brand-primary)15%,transparent),0 0 20px color-mix(in oklch,var(--brand-primary)8%,transparent)}}.login-submit{display:flex;border-radius:var(--radius-md);cursor:pointer;border:none;justify-content:center;align-items: center;gap:.5rem;width:100%;margin-top:.25rem;padding:.8125rem;transition:transform .15s,box-shadow .15s,filter .15s;font-size:.9375rem;font-weight:700}.login-submit:hover:not(:disabled){filter:brightness(1.12);transform:translateY(-1px)}.login-submit:active:not(:disabled){transform:translateY(0)scale(.99)}.login-submit:disabled{opacity:.55;cursor:not-allowed}.login-spinner{display:inline-block;border:2.5px solid var(--brand-text);border-top-color:var(--brand-text);animation:tm-spin .6s linear infinite;border-radius:50%;width:20px;height:20px}@supports (color: color-mix(in lab, red, red)){.login-spinner{border:2.5px solid color-mix(in oklch,var(--brand-text)30%,transparent)}}.login-divider{display:flex;align-items: center;gap:.75rem;margin:1.25rem 0 1rem}.login-divider:before,.login-divider:after{content:"";background:var(--border-subtle);flex:1;height:1px}.login-divider span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.75rem;font-weight:500}.login-register{text-align:center;color:var(--text-muted);margin:0;font-size:.875rem}@media (max-width:480px){.login-card{border-radius:var(--radius-lg);padding:2rem 1.5rem 1.5rem}.login-title{font-size:1.375rem}.login-orb{opacity:.2}}@media (prefers-reduced-motion:reduce){.login-orb,.login-card,.login-bubble{animation:none}}.login-input:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.login-submit:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.login-forgot:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px;border-radius:var(--radius-sm)}}.svc-m-grid{display:flex;flex-direction:column;gap:0}.svc-m-section{display:flex;gap:var(--space-4);padding:var(--space-5)0;border:none;border-bottom:1px solid var(--border-section);background:0 0;border-radius:0;flex-direction:column}.svc-m-section:first-child{padding-top:0}.svc-m-section:last-child,.svc-m-section:last-of-type{border-bottom:none;margin-bottom:0}.svc-m-section .cal-modal-label,.svc-m-top-row .cal-modal-label,.svc-m-rules-row .cal-modal-label{text-transform:none;letter-spacing:0;font-weight:500;font-size:var(--font-xs);color:var(--text-muted);margin-bottom:.375rem}.svc-m-section-title{text-transform:none;letter-spacing:-.01em;color:var(--text);margin:0;font-size:.875rem;font-weight:600;line-height:1.3}.svc-m-section-desc{font-size:var(--font-xs);color:var(--text-muted);margin:-.375rem 0 0;line-height:1.5}.svc-m-field-hint{font-size:var(--font-xs);color:var(--text-muted);margin:.25rem 0 0;line-height:1.4}.svc-m-sticky-actions{position:sticky;padding:var(--space-4)var(--space-6);border-top:1px solid var(--border-subtle);z-index:2;background:0 0;flex-shrink:0;margin:0;bottom:0}.svc-m-avail-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.svc-m-identity-row{display:flex;align-items: flex-start;gap:var(--space-4)}.svc-m-active-pill{display:flex;cursor:pointer;flex-shrink:0;align-items: center;gap:.5rem;padding-top:1.5rem}.svc-m-active-pill input{position:absolute;opacity:0;width:0;height:0}.svc-m-active-label{font-size:var(--font-xs);color:var(--text-muted);white-space:nowrap;user-select:none;font-weight:500}.svc-m-appearance-row{display:flex;gap:var(--space-5);align-items: flex-start}.svc-m-image-col{flex-shrink:0;width:8rem}.svc-m-image-col .img-upload--square{min-height:unset;aspect-ratio:1;padding:.75rem}.svc-m-image-col .img-upload-remove{opacity:1}.svc-m-pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4)}.svc-m-prep-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.svc-m-top-row{display:grid;grid-template-columns:1fr;gap:var(--space-5);padding:0 0 var(--space-5);border-bottom:1px solid var(--border-section)}@media (min-width:640px){.svc-m-top-row{grid-template-columns:1fr 1fr}}.svc-m-rules-row{display:grid;grid-template-columns:1fr;gap:var(--space-5);padding:var(--space-5)0;border-bottom:1px solid var(--border-section)}@media (min-width:640px){.svc-m-rules-row{grid-template-columns:1fr 1fr;align-items: start}}.svc-m-subsection{display:flex;gap:var(--space-4);flex-direction:column}.svc-addon-list{display:flex;overflow:hidden;border:1px solid var(--inset-separator);background:var(--input-bg);border-radius:10px;flex-direction:column;gap:0}.svc-addon-row{display:flex;justify-content:space-between;align-items: center;gap:var(--space-3);border:none;border-bottom:.5px solid var(--inset-separator);background:0 0;border-radius:0;padding:.625rem .875rem;transition:background .15s,opacity .15s}.svc-addon-row:last-child{border-bottom:none}.svc-addon-row:hover{background:var(--hover-bg-subtle)}.svc-addon-row.inactive{opacity:.5}.svc-addon-info{display:flex;flex-direction:column;gap:.125rem;min-width:0}.svc-addon-name{font-size:var(--font-sm);color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.svc-addon-meta{font-size:var(--font-xs);color:var(--text-muted)}.svc-addon-actions{display:flex;flex-shrink:0;align-items: center;gap:.375rem}.svc-addon-toggle{font-size:var(--font-xs);border-radius:var(--radius-pill);border:1px solid var(--inset-separator);color:var(--text-muted);cursor:pointer;background:0 0;padding:.25rem .625rem;transition:all .15s;font-weight:500}.svc-addon-toggle:hover{border-color:var(--brand-primary);color:var(--brand-primary);background:var(--brand-hover)}.svc-addon-toggle.active{border-color:var(--state-success-border);color:var(--state-success);background:var(--state-success-bg)}.svc-addon-delete{display:flex;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items: center;width:1.75rem;height:1.75rem;transition:all .15s}.svc-addon-delete:hover{background:var(--state-error-bg);color:var(--state-error)}.svc-addon-new{display:flex;align-items: center;gap:.5rem}.svc-addon-add-btn{font-size:var(--font-xs);flex-shrink:0;padding:.5625rem .875rem}@media (max-width:640px){.svc-addon-new{flex-wrap:wrap}.svc-addon-new .input{min-width:0}}.svc-pricing-new{display:flex;flex-direction:column;gap:.5rem}.svc-pricing-new-row{display:flex;align-items: center;gap:.5rem}@media (max-width:640px){.svc-pricing-new-row{flex-wrap:wrap}.svc-pricing-new-row .input{min-width:0}}.svc-m-staff-block{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border-subtle)}.svc-m-empty-hint{font-size:var(--font-xs);color:var(--text-muted);margin:var(--space-2)0 0;font-style:italic}@media (max-width:640px){.svc-m-identity-row{gap:var(--space-3);flex-direction:column}.svc-m-active-pill{padding-top:0}.svc-m-appearance-row{flex-direction:column}.svc-m-image-col{width:100%}.svc-m-pricing-grid,.svc-m-prep-row{grid-template-columns:1fr}}.svc-catalog{display:flex;gap:var(--space-8);flex-direction:column}.svc-group-section{display:flex;gap:var(--space-4);animation:svcFadeIn .3s ease both;flex-direction:column}.svc-inline-add-group{margin-top:var(--space-2)}.svc-inline-add-group-btn{display:inline-flex;border-radius:var(--radius-md);border:1px dashed var(--border-subtle);color:var(--text-muted);font-size:var(--font-sm);cursor:pointer;background:0 0;align-items: center;gap:.4rem;padding:.5rem .875rem;transition:all .15s;font-family:inherit;font-weight:500}.svc-inline-add-group-btn:hover{border-color:var(--brand-primary);color:var(--brand-primary);background:var(--brand-primary)}@supports (color: color-mix(in lab, red, red)){.svc-inline-add-group-btn:hover{background:color-mix(in oklch,var(--brand-primary)6%,transparent)}}.svc-inline-add-group-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.svc-inline-add-group-form{display:flex;align-items: center;gap:.5rem}.svc-inline-add-group-input{border-radius:var(--radius-md);border:1px solid var(--input-border);background:var(--input-bg);color:var(--text);font-size:var(--font-sm);outline:none;flex:1;max-width:260px;padding:.4375rem .75rem;transition:border-color .15s,box-shadow .15s;font-family:inherit}.svc-inline-add-group-input:focus{border-color:var(--brand-primary);box-shadow:var(--input-focus-ring)}.svc-inline-add-group-input::placeholder{color:var(--placeholder-color)}@media (max-width:640px){.svc-inline-add-group{margin-top:var(--space-3)}.svc-inline-add-group-btn{justify-content:center;width:100%;padding:.625rem;font-size:.82rem}.svc-inline-add-group-form{flex-wrap:wrap;gap:.375rem}.svc-inline-add-group-input{width:100%;max-width:none;min-height:2.5rem}}.svc-group-header{display:flex;padding:var(--space-2)var(--space-2);border-bottom:1px solid var(--border-subtle);border-radius:var(--radius-sm);cursor:pointer;user-select:none;align-items: center;gap:.625rem;transition:background .15s}.svc-group-header:hover{background:var(--hover-bg-subtle)}.svc-group-header:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.svc-group-chevron{color:var(--text-muted);flex-shrink:0;transition:transform .2s}.svc-group-chevron-open{transform:rotate(90deg)}.svc-group-color{border-radius:4px;flex-shrink:0;width:12px;height:12px}.svc-group-label{font-size:var(--font-sm);color:var(--text);letter-spacing:.01em;font-weight:600}.svc-group-count{font-size:var(--font-xs);color:var(--text-muted);margin-left:auto;font-weight:500}.svc-group-add{display:flex;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;opacity:0;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items: center;width:1.625rem;height:1.625rem;padding:0;transition:all .15s}.svc-group-header:hover .svc-group-add{opacity:1}@media (hover:none){.svc-group-add{opacity:1}}.svc-group-add:hover{background:var(--brand-primary);color:var(--brand-primary)}@supports (color: color-mix(in lab, red, red)){.svc-group-add:hover{background:color-mix(in oklch,var(--brand-primary)14%,transparent)}}.svc-group-add:focus-visible{outline:2px solid var(--brand-primary);outline-offset:1px;opacity:1}.svc-group-drop-target{outline:2px dashed var(--brand-primary);outline-offset:4px;background:var(--brand-primary);border-radius:12px;transition:outline-color .2s,background .2s}@supports (color: color-mix(in lab, red, red)){.svc-group-drop-target{background:color-mix(in oklch,var(--brand-primary)4%,transparent)}}.svc-card-dragging{opacity:.4;transform:scale(.97);box-shadow:none!important}.svc-card[draggable=true]{cursor:grab}.svc-card[draggable=true]:active{cursor:grabbing}.svc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--space-4)}.svc-card{position:relative;display:flex;border:1px solid var(--card-border);background:var(--card-bg);cursor:pointer;overflow:hidden;border-radius:14px;flex-direction:column;transition:transform .2s,box-shadow .2s,border-color .2s}.svc-card:hover{box-shadow:var(--card-shadow);border-color:var(--brand-primary);transform:translateY(-2px)}@supports (color: color-mix(in lab, red, red)){.svc-card:hover{border-color:color-mix(in oklch,var(--brand-primary)30%,var(--card-border))}}.svc-card:active{transform:translateY(0)}.svc-card:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.svc-card-inactive{opacity:.55}.svc-card-inactive:hover{opacity:.8}.svc-card-accent{border-radius:14px 14px 0 0;flex-shrink:0;height:4px}.svc-card-body{display:flex;gap:var(--space-3);padding:var(--space-4)var(--space-4)var(--space-3);flex-direction:column}.svc-card-top{display:flex;justify-content:space-between;align-items: flex-start;gap:var(--space-2);min-height:1.5rem}.svc-card-identity{display:flex;align-items: center;gap:.625rem;min-width:0}.svc-card-thumb{object-fit:cover;background:var(--hover-bg-subtle);border-radius:8px;flex-shrink:0;width:2.25rem;height:2.25rem}.svc-card-name{font-size:var(--font-base);color:var(--text);word-break:break-word;font-weight:600;line-height:1.4}.svc-card-meta{display:flex;align-items: center;gap:var(--space-2);flex-wrap:wrap}.svc-card-chip{display:inline-flex;border-radius:var(--radius-pill);font-size:var(--font-xs);font-variant-numeric:tabular-nums;color:var(--text-muted);background:var(--hover-bg-subtle);align-items: center;gap:.25rem;padding:.2rem .5rem;font-weight:500;line-height:1.2}.svc-card-chip svg{opacity:.7;flex-shrink:0}.svc-card-group{display:inline-flex;font-size:var(--font-2xs);color:var(--text-muted);padding-top:var(--space-2);border-top:1px solid var(--border-subtle);align-items: center;gap:.375rem;margin-top:auto;font-weight:500}.svc-card-group-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.svc-card-inactive-badge{display:inline-flex;border-radius:var(--radius-pill);font-size:var(--font-2xs);background:var(--text-muted);color:var(--text-muted);align-items: center;padding:.15rem .45rem;font-weight:500;line-height:1}@supports (color: color-mix(in lab, red, red)){.svc-card-inactive-badge{background:color-mix(in oklch,var(--text-muted)14%,transparent)}}.svc-card-deposit-badge{display:inline-flex;border-radius:var(--radius-pill);font-size:var(--font-2xs);background:var(--state-info-bg);color:var(--state-info);border:1px solid var(--state-info-border);align-items: center;padding:.15rem .45rem;font-weight:500;line-height:1}.svc-m-deposit-chips{display:flex;background:var(--inset-bg);border:1px solid var(--inset-border);border-radius:10px;gap:2px;padding:.1875rem}.svc-m-deposit-chip{font-size:var(--font-xs);color:var(--text-muted);cursor:pointer;white-space:nowrap;text-align:center;background:0 0;border:none;border-radius:8px;flex:1;padding:.4375rem .875rem;transition:all .2s;font-weight:500}.svc-m-deposit-chip:hover{color:var(--text);background:var(--hover-bg-subtle)}.svc-m-deposit-chip.active{color:var(--brand-text);background:var(--brand-primary);box-shadow:var(--brand-shadow);font-weight:600}.svc-card-actions{display:flex;opacity:0;gap:.25rem;transition:opacity .15s}.svc-card:hover .svc-card-actions{opacity:1}@media (hover:none){.svc-card-actions{opacity:1}}.svc-card-action{display:flex;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items: center;width:1.75rem;height:1.75rem;padding:0;transition:all .15s}.svc-card-action:hover{background:var(--brand-primary);color:var(--brand-primary)}@supports (color: color-mix(in lab, red, red)){.svc-card-action:hover{background:color-mix(in oklch,var(--brand-primary)14%,transparent)}}.svc-card-action:focus-visible{outline:2px solid var(--brand-primary);outline-offset:1px}.svc-card-action-danger:hover{background:var(--state-error);color:var(--state-error)}@supports (color: color-mix(in lab, red, red)){.svc-card-action-danger:hover{background:color-mix(in oklch,var(--state-error)14%,transparent)}}.svc-empty{display:flex;justify-content:center;align-items: center;gap:var(--space-4);padding:var(--space-12)var(--space-6);text-align:center;flex-direction:column}.svc-empty-icon{display:flex;background:var(--hover-bg);border-radius:1rem;justify-content:center;align-items: center;width:4rem;height:4rem}.svc-empty-title{font-size:var(--font-base);color:var(--text);font-weight:600}.svc-empty-desc{font-size:var(--font-sm);color:var(--text-muted);max-width:280px;line-height:1.5}.svc-skeleton-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--space-4)}.svc-skeleton-card{background:var(--card-bg);border:1px solid var(--card-border);animation:svcPulse 1.6s ease-in-out infinite;border-radius:14px;height:7.5rem}@keyframes svcPulse{0%,to{opacity:.6}50%{opacity:.3}}@keyframes svcFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.svc-group-empty{display:flex;align-items: center;gap:var(--space-3);padding:var(--space-4)var(--space-4);border:1px dashed var(--border-subtle);color:var(--text-muted);font-size:var(--font-sm);border-radius:12px}.svc-group-empty-add{font-size:var(--font-xs);color:var(--brand-primary);cursor:pointer;text-decoration:none;background:0 0;border:none;padding:0;transition:opacity .15s;font-weight:500}.svc-group-empty-add:hover{opacity:.8;text-decoration:underline}@media (max-width:640px){.svc-grid,.svc-skeleton-grid{grid-template-columns:1fr;gap:.5rem}.svc-card{border-radius:var(--radius-lg);overflow:hidden;flex-direction:row}.svc-card:hover{transform:none}.svc-card-accent{border-radius:var(--radius-lg)0 0 var(--radius-lg);flex-shrink:0;width:4px;height:auto}.svc-card-body{flex-direction:row;flex:1;align-items: center;gap:.5rem;min-width:0;padding:.625rem .5rem .625rem .625rem}.svc-card-top{flex:1;align-items: center;min-width:0}.svc-card-identity{flex:1;gap:.5rem;min-width:0}.svc-card-thumb{border-radius:6px;width:2rem;height:2rem}.svc-card-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;line-height:1.3}.svc-card-meta{flex-wrap:nowrap;flex-shrink:0;gap:.25rem}.svc-card-chip{white-space:nowrap;padding:.125rem .375rem;font-size:.68rem}.svc-card-inactive-badge,.svc-card-deposit-badge{padding:.1rem .35rem;font-size:.6rem}.svc-card-group{display:none}.svc-card-actions{opacity:1;flex-shrink:0;gap:.125rem}.svc-card-action{width:2rem;height:2rem}.svc-card-action:nth-child(2),.svc-card-action:nth-child(3){display:none}.svc-card-check{position:static;display:flex;flex-shrink:0;align-items: center;padding:0 .125rem 0 .375rem}.svc-card-checkbox{width:1.375rem;height:1.375rem}.svc-card-selected .svc-card-top,.svc-card .svc-card-check+.svc-card-accent+.svc-card-body .svc-card-top{padding-right:0}.svc-catalog{gap:var(--space-5)}.svc-group-section{gap:.375rem}.svc-group-header{padding:var(--space-2)var(--space-1);gap:.5rem}.svc-group-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.82rem}.svc-group-count{flex-shrink:0;margin-left:0;font-size:.68rem}.svc-group-add{opacity:1;width:1.75rem;height:1.75rem}.svc-group-empty{padding:var(--space-3);font-size:var(--font-xs)}.svc-empty{padding:var(--space-8)var(--space-4)}.svc-empty-icon{border-radius:.75rem;width:3rem;height:3rem}.svc-skeleton-card{border-radius:var(--radius-lg);height:3.5rem}}.svc-color-swatch{border-radius:var(--radius-sm);cursor:pointer;border:2px solid #0000;width:1.5rem;height:1.5rem;transition:all .15s}.svc-color-swatch:hover{transform:scale(1.15)}.svc-color-swatch.active{border-color:var(--text);box-shadow:0 0 0 2px var(--card-bg),0 0 0 4px var(--text)}.svc-color-custom{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);cursor:pointer;background:0 0;width:1.5rem;height:1.5rem;padding:0}.svc-toggle,.svc-m-active-pill{display:flex;cursor:pointer;align-items: center;gap:.625rem}.svc-toggle input,.svc-m-active-pill input{position:absolute;opacity:0;width:0;height:0}.svc-toggle-track{position:relative;border-radius:var(--radius-pill);background:var(--input-border);flex-shrink:0;width:2.75rem;height:1.5rem;transition:background .25s cubic-bezier(.4,0,.2,1)}.svc-toggle input:checked+.svc-toggle-track,.svc-m-active-pill input:checked+.svc-toggle-track{background:var(--brand-primary)}.svc-toggle-thumb{position:absolute;background:var(--toggle-color);border-radius:50%;width:1.25rem;height:1.25rem;transition:transform .25s cubic-bezier(.4,0,.2,1);top:2px;left:2px;box-shadow:0 1px 3px #0003,0 1px 1px #00000024}.svc-toggle input:checked+.svc-toggle-track .svc-toggle-thumb,.svc-m-active-pill input:checked+.svc-toggle-track .svc-toggle-thumb{transform:translate(1.25rem)}.svc-hint{color:var(--text-muted);margin:0 0 .5rem;font-size:.8rem;line-height:1.4}.svc-loc-tabs{display:flex;border-radius:var(--radius-sm);background:var(--text);flex-wrap:wrap;gap:.375rem;margin-bottom:1rem;padding:.25rem}@supports (color: color-mix(in lab, red, red)){.svc-loc-tabs{background:color-mix(in oklch,var(--text)5%,var(--bg))}}.svc-loc-tab{position:relative;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:.375rem .875rem;transition:all .15s;font-size:.8125rem;font-weight:500}.svc-loc-tab:hover{color:var(--text);background:var(--text)}@supports (color: color-mix(in lab, red, red)){.svc-loc-tab:hover{background:color-mix(in oklch,var(--text)6%,transparent)}}.svc-loc-tab.active{background:var(--card-bg);color:var(--text);box-shadow:0 1px 3px #00000014}.svc-loc-tab.linked:after{content:"";position:absolute;background:var(--brand-primary);border-radius:50%;width:6px;height:6px;top:.25rem;right:.25rem}.svc-loc-content{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--card-bg);padding:.75rem}.svc-loc-list{display:flex;flex-direction:column;gap:.5rem}.svc-loc-item{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--card-bg);padding:.625rem .75rem;transition:border-color .15s}.svc-loc-item.svc-loc-active{border-color:var(--brand-primary);background:var(--brand-primary)}@supports (color: color-mix(in lab, red, red)){.svc-loc-item.svc-loc-active{background:color-mix(in oklch,var(--brand-primary)5%,var(--card-bg))}}.svc-loc-overrides{border-top:1px solid var(--border-subtle);margin-top:.5rem;padding-top:.5rem}.svc-loc-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;margin-top:.5rem}.svc-loc-fields .cal-form-group{min-width:0;margin-bottom:0}.svc-loc-fields .cal-modal-label{font-size:.7rem}.svc-loc-fields .cal-form-input{box-sizing:border-box;width:100%;min-width:0}@media (max-width:640px){.svc-loc-fields{grid-template-columns:1fr}}.svc-loc-tab:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.svc-color-swatch:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.svc-color-custom:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.svc-toggle:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.svc-m-active-pill:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.svc-card-selected{border-color:var(--brand-primary)!important;box-shadow:0 0 0 2px var(--brand-primary)!important}@supports (color: color-mix(in lab, red, red)){.svc-card-selected{box-shadow:0 0 0 2px color-mix(in oklch,var(--brand-primary)20%,transparent)!important}}.svc-card-check{position:absolute;z-index:2;cursor:pointer;top:.5rem;right:.5rem}.svc-card-selected .svc-card-top,.svc-card .svc-card-check+.svc-card-accent+.svc-card-body .svc-card-top{padding-right:1.75rem}.svc-card-checkbox{border:2px solid var(--input-border);background:var(--input-bg);display:flex;border-radius:.375rem;justify-content:center;align-items: center;width:1.25rem;height:1.25rem;transition:all .15s}.svc-card-checkbox.checked{background:var(--brand-primary);border-color:var(--brand-primary);color:#fff}.svc-bulk-bar{position:fixed;z-index:100;animation:svcBulkBarIn .25s ease-out both;bottom:1.5rem;left:50%;transform:translate(-50%)}@keyframes svcBulkBarIn{0%{opacity:0;transform:translate(-50%)translateY(12px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.svc-bulk-bar-inner{display:flex;background:var(--popup-glass-bg);border:1px solid var(--popup-glass-border);box-shadow:var(--popup-glass-shadow);backdrop-filter:blur(var(--popup-glass-blur));-webkit-backdrop-filter:blur(var(--popup-glass-blur));border-radius:.875rem;align-items: center;gap:.75rem;padding:.625rem 1rem}.svc-bulk-count{color:var(--text);white-space:nowrap;font-size:.8125rem;font-weight:600}.svc-bulk-select-all{color:var(--brand-primary);cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:0;font-size:.75rem;font-weight:500}.svc-bulk-select-all:hover{text-decoration:underline}.svc-bulk-select-all:disabled{color:var(--text-muted);cursor:default;text-decoration:none}.svc-bulk-actions{display:flex;border-left:1px solid var(--card-border);align-items: center;gap:.375rem;padding-left:.75rem}.svc-bulk-delete{color:var(--state-error)!important}.svc-bulk-delete:hover{background:var(--state-error)!important}@supports (color: color-mix(in lab, red, red)){.svc-bulk-delete:hover{background:color-mix(in oklch,var(--state-error)12%,transparent)!important}}@media (max-width:640px){.svc-bulk-bar{bottom:calc(var(--bottomnav-height) + env(safe-area-inset-bottom,0) + .75rem)}.svc-bulk-bar-inner{flex-wrap:wrap;justify-content:center;max-width:calc(100vw - 2rem)}.svc-bulk-actions{border-left:none;border-top:1px solid var(--card-border);justify-content:center;width:100%;padding-top:.5rem;padding-left:0}}.sa-panel{border-radius:var(--radius-xl);border:1px solid var(--card-border);background:var(--card-bg);box-shadow:var(--card-shadow);padding:var(--space-6);display:flex;gap:var(--space-5);animation:saFadeIn .25s ease forwards;flex-direction:column}@keyframes saFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.sa-header{display:flex;justify-content:space-between;align-items: flex-start;gap:var(--space-4)}.sa-header-left{flex:1}.sa-title{font-size:var(--font-lg);color:var(--text);margin:0;font-weight:600}.sa-subtitle{font-size:var(--font-xs);color:var(--text-muted);margin:.25rem 0 0}.sa-close{display:flex;border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items: center;width:2rem;height:2rem;transition:all .15s}.sa-close:hover{background:var(--hover-bg);color:var(--text)}.sa-filters{display:flex;align-items: center;gap:var(--space-3);flex-wrap:wrap}.sa-range-chips{display:flex;background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-lg);gap:.25rem;padding:.1875rem}.sa-range-chip{font-size:var(--font-xs);color:var(--text-muted);border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:.375rem .75rem;transition:all .15s;font-weight:500}.sa-range-chip:hover{color:var(--text);background:var(--hover-bg-subtle)}.sa-range-chip.active{color:var(--brand-text);background:var(--brand-primary);font-weight:600}.sa-custom-dates{display:flex;align-items: center;gap:.5rem}.sa-date-input{font-size:var(--font-xs);max-width:10rem}.sa-loc-filter{min-width:10rem}.sa-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-3)}.sa-stat-card{display:flex;padding:var(--space-4);border-radius:var(--radius-lg);border:1px solid var(--card-border);background:var(--glass-bg);flex-direction:column;gap:.125rem}.sa-stat-label{font-size:var(--font-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-weight:500}.sa-stat-value{color:var(--text);font-size:1.5rem;font-weight:700;line-height:1.2}.sa-stat-sub{font-size:var(--font-xs);color:var(--text-muted);margin-top:.125rem}.sa-stat-warn .sa-stat-value{color:var(--state-warning)}.sa-top-service{display:flex;align-items: center;gap:var(--space-3);padding:var(--space-3)var(--space-4);border-radius:var(--radius-lg);background:var(--brand-hover);border:1px solid var(--brand-border);font-size:var(--font-sm);color:var(--text)}.sa-top-service-dot{border-radius:50%;flex-shrink:0;width:.625rem;height:.625rem}.sa-top-service-text strong{font-weight:600}.sa-trends{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.sa-trend-card{display:flex;gap:var(--space-2);padding:var(--space-4);border-radius:var(--radius-lg);border:1px solid var(--card-border);background:var(--glass-bg);flex-direction:column}.sa-trend-title{font-size:var(--font-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-weight:500}.sa-sparkline{display:flex;align-items: flex-end;gap:2px;height:3.5rem}.sa-sparkline-bar{background:var(--brand-primary);opacity:.7;animation:saBarGrow .3s ease forwards;border-radius:1px 1px 0 0;flex:1;min-width:2px;transition:opacity .15s}@keyframes saBarGrow{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.sa-sparkline-bar:hover{opacity:1}.sa-table-wrap{display:flex;border:1px solid var(--card-border);border-radius:var(--radius-lg);overflow:hidden;flex-direction:column}.sa-table-header{display:grid;grid-template-columns:1.5fr repeat(4,1fr);padding:var(--space-2)var(--space-3);background:var(--input-bg);border-bottom:1px solid var(--card-border);gap:0}.sa-th{font-size:var(--font-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;text-align:left;cursor:default;background:0 0;border:none;padding:.25rem .5rem;font-weight:600}.sa-th-sort{cursor:pointer;text-align:right;transition:color .15s}.sa-th-sort:hover,.sa-th-sort.active{color:var(--text)}.sa-table-row{display:grid;grid-template-columns:1.5fr repeat(4,1fr);padding:var(--space-2)var(--space-3);border-bottom:1px solid var(--card-border);animation:saRowIn .2s ease forwards;opacity:0;gap:0;transition:background .15s}@keyframes saRowIn{0%{opacity:0;transform:translate(-4px)}to{opacity:1;transform:translate(0)}}.sa-table-row:last-child{border-bottom:none}.sa-table-row:hover{background:var(--hover-bg-subtle)}.sa-td{display:flex;font-size:var(--font-sm);color:var(--text);align-items: center;padding:.25rem .5rem}.sa-td-name{display:flex;align-items: center;gap:.5rem;font-weight:500}.sa-svc-dot{border-radius:50%;flex-shrink:0;width:.5rem;height:.5rem}.sa-svc-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sa-td-num{font-variant-numeric:tabular-nums;justify-content:flex-end;gap:.5rem}.sa-td-bar-bg{background:var(--input-bg);overflow:hidden;border-radius:2px;flex:1;height:.375rem}.sa-td-bar-fill{border-radius:2px;height:100%;transition:width .35s}.sa-td-warn{color:var(--state-warning);font-weight:600}.sa-mini-bar{display:flex;flex-direction:column;gap:.375rem}.sa-mini-bar-row{display:flex;align-items: center;gap:.5rem}.sa-mini-bar-label{font-size:var(--font-xs);color:var(--text-muted);text-overflow:ellipsis;overflow:hidden;white-space:nowrap;width:5rem}.sa-mini-bar-track{background:var(--input-bg);overflow:hidden;border-radius:2px;flex:1;height:.375rem}.sa-mini-bar-fill{border-radius:2px;height:100%;transition:width .35s}.sa-mini-bar-value{text-align:right;font-size:var(--font-xs);color:var(--text);width:2.5rem;font-weight:600}.sa-skeleton{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-3)}.sa-skeleton-card{border-radius:var(--radius-lg);background:var(--card-border);animation:pulse 1.5s ease infinite;height:5.5rem}.sa-skeleton-table{grid-column:1/-1;border-radius:var(--radius-lg);background:var(--card-border);animation:pulse 1.5s ease infinite;height:12rem}@keyframes pulse{0%,to{opacity:.4}50%{opacity:.7}}.sa-error{display:flex;align-items: center;gap:var(--space-3);padding:var(--space-8);text-align:center;color:var(--state-error);flex-direction:column}.sa-empty{padding:var(--space-8);text-align:center}@media (max-width:768px){.sa-panel{padding:var(--space-4)}.sa-stats{grid-template-columns:1fr 1fr}.sa-trends{grid-template-columns:1fr}.sa-table-header,.sa-table-row{grid-template-columns:1.2fr repeat(4,1fr);font-size:var(--font-xs)}.sa-filters{flex-direction:column;align-items: flex-start}}@media (max-width:480px){.sa-stats{grid-template-columns:1fr}.sa-table-header,.sa-table-row{grid-template-columns:1fr 1fr}.sa-th:nth-child(n+4),.sa-td:nth-child(n+4){display:none}}.cust-badge{display:inline-flex;border-radius:var(--radius-pill);font-size:var(--font-2xs);letter-spacing:.02em;white-space:nowrap;align-items: center;padding:.15rem .55rem;font-weight:600}.cust-badge-regular{background:var(--brand-secondary);color:var(--color-accent)}.cust-badge-high-risk{background:var(--state-error-bg);color:var(--state-error)}.cust-m-section{display:flex;gap:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--border-subtle);flex-direction:column;min-width:0}.cust-m-section-last,.cust-m-section:last-of-type{border-bottom:none;padding-bottom:0}.cust-m-section-title{display:flex;align-items: center;gap:var(--space-2);font-size:var(--font-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin:0;font-weight:600;line-height:1}.cust-m-section-count{font-size:var(--font-2xs);border-radius:var(--radius-pill);background:var(--hover-bg-subtle);color:var(--text-muted);padding:.1rem .4rem;font-weight:500}.cust-m-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.cust-m-stat{display:flex;align-items: flex-start;gap:.625rem}.cust-m-stat-full{grid-column:1/-1}.cust-m-stat-icon{display:flex;border-radius:var(--radius-sm);background:var(--hover-bg-subtle);color:var(--text-muted);flex-shrink:0;justify-content:center;align-items: center;width:2rem;height:2rem;margin-top:.1rem}.cust-m-stat-content{display:flex;flex-direction:column;gap:.125rem;min-width:0}.cust-m-stat-label{font-size:var(--font-2xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-weight:600}.cust-m-stat-value{font-size:var(--font-base);color:var(--text);word-break:break-word}.cust-m-flags-row{display:flex;flex-wrap:wrap;align-items: center;gap:.375rem}.cust-m-no-flags{font-size:var(--font-sm);color:var(--text-muted);font-style:italic}.customer-notes{padding:var(--space-3);border-radius:var(--radius-md);background:var(--input-bg);color:var(--text-muted);font-size:var(--font-base);white-space:pre-wrap;border:1px solid var(--border-subtle);min-height:2.5rem;line-height:1.55}.customer-form-flags{display:flex;gap:var(--space-5);align-items: center}.cust-appt-group-label{font-size:var(--font-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;display:block;margin:var(--space-2)0 var(--space-1);font-weight:600}.cust-appt-group-label:first-child{margin-top:0}.cust-appt-row{display:flex;align-items: center;gap:var(--space-2);border-bottom:1px solid var(--border-subtle);font-size:var(--font-base);padding:.375rem 0}.cust-appt-row:last-child{border-bottom:none}.cust-appt-date{color:var(--text-muted);min-width:6.5rem}.cust-appt-time{color:var(--text-muted);min-width:3.5rem}.cust-appt-service{color:var(--text);flex:1;font-weight:500}.cust-appt-status{font-size:var(--font-2xs);border-radius:var(--radius-pill);text-transform:capitalize;padding:.15rem .5rem;font-weight:600}.cust-appt-empty{color:var(--text-muted);font-size:var(--font-base);margin:0}.cust-appt-more{color:var(--text-muted);font-size:var(--font-xs);margin:var(--space-2)0 0}.cust-notes-list{display:flex;gap:var(--space-2);margin-bottom:var(--space-3);flex-direction:column;min-width:0}.cust-note-card{background:var(--glass-bg);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-3);position:relative;overflow:hidden;min-width:0;transition:border-color .15s,box-shadow .15s}.cust-note-card:hover{border-color:var(--border);box-shadow:0 1px 4px #0000000f}.cust-note-header{display:flex;justify-content:space-between;align-items: center;gap:var(--space-2);margin-bottom:var(--space-2)}.cust-note-service{display:inline-flex;align-items: center;gap:var(--space-1);color:var(--brand-primary);background:var(--brand-primary);border-radius:var(--radius-full,9999px);letter-spacing:.01em;padding:.15rem .5rem;font-size:.7rem;font-weight:600;line-height:1.4}@supports (color: color-mix(in lab, red, red)){.cust-note-service{background:color-mix(in srgb,var(--brand-primary)10%,transparent)}}.cust-note-service svg{opacity:.7;flex-shrink:0;width:12px;height:12px}.cust-note-actions{display:flex;opacity:0;gap:.25rem;transition:opacity .15s}.cust-note-card:hover .cust-note-actions{opacity:1}.cust-note-card--editing{border-color:var(--brand-primary);box-shadow:0 0 0 1px var(--brand-primary)}@supports (color: color-mix(in lab, red, red)){.cust-note-card--editing{box-shadow:0 0 0 1px color-mix(in srgb,var(--brand-primary)20%,transparent)}}.cust-note-inline-edit{display:flex;gap:var(--space-2);flex-direction:column}.cust-note-inline-edit textarea{resize:vertical;font-size:var(--font-sm);width:100%;min-height:3rem}.cust-note-inline-actions{display:flex;gap:var(--space-2);justify-content:flex-end}.cust-note-actions .tm-btn{padding:.15rem .4rem;font-size:.65rem}.cust-note-body{font-size:var(--font-sm);color:var(--text);white-space:pre-wrap;word-break:break-word;overflow-wrap:break-word;margin:0;line-height:1.55}.cust-note-meta{display:flex;align-items: center;gap:var(--space-2);margin-top:var(--space-2);color:var(--text-muted);font-size:.65rem}.cust-note-form{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border-subtle);display:flex;gap:var(--space-2);flex-direction:column}.cust-note-form-row{display:flex;gap:var(--space-2);align-items: flex-start}.cust-note-form-service{flex-shrink:0;width:10rem}.cust-note-form-body{flex:1;min-width:0}.cust-note-form-body textarea{resize:vertical;font-size:var(--font-sm);width:100%;min-height:2.5rem}.cust-note-form-actions{display:flex;gap:var(--space-2);justify-content:flex-end}.cust-notes-empty{display:flex;align-items: center;gap:var(--space-2);padding:var(--space-4)var(--space-3);color:var(--text-muted);font-size:var(--font-sm);text-align:center;flex-direction:column}.cust-notes-empty svg{opacity:.3;width:28px;height:28px}.cust-packages-list{display:flex;gap:var(--space-2);flex-direction:column}.cust-pkg-card{background:var(--glass-bg);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-3);transition:opacity .15s}.cust-pkg-card--inactive{opacity:.55}.cust-pkg-header{display:flex;justify-content:space-between;align-items: center;gap:var(--space-2)}.cust-pkg-name{font-weight:600;font-size:var(--font-sm);color:var(--text)}.cust-pkg-service{font-size:var(--font-xs);color:var(--text-secondary);margin-top:var(--space-1)}.cust-pkg-progress-row{display:flex;align-items: center;gap:var(--space-2);margin-top:var(--space-2)}.cust-pkg-progress-bar{background:var(--border-subtle);overflow:hidden;border-radius:3px;flex:1;height:6px}.cust-pkg-progress-fill{background:var(--brand-primary);border-radius:3px;height:100%;transition:width .3s}.cust-pkg-progress-label{font-size:var(--font-xs);color:var(--text-secondary);white-space:nowrap}.cust-pkg-expiry{font-size:var(--font-xs);color:var(--text-tertiary);margin-top:var(--space-1)}@media (max-width:600px){.cust-m-detail-grid{grid-template-columns:1fr}.cust-m-stat-full{grid-column:auto}}.dt-card-customer{display:flex;flex-direction:column;gap:.5rem}.dt-card-customer-top{display:flex;align-items: center;gap:.625rem}.dt-card-customer-info{display:flex;flex-direction:column;flex:1;min-width:0}.dt-card-customer-name{color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.875rem;font-weight:500}.dt-card-customer-sub{color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.75rem}.dt-card-customer-meta{display:flex;justify-content:space-between;align-items: center;gap:.5rem;padding-top:.25rem}.sch-page{display:flex;overflow-x:hidden;flex-direction:column;gap:0}.sch-header{display:flex;gap:var(--space-3);margin-bottom:var(--space-5);flex-direction:column}.sch-header-row1{display:flex;justify-content:space-between;align-items: center;gap:var(--space-4);flex-wrap:wrap}.sch-header-left{display:flex;align-items: center;gap:var(--space-4);flex-wrap:wrap}.sch-title{font-size:var(--font-xl);color:var(--text);letter-spacing:-.01em;margin:0;font-weight:700}.sch-header-stats{display:flex;align-items: center;gap:.375rem}.sch-chip{display:inline-flex;border-radius:var(--radius-pill);font-size:var(--font-xs);color:var(--text-muted);background:var(--hover-bg-subtle);border:1px solid var(--border-subtle);align-items: center;gap:.3rem;padding:.25rem .625rem;font-weight:500}.sch-chip-num{color:var(--text);font-variant-numeric:tabular-nums;font-weight:700}.sch-chip-warn{background:var(--state-warning-bg);border-color:var(--state-warning-border);color:var(--state-warning)}.sch-chip-warn .sch-chip-num{color:var(--state-warning)}.sch-header-actions{display:flex;align-items: center;gap:.5rem}.sch-header-row2{display:flex;justify-content:space-between;align-items: center;gap:var(--space-3);flex-wrap:wrap}.sch-header-row2-right{display:flex;align-items: center;gap:var(--space-2)}.sch-view-dropdown-wrapper{position:relative}.sch-view-dropdown{position:absolute;border-radius:var(--radius-md);background:var(--popup-glass-bg);border:1px solid var(--popup-glass-border);box-shadow:var(--popup-glass-shadow);backdrop-filter:blur(var(--popup-glass-blur));-webkit-backdrop-filter:blur(var(--popup-glass-blur));z-index:50;animation:dropdownIn .18s ease-out forwards;min-width:160px;padding:.375rem;top:calc(100% + .375rem);right:0}@keyframes dropdownIn{0%{opacity:0;transform:translateY(-4px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.sch-view-dropdown-item{display:flex;border-radius:var(--radius-sm);font-size:var(--font-sm);color:var(--text);cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items: center;width:100%;padding:.45rem .75rem;transition:background .15s;font-family:inherit;font-weight:500}.sch-view-dropdown-item:focus-visible{outline:2px solid var(--brand-primary);outline-offset:-2px}.sch-view-dropdown-item:hover{background:var(--hover-bg)}.sch-view-dropdown-item.active{color:var(--brand-primary);font-weight:600}.sch-grid-card{border-radius:var(--radius-lg);border:1px solid var(--glass-border);background:var(--glass-bg);box-shadow:var(--shadow-md);backdrop-filter:blur(12px)saturate(150%);-webkit-backdrop-filter:blur(12px)saturate(150%);overflow:hidden}.sch-skeleton{border-radius:var(--radius-lg);border:1px solid var(--glass-border);background:var(--glass-bg);overflow:hidden}.sch-skeleton-row{display:grid;grid-template-columns:200px repeat(7,minmax(100px,1fr))80px;border-bottom:1px solid var(--border-subtle);animation:sch-pulse 1.5s ease-in-out infinite both;padding:.6rem 0}.sch-skeleton-row:last-child{border-bottom:none}.sch-skeleton-cell{border-radius:var(--radius-sm);margin:.4rem}.sch-skeleton-name{background:var(--hover-bg);height:2rem;margin-left:.75rem}.sch-skeleton-day{background:var(--hover-bg-subtle);height:2.5rem}@keyframes sch-pulse{0%,to{opacity:1}50%{opacity:.5}}.sch-hint{font-size:var(--font-xs);color:var(--text-muted);margin:0;line-height:1.5}.sch-empty{display:flex;justify-content:center;align-items: center;gap:var(--space-2);padding:4rem var(--space-4);color:var(--text-muted);flex-direction:column}.sch-empty-icon{border-radius:var(--radius-lg);display:flex;background:var(--brand-hover);color:var(--brand-primary);margin-bottom:var(--space-1);justify-content:center;align-items: center;width:3.5rem;height:3.5rem}.sch-empty p{color:var(--text);margin:0;font-size:.95rem;font-weight:500}.sch-empty-hint{opacity:.8;color:var(--text-muted)!important;margin:0!important;font-size:.82rem!important}.sg-grid-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.sg-grid-wrapper.sg-dragging{user-select:none;-webkit-user-select:none;cursor:crosshair}.sg-grid-wrapper::-webkit-scrollbar{height:4px}.sg-grid-wrapper::-webkit-scrollbar-thumb{background:var(--text-muted);opacity:.3;border-radius:2px}.sg-grid{min-width:980px}.sg-header-row{display:grid;grid-template-columns:200px repeat(7,minmax(100px,1fr))80px;border-bottom:1px solid var(--border-subtle);position:sticky;z-index:2;background:var(--glass-bg);backdrop-filter:blur(12px)saturate(150%);-webkit-backdrop-filter:blur(12px)saturate(150%);top:0}.sg-header-corner{display:flex;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);border-right:1px solid var(--border-subtle);align-items: center;gap:.4rem;padding:.75rem 1rem;font-size:.72rem;font-weight:600}.sg-header-corner svg{opacity:.5}.sg-header-row>.tt-wrap{display:flex;border-right:1px solid var(--border-subtle);width:100%}.sg-header-row>.tt-wrap:has(.sg-blocked){background:var(--state-warning-bg);border-bottom:2px solid var(--state-warning-border)}.sg-header-day{display:flex;border-right:1px solid var(--border-subtle);flex-direction:column;flex:1;justify-content:center;align-items: center;gap:.15rem;min-width:0;padding:.6rem .25rem;transition:background .15s;font-size:.72rem}.sg-header-row>.tt-wrap>.sg-header-day{border-right:none}.sg-blocked-label{color:var(--state-warning);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:var(--radius-xs,.1875rem);background:var(--state-warning-bg);text-align:center;max-width:100%;margin-top:.125rem;padding:.0625rem .25rem;font-size:.6rem;font-weight:600;line-height:1.2}.sg-grid-wrapper:not(.sg-month-view) .sg-blocked-label{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.sg-header-day.sg-today{background:var(--brand-hover)}.sg-header-row>.tt-wrap:has(.sg-today){background:var(--brand-hover)}.sg-header-total{display:flex;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);justify-content:center;align-items: center;padding:.6rem .25rem;font-size:.68rem;font-weight:600}.sg-day-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-size:.68rem;font-weight:600}.sg-day-date{color:var(--text);font-variant-numeric:tabular-nums;font-size:.8rem;font-weight:600}.sg-today-num{background:var(--brand-primary);color:var(--brand-text);display:inline-flex;box-shadow:0 2px 6px oklch(.55 .15 220/.3);animation:todayPulse 3s ease-in-out infinite;border-radius:50%;justify-content:center;align-items: center;width:1.6rem;height:1.6rem;font-size:.72rem;font-weight:700}@keyframes todayPulse{0%,to{box-shadow:0 2px 6px oklch(.55 .15 220/.3),0 0 0 0 oklch(.55 .15 220/.3)}50%{box-shadow:0 2px 6px oklch(.55 .15 220/.3),0 0 0 4px oklch(.55 .15 220/0)}}.sg-today .sg-day-label{color:var(--brand-primary)}.sg-group-header{display:flex;background:var(--hover-bg-subtle);border-bottom:1px solid var(--border-subtle);align-items: center;gap:.5rem;padding:.5rem 1rem}.sg-group-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:.72rem;font-weight:700}.sg-group-count{border-radius:var(--radius-pill);background:var(--hover-bg);color:var(--text-muted);padding:.125rem .4rem;font-size:.65rem;font-weight:600}.sg-employee-row{display:grid;grid-template-columns:200px repeat(7,minmax(100px,1fr))80px;border-bottom:1px solid var(--border-subtle);animation:rowFadeIn .25s ease forwards;opacity:0;transition:background .15s}@keyframes rowFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.sg-employee-row:last-child{border-bottom:none}.sg-employee-row:hover{background:var(--hover-bg-subtle)}.sg-employee-cell{display:flex;border-right:1px solid var(--border-subtle);position:relative;align-items: center;gap:.6rem;min-width:0;padding:.625rem .875rem}.sg-avatar{display:flex;color:var(--brand-text);border-radius:50%;flex-shrink:0;justify-content:center;align-items: center;width:2rem;height:2rem;transition:box-shadow .2s,transform .2s;font-size:.62rem;font-weight:700}.sg-employee-row:hover .sg-avatar{box-shadow:0 0 0 2px var(--card-bg),0 0 0 3.5px oklch(1 0 0/.15);transform:scale(1.05)}.sg-employee-info{display:flex;flex-direction:column;gap:.15rem;min-width:0}.sg-employee-name{color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.82rem;font-weight:600}.sg-employee-meta{display:flex;align-items: center;gap:.375rem}.sg-role-pill{text-transform:capitalize;border-radius:var(--radius-pill);background:var(--hover-bg-subtle);color:var(--text-muted);border:1px solid var(--hover-bg-subtle);padding:.075rem .4rem;font-size:.62rem;font-weight:600}.sg-loc-tag{color:var(--text-muted);opacity:.7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:80px;font-size:.6rem;font-weight:500}.sg-emp-tooltip{position:absolute;border-radius:var(--radius-md);background:var(--popup-glass-bg);border:1px solid var(--popup-glass-border);box-shadow:var(--popup-glass-shadow);backdrop-filter:blur(var(--popup-glass-blur));-webkit-backdrop-filter:blur(var(--popup-glass-blur));z-index:40;pointer-events:none;animation:tooltipIn .15s ease-out forwards;min-width:180px;max-width:260px;padding:.6rem .8rem;top:50%;left:calc(100% + .5rem);transform:translateY(-50%)}.sg-emp-tooltip-name{color:var(--text);margin-bottom:.25rem;font-size:.82rem;font-weight:600}.sg-emp-tooltip-divider{background:var(--border-subtle);height:1px;margin:.25rem 0}.sg-emp-tooltip-row{color:var(--text-muted);font-size:.72rem;line-height:1.6}.sg-day-cell{display:flex;border-right:1px solid var(--border-subtle);cursor:pointer;position:relative;flex-direction:column;gap:.25rem;min-height:3rem;padding:.375rem;transition:background .15s}.sg-day-cell:last-of-type{border-right:none}.sg-day-cell:hover{background:var(--hover-bg)}.sg-day-cell.sg-today{background:var(--brand-hover)}.sg-day-cell.sg-today:hover{background:oklch(.55 .15 220/.06)}.sg-day-cell.sg-day-off{background:var(--state-warning-bg)}.sg-shift-block{display:flex;border-radius:var(--radius-sm);text-align:left;cursor:pointer;position:relative;overflow:hidden;background:var(--hover-bg-subtle);border:none;border-left:3px solid var(--shift-color,var(--brand-primary));color:var(--text);flex-direction:column;gap:.125rem;width:100%;padding:.3rem .45rem;transition:all .15s;font-family:inherit}.sg-shift-block:hover{background:var(--hover-bg);box-shadow:0 2px 8px oklch(0 0 0/.1);transform:translateY(-1px)}.sg-block-time{font-variant-numeric:tabular-nums;color:var(--text);display:flex;align-items: center;gap:.3rem;font-size:.68rem;font-weight:600}.sg-block-dur{color:var(--text-muted);opacity:.7;font-size:.6rem;font-weight:500}.sg-block-label{color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.62rem}.sg-dayoff-block{display:flex;border-radius:var(--radius-sm);border:1px solid var(--state-warning-border);background:var(--state-warning-bg);cursor:pointer;text-align:left;align-items: center;gap:.35rem;width:100%;padding:.35rem .45rem;transition:all .15s;font-family:inherit}.sg-dayoff-block:hover{box-shadow:0 2px 6px oklch(0 0 0/.08);transform:translateY(-1px)}.sg-dayoff-icon{flex-shrink:0;font-size:.85rem;line-height:1}.sg-dayoff-label{color:var(--state-warning);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.62rem;font-weight:600}.sg-empty-cell{display:flex;opacity:0;justify-content:center;align-items: center;width:100%;height:100%;min-height:2rem;transition:opacity .15s}.sg-day-cell:hover .sg-empty-cell{opacity:1}.sg-empty-state{text-align:center;color:var(--text-muted);padding:3rem 1rem}.sg-empty-state p{margin:0;font-size:.95rem}.sg-total-cell{display:flex;justify-content:center;align-items: center;padding:.5rem .25rem}.sg-total-value{font-variant-numeric:tabular-nums;color:var(--text);border-radius:var(--radius-pill);background:var(--hover-bg-subtle);padding:.2rem .5rem;font-size:.78rem;font-weight:700}.sg-total-zero{color:var(--text-muted);opacity:.5;background:0 0}.sg-total-full{color:var(--state-success);background:var(--state-success-bg)}.wn-bar{display:flex;background:var(--hover-bg-subtle);border:1px solid var(--border-subtle);border-radius:var(--radius-md);align-items: center;gap:.375rem;padding:.25rem}.wn-btn{display:inline-flex;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items: center;width:2rem;height:2rem;transition:all .15s}.wn-btn:hover{background:var(--hover-bg);color:var(--text)}.wn-btn:active{transform:scale(.92)}.wn-today{border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:.35rem .75rem;transition:all .15s;font-family:inherit;font-size:.78rem;font-weight:600}.wn-today:hover{background:var(--hover-bg);color:var(--text)}.wn-today-active{background:var(--brand-hover);color:var(--brand-primary)}.wn-label{color:var(--text);text-align:center;min-width:10rem;padding:0 .25rem;font-size:.82rem;font-weight:600}.cb-bar{display:grid;grid-template-columns:200px repeat(7,minmax(100px,1fr))80px;border-top:1px solid var(--border-subtle);background:var(--hover-bg-subtle)}.cb-bar-label{display:flex;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);border-right:1px solid var(--border-subtle);align-items: center;padding:.5rem 1rem;font-size:.68rem;font-weight:600}.cb-bar-cell{display:flex;font-variant-numeric:tabular-nums;border-right:1px solid var(--border-subtle);position:relative;cursor:default;flex-direction:column;justify-content:center;align-items: center;gap:.2rem;padding:.45rem .375rem;font-size:.72rem;font-weight:600}.cb-bar-cell:last-of-type{border-right:none}.cb-progress-track{background:var(--hover-bg-subtle);overflow:hidden;border-radius:2px;width:100%;height:3px;margin-bottom:.15rem}.cb-progress-fill{border-radius:2px;height:100%;transition:width .3s}.cb-fill-full{background:var(--state-success)}.cb-fill-warn{background:var(--state-warning)}.cb-fill-short{background:var(--state-error)}.cb-fill-empty{background:0 0}.cb-bar-count{color:var(--text)}.cb-bar-sep{color:var(--text-muted);opacity:.5}.cb-bar-req{color:var(--text-muted)}.cb-bar-full .cb-bar-count{color:var(--state-success)}.cb-bar-warn .cb-bar-count{color:var(--state-warning)}.cb-bar-short .cb-bar-count{color:var(--state-error)}.cb-bar-empty .cb-bar-count{color:var(--text-muted);opacity:.5}.cb-bar-total{display:flex;justify-content:center;align-items: center}.cb-bar-avg{font-variant-numeric:tabular-nums;font-size:.72rem;font-weight:700}.cb-tooltip{position:absolute;border-radius:var(--radius-md);background:var(--popup-glass-bg);border:1px solid var(--popup-glass-border);box-shadow:var(--popup-glass-shadow);backdrop-filter:blur(var(--popup-glass-blur));-webkit-backdrop-filter:blur(var(--popup-glass-blur));z-index:30;pointer-events:none;animation:tooltipIn .15s ease-out forwards;min-width:120px;padding:.5rem .75rem;bottom:calc(100% + .5rem);left:50%;transform:translate(-50%)}@keyframes tooltipIn{0%{opacity:0;transform:translate(-50%)translateY(4px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.cb-tooltip:after{content:"";position:absolute;border:5px solid #0000;border-top-color:var(--popup-glass-border);top:100%;left:50%;transform:translate(-50%)}.cb-tooltip-title{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:.25rem;font-size:.68rem;font-weight:600}.cb-tooltip-name{color:var(--text);padding:.1rem 0;font-size:.78rem;line-height:1.5}.cb-bar-month{font-size:.62rem}.cb-bar-month .cb-bar-cell{padding:.3rem .125rem}.cb-bar-month .cb-bar-label{padding:.3rem .5rem;font-size:.6rem}.sch-range-toggle{display:flex;background:var(--hover-bg-subtle);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);align-items: center;gap:.125rem;padding:.15rem}.sch-range-btn{font-size:var(--font-xs);color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.3rem .7rem;transition:all .15s;font-family:inherit;font-weight:600}.sch-range-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:-2px}.sch-range-btn:hover{color:var(--text)}.sch-range-btn.active{background:var(--brand-hover);color:var(--brand-primary);box-shadow:0 1px 3px oklch(0 0 0/.08)}.sg-month-view .sg-grid{min-width:1000px}.sg-month-view .sg-header-corner{padding:.6rem .5rem;font-size:.65rem}.sg-month-view .sg-header-day{padding:.4rem .125rem;font-size:.62rem}.sg-month-view .sg-header-day .sg-day-label{font-size:.55rem}.sg-month-view .sg-header-day .sg-day-date{font-size:.7rem}.sg-month-view .sg-blocked-label{display:none}.sg-month-view .sg-header-day.sg-today .sg-today-num{width:1.35rem;height:1.35rem;font-size:.62rem}.sg-weekend{background:oklch(1 0 0/.02)}.sg-month-view .sg-header-day.sg-weekend{background:oklch(1 0 0/.03)}.sg-month-view .sg-header-day.sg-weekend .sg-day-label{color:var(--text-muted);opacity:.6}.sg-month-cell{justify-content:center;align-items: center;min-height:2rem!important;padding:.2rem!important}.sg-month-cell .sg-empty-cell{min-height:1.2rem}.sg-month-dots{display:flex;flex-wrap:wrap;justify-content:center;align-items: center;gap:3px}.sg-month-dot{display:block;border-radius:50%;flex-shrink:0;width:8px;height:8px;transition:transform .15s}.sg-month-cell:hover .sg-month-dot{transform:scale(1.25)}.sg-month-dot-off{background:var(--state-warning);opacity:.8}.sg-month-dot-more{color:var(--text-muted);font-size:.55rem;font-weight:700;line-height:1}.sg-month-view .sg-employee-cell{gap:.4rem;padding:.4rem .5rem}.sg-month-view .sg-avatar{width:1.6rem;height:1.6rem;font-size:.55rem}.sg-month-view .sg-employee-name{font-size:.75rem}.sg-month-view .sg-role-pill{font-size:.55rem}.sg-month-view .sg-loc-tag{display:none}.sg-month-view .sg-total-cell{padding:.3rem .125rem}.sg-month-view .sg-total-value{padding:.15rem .3rem;font-size:.68rem}.sg-month-view .sg-employee-row{border-bottom-color:var(--border-subtle)}.sd-overlay{position:fixed;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:100;display:flex;animation:tm-fade-in .22s ease;background:#00000073;justify-content:flex-end;inset:0}.sd-drawer{background:var(--popup-glass-bg);backdrop-filter:blur(24px)saturate(180%);-webkit-backdrop-filter:blur(24px)saturate(180%);border-left:1px solid var(--popup-glass-border);display:flex;animation:sd-slide-in .32s cubic-bezier(.16,1,.3,1);overflow:hidden;flex-direction:column;width:420px;max-width:100vw;height:100%;box-shadow:-16px 0 48px #0000004d,-2px 0 8px #0000001f,inset 1px 0 #ffffff0d}@keyframes sd-slide-in{0%{transform:translate(100%);opacity:.6}to{transform:none;opacity:1}}.sd-accent{background:linear-gradient(90deg,var(--brand-primary),oklch(.65 .18 240),var(--brand-primary));animation:sd-accent-shimmer 3s ease-in-out infinite;background-size:200% 100%;flex-shrink:0;height:3px}@keyframes sd-accent-shimmer{0%,to{background-position:0%}50%{background-position:100%}}.sd-drag-handle{display:none}.sd-header{display:flex;flex-shrink:0;justify-content:space-between;align-items: flex-start;padding:1.25rem 1.5rem 1rem}.sd-header-left{display:flex;flex-direction:column;gap:.35rem}.sd-mode-badge{display:inline-flex;text-transform:uppercase;letter-spacing:.06em;border-radius:999px;align-items: center;gap:.35rem;width:-moz-fit-content;width:fit-content;padding:.2rem .55rem;font-size:.68rem;font-weight:600}.sd-mode-new{background:var(--brand-hover);color:var(--brand-primary);border:1px solid var(--brand-border)}.sd-mode-edit{background:oklch(.7 .12 80/.1);color:oklch(.75 .12 80);border:1px solid oklch(.7 .12 80/.2)}.sd-title{color:var(--text);letter-spacing:-.01em;margin:0;font-size:1.2rem;font-weight:700}.sd-close{display:inline-flex;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--hover-bg);color:var(--text-muted);cursor:pointer;flex-shrink:0;justify-content:center;align-items: center;width:2rem;height:2rem;margin-top:.15rem;transition:all .15s}.sd-close:hover{background:var(--hover-bg-subtle);color:var(--text);border-color:var(--card-border);transform:scale(1.05)}.sd-close:active{transform:scale(.95)}.sd-body{overflow-y:auto;display:flex;scrollbar-width:thin;scrollbar-color:#ffffff14 transparent;flex-direction:column;flex:1;gap:.875rem;padding:.75rem 1.5rem 1.5rem}.sd-body::-webkit-scrollbar{width:4px}.sd-body::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:999px}.sd-stagger{animation:sd-stagger-in .35s cubic-bezier(.16,1,.3,1)both}@keyframes sd-stagger-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.sd-person-card{display:flex;border-radius:var(--radius-lg);background:var(--hover-bg);border:1px solid var(--border-subtle);align-items: center;gap:.75rem;padding:.75rem}.sd-avatar{border-radius:var(--radius-md);background:var(--brand-bg);color:var(--brand-text);display:flex;letter-spacing:.02em;box-shadow:0 2px 8px oklch(.55 .15 220/.2);flex-shrink:0;justify-content:center;align-items: center;width:2.5rem;height:2.5rem;font-size:.8rem;font-weight:700}.sd-person-info{display:flex;flex-direction:column;gap:.15rem;min-width:0}.sd-person-name{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;font-weight:600}.sd-person-date{color:var(--text-muted);display:inline-flex;align-items: center;gap:.35rem;font-size:.78rem}.sd-section{display:flex;border-radius:var(--radius-lg);background:var(--hover-bg-subtle);border:1px solid var(--border-subtle);flex-direction:column;gap:.65rem;padding:.875rem}.sd-section-head{display:flex;align-items: center;gap:.4rem}.sd-section-icon{display:inline-flex;color:var(--brand-primary);align-items: center;font-size:.85rem}.sd-section-title{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:.72rem;font-weight:600}.sd-section-badge{background:var(--hover-bg);color:var(--text-muted);border:1px solid var(--border-subtle);border-radius:999px;margin-left:auto;padding:.1rem .45rem;font-size:.65rem;font-weight:500}.sd-dayoff-card{display:flex;border-radius:var(--radius-lg);background:var(--hover-bg-subtle);border:1px solid var(--border-subtle);cursor:pointer;text-align:left;color:inherit;align-items: center;gap:.75rem;width:100%;padding:.75rem .875rem;transition:all .2s;font-family:inherit}.sd-dayoff-card:hover{border-color:var(--card-border);background:var(--hover-bg)}.sd-dayoff-card.sd-dayoff-active{background:oklch(.7 .12 80/.06);border-color:oklch(.7 .12 80/.2)}.sd-dayoff-icon{border-radius:var(--radius-md);display:flex;background:var(--hover-bg);color:var(--text-muted);flex-shrink:0;justify-content:center;align-items: center;width:2.25rem;height:2.25rem;transition:all .2s}.sd-dayoff-active .sd-dayoff-icon{background:oklch(.7 .12 80/.15);color:oklch(.75 .12 80)}.sd-dayoff-text{display:flex;flex-direction:column;flex:1;gap:.1rem;min-width:0}.sd-dayoff-title{color:var(--text);font-size:.85rem;font-weight:600}.sd-dayoff-desc{color:var(--text-muted);font-size:.72rem}.sd-toggle{background:var(--input-border);position:relative;border-radius:999px;flex-shrink:0;width:2.75rem;height:1.625rem;transition:background .25s}.sd-toggle-on{background:var(--brand-primary)}.sd-toggle-knob{position:absolute;background:var(--toggle-color);border-radius:50%;width:1.25rem;height:1.25rem;transition:transform .25s cubic-bezier(.16,1,.3,1);top:3px;left:3px;box-shadow:0 1px 4px #0003}.sd-toggle-on .sd-toggle-knob{transform:translate(1.125rem)}.sd-reason-grid{display:grid;grid-template-columns:1fr 1fr;gap:.4rem}.sd-reason-chip{display:inline-flex;border-radius:var(--radius-md);border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;text-align:left;background:0 0;align-items: center;gap:.35rem;padding:.45rem .6rem;transition:all .15s;font-family:inherit;font-size:.78rem;font-weight:500}.sd-reason-chip:hover{border-color:var(--card-border);background:var(--hover-bg);color:var(--text)}.sd-reason-chip.sd-reason-active{background:var(--brand-hover);border-color:var(--brand-border);color:var(--brand-primary)}.sd-reason-emoji{font-size:.9rem;line-height:1}.sd-field{display:flex;flex-direction:column;gap:.3rem}.sd-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.7rem;font-weight:600}.sd-input{border-radius:var(--radius-md);border:1px solid var(--input-border);background:var(--input-bg);color:var(--text);outline:none;width:100%;padding:.55rem .75rem;transition:all .2s;font-family:inherit;font-size:.85rem}.sd-input:focus{border-color:var(--brand-primary);box-shadow:var(--input-focus-ring)}.sd-input::placeholder{color:var(--placeholder-color)}.sd-textarea{resize:vertical;min-height:4rem;line-height:1.5}.sd-time-row{display:grid;grid-template-columns:1fr auto 1fr;align-items: end;gap:.5rem}.sd-time-sep{display:flex;color:var(--text-muted);opacity:.4;justify-content:center;align-items: center;padding-bottom:.55rem}.sd-error{display:flex;color:var(--state-error);border-radius:var(--radius-md);background:var(--state-error-bg);border:1px solid var(--state-error-border);align-items: center;gap:.4rem;margin:0;padding:.5rem .75rem;font-size:.82rem}.sd-footer{border-top:1px solid var(--border-subtle);display:flex;background:var(--hover-bg-subtle);flex-shrink:0;align-items: center;gap:.5rem;padding:1rem 1.5rem}.sd-actions-right{display:flex;gap:.5rem;margin-left:auto}.sd-btn{display:inline-flex;border-radius:var(--radius-md);cursor:pointer;border:1px solid #0000;align-items: center;gap:.4rem;padding:.5rem 1rem;transition:all .2s;font-family:inherit;font-size:.82rem;font-weight:600}.sd-btn:active{transform:scale(.97)}.sd-btn-primary{background:var(--brand-primary);color:var(--brand-text);border-color:var(--brand-primary);box-shadow:0 2px 8px oklch(.55 .15 220/.2)}.sd-btn-primary:hover{box-shadow:var(--brand-shadow);transform:translateY(-1px)}.sd-btn-primary:active{transform:scale(.97)translateY(0)}.sd-btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.sd-btn-secondary{color:var(--text-muted);border-color:var(--border-subtle);background:0 0}.sd-btn-secondary:hover{background:var(--hover-bg);color:var(--text);border-color:var(--card-border)}.sd-btn-danger{color:var(--state-error);border-color:var(--state-error-border);background:0 0}.sd-btn-danger:hover{background:var(--state-error-bg)}.sd-spinner{display:inline-block;border:2px solid #ffffff4d;border-top-color:var(--brand-text);animation:tm-spin .6s linear infinite;border-radius:50%;width:14px;height:14px}@media (max-width:767px){.sd-overlay{flex-direction:column;justify-content:flex-end}.sd-drawer{border-radius:var(--radius-2xl)var(--radius-2xl)0 0;border-left:none;border-top:1px solid var(--popup-glass-border);animation:sd-slide-up .32s cubic-bezier(.16,1,.3,1);width:100%;max-width:100vw;height:auto;max-height:92dvh;box-shadow:0 -8px 32px #00000040,0 -2px 8px #0000001a}@keyframes sd-slide-up{0%{transform:translateY(100%);opacity:.6}to{transform:none;opacity:1}}.sd-drag-handle{display:flex;flex-shrink:0;justify-content:center;padding:.5rem 0 .125rem}.sd-drag-handle:after{content:"";background:var(--border-subtle);border-radius:999px;width:2rem;height:.25rem}.sd-accent{display:none}.sd-header{padding:.625rem 1.125rem .5rem}.sd-title{font-size:1.05rem}.sd-mode-badge{font-size:.62rem}.sd-body{gap:.75rem;padding:.375rem 1.125rem 1rem}.sd-input{min-height:2.75rem;padding:.625rem .75rem;font-size:.88rem}.sd-textarea{min-height:3.5rem}.sd-person-card{gap:.625rem;padding:.625rem}.sd-avatar{width:2.25rem;height:2.25rem;font-size:.72rem}.sd-person-name{font-size:.84rem}.sd-person-date{font-size:.74rem}.sd-section{gap:.5rem;padding:.75rem}.sd-dayoff-card{gap:.625rem;padding:.625rem .75rem}.sd-dayoff-title{font-size:.82rem}.sd-dayoff-desc{font-size:.7rem}.sd-reason-grid{grid-template-columns:1fr 1fr}.sd-reason-chip{padding:.5rem;font-size:.74rem}.sd-expand-toggle{font-size:.82rem}.sd-time-row{gap:.25rem}.sd-time-row .sd-input{min-width:0;padding:.5rem .375rem;font-size:.82rem}.sd-time-sep{padding-bottom:.5rem}.sd-time-sep svg{width:14px;height:14px}.sd-expand-content .sd-time-row .sd-input{padding:.5rem .375rem;font-size:.82rem}.sd-footer{padding:.75rem 1.125rem;padding-bottom:calc(.75rem + env(safe-area-inset-bottom,0));flex-wrap:wrap;gap:.5rem}.sd-actions-right{gap:.375rem}.sd-btn{padding:.5rem .75rem;font-size:.78rem}.sd-btn-primary{padding:.5rem 1rem}}:root.light .sd-overlay{background:#00000040}:root.light .sd-drawer{box-shadow:-16px 0 48px #0000001f,-2px 0 6px #0000000f}:root.light .sd-mode-edit{background:oklch(.52 .14 70/.08);color:oklch(.48 .14 70);border-color:oklch(.52 .14 70/.2)}:root.light .sd-dayoff-card.sd-dayoff-active{background:oklch(.52 .14 70/.06);border-color:oklch(.52 .14 70/.25)}:root.light .sd-dayoff-active .sd-dayoff-icon{background:oklch(.52 .14 70/.1);color:oklch(.48 .14 70)}:root.light .sd-toggle{background:oklch(.84 .01 220)}:root.light .sd-toggle-on{background:var(--brand-primary)}:root.light .sd-person-card,:root.light .sd-section{background:oklch(.97 .005 220);border-color:oklch(.88 .008 220)}:root.light .sd-footer{background:oklch(.97 .005 220)}:root.light .sd-close{background:oklch(.95 .005 220);border-color:oklch(.88 .008 220)}:root.light .sd-close:hover{background:oklch(.92 .005 220)}.sch-tpl-dropdown{position:relative}.sch-tpl-panel{position:absolute;border-radius:var(--radius-lg);background:var(--popup-glass-bg);border:1px solid var(--popup-glass-border);box-shadow:var(--popup-glass-shadow);backdrop-filter:blur(var(--popup-glass-blur));-webkit-backdrop-filter:blur(var(--popup-glass-blur));z-index:50;overflow:hidden;animation:dropdownIn .2s ease-out forwards;width:300px;top:calc(100% + .5rem);right:0}.sch-tpl-panel-header{display:flex;border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items: center;padding:.75rem 1rem}.sch-tpl-panel-title{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-size:.78rem;font-weight:600}.sch-tpl-panel-add{display:flex;border-radius:var(--radius-sm);border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;background:0 0;justify-content:center;align-items: center;width:26px;height:26px;transition:all .15s}.sch-tpl-panel-add:hover{background:var(--brand-hover);color:var(--brand-primary);border-color:var(--brand-primary)}.sch-tpl-panel-loading,.sch-tpl-panel-empty{text-align:center;color:var(--text-muted);padding:1.5rem 1rem;font-size:.82rem}.sch-tpl-panel-hint{color:var(--text-muted);opacity:.7;margin-top:.25rem;font-size:.75rem}.sch-tpl-panel-list{display:flex;overflow-y:auto;flex-direction:column;gap:.25rem;max-height:320px;padding:.5rem}.sch-tpl-panel-item{display:flex;border-radius:var(--radius-sm);align-items: center;gap:.5rem;padding:.5rem .6rem;transition:background .15s}.sch-tpl-panel-item:hover{background:var(--hover-bg)}.sch-tpl-panel-item.inactive{opacity:.45}.sch-tpl-panel-item-dot{border-radius:999px;flex-shrink:0;width:.5rem;height:.5rem;box-shadow:0 0 5px}.sch-tpl-panel-item-info{display:flex;flex-direction:column;flex:1;min-width:0}.sch-tpl-panel-item-name{color:var(--text);font-size:.82rem;font-weight:600;line-height:1.3}.sch-tpl-panel-item-time{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.72rem}.sch-tpl-panel-item-actions{display:flex;gap:.25rem}.sch-tpl-panel-btn{display:flex;border-radius:var(--radius-sm);border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;background:0 0;justify-content:center;align-items: center;width:26px;height:26px;transition:all .15s}.sch-tpl-panel-btn:hover{background:var(--hover-bg);color:var(--text);border-color:var(--text-muted)}.sch-tpl-weekdays{display:flex;gap:.25rem;padding:0 1.25rem}.sch-tpl-day{border-radius:var(--radius-sm);display:flex;border:1px solid var(--border-subtle);color:var(--text-muted);background:0 0;justify-content:center;align-items: center;width:2rem;height:1.75rem;transition:all .15s;font-size:.65rem;font-weight:600}.sch-tpl-day.active{background:var(--brand-primary);color:var(--brand-text);border-color:var(--brand-primary)}.sch-tpl-day.selectable{cursor:pointer;width:2.5rem;height:2.2rem;font-size:.72rem}.sch-tpl-day.selectable:hover{border-color:var(--brand-primary);background:var(--brand-hover)}.sch-tpl-panel-item-name-row{display:flex;align-items: center;gap:.375rem}.sch-tpl-panel-item-summary{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.7rem;line-height:1.3}.sch-tpl-badge{display:inline-flex;text-transform:uppercase;letter-spacing:.03em;background:var(--hover-bg-subtle);color:var(--text-muted);border:1px solid var(--border-subtle);white-space:nowrap;border-radius:999px;align-items: center;padding:.1rem .4rem;font-size:.6rem;font-weight:600}.sch-tpl-badge.biweekly{background:oklch(.55 .15 220/.1);color:var(--brand-primary);border-color:oklch(.55 .15 220/.2)}.sch-tpl-color-custom{border:1px solid var(--border-subtle);cursor:pointer;background:0 0;border-radius:50%;width:1.75rem;height:1.75rem;padding:0}.sch-tpl-panel-btn-danger:hover{background:var(--state-error-bg,oklch(.6 .2 25/.1));color:var(--state-error);border-color:var(--state-error)}.sch-tpl-cycle-toggle{display:flex;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);overflow:hidden;gap:0;width:-moz-fit-content;width:fit-content}.sch-tpl-cycle-option{cursor:pointer;color:var(--text-muted);border:none;border-right:1px solid var(--border-subtle);background:0 0;padding:.4rem 1rem;transition:all .15s;font-family:inherit;font-size:.78rem;font-weight:500}.sch-tpl-cycle-option:last-child{border-right:none}.sch-tpl-cycle-option:hover{background:var(--hover-bg);color:var(--text)}.sch-tpl-cycle-option.active{background:var(--brand-primary);color:var(--brand-text,#fff)}.sch-tpl-day-builder{display:flex;flex-direction:column;gap:.75rem}.sch-tpl-week-section{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--hover-bg-subtle);padding:.625rem}.sch-tpl-week-header{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);display:flex;justify-content:space-between;align-items: center;margin-bottom:.375rem;font-size:.72rem;font-weight:600}.sch-tpl-week-header-actions{display:flex;align-items: center;gap:.375rem}.sch-tpl-week-empty{color:var(--text-muted);opacity:.7;text-align:center;padding:.75rem 0;font-size:.78rem}.sch-tpl-day-row{display:flex;border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;align-items: center;gap:.375rem;padding:.375rem 0}.sch-tpl-day-row:last-child{border-bottom:none}.sch-tpl-day-input{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--card-bg);color:var(--text);padding:.3rem .4rem;transition:border-color .15s;font-family:inherit;font-size:.78rem}.sch-tpl-day-input:focus{outline:none;border-color:var(--brand-primary)}.sch-tpl-day-time{font-variant-numeric:tabular-nums;width:5.5rem}.sch-tpl-day-label-input{flex-shrink:1;width:5rem;min-width:3rem}.sch-tpl-day-select{width:5rem;min-width:5rem}.sch-tpl-day-select:focus{outline:none;border-color:var(--brand-primary)}.sch-tpl-day-sep{color:var(--text-muted);flex-shrink:0;font-size:.75rem}.sch-tpl-day-break-toggle{display:flex;border-radius:var(--radius-xs,.25rem);border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;background:0 0;flex-shrink:0;justify-content:center;align-items: center;width:24px;height:24px;transition:all .15s}.sch-tpl-day-break-toggle:hover{background:var(--hover-bg);color:var(--text)}.sch-tpl-day-break-toggle.active{background:oklch(.55 .15 220/.12);color:var(--brand-primary);border-color:var(--brand-primary)}.sch-tpl-day-remove{display:flex;border-radius:var(--radius-xs,.25rem);color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #0000;flex-shrink:0;justify-content:center;align-items: center;width:22px;height:22px;margin-left:auto;transition:all .15s}.sch-tpl-day-remove:hover{background:var(--state-error-bg,oklch(.6 .2 25/.1));color:var(--state-error);border-color:var(--state-error)}.sch-tpl-week-footer{display:flex;justify-content:space-between;align-items: center;margin-top:.25rem;padding-top:.375rem}.sch-tpl-add-day{display:inline-flex;border-radius:var(--radius-sm);border:1px dashed var(--border-subtle);color:var(--text-muted);cursor:pointer;background:0 0;align-items: center;gap:.3rem;padding:.3rem .6rem;transition:all .15s;font-family:inherit;font-size:.72rem;font-weight:500}.sch-tpl-add-day:hover{border-color:var(--brand-primary);color:var(--brand-primary);background:var(--brand-hover)}.sch-tpl-copy-week{display:inline-flex;border-radius:var(--radius-sm);border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;background:0 0;align-items: center;gap:.3rem;padding:.2rem .5rem;transition:all .15s;font-family:inherit;font-size:.68rem;font-weight:500}.sch-tpl-copy-week:hover{border-color:var(--brand-primary);color:var(--brand-primary);background:var(--brand-hover)}.sch-tpl-hours-summary{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.75rem;font-weight:600}.sch-apply-list{display:flex;overflow-y:auto;border:1px solid var(--border-subtle);border-radius:var(--radius-md);flex-direction:column;gap:.2rem;max-height:260px;padding:.4rem}.sch-apply-item{display:flex;border-radius:var(--radius-sm);cursor:pointer;color:var(--text);align-items: center;gap:.5rem;padding:.4rem .6rem;transition:background .1s;font-size:.85rem}.sch-apply-item:hover{background:var(--hover-bg)}.sch-apply-item.selected{background:var(--brand-hover)}.sch-apply-item input[type=checkbox]{accent-color:var(--brand-primary)}.sch-apply-name{flex:1}.sch-apply-role{color:var(--text-muted);text-transform:capitalize;font-size:.72rem}.sg-mobile-wrapper{display:none}.sg-mobile-day-strip{display:flex;justify-content:space-between;gap:.375rem;padding:0 .25rem .75rem}.sg-mobile-day-btn{display:flex;border-radius:var(--radius-lg);cursor:pointer;position:relative;background:0 0;border:1px solid #0000;flex-direction:column;flex:1;align-items: center;gap:.125rem;min-width:0;min-height:44px;padding:.5rem 0;transition:all .2s;font-family:inherit}.sg-mobile-day-btn:active{transform:scale(.95)}.sg-mobile-day-btn.today{border-color:var(--brand-primary);border-style:dashed}.sg-mobile-day-btn.active{background:var(--brand-primary);border-color:var(--brand-primary);box-shadow:0 2px 10px oklch(.55 .15 220/.25);border-style:solid}.sg-mobile-day-btn.active .sg-mobile-day-label,.sg-mobile-day-btn.active .sg-mobile-day-num{color:var(--brand-text)}.sg-mobile-day-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-size:.6rem;font-weight:600;line-height:1}.sg-mobile-day-num{color:var(--text);font-size:.92rem;font-weight:700;line-height:1.2}.sg-mobile-day-dot{background:var(--brand-primary);position:absolute;border-radius:50%;width:4px;height:4px;bottom:4px}.sg-mobile-day-btn.active .sg-mobile-day-dot{background:var(--brand-text)}.sg-mobile-cards{display:flex;flex-direction:column;gap:.5rem}.sg-mobile-card{border-radius:var(--radius-lg);border:1px solid var(--card-border);background:var(--card-bg);display:flex;cursor:pointer;box-shadow:var(--card-shadow);position:relative;overflow:hidden;-webkit-tap-highlight-color:transparent;align-items: center;gap:.75rem;min-height:56px;padding:.875rem 1rem;transition:background .15s}.sg-mobile-card:active{background:var(--hover-bg)}.sg-mobile-card-accent{position:absolute;border-radius:3px 0 0 3px;width:3px;top:0;bottom:0;left:0}.sg-mobile-card-body{display:flex;flex-direction:column;flex:1;gap:.125rem;min-width:0}.sg-mobile-card-name{color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.875rem;font-weight:600}.sg-mobile-card-meta{display:flex;color:var(--text-muted);align-items: center;gap:.375rem;font-size:.78rem}.sg-mobile-card-meta--muted{opacity:.5;font-style:italic}.sg-mobile-card-time{font-variant-numeric:tabular-nums}.sg-mobile-card-dur{border-radius:var(--radius-sm);background:var(--hover-bg-subtle);color:var(--text-muted);padding:.1rem .4rem;font-size:.68rem;font-weight:600}.sg-mobile-card-label{color:var(--text-muted);font-size:.68rem}.sg-mobile-card-chevron{color:var(--text-muted);opacity:.4;flex-shrink:0}.sg-mobile-card-add{color:var(--brand-primary);opacity:.6;flex-shrink:0}.sg-mobile-card-off{border-color:var(--state-warning-border);background:var(--state-warning-bg)}.sg-mobile-card-empty{opacity:.7;border-style:dashed}.sg-mobile-empty-state{display:flex;text-align:center;flex-direction:column;justify-content:center;align-items: center;gap:.75rem;padding:3rem 1rem}.sg-mobile-empty-state p{color:var(--text-muted);margin:0;font-size:.85rem}.sg-mobile-empty-text{text-align:center;color:var(--text-muted);margin:0;padding:1.5rem 1rem;font-size:.82rem}.sg-mobile-month-wrapper{display:none}.sg-mobile-month-list{display:flex;border-radius:var(--radius-lg);border:1px solid var(--card-border);background:var(--card-bg);box-shadow:var(--card-shadow);overflow:hidden;flex-direction:column;gap:0}.sg-mobile-month-day{border-bottom:1px solid var(--border-subtle)}.sg-mobile-month-day:last-child{border-bottom:none}.sg-mobile-month-day-header{display:flex;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;align-items: center;gap:.625rem;width:100%;min-height:48px;padding:.875rem 1rem;transition:background .15s;font-family:inherit}.sg-mobile-month-day-header:active{background:var(--hover-bg)}.sg-mobile-month-day-label{color:var(--text);text-align:left;min-width:5.5rem;font-size:.85rem;font-weight:600}.sg-mobile-month-today .sg-mobile-month-day-label{color:var(--brand-primary)}.sg-mobile-month-day-badges{display:flex;flex-wrap:wrap;flex:1;align-items: center;gap:.3rem}.sg-month-badge{display:inline-flex;border-radius:var(--radius-pill);background:var(--brand-hover);color:var(--brand-primary);align-items: center;padding:.15rem .5rem;font-size:.68rem;font-weight:600}.sg-month-badge--off{background:var(--state-warning-bg);color:var(--state-warning)}.sg-month-badge--blocked{background:var(--state-error-bg);color:var(--state-error);font-weight:500}.sg-month-badge--empty{color:var(--text-muted);opacity:.4;background:0 0}.sg-mobile-month-chevron{color:var(--text-muted);flex-shrink:0;transition:transform .2s}.sg-mobile-month-chevron.open{transform:rotate(180deg)}.sg-mobile-month-day-content{display:flex;animation:monthDayExpand .2s ease forwards;flex-direction:column;gap:.4rem;padding:0 .75rem .875rem}@keyframes monthDayExpand{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.sg-mobile-month-today{background:var(--brand-hover)}.sg-mobile-month-blocked .sg-mobile-month-day-label{color:var(--state-error)}.sch-mobile-stats{display:flex;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;align-items: center;gap:.375rem;padding:0 .125rem}.sch-mobile-stats::-webkit-scrollbar{display:none}.sch-mobile-fab{display:none}@media (max-width:767px){.sch-grid-card{display:none}.sg-mobile-wrapper,.sg-mobile-month-wrapper{display:block}.sch-header{margin-bottom:var(--space-3);gap:.5rem}.sch-header-row1{display:flex;flex-wrap:nowrap;justify-content:space-between;align-items: center;gap:.5rem}.sch-header-left{display:flex;flex-wrap:nowrap;flex:1;align-items: center;gap:.5rem;min-width:0}.sch-title{white-space:nowrap;flex-shrink:0;font-size:1.125rem}.sch-header-actions{display:none}.avail-tabs{flex-shrink:0;padding:.125rem}.avail-tab{padding:.2rem .5rem;font-size:.7rem}.sch-header-row2{display:flex;overflow:hidden;flex-wrap:nowrap;align-items: center;gap:.375rem}.sch-header-row2-right{display:none}.wn-bar{background:0 0;border:none;flex-wrap:nowrap;flex:1;gap:.25rem;min-width:0;padding:0}.wn-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:auto;font-size:.78rem}.wn-today{white-space:nowrap;flex-shrink:0;padding:.25rem .5rem;font-size:.72rem}.wn-btn{flex-shrink:0;width:2rem;min-width:2rem;height:2rem}.sch-range-toggle{overflow:hidden;flex-shrink:1;min-width:0}.sch-range-btn{white-space:nowrap;padding:.25rem .5rem;font-size:.72rem}.sch-mobile-stats .sch-chip{white-space:nowrap;flex-shrink:0;padding:.2rem .5rem;font-size:.68rem}.sch-tpl-panel{width:calc(100vw - 2rem);max-width:100%;right:0}.sd-drawer{width:100%}.sch-tpl-day-row{gap:.25rem}.sch-tpl-day-label-input{width:3.5rem}.sch-tpl-day-time{width:4.5rem}.sch-tpl-day-select{width:4rem;min-width:4rem}.sch-bulk-bar{bottom:calc(var(--bottomnav-height) + env(safe-area-inset-bottom,0) + .75rem);flex-wrap:wrap;justify-content:center;gap:.5rem;max-width:calc(100vw - 2rem);padding:.5rem .75rem}.sch-bulk-bar-btn{padding:.35rem .625rem;font-size:.72rem}.sch-mobile-fab{display:flex;position:fixed;right:1rem;bottom:calc(var(--bottomnav-height) + env(safe-area-inset-bottom,0) + 1rem);cursor:pointer;background:var(--brand-bg);color:var(--brand-text);box-shadow:var(--brand-shadow),0 4px 16px oklch(0 0 0/.2);z-index:var(--z-sticky);-webkit-tap-highlight-color:transparent;border:none;border-radius:50%;justify-content:center;align-items: center;width:52px;height:52px;transition:transform .2s,box-shadow .2s}.sch-mobile-fab:active{transform:scale(.92)}.sch-skeleton-row{grid-template-columns:1fr}.sch-skeleton-day{display:none}.sch-skeleton-name{width:100%}}.sg-selected{box-shadow:inset 0 0 0 2px oklch(.55 .18 220/.4);border-radius:4px;background:oklch(.55 .15 220/.12)!important}.sg-selected .sg-empty-cell{color:var(--brand-primary);opacity:1}.sch-bulk-bar{position:fixed;display:flex;border-radius:var(--radius-lg);background:var(--popup-glass-bg);border:1px solid var(--popup-glass-border);box-shadow:var(--popup-glass-shadow),0 8px 32px #00000040;backdrop-filter:blur(var(--popup-glass-blur));-webkit-backdrop-filter:blur(var(--popup-glass-blur));z-index:90;animation:bulkBarIn .25s ease-out forwards;align-items: center;gap:.75rem;padding:.625rem 1.25rem;bottom:1.5rem;left:50%;transform:translate(-50%)}@keyframes bulkBarIn{0%{opacity:0;transform:translate(-50%)translateY(12px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.sch-bulk-bar-count{color:var(--brand-primary);white-space:nowrap;font-size:.82rem;font-weight:600}.sch-bulk-bar-btn{display:inline-flex;border-radius:var(--radius-md);cursor:pointer;background:var(--brand-bg);color:var(--brand-text,#fff);box-shadow:var(--brand-shadow);border:none;align-items: center;gap:.375rem;padding:.4rem .875rem;transition:transform .2s,box-shadow .2s;font-size:.8rem;font-weight:600}.sch-bulk-bar-btn:hover{transform:scale(1.03)}.sch-bulk-bar-btn:active{transform:scale(.97)}.sch-bulk-bar-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.sch-bulk-bar-btn--warn{background:var(--state-warning-bg);color:var(--state-warning);border:1px solid var(--state-warning-border);box-shadow:none}.sch-bulk-bar-btn--warn:hover{background:var(--state-warning);color:var(--brand-text)}.sch-bulk-bar-clear{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);cursor:pointer;color:var(--text-muted);background:0 0;padding:.35rem .75rem;transition:background .15s,color .15s;font-size:.78rem;font-weight:500}.sch-bulk-bar-clear:hover{background:var(--hover-bg);color:var(--text)}.sch-bulk-tpl-wrapper{position:relative}.sch-bulk-bar-btn--tpl{background:var(--card-bg);color:var(--text);border:1px solid var(--border-subtle);box-shadow:none}.sch-bulk-bar-btn--tpl:hover{background:var(--hover-bg);border-color:var(--brand-primary)}.sch-bulk-tpl-picker{position:absolute;border-radius:var(--radius-md);background:var(--popup-glass-bg);border:1px solid var(--popup-glass-border);box-shadow:var(--popup-glass-shadow);backdrop-filter:blur(var(--popup-glass-blur));-webkit-backdrop-filter:blur(var(--popup-glass-blur));z-index:100;overflow:hidden;animation:bulkTplIn .15s ease-out forwards;width:240px;padding:.375rem;bottom:calc(100% + .5rem);left:50%;transform:translate(-50%)}@keyframes bulkTplIn{0%{opacity:0;transform:translate(-50%)translateY(6px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.sch-bulk-tpl-empty{text-align:center;color:var(--text-muted);padding:1rem;font-size:.78rem}.sch-bulk-tpl-item{display:flex;border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;align-items: center;gap:.5rem;width:100%;padding:.5rem .6rem;transition:background .15s;font-family:inherit}.sch-bulk-tpl-item:hover{background:var(--hover-bg)}.sch-bulk-tpl-dot{border-radius:999px;flex-shrink:0;width:.5rem;height:.5rem;box-shadow:0 0 4px}.sch-bulk-tpl-name{color:var(--text);text-align:left;flex:1;font-size:.8rem;font-weight:600}.sch-bulk-tpl-time{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.7rem}.sch-bulk-dayoff-wrapper{position:relative}.sch-bulk-dayoff-picker{position:absolute;border-radius:var(--radius-md);background:var(--popup-glass-bg);border:1px solid var(--popup-glass-border);box-shadow:var(--popup-glass-shadow);backdrop-filter:blur(var(--popup-glass-blur));-webkit-backdrop-filter:blur(var(--popup-glass-blur));z-index:100;overflow:hidden;animation:bulkTplIn .15s ease-out forwards;width:200px;padding:.375rem;bottom:calc(100% + .5rem);left:50%;transform:translate(-50%)}.sch-bulk-dayoff-title{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);padding:.375rem .5rem .25rem;font-size:.68rem;font-weight:600}.sch-bulk-dayoff-item{display:flex;border-radius:var(--radius-sm);cursor:pointer;color:var(--text);text-align:left;background:0 0;border:none;align-items: center;gap:.5rem;width:100%;padding:.45rem .6rem;transition:background .15s;font-family:inherit;font-size:.8rem;font-weight:500}.sch-bulk-dayoff-item:hover{background:var(--hover-bg)}.sch-confirm-body{display:flex;flex-direction:column;gap:1rem;padding:.5rem 1.5rem 1.5rem}.sch-confirm-context{display:flex;border-radius:var(--radius-md);background:var(--card-bg);border:1px solid var(--border-subtle);align-items: center;gap:.75rem;padding:.75rem 1rem}.sch-confirm-ctx-avatar{border-radius:var(--radius-md);display:flex;letter-spacing:.03em;color:var(--brand-primary);background:var(--brand-hover);flex-shrink:0;justify-content:center;align-items: center;width:2.25rem;height:2.25rem;font-size:.68rem;font-weight:700}.sch-confirm-ctx-info{display:flex;flex-direction:column;gap:.1rem;min-width:0}.sch-confirm-ctx-name{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;font-weight:600}.sch-confirm-ctx-date{color:var(--text-muted);font-size:.75rem}.sch-diff-card{border-radius:var(--radius-md);border:1px solid var(--border-subtle);overflow:hidden}.sch-diff-field{display:flex;border-bottom:1px solid var(--border-subtle);align-items: center;gap:.75rem;padding:.6rem 1rem;transition:background .15s}.sch-diff-field:last-child{border-bottom:none}.sch-diff-field.sch-diff-changed{background:var(--brand-hover)}.sch-diff-field-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);flex-shrink:0;min-width:3.5rem;font-size:.7rem;font-weight:600}.sch-diff-field-values{display:flex;flex:1;align-items: center;gap:.5rem;min-width:0}.sch-diff-old{color:var(--text-muted);text-decoration:line-through;text-decoration-color:oklch(.6 .05 15/.5);font-size:.82rem;font-weight:500}.sch-diff-old.sch-diff-same{color:var(--text);text-decoration:none;font-weight:500}.sch-diff-arrow{color:var(--brand-primary);opacity:.7;flex-shrink:0}.sch-diff-new{color:var(--text);font-size:.82rem;font-weight:600}.sch-confirm-delete-card{display:flex;border-radius:var(--radius-md);background:var(--state-error-bg);border:1px solid var(--state-error-border);align-items: center;gap:.85rem;padding:.85rem 1rem}.sch-confirm-delete-icon{border-radius:var(--radius-md);display:flex;color:var(--state-error);background:oklch(.55 .18 25/.12);flex-shrink:0;justify-content:center;align-items: center;width:2.25rem;height:2.25rem}.sch-confirm-delete-info{display:flex;flex-direction:column;gap:.15rem;min-width:0}.sch-confirm-delete-title{color:var(--state-error);font-size:.8rem;font-weight:600}.sch-confirm-delete-detail{color:var(--text-muted);font-size:.78rem;font-weight:500}.sch-confirm-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.sch-confirm-warn{color:var(--state-warning);border-radius:var(--radius-sm);background:var(--state-warning-bg);border:1px solid var(--state-warning-border);padding:.5rem .75rem;font-size:.78rem;font-weight:600}.sch-confirm-new-box{display:flex;border-radius:var(--radius-sm);background:var(--brand-hover);border:1px solid oklch(.55 .15 220/.15);align-items: center;gap:.75rem;padding:.6rem .85rem}.sch-confirm-new-label{text-transform:uppercase;letter-spacing:.05em;color:var(--brand-primary);flex-shrink:0;font-size:.68rem;font-weight:700}.sch-confirm-new-value{color:var(--text);display:flex;align-items: center;gap:.4rem;font-size:.85rem;font-weight:600}.sch-confirm-groups{display:flex;overflow-y:auto;scrollbar-width:thin;flex-direction:column;gap:.25rem;max-height:20rem}.sch-confirm-group{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);overflow:hidden;transition:border-color .15s}.sch-confirm-group.open{border-color:var(--card-border)}.sch-confirm-group-header{display:flex;cursor:pointer;text-align:left;background:0 0;border:none;align-items: center;gap:.5rem;width:100%;padding:.5rem .75rem;transition:background .15s;font-family:inherit}.sch-confirm-group-header:hover{background:var(--hover-bg)}.sch-confirm-chevron{color:var(--text-muted);flex-shrink:0;transition:transform .2s}.sch-confirm-chevron.open{transform:rotate(90deg)}.sch-confirm-group-name{color:var(--text);font-size:.82rem;font-weight:600}.sch-confirm-group-count{border-radius:var(--radius-pill);background:var(--hover-bg);color:var(--text-muted);padding:.1rem .4rem;font-size:.68rem;font-weight:600}.sch-confirm-group-ow{color:var(--state-warning);margin-left:auto;font-size:.62rem;font-weight:600}.sch-confirm-group-days{border-top:1px solid var(--border-subtle);padding:.25rem 0}.sch-confirm-day-row{display:flex;align-items: center;gap:.5rem;padding:.35rem .75rem .35rem 2rem;transition:background .1s;font-size:.75rem}.sch-confirm-day-row:hover{background:var(--hover-bg-subtle)}.sch-confirm-day-ow{background:var(--state-warning-bg)}.sch-confirm-day-ow:hover{background:oklch(.55 .12 70/.08)}.sch-confirm-day-date{font-variant-numeric:tabular-nums;color:var(--text);flex-shrink:0;min-width:5.5rem;font-weight:600}.sch-confirm-day-prev{color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.sch-confirm-arrow{color:var(--text-muted);opacity:.5;flex-shrink:0}.sch-confirm-day-new{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600}:root.light .wn-bar{background:oklch(.96 .005 220);border-color:oklch(.88 .008 220)}:root.light .sg-header-row{background:oklch(.97 .005 220/.85)}:root.light .sg-header-day.sg-today{background:oklch(.55 .15 220/.06)}:root.light .sg-today-num{box-shadow:0 1px 4px oklch(.55 .15 220/.2)}:root.light .sg-day-cell.sg-today{background:oklch(.55 .15 220/.03)}:root.light .sg-shift-block{background:oklch(.97 .005 220)}:root.light .sg-shift-block:hover{background:oklch(.94 .02 220)}:root.light .sg-role-pill{background:oklch(.93 .01 220);color:oklch(.45 .02 220)}:root.light .sg-emp-tooltip{border-color:oklch(.88 .008 220);background:#fffffff2;box-shadow:0 4px 20px #0000001a}:root.light .sg-dayoff-block{background:oklch(.55 .12 70/.06);border-color:oklch(.55 .12 70/.15)}:root.light .sg-total-cell,:root.light .cb-bar{background:oklch(.97 .005 220)}:root.light .cb-progress-track{background:oklch(.9 .005 220)}:root.light .sch-skeleton-name{background:oklch(.92 .005 220)}:root.light .sch-skeleton-day{background:oklch(.95 .005 220)}:root.light .sch-chip{background:oklch(.94 .01 220);border-color:oklch(.88 .008 220)}:root.light .sch-view-dropdown,:root.light .sch-tpl-panel{border-color:oklch(.88 .008 220);background:#fffffff2;box-shadow:0 4px 20px #00000014}:root.light .sch-tpl-panel-header{border-bottom-color:oklch(.88 .008 220)}:root.light .sch-tpl-panel-add,:root.light .sch-tpl-panel-btn{border-color:oklch(.88 .008 220)}:root.light .sg-mobile-day-btn.active{box-shadow:0 2px 8px oklch(.55 .15 220/.15)}:root.light .cb-tooltip{border-color:oklch(.88 .008 220);background:#fffffff2;box-shadow:0 4px 16px #0000001a}:root.light .cb-tooltip:after{border-top-color:oklch(.88 .008 220)}:root.light .sg-selected{box-shadow:inset 0 0 0 2px oklch(.55 .18 220/.3);background:oklch(.55 .15 220/.08)!important}:root.light .sch-bulk-bar{border-color:oklch(.88 .008 220);background:#ffffffeb;box-shadow:0 4px 24px #0000001a,0 1px 4px #0000000f}:root.light .sch-bulk-bar-clear{border-color:oklch(.88 .008 220)}:root.light .sch-bulk-bar-clear:hover{background:oklch(.96 .005 220)}:root.light .sch-bulk-tpl-picker{border-color:oklch(.88 .008 220);background:#fffffff2;box-shadow:0 4px 20px #00000014}:root.light .sch-bulk-bar-btn--tpl{background:oklch(.97 .005 220);border-color:oklch(.88 .008 220)}:root.light .sch-bulk-dayoff-picker{border-color:oklch(.88 .008 220);background:#fffffff2;box-shadow:0 4px 20px #00000014}:root.light .sch-apply-list{border-color:oklch(.88 .008 220)}:root.light .sch-range-toggle{background:oklch(.96 .005 220);border-color:oklch(.88 .008 220)}:root.light .sch-range-btn.active{background:oklch(.55 .15 220/.1)}:root.light .sg-weekend{background:oklch(.97 .005 220)}:root.light .sg-month-view .sg-header-day.sg-weekend{background:oklch(.95 .005 220)}:root.light .sg-month-dot-off{opacity:.9}:root.light .sg-mobile-month-today{background:var(--brand-hover)}:root.light .sg-mobile-month-day{border-bottom-color:oklch(.88 .008 220)}:root.light .sch-confirm-context{background:oklch(.97 .005 220);border-color:oklch(.88 .008 220)}:root.light .sch-confirm-ctx-avatar{background:oklch(.55 .15 220/.08)}:root.light .sch-diff-card{border-color:oklch(.88 .008 220)}:root.light .sch-diff-field{border-bottom-color:oklch(.92 .005 220)}:root.light .sch-diff-field.sch-diff-changed{background:oklch(.55 .15 220/.04)}:root.light .sch-diff-old{text-decoration-color:oklch(.6 .12 15/.4)}:root.light .sch-confirm-delete-card{background:oklch(.55 .18 25/.04);border-color:oklch(.55 .18 25/.15)}:root.light .sch-confirm-delete-icon{background:oklch(.55 .18 25/.08)}:root.light .sch-confirm-group{border-color:oklch(.88 .008 220)}:root.light .sch-confirm-group.open{border-color:oklch(.82 .01 220)}:root.light .sch-confirm-group-count{background:oklch(.94 .01 220)}:root.light .sch-confirm-day-ow{background:oklch(.55 .12 70/.06)}:root.light .sch-confirm-new-box{background:oklch(.55 .15 220/.06);border-color:oklch(.55 .15 220/.12)}.sch-overtime-warnings{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.sch-overtime-warning{display:flex;border-radius:var(--radius-md);border:1px solid var(--state-warning-border);background:var(--state-warning-bg);color:var(--state-warning);align-items: center;gap:.5rem;padding:.625rem .875rem;font-size:.8125rem;font-weight:500}.sch-overtime-warning.critical{border-color:var(--state-error-border);background:var(--state-error-bg);color:var(--state-error)}.sch-chip-pending{background:oklch(.55 .15 220/.1);border-color:oklch(.55 .15 220/.2);color:var(--brand-primary);cursor:pointer;transition:all .15s;font-family:inherit}.sch-chip-pending:hover{background:oklch(.55 .15 220/.16);border-color:var(--brand-primary)}.sch-chip-pending .sch-chip-num{color:var(--brand-primary)}.sg-pending-override{border:1.5px dashed oklch(.55 .15 220/.4)!important}.sg-pending-badge{position:absolute;z-index:1;pointer-events:none;font-size:.6rem;line-height:1;top:2px;right:2px}.sd-mode-request{background:var(--state-warning-bg);color:var(--state-warning);border:1px solid var(--state-warning-border)}.sch-overrides-body{padding:.5rem 1.5rem 1.5rem}.sch-overrides-empty{text-align:center;color:var(--text-muted);padding:2rem 1rem;font-size:.88rem}.sch-overrides-list{display:flex;overflow-y:auto;scrollbar-width:thin;flex-direction:column;gap:.5rem;max-height:24rem}.sch-override-item{display:flex;border-radius:var(--radius-md);background:var(--hover-bg-subtle);border:1px solid var(--border-subtle);align-items: center;gap:.75rem;padding:.75rem .875rem;transition:background .15s}.sch-override-item:hover{background:var(--hover-bg)}.sch-override-info{display:flex;flex-direction:column;flex:1;gap:.15rem;min-width:0}.sch-override-name{color:var(--text);font-size:.85rem;font-weight:600}.sch-override-date{font-variant-numeric:tabular-nums;color:var(--text-muted);font-size:.72rem;font-weight:600}.sch-override-type{color:var(--text);font-size:.78rem}.sch-override-notes{color:var(--text-muted);font-size:.72rem;font-style:italic}.sch-override-actions{display:flex;flex-shrink:0;gap:.375rem}.sch-override-btn{display:inline-flex;border-radius:var(--radius-sm);cursor:pointer;border:1px solid #0000;align-items: center;gap:.25rem;padding:.35rem .7rem;transition:all .15s;font-family:inherit;font-size:.72rem;font-weight:600}.sch-override-btn:disabled{opacity:.5;cursor:not-allowed}.sch-override-approve{background:var(--state-success-bg);color:var(--state-success);border-color:var(--state-success-border,oklch(.55 .15 145/.2))}.sch-override-approve:hover:not(:disabled){background:var(--state-success);color:var(--brand-text)}.sch-override-reject{background:var(--state-error-bg);color:var(--state-error);border-color:var(--state-error-border)}.sch-override-reject:hover:not(:disabled){background:var(--state-error);color:var(--brand-text)}.sch-rules-modal-body{display:flex;flex-direction:column;gap:1.5rem;padding:0 1.5rem 1.5rem}.sch-generate-section{border-radius:var(--radius-lg);border:1px solid var(--border-subtle);background:var(--card-bg);display:flex;flex-direction:column;gap:1rem;padding:1.25rem}.sch-generate-header{display:flex;flex-direction:column;gap:.25rem}.sch-generate-title{color:var(--text);font-size:.8125rem;font-weight:600}.sch-generate-desc{color:var(--text-muted);font-size:.75rem;line-height:1.4}.sch-generate-controls{display:flex;flex-direction:column;gap:.75rem}.sch-generate-periods{display:flex;gap:.375rem}.sch-generate-period{border-radius:var(--radius-md);border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;text-align:center;background:0 0;flex:1;padding:.4375rem .5rem;transition:all .15s;font-size:.75rem;font-weight:500}.sch-generate-period:hover{border-color:var(--brand-primary);color:var(--text)}.sch-generate-period.active{background:var(--brand-bg);color:var(--brand-text);border-color:var(--brand-primary)}.sch-generate-actions{display:flex;justify-content:space-between;align-items: center;gap:.75rem}.sch-generate-replace{display:flex;color:var(--text-muted);cursor:pointer;user-select:none;align-items: center;gap:.375rem;font-size:.75rem}.sch-generate-replace input[type=checkbox]{accent-color:var(--brand-primary);cursor:pointer;width:14px;height:14px;margin:0}.sch-generate-btn{display:inline-flex;border-radius:var(--radius-md);background:var(--brand-bg);color:var(--brand-text);cursor:pointer;white-space:nowrap;border:none;align-items: center;gap:.375rem;padding:.4375rem 1rem;transition:all .2s;font-size:.8125rem;font-weight:600}.sch-generate-btn:hover{opacity:.9;transform:scale(1.02)}.sch-generate-btn:active{transform:scale(.98)}.sch-generate-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.sch-rules-list-section{display:flex;flex-direction:column;gap:.75rem}.sch-rules-list-header{display:flex;justify-content:space-between;align-items: center}.sch-rules-list-title{color:var(--text);display:flex;align-items: center;gap:.5rem;font-size:.8125rem;font-weight:600}.sch-rules-count{display:inline-flex;background:var(--brand-bg);color:var(--brand-text);border-radius:999px;justify-content:center;align-items: center;min-width:1.25rem;height:1.25rem;padding:0 .375rem;font-size:.6875rem;font-weight:600}.sch-rules-add-btn{display:inline-flex;border-radius:var(--radius-md);border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;background:0 0;align-items: center;gap:.3rem;padding:.375rem .75rem;transition:all .15s;font-size:.75rem;font-weight:500}.sch-rules-add-btn:hover{border-color:var(--brand-primary);color:var(--text);background:var(--brand-hover)}.sch-rules-loading{display:flex;flex-direction:column;gap:.5rem}.sch-rules-skeleton{border-radius:var(--radius-md);background:var(--border-subtle);animation:tm-pulse 1.5s ease-in-out infinite;height:3.5rem}.sch-rules-empty{display:flex;text-align:center;flex-direction:column;justify-content:center;align-items: center;gap:.5rem;padding:2rem 1rem}.sch-rules-empty p{color:var(--text);margin:0;font-size:.875rem;font-weight:600}.sch-rules-empty span{color:var(--text-muted);max-width:320px;font-size:.75rem;line-height:1.5}.sch-rules-empty-cta{border-radius:var(--radius-md);background:var(--brand-bg);color:var(--brand-text);cursor:pointer;border:none;margin-top:.5rem;padding:.4375rem 1rem;transition:all .2s;font-size:.8125rem;font-weight:600}.sch-rules-empty-cta:hover{opacity:.9;transform:scale(1.02)}.sch-rules-list{display:flex;flex-direction:column;gap:.5rem}.sch-rule-card{border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--card-bg);display:flex;flex-direction:column;gap:.625rem;padding:.875rem 1rem;transition:border-color .15s}.sch-rule-card:hover{border-color:var(--brand-primary)}.sch-rule-card.inactive{opacity:.55}.sch-rule-card-main{display:flex;justify-content:space-between;align-items: flex-start;gap:.75rem}.sch-rule-card-left{display:flex;flex-direction:column;gap:.3rem;min-width:0}.sch-rule-employee{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-flex;align-items: center;gap:.375rem;font-size:.8125rem;font-weight:600}.sch-rule-emp-count{display:inline-flex;background:var(--brand-hover);color:var(--brand-primary);border-radius:999px;flex-shrink:0;justify-content:center;align-items: center;min-width:1.125rem;height:1.125rem;padding:0 .3rem;font-size:.625rem;font-weight:700}.sch-rule-template{display:flex;flex-wrap:wrap;align-items: center;gap:.375rem}.sch-rule-chip{display:inline-flex;background:var(--brand-hover);color:var(--brand-primary);border:1px solid var(--brand-border);border-radius:999px;align-items: center;padding:.1875rem .5rem;font-size:.6875rem;font-weight:500}.sch-rule-chip.custom{background:var(--state-info-bg);color:var(--state-info);border-color:var(--state-info-border)}.sch-rule-card-right{display:flex;flex-direction:column;flex-shrink:0;align-items: flex-end;gap:.25rem}.sch-rule-dates{color:var(--text-muted);white-space:nowrap;font-size:.6875rem}.sch-rule-inactive-badge{display:inline-flex;background:var(--state-warning-bg);color:var(--state-warning);border:1px solid var(--state-warning-border);border-radius:999px;align-items: center;padding:.125rem .4375rem;font-size:.625rem;font-weight:600}.sch-rule-card-actions{display:flex;border-top:1px solid var(--border-subtle);align-items: center;gap:.375rem;padding-top:.5rem}.sch-rule-action-btn{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;background:0 0;padding:.25rem .625rem;transition:all .15s;font-size:.6875rem;font-weight:500}.sch-rule-action-btn:hover{border-color:var(--brand-primary);color:var(--text);background:var(--brand-hover)}.sch-rule-action-btn.danger{color:var(--state-error)}.sch-rule-action-btn.danger:hover{border-color:var(--state-error);background:var(--state-error-bg);color:var(--state-error)}.sch-rules-form{display:flex;flex-direction:column;gap:1rem;padding:.5rem 1.5rem 1.5rem}.sch-rules-custom-row{display:flex;flex-wrap:wrap;gap:.75rem}.sch-rules-active-row{display:flex;align-items: center;gap:.5rem}.sch-rules-active-row .cal-modal-label{margin:0}:root.light .sch-chip-pending{background:oklch(.55 .15 220/.06);border-color:oklch(.55 .15 220/.15)}:root.light .sch-generate-section{background:oklch(.97 .005 220);border-color:oklch(.88 .008 220)}:root.light .sch-generate-period{border-color:oklch(.88 .008 220);color:oklch(.45 .01 220)}:root.light .sch-generate-period:hover{border-color:var(--brand-primary);color:oklch(.3 .01 220)}:root.light .sch-rule-card{background:oklch(.98 .003 220);border-color:oklch(.88 .008 220)}:root.light .sch-rule-card:hover{border-color:var(--brand-primary)}:root.light .sch-rule-card-actions{border-top-color:oklch(.88 .008 220)}:root.light .sch-rule-action-btn,:root.light .sch-rules-add-btn{border-color:oklch(.88 .008 220);color:oklch(.45 .01 220)}.sch-assign-mode-toggle{display:flex;background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-md);gap:.25rem;padding:.1875rem}.sch-assign-mode-btn{border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;text-align:center;white-space:nowrap;background:0 0;border:none;flex:1;padding:.4375rem .5rem;transition:all .15s;font-size:.75rem;font-weight:500}.sch-assign-mode-btn:hover{color:var(--text)}.sch-assign-mode-btn.active{background:var(--brand-bg);color:var(--brand-text);box-shadow:0 1px 3px #0000001f}.sch-assign-count{display:block;color:var(--text-muted);margin-top:.375rem;font-size:.75rem}.sch-assign-all-label{padding:.5rem 0}.sch-reassign-info{display:flex;justify-content:space-between;align-items: center;gap:.75rem}.sch-reassign-label{color:var(--text-muted);font-size:.75rem;font-weight:500}.sch-reassign-value{color:var(--text);font-size:.8125rem;font-weight:600}.sch-reassign-divider{background:var(--border-subtle);height:1px;margin:.25rem 0}.sch-reassign-hint{display:block;color:var(--text-muted);margin-top:.25rem;font-size:.6875rem;line-height:1.4}:root.light .sch-assign-mode-toggle{background:oklch(.97 .005 220);border-color:oklch(.88 .008 220)}:root.light .sch-assign-mode-btn{color:oklch(.45 .01 220)}:root.light .sch-assign-mode-btn:hover{color:oklch(.3 .01 220)}:root.light .sch-reassign-divider{background:oklch(.88 .008 220)}:root.light .sch-override-item{background:oklch(.97 .005 220);border-color:oklch(.88 .008 220)}:root.light .sg-pending-override{border-color:oklch(.55 .15 220/.3)!important}.sp-overlay{position:fixed;z-index:90;background:0 0;inset:0}.sp-popover{position:fixed;z-index:91;border-radius:var(--radius-lg);background:var(--popup-glass-bg);border:1px solid var(--popup-glass-border);box-shadow:var(--popup-glass-shadow);backdrop-filter:blur(var(--popup-glass-blur));-webkit-backdrop-filter:blur(var(--popup-glass-blur));display:flex;animation:dropdownIn .18s ease-out forwards;flex-direction:column;gap:.625rem;width:280px;max-width:280px;padding:.875rem}.sp-header{display:flex;justify-content:space-between;align-items: center;gap:.5rem}.sp-header-info{display:flex;flex-direction:column;gap:.1rem;min-width:0}.sp-header-name{color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.85rem;font-weight:600}.sp-header-date{color:var(--text-muted);font-size:.72rem}.sp-delete-btn{display:inline-flex;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items: center;width:1.75rem;height:1.75rem;transition:all .15s}.sp-delete-btn:hover{background:var(--state-error-bg,oklch(.6 .2 25/.1));color:var(--state-error)}.sp-times{display:flex;color:var(--text-muted);align-items: center;gap:.4rem}.sp-time-input{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--hover-bg-subtle);color:var(--text);font-variant-numeric:tabular-nums;outline:none;flex:1;min-width:0;padding:.375rem .5rem;transition:border-color .15s;font-family:inherit;font-size:.82rem;font-weight:600}.sp-time-input:focus{border-color:var(--brand-primary)}.sp-time-arrow{color:var(--text-muted);flex-shrink:0;font-size:.78rem}.sp-break-toggle{display:flex;border-radius:var(--radius-sm);border:1px dashed var(--border-subtle);color:var(--text-muted);cursor:pointer;background:0 0;align-items: center;gap:.35rem;width:100%;padding:.3rem .5rem;transition:all .15s;font-family:inherit;font-size:.75rem;font-weight:500}.sp-break-toggle:hover{background:var(--hover-bg-subtle);border-color:var(--text-muted)}.sp-break-toggle.active{border-style:solid;border-color:var(--brand-primary);color:var(--brand-primary);background:oklch(.55 .15 220/.05)}.sp-break-row{display:flex;align-items: center;gap:.4rem;padding-left:1.6rem}.sp-actions{display:flex;align-items: center;gap:.5rem}.sp-dayoff-wrapper{position:relative}.sp-dayoff-btn{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;padding:.375rem .65rem;transition:all .15s;font-family:inherit;font-size:.78rem;font-weight:500}.sp-dayoff-btn:hover{background:var(--hover-bg);color:var(--text)}.sp-dayoff-menu{position:absolute;border-radius:var(--radius-md);background:var(--popup-glass-bg);border:1px solid var(--popup-glass-border);box-shadow:var(--popup-glass-shadow);backdrop-filter:blur(var(--popup-glass-blur));-webkit-backdrop-filter:blur(var(--popup-glass-blur));z-index:92;animation:dropdownIn .18s ease-out forwards;min-width:150px;padding:.25rem;bottom:calc(100% + .375rem);left:0}.sp-dayoff-menu-item{display:flex;border-radius:var(--radius-sm);color:var(--text);cursor:pointer;background:0 0;border:none;align-items: center;gap:.4rem;width:100%;padding:.4rem .6rem;transition:background .15s;font-family:inherit;font-size:.78rem;font-weight:500}.sp-dayoff-menu-item:hover{background:var(--hover-bg)}.sp-save-btn{border-radius:var(--radius-sm);background:var(--brand-bg);color:var(--brand-text,#fff);cursor:pointer;box-shadow:var(--brand-shadow);border:none;flex:1;padding:.4rem .75rem;transition:all .15s;font-family:inherit;font-size:.78rem;font-weight:600}.sp-save-btn:hover{box-shadow:var(--brand-shadow),0 4px 10px oklch(.55 .15 220/.12);transform:translateY(-1px)}.sp-save-btn:active{transform:scale(.97)}.sp-save-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.sp-link{display:block;text-align:center;color:var(--text-muted);cursor:pointer;border:none;border-top:1px solid var(--border-subtle);background:0 0;margin-top:.125rem;padding:.5rem 0 .35rem;transition:color .15s;font-family:inherit;font-size:.72rem;font-weight:500}.sp-link:hover{color:var(--brand-primary)}.sp-confirm{color:var(--state-warning);border-radius:var(--radius-sm);background:var(--state-warning-bg);text-align:center;padding:.25rem .5rem;font-size:.72rem;font-weight:500}.rh-overlay{position:fixed;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:100;display:flex;animation:tm-fade-in .22s ease;background:#00000073;justify-content:flex-end;inset:0}.rh-panel{background:var(--popup-glass-bg);backdrop-filter:blur(24px)saturate(180%);-webkit-backdrop-filter:blur(24px)saturate(180%);border-left:1px solid var(--popup-glass-border);display:flex;animation:sd-slide-in .32s cubic-bezier(.16,1,.3,1);overflow:hidden;flex-direction:column;width:440px;max-width:100vw;height:100%;box-shadow:-16px 0 48px #0000004d,-2px 0 8px #0000001f,inset 1px 0 #ffffff0d}.rh-accent{background:linear-gradient(90deg,var(--brand-primary),oklch(.65 .18 240),var(--brand-primary));animation:sd-accent-shimmer 3s ease-in-out infinite;background-size:200% 100%;flex-shrink:0;height:3px}.rh-header{display:flex;flex-shrink:0;justify-content:space-between;align-items: center;padding:1.25rem 1.5rem .75rem}.rh-title{color:var(--text);letter-spacing:-.01em;margin:0;font-size:1.15rem;font-weight:700}.rh-close{display:inline-flex;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--hover-bg);color:var(--text-muted);cursor:pointer;flex-shrink:0;justify-content:center;align-items: center;width:2rem;height:2rem;transition:all .15s}.rh-close:hover{background:var(--hover-bg-subtle);color:var(--text);border-color:var(--card-border);transform:scale(1.05)}.rh-close:active{transform:scale(.95)}.rh-body{overflow-y:auto;display:flex;scrollbar-width:thin;scrollbar-color:#ffffff14 transparent;flex-direction:column;flex:1;gap:.75rem;padding:.75rem 1.5rem 1.5rem}.rh-body::-webkit-scrollbar{width:4px}.rh-body::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:999px}.rh-presets{display:flex;flex-wrap:wrap;gap:.5rem}.rh-preset-btn{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--hover-bg);color:var(--text-muted);cursor:pointer;padding:.35rem .75rem;transition:all .15s;font-family:inherit;font-size:.78rem;font-weight:600}.rh-preset-btn:hover{background:var(--brand-hover);color:var(--brand-primary);border-color:var(--brand-border)}.rh-week-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);padding-top:.5rem;font-size:.75rem;font-weight:700}.rh-week-rows{display:flex;flex-direction:column;gap:.25rem}.rh-day-row{display:flex;border-radius:var(--radius-md);flex-wrap:wrap;align-items: center;gap:.5rem;padding:.5rem .65rem;transition:background .15s}.rh-day-row:hover{background:var(--hover-bg)}.rh-day-disabled{opacity:.5}.rh-day-toggle{display:flex;cursor:pointer;align-items: center;gap:.45rem;min-width:5.5rem}.rh-day-toggle input[type=checkbox]{accent-color:var(--brand-primary);cursor:pointer;width:1rem;height:1rem}.rh-day-name{color:var(--text);font-size:.85rem;font-weight:600}.rh-day-disabled .rh-day-name{color:var(--text-muted)}.rh-day-off-label{color:var(--text-muted);font-size:.82rem}.rh-day-times{display:flex;flex:1;align-items: center;gap:.35rem}.rh-time-input{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--card-bg);color:var(--text);width:6.5rem;padding:.35rem .5rem;transition:border-color .15s;font-family:inherit;font-size:.82rem}.rh-time-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 2px var(--brand-hover)}.rh-time-sep{color:var(--text-muted);font-size:.82rem}.rh-break-btn{border-radius:var(--radius-xs,.25rem);color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;padding:.25rem .55rem;transition:all .15s;font-family:inherit;font-size:.75rem}.rh-break-btn:hover{background:var(--hover-bg);color:var(--text)}.rh-break-active{background:var(--brand-hover);color:var(--brand-primary);border-color:var(--brand-border)}.rh-break-row{display:flex;animation:rh-break-open .2s ease;align-items: center;gap:.35rem;width:100%;padding-left:6rem}@keyframes rh-break-open{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.rh-break-label{color:var(--text-muted);min-width:2.5rem;font-size:.75rem}.rh-cycle-toggle{display:flex;border-top:1px solid var(--border-subtle);align-items: center;gap:.75rem;padding:.75rem 0}.rh-cycle-label{color:var(--text);font-size:.82rem;font-weight:600}.rh-radio{display:flex;color:var(--text-muted);cursor:pointer;align-items: center;gap:.3rem;font-size:.82rem}.rh-radio input[type=radio]{accent-color:var(--brand-primary);cursor:pointer}.rh-summary{color:var(--brand-primary);text-align:center;padding:.5rem 0;font-size:1.1rem;font-weight:700}.rh-footer{border-top:1px solid var(--border-subtle);display:flex;background:var(--hover-bg-subtle);flex-shrink:0;justify-content:flex-end;align-items: center;gap:.5rem;padding:1rem 1.5rem}.rh-skeleton{pointer-events:none;opacity:.4}.rh-skel-check{background:var(--border-subtle);animation:rh-pulse 1.2s ease-in-out infinite;border-radius:.25rem;width:1rem;height:1rem}.rh-skel-bar{background:var(--border-subtle);animation:rh-pulse 1.2s ease-in-out infinite;border-radius:.25rem;flex:1;height:.75rem}.rh-skel-short{max-width:4rem}@keyframes rh-pulse{0%,to{opacity:.4}50%{opacity:.7}}@media (max-width:480px){.rh-panel{width:100vw}.rh-header{padding:1rem 1.25rem .75rem}.rh-body{padding:.5rem 1.25rem 1.25rem}.rh-footer{padding:.75rem 1.25rem}.rh-break-row{padding-left:1.5rem}}:root.light .rh-overlay{background:#00000040}:root.light .rh-panel{box-shadow:-16px 0 48px #0000001f,-2px 0 6px #0000000f}:root.light .rh-close{background:oklch(.95 .005 220);border-color:oklch(.88 .008 220)}:root.light .rh-close:hover{background:oklch(.92 .005 220)}:root.light .rh-footer{background:oklch(.97 .005 220)}.sd-expand-toggle{display:flex;border:1px dashed var(--border-subtle);border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;background:0 0;justify-content:space-between;align-items: center;width:100%;padding:.6rem .75rem;transition:all .2s;font-size:.8125rem}.sd-expand-toggle:hover{background:var(--hover-bg,#ffffff0a);color:var(--text);border-color:var(--brand-primary)}.sd-expand-arrow{transition:transform .2s;font-size:1rem}.sd-expand-arrow.open{transform:rotate(90deg)}.sd-expand-content{animation:sd-stagger-in .25s ease forwards}.ctx-overlay{position:fixed;z-index:200;background:0 0;inset:0}.ctx-menu{position:fixed;border-radius:var(--radius-md);background:var(--popup-glass-bg);border:1px solid var(--popup-glass-border);box-shadow:var(--popup-glass-shadow);z-index:201;animation:dropdownIn .18s ease-out forwards;min-width:180px;padding:.375rem}.ctx-item{display:flex;border-radius:var(--radius-sm);color:var(--text);cursor:pointer;background:0 0;border:none;align-items: center;gap:.5rem;width:100%;padding:.45rem .75rem;transition:background .15s;font-family:inherit;font-size:.8rem}.ctx-item:hover{background:var(--hover-bg)}.ctx-item-icon{text-align:center;flex-shrink:0;width:1.25rem;font-size:.9rem}.ctx-divider{border:none;border-top:1px solid var(--border-subtle);margin:.25rem .5rem}.ctx-item-danger{color:var(--state-error)}.ctx-item-danger:hover{background:var(--state-error-bg)}.wn-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.wn-today:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sg-shift-block:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sg-dayoff-block:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sg-mobile-day-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sg-mobile-card:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sg-mobile-month-day-header:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sd-close:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sd-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sd-dayoff-card:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sd-reason-chip:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sd-expand-toggle:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sp-save-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sp-delete-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sp-dayoff-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sp-break-toggle:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sp-dayoff-menu-item:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.rh-close:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.rh-preset-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.rh-break-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-tpl-panel-add:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-tpl-panel-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-tpl-day.selectable:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-tpl-cycle-option:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-tpl-day-break-toggle:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-tpl-add-day:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-tpl-copy-week:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-bulk-bar-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-bulk-bar-clear:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-bulk-tpl-item:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-bulk-dayoff-item:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-override-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-generate-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-generate-period:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-rules-add-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-rules-empty-cta:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-rule-action-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-assign-mode-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-confirm-group-header:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.ctx-item:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sd-input:focus-visible{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 2px var(--brand-hover)}.sd-textarea:focus-visible{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 2px var(--brand-hover)}.sp-time-input:focus-visible{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 2px var(--brand-hover)}.rh-time-input:focus-visible{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 2px var(--brand-hover)}.sch-tpl-day-input:focus-visible{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 2px var(--brand-hover)}.sch-tpl-day-select:focus-visible{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 2px var(--brand-hover)}@media (prefers-reduced-motion:reduce){.sg-employee-row,.sd-drawer,.sd-overlay,.sd-stagger,.sd-expand-content,.sg-emp-tooltip,.cb-tooltip,.sch-tpl-panel,.sch-view-dropdown,.sp-popover,.sp-dayoff-menu,.ctx-menu,.sch-bulk-bar,.sch-bulk-tpl-picker,.sch-bulk-dayoff-picker,.sg-mobile-month-day-content,.rh-break-row{animation-duration:.01ms!important;animation-iteration-count:1!important}.sg-today-num,.sd-accent{animation:none}*,*:before,*:after{transition-duration:.01ms!important}}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:.35}50%{opacity:.6}}@keyframes scaleIn{0%{transform:scale(0);opacity:0}60%{transform:scale(1.15);opacity:1}to{transform:scale(1);opacity:1}}@keyframes checkDraw{to{stroke-dashoffset:0}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes confettiBurst{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-60px)scale(.3)}}.booking-page{display:flex;overflow:hidden;background:var(--booking-bg,var(--bg));color:var(--booking-text,var(--text));--booking-accent:var(--brand-color,var(--brand-primary));--booking-accent-secondary:var(--booking-accent);--booking-accent-hover:var(--booking-accent);--booking-accent-glow:var(--booking-accent);--booking-accent-shadow:0 4px 14px var(--booking-accent);--booking-accent-text:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;height:100vh}@supports (color: color-mix(in lab, red, red)){.booking-page{--booking-accent-secondary:color-mix(in oklch,var(--booking-accent)12%,transparent)}}.booking-header{z-index:50;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:var(--glass-bg);border-bottom:1px solid var(--glass-border);box-shadow:var(--glass-shadow);flex-shrink:0;transition:box-shadow .3s,background .3s}@supports (color: color-mix(in lab, red, red)){.booking-header{background:color-mix(in oklch,var(--glass-bg)85%,transparent)}}.booking-header--gradient{background:var(--header-gradient);border-bottom-color:#0000;box-shadow:0 4px 24px #0000002e}.booking-header--gradient .booking-logo-text span,.booking-header--gradient .booking-logo{color:var(--brand-text)}.booking-header--gradient .booking-header-subtitle{color:#ffffffbf}.booking-header--gradient .booking-logo svg{color:#ffffffe6}.booking-header-inner{display:flex;justify-content:space-between;align-items: center;max-width:960px;min-height:56px;margin:0 auto;padding:.625rem 1.5rem}.booking-logo{display:flex;color:var(--text);letter-spacing:-.01em;align-items: center;gap:.625rem;min-height:36px;font-size:1.0625rem;font-weight:600}.booking-logo svg{color:var(--booking-accent)}.booking-logo-img{object-fit:contain;border-radius:var(--radius-sm);width:auto;max-height:36px}.booking-logo-text{display:flex;flex-direction:column;gap:.0625rem}.booking-header-subtitle{color:var(--text-muted);font-size:.6875rem;font-weight:400;line-height:1.2}.booking-progress-wrap{z-index:40;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:var(--booking-breadcrumb-bg);border-bottom:1px solid var(--booking-breadcrumb-border);flex-shrink:0;padding:.625rem 1.5rem}.booking-steps-nav{display:flex;justify-content:center;align-items: center;gap:.25rem;max-width:640px;margin:0 auto}.booking-step-item{display:flex;align-items: center;gap:.25rem}.booking-step-line{display:flex;color:var(--text-muted);opacity:.3;align-items: center;padding:0 .125rem;font-size:.65rem}.booking-step-line.done{color:var(--booking-accent);opacity:.6}.booking-step-dot{display:inline-flex;border-radius:var(--radius-pill);color:var(--text-muted);cursor:default;white-space:nowrap;letter-spacing:.01em;background:0 0;border:1px solid #0000;align-items: center;gap:.375rem;padding:.3125rem .75rem;transition:all .2s;font-size:.6875rem;font-weight:600;line-height:1.4}.booking-step-dot.current{background:var(--booking-accent);color:var(--booking-accent-text);border-color:var(--booking-accent);box-shadow:0 2px 8px var(--booking-accent-glow)}.booking-step-dot.done{background:var(--booking-accent-secondary);color:var(--booking-accent);border-color:var(--booking-accent);cursor:pointer}@supports (color: color-mix(in lab, red, red)){.booking-step-dot.done{border-color:color-mix(in oklch,var(--booking-accent)20%,transparent)}}.booking-step-dot.done:hover{background:var(--booking-accent);box-shadow:0 2px 8px var(--booking-accent-glow)}@supports (color: color-mix(in lab, red, red)){.booking-step-dot.done:hover{background:color-mix(in oklch,var(--booking-accent)18%,transparent)}}.booking-step-dot.done:focus-visible{outline:2px solid var(--booking-accent);outline-offset:2px}.booking-step-label{display:none}.booking-context-line{color:var(--text-muted);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:640px;margin-top:.375rem;margin-left:auto;margin-right:auto;font-size:.75rem;line-height:1.4}.booking-context-line--placeholder{opacity:.5}.booking-main{overflow-y:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex:1;width:100%;max-width:960px;min-height:0;margin:0 auto;padding:2rem 1.5rem}.booking-main::-webkit-scrollbar{display:none}.booking-toprow{position:sticky;z-index:5;display:flex;background:var(--booking-bg);justify-content:space-between;align-items: center;margin:-2rem -1.5rem 1.5rem;padding:1rem 1.5rem;top:-2rem}.booking-back{display:inline-flex;border-radius:var(--radius-pill);color:var(--text-muted);background:var(--booking-chip-bg);border:1px solid var(--booking-border);cursor:pointer;align-items: center;gap:.375rem;padding:.4rem .875rem;transition:all .2s;font-size:.8125rem;font-weight:500}.booking-back:hover{color:var(--text);border-color:var(--booking-accent);background:var(--booking-accent-hover);transform:translate(-2px)}.booking-back:focus-visible{outline:2px solid var(--booking-accent);outline-offset:2px}.booking-step-counter{color:var(--text-muted);letter-spacing:.02em;font-size:.75rem;font-weight:500}.booking-error{display:flex;border-radius:var(--radius-lg);background:var(--state-error-bg);border:1px solid var(--state-error-border);color:var(--state-error);animation:fadeIn .2s ease both;align-items: center;gap:.625rem;margin-bottom:1.5rem;padding:.75rem 1rem;font-size:.8125rem}.booking-step{animation:fadeInUp .3s ease both}.booking-step-title{color:var(--text);letter-spacing:-.025em;margin-bottom:.375rem;font-size:1.75rem;font-weight:700;line-height:1.2}.booking-step-subtitle{color:var(--text-muted);margin-bottom:1.5rem;font-size:.875rem;line-height:1.5}.booking-list{display:grid;grid-template-columns:1fr;gap:.875rem}@media (min-width:640px){.booking-list{grid-template-columns:repeat(2,1fr)}}.booking-list>*{animation:fadeInUp .25s ease both}.booking-list>:first-child{animation-delay:0s}.booking-list>:nth-child(2){animation-delay:50ms}.booking-list>:nth-child(3){animation-delay:.1s}.booking-list>:nth-child(4){animation-delay:.15s}.booking-list>:nth-child(5){animation-delay:.18s}.booking-list>:nth-child(6){animation-delay:.21s}.booking-list-row{position:relative;display:flex;background:var(--booking-card-bg);border:1px solid var(--booking-card-border);border-radius:var(--radius-xl,20px);overflow:hidden;cursor:pointer;text-align:left;color:inherit;box-shadow:var(--booking-card-shadow);flex-direction:column;width:100%;padding:0;transition:transform .25s,box-shadow .25s,border-color .2s}.booking-list-row:hover{box-shadow:var(--booking-card-hover-shadow);border-color:var(--booking-accent);transform:translateY(-3px)}.booking-list-row:active{transform:translateY(-1px)scale(.99)}.booking-list-row:focus-visible{outline:2px solid var(--booking-accent);outline-offset:3px}.booking-row-icon{display:flex;background:linear-gradient(135deg,var(--booking-accent)0%,var(--booking-accent)100%);color:var(--booking-accent-text);overflow:hidden;flex-shrink:0;justify-content:center;align-items: center;width:100%;height:140px}@supports (color: color-mix(in lab, red, red)){.booking-row-icon{background:linear-gradient(135deg,var(--booking-accent)0%,color-mix(in oklch,var(--booking-accent)65%,oklch(.2 .05 260))100%)}}.booking-row-thumb{object-fit:cover;width:100%;height:100%;transition:transform .3s}.booking-list-row:hover .booking-row-thumb{transform:scale(1.03)}.booking-row-body{display:flex;flex-direction:column;flex:1;gap:.25rem;min-width:0;padding:1rem 1.25rem}.booking-row-title{color:var(--text);letter-spacing:-.01em;font-size:1rem;font-weight:650;line-height:1.3}.booking-row-sub{color:var(--text-muted);display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;-webkit-box-orient:vertical;font-size:.8125rem;line-height:1.4}.booking-row-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.booking-row-meta{display:flex;color:var(--text-muted);font-variant-numeric:tabular-nums;flex-direction:column;flex-shrink:0;align-items: flex-end;gap:.125rem;padding:0 1.25rem 1rem;font-size:.75rem}.booking-row-price{color:var(--text);font-weight:600}.booking-row-chevron{position:absolute;color:var(--text-muted);opacity:.35;transition:opacity .2s,transform .2s;bottom:1rem;right:1.25rem}.booking-list-row:hover .booking-row-chevron{opacity:.7;transform:translate(3px)}.booking-badge-confirm{display:inline-flex;color:var(--state-success);background:var(--state-success-bg);border:1px solid var(--state-success-border);border-radius:var(--radius-pill);align-items: center;width:-moz-fit-content;width:fit-content;margin-top:.25rem;padding:.1875rem .625rem;font-size:.65rem;font-weight:600}.booking-badge-prereq{display:inline-flex;color:var(--state-warning);background:var(--state-warning-bg);border:1px solid var(--state-warning-border);border-radius:var(--radius-pill);align-items: center;gap:.25rem;width:-moz-fit-content;width:fit-content;margin-top:.25rem;padding:.1875rem .625rem;font-size:.65rem;font-weight:500}.booking-badge-package{display:inline-flex;color:var(--brand-primary);background:var(--brand-hover);border:1px solid var(--brand-border);border-radius:var(--radius-pill);align-items: center;gap:.25rem;width:-moz-fit-content;width:fit-content;margin-top:.25rem;padding:.1875rem .625rem;font-size:.65rem;font-weight:500}.booking-badge-seasonal{display:inline-flex;color:var(--state-info);background:var(--state-info-bg);border:1px solid var(--state-info-border);border-radius:var(--radius-pill);align-items: center;gap:.25rem;width:-moz-fit-content;width:fit-content;margin-top:.25rem;padding:.1875rem .625rem;font-size:.65rem;font-weight:500}.booking-category-filter{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;mask-image:linear-gradient(90deg,#0000,#000 .75rem calc(100% - .75rem),#0000);-webkit-mask-image:linear-gradient(90deg,#0000,#000 .75rem calc(100% - .75rem),#0000);gap:.5rem;margin-bottom:1.5rem;padding-bottom:.25rem}.booking-category-filter::-webkit-scrollbar{display:none}.booking-category-chip{scroll-snap-align:start;display:inline-flex;border-radius:var(--radius-pill);border:1px solid var(--booking-border);background:var(--booking-chip-bg);color:var(--text-muted);cursor:pointer;white-space:nowrap;flex-shrink:0;align-items: center;gap:.375rem;padding:.4375rem 1rem;transition:all .2s;font-size:.8125rem;font-weight:550}.booking-category-chip:hover{border-color:var(--booking-accent);color:var(--text);background:var(--booking-accent-hover)}.booking-category-chip.active{background:var(--booking-accent);color:var(--booking-accent-text);border-color:var(--booking-accent);box-shadow:0 2px 8px var(--booking-accent-glow)}.booking-category-chip:focus-visible{outline:2px solid var(--booking-accent);outline-offset:2px}.booking-category-count{opacity:.7;font-size:.6875rem}.booking-bundles-section{border-top:1px solid var(--booking-border);margin-top:2rem;padding-top:2rem}.booking-bundles-title{display:flex;color:var(--text);letter-spacing:-.015em;align-items: center;gap:.5rem;margin:0 0 1rem;font-size:1.125rem;font-weight:700}.booking-bundles-grid{display:grid;grid-template-columns:1fr;gap:.875rem}.booking-bundle-card{position:relative;border-radius:var(--radius-xl,20px);border:1px solid var(--booking-card-border);background:var(--booking-card-bg);box-shadow:var(--booking-card-shadow);cursor:pointer;text-align:left;outline:none;width:100%;padding:1.25rem 1.5rem;transition:transform .25s,box-shadow .25s,border-color .2s;font-family:inherit}.booking-bundle-card:hover{border-color:var(--booking-accent);box-shadow:var(--booking-card-hover-shadow);transform:translateY(-3px)}.booking-bundle-card:active{transform:translateY(-1px)scale(.99)}.booking-bundle-card:focus-visible{outline:2px solid var(--booking-accent);outline-offset:3px}.booking-bundle-header{display:flex;justify-content:space-between;align-items: center;gap:.75rem}.booking-bundle-name{color:var(--text);letter-spacing:-.01em;font-size:1rem;font-weight:650}.booking-bundle-savings{color:var(--state-success);background:var(--state-success-bg);border:1px solid var(--state-success-border);border-radius:var(--radius-pill);white-space:nowrap;padding:.1875rem .625rem;font-size:.6875rem;font-weight:700}.booking-bundle-desc{color:var(--text-muted);margin:.375rem 0 0;font-size:.8125rem;line-height:1.5}.booking-bundle-services{display:flex;flex-wrap:wrap;gap:.375rem;margin-top:.75rem}.booking-bundle-chip{color:var(--text-muted);background:var(--booking-chip-bg);border:1px solid var(--booking-border);border-radius:var(--radius-pill);padding:.1875rem .625rem;font-size:.6875rem;font-weight:550}.booking-bundle-footer{display:flex;justify-content:space-between;align-items: center;margin-top:.75rem}.booking-bundle-duration{display:flex;color:var(--text-muted);align-items: center;gap:.3rem;font-size:.8125rem}.booking-bundle-price{color:var(--text);font-size:1.0625rem;font-weight:700}.booking-bundle-cta{display:inline-flex;color:var(--booking-accent);letter-spacing:.01em;align-items: center;gap:.25rem;margin:.75rem 0 0;transition:gap .2s;font-size:.75rem;font-weight:600}.booking-bundle-card:hover .booking-bundle-cta{gap:.5rem}@media (min-width:640px){.booking-bundles-grid{grid-template-columns:repeat(2,1fr)}}.booking-service-grid{display:grid;grid-template-columns:1fr;gap:.875rem}@media (min-width:640px){.booking-service-grid{grid-template-columns:repeat(2,1fr)}}.booking-service-grid>*{animation:fadeInUp .25s ease both}.booking-service-grid>:first-child{animation-delay:0s}.booking-service-grid>:nth-child(2){animation-delay:50ms}.booking-service-grid>:nth-child(3){animation-delay:.1s}.booking-service-grid>:nth-child(4){animation-delay:.14s}.booking-service-grid>:nth-child(5){animation-delay:.18s}.booking-service-grid>:nth-child(6){animation-delay:.21s}.booking-svc-card{display:flex;background:var(--booking-card-bg);border:1px solid var(--booking-card-border);border-radius:var(--radius-xl,20px);overflow:hidden;cursor:pointer;text-align:left;color:inherit;box-shadow:var(--booking-card-shadow);flex-direction:column;width:100%;padding:0;transition:transform .25s,box-shadow .25s,border-color .2s}.booking-svc-card:hover{box-shadow:var(--booking-card-hover-shadow);border-color:var(--booking-accent);transform:translateY(-3px)}.booking-svc-card:active{transform:translateY(-1px)scale(.99)}.booking-svc-card:focus-visible{outline:2px solid var(--booking-accent);outline-offset:3px}.booking-svc-card-visual{position:relative;background-position:50%;background-size:cover;flex-shrink:0;width:100%;height:120px}.booking-svc-card-visual:after{content:"";position:absolute;background:var(--booking-hero-overlay);pointer-events:none;inset:0}.booking-svc-card-body{display:flex;flex-direction:column;flex:1;gap:.3125rem;min-width:0;padding:1rem 1.25rem 1.125rem}.booking-svc-card-name{color:var(--text);letter-spacing:-.01em;font-size:1rem;font-weight:650;line-height:1.3}.booking-svc-card-desc{color:var(--text-muted);display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;-webkit-box-orient:vertical;font-size:.8125rem;line-height:1.5}.booking-svc-card-footer{display:flex;align-items: center;gap:.75rem;margin-top:auto;padding-top:.5rem}.booking-svc-card-duration{display:inline-flex;color:var(--text-muted);align-items: center;gap:.3rem;font-size:.8125rem;font-weight:450}.booking-svc-card-duration svg{color:var(--text-muted);opacity:.6}.booking-svc-card-price{color:var(--booking-accent);letter-spacing:-.01em;margin-left:auto;font-size:.9375rem;font-weight:700}.booking-chips{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.875rem}.booking-chips>*{animation:fadeInUp .25s ease both}.booking-chips>:first-child{animation-delay:0s}.booking-chips>:nth-child(2){animation-delay:50ms}.booking-chips>:nth-child(3){animation-delay:.1s}.booking-chips>:nth-child(4){animation-delay:.14s}.booking-chips>:nth-child(5){animation-delay:.17s}.booking-chips>:nth-child(6){animation-delay:.2s}.booking-chip{display:flex;border-radius:var(--radius-xl,20px);background:var(--booking-card-bg);border:1px solid var(--booking-card-border);box-shadow:var(--booking-card-shadow);cursor:pointer;color:inherit;text-align:center;flex-direction:column;align-items: center;gap:.75rem;padding:1.5rem 1rem 1.25rem;transition:transform .25s,box-shadow .25s,border-color .2s}.booking-chip:hover{border-color:var(--booking-accent);box-shadow:var(--booking-card-hover-shadow);transform:translateY(-3px)}.booking-chip:active{transform:translateY(-1px)scale(.99)}.booking-chip:focus-visible{outline:2px solid var(--booking-accent);outline-offset:3px}.booking-chip--any{border-style:dashed}.booking-chip-avatar{object-fit:cover;border:3px solid #0000;border-radius:50%;flex-shrink:0;width:72px;height:72px;transition:border-color .2s,box-shadow .2s}.booking-chip:hover .booking-chip-avatar{border-color:var(--booking-accent);box-shadow:0 0 0 4px var(--booking-accent-secondary)}.booking-chip-avatar--initials{background:linear-gradient(135deg,var(--booking-accent),var(--booking-accent));color:var(--brand-text);display:flex;letter-spacing:.02em;justify-content:center;align-items: center;font-size:1.125rem;font-weight:700}@supports (color: color-mix(in lab, red, red)){.booking-chip-avatar--initials{background:linear-gradient(135deg,var(--booking-accent),color-mix(in oklch,var(--booking-accent)65%,oklch(.3 .1 280)))}}.booking-chip-avatar--icon{background:var(--booking-accent-secondary);display:flex;color:var(--booking-accent);justify-content:center;align-items: center;width:72px;height:72px}.booking-chip-info{display:flex;flex-direction:column;gap:.125rem;min-width:0}.booking-chip-name{color:var(--text);letter-spacing:-.01em;font-size:.9375rem;font-weight:650}.booking-chip-title{color:var(--text-muted);font-size:.75rem}.booking-empty{text-align:center;color:var(--text-muted);padding:3rem 1rem;font-size:.9375rem;line-height:1.5}.booking-daystrip-wrap{margin-bottom:1.75rem}.booking-daystrip{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;mask-image:linear-gradient(90deg,#0000,#000 .75rem calc(100% - .75rem),#0000);-webkit-mask-image:linear-gradient(90deg,#0000,#000 .75rem calc(100% - .75rem),#0000);gap:.5rem;padding-bottom:.25rem}.booking-daystrip::-webkit-scrollbar{display:none}.booking-day{scroll-snap-align:start;display:flex;border-radius:var(--radius-lg);background:var(--booking-chip-bg);border:1px solid var(--booking-border);cursor:pointer;color:inherit;flex-direction:column;flex-shrink:0;align-items: center;gap:.3rem;width:56px;padding:.625rem 0;transition:all .2s}.booking-day:hover{border-color:var(--booking-accent);background:var(--booking-accent-hover);transform:translateY(-2px)}.booking-day:focus-visible{outline:2px solid var(--booking-accent);outline-offset:2px}.booking-day.selected{border-color:var(--booking-accent);background:var(--booking-accent);color:var(--booking-accent-text);box-shadow:0 4px 12px var(--booking-accent-glow)}.booking-day.today:not(.selected){border-color:var(--booking-accent)}.booking-day-name{text-transform:uppercase;letter-spacing:.06em;opacity:.65;font-size:.625rem;font-weight:600}.booking-day.selected .booking-day-name{opacity:.9}.booking-day-num{font-size:1.0625rem;font-weight:700;line-height:1}.booking-more-dates{display:inline-flex;color:var(--booking-accent);cursor:pointer;background:0 0;border:none;margin-top:.625rem;padding:0;transition:opacity .2s;font-size:.8125rem;font-weight:550}.booking-more-dates:hover{opacity:.75;text-decoration:underline}.booking-full-picker{animation:fadeIn .25s ease both;max-width:300px;margin-bottom:1.5rem}.booking-tz-notice{color:var(--booking-accent);margin-bottom:.75rem;font-size:.8125rem;font-weight:550}.booking-slot-groups{display:flex;flex-direction:column;gap:1.5rem}.booking-slot-group-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;display:flex;align-items: center;gap:.5rem;margin:0 0 .625rem;font-size:.75rem;font-weight:650}.booking-slot-group-title:after{content:"";background:var(--booking-border);flex:1;height:1px}.booking-slot-group-icon{font-size:.9rem}.booking-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:.5rem}.booking-slot{border-radius:var(--radius-md);background:var(--booking-chip-bg);border:1px solid var(--booking-border);color:var(--text);font-variant-numeric:tabular-nums;text-align:center;cursor:pointer;white-space:nowrap;padding:.5625rem .5rem;transition:all .2s;font-size:.8125rem;font-weight:550}.booking-slot:hover{border-color:var(--booking-accent);background:var(--booking-accent-hover);transform:translateY(-1px)}.booking-slot:active{transform:scale(.97)}.booking-slot:focus-visible{outline:2px solid var(--booking-accent);outline-offset:2px}.booking-slot.selected{border-color:var(--booking-accent);background:var(--booking-accent);color:var(--booking-accent-text);box-shadow:0 4px 12px var(--booking-accent-glow);font-weight:650}.booking-summary-banner{background:var(--booking-summary-bg);border:1px solid var(--booking-summary-border);border-radius:var(--radius-xl,20px);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);margin-bottom:1.5rem;padding:1.125rem 1.375rem}.booking-summary-line{color:var(--text);font-size:.875rem;line-height:1.5}.booking-summary-line strong{font-weight:650}.booking-summary-line--muted{color:var(--text-muted);margin-top:.125rem;font-size:.8125rem}.booking-deposit-notice{display:flex;border-radius:var(--radius-lg);background:var(--state-info-bg);border:1px solid var(--state-info-border);color:var(--state-info);align-items: center;gap:.625rem;margin-bottom:1.5rem;padding:.75rem 1rem;font-size:.8125rem;line-height:1.45}.booking-deposit-notice svg{flex-shrink:0}.booking-deposit-notice strong{font-weight:650}.booking-receipt-deposit{color:var(--state-info);font-weight:550}.booking-form{display:flex;flex-direction:column;gap:1rem}.booking-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.booking-field{display:flex;flex-direction:column;gap:.375rem}.booking-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:650}.booking-input{border-radius:var(--radius-lg);background:var(--input-bg);border:1px solid var(--input-border);color:var(--text);outline:none;padding:.75rem .875rem;transition:border-color .2s,box-shadow .2s;font-size:.9375rem}.booking-input:focus{border-color:var(--booking-accent);box-shadow:0 0 0 3px var(--booking-accent-secondary)}.booking-input::placeholder{color:var(--placeholder-color)}.booking-textarea{resize:vertical;min-height:5rem;font-family:inherit;line-height:1.5}.booking-submit{border-radius:var(--radius-lg);background:var(--booking-accent);color:var(--booking-accent-text);cursor:pointer;box-shadow:var(--booking-accent-shadow);letter-spacing:-.01em;border:none;margin-top:.5rem;padding:.875rem 1.75rem;transition:all .25s;font-size:.9375rem;font-weight:650}.booking-submit:hover:not(:disabled){box-shadow:0 8px 24px var(--booking-accent-glow);filter:brightness(1.06);transform:translateY(-2px)}.booking-submit:active:not(:disabled){transform:translateY(0)scale(.98)}.booking-submit:focus-visible{outline:2px solid var(--booking-accent);outline-offset:3px}.booking-submit:disabled{opacity:.55;cursor:not-allowed}.booking-submit--secondary{color:var(--booking-accent);border:1.5px solid var(--booking-accent);box-shadow:none;background:0 0}.booking-submit--secondary:hover:not(:disabled){background:var(--booking-accent-hover);box-shadow:none;filter:none;transform:translateY(-1px)}.booking-confirm{text-align:center;max-width:480px;margin:0 auto}.booking-confirm-badge{margin-bottom:1.5rem}.booking-confirm-icon{background:var(--state-success-bg);border:2.5px solid var(--state-success-border);display:flex;color:var(--state-success);animation:scaleIn .5s cubic-bezier(.34,1.56,.64,1)both;border-radius:50%;justify-content:center;align-items: center;width:80px;height:80px;margin:0 auto}.booking-confirm-icon svg{stroke-dasharray:40;stroke-dashoffset:40;animation:checkDraw .4s ease .3s forwards}.booking-confirm-title{color:var(--text);letter-spacing:-.025em;margin-bottom:.5rem;font-size:1.75rem;font-weight:700}.booking-confirm-sub{color:var(--text-muted);max-width:380px;margin:0 auto 1.5rem;font-size:.9375rem;line-height:1.6}.booking-confirm-message{border-radius:var(--radius-lg);background:var(--booking-accent-secondary);color:var(--text);margin-bottom:1.5rem;padding:.875rem 1rem;font-size:.875rem;line-height:1.5}.booking-receipt{text-align:left;background:var(--booking-card-bg);border:1px solid var(--booking-card-border);border-radius:var(--radius-xl,20px);overflow:hidden;box-shadow:var(--booking-card-shadow);margin-bottom:1.25rem}.booking-receipt-header{display:flex;background:var(--booking-accent-secondary);border-bottom:1px solid var(--booking-border);justify-content:space-between;align-items: center;padding:.875rem 1.25rem}.booking-receipt-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:.6875rem;font-weight:700}.booking-receipt-status{text-transform:capitalize;border-radius:var(--radius-pill);padding:.1875rem .625rem;font-size:.6875rem;font-weight:700}.booking-status--confirmed{background:var(--state-success-bg);color:var(--state-success);border:1px solid var(--state-success-border)}.booking-status--scheduled{background:var(--state-warning-bg);color:var(--state-warning);border:1px solid var(--state-warning-border)}.booking-receipt-body{padding:.25rem 0}.booking-receipt-row{display:flex;justify-content:space-between;align-items: center;padding:.5625rem 1.25rem;font-size:.8125rem}.booking-receipt-row>span:first-child{color:var(--text-muted);font-weight:450}.booking-receipt-row>span:last-child{color:var(--text);text-align:right;font-weight:600}.booking-receipt-total{border-top:1px solid var(--booking-border);margin-top:.25rem;padding-top:.75rem;font-size:.9375rem}.booking-receipt-total>span:last-child{color:var(--booking-accent);font-size:1rem;font-weight:700}.booking-terms{color:var(--text-muted);margin-bottom:.75rem;font-size:.8125rem}.booking-terms a{color:var(--booking-accent);text-decoration:none;font-weight:550}.booking-terms a:hover{text-decoration:underline}.booking-confirm .booking-submit{width:100%;margin-top:.375rem}.booking-confirm .booking-submit+.booking-submit{margin-top:.625rem}.booking-resource-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.875rem}.booking-resource-card{display:flex;border-radius:var(--radius-xl,20px);border:1px solid var(--booking-card-border);background:var(--booking-card-bg);box-shadow:var(--booking-card-shadow);text-align:left;cursor:pointer;align-items: flex-start;gap:.875rem;padding:1.125rem;transition:all .25s}.booking-resource-card:hover:not(:disabled){border-color:var(--booking-accent);box-shadow:var(--booking-card-hover-shadow);transform:translateY(-2px)}.booking-resource-card.selected{border-color:var(--booking-accent);box-shadow:0 0 0 3px var(--booking-accent-secondary),var(--booking-card-shadow);background:var(--booking-accent)}@supports (color: color-mix(in lab, red, red)){.booking-resource-card.selected{background:color-mix(in oklch,var(--booking-accent)6%,var(--booking-card-bg))}}.booking-resource-card.unavailable{opacity:.4;cursor:not-allowed}.booking-resource-card-icon{display:flex;border-radius:var(--radius-lg);background:var(--booking-chip-bg);color:var(--text-muted);flex-shrink:0;justify-content:center;align-items: center;width:52px;height:52px}.booking-resource-card-img{border-radius:var(--radius-lg);object-fit:cover;flex-shrink:0;width:52px;height:52px}.booking-resource-card-body{display:flex;flex-direction:column;gap:.25rem;min-width:0}.booking-resource-card-name{color:var(--text);font-size:.9375rem;font-weight:650}.booking-resource-card-desc{color:var(--text-muted);display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;-webkit-box-orient:vertical;font-size:.75rem}.booking-resource-tags{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.125rem}.booking-resource-tag{border-radius:var(--radius-pill);background:var(--booking-chip-bg);color:var(--text-muted);border:1px solid var(--booking-border);text-transform:capitalize;padding:.1875rem .5rem;font-size:.625rem;font-weight:550}.booking-resource-card-footer{display:flex;align-items: center;gap:.5rem;margin-top:.25rem}.booking-resource-price{color:var(--state-success);font-size:.75rem;font-weight:600}.booking-resource-price--included{color:var(--text-muted);font-weight:500}.booking-resource-unavail{color:var(--state-error);font-size:.6875rem;font-weight:600}.booking-addon-subtitle{color:var(--text-muted);margin-bottom:1.25rem;font-size:.875rem;line-height:1.5}.booking-addon-grid{display:flex;flex-direction:column;gap:.75rem}.booking-addon-card{display:flex;border-radius:var(--radius-xl,20px);border:1.5px solid var(--booking-card-border);background:var(--booking-card-bg);box-shadow:var(--booking-card-shadow);cursor:pointer;text-align:left;align-items: flex-start;gap:.875rem;width:100%;padding:1rem 1.125rem;transition:transform .2s,border-color .2s,background .2s,box-shadow .2s}.booking-addon-card:hover{border-color:var(--brand-primary);box-shadow:var(--booking-card-hover-shadow);transform:translateY(-2px)}@supports (color: color-mix(in lab, red, red)){.booking-addon-card:hover{border-color:color-mix(in oklch,var(--brand-primary)40%,var(--booking-card-border))}}.booking-addon-card.selected{border-color:var(--brand-primary);background:var(--brand-primary);box-shadow:0 0 0 3px var(--brand-primary)}@supports (color: color-mix(in lab, red, red)){.booking-addon-card.selected{background:color-mix(in oklch,var(--brand-primary)6%,var(--booking-card-bg))}}.booking-addon-card-check{color:var(--text-muted);flex-shrink:0;margin-top:.125rem;transition:color .2s}.booking-addon-card.selected .booking-addon-card-check{color:var(--brand-primary)}.booking-addon-card-body{display:flex;flex-direction:column;flex:1;gap:.25rem;min-width:0}.booking-addon-card-name{color:var(--text);font-size:.9375rem;font-weight:650}.booking-addon-card-desc{color:var(--text-muted);font-size:.75rem;line-height:1.4}.booking-addon-card-meta{display:flex;align-items: center;gap:.625rem;margin-top:.25rem}.booking-addon-card-price{color:var(--brand-primary);font-size:.75rem;font-weight:600}.booking-addon-card-dur{color:var(--text-muted);font-size:.6875rem}.booking-addon-total{border-radius:var(--radius-xl,20px);border:1px solid var(--booking-card-border);background:var(--booking-card-bg);box-shadow:var(--booking-card-shadow);display:flex;flex-direction:column;gap:.375rem;margin-top:1.25rem;padding:1rem 1.25rem}.booking-addon-total-row{display:flex;color:var(--text);justify-content:space-between;align-items: center;font-size:.875rem}.booking-addon-total-row--addon{color:var(--text-muted);font-size:.8125rem}.booking-addon-total-row--sum{border-top:1px solid var(--booking-border);margin-top:.375rem;padding-top:.625rem;font-size:.9375rem;font-weight:700}.booking-summary-line--addons{color:var(--brand-primary);font-size:.75rem;font-weight:500}.booking-notice{color:var(--state-info);display:flex;border-radius:var(--radius-lg);background:var(--state-info-bg);border:1px solid var(--state-info-border);align-items: center;gap:.625rem;margin-top:1rem;padding:.625rem .875rem;font-size:.8125rem;line-height:1.5}.booking-notice:before{content:"i";display:inline-flex;background:var(--state-info);color:var(--bg);border-radius:50%;flex-shrink:0;justify-content:center;align-items: center;width:20px;height:20px;font-size:.65rem;font-style:italic;font-weight:700}.booking-skeleton{padding:1rem 0}.booking-skeleton-list{display:grid;grid-template-columns:1fr;gap:.875rem}@media (min-width:640px){.booking-skeleton-list{grid-template-columns:repeat(2,1fr)}}.booking-skeleton-row-item{display:flex;border-radius:var(--radius-xl,20px);overflow:hidden;background:var(--booking-card-bg);border:1px solid var(--booking-card-border);flex-direction:column}.booking-skeleton-icon{background:var(--booking-border);animation:pulse 1.5s ease-in-out infinite;flex-shrink:0;width:100%;height:120px}.booking-skeleton-lines{display:flex;flex-direction:column;gap:.5rem;padding:1rem 1.25rem}.booking-skeleton-chips{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.875rem}.booking-skeleton-chip{border-radius:var(--radius-xl,20px);background:var(--booking-card-bg);border:1px solid var(--booking-card-border);animation:pulse 1.5s ease-in-out infinite;height:140px}.booking-skeleton-slots{display:flex;flex-direction:column;gap:.75rem}.booking-skeleton-daystrip{border-radius:var(--radius-lg);background:var(--booking-border);animation:pulse 1.5s ease-in-out infinite;height:60px}.booking-skeleton-slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:.5rem}.booking-skeleton-slot{border-radius:var(--radius-md);background:var(--booking-border);animation:pulse 1.5s ease-in-out infinite;height:40px}.booking-skeleton-text{background:var(--booking-border);animation:pulse 1.5s ease-in-out infinite;border-radius:8px;height:14px}.booking-skeleton-form{display:flex;flex-direction:column;gap:.875rem}.booking-skeleton-banner{border-radius:var(--radius-xl,20px);background:var(--booking-border);animation:pulse 1.5s ease-in-out infinite;height:60px}.booking-contact{background:var(--booking-card-bg);border:1px solid var(--booking-card-border);border-radius:var(--radius-xl,20px);box-shadow:var(--booking-card-shadow);max-width:960px;margin:2rem auto 0;padding:1.25rem 1.5rem}.booking-contact-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;display:flex;align-items: center;gap:.625rem;margin-bottom:.75rem;font-size:.6875rem;font-weight:700}.booking-contact-title:after{content:"";background:var(--booking-border);flex:1;height:1px}.booking-contact-list{display:flex;flex-direction:column;gap:.375rem}.booking-contact-item{display:flex;color:var(--text);align-items: center;gap:.5rem;padding:.25rem 0;font-size:.8125rem}.booking-contact-item svg{color:var(--booking-accent);opacity:.6;flex-shrink:0}.booking-contact-item a{color:var(--text);text-decoration:none;transition:color .15s}.booking-contact-item a:hover{color:var(--booking-accent)}.booking-footer{text-align:center;color:var(--text-muted);flex-shrink:0;padding:2rem 1.5rem 1.5rem;font-size:.75rem}.booking-footer strong{color:var(--booking-accent);font-weight:650}@media (max-width:640px){.booking-header-inner{padding:.5rem 1rem}.booking-main{padding:1.25rem 1rem}.booking-toprow{margin:-1.25rem -1rem 1.25rem;padding:.75rem 1rem;top:-1.25rem}.booking-progress-wrap{padding:.5rem 1rem;top:56px}.booking-step-title{font-size:1.375rem}.booking-form-row{grid-template-columns:1fr}.booking-chips{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.625rem}.booking-chip{padding:1rem .75rem}.booking-chip-avatar,.booking-chip-avatar--icon{width:56px;height:56px}.booking-chip-avatar--initials{font-size:.9rem}.booking-slots{grid-template-columns:repeat(auto-fill,minmax(76px,1fr))}.booking-day{width:50px}.booking-day-num{font-size:.9375rem}.booking-day-name{font-size:.575rem}.booking-step-dot{padding:.25rem .5rem;font-size:.625rem}.booking-contact{margin:1rem auto 0;padding:.875rem 1rem}}@media (max-width:480px){.booking-header-inner{padding:.5rem .75rem}.booking-main{padding:1rem .75rem}.booking-toprow{margin:-1rem -.75rem 1rem;padding:.75rem;top:-1rem}.booking-progress-wrap{padding:.5rem .75rem}.booking-step-title{font-size:1.25rem}.booking-chips{grid-template-columns:repeat(2,1fr)}.booking-chip{padding:.875rem .625rem}.booking-chip-avatar,.booking-chip-avatar--icon{width:48px;height:48px}.booking-chip-avatar--initials{font-size:.8rem}.booking-chip-name{font-size:.8125rem}.booking-day{width:44px;padding:.5rem 0}.booking-day-num{font-size:.875rem}.booking-slots{grid-template-columns:repeat(auto-fill,minmax(70px,1fr));gap:.375rem}.booking-slot{padding:.4375rem .3rem;font-size:.75rem}.booking-receipt{margin-bottom:.875rem}.booking-contact{margin:.875rem auto 0;padding:.75rem}.booking-steps-nav{gap:.125rem}.booking-step-dot{padding:.25rem .4375rem;font-size:.6rem}}@media (prefers-reduced-motion:reduce){.booking-step,.booking-list>*,.booking-service-grid>*,.booking-chips>*,.booking-confirm-icon,.booking-confirm-icon svg{animation:none!important}.booking-svc-card,.booking-slot,.booking-day,.booking-chip,.booking-submit,.booking-back,.booking-list-row{transition:none!important}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes landingPulse{0%,to{opacity:.4}50%{opacity:.75}}@keyframes heroTextReveal{0%{opacity:0;transform:translateY(30px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes ctaGlow{}.landing-page{background:var(--bg);color:var(--text);overflow-x:hidden;--booking-accent:var(--brand-color,var(--brand-primary));--booking-accent-secondary:var(--booking-accent);--booking-accent-glow:var(--booking-accent);--landing-accent-text:#fff;--section-pad-y:5rem;--section-pad-x:1.5rem;min-height:100vh}@supports (color: color-mix(in lab, red, red)){.landing-page{--booking-accent-secondary:color-mix(in oklch,var(--booking-accent)12%,transparent)}}.landing-hero{position:relative;display:flex;text-align:center;overflow:hidden;background-color:var(--bg);background-position:50%;background-size:cover;justify-content:center;align-items: center;min-height:100dvh}.landing-hero-overlay{position:absolute;z-index:1;background:linear-gradient(#00000026 0%,#0000008c 100%);inset:0}.landing-hero-content{position:relative;z-index:2;display:flex;padding:2rem var(--section-pad-x);animation:heroTextReveal .8s ease-out both;flex-direction:column;align-items: center;gap:1.25rem;max-width:740px}.landing-hero-logo{object-fit:contain;border-radius:var(--radius-lg);filter:drop-shadow(0 4px 12px #0000004d);width:auto;max-height:80px}.landing-hero h1{color:#fff;letter-spacing:-.02em;text-shadow:0 2px 16px #0006;margin:0;font-size:clamp(2rem,5vw,3.25rem);font-weight:800;line-height:1.15}.landing-hero-tagline{color:#ffffffe0;text-shadow:0 1px 8px #0000004d;max-width:600px;font-size:clamp(1rem,2.5vw,1.25rem);font-weight:400;line-height:1.65}.landing-theme-toggle{position:absolute;z-index:3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#ffffff1f;border:1px solid #ffffff26;border-radius:50%;padding:.375rem;transition:background .2s;top:1.25rem;right:1.25rem}.landing-theme-toggle:hover{background:#fff3}.landing-cta{display:inline-flex;border-radius:var(--radius-pill);letter-spacing:.01em;cursor:pointer;background:var(--booking-accent);color:var(--landing-accent-text);box-shadow:0 4px 20px var(--booking-accent-glow);animation:ctaGlow 3s ease-in-out infinite;border:none;align-items: center;gap:.5rem;padding:1rem 2.5rem;transition:transform .2s,box-shadow .25s,opacity .2s;font-size:1rem;font-weight:700}.landing-cta:hover{box-shadow:0 8px 28px var(--booking-accent);transform:translateY(-2px)scale(1.02)}@supports (color: color-mix(in lab, red, red)){.landing-cta:hover{box-shadow:0 8px 28px color-mix(in oklch,var(--booking-accent)45%,transparent)}}.landing-cta:active{transform:translateY(0)scale(.98)}.landing-cta:focus-visible{outline:2px solid var(--booking-accent);outline-offset:3px}.landing-section{padding:var(--section-pad-y)var(--section-pad-x);max-width:1100px;margin:0 auto}.landing-reveal{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(24px)}.landing-reveal.visible{opacity:1;transform:translateY(0)}.landing-reveal.visible .landing-service-card,.landing-reveal.visible .landing-location-card,.landing-reveal.visible .landing-team-member,.landing-reveal.visible .landing-gallery-grid img{animation:fadeInUp .45s ease both}.landing-reveal.visible .landing-service-card:first-child,.landing-reveal.visible .landing-location-card:first-child,.landing-reveal.visible .landing-team-member:first-child,.landing-reveal.visible .landing-gallery-grid img:first-child{animation-delay:0s}.landing-reveal.visible .landing-service-card:nth-child(2),.landing-reveal.visible .landing-location-card:nth-child(2),.landing-reveal.visible .landing-team-member:nth-child(2),.landing-reveal.visible .landing-gallery-grid img:nth-child(2){animation-delay:60ms}.landing-reveal.visible .landing-service-card:nth-child(3),.landing-reveal.visible .landing-location-card:nth-child(3),.landing-reveal.visible .landing-team-member:nth-child(3),.landing-reveal.visible .landing-gallery-grid img:nth-child(3){animation-delay:.12s}.landing-reveal.visible .landing-service-card:nth-child(4),.landing-reveal.visible .landing-location-card:nth-child(4),.landing-reveal.visible .landing-team-member:nth-child(4),.landing-reveal.visible .landing-gallery-grid img:nth-child(4){animation-delay:.16s}.landing-reveal.visible .landing-service-card:nth-child(5),.landing-reveal.visible .landing-location-card:nth-child(5),.landing-reveal.visible .landing-team-member:nth-child(5),.landing-reveal.visible .landing-gallery-grid img:nth-child(5){animation-delay:.2s}.landing-reveal.visible .landing-service-card:nth-child(6),.landing-reveal.visible .landing-location-card:nth-child(6),.landing-reveal.visible .landing-team-member:nth-child(6),.landing-reveal.visible .landing-gallery-grid img:nth-child(6){animation-delay:.23s}.landing-section-title{color:var(--text);text-align:center;letter-spacing:-.01em;margin:0 0 2rem;font-size:1.875rem;font-weight:700;line-height:1.2}.landing-section-title:after{content:"";display:block;background:var(--booking-accent);border-radius:2px;width:40px;height:3px;margin:.75rem auto 0}.landing-about-text{color:var(--text-muted);text-align:center;white-space:pre-line;max-width:700px;margin:0 auto;font-size:1.0625rem;line-height:1.75}.landing-services-scroll{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-left:var(--section-pad-x);scrollbar-width:none;-ms-overflow-style:none;gap:1.25rem;padding-bottom:.75rem}.landing-services-scroll::-webkit-scrollbar{display:none}.landing-service-card{scroll-snap-align:start;background:var(--card-bg);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);overflow:hidden;display:flex;box-shadow:var(--card-shadow);flex-direction:column;flex:0 0 264px;transition:transform .25s,box-shadow .25s}.landing-service-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px #0000002e}.landing-service-card-img{aspect-ratio:3/2;background-position:50%;background-size:cover}.landing-service-card-body{display:flex;flex-direction:column;flex:1;gap:.375rem;padding:1rem 1rem 1.125rem}.landing-service-card-name{color:var(--text);font-size:.9375rem;font-weight:600;line-height:1.3}.landing-service-card-desc{color:var(--text-muted);display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;-webkit-box-orient:vertical;font-size:.8125rem;line-height:1.5}.landing-service-card-meta{display:flex;color:var(--text-muted);border-top:1px solid var(--border-subtle);align-items: center;gap:.75rem;margin-top:auto;padding-top:.625rem;font-size:.8125rem}.landing-view-all{text-align:center;margin-top:1.5rem}.landing-view-all a{color:var(--booking-accent);text-decoration:none;transition:opacity .15s;font-size:.9375rem;font-weight:600}.landing-view-all a:hover{opacity:.8;text-decoration:underline}.landing-locations-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}.landing-location-card{background:var(--card-bg);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);overflow:hidden;display:flex;box-shadow:var(--card-shadow);flex-direction:column;transition:transform .25s,box-shadow .25s}.landing-location-card:hover{transform:translateY(-3px);box-shadow:0 12px 32px #00000026}.landing-location-card-img{aspect-ratio:16/9;background-position:50%;background-size:cover}.landing-location-card-body{display:flex;flex-direction:column;flex:1;gap:.5rem;padding:1.125rem 1.25rem 1.25rem}.landing-location-card-name{color:var(--text);font-size:1.0625rem;font-weight:700;line-height:1.3}.landing-location-card-detail{display:flex;color:var(--text-muted);align-items: flex-start;gap:.5rem;font-size:.875rem;line-height:1.45}.landing-location-card-detail svg{color:var(--text-muted);flex-shrink:0;width:15px;height:15px;margin-top:2px}.landing-location-book{margin-top:auto;padding-top:1rem}.landing-location-book button{border-radius:var(--radius-pill);border:1.5px solid var(--booking-accent);color:var(--booking-accent);cursor:pointer;background:0 0;width:100%;padding:.625rem;transition:background .2s,color .2s,transform .2s,box-shadow .2s;font-size:.875rem;font-weight:600}.landing-location-book button:hover{background:var(--booking-accent);color:var(--landing-accent-text);box-shadow:0 4px 16px var(--booking-accent-glow);transform:translateY(-1px)}.landing-location-book button:active{transform:translateY(0)scale(.98)}.landing-location-book button:focus-visible{outline:2px solid var(--booking-accent);outline-offset:2px}.landing-team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));justify-items:center;gap:2rem}.landing-team-member{display:flex;text-align:center;flex-direction:column;align-items: center;gap:.625rem}.landing-team-avatar{object-fit:cover;display:flex;color:var(--brand-text);overflow:hidden;border:2px solid var(--border-subtle);background:linear-gradient(135deg,var(--booking-accent),var(--booking-accent));border-radius:50%;justify-content:center;align-items: center;width:80px;height:80px;transition:transform .25s,box-shadow .25s;font-size:1.5rem;font-weight:700}@supports (color: color-mix(in lab, red, red)){.landing-team-avatar{background:linear-gradient(135deg,var(--booking-accent),color-mix(in oklch,var(--booking-accent)60%,#000))}}.landing-team-member:hover .landing-team-avatar{box-shadow:0 4px 16px var(--booking-accent-glow);transform:scale(1.05)}.landing-team-avatar img{object-fit:cover;width:100%;height:100%}.landing-team-name{color:var(--text);font-size:.875rem;font-weight:600;line-height:1.3}.landing-team-title{color:var(--text-muted);font-size:.8125rem;line-height:1.3}.landing-gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.landing-gallery-btn{display:block;cursor:pointer;border-radius:var(--radius-md);overflow:hidden;background:0 0;border:none;padding:0;transition:transform .3s,box-shadow .3s}.landing-gallery-btn:hover{transform:scale(1.02);box-shadow:0 12px 32px #0003}.landing-gallery-btn:focus-visible{outline:2px solid var(--booking-accent);outline-offset:2px}.landing-gallery-grid img{aspect-ratio:4/3;object-fit:cover;display:block;background:var(--card-bg);width:100%}@keyframes lightboxScaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.landing-lightbox{position:fixed;z-index:100;display:flex;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);animation:tm-fade-in .2s ease both;background:#000000d9;justify-content:center;align-items: center;padding:2rem;inset:0}.landing-lightbox-content{position:relative;display:flex;animation:lightboxScaleIn .25s ease both;flex-direction:column;align-items: center;gap:1rem;max-width:90vw;max-height:85vh}.landing-lightbox-content img{object-fit:contain;border-radius:var(--radius-md);max-width:100%;max-height:78vh;box-shadow:0 24px 64px #00000080}.landing-lightbox-nav{display:flex;align-items: center;gap:1rem}.landing-lightbox-nav button{display:flex;color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items: center;width:40px;height:40px;transition:background .15s,transform .15s}.landing-lightbox-nav button:hover{background:#fff3;transform:scale(1.06)}.landing-lightbox-nav button:focus-visible{outline:2px solid #fff;outline-offset:2px}.landing-lightbox-counter{color:#ffffffb3;font-variant-numeric:tabular-nums;text-align:center;min-width:3rem;font-size:.8125rem}.landing-lightbox-close{position:absolute;display:flex;color:#fff;cursor:pointer;z-index:101;background:#ffffff1a;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items: center;width:44px;height:44px;transition:background .15s,transform .15s;top:1rem;right:1rem}.landing-lightbox-close:hover{background:#fff3;transform:scale(1.06)}.landing-lightbox-close:focus-visible{outline:2px solid #fff;outline-offset:2px}.landing-contact-inner{display:flex;flex-direction:column;align-items: center;gap:1rem;max-width:600px;margin:0 auto}.landing-contact-item{display:flex;color:var(--text);align-items: center;gap:.625rem;font-size:1rem}.landing-contact-item svg{color:var(--booking-accent);flex-shrink:0;width:20px;height:20px}.landing-contact-item a{color:var(--text);text-decoration:none;transition:color .15s}.landing-contact-item a:hover{color:var(--booking-accent)}.landing-socials{display:flex;gap:.75rem;margin-top:.75rem}.landing-social-link{display:flex;background:var(--card-bg);border:1px solid var(--border-subtle);color:var(--text-muted);border-radius:50%;justify-content:center;align-items: center;width:44px;height:44px;transition:background .2s,color .2s,border-color .2s,transform .2s}.landing-social-link:hover{background:var(--booking-accent);border-color:var(--booking-accent);color:var(--landing-accent-text);transform:translateY(-2px)}.landing-social-link:focus-visible{outline:2px solid var(--booking-accent);outline-offset:2px}.landing-social-link svg{fill:currentColor;width:18px;height:18px}.landing-footer{text-align:center;padding:3rem var(--section-pad-x)4rem;display:flex;border-top:1px solid var(--border-subtle);flex-direction:column;align-items: center;gap:1.25rem;max-width:1100px;margin:0 auto}.landing-powered{color:var(--text-muted);opacity:.6;letter-spacing:.01em;font-size:.8125rem}.landing-skeleton{background:var(--bg);min-height:100vh}.landing-skeleton-hero{background:var(--card-bg);display:flex;justify-content:center;align-items: center;height:100dvh}.landing-skeleton-block{background:var(--border-subtle);border-radius:var(--radius-md);animation:landingPulse 1.5s ease-in-out infinite}.landing-skeleton-blocks{display:flex;flex-direction:column;gap:2rem;max-width:1100px;margin:0 auto;padding:3rem 1.5rem}.landing-skeleton-row{display:flex;gap:1.25rem}.landing-error{display:flex;background:var(--bg);color:var(--text);flex-direction:column;justify-content:center;align-items: center;gap:1.25rem;min-height:80vh;padding:2rem}.landing-error p{color:var(--text-muted);text-align:center;max-width:400px;font-size:1.125rem;line-height:1.6}.landing-error button{border-radius:var(--radius-pill);border:1px solid var(--border-subtle);background:var(--card-bg);color:var(--text);cursor:pointer;padding:.75rem 2rem;transition:background .2s,transform .2s;font-size:.9375rem;font-weight:600}.landing-error button:hover{background:var(--hover-bg);transform:translateY(-1px)}.landing-error button:focus-visible{outline:2px solid var(--booking-accent);outline-offset:2px}@media (max-width:480px){.landing-page{--section-pad-y:3rem;--section-pad-x:1rem}.landing-hero{min-height:80dvh}.landing-section-title{font-size:1.5rem}.landing-service-card{flex:0 0 240px}.landing-team-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:1.25rem}.landing-team-avatar{width:64px;height:64px;font-size:1.25rem}.landing-gallery-grid{gap:.625rem}}@media (min-width:768px){.landing-locations-grid{grid-template-columns:repeat(2,1fr)}.landing-gallery-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:1024px){.landing-page{--section-pad-y:5rem;--section-pad-x:2rem}.landing-locations-grid{grid-template-columns:repeat(3,1fr)}.landing-service-card{flex:0 0 280px}}@media (prefers-reduced-motion:reduce){.landing-hero-content,.landing-cta,.landing-reveal.visible .landing-service-card,.landing-reveal.visible .landing-location-card,.landing-reveal.visible .landing-team-member,.landing-reveal.visible .landing-gallery-grid img,.landing-lightbox,.landing-lightbox-content,.landing-skeleton-block{animation:none!important}.landing-reveal{opacity:1;transform:none;transition:none!important}.landing-service-card,.landing-location-card,.landing-location-book button,.landing-gallery-btn,.landing-social-link,.landing-error button,.landing-team-avatar{transition:none!important}}.dash-greeting{font-size:var(--font-2xl);color:var(--text);letter-spacing:-.025em;margin:0;font-weight:700;line-height:1.2}.dash-date{font-size:var(--font-sm);color:var(--text-muted);margin:var(--space-1)0 0}.dash-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4);margin-bottom:var(--space-6)}@media (max-width:1024px){.dash-stats{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.dash-stats{grid-template-columns:1fr}}.dash-stat-card{background:var(--glass-bg);backdrop-filter:blur(12px)saturate(150%);-webkit-backdrop-filter:blur(12px)saturate(150%);border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:var(--space-5);box-shadow:var(--shadow-md);display:flex;align-items: flex-start;gap:var(--space-4);transition:box-shadow .2s,transform .2s}.dash-stat-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-1px)}.dash-stat-icon{display:flex;border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items: center;width:44px;height:44px}.dash-stat-body{flex:1;min-width:0}.dash-stat-value{font-size:var(--font-2xl);color:var(--text);letter-spacing:-.025em;font-variant-numeric:tabular-nums;font-weight:700;line-height:1.1}.dash-stat-label{font-size:var(--font-sm);color:var(--text-muted);margin-top:var(--space-1)}.dash-actions{display:flex;gap:var(--space-2);margin-bottom:var(--space-6);flex-wrap:wrap}.dash-action-btn{display:inline-flex;align-items: center;gap:var(--space-2);border-radius:var(--radius-pill);border:1px solid var(--glass-border);background:var(--glass-bg);backdrop-filter:blur(8px)saturate(140%);-webkit-backdrop-filter:blur(8px)saturate(140%);color:var(--text);font-size:var(--font-sm);cursor:pointer;text-decoration:none;padding:.5rem 1rem;transition:all .2s;font-weight:500}.dash-action-btn:hover{background:var(--brand-hover);border-color:var(--brand-primary);color:var(--brand-primary)}.dash-action-btn:active{transform:scale(.97)}.dash-action-btn-primary{background:var(--brand-bg);color:var(--brand-text);box-shadow:var(--brand-shadow);backdrop-filter:none;-webkit-backdrop-filter:none;border-color:#0000}.dash-action-btn-primary:hover{background:var(--brand-bg);color:var(--brand-text);filter:brightness(1.08);box-shadow:var(--brand-shadow-hover);transform:translateY(-1px)}.dash-content{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6)}@media (min-width:1400px){.dash-content{grid-template-columns:1.2fr .8fr}}@media (max-width:768px){.dash-content{grid-template-columns:1fr}}.dash-section{background:var(--glass-bg);backdrop-filter:blur(12px)saturate(150%);-webkit-backdrop-filter:blur(12px)saturate(150%);border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:var(--space-6);box-shadow:var(--shadow-md)}.dash-section-title{font-size:var(--font-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin:0 0 var(--space-4);font-weight:600}.dash-schedule-list{display:flex;gap:var(--space-2);flex-direction:column}.dash-schedule-item{display:flex;align-items: center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-sm);background:var(--hover-bg-subtle);border:1px solid #0000;transition:all .15s}.dash-schedule-item:hover{background:var(--hover-bg);border-color:var(--glass-border)}.dash-schedule-color{border-radius:2px;flex-shrink:0;width:3px;height:2.25rem}.dash-schedule-time{font-size:var(--font-xs);color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap;min-width:5rem;font-weight:600}.dash-schedule-info{flex:1;min-width:0}.dash-schedule-title{font-size:var(--font-base);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}.dash-schedule-meta{font-size:var(--font-xs);color:var(--text-muted);margin-top:1px}.dash-schedule-status{flex-shrink:0}.dash-activity-list{display:flex;flex-direction:column}.dash-activity-item{display:flex;gap:var(--space-3);padding:var(--space-3)0;border-bottom:1px solid var(--border-subtle)}.dash-activity-item:last-child{border-bottom:none}.dash-activity-dot{background:var(--brand-primary);border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:.375rem}.dash-activity-body{flex:1;min-width:0}.dash-activity-text{font-size:var(--font-sm);color:var(--text);line-height:1.4}.dash-activity-text strong{font-weight:600}.dash-activity-time{font-size:var(--font-2xs);color:var(--text-muted);letter-spacing:.02em;margin-top:2px}@keyframes dash-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.dash-stagger>*{animation:dash-enter .3s ease both}.dash-stagger>:first-child{animation-delay:0s}.dash-stagger>:nth-child(2){animation-delay:50ms}.dash-stagger>:nth-child(3){animation-delay:.1s}.dash-stagger>:nth-child(4){animation-delay:.15s}@media (prefers-reduced-motion:reduce){.dash-stagger>*{animation:none}}.dash-top-services{margin-top:var(--space-2)}.dash-top-services-header{display:flex;margin-bottom:var(--space-3);justify-content:space-between;align-items: center}.dash-top-services-link{font-size:var(--font-xs);color:var(--brand-primary);text-decoration:none;transition:opacity .15s;font-weight:500}.dash-top-services-link:hover{opacity:.8}.dash-top-services-list{display:flex;gap:var(--space-2);flex-direction:column}.dash-top-svc-row{display:flex;align-items: center;gap:var(--space-3);padding:var(--space-2)var(--space-3);border-radius:var(--radius-md);border:1px solid var(--card-border);background:var(--card-bg);transition:background .15s}.dash-top-svc-row:hover{background:var(--hover-bg-subtle)}.dash-top-svc-rank{text-align:center;font-size:var(--font-lg);color:var(--text-muted);flex-shrink:0;width:1.5rem;font-weight:700}.dash-top-svc-dot{border-radius:50%;flex-shrink:0;width:.5rem;height:.5rem}.dash-top-svc-info{display:flex;flex-direction:column;flex:1;gap:.25rem;min-width:0}.dash-top-svc-name{font-size:var(--font-sm);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}.dash-top-svc-bar-bg{background:var(--input-bg);overflow:hidden;border-radius:2px;height:.25rem}.dash-top-svc-bar-fill{border-radius:2px;height:100%;transition:width .5s}.dash-top-svc-stats{display:flex;flex-direction:column;flex-shrink:0;align-items: flex-end;gap:.125rem}.dash-top-svc-count{font-size:var(--font-xs);color:var(--text);white-space:nowrap;font-weight:600}.dash-top-svc-revenue{font-size:var(--font-xs);color:var(--text-muted);white-space:nowrap}.dash-top-svc-warn{font-size:var(--font-sm);color:var(--state-warning);cursor:help;flex-shrink:0}@media (max-width:480px){.dash-top-svc-row{gap:var(--space-2);padding:var(--space-2)}.dash-top-svc-rank{font-size:var(--font-sm)}.dash-top-svc-bar-bg{display:none}}.um-server-error{display:flex;align-items: center;gap:var(--space-2);margin:var(--space-3)var(--space-6)0;border-radius:var(--radius-md);font-size:var(--font-sm);color:var(--state-error);background:var(--state-error-bg);border:1px solid var(--state-error-border);padding:.625rem .875rem;font-weight:500}.um-identity-row{display:flex;padding-bottom:var(--space-3);margin-bottom:var(--space-1);border-bottom:1px solid var(--border-subtle);align-items: center;gap:.875rem}.um-avatar{border-radius:var(--radius-md);display:flex;font-size:var(--font-base);letter-spacing:.04em;flex-shrink:0;justify-content:center;align-items: center;width:3rem;height:3rem;font-weight:700}.um-identity-info{display:flex;flex-direction:column;gap:.125rem;min-width:0}.um-identity-name{color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.9375rem;font-weight:600}.um-identity-email{font-size:var(--font-sm);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.um-label{display:block;font-size:var(--font-sm);color:var(--text-muted);margin-bottom:.375rem;font-weight:500}.um-required{color:var(--state-error);margin-left:.125rem}.um-input{border-radius:var(--radius-md);border:1px solid var(--input-border);background:var(--input-bg);color:var(--text);padding:var(--space-2)var(--space-3);font-size:var(--font-base);outline:none;width:100%;transition:border-color .2s,box-shadow .2s}.um-input::placeholder{color:var(--text-muted);opacity:.55}.um-input:focus{border-color:var(--brand-primary);box-shadow:0 0 0 3px var(--brand-primary)}@supports (color: color-mix(in lab, red, red)){.um-input:focus{box-shadow:0 0 0 3px color-mix(in oklch,var(--brand-primary)20%,transparent)}}.um-input-error{border-color:var(--state-error)!important}.um-input-error:focus{box-shadow:0 0 0 3px var(--state-error)}@supports (color: color-mix(in lab, red, red)){.um-input-error:focus{box-shadow:0 0 0 3px color-mix(in oklch,var(--state-error)20%,transparent)}}.um-error{margin:var(--space-1)0 0;font-size:var(--font-xs);color:var(--state-error)}.um-section{margin-top:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--border-subtle)}.um-section-label{display:flex;font-size:var(--font-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);align-items: center;gap:.375rem;margin-bottom:.625rem;font-weight:600}.um-password-wrap{position:relative}.um-password-wrap .um-input{padding-right:2.5rem}.um-password-toggle{position:absolute;right:var(--space-2);padding:var(--space-1);color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);display:flex;background:0 0;border:none;justify-content:center;align-items: center;transition:color .15s;top:50%;transform:translateY(-50%)}.um-password-toggle:hover{color:var(--text)}.um-password-toggle:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.um-toggles{display:flex;align-items: center;gap:var(--space-6);padding-top:var(--space-2)}.um-invite-note{display:flex;margin-top:var(--space-2);border-radius:var(--radius-lg);font-size:var(--font-xs);color:var(--state-info);background:var(--state-info-bg);border:1px solid var(--state-info-border);align-items: center;gap:.5rem;padding:.625rem .875rem}.um-invite-note svg{flex-shrink:0}.um-expand-toggle{display:flex;color:var(--brand-primary);font-size:var(--font-xs);cursor:pointer;background:0 0;border:none;align-items: center;gap:.375rem;padding:.25rem 0;transition:opacity .15s;font-weight:600}.um-expand-toggle:hover{opacity:.8}.um-expand-toggle:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px;border-radius:var(--radius-sm)}.svc-th-actions{text-align:right}.svc-actions{display:flex;justify-content:flex-end;align-items: center;gap:.25rem}.svc-action-btn{display:inline-flex;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #0000;flex-shrink:0;justify-content:center;align-items: center;width:2rem;height:2rem;padding:0;transition:all .15s;font-family:inherit}.svc-action-btn:hover:not(:disabled){color:var(--text);background:var(--hover-bg);border-color:var(--border-subtle)}.svc-action-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:-2px}.svc-action-btn:disabled{opacity:.35;cursor:not-allowed}.svc-action-btn-info{color:var(--state-info)}.svc-action-btn-info:hover:not(:disabled){background:var(--state-info-bg);border-color:var(--state-info-border)}.svc-action-btn-info:disabled{opacity:.35;cursor:not-allowed}.svc-action-btn-success{color:var(--state-success)}.svc-action-btn-success:hover:not(:disabled){background:var(--state-success-bg);border-color:var(--state-success-border)}.svc-action-btn-success:disabled{opacity:.35;cursor:not-allowed}.svc-action-btn-danger{color:var(--state-error)}.svc-action-btn-danger:hover:not(:disabled){background:var(--state-error-bg);border-color:var(--state-error-border)}.svc-action-btn-danger:disabled{opacity:.35;cursor:not-allowed}@media (max-width:640px){.um-identity-row{text-align:center;flex-direction:column}}.um-services-loading{display:flex;gap:var(--space-3);padding:var(--space-2)0;flex-direction:column}.um-skeleton{border-radius:var(--radius-md);background:var(--card-border);animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.4}50%{opacity:.7}}.um-services-empty{display:flex;justify-content:center;align-items: center;gap:var(--space-2);padding:var(--space-8)var(--space-4);text-align:center;flex-direction:column}.um-services-empty-title{font-size:var(--font-base);color:var(--text);font-weight:600}.um-services-empty-desc{font-size:var(--font-sm);color:var(--text-muted);max-width:260px}.um-services-list{display:flex;flex-direction:column}.um-services-header{display:flex;padding:var(--space-1)0 var(--space-2);margin-bottom:var(--space-1);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items: center}.um-services-select-all{cursor:pointer;font-size:var(--font-xs);color:var(--brand-primary);padding:var(--space-1)var(--space-2);border-radius:var(--radius-sm);background:0 0;border:none;transition:background .15s;font-weight:600}.um-services-select-all:hover{background:var(--brand-hover)}.um-services-select-all:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.um-services-count{font-size:var(--font-xs);color:var(--text-muted);font-variant-numeric:tabular-nums}.um-service-item{display:flex;align-items: center;gap:var(--space-3);padding:.5rem var(--space-2);border-radius:var(--radius-md);cursor:pointer;transition:background .15s}.um-service-item:hover{background:var(--hover-bg-subtle,var(--brand-hover))}.dt-card-user{display:flex;flex-direction:column;gap:.5rem}.dt-card-user-top{display:flex;align-items: center;gap:.625rem}.dt-card-user-info{display:flex;flex-direction:column;flex:1;min-width:0}.dt-card-user-name{color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.875rem;font-weight:500}.dt-card-user-email{color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.75rem}.dt-card-user-meta{display:flex;align-items: center;gap:.35rem;padding-top:.125rem}.um-service-checkbox{appearance:none;border-radius:var(--radius-sm);border:1.5px solid var(--input-border);background:var(--input-bg);cursor:pointer;position:relative;flex-shrink:0;width:1.125rem;height:1.125rem;transition:border-color .15s,background .15s}.um-service-checkbox:checked{background:var(--brand-primary);border-color:var(--brand-primary)}.um-service-checkbox:checked:after{content:"";position:absolute;border:2px solid #fff;border-width:0 2px 2px 0;width:5px;height:9px;top:2px;left:5px;transform:rotate(45deg)}.um-service-checkbox:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.um-service-name{font-size:var(--font-sm);color:var(--text);font-weight:500}.um-services-multi{display:flex;gap:var(--space-3);flex-direction:column}.um-loc-tab-count{display:inline-flex;background:var(--brand-primary);color:#fff;border-radius:999px;justify-content:center;align-items: center;min-width:1.25rem;height:1.25rem;margin-left:.375rem;padding:0 .3rem;font-size:.6875rem;font-weight:700}@layer base{.notif-bell{position:relative;display:flex;color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:.625rem;flex-shrink:0;justify-content:center;align-items: center;width:36px;height:36px;padding:0;transition:all .15s;font-family:inherit}.notif-bell:hover{color:var(--text);background:var(--hover-bg);border-color:var(--border-subtle)}.notif-bell svg{width:20px;height:20px}.notif-badge{position:absolute;background:var(--state-error);color:var(--brand-text);display:flex;pointer-events:none;box-shadow:0 1px 4px oklch(.7 .15 20/.35);border-radius:999px;justify-content:center;align-items: center;min-width:16px;height:16px;padding:0 4px;font-size:.6rem;font-weight:700;line-height:1;top:2px;right:2px}.notif-panel{position:absolute;display:flex;background:var(--popup-glass-bg);border:1px solid var(--popup-glass-border);box-shadow:var(--popup-glass-shadow);backdrop-filter:blur(var(--popup-glass-blur));-webkit-backdrop-filter:blur(var(--popup-glass-blur));z-index:var(--z-notification);overflow:hidden;animation:tm-dropdown-in .15s cubic-bezier(.16,1,.3,1);border-radius:.875rem;flex-direction:column;width:360px;max-height:440px;top:calc(100% + 8px);right:0}.notif-header{display:flex;border-bottom:1px solid var(--border-subtle);flex-shrink:0;justify-content:space-between;align-items: center;padding:.75rem 1rem}.notif-header-title{color:var(--text);font-size:.875rem;font-weight:600}.notif-mark-all{color:var(--brand-primary);cursor:pointer;background:0 0;border:none;border-radius:.375rem;padding:.25rem .5rem;transition:background .15s;font-family:inherit;font-size:.75rem;font-weight:500}.notif-mark-all:hover{background:var(--hover-bg)}.notif-mark-all:disabled{opacity:.4;cursor:default}.notif-list{overflow-y:auto;scrollbar-width:thin;scrollbar-color:#ffffff0f transparent;flex:1}.notif-list::-webkit-scrollbar{width:4px}.notif-list::-webkit-scrollbar-track{background:0 0}.notif-list::-webkit-scrollbar-thumb{background:#ffffff0f;border-radius:999px}.notif-item{display:flex;cursor:pointer;border-bottom:1px solid var(--border-subtle);gap:.625rem;padding:.625rem 1rem;transition:background .12s}.notif-item:last-child{border-bottom:none}.notif-item:hover{background:var(--hover-bg)}.notif-item.unread{background:var(--hover-bg-subtle)}.notif-item.unread:hover{background:var(--hover-bg)}.notif-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:5px}.notif-content{flex:1;min-width:0}.notif-title{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;font-weight:600;line-height:1.3}.notif-body{color:var(--text-muted);display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;-webkit-box-orient:vertical;margin-top:1px;font-size:.75rem;line-height:1.35}.notif-time{color:var(--text-muted);opacity:.7;margin-top:2px;font-size:.65rem}.notif-empty{display:flex;color:var(--text-muted);opacity:.6;justify-content:center;align-items: center;padding:2.5rem 1rem;font-size:.8125rem}@media (max-width:480px){.notif-panel{width:calc(100vw - 1.5rem);right:-.5rem}}}.tt-wrap{position:relative;display:inline-flex;align-items: center}.tt-wrap:after{content:attr(data-tooltip);position:absolute;white-space:nowrap;color:var(--text);background:var(--card-bg);border:1px solid var(--card-border);box-shadow:var(--card-shadow);opacity:0;pointer-events:none;z-index:50;border-radius:.5rem;padding:.3rem .625rem;transition:opacity .15s;font-size:.6875rem;font-weight:500;line-height:1.3}.tt-wrap:hover:after{opacity:1}.tt-top:after{bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.tt-bottom:after{top:calc(100% + 6px);left:50%;transform:translate(-50%)}.tt-left:after{top:50%;right:calc(100% + 6px);transform:translateY(-50%)}.tt-right:after{top:50%;left:calc(100% + 6px);transform:translateY(-50%)}.nf{--rx:0deg;--ry:0deg;position:relative;display:flex;background:var(--bg);overflow:hidden;perspective:900px;justify-content:center;align-items: center;min-height:100vh}.nf:before{content:"";position:absolute;background-image:radial-gradient(circle,var(--border-subtle)1px,transparent 1px);opacity:.5;pointer-events:none;background-size:32px 32px;inset:0}.nf-scene{display:flex;transform-style:preserve-3d;transform:rotateX(var(--rx))rotateY(var(--ry));flex-direction:column;align-items: center;gap:1.5rem;transition:transform .15s ease-out}.nf-digits{display:flex;gap:.06em}.nf-digit{letter-spacing:-.04em;color:var(--text);opacity:0;animation:nf-enter .5s cubic-bezier(.22,1,.36,1)forwards;transform-style:preserve-3d;font-family:ui-monospace,Cascadia Code,Fira Code,Menlo,monospace;font-size:clamp(7rem,20vw,14rem);font-weight:900;line-height:1}.nf-digit-zero{color:var(--brand-primary);text-shadow:0 0 60px rgba(var(--brand-primary-rgb),.25);transform:translateZ(-40px)}@keyframes nf-enter{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.nf-msg{color:var(--text-muted);letter-spacing:.02em;animation:tm-fade-in .5s .25s ease both;margin:0;font-size:1rem;font-weight:400}.nf-link{display:inline-flex;color:var(--brand-primary);cursor:pointer;position:relative;animation:tm-fade-in .5s .35s ease both;background:0 0;border:none;align-items: center;gap:.5rem;padding:.4rem 0;transition:gap .2s;font-size:.875rem;font-weight:500}.nf-link:after{content:"";position:absolute;background:var(--brand-primary);width:0;height:1px;transition:width .25s;bottom:0;left:0}.nf-link:hover{gap:.75rem}.nf-link:hover:after{width:100%}.nf-link:focus-visible{outline:2px solid var(--brand-primary);outline-offset:4px;border-radius:var(--radius-sm)}@media (prefers-reduced-motion:reduce){.nf-digit,.nf-msg,.nf-link{opacity:1;animation:none!important}.nf-scene{transition:none!important}}.cancel-page{display:flex;background:var(--bg);color:var(--text);justify-content:center;align-items: center;min-height:100vh;padding:1.5rem}.cancel-card{background:var(--card-bg);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);text-align:center;animation:cancelFadeIn .35s ease both;width:100%;max-width:480px;padding:2rem 1.75rem}@keyframes cancelFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.cancel-icon{display:flex;border-radius:50%;justify-content:center;align-items: center;width:56px;height:56px;margin:0 auto 1.25rem}.cancel-icon--warning{background:var(--state-warning-bg);border:2px solid var(--state-warning-border);color:var(--state-warning)}.cancel-icon--error{background:var(--state-error-bg);border:2px solid var(--state-error-border);color:var(--state-error)}.cancel-icon--success{background:var(--state-success-bg);border:2px solid var(--state-success-border);color:var(--state-success)}.cancel-icon--info{background:var(--state-info-bg);border:2px solid var(--state-info-border);color:var(--state-info)}.cancel-title{color:var(--text);letter-spacing:-.01em;margin-bottom:.375rem;font-size:1.25rem;font-weight:700}.cancel-sub{color:var(--text-muted);max-width:360px;margin-bottom:1.5rem;margin-left:auto;margin-right:auto;font-size:.8125rem;line-height:1.55}.cancel-details{background:var(--bg);border:1px solid var(--border-subtle);border-radius:var(--radius-md);text-align:left;margin-bottom:1.5rem;padding:1rem 1.25rem}.cancel-details-service{color:var(--text);margin-bottom:.625rem;font-size:.9375rem;font-weight:600}.cancel-details-row{display:flex;color:var(--text-muted);align-items: center;gap:.5rem;font-size:.8125rem;line-height:1.6}.cancel-details-row svg{opacity:.7;flex-shrink:0}.cancel-actions{display:flex;gap:.75rem}.cancel-btn{border-radius:var(--radius-md);cursor:pointer;border:none;flex:1;padding:.625rem 1rem;transition:opacity .15s,transform .1s;font-size:.8125rem;font-weight:600}.cancel-btn:active{transform:scale(.98)}.cancel-btn:disabled{opacity:.6;cursor:not-allowed}.cancel-btn--danger{background:var(--state-error);color:var(--brand-text)}.cancel-btn--danger:hover:not(:disabled){opacity:.9}.cancel-btn--secondary{background:var(--bg);color:var(--text);border:1px solid var(--border-subtle)}.cancel-btn--secondary:hover:not(:disabled){background:var(--card-bg);border-color:var(--card-border)}.cancel-btn--primary{background:var(--brand-primary);color:var(--brand-text)}.cancel-btn--primary:hover:not(:disabled){opacity:.9}.cancel-reschedule-form{width:100%;margin:1rem 0}.cancel-label{display:flex;color:var(--text-secondary);flex-direction:column;gap:.375rem;font-size:.8125rem;font-weight:500}.cancel-input{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg);color:var(--text);width:100%;padding:.5rem .75rem;font-size:.875rem}.cancel-input:focus{outline:2px solid var(--brand-primary);outline-offset:1px}.cancel-slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(5rem,1fr));overflow-y:auto;gap:.375rem;max-height:12rem;margin-top:.75rem}.cancel-slot{border:1px solid var(--border-subtle);border-radius:var(--radius-sm,6px);background:var(--bg);color:var(--text);cursor:pointer;text-align:center;padding:.375rem .5rem;transition:border-color .15s,background .15s;font-size:.8125rem}.cancel-slot:hover{border-color:var(--brand-primary);background:var(--card-bg)}.cancel-slot--active{border-color:var(--brand-primary);background:var(--brand-primary);color:var(--brand-text)}.cancel-book-again{display:inline-flex;border-radius:var(--radius-md);color:var(--brand-text);background:var(--brand-primary);text-decoration:none;cursor:pointer;border:none;align-items: center;gap:.375rem;margin-top:1.25rem;padding:.625rem 1.25rem;transition:opacity .15s;font-size:.8125rem;font-weight:600}.cancel-book-again:hover{opacity:.9}.cancel-spinner{display:flex;flex-direction:column;align-items: center;gap:1rem}.cancel-spinner svg{animation:tm-spin 1s linear infinite}.cancel-spinner-text{color:var(--text-muted);font-size:.8125rem}.cancel-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.cancel-book-again:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}@media (prefers-reduced-motion:reduce){.cancel-card,.cancel-spinner svg{animation:none!important}.cancel-btn{transition:none!important}}.settings-page{padding:var(--space-6)var(--space-8);max-width:var(--content-max-width,860px);box-sizing:border-box;width:100%;margin:0 auto}.settings-sections{display:flex;flex-direction:column;gap:1rem}.set-section{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--card-bg);overflow:hidden;transition:box-shadow .2s}.set-section-header{display:flex;cursor:pointer;user-select:none;justify-content:space-between;align-items: center;padding:1rem 1.5rem;transition:background .15s}.set-section-header:hover{background:var(--hover-bg-subtle)}.set-section-header-left{display:flex;align-items: center;gap:.75rem}.set-section-icon{display:flex;border-radius:var(--radius-sm);color:var(--brand-primary);background:var(--brand-hover);flex-shrink:0;justify-content:center;align-items: center;width:2rem;height:2rem}.set-section-icon svg{width:16px;height:16px}.set-section-title-group{display:flex;flex-direction:column}.set-section-title{color:var(--text);margin:0;font-size:.875rem;font-weight:600}.set-section-subtitle{color:var(--text-muted);margin:.0625rem 0 0;font-size:.75rem}.set-section-chevron{display:flex;color:var(--text-muted);align-items: center;transition:transform .2s}.set-section-chevron.open{transform:rotate(90deg)}.set-section-body{display:flex;animation:setFadeIn .2s ease forwards;flex-direction:column;gap:0;padding:0 1.5rem 1.5rem}@keyframes setFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.set-row{display:flex;border-bottom:1px solid var(--border-section);justify-content:space-between;align-items: center;gap:1.5rem;padding:.875rem 0}.set-row:last-child{border-bottom:none}.set-row-info{display:flex;flex-direction:column;flex:1;gap:.125rem;min-width:0}.set-row-label{color:var(--text);font-size:.875rem;font-weight:500}.set-row-hint{color:var(--text-muted);font-size:.75rem;line-height:1.4}.set-row-control{flex-shrink:0}.set-input{border-radius:var(--radius-md);border:1px solid var(--input-border);font-size:var(--font-sm);outline:none;background:var(--input-bg);color:var(--text);box-sizing:border-box;padding:.5rem .75rem;transition:all .2s;font-family:inherit}.set-input:focus{border-color:var(--brand-primary);box-shadow:var(--input-focus-ring)}.set-input-error{border-color:var(--state-error)!important}.set-field-error{color:var(--state-error);margin:.25rem 0 0;font-size:.75rem}.set-input::placeholder{color:var(--placeholder-color)}.set-input-sm{width:100px}.set-input-md{width:220px}.set-input-lg{width:280px}textarea.set-input{resize:vertical;width:100%;min-height:4rem;line-height:1.5}.set-chips{display:flex;flex-wrap:wrap;gap:.375rem}.set-chip{border-radius:var(--radius-sm);border:1px solid var(--input-border);background:var(--input-bg);color:var(--text-muted);cursor:pointer;padding:.375rem .75rem;transition:all .15s;font-size:.8125rem;font-weight:500}.set-chip:hover{border-color:var(--brand-primary);color:var(--brand-primary)}.set-chip.active{background:var(--brand-hover);border-color:var(--brand-primary);color:var(--brand-primary);font-weight:600}.set-workday-chips{display:flex;flex-wrap:wrap;gap:.375rem}.set-workday-btn{border-radius:var(--radius-sm);border:1px solid var(--input-border);background:var(--input-bg);color:var(--text-muted);cursor:pointer;display:flex;justify-content:center;align-items: center;width:2.5rem;height:2.5rem;transition:all .15s;font-size:.75rem;font-weight:600}.set-workday-btn:hover{border-color:var(--brand-primary);color:var(--brand-primary)}.set-workday-btn.active{background:var(--brand-hover);border-color:var(--brand-primary);color:var(--brand-primary)}.set-time-range{display:flex;align-items: center;gap:.5rem}.set-time-sep{color:var(--text-muted);font-size:.8125rem}.set-number-row{display:flex;align-items: center;gap:.5rem}.set-number-input{width:5rem}.set-number-unit{color:var(--text-muted);font-size:.8125rem}.set-color-row{display:flex;align-items: center;gap:.5rem}.set-color-swatch{border-radius:var(--radius-sm);cursor:pointer;border:2px solid var(--border-subtle);overflow:hidden;width:2rem;height:2rem;padding:0}.set-color-swatch::-webkit-color-swatch-wrapper{padding:0}.set-color-swatch::-webkit-color-swatch{border:none;border-radius:.25rem}.set-profile{display:flex;align-items: center;gap:1rem;padding:.5rem 0}.set-profile-avatar{background:var(--brand-primary);color:var(--brand-primary);display:flex;border-radius:50%;flex-shrink:0;justify-content:center;align-items: center;width:3rem;height:3rem;font-size:1rem;font-weight:700}@supports (color: color-mix(in lab, red, red)){.set-profile-avatar{background:color-mix(in oklch,var(--brand-primary)15%,transparent)}}.set-profile-info{display:flex;flex-direction:column;gap:.125rem}.set-profile-name{color:var(--text);font-size:1rem;font-weight:600}.set-profile-email{color:var(--text-muted);font-size:.8125rem}.set-profile-role{display:inline-block;background:var(--brand-primary);color:var(--brand-primary);text-transform:uppercase;letter-spacing:.04em;border-radius:9999px;margin-top:.25rem;padding:.125rem .5rem;font-size:.6875rem;font-weight:600}@supports (color: color-mix(in lab, red, red)){.set-profile-role{background:color-mix(in oklch,var(--brand-primary)12%,transparent)}}.set-save-bar{position:sticky;display:flex;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--card-shadow);backdrop-filter:blur(12px)saturate(150%);-webkit-backdrop-filter:blur(12px)saturate(150%);animation:setFadeIn .2s ease forwards;justify-content:flex-end;align-items: center;gap:.75rem;margin-top:.5rem;padding:1rem 1.5rem;bottom:0}.set-toggle{position:relative;display:inline-flex;cursor:pointer;align-items: center}.set-toggle input{position:absolute;opacity:0;width:0;height:0}.set-toggle-slider{background:var(--border-subtle);position:relative;border-radius:11px;width:40px;height:22px;transition:background .2s}.set-toggle-slider:after{content:"";position:absolute;background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .2s;top:3px;left:3px;box-shadow:0 1px 3px #0003}.set-toggle input:checked+.set-toggle-slider{background:var(--brand-primary)}.set-toggle input:checked+.set-toggle-slider:after{transform:translate(18px)}.set-toggle input:focus-visible+.set-toggle-slider{outline:2px solid var(--brand-primary);outline-offset:2px}.set-save-badge{color:var(--state-warning);border-radius:var(--radius-pill);background:var(--state-warning-bg);border:1px solid var(--state-warning-border);padding:.25rem .625rem;font-size:.75rem;font-weight:500}.set-slug-preview{color:var(--text-muted);margin-top:.25rem;font-size:.75rem}.set-slug-url{color:var(--brand-primary);font-weight:500}@media (max-width:640px){.settings-page{padding:1rem}.set-row{flex-direction:column;align-items: flex-start;gap:.5rem}.set-input-sm,.set-input-md,.set-input-lg{width:100%}.set-save-bar{border-radius:var(--radius-lg)var(--radius-lg)0 0;margin-left:-1rem;margin-right:-1rem;padding:.75rem 1rem}}.set-section-header:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.set-input:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.set-chip:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.set-workday-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.set-color-swatch:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}@media (prefers-reduced-motion:reduce){.set-section-body,.set-save-bar,.set-section-header,.set-chip{animation:none!important;transition:none!important}}.loc-page{padding:var(--space-6)var(--space-8);max-width:var(--content-max-width,1400px);box-sizing:border-box;width:100%;height:100%;margin:0 auto}.loc-layout{display:grid;grid-template-columns:300px 1fr;align-items: start;gap:1.5rem;min-height:0}.loc-sidebar{border:1px solid var(--glass-border);border-radius:var(--radius-lg);background:var(--glass-bg);backdrop-filter:blur(12px)saturate(150%);-webkit-backdrop-filter:blur(12px)saturate(150%);box-shadow:var(--card-shadow);overflow:hidden;display:flex;position:sticky;flex-direction:column;top:1.5rem}.loc-sidebar-search{border-bottom:1px solid var(--border-subtle);padding:.75rem}.loc-sidebar-list{overflow-y:auto;flex:1;padding:.375rem}.loc-sidebar-item{display:flex;border-radius:var(--radius-md);cursor:pointer;text-align:left;color:var(--text);background:0 0;border:none;justify-content:space-between;align-items: center;gap:.5rem;width:100%;padding:.625rem .75rem;transition:all .15s}.loc-sidebar-item:hover{background:var(--hover-bg)}.loc-sidebar-item.active{background:var(--brand-primary);color:var(--brand-primary)}@supports (color: color-mix(in lab, red, red)){.loc-sidebar-item.active{background:color-mix(in oklch,var(--brand-primary)12%,transparent)}}.loc-sidebar-item-info{display:flex;flex-direction:column;gap:.125rem;min-width:0}.loc-sidebar-item-name{display:flex;align-items: center;gap:.375rem;font-size:.875rem;font-weight:500}.loc-sidebar-item-address{color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.75rem}.loc-sidebar-item-meta{display:flex;flex-shrink:0;align-items: center;gap:.375rem}.loc-sidebar-item-count{border-radius:var(--radius-pill);background:var(--hover-bg);color:var(--text-muted);flex-shrink:0;padding:.125rem .5rem;font-size:.6875rem;font-weight:600}.loc-sidebar-item.active .loc-sidebar-item-count{background:var(--brand-primary);color:var(--brand-primary)}@supports (color: color-mix(in lab, red, red)){.loc-sidebar-item.active .loc-sidebar-item-count{background:color-mix(in oklch,var(--brand-primary)20%,transparent)}}.loc-sidebar-item-inactive{border-radius:var(--radius-pill);background:var(--state-warning-bg);color:var(--state-warning);border:1px solid var(--state-warning-border);text-transform:uppercase;letter-spacing:.04em;flex-shrink:0;padding:.0625rem .375rem;font-size:.5625rem;font-weight:600}.loc-unsaved-dot{display:inline-block;background:var(--state-warning);border-radius:50%;flex-shrink:0;width:6px;height:6px}.loc-main{display:flex;overflow-y:auto;flex-direction:column;gap:1rem}.loc-header-card{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--card-bg);display:flex;justify-content:space-between;align-items: flex-start;gap:1rem;padding:1.25rem 1.5rem}.loc-header-info{display:flex;flex-direction:column;gap:.25rem;min-width:0}.loc-header-name{color:var(--text);display:flex;align-items: center;gap:.5rem;margin:0;font-size:1.25rem;font-weight:600}.loc-header-address{color:var(--text-muted);margin:0;font-size:.8125rem}.loc-save-bar{position:sticky;display:flex;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);backdrop-filter:blur(12px)saturate(150%);-webkit-backdrop-filter:blur(12px)saturate(150%);box-shadow:0 -4px 16px oklch(.1 0 0/.1);animation:locFadeIn .2s ease forwards;justify-content:flex-end;align-items: center;gap:.75rem;margin-top:.5rem;padding:1rem 1.5rem;bottom:0}.loc-save-badge{color:var(--state-warning);border-radius:var(--radius-pill);background:var(--state-warning-bg);border:1px solid var(--state-warning-border);padding:.25rem .625rem;font-size:.75rem;font-weight:500}.loc-section{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--card-bg);overflow:hidden;transition:box-shadow .2s}.loc-section-header{display:flex;cursor:pointer;user-select:none;justify-content:space-between;align-items: center;padding:1rem 1.5rem;transition:background .15s}.loc-section-header:hover{background:var(--hover-bg-subtle)}.loc-section-header-left{display:flex;align-items: center;gap:.75rem}.loc-section-icon{display:flex;border-radius:var(--radius-sm);color:var(--brand-primary);background:var(--brand-hover);flex-shrink:0;justify-content:center;align-items: center;width:2rem;height:2rem}.loc-section-icon svg{width:16px;height:16px}.loc-section-title-group{display:flex;flex-direction:column}.loc-section-title{color:var(--text);margin:0;font-size:.875rem;font-weight:600}.loc-section-subtitle{color:var(--text-muted);margin:.0625rem 0 0;font-size:.75rem}.loc-section-chevron{display:flex;color:var(--text-muted);align-items: center;transition:transform .2s}.loc-section-chevron.open{transform:rotate(90deg)}.loc-section-body{display:flex;animation:locFadeIn .2s ease forwards;flex-direction:column;gap:1rem;padding:0 1.5rem 1.5rem}@keyframes locFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.loc-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.loc-form-full{grid-column:1/-1}.loc-form-group{display:flex;flex-direction:column;gap:.375rem}.loc-form-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:600}.loc-form-input{border-radius:var(--radius-md);border:1px solid var(--input-border);font-size:var(--font-sm);outline:none;background:var(--input-bg);color:var(--text);box-sizing:border-box;width:100%;padding:.5rem .75rem;transition:all .2s;font-family:inherit}.loc-form-input:focus{border-color:var(--brand-primary);box-shadow:var(--input-focus-ring)}.loc-form-input::placeholder{color:var(--placeholder-color)}textarea.loc-form-input{resize:vertical;min-height:5rem;line-height:1.5}.loc-form-hint{color:var(--text-muted);margin:0;font-size:.75rem;line-height:1.4}.loc-status-row{display:flex;border-radius:var(--radius-md);background:var(--hover-bg-subtle);justify-content:space-between;align-items: center;padding:.75rem 1rem}.loc-status-info{display:flex;flex-direction:column;gap:.125rem}.loc-status-label{color:var(--text);font-size:.875rem;font-weight:500}.loc-status-hint{color:var(--text-muted);font-size:.75rem}.loc-workdays{display:flex;flex-wrap:wrap;gap:.375rem}.loc-workday-btn{border-radius:var(--radius-sm);border:1px solid var(--input-border);background:var(--input-bg);color:var(--text-muted);cursor:pointer;display:flex;justify-content:center;align-items: center;width:2.5rem;height:2.5rem;transition:all .15s;font-size:.75rem;font-weight:600}.loc-workday-btn:hover{border-color:var(--brand-primary);color:var(--brand-primary)}.loc-workday-btn.active{background:var(--brand-hover);border-color:var(--brand-primary);color:var(--brand-primary)}.loc-employee-list{display:flex;flex-direction:column;gap:.25rem}.loc-employee-card{display:flex;border-radius:var(--radius-sm);align-items: center;gap:.75rem;padding:.5rem .625rem;transition:background .15s}.loc-employee-card:hover{background:var(--hover-bg)}.loc-employee-avatar{background:var(--brand-primary);color:var(--brand-primary);display:flex;border-radius:50%;flex-shrink:0;justify-content:center;align-items: center;width:2rem;height:2rem;font-size:.8125rem;font-weight:600}@supports (color: color-mix(in lab, red, red)){.loc-employee-avatar{background:color-mix(in oklch,var(--brand-primary)15%,transparent)}}.loc-employee-info{display:flex;flex-direction:column;flex:1;min-width:0}.loc-employee-name{color:var(--text);font-size:.875rem;font-weight:500}.loc-employee-email{color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.75rem}.loc-role-badge{border-radius:var(--radius-pill);white-space:nowrap;flex-shrink:0;padding:.125rem .5rem;font-size:.6875rem;font-weight:500}.loc-role-admin{background:var(--state-error);color:var(--state-error)}@supports (color: color-mix(in lab, red, red)){.loc-role-admin{background:color-mix(in oklch,var(--state-error)12%,transparent)}}.loc-role-manager{background:var(--state-warning);color:var(--state-warning)}@supports (color: color-mix(in lab, red, red)){.loc-role-manager{background:color-mix(in oklch,var(--state-warning)12%,transparent)}}.loc-role-employee{background:var(--brand-primary);color:var(--brand-primary)}@supports (color: color-mix(in lab, red, red)){.loc-role-employee{background:color-mix(in oklch,var(--brand-primary)12%,transparent)}}.loc-role-hr{background:var(--state-success);color:var(--state-success)}@supports (color: color-mix(in lab, red, red)){.loc-role-hr{background:color-mix(in oklch,var(--state-success)12%,transparent)}}.loc-employee-remove{display:flex;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;opacity:0;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items: center;width:1.5rem;height:1.5rem;transition:all .15s;font-size:1rem;line-height:1}.loc-employee-card:hover .loc-employee-remove{opacity:1}.loc-employee-remove:hover{background:var(--state-error);color:var(--state-error)}@supports (color: color-mix(in lab, red, red)){.loc-employee-remove:hover{background:color-mix(in oklch,var(--state-error)12%,transparent)}}.loc-granularity-chips{display:flex;flex-wrap:wrap;gap:.375rem}.loc-gran-chip{border-radius:var(--radius-sm);border:1px solid var(--input-border);background:var(--input-bg);color:var(--text-muted);cursor:pointer;padding:.375rem .75rem;transition:all .15s;font-size:.8125rem;font-weight:500}.loc-gran-chip:hover{border-color:var(--brand-primary);color:var(--brand-primary)}.loc-gran-chip.active{background:var(--brand-hover);border-color:var(--brand-primary);color:var(--brand-primary);font-weight:600}.loc-number-row{display:flex;align-items: center;gap:.5rem}.loc-number-input{border-radius:var(--radius-md);border:1px solid var(--input-border);font-size:var(--font-sm);outline:none;background:var(--input-bg);color:var(--text);box-sizing:border-box;width:5rem;padding:.5rem .75rem;transition:all .2s}.loc-number-input:focus{border-color:var(--brand-primary);box-shadow:var(--input-focus-ring)}.loc-number-unit{color:var(--text-muted);font-size:.8125rem}.loc-toggles{display:flex;flex-direction:column;gap:.5rem}.loc-toggle-item{display:flex;border-radius:var(--radius-md);background:var(--hover-bg-subtle);justify-content:space-between;align-items: center;padding:.75rem 1rem}.loc-toggle-label{display:flex;flex-direction:column;gap:.125rem}.loc-toggle-name{color:var(--text);font-size:.875rem;font-weight:500}.loc-toggle-hint{color:var(--text-muted);font-size:.75rem}.loc-booking-field{display:flex;flex-direction:column;gap:.25rem}.loc-booking-field-label{color:var(--text);font-size:.8125rem;font-weight:500}.loc-booking-divider{background:var(--border-subtle);height:1px;margin:.25rem 0}.loc-empty{color:var(--text-muted);text-align:center;margin:0;padding:1.5rem 1rem;font-size:.8125rem}.loc-empty-state{display:flex;text-align:center;border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--card-bg);flex-direction:column;justify-content:center;align-items: center;gap:1rem;padding:4rem 2rem}.loc-empty-state-icon{display:flex;border-radius:var(--radius-md);background:var(--brand-hover);color:var(--brand-primary);justify-content:center;align-items: center;width:3rem;height:3rem}.loc-empty-state-title{color:var(--text);margin:0;font-size:.9375rem;font-weight:600}.loc-empty-state-desc{color:var(--text-muted);margin:0;font-size:.8125rem}@media (max-width:768px){.loc-page{padding:1rem}.loc-layout{grid-template-columns:1fr}.loc-sidebar{position:static;max-height:250px}.loc-form-grid{grid-template-columns:1fr}.loc-header-card{flex-direction:column;gap:.75rem}.loc-employee-remove{opacity:1}.loc-save-bar{border-radius:var(--radius-lg)var(--radius-lg)0 0;margin-left:-1rem;margin-right:-1rem;padding:.75rem 1rem}}@media (max-width:480px){.loc-workdays{gap:.25rem}.loc-workday-btn{width:2.25rem;height:2.25rem;font-size:.6875rem}}.loc-sidebar-item:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.loc-workday-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.loc-gran-chip:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.loc-employee-remove:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.loc-section-header:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.loc-form-input:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}@media (prefers-reduced-motion:reduce){.loc-sidebar-item,.loc-workday-btn,.loc-section-header,.loc-employee-card{animation:none!important;transition:none!important}}.queue-filters{display:flex;gap:var(--space-3);margin-bottom:var(--space-5);flex-wrap:wrap;align-items: center}.queue-toolbar{display:flex;padding:var(--space-2)var(--space-1);margin-bottom:var(--space-2);align-items: center}.queue-check-label{display:flex;align-items: center;gap:var(--space-2);font-size:var(--font-sm);color:var(--text-muted);cursor:pointer;user-select:none;font-weight:500}.queue-check-label input[type=checkbox]{accent-color:var(--brand-primary);cursor:pointer;width:16px;height:16px}.queue-list-container{border:1px solid var(--card-border);border-radius:var(--radius-md);overflow:hidden;background:var(--card-bg);box-shadow:var(--card-shadow)}.queue-row{display:flex;align-items: center;gap:var(--space-3);padding:var(--space-4)var(--space-5);border-bottom:1px solid var(--border-subtle);animation:tm-fade-in-up .25s ease both;position:relative;transition:background .15s}.queue-row:last-child{border-bottom:none}.queue-row:hover{background:var(--hover-bg)}.queue-row--selected,.queue-row--selected:hover{background:var(--brand-hover)}.queue-row-check{display:flex;cursor:pointer;flex-shrink:0;justify-content:center;align-items: center}.queue-row-check input[type=checkbox]{accent-color:var(--brand-primary);cursor:pointer;width:16px;height:16px}.queue-row-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.queue-row-info{display:flex;flex-direction:column;flex:1;gap:2px;min-width:0}.queue-row-primary{display:flex;align-items: center;gap:var(--space-2)}.queue-row-title{font-size:var(--font-base);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}.queue-row-badge{font-size:var(--font-2xs);text-transform:uppercase;letter-spacing:.04em;border-radius:var(--radius-pill);background:var(--state-warning-bg);color:var(--state-warning);border:1px solid var(--state-warning-border);flex-shrink:0;padding:1px 8px;font-weight:600;line-height:1.6}.queue-row-meta{display:flex;align-items: center;gap:var(--space-1)var(--space-3);flex-wrap:wrap}.queue-row-meta-item{display:inline-flex;font-size:var(--font-xs);color:var(--text-muted);align-items: center;gap:4px}.queue-row-meta-item svg{opacity:.5;flex-shrink:0}.queue-row-date{text-align:right;font-size:var(--font-xs);color:var(--text-muted);white-space:nowrap;flex-shrink:0}.queue-row-actions{display:flex;gap:var(--space-1);opacity:0;flex-shrink:0;transition:opacity .15s}.queue-row:hover .queue-row-actions,.queue-row:focus-within .queue-row-actions{opacity:1}.queue-act{display:flex;border-radius:var(--radius-sm);cursor:pointer;color:var(--text-muted);background:0 0;border:1px solid #0000;justify-content:center;align-items: center;width:32px;height:32px;transition:all .15s}.queue-act:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.queue-act:disabled{opacity:.4;cursor:not-allowed}.queue-act-approve:hover:not(:disabled){background:var(--state-success-bg);border-color:var(--state-success-border);color:var(--state-success)}.queue-act-reject:hover:not(:disabled){background:var(--state-error-bg);border-color:var(--state-error-border);color:var(--state-error)}.queue-float-bar{position:fixed;bottom:var(--space-6);display:flex;align-items: center;gap:var(--space-3);padding:var(--space-3)var(--space-5);background:var(--popup-glass-bg);backdrop-filter:blur(var(--popup-glass-blur))saturate(150%);-webkit-backdrop-filter:blur(var(--popup-glass-blur))saturate(150%);border:1px solid var(--popup-glass-border);border-radius:var(--radius-pill);box-shadow:var(--popup-glass-shadow);z-index:var(--z-sticky);animation:queue-float-in .25s ease-out both;left:50%;transform:translate(-50%)}@keyframes queue-float-in{0%{opacity:0;transform:translate(-50%)translateY(12px)scale(.96)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}.queue-float-select{display:flex;align-items: center;gap:var(--space-2);font-size:var(--font-sm);color:var(--text);cursor:pointer;user-select:none;white-space:nowrap;font-weight:600}.queue-float-select input[type=checkbox]{accent-color:var(--brand-primary);cursor:pointer;width:16px;height:16px}.queue-float-divider{background:var(--border-subtle);flex-shrink:0;width:1px;height:20px}.queue-float-btn{display:inline-flex;align-items: center;gap:var(--space-2);font-size:var(--font-sm);border-radius:var(--radius-pill);cursor:pointer;white-space:nowrap;border:1px solid #0000;padding:.4rem .9rem;transition:all .2s;font-weight:600}.queue-float-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.queue-float-btn:disabled{opacity:.5;cursor:not-allowed}.queue-float-approve{background:var(--state-success-bg);color:var(--state-success);border-color:var(--state-success-border)}.queue-float-approve:hover:not(:disabled){background:var(--state-success);color:var(--brand-text);box-shadow:0 2px 12px oklch(.7 .15 140/.3)}.queue-float-approve:active:not(:disabled){transform:scale(.97)}.queue-float-reject{background:var(--state-error-bg);color:var(--state-error);border-color:var(--state-error-border)}.queue-float-reject:hover:not(:disabled){background:var(--state-error);color:var(--brand-text);box-shadow:0 2px 12px oklch(.7 .15 20/.3)}.queue-float-reject:active:not(:disabled){transform:scale(.97)}.queue-skeleton-list{display:flex;border:1px solid var(--card-border);border-radius:var(--radius-md);overflow:hidden;flex-direction:column;gap:2px}.queue-skeleton-row{border-radius:0;height:4rem}@media (max-width:640px){.queue-row{padding:var(--space-3);gap:var(--space-2);flex-wrap:wrap}.queue-row-date{text-align:left;order:10;width:100%;padding-left:28px}.queue-row-actions{opacity:1}.queue-float-bar{left:var(--space-3);right:var(--space-3);border-radius:var(--radius-md);justify-content:center;transform:none}@keyframes queue-float-in{0%{opacity:0;transform:translateY(12px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.queue-card-details{gap:var(--space-2);flex-direction:column}.queue-card-actions{flex-direction:column}.queue-btn{justify-content:center}}@media (prefers-reduced-motion:reduce){.queue-card{animation:none}}.img-upload{position:relative;display:flex;border:2px dashed var(--card-border);background:var(--input-bg);cursor:pointer;overflow:hidden;border-radius:.75rem;flex-direction:column;justify-content:center;align-items: center;gap:.5rem;transition:border-color .2s,background .2s}.img-upload:hover,.img-upload.drag-over{border-color:var(--brand-primary);background:var(--hover-bg)}.img-upload.has-preview{border-style:solid}.img-upload--square{width:100%;min-height:120px;padding:1.5rem}.img-upload--circle{border-radius:50%;width:120px;height:120px;padding:0}.img-upload--circle .img-upload-preview{border-radius:50%}.img-upload--banner{aspect-ratio:4;border-radius:.75rem;width:100%;min-height:140px;padding:1.5rem}.img-upload-input{display:none}.img-upload-placeholder{display:flex;pointer-events:none;flex-direction:column;align-items: center;gap:.375rem}.img-upload-icon{color:var(--text-muted);opacity:.5}.img-upload-label{color:var(--text-muted);font-size:.8125rem;font-weight:500}.img-upload-hint{color:var(--text-muted);opacity:.7;font-size:.6875rem}.img-upload-preview{position:absolute;object-fit:cover;width:100%;height:100%;inset:0}.img-upload-remove{position:absolute;display:flex;background:oklch(.3 0 0/.7);color:#fff;cursor:pointer;opacity:0;backdrop-filter:blur(4px);z-index:2;border:none;border-radius:50%;justify-content:center;align-items: center;width:24px;height:24px;transition:opacity .15s,background .15s;font-size:.75rem;font-weight:700;line-height:1;top:.375rem;right:.375rem}.img-upload:hover .img-upload-remove{opacity:1}.img-upload-remove:focus-visible{opacity:1}.img-upload-remove:hover{background:var(--state-error)}.img-upload--circle .img-upload-remove{top:0;right:0}.img-upload-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:.75rem;width:100%}.img-upload-grid-item{position:relative;aspect-ratio:4/3;overflow:hidden;border:1px solid var(--card-border);border-radius:.5rem}.img-upload-grid-item img{object-fit:cover;width:100%;height:100%}.img-upload-grid-item .img-upload-remove{opacity:0}.img-upload-grid-item:hover .img-upload-remove{opacity:1}.img-upload-grid-add{display:flex;aspect-ratio:4/3;border:2px dashed var(--card-border);background:var(--input-bg);cursor:pointer;color:var(--text-muted);border-radius:.5rem;justify-content:center;align-items: center;transition:border-color .2s,background .2s}.img-upload-grid-add:hover{border-color:var(--brand-primary);background:var(--hover-bg)}.img-upload-error{color:var(--state-error);margin-top:.25rem;font-size:.75rem}.img-upload.uploading{pointer-events:none;opacity:.6}.img-upload-spinner{border:2px solid var(--card-border);border-top-color:var(--brand-primary);animation:tm-spin .6s linear infinite;border-radius:50%;width:24px;height:24px}.sgp-backdrop{position:fixed;z-index:999;animation:sgpFadeIn .2s ease forwards;background:#00000059;inset:0}@keyframes sgpFadeIn{0%{opacity:0}to{opacity:1}}.sgp-panel{position:fixed;z-index:1000;display:flex;background:var(--popup-glass-bg);border-left:1px solid var(--popup-glass-border);box-shadow:var(--popup-glass-shadow);backdrop-filter:blur(var(--popup-glass-blur));-webkit-backdrop-filter:blur(var(--popup-glass-blur));animation:sgpSlideIn .3s cubic-bezier(.4,0,.2,1)forwards;flex-direction:column;width:340px;max-width:90vw;top:0;bottom:0;right:0}@keyframes sgpSlideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.sgp-header{display:flex;border-bottom:1px solid var(--border-subtle);flex-shrink:0;justify-content:space-between;align-items: center;padding:1.25rem 1.25rem 1rem}.sgp-title{color:var(--text);margin:0;font-size:1rem;font-weight:600}.sgp-close{display:flex;border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items: center;width:2rem;height:2rem;transition:background .15s,color .15s}.sgp-close:hover{background:var(--hover-bg-subtle,var(--brand-hover));color:var(--text)}.sgp-close:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sgp-list{overflow-y:auto;display:flex;flex-direction:column;flex:1;gap:.5rem;padding:.75rem}.sgp-empty{display:flex;text-align:center;flex-direction:column;justify-content:center;align-items: center;gap:.625rem;padding:2.5rem 1rem}.sgp-empty-title{font-size:var(--font-base);color:var(--text);margin:0;font-weight:600}.sgp-empty-desc{font-size:var(--font-sm);color:var(--text-muted);max-width:220px;margin:0;line-height:1.4}.sgp-card{border-radius:var(--radius-lg);border:1px solid var(--card-border);background:var(--card-bg);padding:.75rem;transition:box-shadow .2s,border-color .2s}.sgp-card:hover{border-color:var(--brand-border);box-shadow:0 2px 8px #0000000f}.sgp-card-main{display:flex;align-items: center;gap:.625rem}.sgp-card-color-wrap{position:relative;flex-shrink:0;width:1.5rem;height:1.5rem}.sgp-color-input{position:absolute;opacity:0;cursor:pointer;border:none;width:100%;height:100%;padding:0;inset:0}.sgp-color-dot{display:block;border-radius:var(--radius-sm);pointer-events:none;border:1.5px solid #ffffff1a;width:1.5rem;height:1.5rem;transition:transform .15s}.sgp-card-color-wrap:hover .sgp-color-dot{transform:scale(1.1)}.sgp-card-info{display:flex;flex-direction:column;flex:1;gap:.125rem;min-width:0}.sgp-name-input{font-size:var(--font-sm);color:var(--text);border-radius:var(--radius-sm);outline:none;background:0 0;border:1px solid #0000;width:100%;margin:-.125rem -.25rem;padding:.125rem .25rem;transition:border-color .2s,background .2s;font-weight:600}.sgp-name-input:hover{border-color:var(--input-border)}.sgp-name-input:focus{background:var(--input-bg);border-color:var(--brand-primary);box-shadow:0 0 0 2px var(--brand-primary)}@supports (color: color-mix(in lab, red, red)){.sgp-name-input:focus{box-shadow:0 0 0 2px color-mix(in oklch,var(--brand-primary)20%,transparent)}}.sgp-service-count{font-size:var(--font-xs);color:var(--text-muted);padding-left:.25rem}.sgp-card-actions{display:flex;flex-shrink:0;align-items: center}.sgp-delete-btn{display:flex;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;opacity:0;background:0 0;border:none;justify-content:center;align-items: center;width:1.75rem;height:1.75rem;transition:opacity .15s,color .15s,background .15s}.sgp-card:hover .sgp-delete-btn{opacity:1}.sgp-delete-btn:hover{color:var(--state-error);background:var(--state-error-bg)}.sgp-delete-btn:focus-visible{opacity:1;outline:2px solid var(--state-error);outline-offset:2px}.sgp-delete-confirm{display:flex;gap:.375rem}.sgp-delete-yes{font-size:var(--font-xs);border-radius:var(--radius-sm);background:var(--state-error);color:#fff;cursor:pointer;border:none;padding:.25rem .5rem;transition:opacity .15s;font-weight:600}.sgp-delete-yes:hover{opacity:.85}.sgp-delete-yes:disabled{opacity:.5;cursor:not-allowed}.sgp-delete-no{font-size:var(--font-xs);border-radius:var(--radius-sm);border:1px solid var(--card-border);color:var(--text-muted);cursor:pointer;background:0 0;padding:.25rem .5rem;transition:background .15s;font-weight:500}.sgp-delete-no:hover{background:var(--hover-bg-subtle,var(--brand-hover))}.sgp-footer{border-top:1px solid var(--border-subtle);flex-shrink:0;padding:.75rem 1.25rem 1.25rem}.sgp-add-btn{display:flex;border-radius:var(--radius-lg);border:1.5px dashed var(--card-border);color:var(--text-muted);font-size:var(--font-sm);cursor:pointer;background:0 0;justify-content:center;align-items: center;gap:.375rem;width:100%;padding:.625rem;transition:border-color .2s,color .2s,background .2s;font-weight:600}.sgp-add-btn:hover{border-color:var(--brand-primary);color:var(--brand-primary);background:var(--brand-hover)}.sgp-add-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sgp-add-row{display:flex;gap:.375rem}.sgp-add-input{border-radius:var(--radius-md);border:1px solid var(--input-border);background:var(--input-bg);color:var(--text);font-size:var(--font-sm);outline:none;flex:1;min-width:0;padding:.5rem .625rem;transition:border-color .2s}.sgp-add-input::placeholder{color:var(--text-muted);opacity:.55}.sgp-add-input:focus{border-color:var(--brand-primary);box-shadow:0 0 0 2px var(--brand-primary)}@supports (color: color-mix(in lab, red, red)){.sgp-add-input:focus{box-shadow:0 0 0 2px color-mix(in oklch,var(--brand-primary)20%,transparent)}}.sgp-add-confirm{border-radius:var(--radius-md);background:var(--brand-bg);color:var(--brand-text,#fff);font-size:var(--font-sm);cursor:pointer;border:none;padding:.5rem .75rem;transition:opacity .15s;font-weight:600}.sgp-add-confirm:hover{opacity:.9}.sgp-add-confirm:disabled{opacity:.5;cursor:not-allowed}.sgp-add-cancel{border-radius:var(--radius-md);border:1px solid var(--card-border);color:var(--text-muted);font-size:var(--font-sm);cursor:pointer;background:0 0;padding:.5rem .625rem;transition:background .15s;font-weight:500}.sgp-add-cancel:hover{background:var(--hover-bg-subtle,var(--brand-hover))}.svc-header-actions{display:flex;align-items: center;gap:.5rem}@media (max-width:640px){.svc-header-actions{gap:.25rem}.svc-header-actions .tm-btn{justify-content:center;gap:0;min-width:2.25rem;min-height:2.25rem;padding:.5rem;font-size:0}.svc-header-actions .tm-btn svg{flex-shrink:0;width:16px;height:16px}.svc-header-actions .tm-btn-primary{gap:.35rem;padding:.4rem .75rem;font-size:.78rem}.svc-header-actions .tm-btn-primary svg{width:14px;height:14px}.sgp-panel{width:100%;max-width:100vw}}.bundle-panel{width:420px}.bnd-card{border:1px solid var(--card-border);background:var(--card-bg);border-radius:.75rem;padding:.75rem 1rem;transition:opacity .2s}.bnd-card.inactive{opacity:.5}.bnd-card+.bnd-card{margin-top:.5rem}.bnd-card-header{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem}.bnd-card-title-row{display:flex;align-items: center;gap:.5rem;min-width:0}.bnd-card-name{font-size:var(--font-sm);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}.bnd-card-savings{color:var(--state-success);background:var(--state-success-bg);border:1px solid var(--state-success-border);border-radius:var(--radius-pill,999px);white-space:nowrap;padding:.0625rem .375rem;font-size:.65rem;font-weight:500}.bnd-card-meta{font-size:var(--font-xs);color:var(--text-muted);white-space:nowrap;display:flex;align-items: center;gap:.25rem}.bnd-card-dot{opacity:.4}.bnd-card-services{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.375rem}.bnd-service-chip{color:var(--text-muted);background:var(--hover-bg-subtle,var(--card-border));border-radius:var(--radius-pill,999px);padding:.125rem .5rem;font-size:.65rem;font-weight:500}.bnd-card-actions{display:flex;justify-content:flex-end;align-items: center;gap:.375rem;margin-top:.375rem}.bnd-add-form{display:flex;flex-direction:column;gap:.5rem}.bnd-edit-form{border:1px solid var(--brand-primary);background:var(--card-bg);border-radius:.75rem;padding:.75rem 1rem}.bnd-add-row{display:flex;gap:.375rem}.bnd-desc-input{resize:vertical;min-height:2.5rem;font-family:inherit;line-height:1.4}.bnd-color-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.bnd-card-top{display:flex;align-items: flex-start;gap:.625rem}.bnd-card-img{object-fit:cover;border:1px solid var(--card-border);border-radius:.5rem;flex-shrink:0;width:40px;height:40px}.bnd-card-info{flex:1;min-width:0}.bnd-card-desc{font-size:var(--font-xs);color:var(--text-muted);display:-webkit-box;-webkit-line-clamp:2;overflow:hidden;-webkit-box-orient:vertical;margin:.25rem 0 0;line-height:1.4}.bnd-edit-btn{display:inline-flex;border:1px solid var(--card-border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:.375rem;justify-content:center;align-items: center;width:26px;height:26px;padding:0;transition:all .15s}.bnd-edit-btn:hover{color:var(--brand-primary);border-color:var(--brand-primary);background:var(--brand-hover)}.bnd-field-row,.bnd-color-field{display:flex;flex-direction:column;gap:.25rem}.bnd-field-label{font-size:var(--font-xs);color:var(--text-muted);font-weight:500}.bnd-color-picker{display:flex;flex-wrap:wrap;align-items: center;gap:.25rem}.bnd-color-swatch{cursor:pointer;border:2px solid #0000;border-radius:50%;width:22px;height:22px;padding:0;transition:border-color .15s,transform .15s}.bnd-color-swatch:hover{transform:scale(1.15)}.bnd-color-swatch.active{border-color:var(--text);box-shadow:0 0 0 2px var(--card-bg)}.bnd-color-custom{border:1px solid var(--card-border);cursor:pointer;background:0 0;border-radius:50%;width:22px;height:22px;padding:0}.bnd-color-clear{border:1px solid var(--card-border);cursor:pointer;color:var(--text-muted);display:inline-flex;background:0 0;border-radius:50%;justify-content:center;align-items: center;width:22px;height:22px;padding:0;transition:color .15s,border-color .15s;font-size:.75rem}.bnd-color-clear:hover{color:var(--state-error);border-color:var(--state-error)}.bnd-toggle-field{display:flex;justify-content:space-between;align-items: center;gap:.5rem}.bnd-image-field{display:flex;flex-direction:column;gap:.25rem}@media (max-width:640px){.bundle-panel{width:100%;max-width:100vw}}.res-m-section{display:flex;gap:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--border-subtle);flex-direction:column}.res-m-section:last-of-type{border-bottom:none;padding-bottom:0}.res-m-section-title{font-size:var(--font-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin:0;font-weight:600;line-height:1}.res-m-identity-row{display:flex;align-items: flex-start;gap:var(--space-4)}.res-m-active-pill{display:flex;cursor:pointer;flex-shrink:0;align-items: center;gap:.5rem;padding-top:1.625rem}.res-m-active-pill input{position:absolute;opacity:0;width:0;height:0}.res-m-active-label{font-size:var(--font-sm);color:var(--text-muted);white-space:nowrap;user-select:none;font-weight:500}.res-toggle-track{position:relative;display:inline-block;border-radius:var(--radius-pill);background:var(--input-border);flex-shrink:0;width:2.5rem;height:1.375rem;transition:background .2s}.res-toggle-thumb{position:absolute;background:var(--toggle-color);border-radius:50%;width:1.125rem;height:1.125rem;transition:transform .2s;top:2px;left:2px;box-shadow:0 1px 3px #0003}.res-m-active-pill input:checked+.res-toggle-track{background:var(--brand-primary)}.res-m-active-pill input:checked+.res-toggle-track .res-toggle-thumb{transform:translate(1.125rem)}.res-m-readonly-field{display:flex;border-radius:var(--radius-sm);background:var(--hover-bg-subtle);color:var(--text-muted);font-size:var(--font-sm);border:1px solid var(--border-subtle);align-items: center;gap:.5rem;padding:.625rem .75rem}.res-m-section-desc{font-size:var(--font-sm);color:var(--text-muted);margin:-.25rem 0 0;line-height:1.4}.res-m-hint{font-size:var(--font-xs);color:var(--text-muted);margin:var(--space-1)0 0;line-height:1.3}.res-m-type-row{display:flex;gap:var(--space-4)}.res-m-type-chips{display:flex;flex-wrap:wrap;gap:.375rem}.res-m-type-chip{display:inline-flex;font-size:var(--font-xs);color:var(--text-muted);border:1px solid var(--border-subtle);border-radius:var(--radius-pill);cursor:pointer;text-transform:capitalize;background:0 0;align-items: center;padding:.3125rem .75rem;transition:all .15s;font-weight:500}.res-m-type-chip:hover{color:var(--text);border-color:var(--text-muted);background:var(--hover-bg-subtle)}.res-m-type-chip.active{color:var(--brand-text);background:var(--brand-primary);border-color:var(--brand-primary);box-shadow:0 1px 4px var(--brand-primary);font-weight:600}@supports (color: color-mix(in lab, red, red)){.res-m-type-chip.active{box-shadow:0 1px 4px color-mix(in oklch,var(--brand-primary)30%,transparent)}}.res-m-type-chip:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.res-m-day-chips{display:flex;flex-wrap:wrap;gap:.375rem}.res-m-day-chip{display:inline-flex;font-size:var(--font-xs);color:var(--text-muted);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);cursor:pointer;background:0 0;justify-content:center;align-items: center;width:2.75rem;height:2rem;transition:all .15s;font-weight:500}.res-m-day-chip:hover{color:var(--text);border-color:var(--text-muted);background:var(--hover-bg-subtle)}.res-m-day-chip.active{color:var(--brand-text);background:var(--brand-primary);border-color:var(--brand-primary);font-weight:600}.res-m-day-chip:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.res-m-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.res-m-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3)}@media (max-width:640px){.res-m-identity-row{gap:var(--space-3);flex-direction:column}.res-m-active-pill{padding-top:0}.res-m-grid-2,.res-m-grid-3{grid-template-columns:1fr}}.res-catalog{display:flex;gap:var(--space-8);flex-direction:column}.res-group-section{display:flex;gap:var(--space-4);animation:resFadeIn .3s ease both;flex-direction:column}@keyframes resFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.res-group-header{display:flex;padding:var(--space-2);border-bottom:1px solid var(--border-subtle);border-radius:var(--radius-sm);cursor:pointer;user-select:none;align-items: center;gap:.625rem;transition:background .15s}.res-group-header:hover{background:var(--hover-bg-subtle)}.res-group-header:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.res-group-chevron{color:var(--text-muted);flex-shrink:0;transition:transform .2s}.res-group-chevron-open{transform:rotate(90deg)}.res-group-icon{color:var(--text-muted);flex-shrink:0}.res-group-label{font-size:var(--font-sm);color:var(--text);letter-spacing:.01em;font-weight:600}.res-group-count{font-size:var(--font-xs);color:var(--text-muted);margin-left:auto;font-weight:500}.res-group-add{display:flex;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;opacity:0;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items: center;width:1.625rem;height:1.625rem;padding:0;transition:all .15s}.res-group-header:hover .res-group-add{opacity:1}@media (hover:none){.res-group-add{opacity:1}}.res-group-add:hover{background:var(--brand-primary);color:var(--brand-primary)}@supports (color: color-mix(in lab, red, red)){.res-group-add:hover{background:color-mix(in oklch,var(--brand-primary)14%,transparent)}}.res-group-add:focus-visible{outline:2px solid var(--brand-primary);outline-offset:1px;opacity:1}.res-group-empty{display:flex;align-items: center;gap:var(--space-3);padding:var(--space-4)var(--space-2);color:var(--text-muted);font-size:var(--font-sm);font-style:italic}.res-group-empty-add{color:var(--brand-primary);cursor:pointer;font-size:var(--font-sm);text-decoration:underline;text-underline-offset:2px;background:0 0;border:none;padding:0;font-weight:600}.res-group-empty-add:hover{opacity:.8}.res-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--space-4)}.res-card{position:relative;display:flex;border:1px solid var(--card-border);background:var(--card-bg);cursor:pointer;overflow:hidden;border-radius:14px;flex-direction:column;transition:transform .2s,box-shadow .2s,border-color .2s}.res-card:hover{box-shadow:var(--card-shadow);border-color:var(--brand-primary);transform:translateY(-2px)}@supports (color: color-mix(in lab, red, red)){.res-card:hover{border-color:color-mix(in oklch,var(--brand-primary)30%,var(--card-border))}}.res-card:active{transform:translateY(0)}.res-card:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.res-card-inactive{opacity:.55}.res-card-inactive:hover{opacity:.8}.res-card-body{display:flex;gap:var(--space-3);padding:var(--space-4);flex-direction:column}.res-card-top{display:flex;justify-content:space-between;align-items: flex-start;gap:var(--space-2);min-height:1.5rem}.res-card-identity{display:flex;align-items: center;gap:.625rem;min-width:0}.res-card-icon{display:flex;background:var(--hover-bg-subtle);color:var(--text-muted);border-radius:8px;flex-shrink:0;justify-content:center;align-items: center;width:2rem;height:2rem}.res-card-name{font-size:var(--font-sm);color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.res-card-desc{font-size:var(--font-xs);color:var(--text-muted);display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;-webkit-box-orient:vertical;margin:0;line-height:1.4}.res-card-meta{display:flex;flex-wrap:wrap;gap:.375rem}.res-card-badge{display:inline-flex;letter-spacing:.02em;border-radius:9999px;align-items: center;padding:.125rem .5rem;font-size:.6875rem;font-weight:600}.res-card-badge-active{background:var(--state-success-bg);color:var(--state-success);border:1px solid var(--state-success-border)}.res-card-badge-inactive{background:var(--state-warning-bg);color:var(--state-warning);border:1px solid var(--state-warning-border)}.res-card-actions{display:flex;opacity:0;gap:.25rem;transition:opacity .15s}.res-card:hover .res-card-actions{opacity:1}@media (hover:none){.res-card-actions{opacity:1}}.res-card-action{display:flex;color:var(--text-muted);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;justify-content:center;align-items: center;width:1.75rem;height:1.75rem;padding:0;transition:all .15s}.res-card-action:hover{background:var(--hover-bg-subtle);color:var(--text)}.res-card-action-danger:hover{background:var(--state-error-bg);color:var(--state-error)}.res-card-action:focus-visible{outline:2px solid var(--brand-primary);outline-offset:1px}.res-empty{display:flex;justify-content:center;align-items: center;gap:var(--space-4);padding:var(--space-16)var(--space-4);text-align:center;flex-direction:column}.res-empty-icon{display:flex;background:var(--hover-bg-subtle);color:var(--text-muted);border-radius:1rem;justify-content:center;align-items: center;width:4rem;height:4rem}.res-empty-title{font-size:var(--font-base);color:var(--text);margin:0;font-weight:600}.res-empty-desc{font-size:var(--font-sm);color:var(--text-muted);margin:.25rem 0 0;line-height:1.5}.res-skeleton-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--space-4)}.res-skeleton-card{background:var(--card-border);animation:resPulse 1.5s ease-in-out infinite;border-radius:14px;height:7rem}@keyframes resPulse{0%,to{opacity:1}50%{opacity:.5}}@media (max-width:640px){.res-grid,.res-skeleton-grid{grid-template-columns:1fr}}.res-util-panel{border:1px solid var(--card-border);background:var(--card-bg);overflow:hidden;margin-bottom:var(--space-2);border-radius:14px}.res-util-toggle{display:flex;padding:var(--space-4)var(--space-5);color:var(--text);cursor:pointer;font-size:var(--font-sm);text-align:left;background:0 0;border:none;align-items: center;gap:.625rem;width:100%;transition:background .15s;font-weight:600}.res-util-toggle:hover{background:var(--hover-bg-subtle)}.res-util-toggle:focus-visible{outline:2px solid var(--brand-primary);outline-offset:-2px}.res-util-toggle-label{flex:1}.res-util-chevron{color:var(--text-muted);transition:transform .2s}.res-util-chevron-open{transform:rotate(90deg)}.res-util-body{padding:0 var(--space-5)var(--space-5);display:flex;gap:var(--space-5);animation:resUtilFadeIn .2s ease;flex-direction:column}@keyframes resUtilFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.res-util-controls{display:flex;align-items: center;gap:var(--space-3);flex-wrap:wrap}.res-util-select{border-radius:var(--radius-sm);font-size:var(--font-xs);cursor:pointer;max-width:200px;padding:.375rem .75rem;font-weight:500}.res-util-range-tabs{display:flex;background:var(--hover-bg-subtle);border-radius:var(--radius-sm);gap:2px;padding:2px}.res-util-range-tab{font-size:var(--font-xs);color:var(--text-muted);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:.3rem .625rem;transition:background .15s,color .15s;font-weight:500}.res-util-range-tab:hover:not(.active){color:var(--text);background:var(--brand-primary)}@supports (color: color-mix(in lab, red, red)){.res-util-range-tab:hover:not(.active){background:color-mix(in oklch,var(--brand-primary)8%,transparent)}}.res-util-range-tab.active{background:var(--brand-primary);color:var(--brand-text);box-shadow:0 1px 4px var(--brand-primary);font-weight:600}@supports (color: color-mix(in lab, red, red)){.res-util-range-tab.active{box-shadow:0 1px 4px color-mix(in oklch,var(--brand-primary)30%,transparent)}}.res-util-range-tab:focus-visible{outline:2px solid var(--brand-primary);outline-offset:-2px}.res-util-summary{display:flex;gap:var(--space-4);flex-wrap:wrap}.res-util-stat{display:flex;flex-direction:column;gap:.25rem;min-width:80px}.res-util-stat-value{color:var(--text);font-size:1.25rem;font-weight:700;line-height:1.2}.res-util-stat-name{font-size:var(--font-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px;font-weight:600}.res-util-stat-label{font-size:var(--font-xs);color:var(--text-muted);font-weight:500}.res-util-bars{display:flex;gap:var(--space-4);flex-direction:column}.res-util-bar-row{display:flex;flex-direction:column;gap:.375rem}.res-util-bar-header{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-2)}.res-util-bar-name{font-size:var(--font-sm);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}.res-util-bar-pct{font-size:var(--font-sm);flex-shrink:0;font-weight:700}.res-util-bar-track{background:var(--hover-bg-subtle);overflow:hidden;border-radius:3px;height:6px}.res-util-bar-fill{border-radius:3px;min-width:2px;height:100%;transition:width .5s cubic-bezier(.4,0,.2,1)}.res-util-bar-meta{display:flex;gap:var(--space-3);font-size:var(--font-xs);color:var(--text-muted)}.res-util-loading{display:flex;gap:var(--space-4);flex-direction:column}.res-util-loading-bar{border-radius:var(--radius-sm);background:var(--card-border);animation:resPulse 1.5s ease-in-out infinite;height:2rem}.res-util-empty{padding:var(--space-6)0;text-align:center;font-size:var(--font-sm);color:var(--text-muted);font-style:italic}@media (max-width:640px){.res-util-controls{flex-direction:column;align-items:stretch}.res-util-select{max-width:none}.res-util-summary{gap:var(--space-3)}.res-util-stat{min-width:60px}}.avail-preview{border:1px solid var(--card-border);background:var(--card-bg);border-radius:.75rem;margin-top:.75rem;padding:1rem 1.25rem}.avail-preview-title{letter-spacing:.03em;text-transform:uppercase;color:var(--text-muted);margin:0 0 .75rem;font-size:.75rem;font-weight:600}.avail-preview-strip{display:flex;justify-content:space-between;gap:.375rem}.avail-preview-col{display:flex;flex-direction:column;flex:1;align-items: center;gap:.375rem;min-width:0}.avail-preview-day-label{color:var(--text-muted);font-size:.6875rem;font-weight:500;line-height:1}.avail-preview-col.active .avail-preview-day-label{color:var(--text)}.avail-preview-bar{position:relative;background:var(--input-bg);overflow:hidden;border-radius:.375rem;width:100%;height:4.5rem}.avail-preview-col.disabled .avail-preview-bar{opacity:.3;background:repeating-linear-gradient(-45deg,var(--input-bg),var(--input-bg)3px,var(--card-border)3px,var(--card-border)6px)}.avail-preview-fill{position:absolute;border-radius:.25rem;transition:top .2s,height .2s;left:0;right:0}.avail-preview-summary{color:var(--text-muted);text-align:center;margin:.75rem 0 0;font-size:.8125rem;line-height:1.4}.avail-tabs{display:flex;background:var(--hover-bg-subtle);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);align-items: center;gap:.125rem;padding:.15rem}.avail-tab{font-size:var(--font-xs);color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.3rem .7rem;transition:all .15s;font-family:inherit;font-weight:600}.avail-tab:focus-visible{outline:2px solid var(--brand-primary);outline-offset:-2px}.avail-tab:hover{color:var(--text)}.avail-tab.active{background:var(--brand-hover);color:var(--brand-primary);box-shadow:0 1px 3px oklch(0 0 0/.08)}.avail-date-nav{display:flex;align-items: center;gap:.5rem}.avail-date-btn{display:flex;border:1px solid var(--card-border);border-radius:var(--radius-sm);background:var(--card-bg);color:var(--text-muted);cursor:pointer;justify-content:center;align-items: center;width:2rem;height:2rem;transition:all .15s;font-family:inherit}.avail-date-btn:hover{color:var(--text);background:var(--hover-bg)}.avail-date-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:-2px}.avail-date-label{font-size:var(--font-sm);color:var(--text);text-align:center;min-width:10rem;font-weight:600}.avail-today-btn{border:1px solid var(--card-border);border-radius:var(--radius-sm);background:var(--card-bg);font-size:var(--font-xs);color:var(--text-muted);cursor:pointer;padding:.25rem .6rem;transition:all .15s;font-family:inherit;font-weight:600}.avail-today-btn:hover{color:var(--text);background:var(--hover-bg)}.avail-toolbar{display:flex;flex-wrap:wrap;align-items: center;gap:1rem}.avail-container{--avail-row-h:56px;border-radius:var(--radius-lg);border:1px solid var(--glass-border);background:var(--glass-bg);box-shadow:var(--shadow-md);backdrop-filter:blur(12px)saturate(150%);-webkit-backdrop-filter:blur(12px)saturate(150%);overflow:hidden}.avail-scroll{overflow-x:auto;position:relative}.avail-header{display:flex;border-bottom:1px solid var(--card-border);position:sticky;z-index:4;background:var(--glass-bg);min-width:max-content;top:0}.avail-header-name{font-size:var(--font-2xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;display:flex;border-right:1px solid var(--card-border);position:sticky;z-index:5;background:var(--glass-bg);flex-shrink:0;align-items: center;width:160px;min-width:160px;padding:.5rem .75rem;font-weight:600;left:0}.avail-header-hours{display:flex;background:var(--card-bg);flex:1}.avail-hour-label{font-size:var(--font-2xs);color:var(--text-muted);text-align:center;border-right:1px solid var(--border-subtle);display:flex;letter-spacing:.02em;flex:1;justify-content:center;align-items: center;min-width:60px;padding:.4rem 0;font-weight:600}.avail-hour-label:nth-child(2n){opacity:.65;font-weight:500}.avail-hour-label:last-child{border-right:none}.avail-row{display:flex;height:var(--avail-row-h);border-bottom:1px solid var(--border-subtle);min-width:max-content;transition:background .15s}.avail-row:last-child{border-bottom:none}.avail-row:nth-child(2n){background:var(--hover-bg-subtle)}.avail-row:hover,.avail-row:hover .avail-row-name{background:var(--hover-bg)}.avail-row-name{display:flex;border-right:1px solid var(--card-border);position:sticky;z-index:3;background:var(--glass-bg);overflow:hidden;flex-shrink:0;align-items: center;gap:.5rem;width:160px;min-width:160px;padding:.5rem .75rem;transition:background .15s;left:0}.avail-row-name-text{display:flex;flex-direction:column;gap:.125rem;min-width:0}.avail-row-emp-name{font-size:var(--font-sm);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}.avail-row-shift-time{font-size:var(--font-2xs);color:var(--text-muted)}.avail-track{position:relative;flex:1;height:100%}.avail-shift-band{position:absolute;background:linear-gradient(180deg,var(--brand-hover)0%,oklch(.5 .05 260/.12)100%);border:1px solid var(--brand-border);opacity:.55;border-radius:8px;top:6px;bottom:6px}.avail-break-band{position:absolute;background:repeating-linear-gradient(-45deg,transparent,transparent 3px,var(--card-border)3px,var(--card-border)5px);opacity:.4;z-index:1;border-radius:6px;top:6px;bottom:6px}.avail-appt{position:absolute;background:var(--brand-primary);z-index:2;display:flex;overflow:hidden;cursor:default;box-shadow:0 1px 3px oklch(0 0 0/.15),inset 0 1px 0 oklch(1 0 0/.1);border-radius:6px;align-items: center;padding:0 .5rem;transition:opacity .15s,box-shadow .15s;top:8px;bottom:8px}.avail-appt:hover{opacity:1;box-shadow:0 2px 8px oklch(0 0 0/.25),inset 0 1px 0 oklch(1 0 0/.12)}.avail-appt-label{font-size:var(--font-2xs);color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 2px oklch(0 0 0/.3);font-weight:600}.avail-free{position:absolute;z-index:1;border:1px dashed var(--state-success-border);background:var(--state-success-bg);opacity:.35;border-radius:6px;top:8px;bottom:8px}.avail-dayoff{position:absolute;display:flex;background:repeating-linear-gradient(-45deg,transparent,transparent 4px,var(--card-border)4px,var(--card-border)7px);opacity:.3;z-index:1;justify-content:center;align-items: center;inset:0}.avail-dayoff-label{position:absolute;font-size:var(--font-2xs);color:var(--text-muted);z-index:2;white-space:nowrap;background:var(--card-bg);border-radius:4px;padding:.125rem .5rem;font-weight:600;top:50%;left:50%;transform:translate(-50%,-50%)}.avail-offduty{position:absolute;font-size:var(--font-2xs);color:var(--text-muted);opacity:.6;white-space:nowrap;top:50%;left:50%;transform:translate(-50%,-50%)}.avail-status-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.avail-status-dot.available{background:var(--state-success)}.avail-status-dot.busy{background:var(--state-warning)}.avail-status-dot.off{background:var(--text-muted);opacity:.5}.avail-now-line{position:absolute;background:var(--state-error);z-index:10;pointer-events:none;box-shadow:0 0 6px oklch(.65 .25 25/.4);width:2px;top:0;bottom:0}.avail-now-line:before{content:"";position:absolute;background:var(--state-error);box-shadow:0 0 4px oklch(.65 .25 25/.5);border-radius:50%;width:10px;height:10px;top:-4px;left:-4px}.avail-grid-lines{position:absolute;pointer-events:none;z-index:0;inset:0}.avail-grid-line{position:absolute;background:var(--border-subtle);opacity:.35;width:1px;top:0;bottom:0}.avail-grid-line:nth-child(2n){opacity:.18;border-left:1px dashed var(--border-subtle);background:0 0;width:0}.avail-summary{display:flex;font-size:var(--font-xs);color:var(--text-muted);border-top:1px solid var(--card-border);background:var(--card-bg);flex-wrap:wrap;align-items: center;gap:1.25rem;padding:.75rem 1rem}.avail-summary-stat{display:inline-flex;align-items: center;gap:.375rem}.avail-summary-num{font-weight:700;font-size:var(--font-sm);color:var(--text)}.avail-skeleton-row{display:flex;border-bottom:1px solid var(--border-subtle);min-height:52px}.avail-skeleton-name{border-right:1px solid var(--card-border);display:flex;align-items: center;gap:.5rem;width:160px;min-width:160px;padding:.75rem}.avail-skeleton-circle{background:var(--card-border);animation:avail-pulse 1.5s ease-in-out infinite;border-radius:50%;width:28px;height:28px}.avail-skeleton-bar{background:var(--card-border);animation:avail-pulse 1.5s ease-in-out infinite;border-radius:4px;height:12px}.avail-skeleton-track{display:flex;flex:1;align-items: center;padding:0 1rem}@keyframes avail-pulse{0%,to{opacity:.4}50%{opacity:.75}}.avail-tooltip{position:fixed;z-index:100;display:flex;overflow:hidden;border-radius:var(--radius-md);background:var(--popup-glass-bg);border:1px solid var(--popup-glass-border);box-shadow:var(--popup-glass-shadow);backdrop-filter:blur(var(--popup-glass-blur));-webkit-backdrop-filter:blur(var(--popup-glass-blur));color:var(--text);pointer-events:none;animation:dropdownIn .15s ease-out forwards;min-width:160px;max-width:260px}.avail-tooltip-accent{flex-shrink:0;width:4px}.avail-tooltip-body{display:flex;flex-direction:column;gap:.375rem;padding:.625rem .75rem}.avail-tooltip-service{display:flex;font-weight:600;font-size:var(--font-sm);color:var(--text);align-items: center;gap:.375rem}.avail-tooltip-service svg{opacity:.6;flex-shrink:0}.avail-tooltip-row{display:flex;font-size:var(--font-xs);color:var(--text-muted);align-items: center;gap:.375rem}.avail-tooltip-row svg{opacity:.5;flex-shrink:0}@media (max-width:767px){.avail-container{display:none}.avail-toolbar{gap:.5rem}}.avail-mobile-list{display:none}@media (max-width:767px){.avail-mobile-list{display:flex;flex-direction:column;gap:.5rem}}.avail-mobile-card{display:flex;border-radius:var(--radius-md);border:1px solid var(--card-border);background:var(--card-bg);align-items: center;gap:.75rem;padding:.75rem 1rem;transition:background .15s}.avail-mobile-card-info{flex:1;min-width:0}.avail-mobile-card-name{font-size:var(--font-sm);color:var(--text);font-weight:500}.avail-mobile-card-shift{font-size:var(--font-2xs);color:var(--text-muted);margin-top:.125rem}.avail-mobile-card-badge{border-radius:999px;flex-shrink:0;padding:.2rem .5rem;font-size:.625rem;font-weight:600}.avail-mobile-card-badge.available{background:var(--state-success-bg);color:var(--state-success);border:1px solid var(--state-success-border)}.avail-mobile-card-badge.busy{background:var(--state-warning-bg);color:var(--state-warning);border:1px solid var(--state-warning-border)}.avail-mobile-card-badge.off{background:var(--hover-bg-subtle);color:var(--text-muted);border:1px solid var(--border-subtle)}.avail-empty{display:flex;text-align:center;flex-direction:column;justify-content:center;align-items: center;gap:.75rem;padding:3rem 1rem}.avail-empty-icon{opacity:.3}.avail-empty-text{font-size:var(--font-sm);color:var(--text);font-weight:500}.avail-empty-hint{font-size:var(--font-2xs);color:var(--text-muted)}@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-font-weight{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}@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}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}@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-font-weight: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;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0}}}.gs-container{position:relative;padding:0 var(--space-3,.75rem);margin-bottom:var(--space-2,.5rem)}.gs-input-wrap{display:flex;border-radius:var(--radius-sm,8px);border:1px solid var(--border-subtle);background:var(--input-bg);cursor:text;align-items: center;gap:.5rem;padding:.4rem .625rem;transition:all .2s}.gs-input-wrap:hover{border-color:var(--glass-border);background:var(--hover-bg-subtle)}.gs-input-focused{border-color:var(--brand-primary);box-shadow:0 0 0 3px oklch(.55 .15 220/.12);background:var(--input-bg)}.gs-search-icon{color:var(--text-muted);opacity:.6;flex-shrink:0;transition:opacity .15s}.gs-input-focused .gs-search-icon{opacity:1;color:var(--brand-primary)}.gs-input{outline:none;color:var(--text);font-size:var(--font-sm,.8125rem);background:0 0;border:none;flex:1;min-width:0;font-family:inherit;line-height:1.4}.gs-input::placeholder{color:var(--placeholder-color)}.gs-kbd{letter-spacing:.02em;border:1px solid var(--border-subtle);background:var(--hover-bg-subtle);color:var(--text-muted);opacity:.6;pointer-events:none;user-select:none;border-radius:4px;flex-shrink:0;padding:.125rem .35rem;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,monospace;font-size:.625rem;font-weight:600;line-height:1}.gs-clear-btn{display:flex;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items: center;width:18px;height:18px;padding:0;transition:all .15s}.gs-clear-btn:hover{color:var(--text);background:var(--hover-bg)}.gs-clear-btn svg{width:12px;height:12px}.gs-results-panel{position:absolute;top:calc(100% + 6px);left:var(--space-3,.75rem);right:var(--space-3,.75rem);z-index:200;border-radius:var(--radius-md,12px);border:1px solid var(--popup-glass-border);background:var(--popup-glass-bg);backdrop-filter:blur(var(--popup-glass-blur));-webkit-backdrop-filter:blur(var(--popup-glass-blur));box-shadow:var(--popup-glass-shadow);overflow:hidden;animation:gsSlideIn .2s cubic-bezier(.16,1,.3,1)}@keyframes gsSlideIn{0%{opacity:0;transform:translateY(-4px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.gs-loading{display:flex;justify-content:center;align-items: center;gap:6px;padding:1.25rem}.gs-loading-dot{background:var(--brand-primary);animation:gsPulse 1s ease-in-out infinite;border-radius:50%;width:5px;height:5px}.gs-loading-dot:nth-child(2){animation-delay:.15s}.gs-loading-dot:nth-child(3){animation-delay:.3s}@keyframes gsPulse{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1)}}.gs-empty{text-align:center;font-size:var(--font-sm,.8125rem);color:var(--text-muted);padding:1.25rem}.gs-results-list{overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb)transparent;max-height:380px;padding:.375rem}.gs-results-list::-webkit-scrollbar{width:4px}.gs-results-list::-webkit-scrollbar-track{background:0 0}.gs-results-list::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:999px}.gs-result-item{border-radius:var(--radius-sm,8px);overflow:hidden;transition:background .15s}.gs-result-item+.gs-result-item{margin-top:2px}.gs-result-main{display:flex;cursor:pointer;border-radius:var(--radius-sm,8px);align-items: center;gap:.625rem;padding:.5rem .625rem;transition:background .15s}.gs-result-active .gs-result-main,.gs-result-main:hover{background:var(--hover-bg)}.gs-result-icon{display:flex;background:var(--hover-bg-subtle);border:1px solid var(--border-subtle);border-radius:.375rem;flex-shrink:0;justify-content:center;align-items: center;width:28px;height:28px;transition:all .2s}.gs-result-icon svg{width:14px;height:14px}.gs-result-active .gs-result-icon,.gs-result-main:hover .gs-result-icon{background:var(--hover-bg);border-color:var(--glass-border)}.gs-result-text{display:flex;flex-direction:column;flex:1;gap:.05rem;min-width:0}.gs-result-title{font-size:var(--font-sm,.8125rem);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600;line-height:1.3}.gs-result-subtitle{font-size:var(--font-xs,.75rem);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.gs-result-right{display:flex;flex-shrink:0;align-items: center;gap:.375rem}.gs-result-type{font-size:var(--font-2xs,.6875rem);color:var(--text-muted);opacity:.6;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;font-weight:600}.gs-expand-btn{display:flex;color:var(--text-muted);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:4px;justify-content:center;align-items: center;width:22px;height:22px;padding:0;transition:all .15s}.gs-result-active .gs-expand-btn,.gs-result-item:hover .gs-expand-btn{opacity:1}.gs-expand-btn:hover{color:var(--text);background:var(--hover-bg)}.gs-expand-chevron{transition:transform .2s}.gs-chevron-open{transform:rotate(180deg)}.gs-detail-panel{animation:gsDetailIn .2s ease;padding:.25rem .625rem .625rem calc(1.25rem + 28px)}@keyframes gsDetailIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.gs-detail-grid{display:flex;flex-direction:column;gap:.25rem}.gs-detail-row{display:flex;font-size:var(--font-xs,.75rem);align-items: center;gap:.5rem;line-height:1.4}.gs-detail-label{color:var(--text-muted);flex-shrink:0;width:56px;font-weight:500}.gs-detail-value{color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gs-tag{display:inline-flex;border-radius:var(--radius-pill,999px);font-size:var(--font-2xs,.6875rem);align-items: center;padding:.1rem .4rem;font-weight:600;line-height:1.4}.gs-tag-regular{background:var(--state-info-bg);color:var(--state-info);border:1px solid var(--state-info-border)}.gs-tag-active{background:var(--state-success-bg);color:var(--state-success);border:1px solid var(--state-success-border)}.gs-tag-inactive{background:var(--state-error-bg);color:var(--state-error);border:1px solid var(--state-error-border)}.gs-status-badge{display:inline-flex;border-radius:var(--radius-pill,999px);font-size:var(--font-2xs,.6875rem);text-transform:capitalize;align-items: center;padding:.1rem .4rem;font-weight:600;line-height:1.4}.gs-status-scheduled{background:var(--state-info-bg);color:var(--state-info)}.gs-status-confirmed{background:var(--state-success-bg);color:var(--state-success)}.gs-status-completed{background:var(--brand-hover);color:var(--brand-primary)}.gs-status-cancelled{background:var(--state-error-bg);color:var(--state-error)}.gs-status-noshow{background:var(--state-warning-bg);color:var(--state-warning)}.gs-color-dot{border:1px solid var(--border-subtle);border-radius:50%;flex-shrink:0;width:14px;height:14px}.gs-capitalize{text-transform:capitalize}.gs-results-footer{border-top:1px solid var(--border-subtle);display:flex;justify-content:center;align-items: center;padding:.375rem .625rem}.gs-results-footer span{font-size:var(--font-2xs,.6875rem);color:var(--text-muted);opacity:.5}.gs-results-footer kbd{background:var(--hover-bg-subtle);border:1px solid var(--border-subtle);border-radius:3px;margin:0 .1rem;padding:.05rem .25rem;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,monospace;font-size:.625rem;font-weight:600}:root.light .gs-input-wrap{border-color:oklch(.88 .008 220);background:oklch(.97 .004 220)}:root.light .gs-input-wrap:hover{border-color:oklch(.84 .01 220);background:oklch(.96 .006 220)}:root.light .gs-input-focused{border-color:var(--brand-primary);box-shadow:0 0 0 3px oklch(.55 .15 220/.1);background:oklch(1 0 0)}:root.light .gs-kbd{background:oklch(.96 .004 220);border-color:oklch(.88 .008 220)}:root.light .gs-result-icon{background:oklch(.97 .004 220);border-color:oklch(.9 .008 220)}:root.light .gs-result-active .gs-result-main,:root.light .gs-result-main:hover{background:oklch(.96 .006 220)}:root.light .gs-result-active .gs-result-icon,:root.light .gs-result-main:hover .gs-result-icon{background:oklch(.94 .008 220);border-color:oklch(.86 .01 220)}.gs-overlay{position:fixed;z-index:var(--z-modal,201);background:var(--bg);display:flex;animation:gsOverlayIn .2s ease forwards;flex-direction:column;margin:0;padding:0;inset:0}@keyframes gsOverlayIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.gs-overlay .gs-input-wrap{margin:env(safe-area-inset-top,.5rem).75rem 0;border-radius:var(--radius-md)}.gs-overlay .gs-results-panel{position:static;box-shadow:none;overflow-y:auto;-webkit-overflow-scrolling:touch;background:0 0;border:none;border-radius:0;flex:1;max-height:none;margin:0 .75rem}.gs-overlay-back{display:flex;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items: center;width:44px;height:44px;margin:-.4rem -.25rem -.4rem -.5rem;transition:color .15s}.gs-overlay-back:active{color:var(--text)}.dash-greeting{font-size:var(--font-2xl);color:var(--text);letter-spacing:-.025em;margin:0;font-weight:700;line-height:1.2}.dash-date{font-size:var(--font-sm);color:var(--text-muted);margin:var(--space-1)0 0}.dash-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4);margin-bottom:var(--space-6)}@media (max-width:1024px){.dash-stats{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.dash-stats{grid-template-columns:1fr}}.dash-stat-card{background:var(--glass-bg);backdrop-filter:blur(12px)saturate(150%);-webkit-backdrop-filter:blur(12px)saturate(150%);border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:var(--space-5);box-shadow:var(--shadow-md);display:flex;align-items: flex-start;gap:var(--space-4);transition:box-shadow .2s,transform .2s}.dash-stat-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-1px)}.dash-stat-icon{display:flex;border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items: center;width:44px;height:44px}.dash-stat-body{flex:1;min-width:0}.dash-stat-value{font-size:var(--font-2xl);color:var(--text);letter-spacing:-.025em;font-variant-numeric:tabular-nums;font-weight:700;line-height:1.1}.dash-stat-label{font-size:var(--font-sm);color:var(--text-muted);margin-top:var(--space-1)}.dash-actions{display:flex;gap:var(--space-2);margin-bottom:var(--space-6);flex-wrap:wrap}.dash-action-btn{display:inline-flex;align-items: center;gap:var(--space-2);border-radius:var(--radius-pill);border:1px solid var(--glass-border);background:var(--glass-bg);backdrop-filter:blur(8px)saturate(140%);-webkit-backdrop-filter:blur(8px)saturate(140%);color:var(--text);font-size:var(--font-sm);cursor:pointer;text-decoration:none;padding:.5rem 1rem;transition:all .2s;font-weight:500}.dash-action-btn:hover{background:var(--brand-hover);border-color:var(--brand-primary);color:var(--brand-primary)}.dash-action-btn:active{transform:scale(.97)}.dash-action-btn-primary{background:var(--brand-bg);color:var(--brand-text);box-shadow:var(--brand-shadow);backdrop-filter:none;-webkit-backdrop-filter:none;border-color:#0000}.dash-action-btn-primary:hover{background:var(--brand-bg);color:var(--brand-text);filter:brightness(1.08);box-shadow:var(--brand-shadow-hover);transform:translateY(-1px)}.dash-content{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6)}@media (min-width:1400px){.dash-content{grid-template-columns:1.2fr .8fr}}@media (max-width:768px){.dash-content{grid-template-columns:1fr}}.dash-section{background:var(--glass-bg);backdrop-filter:blur(12px)saturate(150%);-webkit-backdrop-filter:blur(12px)saturate(150%);border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:var(--space-6);box-shadow:var(--shadow-md)}.dash-section-title{font-size:var(--font-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin:0 0 var(--space-4);font-weight:600}.dash-schedule-list{display:flex;gap:var(--space-2);flex-direction:column}.dash-schedule-item{display:flex;align-items: center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-sm);background:var(--hover-bg-subtle);border:1px solid #0000;transition:all .15s}.dash-schedule-item:hover{background:var(--hover-bg);border-color:var(--glass-border)}.dash-schedule-color{border-radius:2px;flex-shrink:0;width:3px;height:2.25rem}.dash-schedule-time{font-size:var(--font-xs);color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap;min-width:5rem;font-weight:600}.dash-schedule-info{flex:1;min-width:0}.dash-schedule-title{font-size:var(--font-base);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}.dash-schedule-meta{font-size:var(--font-xs);color:var(--text-muted);margin-top:1px}.dash-schedule-status{flex-shrink:0}.dash-activity-list{display:flex;flex-direction:column}.dash-activity-item{display:flex;gap:var(--space-3);padding:var(--space-3)0;border-bottom:1px solid var(--border-subtle)}.dash-activity-item:last-child{border-bottom:none}.dash-activity-dot{background:var(--brand-primary);border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:.375rem}.dash-activity-body{flex:1;min-width:0}.dash-activity-text{font-size:var(--font-sm);color:var(--text);line-height:1.4}.dash-activity-text strong{font-weight:600}.dash-activity-time{font-size:var(--font-2xs);color:var(--text-muted);letter-spacing:.02em;margin-top:2px}@keyframes dash-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.dash-stagger>*{animation:dash-enter .3s ease both}.dash-stagger>:first-child{animation-delay:0s}.dash-stagger>:nth-child(2){animation-delay:50ms}.dash-stagger>:nth-child(3){animation-delay:.1s}.dash-stagger>:nth-child(4){animation-delay:.15s}@media (prefers-reduced-motion:reduce){.dash-stagger>*{animation:none}}.dash-top-services{margin-top:var(--space-2)}.dash-top-services-header{display:flex;margin-bottom:var(--space-3);justify-content:space-between;align-items: center}.dash-top-services-link{font-size:var(--font-xs);color:var(--brand-primary);text-decoration:none;transition:opacity .15s;font-weight:500}.dash-top-services-link:hover{opacity:.8}.dash-top-services-list{display:flex;gap:var(--space-2);flex-direction:column}.dash-top-svc-row{display:flex;align-items: center;gap:var(--space-3);padding:var(--space-2)var(--space-3);border-radius:var(--radius-md);border:1px solid var(--card-border);background:var(--card-bg);transition:background .15s}.dash-top-svc-row:hover{background:var(--hover-bg-subtle)}.dash-top-svc-rank{text-align:center;font-size:var(--font-lg);color:var(--text-muted);flex-shrink:0;width:1.5rem;font-weight:700}.dash-top-svc-dot{border-radius:50%;flex-shrink:0;width:.5rem;height:.5rem}.dash-top-svc-info{display:flex;flex-direction:column;flex:1;gap:.25rem;min-width:0}.dash-top-svc-name{font-size:var(--font-sm);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}.dash-top-svc-bar-bg{background:var(--input-bg);overflow:hidden;border-radius:2px;height:.25rem}.dash-top-svc-bar-fill{border-radius:2px;height:100%;transition:width .5s}.dash-top-svc-stats{display:flex;flex-direction:column;flex-shrink:0;align-items: flex-end;gap:.125rem}.dash-top-svc-count{font-size:var(--font-xs);color:var(--text);white-space:nowrap;font-weight:600}.dash-top-svc-revenue{font-size:var(--font-xs);color:var(--text-muted);white-space:nowrap}.dash-top-svc-warn{font-size:var(--font-sm);color:var(--state-warning);cursor:help;flex-shrink:0}@media (max-width:480px){.dash-top-svc-row{gap:var(--space-2);padding:var(--space-2)}.dash-top-svc-rank{font-size:var(--font-sm)}.dash-top-svc-bar-bg{display:none}}.mc-panel{position:fixed;z-index:var(--z-popover);border-radius:var(--radius-lg);border:1px solid var(--popup-glass-border);background:var(--popup-glass-bg);backdrop-filter:blur(var(--popup-glass-blur));-webkit-backdrop-filter:blur(var(--popup-glass-blur));box-shadow:var(--popup-glass-shadow);overflow:hidden;animation:mcFadeIn .2s ease forwards;isolation:isolate;width:260px;max-height:380px}@keyframes mcFadeIn{0%{opacity:0;transform:translateY(-4px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.mc-panel:before{content:"";position:absolute;background:color-mix(in oklch,var(--card-bg)60%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);mask-image:linear-gradient(#000 30%,#0000 100%);-webkit-mask-image:linear-gradient(#000 30%,#0000 100%);z-index:2;pointer-events:none;border-radius:var(--radius-lg)var(--radius-lg)0 0;height:12px;top:0;left:0;right:0}.mc-scroll{overflow-y:auto;scroll-behavior:smooth;max-height:380px;padding:0 .625rem .5rem}.mc-scroll::-webkit-scrollbar{width:4px}.mc-scroll::-webkit-scrollbar-track{background:0 0}.mc-scroll::-webkit-scrollbar-thumb{background:color-mix(in oklch,var(--text-muted)25%,transparent);border-radius:2px}.mc-month{margin-bottom:.25rem;padding-bottom:.5rem}.mc-month:last-child{margin-bottom:0;padding-bottom:.25rem}.mc-month-label{color:var(--text);text-transform:uppercase;letter-spacing:.04em;position:sticky;background:color-mix(in oklch,var(--card-bg)72%,transparent);backdrop-filter:blur(12px)saturate(140%);-webkit-backdrop-filter:blur(12px)saturate(140%);z-index:1;mask-image:linear-gradient(#000 70%,#0000 100%);-webkit-mask-image:linear-gradient(#000 70%,#0000 100%);padding:.5rem .25rem .75rem;font-size:.75rem;font-weight:700;top:0}.mc-day-headers{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;margin-bottom:2px}.mc-day-header{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;padding:.125rem 0;font-size:.625rem;font-weight:600}.mc-week-row{display:grid;grid-template-columns:repeat(7,1fr);border-radius:var(--radius-sm);transition:background .15s}.mc-week-highlighted{background:color-mix(in oklch,var(--brand-primary)12%,transparent)}.mc-day{display:flex;aspect-ratio:1;color:var(--text);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;justify-content:center;align-items: center;width:100%;padding:0;transition:background .12s,color .12s,transform .1s;font-size:.75rem;font-weight:500;line-height:1}.mc-day:hover{background:var(--hover-bg)}.mc-day:active{transform:scale(.9)}.mc-day-other{color:var(--text-muted);opacity:.4}.mc-day-today{color:var(--brand-primary);position:relative;font-weight:700}.mc-day-today:after{content:"";position:absolute;background:var(--brand-primary);border-radius:50%;width:4px;height:4px;bottom:2px;left:50%;transform:translate(-50%)}.mc-day-selected{background:var(--brand-primary);color:var(--brand-text);box-shadow:0 1px 4px color-mix(in oklch,var(--brand-primary)40%,transparent);font-weight:700}.mc-day-selected:hover{background:var(--brand-primary);color:var(--brand-text)}.mc-day-selected.mc-day-today:after{background:var(--brand-text)}.mc-day-month-hl{background:color-mix(in oklch,var(--brand-primary)10%,transparent)}.mc-day-month-hl:hover{background:color-mix(in oklch,var(--brand-primary)20%,transparent)}:root.light .mc-panel{border-color:oklch(.85 .01 260)}:root.light .mc-month-label{background:color-mix(in oklch,var(--card-bg)78%,transparent)}:root.light .mc-week-highlighted{background:color-mix(in oklch,var(--brand-primary)10%,transparent)}:root.light .mc-day-other{opacity:.35}:root.light .mc-scroll::-webkit-scrollbar-thumb{background:color-mix(in oklch,var(--text-muted)20%,transparent)}@media (max-width:767px){.mc-panel{width:calc(100vw - 2rem);max-width:320px;max-height:60dvh;transform:translate(-50%);left:50%!important}.mc-scroll{max-height:60dvh}@keyframes mcFadeIn{0%{opacity:0;transform:translate(-50%)translateY(-4px)scale(.98)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}}.settings-page{padding:var(--space-6)var(--space-8);max-width:var(--content-max-width,860px);box-sizing:border-box;width:100%;margin:0 auto}.settings-sections{display:flex;flex-direction:column;gap:1rem}.set-section{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--card-bg);overflow:hidden;transition:box-shadow .2s}.set-section-header{display:flex;cursor:pointer;user-select:none;justify-content:space-between;align-items: center;padding:1rem 1.5rem;transition:background .15s}.set-section-header:hover{background:var(--hover-bg-subtle)}.set-section-header-left{display:flex;align-items: center;gap:.75rem}.set-section-icon{display:flex;border-radius:var(--radius-sm);color:var(--brand-primary);background:var(--brand-hover);flex-shrink:0;justify-content:center;align-items: center;width:2rem;height:2rem}.set-section-icon svg{width:16px;height:16px}.set-section-title-group{display:flex;flex-direction:column}.set-section-title{color:var(--text);margin:0;font-size:.875rem;font-weight:600}.set-section-subtitle{color:var(--text-muted);margin:.0625rem 0 0;font-size:.75rem}.set-section-chevron{display:flex;color:var(--text-muted);align-items: center;transition:transform .2s}.set-section-chevron.open{transform:rotate(90deg)}.set-section-body{display:flex;animation:setFadeIn .2s ease forwards;flex-direction:column;gap:0;padding:0 1.5rem 1.5rem}@keyframes setFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.set-row{display:flex;border-bottom:1px solid var(--border-section);justify-content:space-between;align-items: center;gap:1.5rem;padding:.875rem 0}.set-row:last-child{border-bottom:none}.set-row-info{display:flex;flex-direction:column;flex:1;gap:.125rem;min-width:0}.set-row-label{color:var(--text);font-size:.875rem;font-weight:500}.set-row-hint{color:var(--text-muted);font-size:.75rem;line-height:1.4}.set-row-control{flex-shrink:0}.set-input{border-radius:var(--radius-md);border:1px solid var(--input-border);font-size:var(--font-sm);outline:none;background:var(--input-bg);color:var(--text);box-sizing:border-box;padding:.5rem .75rem;transition:all .2s;font-family:inherit}.set-input:focus{border-color:var(--brand-primary);box-shadow:var(--input-focus-ring)}.set-input-error{border-color:var(--state-error)!important}.set-field-error{color:var(--state-error);margin:.25rem 0 0;font-size:.75rem}.set-input::placeholder{color:var(--placeholder-color)}.set-input-sm{width:100px}.set-input-md{width:220px}.set-input-lg{width:280px}textarea.set-input{resize:vertical;width:100%;min-height:4rem;line-height:1.5}.set-chips{display:flex;flex-wrap:wrap;gap:.375rem}.set-chip{border-radius:var(--radius-sm);border:1px solid var(--input-border);background:var(--input-bg);color:var(--text-muted);cursor:pointer;padding:.375rem .75rem;transition:all .15s;font-size:.8125rem;font-weight:500}.set-chip:hover{border-color:var(--brand-primary);color:var(--brand-primary)}.set-chip.active{background:var(--brand-hover);border-color:var(--brand-primary);color:var(--brand-primary);font-weight:600}.set-workday-chips{display:flex;flex-wrap:wrap;gap:.375rem}.set-workday-btn{border-radius:var(--radius-sm);border:1px solid var(--input-border);background:var(--input-bg);color:var(--text-muted);cursor:pointer;display:flex;justify-content:center;align-items: center;width:2.5rem;height:2.5rem;transition:all .15s;font-size:.75rem;font-weight:600}.set-workday-btn:hover{border-color:var(--brand-primary);color:var(--brand-primary)}.set-workday-btn.active{background:var(--brand-hover);border-color:var(--brand-primary);color:var(--brand-primary)}.set-time-range{display:flex;align-items: center;gap:.5rem}.set-time-sep{color:var(--text-muted);font-size:.8125rem}.set-number-row{display:flex;align-items: center;gap:.5rem}.set-number-input{width:5rem}.set-number-unit{color:var(--text-muted);font-size:.8125rem}.set-color-row{display:flex;align-items: center;gap:.5rem}.set-color-swatch{border-radius:var(--radius-sm);cursor:pointer;border:2px solid var(--border-subtle);overflow:hidden;width:2rem;height:2rem;padding:0}.set-color-swatch::-webkit-color-swatch-wrapper{padding:0}.set-color-swatch::-webkit-color-swatch{border:none;border-radius:.25rem}.set-profile{display:flex;align-items: center;gap:1rem;padding:.5rem 0}.set-profile-avatar{background:color-mix(in oklch,var(--brand-primary)15%,transparent);color:var(--brand-primary);display:flex;border-radius:50%;flex-shrink:0;justify-content:center;align-items: center;width:3rem;height:3rem;font-size:1rem;font-weight:700}.set-profile-info{display:flex;flex-direction:column;gap:.125rem}.set-profile-name{color:var(--text);font-size:1rem;font-weight:600}.set-profile-email{color:var(--text-muted);font-size:.8125rem}.set-profile-role{display:inline-block;background:color-mix(in oklch,var(--brand-primary)12%,transparent);color:var(--brand-primary);text-transform:uppercase;letter-spacing:.04em;border-radius:9999px;margin-top:.25rem;padding:.125rem .5rem;font-size:.6875rem;font-weight:600}.set-save-bar{position:sticky;display:flex;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--card-shadow);backdrop-filter:blur(12px)saturate(150%);-webkit-backdrop-filter:blur(12px)saturate(150%);animation:setFadeIn .2s ease forwards;justify-content:flex-end;align-items: center;gap:.75rem;margin-top:.5rem;padding:1rem 1.5rem;bottom:0}.set-toggle{position:relative;display:inline-flex;cursor:pointer;align-items: center}.set-toggle input{position:absolute;opacity:0;width:0;height:0}.set-toggle-slider{background:var(--border-subtle);position:relative;border-radius:11px;width:40px;height:22px;transition:background .2s}.set-toggle-slider:after{content:"";position:absolute;background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .2s;top:3px;left:3px;box-shadow:0 1px 3px #0003}.set-toggle input:checked+.set-toggle-slider{background:var(--brand-primary)}.set-toggle input:checked+.set-toggle-slider:after{transform:translate(18px)}.set-toggle input:focus-visible+.set-toggle-slider{outline:2px solid var(--brand-primary);outline-offset:2px}.set-save-badge{color:var(--state-warning);border-radius:var(--radius-pill);background:var(--state-warning-bg);border:1px solid var(--state-warning-border);padding:.25rem .625rem;font-size:.75rem;font-weight:500}.set-slug-preview{color:var(--text-muted);margin-top:.25rem;font-size:.75rem}.set-slug-url{color:var(--brand-primary);font-weight:500}@media (max-width:640px){.settings-page{padding:1rem}.set-row{flex-direction:column;align-items: flex-start;gap:.5rem}.set-input-sm,.set-input-md,.set-input-lg{width:100%}.set-save-bar{border-radius:var(--radius-lg)var(--radius-lg)0 0;margin-left:-1rem;margin-right:-1rem;padding:.75rem 1rem}}.set-section-header:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.set-input:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.set-chip:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.set-workday-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.set-color-swatch:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}@media (prefers-reduced-motion:reduce){.set-section-body,.set-save-bar,.set-section-header,.set-chip{animation:none!important;transition:none!important}}.img-upload{position:relative;display:flex;border:2px dashed var(--card-border);background:var(--input-bg);cursor:pointer;overflow:hidden;border-radius:.75rem;flex-direction:column;justify-content:center;align-items: center;gap:.5rem;transition:border-color .2s,background .2s}.img-upload:hover,.img-upload.drag-over{border-color:var(--brand-primary);background:var(--hover-bg)}.img-upload.has-preview{border-style:solid}.img-upload--square{width:100%;min-height:120px;padding:1.5rem}.img-upload--circle{border-radius:50%;width:120px;height:120px;padding:0}.img-upload--circle .img-upload-preview{border-radius:50%}.img-upload--banner{aspect-ratio:4;border-radius:.75rem;width:100%;min-height:140px;padding:1.5rem}.img-upload-input{display:none}.img-upload-placeholder{display:flex;pointer-events:none;flex-direction:column;align-items: center;gap:.375rem}.img-upload-icon{color:var(--text-muted);opacity:.5}.img-upload-label{color:var(--text-muted);font-size:.8125rem;font-weight:500}.img-upload-hint{color:var(--text-muted);opacity:.7;font-size:.6875rem}.img-upload-preview{position:absolute;object-fit:cover;width:100%;height:100%;inset:0}.img-upload-remove{position:absolute;display:flex;background:oklch(.3 0 0/.7);color:#fff;cursor:pointer;opacity:0;backdrop-filter:blur(4px);z-index:2;border:none;border-radius:50%;justify-content:center;align-items: center;width:24px;height:24px;transition:opacity .15s,background .15s;font-size:.75rem;font-weight:700;line-height:1;top:.375rem;right:.375rem}.img-upload:hover .img-upload-remove{opacity:1}.img-upload-remove:focus-visible{opacity:1}.img-upload-remove:hover{background:var(--state-error)}.img-upload--circle .img-upload-remove{top:0;right:0}.img-upload-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:.75rem;width:100%}.img-upload-grid-item{position:relative;aspect-ratio:4/3;overflow:hidden;border:1px solid var(--card-border);border-radius:.5rem}.img-upload-grid-item img{object-fit:cover;width:100%;height:100%}.img-upload-grid-item .img-upload-remove{opacity:0}.img-upload-grid-item:hover .img-upload-remove{opacity:1}.img-upload-grid-add{display:flex;aspect-ratio:4/3;border:2px dashed var(--card-border);background:var(--input-bg);cursor:pointer;color:var(--text-muted);border-radius:.5rem;justify-content:center;align-items: center;transition:border-color .2s,background .2s}.img-upload-grid-add:hover{border-color:var(--brand-primary);background:var(--hover-bg)}.img-upload-error{color:var(--state-error);margin-top:.25rem;font-size:.75rem}.img-upload.uploading{pointer-events:none;opacity:.6}.img-upload-spinner{border:2px solid var(--card-border);border-top-color:var(--brand-primary);animation:tm-spin .6s linear infinite;border-radius:50%;width:24px;height:24px}.cust-badge{display:inline-flex;border-radius:var(--radius-pill);font-size:var(--font-2xs);letter-spacing:.02em;white-space:nowrap;align-items: center;padding:.15rem .55rem;font-weight:600}.cust-badge-regular{background:var(--brand-secondary);color:var(--color-accent)}.cust-badge-high-risk{background:var(--state-error-bg);color:var(--state-error)}.cust-m-section{display:flex;gap:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--border-subtle);flex-direction:column;min-width:0}.cust-m-section-last,.cust-m-section:last-of-type{border-bottom:none;padding-bottom:0}.cust-m-section-title{display:flex;align-items: center;gap:var(--space-2);font-size:var(--font-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin:0;font-weight:600;line-height:1}.cust-m-section-count{font-size:var(--font-2xs);border-radius:var(--radius-pill);background:var(--hover-bg-subtle);color:var(--text-muted);padding:.1rem .4rem;font-weight:500}.cust-m-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.cust-m-stat{display:flex;align-items: flex-start;gap:.625rem}.cust-m-stat-full{grid-column:1/-1}.cust-m-stat-icon{display:flex;border-radius:var(--radius-sm);background:var(--hover-bg-subtle);color:var(--text-muted);flex-shrink:0;justify-content:center;align-items: center;width:2rem;height:2rem;margin-top:.1rem}.cust-m-stat-content{display:flex;flex-direction:column;gap:.125rem;min-width:0}.cust-m-stat-label{font-size:var(--font-2xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-weight:600}.cust-m-stat-value{font-size:var(--font-base);color:var(--text);word-break:break-word}.cust-m-flags-row{display:flex;flex-wrap:wrap;align-items: center;gap:.375rem}.cust-m-no-flags{font-size:var(--font-sm);color:var(--text-muted);font-style:italic}.customer-notes{padding:var(--space-3);border-radius:var(--radius-md);background:var(--input-bg);color:var(--text-muted);font-size:var(--font-base);white-space:pre-wrap;border:1px solid var(--border-subtle);min-height:2.5rem;line-height:1.55}.customer-form-flags{display:flex;gap:var(--space-5);align-items: center}.cust-appt-group-label{font-size:var(--font-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;display:block;margin:var(--space-2)0 var(--space-1);font-weight:600}.cust-appt-group-label:first-child{margin-top:0}.cust-appt-row{display:flex;align-items: center;gap:var(--space-2);border-bottom:1px solid var(--border-subtle);font-size:var(--font-base);padding:.375rem 0}.cust-appt-row:last-child{border-bottom:none}.cust-appt-date{color:var(--text-muted);min-width:6.5rem}.cust-appt-time{color:var(--text-muted);min-width:3.5rem}.cust-appt-service{color:var(--text);flex:1;font-weight:500}.cust-appt-status{font-size:var(--font-2xs);border-radius:var(--radius-pill);text-transform:capitalize;padding:.15rem .5rem;font-weight:600}.cust-appt-empty{color:var(--text-muted);font-size:var(--font-base);margin:0}.cust-appt-more{color:var(--text-muted);font-size:var(--font-xs);margin:var(--space-2)0 0}.cust-notes-list{display:flex;gap:var(--space-2);margin-bottom:var(--space-3);flex-direction:column;min-width:0}.cust-note-card{background:var(--glass-bg);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-3);position:relative;overflow:hidden;min-width:0;transition:border-color .15s,box-shadow .15s}.cust-note-card:hover{border-color:var(--border);box-shadow:0 1px 4px #0000000f}.cust-note-header{display:flex;justify-content:space-between;align-items: center;gap:var(--space-2);margin-bottom:var(--space-2)}.cust-note-service{display:inline-flex;align-items: center;gap:var(--space-1);color:var(--brand-primary);background:color-mix(in srgb,var(--brand-primary)10%,transparent);border-radius:var(--radius-full,9999px);letter-spacing:.01em;padding:.15rem .5rem;font-size:.7rem;font-weight:600;line-height:1.4}.cust-note-service svg{opacity:.7;flex-shrink:0;width:12px;height:12px}.cust-note-actions{display:flex;opacity:0;gap:.25rem;transition:opacity .15s}.cust-note-card:hover .cust-note-actions{opacity:1}.cust-note-card--editing{border-color:var(--brand-primary);box-shadow:0 0 0 1px color-mix(in srgb,var(--brand-primary)20%,transparent)}.cust-note-inline-edit{display:flex;gap:var(--space-2);flex-direction:column}.cust-note-inline-edit textarea{resize:vertical;font-size:var(--font-sm);width:100%;min-height:3rem}.cust-note-inline-actions{display:flex;gap:var(--space-2);justify-content:flex-end}.cust-note-actions .tm-btn{padding:.15rem .4rem;font-size:.65rem}.cust-note-body{font-size:var(--font-sm);color:var(--text);white-space:pre-wrap;word-break:break-word;overflow-wrap:break-word;margin:0;line-height:1.55}.cust-note-meta{display:flex;align-items: center;gap:var(--space-2);margin-top:var(--space-2);color:var(--text-muted);font-size:.65rem}.cust-note-form{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border-subtle);display:flex;gap:var(--space-2);flex-direction:column}.cust-note-form-row{display:flex;gap:var(--space-2);align-items: flex-start}.cust-note-form-service{flex-shrink:0;width:10rem}.cust-note-form-body{flex:1;min-width:0}.cust-note-form-body textarea{resize:vertical;font-size:var(--font-sm);width:100%;min-height:2.5rem}.cust-note-form-actions{display:flex;gap:var(--space-2);justify-content:flex-end}.cust-notes-empty{display:flex;align-items: center;gap:var(--space-2);padding:var(--space-4)var(--space-3);color:var(--text-muted);font-size:var(--font-sm);text-align:center;flex-direction:column}.cust-notes-empty svg{opacity:.3;width:28px;height:28px}.cust-packages-list{display:flex;gap:var(--space-2);flex-direction:column}.cust-pkg-card{background:var(--glass-bg);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-3);transition:opacity .15s}.cust-pkg-card--inactive{opacity:.55}.cust-pkg-header{display:flex;justify-content:space-between;align-items: center;gap:var(--space-2)}.cust-pkg-name{font-weight:600;font-size:var(--font-sm);color:var(--text)}.cust-pkg-service{font-size:var(--font-xs);color:var(--text-secondary);margin-top:var(--space-1)}.cust-pkg-progress-row{display:flex;align-items: center;gap:var(--space-2);margin-top:var(--space-2)}.cust-pkg-progress-bar{background:var(--border-subtle);overflow:hidden;border-radius:3px;flex:1;height:6px}.cust-pkg-progress-fill{background:var(--brand-primary);border-radius:3px;height:100%;transition:width .3s}.cust-pkg-progress-label{font-size:var(--font-xs);color:var(--text-secondary);white-space:nowrap}.cust-pkg-expiry{font-size:var(--font-xs);color:var(--text-tertiary);margin-top:var(--space-1)}@media (max-width:600px){.cust-m-detail-grid{grid-template-columns:1fr}.cust-m-stat-full{grid-column:auto}}.dt-card-customer{display:flex;flex-direction:column;gap:.5rem}.dt-card-customer-top{display:flex;align-items: center;gap:.625rem}.dt-card-customer-info{display:flex;flex-direction:column;flex:1;min-width:0}.dt-card-customer-name{color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.875rem;font-weight:500}.dt-card-customer-sub{color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.75rem}.dt-card-customer-meta{display:flex;justify-content:space-between;align-items: center;gap:.5rem;padding-top:.25rem}.sch-page{display:flex;overflow-x:hidden;flex-direction:column;gap:0}.sch-header{display:flex;gap:var(--space-3);margin-bottom:var(--space-5);flex-direction:column}.sch-header-row1{display:flex;justify-content:space-between;align-items: center;gap:var(--space-4);flex-wrap:wrap}.sch-header-left{display:flex;align-items: center;gap:var(--space-4);flex-wrap:wrap}.sch-title{font-size:var(--font-xl);color:var(--text);letter-spacing:-.01em;margin:0;font-weight:700}.sch-header-stats{display:flex;align-items: center;gap:.375rem}.sch-chip{display:inline-flex;border-radius:var(--radius-pill);font-size:var(--font-xs);color:var(--text-muted);background:var(--hover-bg-subtle);border:1px solid var(--border-subtle);align-items: center;gap:.3rem;padding:.25rem .625rem;font-weight:500}.sch-chip-num{color:var(--text);font-variant-numeric:tabular-nums;font-weight:700}.sch-chip-warn{background:var(--state-warning-bg);border-color:var(--state-warning-border);color:var(--state-warning)}.sch-chip-warn .sch-chip-num{color:var(--state-warning)}.sch-header-actions{display:flex;align-items: center;gap:.5rem}.sch-header-row2{display:flex;justify-content:space-between;align-items: center;gap:var(--space-3);flex-wrap:wrap}.sch-header-row2-right{display:flex;align-items: center;gap:var(--space-2)}.sch-view-dropdown-wrapper{position:relative}.sch-view-dropdown{position:absolute;border-radius:var(--radius-md);background:var(--popup-glass-bg);border:1px solid var(--popup-glass-border);box-shadow:var(--popup-glass-shadow);backdrop-filter:blur(var(--popup-glass-blur));-webkit-backdrop-filter:blur(var(--popup-glass-blur));z-index:50;animation:dropdownIn .18s ease-out forwards;min-width:160px;padding:.375rem;top:calc(100% + .375rem);right:0}@keyframes dropdownIn{0%{opacity:0;transform:translateY(-4px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.sch-view-dropdown-item{display:flex;border-radius:var(--radius-sm);font-size:var(--font-sm);color:var(--text);cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items: center;width:100%;padding:.45rem .75rem;transition:background .15s;font-family:inherit;font-weight:500}.sch-view-dropdown-item:focus-visible{outline:2px solid var(--brand-primary);outline-offset:-2px}.sch-view-dropdown-item:hover{background:var(--hover-bg)}.sch-view-dropdown-item.active{color:var(--brand-primary);font-weight:600}.sch-grid-card{border-radius:var(--radius-lg);border:1px solid var(--glass-border);background:var(--glass-bg);box-shadow:var(--shadow-md);backdrop-filter:blur(12px)saturate(150%);-webkit-backdrop-filter:blur(12px)saturate(150%);overflow:hidden}.sch-skeleton{border-radius:var(--radius-lg);border:1px solid var(--glass-border);background:var(--glass-bg);overflow:hidden}.sch-skeleton-row{display:grid;grid-template-columns:200px repeat(7,minmax(100px,1fr))80px;border-bottom:1px solid var(--border-subtle);animation:sch-pulse 1.5s ease-in-out infinite both;padding:.6rem 0}.sch-skeleton-row:last-child{border-bottom:none}.sch-skeleton-cell{border-radius:var(--radius-sm);margin:.4rem}.sch-skeleton-name{background:var(--hover-bg);height:2rem;margin-left:.75rem}.sch-skeleton-day{background:var(--hover-bg-subtle);height:2.5rem}@keyframes sch-pulse{0%,to{opacity:1}50%{opacity:.5}}.sch-hint{font-size:var(--font-xs);color:var(--text-muted);margin:0;line-height:1.5}.sch-empty{display:flex;justify-content:center;align-items: center;gap:var(--space-2);padding:4rem var(--space-4);color:var(--text-muted);flex-direction:column}.sch-empty-icon{border-radius:var(--radius-lg);display:flex;background:var(--brand-hover);color:var(--brand-primary);margin-bottom:var(--space-1);justify-content:center;align-items: center;width:3.5rem;height:3.5rem}.sch-empty p{color:var(--text);margin:0;font-size:.95rem;font-weight:500}.sch-empty-hint{opacity:.8;color:var(--text-muted)!important;margin:0!important;font-size:.82rem!important}.sg-grid-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.sg-grid-wrapper.sg-dragging{user-select:none;-webkit-user-select:none;cursor:crosshair}.sg-grid-wrapper::-webkit-scrollbar{height:4px}.sg-grid-wrapper::-webkit-scrollbar-thumb{background:var(--text-muted);opacity:.3;border-radius:2px}.sg-grid{min-width:980px}.sg-header-row{display:grid;grid-template-columns:200px repeat(7,minmax(100px,1fr))80px;border-bottom:1px solid var(--border-subtle);position:sticky;z-index:2;background:var(--glass-bg);backdrop-filter:blur(12px)saturate(150%);-webkit-backdrop-filter:blur(12px)saturate(150%);top:0}.sg-header-corner{display:flex;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);border-right:1px solid var(--border-subtle);align-items: center;gap:.4rem;padding:.75rem 1rem;font-size:.72rem;font-weight:600}.sg-header-corner svg{opacity:.5}.sg-header-row>.tt-wrap{display:flex;border-right:1px solid var(--border-subtle);width:100%}.sg-header-row>.tt-wrap:has(.sg-blocked){background:var(--state-warning-bg);border-bottom:2px solid var(--state-warning-border)}.sg-header-day{display:flex;border-right:1px solid var(--border-subtle);flex-direction:column;flex:1;justify-content:center;align-items: center;gap:.15rem;min-width:0;padding:.6rem .25rem;transition:background .15s;font-size:.72rem}.sg-header-row>.tt-wrap>.sg-header-day{border-right:none}.sg-blocked-label{color:var(--state-warning);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:var(--radius-xs,.1875rem);background:var(--state-warning-bg);text-align:center;max-width:100%;margin-top:.125rem;padding:.0625rem .25rem;font-size:.6rem;font-weight:600;line-height:1.2}.sg-grid-wrapper:not(.sg-month-view) .sg-blocked-label{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.sg-header-day.sg-today{background:var(--brand-hover)}.sg-header-row>.tt-wrap:has(.sg-today){background:var(--brand-hover)}.sg-header-total{display:flex;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);justify-content:center;align-items: center;padding:.6rem .25rem;font-size:.68rem;font-weight:600}.sg-day-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-size:.68rem;font-weight:600}.sg-day-date{color:var(--text);font-variant-numeric:tabular-nums;font-size:.8rem;font-weight:600}.sg-today-num{background:var(--brand-primary);color:var(--brand-text);display:inline-flex;box-shadow:0 2px 6px oklch(.55 .15 220/.3);animation:todayPulse 3s ease-in-out infinite;border-radius:50%;justify-content:center;align-items: center;width:1.6rem;height:1.6rem;font-size:.72rem;font-weight:700}@keyframes todayPulse{0%,to{box-shadow:0 2px 6px oklch(.55 .15 220/.3),0 0 0 0 oklch(.55 .15 220/.3)}50%{box-shadow:0 2px 6px oklch(.55 .15 220/.3),0 0 0 4px oklch(.55 .15 220/0)}}.sg-today .sg-day-label{color:var(--brand-primary)}.sg-group-header{display:flex;background:var(--hover-bg-subtle);border-bottom:1px solid var(--border-subtle);align-items: center;gap:.5rem;padding:.5rem 1rem}.sg-group-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:.72rem;font-weight:700}.sg-group-count{border-radius:var(--radius-pill);background:var(--hover-bg);color:var(--text-muted);padding:.125rem .4rem;font-size:.65rem;font-weight:600}.sg-employee-row{display:grid;grid-template-columns:200px repeat(7,minmax(100px,1fr))80px;border-bottom:1px solid var(--border-subtle);animation:rowFadeIn .25s ease forwards;opacity:0;transition:background .15s}@keyframes rowFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.sg-employee-row:last-child{border-bottom:none}.sg-employee-row:hover{background:var(--hover-bg-subtle)}.sg-employee-cell{display:flex;border-right:1px solid var(--border-subtle);position:relative;align-items: center;gap:.6rem;min-width:0;padding:.625rem .875rem}.sg-avatar{display:flex;color:var(--brand-text);border-radius:50%;flex-shrink:0;justify-content:center;align-items: center;width:2rem;height:2rem;transition:box-shadow .2s,transform .2s;font-size:.62rem;font-weight:700}.sg-employee-row:hover .sg-avatar{box-shadow:0 0 0 2px var(--card-bg),0 0 0 3.5px oklch(1 0 0/.15);transform:scale(1.05)}.sg-employee-info{display:flex;flex-direction:column;gap:.15rem;min-width:0}.sg-employee-name{color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.82rem;font-weight:600}.sg-employee-meta{display:flex;align-items: center;gap:.375rem}.sg-role-pill{text-transform:capitalize;border-radius:var(--radius-pill);background:var(--hover-bg-subtle);color:var(--text-muted);border:1px solid var(--hover-bg-subtle);padding:.075rem .4rem;font-size:.62rem;font-weight:600}.sg-loc-tag{color:var(--text-muted);opacity:.7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:80px;font-size:.6rem;font-weight:500}.sg-emp-tooltip{position:absolute;border-radius:var(--radius-md);background:var(--popup-glass-bg);border:1px solid var(--popup-glass-border);box-shadow:var(--popup-glass-shadow);backdrop-filter:blur(var(--popup-glass-blur));-webkit-backdrop-filter:blur(var(--popup-glass-blur));z-index:40;pointer-events:none;animation:tooltipIn .15s ease-out forwards;min-width:180px;max-width:260px;padding:.6rem .8rem;top:50%;left:calc(100% + .5rem);transform:translateY(-50%)}.sg-emp-tooltip-name{color:var(--text);margin-bottom:.25rem;font-size:.82rem;font-weight:600}.sg-emp-tooltip-divider{background:var(--border-subtle);height:1px;margin:.25rem 0}.sg-emp-tooltip-row{color:var(--text-muted);font-size:.72rem;line-height:1.6}.sg-day-cell{display:flex;border-right:1px solid var(--border-subtle);cursor:pointer;position:relative;flex-direction:column;gap:.25rem;min-height:3rem;padding:.375rem;transition:background .15s}.sg-day-cell:last-of-type{border-right:none}.sg-day-cell:hover{background:var(--hover-bg)}.sg-day-cell.sg-today{background:var(--brand-hover)}.sg-day-cell.sg-today:hover{background:oklch(.55 .15 220/.06)}.sg-day-cell.sg-day-off{background:var(--state-warning-bg)}.sg-shift-block{display:flex;border-radius:var(--radius-sm);text-align:left;cursor:pointer;position:relative;overflow:hidden;background:var(--hover-bg-subtle);border:none;border-left:3px solid var(--shift-color,var(--brand-primary));color:var(--text);flex-direction:column;gap:.125rem;width:100%;padding:.3rem .45rem;transition:all .15s;font-family:inherit}.sg-shift-block:hover{background:var(--hover-bg);box-shadow:0 2px 8px oklch(0 0 0/.1);transform:translateY(-1px)}.sg-block-time{font-variant-numeric:tabular-nums;color:var(--text);display:flex;align-items: center;gap:.3rem;font-size:.68rem;font-weight:600}.sg-block-dur{color:var(--text-muted);opacity:.7;font-size:.6rem;font-weight:500}.sg-block-label{color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.62rem}.sg-dayoff-block{display:flex;border-radius:var(--radius-sm);border:1px solid var(--state-warning-border);background:var(--state-warning-bg);cursor:pointer;text-align:left;align-items: center;gap:.35rem;width:100%;padding:.35rem .45rem;transition:all .15s;font-family:inherit}.sg-dayoff-block:hover{box-shadow:0 2px 6px oklch(0 0 0/.08);transform:translateY(-1px)}.sg-dayoff-icon{flex-shrink:0;font-size:.85rem;line-height:1}.sg-dayoff-label{color:var(--state-warning);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.62rem;font-weight:600}.sg-empty-cell{display:flex;opacity:0;justify-content:center;align-items: center;width:100%;height:100%;min-height:2rem;transition:opacity .15s}.sg-day-cell:hover .sg-empty-cell{opacity:1}.sg-empty-state{text-align:center;color:var(--text-muted);padding:3rem 1rem}.sg-empty-state p{margin:0;font-size:.95rem}.sg-total-cell{display:flex;justify-content:center;align-items: center;padding:.5rem .25rem}.sg-total-value{font-variant-numeric:tabular-nums;color:var(--text);border-radius:var(--radius-pill);background:var(--hover-bg-subtle);padding:.2rem .5rem;font-size:.78rem;font-weight:700}.sg-total-zero{color:var(--text-muted);opacity:.5;background:0 0}.sg-total-full{color:var(--state-success);background:var(--state-success-bg)}.wn-bar{display:flex;background:var(--hover-bg-subtle);border:1px solid var(--border-subtle);border-radius:var(--radius-md);align-items: center;gap:.375rem;padding:.25rem}.wn-btn{display:inline-flex;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items: center;width:2rem;height:2rem;transition:all .15s}.wn-btn:hover{background:var(--hover-bg);color:var(--text)}.wn-btn:active{transform:scale(.92)}.wn-today{border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:.35rem .75rem;transition:all .15s;font-family:inherit;font-size:.78rem;font-weight:600}.wn-today:hover{background:var(--hover-bg);color:var(--text)}.wn-today-active{background:var(--brand-hover);color:var(--brand-primary)}.wn-label{color:var(--text);text-align:center;min-width:10rem;padding:0 .25rem;font-size:.82rem;font-weight:600}.cb-bar{display:grid;grid-template-columns:200px repeat(7,minmax(100px,1fr))80px;border-top:1px solid var(--border-subtle);background:var(--hover-bg-subtle)}.cb-bar-label{display:flex;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);border-right:1px solid var(--border-subtle);align-items: center;padding:.5rem 1rem;font-size:.68rem;font-weight:600}.cb-bar-cell{display:flex;font-variant-numeric:tabular-nums;border-right:1px solid var(--border-subtle);position:relative;cursor:default;flex-direction:column;justify-content:center;align-items: center;gap:.2rem;padding:.45rem .375rem;font-size:.72rem;font-weight:600}.cb-bar-cell:last-of-type{border-right:none}.cb-progress-track{background:var(--hover-bg-subtle);overflow:hidden;border-radius:2px;width:100%;height:3px;margin-bottom:.15rem}.cb-progress-fill{border-radius:2px;height:100%;transition:width .3s}.cb-fill-full{background:var(--state-success)}.cb-fill-warn{background:var(--state-warning)}.cb-fill-short{background:var(--state-error)}.cb-fill-empty{background:0 0}.cb-bar-count{color:var(--text)}.cb-bar-sep{color:var(--text-muted);opacity:.5}.cb-bar-req{color:var(--text-muted)}.cb-bar-full .cb-bar-count{color:var(--state-success)}.cb-bar-warn .cb-bar-count{color:var(--state-warning)}.cb-bar-short .cb-bar-count{color:var(--state-error)}.cb-bar-empty .cb-bar-count{color:var(--text-muted);opacity:.5}.cb-bar-total{display:flex;justify-content:center;align-items: center}.cb-bar-avg{font-variant-numeric:tabular-nums;font-size:.72rem;font-weight:700}.cb-tooltip{position:absolute;border-radius:var(--radius-md);background:var(--popup-glass-bg);border:1px solid var(--popup-glass-border);box-shadow:var(--popup-glass-shadow);backdrop-filter:blur(var(--popup-glass-blur));-webkit-backdrop-filter:blur(var(--popup-glass-blur));z-index:30;pointer-events:none;animation:tooltipIn .15s ease-out forwards;min-width:120px;padding:.5rem .75rem;bottom:calc(100% + .5rem);left:50%;transform:translate(-50%)}@keyframes tooltipIn{0%{opacity:0;transform:translate(-50%)translateY(4px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.cb-tooltip:after{content:"";position:absolute;border:5px solid #0000;border-top-color:var(--popup-glass-border);top:100%;left:50%;transform:translate(-50%)}.cb-tooltip-title{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:.25rem;font-size:.68rem;font-weight:600}.cb-tooltip-name{color:var(--text);padding:.1rem 0;font-size:.78rem;line-height:1.5}.cb-bar-month{font-size:.62rem}.cb-bar-month .cb-bar-cell{padding:.3rem .125rem}.cb-bar-month .cb-bar-label{padding:.3rem .5rem;font-size:.6rem}.sch-range-toggle{display:flex;background:var(--hover-bg-subtle);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);align-items: center;gap:.125rem;padding:.15rem}.sch-range-btn{font-size:var(--font-xs);color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.3rem .7rem;transition:all .15s;font-family:inherit;font-weight:600}.sch-range-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:-2px}.sch-range-btn:hover{color:var(--text)}.sch-range-btn.active{background:var(--brand-hover);color:var(--brand-primary);box-shadow:0 1px 3px oklch(0 0 0/.08)}.sg-month-view .sg-grid{min-width:1000px}.sg-month-view .sg-header-corner{padding:.6rem .5rem;font-size:.65rem}.sg-month-view .sg-header-day{padding:.4rem .125rem;font-size:.62rem}.sg-month-view .sg-header-day .sg-day-label{font-size:.55rem}.sg-month-view .sg-header-day .sg-day-date{font-size:.7rem}.sg-month-view .sg-blocked-label{display:none}.sg-month-view .sg-header-day.sg-today .sg-today-num{width:1.35rem;height:1.35rem;font-size:.62rem}.sg-weekend{background:oklch(1 0 0/.02)}.sg-month-view .sg-header-day.sg-weekend{background:oklch(1 0 0/.03)}.sg-month-view .sg-header-day.sg-weekend .sg-day-label{color:var(--text-muted);opacity:.6}.sg-month-cell{justify-content:center;align-items: center;min-height:2rem!important;padding:.2rem!important}.sg-month-cell .sg-empty-cell{min-height:1.2rem}.sg-month-dots{display:flex;flex-wrap:wrap;justify-content:center;align-items: center;gap:3px}.sg-month-dot{display:block;border-radius:50%;flex-shrink:0;width:8px;height:8px;transition:transform .15s}.sg-month-cell:hover .sg-month-dot{transform:scale(1.25)}.sg-month-dot-off{background:var(--state-warning);opacity:.8}.sg-month-dot-more{color:var(--text-muted);font-size:.55rem;font-weight:700;line-height:1}.sg-month-view .sg-employee-cell{gap:.4rem;padding:.4rem .5rem}.sg-month-view .sg-avatar{width:1.6rem;height:1.6rem;font-size:.55rem}.sg-month-view .sg-employee-name{font-size:.75rem}.sg-month-view .sg-role-pill{font-size:.55rem}.sg-month-view .sg-loc-tag{display:none}.sg-month-view .sg-total-cell{padding:.3rem .125rem}.sg-month-view .sg-total-value{padding:.15rem .3rem;font-size:.68rem}.sg-month-view .sg-employee-row{border-bottom-color:var(--border-subtle)}.sd-overlay{position:fixed;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:100;display:flex;animation:tm-fade-in .22s ease;background:#00000073;justify-content:flex-end;inset:0}.sd-drawer{background:var(--popup-glass-bg);backdrop-filter:blur(24px)saturate(180%);-webkit-backdrop-filter:blur(24px)saturate(180%);border-left:1px solid var(--popup-glass-border);display:flex;animation:sd-slide-in .32s cubic-bezier(.16,1,.3,1);overflow:hidden;flex-direction:column;width:420px;max-width:100vw;height:100%;box-shadow:-16px 0 48px #0000004d,-2px 0 8px #0000001f,inset 1px 0 #ffffff0d}@keyframes sd-slide-in{0%{transform:translate(100%);opacity:.6}to{transform:none;opacity:1}}.sd-accent{background:linear-gradient(90deg,var(--brand-primary),oklch(.65 .18 240),var(--brand-primary));animation:sd-accent-shimmer 3s ease-in-out infinite;background-size:200% 100%;flex-shrink:0;height:3px}@keyframes sd-accent-shimmer{0%,to{background-position:0%}50%{background-position:100%}}.sd-drag-handle{display:none}.sd-header{display:flex;flex-shrink:0;justify-content:space-between;align-items: flex-start;padding:1.25rem 1.5rem 1rem}.sd-header-left{display:flex;flex-direction:column;gap:.35rem}.sd-mode-badge{display:inline-flex;text-transform:uppercase;letter-spacing:.06em;border-radius:999px;align-items: center;gap:.35rem;width:-moz-fit-content;width:fit-content;padding:.2rem .55rem;font-size:.68rem;font-weight:600}.sd-mode-new{background:var(--brand-hover);color:var(--brand-primary);border:1px solid var(--brand-border)}.sd-mode-edit{background:oklch(.7 .12 80/.1);color:oklch(.75 .12 80);border:1px solid oklch(.7 .12 80/.2)}.sd-title{color:var(--text);letter-spacing:-.01em;margin:0;font-size:1.2rem;font-weight:700}.sd-close{display:inline-flex;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--hover-bg);color:var(--text-muted);cursor:pointer;flex-shrink:0;justify-content:center;align-items: center;width:2rem;height:2rem;margin-top:.15rem;transition:all .15s}.sd-close:hover{background:var(--hover-bg-subtle);color:var(--text);border-color:var(--card-border);transform:scale(1.05)}.sd-close:active{transform:scale(.95)}.sd-body{overflow-y:auto;display:flex;scrollbar-width:thin;scrollbar-color:#ffffff14 transparent;flex-direction:column;flex:1;gap:.875rem;padding:.75rem 1.5rem 1.5rem}.sd-body::-webkit-scrollbar{width:4px}.sd-body::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:999px}.sd-stagger{animation:sd-stagger-in .35s cubic-bezier(.16,1,.3,1)both}@keyframes sd-stagger-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.sd-person-card{display:flex;border-radius:var(--radius-lg);background:var(--hover-bg);border:1px solid var(--border-subtle);align-items: center;gap:.75rem;padding:.75rem}.sd-avatar{border-radius:var(--radius-md);background:var(--brand-bg);color:var(--brand-text);display:flex;letter-spacing:.02em;box-shadow:0 2px 8px oklch(.55 .15 220/.2);flex-shrink:0;justify-content:center;align-items: center;width:2.5rem;height:2.5rem;font-size:.8rem;font-weight:700}.sd-person-info{display:flex;flex-direction:column;gap:.15rem;min-width:0}.sd-person-name{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;font-weight:600}.sd-person-date{color:var(--text-muted);display:inline-flex;align-items: center;gap:.35rem;font-size:.78rem}.sd-section{display:flex;border-radius:var(--radius-lg);background:var(--hover-bg-subtle);border:1px solid var(--border-subtle);flex-direction:column;gap:.65rem;padding:.875rem}.sd-section-head{display:flex;align-items: center;gap:.4rem}.sd-section-icon{display:inline-flex;color:var(--brand-primary);align-items: center;font-size:.85rem}.sd-section-title{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:.72rem;font-weight:600}.sd-section-badge{background:var(--hover-bg);color:var(--text-muted);border:1px solid var(--border-subtle);border-radius:999px;margin-left:auto;padding:.1rem .45rem;font-size:.65rem;font-weight:500}.sd-dayoff-card{display:flex;border-radius:var(--radius-lg);background:var(--hover-bg-subtle);border:1px solid var(--border-subtle);cursor:pointer;text-align:left;color:inherit;align-items: center;gap:.75rem;width:100%;padding:.75rem .875rem;transition:all .2s;font-family:inherit}.sd-dayoff-card:hover{border-color:var(--card-border);background:var(--hover-bg)}.sd-dayoff-card.sd-dayoff-active{background:oklch(.7 .12 80/.06);border-color:oklch(.7 .12 80/.2)}.sd-dayoff-icon{border-radius:var(--radius-md);display:flex;background:var(--hover-bg);color:var(--text-muted);flex-shrink:0;justify-content:center;align-items: center;width:2.25rem;height:2.25rem;transition:all .2s}.sd-dayoff-active .sd-dayoff-icon{background:oklch(.7 .12 80/.15);color:oklch(.75 .12 80)}.sd-dayoff-text{display:flex;flex-direction:column;flex:1;gap:.1rem;min-width:0}.sd-dayoff-title{color:var(--text);font-size:.85rem;font-weight:600}.sd-dayoff-desc{color:var(--text-muted);font-size:.72rem}.sd-toggle{background:var(--input-border);position:relative;border-radius:999px;flex-shrink:0;width:2.75rem;height:1.625rem;transition:background .25s}.sd-toggle-on{background:var(--brand-primary)}.sd-toggle-knob{position:absolute;background:var(--toggle-color);border-radius:50%;width:1.25rem;height:1.25rem;transition:transform .25s cubic-bezier(.16,1,.3,1);top:3px;left:3px;box-shadow:0 1px 4px #0003}.sd-toggle-on .sd-toggle-knob{transform:translate(1.125rem)}.sd-reason-grid{display:grid;grid-template-columns:1fr 1fr;gap:.4rem}.sd-reason-chip{display:inline-flex;border-radius:var(--radius-md);border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;text-align:left;background:0 0;align-items: center;gap:.35rem;padding:.45rem .6rem;transition:all .15s;font-family:inherit;font-size:.78rem;font-weight:500}.sd-reason-chip:hover{border-color:var(--card-border);background:var(--hover-bg);color:var(--text)}.sd-reason-chip.sd-reason-active{background:var(--brand-hover);border-color:var(--brand-border);color:var(--brand-primary)}.sd-reason-emoji{font-size:.9rem;line-height:1}.sd-field{display:flex;flex-direction:column;gap:.3rem}.sd-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.7rem;font-weight:600}.sd-input{border-radius:var(--radius-md);border:1px solid var(--input-border);background:var(--input-bg);color:var(--text);outline:none;width:100%;padding:.55rem .75rem;transition:all .2s;font-family:inherit;font-size:.85rem}.sd-input:focus{border-color:var(--brand-primary);box-shadow:var(--input-focus-ring)}.sd-input::placeholder{color:var(--placeholder-color)}.sd-textarea{resize:vertical;min-height:4rem;line-height:1.5}.sd-time-row{display:grid;grid-template-columns:1fr auto 1fr;align-items: end;gap:.5rem}.sd-time-sep{display:flex;color:var(--text-muted);opacity:.4;justify-content:center;align-items: center;padding-bottom:.55rem}.sd-error{display:flex;color:var(--state-error);border-radius:var(--radius-md);background:var(--state-error-bg);border:1px solid var(--state-error-border);align-items: center;gap:.4rem;margin:0;padding:.5rem .75rem;font-size:.82rem}.sd-footer{border-top:1px solid var(--border-subtle);display:flex;background:var(--hover-bg-subtle);flex-shrink:0;align-items: center;gap:.5rem;padding:1rem 1.5rem}.sd-actions-right{display:flex;gap:.5rem;margin-left:auto}.sd-btn{display:inline-flex;border-radius:var(--radius-md);cursor:pointer;border:1px solid #0000;align-items: center;gap:.4rem;padding:.5rem 1rem;transition:all .2s;font-family:inherit;font-size:.82rem;font-weight:600}.sd-btn:active{transform:scale(.97)}.sd-btn-primary{background:var(--brand-primary);color:var(--brand-text);border-color:var(--brand-primary);box-shadow:0 2px 8px oklch(.55 .15 220/.2)}.sd-btn-primary:hover{box-shadow:var(--brand-shadow);transform:translateY(-1px)}.sd-btn-primary:active{transform:scale(.97)translateY(0)}.sd-btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.sd-btn-secondary{color:var(--text-muted);border-color:var(--border-subtle);background:0 0}.sd-btn-secondary:hover{background:var(--hover-bg);color:var(--text);border-color:var(--card-border)}.sd-btn-danger{color:var(--state-error);border-color:var(--state-error-border);background:0 0}.sd-btn-danger:hover{background:var(--state-error-bg)}.sd-spinner{display:inline-block;border:2px solid #ffffff4d;border-top-color:var(--brand-text);animation:tm-spin .6s linear infinite;border-radius:50%;width:14px;height:14px}@media (max-width:767px){.sd-overlay{flex-direction:column;justify-content:flex-end}.sd-drawer{border-radius:var(--radius-2xl)var(--radius-2xl)0 0;border-left:none;border-top:1px solid var(--popup-glass-border);animation:sd-slide-up .32s cubic-bezier(.16,1,.3,1);width:100%;max-width:100vw;height:auto;max-height:92dvh;box-shadow:0 -8px 32px #00000040,0 -2px 8px #0000001a}@keyframes sd-slide-up{0%{transform:translateY(100%);opacity:.6}to{transform:none;opacity:1}}.sd-drag-handle{display:flex;flex-shrink:0;justify-content:center;padding:.5rem 0 .125rem}.sd-drag-handle:after{content:"";background:var(--border-subtle);border-radius:999px;width:2rem;height:.25rem}.sd-accent{display:none}.sd-header{padding:.625rem 1.125rem .5rem}.sd-title{font-size:1.05rem}.sd-mode-badge{font-size:.62rem}.sd-body{gap:.75rem;padding:.375rem 1.125rem 1rem}.sd-input{min-height:2.75rem;padding:.625rem .75rem;font-size:.88rem}.sd-textarea{min-height:3.5rem}.sd-person-card{gap:.625rem;padding:.625rem}.sd-avatar{width:2.25rem;height:2.25rem;font-size:.72rem}.sd-person-name{font-size:.84rem}.sd-person-date{font-size:.74rem}.sd-section{gap:.5rem;padding:.75rem}.sd-dayoff-card{gap:.625rem;padding:.625rem .75rem}.sd-dayoff-title{font-size:.82rem}.sd-dayoff-desc{font-size:.7rem}.sd-reason-grid{grid-template-columns:1fr 1fr}.sd-reason-chip{padding:.5rem;font-size:.74rem}.sd-expand-toggle{font-size:.82rem}.sd-time-row{gap:.25rem}.sd-time-row .sd-input{min-width:0;padding:.5rem .375rem;font-size:.82rem}.sd-time-sep{padding-bottom:.5rem}.sd-time-sep svg{width:14px;height:14px}.sd-expand-content .sd-time-row .sd-input{padding:.5rem .375rem;font-size:.82rem}.sd-footer{padding:.75rem 1.125rem;padding-bottom:calc(.75rem + env(safe-area-inset-bottom,0));flex-wrap:wrap;gap:.5rem}.sd-actions-right{gap:.375rem}.sd-btn{padding:.5rem .75rem;font-size:.78rem}.sd-btn-primary{padding:.5rem 1rem}}:root.light .sd-overlay{background:#00000040}:root.light .sd-drawer{box-shadow:-16px 0 48px #0000001f,-2px 0 6px #0000000f}:root.light .sd-mode-edit{background:oklch(.52 .14 70/.08);color:oklch(.48 .14 70);border-color:oklch(.52 .14 70/.2)}:root.light .sd-dayoff-card.sd-dayoff-active{background:oklch(.52 .14 70/.06);border-color:oklch(.52 .14 70/.25)}:root.light .sd-dayoff-active .sd-dayoff-icon{background:oklch(.52 .14 70/.1);color:oklch(.48 .14 70)}:root.light .sd-toggle{background:oklch(.84 .01 220)}:root.light .sd-toggle-on{background:var(--brand-primary)}:root.light .sd-person-card,:root.light .sd-section{background:oklch(.97 .005 220);border-color:oklch(.88 .008 220)}:root.light .sd-footer{background:oklch(.97 .005 220)}:root.light .sd-close{background:oklch(.95 .005 220);border-color:oklch(.88 .008 220)}:root.light .sd-close:hover{background:oklch(.92 .005 220)}.sch-tpl-dropdown{position:relative}.sch-tpl-panel{position:absolute;border-radius:var(--radius-lg);background:var(--popup-glass-bg);border:1px solid var(--popup-glass-border);box-shadow:var(--popup-glass-shadow);backdrop-filter:blur(var(--popup-glass-blur));-webkit-backdrop-filter:blur(var(--popup-glass-blur));z-index:50;overflow:hidden;animation:dropdownIn .2s ease-out forwards;width:300px;top:calc(100% + .5rem);right:0}.sch-tpl-panel-header{display:flex;border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items: center;padding:.75rem 1rem}.sch-tpl-panel-title{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-size:.78rem;font-weight:600}.sch-tpl-panel-add{display:flex;border-radius:var(--radius-sm);border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;background:0 0;justify-content:center;align-items: center;width:26px;height:26px;transition:all .15s}.sch-tpl-panel-add:hover{background:var(--brand-hover);color:var(--brand-primary);border-color:var(--brand-primary)}.sch-tpl-panel-loading,.sch-tpl-panel-empty{text-align:center;color:var(--text-muted);padding:1.5rem 1rem;font-size:.82rem}.sch-tpl-panel-hint{color:var(--text-muted);opacity:.7;margin-top:.25rem;font-size:.75rem}.sch-tpl-panel-list{display:flex;overflow-y:auto;flex-direction:column;gap:.25rem;max-height:320px;padding:.5rem}.sch-tpl-panel-item{display:flex;border-radius:var(--radius-sm);align-items: center;gap:.5rem;padding:.5rem .6rem;transition:background .15s}.sch-tpl-panel-item:hover{background:var(--hover-bg)}.sch-tpl-panel-item.inactive{opacity:.45}.sch-tpl-panel-item-dot{border-radius:999px;flex-shrink:0;width:.5rem;height:.5rem;box-shadow:0 0 5px}.sch-tpl-panel-item-info{display:flex;flex-direction:column;flex:1;min-width:0}.sch-tpl-panel-item-name{color:var(--text);font-size:.82rem;font-weight:600;line-height:1.3}.sch-tpl-panel-item-time{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.72rem}.sch-tpl-panel-item-actions{display:flex;gap:.25rem}.sch-tpl-panel-btn{display:flex;border-radius:var(--radius-sm);border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;background:0 0;justify-content:center;align-items: center;width:26px;height:26px;transition:all .15s}.sch-tpl-panel-btn:hover{background:var(--hover-bg);color:var(--text);border-color:var(--text-muted)}.sch-tpl-weekdays{display:flex;gap:.25rem;padding:0 1.25rem}.sch-tpl-day{border-radius:var(--radius-sm);display:flex;border:1px solid var(--border-subtle);color:var(--text-muted);background:0 0;justify-content:center;align-items: center;width:2rem;height:1.75rem;transition:all .15s;font-size:.65rem;font-weight:600}.sch-tpl-day.active{background:var(--brand-primary);color:var(--brand-text);border-color:var(--brand-primary)}.sch-tpl-day.selectable{cursor:pointer;width:2.5rem;height:2.2rem;font-size:.72rem}.sch-tpl-day.selectable:hover{border-color:var(--brand-primary);background:var(--brand-hover)}.sch-tpl-panel-item-name-row{display:flex;align-items: center;gap:.375rem}.sch-tpl-panel-item-summary{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.7rem;line-height:1.3}.sch-tpl-badge{display:inline-flex;text-transform:uppercase;letter-spacing:.03em;background:var(--hover-bg-subtle);color:var(--text-muted);border:1px solid var(--border-subtle);white-space:nowrap;border-radius:999px;align-items: center;padding:.1rem .4rem;font-size:.6rem;font-weight:600}.sch-tpl-badge.biweekly{background:oklch(.55 .15 220/.1);color:var(--brand-primary);border-color:oklch(.55 .15 220/.2)}.sch-tpl-color-custom{border:1px solid var(--border-subtle);cursor:pointer;background:0 0;border-radius:50%;width:1.75rem;height:1.75rem;padding:0}.sch-tpl-panel-btn-danger:hover{background:var(--state-error-bg,oklch(.6 .2 25/.1));color:var(--state-error);border-color:var(--state-error)}.sch-tpl-cycle-toggle{display:flex;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);overflow:hidden;gap:0;width:-moz-fit-content;width:fit-content}.sch-tpl-cycle-option{cursor:pointer;color:var(--text-muted);border:none;border-right:1px solid var(--border-subtle);background:0 0;padding:.4rem 1rem;transition:all .15s;font-family:inherit;font-size:.78rem;font-weight:500}.sch-tpl-cycle-option:last-child{border-right:none}.sch-tpl-cycle-option:hover{background:var(--hover-bg);color:var(--text)}.sch-tpl-cycle-option.active{background:var(--brand-primary);color:var(--brand-text,#fff)}.sch-tpl-day-builder{display:flex;flex-direction:column;gap:.75rem}.sch-tpl-week-section{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--hover-bg-subtle);padding:.625rem}.sch-tpl-week-header{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);display:flex;justify-content:space-between;align-items: center;margin-bottom:.375rem;font-size:.72rem;font-weight:600}.sch-tpl-week-header-actions{display:flex;align-items: center;gap:.375rem}.sch-tpl-week-empty{color:var(--text-muted);opacity:.7;text-align:center;padding:.75rem 0;font-size:.78rem}.sch-tpl-day-row{display:flex;border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;align-items: center;gap:.375rem;padding:.375rem 0}.sch-tpl-day-row:last-child{border-bottom:none}.sch-tpl-day-input{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--card-bg);color:var(--text);padding:.3rem .4rem;transition:border-color .15s;font-family:inherit;font-size:.78rem}.sch-tpl-day-input:focus{outline:none;border-color:var(--brand-primary)}.sch-tpl-day-time{font-variant-numeric:tabular-nums;width:5.5rem}.sch-tpl-day-label-input{flex-shrink:1;width:5rem;min-width:3rem}.sch-tpl-day-select{width:5rem;min-width:5rem}.sch-tpl-day-select:focus{outline:none;border-color:var(--brand-primary)}.sch-tpl-day-sep{color:var(--text-muted);flex-shrink:0;font-size:.75rem}.sch-tpl-day-break-toggle{display:flex;border-radius:var(--radius-xs,.25rem);border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;background:0 0;flex-shrink:0;justify-content:center;align-items: center;width:24px;height:24px;transition:all .15s}.sch-tpl-day-break-toggle:hover{background:var(--hover-bg);color:var(--text)}.sch-tpl-day-break-toggle.active{background:oklch(.55 .15 220/.12);color:var(--brand-primary);border-color:var(--brand-primary)}.sch-tpl-day-remove{display:flex;border-radius:var(--radius-xs,.25rem);color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #0000;flex-shrink:0;justify-content:center;align-items: center;width:22px;height:22px;margin-left:auto;transition:all .15s}.sch-tpl-day-remove:hover{background:var(--state-error-bg,oklch(.6 .2 25/.1));color:var(--state-error);border-color:var(--state-error)}.sch-tpl-week-footer{display:flex;justify-content:space-between;align-items: center;margin-top:.25rem;padding-top:.375rem}.sch-tpl-add-day{display:inline-flex;border-radius:var(--radius-sm);border:1px dashed var(--border-subtle);color:var(--text-muted);cursor:pointer;background:0 0;align-items: center;gap:.3rem;padding:.3rem .6rem;transition:all .15s;font-family:inherit;font-size:.72rem;font-weight:500}.sch-tpl-add-day:hover{border-color:var(--brand-primary);color:var(--brand-primary);background:var(--brand-hover)}.sch-tpl-copy-week{display:inline-flex;border-radius:var(--radius-sm);border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;background:0 0;align-items: center;gap:.3rem;padding:.2rem .5rem;transition:all .15s;font-family:inherit;font-size:.68rem;font-weight:500}.sch-tpl-copy-week:hover{border-color:var(--brand-primary);color:var(--brand-primary);background:var(--brand-hover)}.sch-tpl-hours-summary{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.75rem;font-weight:600}.sch-apply-list{display:flex;overflow-y:auto;border:1px solid var(--border-subtle);border-radius:var(--radius-md);flex-direction:column;gap:.2rem;max-height:260px;padding:.4rem}.sch-apply-item{display:flex;border-radius:var(--radius-sm);cursor:pointer;color:var(--text);align-items: center;gap:.5rem;padding:.4rem .6rem;transition:background .1s;font-size:.85rem}.sch-apply-item:hover{background:var(--hover-bg)}.sch-apply-item.selected{background:var(--brand-hover)}.sch-apply-item input[type=checkbox]{accent-color:var(--brand-primary)}.sch-apply-name{flex:1}.sch-apply-role{color:var(--text-muted);text-transform:capitalize;font-size:.72rem}.sg-mobile-wrapper{display:none}.sg-mobile-day-strip{display:flex;justify-content:space-between;gap:.375rem;padding:0 .25rem .75rem}.sg-mobile-day-btn{display:flex;border-radius:var(--radius-lg);cursor:pointer;position:relative;background:0 0;border:1px solid #0000;flex-direction:column;flex:1;align-items: center;gap:.125rem;min-width:0;min-height:44px;padding:.5rem 0;transition:all .2s;font-family:inherit}.sg-mobile-day-btn:active{transform:scale(.95)}.sg-mobile-day-btn.today{border-color:var(--brand-primary);border-style:dashed}.sg-mobile-day-btn.active{background:var(--brand-primary);border-color:var(--brand-primary);box-shadow:0 2px 10px oklch(.55 .15 220/.25);border-style:solid}.sg-mobile-day-btn.active .sg-mobile-day-label,.sg-mobile-day-btn.active .sg-mobile-day-num{color:var(--brand-text)}.sg-mobile-day-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-size:.6rem;font-weight:600;line-height:1}.sg-mobile-day-num{color:var(--text);font-size:.92rem;font-weight:700;line-height:1.2}.sg-mobile-day-dot{background:var(--brand-primary);position:absolute;border-radius:50%;width:4px;height:4px;bottom:4px}.sg-mobile-day-btn.active .sg-mobile-day-dot{background:var(--brand-text)}.sg-mobile-cards{display:flex;flex-direction:column;gap:.5rem}.sg-mobile-card{border-radius:var(--radius-lg);border:1px solid var(--card-border);background:var(--card-bg);display:flex;cursor:pointer;box-shadow:var(--card-shadow);position:relative;overflow:hidden;-webkit-tap-highlight-color:transparent;align-items: center;gap:.75rem;min-height:56px;padding:.875rem 1rem;transition:background .15s}.sg-mobile-card:active{background:var(--hover-bg)}.sg-mobile-card-accent{position:absolute;border-radius:3px 0 0 3px;width:3px;top:0;bottom:0;left:0}.sg-mobile-card-body{display:flex;flex-direction:column;flex:1;gap:.125rem;min-width:0}.sg-mobile-card-name{color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.875rem;font-weight:600}.sg-mobile-card-meta{display:flex;color:var(--text-muted);align-items: center;gap:.375rem;font-size:.78rem}.sg-mobile-card-meta--muted{opacity:.5;font-style:italic}.sg-mobile-card-time{font-variant-numeric:tabular-nums}.sg-mobile-card-dur{border-radius:var(--radius-sm);background:var(--hover-bg-subtle);color:var(--text-muted);padding:.1rem .4rem;font-size:.68rem;font-weight:600}.sg-mobile-card-label{color:var(--text-muted);font-size:.68rem}.sg-mobile-card-chevron{color:var(--text-muted);opacity:.4;flex-shrink:0}.sg-mobile-card-add{color:var(--brand-primary);opacity:.6;flex-shrink:0}.sg-mobile-card-off{border-color:var(--state-warning-border);background:var(--state-warning-bg)}.sg-mobile-card-empty{opacity:.7;border-style:dashed}.sg-mobile-empty-state{display:flex;text-align:center;flex-direction:column;justify-content:center;align-items: center;gap:.75rem;padding:3rem 1rem}.sg-mobile-empty-state p{color:var(--text-muted);margin:0;font-size:.85rem}.sg-mobile-empty-text{text-align:center;color:var(--text-muted);margin:0;padding:1.5rem 1rem;font-size:.82rem}.sg-mobile-month-wrapper{display:none}.sg-mobile-month-list{display:flex;border-radius:var(--radius-lg);border:1px solid var(--card-border);background:var(--card-bg);box-shadow:var(--card-shadow);overflow:hidden;flex-direction:column;gap:0}.sg-mobile-month-day{border-bottom:1px solid var(--border-subtle)}.sg-mobile-month-day:last-child{border-bottom:none}.sg-mobile-month-day-header{display:flex;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;align-items: center;gap:.625rem;width:100%;min-height:48px;padding:.875rem 1rem;transition:background .15s;font-family:inherit}.sg-mobile-month-day-header:active{background:var(--hover-bg)}.sg-mobile-month-day-label{color:var(--text);text-align:left;min-width:5.5rem;font-size:.85rem;font-weight:600}.sg-mobile-month-today .sg-mobile-month-day-label{color:var(--brand-primary)}.sg-mobile-month-day-badges{display:flex;flex-wrap:wrap;flex:1;align-items: center;gap:.3rem}.sg-month-badge{display:inline-flex;border-radius:var(--radius-pill);background:var(--brand-hover);color:var(--brand-primary);align-items: center;padding:.15rem .5rem;font-size:.68rem;font-weight:600}.sg-month-badge--off{background:var(--state-warning-bg);color:var(--state-warning)}.sg-month-badge--blocked{background:var(--state-error-bg);color:var(--state-error);font-weight:500}.sg-month-badge--empty{color:var(--text-muted);opacity:.4;background:0 0}.sg-mobile-month-chevron{color:var(--text-muted);flex-shrink:0;transition:transform .2s}.sg-mobile-month-chevron.open{transform:rotate(180deg)}.sg-mobile-month-day-content{display:flex;animation:monthDayExpand .2s ease forwards;flex-direction:column;gap:.4rem;padding:0 .75rem .875rem}@keyframes monthDayExpand{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.sg-mobile-month-today{background:var(--brand-hover)}.sg-mobile-month-blocked .sg-mobile-month-day-label{color:var(--state-error)}.sch-mobile-stats{display:flex;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;align-items: center;gap:.375rem;padding:0 .125rem}.sch-mobile-stats::-webkit-scrollbar{display:none}.sch-mobile-fab{display:none}@media (max-width:767px){.sch-grid-card{display:none}.sg-mobile-wrapper,.sg-mobile-month-wrapper{display:block}.sch-header{margin-bottom:var(--space-3);gap:.5rem}.sch-header-row1{display:flex;flex-wrap:nowrap;justify-content:space-between;align-items: center;gap:.5rem}.sch-header-left{display:flex;flex-wrap:nowrap;flex:1;align-items: center;gap:.5rem;min-width:0}.sch-title{white-space:nowrap;flex-shrink:0;font-size:1.125rem}.sch-header-actions{display:none}.avail-tabs{flex-shrink:0;padding:.125rem}.avail-tab{padding:.2rem .5rem;font-size:.7rem}.sch-header-row2{display:flex;overflow:hidden;flex-wrap:nowrap;align-items: center;gap:.375rem}.sch-header-row2-right{display:none}.wn-bar{background:0 0;border:none;flex-wrap:nowrap;flex:1;gap:.25rem;min-width:0;padding:0}.wn-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:auto;font-size:.78rem}.wn-today{white-space:nowrap;flex-shrink:0;padding:.25rem .5rem;font-size:.72rem}.wn-btn{flex-shrink:0;width:2rem;min-width:2rem;height:2rem}.sch-range-toggle{overflow:hidden;flex-shrink:1;min-width:0}.sch-range-btn{white-space:nowrap;padding:.25rem .5rem;font-size:.72rem}.sch-mobile-stats .sch-chip{white-space:nowrap;flex-shrink:0;padding:.2rem .5rem;font-size:.68rem}.sch-tpl-panel{width:calc(100vw - 2rem);max-width:100%;right:0}.sd-drawer{width:100%}.sch-tpl-day-row{gap:.25rem}.sch-tpl-day-label-input{width:3.5rem}.sch-tpl-day-time{width:4.5rem}.sch-tpl-day-select{width:4rem;min-width:4rem}.sch-bulk-bar{bottom:calc(var(--bottomnav-height) + env(safe-area-inset-bottom,0) + .75rem);flex-wrap:wrap;justify-content:center;gap:.5rem;max-width:calc(100vw - 2rem);padding:.5rem .75rem}.sch-bulk-bar-btn{padding:.35rem .625rem;font-size:.72rem}.sch-mobile-fab{display:flex;position:fixed;right:1rem;bottom:calc(var(--bottomnav-height) + env(safe-area-inset-bottom,0) + 1rem);cursor:pointer;background:var(--brand-bg);color:var(--brand-text);box-shadow:var(--brand-shadow),0 4px 16px oklch(0 0 0/.2);z-index:var(--z-sticky);-webkit-tap-highlight-color:transparent;border:none;border-radius:50%;justify-content:center;align-items: center;width:52px;height:52px;transition:transform .2s,box-shadow .2s}.sch-mobile-fab:active{transform:scale(.92)}.sch-skeleton-row{grid-template-columns:1fr}.sch-skeleton-day{display:none}.sch-skeleton-name{width:100%}}.sg-selected{box-shadow:inset 0 0 0 2px oklch(.55 .18 220/.4);border-radius:4px;background:oklch(.55 .15 220/.12)!important}.sg-selected .sg-empty-cell{color:var(--brand-primary);opacity:1}.sch-bulk-bar{position:fixed;display:flex;border-radius:var(--radius-lg);background:var(--popup-glass-bg);border:1px solid var(--popup-glass-border);box-shadow:var(--popup-glass-shadow),0 8px 32px #00000040;backdrop-filter:blur(var(--popup-glass-blur));-webkit-backdrop-filter:blur(var(--popup-glass-blur));z-index:90;animation:bulkBarIn .25s ease-out forwards;align-items: center;gap:.75rem;padding:.625rem 1.25rem;bottom:1.5rem;left:50%;transform:translate(-50%)}@keyframes bulkBarIn{0%{opacity:0;transform:translate(-50%)translateY(12px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.sch-bulk-bar-count{color:var(--brand-primary);white-space:nowrap;font-size:.82rem;font-weight:600}.sch-bulk-bar-btn{display:inline-flex;border-radius:var(--radius-md);cursor:pointer;background:var(--brand-bg);color:var(--brand-text,#fff);box-shadow:var(--brand-shadow);border:none;align-items: center;gap:.375rem;padding:.4rem .875rem;transition:transform .2s,box-shadow .2s;font-size:.8rem;font-weight:600}.sch-bulk-bar-btn:hover{transform:scale(1.03)}.sch-bulk-bar-btn:active{transform:scale(.97)}.sch-bulk-bar-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.sch-bulk-bar-btn--warn{background:var(--state-warning-bg);color:var(--state-warning);border:1px solid var(--state-warning-border);box-shadow:none}.sch-bulk-bar-btn--warn:hover{background:var(--state-warning);color:var(--brand-text)}.sch-bulk-bar-clear{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);cursor:pointer;color:var(--text-muted);background:0 0;padding:.35rem .75rem;transition:background .15s,color .15s;font-size:.78rem;font-weight:500}.sch-bulk-bar-clear:hover{background:var(--hover-bg);color:var(--text)}.sch-bulk-tpl-wrapper{position:relative}.sch-bulk-bar-btn--tpl{background:var(--card-bg);color:var(--text);border:1px solid var(--border-subtle);box-shadow:none}.sch-bulk-bar-btn--tpl:hover{background:var(--hover-bg);border-color:var(--brand-primary)}.sch-bulk-tpl-picker{position:absolute;border-radius:var(--radius-md);background:var(--popup-glass-bg);border:1px solid var(--popup-glass-border);box-shadow:var(--popup-glass-shadow);backdrop-filter:blur(var(--popup-glass-blur));-webkit-backdrop-filter:blur(var(--popup-glass-blur));z-index:100;overflow:hidden;animation:bulkTplIn .15s ease-out forwards;width:240px;padding:.375rem;bottom:calc(100% + .5rem);left:50%;transform:translate(-50%)}@keyframes bulkTplIn{0%{opacity:0;transform:translate(-50%)translateY(6px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.sch-bulk-tpl-empty{text-align:center;color:var(--text-muted);padding:1rem;font-size:.78rem}.sch-bulk-tpl-item{display:flex;border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;align-items: center;gap:.5rem;width:100%;padding:.5rem .6rem;transition:background .15s;font-family:inherit}.sch-bulk-tpl-item:hover{background:var(--hover-bg)}.sch-bulk-tpl-dot{border-radius:999px;flex-shrink:0;width:.5rem;height:.5rem;box-shadow:0 0 4px}.sch-bulk-tpl-name{color:var(--text);text-align:left;flex:1;font-size:.8rem;font-weight:600}.sch-bulk-tpl-time{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.7rem}.sch-bulk-dayoff-wrapper{position:relative}.sch-bulk-dayoff-picker{position:absolute;border-radius:var(--radius-md);background:var(--popup-glass-bg);border:1px solid var(--popup-glass-border);box-shadow:var(--popup-glass-shadow);backdrop-filter:blur(var(--popup-glass-blur));-webkit-backdrop-filter:blur(var(--popup-glass-blur));z-index:100;overflow:hidden;animation:bulkTplIn .15s ease-out forwards;width:200px;padding:.375rem;bottom:calc(100% + .5rem);left:50%;transform:translate(-50%)}.sch-bulk-dayoff-title{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);padding:.375rem .5rem .25rem;font-size:.68rem;font-weight:600}.sch-bulk-dayoff-item{display:flex;border-radius:var(--radius-sm);cursor:pointer;color:var(--text);text-align:left;background:0 0;border:none;align-items: center;gap:.5rem;width:100%;padding:.45rem .6rem;transition:background .15s;font-family:inherit;font-size:.8rem;font-weight:500}.sch-bulk-dayoff-item:hover{background:var(--hover-bg)}.sch-confirm-body{display:flex;flex-direction:column;gap:1rem;padding:.5rem 1.5rem 1.5rem}.sch-confirm-context{display:flex;border-radius:var(--radius-md);background:var(--card-bg);border:1px solid var(--border-subtle);align-items: center;gap:.75rem;padding:.75rem 1rem}.sch-confirm-ctx-avatar{border-radius:var(--radius-md);display:flex;letter-spacing:.03em;color:var(--brand-primary);background:var(--brand-hover);flex-shrink:0;justify-content:center;align-items: center;width:2.25rem;height:2.25rem;font-size:.68rem;font-weight:700}.sch-confirm-ctx-info{display:flex;flex-direction:column;gap:.1rem;min-width:0}.sch-confirm-ctx-name{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;font-weight:600}.sch-confirm-ctx-date{color:var(--text-muted);font-size:.75rem}.sch-diff-card{border-radius:var(--radius-md);border:1px solid var(--border-subtle);overflow:hidden}.sch-diff-field{display:flex;border-bottom:1px solid var(--border-subtle);align-items: center;gap:.75rem;padding:.6rem 1rem;transition:background .15s}.sch-diff-field:last-child{border-bottom:none}.sch-diff-field.sch-diff-changed{background:var(--brand-hover)}.sch-diff-field-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);flex-shrink:0;min-width:3.5rem;font-size:.7rem;font-weight:600}.sch-diff-field-values{display:flex;flex:1;align-items: center;gap:.5rem;min-width:0}.sch-diff-old{color:var(--text-muted);text-decoration:line-through;text-decoration-color:oklch(.6 .05 15/.5);font-size:.82rem;font-weight:500}.sch-diff-old.sch-diff-same{color:var(--text);text-decoration:none;font-weight:500}.sch-diff-arrow{color:var(--brand-primary);opacity:.7;flex-shrink:0}.sch-diff-new{color:var(--text);font-size:.82rem;font-weight:600}.sch-confirm-delete-card{display:flex;border-radius:var(--radius-md);background:var(--state-error-bg);border:1px solid var(--state-error-border);align-items: center;gap:.85rem;padding:.85rem 1rem}.sch-confirm-delete-icon{border-radius:var(--radius-md);display:flex;color:var(--state-error);background:oklch(.55 .18 25/.12);flex-shrink:0;justify-content:center;align-items: center;width:2.25rem;height:2.25rem}.sch-confirm-delete-info{display:flex;flex-direction:column;gap:.15rem;min-width:0}.sch-confirm-delete-title{color:var(--state-error);font-size:.8rem;font-weight:600}.sch-confirm-delete-detail{color:var(--text-muted);font-size:.78rem;font-weight:500}.sch-confirm-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.sch-confirm-warn{color:var(--state-warning);border-radius:var(--radius-sm);background:var(--state-warning-bg);border:1px solid var(--state-warning-border);padding:.5rem .75rem;font-size:.78rem;font-weight:600}.sch-confirm-new-box{display:flex;border-radius:var(--radius-sm);background:var(--brand-hover);border:1px solid oklch(.55 .15 220/.15);align-items: center;gap:.75rem;padding:.6rem .85rem}.sch-confirm-new-label{text-transform:uppercase;letter-spacing:.05em;color:var(--brand-primary);flex-shrink:0;font-size:.68rem;font-weight:700}.sch-confirm-new-value{color:var(--text);display:flex;align-items: center;gap:.4rem;font-size:.85rem;font-weight:600}.sch-confirm-groups{display:flex;overflow-y:auto;scrollbar-width:thin;flex-direction:column;gap:.25rem;max-height:20rem}.sch-confirm-group{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);overflow:hidden;transition:border-color .15s}.sch-confirm-group.open{border-color:var(--card-border)}.sch-confirm-group-header{display:flex;cursor:pointer;text-align:left;background:0 0;border:none;align-items: center;gap:.5rem;width:100%;padding:.5rem .75rem;transition:background .15s;font-family:inherit}.sch-confirm-group-header:hover{background:var(--hover-bg)}.sch-confirm-chevron{color:var(--text-muted);flex-shrink:0;transition:transform .2s}.sch-confirm-chevron.open{transform:rotate(90deg)}.sch-confirm-group-name{color:var(--text);font-size:.82rem;font-weight:600}.sch-confirm-group-count{border-radius:var(--radius-pill);background:var(--hover-bg);color:var(--text-muted);padding:.1rem .4rem;font-size:.68rem;font-weight:600}.sch-confirm-group-ow{color:var(--state-warning);margin-left:auto;font-size:.62rem;font-weight:600}.sch-confirm-group-days{border-top:1px solid var(--border-subtle);padding:.25rem 0}.sch-confirm-day-row{display:flex;align-items: center;gap:.5rem;padding:.35rem .75rem .35rem 2rem;transition:background .1s;font-size:.75rem}.sch-confirm-day-row:hover{background:var(--hover-bg-subtle)}.sch-confirm-day-ow{background:var(--state-warning-bg)}.sch-confirm-day-ow:hover{background:oklch(.55 .12 70/.08)}.sch-confirm-day-date{font-variant-numeric:tabular-nums;color:var(--text);flex-shrink:0;min-width:5.5rem;font-weight:600}.sch-confirm-day-prev{color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.sch-confirm-arrow{color:var(--text-muted);opacity:.5;flex-shrink:0}.sch-confirm-day-new{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600}:root.light .wn-bar{background:oklch(.96 .005 220);border-color:oklch(.88 .008 220)}:root.light .sg-header-row{background:oklch(.97 .005 220/.85)}:root.light .sg-header-day.sg-today{background:oklch(.55 .15 220/.06)}:root.light .sg-today-num{box-shadow:0 1px 4px oklch(.55 .15 220/.2)}:root.light .sg-day-cell.sg-today{background:oklch(.55 .15 220/.03)}:root.light .sg-shift-block{background:oklch(.97 .005 220)}:root.light .sg-shift-block:hover{background:oklch(.94 .02 220)}:root.light .sg-role-pill{background:oklch(.93 .01 220);color:oklch(.45 .02 220)}:root.light .sg-emp-tooltip{border-color:oklch(.88 .008 220);background:#fffffff2;box-shadow:0 4px 20px #0000001a}:root.light .sg-dayoff-block{background:oklch(.55 .12 70/.06);border-color:oklch(.55 .12 70/.15)}:root.light .sg-total-cell,:root.light .cb-bar{background:oklch(.97 .005 220)}:root.light .cb-progress-track{background:oklch(.9 .005 220)}:root.light .sch-skeleton-name{background:oklch(.92 .005 220)}:root.light .sch-skeleton-day{background:oklch(.95 .005 220)}:root.light .sch-chip{background:oklch(.94 .01 220);border-color:oklch(.88 .008 220)}:root.light .sch-view-dropdown,:root.light .sch-tpl-panel{border-color:oklch(.88 .008 220);background:#fffffff2;box-shadow:0 4px 20px #00000014}:root.light .sch-tpl-panel-header{border-bottom-color:oklch(.88 .008 220)}:root.light .sch-tpl-panel-add,:root.light .sch-tpl-panel-btn{border-color:oklch(.88 .008 220)}:root.light .sg-mobile-day-btn.active{box-shadow:0 2px 8px oklch(.55 .15 220/.15)}:root.light .cb-tooltip{border-color:oklch(.88 .008 220);background:#fffffff2;box-shadow:0 4px 16px #0000001a}:root.light .cb-tooltip:after{border-top-color:oklch(.88 .008 220)}:root.light .sg-selected{box-shadow:inset 0 0 0 2px oklch(.55 .18 220/.3);background:oklch(.55 .15 220/.08)!important}:root.light .sch-bulk-bar{border-color:oklch(.88 .008 220);background:#ffffffeb;box-shadow:0 4px 24px #0000001a,0 1px 4px #0000000f}:root.light .sch-bulk-bar-clear{border-color:oklch(.88 .008 220)}:root.light .sch-bulk-bar-clear:hover{background:oklch(.96 .005 220)}:root.light .sch-bulk-tpl-picker{border-color:oklch(.88 .008 220);background:#fffffff2;box-shadow:0 4px 20px #00000014}:root.light .sch-bulk-bar-btn--tpl{background:oklch(.97 .005 220);border-color:oklch(.88 .008 220)}:root.light .sch-bulk-dayoff-picker{border-color:oklch(.88 .008 220);background:#fffffff2;box-shadow:0 4px 20px #00000014}:root.light .sch-apply-list{border-color:oklch(.88 .008 220)}:root.light .sch-range-toggle{background:oklch(.96 .005 220);border-color:oklch(.88 .008 220)}:root.light .sch-range-btn.active{background:oklch(.55 .15 220/.1)}:root.light .sg-weekend{background:oklch(.97 .005 220)}:root.light .sg-month-view .sg-header-day.sg-weekend{background:oklch(.95 .005 220)}:root.light .sg-month-dot-off{opacity:.9}:root.light .sg-mobile-month-today{background:var(--brand-hover)}:root.light .sg-mobile-month-day{border-bottom-color:oklch(.88 .008 220)}:root.light .sch-confirm-context{background:oklch(.97 .005 220);border-color:oklch(.88 .008 220)}:root.light .sch-confirm-ctx-avatar{background:oklch(.55 .15 220/.08)}:root.light .sch-diff-card{border-color:oklch(.88 .008 220)}:root.light .sch-diff-field{border-bottom-color:oklch(.92 .005 220)}:root.light .sch-diff-field.sch-diff-changed{background:oklch(.55 .15 220/.04)}:root.light .sch-diff-old{text-decoration-color:oklch(.6 .12 15/.4)}:root.light .sch-confirm-delete-card{background:oklch(.55 .18 25/.04);border-color:oklch(.55 .18 25/.15)}:root.light .sch-confirm-delete-icon{background:oklch(.55 .18 25/.08)}:root.light .sch-confirm-group{border-color:oklch(.88 .008 220)}:root.light .sch-confirm-group.open{border-color:oklch(.82 .01 220)}:root.light .sch-confirm-group-count{background:oklch(.94 .01 220)}:root.light .sch-confirm-day-ow{background:oklch(.55 .12 70/.06)}:root.light .sch-confirm-new-box{background:oklch(.55 .15 220/.06);border-color:oklch(.55 .15 220/.12)}.sch-overtime-warnings{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.sch-overtime-warning{display:flex;border-radius:var(--radius-md);border:1px solid var(--state-warning-border);background:var(--state-warning-bg);color:var(--state-warning);align-items: center;gap:.5rem;padding:.625rem .875rem;font-size:.8125rem;font-weight:500}.sch-overtime-warning.critical{border-color:var(--state-error-border);background:var(--state-error-bg);color:var(--state-error)}.sch-chip-pending{background:oklch(.55 .15 220/.1);border-color:oklch(.55 .15 220/.2);color:var(--brand-primary);cursor:pointer;transition:all .15s;font-family:inherit}.sch-chip-pending:hover{background:oklch(.55 .15 220/.16);border-color:var(--brand-primary)}.sch-chip-pending .sch-chip-num{color:var(--brand-primary)}.sg-pending-override{border:1.5px dashed oklch(.55 .15 220/.4)!important}.sg-pending-badge{position:absolute;z-index:1;pointer-events:none;font-size:.6rem;line-height:1;top:2px;right:2px}.sd-mode-request{background:var(--state-warning-bg);color:var(--state-warning);border:1px solid var(--state-warning-border)}.sch-overrides-body{padding:.5rem 1.5rem 1.5rem}.sch-overrides-empty{text-align:center;color:var(--text-muted);padding:2rem 1rem;font-size:.88rem}.sch-overrides-list{display:flex;overflow-y:auto;scrollbar-width:thin;flex-direction:column;gap:.5rem;max-height:24rem}.sch-override-item{display:flex;border-radius:var(--radius-md);background:var(--hover-bg-subtle);border:1px solid var(--border-subtle);align-items: center;gap:.75rem;padding:.75rem .875rem;transition:background .15s}.sch-override-item:hover{background:var(--hover-bg)}.sch-override-info{display:flex;flex-direction:column;flex:1;gap:.15rem;min-width:0}.sch-override-name{color:var(--text);font-size:.85rem;font-weight:600}.sch-override-date{font-variant-numeric:tabular-nums;color:var(--text-muted);font-size:.72rem;font-weight:600}.sch-override-type{color:var(--text);font-size:.78rem}.sch-override-notes{color:var(--text-muted);font-size:.72rem;font-style:italic}.sch-override-actions{display:flex;flex-shrink:0;gap:.375rem}.sch-override-btn{display:inline-flex;border-radius:var(--radius-sm);cursor:pointer;border:1px solid #0000;align-items: center;gap:.25rem;padding:.35rem .7rem;transition:all .15s;font-family:inherit;font-size:.72rem;font-weight:600}.sch-override-btn:disabled{opacity:.5;cursor:not-allowed}.sch-override-approve{background:var(--state-success-bg);color:var(--state-success);border-color:var(--state-success-border,oklch(.55 .15 145/.2))}.sch-override-approve:hover:not(:disabled){background:var(--state-success);color:var(--brand-text)}.sch-override-reject{background:var(--state-error-bg);color:var(--state-error);border-color:var(--state-error-border)}.sch-override-reject:hover:not(:disabled){background:var(--state-error);color:var(--brand-text)}.sch-rules-modal-body{display:flex;flex-direction:column;gap:1.5rem;padding:0 1.5rem 1.5rem}.sch-generate-section{border-radius:var(--radius-lg);border:1px solid var(--border-subtle);background:var(--card-bg);display:flex;flex-direction:column;gap:1rem;padding:1.25rem}.sch-generate-header{display:flex;flex-direction:column;gap:.25rem}.sch-generate-title{color:var(--text);font-size:.8125rem;font-weight:600}.sch-generate-desc{color:var(--text-muted);font-size:.75rem;line-height:1.4}.sch-generate-controls{display:flex;flex-direction:column;gap:.75rem}.sch-generate-periods{display:flex;gap:.375rem}.sch-generate-period{border-radius:var(--radius-md);border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;text-align:center;background:0 0;flex:1;padding:.4375rem .5rem;transition:all .15s;font-size:.75rem;font-weight:500}.sch-generate-period:hover{border-color:var(--brand-primary);color:var(--text)}.sch-generate-period.active{background:var(--brand-bg);color:var(--brand-text);border-color:var(--brand-primary)}.sch-generate-actions{display:flex;justify-content:space-between;align-items: center;gap:.75rem}.sch-generate-replace{display:flex;color:var(--text-muted);cursor:pointer;user-select:none;align-items: center;gap:.375rem;font-size:.75rem}.sch-generate-replace input[type=checkbox]{accent-color:var(--brand-primary);cursor:pointer;width:14px;height:14px;margin:0}.sch-generate-btn{display:inline-flex;border-radius:var(--radius-md);background:var(--brand-bg);color:var(--brand-text);cursor:pointer;white-space:nowrap;border:none;align-items: center;gap:.375rem;padding:.4375rem 1rem;transition:all .2s;font-size:.8125rem;font-weight:600}.sch-generate-btn:hover{opacity:.9;transform:scale(1.02)}.sch-generate-btn:active{transform:scale(.98)}.sch-generate-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.sch-rules-list-section{display:flex;flex-direction:column;gap:.75rem}.sch-rules-list-header{display:flex;justify-content:space-between;align-items: center}.sch-rules-list-title{color:var(--text);display:flex;align-items: center;gap:.5rem;font-size:.8125rem;font-weight:600}.sch-rules-count{display:inline-flex;background:var(--brand-bg);color:var(--brand-text);border-radius:999px;justify-content:center;align-items: center;min-width:1.25rem;height:1.25rem;padding:0 .375rem;font-size:.6875rem;font-weight:600}.sch-rules-add-btn{display:inline-flex;border-radius:var(--radius-md);border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;background:0 0;align-items: center;gap:.3rem;padding:.375rem .75rem;transition:all .15s;font-size:.75rem;font-weight:500}.sch-rules-add-btn:hover{border-color:var(--brand-primary);color:var(--text);background:var(--brand-hover)}.sch-rules-loading{display:flex;flex-direction:column;gap:.5rem}.sch-rules-skeleton{border-radius:var(--radius-md);background:var(--border-subtle);animation:tm-pulse 1.5s ease-in-out infinite;height:3.5rem}.sch-rules-empty{display:flex;text-align:center;flex-direction:column;justify-content:center;align-items: center;gap:.5rem;padding:2rem 1rem}.sch-rules-empty p{color:var(--text);margin:0;font-size:.875rem;font-weight:600}.sch-rules-empty span{color:var(--text-muted);max-width:320px;font-size:.75rem;line-height:1.5}.sch-rules-empty-cta{border-radius:var(--radius-md);background:var(--brand-bg);color:var(--brand-text);cursor:pointer;border:none;margin-top:.5rem;padding:.4375rem 1rem;transition:all .2s;font-size:.8125rem;font-weight:600}.sch-rules-empty-cta:hover{opacity:.9;transform:scale(1.02)}.sch-rules-list{display:flex;flex-direction:column;gap:.5rem}.sch-rule-card{border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--card-bg);display:flex;flex-direction:column;gap:.625rem;padding:.875rem 1rem;transition:border-color .15s}.sch-rule-card:hover{border-color:var(--brand-primary)}.sch-rule-card.inactive{opacity:.55}.sch-rule-card-main{display:flex;justify-content:space-between;align-items: flex-start;gap:.75rem}.sch-rule-card-left{display:flex;flex-direction:column;gap:.3rem;min-width:0}.sch-rule-employee{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-flex;align-items: center;gap:.375rem;font-size:.8125rem;font-weight:600}.sch-rule-emp-count{display:inline-flex;background:var(--brand-hover);color:var(--brand-primary);border-radius:999px;flex-shrink:0;justify-content:center;align-items: center;min-width:1.125rem;height:1.125rem;padding:0 .3rem;font-size:.625rem;font-weight:700}.sch-rule-template{display:flex;flex-wrap:wrap;align-items: center;gap:.375rem}.sch-rule-chip{display:inline-flex;background:var(--brand-hover);color:var(--brand-primary);border:1px solid var(--brand-border);border-radius:999px;align-items: center;padding:.1875rem .5rem;font-size:.6875rem;font-weight:500}.sch-rule-chip.custom{background:var(--state-info-bg);color:var(--state-info);border-color:var(--state-info-border)}.sch-rule-card-right{display:flex;flex-direction:column;flex-shrink:0;align-items: flex-end;gap:.25rem}.sch-rule-dates{color:var(--text-muted);white-space:nowrap;font-size:.6875rem}.sch-rule-inactive-badge{display:inline-flex;background:var(--state-warning-bg);color:var(--state-warning);border:1px solid var(--state-warning-border);border-radius:999px;align-items: center;padding:.125rem .4375rem;font-size:.625rem;font-weight:600}.sch-rule-card-actions{display:flex;border-top:1px solid var(--border-subtle);align-items: center;gap:.375rem;padding-top:.5rem}.sch-rule-action-btn{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;background:0 0;padding:.25rem .625rem;transition:all .15s;font-size:.6875rem;font-weight:500}.sch-rule-action-btn:hover{border-color:var(--brand-primary);color:var(--text);background:var(--brand-hover)}.sch-rule-action-btn.danger{color:var(--state-error)}.sch-rule-action-btn.danger:hover{border-color:var(--state-error);background:var(--state-error-bg);color:var(--state-error)}.sch-rules-form{display:flex;flex-direction:column;gap:1rem;padding:.5rem 1.5rem 1.5rem}.sch-rules-custom-row{display:flex;flex-wrap:wrap;gap:.75rem}.sch-rules-active-row{display:flex;align-items: center;gap:.5rem}.sch-rules-active-row .cal-modal-label{margin:0}:root.light .sch-chip-pending{background:oklch(.55 .15 220/.06);border-color:oklch(.55 .15 220/.15)}:root.light .sch-generate-section{background:oklch(.97 .005 220);border-color:oklch(.88 .008 220)}:root.light .sch-generate-period{border-color:oklch(.88 .008 220);color:oklch(.45 .01 220)}:root.light .sch-generate-period:hover{border-color:var(--brand-primary);color:oklch(.3 .01 220)}:root.light .sch-rule-card{background:oklch(.98 .003 220);border-color:oklch(.88 .008 220)}:root.light .sch-rule-card:hover{border-color:var(--brand-primary)}:root.light .sch-rule-card-actions{border-top-color:oklch(.88 .008 220)}:root.light .sch-rule-action-btn,:root.light .sch-rules-add-btn{border-color:oklch(.88 .008 220);color:oklch(.45 .01 220)}.sch-assign-mode-toggle{display:flex;background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-md);gap:.25rem;padding:.1875rem}.sch-assign-mode-btn{border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;text-align:center;white-space:nowrap;background:0 0;border:none;flex:1;padding:.4375rem .5rem;transition:all .15s;font-size:.75rem;font-weight:500}.sch-assign-mode-btn:hover{color:var(--text)}.sch-assign-mode-btn.active{background:var(--brand-bg);color:var(--brand-text);box-shadow:0 1px 3px #0000001f}.sch-assign-count{display:block;color:var(--text-muted);margin-top:.375rem;font-size:.75rem}.sch-assign-all-label{padding:.5rem 0}.sch-reassign-info{display:flex;justify-content:space-between;align-items: center;gap:.75rem}.sch-reassign-label{color:var(--text-muted);font-size:.75rem;font-weight:500}.sch-reassign-value{color:var(--text);font-size:.8125rem;font-weight:600}.sch-reassign-divider{background:var(--border-subtle);height:1px;margin:.25rem 0}.sch-reassign-hint{display:block;color:var(--text-muted);margin-top:.25rem;font-size:.6875rem;line-height:1.4}:root.light .sch-assign-mode-toggle{background:oklch(.97 .005 220);border-color:oklch(.88 .008 220)}:root.light .sch-assign-mode-btn{color:oklch(.45 .01 220)}:root.light .sch-assign-mode-btn:hover{color:oklch(.3 .01 220)}:root.light .sch-reassign-divider{background:oklch(.88 .008 220)}:root.light .sch-override-item{background:oklch(.97 .005 220);border-color:oklch(.88 .008 220)}:root.light .sg-pending-override{border-color:oklch(.55 .15 220/.3)!important}.sp-overlay{position:fixed;z-index:90;background:0 0;inset:0}.sp-popover{position:fixed;z-index:91;border-radius:var(--radius-lg);background:var(--popup-glass-bg);border:1px solid var(--popup-glass-border);box-shadow:var(--popup-glass-shadow);backdrop-filter:blur(var(--popup-glass-blur));-webkit-backdrop-filter:blur(var(--popup-glass-blur));display:flex;animation:dropdownIn .18s ease-out forwards;flex-direction:column;gap:.625rem;width:280px;max-width:280px;padding:.875rem}.sp-header{display:flex;justify-content:space-between;align-items: center;gap:.5rem}.sp-header-info{display:flex;flex-direction:column;gap:.1rem;min-width:0}.sp-header-name{color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.85rem;font-weight:600}.sp-header-date{color:var(--text-muted);font-size:.72rem}.sp-delete-btn{display:inline-flex;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items: center;width:1.75rem;height:1.75rem;transition:all .15s}.sp-delete-btn:hover{background:var(--state-error-bg,oklch(.6 .2 25/.1));color:var(--state-error)}.sp-times{display:flex;color:var(--text-muted);align-items: center;gap:.4rem}.sp-time-input{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--hover-bg-subtle);color:var(--text);font-variant-numeric:tabular-nums;outline:none;flex:1;min-width:0;padding:.375rem .5rem;transition:border-color .15s;font-family:inherit;font-size:.82rem;font-weight:600}.sp-time-input:focus{border-color:var(--brand-primary)}.sp-time-arrow{color:var(--text-muted);flex-shrink:0;font-size:.78rem}.sp-break-toggle{display:flex;border-radius:var(--radius-sm);border:1px dashed var(--border-subtle);color:var(--text-muted);cursor:pointer;background:0 0;align-items: center;gap:.35rem;width:100%;padding:.3rem .5rem;transition:all .15s;font-family:inherit;font-size:.75rem;font-weight:500}.sp-break-toggle:hover{background:var(--hover-bg-subtle);border-color:var(--text-muted)}.sp-break-toggle.active{border-style:solid;border-color:var(--brand-primary);color:var(--brand-primary);background:oklch(.55 .15 220/.05)}.sp-break-row{display:flex;align-items: center;gap:.4rem;padding-left:1.6rem}.sp-actions{display:flex;align-items: center;gap:.5rem}.sp-dayoff-wrapper{position:relative}.sp-dayoff-btn{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;padding:.375rem .65rem;transition:all .15s;font-family:inherit;font-size:.78rem;font-weight:500}.sp-dayoff-btn:hover{background:var(--hover-bg);color:var(--text)}.sp-dayoff-menu{position:absolute;border-radius:var(--radius-md);background:var(--popup-glass-bg);border:1px solid var(--popup-glass-border);box-shadow:var(--popup-glass-shadow);backdrop-filter:blur(var(--popup-glass-blur));-webkit-backdrop-filter:blur(var(--popup-glass-blur));z-index:92;animation:dropdownIn .18s ease-out forwards;min-width:150px;padding:.25rem;bottom:calc(100% + .375rem);left:0}.sp-dayoff-menu-item{display:flex;border-radius:var(--radius-sm);color:var(--text);cursor:pointer;background:0 0;border:none;align-items: center;gap:.4rem;width:100%;padding:.4rem .6rem;transition:background .15s;font-family:inherit;font-size:.78rem;font-weight:500}.sp-dayoff-menu-item:hover{background:var(--hover-bg)}.sp-save-btn{border-radius:var(--radius-sm);background:var(--brand-bg);color:var(--brand-text,#fff);cursor:pointer;box-shadow:var(--brand-shadow);border:none;flex:1;padding:.4rem .75rem;transition:all .15s;font-family:inherit;font-size:.78rem;font-weight:600}.sp-save-btn:hover{box-shadow:var(--brand-shadow),0 4px 10px oklch(.55 .15 220/.12);transform:translateY(-1px)}.sp-save-btn:active{transform:scale(.97)}.sp-save-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.sp-link{display:block;text-align:center;color:var(--text-muted);cursor:pointer;border:none;border-top:1px solid var(--border-subtle);background:0 0;margin-top:.125rem;padding:.5rem 0 .35rem;transition:color .15s;font-family:inherit;font-size:.72rem;font-weight:500}.sp-link:hover{color:var(--brand-primary)}.sp-confirm{color:var(--state-warning);border-radius:var(--radius-sm);background:var(--state-warning-bg);text-align:center;padding:.25rem .5rem;font-size:.72rem;font-weight:500}.rh-overlay{position:fixed;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:100;display:flex;animation:tm-fade-in .22s ease;background:#00000073;justify-content:flex-end;inset:0}.rh-panel{background:var(--popup-glass-bg);backdrop-filter:blur(24px)saturate(180%);-webkit-backdrop-filter:blur(24px)saturate(180%);border-left:1px solid var(--popup-glass-border);display:flex;animation:sd-slide-in .32s cubic-bezier(.16,1,.3,1);overflow:hidden;flex-direction:column;width:440px;max-width:100vw;height:100%;box-shadow:-16px 0 48px #0000004d,-2px 0 8px #0000001f,inset 1px 0 #ffffff0d}.rh-accent{background:linear-gradient(90deg,var(--brand-primary),oklch(.65 .18 240),var(--brand-primary));animation:sd-accent-shimmer 3s ease-in-out infinite;background-size:200% 100%;flex-shrink:0;height:3px}.rh-header{display:flex;flex-shrink:0;justify-content:space-between;align-items: center;padding:1.25rem 1.5rem .75rem}.rh-title{color:var(--text);letter-spacing:-.01em;margin:0;font-size:1.15rem;font-weight:700}.rh-close{display:inline-flex;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--hover-bg);color:var(--text-muted);cursor:pointer;flex-shrink:0;justify-content:center;align-items: center;width:2rem;height:2rem;transition:all .15s}.rh-close:hover{background:var(--hover-bg-subtle);color:var(--text);border-color:var(--card-border);transform:scale(1.05)}.rh-close:active{transform:scale(.95)}.rh-body{overflow-y:auto;display:flex;scrollbar-width:thin;scrollbar-color:#ffffff14 transparent;flex-direction:column;flex:1;gap:.75rem;padding:.75rem 1.5rem 1.5rem}.rh-body::-webkit-scrollbar{width:4px}.rh-body::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:999px}.rh-presets{display:flex;flex-wrap:wrap;gap:.5rem}.rh-preset-btn{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--hover-bg);color:var(--text-muted);cursor:pointer;padding:.35rem .75rem;transition:all .15s;font-family:inherit;font-size:.78rem;font-weight:600}.rh-preset-btn:hover{background:var(--brand-hover);color:var(--brand-primary);border-color:var(--brand-border)}.rh-week-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);padding-top:.5rem;font-size:.75rem;font-weight:700}.rh-week-rows{display:flex;flex-direction:column;gap:.25rem}.rh-day-row{display:flex;border-radius:var(--radius-md);flex-wrap:wrap;align-items: center;gap:.5rem;padding:.5rem .65rem;transition:background .15s}.rh-day-row:hover{background:var(--hover-bg)}.rh-day-disabled{opacity:.5}.rh-day-toggle{display:flex;cursor:pointer;align-items: center;gap:.45rem;min-width:5.5rem}.rh-day-toggle input[type=checkbox]{accent-color:var(--brand-primary);cursor:pointer;width:1rem;height:1rem}.rh-day-name{color:var(--text);font-size:.85rem;font-weight:600}.rh-day-disabled .rh-day-name{color:var(--text-muted)}.rh-day-off-label{color:var(--text-muted);font-size:.82rem}.rh-day-times{display:flex;flex:1;align-items: center;gap:.35rem}.rh-time-input{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--card-bg);color:var(--text);width:6.5rem;padding:.35rem .5rem;transition:border-color .15s;font-family:inherit;font-size:.82rem}.rh-time-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 2px var(--brand-hover)}.rh-time-sep{color:var(--text-muted);font-size:.82rem}.rh-break-btn{border-radius:var(--radius-xs,.25rem);color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;padding:.25rem .55rem;transition:all .15s;font-family:inherit;font-size:.75rem}.rh-break-btn:hover{background:var(--hover-bg);color:var(--text)}.rh-break-active{background:var(--brand-hover);color:var(--brand-primary);border-color:var(--brand-border)}.rh-break-row{display:flex;animation:rh-break-open .2s ease;align-items: center;gap:.35rem;width:100%;padding-left:6rem}@keyframes rh-break-open{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.rh-break-label{color:var(--text-muted);min-width:2.5rem;font-size:.75rem}.rh-cycle-toggle{display:flex;border-top:1px solid var(--border-subtle);align-items: center;gap:.75rem;padding:.75rem 0}.rh-cycle-label{color:var(--text);font-size:.82rem;font-weight:600}.rh-radio{display:flex;color:var(--text-muted);cursor:pointer;align-items: center;gap:.3rem;font-size:.82rem}.rh-radio input[type=radio]{accent-color:var(--brand-primary);cursor:pointer}.rh-summary{color:var(--brand-primary);text-align:center;padding:.5rem 0;font-size:1.1rem;font-weight:700}.rh-footer{border-top:1px solid var(--border-subtle);display:flex;background:var(--hover-bg-subtle);flex-shrink:0;justify-content:flex-end;align-items: center;gap:.5rem;padding:1rem 1.5rem}.rh-skeleton{pointer-events:none;opacity:.4}.rh-skel-check{background:var(--border-subtle);animation:rh-pulse 1.2s ease-in-out infinite;border-radius:.25rem;width:1rem;height:1rem}.rh-skel-bar{background:var(--border-subtle);animation:rh-pulse 1.2s ease-in-out infinite;border-radius:.25rem;flex:1;height:.75rem}.rh-skel-short{max-width:4rem}@keyframes rh-pulse{0%,to{opacity:.4}50%{opacity:.7}}@media (max-width:480px){.rh-panel{width:100vw}.rh-header{padding:1rem 1.25rem .75rem}.rh-body{padding:.5rem 1.25rem 1.25rem}.rh-footer{padding:.75rem 1.25rem}.rh-break-row{padding-left:1.5rem}}:root.light .rh-overlay{background:#00000040}:root.light .rh-panel{box-shadow:-16px 0 48px #0000001f,-2px 0 6px #0000000f}:root.light .rh-close{background:oklch(.95 .005 220);border-color:oklch(.88 .008 220)}:root.light .rh-close:hover{background:oklch(.92 .005 220)}:root.light .rh-footer{background:oklch(.97 .005 220)}.sd-expand-toggle{display:flex;border:1px dashed var(--border-subtle);border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;background:0 0;justify-content:space-between;align-items: center;width:100%;padding:.6rem .75rem;transition:all .2s;font-size:.8125rem}.sd-expand-toggle:hover{background:var(--hover-bg,#ffffff0a);color:var(--text);border-color:var(--brand-primary)}.sd-expand-arrow{transition:transform .2s;font-size:1rem}.sd-expand-arrow.open{transform:rotate(90deg)}.sd-expand-content{animation:sd-stagger-in .25s ease forwards}.ctx-overlay{position:fixed;z-index:200;background:0 0;inset:0}.ctx-menu{position:fixed;border-radius:var(--radius-md);background:var(--popup-glass-bg);border:1px solid var(--popup-glass-border);box-shadow:var(--popup-glass-shadow);z-index:201;animation:dropdownIn .18s ease-out forwards;min-width:180px;padding:.375rem}.ctx-item{display:flex;border-radius:var(--radius-sm);color:var(--text);cursor:pointer;background:0 0;border:none;align-items: center;gap:.5rem;width:100%;padding:.45rem .75rem;transition:background .15s;font-family:inherit;font-size:.8rem}.ctx-item:hover{background:var(--hover-bg)}.ctx-item-icon{text-align:center;flex-shrink:0;width:1.25rem;font-size:.9rem}.ctx-divider{border:none;border-top:1px solid var(--border-subtle);margin:.25rem .5rem}.ctx-item-danger{color:var(--state-error)}.ctx-item-danger:hover{background:var(--state-error-bg)}.wn-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.wn-today:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sg-shift-block:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sg-dayoff-block:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sg-mobile-day-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sg-mobile-card:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sg-mobile-month-day-header:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sd-close:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sd-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sd-dayoff-card:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sd-reason-chip:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sd-expand-toggle:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sp-save-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sp-delete-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sp-dayoff-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sp-break-toggle:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sp-dayoff-menu-item:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.rh-close:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.rh-preset-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.rh-break-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-tpl-panel-add:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-tpl-panel-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-tpl-day.selectable:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-tpl-cycle-option:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-tpl-day-break-toggle:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-tpl-add-day:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-tpl-copy-week:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-bulk-bar-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-bulk-bar-clear:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-bulk-tpl-item:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-bulk-dayoff-item:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-override-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-generate-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-generate-period:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-rules-add-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-rules-empty-cta:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-rule-action-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-assign-mode-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sch-confirm-group-header:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.ctx-item:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.sd-input:focus-visible{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 2px var(--brand-hover)}.sd-textarea:focus-visible{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 2px var(--brand-hover)}.sp-time-input:focus-visible{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 2px var(--brand-hover)}.rh-time-input:focus-visible{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 2px var(--brand-hover)}.sch-tpl-day-input:focus-visible{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 2px var(--brand-hover)}.sch-tpl-day-select:focus-visible{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 2px var(--brand-hover)}@media (prefers-reduced-motion:reduce){.sg-employee-row,.sd-drawer,.sd-overlay,.sd-stagger,.sd-expand-content,.sg-emp-tooltip,.cb-tooltip,.sch-tpl-panel,.sch-view-dropdown,.sp-popover,.sp-dayoff-menu,.ctx-menu,.sch-bulk-bar,.sch-bulk-tpl-picker,.sch-bulk-dayoff-picker,.sg-mobile-month-day-content,.rh-break-row{animation-duration:.01ms!important;animation-iteration-count:1!important}.sg-today-num,.sd-accent{animation:none}*,*:before,*:after{transition-duration:.01ms!important}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes landingPulse{0%,to{opacity:.4}50%{opacity:.75}}@keyframes heroTextReveal{0%{opacity:0;transform:translateY(30px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes ctaGlow{0%,to{box-shadow:0 4px 20px color-mix(in oklch,var(--booking-accent)35%,transparent)}50%{box-shadow:0 4px 32px color-mix(in oklch,var(--booking-accent)50%,transparent)}}.landing-page{background:var(--bg);color:var(--text);overflow-x:hidden;--booking-accent:var(--brand-color,var(--brand-primary));--booking-accent-secondary:color-mix(in oklch,var(--booking-accent)12%,transparent);--booking-accent-glow:color-mix(in oklch,var(--booking-accent)35%,transparent);--landing-accent-text:#fff;--section-pad-y:5rem;--section-pad-x:1.5rem;min-height:100vh}.landing-hero{position:relative;display:flex;text-align:center;overflow:hidden;background-color:var(--bg);background-position:50%;background-size:cover;justify-content:center;align-items: center;min-height:100dvh}.landing-hero-overlay{position:absolute;z-index:1;background:linear-gradient(#00000026 0%,#0000008c 100%);inset:0}.landing-hero-content{position:relative;z-index:2;display:flex;padding:2rem var(--section-pad-x);animation:heroTextReveal .8s ease-out both;flex-direction:column;align-items: center;gap:1.25rem;max-width:740px}.landing-hero-logo{object-fit:contain;border-radius:var(--radius-lg);filter:drop-shadow(0 4px 12px #0000004d);width:auto;max-height:80px}.landing-hero h1{color:#fff;letter-spacing:-.02em;text-shadow:0 2px 16px #0006;margin:0;font-size:clamp(2rem,5vw,3.25rem);font-weight:800;line-height:1.15}.landing-hero-tagline{color:#ffffffe0;text-shadow:0 1px 8px #0000004d;max-width:600px;font-size:clamp(1rem,2.5vw,1.25rem);font-weight:400;line-height:1.65}.landing-theme-toggle{position:absolute;z-index:3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#ffffff1f;border:1px solid #ffffff26;border-radius:50%;padding:.375rem;transition:background .2s;top:1.25rem;right:1.25rem}.landing-theme-toggle:hover{background:#fff3}.landing-cta{display:inline-flex;border-radius:var(--radius-pill);letter-spacing:.01em;cursor:pointer;background:var(--booking-accent);color:var(--landing-accent-text);box-shadow:0 4px 20px var(--booking-accent-glow);animation:ctaGlow 3s ease-in-out infinite;border:none;align-items: center;gap:.5rem;padding:1rem 2.5rem;transition:transform .2s,box-shadow .25s,opacity .2s;font-size:1rem;font-weight:700}.landing-cta:hover{box-shadow:0 8px 28px color-mix(in oklch,var(--booking-accent)45%,transparent);transform:translateY(-2px)scale(1.02)}.landing-cta:active{transform:translateY(0)scale(.98)}.landing-cta:focus-visible{outline:2px solid var(--booking-accent);outline-offset:3px}.landing-section{padding:var(--section-pad-y)var(--section-pad-x);max-width:1100px;margin:0 auto}.landing-reveal{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(24px)}.landing-reveal.visible{opacity:1;transform:translateY(0)}.landing-reveal.visible .landing-service-card,.landing-reveal.visible .landing-location-card,.landing-reveal.visible .landing-team-member,.landing-reveal.visible .landing-gallery-grid img{animation:fadeInUp .45s ease both}.landing-reveal.visible .landing-service-card:first-child,.landing-reveal.visible .landing-location-card:first-child,.landing-reveal.visible .landing-team-member:first-child,.landing-reveal.visible .landing-gallery-grid img:first-child{animation-delay:0s}.landing-reveal.visible .landing-service-card:nth-child(2),.landing-reveal.visible .landing-location-card:nth-child(2),.landing-reveal.visible .landing-team-member:nth-child(2),.landing-reveal.visible .landing-gallery-grid img:nth-child(2){animation-delay:60ms}.landing-reveal.visible .landing-service-card:nth-child(3),.landing-reveal.visible .landing-location-card:nth-child(3),.landing-reveal.visible .landing-team-member:nth-child(3),.landing-reveal.visible .landing-gallery-grid img:nth-child(3){animation-delay:.12s}.landing-reveal.visible .landing-service-card:nth-child(4),.landing-reveal.visible .landing-location-card:nth-child(4),.landing-reveal.visible .landing-team-member:nth-child(4),.landing-reveal.visible .landing-gallery-grid img:nth-child(4){animation-delay:.16s}.landing-reveal.visible .landing-service-card:nth-child(5),.landing-reveal.visible .landing-location-card:nth-child(5),.landing-reveal.visible .landing-team-member:nth-child(5),.landing-reveal.visible .landing-gallery-grid img:nth-child(5){animation-delay:.2s}.landing-reveal.visible .landing-service-card:nth-child(6),.landing-reveal.visible .landing-location-card:nth-child(6),.landing-reveal.visible .landing-team-member:nth-child(6),.landing-reveal.visible .landing-gallery-grid img:nth-child(6){animation-delay:.23s}.landing-section-title{color:var(--text);text-align:center;letter-spacing:-.01em;margin:0 0 2rem;font-size:1.875rem;font-weight:700;line-height:1.2}.landing-section-title:after{content:"";display:block;background:var(--booking-accent);border-radius:2px;width:40px;height:3px;margin:.75rem auto 0}.landing-about-text{color:var(--text-muted);text-align:center;white-space:pre-line;max-width:700px;margin:0 auto;font-size:1.0625rem;line-height:1.75}.landing-services-scroll{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-left:var(--section-pad-x);scrollbar-width:none;-ms-overflow-style:none;gap:1.25rem;padding-bottom:.75rem}.landing-services-scroll::-webkit-scrollbar{display:none}.landing-service-card{scroll-snap-align:start;background:var(--card-bg);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);overflow:hidden;display:flex;box-shadow:var(--card-shadow);flex-direction:column;flex:0 0 264px;transition:transform .25s,box-shadow .25s}.landing-service-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px #0000002e}.landing-service-card-img{aspect-ratio:3/2;background-position:50%;background-size:cover}.landing-service-card-body{display:flex;flex-direction:column;flex:1;gap:.375rem;padding:1rem 1rem 1.125rem}.landing-service-card-name{color:var(--text);font-size:.9375rem;font-weight:600;line-height:1.3}.landing-service-card-desc{color:var(--text-muted);display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;-webkit-box-orient:vertical;font-size:.8125rem;line-height:1.5}.landing-service-card-meta{display:flex;color:var(--text-muted);border-top:1px solid var(--border-subtle);align-items: center;gap:.75rem;margin-top:auto;padding-top:.625rem;font-size:.8125rem}.landing-view-all{text-align:center;margin-top:1.5rem}.landing-view-all a{color:var(--booking-accent);text-decoration:none;transition:opacity .15s;font-size:.9375rem;font-weight:600}.landing-view-all a:hover{opacity:.8;text-decoration:underline}.landing-locations-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}.landing-location-card{background:var(--card-bg);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);overflow:hidden;display:flex;box-shadow:var(--card-shadow);flex-direction:column;transition:transform .25s,box-shadow .25s}.landing-location-card:hover{transform:translateY(-3px);box-shadow:0 12px 32px #00000026}.landing-location-card-img{aspect-ratio:16/9;background-position:50%;background-size:cover}.landing-location-card-body{display:flex;flex-direction:column;flex:1;gap:.5rem;padding:1.125rem 1.25rem 1.25rem}.landing-location-card-name{color:var(--text);font-size:1.0625rem;font-weight:700;line-height:1.3}.landing-location-card-detail{display:flex;color:var(--text-muted);align-items: flex-start;gap:.5rem;font-size:.875rem;line-height:1.45}.landing-location-card-detail svg{color:var(--text-muted);flex-shrink:0;width:15px;height:15px;margin-top:2px}.landing-location-book{margin-top:auto;padding-top:1rem}.landing-location-book button{border-radius:var(--radius-pill);border:1.5px solid var(--booking-accent);color:var(--booking-accent);cursor:pointer;background:0 0;width:100%;padding:.625rem;transition:background .2s,color .2s,transform .2s,box-shadow .2s;font-size:.875rem;font-weight:600}.landing-location-book button:hover{background:var(--booking-accent);color:var(--landing-accent-text);box-shadow:0 4px 16px var(--booking-accent-glow);transform:translateY(-1px)}.landing-location-book button:active{transform:translateY(0)scale(.98)}.landing-location-book button:focus-visible{outline:2px solid var(--booking-accent);outline-offset:2px}.landing-team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));justify-items:center;gap:2rem}.landing-team-member{display:flex;text-align:center;flex-direction:column;align-items: center;gap:.625rem}.landing-team-avatar{object-fit:cover;display:flex;color:var(--brand-text);overflow:hidden;border:2px solid var(--border-subtle);background:linear-gradient(135deg,var(--booking-accent),color-mix(in oklch,var(--booking-accent)60%,#000));border-radius:50%;justify-content:center;align-items: center;width:80px;height:80px;transition:transform .25s,box-shadow .25s;font-size:1.5rem;font-weight:700}.landing-team-member:hover .landing-team-avatar{box-shadow:0 4px 16px var(--booking-accent-glow);transform:scale(1.05)}.landing-team-avatar img{object-fit:cover;width:100%;height:100%}.landing-team-name{color:var(--text);font-size:.875rem;font-weight:600;line-height:1.3}.landing-team-title{color:var(--text-muted);font-size:.8125rem;line-height:1.3}.landing-gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.landing-gallery-btn{display:block;cursor:pointer;border-radius:var(--radius-md);overflow:hidden;background:0 0;border:none;padding:0;transition:transform .3s,box-shadow .3s}.landing-gallery-btn:hover{transform:scale(1.02);box-shadow:0 12px 32px #0003}.landing-gallery-btn:focus-visible{outline:2px solid var(--booking-accent);outline-offset:2px}.landing-gallery-grid img{aspect-ratio:4/3;object-fit:cover;display:block;background:var(--card-bg);width:100%}@keyframes lightboxScaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.landing-lightbox{position:fixed;z-index:100;display:flex;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);animation:tm-fade-in .2s ease both;background:#000000d9;justify-content:center;align-items: center;padding:2rem;inset:0}.landing-lightbox-content{position:relative;display:flex;animation:lightboxScaleIn .25s ease both;flex-direction:column;align-items: center;gap:1rem;max-width:90vw;max-height:85vh}.landing-lightbox-content img{object-fit:contain;border-radius:var(--radius-md);max-width:100%;max-height:78vh;box-shadow:0 24px 64px #00000080}.landing-lightbox-nav{display:flex;align-items: center;gap:1rem}.landing-lightbox-nav button{display:flex;color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items: center;width:40px;height:40px;transition:background .15s,transform .15s}.landing-lightbox-nav button:hover{background:#fff3;transform:scale(1.06)}.landing-lightbox-nav button:focus-visible{outline:2px solid #fff;outline-offset:2px}.landing-lightbox-counter{color:#ffffffb3;font-variant-numeric:tabular-nums;text-align:center;min-width:3rem;font-size:.8125rem}.landing-lightbox-close{position:absolute;display:flex;color:#fff;cursor:pointer;z-index:101;background:#ffffff1a;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items: center;width:44px;height:44px;transition:background .15s,transform .15s;top:1rem;right:1rem}.landing-lightbox-close:hover{background:#fff3;transform:scale(1.06)}.landing-lightbox-close:focus-visible{outline:2px solid #fff;outline-offset:2px}.landing-contact-inner{display:flex;flex-direction:column;align-items: center;gap:1rem;max-width:600px;margin:0 auto}.landing-contact-item{display:flex;color:var(--text);align-items: center;gap:.625rem;font-size:1rem}.landing-contact-item svg{color:var(--booking-accent);flex-shrink:0;width:20px;height:20px}.landing-contact-item a{color:var(--text);text-decoration:none;transition:color .15s}.landing-contact-item a:hover{color:var(--booking-accent)}.landing-socials{display:flex;gap:.75rem;margin-top:.75rem}.landing-social-link{display:flex;background:var(--card-bg);border:1px solid var(--border-subtle);color:var(--text-muted);border-radius:50%;justify-content:center;align-items: center;width:44px;height:44px;transition:background .2s,color .2s,border-color .2s,transform .2s}.landing-social-link:hover{background:var(--booking-accent);border-color:var(--booking-accent);color:var(--landing-accent-text);transform:translateY(-2px)}.landing-social-link:focus-visible{outline:2px solid var(--booking-accent);outline-offset:2px}.landing-social-link svg{fill:currentColor;width:18px;height:18px}.landing-footer{text-align:center;padding:3rem var(--section-pad-x)4rem;display:flex;border-top:1px solid var(--border-subtle);flex-direction:column;align-items: center;gap:1.25rem;max-width:1100px;margin:0 auto}.landing-powered{color:var(--text-muted);opacity:.6;letter-spacing:.01em;font-size:.8125rem}.landing-skeleton{background:var(--bg);min-height:100vh}.landing-skeleton-hero{background:var(--card-bg);display:flex;justify-content:center;align-items: center;height:100dvh}.landing-skeleton-block{background:var(--border-subtle);border-radius:var(--radius-md);animation:landingPulse 1.5s ease-in-out infinite}.landing-skeleton-blocks{display:flex;flex-direction:column;gap:2rem;max-width:1100px;margin:0 auto;padding:3rem 1.5rem}.landing-skeleton-row{display:flex;gap:1.25rem}.landing-error{display:flex;background:var(--bg);color:var(--text);flex-direction:column;justify-content:center;align-items: center;gap:1.25rem;min-height:80vh;padding:2rem}.landing-error p{color:var(--text-muted);text-align:center;max-width:400px;font-size:1.125rem;line-height:1.6}.landing-error button{border-radius:var(--radius-pill);border:1px solid var(--border-subtle);background:var(--card-bg);color:var(--text);cursor:pointer;padding:.75rem 2rem;transition:background .2s,transform .2s;font-size:.9375rem;font-weight:600}.landing-error button:hover{background:var(--hover-bg);transform:translateY(-1px)}.landing-error button:focus-visible{outline:2px solid var(--booking-accent);outline-offset:2px}@media (max-width:480px){.landing-page{--section-pad-y:3rem;--section-pad-x:1rem}.landing-hero{min-height:80dvh}.landing-section-title{font-size:1.5rem}.landing-service-card{flex:0 0 240px}.landing-team-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:1.25rem}.landing-team-avatar{width:64px;height:64px;font-size:1.25rem}.landing-gallery-grid{gap:.625rem}}@media (min-width:768px){.landing-locations-grid{grid-template-columns:repeat(2,1fr)}.landing-gallery-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:1024px){.landing-page{--section-pad-y:5rem;--section-pad-x:2rem}.landing-locations-grid{grid-template-columns:repeat(3,1fr)}.landing-service-card{flex:0 0 280px}}@media (prefers-reduced-motion:reduce){.landing-hero-content,.landing-cta,.landing-reveal.visible .landing-service-card,.landing-reveal.visible .landing-location-card,.landing-reveal.visible .landing-team-member,.landing-reveal.visible .landing-gallery-grid img,.landing-lightbox,.landing-lightbox-content,.landing-skeleton-block{animation:none!important}.landing-reveal{opacity:1;transform:none;transition:none!important}.landing-service-card,.landing-location-card,.landing-location-book button,.landing-gallery-btn,.landing-social-link,.landing-error button,.landing-team-avatar{transition:none!important}}.loc-page{padding:var(--space-6)var(--space-8);max-width:var(--content-max-width,1400px);box-sizing:border-box;width:100%;height:100%;margin:0 auto}.loc-layout{display:grid;grid-template-columns:300px 1fr;align-items: start;gap:1.5rem;min-height:0}.loc-sidebar{border:1px solid var(--glass-border);border-radius:var(--radius-lg);background:var(--glass-bg);backdrop-filter:blur(12px)saturate(150%);-webkit-backdrop-filter:blur(12px)saturate(150%);box-shadow:var(--card-shadow);overflow:hidden;display:flex;position:sticky;flex-direction:column;top:1.5rem}.loc-sidebar-search{border-bottom:1px solid var(--border-subtle);padding:.75rem}.loc-sidebar-list{overflow-y:auto;flex:1;padding:.375rem}.loc-sidebar-item{display:flex;border-radius:var(--radius-md);cursor:pointer;text-align:left;color:var(--text);background:0 0;border:none;justify-content:space-between;align-items: center;gap:.5rem;width:100%;padding:.625rem .75rem;transition:all .15s}.loc-sidebar-item:hover{background:var(--hover-bg)}.loc-sidebar-item.active{background:color-mix(in oklch,var(--brand-primary)12%,transparent);color:var(--brand-primary)}.loc-sidebar-item-info{display:flex;flex-direction:column;gap:.125rem;min-width:0}.loc-sidebar-item-name{display:flex;align-items: center;gap:.375rem;font-size:.875rem;font-weight:500}.loc-sidebar-item-address{color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.75rem}.loc-sidebar-item-meta{display:flex;flex-shrink:0;align-items: center;gap:.375rem}.loc-sidebar-item-count{border-radius:var(--radius-pill);background:var(--hover-bg);color:var(--text-muted);flex-shrink:0;padding:.125rem .5rem;font-size:.6875rem;font-weight:600}.loc-sidebar-item.active .loc-sidebar-item-count{background:color-mix(in oklch,var(--brand-primary)20%,transparent);color:var(--brand-primary)}.loc-sidebar-item-inactive{border-radius:var(--radius-pill);background:var(--state-warning-bg);color:var(--state-warning);border:1px solid var(--state-warning-border);text-transform:uppercase;letter-spacing:.04em;flex-shrink:0;padding:.0625rem .375rem;font-size:.5625rem;font-weight:600}.loc-unsaved-dot{display:inline-block;background:var(--state-warning);border-radius:50%;flex-shrink:0;width:6px;height:6px}.loc-main{display:flex;overflow-y:auto;flex-direction:column;gap:1rem}.loc-header-card{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--card-bg);display:flex;justify-content:space-between;align-items: flex-start;gap:1rem;padding:1.25rem 1.5rem}.loc-header-info{display:flex;flex-direction:column;gap:.25rem;min-width:0}.loc-header-name{color:var(--text);display:flex;align-items: center;gap:.5rem;margin:0;font-size:1.25rem;font-weight:600}.loc-header-address{color:var(--text-muted);margin:0;font-size:.8125rem}.loc-save-bar{position:sticky;display:flex;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);backdrop-filter:blur(12px)saturate(150%);-webkit-backdrop-filter:blur(12px)saturate(150%);box-shadow:0 -4px 16px oklch(.1 0 0/.1);animation:locFadeIn .2s ease forwards;justify-content:flex-end;align-items: center;gap:.75rem;margin-top:.5rem;padding:1rem 1.5rem;bottom:0}.loc-save-badge{color:var(--state-warning);border-radius:var(--radius-pill);background:var(--state-warning-bg);border:1px solid var(--state-warning-border);padding:.25rem .625rem;font-size:.75rem;font-weight:500}.loc-section{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--card-bg);overflow:hidden;transition:box-shadow .2s}.loc-section-header{display:flex;cursor:pointer;user-select:none;justify-content:space-between;align-items: center;padding:1rem 1.5rem;transition:background .15s}.loc-section-header:hover{background:var(--hover-bg-subtle)}.loc-section-header-left{display:flex;align-items: center;gap:.75rem}.loc-section-icon{display:flex;border-radius:var(--radius-sm);color:var(--brand-primary);background:var(--brand-hover);flex-shrink:0;justify-content:center;align-items: center;width:2rem;height:2rem}.loc-section-icon svg{width:16px;height:16px}.loc-section-title-group{display:flex;flex-direction:column}.loc-section-title{color:var(--text);margin:0;font-size:.875rem;font-weight:600}.loc-section-subtitle{color:var(--text-muted);margin:.0625rem 0 0;font-size:.75rem}.loc-section-chevron{display:flex;color:var(--text-muted);align-items: center;transition:transform .2s}.loc-section-chevron.open{transform:rotate(90deg)}.loc-section-body{display:flex;animation:locFadeIn .2s ease forwards;flex-direction:column;gap:1rem;padding:0 1.5rem 1.5rem}@keyframes locFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.loc-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.loc-form-full{grid-column:1/-1}.loc-form-group{display:flex;flex-direction:column;gap:.375rem}.loc-form-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:600}.loc-form-input{border-radius:var(--radius-md);border:1px solid var(--input-border);font-size:var(--font-sm);outline:none;background:var(--input-bg);color:var(--text);box-sizing:border-box;width:100%;padding:.5rem .75rem;transition:all .2s;font-family:inherit}.loc-form-input:focus{border-color:var(--brand-primary);box-shadow:var(--input-focus-ring)}.loc-form-input::placeholder{color:var(--placeholder-color)}textarea.loc-form-input{resize:vertical;min-height:5rem;line-height:1.5}.loc-form-hint{color:var(--text-muted);margin:0;font-size:.75rem;line-height:1.4}.loc-status-row{display:flex;border-radius:var(--radius-md);background:var(--hover-bg-subtle);justify-content:space-between;align-items: center;padding:.75rem 1rem}.loc-status-info{display:flex;flex-direction:column;gap:.125rem}.loc-status-label{color:var(--text);font-size:.875rem;font-weight:500}.loc-status-hint{color:var(--text-muted);font-size:.75rem}.loc-workdays{display:flex;flex-wrap:wrap;gap:.375rem}.loc-workday-btn{border-radius:var(--radius-sm);border:1px solid var(--input-border);background:var(--input-bg);color:var(--text-muted);cursor:pointer;display:flex;justify-content:center;align-items: center;width:2.5rem;height:2.5rem;transition:all .15s;font-size:.75rem;font-weight:600}.loc-workday-btn:hover{border-color:var(--brand-primary);color:var(--brand-primary)}.loc-workday-btn.active{background:var(--brand-hover);border-color:var(--brand-primary);color:var(--brand-primary)}.loc-employee-list{display:flex;flex-direction:column;gap:.25rem}.loc-employee-card{display:flex;border-radius:var(--radius-sm);align-items: center;gap:.75rem;padding:.5rem .625rem;transition:background .15s}.loc-employee-card:hover{background:var(--hover-bg)}.loc-employee-avatar{background:color-mix(in oklch,var(--brand-primary)15%,transparent);color:var(--brand-primary);display:flex;border-radius:50%;flex-shrink:0;justify-content:center;align-items: center;width:2rem;height:2rem;font-size:.8125rem;font-weight:600}.loc-employee-info{display:flex;flex-direction:column;flex:1;min-width:0}.loc-employee-name{color:var(--text);font-size:.875rem;font-weight:500}.loc-employee-email{color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.75rem}.loc-role-badge{border-radius:var(--radius-pill);white-space:nowrap;flex-shrink:0;padding:.125rem .5rem;font-size:.6875rem;font-weight:500}.loc-role-admin{background:color-mix(in oklch,var(--state-error)12%,transparent);color:var(--state-error)}.loc-role-manager{background:color-mix(in oklch,var(--state-warning)12%,transparent);color:var(--state-warning)}.loc-role-employee{background:color-mix(in oklch,var(--brand-primary)12%,transparent);color:var(--brand-primary)}.loc-role-hr{background:color-mix(in oklch,var(--state-success)12%,transparent);color:var(--state-success)}.loc-employee-remove{display:flex;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;opacity:0;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items: center;width:1.5rem;height:1.5rem;transition:all .15s;font-size:1rem;line-height:1}.loc-employee-card:hover .loc-employee-remove{opacity:1}.loc-employee-remove:hover{background:color-mix(in oklch,var(--state-error)12%,transparent);color:var(--state-error)}.loc-granularity-chips{display:flex;flex-wrap:wrap;gap:.375rem}.loc-gran-chip{border-radius:var(--radius-sm);border:1px solid var(--input-border);background:var(--input-bg);color:var(--text-muted);cursor:pointer;padding:.375rem .75rem;transition:all .15s;font-size:.8125rem;font-weight:500}.loc-gran-chip:hover{border-color:var(--brand-primary);color:var(--brand-primary)}.loc-gran-chip.active{background:var(--brand-hover);border-color:var(--brand-primary);color:var(--brand-primary);font-weight:600}.loc-number-row{display:flex;align-items: center;gap:.5rem}.loc-number-input{border-radius:var(--radius-md);border:1px solid var(--input-border);font-size:var(--font-sm);outline:none;background:var(--input-bg);color:var(--text);box-sizing:border-box;width:5rem;padding:.5rem .75rem;transition:all .2s}.loc-number-input:focus{border-color:var(--brand-primary);box-shadow:var(--input-focus-ring)}.loc-number-unit{color:var(--text-muted);font-size:.8125rem}.loc-toggles{display:flex;flex-direction:column;gap:.5rem}.loc-toggle-item{display:flex;border-radius:var(--radius-md);background:var(--hover-bg-subtle);justify-content:space-between;align-items: center;padding:.75rem 1rem}.loc-toggle-label{display:flex;flex-direction:column;gap:.125rem}.loc-toggle-name{color:var(--text);font-size:.875rem;font-weight:500}.loc-toggle-hint{color:var(--text-muted);font-size:.75rem}.loc-booking-field{display:flex;flex-direction:column;gap:.25rem}.loc-booking-field-label{color:var(--text);font-size:.8125rem;font-weight:500}.loc-booking-divider{background:var(--border-subtle);height:1px;margin:.25rem 0}.loc-empty{color:var(--text-muted);text-align:center;margin:0;padding:1.5rem 1rem;font-size:.8125rem}.loc-empty-state{display:flex;text-align:center;border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--card-bg);flex-direction:column;justify-content:center;align-items: center;gap:1rem;padding:4rem 2rem}.loc-empty-state-icon{display:flex;border-radius:var(--radius-md);background:var(--brand-hover);color:var(--brand-primary);justify-content:center;align-items: center;width:3rem;height:3rem}.loc-empty-state-title{color:var(--text);margin:0;font-size:.9375rem;font-weight:600}.loc-empty-state-desc{color:var(--text-muted);margin:0;font-size:.8125rem}@media (max-width:768px){.loc-page{padding:1rem}.loc-layout{grid-template-columns:1fr}.loc-sidebar{position:static;max-height:250px}.loc-form-grid{grid-template-columns:1fr}.loc-header-card{flex-direction:column;gap:.75rem}.loc-employee-remove{opacity:1}.loc-save-bar{border-radius:var(--radius-lg)var(--radius-lg)0 0;margin-left:-1rem;margin-right:-1rem;padding:.75rem 1rem}}@media (max-width:480px){.loc-workdays{gap:.25rem}.loc-workday-btn{width:2.25rem;height:2.25rem;font-size:.6875rem}}.loc-sidebar-item:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.loc-workday-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.loc-gran-chip:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.loc-employee-remove:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.loc-section-header:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.loc-form-input:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}@media (prefers-reduced-motion:reduce){.loc-sidebar-item,.loc-workday-btn,.loc-section-header,.loc-employee-card{animation:none!important;transition:none!important}}.queue-filters{display:flex;gap:var(--space-3);margin-bottom:var(--space-5);flex-wrap:wrap;align-items: center}.queue-toolbar{display:flex;padding:var(--space-2)var(--space-1);margin-bottom:var(--space-2);align-items: center}.queue-check-label{display:flex;align-items: center;gap:var(--space-2);font-size:var(--font-sm);color:var(--text-muted);cursor:pointer;user-select:none;font-weight:500}.queue-check-label input[type=checkbox]{accent-color:var(--brand-primary);cursor:pointer;width:16px;height:16px}.queue-list-container{border:1px solid var(--card-border);border-radius:var(--radius-md);overflow:hidden;background:var(--card-bg);box-shadow:var(--card-shadow)}.queue-row{display:flex;align-items: center;gap:var(--space-3);padding:var(--space-4)var(--space-5);border-bottom:1px solid var(--border-subtle);animation:tm-fade-in-up .25s ease both;position:relative;transition:background .15s}.queue-row:last-child{border-bottom:none}.queue-row:hover{background:var(--hover-bg)}.queue-row--selected,.queue-row--selected:hover{background:var(--brand-hover)}.queue-row-check{display:flex;cursor:pointer;flex-shrink:0;justify-content:center;align-items: center}.queue-row-check input[type=checkbox]{accent-color:var(--brand-primary);cursor:pointer;width:16px;height:16px}.queue-row-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.queue-row-info{display:flex;flex-direction:column;flex:1;gap:2px;min-width:0}.queue-row-primary{display:flex;align-items: center;gap:var(--space-2)}.queue-row-title{font-size:var(--font-base);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}.queue-row-badge{font-size:var(--font-2xs);text-transform:uppercase;letter-spacing:.04em;border-radius:var(--radius-pill);background:var(--state-warning-bg);color:var(--state-warning);border:1px solid var(--state-warning-border);flex-shrink:0;padding:1px 8px;font-weight:600;line-height:1.6}.queue-row-meta{display:flex;align-items: center;gap:var(--space-1)var(--space-3);flex-wrap:wrap}.queue-row-meta-item{display:inline-flex;font-size:var(--font-xs);color:var(--text-muted);align-items: center;gap:4px}.queue-row-meta-item svg{opacity:.5;flex-shrink:0}.queue-row-date{text-align:right;font-size:var(--font-xs);color:var(--text-muted);white-space:nowrap;flex-shrink:0}.queue-row-actions{display:flex;gap:var(--space-1);opacity:0;flex-shrink:0;transition:opacity .15s}.queue-row:hover .queue-row-actions,.queue-row:focus-within .queue-row-actions{opacity:1}.queue-act{display:flex;border-radius:var(--radius-sm);cursor:pointer;color:var(--text-muted);background:0 0;border:1px solid #0000;justify-content:center;align-items: center;width:32px;height:32px;transition:all .15s}.queue-act:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.queue-act:disabled{opacity:.4;cursor:not-allowed}.queue-act-approve:hover:not(:disabled){background:var(--state-success-bg);border-color:var(--state-success-border);color:var(--state-success)}.queue-act-reject:hover:not(:disabled){background:var(--state-error-bg);border-color:var(--state-error-border);color:var(--state-error)}.queue-float-bar{position:fixed;bottom:var(--space-6);display:flex;align-items: center;gap:var(--space-3);padding:var(--space-3)var(--space-5);background:var(--popup-glass-bg);backdrop-filter:blur(var(--popup-glass-blur))saturate(150%);-webkit-backdrop-filter:blur(var(--popup-glass-blur))saturate(150%);border:1px solid var(--popup-glass-border);border-radius:var(--radius-pill);box-shadow:var(--popup-glass-shadow);z-index:var(--z-sticky);animation:queue-float-in .25s ease-out both;left:50%;transform:translate(-50%)}@keyframes queue-float-in{0%{opacity:0;transform:translate(-50%)translateY(12px)scale(.96)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}.queue-float-select{display:flex;align-items: center;gap:var(--space-2);font-size:var(--font-sm);color:var(--text);cursor:pointer;user-select:none;white-space:nowrap;font-weight:600}.queue-float-select input[type=checkbox]{accent-color:var(--brand-primary);cursor:pointer;width:16px;height:16px}.queue-float-divider{background:var(--border-subtle);flex-shrink:0;width:1px;height:20px}.queue-float-btn{display:inline-flex;align-items: center;gap:var(--space-2);font-size:var(--font-sm);border-radius:var(--radius-pill);cursor:pointer;white-space:nowrap;border:1px solid #0000;padding:.4rem .9rem;transition:all .2s;font-weight:600}.queue-float-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.queue-float-btn:disabled{opacity:.5;cursor:not-allowed}.queue-float-approve{background:var(--state-success-bg);color:var(--state-success);border-color:var(--state-success-border)}.queue-float-approve:hover:not(:disabled){background:var(--state-success);color:var(--brand-text);box-shadow:0 2px 12px oklch(.7 .15 140/.3)}.queue-float-approve:active:not(:disabled){transform:scale(.97)}.queue-float-reject{background:var(--state-error-bg);color:var(--state-error);border-color:var(--state-error-border)}.queue-float-reject:hover:not(:disabled){background:var(--state-error);color:var(--brand-text);box-shadow:0 2px 12px oklch(.7 .15 20/.3)}.queue-float-reject:active:not(:disabled){transform:scale(.97)}.queue-skeleton-list{display:flex;border:1px solid var(--card-border);border-radius:var(--radius-md);overflow:hidden;flex-direction:column;gap:2px}.queue-skeleton-row{border-radius:0;height:4rem}@media (max-width:640px){.queue-row{padding:var(--space-3);gap:var(--space-2);flex-wrap:wrap}.queue-row-date{text-align:left;order:10;width:100%;padding-left:28px}.queue-row-actions{opacity:1}.queue-float-bar{left:var(--space-3);right:var(--space-3);border-radius:var(--radius-md);justify-content:center;transform:none}@keyframes queue-float-in{0%{opacity:0;transform:translateY(12px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.queue-card-details{gap:var(--space-2);flex-direction:column}.queue-card-actions{flex-direction:column}.queue-btn{justify-content:center}}@media (prefers-reduced-motion:reduce){.queue-card{animation:none}}.avatar-editable{position:relative;display:inline-flex;cursor:pointer;border-radius:50%;transition:box-shadow .2s}.avatar-editable:hover{box-shadow:0 0 0 3px color-mix(in oklch,var(--brand-primary)25%,transparent)}.avatar-editable:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.avatar-editable-overlay{position:absolute;display:flex;background:oklch(0 0 0/.45);opacity:0;pointer-events:none;border-radius:50%;justify-content:center;align-items: center;transition:opacity .2s;inset:0}.avatar-editable:hover .avatar-editable-overlay,.avatar-editable.has-staged .avatar-editable-overlay{opacity:1}.avatar-editable-overlay svg{color:#fff;filter:drop-shadow(0 1px 2px oklch(0 0 0/.3))}.avatar-editable.has-staged{box-shadow:0 0 0 3px var(--brand-primary),0 0 12px color-mix(in oklch,var(--brand-primary)30%,transparent)}.avatar-editable.has-staged .avatar-editable-overlay{background:color-mix(in oklch,var(--brand-primary)30%,oklch(0 0 0/.3))}.crop-modal.cal-modal{overflow:visible}.crop-viewport-wrap{display:flex;justify-content:center;align-items: center;padding:.75rem 1.25rem}.crop-viewport{position:relative;overflow:hidden;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none;background:var(--card-bg);box-shadow:0 0 0 1px var(--border-subtle),0 0 0 4px var(--card-bg),0 0 0 5px var(--border-subtle);border-radius:50%;width:280px;height:280px}.crop-viewport:active{cursor:grabbing}.crop-viewport img{position:absolute;transform-origin:0 0;pointer-events:none;-webkit-user-drag:none;max-width:none;top:0;left:0}.crop-viewport:after{content:"";position:absolute;box-shadow:0 0 0 2px color-mix(in oklch,var(--brand-primary)40%,transparent);pointer-events:none;z-index:2;border-radius:50%;inset:0}.crop-zoom{display:flex;align-items: center;gap:.75rem;padding:0 1.5rem .75rem}.crop-zoom-icon{color:var(--text-muted);flex-shrink:0}.crop-zoom-range{-webkit-appearance:none;appearance:none;background:var(--border-subtle);outline:none;cursor:pointer;border-radius:2px;flex:1;height:4px}.crop-zoom-range::-webkit-slider-thumb{-webkit-appearance:none;background:var(--brand-primary);border:2px solid var(--card-bg);box-shadow:0 1px 4px oklch(0 0 0/.3);cursor:pointer;border-radius:50%;width:16px;height:16px;transition:transform .15s}.crop-zoom-range::-webkit-slider-thumb:hover{transform:scale(1.15)}.crop-zoom-range::-moz-range-thumb{background:var(--brand-primary);border:2px solid var(--card-bg);box-shadow:0 1px 4px oklch(0 0 0/.3);cursor:pointer;border-radius:50%;width:16px;height:16px}.crop-btn{border-radius:var(--radius-sm);cursor:pointer;border:none;padding:.5rem 1.25rem;transition:all .15s;font-size:.8125rem;font-weight:600}.crop-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.crop-btn--cancel{color:var(--text-muted);border:1px solid var(--border-subtle);background:0 0}.crop-btn--cancel:hover{background:var(--hover-bg);color:var(--text)}.crop-btn--save{background:var(--brand-primary);color:var(--brand-text);box-shadow:var(--brand-shadow)}.crop-btn--save:hover{opacity:.9}.crop-btn--save:active{transform:scale(.97)}@media (max-width:400px){.crop-viewport{width:min(280px,75vw);height:min(280px,75vw)}.crop-modal{max-width:calc(100vw - 2rem)}}@media (prefers-reduced-motion:reduce){.crop-zoom-range::-webkit-slider-thumb{transition:none}}@layer base{.login-orb{position:absolute;filter:blur(80px);opacity:.35;pointer-events:none;will-change:transform;border-radius:50%}.login-orb--1{background:var(--brand-primary);animation:login-orb-float 12s ease-in-out infinite;width:400px;height:400px;top:-10%;left:-5%}.login-orb--2{background:color-mix(in oklch,var(--brand-primary)60%,oklch(.6 .2 280));animation:login-orb-float 15s ease-in-out infinite reverse;width:300px;height:300px;bottom:-5%;right:-8%}.login-orb--3{background:color-mix(in oklch,var(--brand-primary)40%,oklch(.65 .18 160));animation:login-orb-float 10s ease-in-out infinite 2s;width:200px;height:200px;top:50%;left:60%}@keyframes login-orb-float{0%,to{transform:translate(0)scale(1)}25%{transform:translate(30px,-40px)scale(1.08)}50%{transform:translate(-20px,25px)scale(.95)}75%{transform:translate(15px,15px)scale(1.05)}}.login-card{position:relative;border-radius:var(--radius-lg);background:color-mix(in oklch,var(--card-bg)72%,transparent);border:1px solid color-mix(in oklch,var(--glass-border)50%,transparent);backdrop-filter:blur(24px)saturate(1.5);-webkit-backdrop-filter:blur(24px)saturate(1.5);animation:login-card-in .4s cubic-bezier(.4,0,.15,1);overflow:hidden;padding:2.5rem 2rem 2rem;box-shadow:0 8px 32px #0000002e,0 1.5px 4px #00000014,inset 0 .5px #ffffff0f}.login-card:before{content:"";position:absolute;background:linear-gradient(90deg,transparent,color-mix(in oklch,var(--brand-primary)40%,transparent),transparent);border-radius:1px;height:1px;top:0;left:10%;right:10%}@keyframes login-card-in{0%{opacity:0;transform:translateY(24px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.login-brand{display:flex;justify-content:center;align-items: center;gap:.625rem;margin-bottom:1.75rem}.login-brand-icon{display:flex;border-radius:var(--radius-md);background:color-mix(in oklch,var(--brand-primary)15%,transparent);border:1px solid color-mix(in oklch,var(--brand-primary)30%,transparent);color:var(--brand-primary);justify-content:center;align-items: center;width:44px;height:44px}.login-brand-text{letter-spacing:-.03em;color:var(--text);font-size:1.375rem;font-weight:800}.login-title{color:var(--text);letter-spacing:-.02em;margin:0 0 .25rem;font-size:1.625rem;font-weight:700}.login-subtitle{color:var(--text-muted);margin:0;font-size:.875rem}.login-bubble{display:flex;border-radius:var(--radius-md);background:color-mix(in oklch,var(--card-bg)70%,transparent);backdrop-filter:blur(20px)saturate(1.3);-webkit-backdrop-filter:blur(20px)saturate(1.3);animation:login-bubble-in .3s cubic-bezier(.4,0,.15,1);align-items: center;gap:.5rem;margin-bottom:.75rem;padding:.75rem 1rem;font-size:.8125rem;font-weight:500;box-shadow:0 4px 20px #00000014,inset 0 .5px #ffffff0a}.login-bubble--error{border:1px solid color-mix(in oklch,var(--state-error)18%,var(--glass-border));color:var(--state-error);animation:login-bubble-in .3s cubic-bezier(.4,0,.15,1),login-shake .4s .15s ease}.login-bubble--success{border:1px solid color-mix(in oklch,var(--state-success)18%,var(--glass-border));color:var(--state-success)}@keyframes login-bubble-in{0%{opacity:0;transform:translateY(8px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes login-shake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(5px)}60%{transform:translate(-4px)}80%{transform:translate(2px)}}.login-form{display:flex;flex-direction:column;gap:1.25rem}.login-field{display:flex;flex-direction:column;gap:.375rem}.login-label-row{display:flex;justify-content:space-between;align-items: center}.login-label{color:var(--text-muted);font-size:.8125rem;font-weight:600}.login-forgot{font-size:.75rem}.login-input-wrap{position:relative;display:flex;align-items: center}.login-input-icon{position:absolute;color:var(--text-muted);pointer-events:none;z-index:1;transition:color .15s;left:.875rem}.login-input-wrap:focus-within .login-input-icon{color:var(--brand-primary)}.login-input{border-radius:var(--radius-md);font-size:var(--font-sm);background:color-mix(in oklch,var(--input-bg)80%,transparent);border:1px solid var(--border-subtle);color:var(--text);width:100%;padding:.75rem .875rem .75rem 2.75rem;transition:border-color .15s,box-shadow .15s,background .15s}.login-input::placeholder{color:var(--text-muted);opacity:.6}.login-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 3px color-mix(in oklch,var(--brand-primary)15%,transparent),0 0 20px color-mix(in oklch,var(--brand-primary)8%,transparent);background:var(--input-bg)}.login-submit{display:flex;border-radius:var(--radius-md);cursor:pointer;border:none;justify-content:center;align-items: center;gap:.5rem;width:100%;margin-top:.25rem;padding:.8125rem;transition:transform .15s,box-shadow .15s,filter .15s;font-size:.9375rem;font-weight:700}.login-submit:hover:not(:disabled){filter:brightness(1.12);transform:translateY(-1px)}.login-submit:active:not(:disabled){transform:translateY(0)scale(.99)}.login-submit:disabled{opacity:.55;cursor:not-allowed}.login-spinner{display:inline-block;border:2.5px solid color-mix(in oklch,var(--brand-text)30%,transparent);border-top-color:var(--brand-text);animation:tm-spin .6s linear infinite;border-radius:50%;width:20px;height:20px}.login-divider{display:flex;align-items: center;gap:.75rem;margin:1.25rem 0 1rem}.login-divider:before,.login-divider:after{content:"";background:var(--border-subtle);flex:1;height:1px}.login-divider span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.75rem;font-weight:500}.login-register{text-align:center;color:var(--text-muted);margin:0;font-size:.875rem}@media (max-width:480px){.login-card{border-radius:var(--radius-lg);padding:2rem 1.5rem 1.5rem}.login-title{font-size:1.375rem}.login-orb{opacity:.2}}@media (prefers-reduced-motion:reduce){.login-orb,.login-card,.login-bubble{animation:none}}.login-input:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.login-submit:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.login-forgot:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px;border-radius:var(--radius-sm)}}.ana-page{max-width:960px}.ana-controls{display:flex;align-items: center;gap:var(--space-3)}.ana-range-tabs{display:flex;background:var(--glass-bg);border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow:hidden}.ana-range-tab{padding:var(--space-1)var(--space-3);font-size:var(--font-xs);color:var(--text-secondary);cursor:pointer;background:0 0;border:none;transition:background .15s,color .15s;font-weight:500}.ana-range-tab:hover{background:var(--glass-hover);color:var(--text)}.ana-range-tab--active{background:var(--brand-primary);color:#fff}.ana-loading{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-3)}.ana-empty{text-align:center;color:var(--text-secondary);padding:var(--space-10)0;font-size:var(--font-sm)}.ana-kpis{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:var(--space-3);margin-bottom:var(--space-5)}.ana-kpi{background:var(--glass-bg);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-4);display:flex;gap:var(--space-1);flex-direction:column}.ana-kpi-label{font-size:var(--font-xs);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;font-weight:500}.ana-kpi-value{font-size:var(--font-2xl,1.5rem);color:var(--text);font-weight:700}.ana-kpi-sub{font-size:var(--font-xs);color:var(--text-tertiary)}.ana-card{background:var(--glass-bg);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-4)}.ana-card-title{font-size:var(--font-sm);color:var(--text);margin:0 0 var(--space-3)0;font-weight:600}.ana-bar-chart{display:flex;overflow-x:auto;padding-bottom:var(--space-5);position:relative;align-items: flex-end;gap:2px;height:160px}.ana-bar-col{display:flex;position:relative;flex-direction:column;flex:1;justify-content:flex-end;align-items: center;min-width:18px;max-width:40px;height:100%}.ana-bar{background:var(--brand-primary);opacity:.85;border-radius:2px 2px 0 0;width:100%;min-height:2px;transition:height .3s}.ana-bar-col:hover .ana-bar{opacity:1}.ana-bar-label{position:absolute;color:var(--text-tertiary);white-space:nowrap;transform-origin:top left;font-size:9px;bottom:-20px;transform:rotate(-45deg)}.ana-bar-col:not(:nth-child(5n+1)) .ana-bar-label{display:none}.ana-service-rows{display:flex;gap:var(--space-2);flex-direction:column}.ana-service-row{display:grid;grid-template-columns:1fr 2fr auto;align-items: center;gap:var(--space-3)}.ana-service-info{display:flex;align-items: center;gap:var(--space-2);min-width:0}.ana-service-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.ana-service-name{font-size:var(--font-sm);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}.ana-service-count{font-size:var(--font-xs);color:var(--text-tertiary);white-space:nowrap}.ana-service-bar-track{background:var(--border-subtle);overflow:hidden;border-radius:4px;height:8px}.ana-service-bar-fill{border-radius:4px;height:100%;transition:width .3s}.ana-service-revenue{font-size:var(--font-sm);color:var(--text);white-space:nowrap;text-align:right;font-weight:600}.ana-table-wrap{overflow-x:auto}.ana-table{border-collapse:collapse;font-size:var(--font-sm);width:100%}.ana-table th{text-align:left;color:var(--text-secondary);padding:var(--space-2)var(--space-3);border-bottom:1px solid var(--border-subtle);white-space:nowrap;font-weight:500}.ana-table td{padding:var(--space-2)var(--space-3);color:var(--text);border-bottom:1px solid var(--border-subtle);white-space:nowrap}.ana-table td .ana-service-dot{display:inline-block;vertical-align:middle;margin-right:var(--space-1)}.ana-table tbody tr:hover{background:var(--glass-hover)}@media (max-width:640px){.ana-controls{flex-direction:column;align-items:stretch}.ana-kpis{grid-template-columns:1fr 1fr}.ana-service-row{grid-template-columns:1fr;gap:var(--space-1)}.ana-service-revenue{text-align:left}}.lpe-page{max-width:100%!important}.lpe-layout{display:grid;grid-template-columns:420px 1fr;align-items: start;gap:1.5rem}.lpe-loading{padding:2rem 0}.lpe-skeleton{background:var(--card-border);animation:pulse 1.5s ease-in-out infinite;border-radius:1rem}@keyframes pulse{0%,to{opacity:.4}50%{opacity:.7}}.lpe-editor{display:flex;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--card-border)transparent;flex-direction:column;gap:1rem;max-height:calc(100vh - 140px);padding-right:.5rem}.lpe-section{background:var(--card-bg);border:1px solid var(--card-border);display:flex;border-radius:.875rem;flex-direction:column;gap:.875rem;padding:1.25rem}.lpe-section-title{display:flex;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);align-items: center;gap:.5rem;margin:0;font-size:.8125rem;font-weight:600}.lpe-section-title svg{opacity:.6;width:16px;height:16px}.lpe-field{display:flex;flex-direction:column;gap:.25rem}.lpe-label{color:var(--text);font-size:.8125rem;font-weight:500}.lpe-hint{color:var(--text-muted);font-size:.6875rem;line-height:1.3}.lpe-input{border:1px solid var(--input-border);background:var(--input-bg);color:var(--text);outline:none;border-radius:.5rem;width:100%;padding:.5rem .75rem;transition:border-color .15s,box-shadow .15s;font-size:.8125rem}.lpe-input:focus{border-color:var(--brand-primary);box-shadow:0 0 0 2px color-mix(in oklch,var(--brand-primary)20%,transparent)}.lpe-input-sm{max-width:160px}.lpe-textarea{resize:vertical;min-height:5rem;line-height:1.5}.lpe-color-row{display:flex;align-items: center;gap:.5rem}.lpe-color-swatch{border:2px solid var(--card-border);cursor:pointer;background:0 0;border-radius:.5rem;flex-shrink:0;width:36px;height:36px;padding:0}.lpe-color-swatch::-webkit-color-swatch-wrapper{padding:2px}.lpe-color-swatch::-webkit-color-swatch{border:none;border-radius:.25rem}.lpe-toggle-row{display:flex;justify-content:space-between;align-items: center;gap:1rem}.lpe-toggle-row>div{display:flex;flex-direction:column;gap:.125rem}.lpe-switch{position:relative;display:inline-block;flex-shrink:0;width:40px;height:22px}.lpe-switch input{opacity:0;width:0;height:0}.lpe-switch-track{position:absolute;cursor:pointer;background:var(--input-border);border-radius:11px;transition:background .2s;inset:0}.lpe-switch-track:before{content:"";position:absolute;background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .2s;bottom:3px;left:3px}.lpe-switch input:checked+.lpe-switch-track{background:var(--brand-primary)}.lpe-switch input:checked+.lpe-switch-track:before{transform:translate(18px)}.lpe-preview-panel{position:sticky;display:flex;flex-direction:column;gap:0;top:1rem}.lpe-preview-tabs{display:flex;background:var(--card-bg);border:1px solid var(--card-border);overflow:hidden;border-bottom:none;border-radius:.75rem .75rem 0 0}.lpe-preview-tab{text-align:center;cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-bottom:2px solid #0000;flex:1;padding:.625rem 1rem;transition:color .15s,border-color .15s,background .15s;font-size:.75rem;font-weight:600}.lpe-preview-tab:hover{color:var(--text);background:var(--brand-hover)}.lpe-preview-tab.active{color:var(--brand-primary);border-bottom-color:var(--brand-primary)}.lpe-preview-frame{background:var(--card-bg);border:1px solid var(--card-border);box-shadow:var(--card-shadow);overflow:hidden;border-radius:0 0 .75rem .75rem;padding:1rem}.lpe-preview-notice{display:flex;color:var(--state-warning);background:var(--state-warning-bg);border:1px solid var(--state-warning-border);border-radius:.5rem;align-items: center;gap:.5rem;margin-bottom:.75rem;padding:.5rem .75rem;font-size:.75rem;font-weight:500}.lpe-preview-notice svg{flex-shrink:0;width:14px;height:14px}.lpe-preview-viewport{overflow:hidden;border:1px solid var(--card-border);background:var(--bg);overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--card-border)transparent;border-radius:.5rem;max-height:calc(100vh - 220px)}.lpe-preview-viewport .landing-page{min-height:auto}.lpe-preview-viewport .landing-hero{min-height:260px}.lpe-preview-viewport .landing-theme-toggle{display:none}.lpe-preview-viewport .landing-section{--section-pad-x:1rem;--section-pad-y:2rem}.lpe-preview-viewport .landing-hero-content h1{font-size:1.5rem}.lpe-preview-viewport .landing-hero-tagline{font-size:.875rem}.lpe-preview-viewport .landing-cta{padding:.5rem 1.25rem;font-size:.75rem}.lpe-preview-viewport .landing-section-title{font-size:1rem}.lpe-preview-viewport .landing-service-card,.lpe-preview-viewport .landing-location-card{min-width:180px}.lpe-preview-viewport .landing-team-avatar{width:56px;height:56px}.lpe-preview-viewport .landing-footer{padding:2rem var(--section-pad-x,1rem)}.lpe-preview-viewport .landing-reveal{opacity:1!important;transition:none!important;transform:none!important}.lpv{color:var(--text);min-height:300px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:11px}.lpv-header{padding:0}.lpv-header-inner{display:flex;justify-content:space-between;align-items: center;padding:.5rem .75rem}.lpv-logo-row{display:flex;align-items: center;gap:.5rem}.lpv-logo-img{object-fit:contain;border-radius:4px;width:24px;height:24px}.lpv-logo-placeholder{display:flex;color:#fff;border-radius:4px;justify-content:center;align-items: center;width:24px;height:24px;font-size:12px;font-weight:700}.lpv-logo-text{display:flex;flex-direction:column;line-height:1.2}.lpv-logo-text>span:first-child{font-size:11px;font-weight:600}.lpv-subtitle{opacity:.75;font-size:9px}.lpv-theme-dot{border:1.5px solid var(--card-border);background:var(--card-bg);border-radius:50%;width:14px;height:14px}.lpv-content{padding:.75rem}.lpv-breadcrumb{display:flex;align-items: center;gap:.375rem;margin-bottom:.75rem;font-size:9px}.lpv-crumb{color:var(--text-muted);font-weight:500}.lpv-crumb.active{font-weight:700}.lpv-crumb-sep{color:var(--card-border);font-size:8px}.lpv-card-grid{display:flex;flex-direction:column;gap:.5rem}.lpv-card-skel{border:1px solid var(--card-border);background:var(--card-bg);border-radius:.5rem;height:48px}.lpv-footer{text-align:center;color:var(--text-muted);border-top:1px solid var(--card-border);padding:.5rem;font-size:8px}@media (max-width:1024px){.lpe-layout{grid-template-columns:1fr}.lpe-editor{max-height:none;padding-right:0}.lpe-preview-panel{position:static}}@media (max-width:640px){.lpe-section{padding:1rem}}.eml-toolbar{display:flex;flex-wrap:wrap;align-items: center;gap:.75rem;margin-bottom:1.25rem}.eml-toolbar-search{flex:220px;min-width:180px}.eml-toolbar-filters{display:flex;flex-wrap:wrap;align-items: center;gap:.5rem}.eml-filter-dropdown{min-width:140px}.eml-status-chips{display:flex;gap:.375rem}.eml-status-chip{border:1px solid var(--card-border);color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border-radius:9999px;padding:.3rem .75rem;transition:all .15s;font-size:.75rem;font-weight:500}.eml-status-chip:hover{background:var(--brand-hover)}.eml-status-chip.active{background:var(--brand-bg);color:var(--brand-text,#fff);border-color:var(--brand-primary)}.eml-table-wrap{overflow-x:auto;border:1px solid var(--card-border);background:var(--card-bg);border-radius:.75rem}.eml-table{border-collapse:collapse;width:100%;font-size:.8125rem}.eml-table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);border-bottom:1px solid var(--card-border);white-space:nowrap;padding:.75rem 1rem;font-size:.6875rem;font-weight:600}.eml-table td{border-bottom:1px solid var(--card-border);color:var(--text);vertical-align:middle;padding:.625rem 1rem}.eml-table tr:last-child td{border-bottom:none}.eml-table tbody tr{cursor:pointer;transition:background .15s}.eml-table tbody tr:hover{background:var(--brand-hover)}.eml-badge{display:inline-flex;white-space:nowrap;border-radius:9999px;align-items: center;gap:.25rem;padding:.2rem .5rem;font-size:.6875rem;font-weight:600;line-height:1.4}.eml-badge-sent{background:var(--state-success-bg);color:var(--state-success);border:1px solid var(--state-success-border)}.eml-badge-failed{background:var(--state-error-bg);color:var(--state-error);border:1px solid var(--state-error-border)}.eml-badge-type{background:var(--brand-hover);color:var(--text-muted);border:1px solid var(--card-border)}.eml-subject{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:300px;font-weight:500}.eml-to{color:var(--text-muted);font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,monospace;font-size:.75rem}.eml-date{color:var(--text-muted);white-space:nowrap;font-size:.75rem}.eml-error-text{color:var(--state-error);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px;font-size:.6875rem}.eml-pagination{display:flex;justify-content:space-between;align-items: center;gap:1rem;padding:.75rem 0}.eml-pagination-info{color:var(--text-muted);font-size:.75rem}.eml-pagination-buttons{display:flex;gap:.375rem}.eml-page-btn{border:1px solid var(--card-border);background:var(--card-bg);color:var(--text);cursor:pointer;border-radius:.5rem;padding:.375rem .75rem;transition:all .15s;font-size:.75rem}.eml-page-btn:hover:not(:disabled){background:var(--brand-hover)}.eml-page-btn:disabled{opacity:.4;cursor:not-allowed}.eml-page-btn.active{background:var(--brand-bg);color:var(--brand-text,#fff);border-color:var(--brand-primary)}.eml-preview-skeleton{display:flex;flex-direction:column;align-items: center;gap:.75rem;padding:2rem}.eml-preview-body{display:flex;flex-direction:column;gap:1rem;padding:0 0 .5rem}.eml-preview-card{display:flex;border-radius:var(--radius-md);border:1px solid var(--card-border);background:var(--card-bg);overflow:hidden;flex-direction:column;gap:0}.eml-preview-row{display:flex;border-bottom:1px solid var(--border-subtle);align-items: center;gap:.75rem;padding:.625rem 1rem}.eml-preview-row:last-child{border-bottom:none}.eml-preview-row-group{display:flex;flex-wrap:wrap}.eml-preview-row-group .eml-preview-row{flex:1;min-width:160px}.eml-preview-label{display:inline-flex;font-size:var(--font-xs);color:var(--text-muted);white-space:nowrap;flex-shrink:0;align-items: center;gap:.375rem;min-width:5rem;font-weight:600}.eml-preview-label svg{opacity:.5;flex-shrink:0}.eml-preview-value{font-size:var(--font-sm);color:var(--text);overflow:hidden;text-overflow:ellipsis;min-width:0}.eml-preview-subject{font-weight:600}.eml-preview-error{display:flex;border-radius:var(--radius-md);background:var(--state-error-bg);border:1px solid var(--state-error-border);color:var(--state-error);font-size:var(--font-sm);align-items: flex-start;gap:.5rem;padding:.75rem 1rem;line-height:1.5}.eml-preview-error svg{flex-shrink:0;margin-top:.125rem}.eml-preview-frame-wrap{border:1px solid var(--card-border);border-radius:var(--radius-md);overflow:hidden;background:var(--card-bg);overflow-y:auto;-webkit-overflow-scrolling:touch;max-height:50vh}.eml-preview-frame{display:block;background:#fff;border:none;width:100%;height:50vh;min-height:400px}.eml-preview-empty{display:flex;color:var(--text-muted);font-size:var(--font-sm);text-align:center;flex-direction:column;justify-content:center;align-items: center;gap:.75rem;padding:3rem 1rem}.eml-empty{display:flex;text-align:center;flex-direction:column;justify-content:center;align-items: center;gap:1rem;padding:4rem 1rem}.eml-empty-icon{background:var(--brand-hover);display:flex;border-radius:.75rem;justify-content:center;align-items: center;width:3rem;height:3rem}.eml-empty-icon svg{color:var(--text-muted);width:1.5rem;height:1.5rem}.eml-empty-title{color:var(--text);font-weight:600}.eml-empty-subtitle{color:var(--text-muted);font-size:.8125rem}.eml-skeleton-row{display:flex;border-bottom:1px solid var(--card-border);gap:1rem;padding:.75rem 1rem}.eml-skeleton-cell{background:var(--card-border);animation:pulse 1.5s ease-in-out infinite;border-radius:.25rem;height:.875rem}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.eml-mobile-only{display:none!important}.eml-desktop-only{display:block}.eml-card-list{display:flex;overflow:hidden;flex-direction:column;gap:.5rem}.eml-card{display:flex;border:1px solid var(--card-border);border-radius:var(--radius-md);background:var(--card-bg);text-align:left;cursor:pointer;overflow:hidden;flex-direction:column;gap:.375rem;width:100%;min-width:0;padding:.75rem;transition:background .15s}.eml-card:active{background:var(--brand-hover)}.eml-card-top{display:flex;overflow:hidden;justify-content:space-between;align-items: center;gap:.5rem;min-width:0}.eml-card-subject{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.8125rem;font-weight:600}.eml-card-meta{display:flex;color:var(--text-muted);overflow:hidden;align-items: center;gap:.375rem;font-size:.72rem}.eml-card-to{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,monospace}.eml-card-dot{flex-shrink:0}.eml-card-date{white-space:nowrap;flex-shrink:0}.eml-card-bottom{display:flex;overflow:hidden;align-items: center;gap:.375rem;min-width:0}.eml-card-error{color:var(--state-error);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.65rem}@media (max-width:767px){.eml-desktop-only{display:none!important}.eml-mobile-only{display:flex!important}.eml-toolbar{flex-direction:column;align-items:stretch}.eml-toolbar-search{min-width:auto}.eml-toolbar-filters{flex-direction:row;gap:.375rem}.eml-filter-dropdown{flex:1;min-width:0}.eml-status-chips{flex-shrink:0}.eml-status-chip{padding:.25rem .625rem;font-size:.7rem}.eml-pagination{flex-direction:column;align-items: center;gap:.5rem}.eml-pagination-buttons{flex-wrap:wrap;justify-content:center}.eml-page-btn{display:inline-flex;justify-content:center;align-items: center;min-width:2.25rem;min-height:2.25rem;padding:.375rem .625rem;font-size:.7rem}.eml-preview-body{gap:.75rem}.eml-preview-card{font-size:.8125rem}.eml-preview-row{gap:.5rem;padding:.5rem .75rem}.eml-preview-row-group{flex-direction:column}.eml-preview-row-group .eml-preview-row{min-width:auto}.eml-preview-label{min-width:4rem;font-size:.68rem}.eml-preview-value{font-size:.78rem}.eml-preview-frame-wrap{max-height:40vh}.eml-preview-frame{height:40vh;min-height:300px}}
