:root{--bg-deep: #070d18;--bg-base: #0c1527;--bg-card: rgba(18, 30, 56, .78);--bg-card-hover: rgba(28, 46, 84, .92);--bg-elevated: #15223e;--border-subtle: #24385f;--border-active: #8b5cf6;--border-mint: #34d399;--fg-primary: #ffffff;--fg-secondary: #e2e8f0;--fg-muted: #94a3b8;--accent-indigo: #8b5cf6;--accent-indigo-light: #c4b5fd;--accent-blue: #3b82f6;--accent-mint: #34d399;--accent-coral: #f43f5e;--accent-amber: #f59e0b;--gradient-indigo-blue: linear-gradient(135deg, #8b5cf6 0%, #3b82f6 100%);--gradient-mint-blue: linear-gradient(135deg, #10b981 0%, #06b6d4 100%);--gradient-aurora: radial-gradient(circle at 10% 10%, rgba(139, 92, 246, .22) 0%, transparent 50%), radial-gradient(circle at 90% 20%, rgba(56, 189, 248, .18) 0%, transparent 50%), radial-gradient(circle at 50% 90%, rgba(52, 211, 153, .15) 0%, transparent 60%);--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: ui-monospace, "Cascadia Code", "Source Code Pro", Menlo, monospace;--text-xs: clamp(.8rem, .75rem + .2vw, .9rem);--text-sm: clamp(.9rem, .85rem + .3vw, 1rem);--text-base: clamp(1rem, .95rem + .3vw, 1.125rem);--text-lg: clamp(1.15rem, 1.05rem + .4vw, 1.3rem);--text-xl: clamp(1.35rem, 1.2rem + .6vw, 1.6rem);--min-touch-target: 48px}*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:var(--font-sans);font-size:var(--text-base);background-color:var(--bg-deep);background-image:var(--gradient-aurora);background-attachment:fixed;color:var(--fg-secondary);-webkit-font-smoothing:antialiased;min-height:100vh}.studio-nav-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;padding:.75rem 1.5rem;background:#0b1426d9;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--border-subtle);position:sticky;top:0;z-index:50}.nav-left{display:flex;align-items:center;gap:1rem}.btn-back-studio{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;min-height:var(--min-touch-target);background:#8b5cf626;border:1px solid rgba(139,92,246,.4);border-radius:8px;color:#fff;text-decoration:none;font-weight:600;font-size:var(--text-sm);transition:all .2s ease}.btn-back-studio:hover{background:#8b5cf64d;border-color:var(--accent-indigo);transform:translate(-2px)}.brand-divider{width:1px;height:28px;background:var(--border-subtle)}.brand-titles{display:flex;flex-direction:column}.brand-main{font-size:1.1rem;font-weight:800;color:#fff;letter-spacing:-.01em}.brand-accent{color:var(--accent-indigo)}.brand-sub{font-size:var(--text-xs);color:var(--fg-muted)}.nav-right{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.status-pill{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem .9rem;min-height:var(--min-touch-target);border-radius:999px;font-size:var(--text-sm);font-weight:600}.status-pill.live{background:#34d39926;border:1px solid var(--accent-mint);color:#34d399}.status-pill.sandbox{background:#f59e0b26;border:1px solid var(--accent-amber);color:#fbbf24}.status-dot{width:8px;height:8px;border-radius:50%;background:currentColor;box-shadow:0 0 8px currentColor;animation:pulse-dot 2s infinite ease-in-out}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.85)}}.telemetry-pill{display:inline-flex;align-items:center;gap:.3rem;padding:.4rem .75rem;min-height:var(--min-touch-target);background:#ffffff0d;border:1px solid var(--border-subtle);border-radius:8px;font-family:var(--font-mono);font-size:var(--text-xs);color:#38bdf8}.btn-reset-demo{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .9rem;min-height:var(--min-touch-target);background:#f43f5e26;border:1px solid rgba(244,63,94,.4);border-radius:8px;color:#fda4af;font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:all .2s ease}.btn-reset-demo:hover:not(:disabled){background:#f43f5e47;border-color:var(--accent-coral);color:#fff}.spin-icon{display:inline-block;animation:spin 1s infinite linear}@keyframes spin{to{transform:rotate(360deg)}}.switcher-dropdown-wrap{position:relative}.btn-switcher-toggle{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem .9rem;min-height:var(--min-touch-target);background:#38bdf826;border:1px solid rgba(56,189,248,.35);border-radius:8px;color:#fff;font-size:var(--text-sm);font-weight:600;cursor:pointer}.switcher-menu{position:absolute;right:0;top:calc(100% + 8px);width:270px;background:#0f182c;border:1px solid var(--border-subtle);border-radius:12px;box-shadow:0 16px 36px #00000080;padding:.5rem;z-index:100;display:flex;flex-direction:column;gap:.3rem}.switcher-item{display:flex;align-items:center;gap:.75rem;padding:.6rem .75rem;border-radius:8px;text-decoration:none;color:var(--fg-secondary);transition:background .15s ease}.switcher-item:hover,.switcher-item.active{background:#ffffff14}.switcher-item strong{display:block;font-size:var(--text-sm);color:#fff}.switcher-item small{display:block;font-size:var(--text-xs);color:var(--fg-muted)}.dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.dot-emerald{background:#10b981}.dot-indigo{background:#8b5cf6}.dot-coral{background:#f43f5e}.dot-gold{background:#fbbf24}.chat-app-container{display:grid;grid-template-columns:1fr;min-height:calc(100vh - 65px)}@media(min-width:900px){.chat-app-container{grid-template-columns:310px 1fr 340px}}.visitors-sidebar{background:#0e172cbf;border-right:1px solid var(--border-subtle);padding:1.25rem;display:flex;flex-direction:column;gap:1rem}.panel-header-row{display:flex;justify-content:space-between;align-items:center}.panel-header-row h2{font-size:1.15rem;font-weight:700;color:#fff;margin:0}.badge-count{background:var(--gradient-indigo-blue);color:#fff;padding:.2rem .6rem;border-radius:999px;font-size:var(--text-xs);font-weight:700}.btn-simulate-bot{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;min-height:var(--min-touch-target);background:var(--gradient-indigo-blue);border:none;border-radius:10px;color:#fff;font-size:var(--text-sm);font-weight:700;cursor:pointer;box-shadow:0 4px 14px #8b5cf659;transition:transform .15s ease,box-shadow .15s ease}.btn-simulate-bot:hover{transform:translateY(-2px);box-shadow:0 6px 20px #8b5cf680}.visitors-list{display:flex;flex-direction:column;gap:.5rem;overflow-y:auto;flex:1}.visitor-card{display:flex;align-items:center;gap:.75rem;padding:.85rem;min-height:var(--min-touch-target);background:#ffffff08;border:1px solid var(--border-subtle);border-radius:12px;cursor:pointer;transition:all .2s ease;text-align:left;color:inherit;width:100%}.visitor-card:hover{background:#ffffff12;border-color:#8b5cf680;transform:translate(3px)}.visitor-card.active{background:#8b5cf62e;border-color:var(--accent-indigo);box-shadow:0 0 14px #8b5cf640}.visitor-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#0ea5e9,#8b5cf6);display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0}.visitor-info{display:flex;flex-direction:column;flex:1;overflow:hidden}.visitor-name{font-weight:700;font-size:var(--text-sm);color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.visitor-meta{font-size:var(--text-xs);color:var(--fg-muted)}.chat-conversation-panel{display:flex;flex-direction:column;background:#0a122480;border-right:1px solid var(--border-subtle);position:relative}.chat-header{padding:1rem 1.5rem;background:#0e172cb3;border-bottom:1px solid var(--border-subtle);display:flex;justify-content:space-between;align-items:center}.thread-id-pill{font-family:var(--font-mono);font-size:var(--text-xs);background:#ffffff0f;padding:.25rem .6rem;border-radius:6px;color:#38bdf8}.chat-messages-area{flex:1;padding:1.5rem;overflow-y:auto;display:flex;flex-direction:column;gap:1rem}.empty-chat-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--fg-muted);text-align:center;padding:2rem}.empty-icon{font-size:3rem;margin-bottom:1rem}.chat-bubble-wrap{display:flex;flex-direction:column;max-width:75%}.chat-bubble-wrap.visitor{align-self:flex-start}.chat-bubble-wrap.agent{align-self:flex-end}.bubble-sender-meta{font-size:var(--text-xs);color:var(--fg-muted);margin-bottom:.25rem;display:flex;gap:.5rem}.chat-bubble-wrap.agent .bubble-sender-meta{justify-content:flex-end}.bubble-content{padding:.85rem 1.15rem;border-radius:16px;font-size:var(--text-base);line-height:1.5;word-break:break-word}.chat-bubble-wrap.visitor .bubble-content{background:#162444d9;border:1px solid var(--border-subtle);color:#fff;border-bottom-left-radius:4px}.chat-bubble-wrap.agent .bubble-content{background:var(--gradient-indigo-blue);color:#fff;border-bottom-right-radius:4px;box-shadow:0 4px 16px #3b82f64d}.canned-triage-row{display:flex;gap:.5rem;padding:.75rem 1.5rem;overflow-x:auto;background:#0e172c66;border-top:1px solid var(--border-subtle)}.btn-canned{background:#ffffff0d;border:1px solid var(--border-subtle);border-radius:999px;padding:.35rem .85rem;font-size:var(--text-xs);color:var(--fg-secondary);cursor:pointer;white-space:nowrap;min-height:36px;transition:all .15s ease}.btn-canned:hover{background:#8b5cf633;border-color:var(--accent-indigo);color:#fff}.chat-input-bar{display:flex;gap:.75rem;padding:1rem 1.5rem;background:#0e172cd9;border-top:1px solid var(--border-subtle)}.chat-text-input{flex:1;min-height:var(--min-touch-target);background:#ffffff0d;border:1px solid var(--border-subtle);border-radius:10px;padding:0 1rem;font-size:var(--text-base);color:#fff;outline:none;transition:border-color .2s ease}.chat-text-input:focus{border-color:var(--accent-indigo);box-shadow:0 0 0 2px #8b5cf64d}.btn-send-message{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:0 1.5rem;min-height:var(--min-touch-target);background:var(--gradient-indigo-blue);border:none;border-radius:10px;color:#fff;font-size:var(--text-base);font-weight:700;cursor:pointer;transition:transform .15s ease}.btn-send-message:hover:not(:disabled){transform:translateY(-2px)}.btn-send-message:disabled{opacity:.5;cursor:not-allowed}.compliance-hub-panel{background:#0e172cbf;padding:1.25rem;display:flex;flex-direction:column;gap:1.25rem}.panel-title-bar{display:flex;justify-content:space-between;align-items:center}.panel-title-bar h3{font-size:1.05rem;color:#fff;margin:0}.badge-shield{background:#34d39926;border:1px solid var(--accent-mint);color:#34d399;padding:.2rem .6rem;border-radius:999px;font-size:var(--text-xs);font-weight:700}.compliance-card{background:#ffffff08;border:1px solid var(--border-subtle);border-radius:12px;padding:1rem;display:flex;flex-direction:column;gap:.6rem}.card-badge-row{display:flex;align-items:center;gap:.5rem;font-size:var(--text-sm);color:#fff}.status-indicator{width:8px;height:8px;border-radius:50%}.status-indicator.active{background:#34d399;box-shadow:0 0 8px #34d399}.status-indicator.danger{background:#f43f5e;box-shadow:0 0 8px #f43f5e}.compliance-desc{font-size:var(--text-xs);color:var(--fg-muted);margin:0;line-height:1.45}.compliance-stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-top:.25rem}.stat-pill{background:#ffffff0d;padding:.5rem;border-radius:8px;display:flex;flex-direction:column;align-items:center}.stat-num{font-size:1.1rem;font-weight:800;color:#fff}.stat-lbl{font-size:var(--text-xs);color:var(--fg-muted)}.prune-progress-bar{height:6px;background:#ffffff1a;border-radius:999px;overflow:hidden;margin-top:.25rem}.progress-fill{height:100%;background:linear-gradient(90deg,#38bdf8,#8b5cf6);transition:width 1s linear}.prune-timer-text{font-size:var(--text-xs);color:var(--fg-muted)}.danger-zone{border-color:#f43f5e59;background:#f43f5e0d}.btn-forget-action{width:100%;min-height:var(--min-touch-target);background:#f43f5e33;border:1px solid var(--accent-coral);border-radius:10px;color:#fff;font-size:var(--text-sm);font-weight:700;cursor:pointer;transition:all .2s ease}.btn-forget-action:hover:not(:disabled){background:#f43f5e;box-shadow:0 4px 16px #f43f5e66}.btn-forget-action:disabled{opacity:.4;cursor:not-allowed}.hint-select{font-size:var(--text-xs);color:var(--fg-muted);font-style:italic}.btn-open-widget{display:flex;align-items:center;justify-content:space-between;padding:.6rem 1rem;min-height:var(--min-touch-target);background:#38bdf826;border:1px solid rgba(56,189,248,.4);border-radius:8px;color:#fff;text-decoration:none;font-size:var(--text-sm);font-weight:600}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:1rem;z-index:200}.certificate-modal{width:100%;max-width:580px;background:#0f182c;border:1px solid rgba(52,211,153,.5);border-radius:16px;box-shadow:0 24px 60px #0009,0 0 30px #34d39926;padding:1.75rem;display:flex;flex-direction:column;gap:1.25rem}.certificate-header{display:flex;justify-content:space-between;align-items:center}.badge-official{display:inline-flex;align-items:center;gap:.5rem;color:#34d399;font-size:var(--text-xs);font-weight:800;letter-spacing:.05em}.btn-close-modal{background:none;border:none;color:var(--fg-muted);font-size:1.2rem;cursor:pointer}.stamp-box{text-align:center;border:2px dashed rgba(52,211,153,.4);padding:1rem;border-radius:12px;background:#34d3990d;margin-bottom:.5rem}.stamp-title{font-size:1.25rem;font-weight:800;color:#fff;letter-spacing:.04em}.stamp-sub{font-size:var(--text-xs);color:#34d399;font-weight:600}.cert-row{display:flex;justify-content:space-between;align-items:center;font-size:var(--text-sm);padding:.35rem 0;border-bottom:1px solid rgba(255,255,255,.05)}.cert-label{color:var(--fg-muted)}.cert-value{color:#fff;font-weight:600}.cert-value.mono{font-family:var(--font-mono);font-size:var(--text-xs)}.text-emerald{color:#34d399}.cert-hash-box{background:#00000059;border:1px solid var(--border-subtle);border-radius:8px;padding:.75rem;display:flex;flex-direction:column;gap:.35rem}.hash-header{display:flex;justify-content:space-between;align-items:center}.hash-label{font-size:var(--text-xs);color:var(--fg-muted)}.btn-copy-hash{background:#ffffff1a;border:none;border-radius:4px;color:#fff;font-size:var(--text-xs);padding:.2rem .5rem;cursor:pointer}.hash-code{font-family:var(--font-mono);font-size:var(--text-xs);color:#38bdf8;word-break:break-all}.cert-attestation{font-size:var(--text-xs);color:var(--fg-muted);line-height:1.5;background:#ffffff05;padding:.75rem;border-radius:8px}.cert-attestation p{margin:0}.btn-done-modal{width:100%;min-height:var(--min-touch-target);background:var(--gradient-mint-blue);border:none;border-radius:10px;color:#fff;font-size:var(--text-base);font-weight:700;cursor:pointer}
