.helport-brand{display:inline-flex;align-items:center;gap:11px;min-width:0}.helport-mark{--helport-mark-size: 40px;position:relative;display:inline-grid;place-items:center;width:var(--helport-mark-size);height:var(--helport-mark-size);flex:0 0 var(--helport-mark-size);border-radius:calc(var(--helport-mark-size) * .28);filter:drop-shadow(0 10px 22px rgba(0,201,167,.22));isolation:isolate}.helport-mark svg{position:relative;z-index:2;display:block;width:100%;height:100%;overflow:visible}.helport-mark-orbit{position:absolute;top:-5px;right:-5px;bottom:-5px;left:-5px;z-index:1;border:1px solid rgba(24,217,165,.18);border-top-color:#b5ffeae6;border-radius:34%;opacity:0}.helport-mark.is-animated .helport-mark-orbit{opacity:1;animation:helport-orbit 7s linear infinite}.helport-mark.is-animated .helport-mark-glyph{transform-origin:50px 50px;animation:helport-breathe 3.6s ease-in-out infinite}.helport-mark.is-animated .helport-mark-signal{transform-origin:74px 23px;animation:helport-signal 2.25s ease-in-out infinite}.helport-mark.is-animated .helport-mark-scan{animation:helport-scan 3.8s cubic-bezier(.65,0,.35,1) infinite}.helport-brand-copy{display:flex;min-width:0;flex-direction:column}.helport-brand-wordmark{font-size:14px;font-weight:850;line-height:1.05;letter-spacing:.11em;white-space:nowrap}.helport-brand-subtitle{margin-top:3px;font-size:8.5px;font-weight:650;line-height:1;letter-spacing:.15em;text-transform:uppercase;white-space:nowrap}.helport-brand-dark .helport-brand-wordmark{color:#fff}.helport-brand-dark .helport-brand-subtitle{color:#ffffff57}.helport-brand-light .helport-brand-wordmark{color:#09212d}.helport-brand-light .helport-brand-subtitle{color:#68808a}.helport-brand-wordmark-image{display:block;width:142px;height:30px;-o-object-fit:contain;object-fit:contain;-o-object-position:left center;object-position:left center;mix-blend-mode:multiply}@keyframes helport-orbit{to{transform:rotate(360deg)}}@keyframes helport-breathe{0%,to{filter:drop-shadow(0 0 0 rgba(24,217,165,0));transform:scale(.98)}50%{filter:drop-shadow(0 0 7px rgba(24,217,165,.72));transform:scale(1.015)}}@keyframes helport-signal{0%,to{opacity:.5;transform:scale(.7)}50%{opacity:1;transform:scale(1.28)}}@keyframes helport-scan{0%,48%{opacity:0;transform:translate(-84px,84px)}58%{opacity:.82}76%,to{opacity:0;transform:translate(84px,-84px)}}@media (prefers-reduced-motion: reduce){.helport-mark-orbit,.helport-mark-glyph,.helport-mark-signal,.helport-mark-scan{animation:none!important}}*,: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}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.\!visible{visibility:visible!important}.visible{visibility:visible}.collapse{visibility:collapse}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.left-3{left:.75rem}.top-0{top:0}.top-1\/2{top:50%}.z-10{z-index:10}.mb-2{margin-bottom:.5rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.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-3\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.max-h-\[60vh\]{max-height:60vh}.w-10{width:2.5rem}.w-24{width:6rem}.w-3\.5{width:.875rem}.w-36{width:9rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-56{width:14rem}.w-full{width:100%}.w-max{width:-moz-max-content;width:max-content}.min-w-full{min-width:100%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}.-translate-y-1\/2{--tw-translate-y: -50%;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))}.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-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.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}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.break-all{word-break:break-all}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.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-teal-100{--tw-border-opacity: 1;border-color:rgb(204 251 241 / var(--tw-border-opacity, 1))}.border-teal-200{--tw-border-opacity: 1;border-color:rgb(153 246 228 / var(--tw-border-opacity, 1))}.border-yellow-200{--tw-border-opacity: 1;border-color:rgb(254 240 138 / var(--tw-border-opacity, 1))}.bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.bg-purple-600{--tw-bg-opacity: 1;background-color:rgb(147 51 234 / var(--tw-bg-opacity, 1))}.bg-slate-50{--tw-bg-opacity: 1;background-color:rgb(248 250 252 / var(--tw-bg-opacity, 1))}.bg-teal-50{--tw-bg-opacity: 1;background-color:rgb(240 253 250 / var(--tw-bg-opacity, 1))}.bg-teal-600{--tw-bg-opacity: 1;background-color:rgb(13 148 136 / var(--tw-bg-opacity, 1))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-yellow-50{--tw-bg-opacity: 1;background-color:rgb(254 252 232 / var(--tw-bg-opacity, 1))}.p-0{padding:0}.p-2{padding:.5rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pl-9{padding-left:2.25rem}.text-left{text-align:left}.text-center{text-align:center}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-base{font-size:1rem;line-height:1.5rem}.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}.leading-none{line-height:1}.tracking-wider{letter-spacing:.05em}.text-amber-600{--tw-text-opacity: 1;color:rgb(217 119 6 / var(--tw-text-opacity, 1))}.text-blue-200{--tw-text-opacity: 1;color:rgb(191 219 254 / var(--tw-text-opacity, 1))}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-blue-700{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.text-emerald-600{--tw-text-opacity: 1;color:rgb(5 150 105 / var(--tw-text-opacity, 1))}.text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / 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-teal-700{--tw-text-opacity: 1;color:rgb(15 118 110 / var(--tw-text-opacity, 1))}.text-teal-800{--tw-text-opacity: 1;color:rgb(17 94 89 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-yellow-800{--tw-text-opacity: 1;color:rgb(133 77 14 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.line-through{text-decoration-line:line-through}.outline{outline-style:solid}.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}:root{--hp: #00C9A7;--hp-700: #00A88E;--hp-800: #00897B;--hp-900: #00695C;--hp-100: #CCFBF1;--hp-50: #F0FDF9;--hp-alpha: rgba(0,201,167,.12);--hp-glow: 0 4px 16px rgba(0,201,167,.35);--sb-bg: #161722;--sb-border: rgba(255,255,255,.06);--sb-hover: rgba(255,255,255,.055);--sb-active: rgba(0,201,167,.13);--page: #F4F6FA;--bg: #F4F6FA;--card: #FFFFFF;--border: #E8EAF0;--border-2: #F0F2F8;--t1: #111827;--t2: #4B5563;--t3: #9CA3AF;--s-present: #00C875;--s-late: #FDAB3D;--s-absent: #E2445C;--s-leave: #579BFC;--s-holiday: #A25DDC;--s-undertime: #FF7B54;--s-error: #E2445C;--s-locked: #808EAB;--s-ncns: #E2445C;--grid-grp: #004D40;--grid-hdr: #00897B;--grid-border: #DEE5EF}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Inter,sans-serif;background:var(--page);color:var(--t1);-webkit-font-smoothing:antialiased}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#c8d1dc;border-radius:99px}::-webkit-scrollbar-thumb:hover{background:#9baab8}.hp-sidebar{display:flex;flex-direction:column;height:100%;flex-shrink:0;transition:width .22s cubic-bezier(.4,0,.2,1);background:var(--sb-bg);border-right:1px solid var(--sb-border);overflow:hidden}.hp-sidebar nav{min-height:0}.sidebar-logo{display:flex;align-items:center;padding:18px 16px;border-bottom:1px solid var(--sb-border);min-height:64px;flex-shrink:0}.sidebar-logo-mark{width:34px;height:34px;border-radius:9px;background:linear-gradient(135deg,#00c9a7,#00897b);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:var(--hp-glow)}.sidebar-logo-text{margin-left:11px;overflow:hidden}.sidebar-logo-name{font-size:14px;font-weight:800;color:#fff;letter-spacing:.1em;white-space:nowrap}.sidebar-logo-sub{font-size:9px;color:#ffffff59;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;margin-top:1px}.sidebar-section-label{font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#ffffff38;padding:0 16px;margin:16px 0 5px}.sidebar-item{display:flex;align-items:center;gap:10px;padding:9px 12px;margin:1px 8px;border-radius:8px;color:#ffffff85;font-size:13px;font-weight:500;cursor:pointer;text-decoration:none;transition:all .12s;white-space:nowrap;position:relative}.sidebar-item:hover{background:var(--sb-hover);color:#ffffffd9}.sidebar-item.active{background:var(--sb-active);color:var(--hp);font-weight:600}.sidebar-item.active:before{content:"";position:absolute;left:-8px;top:20%;height:60%;width:3px;background:var(--hp);border-radius:0 3px 3px 0}.sidebar-item-icon{width:18px;height:18px;flex-shrink:0;opacity:.7}.sidebar-item.active .sidebar-item-icon{opacity:1}.sidebar-user{display:flex;align-items:center;gap:10px;padding:12px 14px;border-top:1px solid var(--sb-border);flex-shrink:0}.sidebar-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--hp),var(--hp-700));display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff;flex-shrink:0;box-shadow:0 2px 8px #00c9a74d}.sidebar-user-name{font-size:12px;font-weight:600;color:#fff;line-height:1.2}.sidebar-user-role{font-size:10px;color:#ffffff59;line-height:1.2}.sidebar-toggle{width:100%;display:flex;align-items:center;justify-content:center;padding:8px;border:none;background:transparent;cursor:pointer;color:#ffffff4d;transition:color .15s}.sidebar-toggle:hover{color:#fff9}@media (max-height: 950px){.sidebar-logo{min-height:56px;padding:12px 14px!important}.sidebar-section-label{margin:10px 0 4px}.sidebar-item{padding:7px 12px}.sidebar-user{padding:9px 14px!important}}.app-header{height:56px;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 20px;flex-shrink:0}.app-header-title{font-size:15px;font-weight:700;color:var(--t1)}.header-avatar{width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,var(--hp),var(--hp-700));display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff}.form-label{display:block;font-size:11px;font-weight:600;color:var(--t2);margin-bottom:4px;text-transform:uppercase;letter-spacing:.06em}.form-input{width:100%;padding:8px 12px;border:1.5px solid var(--border);border-radius:8px;font-size:13px;color:var(--t1);background:#fff;transition:border-color .15s,box-shadow .15s}.form-input:focus{outline:none;border-color:var(--hp);box-shadow:0 0 0 3px var(--hp-alpha)}.form-select{cursor:pointer;width:100%;padding:8px 12px;border:1.5px solid var(--border);border-radius:8px;font-size:13px;color:var(--t1);background:#fff;transition:border-color .15s,box-shadow .15s}.form-select:focus{outline:none;border-color:var(--hp);box-shadow:0 0 0 3px var(--hp-alpha)}.form-select::-moz-placeholder{color:var(--t3)}.form-select::placeholder{color:var(--t3)}.form-input::-moz-placeholder{color:var(--t3)}.form-input::placeholder{color:var(--t3)}.dropdown-trigger{width:100%;padding:8px 12px;display:flex;align-items:center;justify-content:space-between;gap:8px;border:1.5px solid var(--border);border-radius:8px;font-size:13px;color:var(--t1);background:#fff;cursor:pointer;transition:border-color .15s,box-shadow .15s}.dropdown-trigger:focus{outline:none;border-color:var(--hp);box-shadow:0 0 0 3px var(--hp-alpha)}.dropdown-trigger:disabled{cursor:not-allowed;opacity:.6}.dropdown-trigger span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.dropdown-placeholder{color:var(--t3)}.dropdown-list{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:60;max-height:240px;overflow-y:auto;background:#fff;border:1.5px solid var(--border);border-radius:8px;box-shadow:0 4px 16px #0000001f}.dropdown-group-label{padding:6px 12px 2px;font-size:10px;font-weight:700;color:var(--t3);text-transform:uppercase;letter-spacing:.06em}.dropdown-option{padding:7px 12px;font-size:13px;color:var(--t1);cursor:pointer}.dropdown-option.grouped{padding-left:18px}.dropdown-option:hover{background:var(--page)}.dropdown-option.active{background:var(--hp-alpha);font-weight:600}.dropdown-option.disabled{color:var(--t3);cursor:not-allowed}.btn{display:inline-flex;align-items:center;gap:.375rem;white-space:nowrap;border-radius:.5rem;font-weight:500;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.btn:disabled{cursor:not-allowed;opacity:.5}.btn{font-size:13px;padding:7px 14px}.btn-hp{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1));display:inline-flex;align-items:center;gap:.375rem;white-space:nowrap;border-radius:.5rem;font-weight:500;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.btn-hp:disabled{cursor:not-allowed;opacity:.5}.btn-hp{font-size:13px;padding:7px 14px;background:var(--hp)}.btn-hp:hover{background:var(--hp-700)}.btn-primary{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1));display:inline-flex;align-items:center;gap:.375rem;white-space:nowrap;border-radius:.5rem;font-weight:500;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.btn-primary:disabled{cursor:not-allowed;opacity:.5}.btn-primary{font-size:13px;padding:7px 14px}.btn-primary:hover{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.btn-danger{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1));display:inline-flex;align-items:center;gap:.375rem;white-space:nowrap;border-radius:.5rem;font-weight:500;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.btn-danger:disabled{cursor:not-allowed;opacity:.5}.btn-danger{font-size:13px;padding:7px 14px}.btn-danger:hover{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.btn-success{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1));display:inline-flex;align-items:center;gap:.375rem;white-space:nowrap;border-radius:.5rem;font-weight:500;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.btn-success:disabled{cursor:not-allowed;opacity:.5}.btn-success{font-size:13px;padding:7px 14px;background:var(--s-present)}.btn-secondary{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(51 65 85 / var(--tw-text-opacity, 1));display:inline-flex;align-items:center;gap:.375rem;white-space:nowrap;border-radius:.5rem;font-weight:500;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.btn-secondary:disabled{cursor:not-allowed;opacity:.5}.btn-secondary{font-size:13px;padding:7px 14px}.btn-secondary:hover{--tw-bg-opacity: 1;background-color:rgb(226 232 240 / var(--tw-bg-opacity, 1))}.btn-outline{border-width:1px;--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(71 85 105 / var(--tw-text-opacity, 1));display:inline-flex;align-items:center;gap:.375rem;white-space:nowrap;border-radius:.5rem;font-weight:500;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.btn-outline:disabled{cursor:not-allowed;opacity:.5}.btn-outline{font-size:13px;padding:7px 14px}.btn-outline:hover{--tw-bg-opacity: 1;background-color:rgb(248 250 252 / var(--tw-bg-opacity, 1))}.btn-outline{border-color:var(--border)}.btn-sm{font-size:12px!important;padding:5px 11px!important}.btn-xs{font-size:11px!important;padding:3px 9px!important}.card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:16px}.card-shadow{box-shadow:0 1px 4px #0000000f,0 4px 12px #0000000a}.mon-stat{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:14px 16px;cursor:pointer;transition:all .15s;position:relative;overflow:hidden;min-width:108px}.mon-stat:hover{box-shadow:0 4px 16px #00000014;transform:translateY(-1px)}.mon-stat.active{border-color:var(--hp);box-shadow:0 0 0 2px var(--hp-alpha)}.mon-stat-bar{position:absolute;left:0;top:0;bottom:0;width:4px;border-radius:10px 0 0 10px}.mon-stat-value{font-size:26px;font-weight:800;line-height:1;color:var(--t1);margin-bottom:3px}.mon-stat-label{font-size:10px;font-weight:600;color:var(--t3);text-transform:uppercase;letter-spacing:.07em}.mon-badge{display:inline-flex;align-items:center;padding:2px 9px;border-radius:99px;font-size:11px;font-weight:700;white-space:nowrap}.badge-present{background:var(--s-present);color:#fff}.badge-late{background:var(--s-late);color:#7a4f00}.badge-absent{background:var(--s-absent);color:#fff}.badge-leave{background:var(--s-leave);color:#fff}.badge-holiday{background:var(--s-holiday);color:#fff}.badge-undertime{background:var(--s-undertime);color:#fff}.badge-error{background:var(--s-error);color:#fff}.badge-ncns{background:var(--s-ncns);color:#fff}.badge-locked{background:var(--s-locked);color:#fff}.badge-regular{background:#f0f0f5;color:#4b5563}.badge-restday{background:#fff3e0;color:#e65100}.badge-legalh{background:#ede7f6;color:#6a1b9a}.badge-spech{background:#e3f2fd;color:#1565c0}.badge-rdlh{background:#fce4ec;color:#ad1457}.badge-rdsh{background:#e8f5e9;color:#2e7d32}.badge{display:inline-flex;align-items:center;padding:2px 9px;border-radius:99px;font-size:11px;font-weight:700;white-space:nowrap;background:#f0f2f8;color:var(--t2)}.badge-green{display:inline-flex;align-items:center;padding:2px 9px;border-radius:99px;font-size:11px;font-weight:700;white-space:nowrap;background:var(--s-present);color:#fff}.badge-red{display:inline-flex;align-items:center;padding:2px 9px;border-radius:99px;font-size:11px;font-weight:700;white-space:nowrap;background:var(--s-absent);color:#fff}.badge-yellow{display:inline-flex;align-items:center;padding:2px 9px;border-radius:99px;font-size:11px;font-weight:700;white-space:nowrap;background:var(--s-late);color:#7a4f00}.badge-blue{display:inline-flex;align-items:center;padding:2px 9px;border-radius:99px;font-size:11px;font-weight:700;white-space:nowrap;background:var(--s-leave);color:#fff}.badge-gray{display:inline-flex;align-items:center;padding:2px 9px;border-radius:99px;font-size:11px;font-weight:700;white-space:nowrap;background:#f0f2f8;color:var(--t2)}.badge-purple{display:inline-flex;align-items:center;padding:2px 9px;border-radius:99px;font-size:11px;font-weight:700;white-space:nowrap;background:var(--s-holiday);color:#fff}.badge-orange{display:inline-flex;align-items:center;padding:2px 9px;border-radius:99px;font-size:11px;font-weight:700;white-space:nowrap;background:var(--s-undertime);color:#fff}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;display:flex;align-items:center;justify-content:center;padding:16px}.modal-box{background:var(--card);border-radius:16px;box-shadow:0 24px 64px #0000002e;width:100%;max-width:520px;max-height:90vh;overflow-y:auto;animation:modalIn .18s cubic-bezier(.34,1.56,.64,1)}@keyframes modalIn{0%{opacity:0;transform:scale(.94) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid var(--border-2)}.modal-title{font-size:15px;font-weight:700;color:var(--t1)}.modal-body{padding:20px 24px}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:16px 24px;border-top:1px solid var(--border-2);background:#fafbfe;border-radius:0 0 16px 16px}.table-wrapper{overflow-x:auto;border-radius:12px;border:1px solid var(--border)}table.data-table{width:100%;font-size:13px}table.data-table thead tr{background:#1e2a3b;color:#fff}table.data-table thead th{padding:12px 16px;text-align:left;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}table.data-table tbody tr{border-bottom:1px solid var(--border-2);transition:background .1s}table.data-table tbody tr:hover{background:var(--hp-50)}table.data-table tbody td{padding:10px 16px}.tk-workspace{display:flex;flex-direction:column;height:calc(100vh - 56px);background:var(--page);overflow:hidden}.tk-board-header{background:var(--card);border-bottom:1px solid var(--border);padding:0 20px;display:flex;align-items:center;height:54px;flex-shrink:0;gap:12px}.tk-board-title{font-size:17px;font-weight:800;color:var(--t1);flex-shrink:0}.tk-board-divider{width:1px;height:22px;background:var(--border);flex-shrink:0}.tk-filter-label{font-size:10px;font-weight:700;color:var(--t3);text-transform:uppercase;letter-spacing:.07em;white-space:nowrap}.tk-date-input{height:28px;padding:0 8px;border:1.5px solid var(--border);border-radius:7px;font-size:12px;color:var(--t1);background:var(--page);cursor:pointer}.tk-date-input:focus{outline:none;border-color:var(--hp)}.tk-select{height:28px;padding:0 8px;border:1.5px solid var(--border);border-radius:7px;font-size:12px;color:var(--t1);background:var(--page);cursor:pointer;min-width:100px}.tk-select:focus{outline:none;border-color:var(--hp)}.tk-views{background:var(--card);border-bottom:2px solid var(--border);padding:0 20px;display:flex;align-items:center;height:42px;flex-shrink:0;gap:2px;overflow-x:auto}.tk-views::-webkit-scrollbar{height:0}.tk-view-tab{display:inline-flex;align-items:center;gap:6px;padding:0 14px;height:100%;font-size:12px;font-weight:500;color:var(--t2);border:none;background:transparent;cursor:pointer;white-space:nowrap;border-bottom:3px solid transparent;margin-bottom:-2px;transition:all .12s}.tk-view-tab:hover{color:var(--t1);background:#f7f8fc}.tk-view-tab.active{color:var(--hp-800);font-weight:700;border-bottom-color:var(--hp)}.tk-view-count{background:#f0f2f8;color:var(--t2);font-size:10px;font-weight:700;padding:1px 6px;border-radius:99px}.tk-view-tab.active .tk-view-count{background:var(--hp-alpha);color:var(--hp-800)}.tk-quick-chip{display:inline-flex;align-items:center;padding:3px 10px;border-radius:99px;font-size:11px;font-weight:500;border:1.5px solid var(--border);background:var(--card);color:var(--t2);cursor:pointer;transition:all .1s;white-space:nowrap}.tk-quick-chip:hover{border-color:var(--hp);color:var(--hp-800);background:var(--hp-50)}.tk-quick-chip.active{background:var(--hp);color:#fff;border-color:var(--hp)}.tk-stats{background:var(--card);border-bottom:1px solid var(--border);padding:12px 20px;display:flex;gap:10px;flex-shrink:0;overflow-x:auto}.tk-stats::-webkit-scrollbar{height:0}.tk-grid-wrap{flex:1;display:flex;flex-direction:column;overflow:hidden;background:var(--card)}.grid-toolbar{display:flex;align-items:center;gap:4px;padding:0 12px;height:40px;background:#f8f9fc;border-bottom:1px solid var(--border);flex-shrink:0;overflow-x:auto}.grid-toolbar::-webkit-scrollbar{height:0}.toolbar-sep{width:1px;height:18px;background:var(--border);flex-shrink:0;margin:0 2px}.toolbar-search{position:relative;flex-shrink:0;display:flex;align-items:center}.toolbar-search-icon{position:absolute;left:8px;width:13px;height:13px;color:var(--t3);pointer-events:none}.toolbar-search-input{height:26px;width:175px;padding:0 8px 0 26px;border:1.5px solid var(--border);border-radius:6px;font-size:12px;color:var(--t1);background:#fff;transition:border-color .15s}.toolbar-search-input:focus{outline:none;border-color:var(--hp)}.tb-btn{display:inline-flex;align-items:center;gap:4px;height:26px;padding:0 10px;border-radius:6px;font-size:11px;font-weight:500;color:var(--t2);background:transparent;border:none;cursor:pointer;transition:all .1s;white-space:nowrap;flex-shrink:0}.tb-btn:hover{background:#fff;color:var(--t1);box-shadow:0 1px 4px #00000014}.tb-btn:disabled{opacity:.45;cursor:not-allowed}.tb-btn-icon{width:26px;padding:0;justify-content:center}.tb-btn-excel{display:inline-flex;align-items:center;gap:4px;height:26px;padding:0 12px;border-radius:6px;font-size:11px;font-weight:700;color:#fff;background:var(--hp);border:none;cursor:pointer;transition:background .12s;flex-shrink:0;box-shadow:0 2px 6px #00c9a74d}.tb-btn-excel:hover{background:var(--hp-700)}.col-panel{position:absolute;left:0;top:calc(100% + 4px);width:224px;background:var(--card);border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 28px #0000001f;z-index:50;max-height:320px;overflow-y:auto}.col-panel-head{padding:9px 13px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--t3);background:#fafbfe;border-bottom:1px solid var(--border-2);border-radius:10px 10px 0 0;position:sticky;top:0}.col-panel-row{display:flex;align-items:center;gap:9px;padding:6px 13px;font-size:12px;color:var(--t1);cursor:pointer}.col-panel-row:hover{background:var(--hp-50)}.col-panel-row input[type=checkbox]{accent-color:var(--hp)}.formula-bar{display:flex;align-items:center;height:26px;background:#fff;border-bottom:1px solid var(--border);flex-shrink:0}.formula-bar .cell-ref{padding:0 10px;border-right:1px solid var(--border);font-family:Consolas,monospace;font-size:11px;font-weight:700;color:var(--t1);min-width:68px;height:100%;display:flex;align-items:center;background:#f8fafb}.formula-bar .cell-fx{padding:0 8px;border-right:1px solid var(--border);font-size:11px;font-style:italic;font-weight:700;color:var(--hp);background:#f8fafb;height:100%;display:flex;align-items:center}.formula-bar .cell-value{flex:1;padding:0 10px;font-family:Consolas,monospace;font-size:11px;color:var(--t1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.grid-status-bar{display:flex;align-items:center;gap:0;height:26px;background:#1b2a3b;border-top:1px solid #13202E;font-size:11px;color:#6b8099;flex-shrink:0;padding:0 8px}.status-item{display:flex;align-items:center;gap:4px;padding:0 10px;border-right:1px solid #243447;white-space:nowrap;height:100%}.status-label{font-size:10px;color:#4d6a82;text-transform:uppercase;letter-spacing:.04em}.status-value{font-size:11px;font-weight:700;color:#9bb5cb}.tk-grid{flex:1;overflow:hidden}.tk-grid .ag-overlay-no-rows-wrapper{padding-top:90px!important;align-items:flex-start!important}.tk-grid .ag-theme-alpine{--ag-background-color: #ffffff;--ag-odd-row-background-color: #F9FFFE;--ag-header-background-color: #00897B;--ag-header-foreground-color: #ffffff;--ag-border-color: #C4D0DE;--ag-row-border-color: #C4D0DE;--ag-row-border-width: 1px;--ag-row-hover-color: #F0FDF9;--ag-selected-row-background-color: #CCFBF1;--ag-range-selection-border-color: var(--hp);--ag-range-selection-background-color: rgba(0,201,167,.08);--ag-font-size: 12px;--ag-font-family: "Segoe UI", system-ui, sans-serif;--ag-grid-size: 3px;--ag-row-height: 28px;--ag-header-height: 34px;--ag-floating-filters-height: 30px;--ag-input-focus-border-color: var(--hp);--ag-checkbox-checked-color: var(--hp);--ag-cell-horizontal-padding: 8px}.tk-grid .ag-theme-alpine .ag-body-viewport,.tk-grid .ag-theme-alpine .ag-pinned-left-cols-viewport{background-image:linear-gradient(#C4D0DE 1px,transparent 1px),linear-gradient(90deg,#C4D0DE 1px,transparent 1px);background-size:100px 28px;background-attachment:local}.tk-grid .ag-theme-alpine .ag-floating-filter{background:#eef9f7!important;border-right:1px solid #C4D0DE!important;border-bottom:2px solid #A8BAC8!important}.tk-grid .ag-theme-alpine .ag-header-group-cell{background:#004d40!important;border-right:1px solid rgba(255,255,255,.08)!important;padding:0 10px}.tk-grid .ag-theme-alpine .ag-header-group-cell-label{font-size:9px!important;font-weight:800!important;letter-spacing:.12em!important;text-transform:uppercase!important;color:#ffffff73!important}.tk-grid .ag-theme-alpine .col-group-identity{background:#003d33!important}.tk-grid .ag-theme-alpine .col-group-schedule{background:#003d4d!important}.tk-grid .ag-theme-alpine .col-group-timelog{background:#004d33!important}.tk-grid .ag-theme-alpine .col-group-attendance{background:#2d1040!important}.tk-grid .ag-theme-alpine .col-group-hr{background:#3d1020!important}.tk-grid .ag-theme-alpine .col-group-nd{background:#102040!important}.tk-grid .ag-theme-alpine .col-group-ot{background:#103020!important}.tk-grid .ag-theme-alpine .col-group-payroll{background:#302010!important}.tk-grid .ag-theme-alpine .col-group-identity .ag-header-group-cell-label,.tk-grid .ag-theme-alpine .col-group-timelog .ag-header-group-cell-label{color:#5eead4!important}.tk-grid .ag-theme-alpine .col-group-schedule .ag-header-group-cell-label{color:#7dd3fc!important}.tk-grid .ag-theme-alpine .col-group-attendance .ag-header-group-cell-label{color:#c4b5fd!important}.tk-grid .ag-theme-alpine .col-group-hr .ag-header-group-cell-label{color:#fca5a5!important}.tk-grid .ag-theme-alpine .col-group-nd .ag-header-group-cell-label{color:#93c5fd!important}.tk-grid .ag-theme-alpine .col-group-ot .ag-header-group-cell-label{color:#86efac!important}.tk-grid .ag-theme-alpine .col-group-payroll .ag-header-group-cell-label{color:#fde68a!important}.tk-grid .ag-theme-alpine .ag-header-row:not(.ag-header-row-column-group){background:#00897b!important;border-bottom:2px solid #006B5F!important}.tk-grid .ag-theme-alpine .ag-header-cell{border-right:1px solid rgba(255,255,255,.14)!important}.tk-grid .ag-theme-alpine .ag-header-cell-text{font-size:10px!important;font-weight:700!important;letter-spacing:.03em!important;color:#fff!important;text-transform:uppercase!important}.tk-grid .ag-theme-alpine .ag-header-cell:hover{background:#007b6e!important}.tk-grid .ag-theme-alpine .ag-sort-ascending-icon,.tk-grid .ag-theme-alpine .ag-sort-descending-icon{color:gold}.tk-grid .ag-theme-alpine .ag-pinned-left-header{background:#006b5f!important;border-right:2px solid #004D40!important}.tk-grid .ag-theme-alpine .ag-pinned-left-header .ag-header-group-cell{background:#002d25!important}.tk-grid .ag-theme-alpine .ag-pinned-left-cols-container{border-right:2px solid #C8D8D4!important;box-shadow:3px 0 10px #00000012;background:#fafffe}.tk-grid .ag-theme-alpine .ag-floating-filter-input input{font-size:11px!important}.tk-grid .ag-theme-alpine .ag-cell{border-right:1px solid #C4D0DE!important;border-bottom:1px solid #C4D0DE!important;line-height:28px!important}.tk-grid .ag-theme-alpine .ag-row{border-bottom:1px solid #C4D0DE!important;border-left:3px solid transparent!important}.tk-grid .ag-theme-alpine .ag-cell-focus:not(.ag-cell-range-selected){border:2px solid var(--hp)!important;background:var(--hp-50)!important}.tk-grid .ag-theme-alpine .ag-cell-inline-editing{border:2px solid var(--hp)!important;background:#fffde7!important;box-shadow:0 0 0 3px var(--hp-alpha)!important}a,img{-webkit-user-drag:none;user-drag:none}.cell-number{text-align:right;font-variant-numeric:tabular-nums;padding-right:9px!important;color:#1a3a4a}.cell-eid{font-weight:700;color:#006d5b;letter-spacing:.03em}.cell-date{font-family:Consolas,monospace;font-size:11px;color:var(--t1)}.tk-grid .ag-theme-alpine .ag-cell.cell-edited:after{content:"";position:absolute;top:0;right:0;border-top:7px solid #F59E0B;border-left:7px solid transparent;pointer-events:none}.tk-grid .ag-theme-alpine .row-num-cell{color:#94a3b8!important;font-size:10px!important;font-weight:600!important;text-align:right!important;padding-right:6px!important;background:#eef9f7!important;border-right:2px solid #C8D8D4!important;-webkit-user-select:none;-moz-user-select:none;user-select:none}.tk-grid .ag-theme-alpine .row-num-header{background:#002d25!important}.tk-grid .ag-theme-alpine .row-actions-cell{text-align:center!important;cursor:pointer}.tk-grid .row-delete-btn{opacity:.45;font-size:13px;transition:opacity .15s}.tk-grid .row-delete-btn:hover{opacity:1}.tk-grid .row-error{background:#fff5f5!important;border-left-color:var(--s-error)!important}.tk-grid .row-error:hover{background:#ffe8e8!important}.tk-grid .row-error .ag-cell{border-right-color:#ffc9c9!important}.tk-grid .row-absent{background:#fff8ee!important;border-left-color:var(--s-late)!important}.tk-grid .row-absent:hover{background:#fff0d5!important}.tk-grid .row-late{background:ivory!important;border-left-color:#ffe066!important}.tk-grid .row-late:hover{background:#fffce0!important}.tk-grid .row-locked{background:#f6f8fa!important}.tk-grid .row-locked .ag-cell{color:#94a3b8!important}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}@keyframes glowPulse{0%,to{box-shadow:0 0 8px #00c9a74d}50%{box-shadow:0 0 22px #00c9a799}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes dotBounce{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}.animate-fade-up{animation:fadeUp .45s ease both}.animate-fade-in{animation:fadeIn .35s ease both}.animate-scale-in{animation:scaleIn .3s cubic-bezier(.34,1.56,.64,1) both}.animate-slide-left{animation:slideInLeft .4s ease both}.animate-slide-right{animation:slideInRight .4s ease both}.stagger>*:nth-child(1){animation-delay:.05s}.stagger>*:nth-child(2){animation-delay:.1s}.stagger>*:nth-child(3){animation-delay:.15s}.stagger>*:nth-child(4){animation-delay:.2s}.stagger>*:nth-child(5){animation-delay:.25s}.stagger>*:nth-child(6){animation-delay:.3s}.stagger>*:nth-child(7){animation-delay:.35s}.page-enter{animation:fadeUp .4s ease both}.glass-card{background:#ffffffb8;backdrop-filter:blur(16px) saturate(1.4);-webkit-backdrop-filter:blur(16px) saturate(1.4);border:1px solid rgba(255,255,255,.55);border-radius:16px;box-shadow:0 4px 24px #0000000f,0 1px 4px #0000000a;transition:box-shadow .2s,transform .2s}.glass-card:hover{box-shadow:0 8px 32px #0000001a,0 2px 8px #0000000f;transform:translateY(-2px)}.btn-glow{position:relative;transition:all .2s}.btn-glow:hover{box-shadow:0 0 24px #00c9a773,0 4px 14px #00000026!important;transform:translateY(-1px)}.btn-glow:active{transform:translateY(0) scale(.98)}.shimmer{background:linear-gradient(90deg,#f1f5f9 25%,#e8edf5,#f1f5f9 75%);background-size:400px 100%;animation:shimmer 1.4s infinite;border-radius:8px}.hp-spinner{width:20px;height:20px;border:2.5px solid rgba(0,201,167,.2);border-top-color:#00c9a7;border-radius:50%;animation:spin .7s linear infinite;display:inline-block}.card-interactive{transition:box-shadow .18s,transform .18s,border-color .18s;cursor:pointer}.card-interactive:hover{transform:translateY(-3px);box-shadow:0 8px 28px #0000001a!important}.card-interactive:active{transform:translateY(-1px) scale(.99)}.sidebar-item{transition:background .15s,color .15s,padding-left .15s!important}.sidebar-item:hover{padding-left:18px!important}.modal-overlay{animation:fadeIn .2s ease}.modal-box{animation:scaleIn .25s cubic-bezier(.34,1.4,.64,1)}.kpi-value{animation:fadeUp .5s ease both}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.snapshots-page{height:100%;min-height:0;display:flex;flex-direction:column;background:var(--page);color:var(--t1);padding-bottom:18px}.snapshot-page-header h1{margin:0;font-size:18px;font-weight:800;color:var(--t1)}.snapshot-page-header p{margin:2px 0 0;font-size:12px;color:var(--t3)}.snapshot-title-icon{width:38px;height:38px;border-radius:10px;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#fff;background:linear-gradient(145deg,var(--hp),var(--hp-700));box-shadow:0 5px 16px #00c9a73d}.snapshot-title-icon svg{width:19px;height:19px}.snapshot-count{margin-left:auto;display:inline-flex;align-items:center;gap:6px;color:var(--hp-700);font-size:12px;font-weight:700}.snapshot-count svg{width:14px;height:14px}.snapshot-filters{display:flex;align-items:center;gap:9px;padding:12px 20px;border-bottom:1px solid var(--border);background:var(--card);flex-shrink:0}.snapshot-filters input,.snapshot-filters select{height:36px;border:1px solid var(--border);border-radius:8px;padding:0 11px;outline:none;background:var(--card);color:var(--t1);font-size:12px}.snapshot-filters input:focus,.snapshot-filters select:focus{border-color:var(--hp);box-shadow:0 0 0 3px var(--hp-alpha)}.snapshot-search{height:36px;min-width:240px;max-width:380px;flex:1;display:flex;align-items:center;gap:7px;border:1px solid var(--border);border-radius:8px;padding:0 10px;background:var(--card)}.snapshot-search:focus-within{border-color:var(--hp);box-shadow:0 0 0 3px var(--hp-alpha)}.snapshot-search svg{width:14px;color:var(--t3);flex-shrink:0}.snapshot-search input{height:auto;padding:0;border:0;box-shadow:none!important;width:100%}.snapshot-content{min-height:0;flex:1;overflow-y:auto;padding:18px 20px}.snapshot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(235px,1fr));gap:15px}.snapshot-card{min-width:0;overflow:hidden;border:1px solid var(--border);border-radius:13px;background:var(--card);box-shadow:0 2px 9px #05101d0f;cursor:pointer;transition:transform .16s,border-color .16s,box-shadow .16s}.snapshot-card:hover{transform:translateY(-2px);border-color:var(--hp);box-shadow:0 8px 22px #05101d1f}.snapshot-photo-wrap{position:relative;aspect-ratio:16 / 10;overflow:hidden;background:#07101c}.snapshot-photo{width:100%;height:100%;display:block;-o-object-fit:cover;object-fit:cover}.snapshot-image-placeholder{width:100%;height:100%;min-height:160px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:#0c1726;color:#758399;font-size:11px}.snapshot-image-placeholder svg{width:25px;height:25px}.snapshot-loader{display:inline-block;width:22px;height:22px;border-radius:50%;border:2px solid rgba(0,201,167,.18);border-top-color:var(--hp);animation:spin .75s linear infinite}.snapshot-status{position:absolute;top:10px;left:10px;padding:4px 10px;border-radius:20px;color:#fff;font-size:10px;line-height:1;font-weight:900;letter-spacing:.08em;box-shadow:0 2px 8px #0000003d}.snapshot-status.in{background:#00a86b}.snapshot-status.out{background:#d98910}.snapshot-status.inline{position:static;display:inline-flex;vertical-align:middle;margin-right:7px;box-shadow:none}.snapshot-verify{position:absolute;left:10px;bottom:9px;display:inline-flex;align-items:center;gap:5px;border:1px solid rgba(255,255,255,.2);border-radius:20px;padding:4px 8px;color:#fff;background:#050e19b8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-size:9px;font-weight:700}.snapshot-verify svg{width:11px;height:11px}.snapshot-verify.matched{color:#74f7c3;border-color:#74f7c359}.snapshot-verify.no-face{color:#f8cd7c}.snapshot-modal-details .snapshot-verify{position:static;vertical-align:middle}.snapshot-scan-line{position:absolute;left:0;right:0;height:2px;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(0,255,207,.95),transparent);box-shadow:0 0 12px #00ffcfbf;animation:snapshotScan 3.2s ease-in-out infinite}@keyframes snapshotScan{0%,15%{top:-3px;opacity:0}25%{opacity:1}75%{opacity:1}90%,to{top:100%;opacity:0}}.snapshot-meta{padding:12px 13px 13px}.snapshot-name{color:var(--t1);font-size:13px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.snapshot-eid{color:var(--t3);font-size:10px;margin:2px 0 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.snapshot-time{color:var(--t2);font-size:11px;font-weight:600}.snapshot-empty{height:100%;min-height:240px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--t3);text-align:center}.snapshot-empty>svg{width:42px;height:42px;color:var(--border);margin-bottom:12px}.snapshot-empty h2{font-size:15px;color:var(--t2);margin:0 0 5px}.snapshot-empty p{font-size:12px;max-width:360px;margin-top:8px}.snapshot-pagination{height:42px;flex-shrink:0;display:flex;justify-content:flex-end;align-items:center;gap:7px;padding:0 20px;color:var(--t3);font-size:11px}.snapshot-pagination span{margin-right:5px}.snapshot-pagination button{display:inline-flex;align-items:center;gap:4px;padding:6px 9px;border-radius:7px;border:1px solid var(--border);background:var(--card);color:var(--t2);cursor:pointer;font-size:11px}.snapshot-pagination button:disabled{opacity:.4;cursor:default}.snapshot-pagination svg{width:12px;height:12px}.snapshot-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;padding:24px;display:flex;align-items:center;justify-content:center;background:#020810db;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);animation:fadeIn .18s ease}.snapshot-modal-card{position:relative;width:min(980px,94vw);max-height:92vh;overflow:auto;border:1px solid #334155;border-radius:16px;background:var(--card);box-shadow:0 28px 80px #00000080}.snapshot-modal-image{display:block;width:100%;max-height:70vh;-o-object-fit:contain;object-fit:contain;background:#050b14}.snapshot-modal-close{position:absolute;z-index:2;top:12px;right:12px;width:34px;height:34px;border:1px solid rgba(255,255,255,.25);border-radius:50%;background:#0000008c;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer}.snapshot-modal-close svg{width:17px;height:17px}.snapshot-modal-details{padding:16px 18px 19px}.snapshot-modal-details h2{margin:11px 0 2px;font-size:18px}.snapshot-modal-details p{margin:4px 0 0;color:var(--t3);font-size:12px;display:flex;align-items:center;gap:5px}.snapshot-modal-details p svg{width:13px;height:13px}@media (max-width: 720px){.snapshot-page-header{padding:0 12px}.snapshot-page-header p,.snapshot-count{display:none}.snapshot-filters{padding:10px 12px;flex-wrap:wrap}.snapshot-search{min-width:0;max-width:none;flex-basis:100%}.snapshot-content{padding:12px}.snapshot-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}.snapshot-pagination{padding:0 12px}}:root{--v8-ink: #10232a;--v8-muted: #687c85;--v8-line: #dfe8eb;--v8-page: #eef4f4;--v8-panel: rgba(255, 255, 255, .93);--v8-dark: #08171d;--v8-dark-2: #10272e;--v8-teal: #00c9a7;--v8-teal-deep: #008f78;--v8-blue: #4f8ff7;--v8-violet: #8b6ee8;--v8-amber: #e8a13a;--v8-red: #df526a;--v8-radius: 16px;--v8-shadow: 0 14px 40px rgba(25, 58, 67, .08);--v8-focus: 0 0 0 3px rgba(0, 201, 167, .25)}html{background:var(--v8-page)}body{background:radial-gradient(circle at 85% -10%,rgba(0,201,167,.1),transparent 34%),var(--v8-page);color:var(--v8-ink)}button,input,select,textarea{font:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--v8-teal-deep)!important;outline-offset:2px}button:disabled{cursor:not-allowed;opacity:.55}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.dialog-open{overflow:hidden}.v8-spin{animation:v8-spin .8s linear infinite}@keyframes v8-spin{to{transform:rotate(360deg)}}@keyframes v8-rise{0%{opacity:0;transform:translateY(8px)}}@keyframes v8-pulse{50%{opacity:.45;transform:scale(.82)}}.v8-app-shell{display:flex;width:100%;min-height:100vh;min-height:100dvh;overflow:hidden;background:transparent}.v8-app-column{display:flex;min-width:0;flex:1;flex-direction:column;height:100vh;height:100dvh;overflow:hidden}.v8-main{min-width:0;min-height:0;flex:1;overflow:auto;scroll-behavior:smooth}.v8-route-stage{width:100%;height:100%;min-height:100%}.v8-skip-link{position:fixed;z-index:2000;top:8px;left:8px;transform:translateY(-160%);padding:10px 14px;border-radius:9px;color:#fff;background:var(--v8-dark)}.v8-skip-link:focus{transform:translateY(0)}.v8-route-fallback{display:grid;min-height:100vh;place-content:center;justify-items:center;gap:8px;color:var(--v8-muted);background:radial-gradient(circle at 50% 40%,rgba(0,201,167,.12),transparent 24%),var(--v8-page)}.v8-route-fallback>span{display:grid;width:46px;height:46px;place-items:center;border-radius:14px;color:var(--v8-teal-deep);background:#fff;box-shadow:var(--v8-shadow)}.v8-route-fallback svg{width:22px;height:22px}.v8-route-fallback strong{margin-top:4px;color:var(--v8-ink)}.v8-route-fallback p{font-size:12px}.hp-sidebar.v8-sidebar{position:relative;z-index:50;width:244px;min-width:244px;height:100vh;height:100dvh;color:#fff;background:radial-gradient(circle at 18% 3%,rgba(0,201,167,.16),transparent 24%),linear-gradient(180deg,#0b1d24,#071319);border-right:1px solid rgba(116,255,230,.1);transition:width .22s ease,min-width .22s ease,transform .22s ease}.hp-sidebar.v8-sidebar.is-collapsed{width:72px;min-width:72px}.v8-sidebar .sidebar-logo{display:flex;min-height:68px;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid rgba(255,255,255,.07)}.v8-sidebar.is-collapsed .sidebar-logo{justify-content:center;padding-inline:8px}.v8-sidebar nav{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:8px}.v8-nav-section{display:block;margin-bottom:8px}.v8-sidebar .sidebar-section-label{margin:14px 10px 6px;padding:0;color:#d6f2ee57;font-size:9px;letter-spacing:.15em}.v8-sidebar .sidebar-item{min-height:40px;margin:2px 0;padding:9px 11px;gap:11px;border:1px solid transparent;border-radius:10px;color:#eafcf99e;font-size:12px}.v8-sidebar.is-collapsed .sidebar-item{justify-content:center;padding-inline:0}.v8-sidebar .sidebar-item:hover{color:#fff;border-color:#ffffff0f;background:#ffffff0e}.v8-sidebar .sidebar-item.active{color:#74f4dc;border-color:#00c9a738;background:linear-gradient(90deg,#00c9a72e,#00c9a70d);box-shadow:inset 3px 0 var(--v8-teal)}.v8-sidebar .sidebar-item.active:before{display:none}.v8-sidebar .sidebar-item-icon{width:17px;height:17px}.v8-nav-badge{display:inline-flex;min-width:20px;height:20px;margin-left:auto;align-items:center;justify-content:center;padding:0 5px;border-radius:20px;color:#042822;background:#61ebd1;font-size:9px;font-weight:900}.v8-sidebar .sidebar-user{min-height:58px;padding:10px 13px;gap:10px;border-top:1px solid rgba(255,255,255,.07)}.v8-sidebar.is-collapsed .sidebar-user{justify-content:center;padding-inline:0}.v8-sidebar .sidebar-user>div{min-width:0}.v8-sidebar .sidebar-user-name,.v8-sidebar .sidebar-user-role{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v8-sidebar-footer{padding:8px 10px 10px;border-top:1px solid rgba(255,255,255,.07)}.v8-sidebar-connectivity{display:flex;align-items:center;gap:8px;padding:7px 6px 9px;color:#ffffff8a}.v8-sidebar-connectivity>span{width:8px;height:8px;border-radius:50%;background:#ef6b7b;box-shadow:0 0 8px #ef6b7bcc}.v8-sidebar-connectivity.is-online>span{background:var(--v8-teal);box-shadow:0 0 9px #00c9a7cc;animation:v8-pulse 2.2s ease-in-out infinite}.v8-sidebar-connectivity div{display:flex;min-width:0;flex:1;justify-content:space-between;gap:4px}.v8-sidebar-connectivity strong,.v8-sidebar-connectivity small{font-size:9px;font-weight:600}.v8-sidebar-connectivity small{color:#ffffff47}.v8-sidebar .sidebar-toggle{min-height:34px;border-radius:9px;gap:6px}.v8-sidebar .sidebar-toggle svg{width:16px;height:16px}.v8-sidebar .sidebar-toggle span{font-size:10px}.v8-sidebar-close,.v8-sidebar-scrim{display:none}.app-header.v8-app-header{position:relative;z-index:40;height:62px;min-height:62px;padding:0 18px;border-color:#1d48521c;background:#ffffffdb;box-shadow:0 4px 20px #15353d09;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.v8-header-leading,.v8-header-actions,.v8-header-leading>div{display:flex;align-items:center}.v8-header-leading{gap:10px;min-width:0}.v8-header-leading>div{min-width:0;flex-direction:column;align-items:flex-start}.v8-header-signal{width:3px;height:28px;border-radius:6px;background:linear-gradient(var(--v8-teal),#5e98ff);box-shadow:0 0 10px #00c9a761}.v8-header-context{color:#7b9098;font-size:8px;font-weight:800;letter-spacing:.14em}.v8-app-header .app-header-title{overflow:hidden;max-width:46vw;color:var(--v8-ink);font-size:14px;text-overflow:ellipsis;white-space:nowrap}.v8-header-actions{gap:8px}.v8-mobile-menu{display:none;width:40px;height:40px;place-items:center;border:1px solid var(--v8-line);border-radius:10px;color:var(--v8-ink);background:#fff}.v8-mobile-menu svg{width:19px;height:19px}.v8-header-icon,.v8-icon-button{position:relative;display:inline-grid;width:38px;height:38px;flex:0 0 38px;place-items:center;border:1px solid var(--v8-line);border-radius:10px;color:#60747d;background:#ffffffd1;cursor:pointer}.v8-header-icon:hover,.v8-icon-button:hover{color:var(--v8-teal-deep);border-color:#00c9a759;background:#f2fffc}.v8-header-icon svg,.v8-icon-button svg{width:17px;height:17px}.v8-notification-count{position:absolute;top:-4px;right:-4px;display:grid;min-width:18px;height:18px;place-items:center;padding:0 4px;border:2px solid white;border-radius:12px;color:#fff;background:var(--v8-red);font-size:8px;font-weight:900}.v8-profile-menu{position:relative}.v8-profile-trigger{display:flex;min-height:42px;align-items:center;gap:8px;padding:4px 9px 4px 5px;border:1px solid var(--v8-line);border-radius:12px;color:var(--v8-ink);background:#ffffffd9;cursor:pointer}.v8-profile-trigger>span{display:flex;min-width:0;flex-direction:column;align-items:flex-start}.v8-profile-trigger strong{overflow:hidden;max-width:150px;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.v8-profile-trigger small{color:var(--v8-muted);font-size:9px}.v8-profile-trigger>svg{width:13px;height:13px;color:#8ca0a7}.v8-popover-dismiss{position:fixed;z-index:55;top:0;right:0;bottom:0;left:0;border:0;background:transparent}.v8-profile-popover{position:absolute;z-index:60;top:calc(100% + 8px);right:0;width:220px;overflow:hidden;border:1px solid var(--v8-line);border-radius:14px;background:#fff;box-shadow:0 18px 55px #0e2c342e;animation:v8-rise .16s ease}.v8-profile-summary{display:flex;align-items:center;gap:10px;padding:13px;background:linear-gradient(135deg,#edfdf9,#f7fbff);border-bottom:1px solid var(--v8-line)}.v8-profile-summary>span{display:flex;min-width:0;flex-direction:column}.v8-profile-summary strong{overflow:hidden;color:var(--v8-ink);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.v8-profile-summary small{color:var(--v8-muted);font-size:10px}.v8-profile-popover>button{display:flex;width:100%;min-height:42px;align-items:center;gap:10px;padding:9px 14px;border:0;color:#344a53;background:#fff;font-size:12px;text-align:left;cursor:pointer}.v8-profile-popover>button:hover{background:#f1fbf8}.v8-profile-popover>button.danger{color:#c43d55;border-top:1px solid var(--v8-line)}.v8-profile-popover button svg{width:15px;height:15px}.v8-page{width:min(1560px,100%);min-height:100%;margin:0 auto;padding:24px}.v8-eyebrow{margin:0 0 5px;color:var(--v8-teal-deep);font-size:9px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.v8-page-intro{position:relative;display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:20px;padding:2px 0 17px;border-bottom:1px solid rgba(45,82,91,.12)}.v8-page-intro:after{position:absolute;bottom:-1px;left:0;width:72px;height:2px;content:"";background:linear-gradient(90deg,var(--v8-teal),transparent)}.v8-page-intro h1{color:var(--v8-ink);font-size:clamp(25px,3vw,38px);line-height:1.08;letter-spacing:-.035em}.v8-page-description{max-width:720px;margin-top:8px;color:var(--v8-muted);font-size:12px;line-height:1.65}.v8-page-meta{display:flex;align-items:center;gap:10px;margin-top:11px;color:#82949b;font-size:10px}.v8-page-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.v8-button{display:inline-flex;min-height:40px;align-items:center;justify-content:center;gap:7px;padding:0 14px;border:1px solid transparent;border-radius:10px;font-size:11px;font-weight:750;cursor:pointer;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}.v8-button:hover:not(:disabled){transform:translateY(-1px)}.v8-button svg{width:15px;height:15px}.v8-button.primary{color:#06372f;border-color:#00b99b;background:linear-gradient(135deg,#54e8ce,var(--v8-teal));box-shadow:0 7px 18px #00c9a733}.v8-button.ghost{color:#3e535b;border-color:var(--v8-line);background:#ffffffd1}.v8-button.success{color:#0e6a50;border-color:#b8eadb;background:#eafaf5}.v8-button.warning{color:#875719;border-color:#f1d6a8;background:#fff9ee}.v8-button.danger{color:#fff;border-color:#d1435c;background:linear-gradient(135deg,#ed6c82,#d9465f)}.v8-button.compact{min-height:32px;padding:0 10px;border-radius:8px;font-size:10px}.v8-button.full{width:100%}.v8-text-link{display:inline-flex;align-items:center;gap:5px;border:0;color:var(--v8-teal-deep);background:transparent;font-size:10px;font-weight:800;cursor:pointer}.v8-text-link svg{width:13px;height:13px}.v8-status-pill{display:inline-flex;min-height:25px;align-items:center;gap:6px;padding:3px 9px;border:1px solid #dce6e8;border-radius:30px;color:#63777f;background:#f7f9fa;font-size:9px;font-weight:800;white-space:nowrap}.v8-status-pill svg{width:11px;height:11px}.v8-status-dot{width:6px;height:6px;border-radius:50%;background:currentColor}.v8-status-pill.success{color:#00896f;border-color:#b8eadf;background:#e9fbf6}.v8-status-pill.warning{color:#a36d1d;border-color:#f0dbb7;background:#fff8e9}.v8-status-pill.danger{color:#c63f57;border-color:#f1c3cc;background:#fff1f4}.v8-status-pill.pulse .v8-status-dot{animation:v8-pulse 1.8s ease-in-out infinite}.v8-panel{border:1px solid rgba(36,76,86,.12);border-radius:var(--v8-radius);background:var(--v8-panel);box-shadow:var(--v8-shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.v8-panel-header{display:flex;min-height:64px;align-items:center;justify-content:space-between;gap:14px;padding:15px 17px;border-bottom:1px solid var(--v8-line)}.v8-panel-header h2{color:var(--v8-ink);font-size:14px}.v8-panel-header>svg{width:18px;color:#8aa0a7}.v8-metric-grid{display:grid;gap:12px;margin-bottom:16px}.v8-metric-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.v8-metric-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.v8-metric-card{position:relative;display:flex;min-width:0;min-height:104px;align-items:center;gap:12px;padding:16px;overflow:hidden;border:1px solid rgba(37,79,88,.12);border-radius:15px;color:var(--v8-ink);background:#ffffffeb;box-shadow:0 9px 28px #1638400e;text-align:left}button.v8-metric-card{width:100%;cursor:pointer}button.v8-metric-card:hover{border-color:#00c9a761;transform:translateY(-1px)}.v8-metric-card:after{position:absolute;top:-32px;right:-32px;width:80px;height:80px;border-radius:50%;content:"";background:currentColor;opacity:.05}.v8-metric-icon{display:grid;width:38px;height:38px;flex:0 0 38px;place-items:center;border-radius:12px;color:currentColor;background:color-mix(in srgb,currentColor 12%,white)}.v8-metric-icon svg{width:18px;height:18px}.v8-metric-card>div{display:flex;min-width:0;flex-direction:column}.v8-metric-card>div>span{color:var(--v8-muted);font-size:10px;font-weight:650}.v8-metric-card strong{margin:3px 0 1px;color:var(--v8-ink);font-size:24px;line-height:1}.v8-metric-card small{overflow:hidden;color:#8a9ca3;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.v8-metric-card.tone-teal{color:var(--v8-teal-deep)}.v8-metric-card.tone-blue{color:var(--v8-blue)}.v8-metric-card.tone-violet{color:var(--v8-violet)}.v8-metric-card.tone-amber{color:var(--v8-amber)}.v8-metric-card.tone-red{color:var(--v8-red)}.v8-surface-state{display:flex;min-height:150px;align-items:center;justify-content:center;gap:13px;padding:24px;color:var(--v8-muted);text-align:left}.v8-surface-state.compact{min-height:105px}.v8-surface-state>div{max-width:420px}.v8-surface-state strong{color:#3f565f;font-size:12px}.v8-surface-state p{margin-top:3px;font-size:10px;line-height:1.5}.v8-state-orb{display:grid;width:38px;height:38px;flex:0 0 38px;place-items:center;border-radius:12px;color:#789099;background:#eef4f5}.v8-state-orb svg{width:18px;height:18px}.v8-state-orb.is-loading{color:var(--v8-teal-deep)}.v8-state-orb.is-loading svg{animation:v8-spin .8s linear infinite}.v8-state-orb.is-error{color:var(--v8-red);background:#fff0f3}.v8-dialog-backdrop,.v8-drawer-backdrop{position:fixed;z-index:1000;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:20px;background:#041217a6;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);animation:fadeIn .15s ease}.v8-dialog{width:min(560px,100%);max-height:min(90vh,800px);overflow:hidden;border:1px solid rgba(108,242,217,.18);border-radius:18px;background:#fff;box-shadow:0 30px 90px #00000052;animation:v8-rise .18s ease}.v8-dialog-lg{width:min(860px,100%)}.v8-dialog-sm{width:min(420px,100%)}.v8-dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:18px 20px;color:#fff;background:radial-gradient(circle at 8% -20%,rgba(0,201,167,.28),transparent 42%),var(--v8-dark)}.v8-dialog-header h2{font-size:17px}.v8-dialog-header p:not(.v8-eyebrow){max-width:600px;margin-top:5px;color:#ebfffb94;font-size:10px;line-height:1.5}.v8-dialog-header .v8-icon-button{border-color:#ffffff21;color:#ffffffb3;background:#ffffff0f}.v8-dialog-body{max-height:calc(90vh - 150px);overflow-y:auto;padding:20px}.v8-dialog-footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:12px 20px;border-top:1px solid var(--v8-line);background:#f8fbfb}.v8-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.v8-form-grid.one{grid-template-columns:1fr}.v8-form-grid label,.v8-field-block{display:flex;min-width:0;flex-direction:column;gap:6px;color:#4d626a;font-size:10px;font-weight:800;letter-spacing:.03em}.v8-form-grid label.span-2{grid-column:span 2}.v8-form-grid input,.v8-form-grid select,.v8-form-grid textarea,.v8-field-block textarea{width:100%;min-height:42px;padding:9px 11px;border:1px solid #d6e1e4;border-radius:10px;outline:0;color:var(--v8-ink);background:#fbfdfd;font-size:12px;font-weight:500;letter-spacing:0}.v8-form-grid textarea,.v8-field-block textarea{resize:vertical}.v8-form-grid input:focus,.v8-form-grid select:focus,.v8-form-grid textarea:focus,.v8-field-block textarea:focus{border-color:var(--v8-teal);box-shadow:var(--v8-focus)}.v8-field-help{color:#7e9198;font-size:10px;line-height:1.5}.v8-change-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:16px}.v8-change-preview>div{display:flex;min-height:72px;flex-direction:column;justify-content:center;padding:11px;border:1px solid var(--v8-line);border-radius:11px;background:#f7fafb}.v8-change-preview span{color:var(--v8-muted);font-size:9px}.v8-change-preview strong{overflow:hidden;margin-top:4px;font-size:12px;text-overflow:ellipsis}.v8-danger-summary,.v8-impact-summary,.v8-file-summary,.v8-lock-impact{display:flex;align-items:center;gap:13px;padding:15px;border:1px solid #f0c9d0;border-radius:12px;color:#a43f52;background:#fff5f7}.v8-danger-summary>svg,.v8-impact-summary>svg,.v8-file-summary>svg,.v8-lock-impact>svg{width:24px;height:24px;flex:0 0 24px}.v8-danger-summary strong,.v8-impact-summary strong,.v8-file-summary strong,.v8-lock-impact strong{color:var(--v8-ink);font-size:12px}.v8-danger-summary p,.v8-impact-summary p,.v8-file-summary p,.v8-lock-impact p{margin-top:3px;color:var(--v8-muted);font-size:10px}.v8-file-summary{border-color:#bce8df;color:var(--v8-teal-deep);background:#effbf8}.v8-lock-impact{margin-bottom:16px}.v8-drawer-backdrop{justify-content:flex-end;padding:0}.v8-notification-drawer{display:flex;width:min(420px,100vw);height:100vh;height:100dvh;flex-direction:column;background:#f5f9f9;box-shadow:-20px 0 60px #00000038;animation:v8-slide-in .2s ease}@keyframes v8-slide-in{0%{transform:translate(35px);opacity:0}}.v8-notification-drawer>header{display:flex;min-height:100px;align-items:flex-start;justify-content:space-between;gap:14px;padding:20px;color:#fff;background:radial-gradient(circle at 15% 0,rgba(0,201,167,.28),transparent 42%),var(--v8-dark)}.v8-notification-drawer h2{font-size:20px}.v8-notification-drawer header span{color:#ebfffb8f;font-size:10px}.v8-notification-drawer header .v8-icon-button{border-color:#ffffff21;color:#fff;background:#ffffff0f}.v8-notification-tools{display:flex;align-items:center;justify-content:space-between;padding:9px 13px;border-bottom:1px solid var(--v8-line);background:#fff}.v8-notification-tools button{display:inline-flex;min-height:32px;align-items:center;gap:6px;padding:0 9px;border:0;border-radius:8px;color:#52676f;background:transparent;font-size:10px;font-weight:750;cursor:pointer}.v8-notification-tools button:hover{background:#edf8f5;color:var(--v8-teal-deep)}.v8-notification-tools svg{width:14px;height:14px}.v8-notification-list{flex:1;overflow-y:auto;padding:10px}.v8-notification-item{display:grid;width:100%;grid-template-columns:36px 1fr 8px;align-items:start;gap:10px;margin-bottom:7px;padding:12px;border:1px solid #dce7e9;border-radius:12px;color:var(--v8-ink);background:#fff;text-align:left;cursor:pointer}.v8-notification-item.is-read{opacity:.7;background:#f9fbfb}.v8-notification-icon{display:grid;width:34px;height:34px;place-items:center;border-radius:10px;color:var(--v8-teal-deep);background:#e7f9f4}.v8-notification-icon svg{width:16px;height:16px}.v8-notification-item strong{font-size:11px}.v8-notification-item p{margin:4px 0 6px;color:var(--v8-muted);font-size:10px;line-height:1.45}.v8-notification-item small{color:#95a4aa;font-size:9px}.v8-notification-item>i{width:7px;height:7px;margin-top:5px;border-radius:50%;background:var(--v8-teal);box-shadow:0 0 7px #00c9a7b3}.v8-command-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.65fr);gap:14px;margin-bottom:14px}.v8-command-grid.is-single{grid-template-columns:minmax(0,1fr)}.v8-command-grid.lower{grid-template-columns:repeat(2,minmax(0,1fr))}.v8-chart-panel{min-width:0;overflow:hidden}.v8-chart-panel .recharts-responsive-container{margin:8px 0 0}.v8-readiness-panel{padding-bottom:15px}.v8-readiness-orbit{display:grid;width:138px;height:138px;margin:18px auto 12px;place-items:center;border-radius:50%;background:conic-gradient(var(--v8-teal) var(--score),#e4eeef 0);box-shadow:0 0 28px #00c9a71f}.v8-readiness-orbit:before{grid-area:1/1;width:112px;height:112px;border-radius:50%;content:"";background:#fff}.v8-readiness-orbit>div{z-index:1;grid-area:1/1;display:flex;flex-direction:column;align-items:center}.v8-readiness-orbit strong{color:var(--v8-ink);font-size:27px}.v8-readiness-orbit span{color:var(--v8-muted);font-size:9px;text-transform:uppercase}.v8-check-list{display:grid;gap:7px;margin:0 16px 14px;list-style:none}.v8-check-list li{display:flex;align-items:center;gap:8px;color:#87621f;font-size:10px}.v8-check-list li.is-complete{color:#168269}.v8-check-list svg{width:14px;height:14px}.v8-readiness-panel>.v8-button{width:calc(100% - 32px);margin-inline:16px}.v8-compact-list,.v8-scan-list,.v8-shift-list,.v8-request-list{padding:7px 12px 12px}.v8-compact-list>button{display:grid;width:100%;grid-template-columns:8px 1fr auto;align-items:center;gap:10px;min-height:53px;padding:8px 4px;border:0;border-bottom:1px solid #edf1f2;color:var(--v8-ink);background:transparent;text-align:left;cursor:pointer}.v8-compact-list>button:hover{background:#f5fbf9}.v8-compact-list span:nth-child(2){display:flex;min-width:0;flex-direction:column}.v8-compact-list strong{font-size:11px}.v8-compact-list small{overflow:hidden;margin-top:2px;color:var(--v8-muted);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.v8-compact-list time{color:#91a0a6;font-size:9px}.v8-priority-mark{width:7px;height:28px;border-radius:6px;background:var(--v8-amber)}.v8-priority-mark.critical,.v8-priority-mark.high{background:var(--v8-red)}.v8-device-mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px}.v8-device-mini-grid article{display:flex;min-width:0;align-items:center;gap:9px;padding:10px;border:1px solid #e4e9eb;border-radius:11px;background:#fafcfc}.v8-device-mini-grid article>span{display:grid;width:30px;height:30px;flex:0 0 30px;place-items:center;border-radius:9px;color:var(--v8-red);background:#fff0f3}.v8-device-mini-grid article.is-online>span{color:var(--v8-teal-deep);background:#e6faf4}.v8-device-mini-grid svg{width:14px;height:14px}.v8-device-mini-grid div{display:flex;min-width:0;flex-direction:column}.v8-device-mini-grid strong,.v8-device-mini-grid small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v8-device-mini-grid strong{font-size:10px}.v8-device-mini-grid small{margin-top:2px;color:var(--v8-muted);font-size:8px}.v8-quick-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.v8-quick-actions>button,.v8-self-actions>button{display:grid;min-height:76px;grid-template-columns:34px 1fr 14px;align-items:center;gap:10px;padding:12px;border:1px solid rgba(34,76,85,.12);border-radius:13px;color:var(--v8-ink);background:#ffffffde;text-align:left;cursor:pointer}.v8-quick-actions>button:hover,.v8-self-actions>button:hover{border-color:#00c9a761;background:#f6fffc;transform:translateY(-1px)}.v8-quick-actions>button>svg:first-child,.v8-self-actions>button>svg:first-child{width:18px;height:18px;color:var(--v8-teal-deep)}.v8-quick-actions>button>svg:last-child,.v8-self-actions>button>svg:last-child{width:13px;color:#9aabb0}.v8-quick-actions span,.v8-self-actions span{display:flex;min-width:0;flex-direction:column}.v8-quick-actions strong,.v8-self-actions strong{font-size:10px}.v8-quick-actions small,.v8-self-actions small{margin-top:2px;color:var(--v8-muted);font-size:8px}.v8-workflow-tabs{display:flex;gap:5px;margin-bottom:12px;overflow-x:auto;padding:4px;border:1px solid rgba(34,76,85,.11);border-radius:13px;background:#ffffffbf}.v8-workflow-tabs button{display:inline-flex;min-height:38px;align-items:center;gap:6px;padding:0 12px;border:1px solid transparent;border-radius:9px;color:#60747c;background:transparent;font-size:10px;font-weight:750;white-space:nowrap;cursor:pointer}.v8-workflow-tabs button.is-active{color:#073a31;border-color:#00c9a752;background:linear-gradient(135deg,#c9fbf0,#ecfffb);box-shadow:0 5px 14px #00c9a71a}.v8-workflow-tabs svg{width:14px;height:14px}.v8-workflow-hero{display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:14px;margin-bottom:14px;padding:18px;border:1px solid rgba(64,111,121,.13);border-radius:16px;background:radial-gradient(circle at 100% -20%,rgba(0,201,167,.12),transparent 32%),#ffffffe6;box-shadow:var(--v8-shadow)}.v8-workflow-icon{display:grid;width:50px;height:50px;place-items:center;border-radius:15px;color:var(--v8-teal-deep);background:linear-gradient(145deg,#e2faf4,#eff8ff)}.v8-workflow-icon svg{width:23px;height:23px}.v8-workflow-hero h2{font-size:18px}.v8-workflow-hero p:not(.v8-eyebrow){max-width:720px;margin-top:4px;color:var(--v8-muted);font-size:10px;line-height:1.5}.v8-workflow-controls{display:flex;align-items:center;justify-content:flex-end;gap:6px}.v8-workflow-flow{display:flex;align-items:center;gap:6px;color:#80939a}.v8-workflow-flow span{padding:5px 8px;border:1px solid #dce5e7;border-radius:8px;background:#fff;font-size:8px;font-weight:800;text-transform:uppercase}.v8-workflow-flow svg{width:11px}.v8-signoff-stage{display:grid;gap:3px;margin-left:7px;color:#60747c;font-size:8px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.v8-signoff-stage select{min-width:92px;height:30px;border:1px solid #d7e2e5;border-radius:8px;padding:0 8px;color:#173f3a;background:#fff;font:inherit;letter-spacing:0;text-transform:none}.v8-filter-row{display:flex;align-items:center;gap:7px}.v8-search-field,.v8-select-field{display:flex;min-height:38px;align-items:center;gap:7px;padding:0 10px;border:1px solid #dae4e6;border-radius:9px;background:#f9fbfb}.v8-search-field svg,.v8-select-field svg{width:14px;color:#81949b}.v8-search-field input,.v8-select-field select{width:220px;border:0;outline:0;color:var(--v8-ink);background:transparent;font-size:10px}.v8-select-field select{width:120px}.v8-record-list{padding:4px 13px 10px}.v8-record-row{display:grid;grid-template-columns:38px minmax(0,1fr) auto auto;align-items:center;gap:11px;padding:12px 4px;border-bottom:1px solid #e9eff0}.v8-record-avatar{display:grid;width:36px;height:36px;place-items:center;border-radius:11px;color:var(--v8-teal-deep);background:#e7f8f4;font-size:11px;font-weight:900}.v8-record-main{min-width:0}.v8-record-main>div{display:flex;align-items:center;gap:7px}.v8-record-main strong{font-size:11px}.v8-record-main p{overflow:hidden;margin-top:3px;color:#586c74;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.v8-record-main small{color:#8b9ba1;font-size:8px}.v8-record-facts{display:flex;align-items:center;gap:15px}.v8-record-facts>div{display:flex;flex-direction:column}.v8-record-facts dt{color:#91a0a5;font-size:8px;text-transform:uppercase}.v8-record-facts dd{margin-top:2px;color:#394e56;font-size:10px;font-weight:700}.v8-record-actions{display:flex;gap:5px}.v8-pagination{display:flex;min-height:52px;align-items:center;justify-content:space-between;padding:9px 16px;border-top:1px solid var(--v8-line);color:var(--v8-muted);font-size:9px}.v8-pagination>div{display:flex;gap:5px}.v8-filter-strip{display:flex;align-items:center;gap:9px;margin-bottom:14px;padding:10px 13px;border:1px solid rgba(35,77,87,.12);border-radius:12px;background:#ffffffd9}.v8-filter-strip>svg{width:17px;color:var(--v8-teal-deep)}.v8-filter-strip label{display:flex;align-items:center;gap:6px;color:var(--v8-muted);font-size:9px;font-weight:800}.v8-filter-strip input{min-height:34px;padding:0 8px;border:1px solid #dae4e6;border-radius:8px;color:var(--v8-ink);background:#fff;font-size:10px}.v8-analytics-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(360px,.8fr);gap:14px}.v8-integration-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.v8-integration-card{padding:16px;border:1px solid #dfe7e9;border-radius:15px;background:#ffffffeb;box-shadow:var(--v8-shadow)}.v8-integration-card.is-healthy{border-top:3px solid var(--v8-teal)}.v8-integration-card.is-warning{border-top:3px solid var(--v8-amber)}.v8-integration-card>header{display:flex;align-items:center;justify-content:space-between}.v8-integration-card>header>span:first-child{display:grid;width:36px;height:36px;place-items:center;border-radius:11px;color:var(--v8-teal-deep);background:#e9faf6}.v8-integration-card header svg{width:17px;height:17px}.v8-integration-card h2{margin-top:13px;font-size:15px}.v8-integration-card>p{overflow:hidden;margin-top:4px;color:var(--v8-muted);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.v8-integration-card dl{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:15px 0;padding:12px;border-radius:11px;background:#f6f9f9}.v8-integration-card dt{color:#899ba1;font-size:8px;text-transform:uppercase}.v8-integration-card dd{margin-top:2px;color:#3d525a;font-size:9px;font-weight:750}.v8-integration-card footer{display:flex;flex-wrap:wrap;gap:5px}.v8-delivery-list article,.v8-event-list article{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--v8-line)}.v8-delivery-list article>span,.v8-event-list article>span{display:grid;width:30px;height:30px;place-items:center;border-radius:9px}.v8-delivery-list article>span.success,.v8-event-list article>span.success{color:#0b8f70;background:#e6faf4}.v8-delivery-list article>span.danger,.v8-event-list article>span.danger{color:var(--v8-red);background:#fff0f3}.v8-delivery-list svg,.v8-event-list svg{width:14px;height:14px}.v8-delivery-list strong,.v8-event-list strong{font-size:10px}.v8-delivery-list p,.v8-event-list p{margin-top:2px;color:var(--v8-muted);font-size:9px}.v8-delivery-list time,.v8-event-list time{color:#8fa0a6;font-size:8px}.v8-device-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:13px}.v8-device-card{padding:14px;border:1px solid #dfe8ea;border-radius:14px;color:var(--v8-ink);background:#fff;text-align:left;cursor:pointer}.v8-device-card:hover{border-color:#00c9a766;transform:translateY(-1px);box-shadow:0 10px 25px #143e4614}.v8-device-card.is-online{border-top:3px solid var(--v8-teal)}.v8-device-card.is-offline{border-top:3px solid var(--v8-red)}.v8-device-card>header{display:flex;align-items:center;justify-content:space-between}.v8-device-symbol{display:grid;width:36px;height:36px;place-items:center;border-radius:11px;color:var(--v8-red);background:#fff0f3}.v8-device-card.is-online .v8-device-symbol{color:var(--v8-teal-deep);background:#e7faf5}.v8-device-symbol svg{width:17px;height:17px}.v8-device-card h3{margin-top:12px;font-size:13px}.v8-device-card>p{margin-top:3px;color:var(--v8-muted);font-size:9px}.v8-device-card dl{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:13px}.v8-device-card dt{color:#91a1a7;font-size:8px}.v8-device-card dd{margin-top:2px;color:#3f555d;font-size:9px;font-weight:750}.v8-device-card dd.warning{color:#9c681d}.v8-device-card dd.danger{color:#c83e57}.v8-device-card footer{display:flex;align-items:center;justify-content:space-between;margin-top:13px;padding-top:10px;border-top:1px solid #edf1f2;color:var(--v8-teal-deep);font-size:9px;font-weight:800}.v8-device-card footer svg{width:13px}.v8-conflict-list{padding:7px 13px 13px}.v8-conflict-list article{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #edf1f2}.v8-conflict-list article>span{display:grid;width:32px;height:32px;place-items:center;border-radius:10px;color:#9e6b1e;background:#fff6e5}.v8-conflict-list svg{width:15px}.v8-conflict-list strong{font-size:10px}.v8-conflict-list p{margin-top:2px;color:var(--v8-muted);font-size:9px}.v8-conflict-list small{color:#91a2a7;font-size:8px}.v8-conflict-list article>div:last-child{display:flex;gap:5px}.v8-conflict-list button{min-height:30px;padding:0 8px;border:1px solid #dce6e8;border-radius:8px;color:#566a72;background:#fff;font-size:8px;font-weight:800;cursor:pointer}.v8-scan-list article{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:49px;border-bottom:1px solid #edf1f2}.v8-scan-list article>span{display:grid;width:34px;height:24px;place-items:center;border-radius:7px;font-size:8px;font-weight:900}.v8-scan-list span.in{color:#08735c;background:#dff8f1}.v8-scan-list span.out{color:#9f4352;background:#ffebef}.v8-scan-list strong{display:block;font-size:10px}.v8-scan-list small,.v8-scan-list time{color:var(--v8-muted);font-size:8px}.v8-device-detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.v8-device-detail-grid .v8-metric-card{min-height:86px;padding:11px}.v8-device-detail-grid .v8-metric-card strong{font-size:15px}.v8-subheading{margin:20px 0 6px;font-size:13px}.v8-timekeeping{display:flex;width:100%;height:calc(100vh - 62px);height:calc(100dvh - 62px);min-height:0;flex-direction:column;overflow:hidden;background:#f2f6f6}.v8-timekeeping.is-focus-mode{position:fixed;z-index:500;top:0;right:0;bottom:0;left:0;height:100vh;height:100dvh;background:#f2f6f6}.v8-tk-header{display:flex;min-height:68px;align-items:center;gap:16px;padding:9px 16px;border-bottom:1px solid var(--v8-line);background:#fffffff0}.v8-tk-title{display:flex;min-width:250px;align-items:center;gap:10px}.v8-tk-title>span{display:grid;width:38px;height:38px;flex:0 0 38px;place-items:center;border-radius:11px;color:#063c32;background:linear-gradient(145deg,#5de7d0,#00c9a7);box-shadow:0 8px 18px #00c9a733}.v8-tk-title svg{width:18px}.v8-tk-title h1{font-size:15px}.v8-tk-title small{color:#84979e;font-size:9px}.v8-tk-filter-ribbon{display:flex;min-width:0;flex:1;align-items:flex-end;gap:7px;overflow-x:auto}.v8-tk-filter-ribbon>label{display:flex;flex:0 0 auto;flex-direction:column;gap:3px;color:#788c94;font-size:8px;font-weight:850;letter-spacing:.05em;text-transform:uppercase}.v8-tk-filter-ribbon input,.v8-tk-filter-ribbon select{height:34px;min-width:115px;padding:0 8px;border:1px solid #d9e4e6;border-radius:8px;color:var(--v8-ink);background:#f9fbfb;font-size:10px}.v8-tk-filter-ribbon>span{align-self:center;color:#93a3a8}.v8-tk-actions{display:flex;align-items:center;gap:6px}.v8-tk-viewbar{display:flex;min-height:44px;align-items:center;justify-content:space-between;gap:12px;padding:0 14px;border-bottom:1px solid var(--v8-line);background:#ffffffe8}.v8-tk-viewbar>div{display:flex;align-items:center;gap:2px;overflow-x:auto}.v8-tk-viewbar [role=tab]{display:inline-flex;min-height:42px;align-items:center;gap:6px;padding:0 11px;border:0;border-bottom:2px solid transparent;color:#5b7078;background:transparent;font-size:10px;font-weight:700;white-space:nowrap;cursor:pointer}.v8-tk-viewbar [role=tab].is-active{color:var(--v8-teal-deep);border-bottom-color:var(--v8-teal);background:linear-gradient(0deg,rgba(0,201,167,.07),transparent)}.v8-tk-viewbar svg{width:13px}.v8-tk-viewbar [role=tab] span{min-width:18px;padding:2px 5px;border-radius:12px;color:#6f8188;background:#edf2f3;font-size:8px;text-align:center}.v8-quick-dates button{min-height:28px;padding:0 8px;border:1px solid #dde6e8;border-radius:15px;color:#61757d;background:#fff;font-size:8px;font-weight:750;cursor:pointer}.v8-active-filters{display:flex;min-height:36px;align-items:center;gap:6px;overflow-x:auto;padding:5px 14px;border-bottom:1px solid #e3eaec;color:#73868e;background:#f8fbfb;font-size:8px;white-space:nowrap}.v8-active-filters>svg{width:13px;color:var(--v8-teal-deep)}.v8-active-filters>span{padding:4px 8px;border:1px solid #d9e6e4;border-radius:12px;color:#496159;background:#effbf7}.v8-active-filters button{margin-left:auto;border:0;color:var(--v8-teal-deep);background:transparent;font-size:8px;font-weight:800;cursor:pointer}.v8-tk-stats{display:grid;grid-template-columns:repeat(6,minmax(105px,1fr)) minmax(210px,1.25fr);gap:8px;padding:10px 14px;overflow-x:auto;border-bottom:1px solid var(--v8-line);background:#f4f8f8}.v8-tk-stat,.v8-exception-shortcut{display:flex;min-height:66px;min-width:105px;align-items:center;gap:9px;padding:10px;border:1px solid #dfe7e9;border-radius:12px;color:var(--v8-ink);background:#fff;text-align:left;cursor:pointer}.v8-tk-stat.is-active{border-color:currentColor;box-shadow:0 0 0 2px color-mix(in srgb,currentColor 13%,transparent)}.v8-tk-stat.tone-teal{color:#087b69}.v8-tk-stat>span,.v8-exception-shortcut>span{display:grid;width:30px;height:30px;flex:0 0 30px;place-items:center;border-radius:9px;color:var(--v8-teal-deep);background:#e8f9f5}.v8-tk-stat svg,.v8-exception-shortcut svg{width:14px;height:14px}.v8-tk-stat>div,.v8-exception-shortcut>div{display:flex;min-width:0;flex-direction:column}.v8-tk-stat strong{font-size:18px;line-height:1}.v8-tk-stat small,.v8-exception-shortcut small{margin-top:3px;color:var(--v8-muted);font-size:8px}.v8-tk-stat.tone-green{color:#0a9a71}.v8-tk-stat.tone-green>span{color:#0a9a71;background:#e4f8f0}.v8-tk-stat.tone-amber{color:#d0912f}.v8-tk-stat.tone-amber>span{color:#b8781c;background:#fff5df}.v8-tk-stat.tone-orange{color:#e77947}.v8-tk-stat.tone-orange>span{color:#d9612e;background:#fff0e8}.v8-tk-stat.tone-red,.v8-tk-stat.tone-rose{color:#dd5068}.v8-tk-stat.tone-red>span,.v8-tk-stat.tone-rose>span{color:#c7445b;background:#fff0f3}.v8-exception-shortcut{min-width:210px;border-style:dashed;background:linear-gradient(135deg,#f1fbf8,#f7f9ff)}.v8-exception-shortcut strong{font-size:10px}.v8-tk-grid-region{display:flex;min-height:0;flex:1 1 0;overflow:hidden}.v8-inline-alert{display:flex;min-height:40px;align-items:center;gap:8px;padding:8px 14px;font-size:10px}.v8-inline-alert svg{width:15px}.v8-inline-alert.danger{color:#ad3d52;background:#fff0f3}.v8-inline-alert.warning{color:#8d621e;background:#fff8e9}.v8-time-grid-shell{display:flex;width:100%;height:100%;min-height:0;flex-direction:column;overflow:hidden;background:#fff}.v8-grid-toolbar{display:flex;min-height:46px;align-items:center;gap:8px;padding:6px 10px;border-bottom:1px solid var(--v8-line);background:#f8fbfb}.v8-grid-search{display:flex;min-width:210px;align-items:center;gap:7px;padding:0 9px;border:1px solid #d7e3e5;border-radius:9px;background:#fff}.v8-grid-search svg{width:14px;color:#8ba0a7}.v8-grid-search input{width:100%;height:32px;border:0;outline:0;color:var(--v8-ink);font-size:10px}.v8-grid-presets{display:flex;gap:3px}.v8-grid-presets button{min-height:32px;padding:0 9px;border:1px solid transparent;border-radius:8px;color:#6c7f86;background:transparent;font-size:9px;font-weight:750;text-transform:capitalize;cursor:pointer}.v8-grid-presets button.is-active{color:#08755f;border-color:#c0e9e0;background:#e9faf6}.v8-grid-tools{display:flex;min-width:0;flex:1;align-items:center;justify-content:flex-end;gap:4px;overflow-x:auto}.v8-tool-button{display:inline-flex;min-height:34px;flex:0 0 auto;align-items:center;gap:5px;padding:0 9px;border:1px solid #dce5e7;border-radius:8px;color:#536970;background:#fff;font-size:9px;font-weight:750;cursor:pointer}.v8-tool-button.primary{color:#063c32;border-color:#9be8d9;background:#cff8ef}.v8-tool-button svg{width:13px;height:13px}.v8-column-menu-wrap{position:relative}.v8-column-panel{position:absolute;z-index:70;top:calc(100% + 5px);right:0;width:240px;max-height:360px;overflow-y:auto;border:1px solid var(--v8-line);border-radius:12px;background:#fff;box-shadow:0 16px 45px #102e3633}.v8-column-panel header{position:sticky;z-index:1;top:0;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px;border-bottom:1px solid var(--v8-line);background:#f8fbfb}.v8-column-panel header>div{display:flex;min-width:0;flex-direction:column}.v8-column-panel header strong{font-size:10px}.v8-column-panel header small{color:var(--v8-muted);font-size:8px}.v8-column-panel header button{flex:0 0 auto;padding:5px 7px;border:1px solid #c7e6df;border-radius:7px;color:#08755f;background:#e9faf6;font-size:8px;font-weight:850;cursor:pointer}.v8-column-panel label{display:flex;min-height:34px;align-items:center;gap:8px;padding:0 11px;color:#4c626a;font-size:9px;cursor:pointer}.v8-column-panel label:hover{background:#f0faf7}.v8-column-panel input{accent-color:var(--v8-teal-deep)}.v8-formula-bar{display:flex;min-height:29px;align-items:center;border-bottom:1px solid var(--v8-line);background:#fff;color:#6c7f86;font-size:9px}.v8-formula-bar span{min-width:65px;height:29px;padding:8px 10px;border-right:1px solid var(--v8-line);color:var(--v8-ink);font-family:monospace}.v8-formula-bar strong{height:29px;padding:8px 10px;border-right:1px solid var(--v8-line);color:var(--v8-teal-deep);font-family:serif;font-style:italic}.v8-formula-bar output{overflow:hidden;padding:0 10px;text-overflow:ellipsis;white-space:nowrap}.v8-ag-grid{position:relative;min-width:0;min-height:280px;flex:1 1 0;overflow:hidden}.v8-ag-grid>.ag-theme-alpine{position:absolute;top:0;right:0;bottom:0;left:0;width:auto;height:auto}.v8-ag-grid .ag-root-wrapper{height:100%;border:0;border-radius:0}.v8-ag-grid .ag-theme-alpine{--ag-row-height: 36px;--ag-header-height: 40px;--ag-floating-filters-height: 36px;--ag-font-size: 11px;--ag-grid-size: 4px}.v8-ag-grid .ag-cell{display:flex;align-items:center}.v8-ag-grid .ag-cell-value{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v8-grid-overlay{color:#6f838b;font-size:11px}.v8-grid-actions{display:flex;align-items:center;justify-content:center;gap:5px}.v8-grid-action{display:grid;width:29px;height:29px;place-items:center;border:1px solid #dce5e7;border-radius:8px;color:#64777e;background:#fff;cursor:pointer}.v8-grid-action:hover{color:var(--v8-teal-deep);border-color:#a4dfd4;background:#eafaf6}.v8-grid-action.danger:hover{color:#c84057;border-color:#efbec7;background:#fff0f3}.v8-grid-action svg{width:13px;height:13px}.v8-grid-status{display:flex;min-height:40px;align-items:center;justify-content:space-between;gap:10px;padding:5px 10px;color:#75888f;background:var(--v8-dark);font-size:8px}.v8-grid-status>div{display:flex;align-items:center;gap:9px}.v8-grid-status>div:first-child>span:not(.v8-status-pill){display:inline-flex;align-items:center;gap:4px}.v8-grid-status svg{width:11px}.v8-grid-pagination label{display:flex;align-items:center;gap:5px}.v8-grid-pagination select{height:28px;padding:0 4px;border:1px solid #2d4851;border-radius:6px;color:#c7dad7;background:#10272e;font-size:8px}.v8-grid-pagination button{display:grid;width:28px;height:28px;place-items:center;border:1px solid #2d4851;border-radius:7px;color:#b8cbc8;background:#10272e;cursor:pointer}.v8-punch-list article{display:grid;grid-template-columns:42px minmax(0,1fr) auto auto;align-items:center;gap:9px;padding:9px 0;border-bottom:1px solid var(--v8-line)}.v8-punch-list article.is-ignored{opacity:.65}.v8-punch-list article>span:first-child{display:grid;width:38px;height:25px;place-items:center;border-radius:7px;font-size:8px;font-weight:900}.v8-punch-list .in{color:#08755f;background:#e3f9f3}.v8-punch-list .out{color:#a64052;background:#ffedf0}.v8-punch-list strong{display:block;font-size:11px}.v8-punch-list small{color:var(--v8-muted);font-size:8px}.v8-self-hero{position:relative;display:flex;min-height:112px;align-items:center;justify-content:space-between;gap:18px;margin-bottom:14px;padding:18px;overflow:hidden;border:1px solid rgba(46,92,101,.13);border-radius:18px;background:radial-gradient(circle at 90% -30%,rgba(0,201,167,.18),transparent 35%),#ffffffeb;box-shadow:var(--v8-shadow)}.v8-self-hero:after{position:absolute;right:5%;bottom:-55px;width:160px;height:160px;border:1px solid rgba(0,201,167,.14);border-radius:50%;content:""}.v8-self-identity{display:flex;min-width:0;align-items:center;gap:13px}.v8-self-identity>div{min-width:0}.v8-self-identity h1{overflow:hidden;font-size:clamp(20px,3vw,28px);letter-spacing:-.025em;text-overflow:ellipsis;white-space:nowrap}.v8-self-identity p:not(.v8-eyebrow){margin-top:4px;color:var(--v8-muted);font-size:10px}.v8-self-hero-actions{z-index:1;display:flex;align-items:flex-end;gap:7px}.v8-self-hero-actions label{display:flex;flex-direction:column;gap:4px;color:var(--v8-muted);font-size:8px;font-weight:800}.v8-self-hero-actions select{min-height:40px;max-width:230px;padding:0 10px;border:1px solid var(--v8-line);border-radius:10px;color:var(--v8-ink);background:#fff;font-size:10px}.v8-self-sync{position:absolute;right:18px;bottom:8px;display:flex;align-items:center;gap:6px;color:#8b9ca2;font-size:8px}.v8-self-tabs{display:inline-flex;align-items:center;gap:4px;margin:0 0 14px;padding:4px;border:1px solid rgba(34,76,85,.12);border-radius:12px;background:#ffffffe6;box-shadow:0 8px 24px #17343e0f}.v8-self-tabs>button{position:relative;display:inline-flex;min-height:38px;align-items:center;gap:7px;padding:0 13px;border:0;border-radius:9px;color:#657981;background:transparent;font-size:9.5px;font-weight:800;cursor:pointer;transition:color .18s ease,background .18s ease,box-shadow .18s ease}.v8-self-tabs>button svg{width:15px;height:15px}.v8-self-tabs>button.is-active{color:#075c52;background:#e9faf5;box-shadow:inset 0 0 0 1px #00ab8921}.v8-self-tabs>button:hover:not(.is-active){color:#21454b;background:#f4f8f8}.v8-self-tabs>button:focus-visible{outline:3px solid rgba(0,158,134,.24);outline-offset:2px}.v8-self-tab-badge{display:grid;min-width:18px;height:18px;place-items:center;padding:0 5px;border-radius:999px;color:#563908;background:#ffc85d;font-size:8px;line-height:1}.v8-self-documents-panel{min-width:0;animation:v8-panel-enter .22s ease both}@keyframes v8-panel-enter{0%{opacity:0;transform:translateY(4px)}}.v8-action-banner{display:flex;min-height:72px;align-items:center;gap:12px;margin-bottom:14px;padding:13px 15px;border:1px solid #ead6ab;border-radius:14px;background:linear-gradient(135deg,#fff8e8,#fffdf7);box-shadow:0 9px 26px #8e63170f}.v8-action-banner>span{display:grid;width:38px;height:38px;flex:0 0 38px;place-items:center;border-radius:11px;color:#9e6a1a;background:#ffecc2}.v8-action-banner svg{width:18px}.v8-action-banner>div{min-width:0;flex:1}.v8-action-banner strong{font-size:11px}.v8-action-banner p{margin-top:3px;color:#7e704f;font-size:9px}.v8-today-card{margin-bottom:14px;overflow:hidden;border:1px solid rgba(35,79,88,.13);border-radius:17px;background:#fff;box-shadow:var(--v8-shadow)}.v8-today-heading{display:flex;align-items:center;gap:11px;padding:15px 17px;border-bottom:1px solid var(--v8-line);background:linear-gradient(90deg,#f1fbf8,#fff)}.v8-today-heading>span:first-child{display:grid;width:39px;height:39px;place-items:center;border-radius:12px;color:var(--v8-teal-deep);background:#dcf8f1}.v8-today-heading>span:first-child.tone-warning{color:#9d691d;background:#fff2d8}.v8-today-heading>span:first-child.tone-danger{color:#c53e56;background:#fff0f3}.v8-today-heading svg{width:18px}.v8-today-heading h2{font-size:16px}.v8-today-heading .v8-status-pill{margin-left:auto}.v8-today-times{display:grid;grid-template-columns:repeat(4,1fr)}.v8-today-times>div{display:flex;min-height:83px;flex-direction:column;justify-content:center;padding:13px 17px;border-right:1px solid var(--v8-line)}.v8-today-times>div:last-child{border-right:0}.v8-today-times span,.v8-day-time-grid span{color:#82959c;font-size:8px;font-weight:800;text-transform:uppercase}.v8-today-times strong,.v8-day-time-grid strong{margin-top:5px;color:var(--v8-ink);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:18px}.v8-today-footer{display:flex;min-height:42px;align-items:center;gap:18px;padding:8px 17px;border-top:1px solid var(--v8-line);color:var(--v8-muted);background:#f9fbfb;font-size:9px}.v8-today-footer strong{color:#3f555d}.v8-today-footer .v8-text-link{margin-left:auto}.v8-self-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:14px}.v8-self-main-grid{display:grid;grid-template-columns:minmax(300px,.75fr) minmax(360px,1.25fr);gap:14px;margin-bottom:14px}.v8-self-calendar{padding:15px;border:1px solid rgba(36,78,87,.12);border-radius:16px;background:#fff;box-shadow:var(--v8-shadow)}.v8-self-calendar>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.v8-self-calendar h2{font-size:14px}.v8-self-calendar>header>div:last-child{display:flex;gap:5px}.v8-self-calendar header button{display:grid;width:34px;height:34px;place-items:center;border:1px solid var(--v8-line);border-radius:9px;color:#63777f;background:#fff;cursor:pointer}.v8-self-calendar header button svg{width:14px}.v8-calendar-weekdays,.v8-calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.v8-calendar-weekdays span{padding:4px 0;color:#99a7ac;font-size:8px;font-weight:850;text-align:center;text-transform:uppercase}.v8-calendar-days button{position:relative;display:grid;aspect-ratio:1;min-height:38px;place-items:center;border:1px solid transparent;border-radius:9px;color:#42575f;background:transparent;font-size:10px;cursor:pointer}.v8-calendar-days button:hover{background:#f0faf7}.v8-calendar-days button.is-selected{border-color:#70daca;background:#e5faf5;font-weight:850}.v8-calendar-days button.is-outside{opacity:.3}.v8-calendar-days i{position:absolute;bottom:4px;width:5px;height:5px;border-radius:50%;background:#899ba1}.v8-calendar-days i.tone-success{background:#16a47f}.v8-calendar-days i.tone-warning{background:#e3a03b}.v8-calendar-days i.tone-danger{background:#dd5068}.v8-self-calendar>footer{display:flex;flex-wrap:wrap;gap:10px;margin-top:11px;color:#7d8f96;font-size:8px}.v8-self-calendar>footer span:before{display:inline-block;width:6px;height:6px;margin-right:4px;border-radius:50%;content:"";background:currentColor}.v8-self-calendar footer .success{color:#148c70}.v8-self-calendar footer .warning{color:#b77b23}.v8-self-calendar footer .danger{color:#c7475d}.v8-day-detail{overflow:hidden}.v8-day-detail>.v8-button{width:calc(100% - 30px);margin:0 15px 15px}.v8-day-time-grid{display:grid;grid-template-columns:repeat(4,1fr);padding:14px}.v8-day-time-grid>div{display:flex;flex-direction:column;padding:9px;border-right:1px solid var(--v8-line)}.v8-day-time-grid>div:last-child{border-right:0}.v8-day-time-grid strong{font-size:14px}.v8-day-summary{display:grid;grid-template-columns:repeat(4,1fr);margin:0 14px 14px;overflow:hidden;border:1px solid var(--v8-line);border-radius:11px;background:#f7fafb}.v8-day-summary>div{padding:10px;border-right:1px solid var(--v8-line)}.v8-day-summary>div:last-child{border-right:0}.v8-day-summary dt{color:#899aa1;font-size:8px}.v8-day-summary dd{margin-top:3px;color:#3e535b;font-size:11px;font-weight:800}.v8-self-bottom-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.v8-shift-list article{display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:52px;border-bottom:1px solid #edf1f2}.v8-shift-list article.is-today{margin-inline:-4px;padding-inline:4px;border-radius:8px;background:#f0faf7}.v8-shift-list time{display:flex;flex-direction:column}.v8-shift-list time strong{font-size:10px}.v8-shift-list time span{color:var(--v8-muted);font-size:8px}.v8-shift-list article>div{display:flex;min-width:0;flex-direction:column}.v8-shift-list article>div strong{font-size:10px}.v8-shift-list article>div small{color:var(--v8-muted);font-size:8px}.v8-request-list article{display:grid;grid-template-columns:33px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:52px;border-bottom:1px solid #edf1f2}.v8-request-list article>span{display:grid;width:31px;height:31px;place-items:center;border-radius:9px;color:var(--v8-teal-deep);background:#e8faf5}.v8-request-list svg{width:14px}.v8-request-list article>div{display:flex;min-width:0;flex-direction:column}.v8-request-list strong{font-size:10px}.v8-request-list small{overflow:hidden;color:var(--v8-muted);font-size:8px;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 1280px){.v8-page{padding:18px}.v8-tk-title{min-width:210px}.v8-tk-title small{display:none}.v8-tk-actions .v8-button{padding-inline:10px}.v8-integration-grid,.v8-device-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v8-tk-stats{grid-template-columns:repeat(6,minmax(100px,1fr)) minmax(190px,1.2fr)}}@media (max-width: 1060px){.v8-command-grid,.v8-command-grid.lower,.v8-analytics-grid{grid-template-columns:1fr}.v8-metric-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.v8-quick-actions,.v8-self-actions{grid-template-columns:repeat(2,1fr)}.v8-tk-header{flex-wrap:wrap}.v8-tk-title{flex:1}.v8-tk-filter-ribbon{order:3;flex-basis:100%;padding-bottom:3px}.v8-workflow-flow{display:none}.v8-workflow-hero{grid-template-columns:52px 1fr}.v8-workflow-controls{grid-column:2;justify-content:flex-start}.v8-record-row{grid-template-columns:38px minmax(0,1fr) auto}.v8-record-facts{display:none}.v8-self-main-grid{grid-template-columns:1fr}}@media (max-width: 900px){.hp-sidebar.v8-sidebar{position:fixed;top:0;bottom:0;left:0;width:min(290px,86vw);min-width:min(290px,86vw);visibility:hidden;transform:translate(-105%);box-shadow:22px 0 60px #00000047}.hp-sidebar.v8-sidebar.is-collapsed{width:min(290px,86vw);min-width:min(290px,86vw)}.hp-sidebar.v8-sidebar.is-mobile-open{visibility:visible;transform:translate(0)}.v8-sidebar.is-collapsed .sidebar-logo,.v8-sidebar .sidebar-logo{justify-content:space-between;padding-inline:16px}.v8-sidebar.is-collapsed .sidebar-item{justify-content:flex-start;padding-inline:11px}.v8-sidebar.is-collapsed .sidebar-item span{display:inline}.v8-sidebar .sidebar-section-label{display:block!important}.v8-sidebar.is-collapsed .sidebar-user{justify-content:flex-start;padding-inline:13px}.v8-sidebar.is-collapsed .sidebar-user>div{display:block}.v8-sidebar-connectivity{display:flex!important}.v8-sidebar .sidebar-toggle{display:none}.v8-sidebar-close{display:grid;width:36px;height:36px;place-items:center;border:1px solid rgba(255,255,255,.12);border-radius:9px;color:#fff;background:#ffffff0d}.v8-sidebar-close svg{width:16px}.v8-sidebar-scrim{position:fixed;z-index:45;top:0;right:0;bottom:0;left:0;display:block;border:0;background:#020d119e;opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:opacity .2s}.v8-sidebar-scrim.is-open{opacity:1;pointer-events:auto}.v8-mobile-menu{display:grid}.v8-header-signal{display:none}.v8-profile-trigger>span,.v8-profile-trigger>svg{display:none}.v8-profile-trigger{width:42px;padding:4px;justify-content:center}.v8-status-label-wide{display:none}.v8-self-hero{align-items:flex-start;flex-wrap:wrap}.v8-self-hero-actions{width:100%;flex-wrap:wrap}.v8-self-hero-actions label{flex:1}.v8-self-hero-actions select{width:100%;max-width:none}.v8-self-sync{position:static;width:100%}.v8-self-bottom-grid{grid-template-columns:1fr}.v8-device-detail-grid{grid-template-columns:repeat(2,1fr)}.v8-formula-bar{display:none}.v8-grid-presets{order:3;width:100%;overflow-x:auto}.v8-grid-toolbar{flex-wrap:wrap}.v8-grid-search{min-width:0;flex:1}}@media (max-width: 720px){.v8-page{padding:12px}.app-header.v8-app-header{height:58px;min-height:58px;padding:0 10px}.v8-header-context{display:none}.v8-app-header .app-header-title{max-width:44vw;font-size:12px}.v8-header-actions{gap:5px}.v8-header-icon,.v8-icon-button{width:38px;height:38px}.v8-page-intro{align-items:flex-start;flex-direction:column;gap:12px}.v8-page-intro h1{font-size:26px}.v8-page-actions{width:100%;justify-content:flex-start}.v8-page-actions .v8-button{flex:1}.v8-metric-grid.four,.v8-metric-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}.v8-metric-card{min-height:91px;padding:12px}.v8-metric-card strong{font-size:19px}.v8-quick-actions,.v8-self-actions,.v8-device-mini-grid,.v8-integration-grid,.v8-device-grid{grid-template-columns:1fr}.v8-workflow-tabs{margin-inline:-2px}.v8-workflow-hero{grid-template-columns:42px 1fr;padding:14px}.v8-workflow-icon{width:42px;height:42px}.v8-panel-header{align-items:flex-start;flex-direction:column}.v8-filter-row{width:100%;flex-direction:column}.v8-search-field,.v8-select-field,.v8-search-field input,.v8-select-field select{width:100%}.v8-record-row{grid-template-columns:34px minmax(0,1fr)}.v8-record-actions{grid-column:2}.v8-pagination{align-items:flex-start;flex-direction:column}.v8-filter-strip{align-items:stretch;flex-direction:column}.v8-filter-strip>span{display:none}.v8-filter-strip label{justify-content:space-between}.v8-filter-strip input{flex:1}.v8-conflict-list article{grid-template-columns:32px minmax(0,1fr)}.v8-conflict-list article>div:last-child{grid-column:2}.v8-tk-header{gap:8px;padding:8px 10px}.v8-tk-title>span{width:34px;height:34px;flex-basis:34px}.v8-tk-title h1{font-size:13px}.v8-tk-actions{width:100%;overflow-x:auto;order:2}.v8-tk-filter-ribbon{order:3}.v8-tk-viewbar{align-items:flex-start;flex-direction:column;padding:0 8px 7px}.v8-tk-viewbar>div{width:100%}.v8-tk-viewbar [role=tab]{min-height:40px}.v8-tk-stats{grid-template-columns:repeat(7,minmax(120px,1fr));padding:8px}.v8-timekeeping{height:auto;min-height:calc(100dvh - 58px);overflow:visible}.v8-tk-grid-region{min-height:580px;overflow:visible}.v8-time-grid-shell{min-height:580px}.v8-grid-toolbar{align-items:stretch}.v8-grid-search{flex-basis:calc(100% - 48px)}.v8-grid-tools{justify-content:flex-start;overflow-x:auto}.v8-grid-status{align-items:flex-start;flex-direction:column;padding:7px 9px}.v8-grid-status>div{width:100%;overflow-x:auto}.v8-grid-pagination{justify-content:flex-end}.v8-dialog-backdrop{padding:0;align-items:flex-end}.v8-dialog{width:100%;max-height:96vh;border-radius:18px 18px 0 0}.v8-dialog-body{max-height:calc(96vh - 150px)}.v8-form-grid{grid-template-columns:1fr}.v8-form-grid label.span-2{grid-column:1}.v8-change-preview{grid-template-columns:1fr}.v8-self-hero{padding:14px}.v8-self-identity h1{font-size:20px}.v8-self-identity p:not(.v8-eyebrow){white-space:normal}.v8-self-hero-actions .v8-button{flex:1}.v8-action-banner{align-items:flex-start;flex-wrap:wrap}.v8-action-banner>div{flex-basis:calc(100% - 52px)}.v8-action-banner .v8-button{width:100%}.v8-today-times,.v8-day-time-grid{grid-template-columns:repeat(2,1fr)}.v8-today-times>div:nth-child(2),.v8-day-time-grid>div:nth-child(2){border-right:0}.v8-today-times>div{min-height:69px;border-bottom:1px solid var(--v8-line)}.v8-today-footer{align-items:flex-start;flex-wrap:wrap;gap:8px 14px}.v8-today-footer .v8-text-link{width:100%;margin-left:0}.v8-day-summary{grid-template-columns:repeat(2,1fr)}.v8-self-calendar{padding:12px}.v8-calendar-days button{min-height:42px}}@media (max-width: 480px){.v8-metric-grid.four,.v8-metric-grid.three{grid-template-columns:1fr 1fr;gap:8px}.v8-metric-card{min-height:82px;gap:8px;padding:10px}.v8-metric-icon{width:32px;height:32px;flex-basis:32px}.v8-metric-icon svg{width:15px;height:15px}.v8-metric-card strong{font-size:17px}.v8-metric-card small{display:none}.v8-page-actions{flex-direction:column}.v8-device-detail-grid{grid-template-columns:1fr 1fr}.v8-calendar-days{gap:2px}.v8-calendar-days button{min-height:38px;border-radius:7px}.v8-punch-list article{grid-template-columns:38px minmax(0,1fr) auto}.v8-punch-list article>.v8-button{grid-column:2;justify-self:start}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.v8-sidebar-connectivity.is-online>span,.v8-status-pill.pulse .v8-status-dot{animation:none}}.hover\:bg-slate-100:hover{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-50:hover{--tw-bg-opacity: 1;background-color:rgb(248 250 252 / var(--tw-bg-opacity, 1))}.hover\:text-amber-800:hover{--tw-text-opacity: 1;color:rgb(146 64 14 / var(--tw-text-opacity, 1))}.hover\:text-blue-800:hover{--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.hover\:text-emerald-800:hover{--tw-text-opacity: 1;color:rgb(6 95 70 / var(--tw-text-opacity, 1))}.hover\:text-red-700:hover{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}
