:root{--ink: #111317;--ink-hover: #2a2e35;--ground: #f7f7f4;--surface: #ffffff;--line: #e3e3de;--line-soft: #f0f0ec;--line-input: #d5d5cf;--muted: #4d525c;--subtle: #5a5f69;--lime: #c8f051;--lime-hover: #b8e33f;--blue: #2b5bff;--blue-hover: #1a44d6;--blue-tint: #eef2ff;--blue-focus: #dce5ff;--success: #1f7a45;--success-tint: #e3f5e9;--warning: #8a5a00;--warning-tint: #fff4d6;--danger: #b42318;--danger-tint: #fdecec;--neutral-tint: #f0f0ec;--chat-bg: #f3f5f8;--side-bg: #111317;--side-raised: #1a1d23;--side-line: #2e323b;--side-text: #d4d7dd;--side-muted: #a3a8b3;--font-display: Unbounded, sans-serif;--font-body: Manrope, system-ui, sans-serif}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;background:var(--ground);color:var(--ink);font-family:var(--font-body);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:var(--blue)}a:hover{color:var(--blue-hover)}h1,h2,h3,p{margin:0}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.page{min-width:0;padding:28px clamp(16px,3vw,40px) 48px;display:flex;flex-direction:column;gap:20px}.page-head{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;justify-content:space-between}.page-title{font-family:var(--font-display);font-weight:600;font-size:26px;letter-spacing:-.03em;line-height:1.2}.page-lead{color:var(--muted)}.eyebrow{font-size:14px;color:var(--subtle);font-weight:600}.muted{color:var(--muted)}.subtle{color:var(--subtle)}.small{font-size:13px}.card{background:var(--surface);border:1px solid var(--line);border-radius:20px;min-width:0}.card-pad{padding:20px}.card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:18px 20px;border-bottom:1px solid #edede8}.card-title{font-size:17px;font-weight:700}.row-wrap{display:flex;flex-wrap:wrap;gap:20px;align-items:flex-start}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 18px;border-radius:12px;border:0;background:var(--ink);color:#fff;font-weight:700;text-decoration:none;cursor:pointer;white-space:nowrap;transition:background-color .15s}.btn:hover{background:var(--ink-hover);color:#fff}.btn:disabled{background:var(--line);color:#6b707a;cursor:default}.btn svg{flex:none}.btn-lg{height:52px;border-radius:14px;font-size:16px}.btn-sm{height:40px;padding:0 14px;border-radius:10px;font-size:14px}.btn-xs{height:36px;padding:0 14px;border-radius:10px;font-size:14px}.btn-accent{background:var(--lime);color:var(--ink)}.btn-accent:hover{background:var(--lime-hover);color:var(--ink)}.btn-outline{background:transparent;color:var(--ink);border:1.5px solid var(--ink)}.btn-outline:hover{background:var(--ground);color:var(--ink)}.btn-light{background:var(--surface);color:var(--ink);border:1.5px solid var(--line);font-weight:600}.btn-light:hover{background:var(--ground);color:var(--ink)}.btn-ghost{background:transparent;color:var(--muted);font-weight:600}.btn-ghost:hover{background:var(--neutral-tint);color:var(--ink)}.btn-danger{background:var(--danger-tint);color:var(--danger)}.btn-danger:hover{background:#fbdcdc;color:var(--danger)}.btn-danger-text{background:transparent;color:var(--danger)}.btn-danger-text:hover{background:var(--danger-tint);color:var(--danger)}.icon-btn{width:44px;height:44px;padding:0;border-radius:12px;border:1.5px solid var(--line);background:var(--surface);color:var(--ink);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.icon-btn:hover{background:var(--ground)}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field>label,.field .label{font-size:14px;font-weight:600}.hint{font-size:13px;color:var(--subtle)}.error-text{font-size:13px;color:var(--danger)}.input,.select,.textarea{width:100%;height:48px;padding:0 14px;border-radius:12px;border:1.5px solid var(--line-input);background:var(--surface);color:var(--ink)}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-focus)}.input.invalid,.select.invalid,.textarea.invalid{border-color:var(--danger)}.input:disabled,.select:disabled,.textarea:disabled{background:var(--ground);color:var(--subtle)}.input-sm{height:40px;border-radius:10px;padding:0 10px}.input-soft{height:44px;border-color:var(--line);background:var(--ground)}.textarea{height:auto;padding:12px 14px;resize:vertical;line-height:1.55}.select{appearance:none;padding-right:36px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%235A5F69' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}.alert{padding:12px 14px;border-radius:12px;font-size:14px;font-weight:600}.alert-danger{background:var(--danger-tint);color:var(--danger)}.alert-warning{background:var(--warning-tint);color:#5c3d00}.alert-info{background:var(--blue-tint);color:#1e3a8a}.pill{display:inline-flex;align-items:center;flex:none;font-size:12px;font-weight:700;padding:4px 10px;border-radius:999px;white-space:nowrap;line-height:1.3}.pill-confirmed,.pill-success{background:var(--success-tint);color:var(--success)}.pill-pending,.pill-warning{background:var(--warning-tint);color:var(--warning)}.pill-completed,.pill-neutral{background:var(--neutral-tint);color:var(--muted)}.pill-cancelled,.pill-no_show,.pill-danger{background:var(--danger-tint);color:var(--danger)}.pill-ai{background:var(--blue-tint);color:var(--blue)}.pill-human{background:var(--ink);color:var(--lime)}.chips{display:flex;gap:6px;flex-wrap:wrap}.chip{height:36px;padding:0 14px;border-radius:999px;border:1.5px solid var(--line);background:var(--surface);color:var(--ink);font-size:14px;font-weight:600;cursor:pointer}.chip.on{border-color:var(--ink);background:var(--ink);color:#fff;font-weight:700}.chip-sm{height:32px;padding:0 12px;font-size:13px}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);flex-wrap:wrap}.tab{height:48px;padding:0 14px;border:0;background:transparent;font-weight:700;color:var(--subtle);cursor:pointer;display:inline-flex;align-items:center;gap:8px;margin-bottom:-1px}.tab.on{color:var(--ink);box-shadow:inset 0 -3px 0 var(--ink)}.tab .count{font-size:12px;padding:1px 8px;border-radius:999px;background:#ecece7;color:var(--muted)}.tab.on .count{background:var(--ink);color:#fff}.segmented{display:flex;padding:4px;border-radius:12px;background:#ecece7}.segmented button{height:36px;padding:0 14px;border-radius:9px;border:0;background:transparent;color:var(--muted);font-weight:600;cursor:pointer}.segmented button.on{background:var(--surface);color:var(--ink);font-weight:700}.avatar{flex:none;width:40px;height:40px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-weight:700;text-transform:uppercase}.avatar-sm{width:32px;height:32px;font-size:14px}.avatar-lg{width:44px;height:44px}.plain-list{margin:0;padding:0;list-style:none}.list-item-btn{width:100%;display:flex;gap:12px;align-items:flex-start;padding:14px;border:0;border-bottom:1px solid var(--line-soft);background:var(--surface);color:var(--ink);text-align:left;cursor:pointer}.list-item-btn:hover{background:#fafaf8}.list-item-btn.current{background:var(--chat-bg);box-shadow:inset 3px 0 0 var(--ink)}.ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.empty{padding:48px 24px;border:1.5px dashed var(--line-input);border-radius:20px;text-align:center;display:flex;flex-direction:column;gap:6px;align-items:center}.empty strong{font-size:17px}.empty span{color:var(--subtle)}.empty-inline{padding:24px 20px;color:var(--subtle);text-align:center}.dl{margin:0;display:grid;grid-template-columns:110px 1fr;gap:10px 12px;font-size:14px}.dl dt{color:var(--subtle)}.dl dd{margin:0;font-weight:600;min-width:0}.skeleton{border-radius:12px;background:linear-gradient(90deg,#efefea,#f7f7f4,#efefea);background-size:200% 100%;animation:shimmer 1.2s infinite linear}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.dot{flex:none;width:8px;height:8px;border-radius:50%}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
