@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-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-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}}}@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-gray-50:oklch(98.5% .002 247.839);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-gray-900:oklch(21% .034 264.665);--color-black:#000;--color-white:#fff;--spacing:.25rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--font-weight-semibold:600;--radius-lg:.5rem;--radius-xl:.75rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--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);--color-brand-50:#fbf6ec;--color-brand-100:#f3e7ce;--color-brand-300:#d8aa4f;--color-brand-500:#a87211;--color-brand-600:#895707;--color-brand-700:#6f4404}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.h-11{height:calc(var(--spacing) * 11)}.w-full{width:100%}.resize{resize:both}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-gray-200{border-color:var(--color-gray-200)}.bg-brand-50{background-color:var(--color-brand-50)}.bg-brand-500{background-color:var(--color-brand-500)}.bg-white{background-color:var(--color-white)}.p-5{padding:calc(var(--spacing) * 5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.text-left{text-align:left}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-brand-700{color:var(--color-brand-700)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-800{color:var(--color-gray-800)}.text-white{color:var(--color-white)}.shadow,.shadow-sm{--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-1{--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)}.ring-brand-100{--tw-ring-color:var(--color-brand-100)}.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,)}.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))}.outline-none{--tw-outline-style:none;outline-style:none}@media(hover:hover){.hover\:bg-brand-600:hover{background-color:var(--color-brand-600)}.hover\:bg-gray-50:hover{background-color:var(--color-gray-50)}.hover\:bg-gray-100:hover{background-color:var(--color-gray-100)}.hover\:text-gray-900:hover{color:var(--color-gray-900)}}.focus\:border-brand-300:focus{border-color:var(--color-brand-300)}.focus\:ring-4:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(4px + 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)}.focus\:ring-brand-500\/10:focus{--tw-ring-color:#a872111a}@supports (color:color-mix(in lab,red,red)){.focus\:ring-brand-500\/10:focus{--tw-ring-color:color-mix(in oklab, var(--color-brand-500) 10%, transparent)}}}:root{--color-ink:#161411;--color-ink-soft:#2f2a23;--color-muted:#756f66;--color-muted-strong:#554e45;--color-canvas:#f6f5f2;--color-canvas-deep:#ece8e0;--color-surface:#fffefd;--color-surface-soft:#faf8f4;--color-surface-warm:#f6efe3;--color-line:#e2dbd0;--color-line-strong:#d7c6aa;--color-gold-50:#fbf4e3;--color-gold-100:#f1dfb9;--color-gold-200:#e0c07b;--color-gold-300:#cf9f36;--color-gold-400:#b88319;--color-gold-500:#9d6810;--color-gold-600:#7c4e07;--color-black:#11100e;--shadow-sm:0 10px 24px #1614110f;--shadow-md:0 18px 44px #16141117;--shadow-lg:0 28px 80px #16141129;--focus-ring:0 0 0 3px #b883192e;--green-950:var(--color-black);--green-900:var(--color-ink);--green-800:var(--color-gold-500);--green-700:var(--color-gold-400);--green-100:var(--color-gold-50);--green-50:var(--color-surface-soft);--ink:var(--color-ink);--muted:var(--color-muted);--line:var(--color-line);--surface:#fff;--surface-soft:var(--color-surface-soft);--danger-bg:#fff4f2;--danger-border:#f2c8c0;--danger-text:#9f2b1d;--success-bg:#eaf5ef;--success-text:#116048;--warning-bg:#fff5df;--warning-text:#895707;--z-modal-backdrop:1100;--z-modal-popover:1120;--z-notice-backdrop:1200;color:var(--ink);background:var(--color-canvas);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0;overflow-x:hidden}.app-shell{background:radial-gradient(circle at 78% 2%,#cf9f361a,transparent 34rem),linear-gradient(180deg,#fffefd 0%,var(--color-canvas) 46%,#eeece7 100%);min-height:100vh;padding:10px 10px 18px}.app-topbar{border:1px solid var(--color-line);box-shadow:var(--shadow-sm);color:var(--ink);z-index:40;background:#fffefdf0;border-radius:12px;grid-template-columns:max-content minmax(0,1fr) max-content;align-items:center;gap:18px;min-height:80px;padding:8px 18px;display:grid;position:sticky;top:10px}.brand{letter-spacing:0;white-space:nowrap;align-items:center;gap:14px;min-width:0;font-family:Georgia,Times New Roman,serif;font-size:20px;font-weight:700;display:flex}.brand-mark,.brand-logo,.login-mark{color:var(--color-gold-500);background:linear-gradient(#fff,#fff) padding-box padding-box,linear-gradient(145deg,#e7c77d,#9d6810) border-box;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;width:36px;height:36px;font-family:Georgia,Times New Roman,serif;font-size:13px;font-weight:700;line-height:1;display:inline-flex}.brand-logo{object-fit:contain;background:0 0;border:0;border-radius:0;width:auto;max-width:120px;height:58px;padding:0;display:block}.top-nav{scrollbar-width:none;justify-content:center;align-items:stretch;gap:6px;min-width:0;padding:0 2px;display:flex;overflow-x:auto}.top-nav::-webkit-scrollbar{display:none}.nav-item{color:var(--color-black);cursor:pointer;font:inherit;text-align:center;white-space:nowrap;background:0 0;border:0;border-radius:0;flex:none;align-items:center;gap:6px;min-height:44px;padding:11px 10px 13px;font-family:Georgia,Times New Roman,serif;font-size:15px;font-weight:650;display:inline-flex;position:relative}.nav-item:hover,.nav-item.active{color:var(--color-gold-500);background:0 0}.nav-item.active:after{background:linear-gradient(90deg,transparent,var(--color-gold-500),transparent);content:"";height:2px;position:absolute;bottom:0;left:8px;right:8px}.nav-badge{color:#fff;background:linear-gradient(#e8c681,#bf8730);border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:10px;font-weight:900;display:inline-flex}.content{min-width:0;padding:24px 20px 0}.floating-primary-action{bottom:max(28px,env(safe-area-inset-bottom));color:#fff;height:76px;right:max(28px,env(safe-area-inset-right));z-index:900;background:#242424;border:0;border-radius:50%;justify-content:center;align-items:center;width:76px;padding:0;transition:transform .16s,box-shadow .16s,background .16s;display:inline-flex;position:fixed;box-shadow:0 18px 44px #0000002e}.floating-primary-action:hover{background:#111;transform:translateY(-2px);box-shadow:0 22px 52px #00000038}.floating-primary-action:focus-visible{outline-offset:4px;outline:3px solid #bd7d0f59}.floating-primary-action svg{width:34px;height:34px}.floating-primary-action path{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.55px}.page-header{justify-content:space-between;align-items:center;gap:18px;margin:8px 4px 18px;display:flex}.header-actions{flex-wrap:nowrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}h1,h2,p{margin-top:0}h1{color:var(--color-black);letter-spacing:0;margin-bottom:8px;font-family:Georgia,Times New Roman,serif;font-size:clamp(30px,4vw,42px);font-weight:500;line-height:1.12}h2{color:var(--color-black);margin-bottom:14px;font-size:18px}.subtitle{color:var(--muted);margin-bottom:0;line-height:1.5}button{color:#fff;cursor:pointer;font:inherit;background:linear-gradient(#c8932e,#946109);border:0;border-radius:8px;justify-content:center;align-items:center;min-height:42px;padding:11px 15px;font-weight:800;transition:background .16s,border-color .16s,box-shadow .16s,color .16s,transform .16s;display:inline-flex}button:hover:not(:disabled){background:linear-gradient(#d09f43,#a87211)}button:disabled{color:#8a8174;cursor:not-allowed;background:#e7dfd2}button:focus-visible,a:focus-visible{box-shadow:var(--focus-ring);outline:none}.icon-button,.avatar-menu{color:var(--color-black);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0;display:inline-flex}.icon-button{border-radius:999px;width:38px;height:38px;position:relative}.icon-button:hover:not(:disabled),.avatar-menu:hover:not(:disabled){background:var(--color-gold-50);border-color:var(--color-line);color:var(--color-gold-500)}.icon-button svg,.avatar-menu svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:21px;height:21px}.notification-button>span{background:var(--color-gold-500);border:2px solid #fff;border-radius:999px;width:8px;height:8px;position:absolute;top:7px;right:8px}.avatar-menu{border-radius:999px;gap:8px;padding:3px 7px 3px 3px}.avatar-circle{background:var(--color-black);color:#fff;border-radius:999px;justify-content:center;align-items:center;width:36px;height:36px;font-size:12px;font-weight:900;display:inline-flex}label{color:var(--color-ink-soft);gap:7px;font-size:13px;font-weight:800;display:grid}input,select,textarea{border:1px solid var(--line);color:var(--ink);font:inherit;background:#fff;border-radius:8px;width:100%;min-height:42px;padding:11px 12px;transition:border-color .16s,box-shadow .16s,background .16s}select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--color-black) 50%),linear-gradient(135deg,var(--color-black) 50%,transparent 50%);background-position:calc(100% - 18px),calc(100% - 13px);background-repeat:no-repeat;background-size:6px 6px,6px 6px;padding-right:38px}input:disabled,select:disabled,textarea:disabled{color:#8a8174;cursor:not-allowed;opacity:1;background:#f0ece5;border-color:#ded3c5}input:focus,select:focus,textarea:focus{border-color:var(--color-gold-400);box-shadow:var(--focus-ring);outline:none}textarea{resize:vertical;min-height:92px}.dashboard-stack{gap:16px;display:grid}.metric-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;display:grid}.metric-card,.card,.login-card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-md);border-radius:10px}.card{min-width:0}.metric-card{gap:8px;padding:18px;display:grid;position:relative}.metric-card:before{background:var(--color-gold-50);content:"";border:1px solid #ead8b3;border-radius:999px;width:34px;height:34px;position:absolute;top:18px;right:18px}.metric-card span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:800}.metric-card strong{color:var(--color-black);font-size:26px}.luxury-card,.table-shell,.kpi-card,.empty-state,.loading-state,.error-state{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-md);border-radius:10px}.luxury-card,.table-shell,.empty-state,.loading-state,.error-state{padding:20px}.search-field,.field-shell{border:1px solid var(--line);box-shadow:var(--shadow-sm);color:var(--muted);background:#fff;border-radius:8px;align-items:center;min-height:42px;display:flex}.status-pill,.avatar-chip{border-radius:999px;align-items:center;min-height:26px;padding:5px 9px;font-size:12px;font-weight:900;display:inline-flex}.status-pill{background:var(--color-gold-50);color:var(--color-gold-600)}.avatar-chip{color:var(--color-ink-soft);background:#f0e8dc;gap:6px}.empty-state,.loading-state,.error-state{color:var(--muted);text-align:center;place-content:center;justify-items:center;gap:8px;min-height:128px;display:grid}.empty-state:before,.loading-state:before,.error-state:before{background:var(--color-gold-50);color:var(--color-gold-500);content:"";border:1px solid #ead8b3;border-radius:999px;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex}.calendar-toolbar{--calendar-control-height:42px;background:linear-gradient(180deg,#fffefd 0%,var(--color-surface-soft) 100%);border:1px solid var(--line);border-radius:12px;justify-content:space-between;align-items:start;gap:16px;margin-bottom:12px;padding:14px;display:flex}.calendar-toolbar h2{color:var(--color-black);margin-bottom:0;font-size:20px}.calendar-title{gap:3px;min-width:180px;display:grid}.calendar-title h2{color:var(--color-black);margin-bottom:0;font-size:20px}.calendar-title span{color:var(--muted);font-size:13px}.eyebrow{color:var(--color-gold-500);text-transform:uppercase;font-size:11px;font-weight:900}.calendar-toolbar span,.calendar-toolbar label{color:var(--muted);font-size:12px;font-weight:700}.calendar-filter-bar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;min-width:0;display:flex}.calendar-nav{border:1px solid var(--line);box-shadow:var(--shadow-sm);height:var(--calendar-control-height);background:#fff;border-radius:8px;grid-template-columns:repeat(3,auto);display:grid;overflow:hidden}.view-toggle{border:1px solid var(--line);box-shadow:var(--shadow-sm);height:var(--calendar-control-height);background:#fff;border-radius:8px;grid-template-columns:repeat(3,auto);padding:0;display:grid;overflow:hidden}.view-toggle button{color:var(--muted);background:0 0;border-radius:0;height:100%;padding:0 12px;font-size:13px}.view-toggle button+button{border-left:1px solid var(--line)}.view-toggle button:first-child{border-radius:8px 0 0 8px}.view-toggle button:last-child{border-radius:0 8px 8px 0}.view-toggle button.active{color:#fff;box-shadow:none;background:linear-gradient(#c8932e,#946109)}.calendar-nav button{color:var(--color-black);background:0 0;border-radius:0;height:100%;padding:0 12px;font-size:13px}.calendar-nav button+button{border-left:1px solid var(--line)}.calendar-nav button:hover:not(:disabled){background:var(--color-gold-50);color:var(--color-gold-600)}.month-picker,.status-filter,.staff-filter{border:1px solid var(--line);box-shadow:var(--shadow-sm);height:var(--calendar-control-height);background:#fff;border-radius:8px;align-items:center;gap:4px;min-width:176px;padding:0 12px;display:flex}.month-picker input,.status-filter select,.staff-filter select{color:var(--color-black);border:0;height:100%;padding:0;font-size:14px;font-weight:800}.date-picker-control{padding:0;position:relative;overflow:visible}.date-picker-trigger{color:var(--color-black);background:0 0;justify-content:space-between;align-items:center;gap:8px;width:100%;height:100%;padding:0 12px;font-size:14px;font-weight:800;display:flex;position:relative}.date-picker-trigger span{color:inherit;font-size:inherit;font-weight:inherit}.date-picker-popover{border:1px solid var(--line);z-index:60;background:#fffefd;border-radius:10px;gap:10px;width:min(312px,100vw - 32px);padding:12px;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 22px 48px #0f172a2e}.date-picker-header{grid-template-columns:34px 1fr 34px;align-items:center;gap:8px;display:grid}.date-picker-header strong{color:var(--color-black);text-align:center;font-size:14px}.date-picker-header button,.date-picker-grid button,.date-picker-today{color:var(--color-black);border-radius:8px;font-weight:800}.date-picker-header button{background:var(--color-surface-soft);height:34px;padding:0}.date-picker-header button:hover,.date-picker-grid button:hover,.date-picker-today:hover{background:var(--color-gold-50);color:var(--color-gold-600)}.date-picker-weekdays,.date-picker-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.date-picker-weekdays span{color:var(--muted);text-align:center;font-size:10px;font-weight:900;line-height:1}.date-picker-grid{gap:4px}.date-picker-grid button{aspect-ratio:1;background:0 0;padding:0;font-size:12px}.date-picker-grid button.outside-month{color:#a59b8e;opacity:.6}.date-picker-grid button.today{box-shadow:inset 0 0 0 1px var(--color-gold-400)}.date-picker-grid button.selected{color:#fff;background:linear-gradient(#c8932e,#946109)}.date-picker-today{border:1px solid var(--line);background:#fff;height:36px;font-size:13px}.status-filter{min-width:140px}.staff-filter{min-width:150px}.calendar-help{color:var(--muted);margin-bottom:14px;font-size:13px;font-weight:700}.staff-legend{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.legend-pill{background:var(--staff-bg);box-shadow:0 7px 16px var(--staff-shadow);color:#fff;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:800}.staff-filter-pill{border:2px solid #0000;line-height:1}.staff-filter-pill:hover:not(:disabled){background:var(--staff-bg);border-color:#ffffffb8;transform:translateY(-1px)}.staff-filter-pill.selected{border-color:var(--color-black);box-shadow:0 0 0 2px #fff,0 9px 18px var(--staff-shadow)}.staff-filter-pill.inactive{filter:saturate(.28);opacity:.46}.calendar-window{border:1px solid var(--line);border-radius:12px;min-width:0;max-width:100%;overflow:auto}.calendar-grid{grid-template-rows:42px;grid-template-columns:54px repeat(7,minmax(172px,1fr));grid-auto-rows:56px;min-width:1280px;animation-duration:.22s;animation-timing-function:ease-out;animation-fill-mode:both;display:grid}.calendar-grid.calendar-grid-day{grid-template-columns:54px minmax(760px,1fr);min-width:814px}.month-grid{grid-template-columns:repeat(7,minmax(132px,1fr));min-width:924px;animation-duration:.22s;animation-timing-function:ease-out;animation-fill-mode:both;display:grid}.calendar-grid.slide-left{animation-name:calendar-slide-left}.calendar-grid.slide-right,.month-grid.slide-right{animation-name:calendar-slide-right}.calendar-grid.slide-today,.month-grid.slide-today{animation-name:calendar-slide-today}.month-grid.slide-left{animation-name:calendar-slide-left}@keyframes calendar-slide-left{0%{opacity:.55;transform:translate(22px)}to{opacity:1;transform:translate(0)}}@keyframes calendar-slide-right{0%{opacity:.55;transform:translate(-22px)}to{opacity:1;transform:translate(0)}}@keyframes calendar-slide-today{0%{opacity:.45;transform:scale(.985)}to{opacity:1;transform:scale(1)}}.calendar-corner,.calendar-day-header,.month-day-header,.month-cell,.calendar-hour{border-bottom:1px solid var(--line);border-right:1px solid var(--line)}.calendar-corner,.calendar-day-header{background:var(--color-surface-soft);z-index:1;min-height:42px;position:sticky;top:0}.calendar-day-header{gap:0;padding:6px 10px;display:grid}.calendar-day-header strong{color:var(--color-black);font-size:13px;line-height:1.15}.calendar-day-header span{line-height:1.15}.calendar-day-header span,.calendar-hour{color:var(--muted);font-size:12px;font-weight:700}.month-day-header{background:var(--color-surface-soft);color:var(--muted);letter-spacing:0;text-align:center;z-index:1;padding:10px 12px;font-size:12px;font-weight:900;position:sticky;top:0}.month-cell{color:var(--ink);cursor:pointer;text-align:left;background:#fff;border-radius:0;align-content:start;gap:8px;min-height:132px;padding:10px;display:grid}.month-cell:hover{background:var(--color-surface-soft)}.month-cell:focus-visible{box-shadow:inset 0 0 0 3px var(--color-gold-400);outline:0}.month-cell.outside-month{color:#aaa196;background:#fbfaf7}.month-cell.today{box-shadow:inset 0 0 0 2px var(--color-gold-400)}.month-date{background:var(--surface-soft);color:var(--color-black);border-radius:999px;justify-content:center;align-items:center;width:26px;height:26px;font-size:12px;font-weight:900;display:inline-flex}.month-cell.today .month-date{background:var(--color-gold-500);color:#fff}.month-events{gap:5px;min-width:0;display:grid}.month-event{background:var(--staff-bg);box-shadow:0 6px 14px var(--staff-shadow);color:#fff;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;border-radius:7px;padding:5px 7px;font-size:11px;font-weight:800;display:block;overflow:hidden}.month-event:hover{filter:brightness(1.04)}.month-event.appointment-status-cancelled,.month-event.appointment-status-completed,.month-event.appointment-status-no_show,.calendar-event.appointment-status-cancelled,.calendar-event.appointment-status-completed,.calendar-event.appointment-status-no_show{filter:saturate(.42);opacity:.72}.month-event.appointment-status-cancelled,.calendar-event.appointment-status-cancelled{text-decoration:line-through}.month-event strong{margin-right:5px;font-size:10px}.month-more{border:1px solid var(--line);color:var(--color-gold-500);cursor:pointer;background:#fff;border-radius:999px;justify-content:center;width:fit-content;padding:5px 7px;font-size:11px;font-weight:900;display:inline-flex}.month-more:hover{background:var(--color-gold-50);color:var(--color-gold-600)}.calendar-hour{background:var(--color-surface-soft);justify-content:flex-end;align-items:start;min-height:56px;padding:8px 6px;display:flex}.calendar-day-column{background:repeating-linear-gradient(to bottom,#fff 0,#fff 55px,var(--line) 55px,var(--line) 56px);border-bottom:1px solid var(--line);border-right:1px solid var(--line);min-height:728px;position:relative;overflow:visible}.calendar-day-column:has(.calendar-event:hover){z-index:50}.calendar-cell{cursor:pointer;background:0 0;height:14px;padding:6px;position:absolute;left:0;right:0}.calendar-cell:hover{background:var(--color-gold-50)}.calendar-cell.expanded{background:var(--color-surface-soft);box-shadow:inset 0 0 0 2px #b883192e}.calendar-cell.bookable:not(.has-events):hover:after{border:1px solid var(--line);box-shadow:var(--shadow-sm);color:var(--color-gold-500);content:"Click to book";z-index:2;background:#fff;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:900;position:absolute;top:8px;left:8px}.calendar-cell.unavailable{cursor:not-allowed;background:#0f172a17}.calendar-cell.unavailable:hover{background:#0f172a1f}.now-line{z-index:4;background:#be123c;border-radius:999px;height:2px;position:absolute;left:0;right:0}.now-line:before{content:"";background:#be123c;border-radius:999px;width:8px;height:8px;position:absolute;top:-3px;left:-4px}.calendar-event{background:var(--staff-bg);box-shadow:none;color:#fff;cursor:grab;z-index:3;border-left:3px solid #ffffff94;border-radius:4px;align-content:start;gap:0;min-height:42px;margin-bottom:6px;padding:5px 7px;display:block;position:absolute;overflow:visible}.calendar-event.compact{padding:5px 6px}.calendar-event.compact .event-content-row{display:block}.calendar-event.compact strong{font-size:12px;display:block}.calendar-event.compact small{font-size:11px;display:block}.calendar-event.compact .status-badge{display:none}.calendar-event.dragging{opacity:.35}.calendar-event.drag-preview{opacity:.9;pointer-events:none;z-index:6;box-shadow:0 10px 24px #0f172a33}.calendar-event.drag-preview.invalid{filter:grayscale(.6);opacity:.55}.slot-more-button{border:1px solid var(--line);box-shadow:var(--shadow-sm);color:var(--color-gold-500);cursor:pointer;background:#fff;border-radius:999px;width:100%;margin-top:2px;padding:6px 8px;font-size:11px}.slot-more-button:hover:not(:disabled){background:var(--color-gold-50);color:var(--color-gold-600)}.event-content-row{justify-content:space-between;align-items:flex-start;gap:6px;width:100%;min-width:0;display:flex}.event-primary{gap:1px;min-width:0;display:grid}.event-primary strong,.event-meta{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.event-primary{flex:1}.status-badge{color:#ffffffe6;letter-spacing:0;text-align:right;text-transform:none;background:0 0;border:0;flex:none;padding:0;font-size:9px;font-weight:700}.event-tooltip{border:1px solid var(--line);color:var(--color-black);pointer-events:none;z-index:1000;background:#fffefd;border-radius:6px;gap:4px;min-width:220px;max-width:280px;padding:12px 14px;font-size:13px;font-weight:800;line-height:1.3;display:none;position:absolute;top:50%;left:calc(100% + 8px);transform:translateY(-50%);box-shadow:0 12px 28px #0f172a2e}.event-tooltip strong,.event-tooltip span{display:block}.event-tooltip strong{font-size:14px}.event-tooltip span{font-weight:700}.calendar-event:hover .event-tooltip{display:grid}.calendar-event:hover{z-index:999!important}.status-cancelled{background:#ffffff1f}.status-completed{background:#ffffff3d}.status-no_show{background:#ffffff29}.calendar-event:active{cursor:grabbing}.calendar-event.locked{cursor:not-allowed;filter:saturate(.42);opacity:.72}.calendar-event.locked:active{cursor:not-allowed}.calendar-event strong,.calendar-event span,.calendar-event small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.calendar-event strong{min-width:0;font-size:12px;line-height:1.15}.calendar-event span,.calendar-event small{font-size:10px;line-height:1.2}.calendar-event .event-meta{color:#ffffffd1;font-weight:600}.appointments-filters{grid-template-columns:minmax(240px,1fr) repeat(3,minmax(150px,190px)) auto;align-items:end;gap:10px;margin-bottom:14px;display:grid}.appointments-filters label{border:1px solid var(--line);box-shadow:var(--shadow-sm);background:#fff;border-radius:8px;gap:4px;padding:7px 9px 8px}.appointments-filters span{color:var(--muted);font-size:12px;font-weight:700}.appointments-filters input,.appointments-filters select{color:var(--color-black);background:0 0;border:0;min-height:22px;padding:0;font-size:14px;font-weight:800}.appointments-filters .floating-select-field{border:1px solid var(--line);box-shadow:var(--shadow-sm);background:#fff;border-radius:8px;gap:4px;min-width:0;padding:7px 9px 8px}.appointments-filters .floating-select-label{color:var(--muted);font-size:12px;font-weight:700}.appointments-filters .floating-select-trigger{box-shadow:none;color:var(--color-black);background:0 0;border:0;border-radius:0;min-height:22px;padding:0 28px 0 0;font-size:14px;font-weight:800}.appointments-filters .floating-select-trigger:after{right:2px}.services-heading{justify-content:space-between;align-items:start;gap:14px;margin-bottom:14px;display:flex}.services-heading h2{margin-bottom:5px}.services-filters{grid-template-columns:minmax(220px,1fr) repeat(3,minmax(140px,180px))}.appointment-table-wrap{border:1px solid var(--line);border-radius:10px;overflow:auto}.appointment-table{border-collapse:collapse;width:100%;min-width:1280px}.appointment-table th{background:var(--color-surface-soft);border-bottom:1px solid var(--line);color:var(--muted);text-align:left;text-transform:uppercase;z-index:1;padding:11px 12px;font-size:11px;font-weight:900;position:sticky;top:0}.appointment-table td{border-bottom:1px solid var(--line);color:var(--ink);vertical-align:middle;word-break:break-word;padding:12px}.appointment-table tbody tr:hover{background:var(--color-surface-soft)}.appointment-table tbody tr.clickable-row{cursor:pointer}.appointment-table tbody tr.clickable-row:focus-visible{background:var(--color-surface-soft);outline:2px solid var(--color-gold-400);outline-offset:-2px}.appointment-table tbody tr:last-child td{border-bottom:0}.appointment-time,.appointment-client{gap:3px;display:grid}.appointment-time strong,.appointment-client strong{color:var(--color-black);font-size:13px}.appointment-time span,.appointment-client span{color:var(--muted);font-size:12px;font-weight:700}.table-staff-pill{min-width:0;max-width:180px;display:inline-flex}.table-staff-pill,.contact-badge,.contact-status,.campaign-status,.table-status,.thread-status-pill{white-space:nowrap}.table-status{border-radius:999px;padding:6px 9px;font-size:11px;font-weight:900;display:inline-flex}.table-status.status-booked{background:var(--success-bg);color:var(--success-text)}.table-status.status-cancelled{background:var(--danger-bg);color:var(--danger-text);text-decoration:none}.table-status.status-completed{background:var(--color-gold-50);color:var(--color-gold-600)}.table-status.status-no_show{background:var(--warning-bg);color:var(--warning-text)}.table-status.status-active{background:var(--success-bg);color:var(--success-text)}.table-status.status-inactive{color:var(--color-muted-strong);background:#f0ece5}.table-status.status-needs-setup{background:var(--warning-bg);color:var(--warning-text)}.table-action{padding:8px 11px}.appointment-notes-cell{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:220px;overflow:hidden}.page-calendar .page-header{display:none}.page-appointments .page-header{margin:10px 0 24px}.page-appointments .page-header h1{color:#16120d;letter-spacing:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(34px,4vw,48px);font-weight:500}.page-appointments .page-header .subtitle{color:#776f65;font-size:15px}.calendar-page-stack,.appointments-page-stack{--luxury-ink:#17120d;--luxury-muted:#776f65;--luxury-line:#ebe4da;--luxury-soft:#fbf8f2;--luxury-gold:#b88423;--luxury-gold-dark:#8c610f}.calendar-kpi-strip{grid-template-columns:repeat(4,minmax(180px,1fr));gap:18px;display:grid}.calendar-kpi-strip article{background:linear-gradient(135deg,#fffffff0,#fcf9f4eb),var(--surface);border:1px solid var(--luxury-line);border-radius:10px;align-items:center;gap:18px;min-height:118px;padding:22px 24px;display:flex;box-shadow:0 22px 48px #17120d14}.calendar-kpi-strip article div{gap:4px;min-width:0;display:grid}.calendar-kpi-strip article span{color:var(--luxury-ink);font-size:13px;font-weight:700}.calendar-kpi-strip article strong{color:#090705;font-size:30px;line-height:1}.calendar-kpi-strip article small{color:var(--luxury-muted);font-size:12px;font-weight:700}.calendar-card,.appointments-card{border-color:var(--luxury-line);background:#fffffff0;border-radius:10px;padding:18px;box-shadow:0 24px 70px #17120d17}.calendar-card .calendar-toolbar{border:0;border-bottom:1px solid var(--luxury-line);box-shadow:none;background:0 0;border-radius:0;margin:-2px -2px 0;padding:0 0 18px}.calendar-card .calendar-title h2{color:var(--luxury-ink);font-family:Georgia,Times New Roman,serif;font-size:24px;font-weight:500}.calendar-card .view-toggle,.calendar-card .calendar-nav,.calendar-card .month-picker,.calendar-card .status-filter,.calendar-card .staff-filter,.appointments-card .appointments-filters label{border-color:var(--luxury-line);background:#fffdf9;border-radius:9px;box-shadow:0 10px 22px #17120d0a}.calendar-card .view-toggle button.active,.appointments-card .appointment-quick-row button.active{color:#fff;background:linear-gradient(135deg,#c89a42,#9a6b13)}.calendar-card .date-picker-popover{border-color:var(--luxury-line);background:#fffdf9;box-shadow:0 24px 54px #17120d2e}.calendar-card .date-picker-header strong,.calendar-card .date-picker-trigger,.calendar-card .date-picker-header button,.calendar-card .date-picker-grid button,.calendar-card .date-picker-today{color:var(--luxury-ink)}.calendar-card .date-picker-header button{background:#fbf3e3}.calendar-card .date-picker-grid button.selected{color:#fff;background:linear-gradient(135deg,#c89a42,#9a6b13)}.calendar-card .date-picker-today{border-color:var(--luxury-line)}.calendar-card .calendar-nav button,.calendar-card .view-toggle button,.calendar-card select,.calendar-card input,.appointments-card select,.appointments-card input{color:var(--luxury-ink)}.luxury-primary-button{color:#fff;background:linear-gradient(135deg,#c99a3f,#8f610f);box-shadow:0 16px 26px #90600e3d}.luxury-primary-button:hover:not(:disabled){background:linear-gradient(135deg,#d3aa55,#805408)}.calendar-card .calendar-help{color:var(--luxury-muted);margin:14px 0}.calendar-card .staff-legend{border-bottom:1px solid var(--luxury-line);margin:0 -2px;padding:14px 0 16px}.calendar-card .legend-pill{background:var(--staff-bg);border:1px solid var(--staff-bg)}@supports (color:color-mix(in lab,red,red)){.calendar-card .legend-pill{border:1px solid color-mix(in srgb,var(--staff-bg) 76%,#fff)}}.calendar-card .legend-pill{box-shadow:0 8px 16px var(--staff-shadow);color:#fff}.calendar-card .staff-filter-pill.selected{box-shadow:0 0 0 2px var(--staff-bg),0 10px 18px var(--staff-shadow);border-color:#fff}.calendar-card .calendar-window{border-color:var(--luxury-line);border-radius:12px;margin-top:18px}.calendar-card .calendar-corner,.calendar-card .calendar-day-header,.calendar-card .month-day-header,.calendar-card .calendar-hour{background:#fffdf9}.calendar-card .calendar-corner,.calendar-card .calendar-day-header,.calendar-card .month-day-header,.calendar-card .month-cell,.calendar-card .calendar-hour,.calendar-card .calendar-day-column{border-color:var(--luxury-line)}.calendar-card .calendar-day-header strong{color:var(--luxury-ink)}.calendar-card .calendar-day-header span,.calendar-card .calendar-hour{color:var(--luxury-muted)}.calendar-card .calendar-day-column{background:repeating-linear-gradient(to bottom,#fffdfa 0,#fffdfa 55px,var(--luxury-line) 55px,var(--luxury-line) 56px)}.calendar-card .calendar-event{background:var(--staff-bg);color:#fff;border-left:4px solid #ffffff94;box-shadow:0 12px 22px #17120d29}.calendar-card .calendar-event .event-meta,.calendar-card .status-badge{color:#ffffffe0}.calendar-card .month-cell{background:#fffdfa}.calendar-card .month-cell:hover,.calendar-card .calendar-cell:hover{background:#fff8ea}.calendar-card .month-event{background:var(--staff-bg);color:#fff;border-left:4px solid #ffffff94;box-shadow:0 8px 14px #17120d1f}.appointments-card .appointments-filters{grid-template-columns:minmax(280px,1.6fr) repeat(4,minmax(140px,.8fr)) auto;margin-bottom:18px}.appointments-card .appointments-filters span,.appointments-card .appointment-time span,.appointments-card .appointment-client span{color:var(--luxury-muted)}.appointment-quick-row{border-top:1px solid var(--luxury-line);flex-wrap:wrap;align-items:center;gap:12px;padding:18px 0;display:flex}.appointment-quick-row button{border:1px solid var(--luxury-line);color:var(--luxury-ink);background:#fffdf9;border-radius:8px;align-items:center;gap:10px;min-height:42px;padding:0 16px;font-size:13px;display:inline-flex}.appointment-quick-row button:hover:not(:disabled){background:#fff8ea}.appointment-quick-row button span{color:var(--luxury-gold-dark);text-align:center;background:#fff4dc;border-radius:999px;min-width:24px;padding:3px 7px;font-size:11px}.appointment-quick-row button.active span{color:#fff;background:#fff3}.appointment-quick-row button.warning span{color:#b42318;background:#fff1f2}.appointments-card .appointment-table-wrap{border-color:var(--luxury-line);border-radius:12px}.appointments-card .appointment-table{min-width:1220px}.appointments-card .appointment-table th{border-color:var(--luxury-line);color:#7f766b;letter-spacing:.04em;background:#fffdf9;padding:16px 18px}.appointments-card .appointment-table td{border-color:var(--luxury-line);padding:14px 18px}.appointments-card .appointment-table tbody tr:hover,.appointments-card .appointment-table tbody tr.clickable-row:focus-visible{background:#fffaf1}.appointments-card .appointment-time strong,.appointments-card .appointment-client strong{color:var(--luxury-ink)}.appointments-card .table-staff-pill{box-shadow:none;color:var(--luxury-muted);background:0 0;border:0;align-items:center;gap:9px;padding:0}.staff-initials{background:var(--staff-bg);align-items:center}@supports (color:color-mix(in lab,red,red)){.staff-initials{background:color-mix(in srgb,var(--staff-bg) 55%,#fff7e8)}}.staff-initials{color:#fff;border-radius:999px;flex:none;justify-content:center;width:28px;height:28px;font-size:11px;font-weight:900;display:inline-flex}.appointments-card .table-status{align-items:center;gap:7px;padding:6px 12px}.appointments-card .table-status:before{content:"";background:currentColor;border-radius:999px;width:6px;height:6px}.row-action-button{color:var(--luxury-ink);background:0 0;border-radius:999px;min-width:34px;padding:7px 9px}.row-action-button:hover:not(:disabled){color:var(--luxury-gold-dark);background:#fff2d8}.appointment-pagination{color:var(--luxury-muted);grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:18px 0 0;font-size:13px;font-weight:700;display:grid}.appointment-pagination>span:last-child{justify-self:end}.pagination-buttons{gap:8px;display:flex}.pagination-buttons button{border:1px solid var(--luxury-line);color:var(--luxury-ink);background:#fffdf9;border-radius:8px;min-width:36px;height:36px;padding:0 10px}.pagination-buttons button.active{color:#fff;background:linear-gradient(135deg,#c99a3f,#8f610f)}.modal-card.appointment-create,.modal-card.appointment-detail,.modal-card.appointment-list-modal{border-color:#e8ddcf;border-radius:10px;box-shadow:0 30px 90px #17120d3d}.modal-card.appointment-detail .modal-header h2,.modal-card.appointment-create .modal-header h2{color:#17120d;font-family:Georgia,Times New Roman,serif;font-size:28px;font-weight:500}.modal-card.appointment-detail .save-appointment-button,.modal-card.appointment-create .stack-form>button[type=submit]{background:linear-gradient(135deg,#c99a3f,#8f610f);box-shadow:0 16px 26px #90600e38}.modal-card.appointment-detail .save-appointment-button:disabled,.modal-card.appointment-create .stack-form>button[type=submit]:disabled{box-shadow:none;color:#fff;background:#9a9a9a}.services-table{min-width:900px}.service-staff-pills,.service-status-pills{flex-wrap:wrap;gap:6px;display:flex}.service-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.service-toggle{background:var(--surface-soft);border:1px solid var(--line);border-radius:8px;padding:10px 11px}.service-detail{max-width:620px}.service-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.service-form-grid .floating-select-field{border:1px solid var(--line);background:#fff;border-radius:8px;gap:7px;min-width:0;padding:10px 12px}.service-form-grid .floating-select-trigger{box-shadow:none;background:0 0;border:0;border-radius:0;min-height:24px;padding:0 28px 0 0}.service-form-grid .floating-select-trigger:after{right:2px}.appointment-empty{color:var(--muted);margin:0;padding:18px;font-weight:700}.panel-grid{grid-template-columns:minmax(300px,430px) minmax(0,1fr);gap:16px;display:grid}.staff-layout{grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:16px;display:grid}.staff-table-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.staff-table-header h2{margin-bottom:0}.staff-table-header span{color:var(--muted);font-size:12px;font-weight:800}.staff-filters{grid-template-columns:minmax(220px,1fr) minmax(160px,220px) max-content}.staff-table-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.staff-table{min-width:940px}.clickable-table-row{cursor:pointer}.clickable-table-row:focus-visible{outline-offset:-3px;outline:3px solid #b8831947}.clickable-table-row:hover td,.clickable-table-row:focus-visible td{background:var(--color-surface-soft)}.staff-meta{gap:3px;max-width:230px;display:grid}.staff-meta strong{color:var(--color-black);font-size:13px}.staff-meta span{color:var(--muted);font-size:12px;font-weight:700;line-height:1.35}.lux-page{--lux-ink:#11100e;--lux-muted:#6f6a62;--lux-line:#e8e2d8;--lux-gold:#bd7a13;--lux-gold-dark:#965800;--lux-surface:#fffefd;--lux-soft:#fbf8f2;gap:26px;display:grid}.lux-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.lux-kpi-card,.lux-insight-card,.lux-table-card,.lux-settings-card{background:linear-gradient(180deg,#fff 0%,var(--lux-surface) 100%);border:1px solid var(--lux-line);border-radius:8px;box-shadow:0 18px 42px #1a150f12}.lux-kpi-card{align-items:center;gap:8px;min-height:108px;padding:20px 22px;display:grid}.lux-kpi-icon,.service-icon-badge{color:var(--lux-gold);letter-spacing:0;background:radial-gradient(circle at 35% 25%,#fffaf0,#f4ead8 72%);border:1px solid #f1dfc0;border-radius:999px;flex:none;justify-content:center;align-items:center;width:52px;height:52px;font-size:12px;font-weight:900;display:inline-flex}.lux-kpi-card span{color:#5f5a53;margin-bottom:4px;font-size:13px;font-weight:800;display:block}.lux-kpi-card strong{color:var(--lux-ink);font-family:Georgia,Times New Roman,serif;font-size:30px;font-weight:500;line-height:1;display:block}.lux-kpi-card p,.lux-page-heading p,.lux-insight-card p,.lux-settings-card p{color:var(--lux-muted);margin:5px 0 0;font-size:14px;line-height:1.5}.lux-page-heading{justify-content:space-between;align-items:end;display:flex}.lux-page-heading h1{color:#090806;margin-bottom:10px;font-family:Georgia,Times New Roman,serif;font-size:clamp(40px,5vw,58px);font-weight:500;line-height:.95}.lux-table-card{overflow:hidden}.lux-toolbar{border-bottom:1px solid var(--lux-line);align-items:end;gap:16px;padding:20px;display:grid}.lux-toolbar label{border:1px solid var(--lux-line);color:var(--lux-muted);background:#fff;border-radius:8px;gap:4px;padding:9px 12px}.lux-toolbar input,.lux-toolbar select{box-shadow:none;color:var(--lux-ink);background:0 0;border:0;border-radius:0;min-height:22px;padding:0;font-weight:800}.lux-toolbar input:focus,.lux-toolbar select:focus{box-shadow:none}.lux-toolbar .floating-select-field{border:1px solid var(--lux-line);color:var(--lux-muted);background:#fff;border-radius:8px;gap:4px;min-width:0;padding:9px 12px}.lux-toolbar .floating-select-label{color:var(--lux-muted);font-size:13px;font-weight:800}.lux-toolbar .floating-select-trigger{box-shadow:none;color:var(--lux-ink);background:0 0;border:0;border-radius:0;min-height:22px;padding:0 28px 0 0;font-weight:800}.lux-toolbar .floating-select-trigger:after{right:2px}.lux-primary-action{color:#fff;white-space:nowrap;background:linear-gradient(#c98720,#a56200);border:1px solid #b8730f;border-radius:8px;min-height:48px;padding-inline:18px;box-shadow:0 12px 22px #a1600533}.lux-primary-action:hover:not(:disabled){background:linear-gradient(#d3922a,#9a5b00)}.icon-only-action{aspect-ratio:1;justify-content:center;align-items:center;width:44px;min-width:44px;min-height:44px;padding:0;font-size:24px;display:inline-flex}.lux-primary-action.icon-only-action,.luxury-primary-button.icon-only-action{flex:0 0 44px;width:44px;height:44px}.lux-quick-pay-action{border-radius:10px;flex:0 0 46px;justify-content:center;align-items:center;width:46px;min-width:46px;height:46px;min-height:46px;padding:0;font-size:18px;font-weight:900;line-height:1;display:inline-flex}.lux-secondary-action,.lux-row-action{border:1px solid var(--lux-line);color:var(--lux-ink);background:#fff}.lux-secondary-action{white-space:nowrap;min-height:42px;padding-inline:16px}.lux-secondary-action:hover:not(:disabled),.lux-row-action:hover:not(:disabled){background:var(--lux-soft);color:var(--lux-gold-dark)}.lux-table-meta{color:var(--lux-muted);justify-content:flex-end;align-items:center;gap:12px;padding:12px 20px 8px;font-size:13px;font-weight:800;display:flex}.lux-table-card .appointment-table-wrap{border-color:var(--lux-line);border-left:0;border-right:0;border-radius:8px;margin:0 20px 20px}.lux-table-card .appointment-table th{color:#65605a;letter-spacing:0;background:#fffdf9;padding:13px 14px}.lux-table-card .appointment-table td{border-bottom-color:var(--lux-line);padding:14px}.lux-table-card .appointment-table tbody tr:hover,.lux-table-card .clickable-table-row:hover td,.lux-table-card .clickable-table-row:focus-visible td{background:#fffaf2}.staff-person,.service-name-cell{align-items:center;gap:12px;min-width:0;display:flex}.staff-person strong{color:var(--lux-ink);font-size:14px}.lux-avatar{background:var(--staff-bg);box-shadow:0 8px 16px var(--staff-shadow);color:#fff;border:2px solid #fff;border-radius:999px;flex:none;justify-content:center;align-items:center;width:42px;height:42px;font-size:13px;font-weight:900;display:inline-flex}.lux-table-card .staff-meta strong,.lux-table-card .appointment-client strong{color:var(--lux-ink)}.lux-table-card .staff-meta span,.lux-table-card .appointment-client span{color:var(--lux-muted);font-weight:600}.lux-table-card .table-status.status-booked,.lux-table-card .table-status.status-active{color:#1e684b;background:#eaf3ee}.lux-row-action{border-radius:999px;padding:7px 10px;font-size:14px;line-height:1}.staff-redesign .staff-filters{grid-template-columns:minmax(260px,1fr) minmax(170px,240px) max-content}.services-intro-row{grid-template-columns:minmax(0,1fr) minmax(320px,460px);align-items:stretch;gap:24px;display:grid}.lux-insight-card{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:22px;display:grid}.lux-insight-card strong{color:var(--lux-gold);margin-bottom:4px;font-size:14px;display:block}.lux-insight-card>span:last-child{color:var(--lux-muted);font-size:22px}.services-redesign .services-filters{grid-template-columns:minmax(250px,1fr) repeat(3,minmax(150px,210px)) max-content}.services-redesign .services-table{min-width:1050px}.services-redesign .table-staff-pill{border:1px solid var(--lux-line);box-shadow:none;color:var(--lux-ink);background:#fff!important}.service-icon-badge{border-radius:50%;width:46px;height:46px}.settings-grid{grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);gap:18px;display:grid}.lux-settings-card{gap:18px;padding:24px;display:grid}.settings-feature-card{grid-column:span 1}.settings-card-heading{align-items:start;gap:16px;display:flex}.settings-card-heading h2{color:var(--lux-ink);margin-bottom:3px;font-family:Georgia,Times New Roman,serif;font-size:26px;font-weight:500}.settings-form-preview{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.settings-status-grid{gap:10px;display:grid}.settings-status-item,.settings-link-list span{background:var(--lux-soft);border:1px solid var(--lux-line);border-radius:8px;gap:4px;padding:13px 14px;display:grid}.settings-status-item span{color:var(--lux-muted);text-transform:uppercase;font-size:12px;font-weight:900}.settings-status-item strong,.settings-link-list span{color:var(--lux-ink);font-weight:800}.settings-link-list{gap:10px;display:grid}.card,.login-card{padding:20px}.stack-form{gap:15px;display:grid}.campaign-segment-controls{border:1px solid var(--line);border-radius:10px;gap:12px;margin:0;padding:14px;display:grid}.campaign-segment-controls legend{color:var(--muted);text-transform:uppercase;padding:0 4px;font-size:12px;font-weight:800}.campaign-preview{color:#6f4610;background:radial-gradient(circle at 0 0,#ba7c1421,#0000 18rem),#fbf6ec;border:1px solid #efe1c9;border-radius:8px;gap:4px;padding:14px;display:grid}.campaign-preview span{color:#8d6424;font-size:12px;font-weight:800}.campaign-preview strong{color:#14110d;font-size:26px}.campaign-preview p{color:#8d6424;margin-bottom:0}.checkbox-list{border:1px solid var(--line);border-radius:12px;gap:9px;margin:0;padding:13px;display:grid}.checkbox-list legend{color:var(--muted);padding:0 4px;font-size:12px;font-weight:800}.inline-check{grid-template-columns:auto 1fr;align-items:center;gap:8px;font-weight:600;display:grid}.inline-check input{accent-color:var(--color-gold-500);width:auto}.data-list{gap:9px;margin:0;padding:0;list-style:none;display:grid}.data-list li,.data-row{background:var(--surface-soft);border:1px solid var(--line);border-radius:8px;padding:11px 13px}.data-row{gap:8px;display:grid}.data-row p{margin-bottom:0}.row-actions{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.contacts-page,.campaigns-page{gap:16px;display:grid}.dsn-kpi-strip{background:#ffffffdb;border:1px solid #eadfce;border-radius:10px;gap:0;display:grid;overflow:hidden;box-shadow:0 18px 42px #241c1212}.contacts-kpi-strip{grid-template-columns:repeat(5,minmax(0,1fr))}.campaigns-kpi-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.dsn-kpi-card{grid-template-columns:minmax(0,1fr);align-items:center;gap:14px;min-width:0;padding:20px 22px;display:grid}.dsn-kpi-card+.dsn-kpi-card{border-left:1px solid #eadfce}.dsn-kpi-icon,.campaign-row-icon{color:#a86f0a;background:#fbf5ea;border:1px solid #efe1c9;border-radius:999px;flex:none;justify-content:center;align-items:center;width:52px;height:52px;font-size:11px;font-weight:900;display:inline-flex}.dsn-kpi-card span{color:#6f6a61;font-size:12px;font-weight:800;display:block}.dsn-kpi-card strong{color:#111;margin-top:3px;font-family:Georgia,Times New Roman,serif;font-size:27px;font-weight:500;line-height:1.1;display:block}.dsn-kpi-card p{color:#7b756c;margin-top:4px;margin-bottom:0;font-size:12px;line-height:1.35}.contacts-import-panel p{color:var(--muted);max-width:640px;margin-bottom:0;line-height:1.5}.secondary-button,.contacts-filter-group button{color:#9b6509;background:#fff;border:1px solid #eadfce}.secondary-button:hover:not(:disabled),.contacts-filter-group button:hover:not(:disabled){color:#111;background:#fbf5ea}.contacts-import-panel{grid-template-columns:minmax(220px,.7fr) minmax(320px,1fr);gap:16px;display:grid}.contacts-import-panel h2{margin-bottom:6px}.contacts-import-form{gap:14px;display:grid}.contacts-import-form textarea{min-height:148px}.contacts-directory{gap:18px;padding:20px;display:grid}.contacts-page-heading{justify-content:space-between;align-items:center;display:flex}.contacts-title-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.contacts-title-actions button:not(.lux-primary-action){height:42px}.contacts-toolbar{grid-template-columns:minmax(220px,340px) minmax(0,1fr);align-items:end;gap:12px;width:100%;min-width:0;max-width:100%;display:grid}.contacts-search input{box-sizing:border-box;background:#fff;border-color:#e5ded4;width:100%;height:42px}.contacts-search{min-width:0}.contacts-filter-group{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.contacts-filter-group button{height:38px;padding:0 12px;font-size:13px}.contacts-filter-group button.active{color:#fff;background:linear-gradient(135deg,#bd7d0f,#a66d07);border-color:#a66d07}.contacts-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.contacts-actions button{white-space:nowrap;height:38px}.contacts-actions button:first-child,.campaign-form-actions button:first-child{background:linear-gradient(135deg,#bd7d0f,#9b6509);box-shadow:0 12px 24px #a66d0733}.contacts-actions button:first-child:hover:not(:disabled),.campaign-form-actions button:first-child:hover:not(:disabled){background:linear-gradient(135deg,#a66d07,#835105)}.contacts-actions button:last-child{color:#9b6509;background:#fff;border:1px solid #eadfce}.contacts-actions button:last-child:hover:not(:disabled){color:#111;background:#fbf5ea}.contacts-table-wrap{border:1px solid #e7dfd4;border-radius:10px;overflow:auto}.contacts-table{min-width:980px}.contacts-table th{color:#6f6a61;background:#fffdf9}.contacts-table td{border-color:#eee8df}.contacts-person{gap:3px;display:grid}.contacts-person strong{color:#111}.contacts-person span{color:#6f6a61;font-size:12px;font-weight:700}.contacts-badges{flex-wrap:wrap;gap:6px;display:flex}.contact-badge,.contact-status{border-radius:999px;align-items:center;min-height:26px;padding:5px 9px;font-size:12px;font-weight:900;display:inline-flex}.contact-badge.customer{color:#a15c00;background:#fff7ed}.contact-badge.marketing{color:#25211b;background:#f0efed}.contact-badge.quiet{color:#6f6a61;background:#f2f0ed}.contact-status.ready{background:var(--success-bg);color:var(--success-text)}.contact-status.needs-consent{background:var(--warning-bg);color:var(--warning-text)}.contact-status.blocked{background:var(--danger-bg);color:var(--danger-text)}.contacts-pagination{color:#6f6a61;border-top:1px solid #eee8df;justify-content:space-between;align-items:center;min-width:980px;padding:12px 14px;font-size:13px;font-weight:700;display:flex}.contacts-pagination div{gap:8px;display:flex}.contacts-pagination button.active{color:#fff;background:linear-gradient(135deg,#bd7d0f,#9b6509);border-color:#9b6509}.contacts-pagination button{min-width:34px;height:34px;padding:0 10px}.campaigns-layout{grid-template-columns:minmax(380px,.95fr) minmax(320px,.7fr) minmax(320px,.8fr);align-items:start;gap:18px;display:grid}.modal-card.campaign-composer-modal{width:min(1180px,100vw - 36px);max-width:1180px;max-height:min(920px,100vh - 36px);scroll-padding-top:96px;overflow:auto}.campaign-composer-modal .modal-header p{color:#6f6a61;margin:4px 0 0}.campaign-composer-modal .modal-header{background:var(--surface);z-index:2;border-bottom:1px solid #eee5da;margin:-20px -20px 16px;padding:20px;position:sticky;top:-20px}.campaign-modal-grid{grid-template-columns:minmax(0,1fr) minmax(320px,420px);align-items:start;gap:18px;display:grid}.campaign-create-card,.campaign-review-card,.campaign-recent-card{padding:28px}.campaign-create-card h2,.campaign-review-card h2,.campaign-recent-card h2{color:#050505;margin-bottom:20px;font-family:Georgia,Times New Roman,serif;font-size:26px;font-weight:500}.campaign-builder-form{display:block}.campaign-setup-column{gap:18px;display:grid}.campaign-step{background:#fffdf9;border:1px solid #eee5da;border-radius:10px;grid-template-columns:auto minmax(0,1fr);gap:13px;padding:16px;display:grid}.campaign-step h3{color:#111;margin:0 0 4px;font-size:15px;line-height:1.2}.campaign-step p{color:#6f6a61;margin-bottom:10px;font-size:12px;line-height:1.45}.campaign-step-number{color:#fff;background:#ad7410;border-radius:999px;justify-content:center;align-items:center;width:23px;height:23px;margin-top:2px;font-size:12px;font-weight:900;display:inline-flex}.campaign-audience-choice{color:#111;background:#f7f3ed;border:1px solid #eee5da;border-radius:8px;margin-bottom:10px;padding:10px}.campaign-audience-choice.floating-select-field{gap:7px}.campaign-audience-choice .floating-select-trigger{background:#fff;border-color:#eadfce}.campaign-audience-mode-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:10px;display:grid}.campaign-audience-mode-grid button{box-shadow:none;color:#111;text-align:left;background:#fffdf9;border:1px solid #e7dccd;border-radius:8px;align-items:start;gap:3px;min-height:74px;padding:11px;display:grid}.campaign-audience-mode-grid button:hover:not(:disabled),.campaign-audience-mode-grid button.selected{color:#111;background:#fbf5ea;border-color:#c89031}.campaign-audience-mode-grid button.selected{box-shadow:0 0 0 2px #c28b312e}.campaign-audience-mode-grid strong{font-size:13px;line-height:1.2}.campaign-audience-mode-grid span{color:#6f6a61;font-size:11px;font-weight:700;line-height:1.35}.campaign-save-segment-panel{grid-template-columns:minmax(0,1fr) auto auto;align-items:end;gap:8px;margin-top:12px;display:grid}.campaign-save-segment-panel button{white-space:nowrap;min-height:42px;padding-inline:14px}.campaign-segment-actions{justify-content:flex-start;margin-top:12px;display:flex}.campaign-review-card{background:#fffdf9;border:1px solid #e8ddcd;border-radius:10px;gap:14px;padding:18px;display:grid;position:sticky;top:104px;box-shadow:0 18px 38px #241c1214}.campaign-review-header{justify-content:space-between;align-items:start;gap:12px;display:flex}.campaign-review-header h3{color:#111;margin:0;font-family:Georgia,Times New Roman,serif;font-size:24px;font-weight:500;line-height:1.15}.campaign-message-preview{color:#111;white-space:pre-wrap;background:#fbfaf8;border:1px solid #e5ded4;border-radius:10px;min-height:62px;padding:13px;line-height:1.45}.campaign-footer-note{color:#6f6a61;text-transform:uppercase;margin:0;font-size:12px;font-weight:800}.campaign-variable-row{flex-wrap:wrap;gap:8px;margin:10px 0;display:flex}.campaign-variable-row button,.campaign-counter{color:#231f1a;background:#fff;border:1px solid #231f1a24;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:700}.campaign-counter{white-space:nowrap;margin-top:8px;display:inline-flex}.campaign-counter.over{color:#b42318;border-color:#b42318}.campaign-attachment-box{background:#fff;border:1px solid #e5ded4;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;min-height:48px;margin-top:12px;padding:6px 10px 6px 12px;display:flex}.campaign-attachment-box p{color:#6f6a61;margin:0;font-size:12px;font-weight:800}.campaign-attachment-label{color:#111;font-size:13px;font-weight:900;line-height:1.2}.campaign-attachment-row{flex:auto;justify-content:flex-end;align-items:center;gap:10px;display:flex}.campaign-attachment-row button{min-height:36px;padding:8px 12px;font-size:13px;font-weight:900;line-height:1.2}.campaign-remove-image-button{color:#fff;background:#111;border-color:#111}.campaign-remove-image-button:hover:not(:disabled){background:#000;border-color:#000}.campaign-attachment-row a{color:#9b6509;margin-left:auto;font-size:13px;font-weight:900;line-height:1.2;text-decoration:none}.campaign-readiness-list{gap:8px;display:grid}.campaign-readiness-list span{color:#5f5550;border:1px solid #e5ded4;border-radius:8px;padding:9px 10px;font-size:12px;font-weight:900}.campaign-readiness-list .ready{color:#116048;background:#eaf5ef;border-color:#c9e6d7}.campaign-readiness-list .not-ready{color:#9f2b1d;background:#fff4f2;border-color:#f2c8c0}.campaign-readiness-list .neutral{background:#f7f3ed}.campaign-form-actions{border-top:1px solid #e5ded4;grid-template-columns:1fr;gap:12px;padding-top:16px;display:grid}.campaign-form-actions .tertiary-button{box-shadow:none;color:#8d6424;background:0 0;border:0}.campaign-form-actions .tertiary-button:hover:not(:disabled){color:#111;background:#fbf5ea}.campaign-recent-header{justify-content:space-between;align-items:center;display:flex}.campaign-list{gap:18px;display:grid}.campaign-empty-state{color:#6f6a61;background:#fbf7ef;border:1px dashed #d8c4a6;border-radius:10px;gap:6px;padding:18px;display:grid}.campaign-empty-state button{justify-self:start;margin-top:8px}.campaign-empty-state strong{color:#111;font-size:15px}.campaign-empty-state p{margin:0}.campaign-row{cursor:pointer;border:1px solid #e7dfd4;border-radius:10px;grid-template-columns:auto minmax(170px,1.5fr) repeat(4,minmax(100px,.7fr)) auto;align-items:center;gap:18px;padding:22px;display:grid}.campaign-row:focus-visible{outline-offset:3px;outline:3px solid #bd7d0f47}.campaign-row-copy{gap:7px;min-width:0;display:grid}.conversation-copy,.thread-title,.campaign-message-preview,.campaign-preview,.contact-timeline-item,.appointment-client,.appointment-time,.service-name-cell{min-width:0}.campaign-row-copy strong,.campaign-row-copy p,.conversation-preview,.conversation-row strong,.thread-title h2,.appointment-client strong,.service-name-cell strong,.campaign-message-preview,.campaign-preview p,.appointment-payment-note,.empty,.appointment-empty,.alert{overflow-wrap:anywhere}.contacts-actions button,.campaign-form-actions button,.service-actions button,.appointment-payment-actions button,.appointment-refund-actions button,.status-action-group button{min-width:0}.ghost-button,.secondary-button,.tertiary-button,.lux-secondary-action,.row-action-button,.service-toggle{border:1px solid var(--line);color:var(--color-ink-soft);background:#fff}.ghost-button:hover:not(:disabled),.secondary-button:hover:not(:disabled),.tertiary-button:hover:not(:disabled),.lux-secondary-action:hover:not(:disabled),.row-action-button:hover:not(:disabled),.service-toggle:hover:not(:disabled){border-color:var(--color-line-strong);color:var(--color-black);background:#f8f6f1}.danger-button{background:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger-text)}.danger-button:hover:not(:disabled){color:var(--danger-text);background:#ffe7e2}.campaign-row-title{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.campaign-row-copy strong{color:#111}.campaign-row-copy small{color:#6f6a61;font-size:12px;font-weight:800}.campaign-row-copy p{color:#36322d;white-space:pre-wrap;margin-bottom:0;line-height:1.45}.campaign-status{color:#5f5550;text-transform:capitalize;border-radius:8px;padding:8px 12px;font-size:12px;font-weight:900;display:inline-flex}.campaign-status.status-sent,.campaign-status.status-delivered{color:#17613c;background:#dcefe5}.campaign-status.status-scheduled{color:#9b6509;background:#f7ebd8}.campaign-status.status-draft{color:#4d4944;background:#ecebea}.campaign-row>div:not(.campaign-row-copy):not(.campaign-row-actions){gap:6px;display:grid}.campaign-row>div span{color:#6f6a61;font-size:12px}.campaign-row>div strong{color:#111;font-family:Georgia,Times New Roman,serif;font-size:18px;font-weight:600;line-height:1.25}.campaign-row-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.campaign-row-actions button{min-width:92px}.campaign-recent-card .campaign-row{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;padding:16px}.campaign-recent-card .campaign-row>div:not(.campaign-row-copy):not(.campaign-row-actions),.campaign-recent-card .campaign-row-actions{grid-column:2}.campaign-recent-card .campaign-row-actions{justify-content:flex-start}.campaign-recipient-modal{width:min(860px,100vw - 36px);max-width:860px}.contact-profile-modal{max-width:860px}.contact-profile-form{gap:16px;display:grid}.contact-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.contact-preferences{background:var(--surface-soft);border:1px solid var(--line);border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px;display:grid}.contact-sms-status-control{grid-column:1/-1;gap:8px;display:grid}.contact-sms-status-control>span{color:var(--muted);font-size:12px;font-weight:800}.contact-sms-status-control>div{border:1px solid var(--line);background:#fff;border-radius:10px;grid-template-columns:repeat(3,minmax(0,1fr));padding:4px;display:grid}.contact-sms-status-control button{color:var(--muted);background:0 0;border-radius:8px;min-height:36px;padding:0 10px;font-size:13px}.contact-sms-status-control button.active{color:#fff;background:#111}.contact-profile-form textarea{min-height:132px}.contact-profile-actions{justify-content:flex-end;gap:10px;display:flex}.contact-profile-tabs{background:var(--surface-soft);border:1px solid var(--line);border-radius:12px;grid-template-columns:repeat(3,minmax(0,1fr));padding:4px;display:grid}.contact-profile-tabs button{color:var(--muted);background:0 0;border-radius:8px;height:38px;padding:0 12px;font-size:13px}.contact-profile-tabs button.active{color:#fff;background:linear-gradient(#c8932e,#946109)}.contact-timeline{border:1px solid var(--line);border-radius:12px;max-height:360px;display:grid;overflow:auto}.contact-timeline-item{gap:7px;padding:13px 15px;display:grid}.contact-timeline-item+.contact-timeline-item{border-top:1px solid var(--line)}.contact-timeline-item>div{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.contact-timeline-item strong{color:var(--color-black)}.contact-timeline-item span,.contact-timeline-item p{color:var(--muted);font-size:13px}.contact-timeline-item p{margin-bottom:0;line-height:1.45}.inbox-workspace{border:1px solid var(--line);box-shadow:var(--shadow-md);background:#fff;border-radius:12px;grid-template-columns:minmax(280px,380px) minmax(0,1fr);min-height:calc(100vh - 146px);display:grid;overflow:hidden}.inbox-workspace.appointment-panel-open{grid-template-columns:minmax(260px,340px) minmax(360px,1fr) minmax(360px,480px)}.inbox-sidebar{background:var(--color-surface-soft);border-right:1px solid var(--line);grid-template-rows:auto auto 1fr;min-width:0;display:grid}.inbox-tabs{border-bottom:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.inbox-tabs button{color:var(--color-black);background:0 0;border-bottom:3px solid #0000;border-radius:0;padding:16px 10px 14px}.inbox-tabs button.active{border-color:var(--color-gold-500);color:var(--color-gold-500)}.inbox-tabs button:disabled{color:#7c8781;cursor:not-allowed;background:0 0}.inbox-sidebar-header{border-bottom:1px solid var(--line);padding:16px}.inbox-sidebar-header h2,.thread-header h2,.thread-empty h2{margin-bottom:3px}.inbox-sidebar-header p,.thread-header p,.thread-empty p{color:var(--muted);margin-bottom:0;font-size:13px;font-weight:700}.conversation-list{min-height:0;overflow-y:auto}.conversation{border:0;border-bottom:1px solid var(--line);color:var(--ink);text-align:left;background:0 0;border-radius:0;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:12px;width:100%;min-height:86px;padding:14px 16px;display:grid}.conversation:hover:not(:disabled),.conversation.active{background:#fff8ea}.conversation.active{box-shadow:inset 3px 0 0 var(--color-gold-500)}.conversation.draft .conversation-avatar{background:linear-gradient(#c8932e,#946109)}.conversation-avatar{color:var(--color-black);background:#e9e1d6;border-radius:999px;flex:none;justify-content:center;align-items:center;width:42px;height:42px;font-size:15px;font-weight:800;display:inline-flex}.conversation-copy{gap:6px;min-width:0;display:grid}.conversation-row{justify-content:space-between;align-items:baseline;gap:10px;min-width:0;display:flex}.conversation-row strong{color:var(--color-black);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.conversation-row span{color:var(--muted);flex:none;font-size:12px;font-weight:700}.conversation-preview,.conversation-subtitle{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.conversation-preview{color:var(--color-muted-strong);font-size:13px;font-weight:600}.conversation-subtitle{color:var(--muted);font-size:12px;font-weight:700}.message-thread{background:linear-gradient(#fff,#fffbf5);grid-template-rows:auto auto minmax(0,1fr) auto;min-width:0;display:grid}.thread-header{border-bottom:1px solid var(--line);z-index:3;background:#fff;justify-content:space-between;align-items:center;gap:12px;min-height:70px;padding:14px 18px;display:flex;position:sticky;top:0}.thread-title{align-items:center;gap:12px;min-width:0;display:flex}.thread-title>div:last-child{min-width:0}.thread-title h2,.thread-title p{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.thread-header p{text-transform:capitalize}.thread-actions{flex:none;align-items:center;gap:10px;display:flex}.thread-actions .secondary-button{white-space:nowrap;min-height:44px}.draft-thread-title{min-height:44px}.message-thread>.compose-recipient-field{border-bottom:1px solid var(--line);padding:14px 18px 16px}.compose-recipient-field{position:relative}.compose-recipient-results{border:1px solid var(--line);box-shadow:var(--shadow-lg);background:#fff;border-radius:8px;max-height:260px;margin-top:6px;padding:6px;display:grid;overflow-y:auto}.compose-recipient-results button{color:var(--ink);text-align:left;background:#fff;border-radius:6px;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:10px;padding:9px;display:grid}.compose-recipient-results button:hover:not(:disabled){background:var(--color-gold-50)}.compose-recipient-results .conversation-avatar{width:38px;height:38px;font-size:13px}.compose-recipient-results span:last-child{gap:2px;min-width:0;display:grid}.compose-recipient-results strong,.compose-recipient-results small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.compose-recipient-results small{color:var(--muted);font-size:12px;font-weight:700}.thread-body{align-content:end;gap:18px;min-height:0;padding:28px;display:grid;overflow-y:auto}.draft-thread-body{align-content:start}.message-row{align-items:end;gap:12px;max-width:min(760px,88%);display:flex}.message-row.outbound{justify-self:end}.message-row.inbound{justify-self:start}.message-row.outbound>div{justify-items:end;display:grid}.message{border-radius:8px;padding:12px 15px;line-height:1.45}.message p{margin-bottom:0}.message.outbound{color:#fff;background:linear-gradient(#c8932e,#946109)}.message.inbound{color:var(--color-black);background:#f7f1e8}.message-meta{color:var(--muted);margin-top:7px;font-size:12px;font-weight:700;display:block}.staff-avatar{color:#fff;background:linear-gradient(#c8932e,#946109)}.reply-form{border-top:1px solid var(--line);background:#fff;padding:14px 16px}.draft-reply-form{gap:10px;display:grid}.draft-permission{justify-self:start}.reply-composer{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;display:grid}.reply-composer textarea{resize:none;border-radius:6px;min-height:54px}.reply-composer button{border-radius:6px;align-self:end;min-width:88px;height:54px;padding:0 18px}.thread-empty{text-align:center;place-self:center;justify-items:center;gap:10px;max-width:320px;display:grid}.empty{color:var(--muted);margin-bottom:0}.customer-suggestions{background:var(--surface);border:1px solid var(--color-line-strong);box-shadow:var(--shadow-lg);border-radius:8px;gap:4px;padding:6px;display:grid}.customer-suggestions-popover{max-height:min(280px,100vh - 48px);z-index:var(--z-modal-popover);position:fixed;overflow-y:auto}.customer-combobox{gap:6px;display:grid}.customer-suggestions button{border:1px solid var(--line);color:var(--ink);text-align:left;background:#fff;border-radius:6px;justify-content:space-between;gap:12px;padding:9px 10px;display:flex}.customer-suggestions button:hover{background:var(--color-gold-50);border-color:var(--color-line-strong)}.customer-suggestions strong{color:var(--color-black)}.customer-suggestions span{color:var(--muted);font-size:12px;font-weight:700}.floating-select-field{gap:7px;display:grid}.floating-select-label{color:var(--color-ink-soft);font-size:13px;font-weight:800}.floating-select-trigger{border:1px solid var(--line);color:var(--ink);text-align:left;background:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:45px;padding:11px 38px 11px 12px;display:flex;position:relative}.floating-select-trigger.compact{min-height:42px;padding:9px 38px 9px 11px}.floating-select-trigger:focus{border-color:var(--color-gold-400);box-shadow:var(--focus-ring);outline:none}.floating-select-trigger:disabled{color:#8a8174;cursor:not-allowed;background:#f0ece5}.floating-select-trigger span{color:var(--color-black);font-weight:700}.floating-select-trigger.compact span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.floating-select-trigger small{color:var(--muted);font-size:12px;font-weight:700}.floating-select-trigger.compact small{display:none}.floating-select-options{max-height:min(280px,100vh - 48px);z-index:var(--z-modal-popover);background:#fffdf9;border:1px solid #eadfce;border-radius:8px;gap:6px;padding:8px;display:grid;position:fixed;overflow-y:auto;box-shadow:0 16px 34px #17120d1f}.floating-select-options button{color:var(--color-black);text-align:center;background:#fff;border:1px solid #eadfce;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:42px;padding:0 12px;font-size:13px;font-weight:800;display:flex}.floating-select-options button:hover,.floating-select-options button[aria-selected=true]{color:#6f4a0b;background:#fbf4e3;border-color:#eadfce}.appointment-create{max-width:720px}.appointment-side-panel{border-left:1px solid var(--line);background:#fff;width:100%;min-width:0;max-width:none;max-height:calc(100vh - 146px);padding:16px;display:block;overflow:auto}.appointment-side-panel .modal-header{z-index:4;background:#fff;margin:-16px -16px 14px;padding:16px;position:sticky;top:0}.appointment-side-panel .appointment-schedule-row,.appointment-side-panel .appointment-two-column-row,.appointment-side-panel .availability-filter-grid{grid-template-columns:1fr}.appointment-side-panel .availability-results{max-height:280px}.sr-only{width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.inbox-page{--inbox-ink:#11100f;--inbox-muted:#746f67;--inbox-line:#e8e0d5;--inbox-soft:#fbf8f3;--inbox-gold:#b98222;--inbox-gold-dark:#936416;gap:16px;display:grid}.inbox-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.inbox-kpi-card{border:1px solid var(--inbox-line);background:#fff;border-radius:10px;grid-template-columns:minmax(0,1fr);align-items:center;gap:5px;min-width:0;padding:18px;display:grid;box-shadow:0 16px 38px #3d2d1812}.inbox-kpi-icon{color:var(--inbox-gold-dark);background:#f6ead8;border-radius:999px;grid-row:span 3;justify-content:center;align-items:center;width:48px;height:48px;display:inline-flex}.inbox-kpi-icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:24px;height:24px}.inbox-kpi-card span{color:var(--inbox-muted);font-size:12px;font-weight:800}.inbox-kpi-card strong{color:var(--inbox-ink);font-family:Georgia,Times New Roman,serif;font-size:28px;font-weight:700;line-height:1}.inbox-kpi-card small{color:var(--inbox-muted);font-size:12px;font-weight:700}.inbox-page .inbox-workspace{border:1px solid var(--inbox-line);background:#fff;border-radius:10px;grid-template-columns:minmax(300px,400px) minmax(0,1fr);min-height:calc(100vh - 276px);box-shadow:0 18px 48px #3d2d1814}.inbox-page .inbox-workspace.appointment-panel-open{grid-template-columns:minmax(280px,360px) minmax(430px,1fr) minmax(360px,460px)}.inbox-page .inbox-sidebar{border-right-color:var(--inbox-line);background:linear-gradient(#fff,#fdfaf6)}.inbox-page .inbox-tabs{border-bottom-color:var(--inbox-line)}.inbox-page .inbox-tabs button{color:var(--inbox-ink);padding:19px 10px 16px;font-weight:900}.inbox-page .inbox-tabs button.active{border-color:var(--inbox-gold);color:var(--inbox-gold-dark)}.inbox-page .inbox-sidebar-header{border-bottom-color:#efe7dc;grid-template-columns:minmax(0,1fr) 44px;align-items:center;gap:12px 10px;padding:18px 16px 14px;display:grid}.inbox-search-field{border:1px solid var(--inbox-line);background:#fff;border-radius:8px;grid-template-columns:20px minmax(0,1fr);align-items:center;padding:0 12px;display:grid}.inbox-search-field svg,.inbox-filter-button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:20px;height:20px}.inbox-search-field input{box-shadow:none;color:var(--inbox-ink);border:0;height:42px;padding:0 0 0 8px}.inbox-search-field input:focus{box-shadow:none}.inbox-filter-button{border:1px solid var(--inbox-line);color:var(--inbox-muted);background:#fff;border-radius:8px;justify-content:center;align-items:center;height:44px;padding:0;display:inline-flex}.inbox-filter-button:hover:not(:disabled){background:var(--inbox-soft);color:var(--inbox-gold-dark)}.inbox-list-count{color:var(--inbox-muted);grid-column:1/-1;margin-bottom:0;font-size:13px;font-weight:700}.inbox-page .conversation{border-bottom-color:#efe7dc;grid-template-columns:46px minmax(0,1fr);gap:14px;min-height:84px}.inbox-page .conversation:hover:not(:disabled),.inbox-page .conversation.active{background:#fbf5ec}.inbox-page .conversation.active{box-shadow:inset 3px 0 0 var(--inbox-gold)}.inbox-page .conversation-avatar{color:#fff;background:linear-gradient(145deg,#c58a22,#96640f);width:46px;height:46px;font-size:14px}.inbox-page .conversation:not(.active) .conversation-avatar{color:var(--inbox-ink);background:#eee8df}.inbox-page .conversation-row strong{color:var(--inbox-ink);font-size:14px}.inbox-page .conversation-row span,.inbox-page .conversation-subtitle,.inbox-page .conversation-preview{color:var(--inbox-muted)}.conversation-preview-row{align-items:center;gap:10px;min-width:0;display:flex}.conversation-preview-row .conversation-preview{min-width:0}.conversation-unread-badge{background:var(--inbox-gold);color:#fff;border-radius:999px;flex:none;justify-content:center;align-items:center;width:20px;height:20px;font-size:11px;font-weight:900;display:inline-flex}.inbox-page .message-thread{background:#fff;grid-template-rows:auto auto minmax(0,1fr) auto}.inbox-page .thread-header{border-bottom-color:var(--inbox-line);min-height:96px;padding:20px 22px}.inbox-page .thread-title h2{color:var(--inbox-ink);font-family:Georgia,Times New Roman,serif;font-size:22px;font-weight:700}.inbox-page .thread-header p{color:var(--inbox-muted);text-transform:none}.thread-status-pill{color:var(--inbox-gold-dark);text-transform:capitalize;white-space:nowrap;background:#fff8ec;border:1px solid #ead1aa;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:900}.inbox-page .thread-actions{flex-wrap:wrap;justify-content:flex-end}.inbox-page .thread-actions .secondary-button{color:var(--inbox-gold-dark);border-color:#c99b5b}.inbox-page .thread-actions .secondary-button:hover:not(:disabled){background:#fff8ec}.inbox-page .thread-body{background:linear-gradient(#fff,#fdfaf6);gap:20px;padding:22px 24px 28px}.message-date-divider{color:var(--inbox-ink);background:#f4f2ef;border:1px solid #e3ded7;border-radius:999px;justify-self:center;padding:8px 18px;font-size:12px;font-weight:800}.inbox-page .message{border:1px solid var(--inbox-line);overflow-wrap:anywhere;border-radius:8px;max-width:520px;box-shadow:0 10px 18px #3d2d180d}.inbox-page .message.outbound{color:var(--inbox-ink);background:#fffaf3}.inbox-page .message.inbound{color:var(--inbox-ink);background:#fff}.inbox-page .message-meta{color:var(--inbox-muted);text-align:left;font-weight:700}.inbox-page .message-row.outbound .message-meta{text-align:right}.inbox-page .staff-avatar{color:#fff;background:linear-gradient(145deg,#c58a22,#96640f)}.inbox-page .reply-form{border-top-color:var(--inbox-line);background:#fff;padding:14px 18px 18px}.inbox-page .reply-composer{border:1px solid var(--inbox-line);border-radius:8px;grid-template-columns:1fr;gap:10px;padding:10px;display:grid}.inbox-page .reply-composer textarea{box-shadow:none;border:0;min-height:62px;padding:8px}.inbox-page .reply-composer textarea:focus{box-shadow:none}.composer-footer{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.composer-count{color:var(--inbox-muted);white-space:nowrap;font-size:13px;font-weight:800}.inbox-page .reply-composer button{background:linear-gradient(145deg,#c58a22,#96640f);border-radius:8px;min-width:98px;height:46px}.inbox-page .reply-composer button:hover:not(:disabled){background:linear-gradient(145deg,#d0962b,#a66f13)}.inbox-page .reply-composer button:disabled{color:#928777;background:#e6ded2}.inbox-page .message-thread>.compose-recipient-field{border-bottom-color:var(--inbox-line);padding:16px 22px}.inbox-page .draft-permission{margin-left:4px}.inbox-page .thread-empty{color:var(--inbox-muted)}.inbox-page .appointment-side-panel{border-left-color:var(--inbox-line);background:#fffcf8;align-self:start;min-height:0;max-height:calc(100vh - 176px);padding:18px;overflow-y:auto}.inbox-page .appointment-side-panel .modal-header{border-bottom:1px solid var(--inbox-line);background:#fffcf8;margin:-18px -18px 16px;padding:18px}.inbox-page .appointment-side-panel .modal-header h2{color:var(--inbox-ink);font-family:Georgia,Times New Roman,serif;font-size:22px}.inbox-page .appointment-side-panel label{color:var(--inbox-ink)}.inbox-page .appointment-side-panel input,.inbox-page .appointment-side-panel select,.inbox-page .appointment-side-panel textarea{border-color:var(--inbox-line)}@media(max-width:1180px){.inbox-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.inbox-page .inbox-workspace,.inbox-page .inbox-workspace.appointment-panel-open{grid-template-columns:minmax(260px,340px) minmax(0,1fr)}.inbox-page .appointment-side-panel{border-left:0;border-top:1px solid var(--inbox-line);grid-column:1/-1;max-height:none}}@media(max-width:760px){.inbox-kpi-grid,.inbox-page .inbox-workspace,.inbox-page .inbox-workspace.appointment-panel-open{grid-template-columns:1fr}.inbox-page .inbox-workspace{min-height:auto}.inbox-page .inbox-sidebar{border-bottom:1px solid var(--inbox-line);border-right:0}.inbox-page .conversation-list{max-height:360px}.inbox-page .thread-header{flex-direction:column;align-items:start}.inbox-page .thread-actions{justify-content:flex-start;width:100%}.inbox-page .message-row{max-width:100%}.composer-footer{grid-template-columns:1fr}.composer-count{justify-self:start}.inbox-page .reply-composer button{width:100%}}.appointment-schedule-row{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:10px;display:grid}.appointment-two-column-row{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:10px;display:grid}.appointment-schedule-row>label,.appointment-schedule-row .floating-select-field,.appointment-two-column-row>label,.appointment-two-column-row .customer-combobox>label{grid-template-rows:auto 45px;gap:7px;display:grid}.appointment-schedule-row input,.appointment-schedule-row .floating-select-trigger,.appointment-two-column-row input,.appointment-two-column-row .floating-select-trigger{box-sizing:border-box;height:45px;min-height:45px}.availability-finder{background:var(--color-surface-soft);border:1px solid var(--line);border-radius:12px;gap:12px;padding:14px;display:grid}.availability-finder h3{color:var(--color-black);margin-bottom:3px;font-size:16px}.availability-finder p{color:var(--muted);margin-bottom:0;font-size:13px;font-weight:700}.availability-finder-header{justify-content:space-between;align-items:start;gap:12px;display:flex}.availability-expand-button{border:1px solid var(--line);color:var(--color-black);background:#fff;border-radius:8px;flex:none;justify-content:center;align-items:center;width:34px;height:34px;padding:0;font-size:18px;font-weight:900;line-height:1;display:inline-flex}.availability-expand-button:hover{background:var(--color-gold-50);border-color:var(--color-line-strong)}.availability-collapsible{opacity:1;grid-template-rows:1fr;transition:grid-template-rows .52s,opacity .52s;display:grid;overflow:hidden}.availability-collapsible.collapsed{opacity:0;grid-template-rows:0fr}.availability-collapsible-inner{gap:12px;min-height:0;display:grid}.availability-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:10px;display:grid}.availability-date-field input{border-color:var(--line);min-height:45px}.custom-range-popover{background:var(--surface);border:1px solid var(--color-line-strong);box-shadow:var(--shadow-lg);z-index:var(--z-modal-popover);border-radius:8px;gap:10px;padding:12px;display:grid;position:fixed}.custom-range-popover label{margin:0}.custom-range-popover input{border-color:var(--line);min-height:42px}.availability-results{gap:12px;display:grid}.availability-day{gap:7px;display:grid}.availability-day>span{color:var(--color-ink-soft);text-transform:uppercase;font-size:12px;font-weight:900}.availability-slot-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.availability-slot-grid button{border:1px solid var(--line);color:var(--color-black);text-align:left;background:#fff;border-radius:6px;gap:2px;padding:9px 10px;display:grid}.availability-slot-grid button:hover,.availability-slot-grid button.selected{background:var(--color-gold-50);border-color:var(--color-line-strong)}.availability-slot-grid strong{font-size:13px}.availability-slot-grid span{color:var(--muted);font-size:12px;font-weight:700}.alert{background:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger-text);border-radius:8px;margin-bottom:16px;padding:11px 13px}.modal-backdrop{overscroll-behavior:contain;z-index:var(--z-modal-backdrop);background:#11100e6b;justify-content:center;align-items:center;padding:22px;display:flex;position:fixed;inset:0}.notice-backdrop{z-index:var(--z-notice-backdrop);background:#11100e6b;justify-content:center;align-items:center;padding:22px;display:flex;position:fixed;inset:0}.notice-modal{border:1px solid var(--line);box-shadow:var(--shadow-lg);color:var(--color-black);text-align:center;background:#fff;border-radius:12px;width:100%;max-width:420px;padding:22px}.notice-modal h2{color:var(--color-black);margin-bottom:8px;font-size:20px}.notice-modal p{color:var(--muted);margin-bottom:0;font-weight:700;line-height:1.5}.modal-card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-lg);scrollbar-gutter:stable;border-radius:10px;width:100%;max-width:520px;max-height:calc(100vh - 44px);padding:20px;overflow:auto}.quick-payment-modal{max-width:620px}.quick-payment-result{background:var(--color-surface-soft);border:1px solid var(--line);border-radius:10px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:10px;display:grid}.quick-payment-result span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:800}.quick-payment-result strong{color:var(--color-black)}.staff-modal{max-width:900px}.appointment-list-modal{max-width:560px}.appointment-list{gap:8px;display:grid}.appointment-list-item{background:var(--staff-bg);box-shadow:0 8px 16px var(--staff-shadow);color:#fff;text-align:left;border-radius:8px;gap:3px;padding:10px 12px;display:grid}.appointment-list-item:hover:not(:disabled){filter:brightness(1.04)}.appointment-list-item.appointment-status-cancelled,.appointment-list-item.appointment-status-completed,.appointment-list-item.appointment-status-no_show{filter:saturate(.42);opacity:.72}.appointment-list-item.appointment-status-cancelled strong{text-decoration:line-through}.appointment-list-item span,.appointment-list-item small{opacity:.9;font-size:11px;font-weight:800}.modal-header{background:var(--surface);z-index:2;justify-content:space-between;align-items:start;gap:16px;margin-bottom:16px;display:flex;position:sticky;top:-20px}.modal-header h2{overflow-wrap:anywhere;margin-bottom:5px}.modal-header .ghost-button,.modal-header button:last-child{flex:none}.contact-modal-name{color:var(--color-black);margin-bottom:4px;font-size:15px;display:block}.modal-section-header{justify-content:space-between;align-items:center;gap:14px;display:flex}.modal-section-header h3{color:var(--color-black);margin:0;font-size:16px}.modal-section-header p{color:var(--muted);margin:4px 0 0;font-size:12px;font-weight:700}.staff-schedule-editor,.staff-time-off-editor{border-top:1px solid var(--line);gap:14px;padding-top:16px;display:grid}.weekly-schedule-list{gap:10px;display:grid}.weekly-schedule-row{grid-template-columns:130px minmax(170px,auto) minmax(0,1fr);align-items:start;gap:10px 14px;display:grid}.weekly-schedule-row>strong{color:var(--color-black);padding-top:12px;font-size:15px}.weekly-schedule-controls{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.weekly-schedule-controls select,.weekly-time-slot input,.time-off-row input{min-height:42px}.weekly-schedule-controls select{width:132px}.weekly-time-slots{gap:8px;display:grid}.weekly-time-slot{grid-template-columns:minmax(105px,132px) auto minmax(105px,132px) auto;justify-content:end;align-items:center;gap:10px;display:grid}.time-off-list{gap:10px;display:grid}.time-off-row{grid-template-columns:minmax(140px,1.1fr) minmax(105px,.8fr) auto minmax(105px,.8fr) minmax(160px,1.2fr) auto;align-items:center;gap:10px;display:grid}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:16px;display:grid}.detail-grid div{background:var(--surface-soft);border:1px solid var(--line);border-radius:8px;gap:4px;padding:11px;display:grid}.detail-grid span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:900}.detail-grid strong{color:var(--color-black);font-size:13px}.ghost-button{border:1px solid var(--line);color:var(--color-gold-600);background:#fff}.ghost-button:hover:not(:disabled){background:var(--color-gold-50)}.appointment-action-panel{background:var(--color-surface-soft);border:1px solid var(--line);border-radius:10px;gap:12px;margin-top:16px;padding:12px;display:grid}.appointment-payment-panel{border:1px solid var(--line);background:#fffdf8;border-radius:10px;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:16px;padding:12px;display:grid}.appointment-payment-panel>div:not(.appointment-payment-actions){gap:3px;display:grid}.appointment-payment-panel span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:800}.appointment-payment-panel strong{color:var(--color-black);font-size:15px}.appointment-payment-actions,.appointment-refund-actions{grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;display:grid}.appointment-payment-note{color:var(--muted);text-transform:uppercase;grid-column:1/-1;gap:6px;font-size:11px;font-weight:800;display:grid}.appointment-payment-actions button,.appointment-refund-actions button{border:1px solid var(--line);color:var(--color-gold-600);background:#fff;min-height:38px;padding:8px 10px;font-size:12px}.appointment-payment-actions button:hover:not(:disabled),.appointment-refund-actions button:hover:not(:disabled){background:var(--color-gold-50);color:var(--color-gold-600)}.appointment-payment-actions button:disabled,.appointment-refund-actions button:disabled{background:var(--color-surface-soft);color:var(--muted);cursor:not-allowed}.appointment-refund-actions{border-top:1px solid var(--line);align-items:end;padding-top:10px}.appointment-refund-actions label{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:800}.payment-activity-timeline{border-top:1px solid var(--line);grid-column:1/-1;gap:10px;padding-top:10px;display:grid}.payment-activity-heading{justify-content:space-between;align-items:center;display:flex}.payment-activity-item{grid-template-columns:10px minmax(0,1fr);gap:10px;display:grid}.payment-activity-item>span{background:var(--color-gold-500);border-radius:999px;width:10px;height:10px;margin-top:4px}.payment-activity-item small{color:var(--muted);margin-top:2px;font-size:12px;font-weight:700;display:block}.payment-activity-item p{color:var(--muted);margin:4px 0 0;font-size:12px;font-weight:700}.save-appointment-button{width:100%;box-shadow:0 12px 22px #9d681033}.status-action-group{border:1px solid var(--line);background:#fff;border-radius:9px;grid-template-columns:repeat(3,minmax(0,1fr));display:grid;overflow:hidden}.status-action-group button{color:var(--color-gold-600);background:0 0;border-radius:0;padding:10px 8px;font-size:12px}.status-action-group button+button{border-left:1px solid var(--line)}.status-action-group button:hover:not(:disabled){background:var(--color-gold-50);color:var(--color-gold-600)}.status-action-group .danger-button{color:var(--danger-text)}.status-action-group .danger-button:hover:not(:disabled){background:var(--danger-bg);color:var(--danger-text)}.confirm-actions{justify-content:center;gap:8px;margin-top:16px;display:flex}.confirm-actions .danger-button{background:var(--danger-text);color:#fff}.confirm-actions .danger-button:hover:not(:disabled){color:#fff;background:#9f1239}.login-page{background:radial-gradient(circle at 20% 10%,#e0c07b33,transparent 28rem),linear-gradient(180deg,#fffefd 0%,var(--color-canvas) 100%);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.login-card{gap:15px;width:100%;max-width:430px;display:grid}.login-mark{color:var(--color-gold-500);background:linear-gradient(#fff,#fff) padding-box padding-box,linear-gradient(145deg,#e7c77d,#9d6810) border-box}@media(max-width:860px){.app-shell,.panel-grid,.campaigns-layout,.staff-layout,.lux-kpi-grid,.services-intro-row,.settings-grid,.settings-form-preview,.appointments-filters,.service-form-grid,.metric-grid,.contacts-import-panel,.contacts-toolbar{grid-template-columns:1fr}.contacts-kpi-strip,.campaigns-kpi-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.dsn-kpi-card+.dsn-kpi-card{border-left:0}.dsn-kpi-card{border-bottom:1px solid #eadfce}.dsn-kpi-card:last-child{border-bottom:0}.campaign-row{grid-template-columns:auto minmax(0,1fr);align-items:start}.campaign-modal-grid{grid-template-columns:1fr}.campaign-review-card{position:static}.campaign-row>div:not(.campaign-row-copy):not(.campaign-row-actions),.campaign-row-actions{grid-column:2}.app-topbar{grid-template-columns:minmax(0,1fr) max-content;padding:12px 16px}.brand{grid-area:1/1}.top-nav{grid-area:2/1/auto/-1;gap:8px;padding-bottom:2px}.app-topbar .header-actions{grid-area:1/2}.nav-item{white-space:nowrap;flex:none;padding:9px 11px}.content{padding:20px}.page-header{flex-direction:column;align-items:start}.contacts-filter-group{justify-content:start}.lux-page{gap:20px}.lux-page-heading h1{font-size:42px}.staff-redesign .staff-filters,.services-redesign .services-filters{grid-template-columns:1fr}.lux-primary-action,.lux-secondary-action{width:100%}.lux-primary-action.icon-only-action,.luxury-primary-button.icon-only-action{justify-self:start;width:46px}.lux-table-meta{flex-direction:column;align-items:stretch}.header-actions{justify-content:flex-start;width:auto}.header-actions button{width:auto}.weekly-schedule-row,.time-off-row{grid-template-columns:1fr}.weekly-time-slot{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);justify-content:stretch}.weekly-time-slot button{grid-column:1/-1}.calendar-toolbar{gap:12px;display:grid}.calendar-title{min-width:0}.calendar-filter-bar{justify-content:start}.view-toggle,.calendar-nav,.month-picker,.status-filter,.staff-filter{flex:160px;min-width:0}.calendar-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.calendar-nav button,.view-toggle button{padding-left:9px;padding-right:9px}.staff-legend{max-height:96px;overflow:auto}.legend-pill{padding:6px 8px;font-size:11px}.calendar-grid{grid-template-columns:48px repeat(7,minmax(128px,1fr));min-width:960px}.month-grid{grid-template-columns:repeat(7,minmax(108px,1fr));min-width:756px}.month-cell{min-height:116px;padding:8px}.calendar-event{padding:7px}.calendar-event strong{font-size:12px}}@media(max-width:1100px){.app-topbar{grid-template-columns:minmax(0,1fr) max-content;row-gap:8px}.brand{grid-area:1/1}.app-topbar .header-actions{grid-area:1/2}.top-nav{grid-area:2/1/auto/-1;justify-content:flex-start}.campaigns-layout{grid-template-columns:1fr}.campaign-row{grid-template-columns:auto minmax(0,1fr) auto;align-items:start}.campaign-row>div:not(.campaign-row-copy):not(.campaign-row-actions){grid-column:2}.campaign-row-actions{grid-area:1/3/span 3}.appointments-card .appointments-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.appointments-card .appointment-search{grid-column:1/-1}.inbox-page .thread-header{flex-direction:column;align-items:flex-start}.inbox-page .thread-actions{justify-content:flex-start;width:100%}}@media(max-width:640px){.app-topbar{min-height:72px}.brand{gap:10px;font-size:18px}.brand-logo{max-width:96px;height:50px}.appointment-schedule-row,.appointment-two-column-row,.availability-filter-grid,.availability-slot-grid,.contact-profile-grid,.contact-preferences{grid-template-columns:1fr}.contacts-filter-group button{flex:96px;padding-left:8px;padding-right:8px}.contacts-kpi-strip,.campaigns-kpi-strip,.campaign-form-actions{grid-template-columns:1fr}.dsn-kpi-card{padding:16px}.contacts-directory,.campaign-create-card,.campaign-recent-card{padding:16px;overflow:hidden}.campaign-step{grid-template-columns:1fr}.campaign-step-number{margin-top:0}.contacts-pagination{flex-direction:column;align-items:stretch;gap:12px;min-width:0}.contacts-pagination div{justify-content:flex-start}.contacts-title-actions{grid-template-columns:repeat(2,minmax(0,1fr));justify-content:flex-start;align-items:center;gap:10px;width:100%;display:grid}.contacts-title-actions .lux-secondary-action{width:100%;min-height:46px;padding-inline:10px;font-size:14px}.contacts-page-heading{flex-direction:column;align-items:flex-start;gap:16px}.appointment-table-wrap,.contacts-table-wrap{border:0;overflow:visible}.appointment-table{border-collapse:separate;border-spacing:0 10px;min-width:0}.staff-redesign .staff-table,.services-redesign .services-table{min-width:0}.lux-table-card .appointment-table-wrap{margin:0 12px 12px}.appointment-table thead{display:none}.appointment-table tbody,.appointment-table tr,.appointment-table td{width:100%;display:block}.appointment-table tr{border:1px solid var(--line);box-shadow:var(--shadow-sm);background:#fff;border-radius:10px;padding:10px 12px}.appointment-table td{border-bottom:0;justify-content:space-between;align-items:center;gap:12px;padding:8px 0;display:flex}.appointment-table td:before{color:var(--muted);content:attr(data-label);text-transform:uppercase;flex:0 0 72px;font-size:11px;font-weight:900}.appointment-notes-cell{white-space:normal;max-width:none}}@media(max-width:860px){.calendar-kpi-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-kpi-strip article{min-height:112px;padding:18px}.calendar-card,.appointments-card{border-radius:16px;padding:16px;overflow:hidden}.calendar-card .calendar-toolbar{display:grid}.calendar-card .calendar-filter-bar{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.calendar-card .view-toggle,.calendar-card .calendar-nav,.calendar-card .month-picker,.calendar-card .status-filter,.calendar-card .staff-filter,.calendar-card .luxury-primary-button{width:100%}.calendar-card .date-picker-control{grid-column:1/-1}.appointments-card .appointments-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.appointments-card .appointment-search{grid-column:1/-1}.appointment-pagination{grid-template-columns:1fr;align-items:start}.appointment-pagination>span:last-child{justify-self:start}}@media(max-width:640px){.calendar-kpi-strip,.calendar-card .calendar-filter-bar,.appointments-card .appointments-filters{grid-template-columns:1fr}.calendar-kpi-strip article{min-height:96px}.calendar-card .calendar-title h2,.page-appointments .page-header h1{font-size:30px}.calendar-card .calendar-help{white-space:normal}.appointments-card .appointment-table-wrap{border:0;overflow:visible}.appointments-card .appointment-table{min-width:0}.appointments-card .appointment-table th,.appointments-card .appointment-table td{padding:8px 0}.appointments-card .appointment-table tr{border-color:var(--luxury-line)}.appointments-card .appointment-table td[data-label=Actions]{justify-content:flex-end}.appointments-card .appointment-table td[data-label=Actions]:before{display:none}}@media(max-width:760px){.modal-backdrop,.notice-backdrop{align-items:stretch;padding:12px}.modal-card,.notice-modal,.staff-modal,.service-detail,.quick-payment-modal,.contact-profile-modal,.campaign-recipient-modal,.modal-card.campaign-composer-modal,.modal-card.appointment-create,.modal-card.appointment-detail,.modal-card.appointment-list-modal{width:100%;max-width:none;max-height:calc(100vh - 24px)}.modal-header{align-items:flex-start;gap:12px}.appointment-payment-panel,.detail-grid,.quick-payment-result,.status-action-group{grid-template-columns:1fr}.status-action-group button+button{border-left:0;border-top:1px solid var(--line)}}@media(max-width:480px){.app-shell{padding:4px}.app-topbar{border-radius:10px;grid-template-columns:auto minmax(0,1fr);gap:6px;min-height:0;padding:6px}.content{padding:10px 2px 96px}.brand{grid-area:1/1;justify-content:center;min-width:0}.brand>span:not(.brand-mark){display:none}.brand-logo{max-width:78px;height:38px}.app-topbar .header-actions{grid-area:1/2;justify-self:end;gap:4px;display:flex}.app-topbar .header-actions>.icon-button,.app-topbar .header-actions>.notification-button{display:none}.app-topbar .avatar-menu{height:38px;min-height:38px;padding:0 6px}.app-topbar .avatar-circle{width:34px;min-width:34px;height:34px}.top-nav{grid-area:2/1/auto/-1;gap:3px;margin-inline:-1px;padding:0 1px 2px;scroll-padding-inline:1px}.nav-item{min-height:36px;padding:8px 8px 10px;font-size:13px}.calendar-page-stack,.appointments-page-stack{gap:10px}.calendar-kpi-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.calendar-kpi-strip article{gap:8px;min-height:68px;padding:10px}.calendar-kpi-strip article svg{width:22px;height:22px}.calendar-kpi-strip article span,.calendar-kpi-strip article small{font-size:11px}.calendar-kpi-strip article strong{font-size:20px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.metric-card{gap:6px;min-height:68px;padding:10px}.metric-card:before{display:none}.metric-card span{font-size:11px;line-height:1.15}.metric-card strong{font-size:20px;line-height:1.05}.floating-primary-action{bottom:max(82px,calc(env(safe-area-inset-bottom) + 70px));height:60px;right:max(18px,env(safe-area-inset-right));z-index:1300;width:60px}.page-header,.lux-page-heading,.contacts-page-heading{gap:8px;margin-block:6px 12px}.page-header h1,.lux-page-heading h1,.page-appointments .page-header h1{font-size:26px;line-height:1.05}.card,.calendar-card,.appointments-card,.contacts-directory,.campaign-create-card,.campaign-recent-card,.lux-table-card,.metric-card{border-radius:10px}.calendar-card,.appointments-card{padding:10px}.calendar-card .calendar-toolbar{gap:7px;margin-bottom:8px;padding-bottom:8px}.calendar-card .calendar-title h2{font-size:24px;line-height:1.05}.calendar-card .calendar-filter-bar{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;width:100%}.calendar-card .view-toggle,.calendar-card .calendar-nav{grid-column:auto;width:100%;min-width:0;height:38px}.calendar-card .calendar-nav button,.calendar-card .view-toggle button{min-height:38px;padding-inline:6px;font-size:12px}.calendar-card .month-picker,.calendar-card .status-filter,.calendar-card .date-picker-control,.calendar-status-select{grid-column:auto;width:100%;min-width:0;height:40px}.calendar-card .date-picker-trigger,.calendar-status-select .floating-select-trigger{min-height:40px;padding-left:10px;padding-right:30px;font-size:12px}.calendar-card .calendar-window{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;max-height:min(68vh,640px);overflow:auto}.calendar-grid{grid-template-columns:42px repeat(7,minmax(112px,1fr));grid-auto-rows:48px;min-width:826px}.calendar-grid.calendar-grid-day{grid-template-columns:42px minmax(520px,1fr);min-width:562px}.calendar-card .calendar-corner,.calendar-card .calendar-day-header,.calendar-card .calendar-hour{padding:6px 4px;font-size:10px}.calendar-card .calendar-event{padding:5px}.calendar-card .calendar-event strong{font-size:11px}.calendar-card .calendar-event .event-meta,.calendar-card .status-badge{font-size:10px}.availability-finder{padding:12px}.availability-finder-header{align-items:flex-start;gap:10px}.availability-slot-grid{gap:8px}.availability-slot-grid button{min-height:68px;padding:10px}.floating-select-trigger,.appointment-schedule-row input,.appointment-two-column-row input,.appointment-two-column-row textarea{min-width:0}}button:hover:not(:disabled),button:active:not(:disabled),.nav-item:hover:not(:disabled),.nav-item:active:not(:disabled),.calendar-nav button:hover:not(:disabled),.calendar-nav button:active:not(:disabled),.view-toggle button:hover:not(:disabled),.view-toggle button:active:not(:disabled),.appointment-quick-row button:hover:not(:disabled),.appointment-quick-row button:active:not(:disabled),.contacts-filter-group button:hover:not(:disabled),.contacts-filter-group button:active:not(:disabled),.campaign-audience-mode-grid button:hover:not(:disabled),.campaign-audience-mode-grid button:active:not(:disabled),.pagination-buttons button:hover:not(:disabled),.pagination-buttons button:active:not(:disabled),.date-picker-trigger:hover:not(:disabled),.date-picker-trigger:active:not(:disabled),.date-picker-grid button:hover:not(:disabled),.date-picker-grid button:active:not(:disabled),.date-picker-header button:hover:not(:disabled),.date-picker-header button:active:not(:disabled),.date-picker-today:hover:not(:disabled),.date-picker-today:active:not(:disabled){transform:none;box-shadow:none!important;color:#6f4a0b!important;background:#fbf4e3!important;border-color:#eadfce!important}.nav-item.active,.view-toggle button.active,.appointment-quick-row button.active,.contacts-filter-group button.active,.campaign-audience-mode-grid button.selected,.pagination-buttons button.active,.date-picker-grid button.selected{color:#fff;background:linear-gradient(#c0963d,#a87518);border-color:#b98b33}.nav-item.active:hover:not(:disabled),.view-toggle button.active:hover:not(:disabled),.appointment-quick-row button.active:hover:not(:disabled),.contacts-filter-group button.active:hover:not(:disabled),.campaign-audience-mode-grid button.selected:hover:not(:disabled),.pagination-buttons button.active:hover:not(:disabled),.date-picker-grid button.selected:hover:not(:disabled){color:#6f4a0b!important;background:#fbf4e3!important;border-color:#eadfce!important}.nav-item.active:hover span,.nav-item.active:active span{color:#6f4a0b!important}.nav-item.active span{color:inherit}.nav-item{border:1px solid #0000;border-radius:8px}.status-filter,.appointments-filters label,.contacts-search,.inbox-search-field,.field-shell,.search-field{overflow:hidden}.status-filter{padding:0;position:relative}.floating-select-trigger:after,.date-picker-trigger:after,.avatar-menu:after{color:var(--color-black);content:"";pointer-events:none;border-bottom:2px solid;border-right:2px solid;width:7px;height:7px;position:absolute;top:50%;right:14px;transform:translateY(-64%)rotate(45deg)}.avatar-menu:after{position:static;transform:translateY(-2px)rotate(45deg)}.avatar-menu>svg{display:none}.calendar-status-select{min-width:144px;display:grid}.calendar-status-select .floating-select-trigger{box-shadow:none;color:var(--color-black);background:#fffdf9;border:0;justify-content:center;height:100%;min-height:0;padding:0 42px 0 14px;font-size:13px;font-weight:800}.calendar-status-select .floating-select-trigger span{color:var(--color-black);font-size:inherit;font-weight:inherit}.calendar-status-select .floating-select-trigger:hover:not(:disabled),.calendar-status-select .floating-select-trigger[aria-expanded=true]{color:#6f4a0b!important;background:#fbf4e3!important}.calendar-status-select .floating-select-trigger:hover span,.calendar-status-select .floating-select-trigger[aria-expanded=true] span{color:#6f4a0b}.calendar-status-options{background:#fffdf9;border-color:#eadfce;gap:6px;padding:8px;box-shadow:0 16px 34px #17120d1f}.calendar-status-options button{color:var(--color-black);text-align:center;background:#fff;border-color:#eadfce;border-radius:8px;justify-content:center;align-items:center;min-height:42px;padding:0 12px;font-size:13px;font-weight:800}.calendar-status-options button:hover,.calendar-status-options button[aria-selected=true]{color:#6f4a0b!important;background:#fbf4e3!important;border-color:#eadfce!important}.calendar-status-options strong{color:inherit;font-size:inherit;font-weight:inherit}.status-filter select,.calendar-card select,.appointments-card select,.lux-toolbar select,.contacts-toolbar select{appearance:none;color:var(--color-black);background:#fffdf9;border:1px solid #0000;border-radius:8px;min-height:42px;padding:0 42px 0 14px}.status-filter select:focus,.calendar-card select:focus,.appointments-card select:focus,.lux-toolbar select:focus,.contacts-toolbar select:focus{border-color:#d7c6aa;box-shadow:inset 0 0 0 1px #d7c6aa}:root{--ui-control-bg:#fff;--ui-control-hover-bg:#fbf4e3;--ui-control-border:#eadfce;--ui-control-border-strong:#d7c6aa;--ui-control-text:#17120d;--ui-control-hover-text:#6f4a0b;--ui-primary-bg:linear-gradient(180deg, #c0963d 0%, #a87518 100%);--ui-primary-bg-hover:linear-gradient(180deg, #d0a24f 0%, #98650e 100%);--ui-primary-border:#b98b33;--ui-disabled-bg:#9a9a9a;--ui-disabled-text:#fff;--ui-danger-bg:#fff4f2;--ui-danger-border:#f2c8c0;--ui-danger-text:#9f2b1d;--ui-radius:8px;--ui-control-height:42px;--ui-font-size:13px;--ui-font-weight:800}button,.lux-primary-action,.lux-secondary-action,.lux-row-action,.luxury-primary-button,.secondary-button,.ghost-button,.tertiary-button,.row-action-button,.table-action,.service-toggle,.inbox-filter-button,.availability-expand-button,.availability-slot-grid button,.campaign-variable-row button,.campaign-attachment-row button,.campaign-row-actions button,.contact-sms-status-control button,.contact-profile-tabs button,.compose-recipient-results button,.customer-suggestions button,.appointment-payment-actions button,.appointment-refund-actions button,.status-action-group button,.confirm-actions button,.pagination-buttons button,.contacts-filter-group button,.appointment-quick-row button,.campaign-audience-mode-grid button,.calendar-nav button,.view-toggle button,.date-picker-trigger,.date-picker-header button,.date-picker-grid button,.date-picker-today,.floating-select-trigger,.floating-select-options button{border-radius:var(--ui-radius);font-size:var(--ui-font-size);font-weight:var(--ui-font-weight);letter-spacing:0;min-height:var(--ui-control-height)}.lux-primary-action,.luxury-primary-button,.contacts-actions button:first-child,.campaign-form-actions button:first-child,.modal-card.appointment-detail .save-appointment-button,.modal-card.appointment-create .stack-form>button[type=submit],.inbox-page .reply-composer button,.save-appointment-button{background:var(--ui-primary-bg);border:1px solid var(--ui-primary-border);color:#fff}.lux-primary-action:hover:not(:disabled),.luxury-primary-button:hover:not(:disabled),.contacts-actions button:first-child:hover:not(:disabled),.campaign-form-actions button:first-child:hover:not(:disabled),.modal-card.appointment-detail .save-appointment-button:hover:not(:disabled),.modal-card.appointment-create .stack-form>button[type=submit]:hover:not(:disabled),.inbox-page .reply-composer button:hover:not(:disabled),.save-appointment-button:hover:not(:disabled){background:var(--ui-primary-bg-hover);border-color:var(--ui-primary-border);color:#fff}.lux-secondary-action,.lux-row-action,.secondary-button,.ghost-button,.tertiary-button,.row-action-button,.table-action,.service-toggle,.inbox-filter-button,.campaign-form-actions .tertiary-button,.contacts-actions button:last-child,.campaign-row-actions button,.contact-profile-tabs button,.appointment-payment-actions button,.appointment-refund-actions button,.status-action-group button,.confirm-actions .ghost-button,.pagination-buttons button,.appointment-quick-row button,.contacts-filter-group button,.campaign-audience-mode-grid button,.calendar-nav button,.view-toggle button,.date-picker-trigger,.date-picker-header button,.date-picker-grid button,.date-picker-today,.floating-select-trigger,.floating-select-options button{background:var(--ui-control-bg);border:1px solid var(--ui-control-border);box-shadow:none;color:var(--ui-control-text)}button:hover:not(:disabled),button:active:not(:disabled),.lux-secondary-action:hover:not(:disabled),.lux-row-action:hover:not(:disabled),.secondary-button:hover:not(:disabled),.ghost-button:hover:not(:disabled),.tertiary-button:hover:not(:disabled),.row-action-button:hover:not(:disabled),.table-action:hover:not(:disabled),.service-toggle:hover:not(:disabled),.inbox-filter-button:hover:not(:disabled),.campaign-form-actions .tertiary-button:hover:not(:disabled),.contacts-actions button:last-child:hover:not(:disabled),.campaign-row-actions button:hover:not(:disabled),.contact-profile-tabs button:hover:not(:disabled),.appointment-payment-actions button:hover:not(:disabled),.appointment-refund-actions button:hover:not(:disabled),.status-action-group button:hover:not(:disabled),.confirm-actions .ghost-button:hover:not(:disabled),.pagination-buttons button:hover:not(:disabled),.appointment-quick-row button:hover:not(:disabled),.contacts-filter-group button:hover:not(:disabled),.campaign-audience-mode-grid button:hover:not(:disabled),.calendar-nav button:hover:not(:disabled),.view-toggle button:hover:not(:disabled),.date-picker-trigger:hover:not(:disabled),.date-picker-header button:hover:not(:disabled),.date-picker-grid button:hover:not(:disabled),.date-picker-today:hover:not(:disabled),.floating-select-trigger:hover:not(:disabled),.floating-select-options button:hover:not(:disabled){transform:none;background:var(--ui-control-hover-bg)!important;border-color:var(--ui-control-border)!important;box-shadow:none!important;color:var(--ui-control-hover-text)!important}.view-toggle button.active,.appointment-quick-row button.active,.contacts-filter-group button.active,.campaign-audience-mode-grid button.selected,.contact-profile-tabs button.active,.contact-sms-status-control button.active,.pagination-buttons button.active,.date-picker-grid button.selected{background:var(--ui-primary-bg);border-color:var(--ui-primary-border);color:#fff}.view-toggle button.active:hover:not(:disabled),.appointment-quick-row button.active:hover:not(:disabled),.contacts-filter-group button.active:hover:not(:disabled),.campaign-audience-mode-grid button.selected:hover:not(:disabled),.contact-profile-tabs button.active:hover:not(:disabled),.contact-sms-status-control button.active:hover:not(:disabled),.pagination-buttons button.active:hover:not(:disabled),.date-picker-grid button.selected:hover:not(:disabled){background:var(--ui-control-hover-bg)!important;border-color:var(--ui-control-border)!important;color:var(--ui-control-hover-text)!important}button:disabled,.floating-select-trigger:disabled,.inbox-page .reply-composer button:disabled,.appointment-payment-actions button:disabled,.appointment-refund-actions button:disabled,.modal-card.appointment-detail .save-appointment-button:disabled,.modal-card.appointment-create .stack-form>button[type=submit]:disabled{background:var(--ui-disabled-bg);border-color:var(--ui-disabled-bg);box-shadow:none;color:var(--ui-disabled-text);cursor:not-allowed;opacity:1}.danger-button,.status-action-group .danger-button,.confirm-actions .danger-button{background:var(--ui-danger-bg);border:1px solid var(--ui-danger-border);color:var(--ui-danger-text)}.danger-button:hover:not(:disabled),.status-action-group .danger-button:hover:not(:disabled),.confirm-actions .danger-button:hover:not(:disabled){border-color:var(--ui-danger-border)!important;color:var(--ui-danger-text)!important;background:#ffe7e2!important}input,select,textarea,.floating-select-trigger{border-color:var(--ui-control-border);border-radius:var(--ui-radius);color:var(--ui-control-text)}input:focus,select:focus,textarea:focus,.floating-select-trigger:focus{border-color:var(--ui-control-border-strong);box-shadow:var(--focus-ring);outline:none}.floating-select-options{border-color:var(--ui-control-border);border-radius:var(--ui-radius);background:#fffdf9}.floating-select-options button[aria-selected=true]{background:var(--ui-control-hover-bg);border-color:var(--ui-control-border);color:var(--ui-control-hover-text)}.floating-select-options strong,.floating-select-options span{color:inherit;font-size:inherit;font-weight:inherit}.calendar-status-select .floating-select-trigger,.calendar-status-options button{font-size:var(--ui-font-size);font-weight:var(--ui-font-weight);text-align:center;justify-content:center}.nav-item{border-radius:var(--ui-radius);color:var(--ui-control-text);background:0 0;border:1px solid #0000}.nav-item.active{color:var(--ui-control-text);background:0 0;border-color:#0000}.nav-item:hover:not(:disabled),.nav-item:active:not(:disabled){background:var(--ui-control-hover-bg)!important;border-color:var(--ui-control-border)!important;color:var(--ui-control-hover-text)!important}.nav-item.active:after{background:linear-gradient(90deg,transparent,var(--color-gold-500),transparent);content:"";height:2px;display:block;position:absolute;bottom:2px;left:8px;right:8px}.calendar-event.locked,.calendar-event.locked:hover,.month-event.appointment-status-cancelled:hover,.month-event.appointment-status-completed:hover,.month-event.appointment-status-no_show:hover,.calendar-event.appointment-status-cancelled:hover,.calendar-event.appointment-status-completed:hover,.calendar-event.appointment-status-no_show:hover{background:var(--staff-bg);opacity:.9}@media(max-width:480px){.metric-grid,.calendar-kpi-strip,.lux-kpi-grid,.contacts-kpi-strip,.campaigns-kpi-strip,.inbox-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.metric-card,.calendar-kpi-strip article,.lux-kpi-card,.dsn-kpi-card,.inbox-kpi-card{box-sizing:border-box;border-radius:10px;gap:4px;height:68px;min-height:68px;padding:10px;overflow:hidden}.calendar-kpi-strip article div{gap:2px}.dsn-kpi-card+.dsn-kpi-card{border-left:0}.metric-card:before,.lux-kpi-icon,.dsn-kpi-icon,.inbox-kpi-icon,.calendar-kpi-strip article svg{display:none}.metric-card span,.calendar-kpi-strip article span,.calendar-kpi-strip article small,.lux-kpi-card span,.lux-kpi-card p,.dsn-kpi-card span,.dsn-kpi-card p,.inbox-kpi-card span,.inbox-kpi-card small{margin:0;font-size:9px;line-height:1.05}.metric-card strong,.calendar-kpi-strip article strong,.lux-kpi-card strong,.dsn-kpi-card strong,.inbox-kpi-card strong{margin:0;font-family:inherit;font-size:18px;font-weight:800;line-height:1.05}.calendar-card .calendar-filter-bar{gap:5px}.calendar-card .view-toggle,.calendar-card .calendar-nav{height:34px}.calendar-card .calendar-nav button,.calendar-card .view-toggle button,.calendar-card .date-picker-trigger,.calendar-status-select .floating-select-trigger,.calendar-status-options button{min-height:34px;padding-inline:5px;font-size:9px}.calendar-card .month-picker,.calendar-card .status-filter,.calendar-card .date-picker-control,.calendar-status-select{height:36px}.calendar-card .date-picker-trigger,.calendar-status-select .floating-select-trigger{padding-left:8px;padding-right:24px}}@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-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}
