@import "https://fonts.googleapis.com/css2?family=Heebo:wght@400;500;600;700&display=swap";@import "https://fonts.googleapis.com/css2?family=Noto+Sans+Arabic:wght@400;500;600;700&display=swap";@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,200..800;1,200..800&family=JetBrains+Mono:ital,wght@0,100..800;1,100..800&display=swap";:root{font-family:Plus Jakarta Sans,system-ui,Avenir,Helvetica,Arial,sans-serif;font-weight:400;line-height:1.6}html[lang=he],html[dir=rtl]{font-family:Heebo,Rubik,Noto Sans Hebrew,Segoe UI,Arial,sans-serif}html[lang=ar]{font-family:Noto Sans Arabic,Cairo,Tajawal,Segoe UI,Arial,sans-serif}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text-primary);background-color:var(--bg-light);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}a{-webkit-text-decoration:inherit;text-decoration:inherit;font-weight:500}body{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;min-width:320px;min-height:100vh;margin:0}h1{color:var(--text-primary);letter-spacing:-.025em;margin:0;font-size:1.875rem;font-weight:700}h2{color:var(--text-primary);margin:0;font-size:1.25rem;font-weight:700}.eyebrow{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:0;font-size:.8125rem;font-weight:600}h3{color:var(--text-primary);margin:0;font-size:1rem;font-weight:600}button{cursor:pointer;border:1px solid #0000;border-radius:8px;padding:.6em 1.2em;font-family:inherit;font-size:1em;font-weight:500;transition:border-color .25s}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--primary,#25d366);outline-offset:2px}button:focus:not(:focus-visible){outline:none}html{background-color:var(--bg-light)}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){color:var(--text-primary);background-color:var(--bg-light)}}select{appearance:none;width:100%;color:var(--text-primary);background-color:var(--bg-white,#fff);border:1px solid var(--border,#e2e8f0);cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;background-size:16px;border-radius:8px;padding:.75rem 2.5rem .75rem 1rem;font-family:inherit;font-size:.9375rem;transition:all .2s}select:hover{border-color:var(--primary,#25d366)}select:focus{border-color:var(--primary,#25d366);outline:none;box-shadow:0 0 0 3px #25d3661a}select:disabled{background-color:var(--bg-light,#f8fafc);color:var(--text-muted,#94a3b8);cursor:not-allowed}select option,option{background-color:var(--bg-card,var(--bg-white,#1e293b));color:var(--text-primary,#f1f5f9);padding:.5rem}[data-theme=dark] select option,[data-theme=dark] option{color:#f1f5f9;background-color:#1e293b}[data-theme=light] select option,[data-theme=light] option{color:#0f172a;background-color:#fff}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#00000080;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{background:var(--bg-white,#fff);border-radius:16px;flex-direction:column;width:90%;max-width:480px;max-height:90vh;animation:.3s slideUp;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}.modal.install-modal{max-width:680px}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{border-bottom:1px solid var(--border,#e2e8f0);flex-shrink:0;justify-content:space-between;align-items:center;padding:1.5rem 1.5rem 1rem;display:flex}.modal-header h2{color:var(--text-primary,#1e293b);text-transform:none;letter-spacing:normal;margin:0;font-size:1.25rem;font-weight:700}.modal-body{flex:auto;padding:1.5rem;overflow-y:auto}.modal-body>label{color:var(--text-secondary,#64748b);margin-bottom:.5rem;font-size:.875rem;font-weight:600;display:block}.modal-body input{border:1px solid var(--border,#e2e8f0);background:var(--bg-light,#f8fafc);box-sizing:border-box;border-radius:8px;width:100%;padding:.875rem 1rem;font-size:.9375rem;transition:all .2s}.modal-body input:focus{border-color:var(--primary,#25d366);background:var(--bg-white,#fff);outline:none;box-shadow:0 0 0 3px #25d3661a}.modal-body input[type=radio]:not(.toggle-switch input),.modal-body input[type=checkbox]:not(.toggle-switch input){width:auto;box-shadow:none;background:0 0;border:none;border-radius:0;flex:none;padding:0}.modal-footer{flex-shrink:0;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem 1.5rem;display:flex}.btn-icon{background:var(--bg-light,#f8fafc);border:1px solid var(--border,#e2e8f0);cursor:pointer;width:36px;min-width:36px;height:36px;min-height:36px;color:var(--text-secondary,#64748b);box-sizing:border-box;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:all .2s;display:inline-flex}.btn-icon svg{stroke:currentColor;width:18px;height:18px;display:block}.btn-icon:hover{color:var(--error-text);background:#ef44441f;border-color:#ef44444d}.btn-icon:hover svg{stroke:currentColor}.btn-icon.btn-secondary,.btn-icon.btn-danger,.btn-icon.btn-primary,.btn-secondary.btn-icon,.btn-danger.btn-icon,.btn-primary.btn-icon{padding:0}.btn-icon.btn-danger,.btn-danger.btn-icon{color:#fff}.btn-icon.btn-danger svg,.btn-danger.btn-icon svg{stroke:#fff;color:#fff}.btn-icon.btn-danger:hover:not(:disabled),.btn-danger.btn-icon:hover:not(:disabled){color:#fff;background:#b91c1c}.btn-icon.btn-danger:hover:not(:disabled) svg,.btn-danger.btn-icon:hover:not(:disabled) svg{stroke:#fff}.btn-icon.btn-secondary,.btn-secondary.btn-icon{color:var(--text-primary)}.btn-icon.btn-secondary svg,.btn-secondary.btn-icon svg{stroke:var(--text-primary);color:var(--text-primary)}.btn-icon.btn-secondary:hover:not(:disabled),.btn-secondary.btn-icon:hover:not(:disabled){background:var(--bg-hover,var(--bg-white,#fff));border-color:var(--primary,#0284c7);color:var(--primary,#0284c7)}.btn-icon.btn-secondary:hover:not(:disabled) svg,.btn-secondary.btn-icon:hover:not(:disabled) svg{stroke:var(--primary,#0284c7)}.btn-secondary{background:var(--bg-light,#f8fafc);color:var(--text-secondary,#64748b);border:1px solid var(--border,#e2e8f0);box-sizing:border-box;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.25rem;font-size:.9375rem;font-weight:600;line-height:1.25;text-decoration:none;transition:all .2s;display:inline-flex}.btn-secondary:hover:not(:disabled){background:var(--bg-white,#fff);border-color:var(--text-muted,#94a3b8);color:var(--text-primary,#1e293b);text-decoration:none}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--primary,#25d366);color:var(--btn-primary-text,#0f172a);box-sizing:border-box;cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.25rem;font-size:.9375rem;font-weight:600;line-height:1.25;text-decoration:none;transition:all .2s;display:inline-flex}.btn-primary:hover:not(:disabled){background:var(--primary-hover,#1da851);border-color:#0000}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-danger{background:var(--error,#ef4444);color:#fff;box-sizing:border-box;cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.25rem;font-size:.9375rem;font-weight:600;line-height:1.25;text-decoration:none;transition:all .2s;display:inline-flex}.btn-danger:hover:not(:disabled){background:#b91c1c;border-color:#0000}.btn-danger:disabled{opacity:.5;cursor:not-allowed}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin}code{background:var(--bg-light,#f1f5f9);color:var(--text-primary,#1e293b);border-radius:4px;padding:.125rem .375rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.875em}[dir=rtl] code,[dir=rtl] .mono,[dir=rtl] pre{text-align:left;direction:ltr;unicode-bidi:embed}[dir=rtl] .modal-footer{flex-direction:row-reverse;justify-content:flex-end}[dir=rtl] select{background-position:.75rem;padding:.75rem 1rem .75rem 2.5rem}[dir=rtl] .modal-body input,[dir=rtl] .modal-body textarea,[dir=rtl] input[type=text],[dir=rtl] input[type=url],[dir=rtl] input[type=password],[dir=rtl] input[type=number],[dir=rtl] textarea{text-align:right}[dir=rtl] input[type=url],[dir=rtl] input[type=email],[dir=rtl] input[type=tel]{text-align:left;direction:ltr}[dir=rtl] .toast-container{left:1rem;right:auto}@media (width<=768px){h1{font-size:1.5rem}.modal{border-radius:12px;width:95%;max-width:none;margin:1rem}.modal-header{padding:1.25rem 1.25rem .875rem}.modal-header h2{font-size:1.125rem}.modal-body{padding:1.25rem}.modal-footer{padding:.875rem 1.25rem 1.25rem}select{padding:.625rem 2.25rem .625rem .875rem;font-size:.875rem}}@media (width<=480px){h1{font-size:1.25rem}.modal-overlay{align-items:flex-end}.modal{border-radius:16px 16px 0 0;width:100%;margin:0}}.upgrade-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;background-color:#0009;justify-content:center;align-items:center;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.upgrade-modal-content{background:var(--bg-card,var(--bg-white,#fff));border:1px solid var(--border,#e2e8f0);border-radius:12px;width:90%;max-width:420px;animation:.3s ease-out slideUp;position:relative;overflow:hidden;box-shadow:0 10px 40px #0003}.upgrade-modal-close{color:var(--text-muted,#64748b);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:4px;transition:all .2s;display:flex;position:absolute;top:16px;right:16px}.upgrade-modal-close:hover{background:var(--bg-hover,#f1f5f9);color:var(--text-primary,#0f172a)}.upgrade-modal-header{text-align:center;padding:24px 24px 16px}.upgrade-modal-icon-wrapper{color:#ef4444;background:linear-gradient(135deg,#ef44441a,#ef444433);border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 16px;display:flex}.upgrade-modal-title{color:var(--text-primary,#0f172a);margin:0;font-size:1.25rem;font-weight:600}.upgrade-modal-body{text-align:center;color:var(--text-muted,#64748b);padding:0 24px 24px;font-size:.95rem;line-height:1.5}.upgrade-modal-features{text-align:left;background:var(--bg-light,#f8fafc);border:1px solid var(--border,#e2e8f0);border-radius:8px;flex-direction:column;gap:12px;margin-top:20px;padding:16px;display:flex}.feature-item{color:var(--text-primary,#0f172a);align-items:center;gap:10px;font-size:.9rem;display:flex}.feature-item svg{color:var(--primary,#25d366)}.upgrade-modal-footer{background:var(--bg-light,#f8fafc);border-top:1px solid var(--border,#e2e8f0);justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}.upgrade-btn{background:linear-gradient(135deg, var(--primary,#25d366), #6366f1);color:#fff;border:none;box-shadow:0 4px 12px #6366f140}.upgrade-btn:hover{transform:translateY(-1px);box-shadow:0 6px 16px #6366f159}.layout{min-height:100vh;display:flex}.sidebar{background:var(--bg-white);border-right:1px solid var(--border);z-index:100;flex-direction:column;width:260px;height:100dvh;max-height:100dvh;transition:width .3s,transform .3s;display:flex;position:fixed}.sidebar.collapsed{width:72px}.sidebar-header{border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:.75rem;min-height:72px;padding:1.5rem;display:flex}.sidebar.collapsed .sidebar-header{justify-content:center;padding:1.5rem 1rem}.sidebar-logo,.nx-mark{object-fit:contain;flex-shrink:0;width:28px;height:28px}.nx-mark{background:var(--primary);color:#082f49;border-radius:8px;justify-content:center;align-items:center;font-size:.95rem;font-weight:800;display:inline-flex}.mobile-brand .sidebar-logo,.mobile-brand .nx-mark{width:24px;height:24px}.sidebar-brand{white-space:nowrap;flex-direction:column;display:flex;overflow:hidden}.brand-name{color:var(--text-primary);letter-spacing:-.01em;font-size:1.125rem;font-weight:800}.collapse-toggle{background:var(--bg-white);border:1px solid var(--border);cursor:pointer;width:28px;height:28px;color:var(--text-secondary);z-index:101;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:all .2s;display:flex;position:absolute;top:36px;right:-14px;box-shadow:0 2px 8px #0000001a}.collapse-toggle:hover{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 4px 12px #25d3664d}.collapse-toggle svg{width:16px;height:16px}.sidebar.collapsed .collapse-toggle{right:-14px}.sidebar-nav{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex-direction:column;flex:auto;gap:.25rem;min-height:0;padding:1rem .75rem;display:flex;overflow-y:auto}.sidebar.collapsed .sidebar-nav{padding:1rem .5rem}.nav-item{color:var(--text-secondary);border-radius:var(--radius);white-space:nowrap;flex-shrink:0;align-items:center;gap:.75rem;min-height:42px;padding:.7rem 1rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .2s;display:flex;overflow:hidden}.sidebar.collapsed .nav-item{justify-content:center;padding:.7rem}.nav-item:hover{background:var(--bg-light);color:var(--text-primary);text-decoration:none}.nav-item.active{background:var(--primary-soft);color:var(--primary-text)}.nav-item.active svg{color:var(--primary-text)}.workspace-switch-btn{color:var(--primary-text);background:var(--primary-soft);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;white-space:nowrap;box-sizing:border-box;align-items:center;gap:.75rem;width:100%;padding:.6rem .9rem;font-size:.875rem;font-weight:600;transition:all .2s;display:flex;overflow:hidden}.workspace-switch-btn:hover{background:var(--primary);color:#fff}.sidebar.collapsed .workspace-switch-btn{justify-content:center;padding:.6rem .5rem}.sidebar-footer{border-top:1px solid var(--border);flex-direction:column;flex-shrink:0;gap:.5rem;margin-top:auto;padding:.75rem;display:flex}.sidebar.collapsed .sidebar-footer{padding:.75rem .5rem}.theme-toggle-btn{color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;white-space:nowrap;background:0 0;align-items:center;gap:.75rem;padding:.6rem .9rem;font-size:.875rem;font-weight:500;transition:all .2s;display:flex;overflow:hidden}.appearance-button-cue{width:24px;height:24px;color:inherit;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:relative}.sidebar.collapsed .theme-toggle-btn,.sidebar.collapsed .logout-btn{justify-content:center;padding:.6rem}.theme-toggle-btn:hover{background:var(--bg-light);color:var(--text-primary)}.language-menu,.appearance-menu{position:relative}.language-menu .theme-toggle-btn,.appearance-menu .theme-toggle-btn{width:100%}.language-menu-list{background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius);z-index:120;flex-direction:column;gap:.15rem;min-width:160px;padding:.3rem;display:flex;position:absolute;bottom:calc(100% + .35rem);left:0;right:0;box-shadow:0 10px 30px #0f172a29}.language-menu-item{width:100%;min-height:34px;color:var(--text-secondary);border-radius:calc(var(--radius) - 2px);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;padding:.45rem .6rem;font-size:.875rem;font-weight:500;transition:all .2s;display:flex}.language-menu-item:hover{background:var(--bg-light);color:var(--text-primary)}.language-menu-item.active{background:var(--primary-soft);color:var(--primary-text)}.sidebar.collapsed .language-menu-list{bottom:0;left:calc(100% + .5rem);right:auto}.logout-btn{color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;white-space:nowrap;background:0 0;align-items:center;gap:.75rem;padding:.6rem .9rem;font-size:.875rem;font-weight:500;transition:all .2s;display:flex;overflow:hidden}.logout-btn:hover{color:var(--error-text);background:#ef44441f;border-color:#ef44444d}.main-content{background:var(--bg-light);flex:1;width:calc(100% - 260px);min-height:100vh;margin-left:260px;transition:margin-left .3s,width .3s;overflow-x:hidden}.main-content.expanded{width:calc(100% - 72px);margin-left:72px}.mobile-header,.sidebar-overlay{display:none}@media (width<=767px){.mobile-header{background:var(--bg-white);border-bottom:1px solid var(--border);z-index:90;justify-content:space-between;align-items:center;height:56px;padding:0 1rem;display:flex;position:fixed;top:0;left:0;right:0}.mobile-menu-btn{width:40px;height:40px;color:var(--text-primary);cursor:pointer;border-radius:var(--radius);border:none;justify-content:center;align-items:center;padding:0;transition:background .2s;display:flex;background:0 0!important}.mobile-menu-btn svg{color:var(--text-primary);stroke:var(--text-primary)}.mobile-menu-btn:hover{background:var(--bg-light)!important}.mobile-brand{align-items:center;gap:.5rem;display:flex}.mobile-brand .brand-name{font-size:1rem}.sidebar.mobile{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex-direction:column;width:280px;max-width:85vw;height:100dvh;max-height:100dvh;display:flex;overflow-y:auto;transform:translate(-100%);box-shadow:2px 0 20px #0000001a}.sidebar.mobile .sidebar-header{flex-shrink:0}.sidebar.mobile .sidebar-nav{flex:1 0 auto;gap:.35rem;min-height:auto;padding:1rem .75rem;overflow-y:visible}.sidebar.mobile .nav-item{flex-shrink:0;min-height:44px;padding:.75rem 1rem;font-size:.9375rem}.sidebar.mobile .sidebar-footer{flex-shrink:0;gap:.5rem;margin-top:auto;padding:1rem .75rem}.sidebar.mobile .theme-toggle-btn,.sidebar.mobile .logout-btn{flex-shrink:0;min-height:42px;font-size:.9375rem}.sidebar.mobile.open{transform:translate(0)}.sidebar-overlay{z-index:95;background:#00000080;animation:.2s fadeIn;display:block;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.main-content.mobile,.main-content{-webkit-overflow-scrolling:touch;width:100%;max-width:100vw;height:100vh;margin-left:0;padding-top:56px;overflow:hidden auto}.collapse-toggle{display:none}}[dir=rtl] .sidebar{border-right:none;border-left:1px solid var(--border)}[dir=rtl] .collapse-toggle{left:-14px;right:auto}[dir=rtl] .collapse-toggle svg{transform:scaleX(-1)}[dir=rtl] .language-menu-item{text-align:right}[dir=rtl] .sidebar.collapsed .language-menu-list{left:auto;right:calc(100% + .5rem)}[dir=rtl] .main-content{margin-left:0;margin-right:260px;transition:margin-right .3s,width .3s}[dir=rtl] .main-content.expanded{margin-right:72px}@media (width<=768px){[dir=rtl] .main-content,[dir=rtl] .main-content.mobile{margin-right:0}}.initial-loader-wrapper{background-color:var(--bg-light,#070b12);justify-content:center;align-items:center;width:100%;min-height:100vh;display:flex}.initial-loader-wrapper.fullscreen{z-index:9999;position:fixed;inset:0}.initial-loader-wrapper .loader{width:2.5em;height:2.5em;position:relative;transform:rotate(165deg)}.initial-loader-wrapper .loader:before,.initial-loader-wrapper .loader:after{content:"";border-radius:.25em;width:.5em;height:.5em;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.initial-loader-wrapper .loader:before{animation:2s infinite before8}.initial-loader-wrapper .loader:after{animation:2s infinite after6}@keyframes before8{0%{width:.5em;box-shadow:1em -.5em #e11462bf,-1em .5em #6fcadcbf}35%{width:2.5em;box-shadow:0 -.5em #e11462bf,0 .5em #6fcadcbf}70%{width:.5em;box-shadow:-1em -.5em #e11462bf,1em .5em #6fcadcbf}to{box-shadow:1em -.5em #e11462bf,-1em .5em #6fcadcbf}}@keyframes after6{0%{height:.5em;box-shadow:.5em 1em #3db88fbf,-.5em -1em #e9a920bf}35%{height:2.5em;box-shadow:.5em 0 #3db88fbf,-.5em 0 #e9a920bf}70%{height:.5em;box-shadow:.5em -1em #3db88fbf,-.5em 1em #e9a920bf}to{box-shadow:.5em 1em #3db88fbf,-.5em -1em #e9a920bf}}.toast-container{z-index:9999;flex-direction:column;gap:.75rem;max-width:400px;display:flex;position:fixed;bottom:1.5rem;right:1.5rem}.toast{background:var(--bg-card);border-left:4px solid;border-radius:12px;align-items:flex-start;gap:.75rem;padding:1rem 1.25rem;animation:.3s ease-out slideIn;display:flex;box-shadow:0 10px 40px #0000001f,0 4px 12px #00000014}@keyframes slideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.toast-success{border-color:#22c55e}.toast-success .toast-icon{color:var(--success-text)}.toast-error{border-color:#ef4444}.toast-error .toast-icon{color:var(--error-text)}.toast-warning{border-color:#f59e0b}.toast-warning .toast-icon{color:var(--warning-text)}.toast-info{border-color:#3b82f6}.toast-info .toast-icon{color:#3b82f6}.toast-icon{flex-shrink:0;margin-top:2px}.toast-content{flex:1;min-width:0}.toast-title{color:var(--text-primary);font-size:.9375rem;font-weight:600;line-height:1.4}.toast-message{color:var(--text-secondary);margin-top:.25rem;font-size:.8125rem;line-height:1.5}.toast-close{width:24px;height:24px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;transition:all .15s;display:flex}.toast-close:hover{background:var(--bg-light);color:var(--text-secondary)}.global-dialog-modal{max-width:440px}.global-dialog-header{align-items:center;gap:.75rem;display:flex}.global-dialog-icon-wrapper{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.global-dialog-icon-wrapper.danger{color:var(--error,#ef4444);background:#ef444426}.global-dialog-icon-wrapper.warning{color:var(--warning,#f59e0b);background:#f59e0b26}.global-dialog-icon-wrapper.info,.global-dialog-icon-wrapper.primary{color:var(--primary,#22d3ee);background:#22d3ee26}.global-dialog-icon-wrapper.success{color:var(--success,#22c55e);background:#22c55e26}.global-dialog-title{color:var(--text-primary);font-size:1.125rem;font-weight:600;line-height:1.3}.global-dialog-message{color:var(--text-secondary);white-space:pre-wrap;word-break:break-word;margin:0;font-size:.9375rem;line-height:1.6}.global-dialog-footer{justify-content:flex-end;gap:.75rem;width:100%;display:flex}@media (width<=480px){.global-dialog-footer{flex-direction:column-reverse}.global-dialog-footer button{width:100%}}:root{--primary:#22d3ee;--primary-text:#0e7490;--primary-hover:#06b6d4;--primary-soft:#22d3ee24;--btn-primary-text:#0f172a;--bg-light:#070b12;--bg-white:#0d1520;--bg-card:#111827;--text-primary:#e2e8f0;--text-secondary:#94a3b8;--text-muted:#64748b;--border:#1e293b;--error:#ef4444;--success:#22c55e;--warning:#f59e0b;--error-text:#c63838;--success-text:#157c3b;--warning-text:#986207;--info:#2563eb;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--radius:10px}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-light:#0f172a;--bg-white:#1e293b;--bg-card:#1e293b;--text-primary:#f1f5f9;--text-secondary:#cbd5e1;--text-muted:#94a3b8;--border:#334155;--info:#60a5fa;--error-text:#f15e5e;--success-text:var(--success);--warning-text:var(--warning);--primary-soft:color-mix(in srgb, var(--primary) 18%, transparent);--primary-text:var(--primary);--shadow-sm:0 1px 2px 0 #0000004d;--shadow-md:0 4px 6px -1px #0000004d, 0 2px 4px -2px #0000004d;--shadow-lg:0 10px 15px -3px #0006, 0 4px 6px -4px #0006}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--primary:#0284c7;--primary-text:#0369a1;--primary-hover:#0ea5e9;--primary-soft:#0284c717;--btn-primary-text:#fff;--bg-light:#f8fafc;--bg-white:#fff;--bg-card:#fff;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#64748b;--border:#e2e8f0;--info:#2563eb;--error-text:#dc2626;--success-text:#15803d;--warning-text:#b45309;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #00000012, 0 2px 4px -2px #00000012;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--primary:#0284c7;--primary-text:#0369a1;--primary-hover:#0ea5e9;--primary-soft:#0284c717;--btn-primary-text:#fff;--bg-light:#f8fafc;--bg-white:#fff;--bg-card:#fff;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#64748b;--border:#e2e8f0;--info:#2563eb;--error-text:#dc2626;--success-text:#15803d;--warning-text:#b45309;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #00000012, 0 2px 4px -2px #00000012;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a}}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-light:#0f172a;--bg-white:#1e293b;--bg-card:#1e293b;--text-primary:#f1f5f9;--text-secondary:#cbd5e1;--text-muted:#94a3b8;--border:#334155;--info:#60a5fa;--error-text:#f15e5e;--success-text:var(--success);--warning-text:var(--warning);--primary-soft:color-mix(in srgb, var(--primary) 18%, transparent);--primary-text:var(--primary);--shadow-sm:0 1px 2px 0 #0000004d;--shadow-md:0 4px 6px -1px #0000004d, 0 2px 4px -2px #0000004d;--shadow-lg:0 10px 15px -3px #0006, 0 4px 6px -4px #0006}}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg-light);color:var(--text-primary);margin:0;font-family:Plus Jakarta Sans,JetBrains Mono,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.6}button{font-family:inherit}input,select,textarea{background:var(--bg-white);color:var(--text-primary);border-color:var(--border);font-family:inherit}a{color:var(--primary-text);text-decoration:none}a:hover{text-decoration:underline}.error-banner{background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;align-items:center;gap:.75rem;margin-bottom:1.5rem;padding:1rem;display:flex}.error-banner svg,.error-banner-text{color:var(--error-text)}.yarl__container{--yarl__color_backdrop:#000000eb}.yarl__button{--yarl__color_button:#ffffffe6}:root{--scrollbar-track:transparent;--scrollbar-thumb:#94a3b847;--scrollbar-thumb-hover:var(--primary);--scrollbar-thumb-active:var(--primary-hover)}[data-theme=dark]{--scrollbar-thumb:#94a3b83d;--scrollbar-thumb-hover:var(--primary);--scrollbar-thumb-active:var(--primary-hover)}[data-theme=light]{--scrollbar-thumb:#64748b52;--scrollbar-thumb-hover:var(--primary);--scrollbar-thumb-active:var(--primary-hover)}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:9999px}::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb);background-clip:content-box;border:2px solid #0000;border-radius:9999px;transition:background-color .2s}::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-thumb-hover);border:1px solid #0000}::-webkit-scrollbar-thumb:active{background-color:var(--scrollbar-thumb-active)}::-webkit-scrollbar-corner{background:0 0}.zp-shell{--text-primary:#f8fafc;--text-secondary:#94a3b8;--bg-white:#0f172a99;--bg-light:#0f172a;--logo-text-color:#f8fafc;color:#f1f5f9;box-sizing:border-box;background-color:#060913;width:100%;min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;position:relative;overflow-x:clip}.zp-shell .zaptura-logo-text{color:#f8fafc!important}.zp-shell code{color:#e2e8f0;background:#0f172ab3}.zp-shell .zp-pre code{border-radius:0;color:#e2e8f0!important;background:0 0!important;padding:0!important}.zp-shell pre code{background:0 0!important}.zp-shell *,.zp-shell :before,.zp-shell :after{box-sizing:border-box}.zp-shell .zp-shell-ambient{pointer-events:none;z-index:0;background:radial-gradient(circle at 50% -10%,#10b98126 0%,#06b6d414 40%,#0000 70%);height:800px;position:absolute;top:0;left:0;right:0}.zp-shell .zp-top-banner{z-index:50;background:linear-gradient(90deg,#10b9811f 0%,#06b6d426 50%,#3b82f61f 100%);border-bottom:1px solid #10b98133;padding:.5rem 1rem;font-size:.8125rem;position:relative}.zp-shell .zp-top-banner-inner{flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem;max-width:1200px;margin:0 auto;display:flex}.zp-shell .zp-banner-pill{color:#34d399;letter-spacing:.02em;background:#10b98140;border:1px solid #10b98166;border-radius:999px;align-items:center;gap:.35rem;padding:.15rem .55rem;font-size:.75rem;font-weight:700;display:inline-flex}.zp-shell .zp-banner-text{color:#cbd5e1;font-weight:500}.zp-shell .zp-banner-link{color:#38bdf8;align-items:center;gap:.25rem;font-weight:600;text-decoration:none;transition:color .2s;display:inline-flex}.zp-shell .zp-banner-link:hover{color:#7dd3fc;text-decoration:underline}.zp-shell .zp-nav-wrap{z-index:1000;background:0 0;border-bottom:1px solid #0000;width:100%;transition:background .3s,border-color .3s,box-shadow .3s,-webkit-backdrop-filter .3s,backdrop-filter .3s;position:fixed;top:0;left:0;right:0}.zp-shell .zp-nav-wrap.zp-nav-scrolled{-webkit-backdrop-filter:blur(20px);background:#060913d9;border-bottom:1px solid #ffffff14;box-shadow:0 4px 24px #00000073}.zp-shell .zp-nav{justify-content:space-between;align-items:center;max-width:1240px;margin:0 auto;padding:.85rem 1.5rem;display:flex}.zp-shell .zp-brand{align-items:center;text-decoration:none;display:flex}.zp-shell .zp-nav-links{align-items:center;gap:2rem;display:flex}.zp-shell .zp-nav-links a{color:#94a3b8;font-size:.9rem;font-weight:500;text-decoration:none;transition:color .2s}.zp-shell .zp-nav-links a:hover,.zp-shell .zp-nav-links a.active{color:#f8fafc}.zp-shell .zp-nav-cta{align-items:center;gap:.85rem;display:flex}.zp-shell .zp-menu-btn{color:#f8fafc;cursor:pointer;box-sizing:border-box;background:0 0;border:1px solid #ffffff1a;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;padding:0;line-height:1;display:none}.zp-shell .zp-menu-btn svg{display:block}.zp-shell .zp-mobile-links{background:#090e1a;border-bottom:1px solid #ffffff14;flex-direction:column;gap:1rem;padding:1rem 1.5rem 1.5rem;display:none}@media (width>=769px){.zp-shell .zp-mobile-links{display:none!important}}.zp-shell .zp-mobile-links a{color:#cbd5e1;font-size:1rem;font-weight:500;text-decoration:none}.zp-shell .zp-mobile-actions{flex-direction:column;gap:.75rem;margin-top:.5rem;display:flex}.zp-shell .zp-btn{cursor:pointer;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:.5rem;padding:.65rem 1.25rem;font-size:.9rem;font-weight:600;text-decoration:none;transition:all .25s cubic-bezier(.16,1,.3,1);display:inline-flex}.zp-shell .zp-btn-sm{border-radius:8px;padding:.45rem .9rem;font-size:.825rem}.zp-shell .zp-btn-xl{border-radius:12px;padding:.95rem 2rem;font-size:1.05rem}.zp-shell .zp-btn-full{width:100%}.zp-shell .zp-btn-primary{color:#fff;background:linear-gradient(135deg,#10b981 0%,#059669 100%);box-shadow:0 0 20px #10b98159,inset 0 1px #fff3}.zp-shell .zp-btn-primary:hover{background:linear-gradient(135deg,#34d399 0%,#10b981 100%);transform:translateY(-2px);box-shadow:0 0 28px #10b9818c,inset 0 1px #ffffff4d}.zp-shell .zp-btn-glow{color:#fff;background:linear-gradient(135deg,#0ea5e9 0%,#0284c7 100%);box-shadow:0 0 16px #0ea5e966}.zp-shell .zp-btn-glow:hover{background:linear-gradient(135deg,#38bdf8 0%,#0ea5e9 100%);transform:translateY(-2px);box-shadow:0 0 24px #0ea5e999}.zp-shell .zp-btn-ghost{color:#cbd5e1;background:#ffffff0a;border:1px solid #ffffff1a}.zp-shell .zp-btn-ghost:hover{color:#fff;background:#ffffff17;border-color:#fff3}.zp-shell .zp-btn-outline{color:#f1f5f9;background:0 0;border:1px solid #ffffff26}.zp-shell .zp-btn-outline:hover{color:#34d399;background:#ffffff0f;border-color:#10b98166}.zp-shell .zp-btn-arrow{transition:transform .2s}.zp-shell .zp-btn:hover .zp-btn-arrow{transform:translate(3px)}.zp-shell .zp-hero{text-align:center;justify-content:center;padding:7rem 1.5rem 4rem;display:flex;position:relative}.zp-shell .zp-hero-bg{pointer-events:none;position:absolute;inset:0;overflow:hidden}.zp-shell .zp-global-interactive-glow{pointer-events:none;width:650px;height:650px;transform:translate(calc(var(--cursor-x,-9999px) - 325px), calc(var(--cursor-y,-9999px) - 325px));opacity:var(--cursor-opacity,0);filter:blur(45px);z-index:1;will-change:transform, opacity;background:radial-gradient(circle,#10b98129 0%,#06b6d41a 30%,#0ea5e90d 55%,#0000 72%);border-radius:50%;transition:opacity .3s;position:fixed;top:0;left:0}.zp-shell .zp-hero-interactive-glow{pointer-events:none;width:650px;height:650px;transform:translate(calc(var(--mouse-x,-9999px) - 325px), calc(var(--mouse-y,-9999px) - 325px));opacity:var(--mouse-opacity,0);filter:blur(40px);z-index:1;will-change:transform, opacity;background:radial-gradient(circle,#10b98138 0%,#06b6d429 28%,#0ea5e914 55%,#0000 72%);border-radius:50%;transition:opacity .4s,transform 50ms ease-out;position:absolute;top:0;left:0}.zp-shell .zp-hero-grid-pattern{transform:translate(calc(var(--mouse-tilt-x,0px) * .15), calc(var(--mouse-tilt-y,0px) * .15));will-change:transform;background-image:linear-gradient(90deg,#ffffff08 1px,#0000 1px),linear-gradient(#ffffff08 1px,#0000 1px);background-size:56px 56px;transition:transform .3s cubic-bezier(.2,0,0,1);position:absolute;inset:0;-webkit-mask-image:radial-gradient(65% 55% at 50% 40%,#000 20%,#0000 80%);mask-image:radial-gradient(65% 55% at 50% 40%,#000 20%,#0000 80%)}.zp-shell .zp-mesh-glow{filter:blur(100px);opacity:.35;border-radius:50%;position:absolute}.zp-shell .zp-glow-top{width:480px;height:480px;transform:translate(calc(-50% + var(--mouse-tilt-x,0px) * .75), calc(var(--mouse-tilt-y,0px) * .75));will-change:transform;background:#10b981;transition:transform .35s cubic-bezier(.2,0,0,1);top:-120px;left:50%}.zp-shell .zp-glow-bottom{width:520px;height:520px;transform:translate(calc(var(--mouse-tilt-x,0px) * -.75), calc(var(--mouse-tilt-y,0px) * -.75));will-change:transform;background:#0ea5e9;transition:transform .35s cubic-bezier(.2,0,0,1);top:150px;left:65%}.zp-shell .zp-hero-content{z-index:10;max-width:920px;margin:0 auto;position:relative}.zp-shell .zp-hero-badge{background:#0f172acc;border:1px solid #10b98159;border-radius:999px;align-items:center;gap:.6rem;margin-bottom:2rem;padding:.35rem .9rem;display:inline-flex;box-shadow:0 0 20px #10b98126}.zp-shell .zp-pulse-dot{background:#10b981;border-radius:50%;width:8px;height:8px;animation:2s infinite zpPulse;box-shadow:0 0 10px #10b981}@keyframes zpPulse{0%{opacity:.8;transform:scale(.95)}50%{opacity:1;transform:scale(1.4)}to{opacity:.8;transform:scale(.95)}}.zp-shell .zp-badge-text{color:#e2e8f0;font-size:.85rem;font-weight:600}.zp-shell .zp-badge-sub{color:#34d399;background:#10b98126;border-radius:999px;padding:.15rem .5rem;font-size:.75rem;font-weight:700}.zp-shell .zp-hero-title{letter-spacing:-.03em;color:#f8fafc;margin-bottom:1.5rem;font-size:clamp(2.5rem,5.5vw,4.4rem);font-weight:900;line-height:1.1}.zp-shell .zp-gradient-text{background:linear-gradient(135deg,#10b981 0%,#38bdf8 50%,#818cf8 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text}.zp-shell .zp-hero-lead{color:#94a3b8;max-width:720px;margin:0 auto 2.5rem;font-size:clamp(1.05rem,2vw,1.25rem);line-height:1.6}.zp-shell .zp-hero-cta-group{flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;margin-bottom:3.5rem;display:flex}.zp-shell .zp-hero-metrics-pill{-webkit-backdrop-filter:blur(12px);background:#0f172aa6;border:1px solid #ffffff14;border-radius:999px;flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;padding:.75rem 1.4rem;display:inline-flex}.zp-shell .zp-metric-item{color:#cbd5e1;align-items:center;gap:.45rem;font-size:.85rem;font-weight:500;display:flex}.zp-shell .zp-metric-divider{background:#ffffff1f;width:1px;height:14px}.zp-shell .zp-text-emerald{color:#10b981}.zp-shell .zp-text-cyan{color:#06b6d4}.zp-shell .zp-text-amber{color:#f59e0b}.zp-shell .zp-section{z-index:10;max-width:1240px;margin:0 auto;padding:5.5rem 1.5rem;position:relative}.zp-shell .zp-pricing-page-hero,.zp-shell .zp-docs-page{padding-top:7rem}.zp-shell .zp-section-alt{background:linear-gradient(#0f172a4d 0%,#06091399 100%);border-top:1px solid #ffffff0d;border-bottom:1px solid #ffffff0d;max-width:100%;padding-left:1.5rem;padding-right:1.5rem}.zp-shell .zp-section-header{text-align:center;max-width:760px;margin:0 auto 3.5rem}.zp-shell .zp-section-eyebrow{text-transform:uppercase;letter-spacing:.08em;color:#10b981;margin-bottom:.75rem;font-size:.85rem;font-weight:700}.zp-shell .zp-section-title{letter-spacing:-.02em;color:#f8fafc;margin-bottom:1rem;font-size:clamp(2rem,3.8vw,2.85rem);font-weight:800;line-height:1.2}.zp-shell .zp-section-title span{background:linear-gradient(135deg,#10b981 0%,#38bdf8 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text}.zp-shell .zp-section-desc{color:#94a3b8;font-size:1.05rem;line-height:1.6}.zp-shell .zp-mobile-view-tabs{box-sizing:border-box;background:#0f172ad9;border:1px solid #ffffff1a;border-radius:14px;gap:.35rem;width:100%;max-width:440px;margin-bottom:1.5rem;padding:.35rem;display:none;box-shadow:0 4px 16px #0000004d}.zp-shell .zp-mobile-tab-btn{color:#94a3b8;cursor:pointer;box-sizing:border-box;background:0 0;border:none;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:.5rem;min-width:0;padding:.65rem 1rem;font-size:.875rem;font-weight:600;transition:all .2s;display:flex}.zp-shell .zp-mobile-tab-btn span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.zp-shell .zp-mobile-tab-btn.active{color:#022c22;background:#10b981;box-shadow:0 2px 8px #10b98159}.zp-shell .zp-scenario-bar{scrollbar-width:none;-webkit-overflow-scrolling:touch;box-sizing:border-box;justify-content:center;align-items:center;gap:.85rem;max-width:100%;margin-bottom:1.75rem;padding:.25rem .25rem .65rem;display:flex;overflow-x:auto}.zp-shell .zp-scenario-bar::-webkit-scrollbar{display:none}.zp-shell .zp-scenario-label{color:#94a3b8;white-space:nowrap;flex-shrink:0;font-size:.825rem;font-weight:600}.zp-shell .zp-scenario-pills{box-sizing:border-box;flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;max-width:100%;margin:0 auto;display:flex}.zp-shell .zp-scenario-btn{color:#cbd5e1;cursor:pointer;white-space:nowrap;box-sizing:border-box;background:#0f172ab3;border:1px solid #ffffff1f;border-radius:999px;flex-shrink:0;padding:.45rem .9rem;font-size:.8rem;font-weight:600;transition:all .2s}.zp-shell .zp-scenario-btn:hover{color:#fff;background:#ffffff14;border-color:#ffffff40}.zp-shell .zp-scenario-btn.active{color:#34d399;background:#10b9812e;border-color:#10b981;box-shadow:0 0 14px #10b98140}.zp-shell .zp-scenario-reset{color:#94a3b8;background:#ffffff0a;align-items:center;gap:.35rem;display:inline-flex}.zp-shell .zp-demo-toast{color:#34d399;background:#10b98129;border:1px solid #10b98173;border-radius:999px;align-items:center;gap:.5rem;margin-bottom:1.25rem;padding:.45rem 1.15rem;font-size:.825rem;font-weight:600;animation:.25s ease-out zpToastFade;display:inline-flex;box-shadow:0 4px 16px #0006}@keyframes zpToastFade{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.zp-shell .zp-sim-layout{box-sizing:border-box;grid-template-columns:1.15fr .85fr;align-items:start;gap:2rem;width:100%;max-width:100%;display:grid}@media (width>=993px){.zp-shell .zp-sim-composer-col.zp-mobile-hidden,.zp-shell .zp-sim-phone-col.zp-mobile-hidden{display:flex!important}}.zp-shell .zp-sim-composer-col{box-sizing:border-box;flex-direction:column;gap:1.5rem;width:100%;min-width:0;max-width:100%;display:flex}.zp-shell .zp-sim-card{-webkit-backdrop-filter:blur(16px);box-sizing:border-box;background:#0f172abf;border:1px solid #ffffff17;border-radius:16px;width:100%;min-width:0;max-width:100%;padding:1.75rem;overflow:hidden;box-shadow:0 12px 36px #00000059}.zp-shell .zp-sim-card-header{border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;margin-bottom:1.25rem;padding-bottom:1rem;display:flex}.zp-shell .zp-sim-card-title{color:#f8fafc;align-items:center;gap:.5rem;font-size:1rem;font-weight:700;display:flex}.zp-shell .zp-tag-online{color:#10b981;background:#10b9811f;border:1px solid #10b9814d;border-radius:999px;padding:.2rem .6rem;font-family:monospace;font-size:.75rem}.zp-shell .zp-sim-form{flex-direction:column;gap:1.15rem;margin-bottom:1.5rem;display:flex}.zp-shell .zp-sim-field label{color:#94a3b8;margin-bottom:.45rem;font-size:.825rem;font-weight:600;display:block}.zp-shell .zp-input,.zp-shell .zp-textarea{color:#f8fafc;background:#060913cc;border:1px solid #ffffff1f;border-radius:10px;width:100%;padding:.75rem 1rem;font-family:inherit;font-size:.925rem;transition:border-color .2s,box-shadow .2s}.zp-shell .zp-input:focus,.zp-shell .zp-textarea:focus{border-color:#10b981;outline:none;box-shadow:0 0 0 3px #10b98133}.zp-shell .zp-sim-type-selector{grid-template-columns:repeat(4,1fr);gap:.5rem;display:grid}.zp-shell .zp-type-btn{color:#94a3b8;cursor:pointer;background:#06091399;border:1px solid #ffffff14;border-radius:8px;justify-content:center;align-items:center;gap:.4rem;padding:.55rem;font-size:.825rem;font-weight:600;transition:all .2s;display:flex}.zp-shell .zp-type-btn:hover{color:#f1f5f9;background:#ffffff0f}.zp-shell .zp-type-btn.active{color:#34d399;background:#10b98126;border-color:#10b981}.zp-shell .zp-sim-payload-box{box-sizing:border-box;background:#020617;border:1px solid #ffffff14;border-radius:14px;width:100%;min-width:0;max-width:100%;overflow:hidden;box-shadow:0 8px 24px #0006}.zp-shell .zp-payload-tabs{box-sizing:border-box;background:#ffffff05;border-bottom:1px solid #ffffff14;width:100%;min-width:0;max-width:100%;display:flex}.zp-shell .zp-payload-tab{color:#64748b;cursor:pointer;text-align:center;box-sizing:border-box;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;min-width:0;padding:.65rem .85rem;font-size:.775rem;font-weight:600;transition:all .2s}.zp-shell .zp-payload-tab:hover{color:#94a3b8;background:#ffffff05}.zp-shell .zp-payload-tab.active{color:#38bdf8;background:#38bdf80f;border-bottom-color:#38bdf8}.zp-shell .zp-payload-header{color:#94a3b8;word-break:break-all;overflow-wrap:anywhere;box-sizing:border-box;background:#ffffff08;border-bottom:1px solid #ffffff0f;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.4rem;min-width:0;max-width:100%;padding:.6rem .9rem;font-family:monospace;font-size:.75rem;display:flex}.zp-shell .zp-payload-status{color:#10b981;font-weight:600}.zp-shell .zp-payload-code{color:#38bdf8;box-sizing:border-box;-webkit-overflow-scrolling:touch;min-width:0;max-width:100%;max-height:280px;margin:0;padding:1rem;font-family:Fira Code,monospace;font-size:.8rem;line-height:1.55;overflow-x:auto}.zp-shell .zp-sim-phone-col{box-sizing:border-box;justify-content:center;align-items:flex-start;width:100%;min-width:0;max-width:100%;display:flex}.zp-shell .zp-phone-wrapper{box-sizing:border-box;background:#0b141a;border:11px solid #1a232f;border-radius:48px;outline:1px solid #ffffff1f;flex-direction:column;width:375px;max-width:100%;height:clamp(560px,82vh,720px);margin:0 auto;display:flex;position:relative;overflow:hidden;box-shadow:0 0 0 1px #090d14,0 25px 65px -10px #000000e6,0 0 45px #10b9811f}.zp-shell .zp-phone-wrapper:before{content:"";z-index:10;background:#334155;border-radius:3px 0 0 3px;width:3px;height:48px;position:absolute;top:115px;left:-13px}.zp-shell .zp-phone-wrapper:after{content:"";z-index:10;background:#334155;border-radius:0 3px 3px 0;width:3px;height:60px;position:absolute;top:130px;right:-13px}.zp-shell .zp-iphone-status-bar{-webkit-user-select:none;user-select:none;background:#111b21;flex-shrink:0;justify-content:space-between;align-items:center;height:42px;padding:0 1.25rem;display:flex}.zp-shell .zp-iphone-time{color:#f1f5f9;letter-spacing:-.01em;width:42px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif;font-size:.8rem;font-weight:700}.zp-shell .zp-iphone-island{background:#000;border-radius:20px;justify-content:flex-end;align-items:center;width:96px;height:24px;padding-right:8px;display:flex;box-shadow:inset 0 0 2px #ffffff40}.zp-shell .zp-iphone-island-cam{background:radial-gradient(circle at 35% 35%,#253346,#020617);border-radius:50%;width:9px;height:9px;box-shadow:0 0 1px #fff6}.zp-shell .zp-iphone-status-icons{justify-content:flex-end;align-items:center;gap:.4rem;width:42px;display:flex}.zp-shell .zp-iphone-net{color:#f1f5f9;font-family:-apple-system,BlinkMacSystemFont,sans-serif;font-size:.68rem;font-weight:700}.zp-shell .zp-iphone-battery{border:1.5px solid #f1f5f9;border-radius:3px;align-items:center;width:19px;height:10px;padding:1px;display:flex;position:relative}.zp-shell .zp-iphone-battery:after{content:"";background:#f1f5f9;border-radius:0 1px 1px 0;width:1.5px;height:3px;position:absolute;top:2px;right:-3px}.zp-shell .zp-iphone-battery-fill{background:#10b981;border-radius:1px;width:75%;height:100%}.zp-shell .zp-wa-header{background:#111b21;border-bottom:1px solid #ffffff0f;flex-shrink:0;align-items:center;gap:.5rem;padding:.5rem .85rem .65rem;display:flex}.zp-shell .zp-wa-back{color:#00a884;cursor:pointer;flex-shrink:0;transition:opacity .2s}.zp-shell .zp-wa-back:hover{opacity:.8}.zp-shell .zp-wa-avatar{color:#fff;background:linear-gradient(135deg,#10b981 0%,#06b6d4 100%);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:.85rem;font-weight:800;display:flex}.zp-shell .zp-wa-contact{flex:1;min-width:0}.zp-shell .zp-wa-contact h4{color:#e9edef;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.95rem;font-weight:600;overflow:hidden}.zp-shell .zp-wa-status{color:#8696a0;white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;display:block;overflow:hidden}.zp-shell .zp-typing-indicator{color:#00a884;font-weight:600}.zp-shell .zp-wa-badge-verified{color:#00a884;background:#00a88433;border:1px solid #00a88466;border-radius:999px;flex-shrink:0;padding:.15rem .45rem;font-size:.68rem;font-weight:700}.zp-shell .zp-wa-body{scrollbar-width:none;-ms-overflow-style:none;background-color:#0b141a;background-image:radial-gradient(#ffffff0d 1px,#0000 1px);background-size:18px 18px;flex-direction:column;flex:1;gap:.65rem;padding:.85rem;display:flex;overflow-y:auto}.zp-shell .zp-wa-body::-webkit-scrollbar{display:none}.zp-shell .zp-wa-security-alert{color:#ffd279;text-align:center;background:#182229;border:1px solid #ffffff0d;border-radius:8px;align-self:center;align-items:center;gap:.35rem;margin-bottom:.5rem;padding:.4rem .75rem;font-size:.68rem;display:flex}.zp-shell .zp-wa-bubble{word-break:break-word;border-radius:12px;max-width:82%;padding:.55rem .85rem;font-size:.875rem;line-height:1.4;position:relative}.zp-shell .zp-wa-bubble.out{color:#e9edef;background:#005c4b;border-top-right-radius:2px;align-self:flex-end}.zp-shell .zp-wa-bubble.in{color:#e9edef;background:#202c33;border-top-left-radius:2px;align-self:flex-start}.zp-shell .zp-wa-meta{justify-content:flex-end;align-items:center;gap:.25rem;margin-top:.2rem;display:flex}.zp-shell .zp-wa-time{color:#e9edef99;font-size:.68rem}.zp-shell .zp-checks-blue{color:#53bdeb}.zp-shell .zp-wa-avatar{position:relative}.zp-shell .zp-wa-avatar-badge{background:#10b981;border:2px solid #111b21;border-radius:50%;width:10px;height:10px;position:absolute;bottom:0;right:0}.zp-shell .zp-wa-actions{align-items:center;gap:.4rem;display:flex}.zp-shell .zp-wa-icon-action{color:#8696a0;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:4px;transition:all .2s;display:flex}.zp-shell .zp-wa-icon-action:hover{color:#00a884;background:#ffffff0f}.zp-shell .zp-wa-media-preview{background:#00000038;border:1px solid #ffffff0d;border-radius:10px;align-items:center;gap:.65rem;margin-bottom:.45rem;padding:.55rem;display:flex}.zp-shell .zp-media-icon{color:#38bdf8;flex-shrink:0}.zp-shell .zp-wa-media-info{flex-direction:column;display:flex;overflow:hidden}.zp-shell .zp-wa-media-info strong{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;overflow:hidden}.zp-shell .zp-wa-media-info small{color:#8696a0;font-size:.68rem}.zp-shell .zp-wa-doc-preview{background:#00000040;border:1px solid #ffffff0d;border-radius:10px;align-items:center;gap:.65rem;margin-bottom:.45rem;padding:.55rem;display:flex}.zp-shell .zp-doc-icon{color:#f87171;flex-shrink:0}.zp-shell .zp-wa-doc-info{flex-direction:column;display:flex;overflow:hidden}.zp-shell .zp-wa-doc-info strong{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;display:block;overflow:hidden}.zp-shell .zp-wa-doc-info small{color:#8696a0;font-size:.68rem}.zp-shell .zp-wa-voice-card{box-sizing:border-box;background:#00000038;border:1px solid #ffffff0d;border-radius:12px;align-items:center;gap:.65rem;min-width:0;max-width:100%;margin-bottom:.45rem;padding:.5rem .7rem;display:flex}.zp-shell .zp-wa-voice-play-btn{color:#fff;cursor:pointer;z-index:2;background:#00a884;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;transition:transform .2s,background .2s;display:flex;position:relative;box-shadow:0 2px 6px #00a88459}.zp-shell .zp-wa-voice-play-btn svg{flex-shrink:0;fill:#fff!important;stroke:#fff!important;color:#fff!important;opacity:1!important;visibility:visible!important;width:16px!important;min-width:16px!important;height:16px!important;min-height:16px!important;display:block!important}.zp-shell .zp-wa-voice-play-btn svg path,.zp-shell .zp-wa-voice-play-btn svg polyline,.zp-shell .zp-wa-voice-play-btn svg polygon,.zp-shell .zp-wa-voice-play-btn svg circle,.zp-shell .zp-wa-voice-play-btn svg line,.zp-shell .zp-wa-voice-play-btn svg rect{fill:#fff!important;stroke:#fff!important}.zp-shell .zp-wa-voice-play-btn:hover{background:#008f6f;transform:scale(1.08)}.zp-shell .zp-play-icon{margin-left:2px}.zp-shell .zp-wa-voice-waveform{flex-direction:column;flex:1;gap:.25rem;display:flex}.zp-shell .zp-wa-wave-visual{background:#ffffff2e linear-gradient(90deg,#00a884,#00a884) no-repeat;border-radius:3px;height:12px;transition:background-size .3s linear;position:relative}.zp-shell .zp-wa-wave-visual.playing{animation:.8s ease-in-out infinite alternate zpPulseWave}@keyframes zpPulseWave{0%{opacity:.8}to{opacity:1}}.zp-shell .zp-wa-voice-time{color:#8696a0;justify-content:space-between;font-size:.68rem;display:flex}.zp-shell .zp-wa-voice-tag{color:#00a884;font-weight:600}.zp-shell .zp-wa-btn-group{border-top:1px solid #ffffff14;flex-direction:column;gap:.35rem;margin-top:.65rem;padding-top:.45rem;display:flex}.zp-shell .zp-wa-action-btn{color:#53bdeb;text-align:center;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:8px;justify-content:center;align-items:center;gap:.35rem;width:100%;padding:.45rem .75rem;font-size:.8rem;font-weight:600;transition:all .2s;display:flex}.zp-shell .zp-wa-action-btn:hover{color:#fff;background:#53bdeb29;border-color:#53bdeb;transform:translateY(-1px)}.zp-shell .zp-wa-action-btn:active{transform:translateY(0)}.zp-shell .zp-wa-typing-bubble{align-items:center;gap:.3rem;padding:.6rem .9rem;display:flex}.zp-shell .zp-wa-typing-bubble .zp-dot{background:#8696a0;border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite both zpDotBounce}.zp-shell .zp-wa-typing-bubble .zp-dot:first-child{animation-delay:-.32s}.zp-shell .zp-wa-typing-bubble .zp-dot:nth-child(2){animation-delay:-.16s}@keyframes zpDotBounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.zp-shell .zp-wa-footer{background:#111b21;border-top:1px solid #ffffff0d;flex-shrink:0;align-items:center;gap:.5rem;padding:.5rem .75rem;display:flex}.zp-shell .zp-wa-attach-btn{color:#8696a0;cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:4px;transition:color .2s;display:flex}.zp-shell .zp-wa-attach-btn:hover{color:#00a884}.zp-shell .zp-wa-input-container{box-sizing:border-box;background:#2a3942;border-radius:22px;flex:1;align-items:center;gap:.4rem;min-width:0;padding:0 .75rem;display:flex}.zp-shell .zp-wa-emoji-icon{color:#8696a0;cursor:pointer;flex-shrink:0}.zp-shell .zp-wa-real-input{color:#e9edef;box-sizing:border-box;background:0 0;border:none;outline:none;flex:1;width:100%;min-width:0;padding:.5rem 0;font-family:inherit;font-size:.85rem}.zp-shell .zp-wa-real-input::placeholder{color:#8696a0}.zp-shell .zp-wa-send-btn{color:#fff;cursor:pointer;box-sizing:border-box;background:#3b4a54;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;min-width:34px;height:34px;min-height:34px;transition:all .2s;display:inline-flex;padding:0!important}.zp-shell .zp-wa-send-btn svg{stroke:currentColor;flex-shrink:0;width:16px;height:16px;display:block}.zp-shell .zp-wa-send-btn.active{color:#fff;background:#00a884;box-shadow:0 2px 8px #00a88473}.zp-shell .zp-wa-send-btn:hover{transform:scale(1.06)}.zp-shell .zp-iphone-home-indicator{background:#111b21;flex-shrink:0;justify-content:center;padding-top:4px;padding-bottom:8px;display:flex}.zp-shell .zp-iphone-home-pill{background:#ffffff73;border-radius:10px;width:120px;height:4.5px}.zp-shell .zp-code-container{max-width:980px;margin:0 auto}.zp-shell .zp-code-window{background:#090e17;border:1px solid #ffffff1a;border-radius:16px;overflow:hidden;box-shadow:0 20px 50px #00000080}.zp-shell .zp-code-topbar{background:#0d1524;border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;padding:.75rem 1.25rem;display:flex}.zp-shell .zp-code-dots{gap:.45rem;display:flex}.zp-shell .zp-dot-red{background:#ef4444;border-radius:50%;width:11px;height:11px}.zp-shell .zp-dot-yellow{background:#f59e0b;border-radius:50%;width:11px;height:11px}.zp-shell .zp-dot-green{background:#10b981;border-radius:50%;width:11px;height:11px}.zp-shell .zp-code-tabs{gap:.35rem;display:flex}.zp-shell .zp-code-tab{color:#94a3b8;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;padding:.35rem .85rem;font-size:.825rem;font-weight:600;transition:all .2s}.zp-shell .zp-code-tab:hover{color:#f1f5f9}.zp-shell .zp-code-tab.active{color:#34d399;background:#10b9811f;border-color:#10b98159}.zp-shell .zp-copy-btn{color:#cbd5e1;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:6px;align-items:center;gap:.4rem;padding:.35rem .75rem;font-size:.8rem;font-weight:500;transition:all .2s;display:inline-flex}.zp-shell .zp-copy-btn:hover{color:#fff;background:#ffffff1a}.zp-shell .zp-code-body{padding:1.5rem}.zp-shell .zp-pre{color:#e2e8f0;margin:0;font-family:Fira Code,JetBrains Mono,Consolas,monospace;font-size:.9rem;line-height:1.6;overflow-x:auto}.zp-shell .zp-feature-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.75rem;display:grid}.zp-shell .zp-feature-card{-webkit-backdrop-filter:blur(14px);background:#0f172a99;border:1px solid #ffffff12;border-radius:16px;padding:2rem;transition:transform .25s,border-color .25s,box-shadow .25s}.zp-shell .zp-feature-card:hover{border-color:#10b9814d;transform:translateY(-4px);box-shadow:0 16px 36px #0006,0 0 24px #10b9811a}.zp-shell .zp-feature-top{justify-content:space-between;align-items:center;margin-bottom:1.25rem;display:flex}.zp-shell .zp-feature-icon-wrap{background:#10b9811f;border:1px solid #10b98140;border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.zp-shell .zp-feature-badge{color:#38bdf8;text-transform:uppercase;background:#38bdf81a;border:1px solid #38bdf840;border-radius:999px;padding:.2rem .55rem;font-size:.72rem;font-weight:700}.zp-shell .zp-feature-name{color:#f8fafc;margin:0 0 .65rem;font-size:1.25rem;font-weight:700}.zp-shell .zp-feature-desc{color:#94a3b8;margin:0;font-size:.925rem;line-height:1.6}.zp-shell .zp-roi-container{max-width:860px;margin:0 auto}.zp-shell .zp-roi-card{background:#0f172ad9;border:1px solid #10b98140;border-radius:20px;padding:2.5rem;box-shadow:0 20px 50px #00000080,0 0 30px #10b9811a}.zp-shell .zp-roi-slider-block{margin-bottom:2.5rem}.zp-shell .zp-roi-slider-header{color:#cbd5e1;justify-content:space-between;align-items:center;margin-bottom:1rem;font-size:1rem;display:flex}.zp-shell .zp-roi-count{color:#34d399;font-size:1.35rem}.zp-shell .zp-range-slider{accent-color:#10b981;cursor:pointer;background:#ffffff1a;border-radius:4px;width:100%;height:8px}.zp-shell .zp-roi-slider-ticks{color:#64748b;justify-content:space-between;margin-top:.5rem;font-size:.75rem;display:flex}.zp-shell .zp-roi-comparison-grid{grid-template-columns:1fr auto 1fr;align-items:center;gap:1.5rem;margin-bottom:2rem;display:grid}.zp-shell .zp-roi-box{text-align:center;background:#06091399;border:1px solid #ffffff14;border-radius:14px;padding:1.5rem}.zp-shell .zp-roi-meta{border-color:#ef444433}.zp-shell .zp-roi-zaptura{background:#10b98114;border-color:#10b98166}.zp-shell .zp-roi-box-label{color:#94a3b8;margin-bottom:.5rem;font-size:.85rem;font-weight:600;display:block}.zp-shell .zp-roi-price{color:#f8fafc;margin-bottom:.5rem;font-size:2.5rem;font-weight:800;line-height:1}.zp-shell .zp-roi-price span{color:#94a3b8;font-size:1rem;font-weight:500}.zp-shell .zp-roi-box-sub{color:#94a3b8;margin:0;font-size:.8rem}.zp-shell .zp-roi-vs{color:#64748b;font-size:1.1rem;font-weight:800}.zp-shell .zp-roi-savings-banner{color:#e2e8f0;text-align:center;background:#10b98126;border:1px solid #10b98159;border-radius:12px;justify-content:center;align-items:center;gap:.75rem;padding:1rem;font-size:.95rem;display:flex}.zp-shell .zp-steps-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;display:grid}.zp-shell .zp-step-card{background:#0f172a99;border:1px solid #ffffff14;border-radius:16px;padding:2.25rem 1.75rem;transition:transform .25s,border-color .25s;position:relative}.zp-shell .zp-step-card:hover{border-color:#10b9814d;transform:translateY(-4px)}.zp-shell .zp-step-num{color:#ffffff0d;font-family:monospace;font-size:2.5rem;font-weight:900;position:absolute;top:1.5rem;right:1.5rem}.zp-shell .zp-step-icon{background:#ffffff0a;border:1px solid #ffffff17;border-radius:14px;justify-content:center;align-items:center;width:52px;height:52px;margin-bottom:1.5rem;display:flex}.zp-shell .zp-step-card h3{color:#f8fafc;margin:0 0 .75rem;font-size:1.25rem;font-weight:700}.zp-shell .zp-step-card p{color:#94a3b8;margin:0;font-size:.925rem;line-height:1.6}.zp-shell .zp-billing-toggle-wrap{justify-content:center;margin-bottom:3rem;display:flex}.zp-shell .zp-billing-toggle{background:#0f172ad9;border:1px solid #ffffff1a;border-radius:12px;padding:.35rem;display:inline-flex}.zp-shell .zp-billing-toggle button{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:.5rem;padding:.55rem 1.25rem;font-size:.9rem;font-weight:600;transition:all .2s;display:inline-flex}.zp-shell .zp-billing-toggle button.active{color:#34d399;background:#10b98133;border:1px solid #10b98159}.zp-shell .zp-save-pill{color:#fff;background:#10b981;border-radius:999px;padding:.15rem .45rem;font-size:.7rem;font-weight:700}.zp-shell .zp-pricing-grid{grid-template-columns:repeat(4,1fr);align-items:stretch;gap:1.75rem;max-width:1400px;margin:0 auto;display:grid}.zp-shell .zp-pricing-card{background:#0f172aa6;border:1px solid #ffffff14;border-radius:20px;flex-direction:column;min-width:0;padding:2.5rem 2rem;transition:transform .25s,border-color .25s,box-shadow .25s;display:flex;position:relative}.zp-shell .zp-pricing-card:hover{border-color:#fff3;transform:translateY(-5px)}.zp-shell .zp-pricing-card.popular{background:linear-gradient(#10b98114 0%,#0f172ad9 100%);border-color:#10b98173;box-shadow:0 0 35px #10b98133}.zp-shell .zp-popular-badge{color:#fff;background:linear-gradient(135deg,#10b981 0%,#059669 100%);border-radius:999px;align-items:center;gap:.35rem;padding:.25rem .85rem;font-size:.75rem;font-weight:700;display:inline-flex;position:absolute;top:-12px;left:50%;transform:translate(-50%);box-shadow:0 0 16px #10b98166}.zp-shell .zp-plan-name{color:#f8fafc;margin:0 0 .5rem;font-size:1.4rem;font-weight:800}.zp-shell .zp-plan-blurb{color:#94a3b8;min-height:48px;margin:0 0 1.5rem;font-size:.85rem;line-height:1.5}.zp-shell .zp-plan-cost{border-bottom:1px solid #ffffff14;margin-bottom:1.5rem;padding-bottom:1.5rem}.zp-shell .zp-plan-amount{color:#f8fafc;font-size:2.75rem;font-weight:900;line-height:1}.zp-shell .zp-plan-cycle{color:#94a3b8;font-size:.95rem;font-weight:500}.zp-shell .zp-plan-unit{color:#34d399;margin-top:.45rem;font-size:.78rem;font-weight:600;display:block}.zp-shell .zp-plan-features{flex-direction:column;flex:1;gap:.75rem;margin:0 0 2rem;padding:0;list-style:none;display:flex}.zp-shell .zp-plan-features li{color:#cbd5e1;align-items:center;gap:.55rem;font-size:.85rem;display:flex}.zp-shell .zp-feature-highlight{background:#10b9811a;border:1px solid #10b98140;border-radius:6px;padding:.35rem .6rem;font-weight:700;color:#f8fafc!important}.zp-shell .zp-matrix-section{margin-top:5rem}.zp-shell .zp-matrix-title{text-align:center;color:#f8fafc;letter-spacing:-.02em;margin:0 0 .6rem;font-size:clamp(1.5rem,3vw,2rem);font-weight:800}.zp-shell .zp-matrix-title span{background:linear-gradient(135deg,#10b981 0%,#34d399 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.zp-shell .zp-matrix-subtitle{text-align:center;color:#64748b;margin:0 0 2.5rem;font-size:.95rem}.zp-shell .zp-matrix-table-wrap{-webkit-overflow-scrolling:touch;background:#0a1223e6;border:1px solid #ffffff14;border-radius:20px;overflow-x:auto;box-shadow:0 4px 40px #00000059}.zp-shell .zp-matrix-table{border-collapse:collapse;text-align:left;width:100%;min-width:700px;font-size:.875rem}.zp-shell .zp-matrix-table thead tr{z-index:2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0a1223fa;border-bottom:2px solid #ffffff1a;position:sticky;top:0}.zp-shell .zp-matrix-feature-col{color:#94a3b8;text-transform:uppercase;letter-spacing:.07em;width:36%;padding:1.1rem 1.5rem;font-size:.8rem;font-weight:600}.zp-shell .zp-matrix-plan-col{text-align:center;color:#e2e8f0;border-left:1px solid #ffffff0d;width:16%;padding:1rem;font-size:.85rem;font-weight:700}.zp-shell .zp-matrix-popular-col{background:#10b9810f;border-right:2px solid #10b98180;border-left:2px solid #10b98180!important}.zp-shell .zp-matrix-plan-name{margin-bottom:.3rem;display:block}.zp-shell .zp-matrix-popular-tag{color:#fff;text-transform:uppercase;letter-spacing:.05em;background:linear-gradient(135deg,#10b981,#059669);border-radius:99px;padding:.15rem .55rem;font-size:.68rem;font-weight:700;display:inline-block}.zp-shell .zp-matrix-group-row{background:#ffffff06;border-top:1px solid #ffffff1a}.zp-shell .zp-matrix-group-label{color:#94a3b8;text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.8rem;font-weight:700;display:flex}.zp-shell .zp-matrix-group-icon{font-size:1rem}.zp-shell .zp-matrix-data-row{border-bottom:1px solid #ffffff0a;transition:background .15s}.zp-shell .zp-matrix-data-row:hover{background:#ffffff08}.zp-shell .zp-matrix-data-row:last-child{border-bottom:none}.zp-shell .zp-matrix-data-row:nth-child(2n){background:#ffffff04}.zp-shell .zp-matrix-feature-name{color:#cbd5e1;align-items:center;gap:.5rem;padding:.85rem 1.5rem;font-size:.875rem;display:flex}.zp-shell .zp-matrix-cell{text-align:center;vertical-align:middle;border-left:1px solid #ffffff0a;padding:.85rem 1rem}.zp-shell .zp-matrix-popular-cell{background:#10b9810a;border-left-color:#10b98126!important}.zp-shell .zp-matrix-check{color:#34d399;background:#10b9812e;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:.8rem;font-weight:800;display:inline-flex}.zp-shell .zp-matrix-cross{color:#334155;justify-content:center;align-items:center;font-size:1rem;font-weight:700;display:inline-flex}.zp-shell .zp-matrix-value{color:#e2e8f0;white-space:nowrap;font-size:.82rem;font-weight:600}.zp-shell .zp-matrix-tooltip{color:#64748b;cursor:help;background:#64748b40;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;font-size:.65rem;font-weight:800;transition:background .15s;display:inline-flex}.zp-shell .zp-matrix-tooltip:hover{color:#34d399;background:#10b98140}.zp-shell .zp-faq-list{flex-direction:column;gap:1rem;max-width:840px;margin:0 auto;display:flex}.zp-shell .zp-faq-item{background:#0f172aa6;border:1px solid #ffffff12;border-radius:14px;transition:border-color .2s;overflow:hidden}.zp-shell .zp-faq-item.open{background:#0f172ae6;border-color:#10b98159}.zp-shell .zp-faq-question{text-align:left;color:#f8fafc;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:1rem;width:100%;padding:1.25rem 1.5rem;font-size:1.05rem;font-weight:600;display:flex}.zp-shell .zp-faq-chevron{color:#94a3b8;flex-shrink:0;transition:transform .25s}.zp-shell .zp-faq-item.open .zp-faq-chevron{color:#10b981;transform:rotate(180deg)}.zp-shell .zp-faq-answer{color:#94a3b8;padding:0 1.5rem 1.25rem;font-size:.95rem;line-height:1.6}.zp-shell .zp-faq-answer p{margin:0}.zp-shell .zp-cta-section{max-width:1060px;margin:0 auto;padding:5rem 1.5rem 6rem}.zp-shell .zp-cta-box{text-align:center;background:radial-gradient(circle at 50% 0,#10b98133 0%,#0f172ae6 70%);border:1px solid #10b98159;border-radius:24px;padding:4rem 2.5rem;position:relative;overflow:hidden;box-shadow:0 0 50px #10b98126}.zp-shell .zp-cta-title{color:#f8fafc;max-width:780px;margin:0 auto 1.25rem;font-size:clamp(2rem,4vw,2.75rem);font-weight:800;line-height:1.2}.zp-shell .zp-cta-desc{color:#94a3b8;max-width:640px;margin:0 auto 2.5rem;font-size:1.1rem;line-height:1.6}.zp-shell .zp-cta-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.zp-shell .zp-cta-guarantees{color:#cbd5e1;flex-wrap:wrap;justify-content:center;align-items:center;gap:1.5rem;font-size:.85rem;display:flex}.zp-shell .zp-docs-page{padding-top:3.5rem}.zp-shell .zp-docs-steps-card{background:#0f172aa6;border:1px solid #ffffff14;border-radius:18px;flex-direction:column;gap:2rem;margin-bottom:2.5rem;padding:2.5rem;display:flex}.zp-shell .zp-docs-step{align-items:flex-start;gap:1.25rem;display:flex}.zp-shell .zp-step-badge{color:#34d399;background:#10b98126;border:1px solid #10b98159;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:1rem;font-weight:800;display:flex}.zp-shell .zp-docs-step h3{color:#f8fafc;margin:0 0 .35rem;font-size:1.15rem;font-weight:700}.zp-shell .zp-docs-step p{color:#94a3b8;margin:0;font-size:.95rem;line-height:1.6}.zp-shell .zp-docs-step code{color:#38bdf8;background:#0000004d;border-radius:4px;padding:.15rem .4rem;font-family:monospace}.zp-shell .zp-docs-code-card{background:#090e17;border:1px solid #ffffff17;border-radius:16px;margin-bottom:2.5rem;overflow:hidden}.zp-shell .zp-docs-features-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;display:grid}.zp-shell .zp-inline-link{color:#38bdf8;align-items:center;gap:.25rem;text-decoration:none;display:inline-flex}.zp-shell .zp-inline-link:hover{text-decoration:underline}.zp-shell .zp-site-footer{background:#030712;border-top:1px solid #ffffff14;margin-top:3rem;padding:4.5rem 1.5rem 2rem}.zp-shell .zp-footer-grid{grid-template-columns:2fr 1fr 1fr 1fr 1.5fr;gap:2rem;max-width:1240px;margin:0 auto 3rem;display:grid}.zp-shell .zp-footer-brand-col{flex-direction:column;gap:1.25rem;display:flex}.zp-shell .zp-footer-desc{color:#94a3b8;max-width:380px;margin:0;font-size:.875rem;line-height:1.6}.zp-shell .zp-status-badge{color:#34d399;background:#10b98114;border:1px solid #10b98140;border-radius:999px;align-items:center;gap:.5rem;width:fit-content;padding:.35rem .75rem;font-size:.78rem;display:inline-flex}.zp-shell .zp-status-pulse{background:#10b981;border-radius:50%;width:6px;height:6px;box-shadow:0 0 8px #10b981}.zp-shell .zp-footer-col h4{color:#f8fafc;margin:0 0 1.25rem;font-size:.95rem;font-weight:700}.zp-shell .zp-footer-col a{color:#94a3b8;margin-bottom:.75rem;font-size:.875rem;text-decoration:none;transition:color .2s;display:block}.zp-shell .zp-footer-col a:hover{color:#34d399}.zp-shell .zp-security-item{color:#cbd5e1;align-items:center;gap:.5rem;margin-bottom:.75rem;font-size:.825rem;display:flex}.zp-shell .zp-security-badges-grid{grid-template-columns:repeat(2,1fr);gap:.5rem;margin-top:.85rem;display:grid}.zp-shell .zp-trust-card{-webkit-user-select:none;user-select:none;background:#ffffff06;border:1px solid #ffffff12;border-radius:8px;align-items:center;gap:.5rem;padding:.45rem .55rem;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex}.zp-shell .zp-trust-card:hover{background:#ffffff0d;border-color:#34d39959;transform:translateY(-1px)}.zp-shell .zp-trust-card svg{flex-shrink:0}.zp-shell .zp-trust-meta{flex-direction:column;min-width:0;line-height:1.15;display:flex}.zp-shell .zp-trust-title{color:#f1f5f9;letter-spacing:.01em;white-space:nowrap;font-size:.72rem;font-weight:700}.zp-shell .zp-trust-sub{letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;font-size:.6rem;font-weight:600}.zp-shell .zp-text-purple{color:#c084fc}.zp-shell .zp-footer-bar{color:#64748b;border-top:1px solid #ffffff0f;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;max-width:1240px;margin:0 auto;padding-top:1.75rem;font-size:.8rem;display:flex}.zp-shell .zp-footer-disclaimer{max-width:580px}@media (width<=1280px){.zp-shell .zp-pricing-grid{grid-template-columns:repeat(2,1fr);gap:1.75rem;max-width:900px;margin:0 auto}}@media (width<=992px){.zp-shell .zp-nav-cta .zp-btn-glow{display:none}.zp-shell .zp-hero{padding:6.5rem 1.25rem 3rem}.zp-shell .zp-hero-title{font-size:clamp(2rem,6vw,3rem)}.zp-shell .zp-mobile-hidden{display:none!important}.zp-shell .zp-mobile-view-tabs{box-sizing:border-box;width:100%;max-width:440px;margin:0 auto 1.5rem;display:flex}.zp-shell .zp-sim-layout{grid-template-columns:1fr;gap:1.5rem;width:100%;min-width:0;max-width:100%}.zp-shell .zp-phone-wrapper{box-sizing:border-box;border-width:8px;border-radius:40px;width:100%;max-width:360px;height:680px;margin:0 auto}.zp-shell .zp-phone-wrapper:before,.zp-shell .zp-phone-wrapper:after{display:none!important}.zp-shell .zp-pricing-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem;max-width:720px;margin:0 auto}.zp-shell .zp-pricing-card{padding:2rem 1.75rem}.zp-shell .zp-sim-type-selector{grid-template-columns:repeat(2,1fr)}.zp-shell .zp-roi-comparison-grid{grid-template-columns:1fr auto 1fr}.zp-shell .zp-footer-grid{grid-template-columns:1fr 1fr;gap:2.25rem}}@media (width<=768px){.zp-shell .zp-nav-wrap.zp-nav-scrolled{-webkit-backdrop-filter:none;background:#090e1a}.zp-shell .zp-nav{padding:.75rem 1rem}.zp-shell .zp-nav-links,.zp-shell .zp-nav-cta .zp-btn-ghost{display:none}.zp-shell .zp-nav-cta .zp-btn-glow,.zp-shell .zp-menu-btn{display:inline-flex}.zp-shell .zp-mobile-links{display:flex}.zp-shell .zp-top-banner-inner{text-align:center;flex-direction:column;gap:.4rem}.zp-shell .zp-banner-text{font-size:.8rem}.zp-shell .zp-hero{padding:6rem 1rem 2.5rem}.zp-shell .zp-hero-title{font-size:clamp(1.9rem,7vw,2.75rem)}.zp-shell .zp-hero-lead{font-size:1rem}.zp-shell .zp-hero-cta-group{flex-direction:column;align-items:stretch;gap:.75rem}.zp-shell .zp-hero-cta-group .zp-btn-xl{justify-content:center;padding:.85rem 1.5rem;font-size:1rem}.zp-shell .zp-hero-metrics-pill{border-radius:16px;flex-direction:column;gap:.6rem;padding:1rem 1.25rem}.zp-shell .zp-metric-divider{width:100%;height:1px}.zp-shell .zp-section{padding:3.5rem 1rem}.zp-shell .zp-section-alt{padding-left:1rem;padding-right:1rem}.zp-shell .zp-section-header{margin-bottom:2.5rem}.zp-shell .zp-scenario-bar{justify-content:flex-start;padding:.25rem .25rem .65rem}.zp-shell .zp-scenario-pills{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;justify-content:flex-start;padding-bottom:2px;overflow-x:auto}.zp-shell .zp-scenario-pills::-webkit-scrollbar{display:none}.zp-shell .zp-sim-card{box-sizing:border-box;min-width:0;max-width:100%;padding:1.25rem}.zp-shell .zp-sim-card-header{flex-wrap:wrap;gap:.6rem}.zp-shell .zp-sim-type-selector{box-sizing:border-box;grid-template-columns:repeat(2,1fr);width:100%}.zp-shell .zp-payload-header{word-break:break-all;overflow-wrap:anywhere;box-sizing:border-box;flex-direction:column;align-items:flex-start;gap:.35rem;width:100%}.zp-shell .zp-payload-code{box-sizing:border-box;max-width:100%;max-height:200px;font-size:.75rem}.zp-shell .zp-phone-wrapper{box-sizing:border-box;border-width:8px;border-radius:38px;width:100%;max-width:350px;height:660px;margin:0 auto}.zp-shell .zp-code-topbar{flex-wrap:wrap;gap:.5rem;padding:.65rem 1rem}.zp-shell .zp-code-tabs{flex-wrap:wrap}.zp-shell .zp-pre{font-size:.8rem}.zp-shell .zp-code-body{padding:1rem}.zp-shell .zp-feature-grid{grid-template-columns:1fr}.zp-shell .zp-feature-card{padding:1.5rem}.zp-shell .zp-roi-card{padding:1.5rem 1rem}.zp-shell .zp-roi-comparison-grid{grid-template-columns:1fr;gap:1rem}.zp-shell .zp-roi-vs{display:none}.zp-shell .zp-roi-price{font-size:2rem}.zp-shell .zp-steps-grid{grid-template-columns:1fr;gap:1.25rem}.zp-shell .zp-pricing-grid{grid-template-columns:repeat(2,1fr);gap:1rem;max-width:100%}.zp-shell .zp-pricing-card{padding:1.75rem 1.5rem}.zp-shell .zp-cta-box{padding:2.5rem 1.25rem}.zp-shell .zp-cta-actions{flex-direction:column;align-items:stretch}.zp-shell .zp-cta-actions .zp-btn{justify-content:center}.zp-shell .zp-cta-guarantees{flex-direction:column;gap:.5rem;font-size:.8rem}.zp-shell .zp-docs-steps-card{padding:1.5rem 1rem}.zp-shell .zp-docs-features-grid{grid-template-columns:1fr}.zp-shell .zp-docs-step{flex-direction:column;gap:.75rem}.zp-shell .zp-footer-grid{grid-template-columns:1fr;gap:2rem}.zp-shell .zp-footer-brand-col{gap:1rem}.zp-shell .zp-footer-desc{max-width:100%}.zp-shell .zp-footer-bar{text-align:center;flex-direction:column;gap:.75rem}.zp-shell .zp-footer-disclaimer{max-width:100%}.zp-shell .zp-site-footer{padding:3rem 1rem 1.5rem}}@media (width<=480px){.zp-shell .zp-nav-cta .zp-btn-glow{display:none}.zp-shell .zp-menu-btn{display:inline-flex}.zp-shell .zp-hero{padding:5.5rem 1rem 2rem}.zp-shell .zp-hero-title{letter-spacing:-.02em;font-size:clamp(1.65rem,8vw,2.25rem)}.zp-shell .zp-hero-badge{gap:.4rem;padding:.3rem .75rem;font-size:.78rem}.zp-shell .zp-badge-sub{display:none}.zp-shell .zp-mobile-tab-btn{gap:.35rem;padding:.55rem .5rem;font-size:.8rem}.zp-shell .zp-mobile-tab-btn span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.zp-shell .zp-sim-card{box-sizing:border-box;border-radius:14px;width:100%;max-width:100%;padding:1rem .85rem}.zp-shell .zp-sim-card-header{flex-direction:column;align-items:flex-start;gap:.5rem}.zp-shell .zp-sim-card-title{font-size:.925rem}.zp-shell .zp-tag-online{padding:.15rem .5rem;font-size:.7rem}.zp-shell .zp-sim-type-selector{box-sizing:border-box;grid-template-columns:repeat(2,1fr);gap:.35rem;width:100%}.zp-shell .zp-type-btn{gap:.25rem;min-width:0;padding:.45rem .3rem;font-size:.75rem}.zp-shell .zp-type-btn span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.zp-shell .zp-payload-tab{min-width:0;padding:.5rem .35rem;font-size:.7rem}.zp-shell .zp-payload-tab span{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.zp-shell .zp-payload-code{box-sizing:border-box;max-width:100%;max-height:180px;padding:.65rem .75rem;font-size:.72rem}.zp-shell .zp-code-tabs{display:none}.zp-shell .zp-pre{font-size:.72rem}.zp-shell .zp-roi-savings-banner{text-align:center;flex-direction:column;gap:.5rem;font-size:.85rem}.zp-shell .zp-section{padding:2.5rem .85rem}.zp-shell .zp-section-title{font-size:clamp(1.65rem,6vw,2rem)}.zp-shell .zp-faq-question{padding:1rem 1.1rem;font-size:.95rem}.zp-shell .zp-faq-answer{padding:0 1.1rem 1rem;font-size:.875rem}.zp-shell .zp-pricing-grid{grid-template-columns:1fr;gap:1rem;max-width:100%;margin:0 auto}.zp-shell .zp-pricing-card{border-radius:16px;padding:1.75rem 1.5rem}.zp-shell .zp-plan-amount{font-size:2.25rem}.zp-shell .zp-phone-wrapper{box-sizing:border-box;border-width:7px;border-radius:36px;outline:none;width:100%;max-width:340px;height:clamp(480px,80vh,620px);margin:0 auto;box-shadow:0 15px 40px -10px #000000d9}.zp-shell .zp-phone-wrapper:before,.zp-shell .zp-phone-wrapper:after{display:none!important}.zp-shell .zp-iphone-status-bar{box-sizing:border-box;width:100%;height:36px;padding:0 .75rem}.zp-shell .zp-iphone-island{width:76px;height:18px}.zp-shell .zp-iphone-island-cam{width:6px;height:6px}.zp-shell .zp-wa-header{box-sizing:border-box;gap:.3rem;width:100%;padding:.45rem .55rem}.zp-shell .zp-wa-avatar{width:30px;height:30px;font-size:.72rem}.zp-shell .zp-wa-contact h4{font-size:.825rem}.zp-shell .zp-wa-status{font-size:.62rem}.zp-shell .zp-wa-badge-verified{padding:.1rem .3rem;font-size:.58rem}.zp-shell .zp-wa-body{box-sizing:border-box;gap:.45rem;width:100%;padding:.55rem;overflow-x:hidden}.zp-shell .zp-wa-bubble{word-break:break-word;overflow-wrap:anywhere;box-sizing:border-box;max-width:90%;padding:.45rem .65rem;font-size:.78rem}.zp-shell .zp-wa-action-btn{gap:.25rem;padding:.4rem .5rem;font-size:.72rem}.zp-shell .zp-wa-voice-card{box-sizing:border-box;gap:.4rem;width:100%;min-width:0;max-width:100%;padding:.35rem .45rem}.zp-shell .zp-wa-voice-play-btn{width:26px;min-width:26px;height:26px}.zp-shell .zp-wa-security-alert{padding:.2rem .35rem;font-size:.58rem}.zp-shell .zp-wa-footer{box-sizing:border-box;gap:.3rem;width:100%;padding:.4rem .5rem}.zp-shell .zp-wa-input-container{box-sizing:border-box;flex:1;min-width:0;padding:0 .45rem}.zp-shell .zp-wa-real-input{box-sizing:border-box;width:100%;min-width:0;padding:.35rem 0;font-size:.75rem}.zp-shell .zp-wa-send-btn{width:28px;min-width:28px;height:28px;min-height:28px;padding:0!important}.zp-shell .zp-iphone-home-indicator{padding-top:3px;padding-bottom:5px}.zp-shell .zp-iphone-home-pill{width:85px;height:4px}}@media (width<=360px){.zp-shell .zp-section{padding-left:.5rem;padding-right:.5rem}.zp-shell .zp-phone-wrapper{border-width:6px;border-radius:28px;max-width:100%}.zp-shell .zp-mobile-tab-btn{gap:.2rem;padding:.45rem .25rem;font-size:.72rem}.zp-shell .zp-scenario-btn{padding:.3rem .5rem;font-size:.72rem}.zp-shell .zp-wa-header{gap:.25rem;padding:.35rem .4rem}.zp-shell .zp-wa-avatar{width:26px;height:26px;font-size:.65rem}.zp-shell .zp-wa-contact h4{font-size:.75rem}.zp-shell .zp-wa-contact .zp-wa-status,.zp-shell .zp-wa-badge-verified{display:none}.zp-shell .zp-iphone-island{width:60px;height:15px}.zp-shell .zp-wa-bubble{max-width:94%;padding:.4rem .5rem;font-size:.75rem}}.login-container{--text-primary:#f8fafc;--text-secondary:#94a3b8;--bg-white:#0f172a99;--bg-light:#0f172a;--logo-text-color:#f8fafc;color:#f1f5f9;box-sizing:border-box;background-color:#060913;flex-direction:column;justify-content:center;align-items:center;width:100%;min-height:100dvh;padding:2rem 1.5rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;display:flex;position:relative;overflow:clip}.login-container .zaptura-logo-text{color:#f8fafc!important}.login-container *,.login-container :before,.login-container :after{box-sizing:border-box}.login-container .login-ambient{filter:blur(80px);pointer-events:none;z-index:0;background:radial-gradient(circle,#10b9812e 0%,#06b6d414 45%,#0000 70%);width:600px;height:600px;position:absolute;top:-20%;left:50%;transform:translate(-50%)}.login-container .login-interactive-glow{pointer-events:none;width:650px;height:650px;transform:translate(calc(var(--mouse-x,-9999px) - 325px), calc(var(--mouse-y,-9999px) - 325px));opacity:var(--mouse-opacity,0);filter:blur(40px);z-index:0;will-change:transform, opacity;background:radial-gradient(circle,#10b98138 0%,#06b6d429 28%,#0ea5e914 55%,#0000 72%);border-radius:50%;transition:opacity .4s,transform 50ms ease-out;position:absolute;top:0;left:0}.login-container .login-grid-bg{pointer-events:none;z-index:0;transform:translate(calc(var(--mouse-tilt-x,0px) * .15), calc(var(--mouse-tilt-y,0px) * .15));will-change:transform;background-image:linear-gradient(90deg,#ffffff05 1px,#0000 1px),linear-gradient(#ffffff05 1px,#0000 1px);background-size:48px 48px;transition:transform .3s cubic-bezier(.2,0,0,1);position:absolute;inset:0}.login-container .login-top-bar{z-index:10;justify-content:space-between;align-items:center;width:100%;max-width:480px;margin-bottom:1.5rem;display:flex;position:relative}.login-container .login-back-link{color:#94a3b8;align-items:center;gap:.4rem;font-size:.85rem;font-weight:500;text-decoration:none;transition:color .2s;display:inline-flex}.login-container .login-back-link:hover{color:#34d399}.login-container .register-trial-badge{color:#34d399;background:#10b98126;border:1px solid #10b98159;border-radius:999px;align-items:center;gap:.35rem;padding:.25rem .65rem;font-size:.75rem;font-weight:700;display:inline-flex}.login-container .login-card{-webkit-backdrop-filter:blur(20px);z-index:10;background:#0f172acc;border:1px solid #ffffff1a;border-radius:20px;width:100%;max-width:480px;padding:2.25rem;position:relative;box-shadow:0 25px 60px -15px #000000b3,0 0 40px #10b9811f}.login-container .login-logo{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.4rem;margin-bottom:1.25rem;display:flex}.login-container .login-platform-desc{color:#94a3b8;text-align:center;margin:-.5rem 0 1.35rem;font-size:.85rem;line-height:1.45}.login-container .login-tabs{background:#060913b3;border:1px solid #ffffff14;border-radius:9999px;gap:4px;margin-bottom:1.5rem;padding:4px;display:flex}.login-container .login-tab{color:#94a3b8;cursor:pointer;text-align:center;background:0 0;border:none;border-radius:9999px;flex:1;padding:.55rem 1rem;font-size:.875rem;font-weight:600;transition:all .2s}.login-container .login-tab:hover:not(.active){color:#f1f5f9}.login-container .login-tab.active{color:#34d399;background:#10b9812e;border:1px solid #10b98166;box-shadow:0 0 14px #10b98140}.login-container .login-form{flex-direction:column;gap:1.15rem;display:flex}.login-container .input-group{flex-direction:column;gap:.45rem;display:flex}.login-container .input-group label{color:#cbd5e1;font-size:.825rem;font-weight:600}.login-container .input-wrapper{align-items:center;display:flex;position:relative}.login-container .input-wrapper input{color:#f8fafc;background:#060913bf;border:1px solid #ffffff1a;border-radius:10px;width:100%;padding:.75rem 2.85rem .75rem 1rem;font-size:.95rem;transition:all .2s}.login-container .input-wrapper input:focus{background:#060913f2;border-color:#10b981;outline:none;box-shadow:0 0 0 3px #10b98133}.login-container .input-wrapper input.error{border-color:#ef4444}.login-container .toggle-visibility{color:#64748b;cursor:pointer;background:0 0;border:none;align-items:center;padding:.25rem;transition:color .2s;display:flex;position:absolute;right:.85rem}.login-container .toggle-visibility:hover{color:#cbd5e1}.login-container .error-message{color:#f87171;background:#ef44441f;border:1px solid #ef44444d;border-radius:8px;padding:.5rem .8rem;font-size:.825rem}.login-container .login-info-notice{color:#38bdf8;text-align:center;background:#38bdf81a;border:1px solid #38bdf840;border-radius:8px;padding:.5rem .8rem;font-size:.825rem}.login-container .register-hint{color:#f59e0b;font-size:.75rem}.login-container .connect-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#10b981 0%,#059669 100%);border:1px solid #ffffff26;border-radius:10px;width:100%;margin-top:.5rem;padding:.85rem 1.5rem;font-size:.95rem;font-weight:700;transition:all .25s;box-shadow:0 0 20px #10b98159}.login-container .connect-btn:hover:not(:disabled){background:linear-gradient(135deg,#34d399 0%,#10b981 100%);transform:translateY(-2px);box-shadow:0 0 28px #10b9818c}.login-container .connect-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.login-container .login-divider{align-items:center;gap:1rem;margin:1.5rem 0 1.25rem;display:flex}.login-container .login-divider:before,.login-container .login-divider:after{content:"";background:#ffffff14;flex:1;height:1px}.login-container .login-divider span{letter-spacing:.08em;color:#64748b;text-transform:uppercase;white-space:nowrap;font-size:.7rem;font-weight:600}.login-container .login-social-group{flex-direction:column;gap:.75rem;width:100%;display:flex}.login-container .login-google-btn{color:#f8fafc;cursor:pointer;background:#060913a6;border:1px solid #ffffff1a;border-radius:10px;justify-content:center;align-items:center;gap:.65rem;width:100%;padding:.8rem 1.5rem;font-size:.9rem;font-weight:600;transition:all .2s;display:flex}.login-container .login-google-btn:hover{background:#0f172ae6;border-color:#fff3;transform:translateY(-1px)}.login-container .login-footer{color:#64748b;text-align:center;z-index:10;margin-top:2rem;font-size:.75rem;position:relative}@media (width<=480px){.login-container{padding:1rem}.login-container .login-card{padding:1.75rem 1.25rem}}.page-header{grid-template-columns:1fr auto;grid-template-areas:"title actions""subtitle subtitle";align-items:center;column-gap:1rem;width:100%;margin-bottom:1.5rem;display:grid}.page-header__title-group{grid-area:title;align-items:center;gap:.75rem;min-width:0;display:flex}.page-header__title-group h1{margin:0}.page-header__badge{display:inline-flex}.page-header__actions{grid-area:actions;justify-self:end;align-items:center;gap:.75rem;display:flex}.page-header__subtitle{color:var(--text-muted);grid-area:subtitle;margin:.5rem 0 0;font-size:.9375rem;line-height:1.5}@media (width<=768px){.page-header{grid-template-columns:1fr;grid-template-areas:"title""subtitle""actions";column-gap:0}.page-header__title-group h1{font-size:1.5rem}.page-header__actions{flex-direction:column;justify-self:stretch;align-items:stretch;gap:.625rem;width:100%;margin-top:.75rem;display:flex}.page-header__actions>*{box-sizing:border-box;white-space:nowrap;justify-content:center;align-items:center;width:100%;display:inline-flex}.page-header__subtitle{font-size:.875rem}}@media (width<=480px){.page-header__actions>button,.page-header__actions>a,.page-header__actions>.btn-primary,.page-header__actions>.btn-secondary,.page-header__actions>.btn-danger{white-space:nowrap;justify-content:center;width:100%}}.dashboard{box-sizing:border-box;width:100%;padding:2rem}.dashboard .page-header{margin-bottom:2rem}.dashboard .status-badge{text-transform:uppercase;letter-spacing:.025em;border-radius:9999px;padding:.375rem .75rem;font-size:.6875rem;font-weight:700}.dashboard .status-badge.connected{color:var(--primary-text);background:#25d3661a}.dashboard .status-badge.disconnected{background:var(--bg-light);color:var(--text-muted)}.dashboard .dashboard-trial-banner{background:linear-gradient(135deg, #22d3ee14 0%, #0f172a99 100%), var(--bg-white);border-radius:var(--radius,12px);border:1px solid #22d3ee4d;justify-content:space-between;align-items:center;gap:1.25rem;margin-bottom:2rem;padding:1.1rem 1.4rem;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 15px -2px #0003,0 0 12px -3px #22d3ee1a}.dashboard .dashboard-trial-banner:before{content:"";background:linear-gradient(180deg, var(--primary,#22d3ee) 0%, #38bdf8 100%);border-radius:4px 0 0 4px;width:4px;height:100%;position:absolute;top:0;left:0}.dashboard .dashboard-trial-banner-left{flex:1;align-items:center;gap:1rem;display:flex}.dashboard .dashboard-trial-icon-wrap{width:40px;height:40px;color:var(--primary,#22d3ee);background:#22d3ee26;border:1px solid #22d3ee40;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.dashboard .dashboard-trial-text{flex-direction:column;gap:.25rem;display:flex}.dashboard .dashboard-trial-heading-row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.dashboard .dashboard-trial-title{color:var(--text-primary);font-size:.95rem;font-weight:700}.dashboard .dashboard-trial-timer-pill{color:var(--primary,#22d3ee);background:#22d3ee26;border:1px solid #22d3ee4d;border-radius:9999px;padding:.15rem .6rem;font-family:JetBrains Mono,monospace;font-size:.8rem;font-weight:600}.dashboard .dashboard-trial-desc{color:var(--text-secondary);margin:0;font-size:.85rem;line-height:1.4}.dashboard .btn-dashboard-upgrade{color:var(--btn-primary-text,#0f172a);background:var(--primary,#22d3ee);cursor:pointer;white-space:nowrap;border:none;border-radius:8px;flex-shrink:0;align-items:center;gap:.5rem;padding:.65rem 1.25rem;font-size:.875rem;font-weight:600;transition:all .2s;display:inline-flex;box-shadow:0 2px 8px #22d3ee4d}.dashboard .btn-dashboard-upgrade:hover{background:var(--primary-hover,#06b6d4);transform:translateY(-1px);box-shadow:0 4px 12px #22d3ee66}@media (width<=768px){.dashboard .dashboard-trial-banner{flex-direction:column;align-items:flex-start;gap:1rem}.dashboard .btn-dashboard-upgrade{justify-content:center;width:100%}}.dashboard .stats-grid{grid-template-columns:repeat(4,1fr);gap:1.5rem;width:100%;margin-bottom:2rem;display:grid}@media (width<=1024px){.dashboard .stats-grid{grid-template-columns:repeat(2,1fr);gap:1rem}}@media (width<=480px){.dashboard .stats-grid{grid-template-columns:1fr}}.dashboard .stat-card{background:var(--bg-white);box-shadow:var(--shadow-sm);border:1px solid var(--border);border-radius:12px;min-width:0;padding:1.5rem;transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden}.dashboard .stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.dashboard .stat-header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.dashboard .stat-icon{color:var(--text-muted);z-index:2;position:relative}.dashboard .stat-watermark{opacity:.04;width:96px;height:96px;color:var(--text-primary);pointer-events:none;z-index:1;position:absolute;bottom:-15px;right:-10px;transform:rotate(-15deg)}.dashboard .stat-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);z-index:2;font-size:.75rem;font-weight:600;position:relative}.dashboard .stat-value{color:var(--text-primary);z-index:2;font-size:2rem;font-weight:700;position:relative}.dashboard .stat-detail{color:var(--text-muted);z-index:2;margin-top:.5rem;font-size:.75rem;line-height:1.35;position:relative}.dashboard .sessions-section{background:var(--bg-white);box-shadow:var(--shadow-sm);border:1px solid var(--border);box-sizing:border-box;border-radius:12px;width:100%;padding:1.5rem}.dashboard .section-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.dashboard .section-subtitle{color:var(--text-muted);font-size:.875rem}.dashboard .sessions-table{flex-direction:column;width:100%;font-size:.875rem;display:flex}.dashboard .sessions-table .table-header,.dashboard .sessions-table .table-row{grid-template-columns:140px 200px 140px 1fr 180px;align-items:center;gap:1rem;padding:1rem 1.5rem;display:grid}.dashboard .sessions-table .table-header{background:var(--bg-light);border-radius:var(--radius) var(--radius) 0 0;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border);font-size:.7rem;font-weight:700}.dashboard .sessions-table .table-row{border-bottom:1px solid var(--border)}.dashboard .sessions-table .table-row:last-child{border-bottom:none}.dashboard .session-info-cell{flex-direction:column;gap:.125rem;min-width:0;display:flex}.dashboard .session-id{color:var(--text-primary);white-space:nowrap;font-family:JetBrains Mono,monospace;font-size:.8125rem}.dashboard .session-name{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;max-width:140px;font-size:.75rem;overflow:hidden}.dashboard .phone{color:var(--text-primary);white-space:nowrap;font-size:.8125rem}.dashboard .status-pill{border-radius:9999px;width:fit-content;padding:.25rem .75rem;font-size:.75rem;font-weight:500;display:inline-block}.dashboard .status-pill.ready{color:var(--primary-text);background:#25d3661a}.dashboard .status-pill.connecting,.dashboard .status-pill.authenticating{color:var(--warning-text);background:#f59e0b26}.dashboard .status-pill.disconnected{background:var(--bg-light);color:var(--text-muted)}.dashboard .status-pill.failed{color:var(--error-text);background:#ef444426}.dashboard .last-active{color:var(--text-secondary);font-size:.875rem}.dashboard .actions{justify-content:flex-end;gap:.5rem;display:flex}.dashboard .btn-sm{cursor:pointer;background:var(--bg-light);border:1px solid var(--border);color:var(--text-secondary);border-radius:6px;padding:.375rem .75rem;font-size:.75rem;font-weight:500;transition:all .2s}.dashboard .btn-sm:hover{background:var(--bg-white);border-color:var(--text-muted)}.dashboard .btn-sm.danger{color:var(--error-text);background:#ef44441f;border-color:#ef44444d}.dashboard .btn-sm.danger:hover{background:#ef44442e}@media (width<=1200px){.dashboard .stats-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.dashboard{padding:1rem}.dashboard .stats-grid{grid-template-columns:1fr;gap:1rem}.dashboard .stat-value{font-size:1.5rem}.dashboard .sessions-section{padding:1rem}.dashboard .section-header{flex-direction:column;align-items:flex-start;gap:.5rem;margin-bottom:1rem}.dashboard .sessions-table .table-header{display:none}.dashboard .sessions-table .table-row{border-bottom:1px solid var(--border);flex-direction:column;gap:.5rem;padding:1rem;display:flex}.dashboard .sessions-table .table-row:last-child{border-bottom:none}.dashboard .session-info-cell{order:1}.dashboard .session-id{font-size:.9375rem;font-weight:600}.dashboard .phone{order:2}.dashboard .status-pill{order:3}.dashboard .last-active{color:var(--text-muted);order:4;font-size:.75rem}.dashboard .actions{border-top:1px solid var(--border);order:5;justify-content:flex-start;padding-top:.5rem}}@media (width<=480px){.dashboard{padding:.75rem}}.custom-select{min-width:0;display:flex;position:relative}.custom-select-trigger{width:100%;color:var(--text-primary);cursor:pointer;white-space:nowrap;background:0 0;border:none;justify-content:space-between;align-items:center;gap:.5rem;padding:.75rem 0;font-family:inherit;font-size:.9375rem;display:flex;overflow:hidden}.custom-select-trigger:hover{color:var(--text-primary)}.custom-select-trigger:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.custom-select-label{text-overflow:ellipsis;text-align:left;flex:1;min-width:0;overflow:hidden}.custom-select-chevron{color:var(--text-muted);flex-shrink:0;transition:transform .2s}.custom-select-chevron.open{transform:rotate(180deg)}.custom-select-dropdown{background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius);min-width:160px;max-width:min(320px,100vw - 24px);max-height:min(250px,40vh);box-shadow:var(--shadow-lg);z-index:200;box-sizing:border-box;padding:.3rem;animation:.15s customSelectFadeIn;position:absolute;top:calc(100% + 4px);overflow:hidden auto}.custom-select-dropdown.align-left{left:0;right:auto}.custom-select-dropdown.align-right{left:auto;right:0}.filter-group .custom-select-dropdown.align-right{left:auto;right:-.5rem}.filter-group .custom-select-dropdown.align-left{left:-.5rem;right:auto}@keyframes customSelectFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.custom-select-option{width:100%;min-height:34px;color:var(--text-secondary);border-radius:calc(var(--radius) - 2px);text-align:left;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;box-sizing:border-box;background:0 0;border:0;align-items:center;padding:.45rem .6rem;font-family:inherit;font-size:.875rem;font-weight:500;transition:all .15s;display:flex;overflow:hidden}.custom-select-option:hover,.custom-select-option.focused{background:var(--bg-light);color:var(--text-primary)}.custom-select-option.selected{background:var(--primary-soft);color:var(--primary-text);font-weight:600}[dir=rtl] .custom-select-label,[dir=rtl] .custom-select-option{text-align:right}[dir=rtl] .custom-select-dropdown.align-left{left:auto;right:0}[dir=rtl] .custom-select-dropdown.align-right{left:0;right:auto}[dir=rtl] .filter-group .custom-select-dropdown.align-right{left:-.5rem;right:auto}[dir=rtl] .filter-group .custom-select-dropdown.align-left{left:auto;right:-.5rem}@media (width<=768px){.custom-select{width:100%}.custom-select-trigger{width:100%;padding:.625rem 0;font-size:.875rem}.custom-select-dropdown{max-height:min(220px,40vh)}.filter-group{box-sizing:border-box!important;width:100%!important;display:flex!important;position:relative!important}.filter-group .custom-select{flex:1;width:100%;min-width:0;position:static!important}.filter-group .custom-select-trigger{width:100%;padding:0}.filter-group .custom-select-dropdown{box-sizing:border-box!important;width:100%!important;min-width:100%!important;max-width:100%!important;left:0!important;right:0!important}}.filter-group{background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius,8px);box-sizing:border-box;height:40px;min-height:40px;color:var(--text-muted);align-items:center;gap:.5rem;padding:0 .875rem;transition:border-color .15s,box-shadow .15s;display:inline-flex}.filter-group:focus-within{border-color:var(--primary)}.filter-group>svg{color:var(--text-muted);flex-shrink:0}.filter-group .custom-select{flex:1;min-width:0}.filter-group .custom-select-trigger{height:38px;padding:0;font-size:.875rem}.sessions-page{box-sizing:border-box;width:100%;padding:2rem}.sessions-page .page-header{width:100%;margin-bottom:2rem}.sessions-page .filters-bar{align-items:center;gap:.75rem;margin-bottom:1.5rem;display:flex}.sessions-page .search-input{background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius,8px);box-sizing:border-box;flex:1;align-items:center;gap:.65rem;max-width:400px;height:40px;min-height:40px;padding:0 .875rem;transition:border-color .15s,box-shadow .15s;display:flex}.sessions-page .search-input:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #25d3661a}.sessions-page .search-input svg{color:var(--text-muted);flex-shrink:0}.sessions-page .search-input input{height:100%;color:var(--text-primary);background:0 0;border:none;flex:1;padding:0;font-size:.875rem}.sessions-page .search-input input:focus{outline:none}.sessions-page .filter-group{background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius,8px);box-sizing:border-box;align-items:center;gap:.5rem;height:40px;min-height:40px;padding:0 .875rem;transition:border-color .15s,box-shadow .15s;display:inline-flex}.sessions-page .filter-group:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #25d3661a}.sessions-page .filter-group svg{color:var(--text-muted);flex-shrink:0}.sessions-page .filter-group .custom-select{flex:1;min-width:0}.sessions-page .filter-group .custom-select-trigger{height:38px;padding:0;font-size:.875rem}.sessions-page .sessions-grid{grid-template-columns:repeat(4,1fr);gap:1.5rem;width:100%;display:grid}.sessions-page .session-card{background:var(--bg-white);box-shadow:var(--shadow-sm);border:1px solid var(--border);border-radius:12px;padding:1.5rem}.sessions-page .card-header{justify-content:space-between;align-items:center;margin-bottom:1.25rem;display:flex}.sessions-page .card-header h3{white-space:nowrap;text-overflow:ellipsis;max-width:180px;margin:0;overflow:hidden}.sessions-page .qr-placeholder{background:var(--bg-light);border-radius:var(--radius);flex-direction:column;justify-content:center;align-items:center;margin-bottom:1rem;padding:2rem;display:flex}.sessions-page .qr-icon{color:var(--text-muted);margin-bottom:.75rem}.sessions-page .qr-placeholder p{color:var(--text-secondary);margin:0;font-size:.875rem}.sessions-page .session-info{margin-bottom:1rem}.sessions-page .info-row{border-bottom:1px solid var(--border);justify-content:space-between;padding:.5rem 0;display:flex}.sessions-page .info-row:last-child{border-bottom:none}.sessions-page .info-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);font-size:.7rem;font-weight:600}.sessions-page .info-value{color:var(--text-primary);font-size:.8125rem;font-weight:500}.sessions-page .info-value.mono{font-family:monospace}.sessions-page .info-value.error-text{color:var(--error-text);text-align:right;text-overflow:ellipsis;white-space:nowrap;max-width:60%;font-weight:500;overflow:hidden}.sessions-page .info-value.restriction-text{color:var(--warning-text);text-align:right;text-overflow:ellipsis;white-space:nowrap;max-width:60%;font-weight:500;overflow:hidden}.sessions-page .card-actions{flex-wrap:wrap;gap:.5rem;display:flex}.sessions-page .btn-action{cursor:pointer;background:var(--bg-light);border:1px solid var(--border);color:var(--text-secondary);border-radius:6px;align-items:center;gap:.375rem;padding:.5rem .75rem;font-size:.8125rem;font-weight:500;transition:all .2s;display:flex}.sessions-page .btn-action:hover:not(:disabled){background:var(--bg-white);color:var(--text-primary)}.sessions-page .btn-action:disabled{opacity:.5;cursor:not-allowed}.sessions-page .btn-action.danger{color:var(--error-text)}.sessions-page .btn-action.danger:hover{color:var(--error-text);background:#ef44441f;border-color:#ef44444d}@media (width<=1400px){.sessions-page .sessions-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=1000px){.sessions-page .sessions-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.sessions-page .sessions-grid{grid-template-columns:1fr}.sessions-page{padding:1rem}.sessions-page .filters-bar{flex-direction:column;align-items:stretch;gap:.75rem;width:100%}.sessions-page .search-input{box-sizing:border-box;width:100%;max-width:none}.sessions-page .filter-group{box-sizing:border-box;justify-content:space-between;width:100%}.sessions-page .filter-group .custom-select{flex:1}.sessions-page .btn-primary{justify-content:center;width:100%}.sessions-page .session-card{padding:1rem}.sessions-page .card-actions{flex-direction:column}.sessions-page .card-actions .btn-action{justify-content:center}}@media (width<=480px){.sessions-page{padding:.75rem}}.sessions-page .modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#00000080;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.sessions-page .modal{background:var(--bg-white);border-radius:16px;flex-direction:column;width:90%;max-width:480px;max-height:90vh;animation:.3s slideUp;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}.sessions-page .modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:1.5rem 1.5rem 1rem;display:flex}.sessions-page .modal-header h2{color:var(--text-primary);margin:0;font-size:1.25rem;font-weight:700}.sessions-page .modal-title{flex-direction:column;gap:.25rem;display:flex}.sessions-page .session-name{color:var(--text-muted);font-size:.875rem;font-weight:500}.sessions-page .modal-body{flex:auto;padding:1.5rem;overflow-y:auto}.sessions-page .modal-body>label{color:var(--text-secondary);margin-bottom:.5rem;font-size:.875rem;font-weight:600;display:block}.sessions-page .modal-body input{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-light);box-sizing:border-box;width:100%;padding:.875rem 1rem;font-size:.9375rem;transition:all .2s}.sessions-page .modal-body input:focus{border-color:var(--primary);background:var(--bg-white);outline:none;box-shadow:0 0 0 3px #22c55e1a}.sessions-page .modal-body input::placeholder{color:var(--text-muted)}.sessions-page .input-hint{color:var(--text-muted);margin:.5rem 0 0;font-size:.75rem}.sessions-page .input-hint code{background:var(--bg-light);border-radius:4px;padding:.125rem .375rem;font-family:JetBrains Mono,monospace;font-size:.7rem}.sessions-page .input-error{color:var(--error-text);margin:.5rem 0 0;font-size:.75rem;font-weight:500}.sessions-page .modal-footer{justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem 1.5rem;display:flex}.sessions-page .confirm-modal{max-width:400px}.sessions-page .confirm-modal .modal-body p{margin:0 0 .5rem}.sessions-page .text-muted{color:var(--text-muted);font-size:.875rem}.sessions-page .btn-icon{cursor:pointer;width:36px;height:36px;color:var(--text-muted);background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;transition:all .2s;display:flex}.sessions-page .btn-icon:hover{background:var(--bg-light);color:var(--text-primary)}.sessions-page .empty-state{text-align:center;color:var(--text-muted);flex-direction:column;grid-column:1/-1;justify-content:center;align-items:center;padding:4rem 2rem;display:flex}.sessions-page .empty-state svg{opacity:.5;margin-bottom:1rem}.sessions-page .empty-state h3{color:var(--text-secondary);margin:0 0 .5rem;font-size:1.125rem;font-weight:600}.sessions-page .empty-state p{margin:0;font-size:.875rem}.sessions-page .status-badge{text-transform:uppercase;letter-spacing:.03em;border-radius:20px;align-items:center;gap:.375rem;padding:.25rem .625rem;font-size:.75rem;font-weight:600;display:inline-flex}.sessions-page .status-badge.connected{color:var(--success-text);background:#22c55e1a}.sessions-page .status-badge.disconnected{color:var(--text-secondary);background:#6b72801a}.sessions-page .status-badge.connecting{color:var(--warning-text);background:#eab3081a}.sessions-page .status-badge:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.sessions-page .session-details-modal{max-width:580px}.sessions-page .session-screenshot-card{background:var(--bg-light);border:1px solid var(--border);border-radius:12px;margin-bottom:1.25rem;overflow:hidden;box-shadow:0 2px 8px #0000000a}.sessions-page .session-screenshot-header{background:var(--bg-hover,#00000005);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:.625rem .875rem;display:flex}.sessions-page .session-screenshot-title{color:var(--text-primary);align-items:center;gap:.5rem;font-size:.8125rem;font-weight:600;display:flex}.sessions-page .session-screenshot-title .live-indicator{color:#16a34a;background:#22c55e1f;border-radius:9999px;align-items:center;gap:.375rem;padding:.125rem .5rem;font-size:.6875rem;font-weight:600;display:inline-flex}.sessions-page .session-screenshot-title .live-indicator.paused{color:var(--text-muted);background:#94a3b826}.sessions-page .session-screenshot-title .live-dot{background:#22c55e;border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite pulse-dot;box-shadow:0 0 0 2px #22c55e4d}.sessions-page .session-screenshot-title .live-dot.paused{box-shadow:none;background:#94a3b8;animation:none}@keyframes pulse-dot{0%{transform:scale(.95);box-shadow:0 0 #22c55eb3}70%{transform:scale(1);box-shadow:0 0 0 5px #22c55e00}to{transform:scale(.95);box-shadow:0 0 #22c55e00}}.sessions-page .session-screenshot-actions{align-items:center;gap:.375rem;display:flex}.sessions-page .session-screenshot-actions .screenshot-timestamp{color:var(--text-muted);margin-right:.25rem;font-family:JetBrains Mono,monospace;font-size:.6875rem}.sessions-page .btn-icon-subtle{width:26px;height:26px;color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;padding:0;transition:all .15s;display:flex}.sessions-page .btn-icon-subtle:hover:not(:disabled){background:var(--bg-light);border-color:var(--border);color:var(--text-primary)}.sessions-page .btn-icon-subtle:disabled{opacity:.5;cursor:not-allowed}.sessions-page .session-screenshot-body{background:#0f172a;justify-content:center;align-items:center;min-height:180px;max-height:260px;transition:max-height .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.sessions-page .session-screenshot-body.expanded{max-height:520px}.sessions-page .session-screenshot-img-wrapper{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.sessions-page .session-screenshot-img{object-fit:contain;cursor:zoom-in;width:100%;height:auto;max-height:260px;transition:max-height .3s;display:block}.sessions-page .session-screenshot-body.expanded .session-screenshot-img{cursor:zoom-out;max-height:520px}.sessions-page .session-screenshot-placeholder{color:var(--text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.625rem;padding:2rem 1.5rem;font-size:.8125rem;display:flex}.sessions-page .session-screenshot-placeholder.muted{color:#94a3b8}.sessions-page .detail-grid{gap:1rem;display:grid}.sessions-page .detail-item{flex-direction:column;gap:.25rem;display:flex}.sessions-page .detail-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:.75rem;font-weight:600}.sessions-page .detail-value{color:var(--text-primary);word-break:break-all;font-size:.9375rem}.sessions-page .detail-value.mono{background:var(--bg-light);border-radius:6px;padding:.5rem;font-family:JetBrains Mono,monospace;font-size:.8125rem}.sessions-page .detail-id-box{background:var(--bg-light);border:1px solid var(--border);border-radius:6px;justify-content:space-between;align-items:center;gap:.5rem;padding:.5rem .75rem;display:flex}.sessions-page .detail-id-text{color:var(--text-primary);word-break:break-all;-webkit-user-select:all;user-select:all;font-family:JetBrains Mono,monospace;font-size:.8125rem}.sessions-page .copy-id-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:4px;transition:all .15s;display:inline-flex}.sessions-page .copy-id-btn:hover{color:var(--primary);background:#25d3661a}.sessions-page .copy-id-btn .copied{color:var(--primary)}.sessions-page .card-copy-btn{margin-left:2px;padding:2px}.sessions-page .btn-close{background:var(--bg-light);border:1px solid var(--border);cursor:pointer;width:32px;height:32px;color:var(--text-secondary);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s;display:flex}.sessions-page .btn-close svg{flex-shrink:0;min-width:20px;width:20px!important;height:20px!important}.sessions-page .btn-close:hover{color:var(--error-text);background:#ef44441f;border-color:#ef44444d}.sessions-page .btn-close:hover svg{stroke:var(--error)}.sessions-page .qr-modal .modal-body{padding:1.5rem}.sessions-page .qr-instructions{text-align:left;background:var(--bg-light);border-radius:12px;margin-top:1.5rem;padding:1rem 1.25rem}.sessions-page .qr-step{color:var(--text-secondary);border-bottom:1px solid var(--border);margin:0;padding:.5rem 0;font-size:.875rem}.sessions-page .qr-step:last-child{border-bottom:none}.sessions-page .qr-step strong{color:var(--text-primary)}.sessions-page .qr-auto-refresh{color:var(--text-muted);justify-content:center;align-items:center;gap:.5rem;margin-top:1rem;font-size:.75rem;display:flex}.sessions-page .spin-slow{animation:2s linear infinite spin}.sessions-page .status-pill{text-transform:capitalize;border-radius:20px;padding:.25rem .75rem;font-size:.75rem;font-weight:600;display:inline-flex}.sessions-page .status-pill.created,.sessions-page .status-pill.idle{color:var(--text-secondary);background:#6b72801a}.sessions-page .status-pill.initializing,.sessions-page .status-pill.connecting,.sessions-page .status-pill.authenticating{color:var(--warning-text);background:#eab3081a}.sessions-page .status-pill.qr_ready{color:var(--info);background:#3b82f61a}.sessions-page .status-pill.action_required{color:var(--warning-text);background:#f59e0b38}.sessions-page .status-pill.ready{color:var(--success-text);background:#22c55e1a}.sessions-page .status-pill.disconnected,.sessions-page .status-pill.failed{color:var(--error-text);background:#ef44441a}.sessions-page .btn-sm{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:6px;margin-top:.75rem;padding:.5rem 1rem;font-size:.8125rem;font-weight:600;transition:background .2s}.sessions-page .btn-sm:hover{background:var(--primary-hover)}.sessions-page .pairing-tabs{background:var(--bg-light);border-radius:8px;gap:.5rem;margin-bottom:1.5rem;padding:.25rem;display:flex}.sessions-page .pairing-tab-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;flex:1;padding:.5rem;font-size:.875rem;font-weight:600;transition:all .2s}.sessions-page .pairing-tab-btn.active{background:var(--bg-white);color:var(--text-primary);box-shadow:var(--shadow-sm)}.sessions-page .pairing-container{padding:.5rem 0}.sessions-page .pairing-error{text-align:start;color:var(--error-text);background:#ef44441f;border-radius:8px;margin-bottom:1rem;padding:.75rem;font-size:.875rem}.sessions-page .pairing-warning{text-align:start;color:var(--warning-text);background:#f59e0b1f;border-radius:8px;margin-bottom:1rem;padding:.75rem;font-size:.8125rem}.sessions-page .pairing-form{text-align:start}.sessions-page .pairing-label{margin-bottom:.5rem;font-weight:600;display:block}.sessions-page .pairing-input{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-light);box-sizing:border-box;width:100%;margin-bottom:.5rem;padding:.875rem 1rem;font-size:.9375rem}.sessions-page .pairing-code-display{color:var(--primary-text);background:var(--bg-light);border:2px dashed var(--border);letter-spacing:.1em;direction:ltr;unicode-bidi:isolate;border-radius:12px;justify-content:center;align-items:center;gap:.75rem;margin:1.5rem 0;padding:1rem 2rem;font-family:JetBrains Mono,monospace;font-size:2rem;font-weight:700;display:flex}.sessions-page .pairing-instructions-title{color:var(--text-primary);margin:0 0 .5rem;font-size:.9375rem;font-weight:600}.sessions-page .detail-toggle-row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.sessions-page .detail-hint{color:var(--text-muted);font-size:.75rem;line-height:1.4}.sessions-page .toggle-switch{flex-shrink:0;width:48px;height:26px;display:inline-block;position:relative}.sessions-page .toggle-switch input{opacity:0;width:0;height:0}.sessions-page .toggle-slider{cursor:pointer;background-color:var(--border);border-radius:26px;transition:all .3s;position:absolute;inset:0}.sessions-page .toggle-slider:before{content:"";background-color:#fff;border-radius:50%;width:20px;height:20px;transition:all .3s;position:absolute;bottom:3px;left:3px;box-shadow:0 2px 4px #00000026}.sessions-page .toggle-switch input:checked+.toggle-slider{background-color:var(--primary)}.sessions-page .toggle-switch input:checked+.toggle-slider:before{transform:translate(22px)}.sessions-page .toggle-switch input:disabled+.toggle-slider{cursor:not-allowed;opacity:.55}.sessions-page .toggle-switch input:focus-visible+.toggle-slider{outline:2px solid var(--primary);outline-offset:2px}.sessions-page .proxy-form-section{border-top:1px solid var(--border);flex-direction:column;gap:.75rem;margin-top:1rem;padding-top:1rem;display:flex}.sessions-page .proxy-modal .proxy-form-section,.sessions-page .detail-grid.proxy-form-section{border-top:none;margin-top:0;padding-top:0}.sessions-page .proxy-form-section input[type=text]{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-white);width:100%;color:var(--text-primary);box-sizing:border-box;padding:.625rem .75rem;font-size:.9375rem}.global-search{align-items:center;gap:.5rem;width:100%;display:flex;position:relative}.global-search-input{border:1px solid var(--border);border-radius:var(--radius,8px);background:var(--bg-white);min-width:12rem;height:2.25rem;color:var(--text-primary);flex:auto;padding:0 .75rem;font-size:.875rem}.global-search-input:focus{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-soft);outline:none}.global-search-scope{color:var(--text-secondary);white-space:nowrap;-webkit-user-select:none;user-select:none;flex:none;align-items:center;gap:.25rem;font-size:.75rem;display:inline-flex}.global-search-scope input{margin:0}.global-search-results{z-index:20;background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius,8px);max-height:24rem;box-shadow:var(--shadow-lg,var(--shadow-md));position:absolute;top:calc(100% + .25rem);left:0;right:0;overflow-y:auto}.global-search-state{color:var(--text-secondary);padding:.75rem;font-size:.8125rem}.global-search-hit{border:0;border-bottom:1px solid var(--border);text-align:left;cursor:pointer;width:100%;font:inherit;color:var(--text-primary);background:0 0;flex-direction:column;gap:.25rem;padding:.5rem .75rem;display:flex}.global-search-hit:hover,.global-search-hit:focus-visible{background:var(--bg-light);outline:none}.global-search-hit:last-child{border-bottom:0}.global-search-hit-meta{color:var(--text-muted);word-break:break-all;font-size:.75rem}.global-search-hit-snippet{color:var(--text-primary);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:.8125rem;display:-webkit-box;overflow:hidden}.global-search-hit-snippet mark{background:var(--warning);color:inherit;border-radius:2px;padding:0 1px}.global-search-more{background:var(--bg-light);border:0;border-top:1px solid var(--border);width:100%;color:var(--text-secondary);cursor:pointer;padding:.5rem;font-size:.75rem;display:block}.global-search-more:hover{background:var(--primary-soft);color:var(--primary-text)}.yarl__fullsize{width:100%;height:100%}.yarl__relative{position:relative}.yarl__portal{opacity:0;z-index:var(--yarl__portal_zindex,9999);transition:opacity var(--yarl__fade_animation_duration,.25s) var(--yarl__fade_animation_timing_function,ease);pointer-events:auto;position:fixed;inset:0;overflow:hidden}.yarl__portal_open{opacity:1}.yarl__container{background-color:var(--yarl__container_background_color,var(--yarl__color_backdrop,#000));-webkit-user-select:none;user-select:none;touch-action:var(--yarl__controller_touch_action,none);overscroll-behavior:var(--yarl__controller_overscroll_behavior,contain);outline:none;position:absolute;inset:0;overflow:hidden}.yarl__carousel{height:100%;width:calc(100% + (var(--yarl__carousel_slides_count) - 1)*(100% + var(--yarl__carousel_spacing_px,0)*1px + var(--yarl__carousel_spacing_percent,0)*1%));transform:translate(var(--yarl__swipe_offset,0),var(--yarl__pull_offset,0));opacity:var(--yarl__pull_opacity,1);flex:none;place-content:center;align-items:stretch;display:flex}.yarl__carousel_with_slides{-moz-column-gap:calc(var(--yarl__carousel_spacing_px,0)*1px + 100/(var(--yarl__carousel_slides_count)*100 + (var(--yarl__carousel_slides_count) - 1)*var(--yarl__carousel_spacing_percent,0))*var(--yarl__carousel_spacing_percent,0)*1%);column-gap:calc(var(--yarl__carousel_spacing_px,0)*1px + 100/(var(--yarl__carousel_slides_count)*100 + (var(--yarl__carousel_slides_count) - 1)*var(--yarl__carousel_spacing_percent,0))*var(--yarl__carousel_spacing_percent,0)*1%)}.yarl__flex_center{place-content:center;align-items:center;display:flex}.yarl__slide{padding:calc(var(--yarl__carousel_padding_px,0)*1px + 100/(var(--yarl__carousel_slides_count)*100 + (var(--yarl__carousel_slides_count) - 1)*var(--yarl__carousel_spacing_percent,0))*var(--yarl__carousel_padding_percent,0)*1%);flex:1;position:relative;overflow:hidden}[dir=rtl] .yarl__slide{--yarl__direction:-1}.yarl__slide_image{-o-object-fit:contain;object-fit:contain;touch-action:var(--yarl__controller_touch_action,none);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;max-width:100%;max-height:100%}.yarl__slide_image_cover{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.yarl__slide_image_loading{opacity:0}@media screen and (width>=800px){.yarl__slide_wrapper:not(.yarl__slide_wrapper_interactive) .yarl__slide_image{-webkit-backface-visibility:hidden;-webkit-transform-style:preserve-3d;-webkit-transform:translateZ(0)}}.yarl__slide_placeholder{line-height:0;position:absolute;top:50%;left:50%;transform:translate(-50%)translateY(-50%)}.yarl__slide_loading{color:var(--yarl__slide_icon_loading_color,var(--yarl__color_button,#fffc));animation:1s linear yarl__delayed_fadein}.yarl__slide_loading line{animation:1s linear infinite yarl__stroke_opacity}.yarl__slide_loading line:first-of-type{animation-delay:-1.875s}.yarl__slide_loading line:nth-of-type(2){animation-delay:-1.75s}.yarl__slide_loading line:nth-of-type(3){animation-delay:-1.625s}.yarl__slide_loading line:nth-of-type(4){animation-delay:-1.5s}.yarl__slide_loading line:nth-of-type(5){animation-delay:-1.375s}.yarl__slide_loading line:nth-of-type(6){animation-delay:-1.25s}.yarl__slide_loading line:nth-of-type(7){animation-delay:-1.125s}.yarl__slide_loading line:nth-of-type(8){animation-delay:-1s}.yarl__slide_error{width:var(--yarl__slide_icon_error_size,48px);height:var(--yarl__slide_icon_error_size,48px);color:var(--yarl__slide_icon_error_color,red)}@media (prefers-reduced-motion){.yarl__portal,.yarl__slide{transition:unset}.yarl__slide_loading,.yarl__slide_loading line{animation:unset}}.yarl__toolbar{padding:var(--yarl__toolbar_padding,8px);justify-content:flex-end;display:flex;position:absolute;inset:0 0 auto auto}[dir=rtl] .yarl__toolbar{inset:0 auto auto 0}.yarl__icon{width:var(--yarl__icon_size,32px);height:var(--yarl__icon_size,32px)}.yarl__button{cursor:pointer;appearance:none;background-color:var(--yarl__button_background_color,transparent);border:var(--yarl__button_border,0);margin:var(--yarl__button_margin,0);padding:var(--yarl__button_padding,8px);color:var(--yarl__color_button,#fffc);filter:var(--yarl__button_filter,drop-shadow(2px 2px 2px #000c));-webkit-tap-highlight-color:transparent;outline:none;line-height:0}.yarl__button:focus{color:var(--yarl__color_button_active,#fff)}.yarl__button:focus:not(:focus-visible){color:var(--yarl__color_button,#fffc)}.yarl__button:focus-visible{color:var(--yarl__color_button_active,#fff)}@media (hover:hover){.yarl__button:focus-visible:hover,.yarl__button:focus:hover,.yarl__button:hover{color:var(--yarl__color_button_active,#fff)}}.yarl__button:disabled{color:var(--yarl__color_button_disabled,#fff6);cursor:default}.yarl__navigation_next,.yarl__navigation_prev{padding:var(--yarl__navigation_button_padding,24px 16px);position:absolute;top:50%;transform:translateY(-50%)}.yarl__navigation_prev{left:0}[dir=rtl] .yarl__navigation_prev{left:unset;right:0;transform:translateY(-50%)rotate(180deg)}.yarl__navigation_next{right:0}[dir=rtl] .yarl__navigation_next{left:0;right:unset;transform:translateY(-50%)rotate(180deg)}.yarl__no_scroll{overscroll-behavior:none;height:100%;overflow:hidden}@keyframes yarl__delayed_fadein{0%{opacity:0}80%{opacity:0}to{opacity:1}}@keyframes yarl__stroke_opacity{0%{stroke-opacity:1}to{stroke-opacity:.125}}.yarl__counter{position:var(--yarl__counter_position,absolute);top:var(--yarl__counter_top,0);left:var(--yarl__counter_left,0);bottom:var(--yarl__counter_bottom,unset);right:var(--yarl__counter_right,unset);color:var(--yarl__counter_color,var(--yarl__color_button,#fffc));filter:var(--yarl__counter_filter,drop-shadow(2px 2px 2px #000c));margin:var(--yarl__counter_margin,var(--yarl__toolbar_padding,8px));padding:var(--yarl__counter_padding,var(--yarl__button_padding,8px));line-height:var(--yarl__counter_line_height,var(--yarl__icon_size,32px));-webkit-user-select:var(--yarl__counter_user_select,none);-moz-user-select:var(--yarl__counter_user_select,none);user-select:var(--yarl__counter_user_select,none)}[dir=rtl] .yarl__counter{left:var(--yarl__counter_rtl_left,unset);right:var(--yarl__counter_rtl_right,0)}.yarl__slide_captions_container{left:var(--yarl__slide_captions_container_left,0);right:var(--yarl__slide_captions_container_right,0);padding:var(--yarl__slide_captions_container_padding,16px);background:var(--yarl__slide_captions_container_background,#00000080);position:absolute;-webkit-transform:translateZ(0)}.yarl__slide_title{color:var(--yarl__slide_title_color,#fff);font-size:var(--yarl__slide_title_font_size,125%);font-weight:var(--yarl__slide_title_font_weight,bolder);max-width:calc(100% - var(--yarl__toolbar_width,0px));text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.yarl__slide_title_container{top:var(--yarl__slide_title_container_top,0)}.yarl__slide_description{-webkit-hyphens:auto;hyphens:auto;-webkit-line-clamp:var(--yarl__slide_description_max_lines,3);text-align:var(--yarl__slide_description_text_align,start);color:var(--yarl__slide_description_color,#fff);-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.yarl__slide_description_container{bottom:var(--yarl__slide_description_container_bottom,0)}.chats-page{box-sizing:border-box;flex-direction:column;width:100%;height:calc(100vh - 4rem);padding:2rem;display:flex}.chats-page .chats-layout{background:var(--bg-white);border:1px solid var(--border);box-shadow:var(--shadow-md,0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f);border-radius:16px;flex:1;height:calc(100vh - 12rem);margin-top:1rem;display:flex;overflow:hidden}.chats-page .chats-sidebar{border-right:1px solid var(--border);background:var(--bg-white);flex-direction:column;flex-shrink:0;width:320px;display:flex}.chats-page .sidebar-header-box{border-bottom:1px solid var(--border);flex-direction:column;gap:1rem;padding:1.25rem;display:flex}.chats-page .session-select-group{flex-direction:column;gap:.375rem;display:flex}.chats-page .session-selector{border:1px solid var(--border);border-radius:var(--radius,8px);background:var(--bg-light);width:100%;color:var(--text-primary);cursor:pointer;outline:none;padding:.625rem .75rem;font-size:.875rem;font-weight:500;transition:all .2s}.chats-page .session-selector:focus{border-color:var(--primary);background:var(--bg-white);box-shadow:0 0 0 3px #22c55e1a}.chats-page .chats-tabs{background:var(--bg-light);border:1px solid var(--border);border-radius:var(--radius,8px);gap:4px;padding:4px;display:flex}.chats-page .chats-tab{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;flex:1;padding:6px 8px;font-size:.8125rem;transition:background .15s,color .15s}.chats-page .chats-tab:hover{color:var(--text-primary)}.chats-page .chats-tab.active{background:var(--bg-card);color:var(--text-primary);box-shadow:var(--shadow-sm,0 1px 2px 0 #0000000d);font-weight:600}.chats-page .chat-search-input{background:var(--bg-light);border:1px solid var(--border);border-radius:var(--radius,8px);align-items:center;gap:.5rem;padding:.625rem .75rem;display:flex}.chats-page .chat-search-input svg{color:var(--text-muted);flex-shrink:0}.chats-page .chat-search-input input{color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;font-size:.875rem}.chats-page .chats-list{flex-direction:column;flex:1;display:flex;overflow-y:auto}.chats-page .chats-list::-webkit-scrollbar{width:6px}.chats-page .room-messages::-webkit-scrollbar{width:6px}.chats-page .chats-list::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.chats-page .room-messages::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.chats-page .chats-list::-webkit-scrollbar-track{background:0 0}.chats-page .room-messages::-webkit-scrollbar-track{background:0 0}.chats-page .chats-list-loading,.chats-page .chats-list-empty{color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:3rem 1.5rem;font-size:.875rem;display:flex}.chats-page .chat-item-card{border-bottom:1px solid var(--border);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.75rem;padding:1rem 1.25rem;transition:background .15s;display:flex}.chats-page .chat-item-card:hover{background:var(--bg-light)}.chats-page .chat-item-card.active{background:#22c55e14}.chats-page .chat-avatar{background:var(--bg-light);border:1px solid var(--border);width:44px;height:44px;color:var(--text-secondary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex;overflow:hidden}.chats-page .chat-avatar img{object-fit:cover;width:100%;height:100%;display:block}.chats-page .chat-item-card.active .chat-avatar{background:var(--bg-white);color:var(--primary-text);border-color:#22c55e4d}.chats-page .chat-item-info{flex-direction:column;flex:1;gap:.25rem;min-width:0;display:flex}.chats-page .chat-item-top{justify-content:flex-start;align-items:baseline;gap:6px;display:flex}.chats-page .chat-item-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.9375rem;font-weight:600;overflow:hidden}.chats-page .chat-item-time{color:var(--text-muted);flex-shrink:0;margin-inline-start:auto;font-size:.75rem}.chats-page .chat-item-bottom{justify-content:space-between;align-items:center;display:flex}.chats-page .chat-item-snippet{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;max-width:180px;font-size:.8125rem;overflow:hidden}.chats-page .chat-item-snippet .no-message{opacity:.6;font-style:italic}.chats-page .chat-unread-badge{box-sizing:border-box;background:var(--primary);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:.75rem;font-weight:700;line-height:1;display:inline-flex;box-shadow:0 2px 4px #22c55e4d}.chats-page .chat-kind-badge{border:1px solid var(--border);color:var(--text-secondary);white-space:nowrap;border-radius:8px;padding:0 6px;font-size:.7rem}.chats-page .chats-room{background:var(--bg-light);flex-direction:column;flex:1;min-width:0;display:flex}.chats-page .chats-room-placeholder{text-align:center;color:var(--text-muted);flex-direction:column;flex:1;justify-content:center;align-items:center;padding:3rem;display:flex}.chats-page .placeholder-icon{opacity:.3;color:var(--text-secondary);margin-bottom:1.5rem}.chats-page .chats-room-placeholder h2{color:var(--text-primary);text-transform:none;letter-spacing:-.01em;margin:0 0 .375rem;font-size:1.25rem;font-weight:600}.chats-page .chats-room-placeholder p{max-width:380px;margin:0;font-size:.9375rem}.chats-page .room-container{flex-direction:column;flex:1;height:100%;display:flex}.chats-page .room-header{background:var(--bg-white);border-bottom:1px solid var(--border);box-sizing:border-box;align-items:center;gap:.75rem;height:70px;padding:0 1.5rem;display:flex}.chats-page .room-back{width:36px;height:36px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;margin-left:-.5rem;padding:0;display:none}.chats-page .room-back:hover{background:var(--bg-light);color:var(--text-primary)}.chats-page .room-avatar{background:var(--bg-light);border:1px solid var(--border);width:40px;height:40px;color:var(--text-secondary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex;overflow:hidden}.chats-page .room-avatar img{object-fit:cover;width:100%;height:100%;display:block}.chats-page .room-contact-info{flex-direction:column;gap:.125rem;min-width:0;display:flex}.chats-page .room-contact-info h3{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:1rem;font-weight:600;overflow:hidden}.chats-page .room-contact-phone{color:var(--text-muted);font-size:.8125rem;line-height:1.2}.chats-page .room-contact-jid{color:var(--text-muted);opacity:.7;white-space:nowrap;text-overflow:ellipsis;font-family:ui-monospace,SF Mono,SFMono-Regular,Menlo,Consolas,monospace;font-size:.6875rem;overflow:hidden}.chats-page .room-messages{overflow-anchor:none;background-image:radial-gradient(var(--border) 1px, transparent 0);background-size:24px 24px;flex-direction:column;flex:1;gap:.75rem;padding:1.5rem;display:flex;position:relative;overflow-y:auto}.chats-page .scroll-to-bottom-btn{z-index:5;background:var(--bg-white);width:40px;height:40px;color:var(--text-secondary);border:1px solid var(--border);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:background .15s,color .15s,transform .1s;display:flex;position:absolute;bottom:1rem;right:1.5rem;box-shadow:0 2px 8px #0000001f}.chats-page .scroll-to-bottom-btn:hover{background:var(--bg-light);color:var(--primary-text);border-color:var(--primary)}.chats-page .scroll-to-bottom-btn:active{transform:scale(.94)}.chats-page .messages-loading{color:var(--text-muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.75rem;font-size:.9375rem;display:flex}.chats-page .messages-loading-older{color:var(--text-muted);flex:none;justify-content:center;align-items:center;gap:.5rem;padding:.5rem 0;font-size:.8125rem;display:flex}.chats-page .messages-empty{color:var(--text-muted);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.75rem;padding:2rem;font-size:.9375rem;display:flex}.chats-page .message-bubble-wrapper{width:100%;display:flex}.chats-page .message-bubble-wrapper.incoming{justify-content:flex-start}.chats-page .message-bubble-wrapper.outgoing{justify-content:flex-end}.chats-page .message-bubble{border-radius:12px;max-width:100%;padding:.625rem .875rem .375rem;font-size:.9375rem;line-height:1.4;position:relative;box-shadow:0 1px 2px #0000000d}.chats-page .message-bubble.incoming{background:var(--bg-white);color:var(--text-primary);border:1px solid var(--border);border-bottom-left-radius:2px}.chats-page .message-bubble.outgoing{color:#111b21;background:#d9fdd3;border-bottom-right-radius:2px}[data-theme=dark] .chats-page .message-bubble.outgoing{color:#e9edef;background:#005c4b}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .chats-page .message-bubble.outgoing{color:#e9edef;background:#005c4b}}.chats-page .message-text{word-break:break-word;white-space:pre-wrap}.chats-page .message-sender{word-break:break-word;margin-bottom:.15rem;font-size:.78rem;font-weight:600;line-height:1.2}.chats-page .message-meta{justify-content:flex-end;align-items:center;gap:.25rem;margin-top:.25rem;display:flex}.chats-page .message-time{color:var(--text-muted);font-size:.6875rem}.chats-page .message-bubble[style] .message-time{color:inherit;opacity:.75}.chats-page .message-status-icon{font-size:.75rem}.chats-page .message-status-icon.read{color:#337592}.chats-page .room-input-footer{background:var(--bg-white);border-top:1px solid var(--border);box-sizing:border-box;padding:1rem 1.5rem}.chats-page .input-form{align-items:center;gap:.75rem;display:flex}.chats-page .message-text-input{border:1px solid var(--border);background:var(--bg-light);min-width:64px;color:var(--text-primary);box-sizing:border-box;border-radius:24px;outline:none;flex:1;padding:.75rem 1rem;font-size:.9375rem;transition:all .2s}.chats-page .message-text-input:focus{border-color:var(--primary);background:var(--bg-white);box-shadow:0 0 0 3px #22c55e1a}.chats-page .btn-send-message{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;transition:background .2s,transform .1s;display:flex;box-shadow:0 2px 8px #22c55e4d}.chats-page .btn-send-message:hover:not(:disabled){background:var(--primary-hover);transform:scale(1.05)}.chats-page .btn-send-message:disabled{background:var(--primary);color:#fff;opacity:.55;cursor:not-allowed;box-shadow:none}.chats-page .chats-loading-container,.chats-page .chats-error-state{background:var(--bg-white);border:1px solid var(--border);text-align:center;color:var(--text-secondary);box-shadow:var(--shadow-sm);border-radius:16px;flex-direction:column;flex:1;justify-content:center;align-items:center;margin-top:1rem;padding:4rem 2rem;display:flex}.chats-page .chats-error-state h3{color:var(--text-primary);margin:1rem 0 .5rem;font-size:1.25rem}.chats-page .chats-error-state p{max-width:450px;color:var(--text-muted);margin:0;font-size:.9375rem}.chats-page .text-warn{color:var(--warning-text)}.chats-page .chats-reconnect-banner{color:var(--warning-text);background:#ea580c1a;border-radius:6px;align-items:center;gap:.5rem;margin-bottom:.75rem;padding:.5rem .75rem;font-size:.875rem;display:flex}.chats-page .chats-reconnect-banner button{margin-inline-start:auto}.chats-page .btn-input-accessory{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:.5rem;transition:all .2s;display:flex}.chats-page .btn-input-accessory:hover{background:var(--bg-light);color:var(--text-primary)}.chats-page .btn-input-accessory.active{color:var(--primary-text);background:#22c55e1a}.chats-page .attachment-preview-banner{background:var(--bg-white);border-top:1px solid var(--border);box-sizing:border-box;align-items:center;gap:1rem;padding:.75rem 1.5rem;display:flex}.chats-page .preview-thumbnail{object-fit:cover;border:1px solid var(--border);border-radius:6px;width:48px;height:48px}.chats-page .preview-file-icon{background:var(--bg-light);border:1px solid var(--border);border-radius:6px;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.5rem;display:flex}.chats-page .preview-file-info{flex-direction:column;flex:1;min-width:0;display:flex}.chats-page .preview-filename{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.875rem;font-weight:600;overflow:hidden}.chats-page .preview-filesize{color:var(--text-muted);font-size:.75rem}.chats-page .btn-remove-attachment{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:.375rem;transition:all .2s;display:flex}.chats-page .btn-remove-attachment:hover{color:var(--error-text);background:#ef44441f}.chats-page .chats-emoji-picker{background:var(--bg-white);border-top:1px solid var(--border);box-sizing:border-box;max-height:120px;padding:.75rem 1.5rem;overflow-y:auto}.chats-page .emoji-grid{flex-wrap:wrap;gap:.5rem;display:flex}.chats-page .emoji-btn{cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:.375rem;font-size:1.25rem;transition:all .15s;display:flex}.chats-page .emoji-btn:hover{background:var(--bg-light)}.chats-page .message-bubble.media-type{border-top-left-radius:12px;border-top-right-radius:12px}@media (width<=768px){.chats-page{height:auto;padding:1rem}.chats-page .chats-layout{flex-direction:column;height:calc(100vh - 7rem)}.chats-page .chats-sidebar{border-right:none;width:100%;height:100%}.chats-page .chats-room{height:100%}.chats-page .chats-layout.has-active-chat .chats-sidebar,.chats-page .chats-layout:not(.has-active-chat) .chats-room{display:none}.chats-page .room-back{display:inline-flex}.chats-page .room-header{height:60px}}@media (width>=769px) and (width<=889px){.main-content:not(.expanded) .chats-page .chats-layout{flex-direction:column}.main-content:not(.expanded) .chats-page .chats-sidebar{border-right:none;width:100%;height:100%}.main-content:not(.expanded) .chats-page .chats-layout.has-active-chat .chats-sidebar,.main-content:not(.expanded) .chats-page .chats-layout:not(.has-active-chat) .chats-room{display:none}.main-content:not(.expanded) .chats-page .room-back{display:inline-flex}}.chats-page .chat-image-media{cursor:pointer;object-fit:cover;border-radius:8px;max-width:100%;max-height:250px;margin-bottom:.5rem;display:block}.chats-page .message-media-omitted{color:var(--text-muted);cursor:pointer;background:0 0;border:none;align-items:center;gap:.3rem;margin-bottom:.25rem;padding:0;font-family:inherit;font-size:.9em;font-style:italic;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;display:flex}.chats-page .message-media-omitted:disabled{cursor:default;text-decoration:none}.chats-page .chat-location-media{border-radius:8px;max-width:min(220px,100%);margin-bottom:.25rem;display:block}.chats-page .chat-video-media{border-radius:8px;max-width:100%;max-height:250px;margin-bottom:.5rem;display:block}.chats-page .chat-audio-media{max-width:100%;margin-bottom:.5rem;display:block}.chats-page .chat-document-media{background:var(--bg-light);border:1px solid var(--border);color:var(--text-primary);word-break:break-all;border-radius:6px;align-items:center;gap:.5rem;margin-bottom:.5rem;padding:.5rem .75rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex}.chats-page .chat-document-media:hover{background:var(--border)}[data-theme=dark] .chats-page .chat-document-media{background:#202c33;border-color:#2f3b43}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .chats-page .chat-document-media{background:#202c33;border-color:#2f3b43}}.chats-page .message-bubble.media-type{padding:.5rem}.chats-page .message-bubble-container{align-items:center;gap:.5rem;max-width:70%;display:flex;position:relative}.chats-page .message-bubble-wrapper.outgoing .message-bubble-container{flex-direction:row-reverse}.chats-page .message-bubble-wrapper.incoming .message-bubble-container{flex-direction:row}.chats-page .message-actions-menu{background:var(--bg-white);border:1px solid var(--border);box-shadow:var(--shadow-sm);z-index:5;border-radius:20px;align-items:center;gap:.25rem;padding:2px 6px;display:none}.chats-page .message-bubble-container:hover .message-actions-menu{display:flex}.chats-page .action-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:4px;transition:all .15s;display:flex}.chats-page .action-btn:hover{background:var(--bg-light);color:var(--text-primary)}.chats-page .action-btn.delete-btn:hover{color:var(--error-text);background:#ef44441f}.chats-page .reaction-trigger-wrapper{position:relative}.chats-page .reaction-quick-popover{background:var(--bg-white);border:1px solid var(--border);z-index:50;white-space:nowrap;border-radius:24px;gap:.375rem;padding:.375rem .625rem;display:none;position:absolute;bottom:100%;left:50%;transform:translate(-50%)translateY(-6px);box-shadow:0 4px 12px #00000026}.chats-page .reaction-quick-popover:after{content:"";background:0 0;height:12px;position:absolute;top:100%;left:0;right:0}.chats-page .reaction-trigger-wrapper:hover .reaction-quick-popover{display:flex}.chats-page .reaction-quick-popover button{cursor:pointer;background:0 0;border:none;padding:2px;font-size:1.25rem;transition:transform .1s}.chats-page .reaction-quick-popover button:hover{transform:scale(1.3)}.chats-page .message-reactions-badge{background:var(--bg-white);border:1px solid var(--border);box-shadow:var(--shadow-sm);z-index:2;cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:12px;align-items:center;gap:2px;padding:2px 6px;font-size:.75rem;display:flex;position:absolute;bottom:-12px}.chats-page .message-bubble-wrapper.outgoing .message-reactions-badge{right:12px}.chats-page .message-bubble-wrapper.incoming .message-reactions-badge{left:12px}.chats-page .reaction-emoji-span{font-size:.8125rem}.chats-page .reactions-count-span{color:var(--text-secondary);margin-left:2px;font-weight:600}.chats-page .message-quote-box{border-left:4px solid var(--primary);color:var(--text-secondary);cursor:pointer;background:#0000000a;border-radius:4px;margin-bottom:.5rem;padding:.375rem .625rem;font-size:.8125rem}.chats-page .message-bubble.outgoing .message-quote-box{background:#0000000d;border-left-color:#008069}[data-theme=dark] .chats-page .message-quote-box,[data-theme=dark] .chats-page .message-bubble.outgoing .message-quote-box{background:#ffffff14}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .chats-page .message-quote-box{background:#ffffff14}}.chats-page .quote-body{white-space:nowrap;text-overflow:ellipsis;max-width:250px;overflow:hidden}.chats-page .message-prompt-buttons{flex-direction:column;gap:.375rem;width:100%;margin-top:.5rem;display:flex}.chats-page .message-prompt-button{border:1px solid var(--border);background:var(--bg-white);width:100%;color:var(--primary);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:.375rem;padding:.5rem .75rem;font-size:.875rem;font-weight:500;transition:background .15s,border-color .15s,opacity .15s;display:flex}.chats-page .message-prompt-button:hover:not(:disabled){border-color:var(--primary);background:#0000000a}.chats-page .message-prompt-button:disabled{cursor:default;opacity:.55}.chats-page .message-prompt-button.selected{opacity:1;border-color:var(--primary);background:#00806914;font-weight:600}.chats-page .message-prompt-button.answered:not(.selected){opacity:.4}[data-theme=dark] .chats-page .message-prompt-button{background:#ffffff0f}[data-theme=dark] .chats-page .message-prompt-button:hover:not(:disabled){background:#ffffff1a}[data-theme=dark] .chats-page .message-prompt-button.selected{background:#00a8842e}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .chats-page .message-prompt-button{background:#ffffff0f}:root:not([data-theme=light]) .chats-page .message-prompt-button:hover:not(:disabled){background:#ffffff1a}:root:not([data-theme=light]) .chats-page .message-prompt-button.selected{background:#00a8842e}}.chats-page .replying-preview-banner{background:var(--bg-white);border-top:1px solid var(--border);box-sizing:border-box;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1.5rem;display:flex}.chats-page .replying-preview-content{border-left:4px solid var(--primary);flex-direction:column;flex:1;min-width:0;padding-left:.75rem;display:flex}.chats-page .replying-to-title{color:var(--primary-text);white-space:nowrap;text-overflow:ellipsis;font-size:.8125rem;font-weight:700;overflow:hidden}.chats-page .replying-to-body{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:.875rem;overflow:hidden}.chats-page .btn-close-reply{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:.375rem;transition:all .2s;display:flex}.chats-page .btn-close-reply:hover{background:var(--bg-light);color:var(--text-primary)}.chats-page .message-bubble.revoked-type{opacity:.6;font-style:italic}[data-theme=dark] .chats-page .message-actions-menu,[data-theme=dark] .chats-page .reaction-quick-popover,[data-theme=dark] .chats-page .message-reactions-badge{background:#202c33;border-color:#2f3b43}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .chats-page .message-actions-menu,:root:not([data-theme=light]) .chats-page .reaction-quick-popover,:root:not([data-theme=light]) .chats-page .message-reactions-badge{background:#202c33;border-color:#2f3b43}}.chats-page .message-text code,.chats-page .quote-body code{background:var(--bg-light);border-radius:4px;padding:.1em .35em;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.9em}.chats-page .message-text pre{background:var(--bg-light);border-radius:6px;margin:.25em 0;padding:.5em .75em;overflow-x:auto}.chats-page .message-text pre code{background:0 0;padding:0}.chats-page .chat-image-media{cursor:zoom-in}.chats-page .channel-room{flex-direction:column;flex:1;height:100%;display:flex}.chats-page .chats-room-header{background:var(--bg-white);border-bottom:1px solid var(--border);box-sizing:border-box;height:70px;color:var(--text-secondary);align-items:center;gap:.75rem;padding:0 1.5rem;display:flex}.chats-page .chats-room-header>svg{flex-shrink:0}.chats-page .chats-room-header h2{color:var(--text-primary);text-transform:none;letter-spacing:normal;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:1rem;font-weight:600;overflow:hidden}.chats-page .messages-list{flex-direction:column;flex:1;align-items:flex-start;gap:.75rem;padding:1.5rem;display:flex;overflow-y:auto}.chats-page .messages-list .message-bubble{max-width:480px}.chats-page .channel-media{object-fit:cover;border-radius:8px;max-width:100%;max-height:320px;margin-bottom:.5rem;display:block}.chats-page .status-media-placeholder{color:var(--text-muted);margin-bottom:.5rem;font-size:.85rem;display:block}.chats-page .status-compose-trigger{justify-content:center;align-items:center;gap:.375rem;width:100%;padding:.5rem .75rem;font-size:.8125rem;display:flex}.chats-page .status-compose-modal .compose-type-toggle{border:1px solid var(--border);border-radius:var(--radius,8px);margin-bottom:1rem;display:flex;overflow:hidden}.chats-page .status-compose-modal .compose-type-toggle button{background:var(--bg-white);cursor:pointer;color:var(--text-secondary);border:none;flex:1;padding:.625rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s}.chats-page .status-compose-modal .compose-type-toggle button:first-child{border-right:1px solid var(--border)}.chats-page .status-compose-modal .compose-type-toggle button.active{background:var(--primary);color:#fff}.chats-page .status-compose-modal .compose-field{flex-direction:column;gap:.375rem;margin-bottom:1rem;display:flex}.chats-page .status-compose-modal .compose-field label{color:var(--text-secondary);font-size:.8125rem;font-weight:600}.chats-page .status-compose-modal textarea,.chats-page .status-compose-modal input[type=text],.chats-page .status-compose-modal input[type=url],.chats-page .status-compose-modal select{border:1px solid var(--border);border-radius:var(--radius,8px);background:var(--bg-light);width:100%;color:var(--text-primary);box-sizing:border-box;outline:none;padding:.625rem .75rem;font-family:inherit;font-size:.875rem}.chats-page .status-compose-modal textarea:focus,.chats-page .status-compose-modal input:focus,.chats-page .status-compose-modal select:focus{border-color:var(--primary);background:var(--bg-white);box-shadow:0 0 0 3px #22c55e1a}.chats-page .status-compose-modal textarea{resize:vertical;min-height:100px}.chats-page .status-compose-modal .compose-row{gap:1rem;display:flex}.chats-page .status-compose-modal .compose-row .compose-field{flex:1}.chats-page .status-compose-modal input[type=color]{border:1px solid var(--border);border-radius:var(--radius,8px);background:var(--bg-light);cursor:pointer;box-sizing:border-box;width:100%;height:38px;padding:2px}.chats-page .status-compose-modal input[type=file]{width:100%;color:var(--text-secondary);font-size:.8125rem}.chats-page .status-compose-modal .compose-image-or{color:var(--text-muted);text-align:center;margin:.5rem 0;font-size:.75rem}.chats-page .status-compose-modal .compose-recipients{border:1px solid var(--border);border-radius:var(--radius,8px);background:var(--bg-light);max-height:180px;margin-top:.5rem;overflow-y:auto}.chats-page .status-compose-modal .compose-recipient-row{color:var(--text-primary);cursor:pointer;border-bottom:1px solid var(--border);align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.875rem;display:flex}.chats-page .status-compose-modal .compose-recipient-row:last-child{border-bottom:none}.chats-page .status-compose-modal .compose-recipient-row:hover{background:var(--bg-white)}.chats-page .status-compose-modal .compose-recipients-empty{text-align:center;color:var(--text-muted);justify-content:center;align-items:center;padding:1rem;font-size:.8125rem;display:flex}.chats-page .status-compose-modal .input-hint{color:var(--text-muted);margin-top:.375rem;font-size:.75rem;display:block}.filter-builder{flex-direction:column;gap:.5rem;margin-top:.25rem;display:flex}.filter-builder-head{flex-direction:column;gap:.125rem;display:flex}.filter-builder-title{color:var(--text-secondary,#64748b);font-size:.875rem;font-weight:600;display:block}.filter-builder-hint{color:var(--text-secondary);font-size:.75rem}.filter-row{background:var(--bg-light);border:1px solid var(--border);border-radius:8px;flex-wrap:nowrap;align-items:flex-start;gap:.5rem;padding:.5rem;display:flex}.filter-row select{border:1px solid var(--border);background:var(--bg-white);height:2.375rem;color:var(--text-primary);box-sizing:border-box;border-radius:6px;padding:0 .5rem;font-size:.8125rem}.filter-row>select{width:100%}.filter-field{flex:0 0 8.5rem}.filter-operator{flex:0 0 7rem}.filter-value{flex:auto;min-width:0}.filter-remove{border:1px solid var(--border);width:2.25rem;height:2.25rem;color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:6px;flex:none;justify-content:center;align-items:center;transition:all .2s;display:inline-flex}.filter-remove svg{width:16px;height:16px;stroke:var(--text-secondary);flex-shrink:0}.filter-remove:hover{border-color:var(--error);color:var(--error-text)}.filter-remove:hover svg{stroke:var(--error)}.filter-add{border:1px dashed var(--border);color:var(--primary-text);cursor:pointer;background:0 0;border-radius:6px;align-self:flex-start;align-items:center;gap:.375rem;padding:.375rem .625rem;font-size:.8125rem;font-weight:600;display:inline-flex}.filter-add:hover{border-color:var(--primary)}.filter-text{flex-direction:column;align-items:flex-start;gap:.375rem;width:100%;display:flex}.filter-case input{width:auto;margin:0;padding:0}.filter-text input[type=text]{border:1px solid var(--border);background:var(--bg-white);width:100%;height:2.375rem;color:var(--text-primary);box-sizing:border-box;border-radius:6px;padding:0 .625rem;font-size:.8125rem}.filter-case{color:var(--text-secondary);cursor:pointer;align-items:center;gap:.375rem;font-size:.75rem;display:inline-flex}.filter-enum{flex-wrap:wrap;gap:.375rem;display:flex}.enum-tag{border:1px solid var(--border);background:var(--bg-white);color:var(--text-secondary);cursor:pointer;border-radius:6px;padding:.3125rem .5rem;font-size:.75rem;transition:all .2s}.enum-tag:hover{border-color:var(--primary);color:var(--primary-text)}.enum-tag.selected{background:var(--primary);border-color:var(--primary);color:#fff}.chips-input{position:relative}.chips-row{border:1px solid var(--border);background:var(--bg-white);border-radius:6px;flex-wrap:wrap;align-items:center;gap:.375rem;min-height:2.25rem;padding:.25rem;display:flex}.chip{color:var(--primary-text);background:#25d36626;border:1px solid #25d36640;border-radius:6px;align-items:center;gap:.25rem;max-width:100%;padding:.125rem .375rem;font-size:.75rem;font-weight:600;display:inline-flex}.chip-remove{color:inherit;cursor:pointer;background:0 0;border:none;align-items:center;padding:0;display:inline-flex}.chips-row .chips-text{background:var(--bg-light);width:auto;min-width:6rem;height:26px;color:var(--text-primary);border:none;border:1px solid var(--border);border-radius:6px;outline:none;flex:6rem;padding:2px 8px;font-size:.75rem}.filter-bool{width:auto}.chips-suggestions{z-index:20;background:var(--bg-white);border:1px solid var(--border);border-radius:8px;max-height:14rem;position:absolute;top:calc(100% + 2px);left:0;right:0;overflow-y:auto;box-shadow:0 6px 20px #0000002e}.chips-suggestion{cursor:pointer;text-align:left;background:0 0;border:none;flex-direction:column;align-items:flex-start;width:100%;padding:.5rem .625rem;display:flex}.chips-suggestion:hover{background:var(--bg-light)}.chips-suggestion-name{color:var(--text-primary);font-size:.8125rem}.chips-suggestion-id{color:var(--text-secondary);font-family:JetBrains Mono,monospace;font-size:.6875rem}.chips-suggestion-add{color:var(--primary-text);border-top:1px solid var(--border);font-size:.8125rem;font-weight:600}@media (width<=640px){.filter-row{grid-template-columns:1fr 1fr auto;align-items:center;gap:.5rem;display:grid}.filter-field{flex:none;grid-column:1;width:100%;min-width:0}.filter-operator{flex:none;grid-column:2;width:100%;min-width:0}.filter-remove{flex:none;grid-column:3}.filter-value{flex:none;grid-column:1/-1;width:100%;min-width:0}}.webhooks-page{box-sizing:border-box;width:100%;padding:2rem;overflow-x:hidden}.webhooks-page .modal:not(.modal-sm){max-width:640px}.webhooks-page .modal-body>input,.webhooks-page .modal-body>select,.webhooks-page .modal-body>.event-tags{margin-bottom:.75rem}.webhooks-page .modal-body>.event-tags{flex-wrap:wrap;gap:.5rem;display:flex}.webhooks-page .page-header{margin-bottom:2rem}.webhooks-page .webhooks-content{grid-template-columns:1fr 280px;gap:1.5rem;display:grid}.webhooks-page .webhooks-list-container{width:100%;min-width:0}.webhooks-page .webhooks-card-list{flex-direction:column;gap:1rem;display:flex}.webhooks-page .webhook-card{background:var(--bg-white);box-shadow:var(--shadow-sm);border:1px solid var(--border);border-radius:12px;transition:box-shadow .2s;overflow:hidden}.webhooks-page .webhook-card:hover{box-shadow:var(--shadow-md)}.webhooks-page .webhook-card-header{border-bottom:1px solid var(--border);background:var(--bg-light);justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem;display:flex}.webhooks-page .webhook-url-row{flex:1;align-items:center;gap:.625rem;min-width:0;display:flex}.webhooks-page .webhook-url-icon{color:var(--primary-text);flex-shrink:0}.webhooks-page .webhook-url{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;background:0 0;min-width:0;font-family:JetBrains Mono,monospace;font-size:.8125rem;font-weight:500;overflow:hidden}.webhooks-page .webhook-card-actions{flex-shrink:0;gap:.375rem;display:flex}.webhooks-page .webhook-card-body{padding:1rem 1.25rem;overflow:hidden}.webhooks-page .webhook-meta{gap:2rem;margin-bottom:.875rem;display:flex}.webhooks-page .webhook-meta-item{flex-direction:column;gap:.25rem;display:flex}.webhooks-page .webhook-meta-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);font-size:.6875rem;font-weight:700}.webhooks-page .webhook-meta-value{color:var(--text-primary);font-size:.875rem;font-weight:500}.webhooks-page .webhook-events{flex-direction:column;gap:.375rem;display:flex}.webhooks-page .empty-table-state{text-align:center;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;padding:4rem 2rem;display:flex}.webhooks-page .empty-table-state svg{opacity:.4;color:var(--text-muted);margin-bottom:1rem}.webhooks-page .empty-table-state h3{color:var(--text-secondary);margin:0 0 .5rem;font-size:1.125rem;font-weight:600}.webhooks-page .empty-table-state p{max-width:300px;margin:0;font-size:.875rem}.webhooks-page .events-cell{flex-wrap:wrap;gap:.375rem;display:flex}.webhooks-page .event-tag{color:var(--primary-text);white-space:nowrap;cursor:default;letter-spacing:-.01em;background:#25d36626;border:1px solid #25d36640;border-radius:6px;padding:.25rem .625rem;font-family:JetBrains Mono,monospace;font-size:.75rem;font-weight:600}.webhooks-page .modal-body .event-tag{background:var(--bg-light);color:var(--text-secondary);border:1px solid var(--border);cursor:pointer;border-radius:6px;align-items:center;gap:.375rem;padding:.5rem .75rem;font-size:.8125rem;transition:all .2s;display:inline-flex}.webhooks-page .modal-body .event-tag:hover{border-color:var(--primary);color:var(--primary-text)}.webhooks-page .modal-body .event-tag.selected{background:var(--primary);color:#fff;border-color:var(--primary)}.webhooks-page .modal-body .event-tag .tag-check-icon{flex-shrink:0;display:inline-block}[data-theme=dark] .webhooks-page .modal-body .event-tag,:root:not([data-theme=light]) .webhooks-page .modal-body .event-tag{background:var(--bg-light);color:var(--text-secondary);border-color:var(--border)}[data-theme=dark] .webhooks-page .modal-body .event-tag:hover,:root:not([data-theme=light]) .webhooks-page .modal-body .event-tag:hover{border-color:var(--primary);color:var(--primary-text)}[data-theme=dark] .webhooks-page .modal-body .event-tag.selected,:root:not([data-theme=light]) .webhooks-page .modal-body .event-tag.selected{background:var(--primary);color:#fff;border-color:var(--primary)}.webhooks-page .filter-badge{white-space:nowrap;background:var(--bg-light);color:var(--text-secondary);border:1px solid var(--border);border-radius:6px;align-items:center;gap:.25rem;padding:.25rem .5rem;font-size:.7rem;font-weight:600;display:inline-flex}.webhooks-page .filter-badge-interactive{cursor:default;outline:none;position:relative}.webhooks-page .filter-badge-interactive:hover,.webhooks-page .filter-badge-interactive:focus-visible{border-color:var(--primary);color:var(--text-primary)}.webhooks-page .filter-popover{z-index:100;background:var(--bg-white);border:1px solid var(--border);white-space:normal;cursor:default;border-radius:8px;flex-direction:column;gap:.25rem;min-width:200px;max-width:340px;padding:.5rem .625rem;font-weight:500;display:flex;position:fixed;box-shadow:0 6px 20px #00000029}.webhooks-page .filter-popover-title{text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);margin-bottom:.125rem;font-size:.65rem;font-weight:700}.webhooks-page .filter-popover-row{color:var(--text-primary);word-break:break-word;font-size:.78rem}.webhooks-page .filter-popover-row+.filter-popover-row{border-top:1px solid var(--border);padding-top:.25rem}.webhooks-page .status-badge{white-space:nowrap;border-radius:9999px;align-items:center;gap:.375rem;width:fit-content;padding:.25rem .75rem;font-size:.75rem;font-weight:600;display:inline-flex}.webhooks-page .status-badge:before{content:"";background:currentColor;border-radius:50%;flex-shrink:0;width:6px;height:6px}.webhooks-page .status-badge.active{color:var(--primary-text);background:#25d36626}.webhooks-page .status-badge.inactive{background:var(--bg-light);color:var(--text-muted)}.webhooks-page .icon-btn{border:1px solid var(--border);cursor:pointer;color:var(--text-secondary);background:0 0;border-radius:6px;flex-shrink:0;padding:.5rem;transition:all .2s}.webhooks-page .icon-btn:hover{background:var(--bg-light);color:var(--text-primary)}.webhooks-page .icon-btn.danger:hover{color:var(--error-text);background:#ef44441f;border-color:#ef44444d}.webhooks-page .events-reference{background:var(--bg-white);box-shadow:var(--shadow-sm);border:1px solid var(--border);border-radius:12px;height:fit-content;padding:1.5rem}.webhooks-page .events-reference h3{color:var(--text-primary);text-transform:none;letter-spacing:normal;margin:0 0 1rem;font-size:1rem;font-weight:700}.webhooks-page .events-list{flex-direction:column;gap:.75rem;display:flex}.webhooks-page .event-item{flex-direction:column;gap:.25rem;display:flex}.webhooks-page .event-item code{color:var(--primary-text);background:#25d3661a;border-radius:4px;width:fit-content;padding:.25rem .5rem;font-size:.8125rem}.webhooks-page .event-item span{color:var(--text-secondary);font-size:.8125rem;line-height:1.4}[data-theme=dark] .webhooks-page .event-tag{color:#4ade80;background:#25d36633;border-color:#25d36659}[data-theme=dark] .webhooks-page .status-badge.active{color:#4ade80;background:#25d36633}[data-theme=dark] .webhooks-page .webhook-url{color:#e2e8f0}[data-theme=dark] .webhooks-page .webhook-meta-label{color:#94a3b8}[data-theme=dark] .webhooks-page .webhook-meta-value{color:#e2e8f0}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .webhooks-page .event-tag{color:#4ade80;background:#25d36633;border-color:#25d36659}:root:not([data-theme=light]) .webhooks-page .status-badge.active{color:#4ade80;background:#25d36633}:root:not([data-theme=light]) .webhooks-page .webhook-url{color:#e2e8f0}:root:not([data-theme=light]) .webhooks-page .webhook-meta-label{color:#94a3b8}:root:not([data-theme=light]) .webhooks-page .webhook-meta-value{color:#e2e8f0}}@media (width<=1024px){.webhooks-page .webhooks-content{grid-template-columns:1fr}.webhooks-page .events-reference{display:none}}@media (width<=768px){.webhooks-page{padding:1rem}.webhooks-page .webhooks-content{grid-template-columns:1fr}.webhooks-page .webhook-card{overflow:hidden}.webhooks-page .webhook-card-header{flex-direction:column;align-items:flex-start;gap:.75rem;padding:.875rem 1rem}.webhooks-page .webhook-url-row{width:100%;min-width:0}.webhooks-page .webhook-url{font-size:.75rem}.webhooks-page .webhook-card-actions{justify-content:flex-end;width:100%}.webhooks-page .webhook-card-body{padding:.875rem 1rem}.webhooks-page .webhook-meta{flex-direction:column;gap:.75rem}.webhooks-page .webhook-meta-value{word-break:break-all;font-size:.8125rem}.webhooks-page .events-cell{flex-wrap:wrap;gap:.375rem}.webhooks-page .event-tag{padding:.2rem .5rem;font-size:.6875rem}}.webhooks-page .modal.modal-sm{max-width:400px}.webhooks-page .icon-btn:disabled{opacity:.5;cursor:not-allowed}.webhooks-page .animate-spin{animation:1s linear infinite spin}.webhooks-page .toggle-group{background:var(--bg-light);border-radius:var(--radius);align-items:center;gap:1rem;margin-top:1.5rem;padding:1rem 1.25rem;display:flex}.webhooks-page .toggle-label{color:var(--text-primary);font-weight:500}.webhooks-page .toggle-switch{width:48px;height:26px;display:inline-block;position:relative}.webhooks-page .toggle-switch input{opacity:0;width:0;height:0}.webhooks-page .toggle-slider{cursor:pointer;background-color:var(--border);border-radius:26px;transition:all .3s;position:absolute;inset:0}.webhooks-page .toggle-slider:before{content:"";background-color:#fff;border-radius:50%;width:20px;height:20px;transition:all .3s;position:absolute;bottom:3px;left:3px;box-shadow:0 2px 4px #00000026}.webhooks-page .toggle-switch input:checked+.toggle-slider{background-color:var(--primary)}.webhooks-page .toggle-switch input:checked+.toggle-slider:before{transform:translate(22px)}.webhooks-page .toggle-status{font-size:.875rem;font-weight:500}.webhooks-page .toggle-status.active{color:var(--primary-text)}.webhooks-page .toggle-status.inactive{color:var(--text-muted)}.automation-page{box-sizing:border-box;width:100%;padding:2rem;overflow-x:hidden}.automation-page .modal:not(.modal-sm){max-width:680px}.automation-page .automation-tabs{box-sizing:border-box;background:var(--bg-light);border:1px solid var(--border);border-radius:12px;gap:.5rem;width:100%;margin-bottom:1.75rem;padding:.375rem;display:flex}.automation-page .automation-tab-btn{color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border:1px solid #0000;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:.625rem;min-height:44px;padding:.75rem 1.25rem;font-size:.9375rem;font-weight:600;transition:all .2s;display:inline-flex}.automation-page .automation-tab-btn:hover{color:var(--text-primary);background:#ffffff0a}.automation-page .automation-tab-btn.active{background:var(--bg-white);color:var(--text-primary);border-color:var(--border);box-shadow:var(--shadow-sm)}.automation-page .automation-tab-btn svg{color:var(--text-muted);transition:color .2s}.automation-page .automation-tab-btn:hover svg{color:var(--text-primary)}.automation-page .automation-tab-btn.active svg{color:var(--primary)}.automation-page .automation-tab-badge{background:var(--bg-light);border:1px solid var(--border);color:var(--text-muted);text-align:center;border-radius:999px;min-width:22px;padding:.125rem .5rem;font-size:.75rem;font-weight:700;transition:all .2s}.automation-page .automation-tab-btn.active .automation-tab-badge{color:#16a34a;background:#25d36626;border-color:#25d3664d}@media (width<=640px){.automation-page .automation-tabs{flex-direction:column;padding:.375rem}.automation-page .automation-tab-btn{width:100%}}.automation-page .automation-stats{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.25rem;margin-bottom:1.75rem;display:grid}.automation-page .automation-stat-card{background:var(--bg-white);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:12px;align-items:center;gap:1rem;padding:1.25rem 1.5rem;transition:transform .2s,box-shadow .2s;display:flex}.automation-page .automation-stat-card:hover{box-shadow:var(--shadow-md)}.automation-page .automation-stat-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.automation-page .automation-stat-icon.total{color:#3b82f6;background:#3b82f61f}.automation-page .automation-stat-icon.active{color:#22c55e;background:#22c55e1f}.automation-page .automation-stat-icon.paused,.automation-page .automation-stat-icon.pending{color:#eab308;background:#eab3081f}.automation-page .automation-stat-icon.sent{color:#22c55e;background:#22c55e1f}.automation-page .automation-stat-icon.failed{color:#ef4444;background:#ef44441f}.automation-page .automation-stat-info{flex-direction:column;display:flex}.automation-page .automation-stat-value{color:var(--text-primary);font-size:1.5rem;font-weight:700;line-height:1.2}.automation-page .automation-stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-top:.25rem;font-size:.8125rem;font-weight:600}.automation-page .automation-toolbar{box-sizing:border-box;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;width:100%;margin-bottom:1.5rem;display:flex}.automation-page .automation-search-box{background:var(--bg-white);border:1px solid var(--border);box-sizing:border-box;min-width:180px;max-width:380px;height:40px;min-height:40px;max-height:40px;color:var(--text-muted);border-radius:8px;flex:240px;align-items:center;gap:.5rem;padding:0 .875rem;display:flex}.automation-page .automation-search-box svg{color:var(--text-muted);flex-shrink:0}.automation-page .automation-search-box input{color:var(--text-primary);box-sizing:border-box;background:0 0;border:none;outline:none;width:100%;height:100%;margin:0;padding:0;font-size:.875rem}.automation-page .automation-toolbar-controls{flex-wrap:wrap;flex:0 auto;align-items:center;gap:.5rem;max-width:100%;margin-left:auto;display:flex}.automation-page .automation-status-select{border:1px solid var(--border);background:var(--bg-white);height:40px;min-height:40px;color:var(--text-primary);cursor:pointer;box-sizing:border-box;border-radius:8px;outline:none;flex-shrink:0;width:auto;min-width:120px;max-width:150px;padding:0 .75rem;font-size:.875rem;font-weight:500}.automation-page .automation-status-select:focus{border-color:var(--primary)}.automation-page .automation-session-picker{background:var(--bg-white);border:1px solid var(--border);box-sizing:border-box;border-radius:8px;flex-shrink:1;align-items:center;gap:.5rem;width:auto;min-width:140px;max-width:220px;height:40px;min-height:40px;margin:0;padding:0 .75rem;display:flex;overflow:hidden}.automation-page .automation-toolbar-controls .automation-session-picker{margin:0}.automation-page .automation-session-picker svg{flex-shrink:0}.automation-page .automation-session-picker select{color:var(--text-primary);box-sizing:border-box;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:none;outline:none;width:100%;min-width:0;height:100%;margin:0;padding:0;font-size:.875rem;font-weight:500;overflow:hidden}.automation-page .automation-session-picker select option{background:var(--bg-white);color:var(--text-primary)}@media (width<=768px){.automation-page .automation-toolbar{flex-direction:column;align-items:stretch;gap:.75rem}.automation-page .automation-search-box{flex:none;width:100%;max-width:100%;height:40px;min-height:40px;max-height:40px}.automation-page .automation-toolbar-controls{flex-flow:row;align-items:center;gap:.5rem;width:100%;margin-left:0;display:flex}.automation-page .automation-status-select,.automation-page .automation-toolbar-controls .automation-session-picker{flex:1;width:50%;min-width:0;max-width:none}}.automation-page .automation-list{flex-direction:column;gap:1.25rem;display:flex}.automation-page .automation-card{background:var(--bg-white);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:12px;transition:box-shadow .2s,border-color .2s;overflow:hidden}.automation-page .automation-card:hover{box-shadow:var(--shadow-md)}.automation-page .automation-card.disabled{opacity:.75}.automation-page .automation-card-header{border-bottom:1px solid var(--border);background:var(--bg-light);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem;display:flex}.automation-page .automation-card-title-group{flex:1;align-items:center;gap:.75rem;min-width:0;display:flex}.automation-page .automation-card-title{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:1rem;font-weight:600;overflow:hidden}.automation-page .automation-badge{text-transform:uppercase;letter-spacing:.03em;border-radius:6px;align-items:center;gap:.375rem;padding:.25rem .625rem;font-size:.75rem;font-weight:600;display:inline-flex}.automation-page .automation-badge.active{color:#16a34a;background:#22c55e1f}.automation-page .automation-badge.paused{color:var(--text-muted);background:#64748b1f}.automation-page .automation-badge.pending{color:#ca8a04;background:#eab3081f}.automation-page .automation-badge.sent{color:#16a34a;background:#22c55e1f}.automation-page .automation-badge.failed{color:#dc2626;background:#ef44441f}.automation-page .automation-badge.cancelled{color:var(--text-muted);background:#64748b1f}.automation-page .automation-badge.recurrence{color:#6366f1;background:#6366f11f}.automation-page .automation-card-actions{align-items:center;gap:.5rem;display:flex}.automation-page .automation-card-actions .btn-icon,.automation-page .automation-card-actions .btn-icon{box-sizing:border-box;cursor:pointer;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;min-width:32px;height:32px;min-height:32px;padding:0;transition:all .2s;display:inline-flex}.automation-page .automation-card-actions .btn-icon svg,.automation-page .automation-card-actions .btn-icon svg{width:15px;height:15px;display:block}.automation-page .automation-card-actions .btn-secondary,.automation-page .automation-card-actions .btn-secondary{background:var(--bg-white);border:1px solid var(--border);color:var(--text-primary);padding:0}.automation-page .automation-card-actions .btn-secondary svg,.automation-page .automation-card-actions .btn-secondary svg{stroke:var(--text-primary);color:var(--text-primary)}.automation-page .automation-card-actions .btn-secondary:hover:not(:disabled),.automation-page .automation-card-actions .btn-secondary:hover:not(:disabled){background:var(--bg-light);border-color:var(--primary);color:var(--primary)}.automation-page .automation-card-actions .btn-secondary:hover:not(:disabled) svg,.automation-page .automation-card-actions .btn-secondary:hover:not(:disabled) svg{stroke:var(--primary);color:var(--primary)}.automation-page .automation-card-actions .btn-danger,.automation-page .automation-card-actions .btn-danger{background:var(--error,#ef4444);color:#fff;border:1px solid #0000;padding:0}.automation-page .automation-card-actions .btn-danger svg,.automation-page .automation-card-actions .btn-danger svg{stroke:#fff;color:#fff}.automation-page .automation-card-actions .btn-danger:hover:not(:disabled),.automation-page .automation-card-actions .btn-danger:hover:not(:disabled){color:#fff;background:#dc2626;border-color:#0000}.automation-page .automation-card-actions .btn-danger:hover:not(:disabled) svg,.automation-page .automation-card-actions .btn-danger:hover:not(:disabled) svg{stroke:#fff;color:#fff}.automation-page .automation-card-actions .btn-icon:disabled,.automation-page .automation-card-actions .btn-icon:disabled{opacity:.5;cursor:not-allowed}.automation-page .automation-toggle-switch{flex-shrink:0;width:42px;height:22px;display:inline-block;position:relative}.automation-page .automation-toggle-switch input{opacity:0;width:0;height:0}.automation-page .automation-toggle-slider{cursor:pointer;background-color:var(--border);border-radius:22px;transition:all .2s;position:absolute;inset:0}.automation-page .automation-toggle-slider:before{content:"";background-color:#fff;border-radius:50%;width:16px;height:16px;transition:all .2s;position:absolute;bottom:3px;left:3px}.automation-page .automation-toggle-switch input:checked+.automation-toggle-slider{background-color:#22c55e}.automation-page .automation-toggle-switch input:checked+.automation-toggle-slider:before{transform:translate(20px)}.automation-page .automation-card-body{flex-direction:column;gap:1rem;padding:1.25rem;display:flex}.automation-page .automation-trigger-row{align-items:flex-start;gap:.75rem;font-size:.875rem;display:flex}.automation-page .automation-section-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);min-width:100px;padding-top:.25rem;font-size:.75rem;font-weight:600}.automation-page .automation-conditions-list{flex-wrap:wrap;flex:1;align-items:center;gap:.5rem;display:flex}.automation-page .automation-condition-chip{background:var(--bg-light);border:1px solid var(--border);color:var(--text-primary);border-radius:6px;align-items:center;gap:.375rem;padding:.25rem .625rem;font-size:.8125rem;display:inline-flex}.automation-page .automation-all-incoming{color:#3b82f6;background:#3b82f614;border:1px solid #3b82f633;border-radius:6px;align-items:center;gap:.375rem;padding:.25rem .625rem;font-size:.8125rem;font-weight:500;display:inline-flex}.automation-page .automation-reply-row{align-items:flex-start;gap:.75rem;display:flex}.automation-page .automation-reply-bubble{background:var(--bg-light);border:1px solid var(--border);color:var(--text-primary);white-space:pre-wrap;word-break:break-word;border-left:3px solid #22c55e;border-radius:0 8px 8px 0;flex:1;max-height:140px;padding:.875rem 1rem;font-size:.875rem;line-height:1.5;overflow-y:auto}.automation-page .automation-card-footer{border-top:1px solid var(--border);background:var(--bg-white);color:var(--text-muted);justify-content:space-between;align-items:center;padding:.75rem 1.25rem;font-size:.8125rem;display:flex}.automation-page .automation-cooldown-badge{color:var(--text-secondary);align-items:center;gap:.375rem;display:inline-flex}.automation-page .automation-recipient-pill{color:var(--text-primary);align-items:center;gap:.5rem;font-size:.9375rem;font-weight:600;display:inline-flex}.automation-page .automation-scheduled-meta{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:1.25rem;font-size:.8125rem;display:flex}.automation-page .automation-scheduled-meta-item{align-items:center;gap:.375rem;display:inline-flex}.automation-page .automation-scheduled-error{color:#dc2626;background:#ef444414;border:1px solid #ef444440;border-radius:8px;align-items:flex-start;gap:.5rem;padding:.625rem .875rem;font-size:.8125rem;line-height:1.4;display:flex}.automation-page .automation-scheduled-error svg{flex-shrink:0;margin-top:2px}.automation-page .automation-empty{text-align:center;background:var(--bg-white);border:1px dashed var(--border);color:var(--text-muted);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:4rem 2rem;display:flex}.automation-page .automation-empty svg{color:var(--text-muted);opacity:.7}.automation-page .automation-empty-icon{color:var(--text-muted);justify-content:center;align-items:center;display:flex}.automation-page .automation-empty h3{color:var(--text-primary);margin:0;font-size:1.125rem}.automation-page .automation-empty p{max-width:420px;margin:0;font-size:.875rem;line-height:1.5}.automation-page .automation-form{flex-direction:column;gap:1.25rem;display:flex}.automation-page .automation-form-group{flex-direction:column;gap:.375rem;display:flex}.automation-page .automation-form-group label{color:var(--text-primary);font-size:.875rem;font-weight:600}.automation-page .automation-form-group small{color:var(--text-muted);font-size:.8125rem;line-height:1.4}.automation-page .automation-form-group>input:not([type=checkbox]),.automation-page .automation-form-group>textarea,.automation-page .automation-form-group>select{background:var(--bg-light);border:1px solid var(--border);width:100%;color:var(--text-primary);box-sizing:border-box;border-radius:8px;outline:none;padding:.625rem .875rem;font-size:.875rem}.automation-page .automation-form-group>input:focus,.automation-page .automation-form-group>textarea:focus,.automation-page .automation-form-group>select:focus{border-color:#22c55e}.automation-page .automation-form-group input[type=checkbox]{cursor:pointer;width:auto;margin:0}.automation-page .filter-case input[type=checkbox]{width:auto;margin:0;padding:0}.automation-page .automation-form-group textarea{resize:vertical;min-height:100px}.automation-page .automation-form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}@media (width<=768px){.automation-page{padding:1rem}.automation-page .automation-toolbar{flex-direction:column;align-items:stretch;gap:.75rem}.automation-page .automation-session-picker{width:100%;max-width:none;margin-left:0}.automation-page .automation-search-box{flex:none;width:100%;max-width:none;height:40px;min-height:40px;max-height:40px;margin-left:0}.automation-page .automation-toolbar-controls{flex-direction:column;align-items:stretch;gap:.75rem;width:100%}.automation-page .automation-toolbar-controls .filter-group{box-sizing:border-box;width:100%;display:flex}.automation-page .automation-form-row{grid-template-columns:1fr}.automation-page .automation-trigger-row,.automation-page .automation-reply-row{flex-direction:column;gap:.375rem}.automation-page .automation-section-label{min-width:unset}}.templates-page{width:100%;padding:2rem;overflow-x:hidden}.templates-page .templates-loading,.templates-page .templates-loading-inline,.templates-page .templates-empty-page,.templates-page .templates-empty-list{justify-content:center;align-items:center;display:flex}.templates-page .templates-loading{min-height:400px}.templates-page .templates-session-select{min-width:240px}.templates-page .templates-workspace{border:1px solid var(--border);background:var(--bg-white);min-height:calc(100vh - 180px);box-shadow:var(--shadow-sm);border-radius:8px;grid-template-columns:minmax(260px,320px) minmax(420px,1fr) minmax(280px,360px);display:grid;overflow:hidden}.templates-page .templates-library,.templates-page .template-editor,.templates-page .template-preview{min-width:0;min-height:0}.templates-page .templates-library{border-right:1px solid var(--border);background:var(--bg-light);flex-direction:column;display:flex}.templates-page .templates-library-header,.templates-page .template-editor-header,.templates-page .template-preview-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;min-height:74px;padding:1rem;display:flex}.templates-page .templates-library-header h2,.templates-page .template-editor-header h2,.templates-page .template-preview-header h2{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:0;font-size:.75rem;font-weight:700}.templates-page .templates-library-header span,.templates-page .template-editor-header p,.templates-page .template-preview-header span{color:var(--text-muted);margin-top:.25rem;font-size:.8125rem;display:block}.templates-page .template-editor-header p{margin-bottom:0}.templates-page .templates-new-btn{white-space:nowrap;min-height:36px;padding:.5rem .75rem;font-size:.8125rem}.templates-page .templates-search{border:1px solid var(--border);background:var(--bg-white);color:var(--text-muted);border-radius:8px;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:.5rem;margin:1rem;padding:.625rem .75rem;display:grid}.templates-page .templates-search input{width:100%;color:var(--text-primary);background:0 0;border:0;outline:0;padding:0;font-size:.875rem}.templates-page .template-list{flex-direction:column;flex:1;padding:0 .5rem 1rem;display:flex;overflow-y:auto}.templates-page .template-list-row{position:relative}.templates-page .template-list-row.deletable .template-list-item{padding-inline-end:2.75rem}.templates-page .icon-btn.template-list-delete{top:.625rem;width:28px;height:28px;color:var(--text-muted);background:0 0;border-color:#0000;position:absolute;inset-inline-end:.625rem}.templates-page .template-list-item{width:100%;color:inherit;text-align:left;background:0 0;border:1px solid #0000;border-radius:8px;flex-direction:column;align-items:stretch;gap:.375rem;padding:.875rem;display:flex}.templates-page .template-list-item:hover{border-color:var(--border);background:var(--bg-white)}.templates-page .template-list-item.selected{border-color:var(--primary);background:var(--primary-soft)}.templates-page .template-list-title{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:.9375rem;font-weight:700;overflow:hidden}.templates-page .template-list-body{color:var(--text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.8125rem;line-height:1.45;display:-webkit-box;overflow:hidden}.templates-page .template-list-meta{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-family:JetBrains Mono,ui-monospace,monospace;font-size:.6875rem;overflow:hidden}.templates-page .template-editor{background:var(--bg-white);flex-direction:column;display:flex}.templates-page .template-header-actions,.templates-page .template-editor-actions{align-items:center;gap:.5rem;display:flex}.templates-page .template-form{flex-direction:column;flex:1;gap:1rem;padding:1.25rem;display:flex;overflow-y:auto}.templates-page .template-message-fields{flex:1;grid-template-rows:auto minmax(240px,1fr) auto;gap:1rem;display:grid}.templates-page .template-form .form-group{flex-direction:column;gap:.5rem;display:flex}.templates-page .template-form label,.templates-page .placeholder-list label>span{color:var(--text-secondary);font-size:.8125rem;font-weight:700}.templates-page .template-form input,.templates-page .template-form textarea,.templates-page .placeholder-list input{border:1px solid var(--border);background:var(--bg-light);width:100%;color:var(--text-primary);border-radius:8px;font-size:.9375rem}.templates-page .template-form input,.templates-page .placeholder-list input{padding:.8125rem .875rem}.templates-page .template-form textarea{resize:vertical;flex:1;min-height:240px;padding:.875rem;line-height:1.55}.templates-page .template-form input:focus,.templates-page .template-form textarea:focus,.templates-page .placeholder-list input:focus{border-color:var(--primary);background:var(--bg-white);box-shadow:0 0 0 3px var(--primary-soft);outline:none}.templates-page .body-field{min-height:0}.templates-page .template-editor-actions{justify-content:flex-end;padding-top:.25rem}.templates-page .template-preview{border-left:1px solid var(--border);background:var(--bg-light);flex-direction:column;display:flex}.templates-page .template-preview-header span{border:1px solid var(--primary);background:var(--primary-soft);min-width:28px;min-height:24px;color:var(--primary-text);border-radius:999px;justify-content:center;align-items:center;margin:0;font-size:.75rem;font-weight:700;display:inline-flex}.templates-page .template-preview-message{padding:1rem}.templates-page .template-preview-message pre{border:1px solid var(--border);background:var(--bg-white);min-height:220px;max-height:360px;color:var(--text-primary);white-space:pre-wrap;word-break:break-word;border-radius:8px;margin:0;padding:1rem;font-family:JetBrains Mono,ui-monospace,monospace;font-size:.875rem;line-height:1.6;overflow:auto}.templates-page .template-variable-panel{flex:1;padding:0 1rem 1rem;overflow-y:auto}.templates-page .placeholder-list{flex-direction:column;gap:.875rem;display:flex}.templates-page .placeholder-list label{flex-direction:column;gap:.375rem;display:flex}.templates-page .placeholder-list label>span{color:var(--primary-text);font-family:JetBrains Mono,ui-monospace,monospace}.templates-page .template-muted{color:var(--text-secondary);margin:0;font-size:.875rem;line-height:1.5}.templates-page .templates-loading-inline,.templates-page .templates-empty-list,.templates-page .templates-empty-page{min-height:220px;color:var(--text-muted);text-align:center;flex-direction:column;gap:.75rem;padding:1.5rem}.templates-page .templates-empty-list.compact{min-height:140px}.templates-page .templates-empty-page{border:1px solid var(--border);background:var(--bg-white);box-shadow:var(--shadow-sm);border-radius:8px}.templates-page .templates-empty-list h3,.templates-page .templates-empty-page h3{color:var(--text-secondary);margin:0}.templates-page .templates-empty-list p,.templates-page .templates-empty-page p{max-width:340px;color:var(--text-secondary);margin:0;font-size:.875rem}.templates-page .icon-btn{border:1px solid var(--border);background:var(--bg-white);width:36px;height:36px;color:var(--text-secondary);border-radius:8px;justify-content:center;align-items:center;padding:0;display:inline-flex}.templates-page .icon-btn:hover{background:var(--bg-light);color:var(--text-primary)}.templates-page .icon-btn.danger:hover{color:var(--error-text);background:#ef44441f;border-color:#ef44444d}@media (width<=1280px){.templates-page .templates-workspace{grid-template-columns:280px minmax(380px,1fr)}.templates-page .template-preview{border-top:1px solid var(--border);border-left:0;grid-column:1/-1;grid-template-columns:1fr 320px;display:grid}.templates-page .template-preview-header{grid-column:1/-1}.templates-page .template-variable-panel{padding-top:1rem}}@media (width<=900px){.templates-page{padding:1rem}.templates-page .templates-session-select{width:100%;min-width:0}.templates-page .templates-workspace{flex-direction:column;min-height:auto;display:flex}.templates-page .templates-library{border-right:0;border-bottom:1px solid var(--border);max-height:360px}.templates-page .template-editor-header,.templates-page .templates-library-header,.templates-page .template-preview-header{min-height:auto}.templates-page .template-preview{display:flex}}@media (width<=640px){.templates-page .templates-library-header,.templates-page .template-editor-header,.templates-page .template-editor-actions{flex-direction:column;align-items:stretch}.templates-page .template-header-actions{justify-content:flex-end}.templates-page .template-form,.templates-page .template-preview-message,.templates-page .template-variable-panel{padding:1rem}}.logs-page{box-sizing:border-box;width:100%;padding:2rem}.logs-page .page-header{margin-bottom:1.5rem}.logs-page .filters-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.logs-page .filters-left{flex-wrap:wrap;flex:1;align-items:center;gap:.75rem;min-width:0;display:flex}.logs-page .search-input{background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius,8px);box-sizing:border-box;flex:1;align-items:center;gap:.65rem;min-width:240px;max-width:380px;height:40px;min-height:40px;padding:0 .875rem;transition:border-color .15s,box-shadow .15s;display:flex}.logs-page .search-input:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #25d3661a}.logs-page .search-input svg{color:var(--text-muted);flex-shrink:0}.logs-page .search-input input{height:100%;color:var(--text-primary);background:0 0;border:none;flex:1;padding:0;font-size:.875rem}.logs-page .search-input input:focus{outline:none}.logs-page .filter-group{background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius,8px);box-sizing:border-box;align-items:center;gap:.5rem;height:40px;min-height:40px;padding:0 .875rem;transition:border-color .15s,box-shadow .15s;display:inline-flex}.logs-page .filter-group:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #25d3661a}.logs-page .filter-group svg{color:var(--text-muted);flex-shrink:0}.logs-page .filter-group .custom-select{flex:1;min-width:0}.logs-page .filters-actions{flex-shrink:0;align-items:center;gap:.75rem;display:flex}.logs-page .filters-actions .btn-secondary,.logs-page .filters-actions .btn-danger{box-sizing:border-box;align-items:center;gap:.5rem;height:40px;min-height:40px;padding:0 1rem;font-size:.875rem;display:inline-flex}.logs-page .logs-table-container{background:var(--bg-white);box-shadow:var(--shadow-sm);border:1px solid var(--border);border-radius:12px;overflow-x:auto}.logs-page .logs-table{flex-direction:column;width:100%;font-size:.875rem;display:flex}.logs-page .logs-table .table-row{border-bottom:1px solid var(--border);grid-template-columns:180px 200px 150px 150px 150px 1fr 120px;align-items:center;gap:1rem;padding:1rem 1.5rem;display:grid}.logs-page .logs-table .table-row:last-child{border-bottom:none}.logs-page .logs-table .table-row.header{background:var(--bg-light);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border);font-size:.7rem;font-weight:700}.logs-page .logs-table .table-row:not(.header):hover{background:#25d3660d}.logs-page .timestamp{color:var(--text-muted);white-space:nowrap;font-family:monospace;font-size:.8125rem}.logs-page .action{color:var(--text-primary);white-space:nowrap;font-size:.8125rem;font-weight:600}.logs-page .api-key,.logs-page .ip{white-space:nowrap;font-family:monospace;font-size:.8125rem}.logs-page .details{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;overflow:hidden}.logs-page .severity-badge{text-transform:uppercase;letter-spacing:.025em;white-space:nowrap;border-radius:6px;padding:.25rem .625rem;font-size:.6875rem;font-weight:700;display:inline-block}.logs-page .logs-table .table-row>span:last-child{justify-self:end}.logs-page .severity-badge.info{color:var(--info);background:#3b82f61f}.logs-page .severity-badge.warn{color:var(--warning-text);background:#f59e0b26}.logs-page .severity-badge.error{color:var(--error-text);background:#ef44441f}.logs-page .pagination{justify-content:center;align-items:center;gap:.5rem;margin-top:1.5rem;display:flex}.logs-page .pagination button{background:var(--bg-white);border:1px solid var(--border);cursor:pointer;color:var(--text-secondary);border-radius:6px;padding:.5rem 1rem;font-size:.875rem;transition:all .2s}.logs-page .pagination button:hover:not(:disabled){background:var(--bg-light)}.logs-page .pagination button:disabled{opacity:.5;cursor:not-allowed}.logs-page .page-numbers{gap:.25rem;display:flex}.logs-page .page-numbers button{min-width:36px;padding:.5rem}.logs-page .page-numbers button.active{background:var(--primary);border-color:var(--primary);color:#fff}.logs-page .empty-table-state{text-align:center;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;padding:4rem 2rem;display:flex}.logs-page .empty-table-state svg{opacity:.4;color:var(--text-muted);margin-bottom:1rem}.logs-page .empty-table-state h3{color:var(--text-secondary);margin:0 0 .5rem;font-size:1.125rem;font-weight:600}.logs-page .empty-table-state p{max-width:300px;margin:0;font-size:.875rem}@media (width<=768px){.logs-page{padding:1rem}.logs-page .filters-bar{flex-direction:column;align-items:stretch;gap:.75rem}.logs-page .filters-left{flex-direction:column;align-items:stretch;gap:.75rem;width:100%}.logs-page .search-input{width:100%;max-width:none}.logs-page .filter-group{justify-content:space-between;width:100%}.logs-page .filter-group .custom-select{flex:1}.logs-page .filters-actions{gap:.5rem;width:100%;display:flex}.logs-page .filters-actions .btn-secondary{justify-content:center;width:100%}.logs-page .logs-table-container{box-shadow:none;background:0 0;border:none;overflow-x:visible}.logs-page .logs-table{display:block}.logs-page .logs-table .table-row.header{display:none}.logs-page .logs-table .table-row:not(.header){text-align:left;background:var(--bg-white);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:12px;flex-direction:column;align-items:flex-start;gap:.5rem;margin-bottom:.75rem;padding:1rem;display:flex}.logs-page .logs-table .table-row:not(.header)>span{text-align:left;justify-content:flex-start;width:100%}.logs-page .logs-table .table-row:not(.header):hover{background:var(--bg-white)}.logs-page .logs-table .table-row .action{order:1;margin-bottom:.25rem;font-size:.9375rem;font-weight:600}.logs-page .logs-table .table-row .timestamp{order:2;font-size:.75rem}.logs-page .logs-table .table-row>span:nth-child(3),.logs-page .logs-table .table-row>span:nth-child(4),.logs-page .logs-table .table-row>span:nth-child(5){display:none}.logs-page .logs-table .table-row>span:last-child{order:3;justify-self:flex-start}.logs-page .pagination{flex-wrap:wrap;gap:.5rem}.logs-page .pagination button{padding:.5rem .75rem;font-size:.8125rem}.logs-page .page-numbers button{min-width:32px;padding:.5rem .25rem}}@media (width<=480px){.logs-page{padding:.75rem}}.api-keys-page{box-sizing:border-box;width:100%;padding:2rem}.api-keys-page .page-header{margin-bottom:2rem}.api-keys-page .api-keys-content{flex-direction:column;gap:1.5rem;display:flex}.api-keys-page .keys-table-container{background:var(--bg-white);box-shadow:var(--shadow-sm);border:1px solid var(--border);border-radius:12px;width:100%;overflow-x:auto}.api-keys-page .keys-table{border-collapse:collapse;width:100%;font-size:.875rem}.api-keys-page .keys-table thead tr.table-row.header th{background:var(--bg-light);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border);text-align:left;padding:1.125rem 1.5rem;font-size:.7rem;font-weight:700}.api-keys-page .keys-table tbody tr.table-row td{border-bottom:1px solid var(--border);vertical-align:middle;padding:1.125rem 1.5rem}.api-keys-page .keys-table tbody tr.table-row:last-child td{border-bottom:none}.api-keys-page .keys-table tbody tr.table-row:hover{background:#25d3660d}.api-keys-page .keys-table tbody tr.table-row:nth-child(2n){background:#94a3b814}.api-keys-page .keys-table tbody tr.table-row:nth-child(2n):hover{background:#25d3660d}.api-keys-page .name-cell{color:var(--text-primary);white-space:nowrap;font-weight:500}.api-keys-page .key-cell{align-items:center;gap:.5rem;display:flex}.api-keys-page .key-cell code{color:var(--text-secondary);background:var(--bg-light);white-space:nowrap;border-radius:4px;padding:.375rem .625rem;font-family:monospace;font-size:.8125rem}.api-keys-page .icon-btn-sm{color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:.25rem;transition:color .2s}.api-keys-page .icon-btn-sm:hover{color:var(--text-primary)}.api-keys-page .permission-badge{color:var(--info);white-space:nowrap;background:#3b82f61f;border-radius:4px;padding:.25rem .5rem;font-size:.6875rem;font-weight:500}.api-keys-page .permission-badge:first-child:last-child{color:var(--primary-text);background:#25d3661a}.api-keys-page .sessions-cell{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;max-width:16rem;font-size:.8125rem;display:inline-block;overflow:hidden}.api-keys-page .sessions-cell.all{color:var(--text-muted)}.api-keys-page .session-scope-picker{margin:.75rem 0 .5rem}.api-keys-page .session-scope-toggle{color:var(--primary-text);cursor:pointer;background:0 0;border:none;border-radius:0;padding:0;font-size:.875rem;font-weight:600;line-height:1.4;text-decoration:none;display:inline}.api-keys-page .session-scope-toggle:hover:not(:disabled){text-decoration:underline}.api-keys-page .session-scope-toggle:disabled{cursor:not-allowed;opacity:.6}.api-keys-page .session-scope-hint,.api-keys-page .session-scope-empty,.api-keys-page .session-scope-widened{color:var(--text-muted);text-transform:none;letter-spacing:normal;margin:0 0 .75rem;font-size:.8125rem;font-weight:400;line-height:1.45}.api-keys-page .session-scope-widened{color:var(--text-primary);font-weight:600}.api-keys-page .session-scope-list{flex-direction:column;gap:.375rem;max-height:14rem;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.api-keys-page .session-scope-option{background:var(--bg-light);border:1px solid var(--border);color:var(--text-primary);cursor:pointer;text-transform:none;letter-spacing:normal;border-radius:8px;align-items:flex-start;gap:.625rem;margin:0;padding:.625rem .75rem;font-size:.875rem;font-weight:500;display:flex}.api-keys-page .session-scope-option:has(input:checked){background:#25d36614;border-color:#25d36673}.api-keys-page .session-scope-meta{flex-direction:column;gap:.125rem;min-width:0;display:flex}.api-keys-page .session-scope-name{text-overflow:ellipsis;overflow:hidden}.api-keys-page .session-scope-phone{color:var(--text-muted);font-size:.75rem;font-weight:400}.api-keys-page .session-scope-edit-name{color:var(--text-secondary);margin:0 0 1rem}.api-keys-page .actions-cell{justify-content:flex-end;gap:.25rem;display:flex}.api-keys-page .icon-btn{border:1px solid var(--border);cursor:pointer;color:var(--text-secondary);background:0 0;border-radius:6px;flex-shrink:0;padding:.5rem;transition:all .2s}.api-keys-page .icon-btn:hover{background:var(--bg-light);color:var(--text-primary)}.api-keys-page .icon-btn.danger:hover{color:var(--error-text);background:#ef44441f;border-color:#ef44444d}.api-keys-page .permissions-reference{background:var(--bg-white);box-shadow:var(--shadow-sm);border:1px solid var(--border);border-radius:12px;padding:1.5rem}.api-keys-page .permissions-reference h3{margin-bottom:1rem}.api-keys-page .permissions-list{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.75rem;display:grid}.api-keys-page .perm-item{background:var(--bg-light);border-radius:var(--radius);flex-direction:column;gap:.25rem;padding:.75rem;display:flex}.api-keys-page .perm-item code{color:var(--primary-text);background:#25d3661a;border-radius:4px;width:fit-content;padding:.25rem .5rem;font-size:.8125rem}.api-keys-page .perm-item span{color:var(--text-secondary);font-size:.75rem}.api-keys-page .empty-table-state{text-align:center;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;padding:4rem 2rem;display:flex}.api-keys-page .empty-table-state svg{opacity:.4;color:var(--text-muted);margin-bottom:1rem}.api-keys-page .empty-table-state h3{color:var(--text-secondary);margin:0 0 .5rem;font-size:1.125rem;font-weight:600}.api-keys-page .empty-table-state p{max-width:300px;margin:0;font-size:.875rem}.api-keys-page .confirm-modal{max-width:400px}.api-keys-page .confirm-icon-wrapper{justify-content:center;margin-bottom:1rem;display:flex}.api-keys-page .confirm-warning-icon{color:var(--warning-text)}.api-keys-page .confirm-message{text-align:center;color:var(--text-secondary);margin:0;font-size:.9375rem;line-height:1.6}.api-keys-page .confirm-message strong{color:var(--text-primary)}.api-keys-page .status-badge{border-radius:9999px;padding:.25rem .5rem;font-size:.6875rem;font-weight:600}.api-keys-page .status-badge.active{color:var(--primary-text);background:#25d3661a}.api-keys-page .status-badge.inactive{color:var(--error-text);background:#ef44441f}@media (width<=768px){.api-keys-page{padding:1rem}.api-keys-page .btn-primary,.api-keys-page .btn-secondary{white-space:nowrap;justify-content:center;width:100%}.api-keys-page .keys-table-container{box-shadow:none;background:0 0;border:none;overflow-x:visible}.api-keys-page .keys-table{display:block}.api-keys-page .keys-table thead{display:none}.api-keys-page .keys-table tbody{flex-direction:column;gap:1rem;display:flex}.api-keys-page .keys-table tbody tr.table-row{background:var(--bg-white);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:12px;flex-direction:column;gap:.75rem;padding:1rem;display:flex}.api-keys-page .keys-table tbody tr.table-row:hover,.api-keys-page .keys-table tbody tr.table-row:nth-child(2n),.api-keys-page .keys-table tbody tr.table-row:nth-child(2n):hover{background:var(--bg-white)}.api-keys-page .keys-table tbody tr.table-row td{border-bottom:none;padding:0;display:block}.api-keys-page .keys-table tbody tr.table-row td:first-child{order:1}.api-keys-page .keys-table tbody tr.table-row td:first-child .name-cell{color:var(--text-primary);font-size:1.125rem;font-weight:600;display:block}.api-keys-page .keys-table tbody tr.table-row td:nth-child(2){order:2}.api-keys-page .keys-table tbody tr.table-row td:nth-child(2) .key-cell{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.api-keys-page .keys-table tbody tr.table-row td:nth-child(2) .key-cell code{word-break:break-all;white-space:normal;font-size:.75rem}:is(.api-keys-page .keys-table tbody tr.table-row td:has(.permission-badge),.api-keys-page .keys-table tbody tr.table-row td:has(.sessions-cell),.api-keys-page .keys-table tbody tr.table-row td:has(.status-badge)){order:3;margin-right:.5rem;display:inline-block}.api-keys-page .sessions-cell{white-space:normal;max-width:100%}.api-keys-page .keys-table tbody tr.table-row td:last-child{border-top:1px solid var(--border);order:5;margin-top:.5rem;padding-top:.75rem}.api-keys-page .keys-table tbody tr.table-row td:last-child .actions-cell{justify-content:flex-start;gap:.5rem}.api-keys-page .permissions-reference{padding:1rem}.api-keys-page .permissions-reference h3{font-size:.9375rem}}@media (width<=480px){.api-keys-page .permissions-list{grid-template-columns:1fr}.api-keys-page{padding:.75rem}}.message-tester{box-sizing:border-box;width:100%;padding:2rem}.message-tester .page-header{margin-bottom:2rem}.message-tester .page-header p{color:var(--text-secondary);margin:0;font-size:.9375rem}.message-tester .tester-panels{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}.message-tester .compose-panel,.message-tester .response-panel{background:var(--bg-white);box-shadow:var(--shadow-sm);border:1px solid var(--border);border-radius:12px;padding:1.5rem}.message-tester .compose-panel h2,.message-tester .response-panel h2{margin-bottom:1.5rem}.message-tester .form-group{margin-bottom:1.25rem}.message-tester .form-group label,.message-tester .form-group>.group-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);margin-bottom:.5rem;font-size:.7rem;font-weight:700;display:block}.message-tester .form-group input,.message-tester .form-group select,.message-tester .form-group textarea{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-white);width:100%;padding:.75rem 1rem;font-size:.9375rem;transition:border-color .2s}.message-tester .form-group input:focus,.message-tester .form-group select:focus,.message-tester .form-group textarea:focus{border-color:var(--primary);outline:none}.message-tester .form-group textarea{resize:vertical;min-height:100px}.message-tester .form-group .hint{color:var(--text-muted);margin-top:.375rem;font-size:.75rem;display:block}.message-tester .toggle-group{border:1px solid var(--border);border-radius:var(--radius);display:flex;overflow:hidden}.message-tester .toggle-group button{background:var(--bg-white);cursor:pointer;color:var(--text-secondary);border:none;flex:1;padding:.625rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s}.message-tester .toggle-group button:first-child{border-right:1px solid var(--border)}.message-tester .toggle-group button.active{background:var(--primary);color:#fff}.message-tester .send-btn{color:#fff;background:var(--primary);border-radius:var(--radius);cursor:pointer;border:none;justify-content:center;align-items:center;gap:.5rem;width:100%;padding:.875rem 1.5rem;font-size:1rem;font-weight:600;transition:background .2s;display:flex}.message-tester .send-btn:hover:not(:disabled){background:var(--primary-hover)}.message-tester .send-btn:disabled{opacity:.7;cursor:not-allowed}.message-tester .response-status{border-radius:var(--radius);align-items:center;gap:.5rem;margin-bottom:1rem;padding:.75rem 1rem;font-size:.9375rem;font-weight:600;display:flex}.message-tester .response-status.success{color:var(--primary-text);background:#25d3661a}.message-tester .response-status.error{color:var(--error-text);background:#ef44441f}.message-tester .response-details{margin-bottom:1rem}.message-tester .detail-row{border-bottom:1px solid var(--border);justify-content:space-between;padding:.625rem 0;display:flex}.message-tester .detail-row:last-child{border-bottom:none}.message-tester .detail-label{color:var(--text-secondary);font-size:.875rem}.message-tester .detail-value{color:var(--text-primary);font-size:.875rem;font-weight:500}.message-tester .detail-value.mono{font-family:monospace}.message-tester .response-json{border:1px solid var(--border);border-radius:var(--radius);background:#1e293b;padding:1rem;overflow-x:auto}.message-tester .response-json pre{color:#e2e8f0;white-space:pre-wrap;margin:0;font-family:JetBrains Mono,monospace;font-size:.8125rem}.message-tester .response-empty{background:var(--bg-light);border-radius:var(--radius);justify-content:center;align-items:center;min-height:200px;display:flex}.message-tester .response-empty p{color:var(--text-muted);margin:0}.message-tester .browse-btn{color:var(--text-secondary);background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;align-items:center;gap:.375rem;padding:.625rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s;display:inline-flex}.message-tester .browse-btn:hover{border-color:var(--primary);color:var(--primary-text)}.message-tester .file-selected{background:var(--bg-light);border:1px solid var(--border);border-radius:var(--radius);justify-content:space-between;align-items:center;gap:.75rem;padding:.625rem .875rem;display:flex}.message-tester .file-name{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;overflow:hidden}.message-tester .remove-file-btn{color:var(--error-text);cursor:pointer;white-space:nowrap;background:0 0;border:none;flex-shrink:0;align-items:center;gap:.25rem;padding:0;font-size:.8125rem;display:inline-flex}.message-tester .remove-file-btn:hover{text-decoration:underline}.message-tester .toggle-group.toggle-group-wrap{border:none;flex-wrap:wrap;gap:.375rem;overflow:visible}.message-tester .toggle-group.toggle-group-wrap button{border:1px solid var(--border);border-radius:6px;flex:30%}.message-tester .toggle-group.toggle-group-wrap button.active{border-color:var(--primary)}.message-tester .toggle-group.bulk-media-kind button{flex:1 1 0}.message-tester .form-group .hint.error{color:var(--error-text)}.message-tester .form-group .hint:empty{margin-top:0}.message-tester .form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.message-tester .poll-option-row{align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.message-tester .poll-option-row input{flex:1}.message-tester .remove-option-btn{width:2rem;height:2rem;color:var(--error-text);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;background:0 0;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.message-tester .remove-option-btn:hover:not(:disabled){border-color:var(--error)}.message-tester .remove-option-btn:disabled{opacity:.4;cursor:not-allowed}.message-tester .add-option-btn{color:var(--text-secondary);background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;align-items:center;gap:.375rem;padding:.5rem .875rem;font-size:.8125rem;font-weight:500;transition:all .2s;display:inline-flex}.message-tester .add-option-btn:hover:not(:disabled){border-color:var(--primary);color:var(--primary-text)}.message-tester .add-option-btn:disabled{opacity:.5;cursor:not-allowed}.message-tester .form-group label.checkbox-label{text-transform:none;letter-spacing:normal;color:var(--text-primary);cursor:pointer;align-items:center;gap:.5rem;margin-bottom:0;font-size:.875rem;font-weight:500;display:flex}.message-tester .form-group label.checkbox-label input[type=checkbox]{width:auto;margin:0}.message-tester .group-picker{flex-direction:column;gap:.5rem;display:flex}.message-tester .group-picker-toolbar{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.message-tester .group-picker-toolbar .browse-btn{padding:.375rem .75rem;font-size:.8125rem}.message-tester .group-picker-toolbar .browse-btn:disabled{opacity:.5;cursor:not-allowed}.message-tester .group-picker-count{color:var(--text-secondary);margin-inline-start:auto;font-size:.8125rem}.message-tester .group-picker-list{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-white);flex-direction:column;max-height:240px;padding:.25rem;display:flex;overflow-y:auto}.message-tester .group-picker-list ul{margin:0;padding:0;list-style:none}.message-tester .form-group label.checkbox-label.group-picker-option{border-radius:6px;padding:.5rem .625rem}.message-tester .form-group label.checkbox-label.group-picker-option:hover{background:var(--bg-light)}.message-tester .group-picker-option span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.message-tester .group-picker-empty{color:var(--text-muted);align-items:center;gap:.5rem;margin:0;padding:.75rem;font-size:.875rem;display:flex}.message-tester .group-send-status{color:var(--text-secondary);justify-content:space-between;align-items:center;gap:.75rem;margin-top:.5rem;font-size:.8125rem;display:flex}.message-tester .detail-row.group-failures{gap:1rem}.message-tester .detail-row.group-failures ul{color:var(--error);text-align:end;margin:0;padding:0;list-style:none}.message-tester .batch-status{background:var(--bg-light);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:1rem;padding:.875rem 1rem}.message-tester .batch-status-row{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.625rem;display:flex}.message-tester .batch-badge{text-transform:capitalize;border-radius:999px;padding:.125rem .625rem;font-size:.75rem;font-weight:600}.message-tester .batch-badge.pending,.message-tester .batch-badge.processing{color:#3b82f6;background:#3b82f61f}.message-tester .batch-badge.completed{color:var(--primary-text);background:#25d3661f}.message-tester .batch-badge.failed{color:var(--error-text);background:#ef44441f}.message-tester .batch-badge.cancelled{color:var(--text-secondary);background:#64748b1f}.message-tester .batch-progress-bar{background:var(--border);border-radius:999px;height:6px;overflow:hidden}.message-tester .batch-progress-fill{background:var(--primary);height:100%;transition:width .3s}.message-tester .batch-progress-line{color:var(--text-secondary);margin-top:.5rem;font-size:.8125rem}.message-tester .batch-cancel-btn{color:var(--error-text);border:1px solid var(--error);border-radius:var(--radius);cursor:pointer;background:0 0;padding:.25rem .75rem;font-size:.75rem;font-weight:600}.message-tester .batch-cancel-btn:hover:not(:disabled){background:#ef444414}.message-tester .batch-cancel-btn:disabled{opacity:.6;cursor:not-allowed}.message-tester .batch-error{color:var(--error-text);margin-top:.5rem;font-size:.8125rem}@media (width<=1000px){.message-tester .tester-panels{grid-template-columns:1fr}}@media (width<=768px){.message-tester,.message-tester .compose-panel,.message-tester .response-panel{padding:1rem}.message-tester .toggle-group{border:none;flex-wrap:wrap;gap:.5rem;overflow:visible}.message-tester .toggle-group button{border-radius:6px;min-width:0;padding:.5rem .875rem;font-size:.8125rem;border:1px solid var(--border)!important}.message-tester .toggle-group button.active{border-color:var(--primary)!important}.message-tester .send-btn{padding:.75rem 1rem;font-size:.9375rem}.message-tester .form-group input,.message-tester .form-group select,.message-tester .form-group textarea{padding:.625rem .75rem;font-size:.875rem}}.message-tester .composer-fields{border:0;min-width:0;margin:0;padding:0}.message-tester .screen-preview-card{background:var(--bg-light);border:1px solid var(--border);border-radius:12px;margin-bottom:1.25rem;overflow:hidden;box-shadow:0 2px 8px #0000000a}.message-tester .screen-preview-header{background:var(--bg-hover,#00000005);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:.625rem .875rem;display:flex}.message-tester .screen-preview-title{color:var(--text-primary);align-items:center;gap:.5rem;font-size:.8125rem;font-weight:600;display:flex}.message-tester .screen-preview-title .live-indicator{color:#16a34a;background:#22c55e1f;border-radius:9999px;align-items:center;gap:.375rem;padding:.125rem .5rem;font-size:.6875rem;font-weight:600;display:inline-flex}.message-tester .screen-preview-title .live-indicator.paused{color:var(--text-muted);background:#94a3b826}.message-tester .screen-preview-title .live-dot{background:#22c55e;border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite pulse-dot;box-shadow:0 0 0 2px #22c55e4d}.message-tester .screen-preview-title .live-dot.paused{box-shadow:none;background:#94a3b8;animation:none}.message-tester .screen-preview-actions{align-items:center;gap:.375rem;display:flex}.message-tester .screen-preview-actions .screenshot-timestamp{color:var(--text-muted);margin-right:.25rem;font-family:JetBrains Mono,monospace;font-size:.6875rem}.message-tester .btn-icon-subtle{width:26px;height:26px;color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;padding:0;transition:all .15s;display:flex}.message-tester .btn-icon-subtle:hover:not(:disabled){background:var(--bg-hover,#0000000d);border-color:var(--border);color:var(--text-primary)}.message-tester .btn-icon-subtle:disabled{opacity:.5;cursor:not-allowed}.message-tester .btn-icon-subtle.active{color:var(--primary);background:#25d3661a}.message-tester .screen-preview-body{background:#0f172a;justify-content:center;align-items:center;min-height:180px;max-height:260px;transition:max-height .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.message-tester .screen-preview-body.expanded{max-height:540px}.message-tester .screen-preview-img-wrapper{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.message-tester .screen-preview-img{object-fit:contain;cursor:zoom-in;width:100%;height:auto;max-height:260px;transition:max-height .3s;display:block}.message-tester .screen-preview-body.expanded .screen-preview-img{cursor:zoom-out;max-height:540px}.message-tester .screen-preview-placeholder{color:var(--text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.625rem;padding:2rem 1.5rem;font-size:.8125rem;display:flex}.message-tester .screen-preview-placeholder.muted{color:#94a3b8}.message-tester .spin{animation:1s linear infinite spin}.infrastructure-page{box-sizing:border-box;width:100%;padding:2rem}.infrastructure-page .page-header{margin-bottom:2rem}.infrastructure-page .infra-sections{grid-template-columns:repeat(2,1fr);gap:1.5rem;width:100%;display:grid}.infrastructure-page .infra-card{background:var(--bg-white);box-shadow:var(--shadow-sm);border:1px solid var(--border);box-sizing:border-box;border-radius:12px;width:100%;padding:1.5rem}.infrastructure-page .card-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;display:flex}.infrastructure-page .header-left{align-items:center;gap:.75rem;display:flex}.infrastructure-page .header-left svg{color:var(--primary-text)}.infrastructure-page .card-header h2{margin:0}.infrastructure-page .status-indicator{border-radius:9999px;align-items:center;gap:.375rem;padding:.375rem .75rem;font-size:.8125rem;font-weight:500;display:flex}.infrastructure-page .status-indicator.connected{color:var(--primary-text);background:#25d3661a}.infrastructure-page .status-indicator.disconnected{color:var(--error-text);background:#ef44441f}.infrastructure-page .status-indicator.sqlite{color:var(--info);background:#3b82f61f}.infrastructure-page .radio-group{grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1.5rem;display:grid}.infrastructure-page .radio-option{border:2px solid var(--border);border-radius:var(--radius);cursor:pointer;flex-direction:column;gap:.25rem;padding:1rem;transition:all .2s;display:flex}.infrastructure-page .radio-option:hover{border-color:var(--text-muted)}.infrastructure-page .radio-option.selected{border-color:var(--primary);background:#25d3660d}.infrastructure-page .radio-option input{display:none}.infrastructure-page .radio-option span{color:var(--text-primary);font-weight:600}.infrastructure-page .radio-option small{color:var(--text-secondary);font-size:.75rem}.infrastructure-page .radio-option{position:relative;overflow:hidden}.infrastructure-page .watermark-icon{opacity:.15;pointer-events:none;width:100px;height:100px;transition:all .3s;position:absolute;bottom:-15px;right:-15px;transform:rotate(-15deg)}.infrastructure-page .radio-option:hover .watermark-icon{opacity:.25;transform:rotate(-12deg)scale(1.05)}.infrastructure-page .radio-option.selected .watermark-icon{opacity:.3;transform:rotate(-12deg)scale(1.1)}.infrastructure-page .config-form{flex-direction:column;gap:1rem;display:flex}.infrastructure-page .form-row{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}.infrastructure-page .form-row .form-group.small{max-width:120px}.infrastructure-page .form-group{flex-direction:column;gap:.5rem;display:flex}.infrastructure-page .form-group label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);font-size:.7rem;font-weight:700}.infrastructure-page .form-group input,.infrastructure-page .form-group select{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-white);padding:.75rem 1rem;font-size:.9375rem;transition:border-color .2s}.infrastructure-page .form-group input:focus,.infrastructure-page .form-group select:focus{border-color:var(--primary);outline:none}.infrastructure-page .form-group small{color:var(--text-muted);opacity:.85;font-size:.75rem}.infrastructure-page .toggle-row{justify-content:space-between;align-items:center;padding:.75rem 0;display:flex}.infrastructure-page .toggle-info{flex-direction:column;gap:.25rem;display:flex}.infrastructure-page .toggle-info span{color:var(--text-primary);font-size:.9375rem;font-weight:500}.infrastructure-page .toggle-info small{color:var(--text-muted);opacity:.85;font-size:.75rem;font-weight:400}.infrastructure-page .toggle-switch{cursor:pointer;width:48px;height:26px;position:relative}.infrastructure-page .toggle-switch input{opacity:0;width:0;height:0}.infrastructure-page .toggle-slider{background:var(--border);border-radius:26px;transition:all .2s;position:absolute;inset:0}.infrastructure-page .toggle-slider:before{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:all .2s;position:absolute;bottom:3px;left:3px;box-shadow:0 1px 3px #0003}.infrastructure-page .toggle-switch input:checked+.toggle-slider{background:var(--primary)}.infrastructure-page .toggle-switch input:checked+.toggle-slider:before{transform:translate(22px)}.infrastructure-page .queue-stats{border-top:1px solid var(--border);margin-top:1.5rem;padding-top:1.5rem}.infrastructure-page .queue-stats h3{color:var(--text-primary);margin:0 0 1rem;font-size:.9375rem;font-weight:600}.infrastructure-page .stats-row{grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1rem;display:grid}.infrastructure-page .queue-stat-card{background:var(--bg-light);border-radius:var(--radius);padding:1rem}.infrastructure-page .queue-stat-card h4{color:var(--text-secondary);margin:0 0 .75rem;font-size:.8125rem;font-weight:600}.infrastructure-page .stat-values{gap:1.5rem;display:flex}.infrastructure-page .stat-item{flex-direction:column;gap:.125rem;display:flex}.infrastructure-page .stat-item .value{font-size:1.25rem;font-weight:700}.infrastructure-page .stat-item .label{text-transform:uppercase;letter-spacing:.05em;font-size:.6875rem}.infrastructure-page .stat-item.pending .value,.infrastructure-page .stat-item.pending .label{color:var(--warning-text)}.infrastructure-page .stat-item.completed .value,.infrastructure-page .stat-item.completed .label{color:var(--primary-text)}.infrastructure-page .stat-item.failed .value,.infrastructure-page .stat-item.failed .label{color:var(--error-text)}.infrastructure-page .queue-actions{gap:.75rem;display:flex}.infrastructure-page .btn-primary.large{padding:.875rem 1.5rem;font-size:1rem}.infrastructure-page .btn-outline{color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;background:0 0;align-items:center;gap:.5rem;padding:.625rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s;display:flex}.infrastructure-page .btn-outline:hover{background:var(--bg-light)}.infrastructure-page .page-footer{border-top:1px solid var(--border);justify-content:flex-end;margin-top:2rem;padding-top:1.5rem;display:flex}@media (width<=900px){.infrastructure-page .infra-sections{grid-template-columns:1fr}.infrastructure-page{padding:1rem}.infrastructure-page .radio-group,.infrastructure-page .form-row,.infrastructure-page .stats-row{grid-template-columns:1fr}.infrastructure-page .card-header{flex-wrap:wrap;gap:.75rem}.infrastructure-page .header-left{flex:1;min-width:0}.infrastructure-page .header-left h2{font-size:.9375rem;line-height:1.3}.infrastructure-page .status-indicator{white-space:nowrap;flex-shrink:0;padding:.25rem .625rem;font-size:.75rem}.infrastructure-page .toggle-row{gap:1rem}.infrastructure-page .toggle-info{flex:1;min-width:0}.infrastructure-page .toggle-switch{flex-shrink:0}.infrastructure-page .queue-actions{flex-direction:column}.infrastructure-page .queue-actions button{justify-content:center}}@media (width<=768px){.infrastructure-page{padding:.75rem}.infrastructure-page .infra-card{padding:1rem}.infrastructure-page .form-row .form-group.small{max-width:none}.infrastructure-page .form-group input,.infrastructure-page .form-group select{padding:.625rem .875rem;font-size:.875rem}.infrastructure-page .stat-values{gap:1rem}.infrastructure-page .stat-item .value{font-size:1rem}.infrastructure-page .page-footer{justify-content:stretch}.infrastructure-page .page-footer button{justify-content:center;width:100%}}.infrastructure-page .engine-web-version{color:var(--text-secondary);margin:.5rem 0 0;font-size:.8125rem}.infrastructure-page .engine-web-version code{background:#7f7f7f1a;border-radius:4px;padding:.05rem .35rem;font-size:.8125rem}.infrastructure-page .engine-web-version .muted{color:var(--text-muted)}.infrastructure-page .env-pin-note{color:var(--warning-text);align-items:center;gap:.4rem;margin:0 0 1rem;font-size:.8125rem;display:flex}.infrastructure-page .env-pin-note svg{flex-shrink:0}.infrastructure-page .migration-warning{text-align:left;color:var(--text-primary);background:#f59e0b1a;border:1px solid #f59e0b59;border-radius:8px;gap:.6rem;margin:0 0 1.5rem;padding:.85rem 1rem;display:flex}.infrastructure-page .migration-warning svg{color:var(--warning-text);flex-shrink:0;margin-top:.1rem}.infrastructure-page .migration-warning p{color:var(--text-secondary);margin:.25rem 0 .6rem;font-size:.8125rem}.infrastructure-page .data-migration-row{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;padding-top:1rem;display:flex}.infrastructure-page .data-migration-row small{color:var(--text-muted);margin-top:.15rem;font-size:.75rem;display:block}.infrastructure-page .data-migration-actions{gap:.5rem;display:flex}.infrastructure-page .data-migration-actions .btn-sm,.infrastructure-page .migration-warning .btn-sm{align-items:center;gap:.35rem;display:inline-flex}.infrastructure-page.infra-loading{justify-content:center;align-items:center;min-height:400px;display:flex}.infrastructure-page .status-error-card{text-align:center;padding:2.5rem}.infrastructure-page .status-error-icon{color:var(--warning-text,#9f6707);margin-bottom:1rem}.infrastructure-page .status-error-text{margin:0}.infrastructure-page .status-error-retry{margin-top:1.25rem}.infrastructure-page .toggle-row-spaced{margin-top:1rem;margin-bottom:1rem}.infrastructure-page .toggle-row-spaced-bottom{margin-bottom:1rem}.infrastructure-page .queue-toggle-row{border-top:1px solid var(--border);margin-top:.5rem;padding-top:1.25rem}.infrastructure-page .empty-state-card{text-align:center;background:var(--bg-light);border:1px dashed var(--border);border-radius:12px;margin-top:1rem;padding:2.5rem}.infrastructure-page .empty-state-icon{margin-bottom:1rem}.infrastructure-page .empty-state-icon.success{color:var(--success-text);opacity:.7}.infrastructure-page .empty-state-icon.muted{color:var(--text-muted);opacity:.5}.infrastructure-page .empty-state-title{color:var(--text-secondary);margin:0;font-size:.9375rem;font-weight:500}.infrastructure-page .migrations-status{color:var(--success-text);justify-content:center;align-items:center;gap:.375rem;margin:.75rem 0 0;font-size:.875rem;font-weight:500;display:flex}.infrastructure-page .muted-hint{color:var(--text-muted);margin:.5rem 0 0;font-size:.8125rem;line-height:1.5}.infrastructure-page .engine-restart-note{color:var(--text-muted);margin:1rem 0 0;font-size:.8125rem;line-height:1.5}.infrastructure-page .hidden-file-input{display:none}.infrastructure-page .restart-modal{text-align:center;max-width:500px}.infrastructure-page .restart-modal .modal-header{border-bottom:none;justify-content:center}.infrastructure-page .restart-modal .modal-body{padding:2rem}.infrastructure-page .restart-idle-desc{color:var(--text-secondary);margin-bottom:1.5rem;font-size:1rem}.infrastructure-page .restart-actions{justify-content:center;gap:1rem;display:flex}.infrastructure-page .restart-countdown{margin-bottom:1.5rem}.infrastructure-page .restart-status-icon{color:var(--success-text);margin-bottom:1rem}.infrastructure-page .restart-countdown-msg{color:var(--text-primary);font-size:1.125rem;font-weight:500}.infrastructure-page .restart-progress-track{background:var(--border);border-radius:4px;width:100%;height:8px;overflow:hidden}.infrastructure-page .restart-progress-fill{background:var(--primary);height:100%;transition:width 1s linear}.infrastructure-page .restart-dont-close{color:var(--text-muted);margin-top:1rem;font-size:.875rem}.infrastructure-page .restart-success-msg{color:var(--text-secondary);font-size:1rem}.infrastructure-page .restart-error-msg{color:var(--error-text);margin-bottom:1rem;font-size:1rem}.infrastructure-page .form-group input.copy-input,.infrastructure-page .form-group input:read-only{background:var(--bg-light);color:var(--text-primary);border-color:var(--border);cursor:default;width:100%}.plugins-page{box-sizing:border-box;width:100%;padding:2rem}.plugins-page .plugins-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem;display:grid}.plugins-page .plugin-card{background:var(--bg-white);border:1px solid var(--border);border-radius:12px;transition:transform .2s,box-shadow .2s;overflow:hidden}.plugins-page .plugin-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.plugins-page .plugin-card-header{justify-content:space-between;align-items:center;gap:.5rem;padding:1.25rem 1.25rem 1rem;display:flex}.plugins-page .plugin-info{align-items:center;gap:.75rem;min-width:0;display:flex}.plugins-page .plugin-icon-wrapper{background:var(--bg-light);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.plugins-page .plugin-icon-wrapper svg{color:var(--text-secondary)}.plugins-page .type-extension .plugin-icon-wrapper{background:#6366f11f}.plugins-page .type-extension .plugin-icon-wrapper svg{color:#6366f1}.plugins-page .type-storage .plugin-icon-wrapper{background:#0d94881f}.plugins-page .type-storage .plugin-icon-wrapper svg{color:#0d9488}.plugins-page .type-queue .plugin-icon-wrapper{background:#d977061f}.plugins-page .type-queue .plugin-icon-wrapper svg{color:var(--warning-text)}.plugins-page .type-auth .plugin-icon-wrapper{background:#9333ea1f}.plugins-page .type-auth .plugin-icon-wrapper svg{color:#9333ea}.plugins-page .plugin-name{color:var(--text-primary);text-transform:none;letter-spacing:normal;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.9375rem;font-weight:600;overflow:hidden}.plugins-page .plugin-version{color:var(--text-muted);font-size:.75rem}.plugins-page .plugin-update-chip,.admin-plugins-page .plugin-update-chip,.plugin-update-chip{color:var(--primary-text,#17813e);background:color-mix(in srgb, var(--primary,#25d366) 12%, transparent);border:1px solid color-mix(in srgb, var(--primary,#25d366) 35%, transparent);cursor:pointer;border-radius:999px;align-items:center;gap:3px;margin-left:8px;padding:.0625rem .4375rem;font-size:.6875rem;font-weight:600;display:inline-flex}.plugins-page .plugin-update-chip:hover,.admin-plugins-page .plugin-update-chip:hover,.plugin-update-chip:hover{background:color-mix(in srgb, var(--primary,#25d366) 20%, transparent)}.plugins-page .install-update-count,.admin-plugins-page .install-update-count,.install-update-count{min-width:1.25rem;height:1.25rem;color:var(--primary-text,#17813e);background:color-mix(in srgb, var(--primary,#25d366) 18%, transparent);border-radius:999px;justify-content:center;align-items:center;margin-left:6px;padding:0 .3125rem;font-size:.6875rem;font-weight:700;display:inline-flex}.plugins-page .plugin-builtin-badge{background:var(--bg-light);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;border:1px solid var(--border);white-space:nowrap;border-radius:5px;flex-shrink:0;padding:.1875rem .5rem;font-size:.625rem;font-weight:600}.plugins-page .plugin-custom-badge{color:#818cf8;background:#6366f126;border-color:#6366f159}.plugins-page .plugin-card-body{padding:1.25rem}.plugins-page .plugin-description{color:var(--text-secondary);margin-bottom:1rem;font-size:.875rem;line-height:1.5}.plugins-page .plugin-status-row{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.plugins-page .plugin-status{align-items:center;gap:.5rem;display:flex}.plugins-page .status-dot{border-radius:50%;width:8px;height:8px}.plugins-page .status-dot.enabled{background:#22c55e}.plugins-page .status-dot.disabled{background:#eab308}.plugins-page .status-dot.error{background:#ef4444}.plugins-page .status-dot.installed{background:#64748b}.plugins-page .status-text{color:var(--text-primary);text-transform:capitalize;font-size:.875rem}.plugins-page .plugin-type-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.625rem}.plugins-page .plugin-provides{flex-wrap:wrap;gap:.375rem;margin-bottom:1rem;display:flex}.plugins-page .provides-tag{background:var(--bg-light);color:var(--text-secondary);border-radius:4px;padding:.25rem .5rem;font-size:.75rem}.plugins-page .plugin-error{background:#ef44441a;border:1px solid #ef444433;border-radius:6px;margin-bottom:1rem;padding:.5rem .75rem}.plugins-page .plugin-error-text{color:var(--error-text);font-size:.75rem}.plugins-page .plugin-actions{border-top:1px solid var(--border);align-items:center;gap:.5rem;padding-top:1rem;display:flex}.plugins-page .btn-toggle{cursor:pointer;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:.625rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s;display:flex}.plugins-page .btn-toggle.enable{background:var(--primary,#25d366);border:1px solid var(--primary,#25d366);color:#fff}.plugins-page .btn-toggle.enable:hover{background:#16a34a;border-color:#16a34a}.plugins-page .btn-toggle.disable{color:var(--error-text);background:#ef44441a;border:1px solid #ef44444d}.plugins-page .btn-toggle.disable:hover{background:#ef444433}.plugins-page .btn-toggle:disabled{opacity:.5;cursor:not-allowed}.plugins-page .btn-action{background:var(--bg-light);border:1px solid var(--border);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;padding:0;transition:all .2s;display:flex}.plugins-page .btn-action:hover{background:var(--bg-white);border-color:var(--text-muted)}.plugins-page .btn-action svg{color:var(--text-secondary)}.plugins-page .empty-state{text-align:center;padding:4rem 2rem}.plugins-page .empty-state svg{color:var(--text-muted);margin-bottom:1rem}.plugins-page .empty-state h3{color:var(--text-secondary);margin-bottom:.5rem;font-size:1.25rem}.plugins-page .empty-state p{color:var(--text-muted)}.plugins-page .config-modal{width:90%;max-width:640px}.plugins-page .config-form .form-group{margin-bottom:1.25rem}.plugins-page .config-form .form-group label{color:var(--text-secondary);margin-bottom:.5rem;font-size:.875rem;font-weight:600;display:block}.plugins-page .config-form .form-group input,.plugins-page .config-form .form-group select,.plugins-page .config-form .form-group textarea{border:1px solid var(--border);background:var(--bg-light);box-sizing:border-box;border-radius:8px;width:100%;padding:.75rem 1rem;font-size:.9375rem;transition:all .2s}.plugins-page .config-form .form-group textarea{resize:vertical;min-height:4.5rem;font-family:inherit}.plugins-page .config-form .form-group input:focus,.plugins-page .config-form .form-group select:focus,.plugins-page .config-form .form-group textarea:focus{border-color:var(--primary);background:var(--bg-white);outline:none;box-shadow:0 0 0 3px #25d3661a}.plugins-page .config-form .config-fieldset{border:1px solid var(--border);border-radius:8px;min-width:0;margin:0 0 1.25rem;padding:.75rem 1rem .25rem}.plugins-page .config-form .config-fieldset>legend{color:var(--text-secondary);padding:0 .4rem;font-size:.8125rem;font-weight:600}.plugins-page .config-form .config-array{margin-bottom:1.25rem}.plugins-page .config-form .config-array>label,.plugins-page .config-form .config-array>.config-array-label{color:var(--text-secondary);margin-bottom:.5rem;font-size:.875rem;font-weight:600;display:block}.plugins-page .config-form .config-array-row{align-items:flex-start;gap:.5rem;margin-bottom:.5rem;display:flex}.plugins-page .config-form .config-array-row-body{border-left:2px solid var(--border);flex:1;min-width:0;padding-left:.75rem}.plugins-page .config-form .config-array-remove{border:1px solid var(--border);background:var(--bg-light);color:var(--error-text);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:.45rem;transition:all .2s;display:inline-flex}.plugins-page .config-form .config-array-remove:hover{background:var(--error);color:#fff;border-color:var(--error)}.plugins-page .config-form .config-array-add{border:1px dashed var(--border);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:.35rem;padding:.5rem .85rem;font-size:.8125rem;font-weight:600;transition:all .2s;display:inline-flex}.plugins-page .config-form .config-array-add:hover{border-color:var(--primary);color:var(--primary-text)}.plugins-page .plugin-config-ui-frame{border:1px solid var(--border);background:var(--bg-white);border-radius:8px;width:100%;display:block}.plugins-page .config-ui-status{min-height:200px;color:var(--text-muted);justify-content:center;align-items:center;display:flex}.plugins-page .config-ui-error{text-align:center;color:var(--error-text);padding:1rem}.plugins-page .config-form .form-group small{color:var(--text-muted);margin-top:.4rem;font-size:.75rem;line-height:1.4;display:block}.plugins-page .config-form .required-mark{color:var(--error-text)}.plugins-page .toggle-group{background:var(--bg-light);border-radius:8px;justify-content:space-between;align-items:center;padding:1rem;display:flex}.plugins-page .toggle-info{flex:1}.plugins-page .toggle-info label{margin-bottom:.25rem!important;display:block!important}.plugins-page .toggle-info small{color:var(--text-muted);font-size:.75rem;display:block}.plugins-page .toggle-switch{flex-shrink:0;width:48px;height:26px;display:inline-block;position:relative}.plugins-page .toggle-switch input{opacity:0;width:0;height:0}.plugins-page .toggle-slider{cursor:pointer;background-color:var(--border);border-radius:26px;transition:all .3s;position:absolute;inset:0}.plugins-page .toggle-slider:before{content:"";background-color:#fff;border-radius:50%;width:20px;height:20px;transition:all .3s;position:absolute;bottom:3px;left:3px;box-shadow:0 2px 4px #0000001a}.plugins-page .toggle-switch input:checked+.toggle-slider{background-color:var(--primary)}.plugins-page .toggle-switch input:checked+.toggle-slider:before{transform:translate(22px)}.plugins-page .no-config{text-align:center;color:var(--text-muted);padding:2rem}.plugins-page .no-config p{margin-top:1rem}.plugins-page .btn-update,.install-modal .btn-update{color:#fff;cursor:pointer;background:#f59e0b;border:none;border-radius:8px;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.9375rem;font-weight:600;transition:all .2s;display:flex}.plugins-page .btn-update:hover,.install-modal .btn-update:hover{background:#d97706}.plugins-page .btn-update:disabled,.install-modal .btn-update:disabled{opacity:.6;cursor:not-allowed}@media (width<=768px){.plugins-page{padding:1rem}.plugins-page .plugins-grid{grid-template-columns:1fr}}.plugins-page .plugins-layout{flex-direction:column;gap:1.5rem;width:100%;display:flex}.plugins-page .plugins-rail{background:var(--bg-white);border:1px solid var(--border);box-sizing:border-box;border-radius:12px;flex-direction:row;justify-content:flex-start;align-items:center;gap:2rem;width:100%;padding:1.25rem 1.5rem;display:flex}.plugins-page .plugins-main{width:100%}.plugins-page .rail-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:.5rem;font-size:.6875rem;font-weight:600}.plugins-page .rail-stats{flex-shrink:0;gap:.75rem;display:flex}.plugins-page .rail-stat{background:var(--bg-light);text-align:center;border-radius:8px;min-width:120px;padding:.75rem 1.25rem}.plugins-page .rail-stat-num{color:var(--text-primary);font-size:1.25rem;font-weight:700;line-height:1.2;display:block}.plugins-page .rail-stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.6875rem}.plugins-page .rail-section{border-left:1px solid var(--border);flex-direction:column;flex:1;justify-content:center;min-width:0;padding-left:1.75rem;display:flex}.plugins-page .rail-active-list{flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;margin:0;padding:0;list-style:none;display:flex}.plugins-page .rail-active-item{background:var(--bg-light);border-radius:6px;align-items:center;gap:.5rem;max-width:100%;padding:.35rem .75rem;display:inline-flex}.plugins-page .rail-active-name{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;max-width:200px;font-size:.8125rem;overflow:hidden}.plugins-page .rail-active-type{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.625rem}.plugins-page .rail-empty{color:var(--text-muted);margin:0;font-size:.8125rem}@media (width<=768px){.plugins-page .plugins-rail{flex-direction:column;align-items:stretch;gap:1.25rem;padding:1rem}.plugins-page .rail-stats{width:100%}.plugins-page .rail-stat{flex:1;min-width:0}.plugins-page .rail-section{border-left:none;border-top:1px solid var(--border);padding-top:1rem;padding-left:0}}.plugins-page .btn-action-danger:hover{background:#ef44441a;border-color:#ef44444d}.plugins-page .btn-action-danger:hover svg{color:var(--error-text)}.plugins-page .install-hint,.install-modal .install-hint{color:var(--text-secondary);margin-bottom:1rem;font-size:.875rem;line-height:1.5}.plugins-page .install-hint-sub,.install-modal .install-hint-sub{color:var(--text-muted);margin-top:.75rem;margin-bottom:0;font-size:.8125rem}.plugins-page .install-hint-warning,.install-modal .install-hint-warning{color:var(--warning-text);align-items:flex-start;gap:.4rem;display:flex}.plugins-page .install-hint-warning svg,.install-modal .install-hint-warning svg{flex-shrink:0;margin-top:.15rem}.plugins-page .install-inline-link,.install-modal .install-inline-link{color:var(--primary-text);font:inherit;cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;font-weight:600;text-decoration:underline;display:inline}.plugins-page .install-inline-link:hover,.install-modal .install-inline-link:hover{filter:brightness(1.1)}.plugins-page .install-drop,.install-modal .install-drop{border:2px dashed var(--border);color:var(--text-muted);cursor:pointer;text-align:center;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:.625rem;padding:2rem 1rem;transition:all .15s;display:flex}.plugins-page .install-drop:hover,.install-modal .install-drop:hover{border-color:var(--primary,#25d366);color:var(--text-secondary)}.plugins-page .install-drop.has-file,.install-modal .install-drop.has-file{border-style:solid;border-color:var(--primary,#25d366);color:var(--text-primary);background:#22c55e0d}.plugins-page .install-drop-name,.install-modal .install-drop-name{word-break:break-all;font-size:.875rem}@media (width<=860px){.plugins-page .plugins-layout{flex-direction:column}.plugins-page .plugins-rail{flex-basis:auto;width:100%;position:static}}.install-tabs,.plugins-page .install-tabs,.install-modal .install-tabs,.plugins-page .config-modal .modal-tabs{background:var(--bg-light);border:1px solid var(--border);border-radius:10px;align-self:center;gap:2px;margin:0 0 .75rem;padding:3px;display:inline-flex}.install-modal .modal-header,.plugins-page .install-modal .modal-header{flex-wrap:wrap;justify-content:space-between;align-items:center;row-gap:.75rem;display:flex}.install-modal .modal-header h2,.plugins-page .install-modal .modal-header h2{text-overflow:unset;white-space:normal;flex:auto;overflow:visible}.install-modal .modal-header .install-tabs,.plugins-page .install-modal .modal-header .install-tabs{order:3;width:100%;margin:.25rem 0 0;display:flex;position:static;transform:none}.install-modal .modal-header .install-tab,.plugins-page .install-modal .modal-header .install-tab{flex:1 1 0;min-width:0;padding:.45rem .75rem}.install-tab,.plugins-page .install-tab,.install-modal .install-tab,.plugins-page .config-modal .modal-tab{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:7px;justify-content:center;align-items:center;gap:6px;padding:.4rem .9rem;font-size:.875rem;font-weight:600;transition:background .18s,color .18s,box-shadow .18s,transform .18s;display:inline-flex}.install-tab.active,.plugins-page .install-tab.active,.install-modal .install-tab.active,.plugins-page .config-modal .modal-tab.active{background:var(--primary);color:#fff}.install-tab:not(.active):hover,.plugins-page .install-tab:not(.active):hover,.install-modal .install-tab:not(.active):hover,.plugins-page .config-modal .modal-tab:not(.active):hover{background:color-mix(in srgb, var(--primary) 12%, transparent);color:var(--text-primary)}.plugins-page .sessions-tab{flex-direction:column;gap:1.5rem;display:flex}.plugins-page .sessions-section>h3{color:var(--text-primary);margin:0 0 .25rem;font-size:.9375rem;font-weight:600}.plugins-page .sessions-section>small{color:var(--text-muted);margin-bottom:.75rem;font-size:.75rem;display:block}.plugins-page .sessions-radio{color:var(--text-primary);cursor:pointer;align-items:center;gap:.5rem;padding:.35rem 0;font-size:.875rem;display:flex}.plugins-page .sessions-checklist{flex-direction:column;gap:.25rem;max-height:180px;margin:.25rem 0 .75rem 1.5rem;display:flex;overflow-y:auto}.plugins-page .sessions-check{color:var(--text-secondary);cursor:pointer;align-items:center;gap:.5rem;font-size:.875rem;display:flex}.plugins-page .sessions-empty{color:var(--text-muted);margin:.25rem 0 .75rem 1.5rem;font-size:.8125rem}.plugins-page .sessions-select{border:1px solid var(--border);background:var(--bg-light);box-sizing:border-box;border-radius:8px;width:100%;margin-bottom:1rem;padding:.6rem .85rem;font-size:.9375rem}.plugins-page .sessions-override-actions{justify-content:flex-end;gap:.5rem;margin-top:.5rem;display:flex}.plugins-page .catalog-empty,.install-modal .catalog-empty{color:var(--text-secondary);justify-content:center;align-items:center;gap:10px;padding:28px 12px;font-size:.875rem;display:flex}.plugins-page .catalog-error,.install-modal .catalog-error{color:var(--error-text);flex-wrap:wrap}.plugins-page .catalog-search,.install-modal .catalog-search{border:1px solid var(--border);color:var(--text-muted);border-radius:8px;align-items:center;gap:.5rem;margin-bottom:.75rem;padding:.5rem .75rem;display:flex}.plugins-page .catalog-search input,.install-modal .catalog-search input{color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;font-size:.9375rem}.plugins-page .catalog-list,.install-modal .catalog-list{flex-direction:column;gap:8px;max-height:420px;display:flex;overflow-y:auto}.plugins-page .catalog-row,.install-modal .catalog-row{border:1px solid var(--border);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.plugins-page .catalog-row-info,.install-modal .catalog-row-info{min-width:0}.plugins-page .catalog-row-name,.install-modal .catalog-row-name{font-weight:600}.plugins-page .catalog-row-version,.install-modal .catalog-row-version{color:var(--text-secondary);font-size:.85em;font-weight:400}.plugins-page .catalog-row-desc,.install-modal .catalog-row-desc{color:var(--text-secondary);margin-top:2px;font-size:.85rem}.plugins-page .catalog-row-meta,.install-modal .catalog-row-meta{color:var(--text-secondary);align-items:center;gap:8px;margin-top:4px;font-size:.8rem;display:flex}.plugins-page .catalog-badge.update,.install-modal .catalog-badge.update{color:var(--primary-text,#17813e)}.plugins-page .catalog-row-action,.install-modal .catalog-row-action{flex-shrink:0}.plugins-page .catalog-installed,.install-modal .catalog-installed{color:var(--text-secondary);align-items:center;gap:6px;font-size:.85rem;display:inline-flex}.plugin-instances{flex-direction:column;gap:1rem;display:flex}.plugin-instances .pi-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.plugin-instances .pi-desc{color:var(--text-muted);flex:1;margin:0}.plugin-instances .pi-loading{justify-content:center;padding:2rem;display:flex}.plugin-instances .pi-empty{text-align:center;color:var(--text-muted);padding:2rem 1rem}.plugin-instances .pi-list{flex-direction:column;gap:.5rem;display:flex}.plugin-instances .pi-row{border:1px solid var(--border);border-radius:8px;align-items:center;gap:.75rem;padding:.75rem;display:flex}.plugin-instances .pi-main{flex-direction:column;min-width:0;display:flex}.plugin-instances .pi-id{font-weight:600}.plugin-instances .pi-scope{color:var(--text-muted);font-size:.8rem}.plugin-instances .pi-url{flex:1;align-items:center;gap:.5rem;min-width:0;display:flex}.plugin-instances .pi-url code{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.plugin-instances .pi-badge{white-space:nowrap;border-radius:999px;padding:.15rem .5rem;font-size:.75rem}.plugin-instances .pi-badge.on{background:var(--primary-soft);color:var(--success-text)}.plugin-instances .pi-badge.off{background:var(--bg-light);color:var(--text-muted)}.plugin-instances .pi-actions{gap:.25rem;margin-left:auto;display:flex}.plugin-instances .pi-hint{color:var(--text-muted);margin:.25rem 0 .75rem;font-size:.8rem}.plugin-instances .pi-secret{align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.plugin-instances .pi-secret code{background:var(--bg-light);word-break:break-all;border-radius:6px;flex:1;padding:.75rem}.plugin-instances .pi-error{color:var(--error-text);margin-top:.5rem;font-size:.85rem}.plugin-instances .pi-confirm-icon{color:var(--error-text);justify-content:center;margin-bottom:.75rem;display:flex}.plugin-instances textarea{width:100%;min-height:96px;font-family:monospace}.users-page{box-sizing:border-box;width:100%;padding:2rem}.users-page .users-content{flex-direction:column;gap:1.5rem;display:flex}.users-page .users-stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;display:grid}.users-page .user-stat-card{background:var(--bg-white);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:12px;align-items:center;gap:1rem;padding:1.25rem;transition:transform .2s,box-shadow .2s;display:flex}.users-page .user-stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.users-page .user-stat-icon{width:44px;height:44px;color:var(--primary);background:#25d3661f;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.users-page .user-stat-icon.purple{color:#9333ea;background:#9333ea1f}.users-page .user-stat-icon.blue{color:#3b82f6;background:#3b82f61f}.users-page .user-stat-icon.amber{color:#f59e0b;background:#f59e0b1f}.users-page .user-stat-info{flex-direction:column;gap:.25rem;display:flex}.users-page .user-stat-value{color:var(--text-primary);font-size:1.5rem;font-weight:700;line-height:1.2}.users-page .user-stat-label{color:var(--text-secondary);font-size:.8125rem;font-weight:500}.users-page .users-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.users-page .users-search-box{background:var(--bg-white);border:1px solid var(--border);box-sizing:border-box;border-radius:8px;flex:1;align-items:center;gap:.5rem;min-width:280px;max-width:420px;height:40px;min-height:40px;padding:0 .875rem;transition:border-color .15s,box-shadow .15s;display:flex}.users-page .users-search-box:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #25d3661a}.users-page .users-search-box svg{color:var(--text-muted);flex-shrink:0}.users-page .users-search-box input{width:100%;height:100%;color:var(--text-primary);background:0 0;border:none;outline:none;padding:0;font-size:.875rem}.users-page .users-filters{align-items:center;gap:.75rem;display:flex}.users-page .users-filters select{background:var(--bg-white);border:1px solid var(--border);color:var(--text-primary);cursor:pointer;border-radius:8px;outline:none;padding:.5rem .875rem;font-size:.875rem}.users-table-container,.users-page .users-table-container{background:var(--bg-white);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:12px;width:100%;overflow-x:auto}.users-table,.users-page .users-table{border-collapse:collapse;width:100%;font-size:.875rem}.users-table thead th,.users-page .users-table thead th{background:var(--bg-light);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border);text-align:left;padding:1rem 1.25rem;font-size:.75rem;font-weight:700}.users-table tbody td,.users-page .users-table tbody td{border-bottom:1px solid var(--border);vertical-align:middle;padding:1rem 1.25rem}.users-table tbody tr:last-child td,.users-page .users-table tbody tr:last-child td{border-bottom:none}.users-table tbody tr:hover,.users-page .users-table tbody tr:hover{background:#25d3660a}.users-page .user-identity{align-items:center;gap:.75rem;display:flex}.users-page .user-avatar{background:var(--bg-light);border:1px solid var(--border);width:38px;height:38px;color:var(--primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.875rem;font-weight:700;display:flex;overflow:hidden}.users-page .user-avatar-img{object-fit:cover;border-radius:50%;width:100%;height:100%}.users-page .user-meta{flex-direction:column;gap:.125rem;display:flex}.users-page .user-name{color:var(--text-primary);font-weight:600}.users-page .user-email{color:var(--text-secondary);font-size:.8125rem}.users-page .badge-role-admin{color:#9333ea;background:#9333ea1f;border:1px solid #9333ea40;border-radius:6px;align-items:center;gap:.25rem;padding:.25rem .5rem;font-size:.75rem;font-weight:600;display:inline-flex}.users-page .badge-role-user{background:var(--bg-light);color:var(--text-secondary);border:1px solid var(--border);border-radius:6px;align-items:center;gap:.25rem;padding:.25rem .5rem;font-size:.75rem;font-weight:600;display:inline-flex}.users-page .plan-badge{text-transform:capitalize;border-radius:6px;align-items:center;gap:.25rem;padding:.25rem .625rem;font-size:.75rem;font-weight:700;display:inline-flex}.users-page .plan-badge.none{color:var(--text-secondary,#94a3b8);background:#94a3b81f;border:1px solid #94a3b840}.users-page .plan-badge.basic{color:#6b7280;background:#6b72801f;border:1px solid #6b728040}.users-page .plan-badge.pro{color:#3b82f6;background:#3b82f61f;border:1px solid #3b82f640}.users-page .plan-badge.plus{color:var(--primary);background:#25d36626;border:1px solid #25d3664d}.users-page .plan-badge.business{color:#d97706;background:#f59e0b26;border:1px solid #f59e0b4d}.users-page .sessions-quota{flex-direction:column;gap:.375rem;min-width:140px;display:flex}.users-page .sessions-quota-text{color:var(--text-primary);font-size:.8125rem;font-weight:600}.users-page .sessions-progress-track{background:var(--bg-light);border-radius:999px;width:100%;height:6px;overflow:hidden}.users-page .sessions-progress-fill{background:var(--primary);border-radius:999px;height:100%;transition:width .3s}.users-page .sessions-progress-fill.full{background:#f59e0b}.users-page .user-actions{align-items:center;gap:.5rem;display:flex}.users-page .btn-action-icon,.users-page .user-action-btn{border:1px solid var(--border);background:var(--bg-white);width:32px;min-width:32px;height:32px;min-height:32px;color:var(--text-primary);cursor:pointer;box-sizing:border-box;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s;display:inline-flex;padding:0!important}.users-page .btn-action-icon svg,.users-page .user-action-btn svg{stroke:currentColor;flex-shrink:0;width:16px;height:16px;display:block}.users-page .btn-action-icon:hover:not(:disabled),.users-page .user-action-btn:hover:not(:disabled){background:var(--bg-light);color:var(--primary);border-color:var(--primary)}.users-page .btn-action-icon.danger,.users-page .user-action-btn.danger{color:var(--error-text,#ef4444)}.users-page .btn-action-icon.danger:hover:not(:disabled),.users-page .user-action-btn.danger:hover:not(:disabled){color:#ef4444;background:#ef444426;border-color:#ef4444}.users-page .btn-action-icon:disabled,.users-page .user-action-btn:disabled{opacity:.35;cursor:not-allowed;color:var(--text-muted)}.users-page .users-empty{text-align:center;color:var(--text-secondary);padding:3rem;font-size:.9375rem}.users-page .plan-options-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;margin:1.25rem 0;display:grid}.users-page .plan-option-card{border:2px solid var(--border);background:var(--bg-white);cursor:pointer;border-radius:10px;flex-direction:column;gap:.375rem;padding:1rem;transition:all .2s;display:flex}.users-page .plan-option-card:hover{border-color:var(--primary);background:#25d36608}.users-page .plan-option-card.selected{border-color:var(--primary);background:#25d36614}.users-page .plan-option-title{text-transform:capitalize;color:var(--text-primary);justify-content:space-between;align-items:center;font-weight:700;display:flex}.users-page .plan-option-limit{color:var(--text-secondary);font-size:.8125rem}.users-page .password-input-group{align-items:center;margin:1rem 0;display:flex;position:relative}.users-page .password-input-group input{border:1px solid var(--border);background:var(--bg-white);width:100%;color:var(--text-primary);border-radius:8px;outline:none;padding:.625rem 2.5rem .625rem .875rem;font-size:.875rem}.users-page .password-toggle-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;align-items:center;padding:0;display:flex;position:absolute;right:.75rem}.users-page .user-plan-cell{flex-direction:column;align-items:flex-start;gap:.35rem;display:flex}.users-page .user-plan-tags{flex-wrap:wrap;align-items:center;gap:.25rem;display:flex}.users-page .sub-tag{text-transform:uppercase;letter-spacing:.025em;border-radius:4px;padding:.125rem .375rem;font-size:.6875rem;font-weight:600;line-height:1.2}.users-page .sub-tag.interval{background:var(--bg-light);color:var(--text-secondary);border:1px solid var(--border)}.users-page .sub-tag.trialing{color:#b45309;background:#f59e0b1f;border:1px solid #f59e0b40}.users-page .sub-tag.active{color:#059669;background:#25d3661f;border:1px solid #25d36640}.users-page .sub-tag.expired{color:#dc2626;background:#ef44441f;border:1px solid #ef444440}.users-page .sub-tag.cancel{color:#ea580c;background:#f973161f;border:1px solid #f9731640}.users-page .change-plan-modal-body{flex-direction:column;gap:1.25rem;display:flex}.users-page .modal-field-section{flex-direction:column;gap:.5rem;display:flex}.users-page .modal-section-header{flex-direction:column;gap:.125rem;display:flex}.users-page .modal-field-label{color:var(--text-primary);font-size:.875rem;font-weight:600}.users-page .modal-field-hint{color:var(--text-secondary);font-size:.75rem}.users-page .interval-toggle-container{background:var(--bg-light);border:1px solid var(--border);border-radius:10px;grid-template-columns:1fr 1fr;gap:.5rem;padding:.25rem;display:grid}.users-page .interval-toggle-btn{color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;min-height:42px;padding:.625rem .875rem;font-size:.8125rem;font-weight:600;transition:all .2s;display:flex}.users-page .interval-toggle-btn:hover{color:var(--text-primary)}.users-page .interval-toggle-btn.active{background:var(--bg-white);color:var(--primary);box-shadow:var(--shadow-sm)}.users-page .status-toggle-container{grid-template-columns:repeat(2,1fr);gap:.5rem;display:grid}.users-page .plan-clear-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;margin-top:.5rem;padding:0;font-size:.8125rem;text-decoration:underline;transition:color .15s;display:inline-block}.users-page .plan-clear-btn:hover{color:#ef4444}.users-page .quota-impact-box{background:var(--bg-light);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:.5rem;padding:.875rem 1rem;display:flex}.users-page .quota-impact-box.warning{background:#f59e0b0d;border-color:#f59e0b66}.users-page .quota-impact-header{color:var(--text-primary);justify-content:space-between;align-items:center;font-size:.8125rem;display:flex}.users-page .quota-impact-alert{color:#b45309;align-items:flex-start;gap:.5rem;font-size:.75rem;line-height:1.4;display:flex}.users-page .quota-impact-alert svg{flex-shrink:0;margin-top:2px}.users-page .admin-form{flex-direction:column;gap:1.125rem;display:flex}.users-page .admin-form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.users-page .admin-form-group{flex-direction:column;gap:.375rem;display:flex}.users-page .admin-form-group label{color:var(--text-primary);font-size:.8125rem;font-weight:600}.users-page .admin-form-group input,.users-page .admin-form-group select{border:1px solid var(--border);background:var(--bg-white);width:100%;color:var(--text-primary);box-sizing:border-box;border-radius:8px;outline:none;padding:.625rem .875rem;font-size:.875rem}.users-page .admin-form-group input:focus,.users-page .admin-form-group select:focus{border-color:var(--primary);box-shadow:0 0 0 2px #25d36626}.users-page .admin-form-group .hint{color:var(--text-secondary);font-size:.75rem}.users-page .admin-checkbox-group{cursor:pointer;color:var(--text-primary);-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;font-size:.875rem;display:flex}.users-page .admin-checkbox-group input[type=checkbox]{cursor:pointer;width:1.1rem;height:1.1rem;accent-color:var(--primary)}@media (width<=768px){.users-page{padding:1rem}.users-page .users-controls{flex-direction:column;align-items:stretch;gap:.75rem}.users-page .users-search-box{width:100%;min-width:0;max-width:none}.users-page .users-filters{flex-direction:column;align-items:stretch;gap:.75rem;width:100%}.users-page .users-filters .filter-group,.users-page .users-filters select{box-sizing:border-box;width:100%;display:flex}.users-page .users-table{min-width:700px}}@media (width<=480px){.users-page{padding:.75rem}.users-page .users-stats-grid{grid-template-columns:1fr}}.profile-page{box-sizing:border-box;width:100%;padding:2rem}.profile-page .page-header{margin-bottom:2rem}.profile-page.loading{justify-content:center;align-items:center;min-height:60vh;display:flex}.profile-page .profile-loader{color:var(--text-secondary);flex-direction:column;align-items:center;gap:1rem;display:flex}.profile-page .profile-overview-card{background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius,12px);box-shadow:var(--shadow-sm);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;margin-bottom:2rem;padding:1.5rem 2rem;display:flex;position:relative;overflow:hidden}.profile-page .profile-avatar-wrap{align-items:center;gap:1.25rem;min-width:0;display:flex}.profile-page .profile-avatar{border:2px solid var(--primary);width:64px;height:64px;color:var(--primary);background:linear-gradient(135deg,#22d3ee33 0%,#6366f133 100%);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex;overflow:hidden}.profile-page .profile-avatar-img{object-fit:cover;border-radius:50%;width:100%;height:100%}.profile-page .profile-avatar-picker-group{margin-bottom:0}.profile-page .profile-avatar-selector{align-items:center;gap:1rem;margin-top:.25rem;display:flex}.profile-page .profile-avatar-preview{border:2px solid var(--border);background:var(--bg-surface,#ffffff0d);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;display:flex;overflow:hidden}.profile-page .profile-avatar-preview-img{object-fit:cover;width:100%;height:100%}.profile-page .profile-avatar-placeholder{color:var(--text-secondary)}.profile-page .profile-avatar-actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.profile-page .profile-avatar-upload-btn{align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;display:inline-flex}.profile-page .profile-avatar-remove-btn{color:var(--danger,#ef4444);cursor:pointer;background:0 0;border:none;padding:.5rem;font-size:.875rem}.profile-page .profile-avatar-remove-btn:hover{text-decoration:underline}.profile-page .profile-identity{flex-direction:column;gap:.35rem;min-width:0;display:flex}.profile-page .profile-name-row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.profile-page .profile-display-name{color:var(--text-primary);letter-spacing:-.02em;margin:0;font-size:1.375rem;font-weight:700}.profile-page .profile-role-badge,.profile-page .profile-plan-badge{letter-spacing:.03em;text-transform:uppercase;border-radius:9999px;align-items:center;gap:.35rem;padding:.25rem .65rem;font-size:.75rem;font-weight:600;display:inline-flex}.profile-page .profile-role-badge{color:#818cf8;background:#6366f126;border:1px solid #6366f14d}.profile-page .profile-plan-badge{background:var(--primary-soft);color:var(--primary);border:1px solid #22d3ee4d}.profile-page .profile-email-meta{color:var(--text-secondary);align-items:center;gap:.5rem;margin:0;font-size:.875rem;display:flex}.profile-page .profile-quota-summary{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:.5rem;min-width:260px;padding:.875rem 1.125rem;display:flex}.profile-page .quota-summary-header{justify-content:space-between;align-items:center;font-size:.8125rem;display:flex}.profile-page .quota-label{color:var(--text-secondary);align-items:center;gap:.4rem;display:flex}.profile-page .quota-numbers{color:var(--text-secondary)}.profile-page .quota-numbers strong{color:var(--primary);font-size:.9375rem}.profile-page .quota-progress-track{background:var(--border);border-radius:9999px;width:100%;height:6px;overflow:hidden}.profile-page .quota-progress-fill{background:linear-gradient(90deg, var(--primary) 0%, #38bdf8 100%);border-radius:9999px;height:100%;transition:width .3s}.profile-page .profile-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-bottom:2rem;display:grid}@media (width<=900px){.profile-page .profile-grid{grid-template-columns:1fr}}.profile-page .profile-card{background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius,12px);box-shadow:var(--shadow-sm);flex-direction:column;padding:1.75rem;display:flex}.profile-page .profile-card-header{border-bottom:1px solid var(--border);align-items:flex-start;gap:1rem;min-width:0;margin-bottom:1.5rem;padding-bottom:1rem;display:flex}.profile-page .profile-card-icon{background:var(--primary-soft);width:40px;height:40px;color:var(--primary);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.profile-page .profile-card-header h3{color:var(--text-primary);margin:0 0 .25rem;font-size:1.125rem;font-weight:700}.profile-page .profile-card-desc{color:var(--text-secondary);margin:0;font-size:.8125rem}.profile-page .profile-form{flex-direction:column;flex:1;gap:1.25rem;display:flex}.profile-page .form-group{flex-direction:column;gap:.4rem;display:flex}.profile-page .form-group label{color:var(--text-primary);font-size:.875rem;font-weight:600}.profile-page .input-with-icon{align-items:center;display:flex;position:relative}.profile-page .input-icon{color:var(--text-muted);pointer-events:none;position:absolute;left:.875rem}.profile-page .input-with-icon input{background:var(--bg-card);border:1px solid var(--border);width:100%;color:var(--text-primary);box-sizing:border-box;border-radius:8px;padding:.75rem 1rem .75rem 2.5rem;font-family:inherit;font-size:.9375rem;transition:border-color .2s,box-shadow .2s}.profile-page .input-with-icon input:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #22d3ee26}.profile-page .input-with-icon input:read-only{background:var(--bg-light);color:var(--text-muted);cursor:default;border-color:var(--border);box-shadow:none}.profile-page .password-toggle-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:.4rem;display:flex;position:absolute;right:.5rem}.profile-page .password-toggle-btn:hover{color:var(--text-primary)}.profile-page .field-hint{color:var(--text-muted);margin-top:.15rem;font-size:.75rem}.profile-page .profile-textarea{background:var(--bg-card);border:1px solid var(--border);width:100%;color:var(--text-primary);box-sizing:border-box;resize:vertical;border-radius:8px;min-height:100px;padding:.75rem 1rem;font-family:inherit;font-size:.9375rem;line-height:1.5;transition:border-color .2s,box-shadow .2s}.profile-page .profile-textarea:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #22d3ee26}.profile-page .profile-billing-address-card{grid-column:1/-1}.profile-page .form-actions{justify-content:flex-end;margin-top:auto;padding-top:.75rem;display:flex}.profile-page .profile-plans-section{background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius,12px);box-shadow:var(--shadow-sm);padding:2rem}.profile-page .profile-plans-header{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1.5rem;margin-bottom:2rem;padding-bottom:1.25rem;display:flex}.profile-page .plans-title-group{align-items:flex-start;gap:1rem;min-width:0;display:flex}.profile-page .plans-title-group h3{color:var(--text-primary);margin:0 0 .25rem;font-size:1.25rem;font-weight:700}.profile-page .current-plan-indicator{flex-direction:column;align-items:flex-end;display:flex}.profile-page .indicator-eyebrow{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:.75rem}.profile-page .indicator-name{color:var(--primary);letter-spacing:.02em;font-size:1.125rem;font-weight:700}.profile-page .plans-grid{grid-template-columns:repeat(4,1fr);gap:1.5rem;width:100%;display:grid}@media (width<=1100px){.profile-page .plans-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.profile-page .plans-grid{grid-template-columns:1fr}.profile-page .plan-blurb{min-height:auto}}.profile-page .plan-card{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;flex-direction:column;transition:transform .2s,border-color .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden}.profile-page .plan-card:hover{border-color:#22d3ee66;transform:translateY(-2px)}.profile-page .plan-card.active{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary), 0 8px 20px -4px #22d3ee26;background:linear-gradient(180deg, #22d3ee0a 0%, var(--bg-card) 100%)}.profile-page .plan-card.popular{border-color:#38bdf880}.profile-page .plan-badge-popular{color:#fff;text-transform:uppercase;letter-spacing:.04em;background:linear-gradient(135deg,#0284c7 0%,#2563eb 100%);border-bottom-right-radius:6px;border-bottom-left-radius:6px;align-items:center;gap:.3rem;padding:.2rem .6rem;font-size:.6875rem;font-weight:700;display:flex;position:absolute;top:0;right:1rem}.profile-page .plan-card-body{flex-direction:column;flex:1;gap:1rem;padding:1.5rem 1.25rem;display:flex}.profile-page .plan-card-meta{flex-direction:column;gap:.35rem;display:flex}.profile-page .plan-title{color:var(--text-primary);margin:0;font-size:1.125rem;font-weight:700}.profile-page .plan-blurb{color:var(--text-secondary);min-height:2.8em;margin:0;font-size:.8125rem;line-height:1.4}.profile-page .plan-pricing{align-items:baseline;gap:.15rem;margin-top:.25rem;display:flex}.profile-page .price-currency{color:var(--text-primary);font-size:1.125rem;font-weight:600}.profile-page .price-amount{color:var(--text-primary);font-size:2rem;font-weight:800;line-height:1}.profile-page .price-period{color:var(--text-secondary);margin-left:.25rem;font-size:.8125rem}.profile-page .plan-sessions-pill{color:var(--primary);background:#22d3ee1a;border-radius:6px;align-items:center;gap:.5rem;padding:.4rem .75rem;font-size:.8125rem;display:inline-flex}.profile-page .plan-sessions-pill strong{font-weight:700}.profile-page .plan-features-list{flex-direction:column;gap:.6rem;margin:.5rem 0 0;padding:0;list-style:none;display:flex}.profile-page .plan-feature-item{color:var(--text-secondary);align-items:flex-start;gap:.5rem;font-size:.8125rem;line-height:1.35;display:flex}.profile-page .feature-check{color:var(--primary);flex-shrink:0;margin-top:.1rem}.profile-page .plan-card-footer{border-top:1px solid var(--border);background:var(--bg-light);padding:1rem 1.25rem}.profile-page .btn-plan{cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;width:100%;padding:.65rem 1rem;font-size:.875rem;font-weight:600;text-decoration:none;transition:all .2s;display:flex}.profile-page .btn-plan.current{color:var(--primary);cursor:default;background:#22d3ee26}.profile-page .btn-plan.upgrade{background:var(--primary);color:var(--btn-primary-text,#0f172a)}.profile-page .btn-plan.upgrade:hover:not(:disabled){background:var(--primary-hover,#06b6d4);transform:translateY(-1px)}.profile-page .btn-plan.upgrade:disabled{opacity:.6;cursor:not-allowed}.profile-page .btn-plan.manage{color:var(--primary);cursor:pointer;background:#22d3ee26;border:1px solid #22d3ee59}.profile-page .btn-plan.manage:hover:not(:disabled){border-color:var(--primary);background:#22d3ee40;transform:translateY(-1px)}.profile-page .btn-plan.manage:disabled{opacity:.6;cursor:not-allowed}.profile-page .subscription-activation-banner{border-radius:var(--radius,10px);justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;padding:1rem 1.25rem;animation:.3s ease-out slideDown;display:flex}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.profile-page .subscription-activation-banner.verifying{background:#22d3ee1a;border:1px solid #22d3ee59;box-shadow:0 0 15px #22d3ee1a}.profile-page .subscription-activation-banner.success{background:#10b9811f;border:1px solid #10b98159;box-shadow:0 0 20px #10b98126}.profile-page .subscription-activation-banner.error{background:#f59e0b1f;border:1px solid #f59e0b59}.profile-page .activation-banner-content{flex:1;align-items:center;gap:.85rem;display:flex}.profile-page .activation-banner-spinner{color:var(--primary,#22d3ee);flex-shrink:0}.profile-page .activation-banner-icon-success{color:#34d399;flex-shrink:0}.profile-page .activation-banner-icon-error{color:#fbbf24;flex-shrink:0}.profile-page .activation-banner-text{flex-direction:column;gap:.15rem;display:flex}.profile-page .activation-banner-title{color:var(--text-primary,#f8fafc);font-size:.9375rem;font-weight:700}.profile-page .activation-banner-msg{color:var(--text-secondary,#94a3b8);margin:0;font-size:.8125rem}.profile-page .activation-banner-close{color:var(--text-secondary,#94a3b8);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:.35rem;transition:all .2s;display:flex}.profile-page .activation-banner-close:hover{color:var(--text-primary,#f8fafc);background:#ffffff14}@media (width<=768px){.profile-page{padding:1rem}.profile-page .page-header{margin-bottom:1.25rem}.profile-page .profile-overview-card{flex-direction:column;align-items:stretch;gap:1.25rem;margin-bottom:1.25rem;padding:1.25rem}.profile-page .profile-avatar-wrap{gap:1rem}.profile-page .profile-quota-summary{box-sizing:border-box;width:100%;min-width:0;padding:.875rem 1rem}.profile-page .profile-grid{grid-template-columns:1fr;gap:1.25rem;margin-bottom:1.25rem}.profile-page .profile-card{padding:1.25rem}.profile-page .profile-card-header{gap:.75rem;margin-bottom:1.25rem;padding-bottom:.875rem}.profile-page .input-with-icon input{padding:.7rem .875rem .7rem 2.35rem;font-size:1rem}.profile-page .form-actions{width:100%}.profile-page .form-actions .btn-primary{justify-content:center;width:100%}.profile-page .profile-plans-section{padding:1.25rem}.profile-page .profile-plans-header{flex-direction:column;align-items:stretch;gap:1rem;margin-bottom:1.25rem;padding-bottom:1rem}.profile-page .current-plan-indicator{background:var(--bg-card);border:1px solid var(--border);box-sizing:border-box;border-radius:8px;flex-direction:row;justify-content:space-between;align-items:center;width:100%;padding:.65rem .875rem}}@media (width<=480px){.profile-page{padding:.75rem}.profile-page .profile-overview-card{gap:1rem;padding:1rem}.profile-page .profile-avatar{width:52px;height:52px}.profile-page .profile-avatar svg{width:26px;height:26px}.profile-page .profile-display-name{word-break:break-word;font-size:1.15rem}.profile-page .profile-email-meta{word-break:break-all;font-size:.8125rem}.profile-page .profile-name-row{gap:.5rem}.profile-page .profile-role-badge,.profile-page .profile-plan-badge{padding:.2rem .5rem;font-size:.6875rem}.profile-page .profile-quota-summary{padding:.75rem .875rem}.profile-page .profile-grid{gap:1rem;margin-bottom:1rem}.profile-page .profile-card{padding:1rem}.profile-page .profile-card-icon{width:36px;height:36px}.profile-page .profile-card-header h3{font-size:1.05rem}.profile-page .profile-card-desc{font-size:.775rem;line-height:1.35}.profile-page .password-toggle-btn{padding:.5rem;right:.35rem}.profile-page .profile-plans-section{padding:1rem}.profile-page .plans-title-group{gap:.75rem}.profile-page .plans-title-group h3{font-size:1.1rem}.profile-page .plans-grid{gap:1rem}.profile-page .plan-card-body{gap:.875rem;padding:1.125rem 1rem}.profile-page .price-amount{font-size:1.75rem}.profile-page .plan-sessions-pill{padding:.35rem .65rem;font-size:.775rem}.profile-page .plan-features-list{gap:.5rem}.profile-page .plan-feature-item{font-size:.775rem}.profile-page .plan-card-footer{padding:.875rem 1rem}.profile-page .btn-plan{min-height:42px;padding:.7rem 1rem}}.subscription-portal-page{max-width:1100px;margin:0 auto;padding-bottom:3rem}.subscription-portal-page .portal-summary-card{background:var(--bg-card,#1e293b);border:1px solid var(--border,#ffffff1a);border-radius:var(--radius,12px);justify-content:space-between;align-items:center;gap:2rem;margin-bottom:2rem;padding:1.75rem 2rem;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 20px -2px #00000040}.subscription-portal-page .portal-summary-card:before{content:"";background:linear-gradient(180deg, var(--primary,#22d3ee) 0%, #38bdf8 100%);width:4px;height:100%;position:absolute;top:0;left:0}.subscription-portal-page .portal-summary-left{flex:1;align-items:flex-start;gap:1.25rem;display:flex}.subscription-portal-page .portal-summary-icon{width:48px;height:48px;color:var(--primary,#22d3ee);background:#22d3ee1a;border:1px solid #22d3ee40;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex;box-shadow:0 2px 8px #22d3ee26}.subscription-portal-page .portal-summary-details{flex-direction:column;gap:.5rem;display:flex}.subscription-portal-page .portal-summary-title-row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.subscription-portal-page .portal-summary-title-row h3{color:var(--text-primary,#f8fafc);letter-spacing:-.01em;margin:0;font-size:1.25rem;font-weight:700}.subscription-portal-page .portal-plan-tag{text-transform:uppercase;letter-spacing:.05em;border-radius:6px;padding:.25rem .65rem;font-size:.75rem;font-weight:700}.subscription-portal-page .portal-plan-tag.basic{color:#94a3b8;background:#6b72801f;border:1px solid #6b728040}.subscription-portal-page .portal-plan-tag.pro{color:#60a5fa;background:#3b82f61f;border:1px solid #3b82f640}.subscription-portal-page .portal-plan-tag.plus{color:var(--primary,#22d3ee);background:#25d36626;border:1px solid #25d3664d}.subscription-portal-page .portal-plan-tag.business{color:#fbbf24;background:#f59e0b26;border:1px solid #f59e0b4d}.subscription-portal-page .portal-plan-tag.none{color:var(--text-secondary,#94a3b8);background:#94a3b81f;border:1px solid #94a3b840}.subscription-portal-page .portal-status-chip{border-radius:9999px;align-items:center;gap:.35rem;padding:.25rem .625rem;font-size:.75rem;font-weight:600;display:inline-flex}.subscription-portal-page .portal-status-chip.active{color:#34d399;background:#10b98126;border:1px solid #10b9814d}.subscription-portal-page .portal-status-chip.cancelling{color:#fbbf24;background:#f59e0b26;border:1px solid #f59e0b4d}.subscription-portal-page .portal-status-chip.trialing{color:#60a5fa;background:#3b82f626;border:1px solid #3b82f64d}.subscription-portal-page .portal-status-chip.expired{color:#f87171;background:#ef444426;border:1px solid #ef44444d}.subscription-portal-page .portal-summary-desc{color:var(--text-secondary,#94a3b8);max-width:650px;margin:0;font-size:.875rem;line-height:1.55}.subscription-portal-page .portal-summary-actions{flex-shrink:0;align-items:center;gap:.75rem;display:flex}.subscription-portal-page .btn-portal-primary{background:var(--primary,#22d3ee);color:var(--btn-primary-text,#0f172a);border:1px solid var(--primary,#22d3ee);cursor:pointer;border-radius:8px;align-items:center;gap:.5rem;padding:.65rem 1.25rem;font-size:.875rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex;box-shadow:0 2px 8px #22d3ee40}.subscription-portal-page .btn-portal-primary:hover:not(:disabled){background:var(--primary-hover,#06b6d4);transform:translateY(-1px);box-shadow:0 4px 14px #22d3ee59}.subscription-portal-page .btn-portal-danger{color:#f87171;cursor:pointer;background:#ef444414;border:1px solid #ef44444d;border-radius:8px;align-items:center;gap:.5rem;padding:.65rem 1.25rem;font-size:.875rem;font-weight:600;transition:all .2s;display:inline-flex}.subscription-portal-page .btn-portal-danger:hover:not(:disabled){color:#fca5a5;background:#ef444429;border-color:#ef4444;transform:translateY(-1px)}.subscription-portal-page .portal-history-section{background:var(--bg-card,#1e293b);border:1px solid var(--border,#ffffff1a);border-radius:var(--radius,12px);padding:1.75rem 2rem;box-shadow:0 4px 20px -2px #00000040}.subscription-portal-page .portal-section-header{border-bottom:1px solid var(--border,#ffffff1a);justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;display:flex}.subscription-portal-page .portal-section-title{color:var(--text-primary,#f8fafc);align-items:center;gap:.625rem;display:flex}.subscription-portal-page .portal-section-title h3{letter-spacing:-.01em;margin:0;font-size:1.125rem;font-weight:700}.subscription-portal-page .btn-portal-refresh{background:var(--bg-light,#ffffff0d);border:1px solid var(--border,#ffffff1a);color:var(--text-secondary,#94a3b8);cursor:pointer;border-radius:6px;align-items:center;gap:.45rem;padding:.45rem .85rem;font-size:.8125rem;font-weight:500;transition:all .2s;display:inline-flex}.subscription-portal-page .btn-portal-refresh:hover:not(:disabled){color:var(--text-primary,#f8fafc);background:#ffffff14}.subscription-portal-page .portal-table-container{border:1px solid var(--border,#ffffff14);border-radius:8px;overflow-x:auto}.subscription-portal-page .portal-table{border-collapse:collapse;text-align:left;width:100%;font-size:.875rem}.subscription-portal-page .portal-table thead th{background:var(--bg-light,#ffffff08);color:var(--text-secondary,#94a3b8);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--border,#ffffff1a);padding:.875rem 1.25rem;font-size:.75rem;font-weight:700}.subscription-portal-page .portal-table tbody td{border-bottom:1px solid var(--border,#ffffff12);vertical-align:middle;padding:1.1rem 1.25rem}.subscription-portal-page .portal-table tbody tr:last-child td{border-bottom:none}.subscription-portal-page .portal-table tbody tr{transition:background-color .15s}.subscription-portal-page .portal-table tbody tr:hover{background:#ffffff08}.subscription-portal-page .portal-date-cell{color:var(--text-secondary,#94a3b8);white-space:nowrap;font-weight:500}.subscription-portal-page .portal-order-cell{flex-direction:column;gap:.25rem;display:flex}.subscription-portal-page .portal-order-id{color:var(--text-primary,#f8fafc);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.8125rem;font-weight:600}.subscription-portal-page .portal-payment-id{color:var(--text-muted,#64748b);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.75rem}.subscription-portal-page .portal-plan-cell{align-items:center;gap:.5rem;display:flex}.subscription-portal-page .portal-badge-plan{letter-spacing:.04em;border-radius:4px;align-items:center;padding:.2rem .55rem;font-size:.6875rem;font-weight:700;display:inline-flex}.subscription-portal-page .portal-badge-plan.basic{color:#94a3b8;background:#6b72801f;border:1px solid #6b728040}.subscription-portal-page .portal-badge-plan.pro{color:#60a5fa;background:#3b82f61f;border:1px solid #3b82f640}.subscription-portal-page .portal-badge-plan.plus{color:var(--primary,#22d3ee);background:#25d36626;border:1px solid #25d3664d}.subscription-portal-page .portal-badge-plan.business{color:#fbbf24;background:#f59e0b26;border:1px solid #f59e0b4d}.subscription-portal-page .portal-interval-text{color:var(--text-secondary,#94a3b8);font-size:.8125rem;font-weight:500}.subscription-portal-page .portal-amount-cell{color:var(--text-primary,#f8fafc);white-space:nowrap;font-weight:700}.subscription-portal-page .portal-badge{white-space:nowrap;border-radius:9999px;align-items:center;gap:.35rem;padding:.25rem .6rem;font-size:.75rem;font-weight:600;display:inline-flex}.subscription-portal-page .portal-badge.badge-paid{color:#34d399;background:#10b9811f;border:1px solid #10b98140}.subscription-portal-page .portal-badge.badge-pending{color:#fbbf24;background:#f59e0b1f;border:1px solid #f59e0b40}.subscription-portal-page .portal-badge.badge-failed{color:#f87171;background:#ef44441f;border:1px solid #ef444440}.subscription-portal-page .portal-badge.badge-default{color:#94a3b8;background:#94a3b81f;border:1px solid #94a3b840}.subscription-portal-page .portal-row-actions{align-items:center;gap:.5rem;display:inline-flex}.subscription-portal-page .btn-portal-invoice{background:var(--bg-light,#ffffff0d);border:1px solid var(--border,#ffffff2e);color:var(--text-primary,#f8fafc);border-radius:6px;align-items:center;gap:.4rem;padding:.4rem .85rem;font-size:.75rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.subscription-portal-page .btn-portal-invoice:hover{border-color:var(--primary,#22d3ee);color:var(--primary,#22d3ee);background:#22d3ee26;transform:translateY(-1px)}.subscription-portal-page .btn-portal-checkout{background:var(--primary,#22d3ee);color:var(--btn-primary-text,#0f172a);border:1px solid var(--primary,#22d3ee);border-radius:6px;align-items:center;gap:.4rem;padding:.4rem .85rem;font-size:.75rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.subscription-portal-page .btn-portal-checkout:hover{background:var(--primary-hover,#06b6d4);transform:translateY(-1px)}.subscription-portal-page .portal-loading-container,.subscription-portal-page .portal-empty-state{text-align:center;color:var(--text-secondary,#94a3b8);flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:3.5rem 1.5rem;display:flex}.subscription-portal-page .portal-empty-state svg{color:var(--text-muted,#64748b)}.subscription-portal-page .portal-empty-state h4{color:var(--text-primary,#f8fafc);margin:0;font-size:1.125rem;font-weight:600}.subscription-portal-page .portal-empty-state p{max-width:440px;margin:0;font-size:.875rem}@media (width<=768px){.subscription-portal-page .portal-summary-card{flex-direction:column;align-items:stretch;gap:1.25rem;padding:1.25rem}.subscription-portal-page .portal-summary-actions{width:100%}.subscription-portal-page .portal-summary-actions button,.subscription-portal-page .portal-summary-actions a{justify-content:center;width:100%}.subscription-portal-page .portal-history-section{padding:1.25rem}}.admin-dashboard-page{box-sizing:border-box;width:100%;max-width:100%;padding:2rem;overflow-x:hidden}@media (width<=768px){.admin-dashboard-page{padding:1rem}}@media (width<=480px){.admin-dashboard-page{padding:.75rem}}.admin-stats-grid{grid-template-columns:repeat(4,1fr);gap:1.5rem;width:100%;margin-bottom:2rem;display:grid}@media (width<=1024px){.admin-stats-grid{grid-template-columns:repeat(2,1fr);gap:1rem}}@media (width<=480px){.admin-stats-grid{grid-template-columns:1fr}}.admin-stat-card{background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius,12px);box-shadow:var(--shadow-sm);flex-direction:column;gap:.5rem;padding:1.5rem;transition:transform .2s,box-shadow .2s;display:flex}.admin-stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.admin-stat-header{justify-content:space-between;align-items:center;display:flex}.admin-stat-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.025em;font-size:.8125rem;font-weight:600}.admin-stat-icon{border-radius:10px;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.admin-stat-icon.purple{color:#9333ea;background:#9333ea1f}.admin-stat-icon.green{color:var(--primary);background:#25d3661f}.admin-stat-icon.amber{color:#f59e0b;background:#f59e0b1f}.admin-stat-icon.blue{color:#3b82f6;background:#3b82f61f}.admin-stat-value{color:var(--text-primary);font-size:1.75rem;font-weight:700;line-height:1.2}.admin-stat-meta{color:var(--text-muted);font-size:.8125rem}.admin-meta-highlight{color:var(--primary);font-weight:600}.admin-meta-success{color:var(--success,#10b981);font-weight:600}.admin-meta-danger{color:var(--danger,#ef4444);font-weight:600}.admin-panels-row{box-sizing:border-box;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;width:100%;max-width:100%;display:grid}@media (width<=992px){.admin-panels-row{grid-template-columns:minmax(0,1fr);gap:1.25rem}}.admin-panel-card{background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius,12px);box-shadow:var(--shadow-sm);box-sizing:border-box;flex-direction:column;gap:1.25rem;width:100%;min-width:0;max-width:100%;padding:1.5rem;display:flex;overflow:hidden}.admin-panel-card-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;min-width:0;display:flex}.admin-panel-card-title{color:var(--text-primary);word-break:break-word;align-items:center;gap:.6rem;min-width:0;margin:0;font-size:1.05rem;font-weight:700;display:flex}.admin-title-icon{color:var(--primary);flex-shrink:0}.admin-subsystems-list{box-sizing:border-box;flex-direction:column;gap:.75rem;width:100%;min-width:0;max-width:100%;display:flex}.admin-subsystem-row{border-radius:var(--radius,8px);background:var(--bg-light);border:1px solid var(--border);box-sizing:border-box;justify-content:space-between;align-items:center;gap:.75rem;width:100%;min-width:0;max-width:100%;padding:.85rem 1rem;display:flex}.admin-subsystem-info{flex:auto;align-items:center;gap:.75rem;min-width:0;display:flex;overflow:hidden}.admin-subsystem-info>div{flex:auto;min-width:0;overflow:hidden}.subsystem-icon{color:var(--text-secondary);flex-shrink:0}.subsystem-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.875rem;font-weight:600;overflow:hidden}.subsystem-meta{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:.75rem;overflow:hidden}.admin-status-badge{text-transform:uppercase;letter-spacing:.025em;white-space:nowrap;border-radius:9999px;flex-shrink:0;padding:.3rem .65rem;font-size:.6875rem;font-weight:700}.admin-status-badge.connected{color:var(--primary-text);background:#25d3661a}.admin-status-badge.disconnected,.admin-status-badge.neutral{background:var(--bg-light);color:var(--text-muted)}.admin-tiles-grid{box-sizing:border-box;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;width:100%;min-width:0;max-width:100%;display:grid}@media (width<=1200px) and (width>=993px){.admin-tiles-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=640px){.admin-tiles-grid{grid-template-columns:minmax(0,1fr);gap:.625rem}}.admin-nav-tile{background:var(--bg-light);border:1px solid var(--border);border-radius:var(--radius,8px);text-align:left;cursor:pointer;box-sizing:border-box;align-items:center;gap:.75rem;width:100%;min-width:0;max-width:100%;padding:.85rem .9rem;transition:all .2s;display:flex;overflow:hidden}.admin-nav-tile:hover{background:var(--primary-soft);border-color:var(--primary);transform:translateY(-1px)}.tile-icon{flex-shrink:0}.tile-icon.green{color:var(--primary)}.tile-icon.purple{color:#9333ea}.tile-icon.blue{color:#3b82f6}.tile-icon.amber{color:#f59e0b}.tile-icon.slate{color:var(--text-secondary)}.tile-text{flex:auto;min-width:0;overflow:hidden}.tile-title{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.875rem;font-weight:600;overflow:hidden}.tile-desc{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:.75rem;overflow:hidden}.tile-arrow{color:var(--text-muted);flex-shrink:0;transition:transform .2s}.admin-nav-tile:hover .tile-arrow{color:var(--primary-text);transform:translate(2px)}.admin-charts-section{width:100%;margin-bottom:2rem}.admin-charts-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem;width:100%;display:grid}@media (width<=960px){.admin-charts-grid{grid-template-columns:1fr;gap:1rem}}.admin-chart-card{background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius,12px);box-shadow:var(--shadow-sm);box-sizing:border-box;flex-direction:column;gap:1rem;width:100%;min-width:0;padding:1.5rem;display:flex}.admin-chart-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.admin-chart-title{color:var(--text-primary);align-items:center;gap:.6rem;margin:0;font-size:1rem;font-weight:600;display:flex}.admin-chart-legend-badge{color:var(--text-secondary);align-items:center;gap:.35rem;font-size:.8125rem;font-weight:500;display:inline-flex}.admin-chart-body{width:100%;min-height:260px}.admin-chart-empty{min-height:260px;color:var(--text-muted);background:var(--bg-light);border-radius:var(--radius,8px);border:1px dashed var(--border);justify-content:center;align-items:center;font-size:.875rem;display:flex}.period-toggle{background:var(--bg-light);border:1px solid var(--border);border-radius:8px;align-items:center;gap:2px;padding:2px;display:flex}.period-tab{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.35rem .65rem;font-size:.75rem;font-weight:600;transition:all .15s}.period-tab:hover{color:var(--text-primary)}.period-tab.active{background:var(--bg-white);color:var(--primary);box-shadow:var(--shadow-sm)}@media (width<=768px){.admin-panel-card{gap:1rem;padding:1.25rem 1rem}.admin-subsystem-row{gap:.6rem;padding:.75rem .85rem}.admin-nav-tile{gap:.65rem;padding:.75rem .85rem}}@media (width<=480px){.admin-panel-card{border-radius:10px;gap:.875rem;padding:1rem .75rem}.admin-panel-card-title{font-size:.95rem}.admin-subsystems-list{gap:.5rem}.admin-subsystem-row{gap:.5rem;padding:.65rem .75rem}.admin-subsystem-info{gap:.5rem}.subsystem-name{font-size:.8125rem}.subsystem-meta{font-size:.6875rem}.admin-status-badge{padding:.2rem .45rem;font-size:.625rem}.admin-tiles-grid{grid-template-columns:minmax(0,1fr);gap:.5rem}.admin-nav-tile{gap:.55rem;padding:.65rem .75rem}.tile-title{font-size:.8125rem}.tile-desc{font-size:.6875rem}}.table-responsive{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.users-filter-box{background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius,8px);align-items:center;gap:.5rem;height:40px;padding:0 .75rem;display:flex}.users-filter-select{color:var(--text-primary);cursor:pointer;background:0 0;border:none;outline:none;font-size:.875rem}.session-name-cell{flex-direction:column;gap:.25rem;display:flex}.session-name-text{color:var(--text-primary);font-weight:600}.session-id-pill{background:var(--bg-light);border:1px solid var(--border);color:var(--text-secondary);border-radius:4px;width:fit-content;padding:.15rem .4rem;font-family:monospace;font-size:.75rem}.tenant-owner-cell{flex-direction:column;gap:.25rem;display:flex}.tenant-owner-email{color:var(--text-primary);font-weight:500}.tenant-owner-tags{align-items:center;gap:.4rem;display:flex}.phone-text{color:var(--primary);font-family:monospace;font-size:.85rem;font-weight:500}.engine-state-pill{border-radius:9999px;padding:.2rem .6rem;font-size:.75rem;font-weight:600;display:inline-block}.engine-state-pill.loaded{color:var(--primary-text);background:#25d3661f}.engine-state-pill.idle{background:var(--bg-light);color:var(--text-muted)}.session-status-badge{border-radius:9999px;align-items:center;gap:.35rem;padding:.3rem .65rem;font-size:.75rem;font-weight:600;display:inline-flex}.session-status-badge.ready{color:var(--primary-text);background:#25d3661a}.session-status-badge.qr{color:#f59e0b;background:#f59e0b1a}.session-status-badge.disconnected{background:var(--bg-light);color:var(--text-muted)}.session-status-badge.error{color:var(--danger,#ef4444);background:#ef44441a}.session-status-badge.connecting{background:var(--primary-soft);color:var(--primary-text)}.users-table-empty{text-align:center;color:var(--text-muted);flex-direction:column;align-items:center;gap:.75rem;padding:3rem 1.5rem;display:flex}.text-right{text-align:right}.spin{animation:1s linear infinite spin}@media (width<=768px){.admin-sessions-page{padding:1rem}.admin-sessions-page .users-controls{flex-direction:column;align-items:stretch;gap:.75rem}.admin-sessions-page .users-search-box{width:100%;min-width:0;max-width:none}.admin-sessions-page .users-filters{flex-direction:column;align-items:stretch;gap:.75rem;width:100%}.admin-sessions-page .users-filters .filter-group,.admin-sessions-page .users-filter-box{box-sizing:border-box;width:100%;display:flex}.admin-sessions-page .users-table{min-width:680px}}@media (width<=480px){.admin-sessions-page{padding:.75rem}.admin-sessions-page .users-stats-grid{grid-template-columns:1fr}}.plugin-info-cell{flex-direction:column;gap:.25rem;display:flex}.plugin-name-row{align-items:center;gap:.5rem;display:flex}.plugin-name-text{color:var(--text-primary);font-weight:600}.plugin-desc-text{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;max-width:320px;font-size:.75rem;overflow:hidden}@media (width<=768px){.admin-plugins-page{padding:1rem}.admin-plugins-page .users-controls{flex-direction:column;align-items:stretch;gap:.75rem}.admin-plugins-page .users-search-box{width:100%;min-width:0;max-width:none}.admin-plugins-page .users-filters{flex-direction:column;align-items:stretch;gap:.75rem;width:100%}.admin-plugins-page .users-filters .filter-group,.admin-plugins-page .users-filter-box{box-sizing:border-box;width:100%;display:flex}.admin-plugins-page .users-table{min-width:680px}}@media (width<=480px){.admin-plugins-page{padding:.75rem}.admin-plugins-page .users-stats-grid{grid-template-columns:1fr}}.admin-billing-page{box-sizing:border-box;width:100%;padding:2rem}.admin-billing-page .portal-history-section{background:var(--bg-card,#1e293b);border:1px solid var(--border,#ffffff1a);border-radius:var(--radius,12px);margin-top:1rem;padding:1.75rem 2rem;box-shadow:0 4px 20px -2px #00000040}.admin-billing-page .portal-section-header{border-bottom:1px solid var(--border,#ffffff1a);justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;display:flex}.admin-billing-page .portal-section-title{color:var(--text-primary,#f8fafc);align-items:center;gap:.625rem;display:flex}.admin-billing-page .portal-section-title h3{letter-spacing:-.01em;margin:0;font-size:1.125rem;font-weight:700}.admin-billing-page .btn-portal-refresh{background:var(--bg-light,#ffffff0d);border:1px solid var(--border,#ffffff1a);color:var(--text-secondary,#94a3b8);cursor:pointer;border-radius:6px;align-items:center;gap:.45rem;padding:.45rem .85rem;font-size:.8125rem;font-weight:500;transition:all .2s;display:inline-flex}.admin-billing-page .btn-portal-refresh:hover:not(:disabled){color:var(--text-primary,#f8fafc);background:#ffffff14}.admin-billing-page .portal-table-container{border:1px solid var(--border,#ffffff14);-webkit-overflow-scrolling:touch;border-radius:8px;overflow-x:auto}.admin-billing-page .portal-table{border-collapse:collapse;text-align:left;width:100%;min-width:760px;font-size:.875rem}.admin-billing-page .portal-table thead th{background:var(--bg-light,#ffffff08);color:var(--text-secondary,#94a3b8);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--border,#ffffff1a);padding:.875rem 1.25rem;font-size:.75rem;font-weight:700}.admin-billing-page .portal-table tbody td{border-bottom:1px solid var(--border,#ffffff12);vertical-align:middle;padding:1.1rem 1.25rem}.admin-billing-page .portal-table tbody tr:last-child td{border-bottom:none}.admin-billing-page .portal-table tbody tr{transition:background-color .15s}.admin-billing-page .portal-table tbody tr:hover{background:#ffffff08}.admin-billing-page .portal-date-cell{color:var(--text-secondary,#94a3b8);white-space:nowrap;font-weight:500}.admin-billing-page .portal-customer-cell{flex-direction:column;gap:.25rem;display:flex}.admin-billing-page .portal-customer-email{color:var(--text-primary,#f8fafc);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.8125rem;font-weight:600}.admin-billing-page .portal-customer-name{color:var(--text-muted,#64748b);font-size:.75rem}.admin-billing-page .portal-order-cell{flex-direction:column;gap:.25rem;display:flex}.admin-billing-page .portal-order-id{color:var(--text-primary,#f8fafc);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.8125rem;font-weight:600}.admin-billing-page .portal-payment-id{color:var(--text-muted,#64748b);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.75rem}.admin-billing-page .portal-plan-cell{align-items:center;gap:.5rem;display:flex}.admin-billing-page .portal-badge-plan{letter-spacing:.04em;border-radius:4px;align-items:center;padding:.2rem .55rem;font-size:.6875rem;font-weight:700;display:inline-flex}.admin-billing-page .portal-badge-plan.basic{color:#94a3b8;background:#6b72801f;border:1px solid #6b728040}.admin-billing-page .portal-badge-plan.pro{color:#60a5fa;background:#3b82f61f;border:1px solid #3b82f640}.admin-billing-page .portal-badge-plan.plus{color:var(--primary,#22d3ee);background:#25d36626;border:1px solid #25d3664d}.admin-billing-page .portal-badge-plan.business{color:#fbbf24;background:#f59e0b26;border:1px solid #f59e0b4d}.admin-billing-page .portal-interval-text{color:var(--text-secondary,#94a3b8);font-size:.8125rem;font-weight:500}.admin-billing-page .portal-amount-cell{color:var(--text-primary,#f8fafc);white-space:nowrap;font-weight:700}.admin-billing-page .portal-badge{white-space:nowrap;border-radius:9999px;align-items:center;gap:.35rem;padding:.25rem .6rem;font-size:.75rem;font-weight:600;display:inline-flex}.admin-billing-page .portal-badge.badge-paid{color:#34d399;background:#10b9811f;border:1px solid #10b98140}.admin-billing-page .portal-badge.badge-pending{color:#fbbf24;background:#f59e0b1f;border:1px solid #f59e0b40}.admin-billing-page .portal-badge.badge-failed{color:#f87171;background:#ef44441f;border:1px solid #ef444440}.admin-billing-page .portal-badge.badge-default{color:#94a3b8;background:#94a3b81f;border:1px solid #94a3b840}.admin-billing-page .portal-row-actions{align-items:center;gap:.5rem;display:inline-flex}.admin-billing-page .btn-portal-invoice{background:var(--bg-light,#ffffff0d);border:1px solid var(--border,#ffffff2e);color:var(--text-primary,#f8fafc);cursor:pointer;border-radius:6px;align-items:center;gap:.4rem;padding:.4rem .85rem;font-size:.75rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.admin-billing-page .btn-portal-invoice:hover:not(:disabled){border-color:var(--primary,#22d3ee);color:var(--primary,#22d3ee);background:#22d3ee26;transform:translateY(-1px)}.admin-billing-page .portal-loading-container,.admin-billing-page .portal-empty-state{text-align:center;color:var(--text-secondary,#94a3b8);flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:3.5rem 1.5rem;display:flex}.admin-billing-page .portal-empty-state svg{color:var(--text-muted,#64748b)}.admin-billing-page .portal-empty-state h4{color:var(--text-primary,#f8fafc);margin:0;font-size:1.125rem;font-weight:600}.admin-billing-page .portal-empty-state p{max-width:440px;margin:0;font-size:.875rem}@media (width<=768px){.admin-billing-page{padding:1rem}.admin-billing-page .portal-history-section{padding:1.25rem}.admin-billing-page .users-controls{flex-direction:column;align-items:stretch;gap:.75rem}.admin-billing-page .users-search-box{width:100%;min-width:0;max-width:none}.admin-billing-page .users-filters{flex-direction:column;align-items:stretch;gap:.75rem;width:100%}.admin-billing-page .users-filters .filter-group,.admin-billing-page .users-filter-box{box-sizing:border-box;width:100%;display:flex}}@media (width<=480px){.admin-billing-page{padding:.75rem}.admin-billing-page .portal-history-section{padding:1rem}.admin-billing-page .users-stats-grid{grid-template-columns:1fr}}.dashboard-charts{margin-bottom:2rem}.dashboard-charts .charts-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.dashboard-charts .charts-title{color:var(--text-primary);align-items:center;gap:.5rem;display:flex}.dashboard-charts .charts-title h2{margin:0;font-size:1.125rem;font-weight:700}.dashboard-charts .period-toggle{background:var(--bg-light);border:1px solid var(--border);border-radius:10px;gap:2px;padding:3px;display:inline-flex}.dashboard-charts .period-tab{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:7px;padding:.35rem .85rem;font-size:.8125rem;font-weight:600;transition:background .15s,color .15s}.dashboard-charts .period-tab.active{background:var(--bg-white);color:var(--text-primary);box-shadow:0 1px 2px #0000000f}.dashboard-charts .charts-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.dashboard-charts .chart-card{background:var(--bg-white);border:1px solid var(--border);border-radius:12px;min-width:0;padding:1.25rem}.dashboard-charts .chart-wide{grid-column:1/-1}.dashboard-charts .chart-card h3{color:var(--text-primary);margin:0 0 1rem;font-size:.9375rem;font-weight:600}.dashboard-charts .charts-empty{background:var(--bg-white);border:1px dashed var(--border);text-align:center;color:var(--text-muted);border-radius:12px;padding:2.5rem 1rem;font-size:.875rem}.dashboard-charts .charts-empty.small{border:none;padding:2rem 1rem}@media (width<=768px){.dashboard-charts .charts-grid{grid-template-columns:1fr}.dashboard-charts .chart-wide{grid-column:auto}}.dashboard-charts .recharts-default-tooltip{background-color:var(--bg-card)!important;border:1px solid var(--border)!important;color:var(--text-primary)!important;border-radius:8px!important;box-shadow:0 4px 12px #00000026!important}.dashboard-charts .recharts-tooltip-label{color:var(--text-primary)!important;margin-bottom:.25rem!important;font-weight:600!important}.dashboard-charts .recharts-tooltip-item{color:var(--text-primary)!important}
/*$vite$:1*/