:root{--primary: #10b981;--primary-hover: #34d399;--primary-press: #059669;--primary-glow: rgba(16, 185, 129, .15);--primary-subtle: rgba(16, 185, 129, .08);--primary-line: rgba(16, 185, 129, .25);--bg: #08090a;--bg-elevated: #0c0e10;--surface: #101316;--surface-2: #14181c;--surface-hover: #181d22;--overlay: #1c2228;--border-subtle: rgba(255, 255, 255, .04);--border: rgba(255, 255, 255, .06);--border-strong: rgba(255, 255, 255, .1);--border-focus: rgba(16, 185, 129, .5);--text: #eef0f2;--text-secondary: #b2b9c1;--text-dim: #8b939b;--text-faint: #6b7480;--danger: #f43f5e;--danger-bg: rgba(244, 63, 94, .12);--success: #22c55e;--success-bg: rgba(34, 197, 94, .12);--warning: #f59e0b;--warning-bg: rgba(245, 158, 11, .12);--info: #38bdf8;--info-bg: rgba(56, 189, 248, .12);--r-sm: 6px;--r-md: 12px;--r-lg: 16px;--r-xl: 24px;--r-pill: 9999px;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .3);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .25);--shadow-md: 0 4px 16px rgba(0, 0, 0, .3), 0 1px 3px rgba(0, 0, 0, .2);--shadow-lg: 0 12px 40px rgba(0, 0, 0, .4), 0 4px 12px rgba(0, 0, 0, .2);--shadow-glow: 0 0 24px rgba(16, 185, 129, .15);--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 24px;--sp-6: 32px;--sp-7: 48px;--sp-8: 64px;--ease: cubic-bezier(.4, 0, .2, 1);--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--dur-fast: .12s;--dur: .18s;--dur-slow: .28s;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", "Fira Code", ui-monospace, monospace;color-scheme:dark}*{margin:0;padding:0;box-sizing:border-box}::selection{background:var(--primary-glow);color:var(--text)}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);font-size:14px;line-height:1.5;letter-spacing:-.006em;font-feature-settings:"cv02","cv03","cv04","cv11"}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--r-pill)}::-webkit-scrollbar-thumb:hover{background:var(--text-faint)}.app{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.carousel-section{width:100%;max-width:1200px;margin:4rem auto 0;padding:0 2rem}.carousel-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:1.5rem}.carousel-title{font-size:1.25rem;font-weight:700;color:var(--text);letter-spacing:-.02em}.carousel-count{font-size:.8rem;color:var(--text-dim)}.carousel-wrapper{position:relative;display:flex;align-items:center;gap:.5rem}.carousel-track{display:flex;gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;padding:.5rem 0;flex:1}.carousel-track::-webkit-scrollbar{display:none}.carousel-card{scroll-snap-align:start;flex-shrink:0;width:280px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:16px;padding:1.5rem;cursor:pointer;transition:transform .35s cubic-bezier(.22,1,.36,1),box-shadow .35s cubic-bezier(.22,1,.36,1),border-color .2s ease;display:flex;flex-direction:column;gap:.5rem;position:relative;overflow:hidden}.carousel-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--card-accent, var(--primary));opacity:0;transition:opacity .2s ease}.carousel-card:hover{transform:translateY(-6px);box-shadow:0 16px 48px #00000059;border-color:var(--card-accent, var(--primary))}.carousel-card:hover:before{opacity:1}.carousel-card-avatar{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.3rem;font-weight:700;color:#fff;margin-bottom:.5rem}.carousel-card-name{font-size:1.05rem;font-weight:600;color:var(--text);line-height:1.3}.carousel-card-tagline{font-size:.8rem;color:var(--text-dim);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.carousel-card-meta{font-size:.75rem;color:var(--text-dim);margin-top:.25rem}.carousel-card-services{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.5rem}.carousel-service-tag{font-size:.7rem;padding:.2rem .6rem;background:#ffffff0a;border:1px solid var(--border-subtle);border-radius:6px;color:var(--text-dim)}.carousel-card-cta{font-size:.8rem;font-weight:600;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border-subtle);transition:opacity .15s ease}.carousel-card:hover .carousel-card-cta{opacity:1}.carousel-arrow{flex-shrink:0;width:36px;height:36px;border-radius:50%;background:var(--bg-elevated);border:1px solid var(--border-subtle);color:var(--text-dim);font-size:1.25rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:5}.carousel-arrow:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.sidebar{background:var(--bg-elevated);border-right:1px solid var(--border);padding:var(--sp-5) var(--sp-4)}.sidebar h1{font-size:.95rem;font-weight:600;letter-spacing:-.02em;margin-bottom:var(--sp-6);color:var(--primary)}.sidebar nav{display:flex;flex-direction:column;gap:2px}.sidebar a{color:var(--text-dim);text-decoration:none;padding:var(--sp-2) var(--sp-3);border-radius:var(--r-sm);font-size:.85rem;font-weight:500;transition:color var(--dur) var(--ease),background var(--dur) var(--ease)}.sidebar a:hover{color:var(--text);background:#ffffff0a}.sidebar a.active{color:var(--primary);background:var(--primary-subtle)}.dash{display:grid;grid-template-columns:256px 1fr;min-height:100vh;background:var(--bg)}.dash-sidebar{background:var(--bg-elevated);border-right:1px solid var(--border);padding:var(--sp-5) var(--sp-3);display:flex;flex-direction:column;gap:2px}.ws-name{font-size:.9rem;font-weight:600;color:var(--text);letter-spacing:-.01em;padding:var(--sp-1) var(--sp-3);margin-bottom:2px}.ws-slug{font-size:.75rem;color:var(--text-faint);font-family:var(--font-mono);padding:0 var(--sp-3);margin-bottom:var(--sp-5);letter-spacing:0}.dash-nav-item{display:flex;align-items:center;gap:var(--sp-3);color:var(--text-dim);text-decoration:none;padding:var(--sp-2) var(--sp-3);border-radius:var(--r-sm);font-size:.85rem;font-weight:500;cursor:pointer;transition:color var(--dur) var(--ease),background var(--dur) var(--ease);-webkit-user-select:none;user-select:none}.dash-nav-item:hover{color:var(--text);background:#ffffff0a}.dash-nav-item.active{color:var(--primary);background:var(--primary-subtle);box-shadow:inset 0 0 0 1px var(--primary-line)}.dash-nav-item .icon{font-size:.95rem;width:18px;text-align:center}.dash-main{padding:var(--sp-7) var(--sp-7) var(--sp-8);overflow-y:auto;max-width:960px}.dash-main h2{font-size:1.5rem;font-weight:600;letter-spacing:-.03em;margin-bottom:var(--sp-5);color:var(--text)}.dash-main h3{font-size:.95rem;font-weight:600;letter-spacing:-.01em;margin-bottom:var(--sp-4);color:var(--text)}.card,.dash-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--sp-5);margin-bottom:var(--sp-5);box-shadow:var(--shadow-xs);transition:border-color var(--dur) var(--ease)}.dash-card:hover{border-color:var(--border-strong)}.grid{display:grid;gap:var(--sp-4)}.grid-2{grid-template-columns:1fr 1fr}.grid-3{grid-template-columns:1fr 1fr 1fr}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-4);margin-bottom:var(--sp-6)}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--sp-5);transition:border-color var(--dur) var(--ease),transform var(--dur-slow) var(--ease-out)}.stat-card:hover{border-color:var(--border-strong);transform:translateY(-2px)}.stat-num{font-size:2rem;font-weight:700;color:var(--primary);letter-spacing:-.04em;line-height:1.1;font-variant-numeric:tabular-nums}.stat-label{font-size:.72rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em;font-weight:600;margin-top:var(--sp-1)}.stat{text-align:center}.stat .num{font-size:2rem;font-weight:700;color:var(--primary);letter-spacing:-.04em}.stat .label{font-size:.72rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em;font-weight:600}table{width:100%;border-collapse:collapse;font-size:.85rem}th{text-align:left;color:var(--text-dim);padding:var(--sp-3) var(--sp-2);border-bottom:1px solid var(--border-strong);font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;font-weight:600}td{padding:var(--sp-3) var(--sp-2);border-bottom:1px solid var(--border);color:var(--text-secondary)}.badge,.badge-active,.badge-inactive{display:inline-flex;align-items:center;padding:2px var(--sp-2);border-radius:var(--r-sm);font-size:.72rem;font-weight:600;letter-spacing:.01em;line-height:1.5}.badge-confirmed{background:var(--success-bg);color:var(--success)}.badge-pending{background:var(--warning-bg);color:var(--warning)}.badge-cancelled{background:var(--danger-bg);color:var(--danger)}.badge-active{background:var(--primary-subtle);color:var(--primary);border:1px solid var(--primary-line);cursor:pointer;transition:opacity var(--dur) var(--ease)}.badge-active:hover{opacity:.85}.badge-inactive{background:#ffffff0a;color:var(--text-dim);border:1px solid var(--border);cursor:pointer;transition:opacity var(--dur) var(--ease)}.badge-inactive:hover{opacity:.85}.checklist-item{padding:var(--sp-2) 0;font-size:.85rem;color:var(--text-dim);transition:color var(--dur) var(--ease)}.checklist-done{color:var(--text-secondary)}.checklist-pending{color:var(--text-dim)}.landing{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(ellipse 80% 50% at 50% 0%,rgba(16,185,129,.06),transparent 60%),radial-gradient(ellipse 60% 40% at 50% 100%,rgba(16,185,129,.03),transparent 60%),var(--bg);padding:var(--sp-7)}.landing-content{max-width:620px;text-align:center;animation:fadeUp var(--dur-slow) var(--ease-out) both}.landing-brand{font-size:1rem;font-weight:600;letter-spacing:.15em;color:var(--primary);margin-bottom:var(--sp-7);text-transform:uppercase}.landing h1{font-size:clamp(2rem,5vw,3rem);font-weight:700;line-height:1.1;letter-spacing:-.04em;margin-bottom:var(--sp-4);color:var(--text)}.landing-highlight{background:linear-gradient(135deg,var(--primary),var(--primary-hover));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.landing-sub{font-size:1.1rem;color:var(--text-dim);margin-bottom:var(--sp-7);line-height:1.6;letter-spacing:-.01em}.landing-form{display:flex;flex-direction:column;gap:var(--sp-4);align-items:center}.landing-input{width:100%;padding:var(--sp-5);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-md);color:var(--text);font-size:1rem;line-height:1.6;letter-spacing:-.006em;outline:none;resize:none;font-family:inherit;transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease),background var(--dur) var(--ease)}.landing-input::placeholder{color:var(--text-faint)}.landing-input:focus{border-color:var(--border-focus);box-shadow:0 0 0 4px var(--primary-glow);background:var(--surface-2)}.landing-error{color:var(--danger);font-size:.85rem;animation:fadeUp var(--dur) var(--ease-out) both}.landing-btn{padding:var(--sp-4) var(--sp-7);background:var(--primary);color:#fff;border:none;border-radius:var(--r-md);font-size:1rem;font-weight:600;letter-spacing:-.01em;cursor:pointer;transition:background var(--dur) var(--ease),transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease);box-shadow:var(--shadow-sm),var(--shadow-glow)}.landing-btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:var(--shadow-sm)}.landing-btn:not(:disabled):hover{background:var(--primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md),var(--shadow-glow)}.landing-btn:not(:disabled):active{transform:translateY(0);background:var(--primary-press)}.landing-examples{margin-top:var(--sp-7)}.landing-examples-title{font-size:.72rem;color:var(--text-faint);text-transform:uppercase;letter-spacing:.08em;font-weight:600;margin-bottom:var(--sp-3)}.example-chip{display:inline-block;padding:var(--sp-2) var(--sp-4);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-pill);font-size:.8rem;color:var(--text-dim);cursor:pointer;margin:var(--sp-1);transition:all var(--dur) var(--ease)}.example-chip:hover{border-color:var(--primary-line);color:var(--text);background:var(--primary-subtle)}.onboarding{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--sp-7);background:radial-gradient(ellipse 60% 40% at 50% 0%,rgba(16,185,129,.05),transparent 60%),var(--bg)}.onboarding-brand{font-size:1rem;font-weight:600;letter-spacing:.15em;color:var(--primary);margin-bottom:var(--sp-5);text-transform:uppercase}.onboarding h2{font-size:1.5rem;font-weight:600;letter-spacing:-.03em;margin-bottom:var(--sp-6);text-align:center;color:var(--text)}.onboarding-error{color:var(--danger);margin-bottom:var(--sp-5);text-align:center;max-width:400px;font-size:.9rem;line-height:1.6}.steps{text-align:left;margin-bottom:var(--sp-6);min-width:340px}.step{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-2) 0;font-size:.9rem;transition:color var(--dur) var(--ease)}.step-icon{width:24px;height:24px;border-radius:var(--r-pill);display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;flex-shrink:0;transition:all var(--dur-slow) var(--ease-spring)}.step-done .step-icon{background:var(--primary);color:#fff}.step-pending .step-icon{background:var(--surface-2);color:var(--text-faint);border:1px solid var(--border)}.step-done{color:var(--text-secondary)}.step-pending{color:var(--text-dim)}.soul-preview{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--sp-5);text-align:left;min-width:400px;max-width:500px;margin-bottom:var(--sp-5);box-shadow:var(--shadow-sm)}.soul-row{padding:var(--sp-3) 0;border-bottom:1px solid var(--border);font-size:.85rem;display:flex;align-items:baseline}.soul-row:last-child{border:none}.soul-label{color:var(--text-dim);display:inline-block;width:100px;font-size:.8rem;font-weight:500;flex-shrink:0}.soul-value{color:var(--text);font-weight:500;flex:1}.dash-loading{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-4);background:var(--bg);color:var(--text-dim);font-size:.9rem}.dash-loading-brand{font-size:1rem;font-weight:600;letter-spacing:.15em;color:var(--primary);text-transform:uppercase}.dash-action-btn{padding:var(--sp-3) var(--sp-5);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-md);color:var(--text);cursor:pointer;font-size:.85rem;font-weight:500;transition:all var(--dur) var(--ease)}.dash-action-btn:hover{border-color:var(--primary-line);background:var(--surface-hover);transform:translateY(-1px)}.dash-action-btn:active{transform:translateY(0)}.settings-form{max-width:600px}.form-group{margin-bottom:var(--sp-5)}.form-label{display:block;font-size:.78rem;color:var(--text-dim);font-weight:500;letter-spacing:.01em;margin-bottom:var(--sp-2)}.form-input{width:100%;padding:var(--sp-3) var(--sp-4);background:var(--bg);border:1px solid var(--border-strong);border-radius:var(--r-md);color:var(--text);font-size:.9rem;font-family:inherit;outline:none;transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease),background var(--dur) var(--ease)}.form-input::placeholder{color:var(--text-faint)}.form-input:focus{border-color:var(--border-focus);box-shadow:0 0 0 4px var(--primary-glow)}.service-row{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-3);background:var(--bg);border:1px solid var(--border);border-radius:var(--r-md);margin-bottom:var(--sp-2);transition:border-color var(--dur) var(--ease)}.service-row:hover{border-color:var(--border-strong)}.service-row .name{flex:1;font-size:.85rem;font-weight:500}.service-row .dur{color:var(--text-dim);font-size:.8rem;font-variant-numeric:tabular-nums}.service-row .price{color:var(--primary);font-weight:600;font-size:.85rem}.btn-save{padding:var(--sp-3) var(--sp-6);background:var(--primary);color:#fff;border:none;border-radius:var(--r-md);font-weight:600;font-size:.9rem;cursor:pointer;letter-spacing:-.01em;transition:background var(--dur) var(--ease),transform var(--dur) var(--ease);box-shadow:var(--shadow-sm)}.btn-save:hover{background:var(--primary-hover);transform:translateY(-1px)}.btn-save:active{transform:translateY(0);background:var(--primary-press)}.btn-save:disabled{opacity:.5;cursor:not-allowed}.site-page{min-height:100vh;background:#fafafa;color:#18181b;font-family:var(--font-sans);--light-border: #ececef;--light-border-strong: #e0e0e4;--light-text-dim: #71717a}.site-loading{min-height:100vh;display:flex;align-items:center;justify-content:center;color:var(--text-dim);font-size:.9rem}.site-topbar{display:flex;justify-content:space-between;align-items:center;padding:var(--sp-4) var(--sp-7);border-bottom:1px solid var(--light-border);background:#ffffffd9;backdrop-filter:saturate(180%) blur(12px);-webkit-backdrop-filter:saturate(180%) blur(12px);position:sticky;top:0;z-index:100}.site-brand{font-weight:600;font-size:1rem;color:var(--site-primary, var(--primary));letter-spacing:-.01em}.site-back{background:none;border:1px solid var(--light-border-strong);padding:var(--sp-2) var(--sp-4);border-radius:var(--r-sm);cursor:pointer;color:var(--light-text-dim);font-size:.82rem;font-weight:500;transition:all var(--dur) var(--ease)}.site-back:hover{border-color:var(--site-primary, var(--primary));color:var(--site-primary, var(--primary))}.site-hero-public{text-align:center;padding:var(--sp-8) var(--sp-7);background:linear-gradient(160deg,color-mix(in srgb,var(--site-primary, var(--primary)) 92%,#000),color-mix(in srgb,var(--site-primary, var(--primary)) 70%,#000));color:#fff}.site-hero-public h1{font-size:clamp(2rem,5vw,2.75rem);font-weight:700;letter-spacing:-.04em;margin-bottom:var(--sp-2);line-height:1.1}.site-hero-public p{font-size:1.1rem;opacity:.92;margin-bottom:var(--sp-1);line-height:1.5;letter-spacing:-.01em}.site-location{font-size:.95rem!important;opacity:.78!important}.site-section-public{max-width:800px;margin:0 auto;padding:var(--sp-8) var(--sp-7)}.site-section-public h2{font-size:1.35rem;font-weight:600;letter-spacing:-.02em;margin-bottom:var(--sp-5);color:#18181b}.site-two-col{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-7)}.services-grid-public{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--sp-4)}.service-card-public{padding:var(--sp-5);background:#fff;border:1px solid var(--light-border);border-radius:var(--r-md);transition:box-shadow var(--dur-slow) var(--ease-out),transform var(--dur-slow) var(--ease-out),border-color var(--dur) var(--ease);cursor:default}.service-card-public:hover{box-shadow:0 8px 30px #00000014,0 2px 8px #0000000a;transform:translateY(-3px);border-color:var(--light-border-strong)}.service-card-public h3{color:var(--site-primary, var(--primary));margin-bottom:var(--sp-2);font-size:1.05rem;font-weight:600;letter-spacing:-.01em}.service-card-public p{font-size:.85rem;color:var(--light-text-dim);line-height:1.6;margin-bottom:var(--sp-3)}.service-meta{display:flex;justify-content:space-between;align-items:center;font-size:.8rem;color:#a1a1aa;font-weight:500}.service-price{color:var(--site-primary, var(--primary));font-weight:600;font-size:.85rem}.site-hours-row{display:flex;justify-content:space-between;padding:var(--sp-3) 0;border-bottom:1px solid var(--light-border);font-size:.9rem;color:#3f3f46}.site-hours-row:last-child{border:none}.site-faq{margin-bottom:var(--sp-5)}.site-faq h4{font-size:.95rem;font-weight:600;margin-bottom:var(--sp-2);color:#18181b}.site-faq p{font-size:.85rem;color:var(--light-text-dim);line-height:1.6}.site-footer-public{text-align:center;padding:var(--sp-6);color:#a1a1aa;font-size:.8rem;border-top:1px solid var(--light-border)}.site-chat-fab{position:fixed;bottom:var(--sp-6);right:var(--sp-6);width:56px;height:56px;border-radius:var(--r-pill);background:var(--site-primary, var(--primary));color:#fff;border:none;font-size:1.4rem;cursor:pointer;box-shadow:0 8px 24px #0000002e,0 2px 8px #0000001a;z-index:1000;transition:transform var(--dur) var(--ease-spring),box-shadow var(--dur) var(--ease);display:flex;align-items:center;justify-content:center}.site-chat-fab:hover{transform:scale(1.08);box-shadow:0 12px 32px #0000003d,0 4px 12px #0000001f}.site-chat-fab:active{transform:scale(.96)}.site-chat-panel{position:fixed;bottom:var(--sp-6);right:var(--sp-6);width:360px;height:480px;background:#fff;border-radius:var(--r-lg);box-shadow:0 24px 64px #00000029,0 8px 24px #00000014;display:flex;flex-direction:column;z-index:1000;overflow:hidden;animation:panelIn var(--dur-slow) var(--ease-spring) both}.site-chat-header{padding:var(--sp-4);background:var(--site-primary, var(--primary));color:#fff;display:flex;justify-content:space-between;align-items:center;font-weight:600;font-size:.95rem}.site-chat-close{background:none;border:none;color:#fff;cursor:pointer;font-size:1.1rem;opacity:.8;padding:var(--sp-1);border-radius:var(--r-sm);transition:opacity var(--dur) var(--ease),background var(--dur) var(--ease);line-height:1}.site-chat-close:hover{opacity:1;background:#ffffff26}.site-chat-body{flex:1;padding:var(--sp-4);overflow-y:auto;display:flex;flex-direction:column;gap:var(--sp-2)}.site-chat-welcome{color:var(--light-text-dim);font-size:.85rem;text-align:center;padding:var(--sp-5) 0;line-height:1.5}.site-chat-msg{max-width:80%;padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);font-size:.85rem;line-height:1.5;animation:fadeUp var(--dur) var(--ease-out) both}.site-chat-msg-user{align-self:flex-end;background:var(--site-primary, var(--primary));color:#fff;border-bottom-right-radius:var(--r-sm)}.site-chat-msg-assistant{align-self:flex-start;background:#f4f4f5;color:#27272a;border-bottom-left-radius:var(--r-sm)}.site-chat-input-row{display:flex;padding:var(--sp-3);border-top:1px solid var(--light-border);gap:var(--sp-2)}.site-chat-input{flex:1;border:1px solid var(--light-border-strong);border-radius:var(--r-sm);padding:var(--sp-2) var(--sp-3);font-size:.85rem;font-family:inherit;outline:none;color:#18181b;background:#fafafa;transition:border-color var(--dur) var(--ease),background var(--dur) var(--ease)}.site-chat-input:focus{border-color:var(--site-primary, var(--primary));background:#fff}.site-chat-input::placeholder{color:#a1a1aa}.site-chat-send{padding:var(--sp-2) var(--sp-4);background:var(--site-primary, var(--primary));color:#fff;border:none;border-radius:var(--r-sm);cursor:pointer;font-weight:600;font-size:.82rem;transition:opacity var(--dur) var(--ease)}.site-chat-send:hover{opacity:.9}.site-chat-send:disabled{opacity:.4;cursor:not-allowed}.agent-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--sp-4);margin-bottom:var(--sp-3);display:flex;justify-content:space-between;align-items:center;transition:border-color var(--dur) var(--ease)}.agent-card:hover{border-color:var(--border-strong)}.agent-card .info h4{font-size:.9rem;font-weight:600;letter-spacing:-.01em;color:var(--text)}.agent-card .info p{font-size:.78rem;color:var(--text-dim);margin-top:var(--sp-1);line-height:1.5}.builder-box{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--sp-5);margin-top:var(--sp-5)}.builder-title{color:var(--text-dim);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;font-weight:600;margin-bottom:var(--sp-4)}.builder-label{font-size:.85rem;color:var(--text-dim);margin-bottom:var(--sp-2)}.builder-preview{background:var(--bg);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--sp-4);margin-top:var(--sp-4);font-size:.8rem;color:var(--text-dim);line-height:1.6}.chat-container{display:flex;flex-direction:column;height:calc(100vh - var(--sp-8));max-width:720px;padding:var(--sp-5) 0}.chat-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--sp-4)}.chat-header h2{font-size:1.25rem;font-weight:600;letter-spacing:-.02em}.chat-back-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-sm);color:var(--text-dim);font-size:1.1rem;cursor:pointer;transition:all var(--dur) var(--ease);flex-shrink:0}.chat-back-btn:hover{border-color:var(--primary-line);color:var(--text);background:var(--surface-hover)}.chat-status{font-size:.75rem;font-weight:600;display:inline-flex;align-items:center;gap:var(--sp-1);letter-spacing:.01em}.chat-status-ready{color:var(--success)}.chat-status-connecting{color:var(--warning)}.chat-status-disconnected{color:var(--danger)}.chat-messages{flex:1;overflow-y:auto;padding:var(--sp-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);margin-bottom:var(--sp-4)}.chat-empty{text-align:center;color:var(--text-dim);padding:var(--sp-7) var(--sp-4);font-size:.9rem}.chat-empty-hint{font-size:.8rem;margin-top:var(--sp-2);opacity:.7}.chat-msg{margin-bottom:var(--sp-4)}.chat-msg-user{text-align:right}.chat-msg-assistant{text-align:left}.chat-msg-role{font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:var(--text-faint);margin-bottom:var(--sp-1)}.chat-msg-content{display:inline-block;padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);max-width:80%;line-height:1.6;font-size:.875rem;text-align:left;animation:fadeUp var(--dur) var(--ease-out) both}.chat-msg-user .chat-msg-content{background:var(--primary);color:#fff;border-bottom-right-radius:var(--r-sm)}.chat-msg-assistant .chat-msg-content{background:#ffffff0d;color:var(--text);border:1px solid var(--border);border-bottom-left-radius:var(--r-sm)}.chat-typing{opacity:.6;font-style:italic}.chat-input-form{display:flex;gap:var(--sp-2)}.chat-input{flex:1;padding:var(--sp-3) var(--sp-4);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-md);color:var(--text);font-size:.875rem;font-family:inherit;outline:none;transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}.chat-input::placeholder{color:var(--text-faint)}.chat-input:focus{border-color:var(--border-focus);box-shadow:0 0 0 4px var(--primary-glow)}.chat-send{padding:var(--sp-3) var(--sp-5);background:var(--primary);color:#fff;border:none;border-radius:var(--r-md);cursor:pointer;font-weight:600;font-size:.85rem;transition:background var(--dur) var(--ease),transform var(--dur) var(--ease);box-shadow:var(--shadow-sm)}.chat-send:disabled{opacity:.4;cursor:not-allowed}.chat-send:not(:disabled):hover{background:var(--primary-hover);transform:translateY(-1px)}.chat-send:not(:disabled):active{transform:translateY(0)}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes panelIn{0%{opacity:0;transform:scale(.92) translateY(16px)}to{opacity:1;transform:scale(1) translateY(0)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(max-width:768px){.dash{grid-template-columns:1fr}.dash-sidebar{flex-direction:row;align-items:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);border-right:none;border-bottom:1px solid var(--border);overflow-x:auto;flex-wrap:nowrap}.ws-name,.ws-slug{margin-bottom:0;padding:0;white-space:nowrap;flex-shrink:0}.dash-sidebar hr{display:none}.dash-nav-item{flex-shrink:0;padding:var(--sp-2) var(--sp-3)}.dash-main{padding:var(--sp-5) var(--sp-4);max-width:100%}.stats-grid{grid-template-columns:1fr}.landing{padding:var(--sp-5) var(--sp-4)}.carousel-section{padding:0 var(--sp-4);margin-top:var(--sp-6)}.site-two-col{grid-template-columns:1fr}.site-section-public{padding:var(--sp-6) var(--sp-4)}.site-topbar{padding:var(--sp-3) var(--sp-4)}.site-chat-panel{width:calc(100vw - 32px);max-width:360px;height:70vh;max-height:480px}.carousel-arrow{display:none}}@media(max-width:480px){.landing h1{font-size:1.75rem}.landing-sub{font-size:.95rem}.dash-main h2{font-size:1.25rem}.soul-preview,.steps{min-width:unset;width:100%}.chat-input{font-size:16px}.site-chat-fab{bottom:calc(var(--sp-5) + env(safe-area-inset-bottom));right:calc(var(--sp-4) + env(safe-area-inset-right))}.site-chat-panel{bottom:calc(var(--sp-4) + env(safe-area-inset-bottom));right:var(--sp-4);left:var(--sp-4);width:auto}.dash-action-btn{width:100%;text-align:center}}
