*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\!container{width:100%!important;margin-right:auto!important;margin-left:auto!important}.container{width:100%;margin-right:auto;margin-left:auto}@media(min-width:640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media(min-width:768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media(min-width:1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media(min-width:1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media(min-width:1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.\!block{display:block!important}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-10{height:2.5rem}.h-12{height:3rem}.h-8{height:2rem}.h-full{height:100%}.w-10{width:2.5rem}.w-12{width:3rem}.w-8{width:2rem}.w-auto{width:auto}.w-full{width:100%}.min-w-0{min-width:0px}.max-w-\[200px\]{max-width:200px}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-l-4{border-left-width:4px}.border-t{border-top-width:1px}.border-t-4{border-top-width:4px}.border-blue-200{--tw-border-opacity: 1;border-color:rgb(191 219 254 / var(--tw-border-opacity, 1))}.border-red-500{--tw-border-opacity: 1;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1))}.border-slate-100{--tw-border-opacity: 1;border-color:rgb(241 245 249 / var(--tw-border-opacity, 1))}.border-slate-200{--tw-border-opacity: 1;border-color:rgb(226 232 240 / var(--tw-border-opacity, 1))}.border-slate-50{--tw-border-opacity: 1;border-color:rgb(248 250 252 / var(--tw-border-opacity, 1))}.bg-\[\#25D366\]{--tw-bg-opacity: 1;background-color:rgb(37 211 102 / var(--tw-bg-opacity, 1))}.bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-red-50\/30{background-color:#fef2f24d}.bg-slate-100{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.bg-slate-200{--tw-bg-opacity: 1;background-color:rgb(226 232 240 / var(--tw-bg-opacity, 1))}.bg-slate-50{--tw-bg-opacity: 1;background-color:rgb(248 250 252 / var(--tw-bg-opacity, 1))}.bg-slate-50\/50{background-color:#f8fafc80}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-4{padding-left:1rem;padding-right:1rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-4{padding-top:1rem;padding-bottom:1rem}.pb-2{padding-bottom:.5rem}.pt-2{padding-top:.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.italic{font-style:italic}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-wide{letter-spacing:.025em}.text-amber-500{--tw-text-opacity: 1;color:rgb(245 158 11 / var(--tw-text-opacity, 1))}.text-blue-700{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.text-blue-800{--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.text-emerald-600{--tw-text-opacity: 1;color:rgb(5 150 105 / var(--tw-text-opacity, 1))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.text-orange-500{--tw-text-opacity: 1;color:rgb(249 115 22 / var(--tw-text-opacity, 1))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-red-700{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}.text-red-800{--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity, 1))}.text-slate-300{--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity, 1))}.text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.text-slate-500{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.text-slate-600{--tw-text-opacity: 1;color:rgb(71 85 105 / var(--tw-text-opacity, 1))}.text-slate-700{--tw-text-opacity: 1;color:rgb(51 65 85 / var(--tw-text-opacity, 1))}.text-slate-800{--tw-text-opacity: 1;color:rgb(30 41 59 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.opacity-20{opacity:.2}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}:root{--bg: #f4f4f2;--bg2: #ffffff;--bg3: #eaeae8;--tx: #18181a;--tx2: #5f5f5c;--tx3: #9090a0;--br: #e0e0dd;--blue: #3580d6;--blue-d: #165ca0;--blue-l: #e4f0fa;--green: #5e9420;--green-l: #e6f2da;--red: #df4748;--red-l: #fbeaea;--amber: #b47015;--amber-l: #f9ecd8;--purple: #504ab5;--purple-l: #ecebfe;--shadow: 0 8px 28px rgba(19, 29, 43, .07), 0 1px 4px rgba(19, 29, 43, .04);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px}*{box-sizing:border-box}html,body,#root{min-height:100%;height:100%;overflow:hidden}body{margin:0;background-color:#f8fafc;background-image:radial-gradient(at 0% 0%,rgba(59,130,246,.08) 0px,transparent 50%),radial-gradient(at 100% 0%,rgba(139,92,246,.08) 0px,transparent 50%),radial-gradient(at 100% 100%,rgba(6,182,212,.08) 0px,transparent 50%),radial-gradient(at 0% 100%,rgba(59,130,246,.06) 0px,transparent 50%);background-attachment:fixed;color:var(--tx);font-family:Open Sans,Roboto,Segoe UI,sans-serif;font-size:13.5px;line-height:1.5}h1,h2,h3,h4,h5,h6{font-family:Roboto,Open Sans,Segoe UI,sans-serif}body.app-shell-scroll-lock,body.app-shell-overlay-open .app-content{overflow:hidden}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}input,select,textarea{width:100%;border:1px solid transparent;border-radius:12px;background:#eef2f7;color:#0f172a;padding:9px 13px;outline:none;font-size:13.5px;box-shadow:inset 4px 4px 8px #94a3b859,inset -4px -4px 8px #fffffff2;transition:all .18s cubic-bezier(.4,0,.2,1)}select{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2364748b' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M19 9l-7 7-7-7'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px 16px;padding-right:36px;-moz-appearance:none;appearance:none;-webkit-appearance:none}input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;display:inline-block;width:18px;min-width:18px;max-width:18px;height:18px;min-height:18px;max-height:18px;padding:0;margin:0;border:0;border-radius:5px;background:#eef2f7;box-shadow:inset 2px 2px 4px #94a3b873,inset -2px -2px 4px #ffffffe6;cursor:pointer;position:relative;flex:0 0 18px;align-self:flex-start;vertical-align:middle;transition:border-color .14s ease,background-color .14s ease,box-shadow .14s ease,transform .14s ease}input[type=checkbox]:checked{background:var(--blue);box-shadow:inset 2px 2px 5px #00000047}input[type=checkbox]:checked:after{content:"";position:absolute;left:6px;top:2px;width:4px;height:9px;border:solid #ffffff;border-width:0 2px 2px 0;transform:rotate(45deg)}input[type=checkbox]:hover{transform:translateY(-.5px)}input[type=checkbox]:focus-visible{box-shadow:inset 2px 2px 4px #94a3b873,inset -2px -2px 4px #ffffffe6,0 0 0 3px #378add40;outline:0}input[type=checkbox]:disabled{cursor:not-allowed;opacity:.72;transform:none}input[type=radio]{-moz-appearance:none;appearance:none;-webkit-appearance:none;display:inline-block;width:18px;min-width:18px;max-width:18px;height:18px;min-height:18px;max-height:18px;padding:0;margin:0;border:0;border-radius:999px;background:#eef2f7;box-shadow:inset 2px 2px 4px #94a3b873,inset -2px -2px 4px #ffffffe6;cursor:pointer;position:relative;flex:0 0 18px;align-self:flex-start;vertical-align:middle;transition:border-color .14s ease,background-color .14s ease,box-shadow .14s ease,transform .14s ease}input[type=radio]:checked{background:var(--blue);box-shadow:inset 2px 2px 4px #00000047}input[type=radio]:checked:after{content:"";position:absolute;top:5px;right:5px;bottom:5px;left:5px;border-radius:999px;background:#fff}input[type=radio]:hover{transform:translateY(-.5px)}input[type=radio]:focus-visible{box-shadow:inset 2px 2px 4px #94a3b873,inset -2px -2px 4px #ffffffe6,0 0 0 3px #378add40;outline:0}input[type=radio]:disabled{cursor:not-allowed;opacity:.72;transform:none}.app-checkbox-inline{display:inline-flex;align-items:center;gap:8px;min-height:18px;cursor:pointer;color:var(--tx)}.app-checkbox-inline span{font-size:12.5px;line-height:1.4;color:inherit}.app-checkbox-inline:has(input[type=checkbox]:checked){color:var(--blue-d)}input:not([type=checkbox]):not([type=radio]):hover,select:hover,textarea:hover{border-color:#94a3b880;background:#eef2f7}input:not([type=checkbox]):not([type=radio]):focus,select:focus,textarea:focus{border-color:#3b82f6;background:#eef2f7;box-shadow:inset 4px 4px 8px #94a3b859,inset -4px -4px 8px #fffffff2,0 0 0 3px #3b82f624}input[readonly],select:disabled,textarea[readonly]{background:#f7f9fc;color:var(--tx2);border-color:#d9e2ec;box-shadow:none}textarea{min-height:92px;resize:vertical}.app-shell{min-height:100vh;height:100dvh;display:flex;position:relative;overflow:hidden;overscroll-behavior:none}.route-loading-overlay{display:flex;align-items:center;justify-content:center;padding:24px;animation:rlFadeIn .25s ease both}.route-loading-overlay-fullscreen{display:none}.route-loading-overlay-page{min-height:calc(100vh - 112px)}.route-loading-overlay-shell{flex:1;min-height:0;width:100%}.route-loading-overlay-content{position:absolute;top:0;right:0;bottom:0;left:0;z-index:25;min-height:0;background:#ffffff8c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.page-loader-minimal{display:flex;align-items:center;justify-content:center}.page-loader-spinner{width:32px;height:32px;border-radius:50%;border:2.5px solid rgba(148,163,184,.18);border-top-color:var(--primary, #3b82f6);animation:plSpin .7s linear infinite}@keyframes plSpin{to{transform:rotate(360deg)}}.app-shell-desktop{--sidebar-open-width: 220px;--sidebar-closed-width: 68px}.sidebar-shell{width:220px;background-color:#ffffffa6;backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%);background-image:radial-gradient(ellipse 160px 200px at 5% 15%,rgba(59,130,246,.22) 0%,transparent 100%),radial-gradient(ellipse 140px 180px at 95% 55%,rgba(139,92,246,.18) 0%,transparent 100%),radial-gradient(ellipse 160px 180px at 25% 88%,rgba(6,182,212,.18) 0%,transparent 100%),radial-gradient(ellipse 120px 160px at 85% 12%,rgba(99,102,241,.13) 0%,transparent 100%);border-right:1px solid rgba(226,232,240,.8);box-shadow:4px 0 24px -4px #0f172a0d,1px 0 #ffffffe6 inset;padding:16px 12px;height:100dvh;display:flex;flex-direction:column;gap:12px;overflow:hidden;position:relative;transition:transform .25s cubic-bezier(.16,1,.3,1),opacity .2s ease;will-change:transform;contain:layout paint;backface-visibility:hidden;overscroll-behavior:contain}.sidebar-desktop,.sidebar-mobile{position:fixed;top:0;left:0;z-index:60;box-shadow:1px 0 16px #0f172a0a}.sidebar-desktop{transition:opacity .18s ease,transform .2s ease}.sidebar-desktop.sidebar-open{width:var(--sidebar-open-width, 232px);transform:translate(0)}.sidebar-desktop.sidebar-closed{width:var(--sidebar-closed-width, 76px);transform:translate(0)}.sidebar-mobile.sidebar-open{transform:translate(0)}.sidebar-mobile.sidebar-closed{transform:translate(-100%)}.sidebar-edge-trigger{position:fixed;inset:0 auto 0 0;width:18px;z-index:55}.sidebar-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;border:none;padding:0;background:#0f172a4d;z-index:58}.sidebar-brand{padding:8px 8px 18px;border-bottom:1px solid rgba(226,232,240,.6);flex-shrink:0;position:relative}.sidebar-brand:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:1px;background:linear-gradient(90deg,rgba(59,130,246,.15) 0%,rgba(139,92,246,.15) 50%,transparent 100%)}.sidebar-brand-shell{display:flex;align-items:center;gap:12px}.sidebar-brand-logo{width:44px;height:44px;border-radius:14px;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;background:linear-gradient(135deg,#3b82f61a,#8b5cf614);border:1px solid rgba(59,130,246,.12);box-shadow:0 4px 12px #3b82f614}.sidebar-brand-logo img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;background:#fff}.sidebar-brand-logo span{color:#3b82f6;font-size:18px;font-weight:700;text-shadow:0 2px 4px rgba(59,130,246,.2)}.sidebar-brand-text{min-width:0}.sidebar-brand-name{font-size:16px;font-weight:700;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--tx);letter-spacing:-.01em}.sidebar-brand-sub{color:var(--tx3);font-size:11px;margin-top:3px;line-height:1.45;font-weight:500}.menu-search-shell{flex-shrink:0}.sidebar-search-shell{padding:2px 12px}.menu-search-field{display:flex;align-items:center;gap:8px;min-height:38px;padding:0 10px 0 12px;border:1px solid rgba(203,213,225,.9);border-radius:12px;background:#f8fafcf5;box-shadow:inset 0 1px 2px #0f172a08;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.menu-search-field:focus-within{border-color:#2563eb;background:#fff;box-shadow:0 0 0 3px #2563eb1f,inset 0 1px 2px #0f172a08}.menu-search-field>svg:first-child{flex-shrink:0;color:#64748b}.menu-search-input{flex:1;width:100%;border:none;background:transparent;box-shadow:none;padding:0;min-width:0;font-size:13px;font-weight:500;color:#0f172a;outline:none}.menu-search-input:hover,.menu-search-input:focus{border:none;box-shadow:none;outline:none}.menu-search-input::-moz-placeholder{color:#94a3b8}.menu-search-input::placeholder{color:#94a3b8}.menu-search-clear{width:26px;height:26px;border:none;border-radius:999px;background:#94a3b824;color:#64748b;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .2s ease,color .2s ease,transform .2s ease}.menu-search-clear:hover{background:#2563eb1f;color:#2563eb;transform:scale(1.04)}.menu-search-empty{padding:12px 10px;border:1px dashed rgba(203,213,225,.9);border-radius:12px;background:#f8fafcd6;color:#64748b;text-align:center}.menu-search-group{display:grid;gap:6px}.menu-search-group+.menu-search-group{margin-top:10px}.menu-search-group-title{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:2px 6px 4px;color:#64748b;font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.menu-search-group-count,.launcher-section-count{min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#2563eb1a;color:#2563eb;display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;line-height:1}.sidebar-search-item-main{gap:10px}.sidebar-search-copy{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:4px}.sidebar-search-context{padding:3px 8px;border-radius:999px;background:#e2e8f0d1;color:#475569;font-size:10.5px;font-weight:700;line-height:1;white-space:nowrap}.sidebar-nav{display:flex;flex-direction:column;gap:4px;padding-top:16px;flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding-right:4px;scrollbar-width:thin;scrollbar-color:transparent transparent;transition:scrollbar-color .3s ease;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y}.sidebar-nav:hover{scrollbar-color:rgba(203,213,225,.8) transparent}.sidebar-nav::-webkit-scrollbar{width:6px}.sidebar-nav::-webkit-scrollbar-thumb{background:transparent;border-radius:999px;-webkit-transition:background .3s ease;transition:background .3s ease}.sidebar-nav:hover::-webkit-scrollbar-thumb{background:#cbd5e1cc}.sidebar-nav::-webkit-scrollbar-track{background:transparent}.sidebar-item{display:flex;align-items:center;justify-content:flex-start;gap:12px;padding:8px 10px;border-radius:12px;color:var(--tx2);transition:background-color .25s cubic-bezier(.16,1,.3,1),color .25s cubic-bezier(.16,1,.3,1),box-shadow .25s cubic-bezier(.16,1,.3,1);cursor:pointer;margin-bottom:2px}.sidebar-item-main{display:inline-flex;align-items:center;gap:12px;min-width:0;font-size:13px;font-weight:500;width:100%}.sidebar-item-with-badge{position:relative}.sidebar-menu-badge{position:absolute;top:7px;right:10px;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#dc2626;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;line-height:1;box-shadow:0 0 0 2px #ffffffeb;pointer-events:none}.menu-badge-ticket{background:#f97316}.menu-badge-message{background:#16a34a}.menu-badge-onu{background:#dc2626}.menu-badge-monitor{background:#1d4ed8}.menu-badge-monitor-bad-signal{background:#f97316}.menu-badge-monitor-offline{background:#dc2626}.menu-badge-monitor-los{background:#0891b2}.menu-badge-employee{background:#d97706}.menu-badge-hotspot-topup{background:#7c3aed}.menu-badge-whatsapp-log{background:#b91c1c}.sidebar-item-main>svg:first-of-type{box-sizing:content-box;padding:6px;width:18px;height:18px;border-radius:10px;background:#94a3b812;color:var(--tx2);transition:transform .3s cubic-bezier(.34,1.56,.64,1),background-color .2s ease,color .2s ease,box-shadow .25s ease;will-change:transform;flex-shrink:0}.sidebar-item:hover{background:#ffffff80;color:var(--tx)}.sidebar-item:hover .sidebar-item-main>svg:first-of-type{background:#3b82f61a;color:#2563eb;transform:scale(1.12) rotate(3deg)}.sidebar-item-active,.sidebar-group-trigger-active{background:#fffc!important;color:#2563eb!important;font-weight:600;box-shadow:0 4px 12px #0f172a08}@keyframes activeIconSpringFloat{0%{transform:scale(1.06) translateY(0) rotate(0);box-shadow:0 4px 12px #2563eb59,0 0 #3b82f633}35%{transform:scale(1.15) translateY(-2.5px) rotate(-3deg);box-shadow:0 8px 20px #2563eb73,0 0 0 4px #3b82f626}70%{transform:scale(1.1) translateY(-1px) rotate(2deg);box-shadow:0 6px 16px #2563eb66,0 0 0 2px #3b82f640}to{transform:scale(1.06) translateY(0) rotate(0);box-shadow:0 4px 12px #2563eb59,0 0 #3b82f633}}.sidebar-item-active .sidebar-item-main>svg:first-of-type,.sidebar-group-trigger-active .sidebar-item-main>svg:first-of-type{background:linear-gradient(135deg,#2563eb,#4f46e5);color:#fff;box-shadow:0 4px 12px #2563eb59;animation:activeIconSpringFloat 3.2s ease-in-out infinite}.sidebar-item-active:hover .sidebar-item-main>svg:first-of-type,.sidebar-group-trigger-active:hover .sidebar-item-main>svg:first-of-type{transform:scale(1.18) rotate(-4deg)}.sidebar-item-active:hover,.sidebar-group-trigger-active:hover{background:#fffffff2!important;color:#1d4ed8!important}.sidebar-group{display:grid;gap:2px}.sidebar-group-trigger{width:100%;border:none;background:transparent;text-align:left;justify-content:space-between;position:relative}.sidebar-group-trigger .sidebar-menu-badge{right:30px}.sidebar-group-chevron-open{transform:rotate(180deg)}.sidebar-subnav{display:grid;gap:2px;margin-left:23px;padding-left:12px;border-left:1px solid rgba(226,232,240,.8);position:relative}.sidebar-subnav:before{content:"";position:absolute;left:-1px;top:0;bottom:0;width:1px;background:linear-gradient(180deg,rgba(59,130,246,.4) 0%,transparent 100%);opacity:0;transition:opacity .3s ease}.sidebar-group:hover .sidebar-subnav:before{opacity:1}.sidebar-subitem{display:flex;align-items:center;gap:10px;padding:6px 10px;border-radius:8px;color:var(--tx2);font-size:13px;transition:background-color .2s ease,color .2s ease,transform .2s ease;position:relative}.sidebar-subitem>svg:first-of-type{box-sizing:content-box;padding:4px;width:14px;height:14px;border-radius:6px;background:#94a3b80a;color:var(--tx2);transition:transform .25s cubic-bezier(.34,1.56,.64,1),background-color .2s ease,color .2s ease;will-change:transform;flex-shrink:0}.sidebar-subitem:hover{background:#fff6;color:var(--tx);transform:translate(2px)}.sidebar-subitem:hover>svg:first-of-type{background:#3b82f614;color:#2563eb;transform:scale(1.1)}@keyframes activeSubitemIconWiggle{0%,to{transform:scale(1.1) rotate(0);box-shadow:0 2px 8px #2563eb40}30%{transform:scale(1.24) translateY(-1.5px) rotate(6deg);background:#2563eb33;box-shadow:0 4px 14px #2563eb59}70%{transform:scale(1.18) translateY(-.5px) rotate(-4deg);box-shadow:0 3px 10px #2563eb4d}}.sidebar-subitem-active{background:#3b82f60f;color:#2563eb;font-weight:500}.sidebar-subitem-active:hover{background:#3b82f61f;color:#2563eb;transform:translate(2px)}.sidebar-subitem-active>svg:first-of-type{background:#2563eb1f;color:#2563eb;animation:activeSubitemIconWiggle 3s ease-in-out infinite}.sidebar-subitem-active:hover>svg:first-of-type{background:#2563eb2e;color:#2563eb}.sidebar-subitem-badge{margin-left:auto;min-width:20px;height:20px;padding:0 5px;border-radius:999px;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;line-height:1;flex-shrink:0}.sidebar-foot{flex-shrink:0}.sidebar-desktop.sidebar-closed{padding-left:10px;padding-right:10px}.sidebar-desktop.sidebar-closed .sidebar-brand{display:flex;justify-content:center;align-items:center;padding:6px 0 14px}.sidebar-desktop.sidebar-closed .sidebar-brand-shell{justify-content:center;width:100%;gap:0}.sidebar-desktop.sidebar-closed .sidebar-brand-logo{width:40px;height:40px;border-radius:14px}.sidebar-desktop.sidebar-closed .sidebar-brand-logo span{font-size:16px}.sidebar-desktop.sidebar-closed .sidebar-brand-text,.sidebar-desktop.sidebar-closed .sidebar-foot{display:none}.sidebar-desktop.sidebar-closed .sidebar-nav{padding-top:8px;padding-right:0}.sidebar-desktop.sidebar-closed .sidebar-item,.sidebar-desktop.sidebar-closed .sidebar-subitem{justify-content:center;padding-left:0;padding-right:0}.sidebar-desktop.sidebar-closed .sidebar-item-main{width:auto;justify-content:center}.sidebar-desktop.sidebar-closed .sidebar-menu-badge{top:4px;right:6px;min-width:18px;height:18px;padding:0 4px;font-size:10px;box-shadow:0 0 0 2px #f8fafc}.sidebar-desktop.sidebar-closed .sidebar-group-trigger{justify-content:center}.sidebar-desktop.sidebar-closed .sidebar-item-main span,.sidebar-desktop.sidebar-closed .sidebar-subitem span,.sidebar-desktop.sidebar-closed .sidebar-group-chevron-open,.sidebar-desktop.sidebar-closed .sidebar-group-trigger svg:last-child{display:none}.sidebar-desktop.sidebar-closed .sidebar-subnav{display:none}.app-main{flex:1;min-width:0;display:flex;flex-direction:column;width:100%;min-height:100dvh;height:100dvh;overflow:hidden;transition:margin-left .22s cubic-bezier(.16,1,.3,1);will-change:margin-left}.app-shell-desktop .app-main{margin-left:var(--sidebar-closed-width, 76px)}.app-shell-desktop .app-main.app-main-sidebar-open{margin-left:var(--sidebar-open-width, 220px)}.app-shell-mobile .app-main{width:100%;margin-left:0}.app-content-shell{position:relative;flex:1;min-height:0;display:flex}.pwa-update-banner{position:fixed;right:18px;bottom:18px;z-index:90;display:flex;align-items:center;gap:14px;max-width:min(460px,calc(100vw - 32px));padding:12px 14px;border:1px solid rgba(191,219,254,.9);border-radius:18px;background:#fffffff5;box-shadow:0 16px 40px #0f172a24;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.pwa-update-banner-mobile{right:12px;left:12px;bottom:82px;max-width:none;align-items:stretch;flex-direction:column;gap:12px}.pwa-update-banner-content{min-width:0;display:flex;align-items:center;gap:10px;flex:1}.pwa-update-banner-text{min-width:0;display:flex;flex-direction:column;gap:2px}.pwa-update-banner-text strong{font-size:13px;font-weight:700;color:var(--tx);line-height:1.2}.pwa-update-banner-text span{font-size:11.5px;color:var(--tx2);line-height:1.35}.pwa-update-banner-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.pwa-update-banner-actions .app-button{min-height:34px;padding:7px 12px;font-size:12px}.pwa-update-banner-dismiss{background:#f8fafceb}.pwa-update-banner-mobile .pwa-update-banner-content,.pwa-update-banner-mobile .pwa-update-banner-actions{width:100%}.pwa-update-banner-mobile .pwa-update-banner-actions .app-button{flex:1;justify-content:center}.voucher-result-dialog{display:flex;flex-direction:column;gap:14px}.voucher-result-dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 16px;border:1px solid rgba(226,232,240,.9);border-radius:16px;background:linear-gradient(180deg,#f8fafcf5,#fffffffa)}.voucher-result-dialog-header p{margin:0;color:var(--tx2);font-size:13px;line-height:1.5}.voucher-result-dialog-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.voucher-result-list{display:flex;flex-direction:column;gap:10px;max-height:min(60vh,520px);overflow:auto;padding-right:2px}.voucher-result-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid rgba(226,232,240,.9);border-radius:16px;background:#fff}.voucher-result-item-main{min-width:0;display:flex;flex-direction:column;gap:4px}.voucher-result-item-index{font-size:11px;font-weight:700;color:#2563eb;text-transform:uppercase;letter-spacing:.04em}.voucher-result-item-code{font-size:14px;font-weight:700;color:var(--tx);word-break:break-word}.voucher-result-item-meta{font-size:12px;color:var(--tx2)}@media(max-width:768px){.voucher-result-dialog-header,.voucher-result-item{flex-direction:column;align-items:stretch}.voucher-result-dialog-actions{width:100%;flex-direction:column}.voucher-result-dialog-header .app-button,.voucher-result-item .app-button{width:100%;justify-content:center}}.topbar{height:60px;background-color:#ffffffb8;background-image:radial-gradient(ellipse 280px 80px at 15% 50%,rgba(59,130,246,.18) 0%,transparent 100%),radial-gradient(ellipse 200px 70px at 52% -10px,rgba(139,92,246,.15) 0%,transparent 100%),radial-gradient(ellipse 220px 80px at 88% 70%,rgba(6,182,212,.15) 0%,transparent 100%);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid rgba(226,232,240,.7);padding:0 22px;display:flex;align-items:center;justify-content:space-between;gap:14px;position:sticky;top:0;z-index:260;box-shadow:0 4px 20px -2px #0f172a08,0 1px 2px #0f172a05}.topbar-popup-backdrop{position:fixed;top:60px;left:0;right:0;bottom:0;z-index:250;background:#0f172a1f;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.topbar:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:1.5px;background:linear-gradient(90deg,transparent 0%,rgba(59,130,246,.25) 30%,rgba(139,92,246,.2) 60%,transparent 100%);pointer-events:none}.topbar-heading{position:relative;z-index:1;display:flex;align-items:center;gap:14px;min-width:0;flex:1}.topbar-menu-btn{width:38px;height:38px;border-radius:12px;border:1px solid rgba(226,232,240,.8);background:#f8fafcd9;display:grid;place-items:center;flex-shrink:0;padding:0;line-height:0;cursor:pointer;color:var(--tx2);transition:all .22s cubic-bezier(.4,0,.2,1);-moz-appearance:none;appearance:none;-webkit-appearance:none}.topbar-menu-btn:hover{background:#fff;color:#2563eb;border-color:#93c5fd99;box-shadow:0 4px 12px #2563eb1a;transform:translateY(-1px)}.topbar-menu-btn:active{transform:scale(.95)}.topbar-menu-btn svg{width:18px;height:18px}.page-title{font-size:15px;font-weight:700;line-height:1.25;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.015em}.page-subtitle{font-size:11px;color:#64748b;font-weight:500;margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-version-badge{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:999px;font-size:10px;font-weight:600;color:#9a3412;background:#ffedd5;border:1px solid #fed7aa;vertical-align:middle}.topbar-actions{position:relative;z-index:1;display:flex;align-items:center;gap:10px;flex-shrink:0}.topbar-actions .app-button{min-height:34px;padding:6px 12px;font-size:12px;border-radius:10px}.topbar-pill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:5px 12px;font-size:11.5px;font-weight:600;border:1px solid rgba(226,232,240,.8);background:#f8fafce6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:all .22s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0f172a05}.topbar-pill:hover{transform:translateY(-1px);border-color:#cbd5e1e6;box-shadow:0 4px 10px #0f172a0d}.topbar-pill-ai{color:var(--tx3);border-color:var(--border-color);background:#f8fafce6;transition:all .22s cubic-bezier(.4,0,.2,1)}.topbar-pill-ai.is-active{color:#2563eb;border-color:#2563eb66;background:#eff6ffe6;box-shadow:0 2px 10px #2563eb1f}.topbar-pill-ai.is-active .topbar-pill-dot{background-color:#2563eb!important;animation:topbarAiDotPulse 2.2s ease-in-out infinite}@keyframes topbarAiDotPulse{0%,to{box-shadow:0 0 #2563eb66}50%{box-shadow:0 0 0 5px #2563eb00}}.topbar-ai-bot-icon{width:15px;height:15px;transition:all .25s cubic-bezier(.4,0,.2,1);transform-origin:center}.topbar-pill-ai.is-active .topbar-ai-bot-icon{color:#2563eb!important;animation:topbarRobotHeadPulse 2.5s ease-in-out infinite;filter:drop-shadow(0 0 4px rgba(37,99,235,.6))}.topbar-pill-ai.is-inactive .topbar-ai-bot-icon{color:#9ca3af!important;animation:none;filter:none}@keyframes topbarRobotHeadPulse{0%,to{transform:scale(1) rotate(0);filter:drop-shadow(0 0 3px rgba(37,99,235,.4))}20%{transform:scale(1.22) rotate(-12deg);filter:drop-shadow(0 0 7px rgba(37,99,235,.7))}40%{transform:scale(1.15) rotate(12deg);filter:drop-shadow(0 0 7px rgba(37,99,235,.7))}60%{transform:scale(1.22) rotate(-5deg);filter:drop-shadow(0 0 9px rgba(59,130,246,.85))}80%{transform:scale(1) rotate(0);filter:drop-shadow(0 0 3px rgba(37,99,235,.4))}}.topbar-pill-online{color:#15803d;border-color:#22c55e40;background:#f0fdf4d9}.topbar-pill-online svg,.topbar-wifi-icon{width:13px;height:13px;animation:wifiWavePulse 2.5s ease-in-out infinite;transform-origin:bottom center}@keyframes wifiWavePulse{0%,to{transform:scale(1);filter:drop-shadow(0 0 0px rgba(34,197,94,0))}30%{transform:scale(1.22);filter:drop-shadow(0 0 6px rgba(34,197,94,.6))}60%{transform:scale(1.05);filter:drop-shadow(0 0 3px rgba(34,197,94,.4))}}.topbar-pill-wa.is-connected{color:#25d366;border-color:#25d36666;background:#f0fdf4e6}.topbar-pill-wa.is-connected .topbar-pill-wa-dot{background-color:#25d366!important}.topbar-pill-wa.is-warning{color:#f59e0b;border-color:#f59e0b66;background:#fffbebe6}.topbar-pill-wa.is-warning .topbar-pill-wa-dot{background-color:#f59e0b!important}.topbar-pill-wa.is-disconnected{color:#ef4444;border-color:#ef444466;background:#fef2f2e6}.topbar-pill-wa.is-disconnected .topbar-pill-wa-dot{background-color:#ef4444!important}.topbar-wa-icon{width:15px;height:15px;min-width:15px;min-height:15px;color:inherit;transition:all .2s ease;animation:waIconPulseGreen 3.6s ease-in-out infinite;transform-origin:center}.topbar-pill-wa.is-connected .topbar-wa-icon{animation:waIconPulseGreen 3.2s ease-in-out infinite}.topbar-pill-wa.is-warning .topbar-wa-icon{animation:waIconPulseYellow 4s ease-in-out infinite}.topbar-pill-wa.is-disconnected .topbar-wa-icon{animation:waIconPulseRed 2.8s ease-in-out infinite}@keyframes waIconPulseGreen{0%,to{transform:scale(1) rotate(0);filter:drop-shadow(0 0 0px rgba(37,211,102,0))}15%{transform:scale(1.2) rotate(-8deg);filter:drop-shadow(0 0 6px rgba(37,211,102,.7))}25%{transform:scale(1.15) rotate(8deg);filter:drop-shadow(0 0 6px rgba(37,211,102,.7))}35%{transform:scale(1.2) rotate(-4deg);filter:drop-shadow(0 0 6px rgba(37,211,102,.7))}45%{transform:scale(1) rotate(0);filter:drop-shadow(0 0 0px rgba(37,211,102,0))}}@keyframes waIconPulseYellow{0%,to{transform:scale(1) rotate(0);filter:drop-shadow(0 0 0px rgba(245,158,11,0))}20%{transform:scale(1.15) rotate(-5deg);filter:drop-shadow(0 0 4px rgba(245,158,11,.6))}40%{transform:scale(1.1) rotate(5deg);filter:drop-shadow(0 0 4px rgba(245,158,11,.6))}60%{transform:scale(1) rotate(0);filter:drop-shadow(0 0 0px rgba(245,158,11,0))}}@keyframes waIconPulseRed{0%,to{transform:scale(1) rotate(0);filter:drop-shadow(0 0 0px rgba(239,68,68,0))}10%{transform:scale(1.3) rotate(-10deg);filter:drop-shadow(0 0 8px rgba(239,68,68,.8))}20%{transform:scale(1.2) rotate(10deg);filter:drop-shadow(0 0 8px rgba(239,68,68,.8))}30%{transform:scale(1.3) rotate(-5deg);filter:drop-shadow(0 0 8px rgba(239,68,68,.8))}45%{transform:scale(1) rotate(0);filter:drop-shadow(0 0 0px rgba(239,68,68,0))}}.topbar-pill-dot{width:7px;height:7px;border-radius:999px;background:#22c55e;box-shadow:0 0 #22c55e66;animation:topbarDotPulse 2.2s ease-in-out infinite}@keyframes topbarDotPulse{0%,to{box-shadow:0 0 #22c55e66}50%{box-shadow:0 0 0 5px #22c55e00}}.topbar-pill-clock{font-variant-numeric:tabular-nums;letter-spacing:.02em;min-width:50px;justify-content:center;flex-direction:column;gap:1px;padding:4px 12px}.topbar-pill-clock-time-wrapper{display:flex;align-items:center;justify-content:center;gap:4px}.topbar-clock-icon-mobile{display:none;animation:clockSpinMobile 6s linear infinite;transform-origin:center;color:#2563eb}@keyframes clockSpinMobile{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.topbar-clock-icon-desktop{animation:clockDesktopTick 4s ease-in-out infinite;transform-origin:center;color:#3b82f6}@keyframes clockDesktopTick{0%,to{transform:scale(1) rotate(0)}25%{transform:scale(1.15) rotate(15deg)}50%{transform:scale(1) rotate(0)}75%{transform:scale(1.15) rotate(-15deg)}}.topbar-pill-clock-time{font-size:11.5px;font-weight:700;line-height:1;color:#0f172a}.topbar-pill-clock-date{font-size:10.5px;color:#64748b;font-weight:500;line-height:1}.topbar-clock-icon-mobile{display:none}@media(max-width:768px){.topbar-pill-clock-time,.topbar-pill-clock-date,.topbar-clock-icon-desktop{display:none!important}.topbar-clock-icon-mobile{display:block!important}.topbar-pill-clock{padding:0!important;width:38px!important;height:38px!important;min-width:0!important;border-radius:50%!important;align-items:center!important;justify-content:center!important}.topbar-clock-dropdown{position:fixed!important;top:70px!important;left:50%!important;right:auto!important;transform:translate(-50%)!important;margin-top:0!important}.topbar-clock-container{display:flex;align-items:center}}.topbar-user-btn{position:relative;display:flex;align-items:center;gap:0;padding:0;border:none;background:none;cursor:pointer;border-radius:999px;transition:all .22s cubic-bezier(.4,0,.2,1);-moz-appearance:none;appearance:none;-webkit-appearance:none}.topbar-user-btn:hover{transform:scale(1.06)}.topbar-user-btn:active{transform:scale(.95)}.topbar-avatar{width:36px;height:36px;border-radius:999px;background:linear-gradient(135deg,#3b82f6,#8b5cf6);color:#fff;font-size:11.5px;font-weight:700;letter-spacing:.04em;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 0 0 2px #fffffff2,0 3px 10px #3b82f640;transition:all .22s ease;animation:avatarSpinPause 5s cubic-bezier(.4,0,.2,1) infinite;transform-origin:center;overflow:hidden}.topbar-avatar-img,.topbar-dropdown-avatar-img{width:100%;height:100%;border-radius:999px;-o-object-fit:cover;object-fit:cover;display:block}@keyframes avatarSpinPause{0%{transform:rotate(0)}25%{transform:rotate(360deg)}to{transform:rotate(360deg)}}.topbar-user-btn:hover .topbar-avatar{box-shadow:0 0 0 2px #fffffff2,0 5px 16px #3b82f661}.topbar-user-container{position:relative;display:inline-flex;z-index:2}.topbar-notification-container{position:relative}.topbar-notification-btn{position:relative;width:38px;height:38px;border-radius:12px;border:1px solid rgba(226,232,240,.8);background:#ffffffeb;color:#475569;display:inline-flex;align-items:center;justify-content:center;padding:0;cursor:pointer;transition:all .22s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0f172a08}.topbar-notification-btn:hover,.topbar-notification-btn.active{background:#eff6ff;color:#2563eb;border-color:#bfdbfe;box-shadow:0 4px 14px #2563eb1f;transform:translateY(-1px)}.topbar-notification-btn:active{transform:scale(.95)}.topbar-status-dot{position:absolute;top:4px;right:4px;width:8px;height:8px;border-radius:50%;border:1.5px solid #ffffff;box-shadow:0 1px 3px #00000026;transition:all .2s ease}.topbar-status-dot.dot-success{background-color:#22c55e;box-shadow:0 0 6px #22c55e99}.topbar-status-dot.dot-warning{background-color:#f59e0b;box-shadow:0 0 6px #f59e0b99}.topbar-status-dot.dot-danger{background-color:#ef4444;box-shadow:0 0 6px #ef444499}.topbar-status-dot.dot-off{background-color:#94a3b8}.topbar-notification-btn.has-unread .topbar-bell-icon,.topbar-notification-btn.has-unread svg{animation:bellRingSwing 2.5s cubic-bezier(.36,.07,.19,.97) infinite;transform-origin:top center;color:#2563eb}@keyframes bellRingSwing{0%{transform:rotate(0)}3%{transform:rotate(18deg)}6%{transform:rotate(-16deg)}9%{transform:rotate(14deg)}12%{transform:rotate(-12deg)}15%{transform:rotate(8deg)}18%{transform:rotate(-6deg)}21%{transform:rotate(4deg)}24%{transform:rotate(0)}to{transform:rotate(0)}}.topbar-notification-badge{position:absolute;top:-5px;right:-5px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:linear-gradient(135deg,#ef4444,#f97316);color:#fff;font-size:10px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 0 0 2px #fffffff5,0 2px 8px #ef444466;animation:notifBadgePulse 2s ease-in-out infinite}@keyframes notifBadgePulse{0%,to{transform:scale(1);box-shadow:0 0 0 2px #fffffff5,0 2px 8px #ef444466}50%{transform:scale(1.12);box-shadow:0 0 0 3px #fffffff5,0 4px 12px #ef444499}}.topbar-notification-dropdown{position:absolute;top:100%;left:50%;right:auto;transform:translate(-50%);margin-top:10px;width:min(380px,calc(100vw - 24px));max-height:min(72dvh,540px);overflow:hidden;background:#fffffffa;border:1px solid rgba(226,232,240,.9);border-radius:20px;box-shadow:0 20px 48px -8px #0f172a26,0 8px 24px #0f172a0f,0 0 0 1px #fffc inset;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);z-index:320;display:flex;flex-direction:column;animation:topbarDropdownSpringIn .3s cubic-bezier(.16,1,.3,1) both;transform-origin:top center}.topbar-notification-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 16px 12px;background:linear-gradient(180deg,#f8fafcd9,#fff6);border-bottom:1px solid rgba(241,245,249,.9)}.topbar-notification-title-block{display:flex;align-items:center;gap:8px}.topbar-notification-header strong{display:block;font-size:14px;font-weight:700;color:#0f172a;line-height:1.3;letter-spacing:-.01em}.topbar-notification-unread-pill{font-size:10.5px;font-weight:700;background:#ef44441a;color:#dc2626;border:1px solid rgba(239,68,68,.2);padding:2px 7px;border-radius:999px;line-height:1.2}.topbar-notification-header span{display:block;margin-top:3px;font-size:11.5px;color:#64748b;line-height:1.4}.topbar-notification-link{border:1px solid rgba(59,130,246,.2);background:#eff6ffcc;color:#2563eb;font-size:11.5px;font-weight:700;padding:4px 10px;border-radius:8px;white-space:nowrap;cursor:pointer;transition:all .18s ease}.topbar-notification-link:hover{background:#2563eb;color:#fff;border-color:#2563eb;box-shadow:0 2px 8px #2563eb40}.topbar-notification-list{display:flex;flex-direction:column;gap:8px;padding:10px 12px;overflow-y:auto}.topbar-notification-item{width:100%;border:1px solid rgba(226,232,240,.8);background:#fff;border-radius:14px;padding:11px 12px;display:flex;align-items:flex-start;gap:12px;text-align:left;cursor:pointer;position:relative;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0f172a05}.topbar-notification-item:hover{border-color:#93c5fdcc;background:#f8fafcf2;box-shadow:0 6px 18px #0f172a0f;transform:translateY(-1px)}.topbar-notification-icon{width:32px;height:32px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 2px 6px #0f172a0a}.topbar-notification-icon-success{background:linear-gradient(135deg,#22c55e26,#10b98114);color:#16a34a;border:1px solid rgba(34,197,94,.2)}.topbar-notification-icon-failed{background:linear-gradient(135deg,#ef444426,#dc262614);color:#dc2626;border:1px solid rgba(239,68,68,.2)}.topbar-notification-copy{min-width:0;display:flex;flex-direction:column;gap:3px}.topbar-notification-copy strong{font-size:12.5px;line-height:1.4;color:#0f172a;font-weight:600}.topbar-notification-copy small{font-size:11px;line-height:1.4;color:#64748b}.topbar-notification-meta{font-weight:700}.topbar-notification-meta.is-success{color:#15803d}.topbar-notification-meta.is-failed{color:#dc2626}.topbar-notification-empty{border:1px dashed rgba(203,213,225,.8);border-radius:14px;background:#f8fafcb3;color:#64748b;font-size:12.5px;text-align:center;padding:24px 16px;display:flex;flex-direction:column;align-items:center;gap:6px}.activity-audit-dialog{display:flex;flex-direction:column;gap:14px}.activity-audit-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.activity-audit-summary-card{border:1px solid rgba(191,219,254,.85);background:linear-gradient(180deg,#eff6fff5,#f8fafcf5);border-radius:14px;padding:12px 14px;display:flex;flex-direction:column;gap:4px}.activity-audit-summary-card span{font-size:11px;color:var(--tx3)}.activity-audit-summary-card strong{font-size:16px;color:var(--tx)}.activity-audit-note{border-radius:14px;border:1px solid rgba(226,232,240,.9);background:#f8fafceb;color:var(--tx2);font-size:12px;line-height:1.6;padding:12px 14px}.activity-audit-list{display:flex;flex-direction:column;gap:8px;max-height:min(48dvh,420px);overflow:auto}.activity-audit-item{display:flex;align-items:flex-start;gap:10px;border:1px solid rgba(226,232,240,.78);background:#ffffffeb;border-radius:14px;padding:11px 12px}.activity-audit-status{min-width:72px;border-radius:999px;padding:6px 10px;font-size:10px;font-weight:700;text-align:center}.activity-audit-status.is-success{background:#22c55e1f;color:#15803d}.activity-audit-status.is-failed{background:#ef44441f;color:#dc2626}.activity-audit-copy{min-width:0;display:flex;flex-direction:column;gap:4px}.activity-audit-copy strong{font-size:12px;color:var(--tx);line-height:1.45}.activity-audit-copy span{font-size:11px;color:var(--tx3);line-height:1.45}.activity-audit-empty{border:1px dashed rgba(203,213,225,.9);border-radius:14px;background:#f8fafce6;color:var(--tx3);font-size:12px;text-align:center;padding:18px 14px}.activity-audit-footer{width:100%;justify-content:flex-end;gap:10px}.activity-audit-footer .app-button{min-width:148px}.activity-notification-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px}.activity-notification-stat-card{border:1px solid rgba(226,232,240,.82);background:#f8fafceb;border-radius:14px;padding:12px 14px;display:flex;flex-direction:column;gap:4px}.activity-notification-stat-card span{font-size:11px;color:var(--tx3)}.activity-notification-stat-card strong{font-size:18px;color:var(--tx)}.activity-notification-filter-note{margin-top:2px;font-size:12px;color:var(--tx3);line-height:1.55}.activity-notification-history-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.activity-notification-history-card{border:1px solid rgba(226,232,240,.82);background:#ffffffe0;border-radius:18px;padding:12px;display:flex;flex-direction:column;gap:10px}.activity-notification-history-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.activity-notification-history-head h3{margin:0;font-size:14px;color:var(--tx)}.activity-notification-history-head span{font-size:11px;color:var(--tx3)}.activity-notification-history-table th,.activity-notification-history-table td{white-space:nowrap}.activity-log-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:10px}.activity-log-stat-card{border:1px solid rgba(191,219,254,.9);background:linear-gradient(180deg,#eff6fff5,#f8fafcf5);border-radius:14px;padding:12px 14px;display:flex;flex-direction:column;gap:4px}.activity-log-stat-card span{font-size:11px;color:#475569}.activity-log-stat-card strong{font-size:18px;color:#0f172a}.activity-log-summary-strip{display:flex;flex-wrap:wrap;gap:8px 12px;margin-bottom:12px;font-size:12px;color:#475569}.activity-log-summary-strip strong{color:#0f172a}.activity-log-filter-note{margin-top:2px;font-size:12px;color:var(--tx3);line-height:1.55}.activity-log-history-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.activity-log-history-card{border:1px solid rgba(191,219,254,.72);background:linear-gradient(180deg,#fffffff0,#f8fafce6);border-radius:18px;padding:12px;display:flex;flex-direction:column;gap:10px}.activity-log-history-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.activity-log-history-head h3{margin:0;font-size:14px;color:var(--tx)}.activity-log-history-head span{font-size:11px;color:var(--tx3)}.activity-log-history-table th,.activity-log-history-table td{white-space:nowrap}.topbar-dropdown{position:absolute;top:100%;right:0;margin-top:12px;width:220px;background:#fff;border:1px solid rgba(226,232,240,.8);border-radius:16px;box-shadow:0 10px 30px #0f172a14,0 4px 12px #0f172a0a,0 0 0 1px #ffffff80 inset;z-index:320;padding:8px;display:flex;flex-direction:column;animation:topbarDropdownSpringIn .28s cubic-bezier(.16,1,.3,1) both;transform-origin:top right}@keyframes topbarDropdownSpringIn{0%{opacity:0;transform:translateY(8px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.topbar-dropdown-header{display:flex;align-items:center;gap:12px;padding:8px 10px 10px}.topbar-dropdown-avatar{width:36px;height:36px;border-radius:999px;background:linear-gradient(135deg,#3b82f6,#8b5cf6);color:#fff;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #3b82f633}.topbar-dropdown-info{display:flex;flex-direction:column;min-width:0}.topbar-dropdown-name{font-size:13px;font-weight:600;color:var(--tx);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.topbar-dropdown-role{font-size:11px;color:var(--tx3);font-weight:500;margin-top:1px}.topbar-dropdown-divider{height:1px;background:#e2e8f099;margin:6px 4px}.topbar-dropdown-body{display:flex;flex-direction:column;gap:2px}.topbar-dropdown-item{width:100%;display:flex;align-items:center;gap:10px;padding:8px 12px;border:none;background:transparent;color:var(--tx2);font-size:13px;font-weight:500;border-radius:10px;transition:all .2s ease;text-align:left}.topbar-dropdown-item svg{color:var(--tx3);transition:color .2s ease,transform .2s ease}.topbar-dropdown-item:hover{background:#3b82f60f;color:#2563eb}.topbar-dropdown-item:hover svg{color:#2563eb;transform:translate(1px)}.topbar-dropdown-item-danger{color:#ef4444}.topbar-dropdown-item-danger svg{color:#f87171}.topbar-dropdown-item-danger:hover{background:#ef444414;color:#dc2626}.topbar-dropdown-item-danger:hover svg{color:#dc2626;transform:translate(1px)}.app-content{padding:18px 20px;flex:1;min-height:0;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y}.page-stack{display:flex;flex-direction:column;gap:14px}.page-stack-fill{display:flex;flex-direction:column;gap:14px;flex:1;min-height:0}.dashboard-tabs{display:flex;gap:3px;padding:3px;background:var(--bg);border-radius:var(--radius-md);overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin-bottom:8px}.dashboard-tabs::-webkit-scrollbar{display:none}.dashboard-tab{display:flex;align-items:center;gap:6px;padding:7px 14px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--tx2);font-size:13.5px;font-weight:500;cursor:pointer;white-space:nowrap;transition:all .2s ease;flex-shrink:0;font-family:inherit;line-height:1.3}.dashboard-tab:hover{color:var(--tx);background:var(--bg3)}.dashboard-tab-active{background:var(--bg2)!important;color:var(--tx)!important;box-shadow:0 1px 3px #00000014}.dashboard-tab-active svg{color:var(--blue)}@media(max-width:768px){.dashboard-tabs{gap:2px;padding:3px;border-radius:var(--radius-sm);margin-bottom:6px;position:sticky;top:0;z-index:10}.dashboard-tab{padding:6px 12px;font-size:12.5px;gap:4px;border-radius:6px}.dashboard-tab svg{width:14px;height:14px}}@media(max-width:420px){.dashboard-tab{padding:5px 10px;font-size:12px;gap:4px}}.metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.metrics-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.metrics-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.metrics-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.metrics-grid-5{grid-template-columns:repeat(5,minmax(0,1fr))}.agent-dashboard-quick-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.agent-due-alert{background:#ef444414;border:1px solid rgba(239,68,68,.25);border-radius:12px;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px;flex-wrap:wrap}.agent-due-alert-left{display:flex;align-items:center;gap:10px;min-width:0}.agent-due-alert-icon{flex-shrink:0;color:var(--danger-color)}.agent-due-alert-text{min-width:0}.agent-due-alert-title{color:var(--danger-color);font-size:.92rem}.agent-due-alert-desc{margin:0;font-size:.78rem;opacity:.85}.agent-dashboard-quick-action{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"icon label" "icon sub";-moz-column-gap:10px;column-gap:10px;row-gap:1px;align-items:center;padding:10px 12px;border:1px solid var(--br);border-radius:var(--radius-md);background:#fff;color:inherit;text-decoration:none;text-align:left;font:inherit;cursor:pointer;transition:border-color .15s ease,background .15s ease}.agent-dashboard-quick-action:hover:not(:disabled){border-color:#2f6fed59;background:#f7f9ff}.agent-dashboard-quick-action:disabled{opacity:.55;cursor:not-allowed;background:#f8fafc}.agent-dashboard-quick-action .avatar-badge{grid-area:icon}.agent-dashboard-quick-action strong{grid-area:label;font-size:.84rem;font-weight:600;line-height:1.3;min-width:0}.agent-dashboard-quick-action small{grid-area:sub;font-size:.72rem;color:var(--tx2);line-height:1.3;min-width:0}@keyframes spinPauseSpin{0%{transform:rotate(0) scale(1)}12%{transform:rotate(360deg) scale(1.15)}20%{transform:rotate(360deg) scale(1)}50%{transform:rotate(360deg) scale(1)}62%{transform:rotate(720deg) scale(1.15)}70%{transform:rotate(720deg) scale(1)}to{transform:rotate(720deg) scale(1)}}.app-button-attendance svg{animation:spinPauseSpin 5s cubic-bezier(.4,0,.2,1) infinite}.app-button-attendance:hover svg{animation-duration:2.5s;filter:drop-shadow(0 0 5px currentColor)}.dashboard-attendance-note{display:flex;align-items:center;gap:8px;margin-top:12px;padding:10px 12px;border:1px solid rgba(191,219,254,.9);border-radius:14px;background:linear-gradient(180deg,#f8fbff,#eef6ff);color:var(--tx2);font-size:12px;line-height:1.5}.dashboard-attendance-note svg{flex-shrink:0;color:#2563eb}.dashboard-quick-section{border-top:1px solid var(--br);margin-top:12px;padding-top:12px}.dashboard-quick-section:first-of-type{border-top:none;margin-top:0;padding-top:0}.dashboard-quick-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--tx3);margin-bottom:6px}.dashboard-salary-info{background:var(--bg1, #f8fafc);border:1px solid var(--br);border-radius:var(--radius-md);padding:12px 14px}.dashboard-salary-info-row{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;padding:3px 0}.dashboard-salary-info-row span{color:var(--tx3)}.dashboard-salary-info-row strong{font-size:.88rem}.dashboard-salary-info-total{border-top:1px solid var(--br);margin-top:6px;padding-top:6px;font-weight:600}.dashboard-salary-info-total span{color:var(--tx1);font-weight:600}.dashboard-salary-info-total strong{color:#2563eb}.metric-card,.panel-card{background:#eef2f7;border:1px solid transparent;border-radius:var(--radius-lg);box-shadow:8px 8px 16px #94a3b859,-8px -8px 16px #ffffffe6}.metric-card{--widget-accent: #3b82f6;--widget-accent-light: rgba(59, 130, 246, .08);--widget-icon-bg: rgba(59, 130, 246, .1);--widget-icon-color: #3b82f6;padding:18px 20px;background:#eef2f7;border:1px solid transparent;border-radius:var(--radius-lg);overflow:hidden;position:relative;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.metric-card:hover{transform:translateY(-2px);box-shadow:10px 10px 20px #94a3b866,-10px -10px 20px #fffffff2;border-color:var(--widget-accent)}.metric-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--widget-accent);opacity:0;transition:opacity .2s ease}.metric-card:hover:before{opacity:1}.metric-card:after{content:"";position:absolute;right:-20px;bottom:-20px;width:100px;height:100px;border-radius:999px;background:var(--widget-accent-light);pointer-events:none}.metric-card>*{position:relative;z-index:1}.metrics-grid>.metric-card:nth-child(4n+1){--widget-accent: #3b82f6;--widget-accent-light: rgba(59, 130, 246, .06);--widget-icon-bg: rgba(59, 130, 246, .1);--widget-icon-color: #3b82f6}.metrics-grid>.metric-card:nth-child(4n+2){--widget-accent: #8b5cf6;--widget-accent-light: rgba(139, 92, 246, .06);--widget-icon-bg: rgba(139, 92, 246, .1);--widget-icon-color: #8b5cf6}.metrics-grid>.metric-card:nth-child(4n+3){--widget-accent: #10b981;--widget-accent-light: rgba(16, 185, 129, .06);--widget-icon-bg: rgba(16, 185, 129, .1);--widget-icon-color: #10b981}.metrics-grid>.metric-card:nth-child(4n+4){--widget-accent: #f59e0b;--widget-accent-light: rgba(245, 158, 11, .06);--widget-icon-bg: rgba(245, 158, 11, .1);--widget-icon-color: #f59e0b}.metric-card-danger .metric-value{color:var(--red)}.metric-card-success .metric-value{color:#16a34a}.metric-label{color:var(--tx3);font-size:11.5px;font-weight:600;line-height:1.35;letter-spacing:.03em;text-transform:uppercase}.metric-subtext{color:var(--tx3);font-size:11.5px;line-height:1.5}.metric-value-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 0 6px}.metric-value{font-size:clamp(16px,1.8vw,20px);font-weight:800;line-height:1.15;letter-spacing:-.03em;color:var(--tx)}.metric-icon{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--widget-icon-bg);color:var(--widget-icon-color);border:none;box-shadow:none;position:relative;z-index:1;transition:transform .2s ease,background .2s ease}.metric-card:hover .metric-icon{transform:scale(1.1);background:var(--widget-accent);color:#fff}.router-res-card{padding:14px 16px;--widget-accent: #3b82f6}.router-res-card.router-res-offline{--widget-accent: #9ca3af;opacity:.7}.router-res-card.router-res-offline:hover{opacity:1}.router-res-card:nth-child(4n+1){--widget-accent: #3b82f6}.router-res-card:nth-child(4n+2){--widget-accent: #8b5cf6}.router-res-card:nth-child(4n+3){--widget-accent: #10b981}.router-res-card:nth-child(4n+4){--widget-accent: #f59e0b}.router-res-card:nth-child(4n+1).router-res-offline{--widget-accent: #94a3b8}.router-res-card:nth-child(4n+2).router-res-offline{--widget-accent: #a5b4c2}.router-res-card:nth-child(4n+3).router-res-offline{--widget-accent: #94a3b8}.router-res-card:nth-child(4n+4).router-res-offline{--widget-accent: #a5b4c2}.router-res-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.router-res-name{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--tx);line-height:1.3}.router-res-name svg{color:var(--widget-accent);flex-shrink:0}.router-res-header-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.router-res-synced{display:flex;align-items:center;gap:3px;font-size:10px;color:var(--tx3);white-space:nowrap}.router-res-board{font-size:10.5px;color:var(--tx3);margin-bottom:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.router-res-stats{display:flex;flex-direction:column;gap:8px}.router-res-row{display:grid;grid-template-columns:16px auto 1fr;align-items:center;gap:4px 6px}.router-res-row-icon{color:var(--tx3);display:grid;place-items:center}.router-res-row-label{font-size:11px;font-weight:600;color:var(--tx2);text-transform:uppercase;letter-spacing:.03em}.router-res-row-val{font-size:14px;font-weight:700;color:var(--tx);text-align:right;font-variant-numeric:tabular-nums}.router-res-row-status+.router-res-row-detail{margin-top:-6px}.router-res-row-detail{font-size:10px;color:var(--tx3);text-align:right;font-variant-numeric:tabular-nums}.router-res-uptime{margin-top:4px;padding-top:8px;border-top:1px solid var(--br);font-size:11px;color:var(--tx3);font-variant-numeric:tabular-nums}.router-res-bar{grid-column:1 / -1;height:3px;background:var(--bg3, #e5e7eb);border-radius:999px;overflow:hidden;margin-top:2px}.router-res-bar-fill{height:100%;border-radius:999px;transition:width .4s ease}.router-res-bar-fill-normal{background:linear-gradient(90deg,#10b981,#22c55e)}.router-res-bar-fill-warning{background:linear-gradient(90deg,#f59e0b,#fbbf24)}.router-res-bar-fill-danger{background:linear-gradient(90deg,#ef4444,#f87171);animation:router-res-pulse 1.2s ease-in-out infinite}@keyframes router-res-pulse{0%,to{opacity:1}50%{opacity:.7}}.router-res-row-status{font-size:10px;font-weight:600;margin-left:54px;margin-top:-4px;margin-bottom:2px}.router-res-row-status:has(+.router-res-row-status){margin-bottom:0}.router-res-row-status-normal{color:#10b981}.router-res-row-status-warning{color:#f59e0b}.router-res-row-status-danger{color:#ef4444;animation:router-res-pulse 1.2s ease-in-out infinite}.router-res-empty{display:flex;align-items:center;gap:8px;color:var(--tx3);font-size:13px;margin-top:8px}.router-res-offline-msg{display:flex;align-items:center;gap:6px;color:var(--tx3);font-size:11.5px;margin-top:6px}.router-res-footer{display:flex;justify-content:center;margin-top:8px;padding-top:8px;border-top:1px solid var(--br)}.router-res-footer .app-button{max-width:100%;white-space:normal;text-align:center}@media(max-width:768px){.router-res-footer .app-button{width:100%}}.pon-tx-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px 8px;margin-top:4px;padding-top:6px;border-top:1px solid var(--br)}.pon-tx-item{display:flex;align-items:center;justify-content:space-between;gap:4px;padding:1px 0;font-size:10px;font-variant-numeric:tabular-nums;color:var(--tx2)}.pon-tx-item-iface{font-weight:600;color:var(--tx3);white-space:nowrap}.pon-tx-item-val{font-weight:700;color:var(--tx);white-space:nowrap}.router-res-coming-soon{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 16px;text-align:center}.status-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.status-dot-online{background:#10b981;box-shadow:0 0 6px #10b98180}.status-dot-offline{background:#9ca3af}.panel-card{padding:14px 16px;position:relative;overflow:hidden}.panel-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;background:radial-gradient(circle at 100% 0%,rgba(139,92,246,.06) 0,rgba(139,92,246,.06) 300px,transparent 301px),radial-gradient(circle at -5% 100%,rgba(59,130,246,.06) 0,rgba(59,130,246,.06) 400px,transparent 401px),radial-gradient(circle at 50% 120%,rgba(16,185,129,.05) 0,rgba(16,185,129,.05) 250px,transparent 251px)}.panel-card>*{position:relative;z-index:1}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}.panel-header h2{margin:0;font-size:14px;font-weight:700;line-height:1.3;letter-spacing:-.01em}.panel-header p,.cell-sub,.compact-meta,.activity-sub{margin:4px 0 0;color:var(--tx3);font-size:11.5px;line-height:1.45}.two-column-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:16px}.progress-track{height:8px;background:#eef2f7;border-radius:999px;margin-top:8px;overflow:hidden;box-shadow:inset 2px 2px 4px #94a3b873,inset -2px -2px 4px #ffffffe6}.progress-fill{height:100%;background:linear-gradient(90deg,var(--blue),var(--blue-d));border-radius:inherit}.list-stack{display:flex;flex-direction:column;gap:10px}.activity-row,.row-cell{display:flex;align-items:center;gap:10px}.activity-main{flex:1;min-width:0}.activity-name{font-size:13px;font-weight:600}.avatar-badge{width:34px;height:34px;border-radius:999px;display:grid;place-items:center;background:var(--blue-l);color:var(--blue-d);font-size:12px;font-weight:700;flex-shrink:0}.avatar-badge img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;border-radius:inherit}.toolbar{display:flex;gap:12px;margin-bottom:14px;align-items:center;flex-wrap:wrap}.toolbar-search{flex:1 1 260px;min-height:42px;font-size:13.5px;border-radius:12px;border:1px solid transparent;background:#eef2f7;box-shadow:inset 4px 4px 8px #94a3b859,inset -4px -4px 8px #ffffffe6;transition:all .18s ease}.toolbar-search:focus-within{border-color:#3b82f6;box-shadow:inset 4px 4px 8px #94a3b859,inset -4px -4px 8px #ffffffe6,0 0 0 3px #3b82f624}.toolbar-select{width:auto;min-width:170px;min-height:42px;font-size:13.5px;border-radius:12px;border:1px solid transparent;background-color:#eef2f7;font-weight:500;box-shadow:inset 4px 4px 8px #94a3b859,inset -4px -4px 8px #ffffffe6;transition:all .18s ease}.toolbar-spaced{margin-top:18px}.toolbar-date-wrap{display:flex;align-items:center;gap:6px;border:1px solid transparent;border-radius:12px;padding:0 12px;min-height:42px;background-color:#eef2f7;box-shadow:inset 4px 4px 8px #94a3b859,inset -4px -4px 8px #ffffffe6;transition:all .18s ease}.toolbar-date-wrap:focus-within{border-color:#3b82f6;box-shadow:inset 4px 4px 8px #94a3b859,inset -4px -4px 8px #ffffffe6,0 0 0 3px #3b82f624}.toolbar-date-icon{color:#94a3b8;flex-shrink:0}.toolbar-date{border:none;outline:none;font-size:13.5px;font-weight:500;color:#334155;background:transparent;padding:0;width:140px;font-family:inherit}.statistics-hero{background:radial-gradient(circle at top right,rgba(59,130,246,.12),transparent 28%),linear-gradient(180deg,#fff,#f7fbff)}.statistics-hero-badges{display:flex;flex-wrap:wrap;gap:8px}.statistics-panel-soft{background:radial-gradient(circle at top right,rgba(34,197,94,.08),transparent 24%),linear-gradient(180deg,#fff,#fbfdff)}.statistics-compare-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.statistics-compare-card{padding:14px;border:1px solid rgba(203,213,225,.9);border-radius:18px;background:linear-gradient(180deg,#fff,#f8fbff);box-shadow:0 10px 24px #131d2b0a}.statistics-compare-card-success{border-color:#22c55e38;background:linear-gradient(180deg,#fff,#f3fff7)}.statistics-compare-card-danger{border-color:#ef444438;background:linear-gradient(180deg,#fff,#fff6f6)}.statistics-compare-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.statistics-compare-label{font-size:11px;color:var(--tx3);line-height:1.5}.statistics-compare-value{margin-top:10px;font-size:20px;font-weight:700;line-height:1.2}.statistics-compare-meta{margin-top:6px;font-size:11px;color:var(--tx3);line-height:1.5}.statistics-delta{display:inline-flex;align-items:center;gap:4px;padding:5px 8px;border-radius:999px;font-size:11px;font-weight:600;white-space:nowrap}.statistics-delta-up{color:#166534;background:#dcfce7f2}.statistics-delta-down{color:#b91c1c;background:#fee2e2f2}.statistics-delta-neutral{color:#475569;background:#f1f5f9f2}.statistics-trend-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;align-items:end}.statistics-trend-item{display:flex;flex-direction:column;gap:8px}.statistics-trend-track{height:120px;border:1px solid rgba(226,232,240,.9);border-radius:16px;background:linear-gradient(180deg,#f8fbff,#eef5ff);padding:10px;display:flex;align-items:end;justify-content:center;gap:6px}.statistics-trend-bar{width:18px;min-height:0;border-radius:999px 999px 6px 6px}.statistics-trend-bar-billing{background:linear-gradient(180deg,#3b82f6,#1d4ed8)}.statistics-trend-bar-topup{background:linear-gradient(180deg,#22c55e,#15803d)}.statistics-trend-value{font-size:11px;font-weight:600;color:var(--tx2);line-height:1.5}.statistics-trend-label{font-size:11px;color:var(--tx3);line-height:1.4}.panel-toolbar-stack{display:grid;gap:12px;margin-top:14px}.inline-notice{padding:11px 13px;border:1px solid rgba(191,219,254,.92);border-radius:14px;background:linear-gradient(180deg,#f8fbff,#eef6ff);color:var(--tx2);font-size:12px;line-height:1.6}.inline-notice-success{border-color:#22c55e33;background:linear-gradient(180deg,#f6fff9,#effbf3);color:#166534}.inline-notice-warning{border-color:#f59e0b3d;background:linear-gradient(180deg,#fffdf7,#fff7e7);color:#92400e}.inline-notice-info{border-color:#3b82f62e;background:linear-gradient(180deg,#f9fbff,#f2f7ff)}.table-wrap{border:1px solid transparent;border-radius:18px;background:#eef2f7;box-shadow:inset 4px 4px 8px #94a3b859,inset -4px -4px 8px #ffffffe6;overflow:hidden;overflow-x:auto;overflow-y:hidden}.app-table{width:100%;border-collapse:collapse;font-size:13px;background:transparent}.app-table th{text-align:left;padding:11px 14px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;line-height:1.25;color:var(--tx3);background:#eef2f7;font-weight:700;border-bottom:1px solid rgba(148,163,184,.28)}.app-table tbody tr{transition:background-color .15s ease}.app-table tbody tr:hover{background-color:#f8fbff}.app-table td{padding:11px 14px;border-bottom:1px solid rgba(235,236,239,.7);font-size:13px;line-height:1.45;letter-spacing:-.01em;color:var(--tx2);background:transparent;vertical-align:middle}.app-table.app-table-dense th,.app-table.app-table-dense td{padding:8px 10px}.app-table.app-table-dense td.table-empty,.app-table.app-table-dense td.panel-empty{padding:32px 16px}.ticket-table th.ticket-col-service{min-width:140px}.ticket-table th.ticket-col-customer{min-width:220px}.ticket-table th.ticket-col-complaint{min-width:110px}.ticket-table th.ticket-col-assignee{min-width:130px}.ticket-table th.ticket-col-status{min-width:120px}.app-table td strong,.app-table td .font-semibold{color:var(--tx)}.app-table td .row-cell{align-items:baseline;gap:6px;flex-wrap:wrap;min-width:0}.app-table td .row-cell>*{min-width:0}.app-table td .cell-sub{display:none!important}.app-table td .table-inline-meta,.app-table td .table-inline-list{font-size:11px;color:var(--tx3);line-height:1.35;min-width:0}.app-table td .table-inline-meta{display:inline-flex;align-items:center;gap:4px}.app-table td .table-inline-list{display:flex;flex-wrap:wrap;gap:4px 8px}.app-table td .table-inline-list span{white-space:nowrap}.tr069-lease-summary{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:6px;font-size:12px;color:var(--tx3);line-height:1.45}.tr069-lease-summary strong{color:var(--tx);font-size:12.5px;font-weight:700}.tr069-lease-summary-text{display:flex;align-items:center;gap:6px;flex-wrap:wrap;min-width:0}.tr069-lease-summary-separator{color:var(--tx3);opacity:.8}.tr069-lease-page .table-inline-meta.tr069-lease-summary .status-pill{margin-left:auto}@media(max-width:900px){.tr069-lease-page .table-inline-meta.tr069-lease-summary .status-pill{margin-left:0}}.monitoring-target-list{gap:6px}.monitoring-target-pill{display:inline-flex;align-items:center;gap:6px;min-height:24px;padding:4px 10px;border:1px solid rgba(14,116,144,.14);border-radius:999px;background:linear-gradient(180deg,#ecfefff5,#cffafeeb);color:#0f766e;font-size:11.5px;font-weight:600;line-height:1.2}.monitoring-target-option-label{display:inline-flex;align-items:center;gap:7px}.monitoring-target-pill-admin{border-color:#0e749024;background:linear-gradient(180deg,#ecfefff5,#cffafeeb);color:#0f766e}.monitoring-target-pill-operator{border-color:#2563eb24;background:linear-gradient(180deg,#eff6fff5,#dbeafeeb);color:#1d4ed8}.monitoring-target-pill-technician{border-color:#7c3aed24;background:linear-gradient(180deg,#f5f3fff5,#e9d5ffe6);color:#7c3aed}.monitoring-target-pill-cashier{border-color:#16a34a24;background:linear-gradient(180deg,#f0fdf4f5,#dcfce7eb);color:#15803d}.monitoring-target-pill-collector{border-color:#ea580c24;background:linear-gradient(180deg,#fff7edf5,#fed7aaeb);color:#c2410c}.monitoring-target-pill-agent{border-color:#d9770624;background:linear-gradient(180deg,#fffbebf5,#fef08aeb);color:#b45309}.monitoring-target-option{transition:border-color .2s ease,background .2s ease,box-shadow .2s ease,color .2s ease}.monitoring-target-option-admin.payment-method-option-active{border-color:#0e749033;background:linear-gradient(180deg,#ecfefffa,#cffafef0);box-shadow:0 10px 24px #0e74901a;color:#0f766e}.monitoring-target-option-admin.payment-method-option-active .payment-method-radio{border-color:#0f766e;background:#0f766e}.monitoring-target-option-operator.payment-method-option-active{border-color:#2563eb33;background:linear-gradient(180deg,#eff6fffa,#dbeafef0);box-shadow:0 10px 24px #2563eb1a;color:#1d4ed8}.monitoring-target-option-operator.payment-method-option-active .payment-method-radio{border-color:#1d4ed8;background:#1d4ed8}.monitoring-target-option-technician.payment-method-option-active{border-color:#7c3aed33;background:linear-gradient(180deg,#f5f3fffa,#e9d5fff0);box-shadow:0 10px 24px #7c3aed1a;color:#7c3aed}.monitoring-target-option-technician.payment-method-option-active .payment-method-radio{border-color:#7c3aed;background:#7c3aed}.monitoring-target-option-cashier.payment-method-option-active{border-color:#16a34a33;background:linear-gradient(180deg,#f0fdf4fa,#dcfce7f0);box-shadow:0 10px 24px #16a34a1a;color:#15803d}.monitoring-target-option-cashier.payment-method-option-active .payment-method-radio{border-color:#15803d;background:#15803d}.monitoring-target-option-collector.payment-method-option-active{border-color:#ea580c33;background:linear-gradient(180deg,#fff7edfa,#fed7aaf0);box-shadow:0 10px 24px #ea580c1a;color:#c2410c}.monitoring-target-option-collector.payment-method-option-active .payment-method-radio{border-color:#c2410c;background:#c2410c}.monitoring-target-option-agent.payment-method-option-active{border-color:#d9770633;background:linear-gradient(180deg,#fffbebfa,#fef08af0);box-shadow:0 10px 24px #d977061a;color:#b45309}.monitoring-target-option-agent.payment-method-option-active .payment-method-radio{border-color:#b45309;background:#b45309}.registration-invoice-tags{gap:6px 8px}.registration-invoice-breakdown{gap:4px 10px}.registration-invoice-summary-card{display:grid;gap:10px;padding:12px 14px;border-radius:14px;border:1px solid rgba(148,163,184,.22);background:linear-gradient(180deg,#f8fafcfa,#f1f5f9f5)}.registration-invoice-summary-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.registration-invoice-summary-label{display:block;margin-bottom:3px;color:var(--tx3);font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.06em}.registration-invoice-summary-head strong{display:block;font-size:14px;line-height:1.35;color:var(--text)}.registration-invoice-summary-lines{display:grid;gap:8px}.registration-invoice-summary-line{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:8px;border-top:1px dashed rgba(148,163,184,.28);font-size:12.5px;color:var(--tx2)}.registration-invoice-summary-line strong{font-size:13px;color:var(--text);white-space:normal;word-break:break-word}.registration-invoice-summary-total{color:var(--text);font-weight:600}.registration-invoice-summary-total strong{font-size:15px}.registration-invoice-total{margin-top:12px;padding:12px 14px;border:1px solid var(--br);border-radius:var(--radius-md);background:var(--bg2)}.registration-invoice-total .status-bar-item strong{font-size:16px;color:var(--tx)}.registration-invoice-total .status-bar-item small{font-size:11px;color:var(--tx3)}.payment-billing-summary-layout{display:grid;gap:12px}.payment-billing-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.payment-billing-summary-card{height:100%}.payment-billing-summary-card-full{grid-column:1 / -1}.payment-billing-summary-card .registration-invoice-summary-line strong{text-align:right}.payment-billing-summary-card .registration-invoice-summary-line-address{align-items:flex-start;flex-direction:column;gap:4px}.payment-billing-summary-card .registration-invoice-summary-line-address strong{width:100%;text-align:left}.payment-submit-popup{width:min(100%,360px);display:flex;flex-direction:column;align-items:center;gap:10px;padding:18px 18px 16px;border:1px solid rgba(59,130,246,.12);border-radius:20px;background:radial-gradient(circle at top,rgba(59,130,246,.1),transparent 55%),linear-gradient(180deg,#fffffffa,#f7fafffa);box-shadow:0 18px 38px #0f172a1f;text-align:center}.payment-submit-popup-spinner{display:inline-flex;align-items:center;justify-content:center;width:50px;height:50px;border-radius:999px;color:var(--blue-d);background:#e4f0faf5}.payment-submit-popup-spinner svg{animation:spin 1s linear infinite}.payment-submit-popup strong{color:var(--tx);font-size:14px;line-height:1.35}.payment-submit-popup p{margin:0;color:var(--tx2);font-size:12px;line-height:1.55}.app-table th.action-row,.app-table td.action-row,.app-table td:has(.row-actions-menu),.app-table td:has(.table-actions-inline){width:1%;white-space:nowrap;display:table-cell;text-align:right}.table-action-empty{display:inline-block;text-align:center;color:var(--tx3);font-size:13px}.app-table td.table-empty,.app-table td.panel-empty{padding:32px 16px;text-align:center;vertical-align:middle;color:var(--tx3);font-size:13px;line-height:1.65}.app-table td.table-empty,.app-table td.panel-empty{background:#ffffff73}.table-number-cell{width:52px;text-align:center;white-space:nowrap}.app-table tbody tr:last-child td{border-bottom:none}.app-table tbody tr.is-selected-row{background:linear-gradient(180deg,#f8fbfffa,#f2f7fffa)}.table-pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 20px;margin-top:14px;background:#eef2f7;border:1px solid transparent;border-radius:14px;box-shadow:6px 6px 12px #94a3b859,-6px -6px 12px #ffffffe6;flex-wrap:wrap;transition:all .2s ease}.panel>.table-pagination,.card>.table-pagination,.app-table-container+.table-pagination{margin-top:12px}.table-pagination-summary{font-size:13px;color:#64748b;font-weight:500;display:flex;align-items:center;gap:4px}.table-pagination-summary strong{color:#0f172a;font-weight:600}.table-pagination-controls{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.table-pagination-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:0 14px;border-radius:10px;border:1px solid #cbd5e1;background:#f8fafc;color:#334155;font-size:13px;font-weight:600;cursor:pointer;transition:all .18s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 2px #0f172a0a}.table-pagination-btn:hover:not(:disabled){background:#eff6ff;color:#2563eb;border-color:#bfdbfe;transform:translateY(-1px);box-shadow:0 3px 8px #2563eb1f}.table-pagination-btn:disabled{opacity:.45;background:#f1f5f9;border-color:#e2e8f0;color:#94a3b8;cursor:not-allowed;box-shadow:none}.table-pagination-btn svg{width:16px;height:16px;flex-shrink:0}.table-pagination-numbers{display:inline-flex;align-items:center;gap:4px}.table-pagination-num{min-width:34px;height:34px;padding:0 8px;border-radius:8px;border:1px solid #e2e8f0;background:#fff;color:#475569;font-size:13px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease}.table-pagination-num:hover:not(.is-active){background:#f8fafc;color:#0f172a;border-color:#cbd5e1}.table-pagination-num.is-active{background:#2563eb;color:#fff;border-color:#2563eb;font-weight:700;box-shadow:0 2px 6px #2563eb4d}.table-pagination-ellipsis{padding:0 4px;color:#94a3b8;font-size:13px;font-weight:600}.table-pagination-page{min-width:100px;text-align:center;font-size:13px;font-weight:600;color:#0f172a;padding:6px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;display:inline-flex;align-items:center;justify-content:center}@media(max-width:640px){.table-pagination{flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px;padding:12px 14px}.table-pagination-controls{width:100%;justify-content:center}.table-pagination-btn-text{display:none}.table-pagination-btn{padding:0 10px;min-width:36px}}.mono{font-family:inherit;color:var(--tx2)}.customer-number-cell{font-family:inherit;font-size:13px;font-weight:600;letter-spacing:.02em;color:var(--text);white-space:nowrap}.package-badge,.status-pill{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:4px 10px;font-size:11.5px;font-weight:600;line-height:1.2;letter-spacing:.01em}.package-badge{background:var(--purple-l);color:var(--purple)}.status-online,.status-active{background:var(--green-l);color:var(--green)}.status-expired{background:var(--red-l);color:var(--red)}.status-suspended{background:var(--amber-l);color:var(--amber)}.status-muted{background:#94a3b829;color:#475569}.status-draft{background:var(--purple-l);color:var(--purple)}.status-info{background:var(--blue-l);color:var(--blue)}.risk-bar{display:inline-flex;align-items:center;gap:6px}.risk-bar-fill{width:44px;height:8px;border-radius:999px;flex:none}.risk-bar.risk-low .risk-bar-fill{background:var(--green)}.risk-bar.risk-medium .risk-bar-fill{background:var(--amber)}.risk-bar.risk-high .risk-bar-fill{background:var(--red)}.risk-bar-value{font-size:11px;font-weight:600}.risk-bar.risk-low .risk-bar-value{color:var(--green)}.risk-bar.risk-medium .risk-bar-value{color:var(--amber)}.risk-bar.risk-high .risk-bar-value{color:var(--red)}.customer-detail-connection-status.status-online,.customer-detail-live-status.status-online{background:var(--green);color:#fff}.customer-detail-connection-status.status-expired,.customer-detail-live-status.status-expired{background:var(--red);color:#fff}.customer-list-modem-status.status-online{background:var(--green);color:#fff}.customer-list-modem-status.status-expired{background:var(--red);color:#fff}.customer-detail-summary-status.status-active,.customer-detail-billing-status.status-active{background:var(--green);color:#fff}.customer-detail-billing-status.status-draft{background:var(--purple);color:#fff}.action-row{display:flex;justify-content:flex-end;align-items:center;gap:8px;flex-wrap:wrap}.voucher-generation-dialog{gap:0}.voucher-generation-panel{gap:14px}.voucher-generation-panel-head{display:grid;gap:6px}.voucher-generation-stage-block{display:grid;gap:5px;min-width:0}.voucher-generation-stage-block strong{font-size:13px;color:var(--tx)}.voucher-generation-stage-block span{color:var(--tx3);font-size:11.5px;line-height:1.6}.voucher-generation-progress-block{display:grid;gap:8px}.voucher-generation-progress-block-secondary{margin-top:2px}.voucher-generation-progress-label{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--tx2);font-size:11.5px}.voucher-generation-progress-label strong{color:var(--tx);font-size:12px}.voucher-generation-progressbar-track{position:relative;overflow:hidden;width:100%;height:10px;border-radius:999px;background:#e2e8f0e6}.voucher-generation-progressbar-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,#2563eb,#3b82f6 48%,#60a5fa);box-shadow:0 8px 18px #2563eb33;transition:width .22s ease}.voucher-generation-progressbar-track-secondary{background:#e2e8f0b3}.voucher-generation-progressbar-fill-secondary{background:linear-gradient(90deg,#0f766e,#14b8a6,#5eead4);box-shadow:0 8px 18px #14b8a62e}.voucher-generation-summary{display:flex;flex-wrap:wrap;gap:8px 14px;color:var(--tx2);font-size:11px;line-height:1.5}.voucher-generation-issue{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:start;padding:12px 14px;border:1px solid rgba(253,186,116,.92);border-radius:16px;background:linear-gradient(180deg,#fffbebfa,#ffedd5f2);color:#9a3412}.voucher-generation-issue strong{display:block;margin-bottom:4px;font-size:11.5px}.voucher-generation-issue span{display:block;font-size:11px;line-height:1.55}.row-actions-menu{display:inline-flex}.row-actions-trigger{min-width:74px;height:32px;border-radius:12px;padding:0 11px;font-size:12px;font-weight:600;gap:5px}.row-actions-dropdown{position:fixed;min-width:180px;max-width:min(240px,calc(100vw - 16px));padding:8px;display:grid;gap:4px;background:#fffffffa;border:1px solid var(--br);border-radius:16px;box-shadow:0 18px 36px #131d2b29;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;z-index:1700}.row-actions-item{width:100%;border:none;background:transparent;color:var(--tx);padding:9px 11px;border-radius:12px;display:flex;align-items:center;gap:10px;text-align:left;font-size:12px;font-weight:500}.row-actions-item:hover:not(:disabled){background:var(--bg3)}.row-actions-item:disabled{opacity:.5;cursor:not-allowed}.row-actions-item-danger{color:var(--red)}.row-actions-item-danger:hover:not(:disabled){background:var(--red-l)}.row-actions-icon{display:inline-flex;align-items:center;justify-content:center}.toolbar-inline{display:flex;align-items:center;gap:10px}.app-button{border:1px solid transparent;border-radius:12px;padding:8px 16px;min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#eef2f7;color:#1e293b;font-family:Open Sans,Roboto,Segoe UI,sans-serif;font-size:13px;font-weight:600;line-height:1.2;letter-spacing:.01em;box-shadow:6px 6px 14px #94a3b859,-6px -6px 14px #fffffff2;transition:all .2s cubic-bezier(.4,0,.2,1);white-space:nowrap;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.app-button-sm{padding:6px 10px;min-height:34px;border-radius:10px;font-size:12px;gap:6px}.app-button:hover:not(:disabled){background:#eef2f7;border-color:transparent;color:#0f172a;transform:translateY(-1px);box-shadow:4px 4px 10px #94a3b866,-4px -4px 10px #fff}.app-button:active:not(:disabled){transform:translateY(0) scale(.99);box-shadow:inset 4px 4px 10px #94a3b866,inset -4px -4px 10px #fffffff2}.app-button:disabled{opacity:.55;cursor:not-allowed;transform:none!important;box-shadow:none!important}.app-button-primary{background:linear-gradient(135deg,#2563eb,#1d4ed8);border-color:transparent;color:#fff;box-shadow:4px 4px 10px #2563eb59,-4px -4px 10px #ffffff80}.app-button-primary:hover:not(:disabled){background:linear-gradient(135deg,#1d4ed8,#1e40af);border-color:transparent;color:#fff;transform:translateY(-1.5px);box-shadow:6px 6px 14px #2563eb66,-6px -6px 14px #fff9}.app-button-muted{background:#eef2f7;border-color:transparent;color:#64748b}.app-button-muted:hover:not(:disabled){background:#eef2f7;color:#2563eb;border-color:transparent;transform:translateY(-1px);box-shadow:4px 4px 10px #94a3b866,-4px -4px 10px #fff}.app-button-loading{opacity:.6;pointer-events:none}.app-button-danger{background:#fef2f2;border-color:transparent;color:#dc2626;box-shadow:4px 4px 10px #dc26262e,-4px -4px 10px #ffffffb3}.app-button-danger:hover:not(:disabled){background:#fee2e2;border-color:transparent;color:#b91c1c;transform:translateY(-1px);box-shadow:6px 6px 14px #dc262638,-6px -6px 14px #ffffffbf}.app-button-success{background:#f0fdf4;border-color:transparent;color:#16a34a;box-shadow:4px 4px 10px #16a34a2e,-4px -4px 10px #ffffffb3}.app-button-success:hover:not(:disabled){background:#dcfce7;border-color:transparent;color:#15803d;transform:translateY(-1px);box-shadow:6px 6px 14px #16a34a38,-6px -6px 14px #ffffffbf}.panel-actions{display:flex;flex-wrap:wrap;gap:10px}.table-actions-inline{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;align-items:center}.row-selected{background:#2f6df60f}.spin{animation:app-spin .9s linear infinite}@keyframes app-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes rlSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes rlPulse{0%,to{transform:scale(.85);opacity:.7}50%{transform:scale(1.1);opacity:1}}@keyframes rlShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes rlFadeIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes appLoaderSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes appLoaderPulse{0%,to{transform:scale(.8);opacity:.6}50%{transform:scale(1.15);opacity:1}}@keyframes appLoaderShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes appLoaderFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.wa-queue-metrics{margin-top:18px}.wa-queue-status-cell{display:flex;flex-direction:column;gap:6px;min-width:140px}.wa-queue-status-note{color:var(--tx3);font-size:11px;line-height:1.45;white-space:normal;word-break:break-word}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a59;display:flex;align-items:center;justify-content:center;z-index:1500;padding:20px;overflow:hidden;overscroll-behavior:contain;animation:modalOverlayIn .22s ease both}@keyframes modalOverlayIn{0%{opacity:0}to{opacity:1}}.modal-overlay-notice{position:fixed;top:16px;left:0;right:0;bottom:auto;transform:none;background:transparent;display:flex;justify-content:center;align-items:flex-start;padding:0 12px;overflow:visible;pointer-events:none;z-index:9999;animation:none;width:100%;box-sizing:border-box}.modal-overlay-notice.modal-overlay-center{top:0;left:0;right:0;bottom:0;padding:16px;align-items:center;transform:none;width:100vw;height:100vh}.modal-overlay-alert{z-index:1520}.modal-overlay-topmost{z-index:1600}.modal-panel,.modal-panel-wide,.modal-panel-xwide{margin:auto;width:min(980px,calc(100vw - 32px));max-height:calc(100dvh - 40px);background:#eef2f7;border:1px solid transparent;border-radius:22px;box-shadow:8px 8px 16px #94a3b859;display:flex;flex-direction:column;min-height:0;overflow:hidden;animation:modalPanelIn .32s cubic-bezier(.34,1.56,.64,1) both}.modal-panel-wide{width:min(1120px,calc(100vw - 32px))}.modal-panel-xwide{width:min(1320px,calc(100vw - 32px))}@keyframes modalPanelIn{0%{opacity:0;transform:translateY(16px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-panel-notice{width:400px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 40px);border-radius:20px;border:1px solid transparent;background:#eef2f7;box-shadow:8px 8px 16px #94a3b859;pointer-events:auto;animation:androidNotificationSlideDown .35s cubic-bezier(.16,1,.3,1) both}.modal-panel-wide.modal-panel-notice{width:min(560px,calc(100vw - 32px))}.modal-panel-xwide.modal-panel-notice{width:min(680px,calc(100vw - 32px))}@keyframes androidNotificationSlideDown{0%{opacity:0;transform:translateY(-36px) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header,.modal-footer{padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:10px}.modal-header{background:transparent;border-bottom:1px solid rgba(148,163,184,.28);position:relative;overflow:visible;align-items:flex-start;isolation:isolate}.modal-header:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#3b82f6,#8b5cf6,#06b6d4);border-radius:22px 22px 0 0;z-index:2}.modal-panel-notice .modal-header{padding:22px 24px 10px;background:transparent;border-bottom:none}.modal-panel-notice .modal-header:before{display:none}.modal-panel-notice .modal-title-row{align-items:center;justify-content:center;width:100%}.modal-header h3{margin:0;font-size:16px;line-height:1.3;font-family:Roboto,Open Sans,Segoe UI,sans-serif;letter-spacing:-.01em;position:relative;z-index:1;flex:1;min-width:0;white-space:normal;overflow-wrap:anywhere;word-break:break-word}.modal-panel-notice .modal-header h3{text-align:center;flex:0 auto}.modal-title-row{display:flex;align-items:flex-start;gap:10px;position:relative;z-index:1;flex:1;min-width:0;padding-right:8px}.modal-title-content{display:flex;flex:1;flex-direction:column;gap:4px;min-width:0}.modal-title-meta{color:#64748b;font-size:11px;font-weight:500;line-height:1.45}.modal-badge{width:34px;height:34px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.modal-badge-info,.modal-badge-confirm{background:var(--blue-l);color:var(--blue-d)}.modal-badge-success{background:var(--green-l);color:var(--green)}.modal-badge-warning{background:var(--amber-l);color:var(--amber)}.modal-badge-error{background:var(--red-l);color:var(--red)}@keyframes modalBadgeIconPop{0%{transform:scale(.5);opacity:0}60%{transform:scale(1.25);opacity:1}to{transform:scale(1);opacity:1}}@keyframes modalBadgeIconShake{0%,to{transform:translate(0) scale(1)}20%{transform:translate(-3px) scale(1.1)}40%{transform:translate(3px) scale(1.1)}60%{transform:translate(-3px) scale(1.1)}80%{transform:translate(3px) scale(1.1)}}.modal-badge-success svg,.modal-badge-info svg,.modal-badge-confirm svg{animation:modalBadgeIconPop .4s cubic-bezier(.175,.885,.32,1.275) forwards}.modal-badge-warning svg,.modal-badge-error svg{animation:modalBadgeIconShake .45s ease-in-out forwards}.modal-body{padding:18px;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-height:0;flex:1 1 auto;touch-action:pan-y;background:transparent;position:relative;z-index:1}.modal-panel .form-grid{gap:16px}.modal-panel .form-block{gap:8px}.modal-panel input,.modal-panel select,.modal-panel textarea{min-height:46px}.modal-panel textarea{min-height:110px}.modal-panel .app-button{min-height:44px}.modal-panel-notice .modal-body{padding:20px 24px 14px;overflow:auto;background:transparent;color:var(--tx2);font-size:13.5px;line-height:1.55}.modal-panel-notice .modal-footer{padding:4px 24px 20px;background:transparent;border-top:none;justify-content:center;gap:10px}.modal-panel-notice .modal-footer .modal-confirm-button{min-width:128px;border-radius:12px;font-weight:500;transition:all .2s ease}.modal-panel-notice .modal-footer .modal-confirm-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0f172a14}.modal-panel-notice .modal-copy{border:none;border-radius:0;background:transparent;padding:0;margin-top:0;text-align:left;box-shadow:none}.modal-panel-notice .modal-header .icon-button{background:#f1f5f9cc;border-radius:10px;transition:all .18s ease}.modal-panel-notice .modal-header .icon-button:hover{background:#e2e8f0e6;transform:rotate(90deg)}.modal-panel-notice .modal-title-row h3{font-size:15px}.modal-panel-notice .modal-badge{width:38px;height:38px;border-radius:14px}.modal-notification-simple{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:12px;padding:10px 16px}.modal-copy-simple{min-width:0;flex:1}.modal-copy-simple-center{text-align:left}.modal-copy-simple p{margin:0;font-size:13.5px;font-weight:500;color:#0f172a;line-height:1.4}.modal-notification-icon,.wa-toast-icon{width:38px;height:38px;min-width:38px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;box-shadow:0 4px 12px #0f172a14}.modal-notification-icon svg,.wa-toast-icon svg{animation:notifIconManjaIn .65s cubic-bezier(.34,1.56,.64,1) both,notifIconManjaFloat 2.8s ease-in-out infinite .65s;transform-origin:center}.modal-notification-icon:after,.wa-toast-icon:after{content:"";position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;border-radius:50%;opacity:.6;animation:notifRingGlowPulse 2.4s ease-in-out infinite;pointer-events:none}@keyframes notifIconManjaIn{0%{transform:scale(0) rotate(-35deg);opacity:0}40%{transform:scale(1.38) rotate(16deg);opacity:1}65%{transform:scale(.85) rotate(-10deg)}85%{transform:scale(1.1) rotate(5deg)}to{transform:scale(1) rotate(0);opacity:1}}@keyframes notifIconManjaFloat{0%,to{transform:translateY(0) rotate(0) scale(1)}25%{transform:translateY(-3px) rotate(9deg) scale(1.08)}50%{transform:translateY(1px) rotate(-7deg) scale(.95)}75%{transform:translateY(-2px) rotate(4deg) scale(1.04)}}@keyframes notifRingGlowPulse{0%,to{transform:scale(1);opacity:.4}50%{transform:scale(1.18);opacity:.75}}.modal-notification-icon-info,.modal-notification-icon-confirm{background:linear-gradient(135deg,#3b82f624,#6366f11a);color:#2563eb}.modal-notification-icon-info:after,.modal-notification-icon-confirm:after{border:2px solid rgba(59,130,246,.12)}.modal-notification-icon-success{background:linear-gradient(135deg,#22c55e24,#10b98114);color:#16a34a}.modal-notification-icon-success:after{border:2px solid rgba(34,197,94,.12)}.modal-notification-icon-warning{background:linear-gradient(135deg,#f59e0b29,#ea580c14);color:#d97706}.modal-notification-icon-warning:after{border:2px solid rgba(245,158,11,.14)}.modal-notification-icon-error{background:linear-gradient(135deg,#ef444424,#dc262614);color:#dc2626}.modal-notification-icon-error:after{border:2px solid rgba(239,68,68,.12)}.modal-timer-track{height:3px;border-radius:0 0 18px 18px;background:#e2e8f080;overflow:hidden;margin-top:4px}.modal-timer-bar{height:100%;width:100%;border-radius:0 0 18px 18px;transform-origin:left;animation:modalTimerShrink var(--modal-timer-ms, 3.2s) linear forwards}@keyframes modalTimerShrink{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.modal-timer-bar-info,.modal-timer-bar-confirm{background:linear-gradient(90deg,#3b82f6,#6366f1)}.modal-timer-bar-success{background:linear-gradient(90deg,#22c55e,#10b981)}.modal-timer-bar-warning{background:linear-gradient(90deg,#f59e0b,#ea580c)}.modal-timer-bar-error{background:linear-gradient(90deg,#ef4444,#dc2626)}.modal-copy p{margin:0;color:var(--tx2);line-height:1.6}.payment-cooldown-countdown{margin:14px 0 10px;font-size:48px;line-height:1;font-weight:800;text-align:center;color:var(--amber)}.payment-cooldown-caption{text-align:center}.modal-footer{background:transparent;border-top:1px solid rgba(148,163,184,.28);justify-content:flex-end;position:relative;align-items:center;flex-wrap:wrap;flex-shrink:0;row-gap:12px;padding:18px 18px 20px;overflow:visible}.modal-footer>*{position:relative;z-index:1}.modal-footer .app-button{min-height:38px;flex-shrink:0}.icon-button{width:36px;height:36px;border-radius:12px;border:1px solid var(--br);background:var(--bg3);display:grid;place-items:center;flex-shrink:0;padding:0;line-height:0;overflow:visible;-moz-appearance:none;appearance:none;-webkit-appearance:none}.modal-header .icon-button{position:relative;z-index:1;align-self:flex-start}.icon-button svg{display:block;width:18px;height:18px;flex-shrink:0}.form-grid{display:grid;gap:14px;min-width:0}.form-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.form-block{display:flex;flex-direction:column;gap:6px;min-width:0;max-width:100%}.form-block span{font-size:12px;color:#64748b;font-weight:600;letter-spacing:.02em}.search-select{display:flex;flex-direction:column;gap:6px}.search-select .toolbar-search{flex:0 0 auto;width:100%;min-height:36px}.search-select-list{display:flex;flex-direction:column;gap:6px;max-height:200px;overflow-y:auto;padding:6px;border:1px solid transparent;border-radius:14px;background:#eef2f7;box-shadow:inset 3px 3px 6px #94a3b866,inset -3px -3px 6px #ffffffe6}.search-select-item{display:flex;flex-direction:column;align-items:flex-start;gap:3px;width:100%;padding:8px 10px;border:1px solid transparent;border-radius:12px;background:#eef2f7;text-align:left;box-shadow:3px 3px 6px #94a3b859,-3px -3px 6px #ffffffe6;transition:border-color .2s ease,background-color .2s ease,box-shadow .2s ease}.search-select-item:hover,.search-select-item-active{border-color:#2563eb59;background:#2563eb14;box-shadow:0 10px 24px #0f172a14}.search-select-item strong,.search-select-picked strong{font-size:13px;color:var(--tx)}.search-select-item small,.search-select-picked small,.search-select-empty{font-size:11px;color:var(--tx2)}.search-select-picked{display:flex;flex-direction:column;gap:3px;padding:8px 10px;border:1px solid rgba(34,197,94,.2);border-radius:12px;background:#22c55e14}.search-select-empty{padding:8px 10px;border:1px dashed var(--br);border-radius:12px;background:#f8fbff}.inline-field-row{display:flex;align-items:center;gap:10px}.inline-field-row>*:first-child{flex:1}.inline-field-row .app-button{min-width:148px;white-space:nowrap}.speed-group{display:flex;align-items:stretch;gap:10px}.speed-group-field{flex:1;display:flex;flex-direction:column;gap:6px;padding:10px 12px 12px;border:1px solid var(--br);border-radius:14px;background:#fff}.speed-group-field small{font-size:11px;font-weight:700;letter-spacing:.02em;color:var(--tx3)}.speed-group-field input{border-radius:10px}.speed-group-unit{min-width:78px;display:grid;place-items:center;padding:0 14px;border:1px solid var(--br);border-radius:14px;background:var(--bg3);color:var(--tx2);font-size:13px;font-weight:700}.field-help{display:block;margin-top:6px;font-size:12px;line-height:1.5;color:var(--tx3);overflow-wrap:anywhere;word-break:break-word}.field-help-error{color:var(--danger, #d14343);font-weight:600}.field-live-load{display:flex;align-items:center;gap:6px;margin-top:6px;font-size:12px;line-height:1.5;color:var(--tx3)}.field-help-section{display:block;margin-top:10px}.input-with-action{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:stretch}.input-with-action .btn{min-width:104px}.package-profile-row{align-items:stretch}.tenant-checkbox{flex-direction:row;align-items:center;gap:10px}.tenant-checkbox input[type=checkbox]{width:18px;height:18px;padding:0;flex-shrink:0}.tenant-checkbox span{font-size:14px;color:var(--tx)}.tenant-checkbox:has(input[type=checkbox]:checked) span{color:var(--blue-d)}.tenant-checkbox-card{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:flex-start;gap:12px;padding:14px 16px;border:1px solid color-mix(in srgb,var(--br) 84%,transparent);border-radius:16px;background:color-mix(in srgb,var(--bg2) 72%,white);cursor:pointer;transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease,transform .18s ease}.tenant-checkbox-card:hover{border-color:color-mix(in srgb,var(--pr) 28%,var(--br));background:color-mix(in srgb,var(--bg2) 86%,white)}.tenant-checkbox-card:has(input[type=checkbox]:checked){border-color:color-mix(in srgb,var(--pr) 36%,var(--br));background:color-mix(in srgb,var(--pr) 7%,white);box-shadow:0 10px 24px #0f172a0f}.tenant-checkbox-card input[type=checkbox]{margin-top:2px;justify-self:start}.tenant-checkbox-content{min-width:0;display:grid;gap:4px}.tenant-checkbox-content strong{display:block;font-size:13px;font-weight:700;letter-spacing:.01em;color:var(--tx)}.tenant-checkbox-content span{display:block;font-size:12px;line-height:1.45;color:var(--tx)}.tenant-checkbox-content small{margin-top:2px;line-height:1.5}.monitor-issue-meta-bar{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:16px;margin-top:12px}.monitor-issue-meta-text{font-size:.85rem}.form-hint{border:1px solid var(--br);border-radius:14px;background:var(--bg3);color:var(--tx2);line-height:1.6;padding:12px 14px}.tenant-stats{display:grid;gap:4px;font-size:12px;color:var(--tx2)}.tenant-health{display:grid;gap:6px}.tenant-health-copy{max-width:260px;font-size:12px;color:var(--tx2);line-height:1.5}.tenant-payment-confirmation{display:inline-flex;align-items:flex-start;gap:8px;line-height:1.6}.role-permission-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.role-permission-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:12px;border-bottom:1px solid var(--border-color)}.role-permission-toolbar-info{display:grid;gap:4px}.role-permission-toolbar-info h4{margin:0;font-size:14px}.role-permission-toolbar-info p{margin:0;color:var(--tx3);font-size:12px}.role-permission-toolbar-actions{display:flex;flex-wrap:wrap;gap:8px}.role-permission-overview{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.role-permission-stat{display:grid;gap:4px;padding:14px 16px;border:1px solid var(--border-color);border-radius:14px;background:#0f172a05}.role-permission-stat strong{color:var(--blue-d);font-size:24px;line-height:1}.role-permission-stat span{color:var(--tx);font-size:12px;font-weight:700}.role-permission-stat small{color:var(--tx3);font-size:11px;line-height:1.5}.role-section-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--border-color);border-radius:14px}.role-section-intro-dashboard{background:linear-gradient(180deg,#378add14,#378add08);border-color:#378add2e}.role-section-intro-main{display:grid;gap:4px}.role-section-intro-main h4{margin:0;font-size:14px}.role-section-intro-main p{margin:0;color:var(--tx3);font-size:12px;line-height:1.5}.role-section-badge{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#ffffffc7;color:var(--blue-d);font-size:11px;font-weight:700;white-space:nowrap}.role-dashboard-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.role-dashboard-option{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border:1px solid var(--border-color);border-radius:14px;background:#0f172a05;transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.role-dashboard-option:hover{border-color:#378add3d;background:#378add0a}.role-dashboard-option-active{border-color:#378add57;background:#378add14;box-shadow:inset 0 0 0 1px #378add14}.role-dashboard-option input[type=radio]{width:16px;height:16px;margin-top:2px}.role-dashboard-option-body{display:grid;gap:4px}.role-dashboard-option-body span{color:var(--tx);font-size:12px;font-weight:700}.role-dashboard-option-body small{color:var(--tx3);font-size:11px;line-height:1.45}.role-dashboard-helper{padding:10px 12px;border-radius:12px;background:#0f172a08;color:var(--tx3);font-size:11px;line-height:1.55}.role-section-divider{height:1px;background:linear-gradient(90deg,#0f172a14,#0f172a05)}.role-permission-sections{display:grid;gap:12px}.role-permission-panels{display:grid;gap:14px}.role-permission-panel{display:grid;gap:12px;padding:14px 16px;border:1px solid var(--border-color);border-radius:16px;background:linear-gradient(180deg,#0f172a05,#0f172a03)}.role-permission-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.role-permission-panel-title{display:grid;gap:4px}.role-permission-panel-title h4{margin:0;font-size:14px;color:var(--tx)}.role-permission-panel-title p{margin:0;color:var(--tx3);font-size:12px;line-height:1.55}.voucher-wa-send-shell{display:grid;gap:12px}.voucher-wa-send-head{display:grid;gap:4px}.voucher-wa-send-head h4{margin:0;font-size:14px;color:var(--tx)}.voucher-wa-send-head p{margin:0;font-size:12px;line-height:1.5;color:var(--tx3)}.voucher-wa-send-input{font-size:16px;font-weight:700;letter-spacing:.01em}.role-permission-action-sections{display:grid;gap:12px}.role-permission-action-section{display:grid;gap:10px;padding:14px;border:1px solid rgba(55,138,221,.14);border-radius:14px;background:#378add08}.role-permission-section{display:grid;gap:10px;padding:14px 16px;border:1px solid var(--border-color);border-radius:14px;background:var(--panel-bg)}.role-permission-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.role-permission-section-head h5{margin:0;font-size:13px;color:var(--tx)}.role-permission-section-head small{color:var(--tx3);font-size:11px}.role-permission-section-action{border:0;background:transparent;color:var(--blue-d);font-size:12px;font-weight:600;cursor:pointer}.role-permission-compact-grid{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.role-permission-option{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border:1px solid var(--border-color);border-radius:12px;background:#0f172a05;transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.role-permission-option:hover{border-color:#378add3d;background:#378add0a;transform:translateY(-1px)}.role-permission-option:has(input[type=checkbox]:checked){border-color:#378add57;background:#378add14;box-shadow:inset 0 0 0 1px #378add14}.role-permission-option-action{background:#378add08}.role-permission-option input[type=checkbox]{width:16px;height:16px;margin-top:2px}.role-permission-option-body{display:grid;gap:3px}.role-permission-option-body span{color:var(--tx);font-size:12px;font-weight:600}.role-permission-option-body small{color:var(--tx3);font-size:11px;line-height:1.45}.role-table-note,.role-permission-empty{color:var(--tx3);font-size:11px;line-height:1.55}.ticket-status-dialog-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:16px}.ticket-status-dialog-summary-item{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border:1px solid rgba(219,230,241,.95);border-radius:14px;background:linear-gradient(180deg,#fff,#f8fbff);min-width:0}.ticket-status-dialog-summary-item small{font-size:11px;line-height:1.45;color:var(--tx3)}.ticket-status-dialog-summary-item strong{font-size:13px;line-height:1.5;color:var(--tx);word-break:break-word}.ticket-status-dialog-summary-item-full{grid-column:1 / -1}.role-permission-summary{display:flex;flex-wrap:wrap;gap:8px}.role-permission-summary-compact{align-items:center;gap:6px}.role-permission-badge{display:inline-flex;align-items:center;padding:5px 10px;border-radius:999px;background:#2563eb1a;color:var(--blue-d);font-size:11px;font-weight:600}.role-permission-more{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;background:#0f172a0f;color:var(--tx2);font-size:11px;font-weight:600}@media(max-width:768px){.role-section-intro{flex-direction:column;align-items:stretch}.role-section-badge{align-self:flex-start}}@media(max-width:720px){.role-permission-toolbar,.role-permission-section-head,.role-permission-panel-head{flex-direction:column;align-items:stretch}.role-permission-toolbar-actions{width:100%}.role-permission-toolbar-actions .app-button{flex:1 1 0}}.tenant-refresh-note{display:grid;gap:4px;justify-items:end;text-align:right;font-size:12px;color:var(--tx3)}.pppoe-traffic-dialog{display:grid;gap:18px}.pppoe-traffic-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.pppoe-traffic-toolbar-info{display:grid;gap:5px}.pppoe-traffic-toolbar-info strong{font-size:15px;color:var(--tx)}.pppoe-traffic-toolbar-info span{font-size:12px;color:var(--tx2)}.pppoe-traffic-mode-switch{display:inline-flex;align-items:center;gap:8px;padding:6px;background:#eef2f7;border-radius:16px;box-shadow:inset 3px 3px 6px #94a3b866,inset -3px -3px 6px #ffffffe6}.pppoe-traffic-mode-button{border:none;border-radius:12px;padding:10px 14px;background:transparent;color:var(--tx2);font-size:12px;font-weight:700}.pppoe-traffic-mode-button-active{background:#2563eb1f;color:var(--blue-d);box-shadow:0 10px 20px #2563eb24}.pppoe-traffic-error{padding:12px 14px;border:1px solid rgba(220,38,38,.18);border-radius:14px;background:#fef2f2eb;color:#b91c1c;font-size:12px;font-weight:600}.pppoe-traffic-bar-layout{display:grid;gap:16px}.pppoe-traffic-bar-card{border:1px solid var(--br);border-radius:18px;padding:16px 18px;background:var(--surface);display:grid;gap:12px}.pppoe-traffic-bar-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.pppoe-traffic-bar-head strong{font-size:14px;color:var(--tx)}.pppoe-traffic-bar-head span{font-size:12px;color:var(--tx2)}.pppoe-traffic-bar-track{height:18px;border-radius:999px;background:#2563eb14;overflow:hidden}.pppoe-traffic-bar-track-danger{background:#dc26261f}.pppoe-traffic-bar-fill{position:relative;height:100%;border-radius:inherit;background:linear-gradient(90deg,#22c55e,#38bdf8);transition:width .22s ease}.pppoe-traffic-bar-fill-active{animation:pppoeTrafficPulse 1.4s ease-in-out infinite}.pppoe-traffic-bar-fill-active:after{content:"";position:absolute;top:50%;right:4px;width:10px;height:10px;border-radius:999px;background:#fffffff2;transform:translateY(-50%);box-shadow:0 0 0 4px #ffffff2e}.pppoe-traffic-bar-fill-upload{background:linear-gradient(90deg,#2563eb,#8b5cf6)}.pppoe-traffic-bar-fill-warning{background:linear-gradient(90deg,#f59e0b,#f97316)}.pppoe-traffic-bar-fill-danger{background:linear-gradient(90deg,#ef4444,#dc2626)}.pppoe-traffic-bar-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;color:var(--tx2)}@keyframes pppoeTrafficPulse{0%,to{filter:saturate(1);box-shadow:0 0 #38bdf800}50%{filter:saturate(1.12);box-shadow:0 0 16px #38bdf83d}}.pppoe-traffic-graph-card{border:1px solid rgba(15,23,42,.3);border-radius:22px;padding:18px;background:linear-gradient(180deg,#081018,#0f172a);box-shadow:inset 0 1px #ffffff08;display:grid;gap:14px}.pppoe-traffic-graph-stack{display:grid;gap:16px}.pppoe-traffic-graph-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.pppoe-traffic-graph-head strong{color:#e2e8f0;font-size:14px}.pppoe-traffic-graph-head span{font-size:12px;color:#94a3b8}.pppoe-traffic-graph-wrap{border-radius:16px;overflow:hidden;background:linear-gradient(#0f172a1a,#0f172a1a),repeating-linear-gradient(to right,rgba(148,163,184,.08) 0,rgba(148,163,184,.08) 1px,transparent 1px,transparent 56px)}.pppoe-traffic-graph-layout{display:grid;grid-template-columns:72px minmax(0,1fr);gap:12px;align-items:stretch}.pppoe-traffic-graph-main{display:grid;gap:8px}.pppoe-traffic-graph-y-axis{display:grid;grid-template-rows:repeat(5,1fr);align-items:stretch;padding-block:8px}.pppoe-traffic-graph-y-axis span{display:flex;align-items:center;justify-content:flex-end;color:#94a3b8;font-size:11px;font-weight:600}.pppoe-traffic-graph-x-axis{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#94a3b8;font-size:11px;font-weight:600}.pppoe-traffic-graph{width:100%;height:280px;display:block}.pppoe-traffic-grid-line{stroke:#94a3b82e;stroke-width:1}.pppoe-traffic-graph-download,.pppoe-traffic-graph-upload{fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.pppoe-traffic-graph-download{stroke:#22c55e;filter:drop-shadow(0 0 8px rgba(34,197,94,.35))}.pppoe-traffic-graph-upload{stroke:#38bdf8;filter:drop-shadow(0 0 8px rgba(56,189,248,.35))}.pppoe-traffic-legend{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.pppoe-traffic-legend-item{display:inline-flex;align-items:center;gap:8px;color:#cbd5e1;font-size:12px;font-weight:600}.pppoe-traffic-legend-swatch{width:12px;height:12px;border-radius:999px;display:inline-block}.pppoe-traffic-legend-swatch-download{background:#22c55e}.pppoe-traffic-legend-swatch-upload{background:#38bdf8}.form-block-full{grid-column:1 / -1}.allowance-paid-toggle{display:inline-flex;align-items:center;justify-content:center;padding:8px 18px;border:1px solid transparent;border-radius:8px;background:#eef2f7;color:#9ca3af;font-size:12px;font-weight:700;cursor:pointer;transition:all .18s;min-width:72px;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;box-shadow:3px 3px 6px #94a3b866,-3px -3px 6px #fffffff2}.allowance-paid-toggle:hover{border-color:#10b981;color:#10b981;background:#f0fdf4}.allowance-paid-toggle--yes{border-color:#10b981;background:#10b981;color:#fff}.allowance-paid-toggle--yes:hover{background:#059669;border-color:#059669;color:#fff}.dialog-form-layout,.customer-form-layout{display:grid;gap:18px;min-width:0}.dialog-form-layout.form-compact,.customer-form-layout.form-compact{gap:12px}.dialog-form-layout.form-flush,.customer-form-layout.form-flush{padding:0}.dialog-form-layout>*,.customer-form-layout>*{min-width:0;max-width:100%}.form-section{border:1px solid var(--br);border-radius:20px;background:linear-gradient(180deg,#fff,#fafaf8);padding:18px;min-width:0;max-width:100%;box-shadow:inset 0 1px #fffc,0 10px 24px #131d2b0d}.form-section-head{margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid #ebecef}.form-section-head h4{margin:0;font-size:14px;font-weight:700;font-family:Roboto,Open Sans,Segoe UI,sans-serif;line-height:1.35;letter-spacing:-.01em;overflow-wrap:anywhere;word-break:break-word}.form-section-head p{margin:4px 0 0;color:var(--tx3);font-size:11.5px;line-height:1.45;overflow-wrap:anywhere;word-break:break-word}.form-compact .form-section-head{margin-bottom:10px;padding-bottom:10px}.form-compact .form-section-head p{margin-top:3px;font-size:11px}.form-compact .form-grid{gap:8px}.form-compact .form-block{gap:3px}.form-compact input,.form-compact select,.form-compact textarea{padding:6px 10px}.form-compact input,.form-compact select{min-height:34px}.form-compact textarea{min-height:76px}.modal-body .dialog-form-layout,.modal-body .customer-form-layout{gap:16px}.modal-body .form-section{border:0;border-radius:0;background:transparent;box-shadow:none;padding:2px 0 0}.modal-body .form-section+.form-section{margin-top:2px;padding-top:18px;border-top:1px solid #e7edf5}.modal-body .form-section-head{margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid #e7edf5}.genieacs-settings-form{gap:0}.genieacs-settings-form .form-section-flat{border:0;border-radius:0;background:transparent;box-shadow:none;padding:0}.genieacs-settings-form .form-section-flat+.form-section-flat{margin-top:18px;padding-top:18px;border-top:1px solid #e7edf5}.settings-logo-card{display:grid;grid-template-columns:140px 1fr;gap:16px;align-items:stretch;padding:14px;border:1px solid #d9e2ec;border-radius:18px;background:linear-gradient(180deg,#fff,#f8fbff)}.settings-logo-preview{display:flex;align-items:center;justify-content:center;min-height:140px;padding:12px;border:1px dashed #c8d7ea;border-radius:16px;background:#ffffffeb;overflow:hidden}.settings-logo-preview img{max-width:100%;max-height:112px;-o-object-fit:contain;object-fit:contain}.settings-logo-placeholder{color:var(--tx3);font-size:12px;font-weight:500;text-align:center}.settings-logo-actions{display:flex;flex-direction:column;justify-content:center;gap:10px}.settings-logo-actions small{color:var(--tx2);font-size:11px;line-height:1.6}.settings-logo-actions code{color:var(--blue-d);font-size:11px}.notification-template-placeholders{display:flex;flex-wrap:wrap;gap:10px}.notification-template-placeholders code{padding:8px 12px;border-radius:12px;border:1px solid #dbe6f1;background:linear-gradient(180deg,#fff,#f8fbff);color:var(--blue-d);font-size:12px}.notification-template-card-meta{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.notification-template-card-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.notification-template-card-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px}.notification-template-card-actions .form-block{min-width:240px}.notification-template-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.notification-template-toggle{flex-shrink:0;min-width:124px}.notification-template-admin-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.notification-template-badge{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:0 12px;border-radius:999px;background:#0ea5e914;border:1px solid rgba(14,165,233,.14);color:var(--blue-d);font-size:12px;font-weight:700}.notification-template-note{margin-top:14px;padding:14px 16px;border-radius:16px;border:1px solid rgba(37,99,235,.12);background:linear-gradient(180deg,#fffffffa,#eff6fff5);color:var(--tx2);font-size:12px;line-height:1.65}.notification-template-day-grid{display:flex;flex-wrap:wrap;gap:8px}.notification-template-day-chip{min-width:48px;min-height:34px;padding:0 12px;border-radius:999px;border:1px solid #dbe6f1;background:#fff;color:var(--tx2);font-size:12px;font-weight:700;cursor:pointer;transition:all .15s ease}.notification-template-day-chip:hover{border-color:#2563eb47;color:var(--blue-d)}.notification-template-day-chip-active{border-color:#2563eb33;background:#2563eb1a;color:var(--blue-d)}.chip-group{display:flex;flex-wrap:wrap;gap:8px}.chip{min-width:48px;min-height:34px;padding:0 12px;border-radius:999px;border:1px solid transparent;background:#eef2f7;color:var(--tx2);font-size:12px;font-weight:700;cursor:pointer;transition:all .15s ease;display:inline-flex;align-items:center;justify-content:center;box-shadow:3px 3px 6px #94a3b866,-3px -3px 6px #fffffff2}.chip:hover{border-color:#2563eb47;color:var(--blue-d)}.chip-active{border-color:transparent;background:#eef2f7;color:var(--blue-d);box-shadow:inset 2px 2px 4px #94a3b873,inset -2px -2px 4px #ffffffe6}.notification-template-format-guide{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.notification-template-format-card{display:grid;gap:8px;padding:14px 16px;border-radius:16px;border:1px solid rgba(37,99,235,.12);background:linear-gradient(180deg,#fffffffa,#f8fafcf5)}.notification-template-format-card strong{color:var(--tx);font-size:13px}.notification-template-format-card code{display:inline-flex;width:-moz-fit-content;width:fit-content;max-width:100%;padding:6px 10px;border-radius:10px;background:#2563eb14;color:var(--blue-d);font-size:12px;font-weight:700;word-break:break-word}.notification-template-format-card p{margin:0;color:var(--tx2);font-size:12px;line-height:1.6}.notification-template-bank-preview{margin:10px 0 0;padding:12px 14px;border-radius:14px;border:1px dashed rgba(37,99,235,.18);background:#ffffffd1;color:var(--tx);font-size:12px;line-height:1.7;white-space:pre-wrap;word-break:break-word}.notification-template-collapsed-note{padding:14px 16px;border-radius:16px;border:1px dashed rgba(148,163,184,.28);background:linear-gradient(180deg,#fffffffa,#f8fafcf2);color:var(--tx2);font-size:12px;line-height:1.65}.notification-template-footer{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px;padding-top:6px}.notification-template-toolbar{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px}.notification-admin-dialog-summary{display:grid;grid-template-columns:40px minmax(0,1fr);gap:12px;padding:14px 16px;border-radius:18px;border:1px solid rgba(37,99,235,.12);background:linear-gradient(180deg,#fffffffa,#eff6fff5)}.notification-admin-dialog-overview{display:grid;gap:14px;margin-bottom:14px}.notification-admin-dialog-metrics{gap:12px}.notification-admin-dialog-metrics .metric-card{min-height:100%}.notification-admin-summary-icon{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:14px;background:#2563eb1a;color:var(--blue-d)}.notification-admin-dialog-summary strong{display:block;color:var(--tx);font-size:13px}.notification-admin-dialog-summary p{margin:4px 0 0;color:var(--tx2);font-size:12px;line-height:1.65}.notification-admin-control-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:12px;align-items:stretch}.notification-admin-setting-card{height:100%;padding:14px 16px;border-radius:18px;border:1px solid rgba(148,163,184,.18);background:linear-gradient(180deg,#fffffffa,#f8fafcf5)}.notification-admin-setting-help{margin:10px 0 0;color:var(--tx2);font-size:12px;line-height:1.6}.notification-admin-trigger-pill{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 12px;border-radius:999px;border:1px solid rgba(37,99,235,.14);background:#2563eb14;color:var(--blue-d);font-size:12px;font-weight:700;white-space:nowrap}.notification-admin-option-grid,.notification-admin-template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.notification-admin-option-grid{max-height:min(42dvh,420px);overflow:auto;padding-right:4px;align-content:start}.notification-admin-option-card{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:flex-start;gap:10px;min-height:100%;padding:12px 13px;border:1px solid color-mix(in srgb,var(--br) 84%,transparent);border-radius:16px;background:color-mix(in srgb,var(--bg2) 76%,white);cursor:pointer;transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease,transform .18s ease}.notification-admin-option-card:hover{border-color:color-mix(in srgb,var(--pr) 24%,var(--br));background:color-mix(in srgb,var(--bg2) 88%,white)}.notification-admin-option-card:has(input[type=checkbox]:checked){border-color:color-mix(in srgb,var(--pr) 34%,var(--br));background:color-mix(in srgb,var(--pr) 6%,white);box-shadow:0 8px 18px #0f172a0d}.notification-admin-option-card input[type=checkbox]{width:18px;height:18px;margin-top:1px;padding:0;justify-self:start;flex-shrink:0}.notification-admin-option-content{min-width:0;display:grid;gap:3px}.notification-admin-option-content strong{display:block;color:var(--tx);font-size:12.5px;font-weight:700;line-height:1.35}.notification-admin-option-content span{display:-webkit-box;overflow:hidden;color:var(--tx2);font-size:11.5px;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:3}.notification-admin-template-card{margin:0}.notification-template-page .dialog-form-layout{gap:16px}.notification-template-page .customer-detail-tabs{margin-top:2px}.notification-template-page .notification-template-footer{padding-top:2px}.voucher-template-workspace{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.voucher-template-preview-card{gap:12px}.voucher-template-preview-frame{width:100%;min-height:700px;border:1px solid rgba(148,163,184,.24);border-radius:18px;background:#fff}.voucher-template-editor-shell{display:flex;min-height:min(76dvh,920px)}.voucher-template-editor-textarea{flex:1;width:100%;min-height:min(76dvh,920px);font-family:Open Sans,Roboto,Segoe UI,sans-serif;resize:none;border-radius:18px}.voucher-template-selected-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.voucher-template-selected-head .form-section-head{flex:1;margin-bottom:0}.voucher-template-selected-actions{display:flex;align-items:center;gap:10px}.voucher-template-selected-card{margin-top:14px;padding:16px;border:1px solid #d9e2ec;border-radius:18px;background:linear-gradient(180deg,#fff,#f8fbff)}.voucher-template-placeholder-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.voucher-template-placeholder-card{display:grid;gap:10px;padding:14px;border:1px solid #dbe6f1;border-radius:16px;background:linear-gradient(180deg,#fff,#f8fbff)}.voucher-template-placeholder-token{display:flex;align-items:center;gap:10px;min-width:0}.voucher-template-placeholder-token code{min-width:0;color:var(--blue-d);font-size:12px;font-weight:700;overflow-wrap:anywhere;word-break:break-word}.voucher-template-placeholder-card p{margin:0;color:var(--tx2);font-size:12px;line-height:1.55}.notification-summary-card{padding:18px}.notification-summary-card small{display:block;color:var(--tx3);font-size:11px;font-weight:700}.notification-summary-card strong{display:block;margin-top:6px;color:var(--tx);font-size:24px;line-height:1.2}.queue-message-preview{max-width:360px}.customer-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.customer-photo-card{display:flex;flex-direction:column;gap:10px;padding:14px;border:1px solid transparent;border-radius:18px;background:#eef2f7;box-shadow:6px 6px 12px #94a3b859,-6px -6px 12px #ffffffe6}.customer-photo-title{font-size:13px;font-weight:600;color:var(--tx)}.customer-photo-preview{display:flex;align-items:center;justify-content:center;min-height:168px;padding:12px;border:1px solid transparent;border-radius:16px;background:#eef2f7;box-shadow:inset 2px 2px 4px #94a3b873,inset -2px -2px 4px #ffffffe6;overflow:hidden}.customer-photo-preview img{width:100%;max-height:180px;-o-object-fit:contain;object-fit:contain;border-radius:12px}.customer-photo-preview-button{width:100%;height:100%;padding:0;border:0;background:transparent;cursor:zoom-in}.customer-photo-preview-button img{display:block}.customer-photo-placeholder{color:var(--tx3);font-size:12px;font-weight:500;text-align:center}.customer-photo-card small{color:var(--tx2);font-size:11px;line-height:1.6}.customer-location-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.customer-photo-card small{display:inline-flex;align-items:center;gap:6px}.customer-detail-layout{display:grid;gap:12px;min-width:0}.customer-detail-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.customer-detail-section-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.customer-detail-refresh-button{flex-shrink:0}.customer-olt-config-panel{display:grid;gap:12px}.customer-olt-config-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid transparent;border-radius:14px;background:#eef2f7;box-shadow:4px 4px 8px #94a3b859,-4px -4px 8px #ffffffe6}.customer-olt-config-meta span{color:var(--tx3);font-size:11px;font-weight:600}.customer-olt-config-meta strong{color:var(--tx);font-size:12.5px;font-weight:700}.customer-olt-config-pre{margin:0;max-height:62vh;overflow:auto;padding:14px 16px;border:1px solid rgba(224,224,221,.92);border-radius:16px;background:#0f172a;color:#e2e8f0;font-size:12px;line-height:1.6;white-space:pre-wrap;word-break:break-word}.customer-detail-refresh-error{margin-top:8px;padding:8px 12px;border:1px solid rgba(220,38,38,.18);border-radius:10px;background:#fef2f2e6;color:#b91c1c;font-size:11.5px;font-weight:600}.customer-detail-tabs,.app-tabs{display:flex;gap:4px;margin-bottom:16px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;background:#eef2f7;border:1px solid transparent;padding:4px;border-radius:14px;align-items:center;box-shadow:inset 3px 3px 6px #94a3b866,inset -3px -3px 6px #ffffffe6}.customer-detail-tabs::-webkit-scrollbar,.app-tabs::-webkit-scrollbar{display:none}.customer-detail-tab,.app-tab{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;border-radius:10px;background:transparent;color:#64748b;padding:8px 16px;font-family:Open Sans,Roboto,Segoe UI,sans-serif;font-size:13px;font-weight:600;white-space:nowrap;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);flex-shrink:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.customer-detail-tab:hover,.app-tab:hover{color:#0f172a;background:#fff9;transform:translateY(-1px)}.customer-detail-tab-active,.app-tab-active{background:#fff!important;color:#2563eb!important;font-weight:700!important;box-shadow:3px 3px 6px #94a3b873,-3px -3px 6px #fffffff2!important}.customer-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.customer-detail-item{display:flex;flex-direction:column;justify-content:center;gap:3px;padding:10px 14px;border-radius:12px;background:#eef2f7;border:1px solid transparent;box-shadow:inset 2px 2px 4px #94a3b873,inset -2px -2px 4px #ffffffe6;transition:all .2s ease}.customer-detail-item:hover{box-shadow:inset 2px 2px 4px #94a3b873,inset -2px -2px 4px #ffffffe6,0 2px 6px #94a3b840;transform:translateY(-1px)}.customer-detail-item span{color:var(--tx3);font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;line-height:1.2}.customer-detail-item strong{color:var(--tx);font-size:13.5px;font-weight:600;line-height:1.4;word-break:break-word}.customer-detail-inline-value{display:inline-flex;align-items:center;gap:8px;min-width:0}.customer-detail-wa-button{width:36px;height:36px;border-radius:999px;border:0;background:#25d36624;color:#0f9d58;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:transform .16s ease,background .16s ease}.customer-detail-wa-button:hover{background:#25d36638;transform:translateY(-1px)}.dialog-success-hero{display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center;padding:8px 0 0}.dialog-success-hero>svg{flex-shrink:0}.dialog-success-hero-title{margin:0;color:var(--tx);font-size:16px;font-weight:700;line-height:1.35}.dialog-success-hero-meta{margin-top:2px;color:var(--tx2);font-size:13px;line-height:1.5}.dialog-success-hero-meta strong{color:var(--tx);font-weight:600}.dialog-success-hero-copy{margin:0;color:var(--tx2);font-size:13px;line-height:1.5}.dialog-credentials-card{width:100%;display:grid;gap:0;border-radius:14px;border:1px solid rgba(148,163,184,.2);background:linear-gradient(180deg,#f8fafcfa,#f1f5f9f5);overflow:hidden}.dialog-credential-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px}.dialog-credential-row+.dialog-credential-row{border-top:1px solid rgba(148,163,184,.14)}.dialog-credential-row>span{flex-shrink:0;color:var(--tx2);font-size:12.5px;font-weight:500}.dialog-credential-value{display:flex;align-items:center;gap:8px;min-width:0}.dialog-credential-code{font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:13.5px;font-weight:600;color:var(--tx);background:#3b82f614;padding:3px 10px;border-radius:8px;border:1px solid rgba(59,130,246,.12);letter-spacing:.02em;word-break:break-all}.dialog-copy-button{flex-shrink:0;padding:5px!important;min-width:unset!important;border-radius:8px!important}.dialog-footnote{margin:0;color:var(--tx3, #94a3b8);font-size:12px;line-height:1.55;text-align:center}.dialog-actions-split{display:flex;align-items:center;gap:10px;width:100%}.dialog-actions-split>.app-button{flex:1}.customer-delete-dialog{gap:14px}.customer-delete-hero{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;padding:14px 16px;border-radius:16px;border:1px solid rgba(239,68,68,.14);background:linear-gradient(180deg,#fff4f4f5,#fef2f2e6)}.customer-delete-hero-icon{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:14px;background:#ef44441f;color:#dc2626;box-shadow:inset 0 0 0 1px #ef444414}.customer-delete-hero-copy{display:grid;gap:4px;min-width:0}.customer-delete-hero-copy strong{color:#991b1b;font-size:14px;font-weight:700;line-height:1.35}.customer-delete-hero-copy p{margin:0;color:#7f1d1d;font-size:12.5px;line-height:1.6}.customer-delete-summary{gap:10px}.customer-delete-options{display:grid;gap:10px}.customer-delete-option{display:grid;gap:9px;padding:12px 14px;border-radius:16px;border:1px solid rgba(148,163,184,.24);background:#f8fafc;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease,transform .18s ease}.customer-delete-option:hover{border-color:#3b82f638;background:#f8fbff;transform:translateY(-1px)}.customer-delete-option-active{border-color:#3b82f647;background:linear-gradient(180deg,#eff6fff5,#f3f8ffeb);box-shadow:0 10px 24px #3b82f614}.customer-delete-option-disabled{opacity:.72;cursor:not-allowed;background:#f8fafc;transform:none}.customer-delete-option-disabled:hover{border-color:#94a3b83d;background:#f8fafc;transform:none}.customer-delete-option-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:start}.customer-delete-option-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:12px;background:#94a3b81f;color:#475569}.customer-delete-option-active .customer-delete-option-icon{background:#3b82f61f;color:#2563eb}.customer-delete-option-copy{display:grid;gap:4px;min-width:0}.customer-delete-option-title{color:var(--tx);font-size:13.5px;font-weight:700;line-height:1.35}.customer-delete-option-description{color:var(--tx2);font-size:12px;line-height:1.55}.customer-delete-option input[type=checkbox]{width:18px;height:18px;margin-top:2px;padding:0}.customer-delete-option-meta{display:block;padding-left:48px;color:var(--tx3);font-size:11.5px;line-height:1.5}.customer-delete-footnote{background:linear-gradient(180deg,#fffaf5f0,#fff7ede0);border-color:#fb923c2e}.customer-delete-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;width:100%}.customer-delete-actions .app-button{width:100%;min-width:0;justify-content:center;white-space:nowrap}.customer-detail-status{display:flex;align-items:center;margin-top:2px}.customer-detail-item-full{grid-column:1 / -1}.customer-detail-item-modem-model{justify-content:space-between}.customer-modem-model-inline{display:flex;align-items:center;justify-content:space-between;gap:12px}.customer-modem-model-inline strong{flex:1;min-width:0}.customer-modem-illustration-card{display:flex;flex:0 0 auto;margin-top:0;padding:0;border:0;background:transparent}.customer-modem-illustration-button{display:inline-flex;padding:0;border:0;border-radius:14px;background:transparent;cursor:zoom-in;transition:transform .16s ease,box-shadow .16s ease}.customer-modem-illustration-button:hover{transform:translateY(-1px)}.customer-modem-illustration-image,.customer-modem-illustration-empty{width:100%;max-width:88px;min-height:58px;border-radius:12px;border:1px solid rgba(148,163,184,.18);background:#ffffffeb}.customer-modem-illustration-image{display:block;-o-object-fit:cover;object-fit:cover;box-shadow:0 10px 20px #0f172a14}.customer-modem-illustration-empty{display:grid;place-items:center;padding:10px;color:var(--tx3);text-align:center;font-size:11px;line-height:1.4;background:linear-gradient(180deg,#fff,#f8fbff)}.customer-modem-preview-modal{display:flex;justify-content:center}.customer-modem-preview-modal-image{width:100%;max-width:520px;max-height:70vh;-o-object-fit:contain;object-fit:contain;border-radius:20px;border:1px solid rgba(148,163,184,.18);background:#fff;box-shadow:0 18px 36px #0f172a1f}.customer-detail-photo-grid{align-items:stretch}.customer-detail-photo-grid .customer-photo-card{padding:14px;border-radius:18px}.customer-detail-photo-grid .customer-photo-preview{min-height:136px}.customer-detail-photo-grid .customer-photo-title{margin-bottom:4px}.customer-detail-modem-history-wrap{margin-top:4px}.customer-signal-chart-card{display:grid;gap:14px;margin-top:6px}.customer-signal-chart-summary{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;justify-items:center}.customer-signal-chart-stat{display:flex;flex-direction:column;align-items:center;gap:4px;width:100%;max-width:320px;padding:14px 16px;border:1px solid transparent;border-radius:18px;background:#eef2f7;box-shadow:6px 6px 12px #94a3b859,-6px -6px 12px #ffffffe6;text-align:center}.customer-signal-chart-stat span{color:var(--tx3);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.customer-signal-chart-stat strong{color:var(--tx);font-size:22px;line-height:1.2}.customer-signal-chart-stat small{color:var(--tx2);font-size:12px;line-height:1.5}.customer-signal-chart-panel{display:grid;gap:14px;padding:16px;border:1px solid transparent;border-radius:20px;background:#eef2f7;box-shadow:6px 6px 12px #94a3b859,-6px -6px 12px #ffffffe6}.customer-signal-chart-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.customer-signal-chart-head strong{display:block;color:var(--tx);font-size:15px}.customer-signal-chart-head p{margin:4px 0 0;color:var(--tx2);font-size:12px;line-height:1.6}.customer-signal-chart-legend{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;background:#2563eb14;color:var(--blue-d);font-size:11px;font-weight:700;white-space:nowrap}.customer-signal-chart-svg-wrap{width:100%;overflow-x:auto;padding-bottom:4px}.customer-signal-chart-svg{width:100%;min-width:620px;height:auto;display:block}.customer-signal-chart-grid{stroke:#94a3b84d;stroke-dasharray:4 6}.customer-signal-chart-axis{fill:var(--tx3);font-size:11px;font-weight:600}.customer-signal-chart-line{fill:none;stroke:#2563eb;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.customer-signal-chart-dot{fill:#2563eb;stroke:#fff;stroke-width:3}.customer-signal-chart-label{fill:var(--tx2);font-size:11px;font-weight:600}.customer-signal-chart-label-sub{fill:var(--tx3);font-size:10px;font-weight:500}.customer-signal-chart-timeline{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}.customer-signal-chart-timeline-item{display:flex;flex-direction:column;gap:3px;padding:12px 14px;border:1px solid transparent;border-radius:16px;background:#eef2f7;box-shadow:4px 4px 8px #94a3b859,-4px -4px 8px #ffffffe6}.customer-signal-chart-timeline-item strong{color:var(--tx);font-size:16px;line-height:1.2}.customer-signal-chart-timeline-item span{color:var(--tx2);font-size:12px;font-weight:600}.customer-signal-chart-timeline-item small{color:var(--tx3);font-size:11px;line-height:1.5}.customer-detail-modem-history-empty{display:flex;align-items:center;justify-content:center;min-height:140px;margin-top:6px;padding:28px 18px;text-align:center;line-height:1.6;white-space:normal;word-break:break-word}@media(max-width:768px){.customer-detail-modem-history-empty{min-height:120px;padding:22px 16px}}.customer-detail-map-card{display:grid;gap:14px;padding:16px;border:1px solid transparent;border-radius:20px;background:#eef2f7;box-shadow:6px 6px 12px #94a3b859,-6px -6px 12px #ffffffe6}.customer-detail-map-frame{width:100%;min-height:360px;border:0;border-radius:18px;background:#eef3f8}.customer-detail-map-actions{display:flex;flex-wrap:wrap;gap:12px}.customer-detail-map-action{text-decoration:none}.customer-name-with-badge{position:relative;display:inline-flex;align-items:flex-start;max-width:100%;min-height:20px;padding-right:34px}.customer-new-badge{display:inline-flex;align-items:center;justify-content:center;position:absolute;top:-3px;right:0;border-radius:999px;min-height:16px;padding:1px 7px;background:linear-gradient(135deg,#10b9812e,#0596691f);color:#047857;border:1px solid rgba(16,185,129,.35);font-size:9px;line-height:1;font-weight:800;box-shadow:0 1px 4px #10b98126;animation:customerBadgeSpinPause 5.5s cubic-bezier(.4,0,.2,1) infinite;transform-origin:center;backface-visibility:hidden}@keyframes customerBadgeSpinPause{0%{transform:rotate(0) scale(1);box-shadow:0 1px 4px #10b98126}20%{transform:rotate(360deg) scale(1.16);box-shadow:0 4px 12px #10b98173}28%{transform:rotate(360deg) scale(1);box-shadow:0 1px 4px #10b98126}to{transform:rotate(360deg) scale(1);box-shadow:0 1px 4px #10b98126}}.customers-table th:nth-child(4),.customers-table td:nth-child(4){width:1%;white-space:nowrap}.customers-table th:nth-last-child(2),.customers-table td:nth-last-child(2){width:1%;min-width:148px;white-space:nowrap}.customers-table th:last-child,.customers-table td:last-child{width:1%;min-width:82px;white-space:nowrap}.customers-table td:last-child{text-align:right}.customers-table td:last-child .row-actions-menu{justify-content:flex-end}.customers-table th:nth-child(7),.customers-table td:nth-child(7){min-width:148px}.customer-detail-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;width:100%}.customer-detail-row-actions{display:flex;align-items:center}@media(max-width:768px){.customer-detail-footer{flex-direction:column;align-items:stretch}.customer-detail-row-actions,.customer-detail-row-actions .row-actions-menu{width:100%}.customer-detail-row-actions .row-actions-trigger{width:100%;justify-content:center}}.customer-table-date-meta{display:flex;flex-direction:column;gap:4px}.customer-table-date-meta small{color:var(--tx2);font-size:11px;font-weight:600}.customer-detail-photo-preview{min-height:220px}.customer-photo-modal-preview{display:flex;justify-content:center}.customer-photo-modal-image{width:100%;max-width:960px;max-height:75vh;-o-object-fit:contain;object-fit:contain;border-radius:20px;border:1px solid rgba(148,163,184,.18);background:#fff;box-shadow:0 18px 36px #0f172a1f}.onu-config-wizard-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.onu-config-wizard-summary-card{display:grid;gap:6px;min-height:100%;padding:14px 16px;border:1px solid rgba(148,163,184,.18);border-radius:16px;background:linear-gradient(180deg,#fffffffa,#f8fafcf5);box-shadow:0 12px 28px #0f172a0d}.onu-config-wizard-summary-label{color:var(--tx3);font-size:11px;font-weight:700;letter-spacing:.02em;text-transform:uppercase}.onu-config-wizard-summary-card strong{color:var(--text);font-size:14px;font-weight:700;line-height:1.35}.onu-config-wizard-summary-card small{color:var(--tx2);font-size:11.5px;line-height:1.55}@media(max-width:720px){.onu-config-wizard-summary{grid-template-columns:minmax(0,1fr)}}.modem-catalog-grid{display:grid;gap:16px}.modem-catalog-card{gap:16px}.modem-catalog-card-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.modem-catalog-preview{display:flex;align-items:center;justify-content:center;width:min(100%,240px);min-height:148px;padding:12px;border:1px dashed #c8d7ea;border-radius:16px;background:#ffffffeb;overflow:hidden}.modem-catalog-preview img{width:100%;max-height:150px;-o-object-fit:contain;object-fit:contain;border-radius:12px}.modem-catalog-preview-empty{display:grid;gap:8px;place-items:center;color:var(--tx3);text-align:center;font-size:12px;font-weight:600}.modem-catalog-detail-layout,.modem-catalog-detail-grid,.modem-catalog-detail-card,.modem-catalog-detail-card .form-grid,.modem-catalog-detail-card .form-block{min-width:0}.modem-catalog-detail-pills{margin-bottom:2px}.modem-catalog-detail-textarea{min-height:84px;overflow-wrap:anywhere;word-break:break-word;resize:none}.modem-catalog-detail-source{overflow-wrap:anywhere;word-break:break-word}.customer-detail-payments-wrap{box-sizing:border-box}.customer-detail-payments-wrap .app-table{width:100%;min-width:0;table-layout:auto}.customer-detail-payments-wrap .app-table th:nth-child(1),.customer-detail-payments-wrap .app-table td:nth-child(1){width:56px}.customer-detail-payments-wrap .app-table th:nth-child(2),.customer-detail-payments-wrap .app-table td:nth-child(2){width:170px}.customer-detail-payments-wrap .app-table th:nth-child(3),.customer-detail-payments-wrap .app-table td:nth-child(3){width:124px}.customer-detail-payments-wrap .app-table th:nth-child(4),.customer-detail-payments-wrap .app-table td:nth-child(4){width:132px}.customer-detail-payments-wrap .app-table th:nth-child(5),.customer-detail-payments-wrap .app-table td:nth-child(5){width:92px}.customer-detail-payments-wrap .app-table th:nth-child(6),.customer-detail-payments-wrap .app-table td:nth-child(6){width:132px}.customer-detail-payments-wrap .app-table th:nth-child(7),.customer-detail-payments-wrap .app-table td:nth-child(7){width:118px}.customer-detail-payments-wrap .app-table th:nth-child(8),.customer-detail-payments-wrap .app-table td:nth-child(8){width:100px}.customer-detail-payments-wrap .app-table th:nth-child(9),.customer-detail-payments-wrap .app-table td:nth-child(9){width:auto;min-width:120px}.customer-detail-payments-wrap .app-table th:last-child,.customer-detail-payments-wrap .app-table td:last-child{width:112px;min-width:112px;white-space:nowrap;padding-right:14px}.customer-detail-payments-wrap .app-table td:last-child{text-align:right}.customer-detail-payments-wrap .app-table td:last-child .row-actions-menu{justify-content:flex-end}.customer-detail-payments-wrap .app-table td:nth-child(2),.customer-detail-payments-wrap .app-table td:nth-child(9){white-space:normal;overflow-wrap:anywhere;word-break:break-word}.customer-detail-invoice-number{display:flex;flex-direction:column;gap:8px;margin-bottom:14px;padding:16px 18px;border:1px solid #bfdbfe;border-radius:18px;background:linear-gradient(180deg,#eff6ff,#dbeafe)}.customer-detail-invoice-number span{color:#1d4ed8;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.customer-detail-invoice-number strong{color:#1e3a8a;font-size:22px;line-height:1.3;word-break:break-word}.customer-detail-invoice-summary{align-items:stretch}.customer-detail-invoice-total,.customer-detail-invoice-note{padding:14px 16px;border:1px solid #d9e2ec;border-radius:18px;background:linear-gradient(180deg,#fff,#f8fbff)}.customer-detail-invoice-total{background:linear-gradient(180deg,#eff6ff,#dbeafe);border-color:#bfdbfe}.customer-detail-invoice-total strong{color:#1e3a8a;font-size:24px}.customer-detail-invoice-note{grid-column:1 / -1}.customer-addon-list{display:flex;flex-direction:column;gap:12px}.customer-addon-empty{padding:14px 16px;border:1px dashed #c8d7ea;border-radius:16px;background:#ffffffc7;color:var(--tx3);font-size:12px}.customer-addon-row{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(140px,.8fr) auto;gap:12px;align-items:center}.customer-addon-remove{min-width:42px;padding-inline:10px;justify-content:center}.customer-addon-add{align-self:flex-start}.customer-billing-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;padding:14px 16px;border:1px solid #d9e2ec;border-radius:18px;background:linear-gradient(180deg,#fff,#f8fbff);color:var(--tx2);font-size:12px}.customer-billing-summary strong{color:var(--tx);font-size:13px;font-weight:700}.payment-customer-summary{gap:14px 18px}.payment-customer-summary>div{display:flex;flex-direction:column;gap:6px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:12px 14px}.payment-customer-summary-item-full{grid-column:1 / -1}.payment-customer-summary-stack{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.payment-customer-summary-item-highlight{padding:10px 12px;border-radius:14px;background:#3580d612}.payment-customer-summary>div>span{color:var(--tx3);font-size:11px;font-weight:600}.payment-sub-item{display:inline-flex;align-items:center;gap:4px}.payment-sub-item small{font-weight:500;color:var(--tx3);font-size:10px;text-transform:uppercase;letter-spacing:.02em}.customer-remote-status-badge{min-width:78px;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;color:#fff!important;font-weight:700;letter-spacing:.02em;text-shadow:0 1px 1px rgba(15,23,42,.18)}.customer-remote-status-badge-online{background:#16a34a;border-color:#15803d;color:#fff}.customer-remote-status-badge-offline{background:#dc2626;border-color:#b91c1c;color:#fff}.connection-dot-badge{display:inline-flex;align-items:center;gap:8px;padding:5px 10px;border-radius:999px;font-size:11px;font-weight:700;line-height:1;border:1px solid transparent;white-space:nowrap}.connection-dot-badge-dot{width:10px;height:10px;border-radius:999px;flex-shrink:0}.connection-dot-badge-online{background:#16a34a1f;border-color:#16a34a38;color:#15803d}.connection-dot-badge-online .connection-dot-badge-dot{background:#16a34a;box-shadow:0 0 0 3px #16a34a24}.connection-dot-badge-offline{background:#dc26261c;border-color:#dc262633;color:#b91c1c}.connection-dot-badge-offline .connection-dot-badge-dot{background:#dc2626;box-shadow:0 0 0 3px #dc26261f}.customer-remote-status-note{margin-top:12px;padding:12px 14px;border:1px solid rgba(220,38,38,.14);border-radius:14px;background:#fef2f2eb;color:#b91c1c;font-size:12px;font-weight:600;line-height:1.6}.customer-remote-status-note-success{border-color:#16a34a2e;background:#f0fdf4f0;color:#166534}.customer-remote-summary{border:1px solid rgba(224,224,221,.92);border-radius:20px;padding:16px 18px;box-shadow:inset 0 1px #ffffffd1,0 10px 24px #131d2b0d}.customer-remote-summary-online{background:linear-gradient(135deg,#eff6fffa,#f0fdf4f5)}.customer-remote-summary-offline{background:linear-gradient(135deg,#fffffffa,#fef2f2f5)}.customer-remote-summary-main{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(220px,.8fr);gap:14px;align-items:start}.customer-remote-summary-copy{display:grid;gap:8px;min-width:0}.customer-remote-summary-label{color:var(--tx3);font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.customer-remote-summary-title-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.customer-remote-summary-title{color:var(--tx);font-size:18px;font-weight:700;line-height:1.25}.customer-remote-summary-ip{color:#0f172a;font-size:15px;font-weight:700;word-break:break-word}.customer-remote-summary-meta{display:grid;gap:10px}.customer-remote-summary-chip{display:grid;gap:3px;padding:10px 12px;border:1px solid rgba(255,255,255,.7);border-radius:14px;background:#fff9}.customer-remote-summary-chip span{color:var(--tx3);font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.customer-remote-summary-chip strong{color:var(--tx);font-size:13px;font-weight:700;line-height:1.4;word-break:break-word}.customer-remote-quick-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.customer-remote-quick-button{width:100%;justify-content:center;border-radius:14px;padding:10px 18px;font-size:12.5px;font-weight:700}@media(max-width:768px){.customer-remote-summary-main{grid-template-columns:minmax(0,1fr)}.customer-remote-summary{padding:14px}.customer-remote-summary-title{font-size:16px}.customer-remote-summary-ip{font-size:13.5px}.customer-remote-quick-actions{grid-template-columns:1fr}}.onu-config-status-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px;margin:-2px 0 12px}.onu-config-status-bar .status-pill{padding:3px 10px;font-size:11px}.status-bar-row{display:flex;flex-wrap:wrap;align-items:flex-start;gap:16px 24px}.status-bar-item{display:flex;flex-direction:column;gap:4px;min-width:160px}.status-bar-item.status-bar-end{margin-left:auto;align-items:flex-end}.status-bar-label{font-size:11px;font-weight:600;color:var(--tx3);text-transform:uppercase;letter-spacing:.04em}.panel-header-icon{margin-right:8px;vertical-align:text-bottom;flex-shrink:0}.onu-config-sync-badge{display:inline-flex;align-items:center;border-radius:999px;padding:3px 10px;background:#0f172a0d;color:var(--tx2);font-size:11px;font-weight:600}.onu-config-telnet-launcher{gap:14px}.onu-config-telnet-launcher-summary{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border:1px solid rgba(148,163,184,.18);border-radius:18px;background:linear-gradient(180deg,#fff,#f8fbff)}.onu-config-telnet-launcher-summary span,.onu-config-telnet-session-summary span{color:var(--tx3);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.onu-config-telnet-launcher-summary strong,.onu-config-telnet-session-summary strong{color:var(--tx);font-size:15px}.onu-config-telnet-launcher-summary small,.onu-config-telnet-session-summary small{color:var(--tx3);font-size:11px;line-height:1.5}.onu-config-telnet-session-shell{gap:12px}.onu-config-telnet-session-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.onu-config-telnet-session-summary{display:flex;flex-direction:column;gap:4px;min-width:0}.onu-config-telnet-terminal-full{min-height:360px;max-height:min(60vh,560px);overflow:auto;border:1px solid rgba(15,23,42,.78);border-radius:18px;padding:14px 16px;background:linear-gradient(180deg,#ffffff08,#fff0) 0 0 / 100% 34px no-repeat,linear-gradient(180deg,#050816,#0b1020);color:#dbeafe;box-shadow:inset 0 1px #ffffff0a,0 14px 28px -18px #0f172a8c}.onu-config-telnet-terminal-full pre{margin:0;min-height:100%;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:12px;line-height:1.6;white-space:pre-wrap;word-break:break-word}.onu-config-telnet-composer{display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:20px;border:1px solid rgba(148,163,184,.18);background:linear-gradient(180deg,#fff,#f8fbff)}.onu-config-telnet-script{min-height:138px;resize:vertical;border-radius:16px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:12px;line-height:1.55;background:#f8fafc}.onu-config-telnet-composer-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--tx3);font-size:11px}@media(max-width:720px){.onu-config-telnet-session-head{flex-direction:column;align-items:stretch}.onu-config-telnet-terminal-full{min-height:260px;max-height:42vh;padding:12px}.onu-config-telnet-composer-meta{flex-direction:column;align-items:flex-start}}.ticket-complaint-preview-trigger{min-width:84px;justify-content:center;border-radius:12px;padding:8px 14px;font-size:12px;font-weight:700;color:#1d4ed8;border-color:#bfdbfe;background:linear-gradient(180deg,#fff,#eff6ff)}.customer-connection-loading{display:grid;justify-items:center;gap:10px;padding:24px 18px;border:1px solid #d9e2ec;border-radius:18px;background:linear-gradient(180deg,#fff,#f8fbff);text-align:center}.customer-connection-loading strong{color:var(--tx);font-size:15px}.customer-connection-loading span{color:var(--tx2);font-size:12px}.customer-connection-loading-spinner{width:36px;height:36px;border-radius:999px;border:3px solid rgba(37,99,235,.14);border-top-color:#2563eb;animation:customerConnectionSpin .9s linear infinite}.customer-onu-loading{display:grid;justify-items:center;gap:16px;padding:40px 24px;background:transparent;text-align:center}.refresh-modem-loading{display:flex;flex-direction:column;align-items:center;gap:10px;padding:28px 24px 24px;text-align:center}.refresh-modem-loading-spinner{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:var(--blue-l);color:var(--blue);margin-bottom:4px}.refresh-modem-loading-spinner svg{animation:app-spin 1s linear infinite}.refresh-modem-loading-title{font-size:14px;font-weight:700;color:var(--tx)}.refresh-modem-loading-sub{font-size:12px;color:var(--tx3);max-width:300px;line-height:1.5}.refresh-modem-loading-bar{width:180px;height:4px;border-radius:999px;background:var(--bg3);overflow:hidden;margin-top:6px}.refresh-modem-loading-bar:before{content:"";display:block;width:40%;height:100%;border-radius:999px;background:var(--blue);animation:refresh-modem-slide 1.2s ease-in-out infinite}@keyframes refresh-modem-slide{0%{transform:translate(-100%)}to{transform:translate(350%)}}.modern-loader{--loader-size: 96px;width:min(100%,300px);display:grid;justify-items:center;gap:16px}.modern-loader-sm{--loader-size: 76px}.modern-loader-md{--loader-size: 96px}.modern-loader-lg{--loader-size: 148px}.modern-loader-visual{position:relative;width:var(--loader-size);height:var(--loader-size);display:grid;place-items:center;animation:modern-loader-float 2s ease-in-out infinite}.modern-loader-ring{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%}.modern-loader-ring-outer{border:2px solid rgba(148,163,184,.16);border-top-color:#3b82f6ad;border-right-color:#0ea5e966;box-shadow:0 20px 40px #3b82f61f;animation:modern-loader-spin 1.55s linear infinite}.modern-loader-ring-outer:after{content:"";position:absolute;top:10%;right:10%;bottom:10%;left:10%;border-radius:50%;border:1px dashed rgba(59,130,246,.18)}.modern-loader-ring-middle{top:16%;right:16%;bottom:16%;left:16%;border:2px solid rgba(148,163,184,.12);border-left-color:#6366f194;border-bottom-color:#a855f757;animation:modern-loader-spin-reverse 1.1s linear infinite}.modern-loader-core{position:absolute;top:30%;right:30%;bottom:30%;left:30%;border-radius:50%;background:radial-gradient(circle at 30% 30%,#fffffffa,#dbeafef5 28%,#60a5faeb 68%,#3b82f6f5);box-shadow:0 12px 28px #3b82f638,0 0 0 8px #ffffffc2,inset 0 1px #ffffffb3;animation:modern-loader-pulse 1.5s ease-in-out infinite}.modern-loader-dot{position:absolute;top:50%;left:50%;width:calc(var(--loader-size) * .11);height:calc(var(--loader-size) * .11);margin-left:calc(var(--loader-size) * -.055);margin-top:calc(var(--loader-size) * -.055);border-radius:50%;background:linear-gradient(180deg,#fff,#bfdbfe);box-shadow:0 6px 14px #3b82f62e}.modern-loader-dot-1{transform:rotate(0) translateY(calc(var(--loader-size) * -.44));animation:modern-loader-orbit-1 1.8s linear infinite}.modern-loader-dot-2{transform:rotate(120deg) translateY(calc(var(--loader-size) * -.44));animation:modern-loader-orbit-2 1.8s linear infinite}.modern-loader-dot-3{transform:rotate(240deg) translateY(calc(var(--loader-size) * -.44));animation:modern-loader-orbit-3 1.8s linear infinite}.modern-loader-text{display:grid;gap:6px;text-align:center}.modern-loader-text strong{color:var(--tx);font-size:16px;line-height:1.35;letter-spacing:-.01em}.modern-loader-text span{max-width:360px;color:var(--tx2);font-size:12px;line-height:1.6;white-space:pre-wrap;word-break:break-word}@keyframes modern-loader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes modern-loader-spin-reverse{0%{transform:rotate(360deg)}to{transform:rotate(0)}}@keyframes modern-loader-pulse{0%,to{transform:scale(.92);opacity:.9}50%{transform:scale(1);opacity:1}}@keyframes modern-loader-float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes modern-loader-orbit-1{0%{transform:rotate(0) translateY(calc(var(--loader-size) * -.44)) rotate(0)}to{transform:rotate(360deg) translateY(calc(var(--loader-size) * -.44)) rotate(-360deg)}}@keyframes modern-loader-orbit-2{0%{transform:rotate(120deg) translateY(calc(var(--loader-size) * -.44)) rotate(-120deg)}to{transform:rotate(480deg) translateY(calc(var(--loader-size) * -.44)) rotate(-480deg)}}@keyframes modern-loader-orbit-3{0%{transform:rotate(240deg) translateY(calc(var(--loader-size) * -.44)) rotate(-240deg)}to{transform:rotate(600deg) translateY(calc(var(--loader-size) * -.44)) rotate(-600deg)}}.zte-onu-command-preview{margin:0;padding:14px 16px;border-radius:18px;border:1px solid rgba(148,163,184,.2);background:linear-gradient(180deg,#f8fafcfa,#f1f5f9f5);color:var(--tx);font-size:13px;line-height:1.7;white-space:pre-wrap;word-break:break-word;box-shadow:inset 0 1px #fff9}.customer-signal-badge{display:inline-flex;align-items:center;justify-content:center;width:-moz-fit-content;width:fit-content;max-width:100%;justify-self:start;align-self:center;border-radius:999px;padding:5px 12px;font-size:12px;font-weight:700;letter-spacing:.01em;white-space:nowrap}.customer-signal-badge-good{background:#16a34a1f;color:#166534;border:1px solid rgba(22,163,74,.18)}.customer-signal-badge-warn{background:#f59e0b1f;color:#b45309;border:1px solid rgba(245,158,11,.18)}.customer-signal-badge-bad{background:#ef44441f;color:#b91c1c;border:1px solid rgba(239,68,68,.18)}.customer-signal-badge-muted{background:#94a3b81f;color:#475569;border:1px solid rgba(148,163,184,.18)}.customer-connection-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;padding:16px 18px;border:1px solid #d9e2ec;border-radius:18px;background:linear-gradient(180deg,#fff,#f8fbff)}.customer-connection-summary-grid>div{display:flex;flex-direction:column;gap:6px}.customer-connection-summary-grid span{color:var(--tx3);font-size:11px;font-weight:600}.customer-connection-summary-grid strong{color:var(--tx);font-size:13px}.customer-connection-attempts-wrap{max-height:360px;margin-top:14px;overflow:auto;border:1px solid #d9e2ec;border-radius:18px}@keyframes customerConnectionSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.payment-method-picker{display:flex;flex-wrap:wrap;gap:12px}.payment-method-picker-centered{justify-content:center}.payment-method-option{position:relative;display:inline-flex;align-items:center;gap:10px;justify-content:center;min-height:46px;min-width:160px;padding:0 18px;border:1px solid #d9e2ec;border-radius:14px;background:#fff;color:var(--tx);font-size:13px;font-weight:600;cursor:pointer;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}.payment-method-option input{position:absolute;opacity:0;pointer-events:none}.payment-method-option-copy{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:0;text-align:left}.payment-method-option-copy strong{color:var(--text);font-size:13px;font-weight:700;line-height:1.25}.payment-method-option-copy small{color:var(--tx3);font-size:11px;font-weight:600;line-height:1.4}.payment-method-radio{width:16px;height:16px;border-radius:999px;border:2px solid #b8c7d9;background:#fff;box-shadow:inset 0 0 0 3px #fff;transition:border-color .2s ease,background .2s ease}.payment-method-option-active{border-color:#2563eb3d;background:linear-gradient(180deg,#fff,#f4f8ff);box-shadow:0 10px 24px #2563eb14}.payment-method-option-active .payment-method-radio{border-color:#2563eb;background:#2563eb}.onu-config-template-reset-help{color:#1d4ed8;font-weight:700}.wa-gateway-qr-shell{min-height:360px;border-radius:24px;border:1px dashed #cad8ea;background:#fff;display:flex;align-items:center;justify-content:center;padding:18px;margin-top:14px}.wa-gateway-qr-shell img{width:min(100%,320px);height:auto;display:block;border-radius:20px}.wa-gateway-qr-placeholder{display:flex;flex-direction:column;align-items:center;gap:12px;color:var(--tx3);text-align:center;font-size:13px}.wa-gateway-error-note{border-radius:18px;padding:14px 16px;border:1px solid rgba(239,68,68,.22);background:#fef2f2f0;color:#b91c1c;font-size:12px;line-height:1.7;margin-top:14px}.wa-gateway-switch-row{display:inline-flex;align-items:center;gap:8px}.wa-gateway-switch-field{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid rgba(148,163,184,.18);border-radius:16px;background:linear-gradient(180deg,#fffffffa,#f8fafcf0)}.wa-gateway-switch-label{color:var(--tx);font-size:13px;font-weight:600;line-height:1.4}.wa-gateway-switch-control{display:inline-flex;align-items:center;gap:8px;margin-left:auto;flex-shrink:0}.messages-ai-3state-compact{display:inline-flex;align-items:center;gap:8px;padding:4px 10px;border-radius:999px;border:1px solid rgba(226,232,240,.9);background:#f8fafcf2;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0f172a0a}.messages-ai-3state-compact.mode-bot{border-color:#60a5fa99;background:linear-gradient(135deg,#eff6fffa,#e0e7ffeb);box-shadow:0 2px 10px #2563eb26}.messages-ai-3state-compact.mode-off{border-color:#cbd5e1cc;background:#f1f5f9d9}.messages-ai-3state-compact.mode-trouble{border-color:#f87171b3;background:linear-gradient(135deg,#fef2f2fa,#fee2e2eb);box-shadow:0 2px 10px #ef44442e}.ai-3state-compact-track{position:relative;display:inline-flex;align-items:center;width:58px;height:24px;background:#cbd5e1a6;border-radius:999px;padding:3px;box-sizing:border-box}.ai-3state-compact-dot{position:relative;z-index:2;flex:1;height:18px;border-radius:50%;border:none;background:transparent;cursor:pointer;padding:0;margin:0}.ai-3state-compact-slider{position:absolute;top:3px;width:18px;height:18px;border-radius:50%;z-index:1;transition:transform .3s cubic-bezier(.34,1.56,.64,1),background-color .3s ease,box-shadow .3s ease}.ai-3state-compact-slider.thumb-bot{transform:translate(0);background:#2563eb;box-shadow:0 2px 7px #2563eb8c}.ai-3state-compact-slider.thumb-off{transform:translate(17px);background:#64748b;box-shadow:0 2px 5px #64748b66}.ai-3state-compact-slider.thumb-trouble{transform:translate(34px);background:#ef4444;box-shadow:0 2px 7px #ef44448c}.wa-settings-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:2px 0}.wa-settings-info{flex:1;min-width:0}.wa-settings-label{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:600;color:var(--tx);margin:0 0 2px}.wa-settings-label svg{flex-shrink:0;color:var(--tx2)}.wa-settings-info p{font-size:11.5px;color:var(--tx2);line-height:1.4;margin:0}.wa-settings-divider{border:none;border-top:1px solid var(--border-color);margin:2px 0}.wa-group-toggle{display:inline-flex;align-items:center;gap:5px;padding:3px 5px;border-radius:999px;border:1px solid rgba(226,232,240,.9);background:#f8fafcf2;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0f172a0a;flex-shrink:0}.wa-group-toggle.mode-on{border-color:#22c55e80;background:linear-gradient(135deg,#f0fdf4fa,#dcfce7eb);box-shadow:0 2px 10px #22c55e26}.wa-group-toggle.mode-off{border-color:#cbd5e1cc;background:#f1f5f9d9}.group-toggle-icon-box{display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-left:1px}.group-toggle-icon{width:17px;height:17px;transition:all .3s ease}.group-toggle-icon.mode-on{color:#16a34a!important;filter:drop-shadow(0 0 4px rgba(22,163,74,.5))}.group-toggle-icon.mode-off{color:#9ca3af!important;filter:none;opacity:.65}.group-toggle-track{position:relative;display:inline-flex;align-items:center;width:38px;height:22px;background:#eef2f7;border-radius:999px;padding:0;gap:0;border:1px solid transparent;box-shadow:inset 3px 3px 6px #94a3b873,inset -3px -3px 6px #ffffffe6;box-sizing:border-box}.group-toggle-dot{position:relative;z-index:2;flex:1;height:100%;background:transparent;border:none!important;outline:none!important;box-shadow:none!important;cursor:pointer;padding:0;margin:0;-webkit-tap-highlight-color:transparent}.group-toggle-slider{position:absolute;z-index:1;top:1px;width:18px;height:18px;background:#fff;border-radius:999px;box-shadow:2px 2px 4px #94a3b880,-1px -1px 3px #fffffff2;transition:transform .28s cubic-bezier(.4,0,.2,1);pointer-events:none}.group-toggle-slider.thumb-on{transform:translate(17px)}.group-toggle-slider.thumb-off{transform:translate(1px)}.group-toggle-labels{display:flex;gap:10px;margin-left:8px;font-size:10.5px;font-weight:600;letter-spacing:.3px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.group-toggle-labels span{color:var(--tx3);transition:color .2s ease}.group-toggle-labels span.active{color:var(--tx)}.wa-reject-calls-toggle{display:inline-flex;align-items:center;gap:6px;padding:4px 6px;border-radius:999px;border:1px solid rgba(226,232,240,.9);background:#f8fafcf2;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0f172a0a}.wa-reject-calls-toggle.mode-on{border-color:#22c55e80;background:linear-gradient(135deg,#f0fdf4fa,#dcfce7eb);box-shadow:0 2px 10px #22c55e26}.wa-reject-calls-toggle.mode-off{border-color:#cbd5e1cc;background:#f1f5f9d9}.reject-calls-icon-box{display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-left:2px}.reject-calls-icon{width:18px;height:18px;transition:all .3s ease}.reject-calls-icon.mode-on{color:#16a34a!important;filter:drop-shadow(0 0 4px rgba(22,163,74,.5))}.reject-calls-icon.mode-off{color:#9ca3af!important;filter:none;opacity:.65}.reject-calls-compact-track{position:relative;display:inline-flex;align-items:center;width:40px;height:24px;background:#cbd5e1a6;border-radius:999px;padding:0;gap:0;border:1px solid rgba(203,213,225,.5);box-sizing:border-box}.reject-calls-compact-dot{position:relative;z-index:2;flex:1;height:100%;background:transparent;border:none;border-radius:0;cursor:pointer;outline:none;padding:0;margin:0}.reject-calls-compact-slider{position:absolute;top:3px;width:18px;height:18px;border-radius:50%;transition:transform .3s cubic-bezier(.34,1.56,.64,1),background-color .3s ease,box-shadow .3s ease}.reject-calls-compact-slider.thumb-on{transform:translate(2px);background:#16a34a;box-shadow:0 2px 7px #16a34a8c}.reject-calls-compact-slider.thumb-off{transform:translate(18px);background:#64748b;box-shadow:0 2px 5px #64748b66}.reject-calls-labels{display:flex;gap:10px;margin-left:2px;font-size:11.5px;color:#94a3b8}.reject-calls-labels span{transition:color .2s}.reject-calls-labels span.active{color:#16a34a;font-weight:600}.messages-ai-3state-container{display:inline-flex;align-items:center;gap:6px;padding:3px 6px;border-radius:999px;border:1px solid rgba(226,232,240,.9);background:#f8fafcf2;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0f172a0a}.messages-ai-3state-container.mode-bot{border-color:#60a5fa99;background:linear-gradient(135deg,#eff6fffa,#e0e7ffeb);box-shadow:0 2px 10px #2563eb26}.messages-ai-3state-container.mode-off{border-color:#cbd5e1cc;background:#f1f5f9d9}.messages-ai-3state-container.mode-trouble{border-color:#f87171b3;background:linear-gradient(135deg,#fef2f2fa,#fee2e2eb);box-shadow:0 2px 10px #ef44442e}.ai-3state-robot-box{display:flex;align-items:center;justify-content:center;width:24px;height:24px;margin-left:2px}.ai-3state-robot-icon{width:18px;height:18px;transition:all .3s ease}.ai-3state-robot-icon.mode-bot{color:#2563eb!important;filter:drop-shadow(0 0 5px rgba(37,99,235,.6));animation:aiRobotHeadWiggle 2.5s ease-in-out infinite}.ai-3state-robot-icon.mode-off{color:#9ca3af!important;filter:none;opacity:.65}.ai-3state-robot-icon.mode-trouble{color:#ef4444!important;filter:drop-shadow(0 0 7px rgba(239,68,68,.8));animation:aiRobotTroublePulse 1.5s ease-in-out infinite}@keyframes aiRobotTroublePulse{0%,to{transform:scale(1) rotate(0);filter:drop-shadow(0 0 5px rgba(239,68,68,.6))}50%{transform:scale(1.16) rotate(-8deg);filter:drop-shadow(0 0 10px rgba(239,68,68,.95))}}.ai-3state-track{display:inline-flex;align-items:center;background:#e2e8f0d9;border-radius:999px;padding:2px;gap:2px}.ai-3state-btn{border:none;background:transparent;padding:3px 8px;border-radius:999px;font-size:11px;font-weight:700;color:#64748b;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);line-height:1.2}.ai-3state-btn:hover{color:#1e293b}.ai-3state-btn.is-active.is-bot{background:#2563eb;color:#fff!important;box-shadow:0 2px 6px #2563eb59}.ai-3state-btn.is-active.is-off{background:#64748b;color:#fff!important;box-shadow:0 2px 6px #64748b4d}.ai-3state-btn.is-active.is-trouble{background:#ef4444;color:#fff!important;box-shadow:0 2px 6px #ef444466}.messages-ai-toggle-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:999px;border:1px solid rgba(226,232,240,.85);background:#f8fafcf2;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0f172a08}.messages-ai-morph-container{position:relative;width:22px;height:22px;display:flex;align-items:center;justify-content:center;perspective:600px}.messages-ai-label{position:absolute;font-size:12px;font-weight:800;letter-spacing:.03em;color:#475569;transition:all .4s cubic-bezier(.34,1.56,.64,1);backface-visibility:hidden;opacity:1;transform:rotateY(0) scale(1)}.messages-ai-bot-icon{position:absolute;width:18px;height:18px;color:#2563eb;opacity:0;transform:rotateY(-180deg) scale(.5);transition:all .4s cubic-bezier(.34,1.56,.64,1);backface-visibility:hidden}.messages-ai-toggle-pill.wa-ai-active{border-color:#60a5fab3;background:linear-gradient(135deg,#eff6fffa,#e0e7ffeb);box-shadow:0 3px 14px #2563eb2e}.messages-ai-toggle-pill.wa-ai-active .messages-ai-label{opacity:0;transform:rotateY(180deg) scale(.5)}.messages-ai-toggle-pill.wa-ai-active .messages-ai-bot-icon{opacity:1;transform:rotateY(0) scale(1);animation:aiRobotHeadWiggle 2.5s ease-in-out infinite .4s}@keyframes aiRobotHeadWiggle{0%,to{transform:rotateY(0) scale(1) rotate(0);filter:drop-shadow(0 0 4px rgba(37,99,235,.6))}20%{transform:rotateY(0) scale(1.2) rotate(-14deg);filter:drop-shadow(0 0 8px rgba(37,99,235,.8))}40%{transform:rotateY(0) scale(1.15) rotate(14deg);filter:drop-shadow(0 0 8px rgba(37,99,235,.8))}60%{transform:rotateY(0) scale(1.22) rotate(-6deg);filter:drop-shadow(0 0 10px rgba(59,130,246,.9))}80%{transform:rotateY(0) scale(1) rotate(0);filter:drop-shadow(0 0 4px rgba(37,99,235,.6))}}.wa-gateway-switch-state{min-width:74px;padding:6px 10px;border-radius:999px;text-align:center;color:var(--tx2);font-size:11.5px;font-weight:700;line-height:1;background:#94a3b81f;border:1px solid rgba(148,163,184,.18)}.customer-form-footer{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:2px}.customer-form-footer-left{display:flex;align-items:center;min-width:0}.customer-form-footer-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-left:auto;padding-block:2px}.customer-form-footer-switch{min-width:0}.wa-gateway-switch{width:52px;height:30px;border:1px solid transparent;border-radius:999px;padding:3px;display:inline-flex;align-items:center;justify-content:flex-start;background:#eef2f7;cursor:pointer;box-shadow:inset 3px 3px 6px #94a3b873,inset -3px -3px 6px #ffffffe6;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease}.wa-gateway-switch:hover{border-color:#3b82f642;transform:translateY(-.5px)}.wa-gateway-switch:focus-visible{outline:0;box-shadow:0 0 0 3px #378add24,inset 0 1px 1px #ffffff7a}.wa-gateway-switch-active{background:linear-gradient(135deg,#0ea5e9,#2563eb);border-color:#2563eb47}.wa-gateway-switch-control:has(.wa-gateway-switch-active) .wa-gateway-switch-state{color:#1554b8;background:#2563eb1a;border-color:#2563eb29}.wa-gateway-switch-knob{width:22px;height:22px;border-radius:999px;background:#fff;box-shadow:2px 2px 4px #94a3b880,-1px -1px 3px #fffffff2;transform:translate(0);transition:transform .2s ease}.wa-gateway-switch-active .wa-gateway-switch-knob{transform:translate(22px)}.wa-gateway-dialog-danger{border-radius:18px;padding:16px;border:1px solid rgba(239,68,68,.2);background:linear-gradient(180deg,#fffffff5,#fef2f2e0)}.wa-gateway-dialog-danger p{margin:0 0 12px;color:var(--tx2);font-size:12px;line-height:1.7}.wa-ai-toggle-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.wa-ai-toggle-card{padding:8px 10px!important}.wa-ai-toggle-info{display:flex;align-items:center;gap:6px;min-width:0}.wa-ai-toggle-icon{font-size:14px}.wa-ai-toggle-desc{display:block;font-size:10px;color:var(--color-text-muted);line-height:1.3}.wa-ai-toggle-right{margin-left:auto}.wa-ai-config-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.wa-ai-config-group{display:flex;align-items:center;gap:5px}.wa-ai-config-label{font-size:12px;font-weight:600;white-space:nowrap}.wa-ai-config-muted{font-size:11px;color:var(--color-text-muted)}.wa-ai-config-sep{color:var(--c-subtle);font-size:13px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.wa-ai-input-sm{width:56px}.wa-ai-input-xs{width:64px}.wa-ai-select-sm{width:auto;min-width:90px;font-size:12px}@media(max-width:540px){.wa-ai-toggle-grid{grid-template-columns:1fr!important}.wa-ai-toggle-card{padding:8px!important}.wa-ai-toggle-info{gap:4px}.wa-ai-toggle-icon{font-size:12px}.wa-ai-toggle-right{gap:4px}.wa-ai-toggle-right .wa-gateway-switch-state{font-size:10px}.wa-ai-toggle-desc{font-size:9px}}@media(max-width:380px){.wa-ai-toggle-card .wa-gateway-switch-label{font-size:11px}.wa-ai-toggle-info{gap:2px}}.wa-ai-trouble-panel{padding:10px;border:1px solid #e7edf5;border-radius:10px;background:#fafbfc;display:flex;flex-direction:column;gap:8px}.wa-ai-field-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.wa-ai-field-label{margin:0}.wa-ai-textarea-sm{min-height:80px}.wa-ai-textarea-md{min-height:100px}.wa-ai-switch-state-sm{font-size:10px}.wa-ai-help-info{display:block;color:#16a34a;margin-bottom:2px}.wa-ai-help-mt{margin-top:-4px}.wa-ai-btn-row{display:flex;gap:4px}.wa-ai-btn-xs{padding:0 8px;height:22px;font-size:10px}.wa-ai-region-list{max-height:120px;overflow-y:auto;border:1px solid var(--c-subtle);border-radius:6px;padding:2px}.wa-ai-region-item{display:flex;align-items:center;gap:6px;padding:2px 6px;cursor:pointer;border-radius:3px;font-size:12px}.wa-ai-region-item:hover{background:var(--c-subtle)}.wa-ai-region-check{accent-color:var(--c-accent)}.app-content:has(.messages-page){overflow:hidden!important;padding:0!important}.messages-page{gap:0;padding:0!important;margin:0;height:100%;overflow:hidden;display:flex;flex-direction:column;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.messages-page-shell{padding:0;border:0;background:transparent;box-shadow:none;height:100%}.messages-page-shell>.panel-header{display:none}.messages-wa-shell{position:relative;border:1px solid rgba(148,163,184,.18);border-radius:16px;background:#eef2f7;box-shadow:0 10px 30px #0f172a0d;overflow:hidden;height:100%}.messages-wa-shell:before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:linear-gradient(90deg,#3b82f6,#06b6d4,#10b981);z-index:10;pointer-events:none}.messages-layout{display:grid;grid-template-columns:min(380px,32vw) minmax(0,1fr);gap:0;height:100%;overflow:hidden;position:relative}.messages-sidebar,.messages-thread-card{border:0;border-radius:0;background:#fff;box-shadow:none;position:relative;overflow:visible}.messages-sidebar{padding:0;display:flex;flex-direction:column;gap:0;min-height:0;border-right:1px solid rgba(148,163,184,.18);background:#eef2f7}.messages-sidebar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;min-height:60px;background:#eef2f7;border-bottom:1px solid rgba(148,163,184,.18)}.messages-sidebar-toolbar .customer-detail-tabs{margin-bottom:0;padding:4px;background:#eef2f7;border-radius:10px;border:1px solid transparent;box-shadow:inset 3px 3px 6px #94a3b866,inset -3px -3px 6px #ffffffe6}.messages-sidebar-toolbar .customer-detail-tab{padding:6px 12px;font-size:12px;border-radius:8px;color:#64748b;font-weight:500}.messages-sidebar-toolbar .customer-detail-tab:hover{color:#0f172a;background:#fff9}.messages-sidebar-toolbar .customer-detail-tab-active{background:#fff;color:#2563eb;font-weight:600;box-shadow:3px 3px 6px #94a3b873,-3px -3px 6px #fffffff2}.messages-wa-tab-icon{display:inline-block;vertical-align:middle;margin-right:5px;transition:transform .3s cubic-bezier(.34,1.56,.64,1),color .2s ease,filter .2s ease;transform-origin:center;backface-visibility:hidden}.messages-wa-tab-icon-1{color:#25d366;animation:waTabPulse1 4.5s ease-in-out infinite}.messages-wa-tab-icon-2{color:#0284c7;animation:waTabPulse2 4.5s ease-in-out infinite 1.5s}.messages-tab-badge{min-width:18px;height:18px;padding:0 5px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;line-height:1;color:#fff;background:#dc2626;margin-left:4px;vertical-align:middle}@keyframes waTabPulse1{0%,to{transform:scale(1) rotate(0);filter:drop-shadow(0 0 0 rgba(37,211,102,0))}18%{transform:scale(1.28) rotate(-12deg);filter:drop-shadow(0 0 6px rgba(37,211,102,.65))}30%{transform:scale(1.15) rotate(12deg)}42%{transform:scale(1) rotate(0);filter:drop-shadow(0 0 0 rgba(37,211,102,0))}}@keyframes waTabPulse2{0%,to{transform:scale(1) rotate(0);filter:drop-shadow(0 0 0 rgba(2,132,199,0))}18%{transform:scale(1.28) rotate(360deg);filter:drop-shadow(0 0 6px rgba(2,132,199,.65))}30%{transform:scale(1) rotate(360deg);filter:drop-shadow(0 0 0 rgba(2,132,199,0))}}.customer-detail-tab-active .messages-wa-tab-icon{transform:scale(1.2);filter:drop-shadow(0 0 5px currentColor)}.customer-detail-tab:hover .messages-wa-tab-icon{transform:scale(1.25) rotate(-10deg)}.messages-sidebar-profile{display:flex;align-items:center;gap:12px;min-width:0}.messages-sidebar-profile strong,.messages-thread-head h3{margin:0;font-family:Roboto,Open Sans,Segoe UI,sans-serif;font-size:15px;font-weight:600;color:#0f172a;display:block}.messages-sidebar-profile span,.messages-thread-head p{color:#64748b;font-size:12.5px}.messages-sidebar-actions,.messages-thread-actions{display:inline-flex;align-items:center;gap:6px}.messages-icon-button{width:36px;height:36px;border-radius:10px;border:1px solid #f1f5f9;background:#f8fafc;color:#64748b;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .25s cubic-bezier(.34,1.56,.64,1);position:relative;overflow:hidden}.messages-icon-button svg{transition:transform .3s cubic-bezier(.34,1.56,.64,1),color .2s ease,filter .2s ease;transform-origin:center}.messages-icon-button-plus,.messages-icon-button:not(.messages-icon-button-danger){background:#eff6ffd9;border-color:#bfdbfecc;color:#2563eb}.messages-icon-button-plus svg,.messages-icon-button:not(.messages-icon-button-danger) svg{animation:plusPulseTick 5s ease-in-out infinite}.messages-icon-button-plus:hover,.messages-icon-button:not(.messages-icon-button-danger):hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border-color:#2563eb;transform:translateY(-2px) scale(1.08);box-shadow:0 4px 14px #2563eb59}.messages-icon-button-plus:hover svg,.messages-icon-button:not(.messages-icon-button-danger):hover svg{transform:rotate(180deg) scale(1.15);animation:none;filter:drop-shadow(0 0 4px rgba(255,255,255,.6))}.messages-icon-button-plus:active,.messages-icon-button:not(.messages-icon-button-danger):active{transform:translateY(0) scale(.94)}@keyframes plusPulseTick{0%,to{transform:rotate(0) scale(1)}20%{transform:rotate(90deg) scale(1.2)}40%{transform:rotate(90deg) scale(1)}}.messages-icon-button-danger{color:#ef4444;border-color:#fee2e2e6;background:#fef2f2e6;transition:all .25s cubic-bezier(.34,1.56,.64,1)}.messages-icon-button-danger svg{animation:trashCanPulse 5s ease-in-out infinite 2.5s}.messages-icon-button-danger:hover{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border-color:#ef4444;transform:translateY(-2px) scale(1.08);box-shadow:0 4px 14px #ef444459}.messages-icon-button-danger:hover svg{animation:trashCanShake .4s ease-in-out infinite alternate;filter:drop-shadow(0 0 4px rgba(255,255,255,.6))}.messages-icon-button-danger:active{transform:translateY(0) scale(.94)}@keyframes trashCanPulse{0%,to{transform:scale(1) rotate(0)}15%{transform:scale(1.18) rotate(-10deg)}30%{transform:scale(1.15) rotate(10deg)}45%{transform:scale(1.18) rotate(-6deg)}60%{transform:scale(1) rotate(0)}}@keyframes trashCanShake{0%{transform:rotate(-10deg) scale(1.1)}to{transform:rotate(10deg) scale(1.1)}}.messages-searchbar{display:flex;align-items:center;gap:10px;margin:8px 12px;padding:0 14px;min-height:40px;border-radius:12px;border:1px solid transparent;background:#eef2f7;color:#64748b;transition:all .2s ease;box-shadow:inset 4px 4px 8px #94a3b859,inset -4px -4px 8px #ffffffe6}.messages-searchbar:focus-within{border-color:#3b82f6;background:#eef2f7;box-shadow:inset 4px 4px 8px #94a3b859,inset -4px -4px 8px #ffffffe6,0 0 0 3px #3b82f61f;color:#2563eb}.messages-searchbar input{width:100%;border:0;background:transparent;box-shadow:none;padding:6px 0;font-size:13.5px;color:#0f172a}.messages-sidebar-pagination{display:flex;align-items:center;justify-content:space-between;padding:8px 14px;background:#eef2f7;border-top:1px solid rgba(148,163,184,.18);flex-shrink:0;gap:8px;min-height:42px;position:sticky;bottom:0;z-index:15}.messages-pagination-info{display:flex;align-items:center;gap:6px;font-size:11.5px;font-weight:700;color:#334155}.messages-pagination-info small{font-size:11px;font-weight:500;color:#64748b}.messages-pagination-actions{display:flex;align-items:center;gap:4px}.messages-pagination-btn{width:26px;height:26px;border-radius:7px;border:1px solid transparent;background:#eef2f7;color:#334155;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);padding:0;box-shadow:2px 2px 4px #94a3b859,-2px -2px 4px #ffffffe6}.messages-pagination-btn:hover:not(:disabled){background:#2563eb;color:#fff;border-color:#2563eb;transform:translateY(-1px);box-shadow:0 2px 6px #2563eb40}.messages-pagination-btn:disabled{opacity:.4;cursor:not-allowed;background:#eef2f7;border-color:transparent;color:#94a3b8;box-shadow:none}.messages-searchbar input::-moz-placeholder{color:#94a3b8}.messages-searchbar input::placeholder{color:#94a3b8}.messages-searchbar input:focus{border:0;box-shadow:none;outline:none}.messages-chat-avatar{width:42px;height:42px;border-radius:50%;font-size:14px;font-weight:600;background:linear-gradient(135deg,#e2e8f0,#cbd5e1);color:#334155;display:flex;align-items:center;justify-content:center;flex-shrink:0;-o-object-fit:cover;object-fit:cover;box-shadow:0 2px 6px #0f172a0f}.messages-chat-avatar-wa{background:linear-gradient(135deg,#25d366,#128c7e);color:#fff;box-shadow:0 2px 8px #25d3664d}.messages-page-header-title{display:flex;align-items:center;gap:12px}.messages-page-header-icon{width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,#25d366,#128c7e);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;box-shadow:0 3px 10px #25d36659}.messages-avatar-preview-button{padding:0;border:0;background:transparent;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;cursor:zoom-in;flex-shrink:0;transition:transform .15s ease}.messages-avatar-preview-button:hover{transform:scale(1.04)}.messages-avatar-preview-button:focus-visible{outline:2px solid rgba(37,99,235,.35);outline-offset:2px}.messages-conversation-avatar{width:46px;height:46px;border-radius:50%;font-size:15px;font-weight:600;flex-shrink:0;background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;display:flex;align-items:center;justify-content:center;-o-object-fit:cover;object-fit:cover;box-shadow:0 2px 8px #2563eb33;transition:transform .3s ease,box-shadow .3s ease;animation:messageAvatarSpinPause 5.5s cubic-bezier(.4,0,.2,1) infinite;transform-origin:center}.messages-chat-avatar{border-radius:50%;-o-object-fit:cover;object-fit:cover;transition:transform .3s ease,box-shadow .3s ease;animation:messageAvatarSpinPause 5.5s cubic-bezier(.4,0,.2,1) infinite;transform-origin:center}@keyframes messageAvatarSpinPause{0%{transform:rotate(0)}22%{transform:rotate(360deg)}to{transform:rotate(360deg)}}.messages-conversation-active .messages-conversation-avatar{animation:messageAvatarSpinPause 4s cubic-bezier(.4,0,.2,1) infinite;box-shadow:0 0 0 2px #fff,0 0 0 4px #2563eb,0 4px 12px #2563eb4d}.messages-conversation-list{display:flex;flex-direction:column;gap:6px;padding:6px 10px;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent}.messages-conversation-item{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:0;align-items:center;background:#eef2f7;border-radius:14px;border:1px solid transparent;box-shadow:6px 6px 12px #94a3b852,-6px -6px 12px #ffffffd9;transition:all .2s cubic-bezier(.4,0,.2,1);cursor:pointer;position:relative}.messages-conversation-item:hover{background:#eef2f7;border-color:#93c5fd;box-shadow:8px 8px 16px #94a3b861,-8px -8px 16px #fffffff2;transform:translateY(-1px)}.messages-conversation-active{background:#e8f0fc!important;border-color:#93c5fd!important;box-shadow:inset 3px 3px 7px #94a3b852,inset -3px -3px 7px #ffffffe6!important}.messages-conversation-item:not(:last-child):after{content:"";position:absolute;bottom:-4px;left:14px;right:14px;height:1px;background:linear-gradient(90deg,transparent 0%,#cbd5e1 30%,#cbd5e1 70%,transparent 100%);pointer-events:none;opacity:.5}.messages-conversation-main{width:100%;border:0;background:transparent;display:flex;align-items:stretch;gap:0;text-align:left;cursor:pointer;padding:0 12px 0 0;min-height:68px}.messages-conversation-avatar-slot{width:66px;min-width:66px;min-height:68px;display:flex;align-items:center;justify-content:center;padding-left:10px;padding-right:10px;flex-shrink:0}.messages-conversation-avatar-button{width:46px;height:46px}.messages-conversation-content{min-width:0;flex:1;padding:12px 0;border-bottom:1px solid #f1f5f9}.messages-conversation-active .messages-conversation-content{border-bottom-color:transparent}.messages-conversation-top,.messages-conversation-bottom{display:flex;align-items:flex-start;justify-content:space-between;gap:6px}.messages-conversation-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.messages-conversation-top strong{color:#0f172a;font-family:Open Sans,Roboto,Segoe UI,sans-serif;font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.messages-conversation-top span{color:#94a3b8;font-size:11.5px;font-weight:500;white-space:nowrap;flex-shrink:0;padding-top:2px}.messages-conversation-bottom{margin-top:3px}.messages-customer-badge,.messages-customer-ref,.messages-group-badge{display:inline-flex;align-items:center;justify-content:center;min-height:20px;padding:0 8px;border-radius:999px;font-size:10.5px;font-weight:600}.messages-group-badge{border:1px solid rgba(52,211,153,.85);background:linear-gradient(135deg,#d1fae5f2,#a7f3d0d9);color:#047857;box-shadow:0 1px 4px #0478571f}.messages-customer-badge{border:1px solid rgba(147,197,253,.9);background:linear-gradient(135deg,#eff6fff2,#dbeafee6);color:#1d4ed8;animation:messagesBadgeSpinPause 6s cubic-bezier(.4,0,.2,1) infinite;transform-origin:center;backface-visibility:hidden;box-shadow:0 1px 4px #2563eb1f}.messages-candidate-badge{display:inline-flex;align-items:center;justify-content:center;min-height:20px;padding:0 8px;border-radius:999px;font-size:.6875rem;font-weight:600;white-space:nowrap;line-height:1;border:1px solid rgba(251,191,36,.85);background:linear-gradient(135deg,#fffbebf2,#fef3c7d9);color:#92400e;box-shadow:0 1px 4px #92400e1f}.messages-derived-badge{display:inline-flex;align-items:center;justify-content:center;min-height:20px;padding:0 8px;border-radius:999px;font-size:.6875rem;font-weight:600;white-space:nowrap;line-height:1;border:1px solid rgba(167,139,250,.85);background:linear-gradient(135deg,#f5f3fff2,#ede9fed9);color:#6d28d9;box-shadow:0 1px 4px #6d28d91a}.messages-user-badge{display:inline-flex;align-items:center;justify-content:center;min-height:20px;padding:0 8px;border-radius:999px;border:1px solid rgba(110,231,183,.9);background:linear-gradient(135deg,#ecfdf5f2,#d1fae5e6);color:#047857;font-size:10.5px;font-weight:600;animation:messagesBadgeSpinPause 6s cubic-bezier(.4,0,.2,1) infinite 1.2s;transform-origin:center;backface-visibility:hidden;box-shadow:0 1px 4px #10b9811f}.messages-billing-status-badge{display:inline-flex;align-items:center;justify-content:center;min-height:20px;padding:0 8px;border-radius:999px;font-size:10.5px;font-weight:700;letter-spacing:.02em}.messages-billing-status-active{background:linear-gradient(135deg,#dcfce7f2,#bbf7d0e6);border:1px solid rgba(74,222,128,.7);color:#15803d;box-shadow:0 1px 4px #22c55e2e}.messages-billing-status-suspended{background:linear-gradient(135deg,#fef3c7f2,#fde68ae6);border:1px solid rgba(251,191,36,.7);color:#92400e;box-shadow:0 1px 4px #f59e0b2e}.messages-billing-status-expired{background:linear-gradient(135deg,#fee2e2f2,#fecacae6);border:1px solid rgba(248,113,113,.7);color:#b91c1c;box-shadow:0 1px 4px #ef44442e}@keyframes messagesBadgeSpinPause{0%{transform:rotate(0) scale(1);box-shadow:0 1px 4px #0f172a0d}18%{transform:rotate(360deg) scale(1.15);box-shadow:0 4px 12px #2563eb40}26%{transform:rotate(360deg) scale(1);box-shadow:0 1px 4px #0f172a0d}to{transform:rotate(360deg) scale(1);box-shadow:0 1px 4px #0f172a0d}}.messages-conversation-active .messages-customer-badge{animation:messagesBadgeSpinPause 4.5s cubic-bezier(.4,0,.2,1) infinite}.messages-conversation-active .messages-user-badge{animation:messagesBadgeSpinPause 4.5s cubic-bezier(.4,0,.2,1) infinite 1s}.messages-customer-ref{background:#f1f5f9;border:1px solid #e2e8f0;color:#475569}.messages-conversation-bottom p{margin:0;color:#64748b;font-size:12.5px;line-height:1.4;overflow:hidden;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical}.messages-conversation-bottom em{min-width:20px;height:20px;padding:0 6px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-style:normal;font-size:11px;font-weight:700;color:#fff;background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 2px 6px #10b9814d;flex-shrink:0}.messages-conversation-delete{align-self:center;margin-right:8px;width:30px;height:30px;border-radius:8px;border:0;background:transparent;color:#94a3b8;display:none;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease}.messages-conversation-item:hover .messages-conversation-delete{display:inline-flex}.messages-conversation-delete:hover{background:#fef2f2;color:#ef4444}.messages-thread-card{display:flex;flex-direction:column;min-height:0;height:100%;background:#f8fafc}.messages-thread-head{padding:10px 20px;min-height:60px;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;gap:12px;background:#fff;position:relative;z-index:2;box-shadow:0 1px 3px #0f172a08}.messages-thread-head h3{font-size:15.5px}.messages-thread-head p{margin:0;font-size:12.5px}.messages-thread-customer-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.messages-thread-title-row{display:flex;align-items:center;gap:8px;min-width:0}.messages-thread-title-row h3{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.messages-thread-inline-badges{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.messages-thread-head .messages-customer-badge{border-color:#bfdbfe;background:#eff6ff;color:#1d4ed8}.messages-thread-head .messages-user-badge{border-color:#a7f3d0;background:#ecfdf5;color:#047857}.messages-thread-head .messages-customer-ref{background:#f1f5f9;border-color:#e2e8f0;color:#334155}.messages-thread-head>.messages-thread-info,.messages-thread-head>.messages-thread-actions{min-width:0}.messages-thread-actions{display:flex;align-items:center;gap:8px}.messages-thread-actions .row-actions-trigger{height:36px;min-width:84px;padding:0 13px;border-radius:10px;border:1px solid rgba(147,197,253,.9);background:linear-gradient(135deg,#eff6fff2,#dbeafee6);color:#1d4ed8;font-size:12.5px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;transition:all .25s cubic-bezier(.34,1.56,.64,1);box-shadow:0 2px 8px #2563eb2e;position:relative;overflow:hidden;animation:menuButtonSpinPause 5.5s cubic-bezier(.4,0,.2,1) infinite;transform-origin:center;backface-visibility:hidden}@keyframes menuButtonSpinPause{0%{transform:rotate(0) scale(1);box-shadow:0 2px 8px #2563eb2e}16%{transform:rotate(360deg) scale(1.12);box-shadow:0 4px 16px #2563eb73}24%{transform:rotate(360deg) scale(1);box-shadow:0 2px 8px #2563eb2e}to{transform:rotate(360deg) scale(1);box-shadow:0 2px 8px #2563eb2e}}.messages-thread-actions .row-actions-trigger svg{transition:transform .3s cubic-bezier(.34,1.56,.64,1);transform-origin:center}.messages-thread-actions .row-actions-trigger:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border-color:#2563eb;transform:translateY(-2px) scale(1.08)!important;box-shadow:0 4px 16px #2563eb66!important;animation-play-state:paused}.messages-thread-actions .row-actions-trigger:hover svg{transform:rotate(180deg) scale(1.2);filter:drop-shadow(0 0 4px rgba(255,255,255,.7))}.messages-thread-actions .row-actions-trigger[aria-expanded=true]{background:linear-gradient(135deg,#1d4ed8,#1e40af);color:#fff;border-color:#1d4ed8;box-shadow:0 0 0 3px #2563eb4d,0 4px 16px #2563eb66!important;animation-play-state:paused}.messages-thread-actions .row-actions-trigger[aria-expanded=true] svg{transform:rotate(180deg)}.messages-thread-actions .row-actions-trigger:active{transform:translateY(0) scale(.94)!important}.messages-thread-head>.messages-thread-info{flex:1}.messages-thread-back{border:1px solid rgba(191,219,254,.85);background:#eff6ffd9;color:#2563eb;border-radius:10px;width:36px;height:36px;padding:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:all .25s cubic-bezier(.34,1.56,.64,1);position:relative;overflow:hidden;box-shadow:0 2px 6px #2563eb1f}.messages-thread-back svg{transition:transform .3s cubic-bezier(.34,1.56,.64,1),filter .2s ease;transform-origin:center;animation:backArrowPulseLeft 2.2s ease-in-out infinite}@keyframes backArrowPulseLeft{0%,to{transform:translate(0) scale(1)}50%{transform:translate(-4px) scale(1.18)}}.messages-thread-back:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border-color:#2563eb;transform:translateY(-2px) scale(1.08);box-shadow:0 4px 14px #2563eb59}.messages-thread-back:hover svg{transform:translate(-5px) scale(1.2);animation:none;filter:drop-shadow(0 0 4px rgba(255,255,255,.7))}.messages-thread-back:active{transform:translateY(0) scale(.92)}.messages-thread-body{flex:1;min-height:0;padding:20px 36px 16px;display:flex;flex-direction:column;gap:10px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent;background-color:#f8fafc;background-image:radial-gradient(#cbd5e1 .8px,transparent .8px);background-size:16px 16px}.messages-scheduled-banner{display:flex;align-items:center;gap:8px;padding:10px 16px;border-radius:12px;background:#ffffffeb;border:1px solid rgba(245,158,11,.25);color:#92400e;font-size:12.5px;font-weight:500;line-height:1.4;margin-bottom:4px;box-shadow:0 4px 12px #0f172a0d;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:sticky;top:0;z-index:2}.messages-scheduled-banner svg{flex-shrink:0;color:#d97706}.wa-message-history-divider{display:flex;justify-content:center;padding:8px 0 4px}.wa-message-history-divider span{display:inline-flex;align-items:center;justify-content:center;min-height:26px;padding:0 14px;border-radius:999px;background:#ffffffe6;border:1px solid #e2e8f0;color:#64748b;font-size:11.5px;font-weight:600;letter-spacing:.01em;box-shadow:0 2px 6px #0f172a0a;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.wa-missed-call-row{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 16px 6px}.wa-missed-call-badge{display:inline-flex;align-items:center;gap:7px;padding:5px 14px;border-radius:999px;background:#fef2f2;border:1px solid #fecaca;color:#dc2626;font-size:12.5px;font-weight:500}.wa-missed-call-badge svg{flex-shrink:0;opacity:.85}.wa-missed-call-time{font-size:11px;color:#94a3b8}.missed-call-icon-active{color:#ef4444!important;animation:bellRingSwing 2.5s cubic-bezier(.36,.07,.19,.97) infinite;transform-origin:top center}.topbar-notification-item.missed-call-item .topbar-notification-icon.missed-call-icon{background:linear-gradient(135deg,#ef44441f,#dc26260f);color:#dc2626;border:1px solid rgba(239,68,68,.2)}.topbar-notification-item.missed-call-item.is-unread{border-left:3px solid #ef4444;background:#fef2f299;border-color:#fecaca}.wa-settings-section{margin-bottom:4px}.wa-settings-section-header{display:flex;align-items:center;gap:8px;font-weight:600;font-size:14px;color:#1e293b;margin-bottom:4px}.wa-settings-desc{font-size:12.5px;color:#64748b;margin:0 0 12px;line-height:1.5}.wa-settings-divider{border:none;border-top:1px solid #e2e8f0;margin:16px 0}.wa-settings-ai-toggle{justify-content:flex-start;padding-left:2px}.ai-3state-labels{display:flex;gap:12px;margin-left:14px;font-size:11.5px;color:#94a3b8}.ai-3state-labels span{transition:color .2s}.ai-3state-labels span.active{color:#2563eb;font-weight:600}.wa-settings-switch{display:inline-flex;align-items:center;gap:10px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.wa-settings-switch input{display:none}.wa-settings-switch-slider{position:relative;width:40px;height:22px;background:#cbd5e1;border-radius:999px;transition:background .2s;flex-shrink:0}.wa-settings-switch-slider:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;background:#fff;border-radius:50%;transition:transform .2s;box-shadow:0 1px 3px #00000026}.wa-settings-switch input:checked+.wa-settings-switch-slider{background:#2563eb}.wa-settings-switch input:checked+.wa-settings-switch-slider:after{transform:translate(18px)}.wa-settings-switch-label{font-size:13px;font-weight:500;color:#334155}.messages-empty{min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;text-align:center;color:#64748b;font-size:13.5px}.messages-empty-sidebar{min-height:200px;margin:18px 18px 12px;border-radius:14px;background:#f8fafc;border:1px dashed #cbd5e1}.messages-thread-empty{min-height:100%;border-radius:0;background:transparent;color:#94a3b8}.messages-thread-empty svg{opacity:.4}.wa-message-row{display:flex;padding:2px 0}.wa-message-incoming{justify-content:flex-start}.wa-message-outgoing{justify-content:flex-end}.wa-message-sender{display:inline-block;font-size:11px;font-weight:700;color:#6366f1;margin-bottom:3px;letter-spacing:-.01em;line-height:1.3}.wa-message-sender-wa{font-weight:400;color:#9ca3af;font-size:10px;margin-left:3px}.wa-message-sender-customer-badge{display:inline-block;font-size:10px;font-weight:500;color:#64748b;background:#e2e8f0;border-radius:999px;padding:1px 7px;margin-left:6px;letter-spacing:.01em;vertical-align:middle}.wa-message-sender-user-badge{display:inline-block;font-size:10px;font-weight:600;color:#4338ca;background:#e0e7ff;border-radius:999px;padding:1px 7px;margin-left:6px;letter-spacing:.01em;vertical-align:middle}.messages-thread-group-subtitle{font-size:12px;color:#64748b;margin:0;display:flex;align-items:center;gap:4px}.messages-thread-group-subtitle:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:#10b981;flex-shrink:0}.wa-message-bubble{max-width:min(70%,540px);padding:8px 12px;border-radius:14px;border:1px solid #e2e8f0;background:#fff;box-shadow:0 2px 6px #0f172a0a;position:relative;transition:box-shadow .15s ease;display:inline-flex;flex-direction:column;align-items:flex-start;width:-moz-fit-content;width:fit-content;min-width:0}.wa-message-bubble-media{padding:6px;overflow:hidden}.wa-message-incoming .wa-message-bubble{border-top-left-radius:4px;background:#fff;border-color:#e2e8f0}.wa-message-incoming .wa-message-bubble:before{display:none}.wa-message-outgoing .wa-message-bubble{background:linear-gradient(135deg,#eff6ff,#dbeafe);border-color:#bfdbfe;border-top-right-radius:4px;box-shadow:0 2px 6px #2563eb0f}.wa-message-outgoing .wa-message-bubble:after{display:none}.customers-billing-filter-summary{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:10px 12px;margin:10px 0 0;border-radius:12px;background:#ffffffe6;border:1px solid #e2e8f0;color:#0f172a;font-size:12.5px;font-weight:600}.customers-billing-filter-summary-label{color:#64748b;font-weight:600}.customers-billing-filter-summary-value{color:#0f172a;font-weight:700;letter-spacing:.01em}.wa-message-text{color:#0f172a;font-size:14px;line-height:1.5;white-space:pre-wrap;word-break:break-word}.wa-message-text-bold{font-weight:700}.wa-message-text-italic{font-style:italic}.wa-message-text-strike{text-decoration:line-through}.wa-message-text-mono{display:inline-block;padding:2px 6px;border-radius:6px;background:#0f172a0f;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:13px;line-height:1.5}.wa-message-media-link,.wa-message-file-link{margin-top:6px;display:inline-flex;align-items:center;gap:8px;color:#2563eb;text-decoration:none}.wa-message-media-link{padding:0;border:0;background:transparent;cursor:zoom-in}.wa-message-media-link img{display:block;width:auto;max-width:clamp(160px,64vw,360px);max-height:clamp(180px,42vh,360px);border-radius:10px;border:1px solid #e2e8f0;background:#fff;box-shadow:0 2px 8px #0000000d;-o-object-fit:contain;object-fit:contain}.wa-message-video{margin-top:6px}.wa-message-video video{display:block;width:auto;max-width:clamp(160px,64vw,360px);max-height:clamp(200px,45vh,360px);border-radius:10px;background:#000}.wa-message-audio{margin-top:6px}.wa-message-audio audio{display:block;width:clamp(220px,60vw,360px)}.wa-message-sticker{margin-top:4px}.wa-message-sticker img{display:block;width:auto;max-width:clamp(100px,32vw,160px);max-height:clamp(100px,32vw,160px);border-radius:4px;-o-object-fit:contain;object-fit:contain}.wa-message-contact-card{display:flex;align-items:center;gap:10px;margin-top:4px;padding:10px 14px;border-radius:10px;background:#0000000a;max-width:clamp(180px,50vw,280px)}.wa-message-outgoing .wa-message-contact-card{background:#2563eb14}.wa-message-contact-card svg{flex:0 0 20px;opacity:.55;color:#4b5563}.wa-message-outgoing .wa-message-contact-card svg{color:#2563eb}.wa-message-contact-name{font-size:clamp(12px,1.4vw,14px);font-weight:500;line-height:1.3;word-break:break-word;color:#374151}.wa-message-file-link{padding:8px 14px;border-radius:10px;background:#fffc;border:1px solid #e2e8f0;font-size:12.5px;font-weight:500;transition:all .15s ease}.wa-message-file-link:hover{background:#fff;border-color:#bfdbfe}.wa-message-media-missing{margin-top:6px;min-width:min(100%,220px);padding:10px 14px;border-radius:10px;background:#0f172a0a;color:#475569;display:inline-flex;align-items:flex-start;gap:10px}.wa-message-media-missing-content{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.wa-message-media-missing svg{flex-shrink:0;margin-top:2px;color:#64748b}.wa-message-media-missing strong,.wa-message-media-missing span{display:block}.wa-message-media-missing strong{font-size:12px;font-weight:700;color:#334155}.wa-message-media-missing span{margin-top:2px;font-size:11px;line-height:1.45;word-break:break-word}.wa-message-media-retry{margin-top:6px;min-height:30px;padding:0 14px;border-radius:999px;border:0;background:#dbeafe;color:#1d4ed8;font-size:11.5px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .16s ease}.wa-message-media-retry:hover:not(:disabled){background:#bfdbfe;transform:translateY(-1px)}.wa-message-media-retry:disabled{opacity:.65;cursor:wait}.wa-message-meta{margin-top:4px;display:flex;justify-content:flex-end;align-items:center;gap:4px;color:#94a3b8;font-size:11px;font-weight:500;min-height:15px;align-self:flex-end;margin-left:auto}.wa-message-outgoing .wa-message-meta{color:#64748b}.wa-message-status-icon{display:inline-flex;align-items:center}.wa-message-status-icon svg{width:15px;height:15px}.wa-message-status-read{color:#2563eb}.wa-message-error{margin-top:6px;padding:4px 8px;border-radius:6px;color:#dc2626;background:#fef2f2;border:1px solid #fee2e2;font-size:11.5px;clear:both}.messages-compose{padding:12px 18px 14px;border-top:1px solid rgba(148,163,184,.28);display:flex;flex-direction:column;gap:8px;background:#eef2f7;position:relative;z-index:2}.messages-compose-shell{display:flex;align-items:flex-end;gap:10px}.messages-compose-input-wrapper{flex:1;display:flex;align-items:flex-end;gap:6px;position:relative;padding:6px 12px 6px 10px;border-radius:20px;border:1px solid transparent;background:#eef2f7;transition:all .2s ease;box-shadow:inset 4px 4px 8px #94a3b859,inset -4px -4px 8px #ffffffe6}.messages-compose-input-wrapper:focus-within{border-color:#3b82f6;background:#eef2f7;box-shadow:inset 4px 4px 8px #94a3b859,inset -4px -4px 8px #ffffffe6,0 0 0 3px #3b82f61a}.messages-compose textarea{flex:1;min-height:40px;max-height:140px;resize:none;border-radius:10px;border:0;background:transparent;box-shadow:none;padding:8px 4px 8px 2px;font-size:14.5px;line-height:1.5;color:#0f172a}.messages-compose textarea::-moz-placeholder{color:#94a3b8}.messages-compose textarea::placeholder{color:#94a3b8}.messages-compose textarea:focus{outline:none;border:0;box-shadow:none}.messages-compose-actions{display:inline-flex;align-items:center;gap:4px;margin-left:2px;flex-shrink:0}.messages-attach-button{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;border:0;background:transparent;color:#64748b;cursor:pointer;flex-shrink:0;transition:all .15s ease}.messages-attach-button:hover{background:#eff6ff;color:#2563eb}.messages-attach-button-active{background:#dbeafe;color:#1d4ed8}.messages-emoji-shell .messages-attach-button{width:38px;height:38px;border-radius:10px;border:1px solid rgba(252,211,77,.85);background:linear-gradient(135deg,#fef3c7e6,#fde68acc);color:#d97706;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:all .25s cubic-bezier(.34,1.56,.64,1);position:relative;overflow:hidden;box-shadow:0 2px 6px #d9770626}.messages-emoji-shell .messages-attach-button svg{transition:transform .35s cubic-bezier(.34,1.56,.64,1),filter .2s ease;transform-origin:center;animation:emojiSmileWobble 4.5s ease-in-out infinite}@keyframes emojiSmileWobble{0%,to{transform:rotate(0) scale(1)}12%{transform:rotate(-14deg) scale(1.18)}24%{transform:rotate(14deg) scale(1.2)}36%{transform:rotate(-8deg) scale(1.12)}48%{transform:rotate(0) scale(1)}}.messages-emoji-shell .messages-attach-button:hover{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border-color:#f59e0b;transform:translateY(-2px) scale(1.1);box-shadow:0 4px 14px #f59e0b66}.messages-emoji-shell .messages-attach-button:hover svg{transform:rotate(360deg) scale(1.25);animation:none;filter:drop-shadow(0 0 4px rgba(255,255,255,.7))}.messages-emoji-shell .messages-attach-button-active,.messages-emoji-shell .messages-attach-button[aria-expanded=true]{background:linear-gradient(135deg,#d97706,#b45309);color:#fff;border-color:#d97706;box-shadow:0 0 0 3px #f59e0b4d,0 4px 14px #f59e0b66}.messages-emoji-shell .messages-attach-button-active svg,.messages-emoji-shell .messages-attach-button[aria-expanded=true] svg{transform:rotate(180deg) scale(1.15);animation:none;filter:drop-shadow(0 0 4px rgba(255,255,255,.7))}.messages-emoji-shell .messages-attach-button:active{transform:translateY(0) scale(.92)}.messages-template-button{color:#2563eb}.messages-template-button:hover{background:#eff6ff;color:#1d4ed8}.messages-emoji-shell{position:relative;display:inline-flex;align-items:center;flex-shrink:0;margin-right:1px}.messages-emoji-picker{position:absolute;left:-6px;bottom:calc(100% + 14px);width:min(430px,calc(100vw - 24px));height:396px;overflow:hidden;padding:0;border:1px solid rgba(148,163,184,.18);border-radius:16px;background:#eef2f7;box-shadow:0 16px 36px #0f172a29;z-index:1200;transform-origin:left bottom;animation:messagesEmojiPickerIn .18s cubic-bezier(.4,0,.2,1)}.messages-emoji-picker-head{display:flex;align-items:center;gap:4px;padding:8px 10px;border-bottom:1px solid rgba(148,163,184,.18);background:#eef2f7;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-wrap:nowrap}.messages-emoji-picker-head::-webkit-scrollbar{display:none}.messages-emoji-category-tab{min-height:30px;padding:0 12px;border:0;border-radius:999px;background:transparent;color:#64748b;display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;white-space:nowrap;cursor:pointer;flex-shrink:0;transition:all .15s ease}.messages-emoji-category-tab:hover{background:#f1f5f9;color:#0f172a}.messages-emoji-category-tab-active{background:#dbeafe;color:#1d4ed8;font-weight:700}.messages-emoji-picker-body{height:calc(100% - 54px);overflow-y:auto;padding:12px 14px 10px}.messages-emoji-group+.messages-emoji-group{margin-top:14px}.messages-emoji-group-title{margin-bottom:8px;color:#64748b;font-size:11px;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.messages-emoji-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:4px}.messages-emoji-button{min-height:42px;border:0;border-radius:10px;background:transparent;font-size:24px;line-height:1;cursor:pointer;transition:all .15s ease}.messages-emoji-button:hover{background:#f1f5f9;transform:scale(1.12)}.messages-emoji-button:active{transform:scale(1)}@keyframes messagesEmojiPickerIn{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.messages-attach-button input{display:none}.messages-send-button{width:40px;height:40px;min-width:40px;border:0;border-radius:12px;padding:0;display:inline-flex;align-items:center;justify-content:center;gap:0;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;cursor:pointer;font-weight:600;font-size:0;flex-shrink:0;box-shadow:0 4px 12px #2563eb47;transition:all .2s cubic-bezier(.4,0,.2,1)}.messages-send-button:hover:not(:disabled){background:linear-gradient(135deg,#1d4ed8,#1e40af);transform:translateY(-1px) scale(1.03);box-shadow:0 6px 16px #2563eb59}.messages-send-button:disabled{background:#cbd5e1;box-shadow:none;cursor:not-allowed;opacity:.65}.messages-send-button svg{width:19px;height:19px}.messages-attach-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;margin-left:12px;border-radius:8px;background:#eef2f7;border:1px solid transparent;box-shadow:4px 4px 8px #94a3b859,-4px -4px 8px #ffffffe6;color:#0f172a;font-size:12px;font-weight:500}.messages-attach-chip button{border:0;background:transparent;color:#ef4444;cursor:pointer;font-size:11px;font-weight:600}.messages-compose-footer{display:none}.message-template-preview{display:-webkit-box;overflow:hidden;color:var(--text-secondary);font-size:13px;line-height:1.45;white-space:pre-wrap;word-break:break-word;-webkit-line-clamp:3;-webkit-box-orient:vertical}.message-template-order-cell{display:inline-flex;align-items:center;gap:10px}.message-template-order-badge{min-width:34px;height:30px;padding:0 10px;border-radius:999px;background:#0f172a0f;color:var(--text-primary);display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}.message-template-order-actions{display:inline-flex;align-items:center;gap:6px}.message-template-order-button{width:30px;height:30px;border:1px solid rgba(15,23,42,.1);border-radius:999px;background:#fff;color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.message-template-order-button:hover:not(:disabled){background:#00a88414;border-color:#00a88433;color:#008f72}.message-template-order-button:disabled{opacity:.45;cursor:not-allowed}.message-template-form-textarea{min-height:180px}.message-template-picker{display:flex;flex-direction:column;gap:14px;min-height:0}.message-template-picker-search{display:flex;align-items:center;gap:10px;padding:0 14px;min-height:46px;border:1px solid var(--border-soft);border-radius:14px;background:#fff;color:var(--text-secondary)}.message-template-picker-search input{width:100%;border:0;background:transparent;box-shadow:none;padding:0}.message-template-picker-search input:focus{border:0;box-shadow:none;outline:none}.message-template-picker-list{display:flex;flex-direction:column;gap:12px;max-height:min(60vh,520px);overflow-y:auto;padding-right:4px}.message-template-picker-item{display:flex;flex-direction:column;gap:10px;padding:14px;border:1px solid var(--border-soft);border-radius:16px;background:linear-gradient(180deg,#fffffffa,#f8fafcfa)}.message-template-picker-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.message-template-picker-head strong{display:block;color:var(--text-primary);font-size:14px;font-weight:700}.message-template-picker-head span{display:block;margin-top:4px;color:var(--text-secondary);font-size:12px;line-height:1.45}.message-template-picker-body{white-space:pre-wrap;word-break:break-word;color:var(--text-primary);font-size:13px;line-height:1.55;padding:12px 14px;border-radius:14px;background:#0f172a0a}.message-template-picker-empty{min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--text-secondary);text-align:center}.customer-wa-send-dialog{display:flex;flex-direction:column;gap:16px}.customer-wa-send-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.customer-wa-send-summary-item{display:flex;flex-direction:column;gap:6px;padding:14px 16px;border:1px solid var(--border-soft);border-radius:16px;background:linear-gradient(180deg,#fffffffa,#f8fafcfa)}.customer-wa-send-summary-item span{color:var(--text-secondary);font-size:12px}.customer-wa-send-summary-item strong{color:var(--text-primary);font-size:14px;line-height:1.45;word-break:break-word}.customer-wa-send-form{display:flex;flex-direction:column;gap:16px}.customer-wa-send-textarea{min-height:180px;resize:vertical}.customer-wa-send-attachment{display:flex;flex-direction:column;gap:12px;padding:14px 16px;border:1px solid var(--border-soft);border-radius:16px;background:#f8fafcd9}.customer-wa-send-attachment-head{display:flex;flex-direction:column;gap:4px}.customer-wa-send-attachment-head span{color:var(--text-primary);font-size:13px;font-weight:700}.customer-wa-send-attachment-head p{margin:0;color:var(--text-secondary);font-size:12px;line-height:1.5}.customer-wa-send-attachment-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.customer-wa-send-attachment-actions .app-button{display:inline-flex;align-items:center;gap:8px}.customer-wa-send-remove-file{color:var(--danger-700)}.customer-wa-send-file-input{display:none}.customer-wa-send-file-preview{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;min-height:24px;color:var(--text-secondary);font-size:12px}.customer-wa-send-file-preview strong{color:var(--text-primary);font-size:13px}.customer-wa-send-note{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:14px;background:#2563eb14;color:var(--text-secondary);font-size:12px;line-height:1.55}.customer-wa-send-note svg{flex-shrink:0;color:var(--primary-600);margin-top:1px}.messages-dialog-form{min-height:0}.messages-dialog-form .form-section{gap:12px}.messages-dialog-form .messages-customer-results{max-height:280px}.wa-image-preview-dialog{display:flex;align-items:center;justify-content:center;padding:0;position:relative;overflow:hidden}.wa-image-preview-container{overflow:auto;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.wa-image-preview-container img{display:block;max-width:100%;max-height:70vh;width:auto;height:auto;border-radius:8px;background:#fff;-o-object-fit:scale-down;object-fit:scale-down;box-shadow:0 20px 50px #0f172a3d}.wa-image-preview-close{position:absolute;top:8px;right:8px;z-index:10;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:#0f172aa6;color:#fff;border:none;cursor:pointer;transition:background .2s;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.wa-image-preview-close:hover{background:#0f172ad9}.wa-image-preview-footer{display:flex;gap:8px;align-items:center;justify-content:space-between;flex-wrap:wrap}.wa-image-preview-footer-actions{display:flex;gap:8px;align-items:center}@media(min-width:769px){.messages-page-shell>.panel-header{display:none}}.candidate-terms-layout{display:grid;gap:16px}.candidate-terms-layout-editable{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}.candidate-terms-editor textarea{min-height:280px}.candidate-terms-preview{display:grid;gap:12px;padding:16px;border:1px solid var(--br);border-radius:18px;background:linear-gradient(180deg,#f8fafcf5,#fffffffa)}.candidate-terms-preview-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.candidate-terms-preview-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:#1b4ae614;color:var(--blue-d);font-size:12px;font-weight:700}.candidate-terms-preview-count{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:0 12px;border-radius:999px;background:#0f172a0f;color:var(--tx2);font-size:12px;font-weight:700}.candidate-terms-list{margin:0;padding-left:20px;display:grid;gap:10px;color:var(--tx)}.candidate-terms-list-numbered{list-style:none;padding-left:0}.candidate-terms-item{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:flex-start;gap:12px;padding:14px 16px;border-radius:16px;border:1px solid rgba(15,23,42,.08);background:#fffffff5;line-height:1.6}.candidate-terms-item-number{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;background:#1b4ae61a;color:var(--blue-d);font-size:13px;font-weight:800;flex-shrink:0}.candidate-terms-empty{display:flex;align-items:center;justify-content:center;gap:10px;min-height:180px;padding:20px;border:1px dashed var(--br);border-radius:16px;background:var(--bg3);color:var(--tx2);text-align:center}@media(max-width:900px){.candidate-terms-layout-editable{grid-template-columns:minmax(0,1fr)}}.public-registration-page{height:100dvh;overflow-y:auto;padding:24px 16px 40px;background:radial-gradient(circle at top,rgba(27,74,230,.14),transparent 28%),linear-gradient(180deg,#f8fbff,#eef4ff)}.public-registration-shell{width:min(1040px,100%);margin:0 auto;display:grid;gap:18px}.public-registration-hero,.public-registration-panel{background:#fffffff5;border:1px solid rgba(15,23,42,.08);border-radius:24px;box-shadow:0 22px 50px #0f172a14}.public-registration-hero{padding:24px;display:grid;gap:10px}.public-registration-brand{display:inline-flex;align-items:center;width:-moz-fit-content;width:fit-content;padding:8px 14px;border-radius:999px;background:#1b4ae614;color:var(--blue-d);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.public-registration-hero h1{margin:0;font-size:clamp(28px,4vw,38px);line-height:1.15;color:#0f172a}.public-registration-hero p{margin:0;color:var(--tx2);max-width:720px;line-height:1.7}.public-registration-panel{padding:22px;display:grid;gap:18px}.public-registration-steps{display:flex;flex-wrap:wrap;gap:10px}.public-step-pill{display:inline-flex;align-items:center;gap:10px;min-height:42px;padding:0 14px;border-radius:999px;border:1px solid var(--br);background:var(--bg3);color:var(--tx2);font-size:13px;font-weight:700}.public-step-pill.active{background:#1b4ae614;border-color:#1b4ae629;color:var(--blue-d)}.public-step-pill.done{background:#16a34a14;border-color:#16a34a26;color:#15803d}.public-step-pill-icon{display:inline-flex;align-items:center;justify-content:center}.public-registration-section-head{display:grid;gap:6px}.public-registration-section-head h2,.public-registration-section-head h3{margin:0;color:#0f172a}.public-registration-section-head p{margin:0;color:var(--tx2);line-height:1.65}.public-registration-loading{min-height:260px;display:flex;align-items:center;justify-content:center;gap:12px;color:var(--tx2)}.public-terms-list{margin:0;padding-left:24px;display:grid;gap:12px}.public-terms-item{padding:14px 16px;border-radius:18px;border:1px solid rgba(15,23,42,.08);background:#fbfdff;line-height:1.7;color:#1e293b}.public-terms-iframe-shell{overflow:auto;-webkit-overflow-scrolling:touch;height:420px;border-radius:22px;border:1px solid rgba(15,23,42,.08);background:#fffffff5;box-shadow:0 18px 40px #0f172a0f}.public-terms-iframe{width:100%;height:100%;border:0;display:block;background:transparent}.public-terms-frame{height:100dvh;overflow-y:auto;padding:16px;background:#fff;color:#0f172a;font-family:inherit}.public-terms-frame-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.public-terms-frame-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;border:1px solid rgba(27,74,230,.14);background:#1b4ae60f;color:var(--blue-d);font-size:12px;font-weight:800}.public-terms-frame-tenant{color:var(--tx2);font-size:12px;font-weight:700}.public-terms-frame-loading{display:flex;align-items:center;justify-content:center;gap:10px;min-height:180px;padding:16px;border-radius:16px;border:1px dashed rgba(15,23,42,.12);background:#94a3b814;color:var(--tx2)}.public-terms-frame-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}.public-terms-frame-item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;padding:14px;border-radius:18px;border:1px solid rgba(15,23,42,.08);background:#f8fafcfa;line-height:1.7;color:#1e293b}.public-terms-frame-number{width:28px;height:28px;border-radius:999px;background:#1b4ae61a;color:var(--blue-d);display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;flex-shrink:0}.public-terms-frame-empty{display:flex;align-items:center;justify-content:center;min-height:180px;padding:16px;border-radius:16px;border:1px dashed rgba(15,23,42,.12);background:#94a3b814;color:var(--tx2);text-align:center}.public-checkbox-card{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:flex-start;gap:12px;padding:16px;border-radius:18px;border:1px solid rgba(27,74,230,.12);background:#1b4ae60a;cursor:pointer;transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease,transform .18s ease}.public-checkbox-card:hover{border-color:#1b4ae633;background:#1b4ae60f}.public-checkbox-card:has(input[type=checkbox]:checked){border-color:#1b4ae64d;background:#1b4ae614;box-shadow:0 10px 24px #0f172a0f}.public-checkbox-card input{margin-top:2px;justify-self:start}.public-checkbox-card strong,.public-checkbox-card span{display:block}.public-checkbox-card strong{color:#0f172a}.public-checkbox-card span{margin-top:4px;color:var(--tx2);line-height:1.6}.public-location-button{width:100%;justify-content:center}.public-house-photo-preview{width:100%;max-height:240px;-o-object-fit:cover;object-fit:cover;border-radius:16px;border:1px solid var(--br);margin-top:10px}.public-package-summary,.public-signature-card,.public-success-card{padding:18px;border:1px solid rgba(15,23,42,.08);border-radius:22px;background:linear-gradient(180deg,#f8fafcf5,#fffffffa)}.public-package-summary-grid,.public-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.public-package-summary-card,.public-review-card{display:grid;gap:6px;padding:14px;border-radius:18px;border:1px solid var(--br);background:#fff}.public-package-summary-card span,.public-review-card span{color:var(--tx2);font-size:12px}.public-package-summary-card strong,.public-review-card strong{color:#0f172a;font-size:15px}.public-package-summary-card small{color:var(--tx2);line-height:1.5}.public-review-card-full{grid-column:1 / -1}.public-signature-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.public-signature-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:#1b4ae614;color:var(--blue-d);font-size:12px;font-weight:700}.public-signature-canvas{width:100%;height:auto;display:block;border-radius:18px;border:1px dashed rgba(15,23,42,.16);background:#fff;touch-action:none}.public-success-card{text-align:center;justify-items:center}.public-success-card h2,.public-success-card p{margin:0}.public-success-card p{color:var(--tx2);max-width:640px;line-height:1.7}.public-success-icon{width:56px;height:56px;border-radius:18px;display:inline-flex;align-items:center;justify-content:center;background:#16a34a1f;color:#16a34a}@media(max-width:900px){.public-package-summary-grid,.public-review-grid{grid-template-columns:minmax(0,1fr)}.public-signature-head{flex-direction:column;align-items:stretch}}@media(max-width:640px){.public-registration-page{padding:16px 12px 28px}.public-terms-iframe-shell{height:360px}.public-registration-hero,.public-registration-panel{border-radius:20px;padding:16px}.public-step-pill{width:100%;justify-content:center}.public-checkbox-card{padding:14px}}.messages-new-chat-pane{display:flex;flex-direction:column;gap:14px;min-height:0}.messages-new-chat-tabs{display:inline-flex;align-items:center;gap:4px;padding:4px;border-radius:14px;border:1px solid #e2e8f0;background:#f1f5f9;box-shadow:inset 0 1px 2px #0f172a08}.messages-new-chat-tab{border:0;background:transparent;color:#64748b;min-height:38px;padding:0 16px;border-radius:10px;cursor:pointer;font-family:Open Sans,Roboto,Segoe UI,sans-serif;font-size:13px;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex;align-items:center;justify-content:center}.messages-new-chat-tab:hover{color:#0f172a;background:#fff9}.messages-new-chat-tab-active{color:#2563eb!important;background:#fff!important;font-weight:700!important;box-shadow:0 2px 8px #0f172a14,0 1px 2px #0f172a0a!important}.messages-customer-search{display:flex;align-items:center;gap:10px;padding:0 14px;min-height:42px;border-radius:12px;border:1px solid transparent;background:#eef2f7;box-shadow:inset 4px 4px 8px #94a3b859,inset -4px -4px 8px #ffffffe6}.messages-customer-search:focus-within{border-color:#3b82f6;box-shadow:inset 4px 4px 8px #94a3b859,inset -4px -4px 8px #ffffffe6,0 0 0 3px #3b82f624}.messages-customer-search input{border:0;box-shadow:none;padding-left:0;padding-right:0;background:transparent}.messages-customer-search input:focus{border:0;box-shadow:none}.messages-customer-results{max-height:360px;overflow-y:auto;display:flex;flex-direction:column;gap:10px;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y}.messages-customer-empty{min-height:180px;display:flex;align-items:center;justify-content:center;text-align:center;border-radius:18px;border:1px dashed #cad8ea;background:#fffc;color:var(--tx3);font-size:12px}.messages-customer-option{width:100%;text-align:left;border:1px solid #dbe6f1;background:#fff;border-radius:18px;padding:14px;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;flex-shrink:0}.messages-customer-option:disabled{cursor:not-allowed;opacity:.78}.messages-customer-option:hover{border-color:#378add38;box-shadow:0 12px 28px #0f172a14;transform:translateY(-1px)}.messages-customer-option:disabled:hover{border-color:#dbe6f1;box-shadow:none;transform:none}.payment-customer-search{min-height:48px}.payment-customer-picker-shell{gap:16px}.payment-customer-picker-shell-compact{gap:8px}.payment-customer-picker-section{border:0;border-radius:0;background:transparent;box-shadow:none;padding:2px 0 0}.payment-customer-picker-section-compact{padding:4px 2px 2px}.payment-customer-picker-head-compact{margin-bottom:14px;padding-bottom:0;border-bottom:0}.payment-customer-picker-head-compact h4{font-size:14px}.payment-customer-picker-head-compact p{margin-top:6px;font-size:12px;line-height:1.65}.payment-customer-compact-note{margin-top:12px;border-radius:18px;border:1px solid #dbe6f1;background:linear-gradient(180deg,#fff,#f8fbff);color:var(--tx3);font-size:12px;line-height:1.7;padding:14px 16px}.payment-customer-results{margin-top:14px;max-height:320px}.payment-customer-selected-shell{margin-top:14px;display:flex;flex-direction:column;gap:14px}.payment-customer-selected-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.payment-customer-selected-head h5{margin:0;color:var(--tx);font-size:14px}.payment-customer-selected-head p{margin:4px 0 0;color:var(--tx3);font-size:12px;line-height:1.6}.payment-customer-results-expanded{max-height:420px;padding-bottom:32px;scroll-padding-bottom:32px}.payment-customer-option{padding:16px 18px}.payment-customer-card{border-radius:20px;border:1px solid #dbe6f1;background:#fff;overflow:hidden;flex-shrink:0}.payment-customer-card-expanded{border-color:#378add42;box-shadow:0 16px 34px #0f172a14}.payment-customer-option-trigger{border:0;border-radius:0;box-shadow:none;transform:none}.payment-customer-option-trigger:hover{border-color:transparent;box-shadow:none;transform:none}.payment-customer-option-top-right{display:flex;align-items:center;gap:10px}.payment-customer-chevron{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;background:#eff6ff;color:var(--blue-d);transition:transform .2s ease}.payment-customer-chevron-expanded{transform:rotate(180deg)}.messages-customer-option-active{border-color:#378add42;background:linear-gradient(180deg,#fff,#f4f9ff)}.messages-customer-option-top,.messages-customer-option-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px}.messages-customer-option-top strong{color:var(--tx);font-size:13px}.messages-customer-option-top span,.messages-customer-option-bottom span{color:var(--tx3);font-size:11px}.messages-customer-option-bottom{margin-top:8px}.messages-customer-option-status{margin-top:10px}.messages-customer-status{display:inline-flex;align-items:center;min-height:24px;padding:0 10px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.01em}.messages-customer-status-valid{background:#22c55e1f;color:#15803d}.messages-customer-status-invalid{background:#ef44441a;color:#b91c1c}.payment-customer-option-top{align-items:flex-start}.payment-customer-option-top>div{display:flex;flex-direction:column;gap:4px}.payment-customer-option-preview{margin-top:10px;display:flex;flex-direction:column;gap:10px}.payment-customer-preview-pills{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.payment-customer-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px}.payment-customer-preview-item{display:flex;flex-direction:column;gap:3px;min-width:0}.payment-customer-preview-item span{color:var(--tx3);font-size:10px;font-weight:600}.payment-customer-preview-item strong{color:var(--tx);font-size:12px;line-height:1.45}.payment-customer-preview-item-highlight strong{color:var(--blue-d)}.payment-customer-expanded{border-top:1px solid #e6eef8;padding:14px 16px 16px;display:flex;flex-direction:column;gap:10px;background:linear-gradient(180deg,#fff,#f8fbff)}.payment-customer-read-card{border:1px solid #e2ebf6;border-radius:18px;background:#ffffffeb;padding:14px;display:flex;flex-direction:column;gap:12px}.payment-customer-read-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.payment-customer-read-title{display:flex;flex-direction:column;gap:3px;min-width:0}.payment-customer-read-title span{color:var(--tx3);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.payment-customer-read-title strong{color:var(--tx);font-size:14px;line-height:1.35}.payment-customer-read-title p{margin:0;color:var(--tx2);font-size:11px;line-height:1.5}.payment-customer-read-badges{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.payment-customer-service-pill{display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:4px 10px;border-radius:999px;border:1px solid #dbe6f1;background:#f8fbff;color:var(--blue-d);font-size:11px;font-weight:600}.payment-customer-read-list{display:flex;flex-direction:column;border-top:1px dashed #dbe6f1;border-bottom:1px dashed #dbe6f1}.payment-customer-read-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:9px 0}.payment-customer-read-row+.payment-customer-read-row{border-top:1px solid rgba(219,230,241,.7)}.payment-customer-read-row span{color:var(--tx3);font-size:11px;line-height:1.5}.payment-customer-read-row strong{color:var(--tx);font-size:12px;line-height:1.55;text-align:right}.payment-customer-read-row-address{flex-direction:column;gap:4px}.payment-customer-read-row-address strong{text-align:left}.payment-customer-read-row-highlight{align-items:center}.payment-customer-read-date-pill{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:5px 12px;border-radius:999px;border:1px solid rgba(31,111,235,.16);background:linear-gradient(180deg,#edf5fff2,#e3efffeb);color:var(--blue-d);font-size:11px;font-weight:700;line-height:1.35;text-align:center}.payment-customer-read-row strong .status-pill,.payment-customer-read-row strong .payment-customer-read-date-pill{margin-left:auto}.payment-customer-read-summary{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.payment-customer-read-summary span{color:var(--blue-d);font-size:12px;font-weight:700}.payment-customer-read-summary strong{color:var(--tx2);font-size:11px;line-height:1.5;text-align:right}.payment-customer-expanded-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:2px;padding:12px 14px;border:1px solid #dbe6f1;border-radius:16px;background:linear-gradient(180deg,#f8fbfff2,#fff);box-shadow:0 8px 20px #0f172a0d}.payment-customer-expanded-actions p{margin:0;color:var(--tx3);font-size:11px;line-height:1.5}.payment-customer-results .messages-customer-empty{min-height:104px}.messages-manual-number-note{border-radius:18px;border:1px solid #dbe6f1;background:linear-gradient(180deg,#fff,#f8fbff);padding:16px;display:flex;flex-direction:column;gap:8px}.messages-manual-number-note strong{color:var(--tx);font-size:13px}.messages-manual-number-note span{color:var(--blue-d);font-size:18px;font-weight:700;word-break:break-word}.messages-manual-number-note small{color:var(--tx3);font-size:11px;line-height:1.7}.dialog-form-layout .form-grid,.customer-form-layout .form-grid{gap:16px}.dialog-map-layout{display:grid;gap:16px}.dialog-map-shell{border:1px solid var(--br);border-radius:20px;background:linear-gradient(180deg,#fff,#fafaf8);padding:16px;box-shadow:inset 0 1px #fffc,0 10px 24px #131d2b0d}.dialog-map-coordinates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.dialog-coordinate-pill{border:1px solid transparent;border-radius:14px;background:#eef2f7;box-shadow:inset 2px 2px 4px #94a3b873,inset -2px -2px 4px #ffffffe6;padding:10px 12px}.dialog-coordinate-pill span{display:block;font-size:11px;font-weight:700;color:var(--tx3);text-transform:uppercase;letter-spacing:.04em}.dialog-coordinate-pill strong{display:block;margin-top:6px;color:var(--tx);font-size:13px}.sidebar-foot{border-top:1px solid rgba(226,232,240,.6);padding:16px 12px 10px;position:relative}.sidebar-foot:before{content:"";position:absolute;top:-1px;left:0;right:0;height:1px;background:linear-gradient(90deg,rgba(59,130,246,.15) 0%,rgba(139,92,246,.15) 50%,transparent 100%)}.sidebar-foot-label{color:var(--tx3);font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:600}.sidebar-foot-value{margin-top:4px;font-weight:700;color:var(--tx);background:linear-gradient(135deg,#3b82f61a,#8b5cf60f);padding:6px 10px;border-radius:8px;border:1px solid rgba(59,130,246,.1);display:inline-block;font-size:12px}.panel-empty{padding:28px}.map-card,.map-frame{width:100%;min-height:520px;border-radius:18px;overflow:hidden}.map-card{position:relative;z-index:0;isolation:isolate}.map-frame-fill{position:relative;width:100%;flex:1;min-height:400px;isolation:isolate;border-radius:18px;overflow:hidden}.map-frame-fill .leaflet-container{position:absolute;top:0;right:0;bottom:0;left:0;width:auto!important;z-index:1}.map-frame-fill>:not(.leaflet-container){z-index:2}.map-frame-fill:fullscreen{width:100vw;height:100vh;display:flex;flex-direction:column;background:#000}.map-frame-fill:fullscreen .leaflet-container{flex:1;min-height:0}.map-card:fullscreen{width:100vw!important;height:100vh!important;min-height:100vh!important;border-radius:0!important;background:#000}.map-card:fullscreen .leaflet-container{min-height:100%!important}@media(max-width:768px){.map-card,.map-frame{min-height:360px}}.map-loading-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#ffffffb3}.map-loading-overlay .spinner{width:36px;height:36px;border:3px solid rgba(37,99,235,.15);border-top-color:#2563eb;border-radius:50%;animation:map-spin .7s linear infinite}@keyframes map-spin{to{transform:rotate(360deg)}}.map-empty-overlay{position:absolute;top:14px;left:50%;transform:translate(-50%);z-index:1000;display:flex;align-items:center;gap:10px;padding:10px 18px;border-radius:12px;background:#fffffff2;border:1px solid var(--br);box-shadow:0 4px 16px #0f172a1a;color:#6b7280}@media(max-width:480px){.map-empty-overlay{flex-direction:column;gap:4px;padding:8px 14px;text-align:center}.map-empty-overlay small{padding-left:0;border-left:none;padding-top:4px;border-top:1px solid var(--br)}}.map-empty-overlay p{margin:0;font-size:13px;font-weight:500;color:#374151}.map-empty-overlay small{font-size:12px;color:#9ca3af;padding-left:12px;border-left:1px solid var(--br)}.map-layer-switcher{position:absolute;top:12px;right:12px;z-index:1000;display:flex;flex-direction:column;gap:1px;border-radius:10px;overflow:hidden;background:#0000000a;box-shadow:0 2px 8px #0000002e}.map-frame .leaflet-container,.map-frame.leaflet-container{position:relative;z-index:1}.map-layer-main-btn{display:flex;align-items:center;gap:7px;padding:8px 14px;border:none;background:#fff;color:#1f2937;font-size:13px;font-weight:600;cursor:pointer;min-width:100px;letter-spacing:-.01em;transition:background .15s}.map-layer-main-btn:hover{background:#f3f4f6}.map-layer-dropdown{display:flex;flex-direction:column;gap:0}.map-layer-item{display:flex;align-items:center;gap:10px;padding:9px 14px;border:none;background:#fff;color:#374151;font-size:13px;font-weight:500;cursor:pointer;width:100%;text-align:left;transition:background .15s}.map-layer-item:hover{background:#f3f4f6}.map-layer-item-active{background:#eff6ff;color:#2563eb;font-weight:600}.map-fullscreen-btn{position:absolute;bottom:12px;right:12px;z-index:1000;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:none;border-radius:8px;background:#fffffff5;color:#374151;cursor:pointer;box-shadow:0 2px 8px #0000002e;transition:background .15s,color .15s}.map-fullscreen-btn:hover{background:#fff;color:#111827}.employee-map-pin{background:none!important;border:none!important;box-shadow:none!important}.employee-map-pin>div{transition:transform .15s ease}.employee-map-pin:hover>div{transform:scale(1.15)}.office-map-pin{background:none!important;border:none!important;box-shadow:none!important}.office-map-pin>div{transition:transform .15s ease}.office-map-pin:hover>div{transform:scale(1.15)}.office-map-label{background:none!important;border:none!important;box-shadow:none!important}.office-map-label>div{background:#000000bf;color:#fff;padding:3px 10px;border-radius:6px;font-size:12px;font-weight:600;white-space:nowrap;transform:translate(-50%);text-align:center}.map-employee-popup{min-width:200px;max-width:280px}.map-popup-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.map-popup-avatar{width:36px;height:36px;border-radius:50%;background:#2563eb;display:flex;align-items:center;justify-content:center;flex-shrink:0}.map-popup-header strong{font-size:14px}.map-popup-position{display:block;font-size:12px;color:#6b7280}.map-popup-details{display:flex;flex-direction:column;gap:4px;font-size:12px}.map-popup-row{display:flex;align-items:center;gap:6px;color:#6b7280}.map-popup-row span{color:#374151}.map-popup-coords{font-size:11px;color:#9ca3af!important}.app-leaflet-pin-wrapper{background:transparent!important;border:none!important}.app-leaflet-pin{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border-radius:14px;background:#2563eb;border:3px solid #ffffff;box-shadow:0 10px 24px #2563eb4d}.app-leaflet-home-pin{background:linear-gradient(180deg,#2563eb,#1d4ed8)}.app-leaflet-home-pin-normal{background:linear-gradient(180deg,#16a34a,#15803d);box-shadow:0 10px 24px #16a34a47}.app-leaflet-home-pin-blocked{background:linear-gradient(180deg,#f59e0b,#d97706);box-shadow:0 10px 24px #f59e0b4d}.app-leaflet-home-pin-offline{background:linear-gradient(180deg,#ef4444,#dc2626);box-shadow:0 10px 24px #ef44444d}.app-leaflet-home-icon{width:17px;height:17px;stroke:#fff;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}.customer-map-pin-label{border:none!important;box-shadow:none!important}.customer-map-pin-label .leaflet-tooltip-content>div,.customer-map-pin-label .leaflet-tooltip-content{display:inline-flex;align-items:center;justify-content:center}.customer-map-pin-label:before{display:none}.customer-map-pin-label.leaflet-tooltip{padding:6px 12px;border:none!important;border-radius:999px;background:#0f172af0!important;box-shadow:0 8px 20px #0f172a42!important;color:#fff!important}.customer-map-pin-label .leaflet-tooltip-content{max-width:180px;padding:0;margin:0;border:none;background:transparent!important;color:inherit;font-size:11px;font-weight:700;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.customer-map-pin-label-normal.leaflet-tooltip{background:#16a34af5!important;box-shadow:0 8px 20px #16a34a47!important}.customer-map-pin-label-blocked.leaflet-tooltip{background:#d97706f7!important;box-shadow:0 8px 20px #d977064d!important}.customer-map-pin-label-offline.leaflet-tooltip{background:#dc2626f7!important;box-shadow:0 8px 20px #dc26264d!important}.customer-map-pin-label-odp.leaflet-tooltip{background:#2563ebf5!important;box-shadow:0 8px 20px #2563eb4d!important}.customer-map-pin-label-employee.leaflet-tooltip{background:#0d9488f5!important;box-shadow:0 8px 20px #0d94884d!important}.customer-map-pin-marker{background:transparent!important;border:none!important}.customer-map-pin-badge{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;border:2px solid;color:#fff;box-sizing:border-box;box-shadow:0 2px 6px #0f172a59}.customer-map-pin-badge svg{width:16px;height:16px;display:block}.customer-map-pin-badge-square{border-radius:8px}.map-cluster{background:transparent!important;border:none!important}.map-cluster-badge{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:#2563ebe6;border:3px solid rgba(255,255,255,.95);color:#fff;font-size:12px;font-weight:700;box-shadow:0 2px 8px #0f172a66}.customer-map-popup .leaflet-popup-content-wrapper{border-radius:20px;padding:0;background:#fffffffa;box-shadow:0 20px 44px #0f172a2e}.customer-map-popup .leaflet-popup-content{margin:0;min-width:240px;max-width:calc(100vw - 28px)}.customer-map-popup .leaflet-popup-tip{background:#fffffffa}.customer-map-popup-card{display:grid;gap:10px;padding:12px}.customer-map-popup-head{display:flex;align-items:flex-start;gap:10px}.customer-map-popup-avatar,.customer-map-popup-icon{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;background:#eff6ff;color:#2563eb}.customer-map-popup-avatar{width:34px;height:34px}.customer-map-popup-icon{width:24px;height:24px}.customer-map-popup-title{min-width:0;display:grid;gap:3px;flex:1}.customer-map-popup-title strong{color:#0f172a;font-size:14px;line-height:1.25}.customer-map-popup-title span{color:#64748b;font-size:11px;font-weight:600}.customer-map-popup-status{white-space:nowrap;align-self:flex-start}.customer-map-popup-body{display:grid;gap:8px}.customer-map-popup-row,.customer-map-popup-metric{display:flex;gap:8px;align-items:flex-start}.customer-map-popup-row-highlight{padding:12px;border:1px solid #e2e8f0;border-radius:16px;background:#f8fafc}.customer-map-popup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.customer-map-popup-metric{border:1px solid #e2e8f0;border-radius:16px;background:#f8fafc;padding:10px}.customer-map-popup-value{min-width:0;display:grid;gap:4px}.customer-map-popup-helper{color:#64748b;font-size:11px;line-height:1.4}.customer-map-popup-icon-normal{background:#dcfce7;color:#15803d}.customer-map-popup-icon-blocked{background:#fef3c7;color:#b45309}.customer-map-popup-icon-offline{background:#fee2e2;color:#dc2626}.customer-map-popup-value span,.customer-map-popup-coordinate span{color:#64748b;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.customer-map-popup-value strong,.customer-map-popup-coordinate strong{color:#0f172a;font-size:12px;line-height:1.4;word-break:break-word}.customer-map-popup-coordinates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.customer-map-popup-coordinate{border:1px solid #dbeafe;border-radius:14px;background:#f8fbff;padding:10px 12px}@media(max-width:640px){.customer-map-popup .leaflet-popup-content-wrapper{max-width:calc(100vw - 24px)!important}.customer-map-popup .leaflet-popup-content{min-width:0!important;max-width:calc(100vw - 24px)}.customer-map-popup-card{padding:12px;gap:10px}.customer-map-popup-grid{gap:8px}.customer-map-popup-row-highlight{padding:10px}}.row-between{display:flex;align-items:center;justify-content:space-between}.picker-hint{margin:0;color:var(--tx2);font-size:13px}.report-list-row{justify-content:space-between;padding-bottom:10px;border-bottom:1px solid var(--br)}.report-list-row:last-child{border-bottom:none;padding-bottom:0}.billing-status{font-weight:700}.billing-status-paid{background:var(--green-l);color:var(--green)}.billing-status-unpaid{background:var(--blue-l);color:var(--blue-d)}.billing-status-due_soon{background:var(--amber-l);color:var(--amber)}.billing-status-overdue{background:var(--red-l);color:var(--red)}.status-unlimited,.billing-status-unlimited{background:#6366f11f;color:#4338ca}.login-screen{height:100vh;height:100dvh;display:flex;flex-direction:column;padding:24px;overflow-y:auto;background:radial-gradient(circle at top left,rgba(55,138,221,.18),transparent 24%),radial-gradient(circle at bottom right,rgba(83,74,183,.16),transparent 20%),var(--bg)}.login-screen:before,.login-screen:after{content:"";flex:1}.login-panel{margin:0 auto;width:min(440px,100%);background:#ffffffeb;border:1px solid rgba(255,255,255,.8);border-radius:20px;padding:20px 24px;box-shadow:0 24px 60px #131d2b1f}.login-panel-platform{width:min(480px,100%)}@media(max-width:640px){.login-screen{padding:16px;padding-top:6vh}.login-screen:before{display:none}.login-panel{margin:0 auto;padding:24px 20px;border-radius:20px}.login-logo{width:60px;height:60px;border-radius:14px}}.login-logo-wrap{display:flex;flex-direction:column;align-items:center;justify-content:center;margin-bottom:6px;gap:6px}.login-logo{width:52px;height:52px;border-radius:12px;-o-object-fit:cover;object-fit:cover;box-shadow:0 12px 28px #0b43dd26}.login-brand{color:var(--blue-d);font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin:0}.login-panel-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:#0c4a6e14;color:#0f4c81;font-size:12px;font-weight:700}.login-caption{margin:0;color:var(--tx2);font-size:13px;line-height:1.4;text-align:center;max-width:320px}.login-panel h1{margin:0;font-size:30px;line-height:1.1}.login-form{display:flex;flex-direction:column;gap:10px;margin-top:12px}.login-mode-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.login-divider{display:flex;align-items:center;justify-content:center;margin:10px 0;position:relative;color:var(--tx3);font-size:13px;font-weight:500}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:var(--br);margin:0 10px}.login-mode-chip{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 14px;border:1px solid var(--br);background:var(--bg3);color:var(--tx2);border-radius:14px;font-weight:700;cursor:pointer;transition:all .2s ease}.login-mode-chip.active{background:#1b4ae61a;border-color:#1b4ae638;color:var(--blue-d)}.login-mode-card{display:grid;gap:14px;padding:18px;border:1px solid rgba(15,23,42,.08);border-radius:18px;background:linear-gradient(180deg,#f8fafcf5,#fffffffa)}.login-mode-card-icon{width:40px;height:40px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;background:#1b4ae614;color:var(--blue-d)}.login-google-avatar{width:16px;height:16px;border-radius:999px;-o-object-fit:cover;object-fit:cover;display:block}.login-google-avatar-lg{width:18px;height:18px}.login-mode-card-copy{display:grid;gap:6px}.login-mode-card-copy strong,.platform-auth-toggle strong{color:var(--tx)}.login-mode-card-copy p,.platform-auth-toggle span{margin:0;color:var(--tx2);line-height:1.5}.login-mode-inline-note{padding:10px 14px;border-radius:14px;border:1px solid rgba(27,74,230,.1);background:#1b4ae60f;color:var(--blue-d);font-size:13px;line-height:1.4}.input-shell{display:flex;align-items:center;gap:10px;background:#eef2f7;border:1px solid transparent;padding:0 12px;border-radius:12px;color:var(--tx2);min-height:42px;box-shadow:inset 4px 4px 8px #94a3b859,inset -4px -4px 8px #ffffffe6}.input-shell:focus-within{border-color:#3b82f6;box-shadow:inset 4px 4px 8px #94a3b859,inset -4px -4px 8px #ffffffe6,0 0 0 3px #3b82f624}.input-shell input{border:none;background:transparent;padding-left:0}.login-password-toggle{display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--tx2);width:28px;height:28px;padding:0;cursor:pointer;border-radius:999px;flex-shrink:0}.login-password-toggle:hover{background:#0f172a0f;color:var(--tx)}.login-button{width:100%;margin-top:6px}.login-install-button{width:100%;margin-top:4px}.tenant-login-blocked{display:grid;gap:16px}.tenant-login-blocked-copy{margin:0;color:var(--tx2);line-height:1.6}.tenant-login-blocked-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.platform-auth-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.platform-auth-toolbar{display:flex;flex-wrap:wrap;gap:10px}.platform-auth-toggle{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:flex-start;gap:12px;padding:16px;border-radius:16px;border:1px solid var(--br);background:var(--panel);cursor:pointer;transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease,transform .18s ease}.platform-auth-toggle:hover{border-color:color-mix(in srgb,var(--blue) 24%,var(--br));background:color-mix(in srgb,var(--blue) 4%,var(--panel))}.platform-auth-toggle:has(input[type=checkbox]:checked){border-color:color-mix(in srgb,var(--blue) 34%,var(--br));background:color-mix(in srgb,var(--blue) 7%,var(--panel));box-shadow:0 10px 24px #0f172a0d}.platform-auth-toggle input{margin-top:2px;justify-self:start}.platform-auth-toggle>div{display:grid;gap:4px}.tenant-login-blocked-item{display:grid;gap:6px;padding:14px 16px;border:1px solid var(--br);border-radius:16px;background:#f9fbff}.tenant-login-blocked-item span{display:inline-flex;align-items:center;gap:8px;color:var(--tx2);font-size:12px}.tenant-login-blocked-item strong{font-size:16px;line-height:1.4;overflow-wrap:anywhere}.tenant-login-blocked-item small{color:var(--tx3);line-height:1.5}.tenant-login-blocked-item-full{grid-column:1 / -1}.mobile-nav,.mobile-drawer-backdrop,.mobile-drawer{display:none}.topbar-title-block{min-width:0;flex:1}.topbar-heading{display:flex;align-items:center;gap:10px;min-width:0;flex:1}@media(max-width:1024px){.metrics-grid,.metrics-grid-2,.metrics-grid-3,.metrics-grid-4,.metrics-grid-5,.agent-dashboard-quick-actions,.two-column-grid,.form-grid-2,.form-grid-3{grid-template-columns:1fr 1fr}.statistics-compare-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.statistics-trend-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:768px){body.app-shell-scroll-lock{overflow-y:auto}.topbar-notification-dropdown{right:-4px;width:min(340px,calc(100vw - 16px))}.topbar-notification-header{padding:12px 12px 8px}.topbar-notification-list{padding:8px;gap:6px}.topbar-notification-item{padding:9px 10px}.activity-audit-summary,.activity-notification-stats,.activity-notification-history-grid{grid-template-columns:1fr}.activity-audit-item{flex-direction:column}.activity-audit-status{min-width:0;width:-moz-fit-content;width:fit-content}.activity-audit-footer{flex-direction:column-reverse;align-items:stretch;gap:12px}.activity-audit-footer .app-button{width:100%;min-width:0}.app-shell{min-height:100dvh;height:auto;overflow:visible;overscroll-behavior-y:auto}.app-shell-mobile .app-main{min-height:100dvh;height:100dvh;overflow:hidden}.app-content{padding:12px;margin-bottom:calc(76px + env(safe-area-inset-bottom,0px));min-height:0;overflow-y:auto;overscroll-behavior-y:auto;touch-action:auto}.modal-body{padding:14px;overflow-x:hidden;overflow-y:auto;min-height:0;flex:1}.modal-body:has(.wa-image-preview-dialog){padding:0}.wa-image-preview-container img{max-height:80vh;border-radius:6px}.wa-image-preview-close{width:32px;height:32px;top:6px;right:6px;background:#0f172ab3}.wa-image-preview-footer{flex-direction:column;width:100%;gap:8px}.wa-image-preview-footer-actions{flex-direction:column;width:100%;gap:6px}.wa-image-preview-footer-actions .app-button{width:100%}.modal-body .form-section,.modal-body .form-grid,.modal-body .form-grid>*,.modal-body .form-block,.modal-body .flex,.modal-body .flex>*{min-width:0;max-width:100%}.modal-overlay{display:flex;align-items:center;justify-content:center;padding:max(10px,calc(env(safe-area-inset-top) + 10px)) 12px max(18px,calc(env(safe-area-inset-bottom) + 18px));overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}.modal-overlay.modal-overlay-keyboard-open{align-items:flex-start;padding:max(8px,env(safe-area-inset-top)) 12px max(12px,env(safe-area-inset-bottom))}.modal-panel,.modal-panel-wide,.modal-panel-xwide{width:min(100%,100%);max-height:calc(100svh - max(28px,calc(env(safe-area-inset-top) + env(safe-area-inset-bottom) + 28px)));min-height:0;margin:0 auto}.modal-panel-notice,.modal-panel-wide.modal-panel-notice,.modal-panel-xwide.modal-panel-notice{width:min(100%,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:calc(100svh - max(28px,calc(env(safe-area-inset-top) + env(safe-area-inset-bottom) + 28px)))}.modal-overlay.modal-overlay-keyboard-open .modal-body{scroll-padding-bottom:140px}.modal-header{align-items:flex-start;padding:18px 14px 16px;gap:12px}.modal-title-row{flex:1;min-width:0;align-items:flex-start;gap:12px;padding-right:6px}.modal-header h3{font-size:16px;line-height:1.35}.modal-panel-notice .modal-header{padding:16px 14px 14px}.modal-panel-notice .modal-title-row h3{font-size:16px}.modal-panel-notice .modal-body{padding:16px 14px 12px}.modal-panel-notice .modal-copy{padding:0}.modal-panel-notice .modal-footer .modal-confirm-button{min-width:0}.modal-notification-icon{width:40px;height:40px}.modal-header .icon-button{width:38px;height:38px;border-radius:12px}.modal-badge{width:36px;height:36px;border-radius:14px}.modal-footer{flex-direction:column;align-items:stretch;justify-content:flex-start;padding:14px 12px;overflow:visible}.modal-footer>*{width:100%;max-width:100%}.modal-footer .app-button{width:100%;justify-content:center;white-space:normal}.modal-footer .action-row{width:100%;justify-content:stretch}.modal-footer .action-row .app-button{width:100%}.payment-method-picker{gap:10px}.payment-method-option{width:100%;min-width:0;padding:12px 14px}.sidebar-edge-trigger{display:none}.topbar{height:52px;padding:0 14px;flex-direction:row;align-items:center}.topbar-actions{flex-wrap:nowrap;gap:6px}.topbar-pill-online,.topbar-actions .app-button span.logout-label{display:none}.topbar-actions .app-button{padding:6px 8px;min-height:30px;font-size:12px}.metrics-grid,.metrics-grid-3,.metrics-grid-4,.metrics-grid-5,.agent-dashboard-quick-actions{grid-template-columns:1fr 1fr}.two-column-grid,.form-grid-2,.form-grid-3,.statistics-compare-grid,.statistics-trend-grid{grid-template-columns:1fr}.notification-template-card-head,.notification-template-section-head,.notification-template-footer{flex-direction:column;align-items:stretch}.notification-template-toolbar,.notification-admin-control-grid,.notification-admin-template-grid{grid-template-columns:1fr}.notification-admin-option-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.notification-template-toolbar{justify-content:stretch}.notification-template-toggle{width:100%;min-width:0}.notification-template-admin-actions{width:100%;flex-direction:column;align-items:stretch}.notification-template-admin-actions .app-button{width:100%}.voucher-template-workspace{grid-template-columns:repeat(2,minmax(0,1fr))}.voucher-template-selected-head{flex-direction:column}.voucher-template-selected-actions{width:100%;flex-wrap:wrap}.toolbar{flex-wrap:wrap;gap:8px}.toolbar .toolbar-search{min-width:0;flex:1 1 200px}.toolbar-inline{width:100%;flex-wrap:wrap;gap:8px}.toolbar-select{width:auto;min-width:130px;flex:1}.customer-detail-section-head{flex-direction:column;align-items:stretch;gap:12px;margin-bottom:16px}.customer-detail-section-actions,.inline-field-row{flex-direction:column;align-items:stretch}.settings-logo-card,.voucher-template-workspace{grid-template-columns:1fr}.voucher-template-preview-frame{min-height:560px}.voucher-template-selected-actions .app-button{width:100%;justify-content:center}.customer-photo-grid,.customer-signal-chart-summary{grid-template-columns:1fr}.customer-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.customer-delete-summary{grid-template-columns:1fr}.customer-delete-hero{grid-template-columns:1fr;padding:12px 13px}.customer-delete-hero-icon{width:38px;height:38px}.customer-delete-option{padding:11px 12px}.customer-delete-option-row{grid-template-columns:auto minmax(0,1fr)}.customer-delete-option-row input[type=checkbox]{grid-column:2;justify-self:end;margin-top:0}.customer-delete-option-meta{padding-left:0}.customer-delete-actions{grid-template-columns:1fr}.customer-detail-item{padding:8px 12px;gap:2px}.customer-detail-map-frame{min-height:280px}.customer-detail-map-actions{flex-direction:column}.customer-signal-chart-head{flex-direction:column;align-items:stretch}.customer-signal-chart-timeline,.customer-addon-row,.customer-billing-summary,.messages-layout,.tenant-login-blocked-grid,.platform-auth-grid,.login-mode-switch{grid-template-columns:1fr}.platform-auth-toolbar{flex-direction:column}.messages-page{position:fixed;top:58px;bottom:calc(68px + env(safe-area-inset-bottom,0px));left:0;right:0;margin:0!important;padding:0!important;z-index:180;background:#eef2f7;display:flex;flex-direction:column;height:auto;overflow:visible}.messages-page-shell{margin:0;flex:1;display:flex;flex-direction:column;min-height:0;overflow:visible}.messages-page-shell>.panel-header{display:none}.messages-wa-shell{flex:1;display:flex;flex-direction:column;min-height:0;border-radius:0;border:0;overflow:visible}.messages-wa-shell:before{display:none}.messages-layout{flex:1;height:100%;margin:0;display:flex;flex-direction:column;min-height:0;border-radius:0;overflow:visible}.messages-mobile-hidden{display:none!important}.messages-sidebar,.messages-thread-card{flex:1;display:flex;flex-direction:column;min-height:0;border-radius:0;border:0;overflow:visible}.messages-sidebar{padding:0;border-right:0}.messages-conversation-delete{display:inline-flex!important;opacity:1!important;background:#fef2f2;color:#ef4444;border:1px solid #fca5a5}.messages-sidebar-toolbar{background:#eef2f7;color:#0f172a;min-height:56px;padding:10px 14px;border-bottom:1px solid rgba(148,163,184,.18)}.messages-sidebar-toolbar .customer-detail-tabs{background:#eef2f7;border:1px solid transparent;border-radius:10px;padding:3px;box-shadow:inset 3px 3px 6px #94a3b866,inset -3px -3px 6px #ffffffe6}.messages-sidebar-toolbar .customer-detail-tab{color:#475569;font-weight:600;font-size:12px;padding:6px 10px}.messages-sidebar-toolbar .customer-detail-tab-active{background:#fff;color:#2563eb;box-shadow:3px 3px 6px #94a3b873,-3px -3px 6px #fffffff2;font-weight:700}.messages-sidebar-profile strong{color:#0f172a;font-size:16px;font-weight:600}.messages-sidebar-profile span{color:#64748b}.messages-icon-button{background:#f1f5f9;border:1px solid #cbd5e1;color:#0f172a;border-radius:10px;width:38px;height:38px;box-shadow:0 1px 2px #0f172a0d}.messages-icon-button:hover,.messages-icon-button:active{background:#dbeafe;color:#1d4ed8;border-color:#93c5fd}.messages-icon-button-danger{background:#fef2f2;border-color:#fca5a5;color:#dc2626}.messages-icon-button-danger:hover,.messages-icon-button-danger:active{background:#fee2e2;color:#b91c1c;border-color:#f87171}.messages-conversation-list{max-height:none;overflow-y:auto;background:#eef2f7;padding-bottom:12px}.messages-sidebar-pagination{position:sticky;bottom:0;z-index:30;background:#eef2f7;padding:8px 14px;border-top:1px solid rgba(148,163,184,.18);box-shadow:0 -4px 14px #0f172a14}.messages-conversation-main{padding:12px 14px 12px 0;min-height:72px}.messages-conversation-avatar-slot{width:70px;min-width:70px;min-height:72px;padding-left:12px;padding-right:10px}.messages-conversation-content{border-bottom:0;padding:0}.messages-conversation-top strong{font-size:14px;color:#0f172a}.messages-conversation-bottom p{font-size:12.5px;color:#64748b}.messages-thread-head{padding:10px 14px;align-items:center;background:#fff;color:#0f172a;min-height:60px;border-bottom:1px solid #e2e8f0;box-shadow:0 1px 4px #0f172a0a}.messages-thread-head h3{color:#0f172a;font-size:16px;font-weight:600}.messages-thread-head p{color:#64748b}.messages-thread-customer-meta{margin-top:4px;gap:6px}.messages-thread-title-row{display:flex;align-items:center}.messages-thread-head .messages-customer-badge{border-color:#bfdbfe;background:#dbeafe;color:#1e40af;font-weight:700}.messages-thread-head .messages-user-badge{border-color:#a7f3d0;background:#d1fae5;color:#065f46;font-weight:700}.messages-thread-head .messages-customer-ref{background:#f1f5f9;border-color:#cbd5e1;color:#1e293b;font-weight:600}.messages-thread-back{color:#0f172a;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:10px;width:38px;height:38px;margin-right:4px;box-shadow:0 1px 2px #0f172a0d}.messages-thread-back:hover,.messages-thread-back:active{background:#dbeafe;color:#1d4ed8;border-color:#93c5fd}.messages-thread-head>div{min-width:0}.messages-thread-body{flex:1;min-height:0;padding:14px 12px 8px}.messages-compose{padding:10px 12px 14px;background:#eef2f7;border-top:1px solid rgba(148,163,184,.28);gap:8px}.messages-compose-shell{align-items:flex-end;gap:8px}.messages-compose-input-wrapper{flex:1;display:flex;align-items:flex-end;gap:6px;background:#eef2f7;border:1px solid transparent;border-radius:20px;padding:6px 12px;box-shadow:inset 4px 4px 8px #94a3b859,inset -4px -4px 8px #ffffffe6}.messages-compose-input-wrapper:focus-within{border-color:#3b82f6;background:#eef2f7;box-shadow:inset 4px 4px 8px #94a3b859,inset -4px -4px 8px #ffffffe6,0 0 0 3px #3b82f61f}.messages-compose textarea{flex:1;min-height:24px;padding:8px 4px 8px 2px;background:transparent;font-size:16px;line-height:22px;color:#0f172a}.messages-compose-actions{gap:4px;margin-left:0}.messages-send-button{width:44px;height:44px;min-width:44px;border-radius:12px;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;box-shadow:0 4px 12px #2563eb4d}.messages-send-button:hover:not(:disabled),.messages-send-button:active:not(:disabled){background:linear-gradient(135deg,#1d4ed8,#1e40af)}.messages-send-button svg{width:20px;height:20px}.messages-attach-button{width:38px;height:38px;background:transparent;border:0;border-radius:10px;color:#334155}.messages-attach-button:hover,.messages-attach-button:active{background:#eff6ff;color:#1d4ed8}.messages-emoji-picker{left:-2px;right:auto;bottom:calc(100% + 10px);width:min(400px,calc(100vw - 18px));height:344px}.messages-emoji-grid{grid-template-columns:repeat(7,minmax(0,1fr))}.messages-emoji-button{min-height:42px;font-size:24px}.messages-emoji-picker-head{padding:9px 10px 8px;gap:4px;overflow-x:auto}.messages-emoji-category-tab{flex-shrink:0;min-height:32px;padding:0 10px}.messages-emoji-picker-body{height:calc(100% - 50px);padding:10px 10px 9px}.messages-attach-chip{margin-left:12px;margin-bottom:8px;border-radius:16px;box-shadow:0 1px 2px #0000001a;border:0}.wa-message-bubble{max-width:85%}.payment-customer-preview-grid,.payment-billing-summary-grid{grid-template-columns:1fr}.payment-customer-summary{gap:10px;padding:12px 13px;font-size:11px}.payment-customer-summary strong{font-size:12px;line-height:1.45}.payment-customer-summary-item-highlight{flex-direction:column;align-items:center;text-align:center;padding:16px 14px;gap:8px}.payment-customer-summary-item-highlight strong{text-align:center;align-items:center;font-size:15px;color:var(--primary)}.payment-customer-summary-item-highlight>span{text-align:center;width:100%}.payment-customer-summary-stack{flex-direction:column;align-items:flex-start;gap:6px}.payment-customer-expanded-actions{flex-direction:column;align-items:stretch}.payment-customer-selected-head,.payment-customer-read-head,.payment-customer-read-summary,.payment-customer-read-row{flex-direction:column}.payment-customer-read-badges{justify-content:flex-start}.payment-customer-read-row strong,.payment-customer-read-summary strong{text-align:left}.payment-method-option{width:100%}.customer-form-footer{flex-direction:column;align-items:stretch;gap:12px}.customer-form-footer-left,.customer-form-footer-switch{width:100%}.customer-form-footer-switch{padding:10px 12px;border:1px solid #d9e2ec;border-radius:16px;background:linear-gradient(180deg,#fff,#f8fbff)}.customer-form-footer .wa-gateway-switch-field{flex-direction:column;align-items:stretch;gap:10px}.customer-form-footer .wa-gateway-switch-control{width:100%;margin-left:0;justify-content:space-between}.customer-form-footer .wa-gateway-switch-state{min-width:0;text-align:left}.customer-form-footer-actions{width:100%;margin-left:0;display:grid;grid-template-columns:minmax(0,1fr);gap:10px}.customer-form-footer-actions .app-button{width:100%;white-space:normal}.messages-compose-footer{flex-direction:column;align-items:stretch}.wa-message-bubble{max-width:100%}.speed-group{flex-direction:column}.speed-group-unit{min-height:44px}.tenant-refresh-note{width:100%;justify-items:start;text-align:left}.pppoe-traffic-toolbar,.pppoe-traffic-graph-head{flex-direction:column;align-items:stretch}.pppoe-traffic-mode-switch{width:100%;justify-content:stretch}.pppoe-traffic-mode-button{flex:1 1 0}.pppoe-traffic-bar-head{flex-direction:column;align-items:flex-start}.pppoe-traffic-graph-layout{grid-template-columns:1fr}.pppoe-traffic-graph-y-axis{grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:none;padding-block:0;order:2}.pppoe-traffic-graph-y-axis span{justify-content:flex-start}.sidebar-mobile{top:10px;bottom:10px;left:10px;height:auto;width:min(280px,calc(100vw - 28px));padding:16px 12px;border-radius:0 24px 24px 0;box-shadow:0 22px 48px #0f172a38}.sidebar-mobile .sidebar-brand,.sidebar-mobile .sidebar-foot{display:block}.sidebar-mobile .sidebar-nav{padding-right:2px}.sidebar-mobile .sidebar-item,.sidebar-mobile .sidebar-subitem{justify-content:space-between;padding-left:12px;padding-right:12px}.sidebar-mobile .sidebar-item-main{width:auto;justify-content:flex-start}.sidebar-mobile .sidebar-item-main span,.sidebar-mobile .sidebar-subitem span,.sidebar-mobile .sidebar-group-trigger svg:last-child{display:inline-flex}.sidebar-mobile .sidebar-subnav{display:flex;flex-direction:column;width:100%}.sidebar-mobile .sidebar-subitem{justify-content:flex-start;width:100%}.sidebar-backdrop{background:#1119285c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal-overlay{padding:12px}.modal-overlay-notice{top:12px;left:0;right:0;padding:0 12px;transform:none}.modal-panel{max-height:calc(100vh - 24px)}.modal-panel-notice{width:min(100%,calc(100vw - 24px))}.mobile-card-table{overflow:visible}.mobile-card-table .app-table thead{display:none}.mobile-card-table .app-table,.mobile-card-table .app-table tbody,.mobile-card-table .app-table tr{display:block;width:100%}.mobile-card-table .app-table tbody{display:grid;gap:12px}.mobile-card-table .app-table tbody tr{--widget-accent: #3b82f6;--widget-accent-light: rgba(59, 130, 246, .04);background:#eef2f7;border:1px solid transparent;border-radius:16px;margin-bottom:0;padding:0;box-shadow:8px 8px 16px #94a3b859,-8px -8px 16px #ffffffe6;position:relative;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.mobile-card-table .app-table tbody tr:hover{transform:translateY(-2px);box-shadow:10px 10px 20px #94a3b866,-10px -10px 20px #fffffff2;border-color:var(--widget-accent)}.mobile-card-table .app-table tbody tr:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--widget-accent);opacity:0;transition:opacity .2s ease;z-index:2}.mobile-card-table .app-table tbody tr:hover:before{opacity:1}.mobile-card-table .app-table tbody tr:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0}.mobile-card-table .app-table tbody tr:nth-child(4n+1){--widget-accent: #3b82f6;--widget-accent-light: rgba(59, 130, 246, .08)}.mobile-card-table .app-table tbody tr:nth-child(4n+1):after{background:radial-gradient(circle at 100% 100%,var(--widget-accent-light) 0,var(--widget-accent-light) 140px,transparent 141px),radial-gradient(circle at 5% 15%,var(--widget-accent-light) 0,var(--widget-accent-light) 65px,transparent 66px),radial-gradient(circle at 75% 0%,var(--widget-accent-light) 0,var(--widget-accent-light) 90px,transparent 91px)}.mobile-card-table .app-table tbody tr:nth-child(4n+2){--widget-accent: #8b5cf6;--widget-accent-light: rgba(139, 92, 246, .08)}.mobile-card-table .app-table tbody tr:nth-child(4n+2):after{background:radial-gradient(circle at 0% 100%,var(--widget-accent-light) 0,var(--widget-accent-light) 160px,transparent 161px),radial-gradient(circle at 80% 30%,var(--widget-accent-light) 0,var(--widget-accent-light) 55px,transparent 56px),radial-gradient(circle at 35% -10%,var(--widget-accent-light) 0,var(--widget-accent-light) 100px,transparent 101px)}.mobile-card-table .app-table tbody tr:nth-child(4n+3){--widget-accent: #10b981;--widget-accent-light: rgba(16, 185, 129, .08)}.mobile-card-table .app-table tbody tr:nth-child(4n+3):after{background:radial-gradient(circle at 110% 40%,var(--widget-accent-light) 0,var(--widget-accent-light) 180px,transparent 181px),radial-gradient(circle at -5% 75%,var(--widget-accent-light) 0,var(--widget-accent-light) 80px,transparent 81px),radial-gradient(circle at 45% 5%,var(--widget-accent-light) 0,var(--widget-accent-light) 60px,transparent 61px)}.mobile-card-table .app-table tbody tr:nth-child(4n+4){--widget-accent: #f59e0b;--widget-accent-light: rgba(245, 158, 11, .08)}.mobile-card-table .app-table tbody tr:nth-child(4n+4):after{background:radial-gradient(circle at -15% -15%,var(--widget-accent-light) 0,var(--widget-accent-light) 200px,transparent 201px),radial-gradient(circle at 90% 90%,var(--widget-accent-light) 0,var(--widget-accent-light) 95px,transparent 96px),radial-gradient(circle at 15% 55%,var(--widget-accent-light) 0,var(--widget-accent-light) 75px,transparent 76px)}.mobile-card-table .app-table td{position:relative;z-index:1}.mobile-card-table .app-table tbody tr:last-child{margin-bottom:0}.mobile-card-table .app-table td{display:grid;grid-template-columns:minmax(92px,108px) minmax(0,1fr);align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid rgba(235,236,239,.7);font-size:12.5px;line-height:1.45;border-right:0;background:transparent;width:100%;box-sizing:border-box}.mobile-card-table .app-table td:last-child{border-bottom:none}.mobile-card-table .app-table td:not([data-label]):not(.table-number-cell):not(.action-row):not(.table-empty):not(.panel-empty):not(:has(.row-actions-menu)){grid-template-columns:minmax(0,1fr);gap:0}.mobile-card-table .app-table td>*{min-width:0}.mobile-card-table .app-table td[data-label]:before{content:attr(data-label);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--tx3);line-height:1.35;margin:0;align-self:center;text-align:left}.mobile-card-table .app-table td[data-label]{text-align:right}.mobile-card-table .app-table td[data-label]>:last-child{justify-self:end;text-align:right}.mobile-card-table .app-table td.table-number-cell{display:flex;align-items:center;justify-content:flex-start;gap:8px;background:#eef2f7;padding:10px 14px;font-size:11px;font-weight:700;color:var(--tx3);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--br);width:100%;max-width:none;border-radius:0;box-sizing:border-box}.mobile-card-table .app-table td.table-number-cell:before{content:"No."}.mobile-card-table .app-table td.action-row,.mobile-card-table .app-table td:last-child:has(.row-actions-menu){display:flex;justify-content:space-between;align-items:center;gap:8px;padding:12px 14px;background:#eef2f7;border-top:1px solid var(--br);border-bottom:none;width:100%;box-sizing:border-box}.mobile-card-table .app-table td.action-row:before,.mobile-card-table .app-table td:last-child:has(.row-actions-menu):before{margin-right:auto}.mobile-card-table .app-table td.action-row .row-actions-menu,.mobile-card-table .app-table td:last-child:has(.row-actions-menu) .row-actions-menu{margin-left:auto}.mobile-card-table .app-table .table-action-empty{font-size:12px;color:var(--tx3);margin-left:auto}.mobile-card-table .app-table td.table-empty,.mobile-card-table .app-table td.panel-empty{display:block;text-align:center;padding:24px 16px;border-bottom:none}.mobile-card-table .app-table td:has(.status-pill),.mobile-card-table .app-table td:has(.billing-status){align-items:center}.mobile-card-table .app-table td:has(.status-pill) .status-pill,.mobile-card-table .app-table td:has(.billing-status) .billing-status,.mobile-card-table .app-table td:has(.package-badge) .package-badge{justify-self:end}.mobile-card-table .app-table td .row-cell{gap:3px}.mobile-card-table .app-table td .row-cell,.mobile-card-table .app-table td .customer-name-with-badge{justify-content:flex-end}.mobile-card-table .app-table td .cell-sub,.mobile-card-table .app-table td small{font-size:10.5px;line-height:1.45;color:var(--tx3)}.mobile-card-table .app-table td .customer-name-with-badge{gap:6px;flex-wrap:wrap}.mobile-card-table .row-actions-trigger{min-width:70px;height:32px;border-radius:10px;padding:0 10px;font-size:11.5px}.modal-body .customer-detail-payments-wrap{overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none;margin:0}.modal-body .customer-detail-payments-wrap .app-table{width:100%;min-width:0}.modal-body .customer-detail-payments-wrap.mobile-card-table .app-table tbody{gap:10px}.modal-body .customer-detail-payments-wrap.mobile-card-table .app-table tbody tr{border-radius:16px}.modal-body .customer-detail-payments-wrap.mobile-card-table .app-table td{grid-template-columns:minmax(80px,96px) minmax(0,1fr);padding:10px 12px}.modal-body .customer-detail-payments-wrap.mobile-card-table .app-table td.table-number-cell,.modal-body .customer-detail-payments-wrap.mobile-card-table .app-table td.action-row,.modal-body .customer-detail-payments-wrap.mobile-card-table .app-table td:last-child:has(.row-actions-menu){padding-left:12px;padding-right:12px}.modal-body .customer-detail-mobile-history-table.mobile-card-table .app-table td:not(.table-number-cell):not(.action-row):not(:has(.row-actions-menu)){grid-template-columns:minmax(0,1fr);align-items:flex-start;gap:4px;padding:10px 12px}.modal-body .customer-detail-mobile-history-table.mobile-card-table .app-table td[data-label]:not(.table-number-cell):not(.action-row){text-align:left}.modal-body .customer-detail-mobile-history-table.mobile-card-table .app-table td[data-label]:not(.table-number-cell):not(.action-row)>:last-child{justify-self:start;text-align:left}.modal-body .customer-detail-mobile-history-table.mobile-card-table .app-table td .row-cell,.modal-body .customer-detail-mobile-history-table.mobile-card-table .app-table td .customer-name-with-badge{justify-content:flex-start;align-items:flex-start;flex-direction:column;gap:2px}.modal-body .customer-detail-mobile-history-table.mobile-card-table .app-table td .table-inline-meta,.modal-body .customer-detail-mobile-history-table.mobile-card-table .app-table td .mono{overflow-wrap:anywhere;word-break:break-word}.modal-body .customer-detail-mobile-history-table.mobile-card-table .app-table td .status-pill,.modal-body .customer-detail-mobile-history-table.mobile-card-table .app-table td .billing-status{justify-self:start}.modal-body .customer-detail-mobile-history-table.mobile-card-table .app-table td.table-number-cell{padding-top:9px;padding-bottom:9px}.voucher-generation-progress-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ticket-status-dialog-summary{grid-template-columns:minmax(0,1fr)}}@media(max-width:768px){.topbar-menu-btn{display:none}.mobile-nav-wrapper{position:fixed;bottom:0;left:0;right:0;z-index:220;height:calc(76px + env(safe-area-inset-bottom,0px));background-color:#fff;background-image:radial-gradient(ellipse 35% 100% at 10% 100%,rgba(59,130,246,.22) 0%,transparent 100%),radial-gradient(ellipse 35% 100% at 50% 100%,rgba(139,92,246,.18) 0%,transparent 100%),radial-gradient(ellipse 35% 100% at 90% 100%,rgba(6,182,212,.2) 0%,transparent 100%);border-top:1px solid rgba(226,232,240,.7);box-shadow:0 -8px 28px -4px #0f172a14,0 -1px #ffffffe6 inset;overflow:visible;padding-bottom:env(safe-area-inset-bottom,0px);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.app-content{padding-bottom:calc(76px + env(safe-area-inset-bottom,0px))}.mobile-nav-wrapper:before{content:"";position:absolute;top:-1px;left:0;right:0;height:1.5px;background:linear-gradient(90deg,transparent 0%,rgba(59,130,246,.3) 30%,rgba(139,92,246,.25) 60%,transparent 100%);pointer-events:none}.mobile-nav{display:flex;align-items:stretch;height:100%;overflow-x:auto;overflow-y:visible;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;overscroll-behavior-x:contain;touch-action:pan-x;padding-bottom:max(env(safe-area-inset-bottom,0px),4px);flex-wrap:nowrap;gap:2px;padding-left:10px;padding-right:10px;padding-top:4px;scroll-snap-type:x proximity;scroll-padding-inline:22px}.mobile-nav::-webkit-scrollbar{display:none}.mobile-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;flex:0 0 76px;width:76px;min-width:76px;min-height:66px;padding:6px 4px 5px;border:none;background:transparent;color:var(--tx3);font-size:10px;font-weight:600;text-decoration:none;cursor:pointer;position:relative;transition:color .18s ease,transform .2s ease,opacity .2s ease;letter-spacing:.01em;white-space:nowrap;-webkit-tap-highlight-color:transparent;overflow:visible;scroll-snap-align:center;scroll-snap-stop:normal}.mobile-nav-item span:last-child{font-size:11px;font-weight:600;line-height:1.2}.mobile-nav-label-with-icon{display:flex;align-items:center;gap:3px}.mobile-nav-trigger-absolute{position:absolute;top:-22px;left:50%;transform:translate(-50%);width:46px;height:46px;border-radius:50%;background:transparent;border:none;display:flex;align-items:flex-start;justify-content:center;cursor:pointer;z-index:51}@keyframes bounceUpLoop{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.mobile-nav-arrow-animated{animation:bounceUpLoop 1.5s infinite ease-in-out;color:var(--tx2)}.mobile-nav-chevron{transition:transform .2s ease;opacity:.8}.mobile-nav-icon{display:flex;align-items:center;justify-content:center;width:38px;height:32px;border-radius:20px;transition:transform .2s cubic-bezier(.16,1,.3,1),background-color .2s ease,box-shadow .2s ease}.mobile-nav-menu-badge{position:absolute;top:-4px;right:-6px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:#dc2626;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:9px;font-weight:700;line-height:1;box-shadow:0 0 0 2px #fff}.mobile-nav-menu-badge.menu-badge-ticket,.launcher-menu-badge.menu-badge-ticket{background:#f97316}.mobile-nav-menu-badge.menu-badge-message,.launcher-menu-badge.menu-badge-message{background:#16a34a}.mobile-nav-menu-badge.menu-badge-onu,.launcher-menu-badge.menu-badge-onu{background:#dc2626}.mobile-nav-menu-badge.menu-badge-monitor,.launcher-menu-badge.menu-badge-monitor,.nav-popup-menu-badge.menu-badge-monitor{background:#1d4ed8}.mobile-nav-menu-badge.menu-badge-monitor-bad-signal,.launcher-menu-badge.menu-badge-monitor-bad-signal,.nav-popup-menu-badge.menu-badge-monitor-bad-signal{background:#f97316}.mobile-nav-menu-badge.menu-badge-monitor-offline,.launcher-menu-badge.menu-badge-monitor-offline,.nav-popup-menu-badge.menu-badge-monitor-offline{background:#dc2626}.mobile-nav-menu-badge.menu-badge-monitor-los,.launcher-menu-badge.menu-badge-monitor-los,.nav-popup-menu-badge.menu-badge-monitor-los{background:#0891b2}.mobile-nav-menu-badge.menu-badge-employee,.launcher-menu-badge.menu-badge-employee,.nav-popup-menu-badge.menu-badge-employee{background:#d97706}.mobile-nav-menu-badge.menu-badge-hotspot-topup,.launcher-menu-badge.menu-badge-hotspot-topup,.nav-popup-menu-badge.menu-badge-hotspot-topup{background:#7c3aed}.mobile-nav-menu-badge.menu-badge-whatsapp-log,.launcher-menu-badge.menu-badge-whatsapp-log,.nav-popup-menu-badge.menu-badge-whatsapp-log{background:#b91c1c}@keyframes mobileNavActivePopGlow{0%,to{transform:translateY(-2px) scale(1.08);box-shadow:0 4px 14px #2563eb52,0 0 0 2px #6366f133}50%{transform:translateY(-4.5px) scale(1.18);box-shadow:0 8px 22px #2563eb80,0 0 0 5px #6366f140}}@keyframes activeSvgWiggle{0%,to{transform:rotate(0) scale(1)}30%{transform:rotate(-7deg) scale(1.1)}70%{transform:rotate(6deg) scale(1.06)}}.mobile-nav-item.active{color:#2563eb}.mobile-nav-item.active .mobile-nav-icon{background:linear-gradient(135deg,#3b82f633,#6366f126);animation:mobileNavActivePopGlow 2.8s ease-in-out infinite}.mobile-nav-item.active .mobile-nav-icon>svg{animation:activeSvgWiggle 3.2s ease-in-out infinite}.mobile-nav-item:not(.active):active{color:#3b82f6;transform:scale(.97)}.mobile-nav-item:not(.active):active .mobile-nav-icon{background:#3b82f614;transform:scale(.96)}.mobile-drawer-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a4d;z-index:998;animation:mobileDrawerFadeIn .22s ease both}.mobile-drawer{display:flex;flex-direction:column;position:fixed;top:0;bottom:0;left:0;right:0;background:linear-gradient(180deg,#fff,#f8faff 40%,#f0f4ff);z-index:999;animation:mobileDrawerSlideUp .38s cubic-bezier(.16,1,.3,1) both;overflow:hidden}.launcher-container{flex:1;overflow-y:auto;padding:18px 14px;overscroll-behavior:contain}.launcher-search-shell{position:sticky;top:0;z-index:2;margin-bottom:18px;padding-bottom:10px;background:linear-gradient(180deg,#fffffffa,#f8faffe6 80%,#f8faff00);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.launcher-section{margin-bottom:22px}.launcher-section-title{font-size:11px;font-weight:700;color:var(--tx3);text-transform:uppercase;letter-spacing:.06em;margin-bottom:12px;margin-left:6px;padding-left:9px;position:relative;display:flex;align-items:center;gap:8px}.launcher-section-badge{min-width:20px;height:20px;padding:0 6px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;line-height:1;color:#fff;background:var(--accent, #1d4ed8)}.launcher-section-title:before{content:"";position:absolute;left:0;top:1px;bottom:1px;width:3px;border-radius:3px;background:linear-gradient(180deg,#3b82f6,#8b5cf6);opacity:.5}.launcher-section-title-search{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-right:2px}.launcher-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px 10px}.launcher-item{display:flex;flex-direction:column;align-items:center;text-decoration:none;gap:6px;-webkit-tap-highlight-color:transparent;transition:transform .2s ease;position:relative}.launcher-item:active{transform:scale(.94)}.launcher-icon{width:54px;height:54px;border-radius:16px;background:linear-gradient(135deg,#3b82f61a,#8b5cf60f);color:#3b82f6;display:flex;align-items:center;justify-content:center;border:1px solid rgba(59,130,246,.08);box-shadow:0 4px 14px #3b82f614,0 0 0 1px #ffffff80 inset;transition:all .22s ease;position:relative;overflow:hidden}.launcher-menu-badge{position:absolute;top:2px;right:2px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#dc2626;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:9px;font-weight:700;line-height:1;box-shadow:0 0 0 2px #fff;z-index:1}.nav-popup-menu-badge{margin-left:auto;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#dc2626;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:9px;font-weight:700;line-height:1;flex-shrink:0}.launcher-icon:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:18px;background:linear-gradient(135deg,transparent 40%,rgba(255,255,255,.5) 50%,transparent 60%);background-size:250% 250%;opacity:0;transition:opacity .3s ease}.launcher-item:active .launcher-icon{transform:scale(.9);box-shadow:0 2px 6px #3b82f61a}.launcher-item:active .launcher-icon:after{opacity:1}@keyframes launcherActiveIconPulse{0%,to{transform:scale(1.05);box-shadow:0 6px 18px #3b82f638,0 0 0 3px #3b82f61f}50%{transform:scale(1.12) translateY(-2px);box-shadow:0 8px 24px #3b82f661,0 0 0 5px #3b82f633}}.launcher-item.active .launcher-icon{background:linear-gradient(135deg,#3b82f6,#8b5cf6);color:#fff;animation:launcherActiveIconPulse 2.8s ease-in-out infinite}.launcher-label{font-size:11.5px;font-weight:500;line-height:1.25;color:var(--tx2);text-align:center;word-break:break-word;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:color .18s ease}.launcher-item:hover .launcher-label,.launcher-item.active .launcher-label{color:#2563eb;font-weight:600}.launcher-item-meta{font-size:9px;font-weight:600;color:var(--tx3);background:#f1f5f9e6;padding:1px 5px;border-radius:999px;line-height:1;text-transform:uppercase;letter-spacing:.02em}.launcher-section-count{font-size:10px;font-weight:700;color:#2563eb;background:#3b82f61a;padding:1px 6px;border-radius:999px}.mobile-drawer-close-fab{position:fixed;bottom:20px;left:50%;transform:translate(-50%);z-index:1000;display:flex;align-items:center;gap:6px;padding:10px 22px;border-radius:999px;background:#0f172ae0;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:#fff;font-size:13px;font-weight:600;border:1px solid rgba(255,255,255,.2);box-shadow:0 8px 24px #0f172a3d;cursor:pointer;transition:all .2s ease}.mobile-drawer-close-fab:active{transform:translate(-50%) scale(.95)}.mobile-drawer-close{width:32px;height:32px;margin-top:8px;border-radius:999px;border:1px solid var(--br);background:var(--bg3);display:flex;align-items:center;justify-content:center;color:var(--tx2);cursor:pointer;flex-shrink:0}.mobile-drawer-body{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:10px 12px 16px;display:flex;flex-direction:column;gap:2px}.mobile-drawer-item{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:var(--radius-md);color:var(--tx2);font-size:13.5px;font-weight:500;text-decoration:none;border:none;background:transparent;width:100%;text-align:left;cursor:pointer;transition:background .14s ease,color .14s ease}.mobile-drawer-item:hover,.mobile-drawer-item-active{background:var(--blue-l);color:var(--blue-d)}.mobile-drawer-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:10px;background:var(--bg3);flex-shrink:0;transition:background .14s ease}.mobile-drawer-item-active .mobile-drawer-icon,.mobile-drawer-item:hover .mobile-drawer-icon{background:#165ca01f}.mobile-drawer-label{flex:1;min-width:0}.mobile-drawer-trigger{justify-content:flex-start}.mobile-drawer-chevron{color:var(--tx3);transition:transform .2s ease;flex-shrink:0}.mobile-drawer-chevron-open{transform:rotate(90deg)}.mobile-drawer-subnav{display:flex;flex-direction:column;gap:2px;margin-left:16px;padding-left:14px;border-left:2px solid var(--blue-l);margin-top:2px;margin-bottom:4px}.mobile-drawer-subitem{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--radius-sm);color:var(--tx2);font-size:13px;font-weight:500;text-decoration:none;transition:background .14s ease,color .14s ease}.mobile-drawer-subitem:hover,.mobile-drawer-subitem-active{background:var(--blue-l);color:var(--blue-d)}.mobile-drawer-group{display:flex;flex-direction:column}.nav-popup-backdrop{position:fixed;top:0;left:0;right:0;bottom:calc(76px + env(safe-area-inset-bottom,0px));z-index:219;background:#0f172a40;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.nav-popup{position:fixed;bottom:80px;z-index:280;width:min(256px,calc(100vw - 16px));max-height:calc(100vh - 120px);display:flex;flex-direction:column;background:#fff;border:1px solid rgba(255,255,255,.7);border-radius:14px;box-shadow:0 12px 32px #0f172a29,0 4px 12px #0f172a14,0 0 0 1px #e2e8f099 inset;animation:navPopupSpringIn .24s cubic-bezier(.22,1,.36,1) both;overflow:hidden}@keyframes navPopupSpringIn{0%{opacity:0;transform:translateY(8px) scale(.965);filter:blur(2px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}.nav-popup-tail{position:absolute;bottom:-6px;width:12px;height:12px;background:#fffffff2;border-bottom:1px solid rgba(226,232,240,.6);border-right:1px solid rgba(226,232,240,.6);border-bottom-right-radius:2px;clip-path:polygon(100% 0,0% 100%,100% 100%);transform:translate(-50%) rotate(45deg);box-shadow:2px 2px 4px #0f172a0a;z-index:-1}.nav-popup-head{display:flex;align-items:center;gap:6px;padding:9px 12px;background:linear-gradient(135deg,#f8fafff2,#eef5ffd9);border-bottom:1px solid rgba(226,232,240,.6);color:#2563eb;font-size:11.5px;font-weight:700;letter-spacing:.02em;border-top-left-radius:14px;border-top-right-radius:14px;flex-shrink:0}.nav-popup-head span{flex:1}.nav-popup-body{display:flex;flex-direction:column;gap:3px;padding:6px;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:1;min-height:0;max-height:calc(100vh - 165px)}.nav-popup-body::-webkit-scrollbar{width:4px}.nav-popup-body::-webkit-scrollbar-track{background:transparent}.nav-popup-body::-webkit-scrollbar-thumb{background:#94a3b866;border-radius:999px}.nav-popup-item{display:flex;align-items:center;gap:10px;padding:8px 10px;min-height:38px;flex-shrink:0;border-radius:9px;color:var(--tx2);font-size:13px;font-weight:500;text-decoration:none;transition:all .18s ease;-webkit-tap-highlight-color:transparent;position:relative}.nav-popup-item:active{transform:scale(.985)}.nav-popup-item:hover,.nav-popup-item-active{background:linear-gradient(135deg,#3b82f614,#6366f10d);color:#2563eb;box-shadow:inset 0 0 0 1px #3b82f614}.nav-popup-item-active:before{content:"";position:absolute;left:4px;top:8px;bottom:8px;width:3px;border-radius:999px;background:linear-gradient(180deg,#3b82f6,#8b5cf6);opacity:.95}.nav-popup-item-icon{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:8px;background:#f1f5f9cc;color:var(--tx2);flex-shrink:0;transition:all .2s ease}@keyframes navPopupActiveIconPulse{0%,to{transform:scale(1.05) rotate(0)}50%{transform:scale(1.18) rotate(4deg);box-shadow:0 4px 10px #3b82f640}}.nav-popup-item-active .nav-popup-item-icon{background:linear-gradient(135deg,#3b82f62e,#8b5cf61f);color:#2563eb;animation:navPopupActiveIconPulse 2.8s ease-in-out infinite}.nav-popup-item:hover:not(.nav-popup-item-active) .nav-popup-item-icon{background:linear-gradient(135deg,#3b82f626,#8b5cf614);color:#2563eb;box-shadow:0 2px 6px #3b82f61f}.nav-popup-item-label{flex:1;min-width:0;font-size:12.5px;font-weight:500;line-height:1.22;color:var(--tx2);white-space:normal;word-break:break-word;transition:color .18s ease}.nav-popup-item-active .nav-popup-item-label{font-weight:600;color:#2563eb}.nav-popup-item-arrow{margin-left:auto;color:var(--tx3);flex-shrink:0;transition:transform .2s ease,color .2s ease}.nav-popup-item:hover .nav-popup-item-arrow{transform:translate(2px);color:#2563eb}.nav-popup-item-active .nav-popup-item-arrow{color:#2563eb}.topbar{z-index:300}.topbar-actions,.topbar-notification-container,.topbar-user-container{position:relative;z-index:4}.topbar-notification-dropdown,.topbar-dropdown{z-index:340}}@media(prefers-reduced-motion:reduce){.mobile-nav,.mobile-nav-item,.mobile-nav-icon,.mobile-nav-chevron,.mobile-nav-arrow-animated,.mobile-drawer,.mobile-drawer-backdrop,.launcher-item,.launcher-icon,.nav-popup,.nav-popup-item,.nav-popup-item-icon,.nav-popup-item-arrow{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.react-floater,.react-joyride__tooltip{border-radius:8px!important;font-family:inherit!important}.react-joyride__button--close{display:none!important}.react-joyride__button--primary{background-color:var(--blue)!important;border-radius:6px!important}.react-joyride__button--back,.react-joyride__button--skip{color:var(--tx3)!important;margin-right:10px!important}.topbar-popover-container{position:relative;display:flex;align-items:center}.topbar-popup-dropdown{position:absolute;top:calc(100% + 8px);right:0;z-index:100;padding:0;min-width:400px;max-width:480px;max-height:calc(100vh - 100px);overflow:hidden;display:flex;flex-direction:column;background:#fff;border-radius:16px;box-shadow:0 20px 40px -8px #0f172a29,0 8px 16px -4px #0f172a14;border:1px solid rgba(226,232,240,.9);animation:topbarDropdownFadeIn .2s cubic-bezier(.16,1,.3,1)}@keyframes topbarDropdownFadeIn{0%{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.topbar-popup-header{font-weight:600;font-size:13.5px;color:#0f172a;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #f1f5f9;padding:14px 16px 12px;flex-shrink:0}.topbar-popup-header-title{display:flex;align-items:center;gap:6px}.topbar-popup-close-btn{background:none;border:none;padding:3px;cursor:pointer;color:#64748b;border-radius:999px;display:flex;align-items:center;justify-content:center;transition:all .18s ease}.topbar-popup-close-btn:hover{background:#f1f5f9;color:#0f172a}.topbar-popup-list{display:flex;flex-direction:column;gap:8px;flex:1;overflow-y:auto;padding:10px 12px}.topbar-popup-item{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-radius:10px;background:#f8fafc;border:1px solid #f1f5f9}.topbar-popup-item-title{font-weight:600;font-size:12.5px;color:#1e293b}.topbar-popup-item-sub{font-size:11px;font-weight:400;color:#94a3b8;margin-top:1px}.topbar-popup-item-sub.is-active{color:#16a34a;font-weight:600}.topbar-popup-footer{padding:10px 16px 14px;border-top:1px solid #f1f5f9;display:flex;justify-content:space-between;align-items:center;flex-shrink:0;background:#fafbfc;border-radius:0 0 16px 16px}.topbar-popup-footer-text{font-size:11px;color:#64748b}.status-pill-danger,.status-danger{background:#fef2f2;color:#ef4444;border:1px solid #fecaca}.status-muted{background:#f8fafc;color:#64748b;border:1px solid #e2e8f0}.wa-balloon{position:absolute;top:calc(100% + 8px);right:0;background:#0f172a;border:1px solid rgba(255,255,255,.12);padding:8px 12px;border-radius:10px;font-size:12px;font-weight:500;color:#fff;box-shadow:0 10px 25px -5px #0f172a40;width:-moz-max-content;width:max-content;max-width:260px;white-space:normal;line-height:1.4;z-index:99;display:flex;align-items:center;gap:8px;animation:balloonPopIn .2s ease-out}.wa-balloon-text{flex:1}@keyframes balloonPopIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.topbar-popup-dropdown{position:fixed;top:70px;left:12px;right:12px;min-width:0;width:auto;max-width:calc(100vw - 24px);max-height:calc(100vh - 86px);overflow:auto;-webkit-overflow-scrolling:touch}.wa-balloon{right:auto;left:50%;transform:translate(-50%);width:-moz-max-content;width:max-content;max-width:calc(100vw - 32px)}}.signal-chart-container{background:linear-gradient(135deg,#fffffffa,#f8fafcd9);border:1px solid rgba(226,232,240,.8);border-radius:16px;padding:1.25rem;box-shadow:0 4px 12px #0f172a0a,0 0 0 1px #fffc inset;position:relative;overflow:hidden}.signal-chart-container:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(59,130,246,.02) 0%,rgba(139,92,246,.015) 50%,transparent 100%);pointer-events:none;border-radius:16px}.signal-chart-title{display:flex;align-items:center;gap:.75rem;margin-bottom:1.25rem;padding-bottom:.75rem;border-bottom:1px solid rgba(226,232,240,.6)}.signal-chart-title h4{font-size:.95rem;font-weight:700;color:var(--tx);margin:0;letter-spacing:-.01em}.signal-chart-title:before{content:"";width:4px;height:24px;background:linear-gradient(135deg,#ef4444,#f97316);border-radius:2px;box-shadow:0 2px 6px #ef444433}.signal-chart-wrapper{position:relative;background:radial-gradient(circle at 20% 20%,rgba(59,130,246,.02) 0%,transparent 40%),radial-gradient(circle at 80% 80%,rgba(139,92,246,.015) 0%,transparent 40%),#ffffffe6;border-radius:12px;padding:1rem;box-shadow:inset 0 1px 3px #0f172a05,0 0 0 1px #fff9 inset;overflow:hidden}.signal-chart-wrapper:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:repeating-linear-gradient(45deg,transparent,transparent 10px,rgba(59,130,246,.008) 10px,rgba(59,130,246,.008) 20px);pointer-events:none;border-radius:12px}.signal-chart-wrapper .recharts-cartesian-grid-horizontal line,.signal-chart-wrapper .recharts-cartesian-grid-vertical line{stroke:#cbd5e180;stroke-dasharray:5 5;opacity:.7}.signal-chart-wrapper .recharts-xAxis .recharts-cartesian-axis-tick-value,.signal-chart-wrapper .recharts-yAxis .recharts-cartesian-axis-tick-value{fill:var(--tx2);font-size:11px;font-weight:600}.signal-chart-wrapper .recharts-xAxis-axisLine,.signal-chart-wrapper .recharts-yAxis-axisLine{stroke:#cbd5e1b3;stroke-width:1.5}.signal-chart-wrapper .recharts-tooltip-wrapper{filter:drop-shadow(0 4px 12px rgba(15,23,42,.15))}.signal-chart-wrapper .recharts-tooltip-content{background:#fffffffa!important;border:1px solid rgba(226,232,240,.8)!important;border-radius:12px!important;box-shadow:0 8px 28px #0f172a1f!important;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:10px 12px!important}.signal-chart-wrapper .recharts-tooltip-label{color:var(--tx)!important;font-weight:700!important;font-size:12px!important;margin-bottom:4px!important;padding-bottom:3px!important;border-bottom:1px solid rgba(226,232,240,.4)!important}.signal-chart-wrapper .recharts-tooltip-item{color:#ef4444!important;font-weight:700!important;font-size:12px!important;margin:0!important}.signal-chart-wrapper .recharts-legend-item-text{color:var(--tx2)!important;font-size:12px!important;font-weight:600!important}.signal-chart-wrapper .recharts-line{filter:drop-shadow(0 2px 4px rgba(239,68,68,.2));stroke-width:2.5}.signal-chart-wrapper .recharts-active-dot{filter:drop-shadow(0 2px 8px rgba(239,68,68,.3));stroke-width:3;stroke:#ffffffe6;r:6}.signal-chart-wrapper .recharts-dot{fill:#ef4444;stroke:#fffc;stroke-width:2;r:3}.signal-history-empty{text-align:center;padding:3rem 1.5rem;background:linear-gradient(135deg,#f8fafccc,#ffffffe6);border:2px dashed rgba(203,213,225,.8);border-radius:16px;color:var(--tx2)}.signal-history-empty svg{width:48px;height:48px;color:var(--tx3);margin-bottom:1rem;opacity:.6}.signal-history-empty h4{font-size:1rem;font-weight:700;color:var(--tx2);margin:0 0 .5rem}.signal-history-empty p{font-size:.875rem;color:var(--tx3);margin:0;line-height:1.5;font-weight:500}.signal-history-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1.5rem;gap:1rem}.signal-history-error{text-align:center;padding:2rem 1.5rem;background:linear-gradient(135deg,#fef2f2cc,#ffffffe6);border:1px solid rgba(252,165,165,.4);border-radius:16px;color:#dc2626}.signal-history-error h4{font-size:1rem;font-weight:700;margin:0 0 .5rem}.signal-history-error p{font-size:.875rem;margin:0;line-height:1.5;font-weight:500}@media(max-width:768px){.signal-chart-container{padding:1rem;border-radius:12px}.signal-chart-wrapper{padding:.75rem;border-radius:10px}.signal-chart-title h4{font-size:.875rem}.form-section .form-grid-2{grid-template-columns:1fr;gap:.75rem}}.wa-toast-container{position:fixed;top:16px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;gap:8px;z-index:9999;pointer-events:none;width:340px;max-width:calc(100vw - 32px)}.wa-toast-item{display:flex;align-items:center;gap:12px;background:#fffffff5;border:1px solid rgba(226,232,240,.9);padding:10px 14px;border-radius:20px;box-shadow:0 12px 32px #0f172a24,0 4px 12px #0f172a0a;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);pointer-events:auto;cursor:pointer;animation:androidNotificationSlideDown .35s cubic-bezier(.16,1,.3,1) forwards;transition:transform .2s ease,box-shadow .2s ease;width:100%}.wa-toast-item:hover{transform:translateY(2px);box-shadow:0 16px 40px #0f172a2e}.wa-toast-icon{background:#d1fae5;color:#047857;padding:8px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;width:36px;height:36px}.wa-toast-content{display:flex;flex-direction:column;flex-grow:1;overflow:hidden}.wa-toast-content strong{font-size:13.5px;font-weight:600;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:1px}.wa-toast-content span{font-size:12.5px;color:#64748b;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.wa-toast-close{background:transparent;border:none;color:#94a3b8;padding:4px;border-radius:50%;transition:all .15s ease;display:flex;align-items:center;justify-content:center;cursor:pointer}.wa-toast-close:hover{background:#f1f5f9;color:#0f172a}@media(max-width:768px){.wa-toast-container{top:12px;left:50%;transform:translate(-50%);width:calc(100vw - 24px)}}.block-summary-chips{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap}.block-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:999px;font-size:11.5px;font-weight:600;line-height:1.2}.block-chip-neutral{background:var(--bg3);color:var(--tx2)}.block-chip-success{background:var(--green-l);color:var(--green)}.block-chip-danger{background:var(--red-l);color:var(--red)}.avatar-badge-system{background:var(--purple-l);color:var(--purple)}.activity-sub-sep{margin:0 6px;color:var(--border-color)}.activity-time{font-size:11px;color:var(--tx3);white-space:nowrap}.block-row-end{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex-shrink:0}.panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.panel-header-actions{flex-shrink:0;display:flex;align-items:center;gap:8px}.block-see-more-btn{padding:6px 12px!important;min-height:32px!important;font-size:12px!important;border-radius:10px!important;gap:4px!important}.block-see-more-icon{transition:transform .22s cubic-bezier(.4,0,.2,1)}.block-see-more-btn:hover .block-see-more-icon{transform:translate(3px)}.ai-reminder-template-badge{font-size:12px;padding:3px 8px;border-radius:12px;font-weight:500;white-space:nowrap}.ai-reminder-template-badge-reminder{background-color:#e0f2fe;color:#0369a1;border:1px solid #bae6fd}.ai-reminder-template-badge-reminder-today{background-color:#fee2e2;color:#b91c1c;border:1px solid #fecaca}.ai-reminder-template-badge-block{background-color:#fef3c7;color:#b45309;border:1px solid #fde68a}.ai-reminder-language-style{font-size:13px;color:var(--text-muted)}.ai-reminder-status-badge{font-size:12px;padding:3px 8px;border-radius:12px;font-weight:500;white-space:nowrap}.ai-reminder-status-ai{background-color:#ede9fe;color:#7c3aed;border:1px solid #ddd6fe}.ai-reminder-status-fallback{background-color:#fef3c7;color:#b45309;border:1px solid #fde68a}.ai-reminder-status-failed{background-color:#fee2e2;color:#b91c1c;border:1px solid #fecaca}.ai-reminder-status-default{background-color:#dcfce7;color:#166534;border:1px solid #bbf7d0}.ai-reminder-message-cell{display:flex;flex-direction:column;gap:4px;max-width:280px}.ai-reminder-message-toggle{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:#3b82f6;background:none;border:none;cursor:pointer;padding:2px 0;font-weight:500}.ai-reminder-message-toggle:hover{color:#1d4ed8;text-decoration:underline}.ai-reminder-message-preview{font-size:12px;color:#64748b;line-height:1.5;word-break:break-word}.ai-reminder-message-full{font-size:13px;color:#334155;line-height:1.6;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:10px 12px;white-space:pre-wrap;word-break:break-word;max-height:200px;overflow-y:auto}.ai-reminder-time{font-size:13px;color:var(--text-muted);white-space:nowrap}.table-muted{font-size:13px;color:#94a3b8}.captcha-widget-container{min-height:78px;display:flex;align-items:center;justify-content:center}.captcha-widget-container>div{margin:0 auto}.pcc-router-card{border:1px solid var(--border, #e2e8f0);border-radius:8px;padding:.75rem 1rem;background:var(--panel, #fff);transition:border-color .15s ease}.pcc-router-card:hover{border-color:var(--primary, #2563eb)}.pcc-router-card-active{border-color:var(--primary, #2563eb);background:color-mix(in srgb,var(--primary, #2563eb) 6%,#fff)}.pcc-router-card small{display:block;margin-top:.25rem;color:var(--muted, #64748b)}.hover\:bg-\[\#1ebd5a\]:hover{--tw-bg-opacity: 1;background-color:rgb(30 189 90 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-50\/50:hover{background-color:#f8fafc80}@media(min-width:640px){.sm\:w-auto{width:auto}}@media(min-width:768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1024px){.lg\:col-span-1{grid-column:span 1 / span 1}.lg\:col-span-2{grid-column:span 2 / span 2}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}
