/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--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;--spacing:.25rem;--radius-sm:.25rem;--radius-lg:.5rem;--radius-xl:.75rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.isolate{isolation:isolate}.block{display:block}.hidden{display:none}.table{display:table}.table-row{display:table-row}.resize{resize:both}.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,)}}:root{--ink:#24201d;--ink-soft:#4c453f;--muted:#7f7770;--faint:#9d938b;--cream:#f5f2ed;--paper:#fffdf9;--paper-sunk:#faf6f1;--line:#e8e0d7;--line-strong:#d9cec3;--coral:#d97757;--coral-dark:#b8563c;--coral-wash:#f8e4dd;--sage:#789371;--sage-wash:#e5eee2;--gold-wash:#f2e9d9;--blue-wash:#e5ecf0;--danger:#a34d43;--danger-wash:#fff2ef;--espresso:#29231f;--sidebar:#2c2825;--font-sans:"Avenir Next", "Helvetica Neue", Arial, "PingFang SC", "Microsoft YaHei", sans-serif;--font-display:Georgia, "Times New Roman", serif;--radius-sm:8px;--radius:12px;--radius-lg:18px;--radius-xl:24px;--gap-xs:6px;--gap-sm:10px;--gap:16px;--gap-lg:24px;--sidebar-width:248px;--topbar-height:72px;--shadow-sm:0 2px 10px #30251b0d;--shadow:0 10px 30px #30251b12;--shadow-lg:0 24px 70px #29201829;--z-nav:20;--z-topbar:15;--z-overlay:60;--z-search:80;--z-toast:100}*{box-sizing:border-box}html{background:var(--cream);scroll-behavior:smooth}body{color:var(--ink);background:var(--cream);font-family:var(--font-sans);margin:0}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}h1,h2,h3,h4{font-family:var(--font-display);margin:0;font-weight:400}.brand{letter-spacing:-.3px;align-items:center;gap:12px;font-size:18px;display:flex}.brand b{color:#786f67;font-weight:500}.brand-mark{background:var(--espresso);color:#fff;width:38px;height:38px;font-family:var(--font-display);border-radius:13px;place-items:center;font-size:23px;font-style:italic;display:grid;box-shadow:0 8px 22px #29231f2e}.eyebrow{letter-spacing:2px;color:var(--coral);font-size:10px;font-weight:800}.button{border-radius:var(--radius);white-space:nowrap;border:0;justify-content:center;align-items:center;gap:8px;padding:12px 18px;font-size:13px;font-weight:700;transition:background .18s,transform .18s;display:inline-flex}.button:hover{transform:translateY(-1px)}.button:disabled{opacity:.5;cursor:not-allowed;transform:none}.button-primary{background:var(--coral);color:#fff;box-shadow:0 8px 20px #d9775738}.button-primary:hover:not(:disabled){background:var(--coral-dark)}.button-dark{background:var(--espresso);color:#fff}.button-ghost{border:1px solid var(--line);background:0 0}.button-outline{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-sm)}.button-small{border-radius:var(--radius-sm);padding:9px 14px;font-size:12px}.danger-action{color:var(--danger);background:var(--danger-wash);border-color:#ead0ca}.danger-action:hover{background:#f9e3de}.chip{border:1px solid var(--line);background:var(--paper);color:var(--ink-soft);white-space:nowrap;border-radius:999px;padding:6px 12px;font-size:11px;font-weight:700}.chip:hover:not(:disabled){border-color:var(--line-strong)}.chip:disabled{opacity:.45;cursor:default}.icon-button{border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;width:38px;height:38px;font-size:18px;position:relative}label{color:var(--ink-soft);margin-bottom:12px;font-size:11px;font-weight:700;display:block}input,select,textarea{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper-sunk);outline:0;width:100%;margin-top:6px;padding:10px 11px;font-size:13px;display:block}input:focus,select:focus,textarea:focus{border-color:#d69a84;box-shadow:0 0 0 3px #f8eae4}input[type=color]{height:40px;padding:4px}textarea{resize:vertical;min-height:78px}.form-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.field-hint{color:var(--muted);margin-top:6px;font-size:10px;font-weight:500;line-height:1.5;display:block}.hint{color:var(--muted);margin:0;font-size:12px;line-height:1.7}.status-pill{white-space:nowrap;border-radius:999px;padding:4px 10px;font-size:11px;font-style:normal;font-weight:700;display:inline-flex}.status-pill.scheduled{color:#6e6761;background:#ebe9e6}.status-pill.arrived{background:var(--coral-wash);color:#b55e3f}.status-pill.in_service{background:var(--sage-wash);color:#52714f}.status-pill.completed{color:#4c6d60;background:#e3ebe7}.status-pill.cancelled,.status-pill.no_show{color:#996060;background:#f0e7e7}.presence{border-radius:999px;padding:4px 9px;font-size:10px;font-weight:700}.presence.available{background:var(--sage-wash);color:#52714f}.presence.busy{color:#a9573c;background:#f6e4dd}.presence.off{color:#777069;background:#ece9e6}.empty-state{text-align:center;color:var(--muted);padding:60px 20px}.empty-state>span{border-radius:var(--radius-lg);width:56px;height:56px;color:var(--coral);background:#eee7df;place-items:center;margin:auto;font-size:24px;display:grid}.empty-state h3{color:var(--ink);margin:16px 0 8px;font-size:22px}.empty-state p{margin:0;font-size:13px}@keyframes fade{0%{opacity:0}}@keyframes slide-in{0%{transform:translate(40px)}}@keyframes pop{0%{opacity:0;transform:scale(.97)}}.app-shell{background:var(--cream);min-height:100vh}.demo-banner{z-index:var(--z-toast);top:0;left:var(--sidebar-width);background:var(--espresso);color:#fff;justify-content:center;align-items:center;gap:24px;height:32px;font-size:12px;display:flex;position:fixed;right:0}.demo-banner a{color:#f3b09b;font-weight:700}.demo-banner~.workspace{padding-top:32px}.demo-banner~.workspace .topbar{top:32px}.sidebar{z-index:var(--z-nav);width:var(--sidebar-width);background:var(--sidebar);color:#fff;flex-direction:column;padding:26px 16px;display:flex;position:fixed;inset:0 auto 0 0}.sidebar-top{align-items:center;gap:8px;padding:0 4px 20px;display:flex}.app-logo{align-items:center;gap:12px;min-width:0;padding:0 4px;display:flex}.rail-toggle{border-radius:var(--radius-sm);color:#a79d95;background:#38322e;border:1px solid #48403b;flex-shrink:0;width:26px;height:26px;margin-left:auto;font-size:12px;line-height:1}.rail-toggle:hover{color:#fff}.app-logo .brand-mark{background:var(--coral)}.app-logo>div{font-family:var(--font-display);font-size:19px}.app-logo>div span{letter-spacing:1.8px;color:#9f958e;text-transform:uppercase;margin-top:2px;font-size:10px;display:block}.store-switch{border-radius:var(--radius);background:#38322e;border:1px solid #48403b;margin:0 4px 20px;padding:10px 12px}.store-switch b{white-space:nowrap;text-overflow:ellipsis;margin-top:3px;font-size:13px;display:block;overflow:hidden}.nav-flow{flex-direction:column;gap:4px;display:flex}.nav-flow button{border-radius:var(--radius);color:#aaa19a;text-align:left;background:0 0;border:0;align-items:center;gap:11px;width:100%;min-height:52px;padding:0 12px;display:flex}.nav-flow button>i{display:none}.nav-flow button>span{flex:1;min-width:0}.nav-flow button b{font-size:13px;font-weight:700;display:block}.nav-flow button small{color:#857b74;white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:10px;display:block;overflow:hidden}.nav-flow button em{color:#dfb8a9;background:#554942;border-radius:999px;padding:3px 7px;font-size:10px;font-style:normal;font-weight:700}.nav-flow button:hover,.nav-flow button.active{color:#fff;background:#403833}.nav-flow button.active{box-shadow:inset 3px 0 var(--coral)}.nav-flow button.active small{color:#c6b6ad}.sidebar-foot{border-top:1px solid #403a36;align-items:center;gap:10px;margin-top:auto;padding:20px 6px 0;display:flex}.user-avatar{border-radius:var(--radius);color:#633d31;background:#e7b39f;place-items:center;width:36px;height:36px;font-weight:800;display:grid}.sidebar-foot>div:nth-child(2){flex:1;min-width:0}.sidebar-foot b{white-space:nowrap;text-overflow:ellipsis;font-size:12px;display:block;overflow:hidden}.sidebar-foot span{color:#9e958f;margin-top:2px;font-size:10px;display:block}.sidebar-foot>a{color:#8f847c}.workspace{margin-left:var(--sidebar-width);min-height:100vh;padding-bottom:60px}.topbar{z-index:var(--z-topbar);height:var(--topbar-height);align-items:center;gap:var(--gap);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);background:#fffdf9e6;padding:0 clamp(16px,3vw,34px);display:flex;position:sticky;top:0}.topbar-date span{font-size:13px;font-weight:700;display:block}.topbar-date small{color:var(--faint);margin-top:3px;font-size:11px;display:block}.topbar-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.mobile-brand{display:none}.content-page,.today-workspace{max-width:1460px;padding:var(--gap-lg) clamp(16px, 3vw, 34px) 0;margin:0 auto}.today-workspace{gap:var(--gap);flex-direction:column;display:flex}.section-title{justify-content:space-between;align-items:flex-end;gap:var(--gap);margin-bottom:var(--gap-lg);flex-wrap:wrap;display:flex}.section-title h1{letter-spacing:-1.2px;margin:8px 0 6px;font-size:34px}.section-title p{max-width:60ch;color:var(--muted);margin:0;font-size:13px;line-height:1.6}.section-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.section-actions input{background:#fff;width:auto;margin:0}.subheading{margin:var(--gap-lg) 0 12px;font-size:19px}.is-railed{--sidebar-width:64px}.is-railed .app-logo>div,.is-railed .store-switch,.is-railed .nav-flow button>span,.is-railed .nav-flow button>em,.is-railed .sidebar-foot>div:nth-child(2),.is-railed .sidebar-foot>a{display:none}.is-railed .sidebar{align-items:center;padding:26px 8px}.is-railed .sidebar-top{flex-direction:column;gap:10px;padding:0 0 16px}.is-railed .app-logo{padding:0}.is-railed .rail-toggle{margin-left:0}.is-railed .nav-flow{width:100%}.is-railed .nav-flow button{justify-content:center;gap:0;min-height:46px;padding:0}.is-railed .nav-flow button>i{letter-spacing:1px;color:#b6aca4;font-size:13px;font-style:normal;font-weight:700;display:block}.is-railed .nav-flow button.active>i{color:#fff}.is-railed .sidebar-foot{justify-content:center;padding:16px 0 0}.mobile-nav{display:none}.toast{z-index:var(--z-toast);border-radius:var(--radius);color:#fff;box-shadow:var(--shadow);background:#2d2824;align-items:center;gap:9px;padding:12px 18px;font-size:12px;font-weight:700;animation:.18s pop;display:flex;position:fixed;bottom:26px;left:50%;transform:translate(-50%)}.toast span{color:#9dcc91}.login-landing{background:linear-gradient(145deg,#f7f3ed 0%,#efe7de 100%);min-height:100vh}.login-nav{align-items:center;max-width:1180px;height:88px;margin:0 auto;padding:0 32px;display:flex}.login-nav .brand-mark{background:var(--coral)}.login-hero{place-items:center;min-height:calc(100vh - 88px);padding:42px 24px 80px;display:grid}.login-card,.access-card{border:1px solid var(--line);width:min(560px,100%);box-shadow:var(--shadow-lg);text-align:center;background:#fffdf9e6;border-radius:26px;padding:clamp(32px,6vw,62px)}.login-card h1,.access-card h1{letter-spacing:-2px;margin:18px 0;font-size:clamp(34px,5vw,54px);line-height:1.05}.login-card h1 em{color:var(--coral);font-style:normal}.login-card>p,.access-card p{max-width:40ch;color:var(--muted);margin:0 auto;font-size:14px;line-height:1.8}.login-button{width:100%;min-height:52px;margin-top:28px}.login-note{color:var(--muted);flex-wrap:wrap;justify-content:center;gap:12px 22px;margin-top:20px;font-size:12px;display:flex}.login-note span:first-letter{color:var(--sage)}.access-page{background:linear-gradient(145deg,#f7f2eb,#eadfd2);place-items:center;min-height:100vh;padding:20px;display:grid}.access-card .brand-mark{margin:auto}.access-card .button{margin-top:24px}@media (width<=1000px){.sidebar{display:none}.workspace{margin-left:0;padding-bottom:88px}.demo-banner{left:0}.topbar{height:62px;padding:0 14px}.topbar-date{display:none}.mobile-brand{align-items:center;gap:8px;display:flex}.mobile-brand .brand-mark{border-radius:10px;width:30px;height:30px;font-size:17px}.section-title h1{font-size:27px}.mobile-nav{z-index:var(--z-nav);height:66px;padding-bottom:env(safe-area-inset-bottom);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border-top:1px solid var(--line);background:#fffdf9f0;justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0}.mobile-nav button{color:#8c8179;background:0 0;border:0;flex:1;position:relative}.mobile-nav button i{display:none}.mobile-nav button span{font-size:11px;font-weight:700;display:block}.mobile-nav button u{background:var(--coral);color:#fff;border-radius:999px;min-width:16px;padding:1px 4px;font-size:9px;font-weight:700;text-decoration:none;position:absolute;top:6px;right:22%}.mobile-nav button.active{color:var(--coral)}.toast{bottom:80px}}@media print{.sidebar,.topbar,.mobile-nav,.demo-banner,.pending-button,.section-actions{display:none!important}.workspace{margin:0}.content-page{padding:20px}}.pending-button{border:1px solid var(--line);border-radius:var(--radius-sm);height:38px;color:var(--ink-soft);white-space:nowrap;background:#fff;align-items:center;gap:7px;padding:0 12px;font-size:13px;font-weight:700;display:inline-flex}.pending-button em{min-width:20px;color:var(--ink-soft);text-align:center;background:#efe9e2;border-radius:999px;padding:2px 6px;font-size:11px;font-style:normal}.pending-button.has-items{color:#a45c38;background:#fff4e9;border-color:#e7c8ae}.pending-button.has-items em{background:var(--coral);color:#fff}.store-switch-wrap{margin:0 4px 20px;position:relative}.store-switch{border-radius:var(--radius);background:#38322e;border:1px solid #48403b;margin:0 4px 20px;padding:10px 12px;position:relative}.store-switch-wrap .store-switch{text-align:left;width:100%;margin:0}.store-switch small{color:#9e948c;letter-spacing:1px;font-size:10px;display:block}.store-switch b{color:#fff;white-space:nowrap;text-overflow:ellipsis;margin-top:3px;font-size:13px;display:block;overflow:hidden}.store-caret,.store-add{color:#9e948c;font-size:12px;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.store-add{background:#423a35;border:1px solid #48403b;border-radius:7px;width:22px;height:22px;line-height:1}.store-add:hover{color:#fff}.store-menu{z-index:var(--z-nav);border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);box-shadow:var(--shadow-lg);padding:6px;animation:.14s pop;position:absolute;top:calc(100% + 6px);left:0;right:0}.store-menu>button{border-radius:var(--radius-sm);text-align:left;background:0 0;border:0;align-items:center;gap:8px;width:100%;padding:8px 10px;display:flex}.store-menu>button:hover:not(:disabled){background:var(--paper-sunk)}.store-menu>button span{flex:1;min-width:0}.store-menu b{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:13px;display:block;overflow:hidden}.store-menu small{color:var(--muted);letter-spacing:0;margin-top:2px;font-size:11px;display:block}.store-menu>button.current b{color:var(--coral)}.store-menu i{color:var(--coral);font-style:normal}.store-create-open{color:var(--ink-soft);margin-top:4px;font-size:12px;font-weight:700;border-top:1px solid var(--line)!important;border-radius:0!important;padding-top:10px!important}.store-create{border-top:1px solid var(--line);gap:6px;margin-top:6px;padding-top:8px;display:flex}.store-create input{background:#fff;margin:0;font-size:12px}.is-railed .store-switch-wrap{display:none}.date-navigator{align-items:center;gap:var(--gap-sm);min-width:0;display:flex;position:relative}.date-current{min-width:0}.date-current b{white-space:nowrap;font-size:14px;font-weight:700;display:block}.date-current small{color:var(--muted);white-space:nowrap;margin-top:2px;font-size:11px;display:block}.date-navigator-tools{flex-shrink:0;align-items:center;gap:6px;display:flex}.month-popover{z-index:var(--z-nav);border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);width:268px;box-shadow:var(--shadow);padding:12px;animation:.14s pop;position:absolute;top:calc(100% + 10px);left:0}.month-popover-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.month-popover-head>button{border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;width:26px;height:26px}.month-popover-head>b{font-size:13px;font-weight:700}.month-weekdays{color:var(--muted);text-align:center;grid-template-columns:repeat(7,1fr);gap:2px;font-size:10px;display:grid}.month-grid{grid-template-columns:repeat(7,1fr);gap:2px;margin-top:4px;display:grid}.month-grid button{border-radius:var(--radius-sm);background:0 0;border:1px solid #0000;height:30px;font-size:12px;position:relative}.month-grid button:hover{background:var(--paper-sunk)}.month-grid button.outside{opacity:.3}.month-grid button.today{border-color:var(--coral)}.month-grid button.selected{background:var(--espresso);color:#fff}.month-grid button em{color:var(--coral);font-size:8px;font-style:normal;position:absolute;bottom:2px;right:3px}.month-grid button.selected em{color:#f0b8a3}.date-jump{border-top:1px solid var(--line);color:var(--muted);align-items:center;gap:8px;margin:10px 0 0;padding-top:10px;font-size:11px;display:flex}.date-jump input{background:#fff;flex:1;width:auto;margin:0;padding:5px 7px;font-size:12px}.ops-row{gap:var(--gap-sm);grid-template-columns:minmax(190px,.75fr) minmax(340px,1.7fr) minmax(250px,1.05fr);align-items:stretch;display:grid}.ops-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);min-width:0;box-shadow:var(--shadow-sm);flex-direction:column;padding:12px 14px 13px;display:flex}.ops-card-head{border-bottom:1px solid var(--line);align-items:baseline;gap:8px;margin-bottom:9px;padding-bottom:9px;display:flex}.ops-card-head>b{white-space:nowrap;font-size:13px}.ops-card-head>small{min-width:0;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.ops-card-head>small b{color:var(--ink)}.ops-badge{color:var(--ink-soft);background:#efe9e2;border-radius:999px;padding:2px 8px;font-size:11px;font-style:normal;font-weight:700}.ops-card-head .chip{margin-left:auto;padding:4px 10px;font-size:11px}.ops-foot{color:var(--faint);margin-top:8px;font-size:10px}.ops-count{font-family:var(--font-display);text-align:right;white-space:nowrap;margin-left:auto;font-size:19px;font-style:normal}.ops-count span{font-family:var(--font-sans);color:var(--muted);font-size:10px;font-weight:700;display:block}.ops-stats{flex:1;grid-template-columns:1fr;align-content:space-between;gap:1px;margin:0;display:grid}.ops-stats>div{justify-content:space-between;align-items:baseline;gap:8px;padding:4px 0;display:flex}.ops-stats dt{color:var(--muted);white-space:nowrap;font-size:11px}.ops-stats dd{font-variant-numeric:tabular-nums;margin:0;font-size:13px;font-weight:700}.ops-stats .tone-warn dd{color:#a45c38}.ops-stats .tone-ok dd{color:#52714f}.duty-list,.unassigned-list{flex:1;min-height:0;max-height:248px;margin:0;padding:0;list-style:none;overflow-y:auto}.duty-list>li{grid-template-columns:4px minmax(0,1fr) auto auto auto;align-items:center;gap:8px;padding:3px 2px;display:grid}.duty-list>li+li{border-top:1px solid var(--line)}.duty-list>li.off{opacity:.55}.duty-list>li.is-next .duty-name b{color:var(--coral)}.duty-dot{border-radius:3px;width:4px;height:26px}.duty-name{align-items:baseline;gap:6px;min-width:0;display:flex}.duty-name b{white-space:nowrap;font-size:13px}.duty-name small{min-width:0;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.duty-dot{height:22px}.duty-order{color:var(--faint);font-variant-numeric:tabular-nums;font-size:11px;font-style:normal;font-weight:700}.duty-actions{gap:4px;display:flex}.duty-actions button{border:1px solid var(--line);white-space:nowrap;background:#fff;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:700}.duty-actions button:disabled{opacity:.4;cursor:default}.unassigned-card.warn{background:#fffaf4;border-color:#ecd2b9}.unassigned-card.warn .ops-badge{background:var(--coral-wash);color:#a45c38}.unassigned-card.clear .ops-badge{background:var(--sage-wash);color:#52714f}.unassigned-card .hint{flex:1}.unassigned-list>li+li{border-top:1px solid var(--line)}.unassigned-list button{text-align:left;cursor:grab;background:0 0;border:0;grid-template-columns:4px minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;padding:6px 2px;display:grid}.unassigned-list button:active{cursor:grabbing}.unassigned-list i{border-radius:3px;width:4px;height:26px}.unassigned-main{min-width:0}.unassigned-main b,.unassigned-main small{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.unassigned-main b{font-size:12px}.unassigned-main small{color:var(--muted);font-size:10px}.unassigned-list em{color:#a45c38;white-space:nowrap;font-size:10px;font-style:normal;font-weight:700}.board-panel{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);box-shadow:var(--shadow-sm);overflow:hidden}.board-head{justify-content:space-between;align-items:center;gap:var(--gap);border-bottom:1px solid var(--line);flex-wrap:wrap;padding:16px;display:flex}.board-title h2{font-size:19px}.board-title p{color:var(--muted);margin:4px 0 0;font-size:12px}.board-controls{align-items:center;gap:8px;display:flex}.view-switch{border-radius:var(--radius);background:#eee8e2;gap:2px;padding:3px;display:flex}.view-switch button{border-radius:var(--radius-sm);color:var(--ink-soft);background:0 0;border:0;padding:7px 12px;font-size:12px;font-weight:700}.view-switch button.active{box-shadow:var(--shadow-sm);background:#fff}.board-filters{align-items:center;gap:var(--gap-sm);border-bottom:1px solid var(--line);background:var(--paper-sunk);flex-wrap:wrap;padding:12px 16px;display:flex}.board-search{border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;align-items:center;gap:8px;margin:0;padding:0 12px;display:flex}.board-search input{background:0 0;border:0;width:min(300px,46vw);margin:0;font-size:13px}.board-search input:focus{box-shadow:none}.status-filters{flex-wrap:wrap;gap:5px;display:flex}.status-filters button{border:1px solid var(--line);color:var(--ink-soft);background:#fff;border-radius:999px;padding:6px 11px;font-size:12px}.status-filters button em{color:var(--faint);font-style:normal;font-weight:700}.status-filters button.active{background:var(--espresso);border-color:var(--espresso);color:#fff}.status-filters button.active em{color:#c8beb6}.board-empty{color:var(--muted);text-align:center;padding:26px;font-size:13px}.resource-wrap{overflow:auto hidden}.resource-board{min-width:640px;display:grid;position:relative}.resource-time-head,.resource-head{border-bottom:1px solid var(--line);border-right:1px solid var(--line);background:#f6f1eb;height:48px;padding:10px;font-size:12px;font-weight:700}.resource-time-head{z-index:3;color:var(--muted);background:#f6f1eb;place-items:center;display:grid;position:sticky;left:0}.resource-head{align-items:center;gap:7px;display:flex}.resource-head>i{border-radius:3px;flex-shrink:0;width:8px;height:8px}.resource-head>b{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:13px;overflow:hidden}.resource-head.disabled{opacity:.55}.resource-badge{white-space:nowrap;background:#ece7e1;border-radius:999px;margin-left:auto;padding:3px 8px;font-size:10px;font-style:normal}.resource-badge.available{background:var(--sage-wash);color:#52714f}.resource-badge.busy{color:#a9573c;background:#f6e4dd}.resource-badge.maintenance{color:#857a72;background:#efe9e4}.time-axis,.resource-lane{height:var(--lane-height);border-right:1px solid var(--line);position:relative}.time-axis{z-index:3;background:var(--paper);position:sticky;left:0}.time-axis span{color:var(--faint);font-size:11px;position:absolute;right:10px;transform:translateY(-50%)}.resource-lane>i{border-top:1px solid #efe8e0;position:absolute;left:0;right:0}.resource-lane.disabled{background:repeating-linear-gradient(45deg,#f7f3ef,#f7f3ef 6px,#f2ece6 6px 12px)}.resource-lane.drop-target{box-shadow:inset 0 0 0 2px var(--sage);background:#f4f8f2}.lane-quick-add{z-index:1;border:1px solid var(--line);width:26px;height:26px;color:var(--coral);opacity:0;background:#ffffffe6;border-radius:50%;font-size:14px;transition:opacity .15s;position:absolute;bottom:6px;right:6px}.resource-lane:hover .lane-quick-add{opacity:1}.lane-appt{z-index:2;text-align:left;box-shadow:var(--shadow-sm);background:#fff;border:0;border-left:4px solid;border-radius:7px;flex-direction:column;justify-content:center;gap:1px;padding:4px 7px;display:flex;position:absolute;left:4px;right:4px;overflow:hidden}.lane-appt b,.lane-appt span,.lane-appt small{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.lane-appt b{font-size:12px;font-weight:600}.lane-appt.density-compact{justify-content:center;padding:2px 7px}.lane-appt.density-mid,.lane-appt.density-full{justify-content:flex-start}.lane-appt b strong{color:var(--coral)}.lane-appt span{color:var(--muted);font-size:11px}.lane-appt small{color:var(--faint);font-size:10px}.lane-appt.arrived{background:#fff0e5}.lane-appt.in_service{background:var(--sage-wash)}.lane-appt.completed{opacity:.6}.lane-appt.conflict{box-shadow:0 0 0 2px #c94f45}.lane-appt em{color:#fff;background:#c94f45;border-radius:5px;padding:1px 5px;font-size:9px;font-style:normal;position:absolute;top:3px;right:3px}.now-line{z-index:4;pointer-events:none;border-top:1px solid #c94f45;position:absolute;left:0;right:0}.now-line span{color:#fff;background:#c94f45;border-radius:999px;padding:1px 6px;font-size:10px;position:absolute;top:-9px;left:4px}@media (width<=1180px){.ops-row{grid-template-columns:1fr 1fr}.ops-row .duty-card{order:-1;grid-column:1/-1}}@media (width<=700px){.ops-row{grid-template-columns:1fr}.ops-row .duty-card{order:0}.duty-list,.unassigned-list{max-height:200px}.date-current b{font-size:15px}.month-popover{width:auto;left:0;right:0}.board-head,.board-filters{padding:12px}.board-controls{justify-content:space-between;width:100%}.board-search input{width:100%}.board-search{flex:1}.lane-quick-add{opacity:1}}.lane-appt b u{color:#7a4f86;vertical-align:1px;background:#efe3f2;border-radius:999px;margin-left:6px;padding:0 5px;font-size:9px;font-weight:700;text-decoration:none;display:inline-block}.lane-appt.in-party{border-left-style:double;border-left-width:6px}.lane-appt.party-active{box-shadow:0 0 0 2px #9a6fa8}.lane-appt.is-active{box-shadow:0 0 0 2px var(--espresso)}.lane-appt.party-active.is-active{box-shadow:0 0 0 2px var(--espresso), 0 0 0 5px #e6d5ec}.lane-appt.overlapped{border-top:1px dashed #c9a24f;border-bottom:1px dashed #c9a24f}.lane-appt.overlapped em{background:#c9a24f}@media (width<=700px){.lane-appt b u{display:none}}.resource-badge.busy{font-variant-numeric:tabular-nums}.resource-badge.overrun{color:#a3342a;background:#f7dcd6;font-weight:700}.board-scroller{position:relative}.board-page{z-index:4;border:1px solid var(--line);border-radius:var(--radius);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);width:34px;height:60px;box-shadow:var(--shadow);color:var(--ink-soft);background:#fffdf9f0;font-size:20px;line-height:1;position:absolute;top:50%;transform:translateY(-50%)}.board-page:hover{border-color:var(--line-strong);background:#fff}.board-page.left{left:78px}.board-page.right{right:8px}.resource-wrap:focus-visible{outline:2px solid var(--coral);outline-offset:-2px}.collapsible{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);box-shadow:var(--shadow-sm);overflow:hidden}.collapsible+.collapsible{margin-top:var(--gap-sm)}.collapsible-head{align-items:center;gap:var(--gap-sm);padding:0 14px 0 0;display:flex}.collapsible-trigger{text-align:left;background:0 0;border:0;flex:1;align-items:center;gap:10px;min-width:0;padding:14px;display:flex}.collapsible-caret{color:var(--faint);font-size:16px;transition:transform .18s}.collapsible.is-open .collapsible-caret{transform:rotate(90deg)}.collapsible-trigger b{white-space:nowrap;font-size:14px}.collapsible-badge{color:var(--ink-soft);background:#efe9e2;border-radius:999px;padding:3px 9px;font-size:11px;font-style:normal;font-weight:700}.collapsible-summary{min-width:0;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.collapsible-summary b{font-size:inherit;color:var(--ink)}.collapsible-actions{flex-shrink:0;gap:6px;display:flex}.collapsible-body{border-top:1px solid var(--line);padding:14px 14px 16px}.collapsible.tone-warning{background:#fffaf4;border-color:#ecd2b9}.collapsible.tone-warning .collapsible-badge{background:var(--coral-wash);color:#a45c38}.collapsible.tone-ok .collapsible-badge{background:var(--sage-wash);color:#52714f}.metric-grid{gap:var(--gap-sm);margin-top:var(--gap-sm);grid-template-columns:repeat(4,1fr);display:grid}.metric-grid article{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);align-items:center;gap:12px;padding:14px;display:flex}.metric-icon{border-radius:var(--radius);place-items:center;width:40px;height:40px;font-size:17px;display:grid}.metric-icon.coral{background:var(--coral-wash);color:#b65b40}.metric-icon.sage{background:var(--sage-wash);color:#567050}.metric-icon.blue{background:var(--blue-wash);color:#5b7587}.metric-icon.gold{background:var(--gold-wash);color:#8c6d3f}.metric-grid article span,.metric-grid article small{display:block}.metric-grid article span{color:var(--muted);font-size:11px;font-weight:700}.metric-grid article b{font-family:var(--font-display);margin:2px 0;font-size:23px;display:block}.metric-grid article small{color:var(--faint);font-size:10px}.closing-summary{gap:var(--gap-sm);margin-bottom:var(--gap);grid-template-columns:repeat(6,1fr);display:grid}.closing-summary article{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);padding:14px}.closing-summary span,.closing-summary small{color:var(--muted);font-size:11px;display:block}.closing-summary b{font-family:var(--font-display);margin:6px 0 4px;font-size:21px;display:block}.closing-summary article.warning{background:#fffaf4;border-color:#ecd2b9}.closing-summary article.warning b{color:#a45c38}.closing-summary article.ok b{color:#52714f}.closing-warning{margin-top:var(--gap-sm);border-radius:var(--radius);color:#a45c38;background:#fff4e9;border:1px solid #ecd2b9;flex-wrap:wrap;align-items:center;gap:12px;padding:12px 14px;font-size:12px;display:flex}.unassigned-note{border-radius:var(--radius-sm);color:#a45c38;background:#fff1e4;padding:4px 8px;font-size:11px;font-weight:700;display:inline-block}.daily-empty{border:1px dashed var(--line);border-radius:var(--radius);color:var(--muted);text-align:center;background:#fff;padding:24px;font-size:12px}.report-filter{align-items:flex-end;gap:var(--gap-sm);margin-bottom:var(--gap);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);flex-wrap:wrap;padding:14px;display:flex}.report-filter label{color:var(--muted);margin:0;font-size:11px}.report-filter input,.report-filter select{background:#fff}.report-error,.loading-card{margin-bottom:var(--gap);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);text-align:center;padding:26px;font-size:13px}.report-error{background:var(--danger-wash);color:#a84f45}.report-metrics{gap:var(--gap-sm);grid-template-columns:repeat(4,1fr);display:grid}.report-metrics article{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);padding:18px}.report-metrics span,.report-metrics small{color:var(--muted);font-size:11px;display:block}.report-metrics b{font-family:var(--font-display);margin:8px 0 5px;font-size:27px;display:block}.report-grid{gap:var(--gap-sm);margin:var(--gap-sm) 0;grid-template-columns:1.5fr 1fr;display:grid}.chart-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);min-height:320px;padding:20px}.chart-card>div:first-child{justify-content:space-between;align-items:baseline;display:flex}.chart-card h3{font-size:17px}.chart-card>div:first-child span{color:var(--muted);font-size:11px}.bar-chart{border-bottom:1px solid var(--line);align-items:flex-end;gap:12px;height:230px;padding-top:28px;display:flex;overflow-x:auto}.bar-chart>div{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;min-width:26px;height:100%;display:flex}.bar-chart span{height:18px;color:var(--muted);font-size:9px}.bar-chart i{background:linear-gradient(#e39a80, var(--coral));border-radius:7px 7px 0 0;width:min(28px,70%);min-height:4px;display:block}.bar-chart small{color:var(--muted);margin:8px 0 -18px;font-size:10px}.rank-row{border-bottom:1px solid var(--line);grid-template-columns:26px 1fr 36px;align-items:center;padding:14px 0;font-size:12px;display:grid}.rank-row>b{font-family:var(--font-display);color:var(--faint)}.rank-row>span{align-items:center;gap:8px;display:flex}.rank-row>span i{border-radius:3px;width:8px;height:8px}.rank-row>em{text-align:right;font-style:normal;font-weight:700}.card-grid{gap:var(--gap-sm);grid-template-columns:repeat(auto-fill,minmax(272px,1fr));display:grid}.card-rows{gap:var(--gap-xs);flex-direction:column;display:flex}.card-rows .record-card{align-items:center;gap:var(--gap);padding:10px 13px;display:flex}.card-rows .record-card-head{flex:1;min-width:0}.card-rows .record-facts,.card-rows .record-card dl{flex-shrink:0;gap:6px;margin:0;display:flex}.card-rows .record-facts>div,.card-rows .record-card dl>div{min-width:82px}.card-rows .record-note{flex:1;margin:0}.card-rows .record-link,.card-rows .record-actions{flex-shrink:0;margin-top:0}.card-rows .log-card{align-items:baseline;gap:var(--gap);display:flex}.card-rows .log-card b{flex:1}.card-rows .log-card small{flex-shrink:0;margin-top:0}.record-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-sunk);text-align:left;width:100%;padding:13px;display:block}button.record-card:hover{border-color:var(--line-strong);background:#fff}.record-card-head{align-items:center;gap:9px;display:flex}.record-card-head>div{flex:1;min-width:0}.record-card-head b,.record-card-head small{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.record-card-head b{font-size:13px}.record-card-head small{color:var(--muted);margin-top:2px;font-size:11px}.record-avatar{color:#a75d45;width:34px;height:34px;font-family:var(--font-display);background:#efe4da;border-radius:11px;flex-shrink:0;place-items:center;font-size:15px;font-style:normal;display:grid}.record-time{border-radius:var(--radius-sm);background:var(--coral-wash);color:#a45c38;white-space:nowrap;flex-shrink:0;padding:4px 8px;font-size:11px;font-style:normal;font-weight:700}.record-tag,.record-status{color:var(--ink-soft);white-space:nowrap;background:#efe9e2;border-radius:999px;flex-shrink:0;padding:3px 8px;font-size:10px;font-style:normal;font-weight:700}.record-status.active{background:var(--sage-wash);color:#567450}.record-status.invited{color:#9e6842;background:#f5e8db}.record-status.disabled{color:#888;background:#eee}.record-facts{grid-template-columns:repeat(auto-fit,minmax(76px,1fr));gap:5px;margin:11px 0 0;display:grid}.record-facts>div{border-radius:var(--radius-sm);background:#fff;padding:7px 8px}.record-facts dt{color:var(--muted);font-size:10px}.record-facts dd{white-space:nowrap;text-overflow:ellipsis;margin:3px 0 0;font-size:12px;font-weight:700;overflow:hidden}.record-facts dd.missing{color:#a45c38}.record-facts .record-highlight{background:var(--sage-wash)}.record-facts .record-highlight dd{color:#496046}.record-note{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin:9px 0 0;font-size:11px;line-height:1.6;overflow:hidden}.record-link{color:var(--coral);margin-top:10px;font-size:12px;font-weight:700;display:inline-block}.record-actions{gap:6px;margin-top:10px;display:flex}.record-actions button{border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;flex:1;padding:7px;font-size:11px;font-weight:700}.log-card b{font-size:12px;line-height:1.5;display:block}.log-card small{color:var(--muted);margin-top:5px;font-size:11px;display:block}.statement-name{align-items:center;gap:9px;display:flex}.statement-name>span{color:#8d503c;width:34px;height:34px;font-family:var(--font-display);background:#f0ddd2;border-radius:11px;flex-shrink:0;place-items:center;font-size:15px;display:grid}.statement-name b,.statement-name small{display:block}.statement-name b{font-size:13px}.statement-name small{color:var(--muted);margin-top:2px;font-size:11px}.record-card dl{grid-template-columns:repeat(auto-fit,minmax(76px,1fr));gap:5px;margin:11px 0;display:grid}.record-card dl>div{border-radius:var(--radius-sm);background:#fff;padding:7px 8px}.record-card dt{color:var(--muted);font-size:10px}.record-card dd{margin:3px 0 0;font-size:12px;font-weight:700}.record-card .statement-due{background:var(--sage-wash);color:#496046}.record-card>p{border-top:1px solid var(--line);color:var(--muted);margin:0;padding-top:9px;font-size:11px}.record-card>a{color:var(--coral);margin-top:8px;font-size:12px;font-weight:700;display:inline-block}.manage-stack{gap:var(--gap-sm);flex-direction:column;display:flex}.manage-stack .collapsible+.collapsible{margin-top:0}.roster-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-sunk);padding:16px}.roster-top{justify-content:space-between;align-items:flex-start;display:flex}.staff-avatar{width:44px;height:44px;font-family:var(--font-display);border-radius:15px;place-items:center;font-size:20px;display:grid}.roster-card h3{margin:12px 0 4px;font-size:18px}.roster-card>p{min-height:26px;color:var(--muted);margin:0;font-size:12px}.roster-facts{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:12px 0;padding:10px 0;display:flex}.roster-facts span{flex:1}.roster-facts span+span{border-left:1px solid var(--line);padding-left:12px}.roster-facts small,.roster-facts b{display:block}.roster-facts small{color:var(--faint);font-size:10px}.roster-facts b{margin-top:3px;font-size:12px}.roster-actions{gap:6px;display:flex}.roster-actions button{border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;flex:1;padding:7px;font-size:11px;font-weight:700}.service-grid,.room-grid{gap:var(--gap-sm);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.service-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-sunk);align-items:center;gap:12px;padding:15px;display:flex}.service-color{border-radius:8px;flex-shrink:0;width:7px;height:48px}.service-card>div:not(.card-actions){flex:1;min-width:0}.service-card small{letter-spacing:1px;color:var(--muted);text-transform:uppercase;font-size:10px}.service-card h3{margin:4px 0;font-size:16px}.service-card p{color:var(--muted);margin:0;font-size:11px}.service-card>b{font-family:var(--font-display);font-size:17px}.card-actions{flex-direction:column;gap:5px;display:flex}.card-edit{background:#eee8e2;border:0;border-radius:7px;padding:5px 9px;font-size:11px;font-weight:700}.room-grid article{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-sunk);align-items:center;gap:12px;padding:16px;display:flex}.room-grid article.maintenance{opacity:.7;background:#f4efeb}.room-grid article>span{border-radius:var(--radius);color:#8b7a6c;background:#ece8e2;place-items:center;width:38px;height:38px;display:grid}.room-grid article>div{flex:1;min-width:0}.room-grid b,.room-grid small{display:block}.room-grid b{font-family:var(--font-display);font-size:15px}.room-grid small{color:var(--muted);margin-top:3px;font-size:11px}.room-grid i{color:var(--sage);font-size:11px;font-style:normal;font-weight:700}.toolbar{align-items:center;gap:var(--gap-sm);margin-bottom:var(--gap-sm);flex-wrap:wrap;display:flex}.toolbar label{border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;align-items:center;gap:8px;margin:0;padding:0 12px;display:flex}.toolbar input{background:0 0;border:0;width:min(280px,50vw);margin:0}.toolbar input:focus{box-shadow:none}.toolbar>span{color:var(--muted);font-size:12px}.toolbar .button{margin-left:auto}.invite-row{grid-template-columns:1fr 120px 80px;gap:7px;margin-bottom:12px;display:grid}.invite-row input,.invite-row select{margin:0}.invite-row button{border-radius:var(--radius-sm);background:var(--espresso);color:#fff;border:0;font-size:12px;font-weight:700}.settings-form{max-width:620px}@media (width<=1100px){.metric-grid,.report-metrics{grid-template-columns:1fr 1fr}.closing-summary{grid-template-columns:repeat(3,1fr)}.report-grid{grid-template-columns:1fr}}@media (width<=700px){.collapsible-summary{display:none}.metric-grid,.report-metrics,.closing-summary{grid-template-columns:1fr 1fr}.card-grid,.card-grid.compact{grid-template-columns:1fr}.record-facts,.record-card dl{grid-template-columns:1fr 1fr}.invite-row{grid-template-columns:1fr}.toolbar .button{width:100%;margin-left:0}.report-filter{grid-template-columns:1fr 1fr;display:grid}.report-filter label:nth-child(3),.report-filter .button{grid-column:1/3}}.roster-skills{border-top:1px solid var(--line);margin:10px 0;padding-top:10px}.roster-skills>small{color:var(--muted);margin-bottom:6px;font-size:10px;display:block}.skill-all{background:var(--sage-wash);color:#52714f;border-radius:999px;padding:3px 9px;font-size:11px;font-style:normal;font-weight:700;display:inline-block}.skill-chips{flex-wrap:wrap;gap:4px;display:flex}.skill-chips em{border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;border-left-width:3px;padding:3px 8px;font-size:11px;font-style:normal}.chip.primary{border-color:var(--coral);background:var(--coral);color:#fff}.chip.primary:disabled{opacity:.6}.drawer-layer,.modal-layer,.search-layer{z-index:var(--z-overlay);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#271f1a61;animation:.15s fade;position:fixed;inset:0}.drawer{background:var(--paper);width:min(460px,100%);box-shadow:var(--shadow-lg);padding:24px;animation:.22s slide-in;position:absolute;inset:0 0 0 auto;overflow:auto}.drawer-head{justify-content:space-between;gap:var(--gap);display:flex}.drawer-head h2{margin:12px 0 4px;font-size:27px}.drawer-head p{color:var(--muted);margin:0;font-size:12px}.drawer-head>button,.modal-head>button{border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;flex-shrink:0;width:34px;height:34px;font-size:19px}.drawer-service{border-radius:0 var(--radius) var(--radius) 0;background:#f7f2ec;border-left:4px solid;margin:22px 0 16px;padding:14px 16px}.drawer-service small{color:var(--muted);font-size:11px}.drawer-service h3{margin:4px 0;font-size:19px}.drawer-service p{color:var(--muted);margin:0;font-size:12px}.detail-list{margin:0 0 18px}.detail-list>div{justify-content:space-between;gap:var(--gap);border-bottom:1px solid var(--line);padding:11px 0;font-size:12px;display:flex}.detail-list dt{color:var(--muted);flex-shrink:0}.detail-list dd{text-align:right;margin:0;font-weight:700}.drawer-edit{width:100%;margin-top:18px}.status-actions h4{margin:0 0 10px;font-size:16px}.status-actions>div{flex-wrap:wrap;gap:7px;display:flex}.status-actions .button{flex:1;min-width:120px;padding:10px 12px;font-size:12px}.checkout-box{border-radius:var(--radius-lg);color:#fff;background:#2f2925;margin:18px 0;padding:18px}.checkout-box h4{margin:0 0 12px;font-size:16px}.checkout-box label{color:#bfb4ab}.checkout-box input,.checkout-box select{color:#fff;background:#3c342f;border-color:#50453e}.checkout-box input:focus,.checkout-box select:focus{box-shadow:none;border-color:#7a6a60}.checkout-total{border-top:1px solid #51463f;justify-content:space-between;align-items:center;margin-top:4px;padding:12px 0;display:flex}.checkout-total>div:first-child{color:#bfb4ab;flex-direction:column;gap:3px;display:flex}.checkout-total>div:last-child{text-align:right}.checkout-total span{font-size:12px;display:block}.checkout-total b{font-family:var(--font-display);font-size:25px;display:block}.checkout-box>small{color:#a99e96;margin-bottom:12px;font-size:11px;line-height:1.5;display:block}.checkout-warning{border-radius:var(--radius-sm);background:#5a3a30;padding:8px;color:#ffd0bd!important}.checkout-box .button{width:100%}.paid-box{border-radius:var(--radius);background:var(--sage-wash);color:#496046;align-items:center;gap:12px;margin-top:18px;padding:16px;display:flex}.paid-box>span{background:var(--sage);color:#fff;border-radius:50%;place-items:center;width:30px;height:30px;display:grid}.paid-box b{font-size:13px}.paid-box p{margin:4px 0 0;font-size:12px}.customer-summary{gap:var(--gap-sm);grid-template-columns:1fr 1fr;margin:22px 0;display:grid}.customer-summary article{border-radius:var(--radius);background:#f3eee8;padding:15px}.customer-summary span{color:var(--muted);font-size:11px;display:block}.customer-summary b{font-family:var(--font-display);margin-top:6px;font-size:23px;display:block}.modal-layer{place-items:center;padding:20px;display:grid}.modal{border-radius:var(--radius-xl);background:var(--paper);width:min(560px,100%);max-height:90vh;box-shadow:var(--shadow-lg);padding:22px;animation:.18s pop;overflow:auto}.modal-head{justify-content:space-between;margin-bottom:18px;display:flex}.modal-head h2{margin:6px 0 0;font-size:26px}.modal-actions{border-top:1px solid var(--line);justify-content:flex-end;gap:8px;margin-top:16px;padding-top:16px;display:flex}.new-customer-entry{border-radius:var(--radius);background:#fff5ec;border:1px solid #ead6c3;margin-bottom:12px;padding:13px}.new-customer-entry>div:first-child{margin-bottom:10px}.new-customer-entry b,.new-customer-entry small{display:block}.new-customer-entry b{font-size:13px}.new-customer-entry small{color:var(--muted);margin-top:3px;font-size:11px}.availability-summary{justify-content:space-between;gap:var(--gap-sm);border-radius:var(--radius);background:#edf2e9;border:1px solid #dbe7d6;margin-bottom:12px;padding:10px 12px;display:flex}.availability-summary span{color:#65745f;font-size:11px}.availability-summary b{color:var(--ink);margin-top:2px;font-size:13px;display:block}.search-layer{z-index:var(--z-search);padding-top:12vh}.global-search{border-radius:var(--radius-lg);background:var(--paper);width:min(680px,100% - 30px);box-shadow:var(--shadow-lg);margin:auto;overflow:hidden}.global-search>div{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:13px 16px;display:flex}.global-search input{background:0 0;border:0;flex:1;margin:0;font-size:15px}.global-search input:focus{box-shadow:none}.global-search>div>button{background:0 0;border:0;font-size:18px}.global-search section{max-height:60vh;padding:8px;overflow:auto}.global-search section>button{border-radius:var(--radius-sm);text-align:left;background:0 0;border:0;align-items:center;gap:11px;width:100%;padding:11px;display:flex}.global-search section>button:hover{background:var(--paper-sunk)}.global-search section i{background:#eee5dc;border-radius:10px;place-items:center;width:32px;height:32px;font-style:normal;display:grid}.global-search section b,.global-search section small{display:block}.global-search section b{font-size:13px}.global-search section small{color:var(--muted);margin-top:3px;font-size:11px}.global-search section>p{color:var(--muted);text-align:center;padding:24px;font-size:13px}@media (width<=700px){.drawer{width:100%;padding:18px}.modal{padding:18px}.form-grid{grid-template-columns:1fr}.status-actions .button{min-width:0}}.party-panel{border-radius:var(--radius);background:#fbf7fc;border:1px solid #d7c2de;margin-bottom:18px;overflow:hidden}.party-head{border-bottom:1px solid #e6d5ec;align-items:baseline;gap:8px;padding:10px 12px;display:flex}.party-head b{color:#7a4f86;font-size:13px}.party-head span{color:var(--muted);font-size:11px}.party-list{margin:0;padding:0;list-style:none}.party-list li+li{border-top:1px dashed #e6d5ec}.party-list button{text-align:left;background:0 0;border:0;grid-template-columns:auto minmax(0,1.2fr) minmax(0,1fr) auto;align-items:center;gap:9px;width:100%;padding:9px 12px;display:grid}.party-list button:hover{background:#fff}.party-list li.current button{background:#fff;box-shadow:inset 3px 0 #9a6fa8}.party-list i{color:#7a4f86;background:#ede0f1;border-radius:50%;place-items:center;width:22px;height:22px;font-size:11px;font-style:normal;font-weight:700;display:grid}.party-guest{min-width:0}.party-guest b,.party-guest small{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.party-guest b{font-size:12px}.party-guest small{color:var(--muted);margin-top:1px;font-size:11px}.party-resource{min-width:0}.party-resource small{color:var(--ink-soft);white-space:nowrap;text-overflow:ellipsis;font-size:11px;display:block;overflow:hidden}.party-resource small.missing{color:#a45c38;font-weight:700}.party-actions{border-top:1px solid #e6d5ec;flex-wrap:wrap;align-items:center;gap:6px;padding:10px 12px;display:flex}.party-actions>span{color:var(--muted);font-size:11px;font-weight:700}.party-actions>small{width:100%;color:var(--muted);font-size:11px}.guest-editor{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-sunk);margin-bottom:12px;padding:12px}.guest-editor-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.guest-editor-head b{font-size:13px;display:block}.guest-editor-head small{color:var(--muted);margin-top:2px;font-size:11px;display:block}.guest-row{border-radius:var(--radius);background:#fbf7fc;border:1px solid #d7c2de;margin-top:10px;padding:10px}.guest-row-head{align-items:center;gap:8px;margin-bottom:8px;display:flex}.guest-row-head b{color:#7a4f86;font-size:12px}.guest-row-head span{color:var(--muted);font-size:11px}.guest-row-head .chip{margin-left:auto}.guest-row label{margin-bottom:8px}.pending-panel{border-radius:var(--radius-lg);background:var(--paper);width:min(880px,100% - 30px);max-height:78vh;box-shadow:var(--shadow-lg);flex-direction:column;margin:auto;display:flex;overflow:hidden}.pending-head{justify-content:space-between;align-items:flex-start;gap:var(--gap);border-bottom:1px solid var(--line);padding:18px 20px;display:flex}.pending-head h2{margin:6px 0 4px;font-size:26px}.pending-head p{color:var(--muted);margin:0;font-size:12px}.pending-head>button{border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;flex-shrink:0;width:34px;height:34px;font-size:19px}.pending-body{padding:16px 20px 20px;overflow:auto}.pending-group+.pending-group{margin-top:var(--gap)}.pending-group-head{align-items:baseline;gap:8px;margin-bottom:9px;display:flex}.pending-group-head b{font-size:14px}.pending-group-head em{color:var(--ink-soft);background:#efe9e2;border-radius:999px;padding:2px 9px;font-size:11px;font-style:normal;font-weight:700}.pending-group.warning .pending-group-head em{background:var(--coral-wash);color:#a45c38}.pending-group.warning .pending-group-head b{color:#a45c38}.pending-group-head small{color:var(--muted);font-size:11px}@media (width<=700px){.pending-panel{max-height:84vh}.pending-head,.pending-body{padding:14px}.pending-head h2{font-size:22px}}.skill-picker{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-sunk);margin-bottom:12px;padding:12px}.skill-picker-head b{font-size:13px;display:block}.skill-picker-head small{color:var(--muted);margin-top:3px;font-size:11px;display:block}.skill-options{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:6px;margin-top:10px;display:grid}.skill-option{border:1px solid var(--line);border-radius:var(--radius-sm);cursor:pointer;background:#fff;align-items:center;gap:7px;margin:0;padding:8px 10px;font-size:12px;font-weight:500;display:flex}.skill-option:has(input:checked){border-color:var(--coral);background:#fff7f3;font-weight:700}.skill-option input{width:auto;accent-color:var(--coral);margin:0}.skill-option>span{border-radius:3px;flex-shrink:0;width:8px;height:8px}.picker{margin-bottom:12px}.picker>label{color:var(--ink-soft);margin-bottom:6px;font-size:11px;font-weight:700;display:block}.picker>input{margin-top:0}.picker-chosen{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-sunk);align-items:center;gap:10px;padding:10px 12px;display:flex}.picker-chosen>span{flex:1;min-width:0}.picker-chosen b,.picker-chosen small{display:block}.picker-chosen b{font-size:14px}.picker-chosen small{color:var(--muted);margin-top:2px;font-size:11px}.picker-results{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);margin-top:6px;overflow:hidden}.picker-results>button{text-align:left;background:0 0;border:0;align-items:center;gap:10px;width:100%;padding:9px 11px;display:flex}.picker-results>button+button{border-top:1px solid var(--line)}.picker-results>button:hover{background:var(--paper-sunk)}.picker-results i{color:#a75d45;width:30px;height:30px;font-family:var(--font-display);background:#efe4da;border-radius:10px;place-items:center;font-style:normal;display:grid}.picker-results b,.picker-results small{display:block}.picker-results b{font-size:13px}.picker-results small{color:var(--muted);margin-top:2px;font-size:11px}.picker-new{border-top:1px solid var(--line);background:#fff5ec;gap:6px;padding:8px;display:flex}.picker-new-go{border-radius:var(--radius-sm);color:#a45c38;white-space:nowrap;background:#fff;border:1px solid #ead6c3;flex-shrink:0;padding:8px 12px;font-size:12px;font-weight:700}.picker-new input{background:#fff;margin:0;font-size:12px}.service-group+.service-group{margin-top:10px}.service-group>small{letter-spacing:1px;color:var(--muted);text-transform:uppercase;margin-bottom:5px;font-size:10px;display:block}.service-options{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px;display:grid}.service-option{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper);text-align:left;border-left:4px solid;padding:9px 11px}.service-option:hover{border-color:var(--line-strong);background:var(--paper-sunk)}.service-option b{font-size:13px;display:block}.service-option span{color:var(--muted);margin-top:3px;font-size:11px;display:block}.service-option.selected{box-shadow:inset 0 0 0 1px var(--coral);background:#fff7f3}.service-option.selected b{color:var(--coral-dark)}@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}
