:root{--font-rri-body:var(--font-exo2),"Segoe UI","Helvetica Neue",Arial,sans-serif;--font-rri-heading:var(--font-barlow-condensed),"Segoe UI","Helvetica Neue",Arial,sans-serif;--bg:#05010d;--surface:#0f0824c2;--surface-alt:#0b061edb;--text:#ece8f8;--text-muted:#a59cbc;--stroke:#7c3aed40;--primary:#7c3aed;--primary-alt:#8f66ff;--primary-strong:#6d28d9;--success:#1f9d5b;--radius-lg:20px;--radius-md:14px;--shadow:0 20px 60px #0000007a;--flow-line-edge:#7c3aed00;--flow-line-main:#7c3aeddb;--flow-line-accent:#4f46e5e6;--flow-node:#a78bfa;--flow-node-glow:#a78bfacc}[data-theme=light]{--bg:#f4eee6;--surface:#fffcf7f0;--surface-alt:#f7f1e9fa;--text:#2f2a24;--text-muted:#75695c;--stroke:#786b5b38;--primary:#9f866a;--primary-alt:#baa285;--primary-strong:#877056;--shadow:0 18px 45px #65574729;--flow-line-edge:#8c7a6200;--flow-line-main:#8c7a62b3;--flow-line-accent:#bba78de6;--flow-node:#9f8a70;--flow-node-glow:#9f8a708c}*{box-sizing:border-box}html,body{min-height:100%;margin:0;padding:0}body{font-family:var(--font-rri-body),sans-serif;letter-spacing:.01em;background:radial-gradient(circle at 12% 10%,#6949ff2e,transparent 30%),radial-gradient(circle at 82% 2%,#995eff29,transparent 30%),var(--bg);color:var(--text);line-height:1.35}.app-root{isolation:isolate;position:relative}.theme-neural-overlay{pointer-events:none;z-index:9600;position:fixed;inset:0;overflow:hidden}.theme-neural-overlay[data-target-theme=dark]{--neural-accent:#c4a8fff2;--neural-bg:#05010df7;--neural-halo-core:#8b5cf624;--neural-halo-mid:#6d28d90d}.theme-neural-overlay[data-target-theme=light]{--neural-accent:#786044e6;--neural-bg:#f4eee6f7;--neural-halo-core:#bea0782e;--neural-halo-mid:#9f825f0f}.theme-neural-bg{background:var(--neural-bg);opacity:0;animation:2.8s cubic-bezier(.4,0,.2,1) both neuralBg;position:absolute;inset:0}.theme-neural-svg{width:100%;height:100%;position:absolute;inset:0}.theme-neural-halo{opacity:0;animation:2.8s cubic-bezier(.4,0,.2,1) both neuralHalo}.theme-neural-edge{stroke:var(--neural-accent);stroke-width:.28px;stroke-linecap:round;fill:none;stroke-dasharray:150;stroke-dashoffset:150px;opacity:0;filter:drop-shadow(0 0 1.4px var(--neural-accent));will-change:stroke-dashoffset,opacity;animation:neuralEdgeDraw 2.8s cubic-bezier(.4,0,.2,1)calc(var(--neural-delay,0s))both}.theme-neural-node{fill:var(--neural-accent);opacity:0;transform-box:fill-box;transform-origin:50%;filter:drop-shadow(0 0 2.4px var(--neural-accent))drop-shadow(0 0 6px var(--neural-accent));will-change:transform,opacity;animation:neuralNode 2.8s cubic-bezier(.4,0,.2,1)calc(var(--neural-delay,0s))both}.theme-neural-spark{fill:none;stroke:var(--neural-accent);stroke-width:.35px;opacity:0;transform-box:fill-box;transform-origin:50%;will-change:transform,opacity;animation:neuralSpark 2.8s cubic-bezier(.4,0,.2,1)calc(var(--neural-delay,0s))both}@keyframes neuralBg{0%{opacity:0}12%{opacity:1}80%{opacity:1}to{opacity:0}}@keyframes neuralHalo{0%{opacity:0}20%{opacity:1}75%{opacity:1}to{opacity:0}}@keyframes neuralEdgeDraw{0%{stroke-dashoffset:150px;opacity:.9}40%{stroke-dashoffset:0;opacity:1}74%{stroke-dashoffset:0;opacity:.85}92%{stroke-dashoffset:0;opacity:0}to{stroke-dashoffset:0;opacity:0}}@keyframes neuralNode{0%{opacity:0;transform:scale(.1)}14%{opacity:1;transform:scale(1.4)}24%{opacity:.9;transform:scale(1)}72%{opacity:1;transform:scale(1.1)}90%{opacity:0;transform:scale(.6)}to{opacity:0;transform:scale(0)}}@keyframes neuralSpark{0%{opacity:0;transform:scale(1)}12%{opacity:.9;transform:scale(1)}30%{opacity:0;transform:scale(4.5)}to{opacity:0;transform:scale(4.5)}}.rri-flow-bg{z-index:-1;pointer-events:none;opacity:.45;position:fixed;inset:0}.rri-flow-bg svg{width:100%;height:100%}.flow-paths path{fill:none;stroke:url(#flowStroke);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:220 1200;stroke-dashoffset:1350px;animation:10s linear infinite flowRun}.flow-paths path:nth-child(2){animation-delay:1.8s}.flow-paths path:nth-child(3){animation-delay:3.4s}.flow-paths path:nth-child(4){animation-delay:5.1s}.flow-nodes circle{fill:var(--flow-node);opacity:.6;animation:2.8s ease-in-out infinite nodePulse}.flow-nodes circle:nth-child(2n){animation-delay:.5s}@keyframes flowRun{0%{stroke-dashoffset:1350px;opacity:0}12%{opacity:1}85%{opacity:1}to{stroke-dashoffset:0;opacity:0}}@keyframes nodePulse{0%,to{opacity:.25;filter:drop-shadow(0 0 #a78bfa00)}50%{opacity:.9;filter:drop-shadow(0 0 10px var(--flow-node-glow))}}a{color:inherit;text-decoration:none}button,input{font:inherit}.loading-screen{min-height:100vh;color:var(--text-muted);place-items:center;font-weight:600;display:grid}.btn-primary,.btn-secondary{cursor:pointer;letter-spacing:.01em;border:0;border-radius:14px;min-height:40px;padding:10px 20px;font-weight:700;transition:background .2s,box-shadow .2s,transform .15s,border-color .2s}.btn-primary:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 8px #7c3aed4d}.btn-secondary{color:var(--text);border:1px solid var(--stroke);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff0a}.btn-secondary:hover:not(:disabled){color:var(--text);background:#7c3aed14;border-color:#7c3aed59;box-shadow:0 0 0 1px #7c3aed26}.btn-secondary:active:not(:disabled){background:#7c3aed1f}.btn-primary:disabled,.btn-secondary:disabled{opacity:.65;cursor:not-allowed}.login-page{justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-form-panel{border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow);border:1px solid var(--stroke);align-content:center;width:100%;max-width:440px;padding:36px;display:grid}.login-brand{align-items:center;margin-bottom:24px;display:flex}.login-brand-logo{filter:brightness(0)invert()drop-shadow(0 0 8px #0000006b);width:auto;height:32px}[data-theme=light] .login-brand-logo{filter:none}.login-form-panel h2{margin:0;font-size:1.9rem}.login-form-panel>p{color:var(--text-muted);margin:8px 0 24px}.login-form{gap:12px;display:grid}.login-form label{font-size:.92rem;font-weight:700}.login-form input{border:1px solid var(--stroke);background:var(--surface-alt);color:var(--text);border-radius:12px;padding:12px}.login-form input:focus{border-color:#b3a0ff;outline:2px solid #6236ff40}.form-error{color:#c72855;margin:2px 0;font-size:.9rem}.app-shell{grid-template-columns:270px 1fr;min-height:100vh;transition:grid-template-columns .24s;display:grid}.sidebar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-right:1px solid var(--stroke);background:#0a041abf;grid-template-rows:auto 1fr auto;gap:12px;height:100vh;padding:16px 12px;transition:padding .2s;display:grid;position:sticky;top:0;overflow:hidden}.sidebar-brand{align-items:center;gap:12px;padding:8px;display:flex}.sidebar-brand-details{min-width:0}.sidebar-brand-icon{background:0 0;border-radius:0;place-items:center;width:104px;height:32px;padding:0;display:grid}.brand-logo{object-fit:contain;filter:brightness(0)invert()drop-shadow(0 0 8px #0000006b);opacity:1;width:100%;height:auto}.sidebar-brand p{color:var(--text-muted);margin:2px 0 0;font-size:.85rem}.sidebar-nav{align-content:start;gap:6px;display:grid}.sidebar-link{color:var(--text-muted);border-radius:12px;align-items:center;gap:10px;padding:12px;font-weight:700;display:flex;position:relative}.sidebar-link-icon{opacity:.92;flex-shrink:0;place-items:center;width:18px;height:18px;display:inline-grid}.sidebar-link-icon svg{width:18px;height:18px}.sidebar-link-label{white-space:nowrap}.sidebar-link:hover{color:#fff;background:#7c3aed33}.sidebar-link.active{color:#fff;background:linear-gradient(135deg,#7c3aed6b,#4f46e559)}.sidebar-user{border:1px solid var(--stroke);background:#7c3aed1f;border-radius:14px;padding:12px}.sidebar-user p{color:var(--text-muted);margin:4px 0 0;font-size:.88rem}.sidebar.collapsed .sidebar-brand-icon{width:46px;height:28px}.sidebar.collapsed .sidebar-brand-details{display:none}.sidebar.collapsed .sidebar-link-label{display:none}.sidebar.collapsed .sidebar-link-icon,.sidebar.collapsed .sidebar-link-icon svg{width:20px;height:20px}.sidebar.collapsed .sidebar-link:after{content:attr(data-label);color:#fff;border:1px solid var(--stroke);white-space:nowrap;opacity:0;pointer-events:none;z-index:40;background:#0a041af5;border-radius:8px;padding:5px 9px;font-size:.75rem;transition:opacity .16s;position:absolute;top:50%;left:calc(100% + 8px);transform:translateY(-50%)}.sidebar.collapsed .sidebar-link:hover:after{opacity:1}.sidebar.collapsed .sidebar-user{display:none}.app-main{grid-template-rows:auto 1fr;min-width:0;display:grid}.topbar{border-bottom:1px solid var(--stroke);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0804149e;justify-content:space-between;align-items:center;padding:16px 22px;display:flex}.topbar-left{align-items:center;gap:12px;display:flex}.topbar-actions{align-items:center;gap:8px;display:flex}.btn-theme-switch{justify-content:center;align-items:center;gap:8px;min-width:82px;padding:8px 12px;display:inline-flex}.btn-theme-switch span{opacity:.48;font-size:1rem;line-height:1;transition:opacity .2s,transform .2s}.btn-theme-switch span.active{opacity:1;transform:translateY(-1px)}.btn-logout-icon{place-items:center;width:42px;min-width:42px;height:42px;padding:0;display:inline-grid}.btn-logout-icon svg{width:18px;height:18px}.btn-logout-icon:hover{color:#ff8b8b;background:#ef444429;border-color:#ef4444cc}.btn-logout-icon:active{transform:scale(.96)}.integration-input{border:1px solid var(--stroke);background:var(--surface-alt);color:var(--text);border-radius:10px;flex:1;padding:10px 12px}.integration-feedback{color:var(--text-muted);margin:2px 0 0;font-size:.86rem}.topbar h2{margin:0;font-size:1.2rem}.topbar p{color:var(--text-muted);margin:2px 0 0;font-size:.88rem}.menu-button{border:1px solid var(--stroke);background:var(--surface);cursor:pointer;border-radius:10px;place-items:center;width:38px;height:38px;display:inline-grid}.route-transition{animation:.32s cubic-bezier(.16,1,.3,1) backwards routeIn}@keyframes routeIn{0%{opacity:0;filter:blur(2px);transform:translateY(10px)scale(.992)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.route-transition{animation:none}.integration-menu-overlay{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:none}.integration-menu{animation:none}}.page-stack{gap:18px;display:grid}.page-header{justify-content:space-between;align-items:center;gap:16px;padding:6px 2px 0;display:flex;position:relative}.page-header:after{content:"";background:linear-gradient(90deg,color-mix(in srgb,var(--primary)68%,transparent),transparent);opacity:.7;border-radius:999px;width:min(220px,42%);height:2px;position:absolute;bottom:-10px;left:0}.page-header h1{letter-spacing:.06em;margin:0;font-size:2.1rem;line-height:1.1}.rri-card{border:1px solid var(--stroke);background:var(--surface);box-shadow:var(--shadow);border-radius:24px;padding:24px 28px;transition:transform .25s,border-color .25s,box-shadow .25s;position:relative;overflow:hidden}.rri-card:before{content:"";background:linear-gradient(145deg,color-mix(in srgb,var(--primary)20%,transparent),transparent 42%);opacity:.3;pointer-events:none;position:absolute;inset:0}.empty-state{text-align:center;place-items:center;gap:10px;min-height:240px;display:grid}.empty-state-icon{color:#fff;background:linear-gradient(145deg,#5f35fd,#8a5efc);border-radius:16px;place-items:center;width:56px;height:56px;font-weight:800;display:grid}.empty-state h3{margin:2px 0 0}.empty-state p{color:var(--text-muted);max-width:480px;margin:0}.rri-badge{border-radius:999px;padding:6px 10px;font-size:.76rem;font-weight:700}.tabs{border:1px solid var(--stroke);background:#140a2cb8;border-radius:12px;gap:8px;padding:4px;display:inline-flex}.tab-item{color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:10px;padding:9px 14px;font-weight:700}.saved-connection.active{border-color:color-mix(in srgb,var(--primary)56%,transparent);background:color-mix(in srgb,var(--primary)12%,var(--surface))}.saved-connection-actions .btn-secondary{padding:8px 12px;font-size:.82rem}.integration-menu-overlay{z-index:200;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#04020ab8;justify-content:center;align-items:center;padding:24px;animation:.2s both integrationOverlayIn;display:flex;position:fixed;inset:0}.integration-menu{background:var(--surface);transform-origin:50%;border:1px solid #8b5cf633;border-radius:22px;width:min(540px,100%);max-height:calc(100dvh - 48px);animation:.36s cubic-bezier(.34,1.56,.64,1) both integrationPanelIn;overflow-y:auto;box-shadow:0 0 0 1px #7c3aed14,0 24px 64px #00000080,0 8px 24px #0000004d}.integration-menu-header{border-bottom:1px solid var(--stroke);justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;display:flex}.integration-menu-header h3{margin:0;font-size:1.08rem}.integration-menu-close{place-items:center;width:36px;min-width:36px;height:36px;padding:0;font-size:1rem;display:inline-grid}.integration-menu-body{gap:14px;padding:16px 18px 18px;display:grid}.integration-menu-body label{color:var(--text-muted);gap:8px;font-size:.88rem;display:grid}.integration-menu-body .integration-input:focus{outline:2px solid color-mix(in srgb,var(--primary)32%,transparent);border-color:color-mix(in srgb,var(--primary)54%,transparent)}.integration-menu-actions{flex-wrap:wrap;gap:10px;display:flex}@keyframes integrationOverlayIn{0%{opacity:0;-webkit-backdrop-filter:blur();backdrop-filter:blur()}to{opacity:1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}}@keyframes integrationPanelIn{0%{opacity:0;transform:scale(.92)translateY(20px)}to{opacity:1;transform:scale(1)translateY(0)}}.integration-feedback{border:1px solid var(--stroke);border-radius:10px;padding:9px 10px}.integration-feedback.ok{color:color-mix(in srgb,var(--success)74%,var(--text));border-color:color-mix(in srgb,var(--success)48%,transparent);background:color-mix(in srgb,var(--success)14%,transparent)}.integration-card.simple{min-height:178px}.conversation-layout.live{align-items:stretch}.connection-chip.active,.instance-chip.active{color:#fff;background:linear-gradient(135deg,var(--primary),var(--primary-alt));border-color:#0000}.thread-item.active{border-color:color-mix(in srgb,var(--primary)66%,transparent);background:color-mix(in srgb,var(--primary)16%,var(--surface))}.chat-placeholder.compact{padding:6px 0 0}[data-theme=light] .btn-primary{color:#fffaf3}[data-theme=light] .login-form input:focus{border-color:#967f656b;outline:2px solid #967f6540}[data-theme=light] .sidebar-link:hover{color:#2f2a24;background:#967f6524}[data-theme=light] .sidebar-link.active{color:#2f2a24;background:linear-gradient(135deg,#9f896e59,#cdbba485)}[data-theme=light] .sidebar.collapsed .sidebar-link:after{color:#2f2a24;background:#fcf7f1fa}[data-theme=light] .btn-logout-icon:hover{color:#b42323;background:#b423231f;border-color:#b4232373}[data-theme=light] .topbar-logo,[data-theme=light] .brand-logo{filter:brightness(0)invert()drop-shadow(0 0 2px #28221cc7);background:0 0}[data-theme=light] .empty-state-icon{background:linear-gradient(145deg,#a58c70,#c7b097)}[data-theme=light] .tabs{background:#e5dbcebd}[data-theme=light] .tab-item.active{color:#2f2a24;background:#fffffff2;box-shadow:0 3px 12px #89765e40}[data-theme=light] .integration-menu{background:#fffcf7f7}[data-theme=light] .integration-feedback.ok{color:#236748;background:#2367481a}[data-theme=light] .connection-chip.active,[data-theme=light] .instance-chip.active{color:#fffaf3}.sidebar-overlay{display:none}@media (max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{z-index:30;width:270px;transition:transform .2s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.app-shell.is-collapsed{grid-template-columns:1fr}.sidebar.collapsed{padding:20px 14px}.sidebar.collapsed .sidebar-brand{justify-content:flex-start}.sidebar.collapsed .sidebar-brand-icon{width:104px;height:32px}.sidebar.collapsed .sidebar-brand-details{display:block}.sidebar.collapsed .sidebar-link{justify-content:flex-start;padding:12px}.sidebar.collapsed .sidebar-link-label{display:inline}.integration-menu-overlay{padding:12px}.integration-menu{border-radius:14px}.integration-menu-header,.integration-menu-body{padding-inline:14px}.sidebar.collapsed .sidebar-link:after{display:none}.sidebar.collapsed .sidebar-user{display:block}.sidebar.open{transform:translate(0)}.sidebar-overlay{z-index:20;background:#19172b6b;border:0;display:block;position:fixed;inset:0}.app-content{padding:16px}.page-header{flex-direction:column;align-items:flex-start}}@media (max-width:760px){.login-page{padding:14px}.login-form-panel{padding:24px}.topbar-actions{gap:6px}}:root{--bg:#07111d;--surface:#0c141fd1;--surface-alt:#090f18f0;--surface-elevated:#101a27eb;--surface-soft:#141e2db8;--text:#edf4ff;--text-muted:#96a5bb;--text-soft:#6c7d95;--stroke:#7a95ba2e;--stroke-strong:#7a95ba57;--primary:#58a6ff;--primary-alt:#7ac1ff;--primary-strong:#3f84eb;--success:#2ab67d;--warning:#e8a74c;--danger:#ef7d7d;--shadow:0 28px 60px #02081066;--flow-line-edge:#58a6ff00;--flow-line-main:#58a6ff8c;--flow-line-accent:#36ccb87a;--flow-node:#80c2ff;--flow-node-glow:#80c2ffa6;--theme-wipe-fill:#090e17fc;--theme-wipe-depth:#05080f;--theme-wipe-edge:#86c3ff57;--theme-wipe-sheen:#62afff2e;--theme-wipe-noise:#ffffff05}[data-theme=light]{--bg:#f4f7fb;--surface:#ffffffeb;--surface-alt:#f5f8fcfa;--surface-elevated:#f9fbfff5;--surface-soft:#edf3fae0;--text:#162130;--text-muted:#627187;--text-soft:#7d8ba0;--stroke:#6c7e9b29;--stroke-strong:#5a7ead47;--primary:#3d83eb;--primary-alt:#67a8ff;--primary-strong:#2f6bc6;--shadow:0 24px 52px #2537541f;--flow-line-edge:#3d83eb00;--flow-line-main:#3d83eb57;--flow-line-accent:#26b0984d;--flow-node:#5a93db;--flow-node-glow:#5a93db52;--theme-wipe-fill:#f8fafdfc;--theme-wipe-depth:#e9f0f8;--theme-wipe-edge:#ffffffe6;--theme-wipe-sheen:#68a1e51f;--theme-wipe-noise:#2f3e560d}html,body{min-height:100%}body{letter-spacing:-.01em;color:var(--text);background:radial-gradient(circle at 0 0,#58a6ff24,#0000 24%),radial-gradient(circle at 100% 0,#36ccb814,#0000 22%),linear-gradient(#07111d 0%,#081320 42%,#091521 100%);line-height:1.5}::selection{background:#58a6ff47}[data-theme=light] ::selection{background:#3d83eb2e}h1,h2,h3,strong{font-family:var(--font-rri-heading),sans-serif;letter-spacing:.04em;font-weight:700}button,input,select,textarea{font:inherit}input,select,textarea{outline:none}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline-offset:2px;outline:2px solid #58a6ff6b}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#7a95ba47;border-radius:999px}::-webkit-scrollbar-track{background:0 0}[data-theme=light] .rri-flow-bg{opacity:.16}.flow-paths path{stroke-width:1.6px}.loading-screen{color:var(--text-muted)}.btn-primary,.btn-secondary{letter-spacing:-.01em;border-radius:14px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:10px 16px;font-size:.92rem;font-weight:800;transition:transform .18s,border-color .18s,box-shadow .18s,background .18s,color .18s;display:inline-flex}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,var(--primary-strong),var(--primary));transform:translateY(-1px);box-shadow:0 16px 30px #3d83eb42}.btn-secondary{color:var(--text);background:color-mix(in srgb,var(--surface-elevated)92%,transparent);border:1px solid var(--stroke)}.btn-secondary:hover:not(:disabled){border-color:var(--stroke-strong);background:color-mix(in srgb,var(--surface-elevated)98%,#ffffff0a);transform:translateY(-1px)}.btn-primary:active:not(:disabled),.btn-secondary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled,.btn-secondary:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.login-page{min-height:100vh;padding:20px}.login-form-panel{border:1px solid var(--stroke);box-shadow:var(--shadow);background:linear-gradient(180deg,var(--surface)0%,color-mix(in srgb,var(--surface-alt)96%,transparent)100%);border-radius:28px;padding:44px}.login-form-panel>p{font-size:.94rem}.login-form{gap:14px}.login-form label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:.84rem;font-weight:700}.login-form input,.integration-input,.chat-input-row input{border:1px solid var(--stroke);background:color-mix(in srgb,var(--surface-elevated)92%,transparent);width:100%;min-height:46px;color:var(--text);border-radius:14px;padding:0 14px}.login-form input::placeholder,.integration-input::placeholder,.chat-input-row input::placeholder,.toolbar-search input::placeholder{color:var(--text-soft)}.login-form input:focus,.integration-menu-body .integration-input:focus,.chat-input-row input:focus,.toolbar-search:focus-within{border-color:#58a6ff57;box-shadow:0 0 0 4px #58a6ff1f}.form-error{color:var(--danger)}.app-shell{grid-template-columns:292px 1fr;min-height:100vh}.sidebar{border-right:1px solid var(--stroke);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(#090f18f5,#080d16eb);gap:10px;height:100vh;padding:16px 12px;position:sticky;top:0}[data-theme=light] .sidebar{background:linear-gradient(#f5f8fcf5,#eef3f9eb)}.sidebar-brand{gap:10px;padding:2px 4px}.brand-logo{filter:brightness(0)invert()drop-shadow(0 0 8px #0000006b)}.sidebar-brand-details strong{font-size:1rem;display:block}.sidebar-brand p{color:var(--text-soft);margin-top:4px;font-size:.82rem}.sidebar-nav-wrap{flex-direction:column;flex:1;align-content:start;gap:4px;min-height:0;display:flex;overflow-y:auto}.sidebar-nav-group{flex-direction:column;gap:2px;padding-bottom:8px;display:flex}.sidebar-nav-footer-group{border-top:1px solid var(--stroke);margin-top:auto;padding-top:8px}.sidebar-section-label{color:var(--text-muted);letter-spacing:.14em;text-transform:uppercase;opacity:.55;margin:0;padding:10px 14px 4px;font-size:.65rem;font-weight:800}.sidebar-nav{flex-direction:column;gap:2px;display:flex}.sidebar-link{color:var(--text-muted);border:1px solid #0000;border-radius:16px;padding:13px 14px;font-weight:700;transition:background .18s,border-color .18s,color .18s,transform .18s}.sidebar-link:hover{color:var(--text);background:#7c3aed14;border-color:#7c3aed33;transform:translate(2px);box-shadow:inset 0 0 0 1px #7c3aed1a}.sidebar-link.active{color:var(--text);background:linear-gradient(135deg,#7c3aed33,#4f26a324);border-color:#7c3aed47;box-shadow:inset 0 1px #ffffff0f,0 0 0 1px #7c3aed1f,0 4px 16px #7c3aed1a}.sidebar-link.active:before{content:"";background:linear-gradient(180deg,var(--primary-alt),var(--primary));border-radius:999px;width:3px;position:absolute;top:8px;bottom:8px;left:0;box-shadow:0 0 8px #7c3aed99}.sidebar-link-icon,.sidebar-link-icon svg{width:19px;height:19px}.sidebar-user{border:1px solid var(--stroke);background:linear-gradient(#0f1927d6,#0b121dd6);border-radius:20px;align-items:center;gap:12px;padding:14px;display:flex}[data-theme=light] .sidebar-user{background:linear-gradient(#ffffffc2,#f5f8fcd1)}.sidebar-user-avatar,.topbar-session-avatar{color:#f7fbff;background:linear-gradient(135deg,var(--primary),var(--primary-alt));border-radius:14px;place-items:center;width:42px;height:42px;font-size:.88rem;font-weight:800;display:grid;box-shadow:0 10px 20px #3d83eb2e}.sidebar-user-meta{gap:2px;min-width:0;display:grid}.sidebar-user-meta span{color:var(--text-soft);letter-spacing:.12em;text-transform:uppercase;font-size:.7rem;font-weight:800}.sidebar-user-meta strong{font-size:.94rem}.sidebar-user-meta p{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.84rem;overflow:hidden}.sidebar.collapsed{padding:24px 12px}.sidebar.collapsed .sidebar-brand{justify-content:center}.sidebar.collapsed .sidebar-brand-icon{width:56px;padding:10px}.sidebar.collapsed .sidebar-nav-wrap{gap:4px}.sidebar.collapsed .sidebar-section-label,.sidebar.collapsed .sidebar-brand-details,.sidebar.collapsed .sidebar-user-meta,.sidebar.collapsed .sidebar-nav-footer-group .sidebar-section-label{display:none}.sidebar.collapsed .sidebar-nav-group{padding-bottom:4px}.sidebar.collapsed .sidebar-nav-footer-group{margin-top:auto;padding-top:4px}.sidebar.collapsed .sidebar-link{justify-content:center;padding:13px 10px}.sidebar.collapsed .sidebar-link:before,.sidebar.collapsed .sidebar-link-label{display:none}.sidebar.collapsed .sidebar-user{justify-content:center;padding:10px}.app-main{background:linear-gradient(#080e162e,#0000 24%)}.topbar{z-index:18;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--stroke);background:#070d16bd;padding:20px 28px;position:sticky;top:0}[data-theme=light] .topbar{background:#f5f8fce0}.topbar-left{gap:14px;min-width:0}.topbar-title-group{gap:2px;min-width:0;display:grid}.topbar-eyebrow{color:var(--text-soft);letter-spacing:.16em;text-transform:uppercase;font-size:.72rem;font-weight:800}.topbar h2{font-size:1.38rem}.topbar p{color:var(--text-muted);max-width:760px;margin:0;font-size:.9rem}.topbar-session-card{border:1px solid var(--stroke);background:color-mix(in srgb,var(--surface-elevated)94%,transparent);border-radius:18px;align-items:center;gap:10px;min-width:0;padding:8px 12px;display:flex}.topbar-session-meta{gap:1px;min-width:0;display:grid}.topbar-session-meta strong{font-size:.9rem}.topbar-session-meta span{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;overflow:hidden}.menu-button,.btn-logout-icon{border-radius:14px;width:44px;min-width:44px;height:44px}.menu-button{border-color:var(--stroke);color:var(--text);background:color-mix(in srgb,var(--surface-elevated)92%,transparent)}.menu-button svg{width:18px;height:18px}.btn-theme-switch{min-width:92px;padding-inline:12px}.btn-theme-switch span{place-items:center;width:18px;height:18px;display:grid}.btn-theme-switch span svg{width:18px;height:18px}[data-theme=light] .btn-logout-icon:hover:not(:disabled){color:#b63e3e}.page-header{align-items:flex-start;gap:20px;padding:4px}.page-header:after{display:none}.page-header-main{max-width:820px}.page-eyebrow,.section-overline,.hero-kicker,.empty-state-eyebrow{color:var(--text-soft);letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:8px;font-size:.7rem;font-weight:800;display:inline-flex}.page-header h1{font-size:clamp(1.72rem,2vw,2.2rem);line-height:1.02}.page-header p{max-width:720px;color:var(--text-muted);margin-top:10px;font-size:.98rem}.page-header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:flex-start;gap:10px;display:flex}.page-header-cta,.page-header-meta,.header-actions{flex-wrap:wrap;gap:10px;display:flex}.rri-card{border:1px solid var(--stroke);box-shadow:var(--shadow);background:linear-gradient(#0f1826eb,#0b121df0);border-radius:24px;padding:24px}[data-theme=light] .rri-card{background:linear-gradient(#fffffff5,#f5f8fcfa)}[data-theme=light] .rri-card:before{background:radial-gradient(circle at 100% 0,#67a8ff24,#0000 26%),linear-gradient(#ffffff47,#0000 38%)}.rri-card>*{z-index:1;position:relative}.rri-card:hover{border-color:var(--stroke-strong);transform:translateY(-2px);box-shadow:0 32px 68px #02081070}[data-theme=light] .rri-card:hover{box-shadow:0 26px 54px #25375424}.rri-badge{letter-spacing:.02em;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;min-height:28px;padding:0 10px;font-size:.72rem;font-weight:800;display:inline-flex}.tabs{background:color-mix(in srgb,var(--surface-soft)92%,transparent);border-color:var(--stroke);border-radius:16px;gap:6px;padding:5px}.tab-item{min-height:40px;color:var(--text-muted);border-radius:12px;padding:0 16px;font-size:.9rem}.tab-item:hover{color:var(--text)}.empty-state{gap:12px;min-height:240px}.empty-state-icon{background:linear-gradient(135deg,var(--primary),var(--primary-alt));border-radius:20px;width:62px;height:62px;box-shadow:0 16px 32px #3d83eb3d}.empty-state h3{font-size:1.18rem}.empty-state p{max-width:520px;color:var(--text-muted)}.section-head{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:18px;display:flex}.section-head h3{margin:4px 0 0;font-size:1.15rem}.toolbar-search{border:1px solid var(--stroke);background:color-mix(in srgb,var(--surface-soft)92%,transparent);min-width:300px;min-height:46px;color:var(--text-soft);border-radius:16px;align-items:center;gap:10px;padding:0 14px;display:flex}.toolbar-search svg{flex-shrink:0;width:16px;height:16px}.toolbar-search input{color:var(--text);background:0 0;border:0;flex:1;min-width:0}.filter-chip{border:1px solid var(--stroke);min-height:42px;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:999px;padding:0 14px;font-weight:700;transition:all .18s}.contact-row-actions .btn-secondary{min-height:36px;padding:0 12px;font-size:.82rem}@keyframes kanbanFilterIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.campaign-head .rri-badge{justify-self:start}.integration-card.simple{min-height:214px;position:relative;overflow:hidden}.integration-card.simple:before{content:"";background:var(--brand-color,#8b5cf699);opacity:.7;border-radius:20px 20px 0 0;height:2px;position:absolute;top:0;left:0;right:0}.integration-card.simple:hover .integration-icon{box-shadow:0 0 16px var(--brand-color,#8b5cf666)}.saved-connection.active{background:linear-gradient(#121f30f0,#0b121df0);border-color:#58a6ff42}[data-theme=light] .saved-connection.active{background:linear-gradient(#f1f7fffa,#f7fafffa)}.saved-connection-actions .btn-secondary{min-height:38px;padding:0 12px;font-size:.84rem}.integration-menu-overlay{background:#040a12b8}[data-theme=light] .integration-menu-overlay{background:#121c2a33}.integration-menu{background:linear-gradient(180deg,var(--surface-elevated),var(--surface-alt));border-radius:24px}.integration-menu-header,.integration-menu-body{padding-inline:22px}.integration-menu-header{padding-block:20px}.integration-menu-body{gap:16px;padding-bottom:22px}.integration-menu-body label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-soft);font-size:.82rem;font-weight:800}.integration-feedback{border-radius:14px;font-size:.88rem}.integration-feedback.ok{color:color-mix(in srgb,var(--success)84%,var(--text))}.connection-chip.active,.instance-chip.active{background:linear-gradient(135deg,var(--primary),var(--primary-alt))}.thread-item.active{background:linear-gradient(#121f30f0,#0b121df0);border-color:#58a6ff3d}[data-theme=light] .thread-item.active{background:linear-gradient(#f1f7fffa,#f7fafffa)}@media (max-width:1120px){.topbar{padding:18px 24px}.topbar-session-card{display:none}.app-content{padding:24px 24px 32px}}@media (max-width:900px){.sidebar{z-index:30;width:284px;height:100%;position:fixed;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar.collapsed{padding:24px 18px}.sidebar.collapsed .sidebar-section-label,.sidebar.collapsed .sidebar-brand-details,.sidebar.collapsed .sidebar-user-meta{display:block}.sidebar.collapsed .sidebar-link{justify-content:flex-start;padding:13px 14px}.sidebar.collapsed .sidebar-link-label{display:inline}.sidebar.collapsed .sidebar-user{justify-content:flex-start;padding:14px}.app-content{padding:18px 18px 28px}.page-header{flex-direction:column}.page-header-actions{justify-content:flex-start;width:100%}.toolbar-group,.header-actions,.page-header-cta{width:100%}.toolbar-search{width:100%;min-width:0}.header-actions>*,.page-header-cta>*{flex:1}}@media (max-width:760px){.login-form-panel,.rri-card,.conversation-layout,.integration-menu{border-radius:22px}.login-form-panel{padding:28px}.topbar{align-items:flex-start;padding:16px 18px}.topbar h2{font-size:1.3rem}.topbar p{font-size:.86rem}.topbar-actions{width:auto}.tabs{width:100%;overflow:auto}.btn-theme-switch{min-width:84px}}.agent-directory-item.selected{border-color:color-mix(in srgb,var(--primary)54%,transparent);background:color-mix(in srgb,var(--primary)12%,var(--surface))}.agent-directory-hint.warning{color:color-mix(in srgb,var(--warning)78%,var(--text))}.agent-filter-btn.active{border-color:color-mix(in srgb,var(--primary)54%,transparent);color:var(--text);background:color-mix(in srgb,var(--primary)12%,transparent)}.agent-diff-block.remove{background:#a855f70f;border-color:#a855f72e}.agent-diff-block.add{background:#22c55e12;border-color:#22c55e33}.campaign-directory-item.selected{background:linear-gradient(#122134f5,#0d1827f5);border-color:#58a6ff70;box-shadow:0 22px 40px #040a1242}:root{--font-rri-body:var(--font-sora),var(--font-manrope),-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-rri-heading:var(--font-space-grotesk),var(--font-sora),-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-rri-mono:"JetBrains Mono","SFMono-Regular",Consolas,monospace;--brand-primary:#0f172a;--brand-accent:#7c3aed;--brand-accent-hover:#6d28d9;--brand-accent-soft:#ede9fe;--bg-app:#f8fafc;--bg-sidebar:#0f172a;--bg-card:#fff;--bg-card-hover:#f8fafc;--bg-elevated:#fff;--bg-muted:#f1f5f9;--bg-subtle:#e2e8f0;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--text-inverse:#fff;--text-link:#7c3aed;--border-default:#e2e8f0;--border-strong:#cbd5e1;--border-focus:#8b5cf6;--border-subtle:#f1f5f9;--status-success:#10b981;--status-success-bg:#d1fae5;--status-success-text:#065f46;--status-warning:#f59e0b;--status-warning-bg:#fef3c7;--status-warning-text:#92400e;--status-error:#ef4444;--status-error-bg:#fee2e2;--status-error-text:#991b1b;--status-info:#8b5cf6;--status-info-bg:#ede9fe;--status-info-text:#5b21b6;--status-neutral:#64748b;--status-neutral-bg:#f1f5f9;--status-neutral-text:#475569;--interactive-hover:#7c3aed14;--interactive-active:#7c3aed1f;--interactive-disabled:#94a3b8;--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--sidebar-width:242px;--header-height:64px;--page-padding-x:32px;--page-padding-y:24px;--card-padding:24px;--section-gap:24px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-full:9999px;--shadow-xs:0 1px 2px #0f172a0a;--shadow-sm:0 1px 3px #0f172a0f,0 1px 2px #0f172a0a;--shadow-md:0 4px 6px #0f172a0d,0 2px 4px #0f172a08;--shadow-lg:0 10px 15px #0f172a14,0 4px 6px #0f172a0a;--shadow-xl:0 20px 25px #0f172a1a,0 10px 10px #0f172a0a;--shadow-card:0 1px 3px #0f172a0f,0 1px 2px #0f172a0a;--shadow-card-hover:0 4px 12px #0f172a14;--shadow-focus:0 0 0 3px #7c3aed26;--bg:var(--bg-app);--surface:#ffffffeb;--surface-alt:#fffffffa;--surface-elevated:var(--bg-card);--surface-soft:var(--bg-muted);--text:var(--text-primary);--text-soft:#64748b;--stroke:var(--border-default);--stroke-strong:var(--border-strong);--primary:var(--brand-accent);--primary-alt:#a78bfa;--primary-strong:var(--brand-accent-hover);--success:var(--status-success);--warning:var(--status-warning);--danger:var(--status-error);--shadow:var(--shadow-card);--flow-line-edge:#7c3aed00;--flow-line-main:#7c3aed1f;--flow-line-accent:#6d28d914;--flow-node:#7c3aed66;--flow-node-glow:#7c3aed2e;--theme-wipe-fill:#fffffffa;--theme-wipe-depth:#f1f5f9fc;--theme-wipe-edge:#fffffff2;--theme-wipe-sheen:#7c3aed14;--theme-wipe-noise:#0f172a0a}[data-theme=dark]{--bg-app:#0f0a1e;--bg-card:#1a1330;--bg-card-hover:#201840;--bg-elevated:#160f2b;--bg-muted:#1a1330;--bg-subtle:#231845;--bg-sidebar:#110c22;--text-primary:#f0ecff;--text-secondary:#9b8fc0;--text-muted:#6b5f8c;--text-inverse:#fff;--border-default:#2a2040;--border-strong:#7c3aed47;--status-neutral-bg:#6b5f8c1f;--status-neutral-text:#d0c8e8;--surface:#1a1330e0;--surface-alt:#160f2bf5;--surface-elevated:#1a1330;--surface-soft:#1a1330;--text:var(--text-primary);--text-soft:#9b8fc0;--stroke:var(--border-default);--stroke-strong:var(--border-strong);--shadow:0 20px 36px #03020a66;--shadow-card:0 12px 24px #0201084d;--shadow-card-hover:0 20px 40px #0201085c;--flow-line-main:#a78bfa38;--flow-line-accent:#8b5cf629;--flow-node:#a78bfa94;--flow-node-glow:#a78bfa42;--theme-wipe-fill:#0a0f18fc;--theme-wipe-depth:#050a12;--theme-wipe-edge:#a78bfa47;--theme-wipe-sheen:#a78bfa1f;--theme-wipe-noise:#ffffff05}body{font-family:var(--font-rri-body),sans-serif;color:var(--text-primary);font-feature-settings:"cv11","ss01";background:radial-gradient(circle at 0 0,#8b5cf614,#0000 22%),radial-gradient(circle at 100% 0,#0f172a08,#0000 18%),linear-gradient(#fcfdff 0%,#f8fafc 44%,#f1f5f9 100%)}h1,h2,h3,h4,h5,h6{font-family:var(--font-rri-heading),sans-serif;letter-spacing:.04em}[data-theme=dark] body{color:var(--text-primary);background:radial-gradient(circle at 0 0,#7c3aed26,#0000 22%),linear-gradient(#0f0a1e 0% 48%,#130d24 100%)}.rri-flow-bg{opacity:.12}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{box-shadow:var(--shadow-focus);outline:0}.app-shell{grid-template-columns:var(--sidebar-width)1fr;background:0 0}.app-shell.is-collapsed{grid-template-columns:96px 1fr}.app-main{background:0 0;grid-template-rows:auto 1fr;display:grid}.sidebar{background:radial-gradient(at 100% 0,#7c3aed38,#0000 36%),linear-gradient(#110c22 0%,#130e26 100%);border-right:1px solid #2a2040;gap:8px;padding:18px 10px;box-shadow:inset -1px 0 #7c3aed0f}.sidebar-brand{border-bottom:1px solid #2a2040e6;gap:10px;margin-bottom:4px;padding:6px 10px 14px}.sidebar-brand-icon{background:#ffffff0a;border:1px solid #ffffff0f;border-radius:8px;width:88px;height:28px;padding:3px 6px}.sidebar-brand-label{color:#6b5f8ce6;letter-spacing:.12em;text-transform:uppercase;margin-bottom:3px;font-size:10px;font-weight:600;display:inline-flex}.sidebar-brand-details strong{color:#f0ecff;letter-spacing:.01em;font-size:.95rem;font-weight:700;font-family:var(--font-rri-heading)}.sidebar-brand p{color:#6b5f8cd9;font-size:.78rem}.sidebar-section-label{color:#6b5f8c9e;letter-spacing:.18em;text-transform:uppercase;font-size:9.5px;font-weight:700;font-family:var(--font-rri-heading);padding-inline:10px}.sidebar-link{color:#9b8fc0cc;letter-spacing:.01em;border-radius:10px;min-height:38px;padding:8px 10px;font-size:.875rem;font-weight:500}.sidebar-link:hover{color:#f0ecff;background:#7c3aed14;border-color:#7c3aed24;transform:none}.sidebar-link.active{color:#f0ecff;background:#7c3aed21;border-color:#7c3aed38;font-weight:600;box-shadow:inset 0 1px #ffffff0a}.sidebar-link.active:before{background:linear-gradient(#8b5cf6,#7c3aed);border-radius:2px;width:2.5px;top:6px;bottom:6px}.sidebar-link-icon{color:inherit}.sidebar-user{background:#0f0a1e80;border:1px solid #2a2040;border-radius:12px;align-items:center;gap:10px;padding:10px;position:relative;box-shadow:inset 0 1px #ffffff08,0 8px 24px #00000026}.sidebar-user-avatar{width:34px;height:34px;box-shadow:none;border-radius:10px}.sidebar-user-meta{gap:2px;min-width:0}.sidebar-user-meta span{color:#6b5f8cbf;letter-spacing:.14em;text-transform:uppercase;font-size:9.5px;font-weight:700;font-family:var(--font-rri-heading)}.sidebar-user-meta strong{color:#f0ecff;white-space:nowrap;text-overflow:ellipsis;font-size:.88rem;line-height:1.2;overflow:hidden}.sidebar-user-meta p{color:#6b5f8cd9;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sidebar-user-indicator{border-radius:var(--radius-full);background:#10b981;flex-shrink:0;width:8px;height:8px;margin-left:auto;box-shadow:0 0 0 3px #10b9812e,0 0 8px #10b98159}[data-theme=light] .sidebar{background:radial-gradient(at 100% 0,#7c3aed33,#0000 36%),linear-gradient(#110c22 0%,#130e26 100%);border-right:1px solid #2a2040}.topbar{padding:14px var(--page-padding-x)0;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-bottom:0}[data-theme=dark] .topbar{background:0 0}.topbar-inner{width:100%;max-width:1520px;min-height:var(--header-height);border:1px solid color-mix(in srgb,var(--border-default)88%,transparent);background:radial-gradient(circle at top right,color-mix(in srgb,var(--brand-accent)10%,transparent),transparent 22%),#f8fafcd1;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:24px;justify-content:space-between;align-items:center;gap:18px;margin:0 auto;padding:14px 18px;display:flex;box-shadow:0 18px 44px #00000017,inset 0 1px #ffffff52}.topbar-left{gap:16px}.topbar-eyebrow{color:var(--text-muted);letter-spacing:.12em;font-size:11px;font-weight:700}.topbar h2{color:var(--text-primary);letter-spacing:.06em;margin:0;font-size:1.08rem;font-weight:700}.topbar p{color:var(--text-secondary);max-width:680px;font-size:.84rem}.topbar-actions{gap:12px}.topbar-session-card{border-color:var(--border-default);box-shadow:var(--shadow-xs);background:#ffffffe6;border-radius:14px;gap:12px;padding:8px 10px 8px 8px}[data-theme=dark] .topbar-session-card{background:#111b2deb}.topbar-session-avatar{width:36px;height:36px;box-shadow:none;border-radius:12px;font-size:.8rem}.topbar-session-meta{gap:0}.topbar-session-label{color:var(--text-muted);letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:700}.topbar-session-meta strong{color:var(--text-primary);font-size:.9rem;font-weight:700}.topbar-session-meta span:last-child{color:var(--text-secondary);font-size:.8rem}.topbar-session-chevron{width:18px;height:18px;color:var(--text-muted);place-items:center;display:grid}.topbar-session-chevron svg{width:16px;height:16px}.topbar-utility-group{align-items:center;gap:10px;display:flex}.menu-button,.btn-theme-switch,.btn-logout-icon{border-radius:var(--radius-md);min-height:40px}.menu-button{border:1px solid var(--border-default);width:40px;min-width:40px;color:var(--text-primary);box-shadow:var(--shadow-xs);background:#ffffffe6}[data-theme=dark] .menu-button{background:#111b2deb}.btn-primary,.btn-secondary,.btn-danger,.btn-success,.btn-ghost{border-radius:var(--radius-md);letter-spacing:0;min-height:40px;padding:0 16px;font-size:.9rem;font-weight:600}.btn-primary{color:var(--text-inverse);background:linear-gradient(180deg,var(--brand-accent),var(--brand-accent-hover));box-shadow:var(--shadow-sm)}.btn-primary:hover:not(:disabled){background:linear-gradient(180deg,#4b8ef7,var(--brand-accent-hover));box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-secondary{color:var(--text-primary);background:var(--bg-elevated);border:1px solid var(--border-strong);box-shadow:var(--shadow-xs)}.btn-secondary:hover:not(:disabled){background:var(--bg-card-hover);border-color:var(--border-strong);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.btn-theme-switch{min-width:84px}.btn-theme-switch span{opacity:.48}.btn-theme-switch span.active{opacity:1;color:var(--text-primary)}.btn-logout-icon{width:40px;min-width:40px;padding:0}.btn-logout-icon:hover:not(:disabled){color:var(--status-error-text);background:#fff1f2;border-color:#fecaca}[data-theme=dark] .btn-logout-icon:hover:not(:disabled){color:#fecaca;background:#ef444424;border-color:#ef44445c}.app-content{padding:var(--page-padding-y)var(--page-padding-x)36px}.route-transition{width:100%;max-width:1520px;margin:0 auto}.page-stack{gap:var(--section-gap)}.page-header{gap:18px;padding:2px 2px 0}.page-header-main{gap:8px;display:grid}.page-eyebrow,.section-overline,.hero-kicker,.empty-state-eyebrow{color:var(--text-muted);letter-spacing:.14em;font-size:10.5px;font-weight:700;font-family:var(--font-rri-heading);text-transform:uppercase}.page-header h1{color:var(--text-primary);font-size:clamp(1.9rem,2vw,2.4rem);font-weight:700;line-height:1.04;font-family:var(--font-rri-heading);letter-spacing:.06em}.page-header p{color:var(--text-secondary);margin:0;font-size:.92rem;line-height:1.65}.page-header-meta,.page-header-cta,.header-actions{gap:12px}.rri-card{padding:var(--card-padding);border-radius:var(--radius-xl);border:1px solid var(--border-default);background:var(--bg-card);box-shadow:var(--shadow-card)}.rri-card:before{opacity:1;background:linear-gradient(#ffffff85,#fff0),radial-gradient(circle at 100% 0,#8b5cf60d,#0000 26%)}.rri-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-card-hover);transform:translateY(-1px)}.rri-badge{border-radius:var(--radius-sm);letter-spacing:0;gap:6px;min-height:24px;padding:0 10px;font-size:.75rem;font-weight:600}.rri-badge-dot{border-radius:var(--radius-full);opacity:.72;background:currentColor;width:6px;height:6px}.tabs{border-color:var(--border-default);background:var(--bg-muted);border-radius:12px;padding:4px}.tab-item{border-radius:var(--radius-md);min-height:38px;color:var(--text-secondary);padding:0 14px;font-size:.9rem;font-weight:600}.tab-item.active{color:var(--text-primary);background:var(--bg-card);box-shadow:var(--shadow-xs)}.empty-state{gap:14px;min-height:260px;padding:48px 16px}.empty-state-icon{background:var(--bg-muted);width:56px;height:56px;box-shadow:inset 0 0 0 1px var(--border-default);border-radius:18px}.empty-state-icon-mark{color:var(--text-secondary);letter-spacing:-.02em;font-size:.9rem;font-weight:700}.empty-state h3{color:var(--text-primary);margin:0;font-size:1.125rem;font-weight:700}.empty-state p{color:var(--text-secondary);max-width:420px;line-height:1.65}.empty-state-action{margin-top:4px}.toolbar-search,.login-form input,.integration-input,.chat-input-row input{border-radius:var(--radius-md);border:1px solid var(--border-default);background:var(--bg-card);min-height:42px;color:var(--text-primary);box-shadow:none}.toolbar-search{background:var(--bg-card)}.toolbar-search:focus-within,.login-form input:focus,.integration-menu-body .integration-input:focus,.chat-input-row input:focus{border-color:var(--border-focus);box-shadow:var(--shadow-focus)}.filter-chip{border-radius:var(--radius-full);border-color:var(--border-default);min-height:38px;color:var(--text-secondary);background:var(--bg-card);font-size:.84rem;font-weight:600}.filter-chip:hover,.filter-chip.active{color:var(--brand-accent-hover);background:var(--brand-accent-soft);border-color:#ddd6fe}.contact-table-row.is-selected{background:#8b5cf614}.metric-card,.contact-stat-card,.redis-overview-card{gap:12px;min-height:176px}.section-head h3,.dashboard-side-panel h3,.campaign-overview-card h3,.campaign-planner-card h3,.integration-card h3,.quick-card h3,.agent-card h3{color:var(--text-primary);font-weight:700}.kanban-lead-card.is-selected{background:#f5f3ff;border-color:#ddd6fe;box-shadow:0 0 0 3px #8b5cf614}.saved-connection.active,.thread-item.active{background:#f5f3ff;border-color:#ddd6fe}.integration-menu-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0f172a8f}.integration-menu{border:1px solid var(--border-default);background:var(--bg-elevated);box-shadow:var(--shadow-xl);border-radius:24px}.integration-menu-header{border-bottom:1px solid var(--border-default)}.integration-menu-body{background:var(--bg-elevated)}.integration-menu-actions{padding-top:8px}.integration-feedback{border:1px solid var(--border-default);background:var(--bg-card);color:var(--text-secondary);padding:12px 14px}.integration-feedback.ok{color:var(--status-success-text);background:#ecfdf5;border-color:#a7f3d0}.connection-chip.active,.instance-chip.active{background:var(--brand-accent-soft);color:var(--brand-accent-hover);border-color:#ddd6fe}.connection-chip.active strong,.connection-chip.active span{color:inherit}[data-theme=dark] .conversation-layout,[data-theme=dark] .conversation-chat,[data-theme=dark] .conversation-list,[data-theme=dark] .thread-item,[data-theme=dark] .chat-bubble.other,[data-theme=dark] .toolbar-search,[data-theme=dark] .login-form input,[data-theme=dark] .integration-input,[data-theme=dark] .chat-input-row input,[data-theme=dark] .data-table-wrapper{background:var(--bg-card)}@media (max-width:1120px){.topbar{padding:14px 22px 0}.topbar-inner{padding:13px 16px}.app-content{padding:22px 22px 30px}}@media (max-width:900px){.page-header{flex-direction:column}.page-header-actions{justify-content:flex-start;width:100%}.topbar-session-card{display:none}}@media (max-width:760px){.app-content{padding:18px 16px 24px}.topbar{padding:12px 16px 0}.topbar-inner{border-radius:20px;align-items:flex-start;padding:12px 14px}.topbar-actions{width:auto}.chat-input-row .btn-primary{width:100%}}.redis-hero-signal,.redis-guidance-list li,.redis-summary-item,.redis-info-board,.redis-keys-board,.redis-key-row,.redis-key-empty,.redis-confirm-token{border:1px solid var(--stroke);background:color-mix(in srgb,var(--surface-elevated)95%,transparent);border-radius:18px}.redis-hero-signal span,.redis-overview-card span,.redis-summary-item span{color:var(--text-soft);letter-spacing:.02em;font-size:.8rem;font-weight:700}.redis-hero-signal strong,.redis-overview-card strong,.redis-summary-item strong{font-size:clamp(1.8rem,2.3vw,2.45rem);line-height:.95;display:block}.redis-hero-signal p,.redis-overview-card p,.redis-summary-item p{color:var(--text-muted);margin:0;line-height:1.5}.redis-overview-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.redis-overview-card{gap:12px;min-height:170px;display:grid}.redis-instance-list,.redis-instance-card{gap:18px;display:grid}.redis-status-dot{background:var(--text-soft);border-radius:999px;flex-shrink:0;width:12px;height:12px;margin-top:8px;box-shadow:0 0 0 4px #7a95ba1f}.redis-status-dot.online{background:var(--success);box-shadow:0 0 0 4px #2ab67d29}.redis-status-dot.offline{background:var(--danger);box-shadow:0 0 0 4px #ef7d7d24}.redis-instance-kicker{color:var(--text-soft);letter-spacing:.12em;text-transform:uppercase;flex-wrap:wrap;gap:8px;font-size:.75rem;font-weight:700;display:flex}.redis-instance-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.redis-danger-button{color:#ffe6e4;background:linear-gradient(#681a1f47,#47111533);border-color:#ef7d7d3d}.redis-danger-button:hover:not(:disabled){color:#fff4f2;background:linear-gradient(#7c202657,#57161b3d);border-color:#ef7d7d85}.redis-summary-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.redis-summary-item{align-content:start;gap:8px;min-height:124px;padding:16px 18px;display:grid}.redis-instance-body{border-top:1px solid #7a95ba1f;gap:18px;padding-top:4px;display:grid}.redis-instance-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;display:flex}.redis-toolbar-search{min-width:min(420px,100%)}.redis-instance-toolbar-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.redis-loading-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.redis-loading-block{border:1px solid var(--stroke);background:linear-gradient(120deg,#ffffff05,#58a6ff14,#ffffff05),color-mix(in srgb,var(--surface-elevated)94%,transparent);background-size:200% 100%;border-radius:18px;min-height:160px;animation:1.25s ease-in-out infinite redisPulse}@keyframes redisPulse{0%{opacity:.74;background-position:0 0}50%{opacity:1;background-position:100% 0}to{opacity:.74;background-position:0 0}}.redis-info-board,.redis-keys-board{gap:16px;padding:18px;display:grid}.redis-key-list{gap:12px;display:grid}.redis-key-search-panel,.redis-key-inspector,.redis-key-entry,.redis-conversation-item,.redis-key-raw-block{border:1px solid var(--stroke);background:color-mix(in srgb,var(--surface-soft)68%,transparent);border-radius:18px}.redis-key-search-panel{gap:14px;padding:16px;display:grid}.redis-key-search-panel strong{margin-bottom:4px;display:block}.redis-key-search-panel p{color:var(--text-muted);margin:0;line-height:1.5}.redis-key-search-panel code{border:1px solid var(--stroke);background:color-mix(in srgb,var(--surface-elevated)94%,transparent);border-radius:8px;padding:2px 6px}.redis-keys-layout{grid-template-columns:minmax(0,.94fr) minmax(320px,.98fr);align-items:start;gap:16px;display:grid}.redis-key-results{gap:14px;display:grid}.redis-key-row{justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;transition:transform .18s,border-color .18s,background .18s;display:flex}.redis-key-row:hover{border-color:color-mix(in srgb,var(--primary)24%,var(--stroke));background:color-mix(in srgb,var(--surface-elevated)98%,transparent);transform:translateY(-1px)}.redis-key-row.is-selected{border-color:color-mix(in srgb,var(--primary)34%,var(--stroke));background:color-mix(in srgb,var(--surface-elevated)98%,transparent)}.redis-key-main{gap:8px;min-width:0;display:grid}.redis-key-main strong{white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;line-height:1.3;overflow:hidden}.redis-key-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:.84rem;display:flex}.redis-key-delete{white-space:nowrap}.redis-key-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.redis-key-inspector{gap:16px;padding:18px;display:grid}.redis-key-detail-stack,.redis-conversation-board,.redis-key-entries{gap:14px;display:grid}.redis-key-detail-summary{gap:10px;display:grid}.redis-key-detail-summary strong{word-break:break-word;font-size:.98rem;line-height:1.35}.redis-conversation-list,.redis-key-entry-list{gap:12px;max-height:460px;padding-right:4px;display:grid;overflow:auto}.redis-conversation-item,.redis-key-entry,.redis-key-raw-block{padding:14px 16px}.redis-conversation-head,.redis-key-entry-head{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;font-size:.82rem;display:flex}.redis-conversation-item p{white-space:pre-wrap;margin:0;line-height:1.55}.redis-key-entry-head strong{color:var(--text);font-size:.92rem}.redis-key-entry pre,.redis-key-raw-block pre{white-space:pre-wrap;word-break:break-word;color:var(--text-soft);margin:0;font-size:.86rem;line-height:1.6}.redis-key-empty{text-align:center;border-style:dashed;place-items:center;gap:8px;min-height:180px;padding:24px;display:grid}.redis-key-empty strong{font-size:1rem}.redis-key-empty p{max-width:46ch;color:var(--text-muted);margin:0;line-height:1.5}.redis-key-footer{justify-content:center;padding-top:4px;display:flex}.redis-confirm-menu{max-width:560px}.redis-confirm-body{gap:16px;display:grid}.redis-confirm-body p{color:var(--text-muted);margin:0;line-height:1.55}.redis-confirm-token{letter-spacing:.04em;word-break:break-word;background:#ef7d7d14;border-style:dashed;border-color:#ef7d7d47;padding:14px 16px;font-weight:800}.redis-confirm-token-key{letter-spacing:.01em;background:#58a6ff14;border-color:#58a6ff33;font-weight:700}[data-theme=light] .redis-danger-button{color:#7a2727;background:linear-gradient(#ffe9e9eb,#fff5f5e6)}[data-theme=light] .redis-danger-button:hover:not(:disabled){color:#671c1c;background:linear-gradient(#ffdedef0,#fff1f1f0)}[data-theme=light] .redis-confirm-token{background:#ffe6e6db}[data-theme=light] .redis-confirm-token-key{background:#e1efffe0}@media (max-width:1320px){.redis-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.redis-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.redis-keys-layout{grid-template-columns:1fr}}@media (max-width:980px){.redis-instance-head,.redis-instance-toolbar{flex-direction:column;align-items:stretch}.redis-instance-actions,.redis-instance-toolbar-actions{justify-content:flex-start}.redis-toolbar-search{width:100%;min-width:0}.redis-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.redis-overview-grid,.redis-summary-grid,.redis-loading-grid{grid-template-columns:1fr}.redis-key-row{flex-direction:column;align-items:stretch}.redis-key-actions{justify-content:flex-start;width:100%}.redis-key-delete{width:100%}}:root{--font-rri-body:var(--font-inter),-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-rri-heading:var(--font-space-grotesk),var(--font-inter),-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-rri-mono:var(--font-jetbrains-mono),"JetBrains Mono","SFMono-Regular",Consolas,monospace}body{font-family:var(--font-rri-body),sans-serif}h1,h2,h3,.page-header h1,.topbar h2,.dashboard-hero-copy h3,.redis-hero-copy h3,.login-form-panel h2,.empty-state h3,.section-head h3,.dashboard-side-panel h3,.campaign-overview-card h3,.campaign-planner-card h3,.integration-card h3,.quick-card h3,.agent-card h3,.chat-header strong,.conversation-list-header h3{font-family:var(--font-rri-heading),sans-serif}.page-eyebrow,.section-overline,.hero-kicker,.empty-state-eyebrow,.sidebar-section-label,.sidebar-brand-label,.topbar-eyebrow,.topbar-session-label,.metric-card span,.contact-stat-card span,.hero-highlight-card span,.campaign-inline-metric span,.data-table thead th,.redis-instance-kicker,.redis-info-list dt,.rri-badge,.connection-chip,.instance-chip{font-family:var(--font-rri-mono),monospace}[data-theme=dark]{--brand-primary:#09050f;--brand-secondary:#120b1d;--brand-accent:#8b5cf6;--brand-accent-hover:#c4b5fd;--brand-accent-soft:#8b5cf624;--accent-electric:#e9d5ff;--accent-electric-soft:#e9d5ff14;--bg-base:#07050d;--bg-app:#0b0813;--bg-sidebar:#090611;--bg-card:#151024;--bg-card-hover:#1b1530;--bg-elevated:#151024;--bg-muted:#1c1632;--bg-subtle:#2d2344;--text-primary:#f5f3ff;--text-secondary:#c8bddf;--text-muted:#9487ad;--text-inverse:#f8fbff;--text-accent:#c4b5fd;--text-link:#d8b4fe;--border-default:#b5a0e429;--border-strong:#b5a0e44d;--border-focus:#d8b4fe;--border-subtle:#b5a0e414;--status-success:#00d26a;--status-success-bg:#00d26a1f;--status-success-text:#89f3ba;--status-warning:#ffb800;--status-warning-bg:#ffb8001f;--status-warning-text:#ffd772;--status-error:#ff3b3b;--status-error-bg:#ff3b3b1f;--status-error-text:#ff9a9a;--status-info:#a78bfa;--status-info-bg:#a78bfa1f;--status-info-text:#ddd6fe;--status-neutral:#6b6b70;--status-neutral-bg:#6b6b701f;--status-neutral-text:#b6b6bb;--interactive-hover:#8b5cf614;--interactive-active:#8b5cf624;--interactive-disabled:#7187a6;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--shadow-xs:0 1px 2px #0000007a;--shadow-sm:0 8px 18px #0000004d;--shadow-md:0 14px 30px #0006;--shadow-lg:0 18px 40px #00000075;--shadow-xl:0 24px 60px #00000094;--shadow-card:0 10px 24px #00000047;--shadow-card-hover:0 18px 42px #00000070,0 0 0 1px #8b5cf614;--shadow-focus:0 0 0 1px #d8b4fe6b,0 0 0 4px #d8b4fe1f,0 0 22px #d8b4fe14;--glow-accent:0 0 22px #8b5cf633;--glow-cyan:0 0 18px #e9d5ff29;--bg:var(--bg-app);--surface:#141416eb;--surface-alt:#141416fa;--surface-elevated:var(--bg-card);--surface-soft:var(--bg-muted);--text:var(--text-primary);--text-soft:var(--text-secondary);--stroke:var(--border-default);--stroke-strong:var(--border-strong);--primary:var(--brand-accent);--primary-alt:var(--brand-accent-hover);--primary-strong:var(--brand-accent-hover);--success:var(--status-success);--warning:var(--status-warning);--danger:var(--status-error);--shadow:var(--shadow-card);--flow-line-edge:#8b5cf600;--flow-line-main:#8b5cf624;--flow-line-accent:#e9d5ff1a;--flow-node:#a78bfa7a;--flow-node-glow:#8b5cf638;--theme-wipe-fill:#0a0a0bfa;--theme-wipe-depth:#050506;--theme-wipe-edge:#8b5cf638;--theme-wipe-sheen:#e9d5ff14;--theme-wipe-noise:#ffffff05}[data-theme=dark] body{color:var(--text-primary);background-color:var(--bg-base);background-image:radial-gradient(circle at 14% 0,#8b5cf629,#0000 24%),radial-gradient(circle at 88% 6%,#e9d5ff14,#0000 18%),linear-gradient(#ffffff05 1px,#0000 1px),linear-gradient(90deg,#ffffff05 1px,#0000 1px),linear-gradient(#07050d 0%,#0b0813 42%,#110b1f 100%);background-size:auto,auto,24px 24px,24px 24px,auto}[data-theme=dark] ::selection{color:#f8fbff;background:#8b5cf64d}[data-theme=dark] a{color:var(--text-link)}[data-theme=dark] .rri-flow-bg{opacity:.26;filter:saturate(.72)hue-rotate(-4deg)}[data-theme=dark] button:focus-visible,[data-theme=dark] input:focus-visible,[data-theme=dark] select:focus-visible,[data-theme=dark] textarea:focus-visible,[data-theme=dark] a:focus-visible{box-shadow:var(--shadow-focus);outline:0}[data-theme=dark] ::-webkit-scrollbar-track{background:#141416eb}[data-theme=dark] ::-webkit-scrollbar-thumb{background:#3a3a3feb;border-radius:999px}[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:#58585ef5}[data-theme=dark] .app-main,[data-theme=dark] .app-shell{background:0 0}[data-theme=dark] .app-content{padding:28px 32px 40px}[data-theme=dark] .route-transition{z-index:1;width:100%;max-width:1520px;margin:0 auto;position:relative}[data-theme=dark] .sidebar{border-right:1px solid var(--border-subtle);background:radial-gradient(circle at 100% 0,#8b5cf61f,#0000 26%),linear-gradient(#090611fa 0%,#0d0a17fa 100%);gap:10px;padding:16px 12px;box-shadow:inset -1px 0 #ffffff05}[data-theme=dark] .sidebar-brand{background:linear-gradient(#8b5cf60f,#151025eb 55%);border:1px solid #ffffff0a;border-radius:14px;padding:8px 10px}[data-theme=dark] .sidebar-brand-icon{background:linear-gradient(135deg,#8b5cf62e,#151025e0);border:1px solid #8b5cf62e;border-radius:10px;width:96px;height:32px;box-shadow:inset 0 1px #ffffff0d,0 8px 16px #00000047}[data-theme=dark] .brand-logo{filter:brightness(1.04)contrast(1.04)}[data-theme=dark] .sidebar-brand-label,[data-theme=dark] .sidebar-section-label{color:var(--text-muted);letter-spacing:.12em}[data-theme=dark] .sidebar-brand-details strong{color:var(--text-primary);font-family:var(--font-rri-heading),sans-serif;letter-spacing:-.02em}[data-theme=dark] .sidebar-brand p{color:var(--text-secondary)}[data-theme=dark] .sidebar-link{min-height:46px;color:var(--text-secondary);border:1px solid #0000;font-weight:500}[data-theme=dark] .sidebar-link:hover{color:var(--text-primary);background:#8b5cf614;border-color:#8b5cf638;transform:translate(2px);box-shadow:inset 0 0 0 1px #8b5cf61a}[data-theme=dark] .sidebar-link.active{color:var(--text-accent);background:linear-gradient(135deg,#8b5cf62e,#6d28d91a);border-color:#8b5cf652;box-shadow:inset 0 1px #ffffff0f,0 0 0 1px #8b5cf624,0 4px 20px #8b5cf61f}[data-theme=dark] .sidebar-link.active:before{background:linear-gradient(180deg,#a78bfa,var(--brand-accent));box-shadow:0 0 16px #8b5cf680}[data-theme=dark] .sidebar-link-icon,[data-theme=dark] .sidebar-link-icon svg{color:inherit}[data-theme=dark] .sidebar-user{background:linear-gradient(#18132ba8,#0d0a18c7),#0a08146b;border-color:#ffffff0d;border-radius:14px;box-shadow:inset 0 1px #ffffff08,0 10px 24px #00000024}[data-theme=dark] .sidebar-user-avatar,[data-theme=dark] .topbar-session-avatar{color:#f8fbff;background:linear-gradient(135deg,#c4b5fd,#6d28d9);box-shadow:0 12px 24px #8b5cf62e}[data-theme=dark] .sidebar-user-meta span,[data-theme=dark] .sidebar-user-meta p{color:var(--text-secondary)}[data-theme=dark] .sidebar-user-meta strong{color:var(--text-primary)}[data-theme=dark] .sidebar-user-indicator{background:var(--status-success);box-shadow:0 0 0 4px #00d26a1f}[data-theme=dark] .sidebar.collapsed .sidebar-brand{box-shadow:none;background:0 0;border-color:#0000;padding:0}[data-theme=dark] .sidebar-overlay{background:#000000b8}[data-theme=dark] .topbar{padding:14px var(--page-padding-x)0}[data-theme=dark] .topbar-inner{border-color:color-mix(in srgb,var(--border-subtle)92%,transparent);background:radial-gradient(circle at 100% 0,#d8b4fe1f,#0000 24%),#0b0816c2;box-shadow:0 22px 48px #0000003d,inset 0 1px #ffffff0a}[data-theme=dark] .topbar-eyebrow,[data-theme=dark] .page-eyebrow,[data-theme=dark] .section-overline,[data-theme=dark] .hero-kicker,[data-theme=dark] .empty-state-eyebrow{color:var(--text-muted);letter-spacing:.14em;text-transform:uppercase;font-size:10px;font-weight:600}[data-theme=dark] .topbar h2{color:var(--text-primary);letter-spacing:-.03em;font-size:clamp(1.2rem,1vw + .85rem,1.55rem);font-weight:700}[data-theme=dark] .topbar p{color:var(--text-secondary);max-width:66ch}[data-theme=dark] .topbar-session-card{border-color:var(--border-default);box-shadow:inset 0 1px 0 #ffffff08,var(--shadow-sm);background:#151025f0;border-radius:16px;gap:12px;padding:8px 12px 8px 8px}[data-theme=dark] .topbar-session-label,[data-theme=dark] .redis-instance-kicker,[data-theme=dark] .data-table thead th{color:var(--text-muted);letter-spacing:.12em}[data-theme=dark] .topbar-session-meta strong{color:var(--text-primary)}[data-theme=dark] .topbar-session-meta span:last-child,[data-theme=dark] .topbar-session-chevron{color:var(--text-secondary)}[data-theme=dark] .menu-button,[data-theme=dark] .btn-theme-switch,[data-theme=dark] .btn-logout-icon{border-color:var(--border-default);color:var(--text-secondary);background:#151025f0;box-shadow:inset 0 1px #ffffff08}[data-theme=dark] .menu-button:hover,[data-theme=dark] .btn-theme-switch:hover,[data-theme=dark] .btn-logout-icon:hover:not(:disabled){color:var(--text-primary);border-color:var(--border-strong);background:#1c1530fa}[data-theme=dark] .btn-theme-switch span{color:var(--text-muted)}[data-theme=dark] .btn-theme-switch span.active:first-child{color:var(--accent-electric)}[data-theme=dark] .btn-theme-switch span.active:last-child{color:var(--brand-accent)}[data-theme=dark] .btn-primary,[data-theme=dark] .btn-secondary,[data-theme=dark] .btn-danger,[data-theme=dark] .btn-success,[data-theme=dark] .btn-ghost,[data-theme=dark] .btn-outline{border-radius:var(--radius-md);min-height:40px;font-weight:600;transition:background .18s,color .18s,border-color .18s,box-shadow .18s,transform .18s}[data-theme=dark] .btn-primary{color:#f8fbff;background:linear-gradient(#c4b5fd 0%,#8b5cf6 100%);border:1px solid #ffffff0a;box-shadow:0 18px 34px #8b5cf62e,inset 0 1px #ffffff2e}[data-theme=dark] .btn-primary:hover:not(:disabled){background:linear-gradient(#ddd6fe 0%,#a78bfa 100%);transform:translateY(-1px);box-shadow:0 22px 38px #8b5cf63d,inset 0 1px #ffffff2e}[data-theme=dark] .btn-secondary{color:var(--text-primary);border:1px solid var(--border-default);background:linear-gradient(#151025f5,#0d0a17fa);box-shadow:inset 0 1px #ffffff08}[data-theme=dark] .btn-secondary:hover:not(:disabled){border-color:var(--border-strong);background:linear-gradient(#1c1530fa,#120c1f);transform:translateY(-1px);box-shadow:0 12px 24px #00000038}[data-theme=dark] .btn-danger,[data-theme=dark] .redis-danger-button{color:#ffb0b0;background:#ff3b3b1a;border:1px solid #ff3b3b33;box-shadow:inset 0 1px #ffffff05}[data-theme=dark] .btn-danger:hover:not(:disabled),[data-theme=dark] .redis-danger-button:hover:not(:disabled){color:#ffd7d7;background:#ff3b3b29;border-color:#ff3b3b52}[data-theme=dark] .page-stack{gap:var(--section-gap)}[data-theme=dark] .page-header h1{color:#f0ecff;letter-spacing:-.03em;font-size:clamp(2rem,2.1vw,2.8rem);font-weight:700;line-height:.98;font-family:var(--font-rri-heading)}[data-theme=dark] .page-header p{color:var(--text-secondary);max-width:74ch}[data-theme=dark] .rri-card{border-radius:var(--radius-xl);box-shadow:inset 0 1px 0 #ffffff0a,var(--shadow-card);background:linear-gradient(160deg,#1a1330 0%,#160f2a 100%);border:1px solid #2a2040}[data-theme=dark] .rri-card:before{background:linear-gradient(#ffffff08,#fff0),radial-gradient(circle at 100% 0,#8b5cf614,#0000 28%)}[data-theme=dark] .rri-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}[data-theme=dark] .rri-badge{letter-spacing:.08em;text-transform:uppercase;border-radius:999px;min-height:24px;padding:0 10px;font-size:.64rem;font-weight:600}[data-theme=dark] .tabs{border-color:var(--border-default);background:#151025e0}[data-theme=dark] .tab-item{color:var(--text-secondary)}[data-theme=dark] .tab-item.active{color:var(--text-primary);background:#1c1530f5;box-shadow:inset 0 0 0 1px #8b5cf624}[data-theme=dark] input:not([type=checkbox]):not([type=radio]):not([type=range]),[data-theme=dark] select,[data-theme=dark] textarea,[data-theme=dark] .toolbar-search,[data-theme=dark] .login-form input,[data-theme=dark] .integration-input,[data-theme=dark] .chat-input-row input{border:1px solid var(--border-default);color:var(--text-primary);background:linear-gradient(#151025f5,#0f0a1afa);box-shadow:inset 0 1px 2px #00000057}[data-theme=dark] input::placeholder,[data-theme=dark] textarea::placeholder{color:var(--text-muted)}[data-theme=dark] input:not([type=checkbox]):not([type=radio]):not([type=range]):focus,[data-theme=dark] select:focus,[data-theme=dark] textarea:focus,[data-theme=dark] .toolbar-search:focus-within,[data-theme=dark] .login-form input:focus,[data-theme=dark] .integration-menu-body .integration-input:focus,[data-theme=dark] .chat-input-row input:focus{box-shadow:var(--shadow-focus);border-color:#d8b4fe7a}[data-theme=dark] .filter-chip{border-color:var(--border-default);color:var(--text-secondary);background:#141416f5}[data-theme=dark] .filter-chip:hover,[data-theme=dark] .filter-chip.active{color:#ddd6fe;background:#8b5cf614;border-color:#8b5cf638}[data-theme=dark] .empty-state{min-height:280px}[data-theme=dark] .empty-state-icon{background:linear-gradient(#151025f5,#0d0a17);border-radius:18px;position:relative;box-shadow:inset 0 1px #ffffff0a,0 16px 32px #0000003d}[data-theme=dark] .empty-state-icon:after{content:"";border-radius:inherit;background:radial-gradient(circle,#8b5cf614,#0000 68%);position:absolute;inset:0}[data-theme=dark] .empty-state-icon-mark{z-index:1;color:#ddd6fe;font-family:var(--font-rri-mono),monospace;letter-spacing:.08em;position:relative}[data-theme=dark] .empty-state h3{color:var(--text-primary);font-size:1.2rem;font-weight:600}[data-theme=dark] .empty-state p{color:var(--text-secondary)}[data-theme=dark] .contact-table-row.is-selected{background:#8b5cf614}[data-theme=dark] .metric-card,[data-theme=dark] .contact-stat-card,[data-theme=dark] .redis-overview-card,[data-theme=dark] .quick-card,[data-theme=dark] .insight-card,[data-theme=dark] .activity-card,[data-theme=dark] .dashboard-side-panel{background:linear-gradient(#151025fa,#0c0915)}[data-theme=dark] .metric-card,[data-theme=dark] .contact-stat-card,[data-theme=dark] .redis-overview-card{min-height:180px}[data-theme=dark] .metric-card:hover,[data-theme=dark] .contact-stat-card:hover,[data-theme=dark] .hero-highlight-card:hover,[data-theme=dark] .campaign-card-refined:hover,[data-theme=dark] .integration-card:hover,[data-theme=dark] .redis-instance-card:hover{border-color:#8b5cf638;box-shadow:0 20px 40px #00000057,0 0 0 1px #8b5cf614}[data-theme=dark] .metric-card strong,[data-theme=dark] .contact-stat-card strong,[data-theme=dark] .hero-highlight-card strong,[data-theme=dark] .campaign-inline-metric strong,[data-theme=dark] .redis-hero-signal strong,[data-theme=dark] .redis-overview-card strong,[data-theme=dark] .redis-summary-item strong{color:var(--text-primary);font-family:var(--font-rri-heading),sans-serif;letter-spacing:-.04em}[data-theme=dark] .section-head h3,[data-theme=dark] .dashboard-side-panel h3,[data-theme=dark] .campaign-overview-card h3,[data-theme=dark] .campaign-planner-card h3,[data-theme=dark] .integration-card h3,[data-theme=dark] .quick-card h3,[data-theme=dark] .agent-card h3,[data-theme=dark] .campaign-hero-live h3,[data-theme=dark] .redis-guidance-card h3,[data-theme=dark] .redis-instance-title h3{color:var(--text-primary);letter-spacing:-.03em;font-weight:700}[data-theme=dark] .kanban-lead-card.is-selected{background:#8b5cf614;border-color:#8b5cf638;box-shadow:0 0 0 3px #8b5cf614}[data-theme=dark] .saved-connection.active,[data-theme=dark] .thread-item.active{background:#8b5cf614;border-color:#8b5cf633}[data-theme=dark] .integration-menu-overlay{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#000000c7}[data-theme=dark] .integration-menu{background:linear-gradient(160deg,#16112a 0%,#0a0814 100%);border:1px solid #8b5cf638;border-radius:22px;box-shadow:0 0 0 1px #7c3aed1a,0 24px 64px #0009,inset 0 1px #ffffff0a}[data-theme=dark] .integration-menu-header{border-bottom:1px solid var(--border-subtle)}[data-theme=dark] .integration-menu-body{background:0 0}[data-theme=dark] .integration-feedback{border-color:var(--border-default);color:var(--text-secondary);background:#18122aeb}[data-theme=dark] .integration-feedback.ok{color:var(--status-success-text);background:#00d26a14;border-color:#00d26a38}[data-theme=dark] .connection-chip.active,[data-theme=dark] .instance-chip.active{color:#ddd6fe;background:#8b5cf614;border-color:#8b5cf638;box-shadow:0 0 0 1px #8b5cf60f}[data-theme=dark] .redis-hero-card,[data-theme=dark] .redis-guidance-card,[data-theme=dark] .redis-overview-card,[data-theme=dark] .redis-instance-card{background:linear-gradient(#151025fa,#0c0915)}[data-theme=dark] .redis-hero-copy p,[data-theme=dark] .redis-guidance-list li,[data-theme=dark] .redis-instance-title p,[data-theme=dark] .redis-info-section-head p,[data-theme=dark] .redis-key-search-panel p,[data-theme=dark] .redis-key-meta,[data-theme=dark] .redis-conversation-head,[data-theme=dark] .redis-key-entry-head,[data-theme=dark] .redis-key-entry pre,[data-theme=dark] .redis-key-raw-block pre,[data-theme=dark] .redis-key-empty p,[data-theme=dark] .redis-confirm-body p,[data-theme=dark] .redis-empty-hint{color:var(--text-secondary)}[data-theme=dark] .redis-hero-signal,[data-theme=dark] .redis-guidance-list li,[data-theme=dark] .redis-summary-item,[data-theme=dark] .redis-info-board,[data-theme=dark] .redis-keys-board,[data-theme=dark] .redis-key-search-panel,[data-theme=dark] .redis-key-row,[data-theme=dark] .redis-key-inspector,[data-theme=dark] .redis-key-entry,[data-theme=dark] .redis-conversation-item,[data-theme=dark] .redis-key-raw-block,[data-theme=dark] .redis-key-empty,[data-theme=dark] .redis-confirm-token,[data-theme=dark] .redis-info-section{border-color:var(--border-default);background:linear-gradient(#18122af5,#0e0a19fa);box-shadow:inset 0 1px #ffffff08}[data-theme=dark] .redis-instance-card.is-expanded{border-color:#8b5cf633;box-shadow:0 24px 54px #0000007a,0 0 0 1px #8b5cf614}[data-theme=dark] .redis-instance-body{border-top:1px solid #ffffff0d}[data-theme=dark] .redis-status-dot{background:var(--text-muted);box-shadow:0 0 0 4px #6b6b701f}[data-theme=dark] .redis-status-dot.online{background:var(--status-success);box-shadow:0 0 0 4px #00d26a24}[data-theme=dark] .redis-status-dot.offline{background:var(--status-error);box-shadow:0 0 0 4px #ff3b3b1f}[data-theme=dark] .redis-confirm-token{background:#ff3b3b14;border-style:dashed;border-color:#ff3b3b3d}[data-theme=dark] .redis-confirm-token-key{background:#d8b4fe14;border-color:#d8b4fe38}[data-theme=dark] .login-form-panel{border:1px solid var(--border-default);box-shadow:var(--shadow-lg);background:linear-gradient(#151025fa,#0b0814)}[data-theme=dark] .login-form-panel>p{color:var(--text-secondary)}[data-theme=dark] .login-form-panel h2{color:var(--text-primary);letter-spacing:-.03em}[data-theme=dark] .login-form label{color:var(--text-muted);font-family:var(--font-rri-mono),monospace;letter-spacing:.12em;text-transform:uppercase;font-size:.68rem;font-weight:600}[data-theme=dark] .form-error{color:var(--status-error-text);background:#ff3b3b14;border:1px solid #ff3b3b2e}@media (max-width:1120px){[data-theme=dark] .topbar{padding:14px 22px}[data-theme=dark] .app-content{padding:24px 22px 32px}}@media (max-width:900px){[data-theme=dark] .page-header{flex-direction:column}[data-theme=dark] .page-header-actions{justify-content:flex-start;width:100%}}@media (max-width:760px){[data-theme=dark] .app-content{padding:18px 16px 24px}[data-theme=dark] .topbar{align-items:flex-start;padding:12px 16px}[data-theme=dark] .topbar h2{font-size:1.1rem}}.rri-flow-bg{isolation:isolate;overflow:hidden}.rri-flow-bg svg{width:100%;height:100%;transform:scale(1.02)}.flow-atmosphere-blob{opacity:.24;mix-blend-mode:screen;filter:blur(44px);transform-origin:50%;animation:26s ease-in-out infinite flowBlobFloat}.flow-atmosphere-blob.blob-primary{fill:url(#flowBlobPrimary)}.flow-atmosphere-blob.blob-info{fill:url(#flowBlobInfo);animation-duration:22s;animation-delay:-6s}.flow-atmosphere-blob.slow{animation-duration:34s}.flow-grid-lines path{fill:none;stroke:color-mix(in srgb,var(--stroke)62%,transparent);stroke-width:1px;stroke-dasharray:4 14;opacity:.4;animation:28s linear infinite flowGridDrift}.flow-grid-lines path:nth-child(2n){animation-duration:32s;animation-direction:reverse}.flow-paths path{stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:260 1400;stroke-dashoffset:1450px;opacity:.8;animation:14s linear infinite flowRun}.flow-path-primary{stroke:url(#flowStroke)}.flow-path-soft{stroke:url(#flowStrokeSoft);opacity:.56;animation-duration:18s}.flow-station{opacity:.84;transform-origin:50%;animation:9.5s ease-in-out infinite flowStationBreath}.flow-station:nth-child(2n){animation-delay:-1.2s}.flow-station-shell{fill:url(#stationShell);stroke:color-mix(in srgb,var(--stroke)82%,white 18%);stroke-width:1px;filter:url(#stationGlow)}.flow-station-bar{fill:color-mix(in srgb,var(--primary)72%,white 28%)}.flow-station-line{fill:color-mix(in srgb,var(--text-secondary)34%,transparent)}.flow-station-line.soft{fill:color-mix(in srgb,var(--text-muted)38%,transparent)}.flow-station-port{fill:var(--primary);filter:drop-shadow(0 0 10px var(--flow-node-glow))}.flow-station.flow-tone-info .flow-station-bar,.flow-station.flow-tone-info .flow-station-port{fill:var(--accent-electric)}.flow-station.flow-tone-neutral .flow-station-bar,.flow-station.flow-tone-neutral .flow-station-port{fill:color-mix(in srgb,var(--text-secondary)78%,white 22%)}.flow-node-ring{fill:none;stroke:color-mix(in srgb,var(--flow-node)76%,white 24%);stroke-width:1.35px;opacity:.42;animation:3.6s ease-in-out infinite flowRingPulse}.flow-node-core{fill:var(--flow-node);filter:drop-shadow(0 0 10px var(--flow-node-glow));animation:3s ease-in-out infinite flowCorePulse}.flow-nodes g:nth-child(2n) .flow-node-ring,.flow-nodes g:nth-child(2n) .flow-node-core{animation-delay:-.8s}.flow-pulse{fill:var(--primary);opacity:.92;filter:drop-shadow(0 0 12px var(--flow-node-glow));animation:1.7s ease-in-out infinite flowPulseBlink}.flow-pulse.flow-tone-info{fill:var(--accent-electric);filter:drop-shadow(0 0 12px #e9d5ff6b)}.flow-pulse.flow-tone-neutral{fill:color-mix(in srgb,var(--text-secondary)78%,white 22%);filter:drop-shadow(0 0 8px #a8b8d147)}.flow-beacon{fill:none;stroke-width:1.2px;opacity:.16;transform-origin:50%;animation:4.4s ease-in-out infinite flowBeaconPulse}.flow-beacon.primary{stroke:var(--primary)}.flow-beacon.info{stroke:var(--accent-electric);animation-delay:-1.4s}@keyframes flowBlobFloat{0%,to{transform:translate(0,0)scale(.96)}50%{transform:translate(18px,-14px)scale(1.04)}}@keyframes flowGridDrift{0%{opacity:.2;transform:translate(0,0)}50%{opacity:.42}to{opacity:.2;transform:translate(-28px)}}@keyframes flowStationBreath{0%,to{opacity:.72;transform:translate(0,0)}50%{opacity:.96;transform:translateY(-3px)}}@keyframes flowRingPulse{0%,to{opacity:.2;transform:scale(.88)}50%{opacity:.6;transform:scale(1.08)}}@keyframes flowCorePulse{0%,to{opacity:.38;transform:scale(.92)}50%{opacity:.92;transform:scale(1.18)}}@keyframes flowPulseBlink{0%,to{opacity:.45}50%{opacity:1}}@keyframes flowBeaconPulse{0%,to{opacity:.08;transform:scale(.82)}50%{opacity:.22;transform:scale(1.12)}}[data-theme=dark] .rri-flow-bg{opacity:.34}[data-theme=dark] .flow-grid-lines path{stroke:#a78bfa1a}[data-theme=dark] .flow-station-shell{stroke:#b5a0e42e}[data-theme=dark] .flow-node-ring{stroke:#ddd6fe80}@media (prefers-reduced-motion:reduce){.flow-atmosphere-blob,.flow-grid-lines path,.flow-paths path,.flow-station,.flow-node-ring,.flow-node-core,.flow-pulse,.flow-beacon{animation:none!important}.flow-pulses,.flow-beacons{display:none}}:root{--font-rri-feature-body:var(--font-manrope),var(--font-inter),-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-rri-feature-heading:var(--font-sora),var(--font-space-grotesk),var(--font-inter),-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.redis-dashboard-shell{--redis-shell-bg:radial-gradient(circle at 16% 0%,color-mix(in srgb,var(--primary)14%,transparent),transparent 26%),radial-gradient(circle at 100% 12%,color-mix(in srgb,var(--status-info)10%,transparent),transparent 20%),linear-gradient(180deg,color-mix(in srgb,var(--bg-card)68%,transparent),transparent 86%);--redis-panel-bg:linear-gradient(180deg,color-mix(in srgb,var(--bg-card)96%,transparent),color-mix(in srgb,var(--bg-muted)82%,transparent));--redis-panel-soft:linear-gradient(180deg,color-mix(in srgb,var(--bg-card-hover)82%,transparent),color-mix(in srgb,var(--bg-card)92%,transparent));--redis-glow-strong:0 22px 54px #00000057,0 0 0 1px color-mix(in srgb,var(--brand-accent)10%,transparent);background:var(--redis-shell-bg);box-shadow:inset 0 1px 0 color-mix(in srgb,var(--text-inverse)8%,transparent);border-radius:30px;gap:22px;padding:18px;display:grid}.redis-dashboard-shell,.redis-dashboard-shell button,.redis-dashboard-shell input{font-family:var(--font-rri-feature-body),sans-serif}.redis-dashboard-shell h1,.redis-dashboard-shell h2,.redis-dashboard-shell h3,.redis-dashboard-shell strong,.redis-dashboard-shell .page-header h1,.redis-dashboard-shell .section-head h3{font-family:var(--font-rri-feature-heading),sans-serif;letter-spacing:-.03em}.redis-dashboard-shell .page-header{align-items:end;padding:6px 4px 2px}.redis-dashboard-shell .page-header-main{gap:10px}.redis-dashboard-shell .page-header h1{font-size:clamp(2.3rem,3vw,3.45rem);line-height:.92}.redis-dashboard-shell .page-header p{max-width:68ch;font-size:1rem}.redis-refresh-button{min-width:176px}.redis-page-actions{flex-wrap:wrap;justify-content:flex-end;gap:12px;display:flex}.redis-create-button{min-width:156px}.redis-command-card,.redis-guidance-card,.redis-overview-card,.redis-instance-card{position:relative;overflow:hidden}.redis-command-card:after,.redis-guidance-card:after,.redis-overview-card:after,.redis-instance-card:after{content:"";pointer-events:none;background:radial-gradient(circle at top right,color-mix(in srgb,var(--brand-accent)14%,transparent),transparent 24%),linear-gradient(90deg,transparent,color-mix(in srgb,var(--text-inverse)4%,transparent),transparent);opacity:.8;position:absolute;inset:0}.redis-hero-card,.redis-guidance-card,.redis-overview-card,.redis-instance-card{background:var(--redis-panel-bg);border-color:color-mix(in srgb,var(--border-strong)78%,transparent);box-shadow:var(--redis-glow-strong)}@keyframes redisBeaconPulse{0%,to{opacity:.72;transform:scale(.92)}50%{opacity:1;transform:scale(1)}}.redis-overview-grid{gap:18px}.redis-overview-card{gap:14px;min-height:188px;padding:22px}.redis-overview-card-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.redis-overview-card strong{font-size:clamp(2.2rem,3vw,3rem);line-height:.9}.redis-overview-card p{max-width:28ch}.redis-instance-list{gap:20px}.redis-instance-card{gap:22px;padding:10px 10px 12px}.redis-instance-card.is-expanded{border-color:color-mix(in srgb,var(--brand-accent)28%,transparent);box-shadow:0 26px 64px #00000061,0 0 0 1px color-mix(in srgb,var(--brand-accent)12%,transparent)}.redis-instance-trigger{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:22px;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;transition:background-color .18s,transform .18s;display:flex}.redis-instance-trigger:hover{background:color-mix(in srgb,var(--brand-accent)8%,transparent)}.redis-instance-trigger:focus-visible{outline:2px solid color-mix(in srgb,var(--brand-accent)42%,transparent);outline-offset:2px}.redis-instance-trigger-main{align-items:center;gap:14px;min-width:0;display:flex}.redis-instance-trigger-main .redis-status-dot{flex-shrink:0;margin-top:0}.redis-instance-trigger h3{margin:0;font-size:1.08rem;line-height:1.15}.redis-instance-trigger-meta{align-items:center;gap:12px;display:flex}.redis-instance-chevron{border:1px solid color-mix(in srgb,var(--border-strong)82%,transparent);background:color-mix(in srgb,var(--bg-card-hover)84%,transparent);border-radius:999px;place-items:center;width:34px;height:34px;transition:transform .24s,border-color .18s,background-color .18s;display:grid}.redis-instance-chevron svg{width:16px;height:16px}.redis-instance-chevron.is-open{transform:rotate(180deg)}.redis-instance-collapse{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .32s,opacity .22s;display:grid}.redis-instance-collapse.is-expanded{opacity:1;grid-template-rows:1fr}.redis-instance-collapse-inner{min-height:0;overflow:hidden}.redis-instance-panel-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.redis-instance-panel-copy{gap:10px;display:grid}.redis-instance-panel-copy p{max-width:72ch;margin:0}.redis-instance-actions-panel{justify-content:flex-end}.redis-instance-mark .redis-status-dot{width:10px;height:10px;margin-top:0;position:absolute;top:10px;right:10px}.redis-instance-actions{flex-wrap:wrap;gap:12px;display:flex}.redis-summary-grid{gap:14px}.redis-summary-item{background:var(--redis-panel-soft);border-color:color-mix(in srgb,var(--border-default)86%,transparent);min-height:136px;padding:18px 18px 16px}.redis-summary-item strong{font-size:clamp(1.6rem,2vw,2rem);line-height:.94}.redis-instance-body{gap:20px;padding:14px 16px 10px}.redis-info-board,.redis-keys-board{background:var(--redis-panel-soft);padding:22px}.redis-key-search-panel,.redis-key-inspector,.redis-key-row,.redis-key-entry,.redis-conversation-item,.redis-key-raw-block,.redis-key-empty{border-radius:22px}.redis-key-search-panel{background:radial-gradient(circle at top right,color-mix(in srgb,var(--status-info)12%,transparent),transparent 34%),var(--redis-panel-soft);padding:18px}.redis-quick-filters{flex-wrap:wrap;gap:10px;display:flex}.redis-quick-filter{border:1px solid color-mix(in srgb,var(--border-strong)72%,transparent);background:color-mix(in srgb,var(--bg-card)92%,transparent);border-radius:999px;min-height:34px;padding:0 14px}.redis-quick-filter:hover,.redis-quick-filter.active{color:var(--text-primary);border-color:color-mix(in srgb,var(--brand-accent)26%,transparent);background:color-mix(in srgb,var(--brand-accent)12%,transparent)}.redis-key-results{gap:16px}.redis-key-row{background:linear-gradient(180deg,color-mix(in srgb,var(--bg-card)94%,transparent),color-mix(in srgb,var(--bg-card-hover)80%,transparent));padding:16px 18px}.redis-key-row.is-selected{border-color:color-mix(in srgb,var(--brand-accent)28%,transparent);box-shadow:0 18px 36px #00000029,inset 0 1px 0 color-mix(in srgb,var(--text-inverse)8%,transparent)}.redis-key-content{flex:1;align-items:flex-start;gap:14px;min-width:0;display:flex}.redis-key-type-pill{border:1px solid color-mix(in srgb,var(--brand-accent)18%,transparent);background:linear-gradient(145deg,color-mix(in srgb,var(--brand-accent)16%,transparent),color-mix(in srgb,var(--bg-card-hover)92%,transparent));width:40px;height:40px;font-family:var(--font-rri-feature-heading),sans-serif;border-radius:14px;flex-shrink:0;place-items:center;font-size:.88rem;font-weight:700;display:grid}.redis-key-main{gap:10px}.redis-key-main strong,.redis-key-detail-summary strong{font-size:1rem;line-height:1.35}.redis-key-inspector{background:radial-gradient(circle at top right,color-mix(in srgb,var(--brand-accent)12%,transparent),transparent 34%),var(--redis-panel-soft);padding:22px;position:sticky;top:18px}.redis-key-detail-summary{border-bottom:1px solid color-mix(in srgb,var(--border-default)82%,transparent);padding-bottom:4px}.redis-conversation-item,.redis-key-entry,.redis-key-raw-block{background:linear-gradient(180deg,color-mix(in srgb,var(--bg-card)96%,transparent),color-mix(in srgb,var(--bg-card-hover)82%,transparent));padding:16px 18px}.redis-conversation-item.is-assistant{border-color:color-mix(in srgb,var(--brand-accent)22%,transparent);background:linear-gradient(180deg,color-mix(in srgb,var(--brand-accent)12%,transparent),color-mix(in srgb,var(--bg-card-hover)88%,transparent))}.redis-conversation-item.is-user{border-color:color-mix(in srgb,var(--status-success)18%,transparent);background:linear-gradient(180deg,color-mix(in srgb,var(--status-success)10%,transparent),color-mix(in srgb,var(--bg-card-hover)90%,transparent))}.redis-conversation-item.is-tool{border-color:color-mix(in srgb,var(--warning)18%,transparent);background:linear-gradient(180deg,color-mix(in srgb,var(--warning)10%,transparent),color-mix(in srgb,var(--bg-card-hover)90%,transparent))}.redis-conversation-item p{font-size:.95rem}.redis-key-entry pre,.redis-key-raw-block pre{font-size:.85rem;font-family:var(--font-rri-mono),monospace}.redis-key-empty{background:linear-gradient(180deg,color-mix(in srgb,var(--bg-card)92%,transparent),color-mix(in srgb,var(--bg-card-hover)76%,transparent));min-height:220px}.redis-confirm-menu{background:var(--redis-panel-bg)}.redis-modal-overlay{z-index:140}.redis-create-menu{max-width:760px}.redis-create-body{gap:18px}.redis-create-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.redis-create-preview{border:1px solid color-mix(in srgb,var(--border-strong)72%,transparent);background:radial-gradient(circle at top right,color-mix(in srgb,var(--status-info)12%,transparent),transparent 38%),color-mix(in srgb,var(--bg-card-hover)88%,transparent);border-radius:18px;gap:10px;padding:16px 18px;display:grid}.redis-create-preview-grid{color:var(--text-secondary);gap:8px;font-size:.92rem;display:grid}.redis-create-result-menu{max-width:640px}.redis-create-result-body{gap:18px}.redis-create-result-grid{gap:14px;display:grid}.redis-create-result-item{border:1px solid color-mix(in srgb,var(--border-strong)74%,transparent);background:linear-gradient(180deg,color-mix(in srgb,var(--bg-card)96%,transparent),color-mix(in srgb,var(--bg-card-hover)88%,transparent));border-radius:18px;gap:8px;padding:16px 18px;display:grid}.redis-create-result-item span{color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;font-size:.84rem;font-weight:700}.redis-create-result-item strong{color:var(--text-primary);word-break:break-word;font-size:1.05rem;line-height:1.35}.redis-create-result-secret{border-color:color-mix(in srgb,var(--status-info)26%,transparent);background:radial-gradient(circle at top right,color-mix(in srgb,var(--status-info)12%,transparent),transparent 42%),linear-gradient(180deg,color-mix(in srgb,var(--bg-card)98%,transparent),color-mix(in srgb,var(--bg-card-hover)88%,transparent))}.redis-create-result-secret strong{font-family:var(--font-rri-mono),monospace}[data-theme=light] .redis-dashboard-shell{--redis-shell-bg:radial-gradient(circle at 10% 0%,#8b5cf624,transparent 24%),radial-gradient(circle at 100% 18%,#d8b4fe1f,transparent 20%),linear-gradient(180deg,#ffffffbd,#ebf2fc47 88%);--redis-panel-bg:linear-gradient(180deg,#fffffffa,#f0f6fceb);--redis-panel-soft:linear-gradient(180deg,#fafdfffa,#ecf3fbe6)}[data-theme=light] .redis-dashboard-shell .page-header h1,[data-theme=light] .redis-hero-copy h3,[data-theme=light] .redis-overview-card strong,[data-theme=light] .redis-summary-item strong,[data-theme=light] .redis-instance-title h3,[data-theme=light] .redis-create-result-item strong{color:#12233d}[data-theme=light] .redis-hero-pill,[data-theme=light] .redis-quick-filter,[data-theme=light] .redis-key-type-pill,[data-theme=light] .redis-create-result-item span{color:#28486e}@media (max-width:1320px){.redis-dashboard-shell{border-radius:24px;padding:16px}.redis-key-inspector{position:static}}@media (max-width:980px){.redis-page-actions{justify-content:stretch;width:100%}.redis-page-actions>*{flex:100%}.redis-create-grid,.redis-create-result-grid{grid-template-columns:1fr}.redis-instance-trigger{padding:12px 14px}.redis-instance-trigger-meta{gap:10px}}@media (max-width:720px){.redis-dashboard-shell{border-radius:20px;padding:12px}.redis-hero-card,.redis-guidance-card,.redis-overview-card,.redis-instance-card,.redis-info-board,.redis-keys-board,.redis-key-inspector{padding:18px}.redis-overview-card-head{flex-direction:column;align-items:flex-start}.redis-instance-trigger{align-items:flex-start}.redis-instance-trigger-meta{justify-content:space-between;width:100%}.redis-instance-panel-head{flex-direction:column}.redis-key-content{width:100%}}.section-overline{letter-spacing:.18em;text-transform:uppercase;color:var(--brand-accent);font-size:.65rem;font-weight:700;font-family:var(--font-rri-heading);margin-bottom:2px;display:block}[data-theme=light] .sidebar-user{background:radial-gradient(circle at 100% 0,#9f896e1f,#0000 38%),linear-gradient(#fffbf7f5,#f4ede5e0);border-color:#a78f7242;box-shadow:inset 0 1px #ffffff9e,0 10px 26px #6e563a14}[data-theme=light] .sidebar-user-meta span{color:#8f7a64}[data-theme=light] .sidebar-user-meta strong{color:#2f271f}[data-theme=light] .sidebar-user-meta p{color:#726657}[data-theme=light] .sidebar-user-indicator{background:#2fcf98;box-shadow:0 0 0 6px #2fcf9833}[data-theme=light] .topbar-inner{background:radial-gradient(circle at 100% 0,#9f896e1a,#0000 24%),#fcf8f3eb;border-color:#a78f7238;box-shadow:0 18px 36px #6e563a14,inset 0 1px #ffffff85}[data-theme=light] .topbar-session-card,[data-theme=light] .menu-button,[data-theme=light] .btn-theme-switch,[data-theme=light] .btn-logout-icon{background:#fffcf8eb;border-color:#a78f7233;box-shadow:0 8px 20px #6e563a0f}[data-theme=light] .topbar-eyebrow,[data-theme=light] .topbar-session-label{color:#8f7a64}[data-theme=light] .topbar h2,[data-theme=light] .topbar-session-meta strong,[data-theme=light] .menu-button,[data-theme=light] .btn-theme-switch,[data-theme=light] .btn-logout-icon{color:#2f271f}[data-theme=light] .topbar p,[data-theme=light] .topbar-session-meta span:last-child,[data-theme=light] .topbar-session-chevron{color:#6f6458}.ads-campaign-row.expanded{border-color:color-mix(in srgb,var(--brand-accent)24%,transparent);box-shadow:0 18px 36px #0000001f,inset 0 1px 0 color-mix(in srgb,var(--text-inverse)8%,transparent)}:root{--motion-fast:.16s;--motion-base:.22s;--motion-slow:.32s;--motion-page:.42s;--motion-ease-soft:cubic-bezier(.2,.8,.2,1);--motion-ease-emphasis:cubic-bezier(.16,1,.3,1)}.route-transition{animation:routeInPolish var(--motion-page)var(--motion-ease-emphasis)backwards;transform-origin:top}.route-transition>.page-stack>*,.route-transition>.redis-dashboard-shell>*{opacity:0;animation:sectionInPolish .56s var(--motion-ease-emphasis)forwards;transform:translateY(14px)}.route-transition>.page-stack>:first-child,.route-transition>.redis-dashboard-shell>:first-child{animation-delay:50ms}.route-transition>.page-stack>:nth-child(2),.route-transition>.redis-dashboard-shell>:nth-child(2){animation-delay:.1s}.route-transition>.page-stack>:nth-child(3),.route-transition>.redis-dashboard-shell>:nth-child(3){animation-delay:.15s}.route-transition>.page-stack>:nth-child(4),.route-transition>.redis-dashboard-shell>:nth-child(4){animation-delay:.2s}.route-transition>.page-stack>:nth-child(5),.route-transition>.redis-dashboard-shell>:nth-child(5){animation-delay:.24s}.route-transition>.page-stack>:nth-child(6),.route-transition>.redis-dashboard-shell>:nth-child(6){animation-delay:.28s}.route-transition>.page-stack>:nth-child(7),.route-transition>.redis-dashboard-shell>:nth-child(7){animation-delay:.32s}.route-transition>.page-stack>:nth-child(8),.route-transition>.redis-dashboard-shell>:nth-child(8){animation-delay:.36s}.page-header,.topbar,.sidebar,.topbar-session-card,.sidebar-user,.menu-button,.btn-theme-switch,.btn-logout-icon,.btn-primary,.btn-secondary,.btn-ghost,.btn-outline,.btn-danger,.btn-success,.rri-card,.filter-chip,.connection-chip,.instance-chip,.thread-item,.kanban-column,.kanban-lead-card,.agent-directory-item,.campaign-directory-item,.dashboard-clean-link,.redis-instance-trigger,.redis-instance-chevron,.redis-quick-filter,.redis-key-row,.saved-connection,.integration-card,.hero-highlight-card,.metric-card,.contact-stat-card,.redis-overview-card,.campaign-card-refined,.timeline-item{transition-timing-function:var(--motion-ease-soft)}.rri-card,.thread-item,.kanban-column,.kanban-lead-card,.agent-directory-item,.campaign-directory-item,.dashboard-clean-link,.redis-instance-trigger,.redis-key-row,.saved-connection,.integration-card,.hero-highlight-card,.metric-card,.contact-stat-card,.redis-overview-card,.campaign-card-refined,.timeline-item{will-change:transform,box-shadow,border-color}.rri-card:before{transition:opacity var(--motion-slow)var(--motion-ease-soft),transform var(--motion-slow)var(--motion-ease-soft);transform:translateY(10px)}.rri-card:hover:before{opacity:.56;transform:translate(0,0)}.btn-primary,.btn-secondary,.btn-ghost,.btn-outline,.btn-danger,.btn-success,.filter-chip,.connection-chip,.instance-chip,.menu-button,.btn-theme-switch,.btn-logout-icon,.sidebar-link{transition-duration:var(--motion-fast)}.btn-primary:active:not(:disabled),.btn-secondary:active:not(:disabled),.btn-ghost:active:not(:disabled),.btn-outline:active:not(:disabled),.btn-danger:active:not(:disabled),.btn-success:active:not(:disabled),.menu-button:active,.btn-theme-switch:active,.btn-logout-icon:active,.filter-chip:active,.connection-chip:active,.instance-chip:active,.sidebar-link:active{transform:translateY(0)scale(.985)}.topbar-session-card,.sidebar-user,.page-header,.dashboard-hero-main,.dashboard-side-panel,.conversation-list,.conversation-chat{animation:surfaceSettle .72s var(--motion-ease-soft)both}.topbar-session-card{animation-delay:.1s}.sidebar-user{animation-delay:.14s}.page-header{animation-delay:40ms}.sidebar-link:hover,.thread-item:hover,.dashboard-clean-link:hover,.campaign-directory-item:hover,.agent-directory-item:hover,.saved-connection:hover,.redis-key-row:hover,.integration-card:hover{transform:translateY(-2px)}.kanban-lead-card:hover,.redis-instance-trigger:hover{transform:translateY(-2px)scale(1.002)}.metric-card:hover,.contact-stat-card:hover,.hero-highlight-card:hover,.redis-overview-card:hover,.campaign-card-refined:hover,.timeline-item:hover{transform:translateY(-3px)}.flow-atmosphere-blob{animation-timing-function:cubic-bezier(.34,0,.2,1)}.flow-paths path{animation-duration:16s}.flow-path-soft{animation-duration:20s}.flow-pulse{animation-duration:2.2s}.flow-beacon{opacity:.12}.flow-station{animation-duration:11s}.flow-grid-lines path{animation-duration:34s}@keyframes routeInPolish{0%{opacity:0;filter:blur(2px);transform:translateY(12px)scale(.994)}to{opacity:1;transform:none}}@keyframes sectionInPolish{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes surfaceSettle{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.route-transition,.route-transition>.page-stack>*,.route-transition>.redis-dashboard-shell>*,.topbar-session-card,.sidebar-user,.page-header,.dashboard-hero-main,.dashboard-side-panel,.conversation-list,.conversation-chat{opacity:1!important;filter:none!important;animation:none!important;transform:none!important}.page-header,.topbar,.sidebar,.topbar-session-card,.sidebar-user,.menu-button,.btn-theme-switch,.btn-logout-icon,.btn-primary,.btn-secondary,.btn-ghost,.btn-outline,.btn-danger,.btn-success,.rri-card,.filter-chip,.connection-chip,.instance-chip,.thread-item,.kanban-column,.kanban-lead-card,.agent-directory-item,.campaign-directory-item,.dashboard-clean-link,.redis-instance-trigger,.redis-instance-chevron,.redis-quick-filter,.redis-key-row,.saved-connection,.integration-card,.hero-highlight-card,.metric-card,.contact-stat-card,.redis-overview-card,.campaign-card-refined,.timeline-item,.rri-card:before{will-change:auto!important;transition:none!important}}.conversation-layout.live{grid-template-rows:auto minmax(0,1fr);height:min(84vh,980px);min-height:780px;display:grid;overflow:hidden}.chat-input-row .btn-primary{min-width:132px}.conversation-error,.integration-feedback{margin:0 24px 20px}[data-theme=dark] .thread-item.active{background:linear-gradient(135deg,#764eff2e,#412a7b2e),#1b182cf5;border-color:#977bff5c;box-shadow:0 0 0 1px #977bff2e,0 26px 50px #06060c47}@media (max-width:920px){.conversation-layout.live{height:auto;min-height:0}}@media (max-width:760px){.chat-input-row .btn-primary{width:100%}}.conversation-layout.live{height:min(100vh - 220px,920px);min-height:780px}.conversation-thread-avatar-dot.is-open{background:color-mix(in srgb,var(--text-secondary)60%,transparent)}.conversation-thread-status-dot.is-open{background:color-mix(in srgb,var(--text-secondary)72%,transparent);color:color-mix(in srgb,var(--text-secondary)36%,transparent)}.conversation-chat-actions .btn-secondary,.conversation-chat-actions .btn-primary{white-space:nowrap;min-height:36px;padding:0 16px;font-size:.88rem}.conversation-compose .btn-primary{min-width:128px}.conversation-chat-feedbacks .integration-feedback,.conversation-chat-feedbacks .conversation-error{margin:0}.conversation-side-actions .btn-primary,.conversation-side-actions .btn-secondary{justify-content:center;width:100%}.conversation-empty-panel.compact{min-height:180px}.conversation-empty-panel.side{min-height:240px}@keyframes threadCardIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes messageBubbleIn{0%{opacity:0;transform:translateY(8px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes toolbarSlideIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@media (max-width:1280px){.conversation-layout.live{height:auto;min-height:0}}@media (max-width:720px){.conversation-layout.live{gap:12px}.conversation-compose .btn-primary{width:100%}}.workspace-fullheight{flex-direction:column;height:calc(100dvh - 216px);min-height:500px;display:flex}.supa-workspace{background:var(--surface);border:1px solid #8b5cf62e;border-radius:20px;flex:1;grid-template-columns:268px minmax(0,1fr);gap:0;min-height:0;display:grid;overflow:hidden;box-shadow:0 0 0 1px #7c3aed0f,0 8px 32px #00000047,inset 0 1px #ffffff0a}.supa-sidebar{border-right:1px solid var(--stroke);background:radial-gradient(circle at 0 0,#7c3aed12,#0000 60%),#080612a6;flex-direction:column;min-height:0;display:flex;overflow:hidden}.supa-sidebar-top{flex-shrink:0;align-items:center;gap:8px;padding:16px 14px 10px;display:flex}.supa-sidebar-heading{letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);flex:1;align-items:center;gap:7px;font-size:.72rem;font-weight:800;display:flex}.supa-db-icon{color:var(--primary);font-size:1rem}.supa-count-badge{color:var(--primary);background:#7c3aed24;border-radius:999px;padding:1px 7px;font-size:.68rem;font-weight:700}.supa-icon-btn{border:1px solid var(--stroke);width:28px;height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:8px;flex-shrink:0;place-items:center;font-size:.9rem;transition:all .15s;display:grid}.supa-icon-btn:hover:not(:disabled){color:var(--text);background:#7c3aed1a;border-color:#7c3aed4d}.supa-icon-btn:disabled{opacity:.45;cursor:not-allowed}.supa-search-box{flex-shrink:0;padding:0 10px 10px;position:relative}.supa-search-ico{opacity:.35;pointer-events:none;color:var(--text-muted);font-size:1rem;position:absolute;top:50%;left:20px;transform:translateY(-66%)}.supa-search{border:1px solid var(--stroke);width:100%;color:var(--text);font:inherit;background:#ffffff08;border-radius:10px;outline:none;padding:7px 10px 7px 28px;font-size:.83rem;transition:border-color .15s,background .15s}.supa-search:focus{background:#7c3aed0d;border-color:#7c3aed66}.supa-table-scroll{flex:1;min-height:0;padding-bottom:12px;overflow-y:auto}.supa-table-list{flex-direction:column;gap:2px;margin:0;padding:0 8px;list-style:none;display:flex}.supa-table-btn{width:100%;color:var(--text-muted);font:inherit;cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:10px;align-items:center;gap:8px;padding:8px 10px;font-size:.85rem;transition:all .14s;display:flex}.supa-table-btn:hover{color:var(--text);background:#7c3aed12;border-color:#7c3aed24}.supa-table-btn.active{color:var(--text);background:#7c3aed21;border-color:#7c3aed47;font-weight:600}.supa-tbl-icon{opacity:.6;flex-shrink:0;font-size:.78rem}.supa-tbl-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.supa-tbl-count{color:var(--text-muted);font-variant-numeric:tabular-nums;background:#ffffff0d;border-radius:6px;flex-shrink:0;padding:2px 6px;font-size:.7rem;font-weight:600}.supa-table-btn.active .supa-tbl-count{color:var(--primary);background:#7c3aed2e}.supa-setup{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:28px 18px 20px;display:flex}.supa-setup-ico{background:#7c3aed1a;border:1px solid #7c3aed38;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex;box-shadow:0 0 18px #7c3aed1f}.supa-setup-ico svg{width:22px;height:22px;color:var(--primary)}.supa-setup-title{color:var(--text);letter-spacing:-.01em;margin:0;font-size:.9rem;font-weight:700}.supa-setup-sub{color:var(--text-muted);margin:0;font-size:.78rem;line-height:1.5}.supa-setup-sub code{font-family:var(--font-mono),monospace;color:var(--text);background:#ffffff12;border-radius:4px;padding:1px 5px;font-size:.72rem}.supa-setup-code{font-family:var(--font-mono),monospace;color:#a78bfabf;text-align:left;white-space:pre;background:#080612b3;border:1px solid #8b5cf624;border-radius:10px;width:100%;margin:0;padding:10px 12px;font-size:.68rem;line-height:1.7}.supa-setup-err{color:#fca5a5a6;text-align:center;background:#ef44440f;border:1px solid #ef444424;border-radius:8px;width:100%;margin:0;padding:6px 10px;font-size:.73rem;line-height:1.45}.supa-error-box{flex-direction:column;align-items:flex-start;gap:10px;padding:16px 14px;display:flex}.supa-error-center{text-align:center;flex:1;justify-content:center;align-items:center;padding:32px 20px}.supa-error-text{color:#fca5a5;margin:0;font-size:.84rem}.supa-hint{color:var(--text-muted);margin:0;padding:16px 14px;font-size:.84rem}.supa-skeleton-list{flex-direction:column;gap:7px;padding:8px 10px;display:flex}.supa-skeleton-row{background:#ffffff0a linear-gradient(90deg,#ffffff0a 25%,#ffffff14 50%,#ffffff0a 75%) 0 0/300% 100%;border-radius:9px;height:30px;animation:1.6s infinite supa-shimmer}@keyframes supa-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.supa-main{flex-direction:column;min-height:0;display:flex;overflow:hidden}.supa-main-bar{border-bottom:1px solid var(--stroke);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:12px 18px;display:flex}.supa-breadcrumb{align-items:center;gap:8px;min-width:0;display:flex}.supa-bc-schema{color:var(--text-muted);font-size:.8rem;font-family:var(--font-mono),monospace}.supa-bc-sep{color:var(--text-muted);opacity:.4;font-size:.85rem}.supa-bc-table{color:var(--text);font-size:.9rem;font-weight:700;font-family:var(--font-mono),monospace;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.supa-rows-pill{color:var(--primary);background:#7c3aed1a;border:1px solid #7c3aed33;border-radius:999px;flex-shrink:0;padding:2px 10px;font-size:.71rem;font-weight:700}.supa-loading-dot{color:var(--text-muted);font-size:.9rem}.supa-bar-actions{flex-shrink:0;gap:6px;display:flex}.supa-ghost-btn{border:1px solid var(--stroke);color:var(--text-muted);font:inherit;cursor:pointer;background:#ffffff08;border-radius:8px;align-items:center;gap:5px;padding:6px 11px;font-size:.79rem;font-weight:600;transition:all .14s;display:inline-flex}.supa-ghost-btn:hover:not(:disabled){color:var(--text);background:#7c3aed17;border-color:#7c3aed47}.supa-ghost-btn:disabled{opacity:.45;cursor:not-allowed}.supa-close-btn:hover{color:#fca5a5!important;background:#ef44441a!important;border-color:#ef444440!important}.supa-tabs{border-bottom:1px solid var(--stroke);flex-shrink:0;padding:0 18px;display:flex}.supa-tab{color:var(--text-muted);font:inherit;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:7px;margin-bottom:-1px;padding:10px 14px;font-size:.85rem;font-weight:600;transition:color .15s,border-color .15s;display:flex}.supa-tab:hover{color:var(--text)}.supa-tab.active{color:var(--primary);border-bottom-color:var(--primary)}.supa-data-panel{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.supa-table-skeleton{flex:1;padding:0}.supa-sk-head{border-bottom:1px solid var(--stroke);background:#ffffff0d;height:42px}.supa-sk-row{background-image:linear-gradient(90deg,#ffffff05 25%,#ffffff0d 50%,#ffffff05 75%);background-size:300% 100%;border-bottom:1px solid #ffffff08;height:39px;animation:1.6s infinite supa-shimmer}.supa-grid-wrap{flex:1;min-height:0;overflow:auto}.supa-grid{border-collapse:collapse;width:100%;font-size:.84rem}.supa-th-num{text-align:right;width:48px;color:var(--text-muted);border-bottom:1px solid var(--stroke);z-index:3;-webkit-user-select:none;user-select:none;background:#080612e6;padding:9px 10px;font-size:.68rem;position:sticky;top:0}.supa-th{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--stroke);text-align:left;white-space:nowrap;z-index:2;background:#080612e6;padding:9px 14px;position:sticky;top:0}.supa-th-inner{align-items:center;gap:8px;display:flex}.supa-col-name{color:var(--text);font-size:.82rem;font-weight:700}.supa-type-badge{letter-spacing:.02em;border-radius:4px;padding:1px 5px;font-size:.65rem;font-weight:600}.supa-type-text{background:var(--status-neutral-bg);color:var(--status-neutral-text)}.supa-type-number{background:var(--status-info-bg);color:var(--status-info-text)}.supa-type-bool{background:var(--status-success-bg);color:var(--status-success-text)}.supa-type-date{background:var(--status-warning-bg);color:var(--status-warning-text)}.supa-type-json{background:color-mix(in srgb,var(--primary)14%,transparent);color:var(--primary)}.supa-type-uuid{background:var(--status-error-bg);color:var(--status-error-text)}.supa-td-num{text-align:right;color:var(--text-muted);-webkit-user-select:none;user-select:none;font-variant-numeric:tabular-nums;background:#08061247;border-bottom:1px solid #ffffff08;padding:8px 10px;font-size:.7rem}.supa-td{vertical-align:middle;border-bottom:1px solid #ffffff08;max-width:280px;padding:8px 14px;transition:background .1s}.supa-data-cell{cursor:pointer}.supa-null-cell{cursor:default}.supa-tr:hover .supa-td,.supa-tr:hover .supa-td-num{background:#7c3aed0a}.supa-null{color:var(--text-muted);opacity:.55;font-size:.75rem;font-style:italic}.supa-cell-val{font-family:var(--font-mono),monospace;color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;display:block;overflow:hidden}.supa-pager{border-top:1px solid var(--stroke);flex-shrink:0;justify-content:space-between;align-items:center;padding:11px 18px;display:flex}.supa-pager-info{flex-direction:column;align-items:center;gap:2px;display:flex}.supa-pager-page{color:var(--text);font-size:.84rem;font-weight:600}.supa-pager-total{color:var(--text-muted);font-size:.74rem}.supa-sql-panel{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.supa-sql-bar{border-bottom:1px solid var(--stroke);flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;padding:9px 18px;display:flex}.supa-sql-bar-left{gap:8px;display:flex}.supa-kbd-hint{color:var(--text-muted);font-size:.74rem}.supa-dropdown-anchor{position:relative}.supa-dropdown{border:1px solid var(--stroke);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:200;background:#0c0916fa;border-radius:12px;min-width:200px;padding:6px;position:absolute;top:calc(100% + 6px);left:0;overflow:hidden;box-shadow:0 12px 40px #00000080}.supa-dropdown-wide{min-width:340px}.supa-dropdown-label{letter-spacing:.12em;color:var(--text-muted);opacity:.6;margin:0;padding:6px 10px 4px;font-size:.65rem;font-weight:800}.supa-dropdown-item{width:100%;color:var(--text);font:inherit;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:8px;padding:8px 10px;font-size:.83rem;transition:background .12s;display:flex}.supa-dropdown-item:hover{background:#7c3aed1a}.supa-tpl-icon{opacity:.7;font-size:.9rem}.supa-history-item{font-family:var(--font-mono),monospace;white-space:nowrap;text-overflow:ellipsis;font-size:.76rem;overflow:hidden}.supa-dropdown-sep{background:var(--stroke);height:1px;margin:4px 0}.supa-danger-item{color:#fca5a5!important}.supa-danger-item:hover{background:#ef44441a!important}.supa-editor-wrap{border-bottom:1px solid var(--stroke);flex-direction:column;flex-shrink:0;display:flex}.supa-sql-input{width:100%;color:var(--text);font-family:var(--font-mono),monospace;resize:vertical;background:0 0;border:none;outline:none;min-height:130px;padding:14px 18px;font-size:.87rem;line-height:1.65}.supa-editor-footer{border-top:1px solid var(--stroke);justify-content:flex-end;align-items:center;gap:8px;padding:8px 18px;display:flex}.supa-sql-err{color:#fca5a5;background:#ef444412;border:1px solid #ef444433;border-radius:10px;flex-shrink:0;align-items:flex-start;gap:12px;margin:12px 18px;padding:12px 14px;font-size:.84rem;display:flex}.supa-err-ico{flex-shrink:0;font-size:1rem}.supa-sql-err strong{color:#fca5a5;font-size:.85rem;display:block}.supa-sql-err p{color:#fca5a5bf;margin:4px 0 0;font-size:.8rem}.supa-results{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.supa-results-bar{border-bottom:1px solid var(--stroke);flex-shrink:0;justify-content:space-between;align-items:center;padding:9px 18px;display:flex}.supa-results-stat{color:var(--text-muted);font-size:.8rem}.supa-welcome{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;padding:40px 24px;display:flex}.supa-welcome-icon{background:#7c3aed14;border:1px solid #7c3aed29;border-radius:18px;flex-shrink:0;justify-content:center;align-items:center;width:64px;height:64px;display:flex;box-shadow:0 0 28px #7c3aed1a}.supa-welcome-icon svg{color:#8b5cf6a6;width:30px;height:30px}.supa-welcome-title{color:var(--text);letter-spacing:-.01em;margin:0;font-size:1rem;font-weight:700}.supa-welcome-sub{color:var(--text-muted);max-width:300px;margin:0;font-size:.85rem;line-height:1.65}.supa-backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:500;background:#000000b8;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.supa-modal{border:1px solid var(--stroke);background:#0c0916fa;border-radius:18px;width:100%;max-width:660px;animation:.18s supa-modal-in;overflow:hidden;box-shadow:0 32px 80px #000000a6}@keyframes supa-modal-in{0%{opacity:0;transform:scale(.96)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.supa-modal-header{border-bottom:1px solid var(--stroke);align-items:center;gap:10px;padding:14px 16px;display:flex}.supa-modal-col{font-weight:700;font-family:var(--font-mono),monospace;color:var(--primary);flex:1;font-size:.9rem}.supa-modal-actions{gap:6px;display:flex}.supa-modal-body{font-family:var(--font-mono),monospace;color:var(--text);white-space:pre-wrap;word-break:break-all;max-height:420px;margin:0;padding:18px;font-size:.85rem;line-height:1.6;overflow-y:auto}.supa-toasts{z-index:1000;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:22px;right:22px}.supa-toast{pointer-events:auto;border-radius:10px;align-items:center;gap:8px;max-width:320px;padding:10px 16px;font-size:.84rem;font-weight:600;animation:.22s supa-toast-in;display:flex}@keyframes supa-toast-in{0%{opacity:0;transform:translateY(10px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.supa-toast-ok{background:var(--status-success-bg);color:var(--status-success-text);border:1px solid color-mix(in srgb,var(--status-success)30%,transparent)}.supa-toast-err{background:var(--status-error-bg);color:var(--status-error-text);border:1px solid color-mix(in srgb,var(--status-error)30%,transparent)}.supa-toast-info{background:var(--status-info-bg);color:var(--status-info-text);border:1px solid color-mix(in srgb,var(--status-info)30%,transparent)}.supa-toast-icon{flex-shrink:0}@keyframes supa-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.supa-spin{animation:.75s linear infinite supa-spin;display:inline-block}.supa-drawer-overlay{z-index:200;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0000008c;justify-content:flex-end;align-items:stretch;animation:.18s both supa-overlay-in;display:flex;position:fixed;inset:0}@keyframes supa-overlay-in{0%{opacity:0}to{opacity:1}}.supa-drawer{background:linear-gradient(160deg,#140f26 0%,#0a0814 100%);border-left:1px solid #8b5cf638;flex-direction:column;width:min(480px,100%);max-height:100dvh;animation:.3s cubic-bezier(.34,1.56,.64,1) both supa-drawer-in;display:flex;overflow:hidden;box-shadow:-8px 0 40px #00000080,inset 1px 0 #ffffff08}@keyframes supa-drawer-in{0%{opacity:0;transform:translate(60px)}to{opacity:1;transform:translate(0)}}.supa-drawer-header{border-bottom:1px solid #8b5cf61f;flex-shrink:0;align-items:center;gap:12px;padding:20px 22px 18px;display:flex}.supa-drawer-icon{background:#7c3aed1f;border:1px solid #7c3aed38;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.supa-drawer-icon svg{width:18px;height:18px;color:var(--primary)}.supa-drawer-title{flex:1;min-width:0}.supa-drawer-title h3{color:var(--text);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.95rem;font-weight:700;overflow:hidden}.supa-drawer-title p{color:var(--text-muted);font-size:.74rem;font-family:var(--font-mono),monospace;margin:0}.supa-drawer-body{scrollbar-width:thin;scrollbar-color:#8b5cf633 transparent;flex-direction:column;flex:1;gap:14px;padding:20px 22px;display:flex;overflow-y:auto}.supa-drawer-footer{border-top:1px solid #8b5cf61a;flex-shrink:0;gap:10px;padding:16px 22px 20px;display:flex}.supa-drawer-footer .btn-primary{flex:1}.supa-drawer-footer .btn-secondary{white-space:nowrap}.supa-field{flex-direction:column;gap:6px;display:flex}.supa-field-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);align-items:center;gap:6px;font-size:.76rem;font-weight:700;display:flex}.supa-field-type{color:#a78bfab3;letter-spacing:0;text-transform:lowercase;font-size:.65rem;font-weight:600;font-family:var(--font-mono),monospace;background:#7c3aed1a;border-radius:5px;padding:2px 6px}.supa-field input[type=text],.supa-field input[type=number],.supa-field input[type=datetime-local]{color:var(--text);background:#ffffff0a;border:1px solid #8b5cf626;border-radius:10px;width:100%;padding:9px 12px;font-family:inherit;font-size:.88rem;transition:border-color .15s,box-shadow .15s}.supa-field input[type=text]:focus,.supa-field input[type=number]:focus,.supa-field input[type=datetime-local]:focus{border-color:#8b5cf673;outline:none;box-shadow:0 0 0 3px #7c3aed1a}.supa-field textarea{color:var(--text);resize:vertical;width:100%;min-height:80px;font-size:.82rem;font-family:var(--font-mono),monospace;background:#ffffff0a;border:1px solid #8b5cf626;border-radius:10px;padding:9px 12px;transition:border-color .15s,box-shadow .15s}.supa-field textarea:focus{border-color:#8b5cf673;outline:none;box-shadow:0 0 0 3px #7c3aed1a}.supa-field-bool{align-items:center;gap:10px;display:flex}.supa-field-bool input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary);cursor:pointer;border-radius:5px}.supa-field-bool label{color:var(--text-muted);cursor:pointer;font-size:.86rem}.supa-auto-toggle{cursor:pointer;color:var(--text-muted);background:#7c3aed0a;border:1px dashed #8b5cf633;border-radius:10px;align-items:center;gap:8px;padding:8px 12px;font-size:.8rem;transition:all .15s;display:flex}.supa-auto-toggle:hover{color:var(--text);background:#7c3aed14;border-color:#8b5cf659}.supa-col-builder{flex-direction:column;gap:8px;display:flex}.supa-col-row{grid-template-columns:1fr 130px 32px 32px;align-items:center;gap:8px;display:grid}.supa-col-row input,.supa-col-row select{color:var(--text);background:#ffffff0a;border:1px solid #8b5cf626;border-radius:9px;padding:7px 10px;font-family:inherit;font-size:.84rem;transition:border-color .15s}.supa-col-row input:focus,.supa-col-row select:focus{border-color:#8b5cf673;outline:none;box-shadow:0 0 0 3px #7c3aed1a}.supa-col-row select{cursor:pointer}.supa-col-row select option{background:#1a1428}.supa-col-nullable{width:32px;height:32px;color:var(--text-muted);cursor:pointer;title:attr(title);background:#ffffff0a;border:1px solid #8b5cf626;border-radius:8px;place-items:center;font-size:.7rem;font-weight:700;transition:all .15s;display:grid}.supa-col-nullable.is-nullable{color:var(--primary);background:#7c3aed1f;border-color:#7c3aed4d}.supa-col-del{width:32px;height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;place-items:center;font-size:.9rem;transition:all .15s;display:grid}.supa-col-del:hover{color:#fca5a5;background:#ef44441a;border-color:#ef444440}.supa-add-col-btn{color:var(--text-muted);font:inherit;cursor:pointer;background:0 0;border:1px dashed #8b5cf638;border-radius:10px;justify-content:center;align-items:center;gap:8px;width:100%;padding:9px 14px;font-size:.83rem;transition:all .15s;display:flex}.supa-add-col-btn:hover{color:var(--text);background:#7c3aed0f;border-color:#8b5cf673}.supa-auto-cols-note{color:#6ee7b7cc;background:#10b9810f;border:1px solid #10b98126;border-radius:10px;align-items:center;gap:8px;padding:10px 14px;font-size:.78rem;line-height:1.5;display:flex}.supa-drawer-close{width:32px;height:32px;color:var(--text-muted);cursor:pointer;background:#ffffff0a;border:1px solid #8b5cf626;border-radius:8px;flex-shrink:0;place-items:center;font-size:.9rem;transition:all .15s;display:grid}.supa-drawer-close:hover{color:#fca5a5;background:#ef44441a;border-color:#ef444440}.supa-drawer-loading{color:var(--text-muted);align-items:center;gap:10px;padding:20px;font-size:.86rem;display:flex}.supa-field-input{color:var(--text);background:#ffffff0a;border:1px solid #8b5cf626;border-radius:10px;width:100%;padding:9px 12px;font-family:inherit;font-size:.88rem;transition:border-color .15s,box-shadow .15s}.supa-field-input:focus{border-color:#8b5cf673;outline:none;box-shadow:0 0 0 3px #7c3aed1a}.supa-field-input:disabled{opacity:.4;cursor:not-allowed}.supa-field-input.supa-field-json{font-family:var(--font-mono),monospace;resize:vertical;min-height:80px;font-size:.82rem}.supa-field-auto .supa-field-label span:first-child{opacity:.45}.supa-field-bool{gap:6px;display:flex}.supa-bool-opt{color:var(--text-muted);font-size:.84rem;font-family:var(--font-mono),monospace;cursor:pointer;text-align:center;background:#ffffff08;border:1px solid #8b5cf62e;border-radius:9px;flex:1;padding:8px 10px;transition:all .15s}.supa-bool-opt:hover{color:var(--text);background:#7c3aed14;border-color:#8b5cf659}.supa-bool-opt.active{color:#c4b5fd;background:#7c3aed26;border-color:#7c3aed80;font-weight:700}.supa-col-builder-label{letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);opacity:.55;margin-bottom:2px;font-size:.7rem;font-weight:800}.supa-rls-banner{color:#fdba74e6;background:#fb923c14;border-bottom:1px solid #fb923c33;flex-shrink:0;align-items:flex-start;gap:10px;padding:10px 16px;font-size:.81rem;line-height:1.45;display:flex}.supa-rls-banner svg{color:#fb923ccc;flex-shrink:0;margin-top:1px}.supa-rls-banner strong{color:#fbbf24}.supa-row-filter{border-bottom:1px solid #8b5cf61a;flex-wrap:wrap;flex-shrink:0;align-items:center;gap:8px;padding:10px 16px;display:flex}.supa-filter-col{color:var(--text-muted);cursor:pointer;background:#ffffff0d;border:1px solid #8b5cf62e;border-radius:9px;flex-shrink:0;min-width:140px;padding:6px 10px;font-family:inherit;font-size:.82rem;transition:border-color .15s}.supa-filter-col:focus{color:var(--text);border-color:#8b5cf673;outline:none}.supa-filter-col option{background:#1a1428}.supa-filter-input-wrap{flex:1;align-items:center;display:flex;position:relative}.supa-filter-input-wrap .supa-search-ico{color:var(--text-muted);pointer-events:none;opacity:.5;font-size:1rem;position:absolute;left:10px}.supa-filter-input{width:100%;color:var(--text);background:#ffffff0a;border:1px solid #8b5cf626;border-radius:9px;padding:6px 34px 6px 30px;font-family:inherit;font-size:.86rem;transition:border-color .15s,box-shadow .15s}.supa-filter-input:focus{border-color:#8b5cf673;outline:none;box-shadow:0 0 0 3px #7c3aed14}.supa-filter-input:disabled{opacity:.35;cursor:not-allowed}.supa-filter-clear{color:var(--text-muted);cursor:pointer;opacity:.6;background:0 0;border:none;border-radius:4px;padding:2px 4px;font-size:.8rem;transition:opacity .15s;position:absolute;right:8px}.supa-filter-clear:hover{opacity:1}.supa-filter-count{color:#a78bfab3;white-space:nowrap;flex-shrink:0;font-size:.76rem;font-weight:600}.supa-filter-op{color:var(--text-muted);cursor:pointer;background:#ffffff0d;border:1px solid #8b5cf62e;border-radius:9px;flex-shrink:0;min-width:100px;padding:6px 10px;font-family:inherit;font-size:.82rem;transition:border-color .15s}.supa-filter-op:focus{color:var(--text);border-color:#8b5cf673;outline:none}.supa-filter-op:disabled{opacity:.35;cursor:not-allowed}.supa-filter-op option{background:#1a1428}.supa-search-btn{color:#3ecf8e;cursor:pointer;white-space:nowrap;background:#3ecf8e1f;border:1px solid #3ecf8e4d;border-radius:9px;flex-shrink:0;align-items:center;gap:6px;padding:6px 14px;font-family:inherit;font-size:.82rem;font-weight:600;transition:background .15s,border-color .15s,transform .1s;display:flex}.supa-search-btn:hover:not(:disabled){background:#3ecf8e33;border-color:#3ecf8e80}.supa-search-btn:active:not(:disabled){transform:scale(.97)}.supa-search-btn:disabled{opacity:.35;cursor:not-allowed}.supa-filter-chip{color:#a78bfae6;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:#a78bfa1f;border:1px solid #8b5cf64d;border-radius:100px;flex-shrink:0;align-items:center;gap:6px;max-width:260px;padding:4px 10px;font-family:inherit;font-size:.76rem;font-weight:600;transition:background .15s,border-color .15s;display:flex;overflow:hidden}.supa-filter-chip:hover{background:#a78bfa33;border-color:#8b5cf680}.supa-chip-x{opacity:.6;flex-shrink:0;font-size:.7rem}.supa-add-row-btn{border-radius:9px!important;min-height:32px!important;padding:6px 14px!important;font-size:.82rem!important}.port-stat.stacks{color:#13bef9;font-weight:600}.port-tab.active{color:#13bef9;background:#13bef91f}.port-status.unknown{color:var(--text-muted);background:#ffffff12}@keyframes progressSlide{0%{transform:translate(-100%)}to{transform:translate(350%)}}.app-main{grid-template-columns:minmax(0,1fr)}@media (max-width:900px){.app-shell,.app-shell.is-collapsed{grid-template-columns:1fr}}@media (max-width:760px){.workspace-fullheight{height:auto;min-height:0}.supa-workspace{flex-direction:column;min-width:0;display:flex}.supa-sidebar{border-right:none;border-bottom:1px solid var(--stroke);min-width:0;max-height:320px}.supa-main,.supa-data-panel{min-width:0}.supa-grid-wrap{flex:none;min-width:0}.supa-main-bar{flex-wrap:wrap;row-gap:8px}.supa-bar-actions{flex-wrap:wrap}}[data-theme=light]{--brand-primary:#2f271f;--bg-app:#f6efe2;--bg-sidebar:#f3ead9;--bg-card:#fcf8f3;--bg-card-hover:#f6eee1;--bg-elevated:#fcf8f3;--bg-muted:#f1e8d6;--bg-subtle:#eae0c8;--text-primary:#2f271f;--text-secondary:#6f6458;--text-muted:#8f7a64;--border-default:#a78f7238;--border-strong:#a78f7261;--border-subtle:#a78f721f;--status-neutral-bg:#f1e8d6;--status-neutral-text:#6f6458;--bg:var(--bg-app);--surface:#fcf8f3eb;--surface-alt:#fcf8f3fa;--surface-elevated:var(--bg-card);--surface-soft:var(--bg-muted);--text:var(--text-primary);--text-soft:#6f6458;--stroke:var(--border-default);--stroke-strong:var(--border-strong);--shadow-xs:0 1px 2px #6e563a0d;--shadow-sm:0 1px 3px #6e563a14,0 1px 2px #6e563a0d;--shadow-md:0 4px 6px #6e563a12,0 2px 4px #6e563a0a;--shadow-lg:0 10px 15px #6e563a1a,0 4px 6px #6e563a0d;--shadow-xl:0 20px 25px #6e563a1f,0 10px 10px #6e563a0d;--shadow-card:0 1px 3px #6e563a14,0 1px 2px #6e563a0d;--shadow-card-hover:0 4px 12px #6e563a1a;--shadow:var(--shadow-card);--theme-wipe-fill:#fcf8f3fa;--theme-wipe-depth:#f1e8d6fc;--theme-wipe-edge:#fcf8f3f2;--theme-wipe-sheen:#7c3aed14;--theme-wipe-noise:#2f271f0a}[data-theme=light] body{background:radial-gradient(circle at 0 0,#7c3aed14,#0000 25%),radial-gradient(circle at 100% 0,#9f896e1a,#0000 20%),linear-gradient(#fbf7f0 0%,#f6efe2 48%,#f1e8d6 100%)}[data-theme=light] .sidebar{background:radial-gradient(at 100% 0,#7c3aed1a,#0000 36%),linear-gradient(#f7f1e6 0%,#f1e7d5 100%);border-right:1px solid #a78f7240;box-shadow:inset -1px 0 #7c3aed0d}[data-theme=light] .supa-sidebar{background:radial-gradient(circle at 0 0,#7c3aed0f,#0000 60%),#fcf8f3bf}[data-theme=light] .supa-th-num,[data-theme=light] .supa-th{background:#fcf8f3eb}[data-theme=light] .supa-td-num{background:#a78f720f}[data-theme=light] .supa-td,[data-theme=light] .supa-td-num{border-bottom-color:#a78f7224}[data-theme=light] .supa-setup-code{color:#5b3fae;background:#fcf8f3eb;border-color:#a78f7238}[data-theme=light] .supa-drawer{background:linear-gradient(160deg,#fcf8f3 0%,#f6eee1 100%);border-left-color:#a78f7240}[data-theme=light] .supa-modal{background:#fcf8f3fa}.warmup-list-card{padding:0;overflow:hidden}.warmup-list{display:grid}.warmup-row{border-bottom:1px solid var(--stroke);grid-template-columns:1.2fr 1.3fr .85fr 1.4fr .65fr .75fr 1fr .9fr;align-items:center;gap:14px;padding:14px 20px;display:grid}.warmup-row:last-child{border-bottom:none}.warmup-row-head{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);padding-top:16px;padding-bottom:12px;font-size:.72rem;font-weight:700}.warmup-row-phone{color:var(--text);font-weight:700;text-decoration:none}.warmup-row-phone:hover{color:var(--primary)}.warmup-row-instance{color:var(--text-soft);font-size:.88rem}.warmup-row-progress{flex-direction:column;gap:6px;display:flex}.warmup-progress-bar{background:var(--surface-soft);border-radius:999px;height:6px;overflow:hidden}.warmup-progress-fill{background:linear-gradient(90deg,var(--primary),var(--primary-alt));border-radius:999px;height:100%;transition:width .3s}.warmup-day-label{color:var(--text-muted);font-size:.74rem}.warmup-delivery{color:var(--success);font-weight:700}.warmup-delivery.low{color:var(--danger)}.warmup-delivery.muted{color:var(--text-muted);font-weight:400}.warmup-new-limit{color:var(--primary);font-weight:700}.warmup-new-limit.muted{color:var(--text-muted);font-weight:400}.warmup-mode-toggle{border:1px solid var(--stroke);cursor:pointer;background:var(--surface-soft);color:var(--text-soft);white-space:nowrap;border-radius:999px;padding:6px 12px;font-size:.78rem;font-weight:700;transition:all .2s}.warmup-mode-toggle.ia{background:color-mix(in srgb,var(--primary)16%,transparent);border-color:var(--primary);color:var(--primary)}.warmup-mode-toggle:disabled{opacity:.6;cursor:default}.warmup-row-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.warmup-pause-btn{padding:6px 12px;font-size:.8rem}.warmup-countdown{font-variant-numeric:tabular-nums;color:var(--text);font-weight:700}.warmup-countdown.muted{color:var(--text-muted);font-weight:400}.warmup-countdown.due{color:var(--success)}.warmup-start-btn{border-color:var(--success);color:var(--success);padding:6px 12px;font-size:.8rem}.warmup-risk-btn{border-color:var(--status-warning-text);color:var(--status-warning-text);padding:6px 12px;font-size:.8rem}.warmup-remove-btn{border-color:var(--danger);color:var(--danger);background:0 0;padding:6px 12px;font-size:.8rem}.warmup-available-row{border-bottom:1px solid var(--stroke);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.warmup-available-row:last-child{border-bottom:none}.warmup-available-row strong{font-size:.9rem;display:block}.warmup-available-row p{color:var(--text-muted);margin:2px 0 0;font-size:.78rem}.warmup-drawer-empty{color:var(--text-muted);font-size:.88rem}.warmup-drawer-empty a{color:var(--primary);font-weight:600}.warmup-drawer-error{color:var(--danger)}.warmup-detail-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.warmup-back-link{color:var(--text-muted);margin-bottom:8px;font-size:.82rem;text-decoration:none;display:inline-block}.warmup-back-link:hover{color:var(--primary)}.warmup-detail-header h1{margin:0;font-size:1.6rem}.warmup-detail-header>div:first-child>p{color:var(--text-muted);margin:4px 0 0}.warmup-detail-meta{align-items:center;gap:10px;display:flex}.warmup-risk-banner{border-color:color-mix(in srgb,var(--danger)40%,var(--stroke));background:color-mix(in srgb,var(--danger)6%,var(--surface))}.warmup-risk-banner strong{color:var(--danger)}.warmup-risk-banner p{color:var(--text-soft);margin:6px 0 0}.warmup-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}@media (max-width:1000px){.warmup-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.warmup-detail-grid{grid-template-columns:1fr}}.warmup-capacity-card{gap:8px;display:grid}.warmup-limit-editor{gap:8px;margin-top:4px;display:flex}.warmup-limit-editor input{border:1px solid var(--stroke);background:var(--surface-soft);width:90px;color:var(--text);border-radius:10px;padding:8px 10px;font-size:.9rem}.warmup-limit-editor .btn-secondary{padding:8px 16px;font-size:.85rem}.warmup-capacity-head{color:var(--text-soft);justify-content:space-between;align-items:center;gap:12px;font-size:.86rem;display:flex}.warmup-capacity-card strong{color:var(--primary);font-size:clamp(1.8rem,3vw,2.4rem)}.warmup-capacity-card p{color:var(--text-muted);margin:0;font-size:.86rem}.warmup-capacity-banner{align-items:center;gap:28px;padding:24px 28px;display:flex}.warmup-capacity-banner-figure{border-right:1px solid var(--stroke);flex-direction:column;flex-shrink:0;align-items:center;padding-right:28px;display:flex}.warmup-capacity-banner-figure strong{color:var(--primary);font-size:clamp(2.4rem,4vw,3.2rem);line-height:1}.warmup-capacity-banner-figure span{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);white-space:nowrap;margin-top:4px;font-size:.72rem;font-weight:700}.warmup-capacity-banner-copy{gap:6px;min-width:0;display:grid}.warmup-capacity-banner-head{align-items:center;gap:10px;font-weight:700;display:flex}.warmup-capacity-banner-copy p{color:var(--text-muted);max-width:60ch;margin:0;font-size:.86rem}@media (max-width:700px){.warmup-capacity-banner{flex-direction:column;align-items:flex-start;gap:16px}.warmup-capacity-banner-figure{border-right:none;border-bottom:1px solid var(--stroke);flex-direction:row;align-items:baseline;gap:10px;width:100%;padding-bottom:16px;padding-right:0}}.warmup-timeline{gap:14px;display:grid}.warmup-timeline-item{border:1px solid var(--stroke);background:var(--surface-soft);border-radius:12px;padding:12px 14px}.warmup-timeline-meta{color:var(--text-muted);justify-content:space-between;gap:10px;margin-bottom:6px;font-size:.76rem;display:flex}.warmup-timeline-route{font-family:var(--font-rri-mono),monospace}.warmup-timeline-text{color:var(--text);margin:0 0 8px}.warmup-timeline-status{font-size:.76rem;font-weight:700}.warmup-timeline-status.ok{color:var(--success)}.warmup-timeline-status.fail{color:var(--danger)}.warmup-timeline-cost{color:var(--text-muted);margin-top:4px;font-size:.72rem;display:inline-block}.warmup-chart-legend{color:var(--text-muted);gap:16px;margin-bottom:16px;font-size:.8rem;display:flex}.warmup-legend-dot{border-radius:50%;width:9px;height:9px;margin-right:6px;display:inline-block}.warmup-legend-dot.planned{background:var(--stroke-strong)}.warmup-legend-dot.sent{background:var(--primary)}.warmup-chart{align-items:flex-end;gap:10px;height:180px;padding-top:8px;display:flex}.warmup-chart-col{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:6px;height:100%;display:flex}.warmup-chart-bars{justify-content:center;align-items:flex-end;width:100%;height:150px;display:flex;position:relative}.warmup-chart-bar{border-radius:4px 4px 0 0;width:40%;position:absolute;bottom:0}.warmup-chart-bar.planned{background:var(--stroke-strong);opacity:.7;left:8%}.warmup-chart-bar.sent{background:var(--primary);right:8%}.warmup-chart-label{color:var(--text-muted);font-size:.68rem}.warmup-connection-card{gap:16px;max-width:520px;display:grid}.warmup-field{color:var(--text-soft);gap:6px;font-size:.84rem;font-weight:600;display:grid}.warmup-field input{border:1px solid var(--stroke);background:var(--surface-elevated);color:var(--text);font:inherit;border-radius:10px;padding:10px 12px}.warmup-field input:focus{border-color:var(--primary);outline:none}.warmup-connection-feedback{margin:0;font-size:.84rem}.warmup-connection-feedback.ok{color:var(--success)}.warmup-connection-feedback.error{color:var(--danger)}.warmup-connection-actions{gap:10px;display:flex}.warmup-connection-note{background:var(--surface-soft);max-width:520px}.warmup-connection-note strong{margin-bottom:6px;display:block}.warmup-connection-note p{color:var(--text-muted);margin:0;font-size:.86rem}@media (max-width:900px){.warmup-row{grid-template-columns:1fr;gap:6px;padding:14px}.warmup-row-head{display:none}.warmup-row-actions{justify-content:flex-start}}body,[data-theme=dark] body{background-image:linear-gradient(#ffffff05 1px,#0000 1px),linear-gradient(90deg,#ffffff05 1px,#0000 1px),linear-gradient(#07050d 0%,#0b0813 42%,#110b1f 100%);background-size:24px 24px,24px 24px,auto}[data-theme=light] body{background-image:linear-gradient(#fbf7f0 0%,#f6efe2 48%,#f1e8d6 100%)}.rri-card:before,.redis-command-card:after,.redis-guidance-card:after,.redis-overview-card:after,.redis-instance-card:after{display:none}.rri-badge-success{background:var(--status-success-bg);color:var(--status-success-text)}.rri-badge-warning{background:var(--status-warning-bg);color:var(--status-warning-text)}.rri-badge-error{background:var(--status-error-bg);color:var(--status-error-text)}.rri-badge-info{background:var(--status-info-bg);color:var(--status-info-text)}.rri-badge-muted,.rri-badge-default{background:var(--status-neutral-bg);color:var(--status-neutral-text)}.rri-badge-accent{background:color-mix(in srgb,var(--primary)14%,transparent);color:var(--primary)}
