@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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;--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,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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:where(:not(iframe)){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{.fixed{position:fixed}.\!table{display:table!important}.block{display:block}.flex{display:flex}.grid{display:grid}.inline-block{display:inline-block}.table{display:table}.h-full{height:100%}.min-h-full{min-height:100%}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.flex-col{flex-direction:column}.border{border-style:var(--tw-border-style);border-width:1px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f5f6f8;--panel:#fff;--line:#e7e9ee;--line-strong:#d5d9e0;--ink:#1b1f27;--muted:#6b7280;--muted-2:#9aa1ac;--accent:#4f46e5;--accent-soft:#eef0fe;--accent-border:#cfd0fb;--shadow:0 1px 2px #12161f0a,0 8px 24px #12161f0f;--radius:14px;--surface-2:#f0f1f4;--hover-surface:#f8f9fb;--libre:#12b981;--libre-bg:#e9f8f1;--libre-text:#0e7a58;--libre-border:#bfe3cd;--resa:#3b82f6;--resa-bg:#e9f1fe;--resa-text:#215fbf;--gold:#e0a83a;--gold-bg:#fdf6e4;--gold-text:#7a5a12;--gold-border:#f0dcae;--danger:#c0392b;--danger-bg:#fde9e7;--danger-border:#f3c3bc;--floor-bg:#fbfbfd;--floor-grid:#00000006;--fixture-filter:none}@media (prefers-color-scheme:dark){:root{--bg:#12131a;--panel:#1b1d28;--line:#2a2d3b;--line-strong:#3b3f52;--ink:#e8e9ee;--muted:#8b93a8;--muted-2:#656b80;--accent:#8b83ff;--accent-soft:#23264a;--accent-border:#3a3f6e;--shadow:0 1px 2px #00000059,0 8px 28px #00000080;--surface-2:#262a38;--hover-surface:#20232f;--libre:#22c993;--libre-bg:#103628;--libre-text:#4ade9a;--libre-border:#1e4a35;--resa:#5b9bf5;--resa-bg:#122b4a;--resa-text:#7aa8f7;--gold:#f0b93a;--gold-bg:#3a2e10;--gold-text:#f0c065;--gold-border:#5c4a1e;--danger:#f47b6e;--danger-bg:#3a1e1c;--danger-border:#5c2e2a;--floor-bg:#1a1c26;--floor-grid:#ffffff09;--fixture-filter:brightness(.62) saturate(1.25);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#12131a;--panel:#1b1d28;--line:#2a2d3b;--line-strong:#3b3f52;--ink:#e8e9ee;--muted:#8b93a8;--muted-2:#656b80;--accent:#8b83ff;--accent-soft:#23264a;--accent-border:#3a3f6e;--shadow:0 1px 2px #00000059,0 8px 28px #00000080;--surface-2:#262a38;--hover-surface:#20232f;--libre:#22c993;--libre-bg:#103628;--libre-text:#4ade9a;--libre-border:#1e4a35;--resa:#5b9bf5;--resa-bg:#122b4a;--resa-text:#7aa8f7;--gold:#f0b93a;--gold-bg:#3a2e10;--gold-text:#f0c065;--gold-border:#5c4a1e;--danger:#f47b6e;--danger-bg:#3a1e1c;--danger-border:#5c2e2a;--floor-bg:#1a1c26;--floor-grid:#ffffff09;--fixture-filter:brightness(.62) saturate(1.25);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f5f6f8;--panel:#fff;--line:#e7e9ee;--line-strong:#d5d9e0;--ink:#1b1f27;--muted:#6b7280;--muted-2:#9aa1ac;--accent:#4f46e5;--accent-soft:#eef0fe;--accent-border:#cfd0fb;--shadow:0 1px 2px #12161f0a,0 8px 24px #12161f0f;--surface-2:#f0f1f4;--hover-surface:#f8f9fb;--libre:#12b981;--libre-bg:#e9f8f1;--libre-text:#0e7a58;--libre-border:#bfe3cd;--resa:#3b82f6;--resa-bg:#e9f1fe;--resa-text:#215fbf;--gold:#e0a83a;--gold-bg:#fdf6e4;--gold-text:#7a5a12;--gold-border:#f0dcae;--danger:#c0392b;--danger-bg:#fde9e7;--danger-border:#f3c3bc;--floor-bg:#fbfbfd;--floor-grid:#00000006;--fixture-filter:none}*{box-sizing:border-box}html,body{height:100%}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;transition:background-color .15s,color .15s}.topbar,.kpi,.card,.floor-wrap,.modal,.login-card,.booking-card,.mobile-tabbar{transition:background-color .15s,border-color .15s}button{cursor:pointer;font-family:inherit}.app-shell{flex-direction:column;height:100vh;display:flex;overflow:hidden}@media (max-width:1024px){.app-shell{height:auto;min-height:100dvh;overflow:visible}}.topbar{--panel:#1f222c;--line:#33374a;--line-strong:#454a61;--ink:#eef0f5;--muted:#9aa1b5;--muted-2:#6f7690;--surface-2:#2a2e3d;--hover-surface:#262a38;background:var(--panel);color:var(--ink);border-bottom:1px solid var(--line);flex:none;align-items:center;gap:18px;padding:12px 20px;display:flex}.brand{letter-spacing:-.01em;align-items:center;gap:10px;font-size:16px;font-weight:700;display:flex}.brand .logo{object-fit:cover;border-radius:11px;flex-shrink:0;width:42px;height:42px}.brand small{color:var(--muted-2);letter-spacing:.02em;font-size:11px;font-weight:500;display:block}.svc{align-items:center;gap:8px;margin-left:6px;display:flex}.chip{border:1px solid var(--line);background:var(--panel);border-radius:10px;align-items:center;gap:7px;padding:7px 12px;font-size:13px;font-weight:500;display:inline-flex}.chip .dot{background:var(--accent);border-radius:50%;width:7px;height:7px}.seg{background:var(--surface-2);border-radius:10px;padding:3px;display:inline-flex}.seg button{color:var(--muted);background:0 0;border:0;border-radius:8px;padding:6px 12px;font-size:13px;font-weight:600}.seg button.on{background:var(--panel);color:var(--ink);box-shadow:0 1px 2px #00000014}.spacer{flex:1}.mode{background:var(--surface-2);border-radius:10px;padding:3px;display:inline-flex}.mode button{color:var(--muted);background:0 0;border:0;border-radius:8px;align-items:center;gap:6px;padding:7px 14px;font-size:13px;font-weight:600;display:flex}.mode button.on{background:var(--accent);color:#fff;box-shadow:0 1px 6px #4f46e559}.demo-flag{color:var(--muted-2);border:1px dashed var(--line-strong);letter-spacing:.03em;border-radius:20px;padding:3px 9px;font-size:10.5px;font-weight:700}.iconbtn{border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:10px;align-items:center;gap:6px;padding:7px 12px;font-size:13px;font-weight:600;display:inline-flex}.iconbtn:hover{border-color:var(--line-strong);background:var(--hover-surface)}.overflow-menu{position:relative}.overflow-menu-list{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);z-index:50;border-radius:12px;flex-direction:column;gap:2px;min-width:170px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0}.overflow-menu-list button{text-align:left;color:var(--ink);white-space:nowrap;background:0 0;border:0;border-radius:8px;padding:9px 11px;font-size:13px;font-weight:600}.overflow-menu-list button:hover{background:var(--surface-2)}.booking-chip{border-radius:10px;align-items:center;gap:7px;padding:7px 12px;font-size:13px;font-weight:700;display:inline-flex}.booking-chip.open{background:var(--libre-bg);color:var(--libre-text)}.booking-chip.closed{background:var(--danger-bg);color:var(--danger)}.booking-chip .dot{background:currentColor;border-radius:50%;width:7px;height:7px}.checklist{flex:none;margin:0 20px;display:none}.checklist.show{display:flex}.checklist-inner{background:var(--gold-bg);border:1px solid var(--gold-border);border-radius:12px;flex-wrap:wrap;flex:1;align-items:center;gap:12px;padding:10px 14px;display:flex}.checklist-inner b{color:var(--gold-text)}.checklist-items{flex-wrap:wrap;flex:1;gap:8px;display:flex}.cl-item{color:var(--gold-text);background:var(--panel);border:1px solid var(--gold-border);border-radius:20px;padding:4px 10px;font-size:12px;font-weight:700}.checklist.ok .checklist-inner{background:var(--libre-bg);border-color:var(--libre-border)}.checklist.ok .checklist-inner b{color:var(--libre-text)}.kpis{flex:none;gap:14px;padding:16px 20px 4px;display:flex}@media (max-width:1024px){.kpis{grid-template-columns:repeat(2,1fr);display:grid}}@media (max-height:480px){.kpis{display:none}}.kpi{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);flex:1;padding:14px 16px;position:relative;overflow:hidden}.kpi .label{color:var(--muted);font-size:12px;font-weight:600}.kpi .value{letter-spacing:-.02em;align-items:baseline;gap:6px;margin-top:6px;font-size:26px;font-weight:750;display:flex}.kpi .value small{color:var(--muted-2);font-size:13px;font-weight:600}.kpi .sub{color:var(--muted);margin-top:3px;font-size:12px}.bar{background:var(--surface-2);border-radius:6px;height:6px;margin-top:10px;overflow:hidden}.bar>i{background:linear-gradient(90deg,#4f46e5,#7c73ff);border-radius:6px;height:100%;transition:width .4s;display:block}.main{flex:1;gap:14px;min-height:0;padding:12px 20px 18px;display:flex}.main.compact{flex-direction:column;padding:10px 12px 12px}.main.compact .floor-wrap{flex:auto;min-height:0}.main.compact .side{flex:auto;width:100%;min-height:0}.floor-wrap{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;flex:1;min-width:0;display:flex}.mobile-tabbar{border-top:1px solid var(--line);background:var(--panel);padding:6px 10px calc(6px + env(safe-area-inset-bottom));flex:none;gap:8px;display:flex}.mobile-tabbar button{color:var(--muted);background:0 0;border:0;border-radius:10px;flex:1;padding:10px;font-size:13px;font-weight:700}.mobile-tabbar button.on{background:var(--accent-soft);color:var(--accent)}.floor-head{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:10px;padding:12px 14px;display:flex}.zones{flex-wrap:wrap;gap:6px;display:flex}.zone-tab{border:1px solid var(--line);background:var(--panel);color:var(--muted);border-radius:9px;align-items:center;gap:7px;padding:7px 13px;font-size:13px;font-weight:600;display:flex}.zone-tab.on{background:var(--accent-soft);border-color:var(--accent-border);color:var(--accent)}.zone-tab .cnt{background:var(--surface-2);color:var(--muted);border-radius:20px;padding:1px 7px;font-size:11px;font-weight:700}.zone-tab.on .cnt{background:var(--panel);color:var(--accent)}.zone-tab.zone-closed{opacity:.75}.legend{flex-wrap:wrap;align-items:center;gap:14px;margin-left:auto;display:flex}.legend span{color:var(--muted);align-items:center;gap:6px;font-size:12px;font-weight:500;display:inline-flex}.legend i{border-radius:3px;width:10px;height:10px;display:inline-block}.floor-scroll{flex:1;min-height:0;position:relative;overflow:auto}.floor{background:linear-gradient(0deg,var(--floor-grid) 1px,transparent 1px) 0 0/26px 26px, linear-gradient(90deg,var(--floor-grid) 1px,transparent 1px) 0 0/26px 26px,var(--floor-bg);border:1px solid var(--line);touch-action:none;border-radius:12px;width:960px;height:540px;margin:14px;position:relative;overflow:hidden}.floor-zoom{position:relative;overflow:hidden}.zone-note{color:var(--muted-2);letter-spacing:.04em;text-transform:uppercase;pointer-events:none;z-index:2;font-size:11px;font-weight:600;position:absolute;top:8px;right:12px}.zoom-controls{z-index:20;background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:10px;gap:2px;padding:3px;display:flex;position:absolute;top:10px;left:10px}.zoom-controls button{min-width:32px;height:32px;color:var(--ink);background:0 0;border:0;border-radius:8px;padding:0 8px;font-size:15px;font-weight:700}.zoom-controls button:hover{background:var(--surface-2)}.aura{pointer-events:none;z-index:1;background:#4f46e50f;border:2px dashed #4f46e566;border-radius:50%;position:absolute}.fixture-wrap{z-index:3;pointer-events:none;position:absolute}.edit-mode .fixture-wrap{cursor:grab;pointer-events:auto}.edit-mode .fixture-wrap:active{cursor:grabbing}.fixture-wrap.selected{z-index:6}.fixture-wrap.dragging{z-index:30}.fixture{color:#7a828e;-webkit-user-select:none;user-select:none;text-align:center;width:100%;height:100%;filter:var(--fixture-filter);border-radius:9px;justify-content:center;align-items:center;gap:5px;font-size:11px;font-weight:700;line-height:1.05;display:flex;overflow:hidden}.fixture .fi{font-size:14px}.fixture.selected{outline-offset:2px;outline:3px solid #4f46e573}.fixture.dragging{opacity:.92;box-shadow:0 10px 26px #12161f38}.f-window{color:#4f6f9e;background:repeating-linear-gradient(90deg,#e2ecf8,#e2ecf8 7px,#cad9ee 7px 12px);border:1px solid #b9cbe4;border-radius:5px}.f-window.vert{background:repeating-linear-gradient(0deg,#e2ecf8,#e2ecf8 7px,#cad9ee 7px 12px)}.f-wc{color:#5c6675;background:#eef1f6;border:1px solid #d3dae6}.f-entree{color:#9a7d43;background:#f4ede0;border:1.5px dashed #d8c39a}.f-stairs{color:#6b7280;background:repeating-linear-gradient(90deg,#e9ebef,#e9ebef 6px,#dcdfe5 6px 12px);border:1px solid #d0d4db}.f-bar{color:#8a7442;background:linear-gradient(#efe7d8,#e7ddca);border:1px solid #d6c9ac;border-radius:7px}.f-plant{color:#3f9163;background:#e7f5ec;border:1px solid #bfe3cd;border-radius:50%}.f-fireplace{color:#b5714a;background:#f8e8df;border:1px solid #ecccb9}.f-pillar{color:#8b919c;background:#d3d7de;border:1px solid #bfc4cd;border-radius:4px}.f-register{color:#6a6fb0;background:#e9eaf6;border:1px solid #cfd1ec}.f-cloak{color:#737a86;background:#eef0f3;border:1px solid #d6dae1}.f-tree{color:#2f7a4d;background:radial-gradient(circle at 50% 40%,#d7f0dd,#bfe3cd);border:1px solid #a3d4b3;border-radius:50%}.f-fountain{color:#2f7a9e;background:radial-gradient(circle,#dcf1fb,#c3e6f7);border:1.5px solid #a9d8ef;border-radius:50%}.f-kids{color:#c15a70;background:#fdeef0;border:1px dashed #f3c3cb;border-radius:9px}.f-stage{color:#8a6a42;background:linear-gradient(#efe3d8,#e4d3c0);border:1px solid #d8c1a4;border-radius:6px}.f-parasol{color:#a5771e;background:radial-gradient(circle,#fdf1de,#f8e2b8);border:1px solid #eecf8f;border-radius:50%}.f-buffet{color:#8a7442;background:linear-gradient(#f0e9db,#e5dcc8);border:1px solid #d9cba9;border-radius:6px}.f-screen{color:#5c6675;background:#eaecef;border:1.5px solid #c7cbd3;border-radius:4px}.f-piano{color:#e9e9ef;background:#26262c;border:1px solid #131318;border-radius:5px}.table{text-align:center;border:2px solid var(--libre);background:var(--libre-bg);color:var(--libre-text);-webkit-user-select:none;user-select:none;z-index:5;cursor:pointer;place-items:center;font-size:13px;font-weight:700;line-height:1.1;transition:box-shadow .15s,transform 80ms;display:grid;position:absolute;box-shadow:0 1px 2px #0000000f}.table .seats{opacity:.75;margin-top:1px;font-size:10.5px;font-weight:600}.table .atoms{white-space:nowrap;gap:2px;display:flex;position:absolute;bottom:-9px;left:50%;transform:translate(-50%)}.table .atoms span{font-size:11px;line-height:1}.table.round{border-radius:50%}.table.reservee{border-color:var(--resa);background:var(--resa-bg);color:var(--resa-text)}.table:hover{box-shadow:0 6px 18px #12161f24}.table.selected{outline-offset:2px;z-index:8;outline:3px solid #4f46e559}.table.match{outline:3px solid var(--gold);outline-offset:3px;box-shadow:0 0 0 6px var(--gold-bg),0 6px 18px #e0a83a59;z-index:9}.table.dim{opacity:.42}.table .badge{background:var(--resa);color:#fff;letter-spacing:.01em;white-space:nowrap;border-radius:20px;place-items:center;min-width:38px;height:19px;padding:0 6px;font-size:10.5px;font-weight:800;display:grid;position:absolute;top:-10px;right:-10px;box-shadow:0 1px 3px #0003}.table .arrival{color:var(--resa-text);white-space:nowrap;margin-top:1px;font-size:11px;font-weight:800}.table .star{background:var(--gold);color:#fff;border-radius:50%;place-items:center;width:20px;height:20px;font-size:11px;display:grid;position:absolute;top:-9px;left:-9px;box-shadow:0 1px 3px #00000040}.table.dragging{opacity:.95;z-index:40;box-shadow:0 12px 30px #12161f38}.edit-mode .table{cursor:grab}.edit-mode .table:active{cursor:grabbing}.resize-handle{background:var(--panel);border:2px solid var(--accent);z-index:15;pointer-events:auto;border-radius:3px;width:11px;height:11px;position:absolute}.resize-handle:hover{background:var(--accent-soft)}.rh-nw{top:-6px;left:-6px}.rh-n{top:-6px;left:calc(50% - 5.5px)}.rh-ne{top:-6px;right:-6px}.rh-e{top:calc(50% - 5.5px);right:-6px}.rh-se{bottom:-6px;right:-6px}.rh-s{bottom:-6px;left:calc(50% - 5.5px)}.rh-sw{bottom:-6px;left:-6px}.rh-w{top:calc(50% - 5.5px);left:-6px}.side{flex-direction:column;flex:0 0 356px;gap:14px;width:356px;min-height:0;display:flex}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;min-height:0;display:flex}.card h3{border-bottom:1px solid var(--line);align-items:center;gap:8px;margin:0;padding:13px 15px;font-size:14px;font-weight:700;display:flex}.card h3 .count{color:var(--muted);background:var(--surface-2);border-radius:20px;margin-left:auto;padding:2px 9px;font-size:12px;font-weight:700}.resa-list{flex-direction:column;gap:8px;padding:10px;display:flex;overflow:auto}.resa{border:1px solid var(--line);background:var(--panel);cursor:pointer;border-radius:11px;align-items:flex-start;gap:10px;padding:10px 11px;transition:box-shadow .15s,border-color .15s;display:flex}.resa:hover{border-color:var(--line-strong);box-shadow:0 4px 14px #12161f17}.resa.placed{opacity:.62}.resa.active{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-bg)}.resa .time{font-variant-numeric:tabular-nums;min-width:44px;font-size:14px;font-weight:800}.resa .who{flex:1;min-width:0}.resa .who b{white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:700;display:block;overflow:hidden}.resa .who .pref{color:var(--muted);align-items:center;gap:4px;margin-top:2px;font-size:11.5px;display:flex}.resa .who .src-google{color:#1a73e8;margin-top:2px;font-size:10.5px;font-weight:700;display:block}.resa .party{background:var(--surface-2);white-space:nowrap;border-radius:8px;padding:3px 8px;font-size:12px;font-weight:700}.resa .tag{border-radius:20px;margin-top:5px;padding:2px 7px;font-size:10.5px;font-weight:700;display:inline-block}.tag.attendue{background:var(--resa-bg);color:var(--resa-text)}.tag.placee{background:var(--libre-bg);color:var(--libre-text)}.inspector,.edit-tools{flex-direction:column;gap:12px;padding:13px 15px;display:flex;overflow:auto}.insp-empty{text-align:center;color:var(--muted-2);padding:22px 15px;font-size:13px;line-height:1.5}.insp-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.insp-title{font-size:16px;font-weight:750}.mini{color:var(--muted);font-size:12px}.mini.bold{color:var(--ink);font-weight:700}.status-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.st{border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:10px;align-items:center;gap:8px;padding:9px;font-size:12.5px;font-weight:700;display:flex}.st i{border-radius:4px;width:11px;height:11px}.st.on.s-libre{border-width:2px;border-color:var(--libre);background:var(--libre-bg)}.st.on.s-reservee{border-width:2px;border-color:var(--resa);background:var(--resa-bg)}.chips{flex-wrap:wrap;gap:6px;display:flex}.achip{border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:20px;align-items:center;gap:5px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.achip.warn{border-color:var(--gold-border);background:var(--gold-bg);color:var(--gold-text)}.achip.tog{cursor:pointer}.achip.tog.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.hint{color:var(--muted);background:var(--hover-surface);border:1px solid var(--line);border-radius:10px;padding:10px 11px;font-size:12px;line-height:1.5}.hint b{color:var(--ink)}.hint.gold{background:var(--gold-bg);border-color:var(--gold-border);color:var(--gold-text)}.row-btns{gap:8px;display:flex}.btn{border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:10px;flex:1;padding:9px;font-size:12.5px;font-weight:700}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.danger{color:var(--danger);border-color:var(--danger-border)}.btn:disabled{opacity:.4;cursor:not-allowed}.suggest{flex-direction:column;gap:7px;display:flex}.sugg{border:1px solid var(--line);background:var(--panel);cursor:pointer;border-radius:11px;align-items:center;gap:10px;padding:9px 11px;transition:all .15s;display:flex}.sugg:hover{border-color:var(--gold);box-shadow:0 3px 12px #e0a83a2e}.sugg .tid{min-width:34px;font-size:14px;font-weight:800}.sugg .why{min-width:0;color:var(--muted);flex:1;font-size:12px}.sugg .score{color:var(--libre-text);background:var(--libre-bg);white-space:nowrap;border-radius:20px;padding:3px 9px;font-size:11px;font-weight:800}.sugg .score.mid{color:var(--muted);background:var(--surface-2)}.palette{grid-template-columns:1fr 1fr 1fr;gap:7px;display:grid}.pbtn{border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:10px;flex-direction:column;align-items:center;gap:4px;padding:8px 4px;font-size:11px;font-weight:700;display:flex}.pbtn .pi{font-size:17px}.pbtn:hover{border-color:var(--accent);background:var(--accent-soft)}.tool-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.stepper{border:1px solid var(--line);border-radius:10px;align-items:center;display:flex;overflow:hidden}.stepper button{background:var(--panel);width:34px;height:34px;color:var(--ink);border:0;font-size:17px;font-weight:700}.stepper button:hover{background:var(--surface-2)}.stepper .n{text-align:center;min-width:40px;font-weight:800}.divider{background:var(--line);height:1px;margin:2px 0}.reminder-ta{border:1px solid var(--line);resize:vertical;width:100%;color:var(--ink);border-radius:9px;padding:8px 9px;font-family:inherit;font-size:12.5px}.reminder-box{background:var(--hover-surface);border:1px solid var(--line);border-radius:11px;padding:11px}.toast{color:#fff;opacity:0;pointer-events:none;z-index:100;background:#1b1f27;border-radius:12px;padding:11px 18px;font-size:13px;font-weight:600;transition:all .25s;position:fixed;bottom:22px;left:50%;transform:translate(-50%)translateY(20px);box-shadow:0 10px 30px #00000047}.toast.show{opacity:1;transform:translate(-50%)translateY(0)}.modal-overlay{z-index:200;background:#12161f73;justify-content:center;align-items:center;display:none;position:fixed;inset:0}.modal-overlay.show{display:flex}.modal{background:var(--panel);border-radius:16px;width:560px;max-width:92vw;max-height:86vh;overflow:auto;box-shadow:0 24px 60px #0000004d}.modal-head{border-bottom:1px solid var(--line);background:var(--panel);align-items:center;gap:10px;padding:16px 20px;display:flex;position:sticky;top:0}.modal-head h2{margin:0;font-size:16px}.modal-close{background:var(--surface-2);border:0;border-radius:9px;width:30px;height:30px;margin-left:auto;font-size:15px}.modal-body{flex-direction:column;gap:18px;padding:18px 20px;display:flex}.settings-section .mini.bold{margin-bottom:8px}.hours-row{border-bottom:1px solid var(--line);align-items:flex-start;gap:10px;padding:9px 0;display:flex}.hours-row:last-child{border-bottom:0}.hours-row .day{flex:none;width:80px;padding-top:6px;font-size:13px;font-weight:700}.hours-row .svc-block{flex-wrap:wrap;flex:1;align-items:center;gap:8px;display:flex}.hours-row .closed-toggle{color:var(--muted);align-items:center;gap:6px;margin-left:auto;font-size:12px;display:flex}.hours-row input[type=time]{border:1px solid var(--line);border-radius:8px;width:92px;padding:5px 7px;font-family:inherit;font-size:12.5px}.hours-row .to{color:var(--muted-2);font-size:12px}.hours-row .svc-block.is-closed input[type=time]{opacity:.35}.exc-list{flex-direction:column;gap:6px;display:flex}.exc-item{border:1px solid var(--line);border-radius:9px;align-items:center;gap:10px;padding:7px 10px;font-size:13px;display:flex}.exc-item .lbl{flex:1}.exc-item button{color:var(--danger);background:0 0;border:0;font-size:15px}.exc-add{gap:8px;display:flex}.exc-add input[type=date]{border:1px solid var(--line);border-radius:9px;flex:none;padding:8px 9px;font-family:inherit;font-size:12.5px}.exc-add input[type=text]{border:1px solid var(--line);border-radius:9px;flex:1;padding:8px 9px;font-family:inherit;font-size:12.5px}.cutoff-row{align-items:center;gap:10px;display:flex}.cutoff-row select{border:1px solid var(--line);border-radius:9px;padding:8px 9px;font-family:inherit;font-size:12.5px}.modal-foot{border-top:1px solid var(--line);background:var(--panel);gap:10px;padding:14px 20px;display:flex;position:sticky;bottom:0}.theme-toggle-floating{z-index:10;position:fixed;top:16px;right:16px}.login-wrap{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);width:360px;max-width:92vw;box-shadow:var(--shadow);padding:28px}.login-card label{color:var(--ink);margin:12px 0 6px;font-size:12.5px;font-weight:700;display:block}.login-card input{border:1px solid var(--line);border-radius:10px;width:100%;padding:10px 11px;font-family:inherit;font-size:13.5px}.login-error{background:var(--danger-bg);color:var(--danger);border:1px solid var(--danger-border);border-radius:10px;margin-top:12px;padding:9px 11px;font-size:12.5px;font-weight:600}@media (max-width:1120px){.side{flex-basis:312px;width:312px}.kpi .value{font-size:22px}}@media (max-width:1024px){.topbar{flex-wrap:wrap;row-gap:8px}}.booking-page{background:var(--bg);justify-content:center;min-height:100vh;padding:40px 16px;display:flex}.booking-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);width:520px;max-width:100%;box-shadow:var(--shadow);height:fit-content;padding:28px}.booking-head{align-items:center;gap:10px;margin-bottom:22px;display:flex}.booking-head h1{margin:0;font-size:18px;font-weight:750}.booking-head p{color:var(--muted);margin:2px 0 0;font-size:12.5px}.booking-field{margin-bottom:14px}.booking-field label{color:var(--ink);margin-bottom:6px;font-size:12.5px;font-weight:700;display:block}.booking-field input,.booking-field select,.booking-field textarea{border:1px solid var(--line);border-radius:10px;width:100%;padding:10px 11px;font-family:inherit;font-size:13.5px}.booking-row{gap:12px;display:flex}.booking-row>*{flex:1}.booking-error{background:var(--danger-bg);color:var(--danger);border:1px solid var(--danger-border);border-radius:10px;margin-top:4px;padding:9px 11px;font-size:12.5px;font-weight:600}.booking-empty{background:var(--hover-surface);border:1px solid var(--line);color:var(--muted);text-align:center;border-radius:10px;padding:14px;font-size:13px}.service-group{margin-bottom:16px}.service-group h3{text-transform:capitalize;margin:0 0 8px;font-size:13px;font-weight:700}.slot-grid{grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:8px;display:grid}.slot-btn{border:1px solid var(--line);background:var(--panel);color:var(--ink);text-align:center;border-radius:9px;padding:9px 6px;font-size:13px;font-weight:700}.slot-btn:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.slot-btn.selected{background:var(--accent);border-color:var(--accent);color:#fff}.booking-summary{background:var(--accent-soft);border:1px solid var(--accent-border);color:var(--ink);border-radius:10px;margin-bottom:16px;padding:12px 14px;font-size:13px}.booking-summary b{color:var(--accent)}.confirmation-icon{background:var(--libre-bg);width:52px;height:52px;color:var(--libre-text);border-radius:50%;place-items:center;margin:0 auto 16px;font-size:26px;display:grid}.booking-back{color:var(--muted);cursor:pointer;background:0 0;border:0;margin-bottom:16px;padding:0;font-size:12.5px;font-weight:600}.booking-back:hover{color:var(--ink)}@media (max-width:640px){.booking-page{padding:20px 12px}.booking-card{padding:20px}.booking-field input,.booking-field select,.booking-field textarea{padding:12px 11px;font-size:16px}.slot-btn{padding:12px 6px;font-size:14px}.btn{padding:12px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}
