:root{--accent: #4f46e5;--bg: #f6f7fb;--panel: #ffffff;--ink: #11141a;--muted: #6b7280;--line: #e7e8ee;--radius: 16px;--shadow: 0 1px 2px rgba(16, 20, 30, .04), 0 8px 24px rgba(16, 20, 30, .06);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--ink)}button{font-family:inherit;cursor:pointer}.app{display:flex;flex-direction:column;height:100vh}.header{display:flex;align-items:center;gap:16px;padding:12px 20px;background:var(--panel);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:18px}.brand .logo{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--accent),#8b5cf6);font-size:16px}.brand small{color:var(--muted);font-weight:500}.header .spacer{flex:1}.header .biz-pill{display:flex;align-items:center;gap:8px;padding:6px 12px;background:color-mix(in srgb,var(--accent) 10%,white);border-radius:999px;font-weight:600;color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 20%,white)}.lang-toggle{display:inline-flex;border:1px solid var(--line);border-radius:10px;overflow:hidden}.lang-toggle button{border:0;background:#fff;padding:7px 12px;font-weight:600;color:var(--muted)}.lang-toggle button[aria-pressed=true]{background:var(--accent);color:#fff}.ghost-btn{border:1px solid var(--line);background:#fff;border-radius:10px;padding:7px 12px;font-weight:600;color:var(--ink)}.ghost-btn:hover{border-color:var(--accent);color:var(--accent)}.layout{flex:1;display:grid;grid-template-columns:264px 1fr 320px;min-height:0}.sidebar{border-right:1px solid var(--line);background:var(--panel);padding:16px;overflow-y:auto}.sidebar h3{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:6px 6px 12px}.biz-list{display:flex;flex-direction:column;gap:6px}.biz-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:12px;border:1px solid transparent;background:transparent;text-align:left;width:100%}.biz-item:hover{background:var(--bg)}.biz-item[aria-pressed=true]{background:color-mix(in srgb,var(--accent) 10%,white);border-color:color-mix(in srgb,var(--accent) 22%,white)}.biz-item .emoji{font-size:22px;width:34px;height:34px;display:grid;place-items:center;background:var(--bg);border-radius:10px}.biz-item .meta{display:flex;flex-direction:column;line-height:1.25}.biz-item .meta b{font-size:14px}.biz-item .meta span{font-size:12px;color:var(--muted)}.sidebar .note{margin-top:18px;padding:12px;background:var(--bg);border-radius:12px;font-size:12.5px;color:var(--muted);line-height:1.5}.chat{display:flex;flex-direction:column;min-height:0;background:var(--bg)}.chat-head{display:flex;align-items:center;gap:12px;padding:12px 24px;background:var(--panel);border-bottom:1px solid var(--line)}.chat-head .avatar{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-size:20px;color:#fff;box-shadow:var(--shadow)}.chat-head .who{display:flex;flex-direction:column;line-height:1.25}.chat-head .who b{font-size:15px}.chat-head .who .status{font-size:12.5px;color:var(--muted);display:inline-flex;align-items:center;gap:6px}.chat-head .who .dot{width:8px;height:8px;border-radius:50%;background:#22c55e;display:inline-block}.chat-head .who .dot.busy{background:#f59e0b;animation:blink 1s infinite}.chat-head .who-biz{margin-left:auto;font-size:12.5px;color:var(--muted)}.messages{flex:1;overflow-y:auto;padding:24px clamp(16px,6vw,80px);display:flex;flex-direction:column;gap:10px}.row{display:flex}.row.user{justify-content:flex-end}.bubble{max-width:min(560px,80%);padding:11px 14px;border-radius:16px;font-size:15px;line-height:1.5;white-space:pre-wrap;word-wrap:break-word;box-shadow:var(--shadow)}.row.bot .bubble{background:#fff;border-bottom-left-radius:5px}.row.user .bubble{background:var(--accent);color:#fff;border-bottom-right-radius:5px}.row.bot .bubble.avatar-pad{position:relative}.quick{display:flex;flex-wrap:wrap;gap:8px;padding:4px clamp(16px,6vw,80px) 8px}.chip{border:1px solid color-mix(in srgb,var(--accent) 30%,white);background:#fff;color:var(--accent);padding:8px 14px;border-radius:999px;font-size:13.5px;font-weight:600}.chip:hover{background:color-mix(in srgb,var(--accent) 10%,white)}.insight{display:flex;align-items:center;gap:10px;padding:6px clamp(16px,6vw,80px);font-size:12px;color:var(--muted)}.insight .tag{background:#fff;border:1px solid var(--line);border-radius:7px;padding:2px 8px;font-weight:600;color:var(--ink)}.insight .tag b{color:var(--accent)}.composer{display:flex;gap:10px;padding:14px clamp(16px,6vw,80px) 20px;border-top:1px solid var(--line);background:var(--panel)}.composer input{flex:1;border:1px solid var(--line);border-radius:12px;padding:13px 16px;font-size:15px;outline:none}.composer input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,white)}.composer .send{border:0;background:var(--accent);color:#fff;border-radius:12px;padding:0 20px;font-weight:700;font-size:15px}.composer .send:disabled{opacity:.5}.card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:4px;box-shadow:var(--shadow);max-width:min(560px,80%);overflow:hidden}.svc-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border-radius:10px}.svc-row+.svc-row{border-top:1px solid var(--line)}.svc-row .svc-name{font-weight:600;font-size:14.5px}.svc-row .svc-sub{font-size:12.5px;color:var(--muted)}.svc-row .svc-price{font-weight:700;white-space:nowrap;color:var(--accent)}.slots{display:flex;flex-wrap:wrap;gap:8px;padding:10px}.slot{border:1px solid color-mix(in srgb,var(--accent) 30%,white);background:#fff;color:var(--accent);font-weight:700;padding:9px 14px;border-radius:10px;font-size:14px}.slot:hover{background:var(--accent);color:#fff}.confirm-card{padding:16px}.confirm-card .ok{display:flex;align-items:center;gap:8px;font-weight:700;color:#16a34a;margin-bottom:10px}.confirm-card .code{font-size:22px;font-weight:800;letter-spacing:.06em;color:var(--ink)}.confirm-card .lines{margin-top:10px;font-size:14px;color:var(--ink);line-height:1.7}.confirm-card .lines .k{color:var(--muted)}.contact-card{padding:14px 16px;font-size:14px;line-height:1.7}.bookings{border-left:1px solid var(--line);background:var(--panel);padding:16px;overflow-y:auto}.bookings .head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.bookings .head h3{margin:0;font-size:14px}.bookings .count{background:var(--accent);color:#fff;border-radius:999px;font-size:12px;font-weight:700;padding:2px 9px}.booking{border:1px solid var(--line);border-radius:12px;padding:12px;margin-bottom:10px}.booking .bk-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.booking .bk-code{font-weight:800;letter-spacing:.04em}.booking .bk-svc{font-weight:600;font-size:14px}.booking .bk-meta{font-size:12.5px;color:var(--muted);line-height:1.6;margin-top:4px}.bookings .empty{color:var(--muted);font-size:13px;line-height:1.6;padding:10px;text-align:center}.pill-status{font-size:11px;font-weight:700;color:#16a34a;background:#dcfce7;padding:2px 8px;border-radius:999px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#10141e73;display:grid;place-items:center;padding:24px;z-index:50}.modal{background:#fff;border-radius:18px;max-width:720px;width:100%;max-height:86vh;overflow-y:auto;box-shadow:var(--shadow)}.modal .m-head{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid var(--line);position:sticky;top:0;background:#fff}.modal .m-head h2{margin:0;font-size:18px}.modal .m-body{padding:22px;line-height:1.65;font-size:14.5px}.modal .m-body h4{margin:18px 0 6px}.modal .m-body code{background:var(--bg);padding:1px 6px;border-radius:6px;font-size:13px}.modal .m-body ul{margin:6px 0;padding-left:20px}.modal .m-body li{margin:3px 0}.modal .close{border:0;background:var(--bg);width:32px;height:32px;border-radius:8px;font-size:18px}.insight .tag.engine{border-color:color-mix(in srgb,var(--accent) 30%,white);color:var(--accent)}.composer input:disabled{background:var(--bg);cursor:not-allowed}.bubble.typing{display:inline-flex;gap:5px;align-items:center;padding:14px}.bubble.typing span{width:7px;height:7px;border-radius:50%;background:var(--muted);animation:blink 1.2s infinite ease-in-out}.bubble.typing span:nth-child(2){animation-delay:.2s}.bubble.typing span:nth-child(3){animation-delay:.4s}@keyframes blink{0%,80%,to{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}.ghost-btn.accent{background:var(--accent);color:#fff;border-color:var(--accent)}.ghost-btn.accent:hover{color:#fff;filter:brightness(1.06);border-color:var(--accent)}.guide-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;pointer-events:auto}.guide-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f121c9e}.guide-hole{position:fixed;border-radius:14px;box-shadow:0 0 0 9999px #0f121c9e;transition:all .25s ease;pointer-events:none}.guide-card{position:fixed;z-index:61;background:#fff;border-radius:16px;box-shadow:0 16px 50px #00000059;padding:20px;max-height:calc(100vh - 28px);overflow-y:auto;transition:left .22s ease,top .22s ease}.guide-card h3{margin:8px 0 10px;font-size:18px;line-height:1.3}.guide-card p{margin:0 0 16px;font-size:14px;line-height:1.6;color:#374151}.guide-step-n{font-size:11px;font-weight:800;color:var(--accent);letter-spacing:.05em;text-transform:uppercase}.guide-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.guide-actions .guide-skip{background:none;border:0;color:var(--muted);font-size:13px;padding:6px;cursor:pointer}.guide-nav{display:flex;align-items:center;gap:8px}.guide-actions .guide-back{background:#fff;border:1px solid var(--line);border-radius:9px;padding:9px 14px;font-weight:600;color:var(--ink)}.guide-actions .guide-next{background:var(--accent);color:#fff;border:0;border-radius:9px;padding:9px 16px;font-weight:700}.lbl-text{display:inline}@media (max-width: 1080px){.layout{grid-template-columns:232px 1fr}.bookings{display:none}}@media (max-width: 760px){.layout{display:flex;flex-direction:column}.sidebar{flex:0 0 auto;border-right:none;border-bottom:1px solid var(--line);padding:8px 10px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}.sidebar h3,.sidebar .note{display:none}.biz-list{flex-direction:row;gap:8px}.biz-item{flex:0 0 auto;width:auto;flex-direction:column;align-items:center;gap:3px;min-width:76px;padding:7px 9px}.biz-item .meta{align-items:center}.biz-item .meta span{display:none}.biz-item .meta b{font-size:11.5px;white-space:nowrap}.biz-item .emoji{width:28px;height:28px;font-size:17px;border-radius:8px}.chat{flex:1;min-height:0}.chat-head{padding:10px 14px}.chat-head .who-biz{display:none}.messages{padding:16px 14px;gap:9px}.bubble{max-width:88%;font-size:14.5px}.quick,.insight{padding-left:14px;padding-right:14px}.composer{padding:12px 14px 16px}.card{max-width:88%}.header{padding:8px 12px;gap:8px}.header .brand{font-size:17px}.brand small,.header .biz-pill{display:none}.header .ghost-btn{padding:7px 10px;font-size:12.5px}.lang-toggle button{padding:7px 10px}}@media (max-width: 430px){.lbl-text{display:none}.header .ghost-btn{padding:7px 9px;font-size:14px}.guide-card{padding:16px}}
