:root{--text:#64748b;--text-h:#172033;--bg:#f5f7fb;--border:#e2e8f0;--accent:#2563eb;--accent-2:#06b6d4;--sidebar:#111827;--sidebar-muted:#94a3b8;--shadow:0 12px 30px #0f172a0f;--sans:Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--heading:Inter, ui-sans-serif, system-ui, sans-serif;--mono:ui-monospace, Consolas, monospace;font:15px/145% var(--sans);letter-spacing:0;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (width<=1024px){:root{font-size:16px}}body{background:var(--bg);margin:0}#root{width:100%;min-height:100svh}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-.7px;margin:0;font-size:30px}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}button,input,textarea,select{font:inherit}button{cursor:pointer}.auth-shell{box-sizing:border-box;background:radial-gradient(circle at 85% 15%, #dff8ff 0, transparent 32%), var(--bg);place-items:center;min-height:100svh;padding:24px;display:grid}.auth-brand{color:var(--text-h);font-size:18px;font-weight:800;position:fixed;top:30px;left:36px}.auth-shell form{border:1px solid var(--border);width:min(100%,420px);box-shadow:var(--shadow);box-sizing:border-box;background:#fff;border-radius:12px;padding:38px}.auth-shell h2{margin-bottom:12px;font-size:28px}.auth-shell label,.dashboard-content label{color:#334155;font-size:13px;font-weight:650}.auth-shell input,.dashboard-content input,.dashboard-content textarea,.dashboard-content select{color:var(--text-h);background:#fff;border-radius:7px;padding:10px 12px;border:1px solid #cbd5e1!important;margin-top:6px!important}.auth-shell form>button,.dashboard-content button:not(.nav-item):not(.sidebar-logout){color:#fff;background:linear-gradient(110deg, var(--accent), var(--accent-2));border:0;border-radius:7px;padding:10px 16px;font-weight:700;box-shadow:0 5px 12px #2563eb33}.auth-shell form>button:hover,.dashboard-content button:not(.nav-item):not(.sidebar-logout):hover{filter:brightness(1.06);transform:translateY(-1px)}.auth-shell p{color:var(--text);font-size:13px}.auth-shell p button{color:var(--accent)!important}.dashboard-shell{min-height:100svh;display:flex}.sidebar{box-sizing:border-box;background:var(--sidebar);color:#fff;flex-direction:column;flex:0 0 246px;width:246px;padding:28px 16px 20px;display:flex}.sidebar-brand{align-items:center;gap:10px;padding:0 12px 40px;font-size:16px;font-weight:750;display:flex}.brand-mark{color:#fff;background:linear-gradient(135deg,#2563eb,#06b6d4);border-radius:8px;place-items:center;width:28px;height:28px;font-weight:800;display:grid}.sidebar-caption{color:#64748b;text-transform:uppercase;letter-spacing:.08em;padding:0 12px 10px;font-size:10px;font-weight:800}.sidebar-nav{gap:5px;display:grid}.nav-item{width:100%;color:var(--sidebar-muted);text-align:left;background:0 0;border:0;border-radius:7px;align-items:center;gap:12px;padding:11px 12px;font-weight:600;display:flex}.nav-item:hover,.nav-item.active{color:#fff;background:linear-gradient(90deg,#2563ebbf,#06b6d42e)}.nav-icon{text-align:center;width:20px;font-size:17px}.sidebar-logout{color:var(--sidebar-muted);text-align:left;background:0 0;border:0;margin-top:auto;padding:11px 12px;font-weight:600}.sidebar-logout:hover{color:#fff}.dashboard-content{box-sizing:border-box;flex:1;min-width:0;padding:44px clamp(24px,5vw,72px)}.page-header{justify-content:space-between;align-items:center;max-width:1160px;margin:0 auto 34px;display:flex}.eyebrow{color:var(--accent);text-transform:uppercase;letter-spacing:.1em;margin:0 0 7px;font-size:10px;font-weight:800}.avatar{color:#fff;background:linear-gradient(135deg, var(--accent), var(--accent-2));border-radius:50%;place-items:center;width:38px;height:38px;font-weight:800;display:grid}.page-body,.dashboard-content>div:not(.page-header){max-width:1160px;margin:0 auto}.success-alert,.error-alert{box-shadow:var(--shadow);border-radius:10px;align-items:flex-start;gap:14px;display:flex;border:0!important;padding:18px!important}.success-alert{color:#155e75;background:#ecfeff}.success-alert p,.error-alert p{margin-top:4px}.alert-icon{color:#fff;background:#0ea5e9;border-radius:50%;place-items:center;width:24px;height:24px;font-weight:800;display:grid}.error-alert{color:#be123c;background:#fff1f2}.dashboard-content h2{margin-bottom:18px}.dashboard-content fieldset{box-shadow:var(--shadow);background:#fff;border-radius:10px;border:1px solid var(--border)!important;padding:20px!important}.dashboard-content section{box-shadow:var(--shadow);background:#fff;border-radius:10px;border:1px solid var(--border)!important;padding:24px!important}.dashboard-content legend{color:var(--text-h);padding:0 6px;font-weight:750}.dashboard-content li,.dashboard-content form{border-radius:10px}.dashboard-content li{box-shadow:var(--shadow);border:1px solid var(--border)!important;background:#fff!important}.dashboard-content th{color:#475569;text-transform:uppercase;letter-spacing:.04em;font-size:12px}.dashboard-content td,.dashboard-content th{border-color:var(--border)!important}.dashboard-content button:disabled{opacity:.55;cursor:not-allowed;transform:none!important}.dashboard-content table{border-collapse:collapse;background:#fff;border-radius:10px;width:100%;overflow:hidden}.knowledge-page{gap:20px;display:grid}.knowledge-intro{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:4px;display:flex}.knowledge-intro h2{margin:0 0 5px}.knowledge-subtitle,.card-heading p{color:var(--text);font-size:13px}.knowledge-count{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:750}.knowledge-alert{margin-bottom:0}.knowledge-card{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:10px}.knowledge-form{flex-direction:column;gap:16px;padding:24px;display:flex}.card-heading{align-items:center;gap:12px;display:flex}.card-heading h3{color:var(--text-h);margin:0 0 4px;font-size:17px}.card-icon{width:34px;height:34px;color:var(--accent);background:#eff6ff;border-radius:8px;place-items:center;font-size:22px;font-weight:500;display:grid}.knowledge-form textarea{resize:vertical;min-height:118px!important}.knowledge-form textarea:focus,.inline-edit textarea:focus{outline:3px solid #2563eb21;border-color:var(--accent)!important}.knowledge-submit{width:100%}.entries-card{overflow:hidden}.entries-heading{padding:24px 24px 18px}.knowledge-table-wrap{overflow-x:auto}.knowledge-table{min-width:620px;box-shadow:none!important;border-radius:0!important}.knowledge-table thead{background:#4776e6}.knowledge-table th{text-align:left;letter-spacing:.08em;padding:13px 20px;font-size:11px;color:#fff!important;border:0!important}.knowledge-table th:first-child{width:100px}.knowledge-table th:last-child{width:190px}.knowledge-table tbody tr{transition:background .18s}.knowledge-table tbody tr:hover{background:#f8fbff}.knowledge-table td{vertical-align:top;padding:18px 20px;border-bottom:1px solid #f1f5f9!important}.knowledge-table tbody tr:last-child td{border-bottom:0!important}.entry-number{color:#64748b;font-variant-numeric:tabular-nums;font-weight:700}.content-preview{grid-template-columns:20px 1fr;align-items:start;gap:9px;display:grid}.content-preview p{white-space:pre-wrap;overflow-wrap:anywhere;color:#334155;margin:0;line-height:1.55}.document-icon{color:var(--accent);font-size:17px;line-height:1.3}.metadata-text{grid-column:2;font-size:12px;color:#94a3b8!important;margin-top:7px!important}.entry-actions{text-align:right;white-space:nowrap}.entry-actions button,.inline-actions button{margin-left:7px;font-size:12px;padding:8px 12px!important}.edit-button{background:linear-gradient(110deg,#2563eb,#06b6d4)!important}.delete-button{background:linear-gradient(110deg,#f97316,#ef4444)!important}.cancel-button{color:#334155!important;box-shadow:none!important;background:#e2e8f0!important}.inline-edit{gap:10px;display:grid}.inline-edit textarea{min-height:90px!important}.inline-actions{justify-content:flex-start;display:flex}.empty-state{color:#64748b;text-align:center;justify-items:center;gap:7px;padding:42px 24px 48px;display:grid}.empty-state strong{color:var(--text-h)}.empty-state p{font-size:13px}.empty-icon{color:#93c5fd;font-size:28px}.import-card .card-icon{color:#4f46e5;background:#eef2ff}.import-card form,.import-preview{flex-direction:column;gap:14px;display:flex}.import-preview-hint{color:var(--text);font-size:13px}.import-chunk-list{flex-direction:column;gap:10px;margin:0;padding-left:26px;list-style:decimal;display:flex}.import-chunk-list li{box-shadow:none!important;background:0 0!important;border:0!important}.import-chunk-row{grid-template-columns:1fr auto;align-items:start;gap:10px;display:grid}.import-chunk-row textarea{resize:vertical;min-height:3rem!important}.import-chunk-remove{align-self:start;font-size:12px;padding:8px 12px!important}.import-preview-actions{flex-wrap:wrap;gap:10px;display:flex}.import-preview-actions .knowledge-submit{width:auto}.preview-page{gap:18px;display:grid}.preview-meta{align-items:flex-start}.preview-chat{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:12px;flex-direction:column;display:flex;overflow:hidden}.preview-thread{flex-direction:column;min-height:260px;max-height:58vh;padding:20px;display:flex;overflow-y:auto}.preview-empty{max-width:340px;color:var(--text);text-align:center;margin:auto;font-size:13px;line-height:1.6}.preview-typing{letter-spacing:3px;opacity:.6}.preview-composer{border-top:1px solid var(--border);background:#f8fafc;gap:10px;padding:14px 16px;display:flex}.preview-composer textarea{resize:none;flex:1;min-height:0!important;margin-top:0!important}.preview-session-id{color:#94a3b8;font-size:12px}.preview-session-id code{padding:3px 6px;font-size:12px}.bookings-page{gap:20px;display:grid}.bookings-intro{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:4px;display:flex}.bookings-intro h2{margin:0 0 5px}.bookings-subtitle{color:var(--text);font-size:13px}.booking-count{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:750}.bookings-card{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:12px;overflow:hidden}.bookings-table-wrap{overflow-x:auto}.bookings-table{min-width:780px;box-shadow:none!important;border-radius:0!important}.bookings-table thead{background:#4776e6}.bookings-table th{text-align:left;letter-spacing:.08em;padding:14px 20px;font-size:11px;color:#fff!important;border:0!important}.bookings-table th:first-child{width:115px}.bookings-table th:nth-child(2){width:28%}.bookings-table th:nth-child(3){width:24%}.bookings-table th:nth-child(4){width:125px}.bookings-table th:last-child{width:220px}.bookings-table tbody tr{transition:background .18s}.bookings-table tbody tr:hover{background:#f8fbff}.bookings-table tbody tr.pending-booking{background:#fffbeb}.bookings-table tbody tr.pending-booking:hover{background:#fef3c7}.bookings-table td{vertical-align:middle;padding:18px 20px;border-bottom:1px solid #f1f5f9!important}.bookings-table tbody tr:last-child td{border-bottom:0!important}.customer-cell{display:table-cell}.customer-cell strong,.customer-cell span{display:block}.customer-cell strong{color:var(--text-h)}.customer-cell span{color:#94a3b8;margin-top:4px;font-size:12px}.datetime-cell{color:#475569;line-height:1.45}.party-cell{color:#334155;white-space:nowrap;font-weight:650}.booking-actions{text-align:right;white-space:nowrap}.booking-actions button,.booking-edit-actions button{margin-left:6px;font-size:12px;padding:8px 11px!important}.edit-action{background:linear-gradient(90deg,#06b6d4,#0ea5e9)!important}.approve-action{background:linear-gradient(90deg,#10b981,#059669)!important}.reject-action{background:linear-gradient(90deg,#f97316,#ef4444)!important}.secondary-action{color:#334155!important;box-shadow:none!important;background:#e2e8f0!important}.booking-edit-form{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.booking-edit-form label:nth-child(3){grid-column:1/2}.booking-edit-actions{grid-column:1/-1}.empty-bookings{color:#64748b;text-align:center;justify-items:center;gap:7px;padding:44px 24px 48px;display:grid}.empty-bookings strong{color:var(--text-h)}.empty-bookings p{font-size:13px}.bookings-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.bookings-tabs{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:9px;gap:4px;padding:4px;display:inline-flex}.timeframe-tab{font-size:13px;font-weight:650;color:#475569!important;box-shadow:none!important;background:0 0!important;border-radius:6px!important;padding:8px 16px!important}.timeframe-tab:hover{filter:none!important;color:var(--text-h)!important;transform:none!important}.timeframe-tab.active{background:linear-gradient(110deg, var(--accent), var(--accent-2))!important;color:#fff!important}.timeframe-tab.active:hover{color:#fff!important}.bookings-search{flex:220px;max-width:360px;margin-top:0!important}.customer-cell .customer-name-line{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.customer-cell .booking-ref{color:var(--accent);font-variant-numeric:tabular-nums;margin-top:0;font-size:12px;font-weight:700}.conversation-list{gap:12px;display:grid}.conversation-card{border:1px solid var(--border);box-shadow:var(--shadow);text-align:left;background:#fff;border-radius:10px;gap:10px;padding:18px 20px;transition:border-color .16s,transform .16s;display:grid}.conversation-card:hover{border-color:#bfdbfe;transform:translateY(-1px)}.conversation-card:focus-visible{outline-offset:2px;outline:3px solid #2563eb2e}.conversation-card-top{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.conversation-preview-text{color:#334155;overflow-wrap:anywhere;margin:0;line-height:1.5}.conversation-preview-text.muted{color:#94a3b8;font-style:italic}.conversation-meta{color:#94a3b8;flex-wrap:wrap;gap:4px 18px;font-size:12px;display:flex}.conversation-meta strong{color:#475569;font-weight:650}.booking-badge{color:#166534;white-space:nowrap;background:#dcfce7;border:1px solid #86efac;border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:12px;font-weight:700;display:inline-flex}.booking-badge.rejected{color:#be123c;background:#ffe4e6;border-color:#fda4af}.booking-badge.pending{color:#92400e;background:#fef3c7;border-color:#fcd34d}.conversation-thread{gap:20px;display:grid}.thread-back{justify-self:start;color:#334155!important;box-shadow:none!important;background:#e2e8f0!important}.thread-linked{gap:6px;margin-top:8px;display:grid}.thread-linked-item{flex-wrap:wrap;align-items:baseline;gap:4px 12px;display:flex}.thread-linked-item strong{color:var(--text-h)}.message-list{gap:16px;display:grid}.message-row{gap:5px;max-width:78%;display:grid}.message-row.user{justify-self:end;justify-items:end}.message-row.assistant{justify-self:start;justify-items:start}.message-bubble{white-space:pre-wrap;overflow-wrap:anywhere;border-radius:12px;padding:11px 14px;line-height:1.5}.message-row.user .message-bubble{background:linear-gradient(110deg, var(--accent), var(--accent-2));color:#fff;border-bottom-right-radius:4px}.message-row.assistant .message-bubble{color:#334155;background:#f1f5f9;border-bottom-left-radius:4px}.message-meta{color:#94a3b8;text-transform:uppercase;letter-spacing:.04em;font-size:11px}.handoff-conn{border:1px solid var(--border);white-space:nowrap;background:#fff;border-radius:999px;align-items:center;gap:8px;padding:6px 12px;font-size:12px;font-weight:750;display:inline-flex}.handoff-conn-dot{background:#94a3b8;border-radius:50%;flex:none;width:8px;height:8px}.handoff-conn.connected{color:#166534;background:#dcfce7;border-color:#86efac}.handoff-conn.connected .handoff-conn-dot{background:#16a34a;box-shadow:0 0 0 3px #16a34a2e}.handoff-conn.connecting{color:#92400e;background:#fef3c7;border-color:#fcd34d}.handoff-conn.connecting .handoff-conn-dot{background:#d97706}.handoff-conn.error,.handoff-conn.closed{color:#be123c;background:#ffe4e6;border-color:#fda4af}.handoff-conn.error .handoff-conn-dot,.handoff-conn.closed .handoff-conn-dot{background:#e11d48}.handoff-reconnect{margin-left:4px;color:#be123c!important;box-shadow:none!important;background:#fff!important;border:1px solid #fda4af!important;border-radius:6px!important;padding:3px 9px!important;font-size:11px!important}.handoff-card{cursor:default}.handoff-card:hover{border-color:var(--border);transform:none}.handoff-badges{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:8px;display:flex}.handoff-badges .handoff-mode{margin-bottom:0}.handoff-reason-badge{color:#334155;text-overflow:ellipsis;white-space:nowrap;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:999px;max-width:100%;padding:3px 9px;font-size:11px;font-weight:700;display:inline-block;overflow:hidden}.handoff-reason-banner{color:#1e3a8a;background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding:12px 16px;display:flex}.handoff-reason-banner-label{text-transform:uppercase;letter-spacing:.06em;opacity:.75;font-size:11px;font-weight:800}.handoff-reason-banner strong{color:#1e3a8a;font-size:15px}.handoff-mode{text-transform:uppercase;letter-spacing:.05em;border-radius:999px;margin-bottom:8px;padding:3px 9px;font-size:11px;font-weight:800;display:inline-block}.handoff-mode.needs_attention{color:#92400e;background:#fef3c7;border:1px solid #fcd34d}.handoff-mode.human{color:#3730a3;background:#e0e7ff;border:1px solid #c7d2fe}.handoff-actions{flex:none;align-items:flex-start;gap:8px;display:flex}.handoff-actions button{font-size:12px;padding:8px 12px!important}.handoff-linked{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.message-row.staff{justify-self:start;justify-items:start}.message-row.staff .message-bubble{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0;border-bottom-left-radius:4px}.message-row.staff .message-meta{color:#059669}.handoff-reply{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:10px;gap:8px;padding:18px 20px;display:grid}.handoff-reply textarea{resize:vertical;min-height:68px!important}.handoff-reply-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.handoff-reply-hint{color:#64748b;font-size:12px}@media (width<=720px){.dashboard-shell{display:block}.sidebar{width:100%;padding:16px}.sidebar-brand{padding-bottom:18px}.sidebar-caption,.sidebar-logout{display:none}.sidebar-nav{display:flex;overflow-x:auto}.nav-item{white-space:nowrap;flex:none;width:auto}.dashboard-content{padding:28px 16px}.page-header{margin-bottom:24px}.page-header h1{font-size:25px}.dashboard-content table{white-space:nowrap;display:block;overflow-x:auto}.knowledge-intro{align-items:flex-start}.knowledge-count{margin-top:4px}.knowledge-form,.entries-heading{padding:20px}.bookings-intro{align-items:flex-start}.booking-count{margin-top:4px}.booking-edit-form{grid-template-columns:1fr}.booking-edit-form label:nth-child(3),.booking-edit-actions{grid-column:auto}.conversation-card-top{flex-direction:column}.message-row{max-width:92%}}
