:root{--brand:#1f5f4a;--accent:#c8963e;--bg:#f7f5f0;--surface:#fff;--text:#1d1d1b;--muted:#6b6a66;--border:#e3dfd6;--font:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#151614;--surface:#1f201d;--text:#ecebe6;--muted:#a3a29c;--border:#34352f;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font:16px/1.45 var(--font)}.shell{background:var(--bg);max-width:720px;height:100%;color:var(--text);font-family:var(--font);flex-direction:column;margin:0 auto;display:flex}.shell.embedded{max-width:none}.bar{background:var(--brand);color:#fff;align-items:center;gap:12px;padding:12px 16px;display:flex}.logo{object-fit:contain;background:#fff;border-radius:8px;width:36px;height:36px}.logo-dot{background:var(--accent);border-radius:50%;flex:none;width:12px;height:12px}.titles{flex:1;min-width:0}.titles h1{white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:1.05rem;font-weight:600;overflow:hidden}.subtitle{opacity:.85;font-size:.8rem}.ghost{color:inherit;font:inherit;cursor:pointer;background:0 0;border:1px solid #ffffff80;border-radius:999px;padding:4px 12px;font-size:.85rem}.ghost.icon{border:0;padding:0 6px;font-size:1.4rem;line-height:1}.log{flex-direction:column;flex:1;gap:10px;padding:16px;display:flex;overflow-y:auto}.bubble{overflow-wrap:anywhere;border-radius:16px;max-width:85%;padding:10px 14px}.bubble p{margin:0}.bubble p+p{margin-top:.4em}.bubble.assistant{background:var(--surface);border:1px solid var(--border);border-bottom-left-radius:4px;align-self:flex-start}.bubble.user{background:var(--brand);color:#fff;border-bottom-right-radius:4px;align-self:flex-end}.bubble.error{color:var(--muted);border:1px dashed var(--border);background:0 0;align-self:flex-start}.bubble.thinking{color:var(--muted)}.bubble a{color:inherit;text-underline-offset:2px;text-decoration:underline}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1px solid var(--brand);color:var(--brand);background:var(--surface);font:inherit;cursor:pointer;border-radius:999px;padding:6px 12px;font-size:.9rem}.chip:hover{background:var(--brand);color:#fff}.composer{border-top:1px solid var(--border);background:var(--surface);gap:8px;padding:12px 16px;display:flex}.composer input{border:1px solid var(--border);background:var(--bg);min-width:0;color:var(--text);font:inherit;border-radius:999px;flex:1;padding:10px 14px}.composer input:focus-visible,button:focus-visible,.chip:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.composer button{background:var(--brand);color:#fff;font:inherit;cursor:pointer;border:0;border-radius:999px;padding:10px 18px;font-weight:600}.composer button:disabled{opacity:.5;cursor:default}.foot{color:var(--muted);background:var(--surface);flex-wrap:wrap;align-items:center;gap:8px 16px;padding:8px 16px 12px;font-size:.75rem;display:flex}.book{color:var(--brand);font-size:.85rem;font-weight:600}.notice{color:var(--muted);text-align:center;margin:32px 16px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.linklike{cursor:pointer;font:inherit;background:0 0;border:0;padding:0;text-decoration:underline}.booking{flex-direction:column;flex:1;gap:12px;padding:16px;display:flex;overflow-y:auto}.booking h2{margin:0;font-size:1.1rem}.booking label{color:var(--muted);flex-direction:column;gap:4px;font-size:.85rem;display:flex}.booking input{border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;border-radius:10px;padding:8px 12px}.booking .fields{grid-template-columns:1fr 1fr;gap:12px;display:grid}.booking .times{border:0;flex-wrap:wrap;gap:8px;margin:0;padding:0;display:flex}.booking .times legend{color:var(--muted);margin-bottom:4px;font-size:.85rem}.chip.selected{background:var(--brand);color:#fff}.booking .actions{flex-wrap:wrap;gap:8px;display:flex}.booking .primary{background:var(--brand);color:#fff;font:inherit;cursor:pointer;border:0;border-radius:999px;padding:10px 18px;font-weight:600}.booking .primary:disabled{opacity:.5;cursor:default}.hint{color:var(--muted);margin:0;font-size:.8rem}.hint.error{color:#b3261e}.booked{background:var(--surface);border:1px solid var(--border);border-radius:12px;margin:0;padding:12px 14px}[hidden]{display:none!important}.consent{border-top:1px solid var(--border);background:var(--surface);padding:14px 16px;font-size:.9rem}.consent h2{margin:0 0 6px;font-size:1rem}.consent p{margin:0 0 12px}.consent a,.foot a{color:var(--brand)}.consent .row{flex-wrap:wrap;gap:8px;display:flex}.consent .primary{background:var(--brand);color:#fff;font:inherit;cursor:pointer;border:0;border-radius:999px;padding:10px 18px;font-weight:600}.consent .ghost{color:var(--text);border-color:var(--border);padding:10px 16px}.shell.page{overflow-y:auto}.privacy{max-width:680px;margin:0 auto;padding:24px 16px 40px;line-height:1.55}.privacy h1{margin:0 0 16px;font-size:1.4rem}.privacy a{color:var(--brand);overflow-wrap:anywhere}.privacy .muted{color:var(--muted);font-size:.8rem}.directory{flex-direction:column;gap:8px;padding:0;list-style:none;display:flex}.directory a{border:1px solid var(--border);background:var(--surface);color:var(--brand);border-radius:12px;padding:12px 16px;font-weight:600;text-decoration:none;display:block}
